JeuWeb - Crée ton jeu par navigateur
Laisseriez-vous votre IA tricher ? - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Gameplay, gamedesign (https://jeuweb.org/forumdisplay.php?fid=48)
+--- Sujet : Laisseriez-vous votre IA tricher ? (/showthread.php?tid=7448)

Pages : 1 2


RE: Laisseriez-vous votre IA tricher ? - Xenos - 03-09-2015

Citation : Dans the witcher tu fightes des boss qui ont beaucoup plus de points de vie et qui peuvent te one shot, mais bon t'as un cerveau humain donc tu les éclate quand même.
Pour moi, c'est le cas "Joueurs vs IA", et dans ces cas-là c'est presque normal d'avoir des caractéristiques différentes.
Dans le cas où l'IA doit émuler un autre joueur (parce qu'on a des teams {IA+joueurs} vs {IA+joueurs} par exemple), les avantages aux IAs me semblent mal venus. Je ne sais pas dans lequel de ces deux cas tu te situes.

L'avantage des algos d'apprentissage réside dans le fait de coder peu de structure, qui traiteront beaucoup, beaucoup de données. La difficulté est donc qu'on ne sait pas trop quel va être le résultat final (normal par définition).


RE: Laisseriez-vous votre IA tricher ? - niahoo - 03-09-2015

(03-09-2015, 02:30 PM)Akhyra a écrit : Dans les IA que j'ai développé j'ai toujours intégré plus ou moins de triche, il suffit d'évaluer le bonus de la triche en question pour positionner ton IA sur la difficulté.

Quel genre de triches as-tu mis en place ? Et sur quel genre de jeu ? Peux-tu en parler ? (par MP si tu ne veux pas que ça soit public).

(03-09-2015, 05:18 PM)Xenos a écrit : L'avantage des algos d'apprentissage réside dans le fait de coder peu de structure, qui traiteront beaucoup, beaucoup de données. La difficulté est donc qu'on ne sait pas trop quel va être le résultat final (normal par définition).

C'est justement le côté peu de structure qui m'étonne. C'est complexe un truc qui sait apprendre et reproduire. Aurais-tu un exemple ?


RE: Laisseriez-vous votre IA tricher ? - Max72 - 03-09-2015

[HS] Déconnez pas avec vos IA qui apprennent, on va se retrouver avec des I-Robot / Terminator qui vont dominer la race humaine [/HS]


RE: Laisseriez-vous votre IA tricher ? - Xenos - 03-09-2015

Un exemple simple pour le jeu d'échec (pas besoin d'expliquer les règles comme ça).
L'IA a en mémoire un ensemble de parties pour lesquelles il y a un statut "les blancs gagnent", "les blancs perdent", "match nul". A chaque coup de l'IA, elle cherche la position courante dans la BDD, elle ne conserve que les parties où son camp a gagné (à défaut, celles nulles), et elle joue l'un des coups au pif.

C'est trivial à implémenter. C'est monstrueux à calculer, je l'accorde. On peut facilement ajouter des conditions aléatoires où l'IA va parfois jouer un coup au pif.

Un exemple un peu plus poussé pour les échecs (et qui est probablement la solution actuelle): à chaque caractéristique de la position, on associe un paramètre, ce qui constitue un vecteur décrivant la position courante (pièces en place, cases de déplacement de chaque pièce, etc). On en déduit donc, via une formule de calcul, une "valeur" de la position. On liste les coups autorisés, on recalcule la valeur de la position suivante et on choisit le meilleur coup. L'apprentissage de l'IA se joue alors sur la formule de calcul: l'IA attribue initialement la valeur "1" à chaque paramètre. Donc, en gros, 1 pion = 1 reine = 1 roi. En début de partie, l'IA va altérer ce paramètre de +/-10% (facile à coder: rand(0.9, 1.1)). En fin de partie, l'IA sauve ces paramètres ainsi que le fait d'avoir gagné ou perdu. Aux prochaines parties, l'IA favorisera les jeux de paramètres que la font le plus gagner.


RE: Laisseriez-vous votre IA tricher ? - niahoo - 03-09-2015

Ok je vois. Mais là le problème c'est que pour les échecs tu connais les pions et les positions de l'adversaire. Comment tu concevrais la même chose sur worms par exemple ? (un worms via réseau, sans voir les armes de l'autre)