반응형
해 탐사 알고리즘
되추적 알고리즘
- DFS로 해를 찾아다니다가 앞쪽에 더 이상 해가 없으면 왔던 길을 되돌아가서 다른 길을 찾아보는 방법
상태 공간 트리
- 주어진 입력으로 만들어 낼 수 있는 모든 후보해를 리프 노드로 갖는 트리
- 내부 노드는 각 후보해를 만들어 가는 부분 후보해를 나타냄
특징
- 다항 시간 알고리즘이 없지만 정확한 해를 구해야 하는 경우에 적용
- 저울 문제, 0-1 배낭 문제 → O(2^n)
- 시간 복잡도 분석과는 별개로 실제 동작 시 빠른 수행 결과를 보이는 경우가 많음
분기한정 알고리즘
최적화 문제에 대한 상태 공간 트리를 각 노드의 한정값을 이용하여 탐색 하는 방법
- 한정값: 현재 노드로 만들 수 있는 해의 상항이나 하한, 혹은 둘 다
- 한정값이 그 순간의 최적해보다 좋은 경우에만 탐색 후보로 보관
- 다음 탐색 대상은 탐색 후보 중 한정값이 가장 좋은 노드로 선택
- 더 좋은 해가 등장하면 최적해를 업데이트
특징
- 다항 시간 알고리즘이 없지만 근사해가 아닌 최적해를 구해야 하는 경우에 적용
- 0-1 배낭 문제, 외판원 문제 → O(2^n)
- 시간 복잡도 분석과는 별개로 실제 동작 시 빠른 수행 결과를 보이는 경우가 많음
유전 알고리즘
자연계의 진화를 통해 관찰된 메커니즘을 모방하여 최적화 문제를 해결하기 위한 탐색 방법
- 개체군 내의 각 개체에 대해서 적합도 점수 기반의 선택, 교차, 변이 연산을 차례로 적용하여 자손 개체를 만들어 새로운 개체군을 형성하는 과정을 종료 조건이 만족할 때까지 반복
- 적자생존을 모방하여 세대를 거치면서 점진적으로 해를 향상시킴
염색체의 인코딩
- 표현하려는 해에 대한 정보를 염색체의 형태로 표현하는 것
- 이진 인코딩, 순열 인코딩, 값 인코딩, 트리 인코딩 등
선택
- 개체군으로부터 부모 염색체가 되어 교차를 수행할 염색체를 선정하는 연산
- 룰렛 힐 선택, 순위 선택, 토너먼트 선택, 엘리티즘 등
교차
- 두 염색체의 특징을 부분 결합하여 하나의 새로운 특징을 가진 염색체를 만들어 내는 연산
- 단일점 교차, 두 점 교차, 균등 교차, 산술 교차 등
변이
- 교차 연산을 통해 생성된 새로운 개체의 이룹분의 유전자를 임의적으로 변경함으로써 부모 염색체에 없는 속성을 갖도록 하는 연산
주요 매개변수
- 교차 확률, 변이 확률, 개체군의 크기
반응형
'공부 > 알고리즘(이론)' 카테고리의 다른 글
[방송대 알고리즘]근사 알고리즘 (0) | 2022.06.05 |
---|---|
[방송대 알고리즘]탐색 알고리즘 (0) | 2022.06.05 |
알고리즘 2018년도 기말 기출문제 풀이 - 방송대, 방송통신대학교 알고리즘 (0) | 2022.05.15 |
[방송대 알고리즘]정렬 알고리즘 (0) | 2022.05.07 |
[방송대 알고리즘]그리디 알고리즘 (0) | 2022.05.05 |