Intelligence artificielle
Bonsoir tout le monde
Ca y'est je vais pouvoir reprendre et consacrer un peu plus de temps à la programmation...
J'aimerais adapter un de mes jeux sur Ipad et j'aimerais ajouter la possibilité de jouer contre une IA.
Si quelqu'un connais le sujet ou a une piste, je suis preneur car là je ne vois pas du tout par où commencer.
En gros pour un jeux comme othello/reversi comment fait-on, c'est quoi les bases ? J'imagine qu'il faut faire tester toutes les combinaisons possible à l'IA, mais comment. Le temps doit être super long aussi pour tout tester.
Enfin bref si certains ont des infos (type jeu othello/puissance4/echec) je veux bien car j'ai rein trouver de concret.
Merci beaucoup.
Ca y'est je vais pouvoir reprendre et consacrer un peu plus de temps à la programmation...
J'aimerais adapter un de mes jeux sur Ipad et j'aimerais ajouter la possibilité de jouer contre une IA.
Si quelqu'un connais le sujet ou a une piste, je suis preneur car là je ne vois pas du tout par où commencer.
En gros pour un jeux comme othello/reversi comment fait-on, c'est quoi les bases ? J'imagine qu'il faut faire tester toutes les combinaisons possible à l'IA, mais comment. Le temps doit être super long aussi pour tout tester.
Enfin bref si certains ont des infos (type jeu othello/puissance4/echec) je veux bien car j'ai rein trouver de concret.
Merci beaucoup.
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Merci ça c'est un bon point de départ.
Tu peux trouver des infos sur le sujet en cherchant "pathfinder" ou "A*"
(J'ai pas tout compris à l'organisation, mais les vidéos des cours ont tout de même l'air d'être dispo sur YouTube).
pas faux, pour les jeux de plateau à 2 joueurs (echecs, dames, othello...) c'est l'alpha-beta.
faire qque chose de "costaud" n'est pas trivial.
regarde la : http://www.ffothello.org/info/algos.php
après si tu as des questions, tu seras le bien venu ;-)
Un peu à la Prolog (j'ai pas mal codé en prolog, c'est assez puissant pour ce genre de cas d'usage, le code prolog consiste à "énoncer les règles" -- avec une syntaxe structurée -- et ensuite t'as plus qu'à lui fournir un plateau en entrée et il te dis toutes les suites de coups permises, celles qui donnent le plus de points, etc...)
Perso j'aime bcp le Prolog pour ce genre de cas, ça m'a toujours bluffé qu'en quelques lignes de code tu expliques les règles de Sudoku et il sait soit te générer des grilles à la volée, soit te les résoudre, soit te dire si une grille finie (ou pas) est valide, ...
Bon après ça reste du backtracking. Mais pour un Othello ça me semble assez simple à mettre en place (peut-être pas le plus performant, mais pour une première IA le concept est simple, tu testes tous les chemins, procèdes par élimination au plus tôt quand tu vois qu'un chemin va bloquer, et tu retiens celui qui te donne le plus de points, sachant que pour augmenter le niveau de ton IA tu peux la faire prévoir de plus en plus de coups à l'avance par exemple)
Merci à vous tous pour vos conseils.
Je vais voir tout ça, le backtracking, l'alpha-beta et voir les liens que vous m'avez donnés.
Merci !!
c'est un othello que tu veux developper?
Non ce n'est pas un othello, c'est un jeu à moi que je voudrais adapter. C'est un jeu de type abstrait, donc avec un fonctionnement proche de ce genre de jeu quand même.
Merci.
Encore merci pour tout
non, il élague sans risque les mauvaises possibilités. Pour les branches non prometteuses (qui semblent être une mauvaise possibilités) il y a d'autres techniques.
[url=http://fr.wikipedia.org/wiki/à‰lagage_alpha-beta]http://fr.wikipedia.org/wiki/à‰lagage_alpha-beta
[/url]