2014-09-13 2 views
3

다음 그래프가 A * 검색에서 차선책을 어떻게 제시하는지 이해할 수 없습니다. enter image description hereA * 검색에 의해 주어진 차선책.

위의 그래프는 A * 검색이 차선책 인 경우, 즉 경험적으로 허용되지만 일관성이없는 경우의 예입니다. 각 노드는 그 노드에 대응하는 경험적 가치를 가지고 있으며, 노드를 가로 지르는 가중치가 주어집니다. 어떻게 A * 검색이 노드를 확장 할 것인지 이해하지 못합니다.

+0

"그래프 검색"을 사용하는 A * 만 최적 이하 솔루션을 반환합니다. http://stackoverflow.com/questions/10680180/graph-search-vs-tree-search/15281447#15281447을 참조하십시오. – ziggystar

+0

Imho는 "A * 그래프"의 의사 구현은 정말 나쁜 것이지만 하위 솔루션을위한 유일한 이유가 될 수 있습니다. – Demplo

답변

0

정직하게는 A *가 주어진 경험적 방법으로 차선책을 어떻게 돌려 줄 수 있는지 보지 못합니다. 이것은 단순한 이유입니다. 주어진 휴리스틱은 허용 가능합니다 (심지어 단조롭거나 일관성이 있습니다).

각 노드의 h 값과 g의 최단 경로 비용을 비교하여 직접 확인할 수 있습니다.

A *의 optimality 속성을 감안할 때 차선책 인 S -> A -> G을 반환하는 방법을 알지 못합니다.

차선책을 반환 할 수있는 유일한 방법은 목표로 연결되는 국경의 노드에서 발생한 작업 (목표 경로 포함)이 발견되면 중지하고 이지만 그렇지 않을 수 있습니다. A *.

+0

경험적 방법은 단조롭지 않습니다. B에서 A로 감소합니다. – ziggystar

+0

사실뿐만 아니라 그곳에 있습니다. 여전히 허용 가능하며 최적을 보장해야합니다. – Demplo

+0

죄송합니다, 오늘 약간 혼란 스럽습니다. :) – ziggystar

3

경험적 h (n)은 일관성이 없습니다.

먼저 경험적 함수가 일관성 있다고 할 때 정의 해 보겠습니다.

h(n) is consistent if 
– for every node n 
– for every successor n' due to legal action a 
– h(n) <= c(n,a,n') + h(n') 

여기 명확 'A'는 따라서 추론 기능하지 일관성/단조 등 A *는 최적의 솔루션을 제공 할 필요는 'B' 하지만 h(B) > h(A) + c(A,a,B)

을 노드로의 후속이다.