2017-09-24 15 views
0

Blocksworld 문제에 대한 휴리스틱 솔루션을 개발 중입니다.인공 지능 : Blocksworld 경험적 A * 솔루션 접근 방식

나는 h (n)의 위치에서 블록 수를 사용하여 시도했다. 거의 효과가없는 것 같습니다.

누군가가 문제에 대한 적절한 경험을 지적하고 어떻게 작동하는지 몇 가지 예를 설명하십시오.

Blocksworld Problem Example: 

Initial(starting State): 
Stack 0: D,B 
Stack 1: A,E 
Stack 2: C 
Stack 3: F 


Goal State: 
Stack 0: A,B,C,D,E,F 
+3

"블록 워드"문제에 익숙하지 않아 그것에 관련된 좋은 리소스를 찾을 수 없습니다. 문제 요구 사항을 정의 할 수 있습니까? – Cristy

+0

@Cristy : 문제의 예제를 추가했습니다. – user3758749

+1

아마도이 문제 또는 배경에 대해 알지 못하는 인터넷상의 임의의 낯선 사람 대신 교수님이나 조교에게 도움을 요청할 수 있습니다. – stackoverflowuser2010

답변

0

Blocksworld 문제는 표제가 붙은 나무 블록, 표 및 원하는 끝 위치로 구성됩니다. 상위 블록을 제거하여 다른 스택 또는 테이블에 놓을 수 있습니다 (새 스택 시작). 다른 블록에 의해 덮여있는 블록은 이동하지 마십시오. 목표는 최소 이동 횟수로 최종 상태로 이동하는 것입니다.

A *를 사용하면 이동이 우리 목표에 더 가깝거나 멀리 있는지 여부에 대한 경험적 발견이 필요합니다. 그래서 각 블록에 대해 하나씩 점수를 매긴 다음, 끝 위치의 말뚝을 아래에서 위로 득점하여 원하는 위치까지 블록의 거리를 계산합니다 (따라서 블록이 맨 위에 있으면 -1이됩니다. 두 번째 위치는 -2의 점수를 얻은 다음 다음 블록에 대해서도 똑같이 수행하므로 두 블록을 뒤집어 놓으면 부정확 한 측정 값을 얻을 수 있지만 너무 좋지는 않습니다.

이것이 어떻게 수행되는지는 잘 모릅니다. 그것은 명백하게 오픈 프로그래밍 문제로 설계되었습니다.