• Aucun résultat trouvé

Démarche de simulation

Section IV.2.Emergence de cycles avec la répartition spatiale

B. Démarche de simulation

Dans ce qui suit on considère un ensemble de réseaux de communautés en testant pour chacun si les évolutions sont ou non cycliques, certains évoluant selon l'évolution globale, les autres évoluant selon l'évolution locale.

On considère une topologie extrêmement simple de deux communautés liées pour lesquelles il est déjà possible de mettre en évidence un certain nombre de résultats.

On introduit 41 comportements pour le dilemme du prisonnier itéré. On rappelle (voir le chapitre I) que dans le dilemme du prisonnier itéré, deux stratégies interagissent sur plusieurs périodes en jouant C ou D à chaque période. La littérature sur le domaine a produit de nombreux comportements de natures différentes. Pour certains, ce sont des comportements "naïfs" tandis que d'autres ont été mis en avant comme de “bons” comportements [Beaufils 99][Axelrod 84]. Ces comportements sont regroupés en classes :

• La première classe de comportements : les comportements à mémoire 1. Ces comportements gardent en mémoire l'échange de la période précédente et jouent un coup uniquement basé sur ce dernier échange. Pour définir un tel comportement, il faut définir ce qu'il joue initialement, ce qu'il joue après un échange CC, ce qu'il joue après un échange CD, ce qu'il joue après un échange DC et ce qu'il joue après un échange DD. Soit par exemple le comportement noté cCDDC. Le c initial désigne le fait que le comportement joue c à la première période, il joue C si l'échange précédent était CC, joue D si l'échange précédent était CD, D si l'échange précédent était DC, C si l'échange précédent était C. Il y a donc 5 paramètres à spécifier pour définir un tel comportement, et de fait il existe donc 25

comportements de ce type. Dans ce qui suit on n'utilise pas l'ensemble des comportements de cette classe. En effet, il existe des couples de comportements de cette

classe qui produisent toujours la même séquence de coups. Par exemple, le comportement cCCCC et le comportement cCCDD produisent toujours la même séquence des coups : ils jouent toujours C. Pour de tels couples, on ne retient qu'un seul des deux comportements. Cette phase d'élimination conduit à écarter 6 comportements, 26 comportements de cette classe sont utilisés au final. Parmi ces 26 comportements, certains sont classiques. Cette classe contient notamment le comportement Tit-For-Tat qui est dénoté par cCDCD, le comportement coopératif naïf : cCCCC (All-C), le comportement agressif : dDDDD (All-D), le comportement pavlov : cCDDC.

• Une classe de comportements périodiques. Ces comportements jouent toujours la même séquence de coups. Soit par exemple le comportement per-cd : pour toute période impaire, il joue le coup C, pour toute période paire, il joue le coup D. Soit le comportement per-ccd : à la première génération, il joue C, à la deuxième C, à la troisième, il joue D, à la quatrième, il joue C etc. Les comportements de ce type introduits dans la simulation sont : per-cd, per-dc, per-ccd, per-ddc, per-ccccd et per_cccdcd. Un comportement proche introduit dans la simulation est c_Then_Per_dc : ce comportement joue c à la première génération et répète constamment la séquence dc dans la suite.

• Une autre classe de comportements est constituée de comportements dérivés de TFT. NtitForTat : réponse de N coups D à un coup D de l'adversaire, dans la simulation, N est pris à 3. Gradual : réponse d'un nombre croissant de coups D aux coups D de l'adversaire. Slow-TFT : coopère si l'adversaire a joué D deux fois dans les trois derniers coups. Hard-tf2T : coopère sauf si l'adversaire a joué D deux fois consécutives dans les trois derniers coups. Tf2t : coopère sauf si l'adversaire a joué D sur les deux derniers coups.

• Deux comportements qui jouent ce que l'adversaire a joué en majorité : soft-majo, hard-majo. Soft- majo commence par jouer C et joue ensuite ce que l'adversaire a joué en majorité. Hard-majo commence par jouer D et joue ensuite ce que l'adversaire a joué en majorité.

• 1 comportement prober : ce comportement joue trois premiers coups D C C pour tester les réactions de son adversaire. Si l'adversaire a coopéré aux coups 2,3, il joue toujours D dans la suite, sinon, il joue selon le comportement Tit-For-Tat.

