Casanova : un comportement d`agent respectant la privacité

Transcription

Casanova : un comportement d`agent respectant la privacité
Casanova : un comportement d’agent
respectant la privacité pour des mariages
stables et équitables
Patricia Everaere 1 , Maxime Morge 1 , Gauthier Picard 2
1. Laboratoire d’Informatique Fondamentale de Lille, Université Lille 1, France
{patricia.everaere,maxime.morge}@univ-lille1.fr
2. Département ISCOD / Institut Henri Fayol
École Nationale Supérieure des Mines de Saint-Etienne, France
[email protected]
RÉSUMÉ. Cet
article prône une approche orientée individu pour la résolution du problème classique des mariages stables. Selon cette approche, la solution émerge de négociations entre
agents. L’agentification de l’algorithme séminal de Gale-Shapley revient à distinguer deux
comportements d’agents (proposant et disposant) qui négocient pour aboutir à une solution
stable mais inéquitable. Le comportement d’agent Casanova que nous proposons ici consiste à
jouer simultanément ces deux rôles dans une multitude de négociations bilatérales. Les agents
mettent en œuvre une stratégie de concession minimale maximisant leur bien-être individuel.
Les solutions qui émergent sont équitables et elles ne peuvent pas être atteintes par les méthodes multi-agents existantes. De plus, notre résolution est décentralisée et elle préserve la
privacité des préférences.
ABSTRACT. This paper promotes an individual-based approach for solving a well-known problem,
the stable marriage problem. In this approach, a solution is the output of an emergent phenomena due to the negotiation between the agents. The agentification of the seminal Gale-Shapley
algorithm is based upon two distinct behaviours (the proposer and the responder) negotiating
to reach a stable matching which is not fair. The Casanova agent behaviour we propose in
this paper relies on a society of agents that play at the same time both of these roles in multi
bi-lateral negotiations. The agents applies the minimal concession strategy for negotiation to
ensure their individual welfare. The emergent solutions are fair and they cannot be reached by
classical multi-agent methods, whereas Casanova is decentralized and privacy-preserving.
MOTS-CLÉS : système
multi-agents, modèle de comportements d’agents, résolution décentralisée,
gestion des conflits.
KEYWORDS: multiagent
systems, agent behaviour, decentralized problem solving, conflict hand-
ling.
c 2012 Lavoisier
DOI:10.3166/RIA.26.471-494 Revue d’intelligence artificielle – no 5/2012, 471-494
472
RIA. Volume 26 – no 5/2012
1. Introduction
Les systèmes multi-agents proposent un cadre conceptuel et des outils informatiques particulièrement adaptés à la modélisation et la simulation de phénomènes
complexes observés en physique, en biologie ou en économie (Schelling, 1978). L’approche orientée individu fait intervenir différentes entités en interaction dont le comportement constitue un modèle explicatif de phénomènes émergents.
Nous nous intéressons dans cet article à un problème bien connu en informatique (Knuth, 1971) et en économie (Roth, Oliveira Sotomayor, 1990), celui des mariages stables – en anglais, Stable Marriage Problem (SM). L’enjeu de ce problème
est simple. En considérant deux communautés dont chaque membre a des préférences
vis-à-vis des individus de l’autre communauté, l’objectif est de former des couples en
prenant en compte leurs préférences. Ce problème abstrait a de nombreuses applications. Par exemple, pour affecter des projets à des étudiants, chaque étudiant classe
par ordre de préférence les projets et réciproquement le responsable de chaque projet
classe lui aussi les candidats potentiels. Le covoiturage, l’échange de domicile ou les
réseaux d’entreprises sont d’autres exemples de domaines d’applications.
L’algorithme séminal de Gale-Shapley (Gale, Shapley, 1962) est une preuve constructive de l’existence d’une solution admissible pour n’importe quelle instance de
SM. L’agentification de cet algorithme proposé par Brito et Meseguer (2005) consiste
à distinguer deux comportements d’agents distincts : une communauté de proposants
et une communauté de disposants. Ainsi, les négociations entre ces agents aboutissent
à une solution stable mais inéquitable : la communauté des proposants est favorisée.
Dans cet article, nous proposons la méthode Casanova où les agents jouent simultanément le rôle de disposant et de proposant dans une multitude de négociations
bilatérales. Notre approche fait émerger des solutions stables qui ne peuvent être atteintes par les méthodes multiagents existantes (Brito, Meseguer, 2005 ; 2007) et qui
sont plus équitables entre les deux communautés. Notre résolution est décentralisée
et préserve la privacité : les agents ne communiqent pas leur préférences. Cet article
est une version étendue de (Everaere et al., 2011) où nous raffinons nos métriques et
l’évaluation de Casanova. À cette intention, nous avons réimplémenté Casanova, les
méthodes multi-agents, ainsi que les algorithmes centralisés existants (Zavidovique et
al., 2005 ; Gelain et al., 2010) dans le même langage afin de comparer les solutions
obtenues, notamment leur équité, ainsi que la complexité communicationnelle.
Nous commençons cet article par une formalisation du problème SM puis nous
présentons l’algorithme de Gale-Shapley dans une perspective orientée individu dans
la section 2. Afin d’évaluer les solutions à un problème SM nous utilisons la théorie
des jeux et la théorie du choix social, en section 3. Notre méthode Casanova est décrite
dans la section 4. Nous passons en revue les approches existantes pour la résolution de
problèmes SM, en section 5. Nous présentons le résultat de nos expérimentations dans
la section 6. Enfin, nous concluons cet article par une synthèse et des perspectives.
Casanova
473
2. Problème du mariage stable
Nous étudions ici le problème des mariages stables, en anglais Stable Marriage
Problem, qui a été introduit par Gale et Shapley (1962). Ce problème s’énonce simplement. On considère n individus d’une communauté (e.g la gent féminine) et n
individus d’une autre communauté (e.g. la gent masculine). Chaque individu a des
penchants pour les individus de l’autre partition avec lesquels il souhaite être apparié.
Définition 1 (SM). — Un problème de mariage stable de taille n (avec n ≥ 1) est un
couple SM = hX, Yi avec |X| = |Y| = n, où:
– X = {x1 , . . . , xn } est un ensemble de n hommes, i.e. relations de préférence sur
Y, représentant les préférences des hommes sur l’ensemble des femmes.
– Y = {y1 , . . . , yn } est un ensemble de n femmes, i.e. relations de préférence sur X,
représentant les préférences des femmes sur l’ensemble des hommes.
On note y2 x1 y3 le fait que l’homme x1 préfère strictement la femme y2 à la
femme y3 . Dans cet article, on suppose que les relations de préférences sont des ordres
stricts, ce qui signifie que chaque individu est en mesure de choisir entre deux partenaires (il n’y a ni ex æquo, ni indifférence). On appelle problème de mariage stable
avec liste complète (SMC) un problème SM où toutes les préférences sont complètes
(tous les individus sont classés). Par opposition, dans un problème de mariage stable
incomplet (SMI), au moins l’une des listes de préférence est incomplète. Le fait qu’une
liste de préférences soit incomplète signifie que l’individu préfère rester seul plutôt
que d’être mal accompagné.
Résoudre un problème SM consiste à assortir ces communautés. On appelle appariement, en anglais matching, un ensemble de n mariages monogames et hétérosexuels.
Définition 2 (Appariement). — Un appariement M pour le problème SM = hX, Yi de
taille n est une application µ M : X ∪ Y → X ∪ Y ∪ {θ} 1 telle que:
– ∀x ∈ X, µ M (x) ∈ Y ∪ θ et ∀y ∈ Y, µ M (y) ∈ X ∪ θ
– ∀z ∈ X ∪ Y, si µ M (z) , θ alors µ M (µ M (z)) = z
µ M (z) représente le partenaire de z selon l’appariement M. Dans un appariement
complet, chaque individu est marié et l’application µ est involutive et donc bijective.
µ M (z) z µ M0 (z) signifie que z préfère (son partenaire dans) l’appariement M à (son
partenaire dans) M 0 . µ M (z) z µ M0 (z) si µ M (z) z µ M0 (z) ou µ M (z) = µ M0 (z). Dans
le cas d’un problème SMC, seul les appariements complets sont intéressants. À l’inverse, pour un problème SMI, certains appariements complets sont irrationnels car ils
consistent à marier un individu à un partenaire qui n’est pas dans sa liste de préférences.
1. θ dénote l’individu fantôme.
474
RIA. Volume 26 – no 5/2012
Un appariement est stable s’il n’existe pas de couple qui préférerait être ensemble
plutôt qu’avec leur partenaire actuel. En d’autres termes, il n’existe pas de relation
extra-congugale menaçant l’appariement. Ces relations prennent la forme de couples
hypothétiques bloquants :
Définition 3 (Stabilité). — Soient un problème SM = hX, Yi de taille n et M un
appariement pour SM. Un couple (xi , yi ) ∈ X × Y est bloquant si yi xi µ M (xi ) et
xi yi µ M (yi ). M est instable s’il existe un couple bloquant.
Un appariement stable est une solution admissible à un problème SMC. Dans le cas
d’un problème SMI, un appariement stable est admissible s’il est rationnel, c’est-à-dire
si chacun des individus est marié à un partenaire qui est dans sa liste de préférences.
Exemple 4. —
Soit les relations de préférence suivantes SM
=
h{x1 , x2 , x3 }, {y1 , y2 , y3 }i avec :
y2 x1 y1 x1 y3
x2 y1 x1 y1 x3
y3 x2 y2 x2 y1
x3 y2 x2 y2 x1
y1 x3 y3 x3 y2
x1 y3 x3 y3 x2
Pour ce SMC, l’appariement M (µ M (x1 ) = y2 , µ M (x2 ) = y1 , µ M (x3 ) = y3 ) est instable
car (x2 , y2 ) est un couple bloquant. À l’inverse, les trois appariements M1 , M2 et M3
sont stables :
– µ M1 (x1 ) = y1 , µ M1 (x2 ) = y2 , µ M1 (x3 ) = y3
– µ M2 (x3 ) = y1 , µ M2 (x1 ) = y2 , µ M2 (x2 ) = y3
– µ M3 (x2 ) = y1 , µ M3 (x3 ) = y2 , µ M3 (x1 ) = y3
L’algorithme de Gale-Shapley (GS) proposé dans (Gale, Shapley, 1962) est une
preuve constructive de l’existence d’une solution admissible pour n’importe quelle
instance de SM (complet ou non).
L’algorithme GS peut être décrit comme un cérémonial au cours duquel les femmes
attendent dans une salle et les hommes, qui sont à l’extérieur, rentrent à tour de rôle
dans un ordre arbitraire. Quand un homme entre, il se présente à la femme qu’il préfère. Si la femme est libre et qu’elle le considère comme acceptable (i.e. il est dans
sa liste de préférences), il devient son partenaire. Si elle a déjà un partenaire, il y a
conflit et elle choisit l’homme qu’elle préfère. L’élu reste et l’autre, rejeté, sort de la
pièce. Ce dernier se souvient de cet échec et reviendra plus tard pour se présenter à
la femme qui suit dans l’ordre de ses préférences. On s’arrête quand tous les hommes
qui ne sont pas libres sont désespérés (leur liste de préférences est vide).
Dans l’algorithme GS (cf. algorithme 1) tel que nous le présentons, les hommes
proposent et les femmes disposent. Une exécution consiste en une séquence de propositions des hommes envers les femmes. En d’autres termes, les hommes jouent le
rôle de proposant et les femmes jouent le rôle de répondant. On dit que GS est orienté
homme. Il peut être facilement adapté pour être orienté femme, en inversant leur rôle
respectif. Dans ce cas, les femmes proposent et les hommes disposent.
Casanova
475
Algorithme 1 . GS orienté homme
Entrée : un problème SM
Sortie : un appariement M
Tous les individus sont libres
tant que il existe un homme libre x qui ne soit pas désespéré faire
y ← la première femme de la liste de x
// x propose à y
x2 ← est le partenaire courant de y éventuellement θ
si y considère x comme acceptable alors
Marier x et y
// y dispose
si x2 n’est pas un fantôme (i.e. θ) alors
x2 ← libre
fin si
pour chaque successeur x3 de x dans la liste de y faire
Supprimer x3 de la liste de y
// y ne fait plus de concession
Supprimer y de la liste de x3
// y informe ceux concernés
fin pour
fin si
fin tant que
Exemple 5. — En considérant le SM de l’exemple 4, le résultat de l’algorithme GS
orienté homme (respectivement orienté femme) est l’appariement M2 (respectivement
M3 ). L’appariement M1 ne peut être atteint par aucune exécution de GS qu’il soit
orienté homme ou femme.
L’agentification de cette résolution est simple et directe. C’est l’objet de la méthode
DisEGS proposée par (Brito, Meseguer, 2005) qui consiste à faire négocier deux types
d’agents – les proposants et les disposants – pour faire émerger une solution admissible. Les propriétés respectives de DisEGS et d’autres approches sont discutées dans
la section 5 et la qualité de leur solution est comparée dans la section 6.
3. Évaluation sociale des appariements
Comme nous l’avons vu dans la section précédente, un problème de mariages peut
avoir plusieurs solutions stables. Pour les distinguer les unes des autres, nous considérons ici différentes métriques. Dans la section 3.1, nous rappelons quelques résultats
formels de la théorie des jeux qui soulignent que l’optimalité sociale permet de distinguer certaines solutions mais que cette métrique reste insuffisamment discriminante.
Dans la section 3.2, nous nous inspirons de la théorie du choix social pour proposer
nos propres métriques.
3.1. Optimalité sociale
Une fois qu’un appariement est établi, il est essentiel de déterminer à quel point cet
appariement est acceptable pour la société. Dans cette section, nous utilisons la théorie
476
RIA. Volume 26 – no 5/2012
des jeux pour évaluer les solutions admissibles à un problème SM (Roth, Oliveira Sotomayor, 1990). Pour la clarté, nous nous restreignons dans la suite de cet article au
problème avec liste complète (SMC). Nous évaluons alors les solutions admissibles,
i.e. celles qui sont stables.
Un appariement stable est le résultat d’un jeu entre deux communautés. Il peut être
évalué du point de vue d’une communauté ou de l’autre.
Définition 6 (Préférence communautaire). — Soit un problème SM = hX, Yi de taille
n. Soient M et M 0 deux appariements stables pour SM et E ⊆ (X ∪ Y). M paretodomine M 0 sur E ssi ∀z ∈ E µ M (z) z µ M0 (z) et ∃z ∈ E tq µ M (z) z µ M0 (z). Un
appariement est pareto-optimal si c’est un appariement stable qui n’est pas pareto
dominé sur X ∪ Y. Un appariement est pareto mâle-optimal (respectivement pareto
femelle-optimal) si c’est un appariement stable qui n’est pas pareto-dominé sur X
(respectivement Y).
Donald Knuth a démontré dans (Knuth, 1971) que l’exécution de l’algorithme GS
orienté homme aboutit à une solution – un appariement stable – qui est mâle-optimale
et que cette solution est une des pires du point de vue des femmes.
Théorème 7 (Knuth, 1971, Conflit global). — Soit un problème SM.
– Il y a toujours un appariement qui est mâle-optimal, i.e. le résultat de l’algorithme GS orienté homme.
– Il y a toujours un appariement qui est femelle-optimal, i.e. le résultat de l’algorithme GS orienté femme.
– Tous les appariements qui sont mâle-optimaux sont pareto-dominés sur les
femmes par les autres appariements stables.
Comme l’espace des versions bien connu en apprentissage automatique (Mitchell,
1997), l’espace des solutions stables est un treillis. L’espace que l’on envisage ici
ne s’appuie pas sur une relation de généralisation mais sur la relation de paretodominance (e.g. sur les femmes) et la frontière supérieure est constituée des mâleoptimaux alors que la frontière inférieure est l’ensemble des solutions femelle-optimales. Chacune des solutions frontières peut être atteinte par l’algorithme GS en modifiant l’ordre d’apparition des proposants. Toutes les autres solutions, hors des frontières, ne peuvent être atteintes par l’algorithme GS mais par un algorithme centralisé
qui passe d’un appariement stable à un autre appariement stable en dégradant la satisfaction d’une communauté ou de l’autre communauté.
Dans une situation stable, si un individu souhaite divorcer pour un partenaire qu’il
préfère alors ce coup s’effectue au détriment de son partenaire courant. Ces dilemmes
sont capturés par le théorème suivant.
Théorème 8 (Knuth, 1971, Conflit local). — Soient M et M 0 deux appariements
stables pour un problème SM. Si µ M (x) = y et µ M0 (x) , y , alors
– soit µ M0 (x) x µ M (x) et µ M (y) y µ M0 (y);
– soit µ M (x) x µ M0 (x) et µ M0 (y) y µ M (y).
Casanova
477
La stabilité est une condition suffisante à la pareto-optimalité mais ce n’est pas une
condition nécessaire.
Théorème 9 (Roth, Oliveira Sotomayor, 1990, Pareto optimalité). — Tout appariement stable est un optimum de Pareto.
Preuve 10 (Pareto optimalité). — Par l’absurde, supposons qu’un appariement stable
M n’est pas pareto-optimal. Alors, il existe un appariement M 0 qui pareto-domine M
sur X ∪ Y. En conséquence,
∃z ∈ X ∪ Y t.q. µ M0 (z) z µ M (z)
(1)
∀z0 , z, µ M0 (z0 ) z0 µ M (z0 )
(2)
et
Notons h = µ M (z) et h0 = µ M0 (z). Avec 1, on a µ M0 (z) z µ M (z) et on peut déduire que
h0 z h. Comme h0 , z, grâce à l’équation 2, µ M0 (h0 ) h0 µ M (h0 ), donc z h0 µ M (h0 ).
Comme l’ordre considéré est strict et complet et que µ M (h0 ) , z, on a z h0 µ M (h0 ). M
n’est pas stable car (z, h0 ) est bloquant.
On peut noter qu’un appariement pareto-optimal n’est pas nécessairement stable.
Théorème 11. — Tout appariement pareto-optimal n’est pas stable.
Preuve 12. — Soit le SM = h{x1 , x2 }, {y1 , y2 }i avec y2 x1 y1 , y2 x2 y1 , x2 y1 x1 et
x2 y2 x1 . Considérons l’appariement M tel que µ M (x1 ) = y2 et µ M (x2 ) = y1 . M est
pareto-optimal mais cet assignement n’est pas stable car le couple (x2 , y2 ) est bloquant.
Exemple 13. — En considérant le SM de l’exemple 4, l’appariement M2 (respectivement M3 ) est mâle optimal (respectivement femelle optimal) car les hommes (respectivement femmes) sont mariés avec leur partenaire préféré. L’appariement M1 , où
tous les individus sont mariés avec leur second partenaire préféré, est un optimum de
pareto comme M2 et M3 .
En résumé, l’optimalité au sens de Pareto permet de distinguer parmi les solutions
stables lesquelles sont meilleures du point de vue d’une communauté ou d’une autre,
mais elle ne permet pas de distinguer lesquelles sont les meilleures du point de vue de
la société globale.
3.2. Bien-être social
Afin d’évaluer la qualité d’une solution du point de vue collectif, la théorie du
choix social (Moulin, 2003) propose d’autres outils que la théorie des jeux. Cette
évaluation repose sur une mesure individuelle de la satisfaction des individus, qui est
ensuite agrégée afin d’estimer la satisfaction de toute (ou partie de) la société.
Pour le problème SM, chaque individu (quelle que soit sa communauté) évalue sa
satisfaction en fonction de ses préférences via son regret qui est : 0 s’il est marié avec
478
RIA. Volume 26 – no 5/2012
le premier individu de sa liste; 1 s’il est marié avec le deuxième individu de sa liste,
etc. Moins un individu a de regret, plus sa satisfaction est grande.
Définition 14 (Satisfaction individuelle). — Soient un problème SM = hX, Yi de taille
n et un individu z. Considérons l’appariement M. Si le rang de µ M (z) dans z est k
(avec 0 ≤ k < n), alors le regret de z dans l’appariement M (noté rz (µ M (z))) est k. La
fonction d’utilité de l’individu z est la fonction uz : X ∪ Y → [0, 1] définie telle que :
( (n−1)−k
si µ M (z) , θ
n−1
uz (µ M (z)) =
(3)
0
sinon
(Moulin, 2003) propose de nombreuses fonctions pour agréger les utilités des individus, comme par exemple le bien-être utilitaire. Nous adaptons cette mesure au
problème SM afin d’évaluer le point de vue global, et nous introduisons la mesure
de bien-être équitable pour évaluer les disparités entre communautés et le bien-être
conjugal pour évaluer les disparités entre les partenaires d’un même couple.
Définition 15 (Satisfaction collective). — Soit un problème SM de taille n. Considérons un appariement M.
– Le bien-être utilitaire considère le bien-être de toute la société :
1 X
uz (µ M (z))
swu (X ∪ Y) =
2n z∈X∪Y
(4)
– Le bien-être masculin considère la satisfaction des hommes :
swu (X) =
1X
u x (µ M (x))
n x∈X
(5)
– Le bien-être féminin considère la satisfaction des femmes :
swu (Y) =
1X
uy (µ M (y))
n y∈Y
(6)
– Le bien-être équitable considère l’équité entre les hommes et les femmes :
X
1 X
swe (X ∪ Y) = 1 − |
u x (µ M (x)) −
uy (µ M (y))|
n x∈X
y∈Y
(7)
– Le bien-être conjugal considère l’équité dans les mariages :
swc (X ∪ Y) = 1 −
1 X
|u x (µ M (x)) − uµM (x) (x)|
n (x,µ (x))∈M
(8)
M
Les notions de bien-être présentées ici ont été normalisées (entre 0 et 1). Pour le
bien-être utilitaire, masculin et féminin, plus le bien-être est grand, plus la solution est
Casanova
479
optimale du point de vue de la communauté envisagée. Pour le bien-être équitable et
conjugal, plus le bien-être est grand, plus la solution est probe. On peut noter que le
bien-être conjugal est un raffinement du bien-être équitable qui s’inspire du principe
sous-jacent à l’algorithme Zig-Zag (Zavidovique et al., 2005) discuté dans la section 5.
Nous avons choisi d’envisager l’équité entre les communautés ainsi que l’équité au
sein des couples plutôt le bien-être égalitaire qui considère le bien-être de l’agent le
plus insatisfait car cette notion est indépendante de la communauté. Pour une même
instance de problème SM, l’agent le moins satisfait par une solution admissible peutêtre un homme et l’agent le moins satisfait par une autre solution admissible peut-être
une femme. La comparaison des solutions admissibles à l’aide de cette métrique n’est
donc ni simple ni directe.
Exemple 16. — Si nous considérons de nouveau l’exemple 4, les bien-être pour les
différents appariements stables sont les suivants :
Bien-être
swu (X ∪ Y)
swu (X)
swu (Y)
swe (X ∪ Y)
swc (X ∪ Y)
M1
.5
.5
.5
1
1
M2
.5
1
0
0
0
M3
.5
0
1
0
0
L’appariement M1 , qui ne peut pas être atteint par l’algorithme GS, est la solution la
plus équitable et la plus juste pour les couples.
4. Méthode Casanova
Contrairement à GS qui décrit un cérémonial, la méthode que nous proposons,
Casanova, décrit le comportement d’agents négociant. Dans GS, chaque communauté se voit attribuer un rôle, proposant ou disposant, alors que dans Casanova, les
agents jouent simultanément le rôle de disposant et de proposant dans une multitude
de négociations bilatérales. Casanova réalise alors une stratégie de concession minimale (Rosenschein, Zlotkin, 1994 ; Morge, Mancarella, 2010), basée sur le regret des
agents, pour permettre aux agents de faire émerger un appariement stable plus équitable que la solution proposée par GS. Selon cette stratégie, les agents se proposent
à leurs partenaires préférés. En cas d’échec, un agent concède, ce qui se traduit par
l’abandon de ses exigences vis-à-vis des partenaires potentiels. Ainsi, au début, un
agent envoie une proposition à son unique partenaire préféré, et si ce dernier refuse
l’agent concède et donc envoie une nouvelle proposition aux deux partenaires qu’il
préfère, etc.
4.1. Comportement des agents
Dans Casanova, chaque individu est représenté par un agent dont l’état interne est
défini comme suit.
480
RIA. Volume 26 – no 5/2012
Définition 17. — Soient SM = hX, Yi un problème de taille n et un agent a ∈ A
représentant l’individu z ∈ X ∪ Y. À chaque instant, l’agent a est représenté par un
tuple hσ, π, κ, µ, λ, ω, αi où :
– σ ∈ {>, ⊥} est le statut marital (> si marié avec un autre agent, ⊥ sinon) ;
– π est la liste de préférences de l’agent, ordonnée grâce à la relation z (cf. Définition 1) ;
– κ ∈ [0, n[ est le niveau de concession ou niveau de regret courant ;
– µ ∈ X ∪ Y ∪ {θ} est le partenaire courant ;
– λ ∈ X ∪ Y ∪ {θ} est l’amant courant ;
– ω ∈ [0, n] est un compteur de messages sans réponse ;
– α est la liste des acceptants.
Par souci de concision, on considère z ≡ a et X ∪ Y ≡ A. On définit le niveau
de concession comme la position maximale dans la liste de préférences que l’agent
considère comme acceptable. On note qu’un agent n’est pas forcément marié avec son
partenaire courant µ : il peut être fiancé (σ = ⊥ et µ , θ). De plus, un amant λ est
un agent qui fait une proposition acceptable (ra (λ) < κ) à un agent a déjà marié ayant
un niveau de concession κ. Le compteur ω sert à déterminer si l’agent attend encore
des réponses aux propositions qu’il a lancées. Il est décrémenté automatiquement à
la réception d’un accept ou d’un reject à la proposition en cours. La liste des
acceptants α correspond à l’ensemble des agents ayant accepté une des propositions
de l’agent. Elle est automatiquement mise à jour à la réception d’un message accept
à la proposition en cours.
À l’initalisation et pour tous les agents, σ = ⊥, κ = 1, µ = θ, λ = θ, ω = 0, α = [].
Les préférences π varient d’un agent à l’autre.
Nous pouvons représenter le comportement des agents grâce à un automate fini
déterministe composé de 5 états : libre (free), hésitant (hesitating), fiancé (engaged),
marié fidèle (faithful), et marié infidèle (unfaithful). Chacun de ces états dépend des
valeurs de certains attributs de l’agent (µ, λ, σ et ω), comme présenté ci-dessous :
état
free
hesitating
engaged
faithful
unfaithful
µ
θ
a∈A
a∈A
a∈A
a∈A
λ
θ
θ
θ
θ
a0 ∈ A
σ
⊥
⊥
⊥
>
>
ω
>0
>0
=0
=0
=0
Les transitions entre états et leurs conditions sont représentées dans la figure 1.
Les actions consécutives aux transitions sont exprimées dans le tableau 1, pour plus
de lisibilité 2 .
2. Pour simplifier, les mises à jours automatiques de ω et α à chaque réception de messages accept ou
reject n’apparaissent pas dans le tableau 1.
Casanova
481
Un agent peut envoyer les messages suivants :
– propose pour faire une proposition à un autre agent ;
– accept (resp. reject) pour répondre positivement (resp. négativement) à une
proposition émanant d’un autre agent ;
– confirm (resp. withdraw) pour confirmer (resp. infirmer) le mariage, suite à
une acceptation ;
– divorce pour briser un mariage.
Tableau 1. Actions consécutives aux transitions d’états
origine
destination
free
free
condition
reject & ω=0 & all are reject
free
free
free
free
hesitating
faithful
hesitating
hesitating
hesitating
engaged
hesitating
faithful
engaged
engaged
engaged
free
(accept or reject) & ω , 0
propose & level(y)<κ
(accept or reject) & best(α), θ &
ω=0
propose
(accept or reject) & ω=0 & µ x
best(α)
(accept or reject) & ω=0 &
best(α) x µ
propose
withdraw & y=µ
engaged
faithful
faithful
faithful
faithful
free
confirm & µ=y
propose & µ x y
divorce
faithful
unfaithful
unfaithful
unfaithful
unfaithful
unfaithful
engaged
faithful
propose & y x µ
propose
divorce
confirm & λ=y
action
κ++; send(propose) to all m peers at concession
level κ; α ← []; ω ← m;
∅
µ←y
µ
← best(α); send(confirm) to µ;
send(withdraw) to every z ∈ α \ {µ}; σ ← >
send(reject) to y
send(accept) to µ; send(withdraw) to every z ∈
α
send(reject) to µ; µ ← best(α); send(confirm)
to µ; send(withdraw) to every z ∈ α\{µ}; σ ← >
send(reject) to y
σ ← ⊥; µ ← θ; κ++; send(propose) to all m
peers at concession level κ; α ← []; ω ← m
σ←>
send(reject) to y
σ ← ⊥; µ ← θ; κ++; send(propose) to all m
pairs at concession level κ; α ← []; ω ← m
λ ← y; send(accept) to y
send(reject) to y
µ ← λ; λ ← θ; σ ← ⊥
send(divorce) to µ; µ ← λ; λ ← θ
4.2. Automate
La méthode Casanova correspond à l’exécution en parallèle des automates finis déterministes correspondants à la figure 1, pour chacun des agents des deux communautés. Tous les agents ont donc le même comportement, mais des préférences différentes.
Chaque agent mène trois activités de front : (i) la proposition ; (ii) la disposition ; et
(iii) la remise en question.
Proposition. Au début de la résolution, chaque agent est libre (free). L’agent a
lance des propositions aux agents qu’il considère comme acceptables (b ∈ π, t.q.
ra (b) < κ). Lorsqu’il a reçu toutes les réponses (ω = 0) et au moins une acceptation
avant toute autre proposition, il envoie un message de confirmation au meilleur et il
devient marié (faithful). En l’absence d’acceptation parmi toutes les réponses et en
l’absence d’autre proposition, l’agent augmente son niveau de concession κ. Il recommence alors une phase de proposition avec un niveau de concession supérieur. Dès
qu’un agent reçoit une proposition, il passe en phase de disposition (hesitating). Par
contre, si à l’issue de cette activité de proposition, il est marié (il a reçu toutes les ré-
482
RIA. Volume 26 – no 5/2012
propose
divorce
engaged
unfaithful
confirm
withdraw
&y=µ
propose
(accept or reject)
&y=µ
&ω=0
& best=µ
(accept or reject)
& ω=0 &
best(α)≺ x µ
hesitating
propose &
level(y)<κ
faithful
propose
& y ≺x µ
terminate
•
divorce
propose
& µ ≺x y
(accept or reject)
&ω,0
•
propose
confirm
& λ=y
free
(accept or reject)
& best(α), θ
& ω=0
reject & ω=0
& all are reject
Figure 1. Comportement des agents représenté comme un automate fini déterministe
ponses à sa proposition et aucune autre proposition), alors il passe en phase de remise
en question (voir plus bas).
Disposition. Lorsqu’un agent reçoit une proposition alors qu’il est libre et donc en
attente de réponses, il va hésiter (hesitating) entre cette proposition et les éventuelles
réponses positives à celle qu’il a émise. Il attend donc toutes les réponses des agents
auxquels il a fait une proposition. Lorsqu’il a reçu toutes les réponses (ω = 0) il va :
(i) soit accepter la proposition si elle est préférable au meilleur des acceptants - dans
ce cas l’agent est fiancé (engaged) et attend une confirmation pour se marier ; (ii) soit
confirmer au meilleur des acceptants et l’agent devient alors marié. Dans tous les cas,
les autres agents reçoivent des réponses négatives (reject ou withdraw). À la fin
de cette phase l’agent est : (i) soit marié et va donc pouvoir se remettre en question
(voir plus bas) ; (ii) soit libre s’il a accepté la proposition mais que cette dernière est
annulée par un withdraw et l’agent augmente donc son niveau de concession pour
recommencer le processus de proposition.
Remise en question. Ce n’est pas parce qu’un agent est marié, qu’il va le rester
tout au long de la résolution. En effet, il peut recevoir des propositions plus intéressantes que son partenaire actuel. Dans ce cas, l’agent continue à être marié mais fait
une « infidélité » (unfaithful) en acceptant une proposition. Si cette dernière aboutit sur
une confirmation, l’agent divorce de son partenaire actuel (µ) et se marie avec le proposant (l’amant λ), sinon l’agent reste fidèle. Lorsqu’un agent reçoit un message de
divorce, il devient : (i) soit libre s’il n’a pas d’amant, et donc il recommence une phase
Casanova
483
de proposition ; (ii) soit fiancé avec son amant et donc en attente d’une confirmation
dans une phase de disposition.
Arrêt. La résolution se termine lorsque tous les agents sont mariés, qu’ils soient
fidèles ou non.
Figure 2. Trace d’exécution de Casanova du point de vue de l’agent y3
Exemple 18. — Considérons l’exemple 4 du point de vue de y3 . Les messages envoyés
ou reçus par y3 sont représentés dans la figure 2. Pour rappel, les préférences de y3 sont
x1 y3 x3 y3 x2 . Initialement, y3 est free et son niveau de concession κ = 0. Ainsi, le
seul partenaire acceptable est x1 . Dans notre exemple, les négociations conduisent à
l’appariement M1 t.q. µ M1 (x1 ) = y1 , µ M1 (x2 ) = y2 , µ M1 (x3 ) = y3 avec swe (X ∪ Y) = 1.
Tout d’abord, y3 reçoit une proposition d’un partenaire non acceptable, x2 (message 1).
Ainsi, y3 rejette cette proposition (message 2). Indépendamment de cette proposition,
y3 fait une proposition à son partenaire préféré, x1 (message 3). Entre temps, y3 reçoit
une deuxième série de propositions non acceptables de x2 et de x3 (messages 4 et
6), qu’elle rejette immédiatement (messages 5 et 7). Malheureusement, la proposition
de y3 est rejetée par x1 . Par conséquent, elle concède (κ ← 2) et elle avance dans
sa liste de préférences. y3 envoie une proposition à x1 (message 9) et x3 (message
10), qui sont toutes deux rejetées (messages 11 et 12). Par conséquent, y3 concède à
nouveau et envoie une proposition à ses trois partenaires acceptables, x1 (message 13),
x3 (message 14) et x2 (message 15). x2 et x3 acceptent (messages 16 et 17) et ils se
484
RIA. Volume 26 – no 5/2012
considèrent fiancés en attente de confirmation. x1 rejette la proposition (message 18).
y3 choisit le meilleur acceptant (x3 ), confirme le mariage (message 19), et annule sa
proposition à x2 (message 20).
5. Travaux connexes
Dans cette section, nous comparons Casanova avec les méthodes existantes en
fonction des caractéristiques exhibées par notre méthode : la décentralisation (cf. section 5.1), la privacité (cf. section 5.2) et l’équité (cf. section 5.3). Comme résumé dans
le tableau 2, notre analyse de l’état de l’art conclut que Casanova est la seule méthode
de résolution qui, à notre connaissance, dispose simultanément de ces trois propriétés.
Tableau 2. Propriétés des méthodes de résolution du S M
Méthode
GS (Gale, Shapley, 1962)
DisEGS (Brito, Meseguer, 2005)
DisFC (Brito, Meseguer, 2005 ; 2007)
Zig-Zag (Zavidovique et al., 2005)
SML2 (Gelain et al., 2010)
Casanova (Everaere et al., 2011)
Décentralisé
7
3
3
7
7
3
Privacité
7
3
3
7
7
3
Équité
7
7
7
3
3
3
5.1. Décentralisation
Parmi les méthodes existantes, nous distinguons les algorithmes centralisés où
une entité principale collecte les informations pour effectuer la totalité du calcul et les
méthodes décentralisées où les informations et le calcul sont (au moins partiellement)
distribués.
L’algorithme séminal de Gale-Shapley (GS) proposé dans (Gale, Shapley, 1962)
se résume au cérémonial décrit dans la section 2. Selon cet algorithme, une entité
centrale joue le rôle de marieuse en fonction des préférences des individus dont elle a
connaissance. L’algorithme GS est clairement une méthode centralisée.
La méthode DisEGS (Brito, Meseguer, 2005) évoquée dans la section 2 résulte
de l’agentification de l’algorithme GS. Les échanges de propositions et d’acceptation
permettent d’atteindre un appariement. Les préférences et le calcul de l’appariement
sont distribués. Cette méthode est donc décentralisée.
L’algorithme DisFC (Brito, Meseguer, 2006 ; 2007) est une adaptation de l’algorithme ABT (Yokoo et al., 1998). Comme ABT, l’algorithme DisFC est une méthode
distribuée de résolution de problèmes de satisfaction de contraintes – Constraint Solving Problem (CSP). L’algorithme DisFC résout un CSP qui est la traduction d’un problème SM. Nous considérons ici que l’algorithme DisFC est une méthode de résolution décentralisée comme cela est communément admis pour ABT. Toutefois, on peut
remarquer que cette méthode nécessite un ordonnancement entre les agents. Ainsi,
Casanova
485
certains agents capturent une grande partie de la complexité du problème et ceux-ci
doivent résoudre une large partie (voire l’intégralité) du problème. Comme discuté
dans (Glize, Picard, 2011), cette asymétrie peut impliquer des points de centralisation.
L’algorithme Zig-Zag (Zavidovique et al., 2005) consiste à parcourir une table
dont les lignes (respectivement les colonnes) représentent les ordres de préférences
des hommes (respectivement des femmes). Comme cet algorithme s’appuie sur cette
table des mariages qui nécessite la connaissance complète du problème, cette méthode
est centralisée. À notre connaissance, cette approche ne peut pas être distribuée.
L’algorithme SML2 (Gelain et al., 2010) est un algorithme d’optimisation par recherche locale qui vise à minimiser le nombre de mariages non stables. Cet algorithme
consiste, à partir d’un appariement aléatoire, à améliorer la stabilité de l’appariement
en supprimant des mariages non stables. De par la notion de voisinage utilisée, cette
méthode est centralisée.
5.2. Privacité
Le respect de la vie privée est désormais considéré comme une caractéristique
cruciale que doivent exhiber les systèmes informatiques. Dans le cas particulier des
mariage stables, nous considérons que les préférences des individus, le statut marital
et leur partenaire sont des informations sensibles de la sphère privée. Selon nous, une
méthode de résolution garantit la privacité si ces informations ne sont pas divulguées
explicitement lors d’échanges avec tout ou partie du système. Notre définition omet
deux aspects de la privacité :
– la délégation de confiance entre les agents. Nous n’envisageons pas que des
agents puissent publier des informations sur d’autres agents (par exemple, un agent
publie la liste des agents qui l’ont contacté) ;
– la traçabilité des échanges : nous ne considérons pas que les agents puissent
écouter les échanges entre les autres agents pour en inférer certaines connaissances
(par exemple, déduire une liste de préférences à partir d’une trace des échanges).
Par définition, les méthodes de résolution centralisées (e.g. GS, Zig-Zag et SML2) ne
préservent pas la privacité. À l’inverse, les méthodes de résolution comme DisEGS et
Casanova ne nécessitent pas que les agents révèlent explicitement leurs préférences,
leur statut marital ou l’identité de leur partenaire. Ces méthodes respectent la privacité. En ce qui concerne l’algorithme DisFC, les agents échangent une partie de ces
informations. Toutefois, ces données échangées sont cryptées dans la version PKC, ce
qui garantit ainsi la privacité.
5.3. Équité
Nous qualifions d’équitable les méthodes de résolution du problème SM qui optimisent la justice entre les communautés d’agents. Concrètement, ces méthodes tentent
de réduire l’écart entre la satisfaction des hommes et celle des femmes.
486
RIA. Volume 26 – no 5/2012
Comme nous l’avons souligné dans la section 2, l’algorithme GS et sa version
décentralisée DisEGS favorisent une communauté au détriment d’une autre. Si les
hommes proposent et les femmes disposent, l’appariement résultant est mâle-optimal.
Inversement, si les femmes proposent et les hommes disposent, l’appariement résultant est femelle-optimal (cf. théorème 7). L’inéquité des solutions s’explique par le fait
que ces méthodes de résolution sont asymétriques. Le traitement des individus dépend
de leur communauté d’appartenance.
L’algorithme DisFC s’appuie sur un ordre arbitraire entre hommes et femmes.
Cette méthode traite différemment les hommes et les femmes. (Brito, Meseguer, 2005 ;
2007) ne proposent pas de mécanisme pour garantir l’équité comme la possibilité d’un
ordonnancement aléatoire des agents, par exemple.
La méthode Casanova consiste en un seul et unique comportement d’agent indépendamment de leur communauté d’appartenance. Ainsi, son objectif est d’atteindre
une solution équitable. De même, l’algorithme SML2 traite les individus indépendamment de sa communauté d’appartenance. Il vise également l’équité de la solution. On
peut toutefois noter que l’appariement obtenu n’est pas nécessairement stable.
L’algorithme Zig-Zag parcours la table des mariages où chaque case (p, q) contient
une paire (m, w) telle que w est le p-ième choix de m, et m est le q-ième choix de w.
Le parcours de la table s’effectue sur la diagonale pour y choisir si possible un couple
et en s’en écartant au minimum sinon. Intuitivement, ce cheminement vise à favoriser
la justice au sein des couples, mais, comme SML2, il ne garantit pas que le résultat
soit stable.
Afin d’évaluer précisément la justice des solutions, nous avons introduit dans la
définition 15 deux métriques : le bien-être équitable (cf. équation 7) et le bien-être
conjugal (cf. équation 8). Nos expérimentations, présentées dans la section suivante,
comparent les algorithmes mentionnés ici selon ces métriques.
6. Expérimentation et évaluation
Dans cette section nous présentons le résultat de nos expérimentations qui permettent de comparer notre méthode avec celles existantes. Casanova a fait l’objet de
deux implémentations.
6.1. Conditions expérimentales
Dans un premier temps, nous avons utilisé la plateforme multi-agent Jason (Bordini
et al., 2007). Jason est une version étendue du langage AgentSpeak (Rao, 1996) qui
implémente la sémantique opérationnelle de ce langage. Jason permet de prototyper rapidement le comportement des agents. Cette implémentation est une preuve de
concept en faveur de la décentralisation de notre approche (Everaere et al., 2011).
Notre résolution ainsi implémentée est distribuable dans un réseau grâce à une infrastructure Jade, par exemple. Pour ce faire, nous avons implémenté un processus
Casanova
487
distribué asynchrone inspiré de (Dijkstra, Scholten, 1980) qui permet de stopper les
négociations lorsqu’une solution stable est atteinte. Tous les agents sont placés dans un
graphe orienté constitué d’un unique circuit et ils échangent des jetons de terminaison.
Dans un second temps, nous avons entièrement réimplémenté Casanova en Java.
Cette version permet de comparer notre approche aux algorithmes existants, qu’ils
soient centralisés ou décentralisés, à l’aide du même langage de programmation. Le
protocole d’expérimentation que nous avons suivi est le suivant. Nous avons généré
de manière (pseudo-)aléatoire des instances de problèmes SM de tailles comprises
entre n = 2 et n = 100. Nous avons considéré 20 instances différentes pour chaque
n. Ces instances ont été résolues à l’aide des méthodes évoquées dans la section
précédente : Gale-Shapley (Gale, Shapley, 1962), DisEGS (Brito, Meseguer, 2005),
Zig-Zag (Zavidovique et al., 2005), SML2 (Gelain et al., 2010) et bien-sûr Casanova (Everaere et al., 2011). Nous présentons ici pour chacune des métriques, la
moyenne des résultats obtenus par chacun des algorithmes.
6.2. Bien-être masculin/féminin
La figure 3 représente le bien-être masculin (cf. équation 5 de la définition 15) et
le bien-être féminin (cf. équation 6 de la définition 15). Ces métriques confirment que
l’algorithme de Gale-Shapley orienté homme favorise les hommes au détriment des
femmes alors que Casanova obtient des résultats similaires aux méthodes SML2 et
Zig-Zag.
En complément, la figure 4 représente pour chacune des instances du problème
(20 instances pour des tailles allant de 2 à 100) l’évaluation multi-objectif de la solution pour les bien-être masculin et féminin (bien-être masculin en abscisse et bien-être
féminin en ordonnée). Cette figure permet de visualiser quelles régions du front de
Pareto sont explorées par chacune des méthodes. La région explorée par GS est excentrée par rapport à la diagonale. Comme dit précédemment, cette méthode favorise
une communauté plus qu’une autre. On voit également sur ces nuages de points que
les solutions explorées par les algorithmes Casanova et ZZ occupent des régions plus
centrales que les deux autres (proches de la diagonale), ce qui suggère que les solutions sont plus équitables.
6.3. Bien-être équitable/conjugal
La figure 5 représente le bien-être équitable (cf. équation 7 de la définition 15) et le
bien-être conjugal (cf. équation 8 de la définition 15). Pour ces deux métriques, Casanova se révèle aussi performant que Zig-Zag et légèrement plus performant que SML2.
Pour ces trois algorithmes, le bien-être équitable comme le bien-être conjugal des
solutions obtenues sont meilleurs que pour les solutions obtenues par GS qui favorise
une communauté au détriment de l’autre communauté. Nos expériences confirment
donc que Casanova fait émerger des solutions équitables.
488
RIA. Volume 26 – no 5/2012
1
Bien−être masculin
0.95
0.9
0.85
0.8
0.75
0.7
Casanova
Gale−Shapley
Zig Zag
SML
0.65
0.6
10
20
30
40 50 60 70
Taille du problème
80
90 100
1
Bien−être féminin
0.95
0.9
0.85
0.8
0.75
0.7
Casanova
Gale−Shapley
Zig Zag
SML
0.65
0.6
10
20
30
40 50 60 70
Taille du problème
80
90 100
Figure 3. Évaluation du bien-être masculin (en haut) et du bien-être féminin (en bas)
6.4. Bien-être utilitaire
La figure 6 représente le bien-être utilitaire (cf. équation 4 de la définition 15).
Pour cette métrique, tous les algorithmes, en particulier Casanova, sont meilleurs que
GS. Nos expériences montrent donc que Casanova améliore, au même titre que les solutions centralisées, la satisfaction globale de la société. En effet, les solutions stables
optimales ne sont pas nécessairement celles explorées par GS, c’est-à-dire parmi les
solutions mâle-optimales ou femelle-optimales.
6.5. Nombre de paires bloquantes
La figure 7 représente le nombre moyen de paires bloquantes, i.e. de relations
extra-conjugales, menaçant l’appariement (cf. définition 3), dans les solutions propo-
Casanova
0
Casanova
Bien−être féminin
Bien−être féminin
0
0.2
0.4
0.6
0.8
1
Gale−Shapley
0.2
0.4
0.6
0.8
1
1
0
0.8
0.6
0.4
0.2
Bien−être masculin
0
1
0
Zig Zag
Bien−être féminin
Bien−être féminin
489
0.2
0.4
0.6
0.8
1
0.8
0.6
0.4
0.2
Bien−être masculin
0
SML
0.2
0.4
0.6
0.8
1
1
0.8
0.6
0.4
0.2
Bien−être masculin
0
1
0.8
0.6
0.4
0.2
Bien−être masculin
0
Figure 4. Front de Pareto exploré par les différentes méthodes
sées par chacun des algorithmes. SML2 est une méthode d’optimisation par recherche
locale qui cherche à minimiser le nombre de paires bloquantes. SML2 est paramétré
par une probabilité de marche aléatoire (p = 0, 1 dans nos expériences) et un nombre
maximum de pas (ici, s = 300). SML2 ne garantit pas la stabilité de la solution et
nécessite un paramétrage fin, ce qui explique son décrochage pour des tailles d’instances supérieures à 70. La méthode Zig-Zag produit des solutions dites quasi stables.
Toutes les autres méthodes produisent des solutions stables. On remarque que, parmi
les méthodes équitables, Casanova est la seule qui aboutit à des résultats stables.
6.6. Nombre de messages
La figure 8 représente le nombre de messages échangés. Cette métrique permet
d’évaluer si le système est réellement distribuable sans impact sur le temps de réponse ; notamment en vérifiant si le nombre de messages augmente au plus linéairement avec la taille du problème. Selon cette métrique, il apparaît que Casanova est
bien moins performant que DisEGS. C’est le prix de l’équité et de l’optimalité des solutions obtenues. D’après les mesures effectuées dans (Brito, Meseguer, 2006), DisFC
produit environ 50 000 messages pour des instances de taille n = 10 ce qui est bien
supérieur aux 470 messages générés par Casanova pour des instances de même taille.
Finalement, la complexité communicationnelle de Casanova semble admissible.
490
RIA. Volume 26 – no 5/2012
1
Bien−être équitable
0.95
0.9
0.85
0.8
0.75
0.7
Casanova
Gale−Shapley
Zig Zag
SML
0.65
0.6
10
20
30
40 50 60 70
Taille du problème
80
90 100
1
Bien−être conjugal
0.95
0.9
0.85
0.8
0.75
0.7
Casanova
Gale−Shapley
Zig Zag
SML
0.65
0.6
10
20
30
40 50 60 70
Taille du problème
80
90 100
Figure 5. Évaluation du bien-être équitable (en haut)
et du bien-être conjugal (en bas)
6.7. Temps d’exécution
La figure 8 représente le temps d’exécution des différentes méthodes de résolution.
Cette métrique permet d’évaluer si ces méthodes passent l’échelle ; notamment en vérifiant si le temps de réponse augmente au plus linéairement avec la taille du problème.
Selon cette métrique, il apparaît que Casanova est bien moins performant que GaleShapley. C’est le prix de l’équité et de l’optimalité des solutions obtenues. Toutefois,
si on compare Casanova aux autres méthodes de résolution qui prônent l’équité, Casanova se révèle beaucoup plus performant que SML2 et un peu moins performant
que Zig-Zag qui retournent toutes deux des solutions qui ne sont pas nécessairement
stables.
Casanova
491
1
Bien−être utilitaire
0.95
0.9
0.85
0.8
0.75
0.7
Casanova
Gale−Shapley
Zig Zag
SML
0.65
0.6
10
20
30
40 50 60 70
Taille du problème
80
90 100
Figure 6. Evaluation du bien-être utilitaire
Nombre de paires bloquantes
50
45
40
Casanova
Gale−Shapley
Zig Zag
SML
35
30
25
20
15
10
5
0
10
20
30
40 50 60 70
Taille du problème
80
90
100
Figure 7. Évaluation du nombre de paires bloquantes
7. Conclusion
Dans cet article, nous avons adopté une approche centrée individu pour la résolution du problème des mariages stables. Selon notre méthode, les agents interagissent
dans une multitude de négociations bilatérales. Notre comportement d’agent Casanova
consiste à mettre en œuvre une stratégie de concession minimale. Ainsi, au début, les
agents envoient une proposition à leur partenaire préféré, et s’il refuse ils concèdent
et donc envoient une nouvelle proposition aux deux agents qu’ils préfèrent, etc. De
plus, les agents mariés peuvent être amenés à divorcer si l’un des époux reçoit une
proposition préférable.
492
RIA. Volume 26 – no 5/2012
Nombre de messages
100000
10000
1000
100
10
Casanova
Gale−Shapley (DisEGS version)
1
10
20
30 40 50 60 70
Taille du problème
80
90 100
Figure 8. Evaluation du nombre de messages
100000
Time (ms)
10000
Casanova
Gale−Shapley
Zig Zag
SML
1000
100
10
1
10
20
30 40 50 60 70
Taille du problème
80
90 100
Figure 9. Evaluation du temps d’exécution
Casanova a fait l’objet de deux implémentations : l’une à l’aide de la plateforme
multi-agent Jason et l’autre en Java. C’est cette seconde implémentation qui nous a
permis de comparer Casanova avec des méthodes de résolution centralisées ou distribuées. Nos expériences confirment que les solutions obtenues par Casanova sont équitables comme celles obtenues par SML2 (Gelain et al., 2010) et Zig-Zag (Zavidovique
et al., 2005) alors que ces dernières ne sont pas nécessairement stables. De même, on
observe que Casanova améliore la satisfaction globale de la société en explorant des
solutions ignorées par GS (Gale, Shapley, 1962). Enfin, même si le nombre de messages échangés par Casanova est plus important qu’avec DisEGS (Brito, Meseguer,
2005), ce nombre reste linéaire par rapport à la taille du problème.
Casanova
493
À notre connaissance, Casanova est la seule méthode de résolution qui exhibe
simultanément les trois propriétés suivantes :
– décentralisation, i.e. les préférences des individus et le calcul sont distribués ;
– privacité, i.e. les préférences des individus, le statut marital et leur partenaire
ne sont pas divulgués explicitement lors d’échanges avec tout ou partie du système ;
– équité, i.e. la justice entre les communautés est maximisée.
Selon nous, l’équité de la solution et la préservation de la privacité par le système
(la décentralisation en est une condition nécessaire) sont des propriétés essentielles
pour assurer l’acceptation des utilisateurs, quelle que soit l’application retenue.
Nous travaillons actuellement à la preuve théorique de la terminaison et de la correction de notre méthode de résolution. Il serait également nécessaire d’adresser le
problème de l’incomplétude des listes de préférences (problèmes de type SMI).
Le problème du mariage stable est un problème abstrait qui peut être instancié par
une large gamme d’applications pratiques comme l’affectation des projets à des étudiants. On peut penser également au covoiturage qui est un problème d’appariement
entre deux communautés : des conducteurs et des passagers. D’une manière plus générale, le problème SM est un cas particulier du problème d’appariement stable (Stable
Matching Problem). Parmi les extensions possibles, on compte : (i) le problème de colocation (roommate problem) qui consiste à partitionner un ensemble fini d’individus
en couples ou singletons ; (ii) la formation de coalitions où les individus sont partitionnés en fonction de leurs préférences sur les coalitions ; (iii) les marchés sociaux
où des liens peuvent être établis et les individus ont des préférences sur ces liens (voire
sur la structure entière du réseau). Afin de résoudre ce genre de problèmes, l’approche
centrée individu permet d’envisager des algorithmes adaptatifs, anytime et préservant
la privacité des préférences.
Remerciements
Nous remercions les membres du comité de programme des journées francophones
sur les systèmes multi-agents pour leurs commentaires et leurs encouragements.
Bibliographie
Bordini R., Hübner J., Wooldridge M. (2007). Programming multi-agent systems in AgentSpeak
using Jason. Hoboken, New York, United States, John Wiley & Sons Ltd.
Brito I., Meseguer P. (2005). Distributed stable matching problems. In P. van Beek (Ed.),
Principles and practice of constraint programming - CP 2005, vol. 3709, p. 152-166. Heidelberg, Germany, Springer-Verlag.
Brito I., Meseguer P. (2006). Distributed stable matching problems with ties and incomplete
lists. In F. Benhamou (Ed.), Principles and practice of constraint programming - CP 2006,
vol. 4204, p. 675-679. Heidelberg, Germany, Springer-Verlag.
Brito I., Meseguer P. (2007). Distributed forward checking may lie for privacy. In F. Azevedo,
P. Barahona, F. Fages, F. Rossi (Eds.), Recent advances in constraints, vol. 4651, p. 93-107.
494
RIA. Volume 26 – no 5/2012
Heidelberg, Germany, Springer-Verlag.
Dijkstra E., Scholten C. (1980). Termination detection for diffusing computations. Information
Processing Letters, vol. 11, no 1, p. 1-4.
Everaere P., Morge M., Picard G. (2011). Casanova : un comportement d’agent pour l’équité
des mariages préservant la privacité. In Actes des 19ème journées francophones sur les
systèmes multi-agents (JFSMA), p. 191-200. Toulouse, France, Cepaduès.
Gale D., Shapley L. S. (1962). College admissions and the stability of marriage. American
Mathematical Monthly, vol. 69, p. 9-14.
Gelain M., Pini M. S., Rossi F., Venable K. B., Walsh T. (2010). Local search algorithms
on the stable marriage problem: Experimental studies. In Proceedings of 19th european
conference on artificial intelligence (ECAI), p. 1085-1086. Amsterdam, NL, IOS Press.
Glize P., Picard G. (2011). Self-organisation in constraint problem solving. In G. Serugendo,
M.-P. Gleizes, A. Karageorgos (Eds.), Self-organizing software: From natural to artificial
adaptation, p. 347-377. Heidelberg, Germany, Springer-Verlag.
Knuth D. (1971). Mariage stables. Montréal, Canada, Les Presses de l’Université de Montréal.
Mitchell T. (1997). Machine learning. New York, NY, USA, McGraw-Hill.
Morge M., Mancarella P. (2010). Assumption-based argumentation for the minimal concession
strategy. In Proceedings of workshop on argumentation and multi-agent systems (ArgMAS),
vol. 6057, p. 114-133. Heidelberg, Germany, Springer-Verlag.
Moulin H. (2003). Fair division and collective welfare. Cambridge, Massachusetts, USA, MIT
Press.
Rao A. (1996). AgentSpeak(L): BDI agents speak out in a logical computable language. In
R. van Hoe (Ed.), Proceedings of 7th european workshop on modelling autonomous agents
in a multi-agent world (MAAMAW). New York, USA, Springer-Verlag.
Rosenschein J., Zlotkin G. (1994). Rules of encounter: designing conventions for automated
negotiation among computers. Cambridge, Massachusetts, USA, MIT Press.
Roth A. E., Oliveira Sotomayor M. A. (1990). Two-sided matching; a study in game-theoretic
modeling and analysis. Cambridge, England, Cambridge University Press.
Schelling T. (1978). Micromotives and macrobehavior. New York, USA, Norton & Co.
Yokoo M., Durfee E., Ishida T., Kuwabara K. (1998). The distributed constraint satisfaction
problem: Formalization and algorithms. IEEE Transactions on Knowledge and Data Engineering, vol. 10, p. 673–685.
Zavidovique B., Suvonvorn N., Seetharaman G. S. (2005). A novel representation and algorithms for (quasi) stable marriages. In Proceedings of 2nd international conference on
informatics in control, automation and robotics (ICINCO), p. 63-70. Barcelona, Spain,
INSTICC Press.