AccueilAccueil  FAQFAQ  RechercherRechercher  MembresMembres  GroupesGroupes  S'enregistrerS'enregistrer  ConnexionConnexion  



 
Neverused est en cours de déplacement vers le Forum Pokéstrat
Vous y retrouverez toutes les fiches à jour, avec une présentation bien plus agréable !



 

 Créer une IA OU.


AuteurMessage
Membre Diamant
Artemis 
Membre Diamant 

Messages : 717
Age : 20

MessageSujet: Créer une IA OU. - Mar 17 Fév - 19:43

Bonjour, je crée actuellement un bot qui devrait affronter, seul, des joueurs OU.
J'en suis à la création de l'IA, la majorité du fonctionnement de Pokémon est implémentée (ce qui représente 80-90% du bot mais si personne en est conscient), et je tente de résoudre ce problème inextricable qu'est créer une IA apte à affronter un joueur.

Pour clarifier mes propos, créer une IA c'est établir un algorithme parfaitement quantitatif de choix.

Par exemple, l'IA de 'fullfailencc1v1' est :

-Choix du lead-
Donner un score à chaque pokémon comme suivant : (Somme des bases stats des pokémons * Moyenne quadratique de la puissance des moves faisant des dégats direct).
Prendre le pokémon ayant le plus haut score.

-En combat-
Calculer le move faisant les plus hauts dégats (avec une fonction préprogrammée).
Le spam.


Maintenant, comment faire ça pour l'OU ?
Le problème est beaucoup plus compliqué, il faut gérer :
- L'existence d'entry hazard / tout le qualitatif qui va avec - taunt, rapid spin, defog -
- L'existence de setups (garder de quoi stopper les pokémons adverses qu'on pense setups)
- L'existence de soins.
- L'existence de moves qui nécessite de voir plus loin que un ou deux tours (toxic), bref, utilisant le concept de temps, quasi impossible à programmer.
- Les switchs. Le fait est que quand on switch sur un autre poké qui est avantagé de façon instantané, s'il perd 10% sur le switch, on y a, dans l'instant, "globalement perdu". Même si en fait on regagnera ce qu'on a perdu au tour suivant.
- L'inconnu, l'obtension d'information, mais histoire de faire simple on va considérer qu'on connait la totalité de l'équipe adverse, je me suis déjà occupé du problème de la connaissance.




Donc, à force de recherches j'ai pensé à plusieurs trucs ...

IA à vision courte, à "pertinence d'action" :
On ne s'intéresse presque qu'au 1v1.
On regarde quel est la meilleure option entre les moves - lequel fait le plus mal -, et les switchs - après s'être pris l'attaque la plus efficace contre le poké actuellement sur le terrain, lequel est le plus apte à 1v1. On peut aussi juger de la pertinence de moves qualitatifs, tels que les entry hazard, en leur donnant une certaine note basée sur la situation.

Avantages :
- Semble efficace dans un match où on se fout sur la gueule.
- Gestion facile des dégats indirects (sr, toxic, wow)
- On peut faire un script qui gère le soin - dès que l'autre se soigne, on prend en compte qu'il nous faut quelque chose qui fait plus de 50%, le cas échéant on switch sur quelque chose de plus approprié.
- Utilise bien les switchs.

Désavantages :
- Comment gérer l'anticipation ? Entre joueurs, les deux savent qui est en position de supériorité dans l'instant. Pas l'ordinateur. Faudrait-il regarder qui est le plus apte à infliger le plus de mal à l'autre, et considérer que celui ci va donc toujours faire cette action, et que c'est l'autre qui s'adapte ? Mais ça, ça déconne, si l'un est apte à OHKO l'autre, il va s'attendre à un switch out ... passer par les probabilités ?
- Cruel manque de vision globale. Si, par exemple, mon seul check à dragonite extremespeed est un Mamoswine Ice shard focus sash, cet algo, dans la situation Metagross contre Mamoswine, sacrifierait les 99% de vie de Mamoswine car ça en enlève 100% à Metagross. Ouais, sauf que du coup 5 tours plus tard on perdra car Dragonite se sera setup et on aura plus de check. Du coup, cet algo semble adapté à la random battle, mais pas à l'OU ou à tout tier avec teampreview qui nous donne des infos cruciales.
- Aura tendance à switch out un truc lentissime à 10% hp qui ne sert à rien contre tel ou tel poké, en pensant que ça servira plus tard. Sauf qu'en fait non, vu qu'il est lent. Mais comme on regarde pas l'équipe adverse dans sa globalité ...






