유전 알고리즘-인구

인구는 현재 세대 솔루션의 하위 집합입니다. 또한 일련의 염색체로 정의 할 수 있습니다. GA 인구를 다룰 때 명심해야 할 몇 가지 사항이 있습니다.

  • 인구의 다양성은 유지되어야하며 그렇지 않으면 조기 수렴으로 이어질 수 있습니다.

  • 개체군 크기는 GA 속도를 늦출 수 있으므로 매우 크게 유지해서는 안되며, 작은 개체군은 좋은 짝짓기 풀에 충분하지 않을 수 있습니다. 따라서 시행 착오를 통해 최적의 모집단 크기를 결정해야합니다.

인구는 일반적으로 –의 2 차원 배열로 정의됩니다. size population, size x, chromosome size.

인구 초기화

GA에서 채우기를 초기화하는 두 가지 기본 방법이 있습니다. 그들은-

  • Random Initialization − 완전 무작위 솔루션으로 초기 모집단을 채 웁니다.

  • Heuristic initialization − 문제에 대해 알려진 휴리스틱을 사용하여 초기 모집단을 채 웁니다.

전체 모집단이 휴리스틱을 사용하여 초기화되어서는 안된다는 것이 관찰되었습니다. 모집단이 유사한 솔루션을 가지고 있고 다양성이 매우 적을 수 있기 때문입니다. 무작위 솔루션이 모집단을 최적으로 유도하는 솔루션이라는 것이 실험적으로 관찰되었습니다. 따라서 휴리스틱 초기화를 사용하면 전체 모집단을 휴리스틱 기반 솔루션으로 채우는 대신 무작위 솔루션으로 나머지를 채우는 몇 ​​가지 좋은 솔루션으로 모집단을 시드합니다.

어떤 경우에는 휴리스틱 초기화가 모집단의 초기 적합성에만 영향을 미치지 만 결국 최적으로 이어지는 솔루션의 다양성이라는 것도 관찰되었습니다.

인구 모델

널리 사용되는 두 가지 인구 모델이 있습니다.

정상 상태

정상 상태 GA에서 우리는 각 반복에서 하나 또는 두 개의 자손을 생성하고 개체군에서 한두 명의 개체를 대체합니다. 정상 상태 GA는Incremental GA.

세대

세대 별 모델에서 우리는 'n'자손을 생성하는데, 여기서 n은 인구 크기이고 전체 인구는 반복이 끝날 때 새로운 것으로 대체됩니다.