[Lyon-hackerspace] Un petit projet de plus

Chomienne Anthony anthony.chomienne at yahoo.fr
Mar 9 Oct 10:29:16 CEST 2012


De : Yves Quemener <quemener.yves at free.fr>

À : lyon-hackerspace at lists.hackerspaces.org 
Envoyé le : Mardi 9 octobre 2012 4h56
Objet : Re: [Lyon-hackerspace] Un petit projet de plus
 
IA contre IA c'est aussi l'aspect qui m'intéresse le plus. Si des personnes
sont motivées, d'ici deux semaines je peux tenter de coder une petite arène
pour faire s'affronter des bots de différents auteurs.

Le dilemme du prisonnier est un bon départ : simple à coder, quelques
stratégies simples mais pas complètement triviales sont efficaces, ça
permettrait de mettre tout le code en place : les affrontements, les
tableaux de score et les graphes de comparaison.

Si tu as un lien pour expliquer ce jeu, je suis preneur.

Ensuite, coder un petit jeu plus complexe, ça peut devenir super intéressant.

J'ai une, non deux, non trois questions :
- Qui est intéressé ? Si je le fais y aura que moi à proposer des bots ou
est ce que ça vaut le coup ? Note aux débutants : ce genre de challenge est
d'autant plus intéressant qu'il n'y a pas forcément besoin d'être un super
programmeur pour avoir des résultats honorables.

Moi je le suis même si mon temps libre en ce moment frole les 0 nanosecondes. Si vous connaissez des méthodes de clonage je suis preneur :)

- Des contraintes de langage ? On a parlé de python là, le fait qu'on ait
fait des cours au LOL rendrait ce choix logique et le codage de l'arène
plus rapide, mais si certains préfèrent autre chose, je peux aussi prendre
le temps de faire une interface stdin/stdout propre qui permette d'utiliser
n'importe quel langage capable de s’exécuter en mode non graphique sous un
linux.

Le mieux serait de ne pas contraindre à un langage et effectivement faire une interface. Je sais pas si c'est possible en python mais utiliser une shared memory pourrait être un peu mieux non? pour les dialogues entre IA plutôt que le stdin/stdout? stdin et out serait plus utilisé pour choisir qui on affronte, les stats de chaque IA, le temps de prise de décision (temps moyen d'éxécution du ou des algos de décision),... Le jeu ne doit avoir rien de graphique. 

- Est ce que quelqu'un a une machine où héberger ça ? Je n'ai qu'un seul
serveur, avec des données assez sensibles, je n'ai pas envie de faire
tourner du code arbitraire dessus. Est ce que quelqu'un serait motivé pour
ouvrir un port au LOL soit à ma raspberry pi, soit à ma dreamplug (si sayat
l'utilise pas) ou à un autre ordi qui resterait allumé et me filer un accès
SSH dessus ? Je m'occupe du reste.

Faut que la machine utilisée aie des outils de compilation et les machines virtuels des langages interprété: java, ruby, python, autre?

Iv

On 07/10/12 00:06, Ceelvain - wrote:
> Je ne suis pas sûr de comprendre si tu veux faire des combats IA
> contre IA ou IA contre humain.
> 
> Pour les combats contre humains, iv m'a ôté les beaux de la mouche :
> Une chaîne de Markov d'ordre m (ou plus généralement un processus
> stochastique à temps et espace discret) devrait donner de bons
> résultats.
> 
> Pour les combats IA contre IA, ça peut être intéressant de coder un
> système où les gens peuvent soumettre leur code qui sera mesuré aux n
> meilleurs codes actuellement recensés, du moins bon au meilleur. Et le
> code challenger viendra s'intercaller dans la liste.
> Il pourrait aussi être intéressant de tous les faire combattre deux
> par deux et établir le graphe de relations de supériorité des algos.
> 
> 
> Ceelvain
> 
> Le 4 octobre 2012 17:53, jo <crazyiop at gmail.com> a écrit :
>> je trouve l'idée de la compétition IA bien sympas aussi !
>>
>> ça me fait énormément pensé à l'expérience du dilemme du prisonnier répété.
>> http://en.wikipedia.org/wiki/Prisoner%27s_dilemma#Strategy_for_the_iterated_prisoners.27_dilemma
>>
>> comme l'issu d'une seule rencontre est évidente, un chercheur avait
>> organiser ce genre de compétition ou il voulait faire s'affronter différents
>> programme en demandant à tout le domaine scientifique de lui proposer des
>> algos de décision. Elle sont du genre :
>> - coopérer mais essayer de blouser l'autre de temps en temps,
>> - coopérer mais être super rancunier
>> - blouser l'adversaire tant qu'il ne réagit pas
>> - etc
>> certains tenait en quelques lignes de code, d'autre en centaines...
>>
>> ensuite il à fait s'affronter toutes les stratégies les unes contre les
>> autres pour savoir qu'elle était la stratégie optimal...
>>
>> Je vous spoil pas le résultat si vous voulez en apprendre plus aller voir le
>> lien plus haut (au passage l'expérience et la théorie des jeux d'un point de
>> vue évolutionnaire est vraiment bien expliqué dans le livre "le gène
>> égoïste" de Richard Dawkins)
>>
>> Je sais pas si ça peut donner des idées... La différence principale est que
>> ce jeux n'a pas d'aléatoire. Toute décision se fait uniquement sur la
>> perception de la stratégie de l'adversaire par une mémoire des coups passé
>> précédent.
>>
>> Jon
>> (ps je m'installe à lyon dans 1 à 2 semaines, mais je suit la mailing depuis
>> un moment, si vous me remettez pas, c'est normal ;)
>>
>> On 04/10/2012 12:00, lyon-hackerspace-request at lists.hackerspaces.org wrote:
>>>
>>> --------------------
>>>
>>>
>>> Une fois le code un peu mis en place, on peut très bien imaginer un jeu
>>> entre nous.
>>>
>>> Genre, une personne propose un code de joueur.
>>> Les autres proposent un code d'adversaire.
>>>
>>> Celui qui gagne le plus remporte la partie et propose son code de joueur
>>> au tour suivant.
>>>
>>> Re-bonne soirée.
>>> Thom
>>>
>>>
>>
>> _______________________________________________
>> Lyon-hackerspace mailing list
>> Lyon-hackerspace at lists.hackerspaces.org
>> http://lists.hackerspaces.org/mailman/listinfo/lyon-hackerspace
> _______________________________________________
> Lyon-hackerspace mailing list
> Lyon-hackerspace at lists.hackerspaces.org
> http://lists.hackerspaces.org/mailman/listinfo/lyon-hackerspace
> 

_______________________________________________
Lyon-hackerspace mailing list
Lyon-hackerspace at lists.hackerspaces.org
http://lists.hackerspaces.org/mailman/listinfo/lyon-hackerspace
-------------- section suivante --------------
Une pièce jointe HTML a été nettoyée...
URL: <http://lists.hackerspaces.org/pipermail/lyon-hackerspace/attachments/20121009/da1c6cd9/attachment.html>


Plus d'informations sur la liste de diffusion Lyon-hackerspace