Bonjour à tous,
Sans forcément fournir tous les détails, j'ai ces prédicats et règles :
Sans entrer dans les détails, ce mini projet permet de résoudre un petit niveau d'un jeux (trouver un plus court chemin).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 canWin(state(_,_,_,_,_,_,_,dead),[],_). canWin(State1,[M|L],Borne):-Borne>0,move(State1,M,State2),canWin(State2,L,Borne-1). solve(Moves,Borne):-canWin(state(z6,z6,z1,closed,closed,closed,closed,alive),Moves,Borne),!.
A l'heure actuelle pour trouver le nombre de coups minimum je fais :
Jusqu'à ce que solve ne soit plus vérifié.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 solve(M,10). ... solve(M,9). ... etc
Comment faire pour que mon programme soit capable de déterminer le minimum de coup tout seul ?
Y'a une récurrence à écrire que je n'arrive pas à trouver ....
Merci de m'avoir lu,
et par avance merci à quiconque pourra m'aider
Partager