[Lyon-hackerspace] Lot Lyon-hackerspace, Vol 22, Parution 24

Yves Quemener quemener.yves at free.fr
Jeu 18 Oct 00:39:41 CEST 2012


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>>
> To: 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>>
> 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>
>>>>
>>>> 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>
>>>> 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
> 



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