효과적인 구현
GA는 본질적으로 매우 일반적이며 최적화 문제에 적용하는 것만으로는 좋은 결과를 얻을 수 없습니다. 이 섹션에서는 작업에서 GA 디자이너 또는 GA 구현자를 돕고 지원하는 몇 가지 사항을 설명합니다.
문제 별 도메인 지식 소개
우리가 GA에 통합하는 더 많은 문제 별 영역 지식이 관찰되었습니다. 더 나은 객관적 가치를 얻을 수 있습니다. 문제 별 교차 또는 변형 연산자, 사용자 지정 표현 등을 사용하여 문제 별 정보를 추가 할 수 있습니다.
다음 이미지는 EA에 대한 Michalewicz (1990)의 견해를 보여줍니다.
혼잡 감소
크라우 딩은 고도로 적합한 염색체가 많이 번식 할 때 발생하며, 몇 세대 내에 전체 인구가 유사한 적합성을 가진 유사한 솔루션으로 채워집니다. 이것은 GA의 성공을 보장하는 매우 중요한 요소 인 다양성을 감소시킵니다. 혼잡을 제한하는 방법에는 여러 가지가 있습니다. 그들 중 일부는-
Mutation 다양성을 소개합니다.
로 전환 rank selection 과 tournament selection 비슷한 체력을 가진 개인의 체력 비례 선택보다 선택 압력이 더 큽니다.
Fitness Sharing − 인구에 이미 유사한 개인이 포함되어있는 경우 개인의 체력이 감소합니다.
무작위 화가 도움이됩니다!
최적의 솔루션은 인구에 다양성을 부여하기 때문에 무작위 염색체에 의해 구동된다는 것이 실험적으로 관찰되었습니다. GA 구현자는 최상의 결과를 위해 모집단에서 충분한 양의 무작위 화 및 다양성을 유지하도록주의해야합니다.
GA를 지역 검색과 하이브리드 화
로컬 검색은 더 나은 객관적인 값을 찾기 위해 주어진 솔루션 근처의 솔루션을 확인하는 것을 말합니다.
GA를 지역 검색과 혼성화하는 것이 때때로 유용 할 수 있습니다. 다음 이미지는 GA에서 지역 검색을 도입 할 수있는 다양한 위치를 보여줍니다.
매개 변수 및 기술의 변형
유전 알고리즘에는 모든 문제에 적용되는 "하나의 크기"나 마법의 공식이 없습니다. 초기 GA가 준비된 후에도 특정 문제에 적합한 항목을 찾기 위해 인구 크기, 돌연변이 및 교차 확률 등과 같은 매개 변수를 가지고 놀려면 많은 시간과 노력이 필요합니다.