매트랩 유전 알고리즘 예제

가장 간단한 알고리즘은 각 염색체를 비트 문자열로 나타냅니다. 일반적으로 숫자 매개변수는 부동 소수점 표현을 사용할 수 있지만 정수로 나타낼 수 있습니다. 부동 점 표현은 진화 전략과 진화 프로그래밍에 자연적이다. 실제 가치 있는 유전 알고리즘의 개념은 제공되었지만 1970년대에 존 헨리 홀런드가 제안한 빌딩 블록 이론을 실제로 나타내지 않기 때문에 실제로 는 오해의 소지가 있습니다. 이 이론은 비록 지원 없이, 이론및 실험 결과에 따라 (아래 참조). 기본 알고리즘은 비트 수준에서 크로스오버 및 돌연변이를 수행합니다. 다른 변종은 염색체를 명령테이블에 인덱싱하는 숫자 목록, 연결된 목록의 노드, 해시, 개체 또는 기타 상상할 수 있는 데이터 구조로 취급합니다. 데이터 요소 경계를 존중하도록 크로스오버 및 돌연변이가 수행됩니다. 대부분의 데이터 형식의 경우 특정 변형 연산자가 설계될 수 있습니다. 다른 염색체 데이터 유형은 다른 특정 문제 도메인에 대해 더 잘 또는 더 나쁜 것 같습니다.

많은 변형이 높은 수준의 피트니스 에피스타시스( 즉, 솔루션의 적합성이 변수의 상호 작용 하위 집합으로 구성된 문제)에 대한 GA의 성능을 향상시키기 위해 개발되었습니다. 이러한 알고리즘은 이러한 유익한 현상기 상호 작용을 배우기 위해 (악용하기 전에) 목표로합니다. 따라서 빌딩 블록 가설과 일치하여 파괴적인 재조합을 적응적으로 줄입니다. 이 방법의 눈에 띄는 예로는 mGA,[24] GEMGA[25] 및 LLGA가 있습니다. [26] 다음 단계는 유전자 연산자의 조합을 통해 선택된 솔루션의 2세대 집단을 생성하는 것이다: 크로스오버(재조합이라고도 함) 및 돌연변이. 그래서, 내 점수를 향상시킬 수있는 최적화 기술을 검색하기 시작했다. 이 검색 중에 유전 알고리즘을 소개했습니다. 연습 문제에 Genetric 알고리즘을 적용 한 후, 나는 리더 보드에 상당한 도약을 복용 결국. 엄지 손가락 유전 알고리즘의 일반적인 규칙으로 혼합으로 복잡 한 피트 니스 풍경문제 도메인에 유용할 수 있습니다., 즉, 크로스 오버와 함께 돌연변이, 전통적인 언덕 등반 로컬 낙관론에서 인구를 이동 하도록 설계 되었습니다. 알고리즘이 막히게 될 수 있습니다. 일반적으로 사용되는 크로스오버 연산자는 균일한 채우기를 변경할 수 없습니다.

돌연변이 만으로도 전체 유전 알고리즘 프로세스의 ergodicity를 제공 할 수 있습니다 (마르코프 사슬로 볼 수 있음). 아래는 Java에서 유전 알고리즘의 예구현입니다. 자유롭게 코드를 가지고 놀 수 있습니다. 컴퓨터 과학 및 운영 연구에서 유전 알고리즘(GA)은 더 큰 진화 알고리즘(EA)에 속하는 자연 선택 과정에서 영감을 얻은 유전학입니다. 유전 알고리즘은 일반적으로 돌연변이, 크로스오버 및 선택과 같은 바이오 에서 영감을 얻은 운영자에 의존하여 문제를 최적화하고 검색하는 고품질 솔루션을 생성하는 데 사용됩니다. [1] 존 홀랜드는 1960년 다윈의 진화론개념에 따라 유전알고리즘을 도입했다. 그 후, 그의 학생 데이비드 E. 골드버그는 GA를 확장 1989.

[2] 유전 알고리즘에 의해 솔루션에 특히 적합한 것으로 보이는 문제는 시간 표 작성 및 일정 문제를 포함하며, 많은 스케줄링 소프트웨어 패키지는 GAs[인용 필요]를 기반으로 합니다. GA는 엔지니어링에도 적용되었습니다. [27] 유전 알고리즘은 종종 글로벌 최적화 문제를 해결하기 위한 접근법으로 적용된다. 유전 알고리즘에 의해 해결 된 문제의 예로는 태양 광 수집기로 햇빛을 유입하도록 설계된 거울,[28] 공간에서 무선 신호를 픽업하도록 설계된 안테나,[29] 컴퓨터 수치를위한 걷기 방법,[30] 공기 역학적 신체의 최적 설계 복잡한 흐름필드 [31] 이 유전 알고리즘은 피트니스 기능을 최대화하여 가장 적당한 개인, 즉 집단으로 구성된 집단을 제공하려고 합니다.

This entry was posted in Uncategorized. Bookmark the permalink.

Comments are closed.