IA à vision globale, à "note de situation" :

On va donner une note évolutive à chaque pokémon, en fonction du potentiel de dégats qu'ils ont pour l'équipe adverse.
Par exemple, simuler les 36 1v1 de coups directs, et ajouter à la note, pour chaque 1v1, le pourcentage d'hp que chacun s'enlève (genre %hp enlevé à l'autre - %hp enlevé à nous, ou juste %hp enlevé à l'autre) - en supposant qu'ils se tapent jusqu'à la mort. On ajoute à ça des bonus de points en fonction de l'utilité du pokémon. Par exemple, un bonus de point pour les hazards dans un moveset, un bonus de point si on a rapid spin/defog et qu'on pense que l'autre a des hazards dans son équipe, potentiellement pour taunt, will-o-wisp en fonction du nombre d'attaquant physique ... bref.
Partant de là, on regarde, pour chaque move possible, l'impact sur le "situation rating" (nom de la note).
A nouveau, problème d'anticipation, une proposition serait : en supposant que l'autre agisse pas,
lequel est apte à toucher le plus au situation rating ? L'autre s'adapte.

Avantages:
- Contrairement au premier choix, un pokémon inutile sera bien considéré comme inutile (s'il se fait outspeed+tuer par tout le monde il vaut 0 points. Sa mort n'influe pas sur le situation rating, alors que switch le baissera. Donc on va le laisser mourir.), et ne sera pas gardé au prix de dégats sur un poké utile.
- Un pokémon considéré comme super utile car apte à OHKO quelqu'un sans dégats ne sera pas trade pour un gain quasi nul. En effet sa part dans le situation rating étant grande, s'il meurt ce dernier s'effondre.
- Le système est naturellement intelligent, car il réfléchit de la même façon pour l'adversaire : s'il y a un poké en face qui est excessivement dangereux (au hasard car il peut se setup et qu'on a rien pour le check !), l'IA sera prête à sacrifier des choses pour s'en débarasser.
- Utiliser taunt pour contrer les hazards est juste limpide avec ce raisonnement.
- Si un adversaire a un poké à setup sur le terrain, l'IA gère bien ça, en calculant la modification de situation rating, il évalue correctement le danger qu'il représente.
- Un poké avec soin peut être évalué à sa juste valeur, en programmant le fait qu'il peut se regen de 50% pendant les "simulation de 1v1"
- Les simulations de 1v1 prennent aussi en compte des trucs cool, genre Leftovers, Life Orb, Rocky Helmet, Sticky Barb/Rough Skin ... bref, elles sont précises.

Désavantages:
- ENORME problème avec les switchs. ... On ne va quasiment pas switcher. Nécessairement, switcher représente une baisse de situation rating, puisqu'on inflige rien et qu'on prend des dégats. Donc pour switch, faudrait que le 1v1 soit tellement catastrophique que la variation soit plus négative que switch ! Par exemple, si switcher nous fait perdre 30% d'hp, alors que rester en combat nous fait perdre 30% d'hp et qu'on en inflige 5%, une telle IA - à valeur globale de poké égale - ne switcherait pas. Car perdre 30% fait plus baisser le situation rating que perdre 30% et infliger 5%. Evidemment, c'est un mauvais choix, mais le concept de vision à long terme n'est pas quantitatif ! En plus, l'évaluation des switchs on a pas trop envie d'y toucher, c'est grâce à elle qu'on se prend pas de dégats inutiles quand on a un poké lent low hp qui sert plus à rien.

- Comment gère-t'on le fait que des pokés autre que ceux sur le terrain ait des moves de setups ? On ne peut pas faire une simulation de 1v1s quand on simule les 1v1s, on part en boucle infinie sinon ...




Parmi les diverses idées m'étant venues à l'esprit, voilà donc les plus pertinentes, même si elles possèdent toutes deux de gros défauts ...
La recherche d'algorithme d'IA ne requiert aucune compétence informatique mais juste d'avoir bien compris qu'en informatique, les choses doivent être précises et quantifiées. C'est pour ça que je fais appel au public ! Si vous avez des idées, n'hésitez pas à les proposer ici, le problème me semblant beaucoup trop compliqué pour être résolu seul.

Et si vous voulez une idée de la difficulté du problème, sachez qu'il n'existe (c'est vite dit ...) qu'un bot OU à ce jour : http://www.smogon.com/forums/threads/an-ou-bot.3529338/ , et que question performance ... il n'a jamais gagné, sinon contre un joueur de gliscor/breloom toxic orb sans soin poison. En bref qui se sont tués tout seul. En gros, il n'a jamais gagné. A ce sujet je suis d'ailleurs assez outré que le créateur fasse un sujet pour présenter un bot qui n'a jamais gagné, et obtienne un tel engouement du public ... (edit : lol http://replay.pokemonshowdown.com/oususpecttest-210540578 )

Bref, à vos cerveaux !


Dernière édition par Artemis le Mer 18 Fév - 2:05, édité 1 fois
Rédacteur News
azortech 
Rédacteur News 

Messages : 1093
Age : 17

MessageSujet: Re: Créer une IA OU. - Mar 17 Fév - 19:50

L'idée serait excellente, mais je sais pas trop si ce serais possible d'en faire une bonne car; comme tu le dis toi même, les IA sont clairement moins intelligentes, elles peuvent faire des calculs très précis, mais le sens d'anticipation je ne sais pas si il est véritablement possible de leur en donner un bon... C'est d'ailleurs ce qui fais que le jeu pokémon (or combats link) est d'une facilité extrême, même avec de mauvais pokémons.

Quoi qu'il en soit j'ai confiance en ton intellect' et je vais essayer de t'aider même si je joue pas OU ^^"

Il n'y a pas moyen de check les dégâts que feraient un pokémon de la team pour voir si ca vaut plus le coup de switch (dans le cas des 30% communs, si le "en jeu" peut mettre 5% et un dans la team 68%, y' a pas moyen que l'IA puisse le détecter et ordonner un switch?)

_____________________________________________



le sens de la vie:
http://www.matmartinez.net/nsfw/


Dernière édition par azortech le Mar 17 Fév - 19:56, édité 1 fois
Membre Diamant
Artemis 
Membre Diamant 

Messages : 717
Age : 20

MessageSujet: Re: Créer une IA OU. - Mar 17 Fév - 19:54

Au fait, le tier importe peu. C'est juste que la base de donnée est OU, mais sinon, je rajoute juste des données pendant 2 heure et il jouera Uber, UU, RU et NU (et PU)
Rédacteur News
azortech 
Rédacteur News 

Messages : 1093
Age : 17

MessageSujet: Re: Créer une IA OU. - Mar 17 Fév - 19:58

oui oui ca je me doute bien ^^ c'est juste pour dire que personnellement une IA OU n'était pas le truc qui m'interessait le plus au monde, mais créer une IA d'entraînement c'est vrai que ce serait génial :D (j'ai édit et a jouter une idée)

_____________________________________________



le sens de la vie:
http://www.matmartinez.net/nsfw/
Membre Emeraude
MrZeeR 
Membre Emeraude 

Messages : 372
Age : 14

MessageSujet: Re: Créer une IA OU. - Mar 17 Fév - 19:59

Je confirme qu'une IA d'entrainement serait une nouveauté excellente mais pourquoi seulement OU ?

_____________________________________________

 Chaine YT : https://www.youtube.com/channel/UCyMQ2rjEji1k6l3wjZ9iIEw
Petit commerce de Spindim, Diidy et Karmaz ^^ :
 
Modérateur Console
Moutemoute 
Modérateur Console 

Messages : 4662
Age : 19

MessageSujet: Re: Créer une IA OU. - Mar 17 Fév - 20:01

Ouais mais le fait de lui rajouter l'anticipation "obligerait" à prévoir également le contre switch adverse.. En gros, j'anticipe mais je ne sais pas si mon adversaire ne va pas non plus anticiper mon anticipation (assez rare, même en mode rang console c'est puant de trop vouloir anticiper..).

En tout cas ce serait vraiment cool :)
Mais je ne pense pas pouvoir aidé vu mes connaissances super réduites (voir inexistante) en programmation :/
Rédacteur News
azortech 
Rédacteur News 

Messages : 1093
Age : 17

MessageSujet: Re: Créer une IA OU. - Mar 17 Fév - 20:02

Je crois qu'Artemis joue beaucoup OU, c'est pour pouvoir la tester vu qu'il est bon en OU, comme il l'a dis si son truc est bon, il ajoutera les pokémons d'autres tiers, juste que ca sert a rien de mettre 719 pokémons + les mégas si l'IA est naze

ensuite anticiper une anticipation c'est plutôt chaud et au final ca arrive pas trop souvent... (genre pas plus de trois fois par parties génénralement) :/

_____________________________________________



le sens de la vie:
http://www.matmartinez.net/nsfw/
Membre Emeraude
MrZeeR 
Membre Emeraude 

Messages : 372
Age : 14

MessageSujet: Re: Créer une IA OU. - Mar 17 Fév - 20:04

Ah Ouais j'y avais pas pensé...

_____________________________________________

 Chaine YT : https://www.youtube.com/channel/UCyMQ2rjEji1k6l3wjZ9iIEw
Petit commerce de Spindim, Diidy et Karmaz ^^ :
 
Membre Rubis
Bluevoli 
Membre Rubis 

Messages : 191

MessageSujet: Re: Créer une IA OU. - Mar 17 Fév - 20:25

C'est une super bonne idée ! Sinon pour l'anticipation tu peux penser à prendre que des pokés qui apprennent Demi-Tour ou Change-Eclair et leurs mettre mais pas avec d'autres attaques du même type parce que généralement ça va faire plus de dégâts que les autres attaques si c'est pas bon de rester contre lui et ça fait switch. Mais comment mettre un bon poké après, ça je sais pas... Et puis aussi tu peux réfléchir par rapport au métagame...
Rédacteur News
azortech 
Rédacteur News 

Messages : 1093
Age : 17

MessageSujet: Re: Créer une IA OU. - Mar 17 Fév - 20:34

Oui mais si voltswitch ou u turn fais moins de dégâts il pensera pas a utiliser ca...

_____________________________________________



le sens de la vie:
http://www.matmartinez.net/nsfw/
Membre Diamant
Artemis 
Membre Diamant 

Messages : 717
Age : 20

MessageSujet: Re: Créer une IA OU. - Mar 17 Fév - 20:42

euh ben non en fait je joue jamais OU
Rédacteur News
azortech 
Rédacteur News 

Messages : 1093
Age : 17

MessageSujet: Re: Créer une IA OU. - Mar 17 Fév - 20:50

ah bon? alors pourquoi commencer par une IA OU? pour montrer que tu peut surpasser l'autre type?

_____________________________________________



le sens de la vie:
http://www.matmartinez.net/nsfw/
Membre Diamant
Artemis 
Membre Diamant 

Messages : 717
Age : 20

MessageSujet: Re: Créer une IA OU. - Mar 17 Fév - 20:51

simplement car l'OU est le plus joué ..
Membre Blanc
supercarotte 
Membre Blanc 

Messages : 1660
Age : 23

MessageSujet: Re: Créer une IA OU. - Mar 17 Fév - 21:08

Pourquoi ne pas te baser sur le calculateur de dégats de SD pour calculer l'outcome en 1v1 et décider s'il faut switcher ou non? Sachant que le calculateur de SD sait prendre en compte les entry hazards/statuts/climats.

Après je pense qu'il y a moyen de récupérer les résultats de l'usage stats pour déterminer le set "probable" de l'adversaire pour les calculs, quitte à mettre à jour en fonction des moves utilisés?

_____________________________________________

CA : 0748 - 6081 - 8359 (pseudo: Supcarotte)

Safari (X) :


Retrouvez tous mes guides de triche ici
Membre Diamant
Artemis 
Membre Diamant 

Messages : 717
Age : 20

MessageSujet: Re: Créer une IA OU. - Mar 17 Fév - 21:26

Déjà fait, j'ai reproduit le calcul des dégats dans mon script.

Quant à la question de l'inconnu, j'ai dit m'en être déjà occupé. Les 60-70 pokémons les plus utilisés de l'OU ont tous une base de donnée de sets rentrés, avec des moves 'optionnels'. Le bot supposera que c'est le plus utilisé, puis à partir des infos notés en combat, choisira une autre croyance de set.
Membre Platine
Naï-ryu 
Membre Platine 

Messages : 1009
Age : 19

MessageSujet: Re: Créer une IA OU. - Mar 17 Fév - 22:38

C'est vraiment dur comme problème... Déjà est ce que le bot peut reconnaitre un pokémon de son équipe ou celui qui l'a en face ? Parce si c'est ainsi je pense qu'il n'y a pas de soucis avec le choix du lead. Si le bot connait les set, les stats... Je vois pas trop où est le problème puisse que si tu as les chiffres seul le calcul reste à faire, ça après ou je m'aventure dans un milieu que je connais pas ou c'est simple non ?

Ensuite pour les entry hasards, je suis pas sur de ce que j'avance, parce que je bricole un peu en info, mais tu pourrais utiliser une variable qui vaut zero, puis genre qui passe à un quand l'adversaire en pose un. Une fois dans une boucle if, y'a plus qu'a tester si elle vaut 1 ou 0 si il faut nettoyer le terrain (je ne suis pas sur mais je pense que ton programme est une boucle qui se répète non ? Si c'est le cas, ca devrait mercher). Mais cependant si tu lui dis ça sous entendrais qu 'il lui faut faire un switch et nettoyer le tout, or ca peut pas le faire.

Faudrait introduire la notion de si ton pokémon est placé et qu'il a spin ou defog (on va se limiter à ça), ben il se jette sur ça mais je pense pas que cela soit malheuresement codable... Pour le Taunt ce serait un peu la même... je m'y connais pas assez mais bon on sait jamais.

Pour le soin ben si il connait les stats adverses parce qu'il reconnait le pokémon, il faudrait calculer la différence entre ses PVs et le double des dommage qu'il va potentiellment se prendre en négligeant les coups critiques. Puisque si il se prend un coup et conserve sa vie pour un deuxième il va risposter, si il en a pas assez faudra qu'il anticipe son soin. Et l'ajout de leftover et du poison compliquera la donne aussi.

Bon je dis tout ça je sais pas si j'aide mais au moins j'aurais essayer. Le reste faudra que je passe max de temps dessus et bon voilà, en plus je risque de me tromper. J'espère pouvoir aider

_____________________________________________

Rédacteur News
azortech 
Rédacteur News 

Messages : 1093
Age : 17

MessageSujet: Re: Créer une IA OU. - Mar 17 Fév - 22:39

en fait le gros problème c'est le dosage, des fois laisser une entry hazard un ou deux tours de plus vaut mieux, des fois pas, c'est vraiment compliqué :/
mais l'idée est bonne, pis je pense que c'est forcément une boucle qui recommence pour chaque tour

_____________________________________________



le sens de la vie:
http://www.matmartinez.net/nsfw/
Membre Diamant
Artemis 
Membre Diamant 

Messages : 717
Age : 20

MessageSujet: Re: Créer une IA OU. - Mer 18 Fév - 0:22

azortech je comprends vraiment rien à ce que tu dis.


---

C'est vraiment dur comme problème... Déjà est ce que le bot peut reconnaitre un pokémon de son équipe ou celui qui l'a en face ? Ouais, quand même. Parce si c'est ainsi je pense qu'il n'y a pas de soucis avec le choix du lead. Pour l'instant, je compte juste lead systématiquement sur le premier pokémon de mon équipe Si le bot connait les set, les stats... Je vois pas trop où est le problème puisse que si tu as les chiffres seul le calcul reste à faire, ça après ou je m'aventure dans un milieu que je connais pas ou c'est simple non ? J'ai pas compris. A propos de l'anticipation ?

Ensuite pour les entry hasards, je suis pas sur de ce que j'avance, parce que je bricole un peu en info, mais tu pourrais utiliser une variable qui vaut zero, puis genre qui passe à un quand l'adversaire en pose un. Une fois dans une boucle if, y'a plus qu'a tester si elle vaut 1 ou 0 si il faut nettoyer le terrain (je ne suis pas sur mais je pense que ton programme est une boucle qui se répète non ? Si c'est le cas, ca devrait mercher). Mais cependant si tu lui dis ça sous entendrais qu 'il lui faut faire un switch et nettoyer le tout, or ca peut pas le faire. Enlever les hazards parfois ça a pas d'intérêt ? C'est une question de pertinence, que ce soit poser ou enlever les hazards. Sinon, non, c'est pas une boucle, c'est de la réponse sur évènement

Faudrait introduire la notion de si ton pokémon est placé et qu'il a spin ou defog (on va se limiter à ça), ben il se jette sur ça mais je pense pas que cela soit malheuresement codable... Pour le Taunt ce serait un peu la même... je m'y connais pas assez mais bon on sait jamais.

Pour le soin ben si il connait les stats adverses parce qu'il reconnait le pokémon, il faudrait calculer la différence entre ses PVs et le double des dommage qu'il va potentiellment se prendre en négligeant les coups critiques. Puisque si il se prend un coup et conserve sa vie pour un deuxième il va risposter, si il en a pas assez faudra qu'il anticipe son soin. Et l'ajout de leftover et du poison compliquera la donne aussi. gné

Bon je dis tout ça je sais pas si j'aide mais au moins j'aurais essayer. Le reste faudra que je passe max de temps dessus et bon voilà, en plus je risque de me tromper. J'espère pouvoir aider
Rédacteur News
azortech 
Rédacteur News 

Messages : 1093
Age : 17

MessageSujet: Re: Créer une IA OU. - Mer 18 Fév - 0:25

bah je dis juste que des fois il vaut mieux laisser les entry hazard genre le temps de buter le poseur, parce que si il pose tu switch, il attaque, tu defog, il place, tu defog, ca sert a rien

_____________________________________________



le sens de la vie:
http://www.matmartinez.net/nsfw/
Membre Blanc
supercarotte 
Membre Blanc 

Messages : 1660
Age : 23

MessageSujet: Re: Créer une IA OU. - Mer 18 Fév - 1:15

Pourquoi pas faire, à partir du moment où des EHs sont posés, faire 2 fois le calcul d'outcome, avec ou sans les EH, pour voir si les enlever permettrait un kill. (En intégrant le fait que switcher sur un pokémon poison enlève les pics toxics).

Après il y a des cas où on peut se permettre de placer un defog pour nettoyer le terrain en prévision, mais déjà si on peut intégrer le premier cas ce sera pas trop mal. Je pense également qu'il faudrait interdire au bot de tenter de defog lorsque le poseur d'EH est en jeu (pour éviter de faire un cercle vicieux comme l'a dit Azortech).

======

Pour les moves de boosts, c'est un peu plus compliqué. Pour moi, le mieux serait de faire des boucles d'outcome à +1,+2,... pour voir à combien de boosts on ne peut plus le contrer. L'adversaire ne devra jamais atteindre ce niveau de boost.
Si on peut se le permettre (de laisser un tour de boost gratuit à l'adversaire), il vaut mieux switcher pendant un tour de boost (car il est plus compliqué de placer un check sur une attaque boostée); sinon, on sacrifie notre pokémon actuel (ou le pokémon avec le score le plus bas) pour envoyer un RK (sachant qu'on peut parfois placer un pokémon grâce à un volt switch/U-turn plus lent).

===========

(Au fait, je sais pas si t'as remarqué mais je suis plus partisant de la vision "à long terme")

Sinon, j'aimerais bien savoir où tu en es dans l'avancée du bot, parce que j'ai l'impression que tu as beaucoup de choses à gérer en même temps ^^

_____________________________________________

CA : 0748 - 6081 - 8359 (pseudo: Supcarotte)

Safari (X) :


Retrouvez tous mes guides de triche ici
Membre Diamant
Artemis 
Membre Diamant 

Messages : 717
Age : 20

MessageSujet: Re: Créer une IA OU. - Mer 18 Fév - 1:55

supercarotte a écrit:
Pourquoi pas faire, à partir du moment où des EHs sont posés, faire 2 fois le calcul d'outcome, avec ou sans les EH, pour voir si les enlever permettrait un kill. (En intégrant le fait que switcher sur un pokémon poison enlève les pics toxics).

C'est ce que le modèle du situation rating fait.
Si mettre des rocs ajouterait un kill, dans la modélisation avec rocks, l'outcome d'un des duels va être grandement changé, la note associé à l'un des pokémons va s'effondrer à cause de ça, et le situation rating subira donc une violente chute, témoignant de la gravité de la mise en jeu d'hazard.

EDIT : Dans l'avancée du bot, tout le contexte est posé, reste à définir l'IA.
C.a.d que le bot connait tous les pokémons, connait les sets classiques des pokémons les plus courants de l'OU, et sera donc apte à prendre en compte les informations apprises durant le combat.
En bref, le bot reçoit les messages, les comprends, apprends (fin ça c'est pas fait mais je sais comment faire donc c'est tout comme). Reste une question : comment réagit-il ? Tout est fait, (ça prend environ 12.000 de bases de données et >500 lignes de code), sinon la partie "comment je choisis mon move".
Bon, ça a l'air random dit comme ça car c'est le coeur du problème, mais j'y suis arrivé en ayant une idée globale de ce que je voulais faire (le deuxième choix), et de surcroit ... c'est pas un challenge informatique ça, c'est une question de choix d'algo, humain donc.

A part ça, je suis plutôt convaincu que le modèle par situation rating est meilleur. Il est "naturellement intelligent", dans le sens où il voit plus loin que le bout de son nez. Typiquement, la gestion de la "gravité" de la mise en jeu des hazards est très bien traitée.
Membre Platine
Johninja 
Membre Platine 

Messages : 1458
Age : 22

MessageSujet: Re: Créer une IA OU. - Mer 18 Fév - 2:19

Je tenais juste à signaler qu'Anti-brume n'est pas la seule attaque virant les entry hazard, Tour rapide est également à prendre en compte (si ce n'est pas déjà le cas).
Tout comme le talent reflet magik qui renvoi carrément les effets des entry hazard sur nous.

Rédacteur News
azortech 
Rédacteur News 

Messages : 1093
Age : 17

MessageSujet: Re: Créer une IA OU. - Mer 18 Fév - 2:23

oui je disais defog en exemple ^^ je sais qu'il y en a d'autres tout de même

_____________________________________________



le sens de la vie:
http://www.matmartinez.net/nsfw/
Membre Blanc
supercarotte 
Membre Blanc 

Messages : 1660
Age : 23

MessageSujet: Re: Créer une IA OU. - Mer 18 Fév - 2:45

Defog/Tour rapide fonctionnent grosso modo pareil, ça dépend juste de ce qu'on a dans l'équipe. Par contre, je pense pas qu'il va être très compliqué de faire en sorte que l'IA switch sur un pokémon avec reflet magik au moment opportun (c'est quand même pas mal du feeling)

_____________________________________________

CA : 0748 - 6081 - 8359 (pseudo: Supcarotte)

Safari (X) :


Retrouvez tous mes guides de triche ici
Membre Platine
Naï-ryu 
Membre Platine 

Messages : 1009
Age : 19

MessageSujet: Re: Créer une IA OU. - Mer 18 Fév - 18:37

Il est vrai que j'ai pas était très clair, navré. Tu peux me faire un bref résumé de comment le programme fonctionne histoire d'être sur de ce qui est possible. J'ai deja codé un jeu en tour par tour par le passé, je voudrais m'assurer que ça marche sur un mécanisme plus ou moins semblable.

Et juste pour savoir tu codes en quel language ?

_____________________________________________

Créer une IA OU.

Voir le sujet précédent Voir le sujet suivant Revenir en haut
Page 1 sur 1

 :: Pokéworld :: Discussions Pokémon-