Figure B.1 : Le schéma de deux communautés liées. Sur chaque communauté, on place deux comportements. K désigne l'effectif total d'une communauté. Initialement m stratégies adoptent le premier comportement de la communauté, K-m stratégies adoptent le second comportement.

La structure de deux communautés liées est une forme de répartition spatiale extrêmement simple. On choisit néanmoins d'étudier l'impact de la répartition spatiale à partir de cette structure pour deux raisons. D'une part, dans le cas de graphes plus grands, il est difficile de trouver des cycles : ils deviennent rares au sein d'un espace d'exploration dont la taille augmente beaucoup (du fait de la combinatoire des graphes et des populations de stratégies). D'autre part, cette configuration est la configuration minimale pour faire apparaître des cycles en évolution locale.

Dans le cas de l'évolution globale, le système est équivalent au cas sans répartition spatiale des stratégies puisque deux communautés liées forment un graphe complet. Donc, dans le cas de l'évolution globale, 3 comportements suffisent à produire une dynamique cyclique. En revanche, il est impossible d'obtenir des cycles avec 3 comportements oscillant dans le cas de l'évolution locale, si ces comportements ne sont pas répartis sur une même communauté. En effet, comme on répartit 2 comportements sur chaque communauté, l'oscillation des effectifs associés à un comportement sur une communauté est équivalente à l'oscillation des effectifs associés au second comportement de la communauté puisque l'effectif total est constant. Donc la configuration minimale pour obtenir des cycles à partir de stratégies réparties spatialement en communautés est la configuration de deux communautés liées dans le cas de l'évolution locale.

L'espace de recherche considéré est donc l'ensemble des couples de couples de comportements possibles à partir d'un ensemble de comportements donné de cardinalité

N =41

. Pour un ensemble de taille

N

, le nombre de configurations cycliques à explorer est de taille :

C  N =C

N 2

×C

N2

C

N2

2

C

N 2 (B.1) En effet,

C

N 2

×C

N 2

est le nombre de couples de couples de comportements possibles. On ôte les

C

N

2 m stratégies de comportement C0 K-m stratégies de comportement C1 m stratégies de comportement C2 K-m stratégies de comportement C3

cas de deux couples identiques de la forme

C1 , C2

lié à

C1 , C2.

On divise

C

2N

×C

N2

C

N2 par 2 pour ne

pas prendre en compte et le cas

C1 , C2

lié à

C3 , C4

et le cas

C3 , C4

lié à

C1 , C2.

Enfin, on réintroduit les

C

N

2

cas avec le même couple répété sur les deux nœuds. L'ensemble des configurations considérées est de taille

C  41=336610.

On passe l'ensemble des

C  41

configurations en revue. Pour chacune, on affecte 50 stratégies à chaque comportement : la population de chaque communauté est 100, la population totale de 200. On obtient un système de la forme de celui présenté sur la figure B.1. Ce système est ensuite simulé d'abord selon l'évolution globale et ensuite selon l'évolution locale. Au total on simule donc

2×C 41

systèmes.

Pour chaque système, on lance l'évolution sur 5000 générations. Le test de l'ensemble des configurations à la fois en évolution locale et en évolution globale représente environ 392 minutes de traitement machine sur un processeur cadencé à 2.1 GHz. On retient qu'une configuration et un mode d'évolution donnent des cycles si pour chaque communauté, les évolutions des effectifs d'un des comportements de cette communauté présentent au moins 6 changements de monotonie. Ce faisant, on retient 2469 cas en évolution locale et 3905 cas en évolution globale. On enregistre ces cas de fichiers au format .xml. Tous les systèmes obtenus ne sont pas purement périodiques : certains ont des évolutions cycliques à amplitude croissante jusqu'à disparition d'une des stratégies, d'autres ont des évolutions d'amplitude décroissantes jusqu'à stabilisation, d'autres enfin produisent des évolutions parfaitement cycliques. Pour chaque fichier retenu, on relance l'évolution jusqu'à arriver à un état stationnaire ou un attracteur périodique. On retient les cas qui ont convergé vers un attracteur périodique comme les cas de cycles parfaits. Dans ce qui suit, on compare les attracteurs périodiques obtenus dans le cas de l'évolution locale et ceux obtenus dans le cas de l'évolution globale.