Demyen이 자신의 논문 Efficient Triangulation-Based Pathfinding ( 76-81 페이지)에 설명한 Triangle A * (TA *) 알고리즘을 이해하는 데 도움이 필요합니다 .
또한 최종 노드에 도달 / 확장 한 후에도 삼각 분할을 위해 일반 A * 알고리즘을 조정하고 다른 최적 경로를 검색하는 방법에 대해 설명합니다. 최종 노드가 확장되면 일반 A * 가 중지되지만 삼각 그래프에서 사용될 때 항상 최상의 경로는 아닙니다. 이것은 내가 겪고있는 문제입니다.
문제는 78 페이지의 그림 5.4에 설명되어 있습니다.
논문에 제시된 g 및 h 값을 계산하는 방법을 이해했습니다 (80 페이지).
그리고 검색 중지 조건은 다음과 같습니다.
if (currentNode.fCost > shortestDistanceFound)
{
// stop
break;
}
여기서 currentNode는 f- 점수가 가장 낮은 열린 목록 (우선 순위 큐)에서 검색된 검색 노드입니다. shortestDistanceFound는 지금까지 찾은 최단 경로의 실제 거리입니다.
그러나 향후 검색에서 이전에 찾은 경로를 어떻게 제외합니까? 다시 검색하면 동일한 경로를 찾을 수 있기 때문입니다. 닫힌 목록을 재설정합니까? 나는 무언가를 수정해야하지만 그것이 무엇이 바뀌어야하는지 모르겠습니다. 이 종이에는 의사 코드가 없으므로 도움이 될 것입니다.