• Aucun résultat trouvé

N´ egociation par approche sociale : g´ en´ eralit´ es

3.3 N´ egociation h´ et´ erarchique entre agents

3.3.1 N´ egociation par approche sociale : g´ en´ eralit´ es

a notre probl`eme comme nous le verrons plus bas. Avant de l’adapter, nous allons dans un premier temps pr´esenter cette approche sociale dans le contexte auquel elle a ´et´e appliqu´ee.

3.3.1 N´egociation par approche sociale : g´en´eralit´es

La n´egociation par approche sociale a ´et´e introduite par [Rey et al., 2013] pour des syst`emes manufacturiers guid´es, c’est–`a–dire lorsque les produits sont transport´es `a l’aide d’un syst`eme de convoi (navettes par exemple) o`u les temps de transport entre ressources sont fixes. De plus, comme les entit´es transportant les produits ne sont pas limit´ees par la port´ee de communication, les informations de tous les produits en cours de production sont connues.

Approximativement parlant, le concept de cette n´egociation permet de trouver de “bonnes” solutions pour le syst`eme global, qui sont aussi “bonnes” pour les objectifs individuels des agents. L’avantage de cette approche sociale est que les produits (agents) n’ont pas besoin de connaˆıtre les objectifs

individuels des autres ; juste un indicateur de performance leur donne des informations sur l’efficacit´e pour atteindre leur but.

Pour une architecture avec Ni agents (ou produits), qui communiquent tous les uns avec les autres, on d´efinit le facteur social actuel d’un agent i comme suit :

sfi =

1 + coshπ·1− |IPi−OPi| max(|IPi|,|OPi|)

i

2 (3.3.1)

o`u IPi et OPi sont respectivement les performances individuelles et comparatives actuelles de l’agent i d´efinies par : IPi = ddi− cti ddi (3.3.2) OPi = 1 N− 1 N X j=1 j6=i IPj (3.3.3)

La variable ddi repr´esente l’´ech´eance du produit (et non de l’op´eration en cours). La variable cti est le temps de traitement actuel du produit, ce qui peut ˆetre caract´eris´e par la position (temporelle) du produit, en termes d’op´erations, par rapport `a son ´evolution dans la production. Comme d´efinies dans [Rey et al., 2013], les performances sont appel´ees “bonnes” quand IPi< 0.3, “mauvaises” lorsque IPi > 0.7 et “moyennes” sinon.

Le facteur social, permettant de fixer l’ordre de priorit´e parmi les agents, a trois cat´egories de comportements selon sa valeur :

´

Ego¨ıste : Ce comportement, repr´esent´e par sfi < 0.25 permet aux agents d’avoir un haut–niveau de priorit´e lorsqu’ils sont plus loin de leur objectif comparativement aux autres.

Altruiste : Inversement au comportement ´ego¨ıste, l’altruisme se traduit par sfi> 0.75. Il permet aux agents proches de leur objectif, d’avoir un niveau de priorit´e plus bas que les autres.

Coop´eratif : Lorsque le comportement d’un agent n’est ni ´ego¨ıste, ni altruiste, il est dit coop´eratif.

Afin de fixer le m´ecanisme de priorit´e, un agent i a un niveau de priorit´e plus haut qu’un ou plusieurs autres agents j s’il a un facteur social plus bas (i.e. sfi < sfj).

Notons qu’il peut paraˆıtre ´etrange de parler d’altruisme pour des agents (ou robots). Ce terme est utilis´e ici comme antonyme d’´ego¨ıste et permet de d´ecrire un comportement qui permet `a l’agent de prendre des d´ecisions qui sont b´en´efiques pour les objectifs des autres agents, mˆeme si cela n’a pas d’avantages apparents pour son propre objectif. N´eanmoins, les comportements altruistes peuvent ˆetre probl´ematiques pour les agents car ils peuvent perdre de vue leur(s) objectif(s) individuel(s). Pour pallier ce probl`eme, le facteur social ne peut ˆetre plus grand qu’un seuil, not´e sfmax,i afin d’empˆecher

des comportements altruistes inattendus lorsque les performances individuelles sont mauvaises. Par cons´equent, le facteur social devient, selon [Rey et al., 2013] :

sfi= min  

1 + coshπ·1− |IPi−OPi| max(|IPi|,|OPi|)

i

2 , sfmax,i

 (3.3.4)

avec le seuil sfmax,i = sfi|OPi=1. La Fig. 3.2 illustre l’´evolution du facteur social en fonction des performances comparatives pour quatre performances individuelles fix´ees. Pour les performances fix´ees sur cette figure, plusieurs points sont `a noter :

