2012-10-12 2 views
1

나는 여러분에게 물어볼 질문이 있습니다.3 개의 물 주전자를위한 발견 적 기능

저는 인공 지능의 초보자입니다. A * 검색을 사용하여 물 주전자 문제 (3 주전자 - 3 lt, 5lt, 9lt - 7lt 시도 중)를 해결하고 싶습니다.

솔루션을 구현하는 데 경험적 함수가 필요하지만 알고리즘이 솔루션에 가장 적은 단계를 찾을 수 있도록 좋은 경험적 f (n)을 찾을 수 없습니다.

+0

나는 대학에서 AI 과정을 밟았는데, 지금까지 무엇을 시도 했습니까? – Woot4Moo

+0

나는 h (n) = (목표 상태의 주전자 (n)의 합 - 초기 상태 (n)의 합)/2로 정의 된 함수를 시도했다. 나는 성공할 수 없었다. –

+0

정확한 복제본을 위해 이것을 클로즈 (close)로 표시하려고했습니다 : http://stackoverflow.com/questions/1806880/water-jug-problem-in-die-hard-3-into-a-graph – Woot4Moo

답변

1

그래서 매개 변수이 문제를 해결의 비 경험적 방법을 감안할 때 : Pour 또는 Fill : 그래서이보고

0) Fill the 9 liter jug 
1) Pour the 9 liter jug into the 5 liter jug, this leaves 4 liters in the 9 liter 
2) Fill the 3 liter jug 
3) Pour the 3 liter jug into the 9 liter jug and the problem is solved 

두 상태 중 하나 일 수 있습니다 노드가 그래프해야합니다 . 그런 다음 각 노드에 도달 할 액체의 양을 나타내는 가중치를 할당합니다 (1,2,3,etc). 어떤 부서도 참여해서는 안되며 특정 작업을 사용하는 데 "비싸게"만들 필요가 있습니다.

+0

그래서이 함수를 사용한다고 해봅시다. f (n) = (2,3,5 = 2 + 3 + 5 = 10) + 조작량 (예 : 주입 = 1, 채우기 = 1)에 대한 액체의 양 , Empty = 6) –

+0

@Un_NatMenDim 부울, 채우기 및 빈 작업에 값 또는 가중치가 지정된 행에 따라 뭔가있을 수 있습니다. 이러한 매개 변수의 가장 좋은 값은 현재 나에게 특히 동적 인 입력. – Woot4Moo

+0

좋아, 답장을 보내 주셔서 감사합니다 .. –