달력

12

« 2024/12 »

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31

'프로그래밍'에 해당되는 글 394

  1. 2013.06.26 유전자 알고리즘
2013. 6. 26. 21:59

유전자 알고리즘 카테고리 없음2013. 6. 26. 21:59

결국 무작위에 의한 알고리즘이다.

2가지 방식을 이용해서 구현한다.

돌연변위

무작위로 하나의 인덱스를 선택하여 vec[index] +-step 만큼 변경하여 , 리스트에 넣고, cost를 계산

교배

무작위로 하나의 인덱스를 선택하여 'A'vec[0:index] + 'B'vec[index:]하여 새로운 'C'개체군을 생성한다.


이 과정을 정해진 횟수만큼 반복하거나

몇세대의 걸처 개선이 없을 때까지 반복


개체군size을 정한다 .ex) 50개

size * topelite 만큼만 돌연변이와 교배를 시키고, 돌연변위와 교배된 vec를 다시 개체군에 추가한다. 

추가된 vec의 size가 정한 size가 되면 다시 size * topelite만큼만 돌연변이와 교배를 시킨다. 이 과정을 반복한다.


:
Posted by НooпeУ


Code Start Code End