• Aucun résultat trouvé

5.9 Notre modèle d'interaction

5.9.2 Les cas d'exception

On analyse dans un premier temps les protocoles et les cas exceptionnels lorsqu'il qu'il y a un seul administrateur à un instant donné, et on généralisera cette étude à un nombre quelconque d'administrateurs simultanés.

Avec un seul administrateur

Un agent peut être à la fois administrateur et orant, notre protocole d'interaction permet en eet à un administrateur qui a besoin de faire eectuer une tâche par d'autres agents plus compétents ou disponibles par le biais d'un appel d'ore. Lorsque ce dernier a reçu tous les acquittements, qu'il soit porteur d'une proposition positive ou négative, cet administrateur sait qu'il détient toutes les propositions et qu'il peut commencer son évaluation. Prenons ici l'exemple classique des robots: ou un robot ayant trouvé un lon joue le rôle d'un administrateur. Lorsque ce dernier reçoit tous les acquittements, il doit choisir l'agent le plus proche du lon.

Exceptions et solutions

L'administrateur doit attendre toutes les réponses à son appel d'ore avant d'évaluer les propositions dans le but de mieux tenir compte de l'ensemble des potentialités du système en n'oubliant aucune ore, mais au prix de deux inconvénients majeurs : Tous les agents doivent répondre, même ceux qui ne sont pas à priori intéressés par l'appel d'ore. De ce fait, le réseau risque d'être saturé par une trop grande quantité de messages ne contenant que très peu d'information et portant uniquement la mention "pas intéressé". Un agent ne répond pas: Un agent en mauvais fonctionnement peut totalement blo- quer le système, de plus les agents sont emmenés à se retrouver dans des situations où leurs intérêts peuvent être contradictoires, ils sont alors en situations de conits. Ces situations proviennent essentiellement d'un problème d'accès à des ressources insusantes, buts incompatibles, compétences insusantes, etc. Il sut qu'il ne puisse pas envoyer une réponse pour que l'administrateur l'attende indéniment. Dans la (Fig. 5.14.(a)), Ag2 est en mauvais état de fonctionnement, l'administra- teur ne doit pas l'attendre indéniment.

Un agent tombe en panne: La défaillance d'un réseau au niveau d'un lien peut conduire à une partition du réseau (Fig. 5.14.(b)). Une panne aectant un agent peut pro- voquer l'arrêt total de ce dernier alors cet agent ne peut pas recevoir l'appel d'ore de l'administrateur et automatiquement il ne répond pas et il se trouve donc dans

Adm Ag1 Ag 2 Adm Ag 1 Ag2 (a) (b)

Fig. 5.14  Cas d'agent qui ne répond pas

la même situation précédente et que l'agent administrateur l'attende indéniment. Pour résoudre ces problèmes il ne faut pas demander aux agents de retourner de messages s'ils ne sont pas intéressés ou évidemment s'ils sont dans l'incapacité de le faire. Une autre solution consiste à ce que tous les agents soient mémorisés (avec ses propriétés qui expriment ses capacités) dans une structure de donnée globale appelée la table d'accointances conservée par un agent unique (Fig. 5.15 (a)). Si un agent intègre ou quitte le réseau ou encore il voit ses compétences modiées, il en informera le réseau en diusant l'information, et lorsqu'un administrateur a besoin d'eectuer une tâche. Il appelle cette table d'accointances et à partir d'elle, il est possible d'obtenir une liste de tous les agents présents, ayant une compétence dans un domaine bien déni. Mais le fait que cet administrateur s'adresse à tous les agents du réseau ne doit pas l'handicaper du coté temps. Pour cela, il faut qu'il rejette les propositions après un certain délai, appelé délai d'expiration.

Adm Ag1 Ag 2 TA Ag Adm 1 Adm 2 (a) (b)

Fig. 5.15  (a) Compétences d'agents (b) Cas de plusieurs administrateurs Un agent répond hors délai: Les propositions qui arrivent après la date d'expiration

seront rejetées même si l'agent possède la compétence susante à réaliser la tâche demandée. La solution est qu'il faut bien calibrer ce temps de réaction de manière à ce que la plus grande partie des propositions aient le temps de retourner à l'ad- ministrateur. Si trop de demandes arrivent après la date limitée, on augmente le temps de réaction et si on attend trop après la réception des dernières réponses on diminue ce temps. De ce fait, si les agents répondent tous avec le même temps de réponse, le système convergera vers une valeur bien adaptée.

Un agent n'accomplit pas ce qu'il est censé faire: Lorsqu'un agent B indique qu'il accepte une tâche et qu'il dispose des compétences nécessaires pour l'accomplir et que, pour des raisons quelconques (B se trouve dans un mauvais fonctionnement : un composant de B tombe en panne, etc.), B voit ses compétences modiées et n'ait plus la capacité d'accomplir la tâche T.

An de résoudre ce problème, il faut que B transmette son changement d'état et rompe le contrat avec l'administrateur qui mémorise que B ne sait plus faire T et relance l'appel d'ore à d'autres agents.

L'inuence des sous contractants:

Lorsqu'un orant X exécute une tâche T sous contrat avec un administrateur A, il peut être amené à décomposer cette tâche en sous tâches et ne pas être capable de réaliser certaines de ces sous-tâches lui-même. Alors il doit se comporter comme un administra- teur et relance un appel d'ore pour l'ensemble des sous-tâches T1,,Tn issues de la tâche

T. Un orant confronté à une telle situation peut n'aecter cet appel d'ore qu'après avoir reçu le contrat ou bien demander d'abord aux sous contractants de s'engager à eectuer ces tâches avant qu'il ne fasse lui-même des propositions à l'administrateur A. Évidement il s'agit d'un problème récursif et les sous contractants peuvent être amenés à faire appel à des sous-contractants et ainsi de suite.

Avec plusieurs administrateurs

C'est le cas où plusieurs administrateurs peuvent travailler en même temps et donc émettent leurs appels d'ore simultanément (Fig. 5.15 (b)). Les administrateurs de tâches n'ont pas généralement d'idées sur les connaissances locales des autres administrateurs. En eet qu'à cause de la localité du processus, les agents subissent trois types d'igno- rances :

 L'ignorance temporelle: elle provient du fait que les orants ne connaissent que les appels d'ore déjà reçus et non ceux qui sont sur le point d'arriver.

A1 A2 Ag1 75 60 Ag2 60 20

 L'ignorance spatiale: provient de l'incapacité pour les administrateurs de savoir quels sont les autres appels d'ore en cours et pour les orants de connaître les autres propositions. par exemple : Dans le tableau 5.1, à la réception des propo- sitions, l'administrateur A1 choisira normalement Ag1, car sa proposition semble

plus intéressante que celle de Ag2, et de même, A2 choisira Ag1 puisque sa propo-

sition dans ce cas est aussi bien meilleure que celle de Ag2, de ce fait Ag1 va être

énormément chargé pendant que Ag2 sera inactif.

 L'ignorance sur les charges: est due à ce que les orants ne reconnaissent pas les charges de travail des autres agents. De ce fait, un agent qui travaille peut être amené à gagner devant un autre dont la charge est presque nulle. Pour remédier à ce problème, les agents doivent disposer d'informations portant sur les charges des autres, de manière à modier leur proposition.

Documents relatifs