[Lyon-hackerspace] Arène (version de python)

Yves Quemener quemener.yves at free.fr
Lun 22 Oct 23:45:58 CEST 2012


Normalement j'ai rajouté un test dans le fichier 'start' des bots, tu n'as
qu'à le recopier.

On 23/10/12 10:30, Thomas wrote:
> Plop,
> 
> Désolé, je n'ai pas été trop là cette semaine. Je me suis motivé pour finir
> mon cv et ma lettre de motivation... Si d'ailleurs certains sont tenté par
> le modèle basé sur moderne cv en latex, je peux le faire tourner.
> 
> J'essayerai de rajouter des bots un peu fun. J'en ai deux trois sous le coude.
> 
> J'avais eu le même souci pour python 2 / 3. J'essayerai de mettre un peu le
> nez dedans pour voir si on peut rendre compatible le tout.
> 
> En tout cas, merci à tous de faire vivre cette arène, ça fat plaiz.
> 
> Bonne soirée.
> 
> Thomas
> 
> 
> On 18/10/2012 08:56, a d wrote:
>> j'ai deux installes avec python3 dont une avec le raccourcis python2 et
>> l'autre non!
>> j'ai aussi une installe sans python3 qui n'a pas de raccourcis python2.
>> Je ne pense pas que ce soit une bonne chose d'utiliser ce raccourcis.
>> Il vaut mieux gérer cette problématique dans le code en détectant avec
>> quelle version de python on tourne et s'adapter en conséquence.
>>
>> Le 18 octobre 2012 10:45, <quemener.yves at free.fr
>> <mailto:quemener.yves at free.fr>> a écrit :
>>
>>     J'ai validé les modif pour pointer vers python2 car même dans une
>>     install sans la version 3, ce raccourci existe, j'imagine pour faire
>>     la différence entre le 1 et le 2.
>>
>>     ----- Mail original -----
>>     > De: "a d" <daouzli at gmail.com <mailto:daouzli at gmail.com>>
>>     > À: lyon-hackerspace at lists.hackerspaces.org
>>     <mailto:lyon-hackerspace at lists.hackerspaces.org>
>>     > Envoyé: Jeudi 18 Octobre 2012 19:32:32
>>     > Objet: Re: [Lyon-hackerspace] Lot Lyon-hackerspace, Vol 22, Parution 24
>>     >
>>     >
>>     > Je pense qu'on devrait peut-être coder l'appli compatible python2 et
>>     > 3 (ce qui peut être un peu difficile mais pas impossible).
>>     > Ainsi peu importe la version de python installée.
>>     >
>>     >
>>     > Le 18 octobre 2012 10:10, < yohann at rebattu.fr
>>     <mailto:yohann at rebattu.fr> > a écrit :
>>     >
>>     >
>>     > pour python vs python2 c'est juste que ta config doit utiliser
>>     > python3 par
>>     > défaut.
>>     >
>>     > python2 devrait par contre fonctionner sur toute les machines
>>     >
>>     >
>>     >
>>     > > J'aime bien l'idée du jeu économique même si je ne vois pas
>>     > > vraiment ce
>>     > > que tu veux le faire.
>>     > >
>>     > > Mardi, avec Dadel, on a essayé de réfléchir à comment organiser
>>     > > l'arène
>>     > > pour qu'elle puisse accueillir de nouveaux jeux et bots
>>     > > "facilement" et
>>     > > à un protocole assez souple pour les faire communiquer. On va
>>     > > essayer de
>>     > > coder ça dans pas trop longtemps! D'ailleurs si certains sont
>>     > > intéressés
>>     > > pour participer à la conception de l'arène ils sont les bienvenus!
>>     > > Jpense qu'il serai aussi intéressant de faire des exemples de bots
>>     > > dans
>>     > > différents langages pour que n'importe qui ai des exemples simples
>>     > > pour
>>     > > commencer à travailler sur son bot.
>>     > >
>>     > > Je sais pas si des gens on essayé de télécharger l'arène actuelle
>>     > > (ma
>>     > > version)? Je pense que certain vont avoir un problème pour lancer
>>     > > les
>>     > > bots. C'est du au fait que dans les fichiers "start", sur mon
>>     > > ordinateur
>>     > > je suis obligé de mettre "python2" alors que sur la majorité des
>>     > > autres
>>     > > ordinateurs se sera juste "python".
>>     > > Est-ce que quelqu'un a une idée pour éliminer ce problème?
>>     > >
>>     > > On Thu, 18 Oct 2012 09:39:41 +1100, Yves Quemener wrote:
>>     > >> C'est vrai, j'aurais pas dû parler de stratégie optimale. Ce n'est
>>     > >> pas
>>     > >> optimal dans le sens algorithmique du terme. La stratégie optimale
>>     > >> contre
>>     > >> 100% des adversaires en duel c'est "toujours trahir". À long
>>     > >> terme,
>>     > >> ça
>>     > >> dépend de l'adversaire et "tit-for-that" est une stratégie duale
>>     > >> qui
>>     > >> peut
>>     > >> s'adresser à des méchants et à des gentils. Elle perd dans une
>>     > >> population
>>     > >> entièrement formée de "toujours trahir", elle est moins bonne
>>     > >> qu'une
>>     > >> stratégie trahissant occasionnellement dans une population de
>>     > >> gentils.
>>     > >> D'ailleurs quand on connait le nombre de manches, trahir le
>>     > >> tit-for-that
>>     > >> dans la dernière manche est une stratégie qui le bat constamment.
>>     > >>
>>     > >> Donc, le projet est toujours ouvert pour ceux qui veulent faire
>>     > >> mieux. Je
>>     > >> vais essayer aujourd'hui de rétablir les résultats en tableaux
>>     > >> (j'ai
>>     > >> intégré les modifs de Benjamin, qui permettent d'avoir un petit
>>     > >> serveur web
>>     > >> pour regarder les résultats mais aussi lancer les match)
>>     > >>
>>     > >> Est ce que ça intéresse aussi des gens le jeu économique que j'ai
>>     > >> proposé ?
>>     > >>
>>     > >> On 18/10/12 00:34, crazyiop wrote:
>>     > >>> Juste pour pinnailer, j'aimerais corriger cette fausse-croyance
>>     > >>> qui
>>     > >>> s'est
>>     > >>> imposé : la stratégie considérer comme gagnante "donnant-donnant"
>>     > >>> n'est
>>     > >>> qu'une stratégie optimal dans le cas des test qui avait été fait.
>>     > >>>
>>     > >>> En règle générale : la stratégie gagnante dépend de l'ensemble de
>>     > >>> ces
>>     > >>> adversaires ! On ne peut absolument pas définir une stratégie
>>     > >>> optimale de
>>     > >>> manière absolue.
>>     > >>>
>>     > >>> Une grosse partie du résultat dépend du nombre de stratégies
>>     > >>> "gentille"
>>     > >>> (qui vont chercher a plutôt coopérer) et du nombre de "méchante"
>>     > >>> (qui vont
>>     > >>> plus chercher à trahir quand l'autre coopère). donnant-donnant à
>>     > >>> été
>>     > >>> optimal, mais seulement parce que la majorité des stratégies
>>     > >>> proposée était
>>     > >>> gentille.
>>     > >>>
>>     > >>> Lors de la seconde édition de cette étude, tout le monde s'est
>>     > >>> dis
>>     > >>> que tout
>>     > >>> le monde va faire des stratégie méchante qui exploiteront le
>>     > >>> donnant-donnant (que beaucoup vont faire en variante, vu le
>>     > >>> résultat
>>     > >>> de la
>>     > >>> première édition), et donc en faire une gentille qui exploiterais
>>     > >>> les
>>     > >>> méchantes serais gagnante.
>>     > >>> (j'arrive pas à le dire en plus simple donc en schématisant ==>)
>>     > >>> En
>>     > >>> gros
>>     > >>> tout le monde à essayer de raisonner à deux niveaux, pensant que
>>     > >>> tout le
>>     > >>> monde raisonnerais à un niveau :P du coup de nouveaux majorité de
>>     > >>> gentille,
>>     > >>> et donnant-donnant de nouveaux gagnante.
>>     > >>>
>>     > >>> Dans au moins une des deux test, "donnant pour deux donnant"
>>     > >>> aurait
>>     > >>> battu
>>     > >>> donnant-donnant. mais personne ne l'avait proposé. il faut noter
>>     > >>> que
>>     > >>> cette
>>     > >>> stratégie est encore plus permissive (elle réplique qu'au bout de
>>     > >>> 2
>>     > >>> trahison succesive). elle ne peut également être optimal que dans
>>     > >>> un
>>     > >>> pool
>>     > >>> majoritairement gentil. par exemple, "trahir une fois sur 2"
>>     > >>> deviendrait
>>     > >>> alors super rentable face à "donnant pour deux donnant"...
>>     > >>>
>>     > >>> surtout avec un nombre de boot limité, je pense qu'il est
>>     > >>> possible
>>     > >>> de
>>     > >>> rajouter plusieurs fois un nouveau boot qui deviendront chacun
>>     > >>> leurs
>>     > >>> tour
>>     > >>> un nouvel optimal. (pour comparaison, il me semble que dans
>>     > >>> l'étude
>>     > >>> initiale, il y'avait autours de 70-80 stratégies)
>>     > >>>
>>     > >>> Je ne connais par contre pas du tout si le test à été effectuer
>>     > >>> avec
>>     > >>> des
>>     > >>> majorité de stratégies méchantes...
>>     > >>>
>>     > >>> jon
>>     > >>>
>>     > >>> Message: 5
>>     > >>> Date: Mon, 15 Oct 2012 19:32:54 +1100
>>     > >>> From: Yves Quemener < quemener.yves at free.fr
>>     <mailto:quemener.yves at free.fr>
>>     > >>> <mailto: quemener.yves at free.fr <mailto:quemener.yves at free.fr> >>
>>     > >>> To: lyon-hackerspace at lists.hackerspaces.org
>>     <mailto:lyon-hackerspace at lists.hackerspaces.org>
>>     > >>> <mailto: lyon-hackerspace at lists.hackerspaces.org
>>     <mailto:lyon-hackerspace at lists.hackerspaces.org> >
>>     > >>> Subject: Re: [Lyon-hackerspace] Vive l'arène!
>>     > >>> Message-ID: < 507BCA36.8080003 at free.fr
>>     <mailto:507BCA36.8080003 at free.fr>
>>     > >>> <mailto: 507BCA36.8080003 at free.fr
>>     <mailto:507BCA36.8080003 at free.fr> >>
>>     > >>> Content-Type: text/plain; charset=ISO-8859-1
>>     > >>>
>>     > >>> Super!
>>     > >>>
>>     > >>> Je merge ça demain quand j'ai 5 minutes.
>>     > >>> Je suis aussi plus pour la classe Jeu.
>>     > >>> En effet, AlwaysT (Toujours trahir) est la stratégie optimum dans
>>     > >>> un
>>     > >>> duel,
>>     > >>> mais le but est d'obtenir un score moyen plus important que lui
>>     > >>> sur
>>     > >>> l'ensemble des bots. Deux AlwaysT qui se battent sont plutôt nuls
>>     > >>> in
>>     > >>> fine.
>>     > >>>
>>     > >>> Bon, ok, la stratégie optimale en général est super simple aussi
>>     > >>> et
>>     > >>> à peine
>>     > >>> plus compliquée, je pense que la moitié des gens dans cette
>>     > >>> discussion la
>>     > >>> connaît, c'est le tit-for-that, je laisse googler ceux que ça
>>     > >>> intéresse,
>>     > >>> c'est super simple.
>>     > >>>
>>     > >>> Que diriez vous de coder un autre jeu, plus intéressant, alors ?
>>     > >>> Je
>>     > >>> pensais
>>     > >>> faire un petit jeu de simulation économique où des acteurs
>>     > >>> acheteurs
>>     > >>> et
>>     > >>> vendeurs tenteraient de maximiser un profit. Là, il y a vraiment
>>     > >>> une
>>     > >>> difficulté car il n'y a pas de stratégie rationelle simple à
>>     > >>> court
>>     > >>> terme
>>     > >>> comme le "toujours trahir" du jeu du prisonnier.
>>     > >>>
>>     > >>> On 15/10/12 19:15, Benjamin Betrand wrote:
>>     > >>>> Bonjour,
>>     > >>>>
>>     > >>>> Je me suis permis de reprendre le code de l'arène et d'y
>>     > >>>> apporter
>>     > >>>> ma
>>     > >>>> contribution.Je ne suis pas sur Github mais vous pouvez
>>     > >>>> retrouver
>>     > >>>> le code à
>>     > >>>> cette adresse (que vous pouvez cloner de la même façon: git
>>     > >>>> clone
>>     > >>>> http://git.poneyworld.net/LOLIA-Arena.git )
>>     > >>>> http://git.poneyworld.net/LOLIA-Arena.git
>>     > >>>>
>>     > >>>> Je n'ai rien modifié dans la façon de communiquer avec les bots,
>>     > >>>> ni
>>     > >>>> dans la
>>     > >>>> manière de les gérer. J'ai juste changé l'interface pour
>>     > >>>> utiliser
>>     > >>>> bottle
>>     > >>>> (framework web utilisant python), pour pouvoir lancer des matchs
>>     > >>>> plus
>>     > >>>> facilement.
>>     > >>>> Pour réduire la dépendence au jeu du prisonnier, j'ai pensé à
>>     > >>>> deux
>>     > >>>> solutions (mais rien codé pour le moment). La première est de
>>     > >>>> faire
>>     > >>>> un peu
>>     > >>>> de programmation fonctionnelle et de coder le jeu comme une
>>     > >>>> fonction. Ou
>>     > >>>> alors faire un méta-classe Jeu et de créer les jeux à partir de
>>     > >>>> cette
>>     > >>>> classe. Je prefère la deuxième solution elle permettra d'être
>>     > >>>> plus
>>     > >>>> souple
>>     > >>>> en particulier sur le nombre de joueurs admis, les réponses
>>     > >>>> accèptées, des
>>     > >>>> stats sur le match...
>>     > >>>>
>>     > >>>> Par contre ya un truc que je pige pas! Dans la façon actuelle de
>>     > >>>> désigner
>>     > >>>> le gagnant ou le perdant, ya aucune chance de battre AlwaysT vu
>>     > >>>> qu'il
>>     > >>>> gagnera au moins autant que son adrevsaire.
>>     > >>>>
>>     > >>>> Benjamin
>>     > >>>>
>>     > >>>> On Thu, 11 Oct 2012 17:31:18 +0000, Thomas wrote:
>>     > >>>>> Nickel,
>>     > >>>>>
>>     > >>>>> Un grand merci pour cette première arène.
>>     > >>>>>
>>     > >>>>> Je me suis permis d'ajouter le projet sur le wiki :
>>     > >>>>>
>>     > >>>>> http://www.lyonopenlab.org//lolai_-_arena/
>>     > >>>>>
>>     > >>>>> Je n'ai plus de temps pour ce soir. Mais je complèterais avec
>>     > >>>>> le
>>     > >>>>> temps.
>>     > >>>>>
>>     > >>>>> Thom
>>     > >>>>>
>>     > >>>>> On 11/10/2012 08:49, Yves Quemener wrote:
>>     > >>>>>> Hello,
>>     > >>>>>>
>>     > >>>>>> j'ai fait une première version de l'arène, et trois bots idiot
>>     > >>>>>> :
>>     > >>>>>> un qui
>>     > >>>>>> coopère toujours, un qui trahit toujours et un qui choisit au
>>     > >>>>>> hasard. Vous
>>     > >>>>>> pouvez chopper tout ça là :
>>     > >>>>>> https://github.com/yquemener/LOLAI-Arena
>>     > >>>>>> Et y a des chances que ce soit rapidement sur le git du LOL
>>     > >>>>>> aussi.
>>     > >>>>>>
>>     > >>>>>> pour ceux qui ne connaissent pas git, il suffit de faire
>>     > >>>>>>
>>     > >>>>>> git clone git:// github.com/yquemener/LOLAI-Arena.git
>>     <http://github.com/yquemener/LOLAI-Arena.git>
>>     > >>> < http://github.com/yquemener/LOLAI-Arena.git >
>>     > >>>>>>
>>     > >>>>>> Le code est pas super beau, il faut que je rende le jeu un peu
>>     > >>>>>> moins
>>     > >>>>>> intriqué dans le code, afin qu'on puisse en choisir d'autres,
>>     > >>>>>> mais ça
>>     > >>>>>> permet de commencer à jouer.
>>     > >>>>>>
>>     > >>>>>> le script arena.py sort un fichier results.html qui vous donne
>>     > >>>>>> le
>>     > >>>>>> tableau
>>     > >>>>>> des scores.
>>     > >>>>>>
>>     > >>>>>> Les bots sont dans bots/ lisez doc/protocol (c'est très court)
>>     > >>>>>> pour en
>>     > >>>>>> créer un nouveau.
>>     > >>>>>>
>>     > >>>>>> Iv
>>     > >>>>>> _______________________________________________
>>     > >>>>>> Lyon-hackerspace mailing list
>>     > >>>>>> Lyon-hackerspace at lists.hackerspaces.org
>>     <mailto:Lyon-hackerspace at lists.hackerspaces.org>
>>     > >>> <mailto: Lyon-hackerspace at lists.hackerspaces.org
>>     <mailto:Lyon-hackerspace at lists.hackerspaces.org> >
>>     > >>>>>> http://lists.hackerspaces.org/mailman/listinfo/lyon-hackerspace
>>     > >>>>>
>>     > >>>>> _______________________________________________
>>     > >>>>> Lyon-hackerspace mailing list
>>     > >>>>> Lyon-hackerspace at lists.hackerspaces.org
>>     <mailto:Lyon-hackerspace at lists.hackerspaces.org>
>>     > >>> <mailto: Lyon-hackerspace at lists.hackerspaces.org
>>     <mailto:Lyon-hackerspace at lists.hackerspaces.org> >
>>     > >>>>> http://lists.hackerspaces.org/mailman/listinfo/lyon-hackerspace
>>     > >>>>
>>     > >>>> _______________________________________________
>>     > >>>> Lyon-hackerspace mailing list
>>     > >>>> Lyon-hackerspace at lists.hackerspaces.org
>>     <mailto:Lyon-hackerspace at lists.hackerspaces.org>
>>     > >>> <mailto: Lyon-hackerspace at lists.hackerspaces.org
>>     <mailto:Lyon-hackerspace at lists.hackerspaces.org> >
>>     > >>>> http://lists.hackerspaces.org/mailman/listinfo/lyon-hackerspace
>>     > >>>>
>>     > >>>
>>     > >>>
>>     > >>> _______________________________________________
>>     > >>> Lyon-hackerspace mailing list
>>     > >>> Lyon-hackerspace at lists.hackerspaces.org
>>     <mailto:Lyon-hackerspace at lists.hackerspaces.org>
>>     > >>> http://lists.hackerspaces.org/mailman/listinfo/lyon-hackerspace
>>     > >>>
>>     > >>
>>     > >> _______________________________________________
>>     > >> Lyon-hackerspace mailing list
>>     > >> Lyon-hackerspace at lists.hackerspaces.org
>>     <mailto:Lyon-hackerspace at lists.hackerspaces.org>
>>     > >> http://lists.hackerspaces.org/mailman/listinfo/lyon-hackerspace
>>     > >
>>     > > _______________________________________________
>>     > > Lyon-hackerspace mailing list
>>     > > Lyon-hackerspace at lists.hackerspaces.org
>>     <mailto:Lyon-hackerspace at lists.hackerspaces.org>
>>     > > http://lists.hackerspaces.org/mailman/listinfo/lyon-hackerspace
>>     > >
>>     >
>>     >
>>     > _______________________________________________
>>     > Lyon-hackerspace mailing list
>>     > Lyon-hackerspace at lists.hackerspaces.org
>>     <mailto:Lyon-hackerspace at lists.hackerspaces.org>
>>     > http://lists.hackerspaces.org/mailman/listinfo/lyon-hackerspace
>>     >
>>     >
>>     > _______________________________________________
>>     > Lyon-hackerspace mailing list
>>     > Lyon-hackerspace at lists.hackerspaces.org
>>     <mailto:Lyon-hackerspace at lists.hackerspaces.org>
>>     > http://lists.hackerspaces.org/mailman/listinfo/lyon-hackerspace
>>     >
>>     _______________________________________________
>>     Lyon-hackerspace mailing list
>>     Lyon-hackerspace at lists.hackerspaces.org
>>     <mailto: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
> 



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