• Lorsque les performances individuelles sont bonnes (i.e. IP = 0.17), l’agent sera ´ego¨ıste (i.e. a plus de chance d’avoir une priorit´e haute) si la majorit´e des agents a de bonnes performances (i.e. OP < 0.3). Sinon, lorsque la majorit´e des agents ont des performances moins bonnes voire mauvaises, il sera altruiste (si OP > 0.5) ou coop´eratif. Par cons´equent, un agent avec de bonnes performances a plus de chance d’ˆetre altruiste, permettant ainsi aux autres agents d’avoir un niveau de priorit´e plus haut que lui.

• Si les performances sont moyennes (par exemple IP = 0.54 ou IP = 0.38), l’agent sera soit coop´eratif soit ´ego¨ıste : coop´eratif lorsque la plupart des autres agents ont des bonnes ou mauvaises performances, ´ego¨ıste si la plupart des agents ont des performances moyennes. Un agent avec des performances moyennes peut ˆetre ´ego¨ıste s’il y a autant d’agents avec de mauvaises performances que d’agents avec de bonnes performances. Ceci est dˆu au fait que les performances comparatives sont d´efinies comme une moyenne des performances individuelles des autres agents. Un agent avec des performances moyennes sera principalement coop´eratif. De plus, il ne peut ˆetre altruiste grˆace au seuil sfmax,i.

• Un agent avec de mauvaises performances (i.e. IP = 0.82) ne peut ˆetre qu’´ego¨ıste par rapport aux autres. Ceci vient principalement du seuil qu’on lui a impos´e. Ainsi, si la plupart des agents ont de plus bonnes performances, son facteur social sera ´egal au seuil. L’agent en question sera encore plus ´ego¨ıste si la plupart des autres agents sont aussi ´ego¨ıstes.

En utilisant la mˆeme figure, un exemple est donn´e pour quatre agents 1, 2, 3 et 4 ayant respectivement les performances individuelles fix´ees `a IP1 = 0.17, IP2 = 0.38, IP3 = 0.54 et IP4 = 0.82. Les performances comparatives, obtenus par l’´equation (3.3.3), sont pour chaque agent OP1 = 0.58, OP2 = 0.51, OP3 = 0.46 et OP4 = 0.36. Par cons´equent, les facteurs sociaux respectifs, donn´es par l’´equation (3.3.4), sont sf1= 0.803, sf2 = 0.152, sf3 = 0.058 et sf4 = 0.078 et permettent de d´efinir l’ordre de priorit´e. On peut voir que l’agent 4, ayant les plus mauvaises performances, n’a pas le niveau de priorit´e le plus haut car sf4 > sf3. Ceci est normal puisque les performances globales (moyenne des performances individuelles) sont moyennes, impliquant un avantage aux agents ayant d´ej`a des

Figure 3.2 – ´Evolution du facteur social en fonction des performances comparatives

performances individuelles moyennes tels que les agents 2 et 3 qui sont ´ego¨ıstes dans cet exemple. L’agent 1 est altruiste car les performances des autres agents sont plus mauvaises.

On en vient `a se demander si le fait que l’agent 4 n’ait pas le niveau de priorit´e le plus haut pose probl`eme. Pour la probl´ematique sur laquelle ce facteur social a ´et´e appliqu´ee initialement [Rey et al., 2013], ceci ne pose pas probl`eme car l’objectif est une production juste `a temps o`u l’on peut se permettre de retarder le traitement d’un produit jusqu’`a un certain point. Pour notre probl`eme, il serait pr´ef´erable qu’un agent avec de mauvaises performances ait plus de chance d’ˆetre le plus prioritaire. Par cons´equent, il est n´ecessaire d’adapter le facteur social pour favoriser l’objectif individuel des agents.