허용 가능한 휴리스틱은 어떻게 최적의 솔루션을 보장합니까?


16

A * (또는 다른 최상의 경로 찾기 알고리즘)를 사용할 때 사용 된 휴리스틱은 허용 가능 해야합니다 . 즉, 실제 솔루션 경로의 길이 (또는 이동)를 과대 평가해서는 안됩니다.

허용 가능한 휴리스틱은 어떻게 최적의 솔루션을 보장합니까? 나는 직관적 인 설명을 찾는 것이 바람직하다.

원하는 경우 8- 퍼즐맨해튼 거리 휴리스틱을 사용하여 설명 할 수 있습니다 .


2
@Ashwin 직관적 알고리즘은 길이의 경로를 발견하면 때문에 , 이미 시도한 아마도 가장 길이로 될 수있는 모든 다른 경로 케이 . 이것이 휴리스틱 함수가 목표 비용을 과대 평가 해서는 안되는 이유 입니다. 과대 평가할 수있는 휴리스틱 기능을 만들어서 직접 사용해보십시오. kk
Pål GD

답변:


7

휴리스틱이 목표에 도달하기위한 노력을 과대 평가하지 않는 것을 허용 수단이되는, 즉 : 안톤의 대답은 절대적으로 완벽 동안 나를 대안 답을 제공하려고 할 모든 N 상태 공간에서 (8- 퍼즐에서 이것은 타일의 순열과 현재 고려중인 목표를 의미합니다) 여기서 h * ( n ) 은 목표에 도달하기위한 최적의 비용입니다.h(n)h(n)nh(n)

h ( n ) 이 허용되는 경우 가 최적의 솔루션을 제공 하는 이유를 알기위한 가장 논리적 인 대답 은 OPEN의 모든 노드를 f ( n ) = g ( n ) + h ( n )의 오름차순으로 정렬 하고 또한 목표를 생성 할 때가 아니라 확장 할 때 멈추지 않기 때문입니다.Ah(n)f(n)=g(n)+h(n)

  1. 노드가 의 오름차순으로 확장 되므로 현재 노드보다 더 유망한 다른 노드가 없다는 것을 알고 있습니다. 기억하십시오 : h ( n )f ( n ) 이 가장 낮 으면 OPEN의 다른 노드가 가지지 않은보다 저렴한 경로를 통해 목표에 도달 할 수있는 기회를 가질 수 있습니다. 그리고 이것은 현재 노드를 확장하여 반대를 증명할 수 없다면 사실입니다.f(n)h(n)f(n)
  2. 는 목표 노드를 확장 할 때만 중지 하므로 (목표를 생성 할 때 중지하는 것과는 달리) 위의 첫 번째 지점에서 다른 노드가 더 저렴한 경로를 통과하지 않는 것이 확실합니다.A

그리고 이것은 본질적으로 Nilsson et al.

도움이 되었기를 바랍니다,


3
감사. 도움이되었습니다. 당신은 Nilsson et al. 누구입니까? 증거는 어디에서 찾을 수 있습니까?
Ashwin

1
@Ashwin Nils J. Nilsson (1982)의 " 인공 지능 원리 "(80 페이지) 책을 참조하십시오 .
nbro

11

휴리스틱 함수가 허용되지 않는 경우 일부 노드에서 목표 노드까지의 실제 경로 비용보다 큰 추정치를 가질 수 있습니다. 이 높은 경로 비용 추정이 검색하는 최소 비용 경로에있는 경우 알고리즘은 해당 경로를 탐색하지 않으며 목표에 대한 다른 (최소한의 비용) 경로를 찾을 수 있습니다.

이 간단한 예를보십시오.

여기에 이미지 설명을 입력하십시오

하자 및 G는 각각 일 의 시작목표 노드. 하자 H는 ( N는 ) 노드에서의 경로 길이의 추정 수 NG , N 그래프이다. 더욱이하게 C를 ( N은 , X )단계 비용 함수AGh(N)NGNc(N,Xi) 노드 그 이웃에 X , N= 1 ... m , mNXiNi=1..mm 의 이웃 수 (즉, 노드 N 과 그 이웃 중 하나 사이의 간선 비용을 반환하는 함수 )입니다.NN

휴리스틱을 보자

  • h(B)=3

  • h(C)=4

h ( C ) = 4 > c ( C , G ) = 2 이므로이 휴리스틱 함수 는 허용되지 않습니다.H

h(C)=4>c(C,G)=2

AABGABG4ACG3


1
확인. 그러나 허용 가능한 휴리스틱은 어떻게 최적의 솔루션을 보장합니까?
Ashwin

h (b) <h (c)와 h (b) 및 h (c)가 모두 허용되지만 actual_cost (b)> actual_cost (c) 맞습니까? 따라서 b는 실제로 c가 최상의 경로를 제공 한 다음 경로로 선택됩니다.
Ashwin

첫 번째 의견 : 허용 휴리스틱은 최단 경로를 찾습니다 . 휴리스틱이 일관된 경우 솔루션 자체가 최적 입니다.
안톤

두 번째 주석의 경우 : 휴리스틱이 허용되는 경우 다음 노드를 확장하기 위해 A-> B를 선택할 수 있지만 이후 A *는 A-> B-> G가 아닌 A-> C를 선택합니다. 그리고 결국에는 A-> C-> G로 끝납니다.
Anton

1
A *가 이렇게 작동하기 때문입니다. 해당 노드와의 거리 + 휴리스틱 추정까지의 거리를 최소로 합하여 노드를 확장합니다. d (A, G) + h (G) = 4 + 0 = 4 및 d (A, C) + h (C) = 1 + 무언가 <= 2 (허용되기 때문에). 따라서 C는 더 낮은 금액을 가지며 A *가 그것을 선택합니다. G를 확장하고 가장 적은 경로를 찾는 것과 같은 방식입니다.
안톤
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.