CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

Pathfinding en prolog

Aldebran
Aldebran
Niveau 10
14 octobre 2009 à 19:41:27

Bonsoir à tous, j'ai un projet en info qui consiste à coder une IA capable de jouer toute seule à Boulder Dash (l'IA doit déplacer un mineur sur une map en ramassant des diamants et quand on a le nombre qu'il faut on rejoint la sortie). Mais on a une grosse contrainte pour ce projet : il faut que l'IA soit codée en prolog :(

On a donc un code prolog où on a la map représentée par une liste et la largeur de la map, et on possède la position du joueur dans cette liste. Par exemple, si on a une liste de type L=[0,0,0,1,2,0,1,1,0] et que la largeur est 3, la map correspondante sera ceci :
0,0,0
1,2,0
1,1,0
Où 0 est par exemple un mur, 1 un terrain praticable, 2 la position du joueur (dans ce cas la position du joueur dans la liste sera 4).

Et en ce moment, je cherche comment implémenter le pathfinding pour que l'IA aille ramasser les diamants : j'ai pensé à l'algorithme A* mais il est itératif et ça me pose pas mal de problème, je ne vois pas comment faire pour l'implémenter en prolog... J'ai pensé essayer de récursiver l'algorithme A* mais j'ai du mal à voir comment faire...

Est-ce que je suis bien parti en essayant de récursiver A* pour du prolog (si oui, comment m'y prendre ?) ou est-ce que je peux oublier cette idée ?

Merci d'avance pour vos réponses.

godrik
godrik
Niveau 30
14 octobre 2009 à 19:42:35

Je compatis. En periode de deprime, dis toi que c'est toujours mieux que brainf*ck

dnob700
dnob700
Niveau 10
14 octobre 2009 à 23:15:29

Je compatis d'autant plus avec toi que je suis en train de coder des problèmes d'ordonnancement en prolog et que ça ne fonctionne pas du tout...

sur cette page : http://www.csupomona.edu/~jrfisher/www/prolog_tutorial/contents.html le chapitre 5 parle de recherche (et entre autre de A*) en prolog.

Bonne chance.

Aldebran
Aldebran
Niveau 10
15 octobre 2009 à 17:10:36

Merci je vais étudier ton lien Dnob.

Sinon je viens de découvrir par accident que les développeurs de SWI-Prolog ont pas mal d'humour et surtout sont des gros geeks :) J'ai rentré "L." dans le prompt (avec L non défini), et voilà la réponse :

1 ?- L.
% ... 1,000,000 ............ 10,000,000 years later
%
% >> 42 << (last release gives the question)

:-p

Thanhatos
Thanhatos
Niveau 39
20 novembre 2009 à 16:56:37

Bonjour,

Je relève ce topic pour ne pas en créer un autre, et parce qu'il semble récent comparé aux autres.

Je me demande si vous avez sous la souris des tutoriels de Prolog pour débutant s'il vous plait ?
Je commence la matière, et je n'accroche pas du tout à son fonctionnement... Pas moyen pour le moment. Je comprends bien les énoncés, mais pour écrire les solutions en prolog : néant.
Je ne sais tout simplement pas par quoi commencer. Je connais les bases du langage, mais ça s'arrête là. Je sais pas quoi en faire.

C'est à peine si je capte les quelques exercices corrigés. Et quand bien même je les comprends, je suis pas capable de les ressortir moi même.

Bref, help. J'ai du mal avec ce langage déclaratif. Need apprendre autrement, avec d'autres tutoriels svp. :)

(Pas mal la réponse au L non défini. :p)

dnob700
dnob700
Niveau 10
20 novembre 2009 à 17:23:01

On dossier de marque page sur Prolog comprend ça :
http://www.csupomona.edu/~jrfisher/www/prolog_tutorial/contents.html

http://www710.univ-lyon1.fr/~csolnon/prolog.html

http://www.gprolog.org/manual/html_node/index.html

http://pcaboche.developpez.com/article/prolog/presentation/?page=sommaire

Ça t'aidera peut-être.

Thanhatos
Thanhatos
Niveau 39
25 novembre 2009 à 17:30:36

Merci, je vais voir ça dès que possible.

Sous forums
  • Aide à l'achat Mac
  • Internet
  • Macintosh
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Steam Deck
  • Hardware
La vidéo du moment