유전 알고리즘 (Genetic Algorithm)

유전 알고리즘이란?

유전 알고리즘(GA)은 생물학적 진화를 모방하여 자연 선택 과정을 기반으로 하여 제약 및 비제약 최적화 문제를 풀 수 있는 방법입니다. 이 알고리즘은 개별 해의 모집단을 계속해서 수정합니다. 각 단계에서 유전 알고리즘은 현재 모집단에서 무작위로 개별 해를 선택하여 다음 세대의 해를 생성하는 부모 해로 사용합니다. 세대가 지나면서 모집단은 최적의 해로 "진화"하게 됩니다.

유전 알고리즘은 표준 최적화 알고리즘에 잘 맞지 않는 문제를 풀 때 적용할 수 있습니다. 목적 함수가 불연속적이거나, 미분 불가능하거나, 확률적이거나, 비선형성이 높은 문제가 이런 문제의 예가 될 수 있습니다.

아래 표에 요약된 바와 같이 유전 알고리즘은 기본 도함수 기반의 최적화 알고리즘과 크게 두 가지 이유에서 다릅니다.

기본 알고리즘 유전 알고리즘
각 반복 구간에서 단일 점을 생성합니다. 이렇게 생성된 점들의 수열이 최적해에 근접합니다. 각 반복 구간에서 점의 모집단을 생성합니다. 모집단에서 최고의 점이 최적해에 근접합니다.
결정론적 계산을 통해 수열의 다음 점을 선택합니다. 난수 생성기를 사용하는 계산을 통해 다음 세대를 선택합니다.

유전 알고리즘 적용에 대한 더 자세한 정보는 Global Optimization Toolbox를 참조하십시오.

참조: Global Optimization Toolbox, Optimization Toolbox, simulated annealing, linear programming, quadratic programming, integer programming, nonlinear programming, multiobjective optimization, genetic algorithm videos, reinforcement learning, surrogate optimization, design optimization