Genetic Algorithm 이란 무엇인가?
Wikipedia : Genetic Algorithm : 유전알고리즘은 컴퓨터과학에 진화생물학의 원리를 응용하여 풀기어려운 문제에 근사한 해를 찾기위해 사용하는 알고리즘이다. 유전알고리즘은 상속 (inheritance), 돌연변이 (mutation), 자연선택 (natural selection), 재조합 (recombination) 같은 생물학에서 발생한 기술을 사용한다. 유전알고리즘은 진화알고리즘 (Evolutionary Algorithm) 의 특별한 한 형태라고 볼 수 있다.
즉 최적화 (Optimization) 문제에서 후보가 되는 해들 (소위 개체 (individual)) 을 추상적으로 표현한 (소위 염색체 (chromosome)) 개체군 (population) 이 더 좋은 해를 찾아서 진화하는, 컴퓨터 시뮬레이션으로 보통 구현된다. 전통적으로 해는 0 과 1 의 이진수로 표현되지만 다른 표현 (encoding) 도 가능하다. 진화 (Evolution) 는 완전히 임의로 선택된 개체들의 개체군에서 시작하여 여러 세대에 걸쳐서 발생한다. 각 세대에서는, 복수개의 개체들이 현재의 개체군으로부터 확률적으로 (stochastically) 선택되고, 변형되어 (mutated or recombined) 새로운 개체군을 형성하여, 유전알고리즘의 다음 반복 (iteration) 이 현재상황이 된다.
Genetic algorithm은 무엇인가? : 교배(crossover), 돌연변이(mutation) 등등을 animation으로 구현하여 간단하게 설명
Genetic Algorithm FAQ : CMU 의 자료. Genetic Algorithm 은 무엇인가? Genetic Programming은 무엇인가?