[작성중] GA, Genetic algorithm(유전 알고리즘)
GA 용어 population: 각 세대의 인구 수, chromosome의 개수(generation, iteration과 관계없이 불변) generation: 세대, 가능해들의 집합 chromosome: 세대 내의 각 개체, generation의 구성원, 가능해 gene: 각 개체의 유전자, chromosome의 구성요소 iteration: cycle(selection + crossover)의 반복 횟수 selection: 선택, 상대적으로 더 우수한 chromosome으로 대체, (rank selection, tournament selection, Roulette wheel selection 등) crossover: 교배, 두 부모 chromosome의 유전자가 섞임 (반드시 일어나는 것은 아님) (S..
2020. 11. 11.
itertools - cycle
cycle - 순환가능 객체 요소의 반복 생성 zip을 할 때 한 리스트의 elements 수가 다른 것보다 작다고 하면, 1,2,1,2,1,2,1,2,1,2,... 이렇게 다른 리스트의 원소 수에 맞춰 계속 쓰는 것이 아니라 itertools.cycle([1,2]) 이렇게 쓰면 훨씬 간단히 표현할 수 있다. 입력 예시) import itertools lst1 = ["가", "나", "다"] lst2 = [1, 2, 3, 4, 5, 6, 7, 8, 9] for item1, item2 in zip(itertools.cycle(lst1), lst2): print(item1, item2) 결과물) 가 1 나 2 다 3 가 4 나 5 다 6 가 7 나 8 다 9 설명)가나다는 3개 뿐이지만 cycle덕에 가나다..
2020. 4. 17.