Rapport de projet annuel : Protocole de négociation pour la formation de coalitions SOROOSH-MARKAZI Navid - GALOPIN Matéo Table des matières 1 Introduction 2 1.1 Contexte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 1.2 Objectifs du projet et réalisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 2 Présentation du sujet 3 2.1 Les jeux hédoniques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2.2 Le protocole de concession monotone . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 3 Description de la réalisation 5 3.1 Implémentation des structures de coalitions d'agents . . . . . . . . . . . . . . . . . . 5 3.2 Génération des partitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 3.3 Implémentation du protocole de concession monotone . . . . . . . . . . . . . . . . . 8 3.4 Implémentation des stratégies de concession . . . . . . . . . . . . . . . . . . . . . . . 8 3.5 Génération des préférences des agents . . . . . . . . . . . . . . . . . . . . . . . . . . 9 4 Expérimentations 9 4.1 Génération des expérimentations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 4.2 Graphiques et observations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 4.2.1 Expérimentations sur 5 agents . . . . . . . . . . . . . . . . . . . . . . . . . . 10 4.2.2 Expérimentations sur 9 agents . . . . . . . . . . . . . . . . . . . . . . . . . . 23 5 Conclusion 34 5.1 Bilan du projet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 5.2 Perspectives futures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 6 Bibliographie 35 1 1 Introduction 1.1 Contexte Les coalitions sont un élément central de la vie économique, politique et sociale, et la formation de coalitions a été largement étudiée dans le cadre des sciences sociales mathématiques. Les agents (qu'il s'agisse d'humains, de robots ou d'agents logiciels) ont des préférences en matière de coalitions et, sur la base de ces préférences, il est naturel de se demander quelles coalitions sont censées se former, et quelles structures de coalition sont de meilleurs résultats sociaux. Dans ce projet, nous considérons les jeux de formation de coalitions avec préférences hédoniques, ou simplement les jeux hédoniques. Le résultat d'un jeu de formation de coalition est une partition des agents en coalitions disjointes, que nous appellerons par synonymie partition ou structure de coalitions. La caractéristique principale des préférences hédoniques est que chaque agent se soucie uniquement des agents qui font partie de sa coalition, et ne se soucie pas de la façon dont les agents des autres coalitions sont regroupés. Malgré leur simplicité relative, les jeux hédoniques ont été utilisés pour modéliser de nombreuses situations intéressantes, telles que la formation d'équipes de recherche (Alcalde et Revilla, 2004), l'organisation d'activités de groupe (Darmann et al., 2012), la formation de coalitions de gouver- nements (Le Breton et al., 2008), les regroupements dans les réseaux sociaux (voir, par exemple, Aziz et al., 2014 ; McSweeney et al., 2014 ; Olsen, 2009), et l'allocation distribuée de tâches pour les agents sans l (Saad et al., 2011). 1.2 Objectifs du projet et réalisation Ce projet a pour objectif d'implémenter un algorithme décentralisé de formation de coalitions en s'appuyant sur un protocole de concession monotone. Dans le cadre à 2 agents uniquement, un protocole de concession monotone est décomposé en tours. Au premier tour, chaque agent fait une proposition. Durant les tours suivants et jusqu'à ce qu'un accord soit trouvé, chaque agent peut décider de rester sur sa proposition ou prendre un risque et faire une concession, c'est-à-dire faire une autre proposition qui, si elle est moins avantageuse pour lui, le sera plus pour l'autre. L'adaptation au cadre multilatéral, c'est-à-dire à plus de 2 agents, a été étudié par Ulle Endriss dans son article "Monotonic Concession Protocols for Multilateral Negotiation". Nous désirons alors adapter au contexte de la formation de coalitions ce protocole de concession monotone multilatéral, et d'expérimenter divers types de concessions et de stratégies de prise de risque. Dans ce projet, nous avons lu et compris les articles sur le jeu hédonique et les protocoles pour la négociation. Puis nous avons, en Java, modélisé le jeu hédonique, avec les agents, les coalitions et les structures en générant diéremment les préférences des agents. Nous avons aussi implémenté le protocole de négociation avec les diérentes concessions. Puis nous avons fait des expérimentations en récupérant certaines données, comme le nombre de rounds avant de trouver un accord, au format CSV et en générant des graphiques pertinents en R an de les étudier. 2 2 Présentation du sujet 2.1 Les jeux hédoniques Dans le jeu hédonique ou jeu de formation de coalitions, les coalitions sont des groupes d'individus, que l'on appelle agent. Chaque agent a des préférences, c'est-à-dire que chaque agent possède une liste ordonnée de toutes les coalitions dont il fait partie. Le premier élément de la liste est donc la coalition qu'il aime le plus et la dernière est celle qu'il aime le moins. Une solution est une liste de coalitions, que l'on appelle structure, qui contient chaque agent une seule et unique fois sachant qu'un agent peut être seul dans une coalition. Les préférences d'un agent peuvent être équivalentes. Le but du jeu est donc de trouver la structure qui est la meilleure possible pour chaque agent. Une solution est dite stable si elle respecte certains critères. Par exemple, une partition est stable au sens de Nash si aucun agent ne préfère quitter sa coalition pour en rejoindre une autre déjà formée. Exemple : cas idéal Agents Préférences (1) { (1) }, >{ (1), (2), (3) }, >{ (1), (3) }, >{ (1), (2) }, (2) { (2), (3) }, >{ (1), (2) }, >{ (1), (2), (3) }, >{(2)}, (3) { (2), (3) }, >{ (3) }, >{ (1), (3) }, >{ (1), (2), (3) } La solution ici est simple : S = [ { (1) }, { (2), (3) } ]. Dans cet exemple, la solution est évidente puisque les coalitions préférées de chaque agent concordent mais ce n'est pas toujours aussi simple. En eet, lorsque nous multiplions le nombre d'agents et que les préférences de ces derniers ne sont pas aussi conciliantes, il devient compliqué de trouver une solution stable. Pour ce faire nous allons donc nous servir de protocoles de concession monotones pour des négociations multilatérales. 2.2 Le protocole de concession monotone Dans un premier temps, nous avons étudié l'article de Ulle Endriss an de comprendre le fonction- nement d'un protocole de concession monotone adapté à la négociation multilatérale. Un protocole de négociation est un ensemble de règles spéciant l'éventail d'actions "légales" disponibles pour chaque agent à n'importe quelle étape d'une négociation traitée. Le protocole de concession mo- notone, en particulier, formalise ce qui pourrait être considéré comme la manière la plus naturelle de penser les négociations : au départ, chacune des parties impliquées fait une proposition qui est particulièrement bénéque pour eux-mêmes, puis ils révisent leurs propositions antérieures an de parvenir éventuellement à un accord. Le protocole est décomposé en rounds, au premier round chaque agent propose la solution qui est la meilleure pour lui-même. A chaque tour suivant, chaque agent fait une concession ou s'en tient à sa proposition actuelle. Ce qui précède est répété jusqu'à ce qu'une situation de conit surgisse, c'est-à-dire qu'aucun agent ne fait de concession, ou qu'un accord est atteint. Un accord 3 est conclu si un agent fait une proposition qui est au moins aussi bonne pour chaque autre agent que leur propre proposition actuelle. Chaque agent possède une fonction d'utilité, qui traduit sa satisfaction par rapport à la coalition dans laquelle il se trouve. Un accord peut être traduit par le fait qu'un agent fait une proposition dont le résultat de sa fonction d'utilité pour cette structure soit supérieure ou égale à celle de tous les autres agents pour cette même structure. Voilà comment fonctionne le protocole mais il reste deux points à éclaircir : les concessions en elles-mêmes et le choix de l'agent qui doit concéder. Il existe plusieurs types de concessions qui sont présentés dans l'article. Les agents vont donc adopter une stratégie pour leurs concessions : Concession Forte (Strong concession) : Faire une proposition qui est strictement meilleure pour tous les autres agents. Concession Faible (Weak concession) : Faire une proposition qui est strictement meilleure pour au moins l'un des autres agents. Concession de Pareto (Pareto concession) : Faire une proposition qui est au moins aussi bonne pour tous les autres agents et strictement meilleure pour au moins l'un des autres agents. Concession Utilitaire (Utilitarian concession) : Faire une proposition telle que la somme des utilités des autres agents augmente. Concession Egalitaire (Egalitarian concession) : Faire une proposition telle que l'utilité mi- nimale parmi les autres agents augmente . Concession de Nash (Nash concession) : Faire une proposition telle que le produit des utilités des autres agents augmente. Concession Egocentric (Egocentric concession) : Faire une proposition qui est moins bonne pour soi. Nous supposons que les agents commencent toujours par une proposition optimale pour eux- mêmes. Nous allons également ignorer la question de savoir laquelle des propositions optimales devrait être sélectionnée au cas où il y en aurait plusieurs. Une concession doit toujours être minime en ce qui concerne la perte d'utilité subie par l'agent faisant la concession. Le papier propose 3 méthodes pour choisir l'agent qui doit concéder : Le "Willingness to Risk Conict", cette méthode consiste à évaluer la perte d'utilité en cas de concession en supposant le pire résultat possible pour l'agent. On évalue cette perte pour chaque agent et celui avec la plus petite valeur doit concéder. "A Product-Increasing Strategy" est la deuxième méthode présentée. L'agent dont la proposition donne le produit des utilités le plus bas devrait faire la prochaine concession. La dernière méthode est "Sum of Products of Pairs". Elle consiste à calculer la somme des produits de paires d'utilités pour chaque proposition et de choisir l'agent pour lequel cette somme pour sa proposition est minimale. Cet agent doit concéder. 4 Dans notre réalisation nous avons choisi d'implémenter la "Product-Increasing Strategy", qui nous semblait la plus ecace pour l'adapter au cadre multi-agent. Pour adapter le cadre hédonique au protocole, chaque agent doit faire ses propres concessions. Chaque agent possède donc sa propre stratégie de concession, pour commencer nous ferons des po- pulations homogènes, c'est-à-dire avec tous les agents qui ont la même stratégie de concession, mais il est tout à fait possible d'envisager des essais avec des agents qui ont tous une stratégie diérente. Nous verrons comment nous avons adapté le protocole de concession monotone multilatéral à notre réalisation dans la prochaine partie. 3 Description de la réalisation Nous avons choisi d'implémenter notre réalisation avec le langage Java, voici notre diagramme de classes : Figure 1 Diagramme de classes du projet 3.1 Implémentation des structures de coalitions d'agents Pour modéliser le jeu hédonique, nous avons représenté chaque objet agent, coalition et struc- ture par une classe. L'agent est représenté par un identiant, une liste de coalitions qui sont ses préférences et sa stratégie de concession. Les méthodes importantes sont celles pour comparer des structures ou des coalitions en fonction de ces préférences. Ces méthodes vont nous permettre d'implémenter les diérentes concessions. 5 Nous avons également une méthode pour évaluer l'utilité de l'agent en fonction d'une structure donnée et une dernière méthode pour faire une nouvelle proposition. L'évaluation d'utilité est calculée en fonction de l'index dans la liste de préférences. La première préférence dans cette liste est la meilleure pour l'agent et la dernière est la pire. L'utilité est donc l'index inversé, la dernière préférence, la moins aimée, va avoir une utilité nulle, l'utilité de la préférence préférée sera égale au nombre de coalition dont l'agent fait partie. Cela est vrai lorsqu'aucune préférence n'est strictement égale à une autre mais cette situation peut survenir, dans ce cas nous utilisons toujours cet index mais sans le diminuer lorsque les préférences précédentes sont égales à celle recherchée. Les coalitions sont simplement des listes d'agents et les structures des listes de coalitions. 3.2 Génération des partitions Au début de l'exécution nous générons toutes les structures de coalitions possibles en fonction du nombre d'agents déni pour cette expérimentation. Nous utilisons pour cela un algorithme rapide d'un article de l'Université d'Australie occidentale qui génère toutes les partitions en tant que suite d'entiers, ou "codewords", puis nous traduisons et instancions cette structure dans notre système de classes. Décrivons le fonctionnement de l'algorithme par un exemple : Figure 2 Liste de toutes les partitions du set {1, 2, 3, 4} et leurs codewords Un agent est ici simplement représenté par son index dans la suite d'entiers, tandis que la coalition d'un agent est représentée par un chire qui s'incrémente si on change de coalition. Nous voyons ainsi que nous pouvons représenter une structure de coalition avec une simple suite d'entiers, beaucoup plus rapide à traiter qu'une structure complexe. 6 Supposons que nous désirions générer toutes les partitions de ce set {1, 2, 3, 4} : L'algorithme prend en paramètre le nombre d'agent an de créer des codewords de cette taille et utilise une fonction qui va générer récursivement toutes les partitions du set. Cette fonction prend en paramètre deux entiers, l'un représentant dans quelle coalition se trouve l'agent actuel et l'autre indiquant l'index de cet agent. Cette fonction va incrémenter progressivement ses deux paramètres lorsqu'elle s'appelle récursivement an de générer toutes les partitions possibles en assignant les codewords correspondants à son parcours récursif. Voici un exemple de l'exécution de l'algorithme an de générer les partitions pour cet exemple : Figure 3 Arbre décrivant la génération des codewords de toutes les partitions du set {1, 2, 3, 4} Nous observons bien sur cette image l'incrémentation progressive de ces deux paramètres, le codeword généré étant situé à gauche de l'appel récursif, nous obtenons les codewords correspondant aux partitions à générer à chaque feuille. La dernière étape de notre génération est simplement de parcourir ces codewords an d'instancier nos structures et coalitions pour créer toutes les partitions possibles. 7 3.3 Implémentation du protocole de concession monotone La partie principale du protocole de concession est implémentée dans la classe "ProtocolExe- cution". D'abord, nous commençons par créer les agents et leurs stratégies de concessions, puis nous générons la totalité des partitions possibles et plaçons les agents dans celles-ci, et nous géné- rons leurs préférences en fonction de ces partitions, et d'une seed qui sera indispensable pour les expérimentations. Ensuite le premier round s'eectue, les agents proposent d'abord la solution qui les arrange individuellement. Puis si ils ne sont pas d'accord, il faut déterminer l'agent qui va concéder. L'agent qui va concéder est choisi par la stratégie "Product-increasing", c'est donc celui qui propose la solution avec le produit des utilités la plus faible. Pour obtenir cette valeur, nous prenons la proposition et nous multiplions les utilités de chaque agent composant cette structure dans cette même structure. L'utilité des agents dans une structure est calculé en fonction de leur liste de préférences. Nous prenons la structure, nous trouvons la coalition dans cette structure qui contient l'agent. Puis il sut de récupérer l'index de cette coalition dans la liste des préférences, cet index représente l'utilité de l'agent pour cette structure. Une fois que l'agent qui doit concéder est choisi, il parcourt sa liste de préférences et propose la première structure qui satisfait sa stratégie de concession. Ensuite nous vérions si un accord a été atteint, il faut donc que l'utilité de chaque agent pour la nouvelle proposition soit supérieure ou égale à leur proposition actuelle. Nous répétons ces diérentes étapes tant qu'un accord ou un conit n'est pas atteint. Un conit survient lorsque plus aucun agent ne veut concéder, cela peut arriver en fonction des stratégies de concession, il est possible qu'un agent devrait concéder mais ne trouve pas de structure qui satisfasse sa stratégie. 3.4 Implémentation des stratégies de concession Pour les diérentes stratégies de concessions, nous avons implémenté un "Strategy pattern". Les agents qui concèdent appelle tous la même classe, "Concession", quelque soit leur stratégie. Il doivent juste indiquer en paramètre leur stratégie parmi celles présentes dans l'énumération "ConcessionS- trategy". Ensuite selon ce paramètre, la classe stratégie appelle la stratégie qui convient. Il y a donc une classe par concession qui contient une unique méthode : "makeConcession()". Pour que les agents ne proposent pas des structures déjà abandonnées, la classe "Concession" envoie une partition avec la liste des structures encore disponibles. L'agent doit suivre sa stratégie de concession mais il doit également prendre en compte ces propres préférences, la partition est donc triée en fonction des préférences de l'agent. Chaque concession prend cette partition, la parcourt jusqu'à trouver une structure qui convienne et la renvoie au protocole de concession qui peut continuer. Toutes les stratégies de concessions présentées dans l'article sont implémentées, à l'exception de la concession de Pareto. 8 3.5 Génération des préférences des agents Nous avons implémenté 4 types de préférences an de générer les préférences des agents de diérentes manières. Le premier type est la préférence aléatoire, qui génère des listes de coalitions individuellement rationnelles (IRCL), c'est-à-dire des jeux aléatoires, toutes les coalitions possibles sont ordonnées de manière aléatoire. Pour les 3 types de préférences suivants, les agents génèrent une note aléatoirement pour chaque autre agent et les coalitions obtiennent leur rang calculé à partir de celles-ci. Illustrons par un exemple : soit les notes de trois agents {4, 1, 3}. Tout d'abord, nous avons les préférences additives, où les notes de tous les agents sont addition- nées entre elles an de déterminer le rang de la coalition correspondante. Avec notre exemple cela donnerait {4, 1, 3} = 8. Ensuite, les préférences Beta (Best), où seule la meilleure note est sélectionnée pour dénir le rang de la coalition, soit {4, 1, 3} = 4 avec notre exemple, et enn les préférences Omega (Worst), où c'est la pire note qui est sélectionnée an de déterminer le rang de la coalition, soit {4, 1, 3} = 1 avec notre exemple. Enn, nous stockons ces notes, ordonnons les préférences de coalitions en fonction et les assignons à l'agent correspondant. 4 Expérimentations 4.1 Génération des expérimentations L'objectif nal de ce projet est en eet de réaliser des expérimentations avec diérentes popula- tions d'agents avec des stratégies de concession et des types de préférences diérents et de montrer nos résultats. Nous devons donc réaliser un grand nombre d'expérimentations. Nous avons vu que la génération des préférences a besoin de générer plusieurs valeurs aléatoirement. Pour réaliser des expérimentations nous devons créer une seed, c'est-à-dire un nombre aléatoire utilisé pour géné- rer tous les autres nombres aléatoires, an de nous assurer que nos résultats soient liés les uns aux autres. Nous utilisons cette seed pour générer les types de préférences des agents de manière aléatoire pour nos expériences avec diérents paramètres. Nous pouvons alors prendre des mesures : la densité et la répartition des concessions (le nombre total de concessions nécessaires avant l'arrêt du protocole, combien de fois chaque agent concède), le bien-être social de la solution (somme des utilités des agents), quelle est la satisfaction de chaque agent sur leur coalition actuelle dans la structure de l'accord, combien de coalitions sont devant leur coalition préférée. Nous compilons ensuite nos résultats dans un chier .csv an de pouvoir dessiner des graphiques pour représenter ces résultats. 9 4.2 Graphiques et observations Nous avons choisi de mener deux séries de 100 expérimentations avec 5 et 9 agents respectivement, en croisant les stratégies de concession et les types de préférences de façon uniforme. Les graphiques sont générés en utilisant le langage R. 4.2.1 Expérimentations sur 5 agents Étudions d'abord la répartition du nombre de concessions total parmi les diérentes expérimen- tations : Figure 4 Histogrammes représentant la répartition du nombre de concessions total pour 100 expérimentations sur 5 agents - Stratégies de concessions Nash et Strong Nous constatons que le nombre de concessions est généralement compris entre 5 et 20 pour la stratégie de concession Nash avec les types de préférences Random et Additive, mais qu'il est plus faible avec les types de préférences Best et Worst, où il est plus compris entre 0 et 15. Cela est particulièrement visible avec le type de préférence Best, où le nombre de concessions est compris entre 0 et 5 dans 50% des cas. Avec la stratégie de concession Strong, nous observons que le nombre de concessions est très faible, compris entre 0 et 5 dans 90% des cas avec les types de préférences Random et Additive, et dans 100% des cas avec les types de préférences Best et Worst. 10 Figure 5 Histogrammes représentant la répartition du nombre de concessions total pour 100 expérimentations sur 5 agents - Stratégies de concessions Weak et Egalitarian Les résultats pour les stratégies de concessions Weak et Egalitarian sont sensiblement semblables entre eux, on observe dans les deux cas une répartition homogène du nombre de concessions entre 20 et 50 avec les types de préférences Random et Additive, tandis qu'il est plus faible avec les types de préférences Best et Worst, où il est compris entre 0 et 30 dans la plupart des cas, surtout avec le type de préférence Best où plus de 40% des cas sont compris entre 0 et 5. 11 Figure 6 Histogrammes représentant la répartition du nombre de concessions total pour 100 expérimentations sur 5 agents - Stratégies de concessions Utilitarian et Egocentric Les résultats avec la stratégie de concession Utilitarian sont semblables à ceux utilisant la stratégie de concession Nash, nous constatons également que le nombre de concessions est généralement compris entre 5 et 20 avec les types de préférences Random et Additive, mais qu'il est plus faible avec les types de préférences Best et Worst, où il est plus compris entre 0 et 15. Cela est particulièrement visible avec le type de préférence Best, où le nombre de concessions est compris entre 0 et 5 dans 60% des cas. Avec la stratégie de concession Egocentric, cette tendance s'accentue considérablement. En eet, nous observons que le nombre de concessions est généralement compris entre 10 et 30 avec les types de préférences Random et Additive, mais qu'il est extrêmement faible avec les types de préférences Best et Worst, compris entre 0 et 5 dans plus de 90% des cas. Dans ces expérimentations, nous pouvons dégager une tendance générale : lorsque les agents ont des préférences de type Worst et surtout Best, le nombre de concessions total par expérimentation est plus faible que les autres types de préférences, et ce peu importe leur stratégie de concession. Cette tendance est particulièrement visible lorsque les agents ont une stratégie de concession Egocentric. On observe également que lorsque les agents utilisent une stratégie de concession Strong, l'expé- rimentation se termine très tôt. En moyenne, les stratégies de concessions Nash et Utilitarian sont 12 les plus ecaces en terme de minimisation du nombre de concessions total, en excluant Strong, tandis que les stratégies de concessions Weak et Egalitarian sont les moins ecaces. Ces tendances semblent logiques, étant donné que dans l'ordre, en terme de minimisation du nombre de concessions total, le type de concession Strong force une proposition qui améliore la satisfaction des tous les agents à la fois donc peu de concessions, ensuite Nash et Utilitarian cherchent à augmenter les utilités globales des agents, enn Weak et Egalitarian, qui se concentrent sur l'augmentation de la satisfaction d'un seul agent à la fois, donc beaucoup de concessions sont nécessaires an de parvenir à un résultat. Le type de concession Egocentric est un peu à part étant donné que l'agent qui concède ne s'intéresse pas aux préférences des autres agents mais uniquement aux siennes, ce qui semble aussi logique avec nos résultats étant donné que nous ne dégageons pas de tendance particulière. Le fait que le nombre de concessions total par expérimentation est plus faible lorsque les agents ont des préférences de type Best et Worst plutôt qu'avec des préférences de type Random et Additive est aisément explicable : beaucoup de coalitions dans les préférences d'un agent vont obtenir la même note, celle de l'agent qui a la meilleure note (Best) ou la pire (Worst), donc un accord est trouvé plus facilement puisque beaucoup de coalitions auront la même utilité pour cet agent. Avec les types de préférences Random et Additive, en revanche, il n'y a que peu de chance que des coalitions aient la même utilité dans les préférences d'un agent. Comparons ces résultats avec la répartition de la somme des utilités des agents : 13 Figure 7 Histogrammes représentant la répartition de la somme des utilités des agents pour 100 expérimentations sur 5 agents - Stratégies de concessions Nash et Strong L'utilité maximale d'un agent pour 5 agents est de 16, la somme des utilités des agents maximale est donc de 80. Les paliers pour la séparation des barres de l'histogramme sont ici de 8. Nous constatons que la somme des utilités des agents est généralement comprise entre 56 et 72 pour la stratégie de concession Nash avec les types de préférences Random et Additive, tandis qu'elle culmine entre 72 et 80 (exactement 80 en fait) avec les types de préférences Best et Worst. Nous remarquons également que la somme des fréquences n'est pas toujours égale à 100, ce qui signie que certaines expérimentations n'ont pas abouti à un accord. Les résultats avec la stratégie de concession Strong montrent d'ailleurs que très peu d'expérimen- tations ont abouti à un accord, 20% avec le type de préférence Strong, moins de 5% avec les autres. Cependant lorsqu'un accord est trouvé la somme des utilités est élevée, surtout avec les types de préférences Best et Worst. 14 Figure 8 Histogrammes représentant la répartition de la somme des utilités des agents pour 100 expérimentations sur 5 agents - Stratégies de concessions Weak et Egalitarian Les résultats pour les stratégies de concessions Weak et Egalitarian ressemblent fortement à ceux obtenus avec la stratégie de concession Nash, c'est-à-dire que la somme des utilités des agents est généralement comprise entre 56 et 72 avec les types de préférences Random et Additive, tandis qu'elle culmine à 80 avec les types de préférences Best et Worst. Nous pouvons cependant noter que la stratégie de concession Egalitarian semble aboutir légèrement moins souvent à un accord que les deux autres. 15 Figure 9 Histogrammes représentant la répartition de la somme des utilités des agents pour 100 expérimentations sur 5 agents - Stratégies de concessions Utilitarian et Egocentric Les observations pour la stratégie de concession Utilitarian sont sensiblement les mêmes que celles pour les stratégies Nash, Weak et Egalitarian. Comme cette dernière elle semble semble aboutir moins souvent à un accord que Nash et Weak. La stratégie Egocentric produit des résultats diérents des autres stratégies, la plupart des expéri- mentations sur la somme des utilités des agents est généralement comprise entre 56 et 72 également avec les types de préférences Random et Additive, mais environ 70% d'entre elles seulement abou- tissent à un accord. La diérence est particulièrement visibles avec les types de préférences Best et Worst : avec Best la somme des utilités des agents est toujours comprise entre 56 et 72, mais seulement 30% d'entre elles environ aboutissent à un accord, tandis qu'avec Worst aucune expéri- mentation ne mène à un accord. En comparant ces résultats avec ceux du nombre de concessions total, nous pouvons distinguer plusieurs tendances diérentes. En excluant la stratégie de concession Egocentric qui semble être un cas à part étant donné qu'elle ne prend pas en compte les préférences des autres agents, nous remarquons que lorsque les agents utilisent les types de préférences Best et Worst, ils aboutissent rapidement sur un accord qui les satisfait tous au maximum, puisque beaucoup de coalitions auront la même utilité maximale, donc ils n'ont pas besoin de beaucoup de concessions pour y parvenir. 16 Nous observons également qu'il est très dicile de parvenir à un accord lorsque les agents utilisent la stratégie de concession Strong, ils disposent de peu de concessions pour trouver un accord, mais elles se révèlent ecaces étant donné la nature de cette stratégie : faire une proposition strictement meilleure pour tous les agents. Les stratégies de concessions Nash, Weak, Egalitarian et Utilitarian produisent des résultats semblables en terme de somme des utilités des agents, Nash et Weak semblant être légèrement plus ecaces. Intéressons-nous maintenant à l'agent le plus dissatisfait par l'accord obtenu lors d'une expéri- mentation : Figure 10 Histogrammes représentant la répartition de l'utilité de l'agent avec la plus petite utilité pour 100 expérimentations sur 5 agents - Stratégies de concessions Nash et Strong 17 Figure 11 Histogrammes représentant la répartition de l'utilité de l'agent avec la plus petite utilité pour 100 expérimentations sur 5 agents - Stratégies de concessions Weak et Egalitarian 18 Figure 12 Histogrammes représentant la répartition de l'utilité de l'agent avec la plus petite utilité pour 100 expérimentations sur 5 agents - Stratégies de concessions Utilitarian et Egocentric Nos observations sont ici sensiblement les mêmes que pour la somme des utilités des agents, nous obtenons une répartition très semblable entre les stratégies de concession Nash, Weak, Egalitarian et Utilitarian, qui ont l'agent le plus dissatisfait avec une utilité entre 6 et 12 en moyenne, soit un résultat plutôt équilibré étant donné que l'utilité maximumale d'un agent est 16 avec 5 agents. Comme attendu, l'agent le plus dissatisfait possède une utilité de 16, soit le maximum, avec les types de préférences Best et Worst. Lorsque les agents utilisent une stratégie de concession Strong ou Egocentric, l'utilité de l'agent le plus dissatisfait semble répartie plus uniformément, avec toujours peu d'observations pour la stratégie de concession Strong. Enn, étudions la répartition du nombre de concessions de l'agent qui a le plus concédé face aux autres agents avant l'aboutissement à un accord : 19