[Interview] Les meilleurs CodinGamers nous parlent de leur expérience des challenges d'IA

STAY CONNECTED, FOLLOW CODINGAME NOW


Vous êtes-vous déjà demandé ce que ça fait de concourir pendant 6 semaines consécutives sur une compétition de programmation d'Intelligence Artificielle et de terminer sur le podium ? Est-ce que vous-mêmes, la perspective d'un tel challenge vous refroidirait ? En réalité, ce n'est pas si complexe et si douloureux que ça en a l'air...
Sharcoux et Neumann, respectivement classés 1er et 3e sur Platinum Rift 2, partagent avec nous leur expérience sur PR2. Ils nous expliquent comment ils ont abordé le jeu, et pourquoi ils apprécient tout particulièrement les jeux multijoueurs en général. 


1) Vous avez participé au contest multijoueurs Platinum Rift 2 qui s'est déroulé sur 6 semaines et vous avez fini sur le podium: chapeau bas! Comment a été votre expérience du jeu au final ?

 

Sharcoux : Avec ce challenge, j'ai fait mon comeback sur CodinGame. J'avais participé il y a plusieurs mois et quand je suis revenu sur le site, j'ai eu le plaisir de découvrir la nouvelle plate-forme. L'IDE et l'interface étaient franchement améliorés, mais surtout, ce qui a tout changé, c'est que vous pouvez à présent voir comment votre code se comporte dans la fenêtre de gauche. C'est beaucoup plus fun de jouer comme ça que de manipuler des données brutes.

J'ai beaucoup apprécié PR2 parce que le challenge n'était pas limité dans le temps. Je pouvais améliorer mon IA quand j'avais un peu de temps. Je ne suis pas fan des contests solos parce qu'il est plus rare de pouvoir se libérer un jour précis pendant 4 heures d'affilée pour programmer toute une soirée. C'est aussi plus stressant aussi, je trouve.

Coder une IA était une expérience intéressante, c'était un peu comme jouer à Warcraft 3. Sauf que contrairement aux jeux vidéo, vous n'avez pas besoin d'être particulièrement doué, ou chanceux, ou de vous entraîner pendant 10 ans pour pouvoir gagner. Vous avez juste besoin d'être un peu créatif et d'avoir des idées que les autres n'ont pas !


Neumann : Je n'ai pas participé à tous les contests multijoueurs du site, mais à chaque fois, c'est un petit marathon. Les contests évolutifs comme PR2 permettent davantage de prendre son temps et les classements intermédiaires enlèvent un peu de pression; si une règle ne nous inspire pas, il est possible de moins s'investir dans le contest, et d'attendre la semaine suivante. De plus, la mise à contribution de la communauté entretient l’intérêt et permet de se sentir plus impliqué.



2) Selon vous, quelles compétences et quelles stratégies vous ont aidé à réussir sur Platinum Rift 2 ?

 

Sharcoux : Comme je l'ai dit, j'ai juste eu une idée qui a permis de faire la différence. Il s'agissait de contaminer chaque zone que l'ennemi aurait pu atteindre. Le système était assez basique, ça m'a seulement pris 4 lignes de code, mais ça m'a permis d'avoir une assez bonne idée d'où l'ennemi se trouvait et j'ai pu surveiller mes territoires quand je le voulais, et seulement quand c'était nécessaire. Le reste de mon code était sinon sensiblement le même que ceux des autres joueurs dans le Top 10, je pense.


Neumann : Pas de stratégie particulière sur ce contest, il s'agit toujours de comparer son IA avec celles des autres, et de faire du 'reverse-engineering' pour comprendre comment fonctionnent les IA les plus performantes, et tenter d'implémenter les bonnes idées ou les stratégies de 'contre'. Tout le monde fait à peu près ça j'ai l'impression dans le top 15 des contests, et certains joueurs ont bien compris l’intérêt qu'ils avaient à retirer leur IA de l'arène pour ne pas être copiés. C'est un souci fréquemment observé, mais malheureusement je ne vois pas comment l'éviter.




3) Par rapport aux contests solo, pourquoi appréciez-vous les jeux multijoueurs ?

 

Sharcoux : ​ J'imagine que c'est plus stimulant de battre des humains que des machines. En fait, je pense que la différence réside dans le fait qu'il n'y a pas "une solution unique" à trouver. Il y a des milliers de solutions possibles et vous devez trouver celle qui marche par rapport aux autres. 


Neumann : Les contests multi permettent de prendre son temps, et sont par conséquent nettement moins stressants que les contests solos. Je les trouve également bien plus stimulants et grisants ; les classements évoluent beaucoup au cours du jeu, et c'est toujours un plaisir de regarder son IA monter/descendre dans le classement, et voir de nouveaux arrivants écraser tout le monde, en imposant de nouveaux jalons de qualité pour tout le monde. A titre personnel, je préfère, et de très loin, les contests multi aux solos.



4) Pensez-vous que ces contests sont plus difficiles à appréhender à partir du moment où l'on parle d'"I.A." ?

 

Sharcoux : Je pense au contraire que les contests multijoueurs sont plus faciles parce que tous vos concurrents ne sont pas des experts, donc vous pouvez avoir une réelle progression dans le leaderboard. Ça vous donne un bon aperçu pour déterminer si ce que vous êtes en train de faire va dans le bon sens. Vous pouvez aussi choisir d'affronter l'IA de quelqu'un qui se trouve près de vous dans le classement pour avoir des matches adaptés à votre niveau.


Neumann : Je ne pense pas que les contests multijoueurs soient plus compliqués que les contests solos. Ils vous laissent simplement coder à votre propre rythme.




5) Pourriez-vous donner quelques conseils aux CodinGamers qui voudraient tenter l'aventure du multijoueurs pour la première fois ?

 

Sharcoux : Tout d'abord, je ne crois pas que les contests multi soient réservés aux professionnels. Pour ma part, je n'avais jamais codé d'IA auparavant, et je n'ai pas non plus de diplôme en Science Informatique. J'ai simplement gagné parce que je ne suis pas mauvais pour analyser les choses, et ça, tout le monde peut le faire. Donc, ne réfléchissez pas trop. Essayez, faites des "submits", et regardez si ça fonctionne. Étudiez vos erreurs. Pas à pas, cela vous mènera jusqu'au sommet !  


Neumann : Je leur conseillerai de ne pas hésiter et de ne pas avoir peur, ça ne coûte rien et voir son IA tourner dans l'arène est toujours un plaisir, même quand elle fait n'importe quoi :) Pour ce qui est de l'investissement en terme de temps, on peut citer l'exemple de Sharcoux, qui ne semble pas avoir passé un temps énorme sur son IA (si j'en crois les discussions que j'ai pu avoir avec lui sur IRC), et qui pourtant a mis tout le monde d'accord et est resté indétrôné pendant plus d'une semaine. C'est pas la norme, mais ça montre que c'est possible d'avoir un très bon classement sans y consacrer tout son temps libre!



Aucun commentaire

Enregistrer un commentaire