Inteligencia artificial - hanoi

Disponível somente no TrabalhosFeitos
  • Páginas : 4 (811 palavras )
  • Download(s) : 0
  • Publicado : 11 de junho de 2012
Ler documento completo
Amostra do texto
D:\Nova pasta\USP\IA\Work1\hanoi.pl

segunda-feira, 11 de junho de 2012 08:51

%ESPACO DE ESTADOS E FUNCOES DE AVALIACAO

sucessor(nodo(E1,C),nodo(E2,C2)):pode_ir(E1,E2),
C2 is C+1.pode_ir([[B|A],[],[]],[A,[B],[]]).
pode_ir([[],[A|B],[]],[[A],B,[]]).
pode_ir([[],[B|A],[]],[[],A,[B]]).
pode_ir([[],[],[A|B]],[[],[A],B]).
pode_ir([[B|A],[],[]],[A,[],[B]]).pode_ir([[],[],[A|B]],[[A],[],B]).pode_ir([[A|B],[C|D],[E|F]],[B,[A,C|D],[E|F]]):pode_ir([[A|B],[C|D],[E|F]],[B,[C|D],[A,E|F]]):pode_ir([[A|B],[C|D],[E|F]],[[C,A|B],D,[E|F]]):pode_ir([[A|B],[C|D],[E|F]],[[A|B],D,[C,E|F]]):pode_ir([[A|B],[C|D],[E|F]],[[E,A|B],[C|D],F]):pode_ir([[A|B],[C|D],[E|F]],[[A|B],[E,C|D],F]):pode_ir([[A|B],[C|D],[]],[B,[A,C|D],[]]):- A < C.
pode_ir([[A|B],[C|D],[]],[B,[C|D],[A]]).pode_ir([[A|B],[],[E|F]],[B,[],[A,E|F]]):- A < E.
pode_ir([[A|B],[],[E|F]],[B,[A],[E|F]]).
pode_ir([[],[C|D],[E|F]],[[],D,[C,E|F]]):- C < E.
pode_ir([[],[C|D],[E|F]],[[C],D,[E|F]]).pode_ir([[A|B],[C|D],[]],[[C,A|B],D,[]]):- C < A.
pode_ir([[A|B],[C|D],[]],[[A|B],D,[C]]).
pode_ir([[A|B],[],[E|F]],[[E,A|B],[],F]):- E < A.
pode_ir([[A|B],[],[E|F]],[[A|B],[E],F]).
pode_ir([[],[C|D],[E|F]],[[],[E,C|D],F]):- E pode_ir([[],[C|D],[E|F]],[[E],[C|D],F]).

heuristica2([nodo(Conf,C)|_],V):funcao_f(Conf,Val),
V is C+Val.

funcao_avaliacao([A,B,C],H):soma(A,SA,0),
soma(B,SB,0),
H is SA + SB.soma([],SA,SPA):SA = SPA.
soma([C_A|R_A],SA,SPA):R is SPA + 1,
soma(R_A,SA,R).

funcao_f(State,F) :-1-

A
A
C
C
E
E

<
<
<
<
<
<

C.
E.
A.
E.
A.
C.

D:\Novapasta\USP\IA\Work1\hanoi.pl

segunda-feira, 11 de junho de 2012 08:51

funcao_avaliacao(State,H),
F is H.
teste_sucesso(nodo([[],[],[1,2,3]],_)).

%BUSCA INFORMADA: A ESTRELAbusca_A_estrela(Inicial):busca_melhor_escolha(nodo(Inicial,0),C,stat(1,1,1),Stat),
reverse(C,Caminho),
mostrar_resultado(Caminho).

busca_melhor_escolha(Inicial,Sol,StatIn,StatOut):bme([(0,[Inicial])],[],Sol,StatIn,StatOut)....
tracking img