핵심 개념
볼록 껍질 최소 삽입 启发式 알고리즘을 선행 제약 조건이 있는 여행 외판원 문제에 적용하여 기존의 최근접 이웃 启发式 알고리즘보다 우수한 성능을 보여줌.
초록
이 논문은 선행 제약 조건이 있는 여행 외판원 문제(TSP-PC) 또는 순차 주문 문제(SOP)를 해결하기 위한 볼록 껍질 최소 삽입 启发式 알고리즘(ACHCI)을 제안한다.
TSP-PC는 일부 위치 간에 선행 관계가 존재하는 여행 외판원 문제로, 이러한 제약 조건으로 인해 기존의 여행 외판원 문제 해결 알고리즘을 적용하기 어렵다.
ACHCI 알고리즘은 다음과 같은 과정으로 진행된다:
- 출발 노드와 부모 노드들로 구성된 볼록 껍질을 초기 서브투어로 설정한다.
- 초기 서브투어의 방향을 정한다(시계 방향 또는 반시계 방향).
- 아직 방문하지 않은 노드 중 부모 노드들이 이미 방문된 구간에 최소 비용으로 삽입할 수 있는 노드를 찾아 삽입한다.
- 모든 노드가 방문될 때까지 3단계를 반복한다.
- 반대 방향의 초기 서브투어에 대해서도 3-4단계를 반복하여 두 개의 완전한 해밀턴 순회를 얻는다.
- 두 해밀턴 순회 중 비용이 더 낮은 것을 선택한다.
ACHCI 알고리즘은 자식 노드가 중심부에 위치한 경우 기존의 최근접 이웃 启发式 알고리즘보다 97%의 경우에서 더 우수한 성능을 보였다. 이는 부모 노드가 외곽에 위치할 때 삽입 가능한 구간이 제한되어 큰 우회 경로를 피할 수 있기 때문이다. 반면 부모 노드가 중심부에 위치하거나 무작위로 배치된 경우에는 ACHCI 알고리즘의 성능이 저하되었다.
통계
출발 노드와 부모 노드들로 구성된 볼록 껍질의 순서를 정하여 초기 서브투어를 설정한다.
아직 방문하지 않은 노드 중 부모 노드들이 이미 방문된 구간에 최소 비용으로 삽입할 수 있는 노드를 찾아 삽입한다.
모든 노드가 방문될 때까지 이 과정을 반복한다.
반대 방향의 초기 서브투어에 대해서도 동일한 과정을 수행하여 두 개의 완전한 해밀턴 순회를 얻는다.
두 해밀턴 순회 중 비용이 더 낮은 것을 선택한다.
인용구
"볼록 껍질 최소 삽입 启发式 알고리즘은 여행 외판원 문제에 대해 우수한 해를 생성하는 것으로 알려져 있지만, 이 启发式은 선행 제약 조건을 고려하지 않는다."
"ACHCI 알고리즘은 자식 노드가 중심부에 위치한 경우 기존의 최근접 이웃 启发式 알고리즘보다 97%의 경우에서 더 우수한 성능을 보였다."