Le partage des tâches est nécessaire pour garantir un travail
coopératif consistant et éviter les conflits et les redondances. Pour
partager les tâches à accomplir entre les agents d'un système, il est
tout d'abord nécessaire de subdiviser le travail nécessaire en tâches
distinctes. Bien souvent, ce découpage est effectué manuellement par
le concepteur du système. Le partage de tâches consiste ensuite à
trouver un schéma où des agents sont mis en correspondance avec des
tâches. Nous dégageons deux types de partage de tâches: l'approche
centralisée et l'approche dynamique.
L'approche centralisée peut emprunter deux voies différentes: la voie
hiérarchique, où des agents possèdent une autorité directive sur
d'autres et peuvent leur demander d'accomplir des tâches. Ces agents
décideurs choisissent l'agent le plus à même d'accomplir une
tâche en fonction de ses croyances et de ses buts. Une autre voie est
la voie de la médiation, typique des
systèmes dits égalitaires. Un ou plusieurs agents sont désignés comme
médiateurs et mettent en correspondance les agents demandeurs
et les agents fournisseurs. Ils décident de confier une tâche à un
agent fournisseur en fonction des requêtes qui lui ont été faites par
les agents demandeurs.
Une approche dynamique peut utiliser un mécanisme d'accointances, où
chaque agent possède une matrice mettant en correspondance les
compétences requises par les tâches à effectuer et les agents possédant
ces compétences. Lorsqu'un agent détermine qu'un autre agent est
capable de prendre en charge une tâche, il lui demande de l'effectuer
(allocation directe), ce que ce dernier peut refuser. Si un agent ne
peut déterminer de destinataire pour une de ses tâches, il délégue ce
choix à son réseau d'accointances, c'est-à-dire un ensemble
d'agents qui à leur tour vont tenter de trouver des agents pour
effectuer cette tâche (allocation par délégation).
Un autre mécanisme dynamique est basé sur la
métaphore du contrat, qui peut être mise en uvre pour partager les
tâches. Un agent ayant besoin de voir une tâche accomplie émet un
appel d'offres à destination de tous les agents qu'il croit pouvoir
accomplir cette tâche. Les agents qui reçoivent cet appel et qui
peuvent effectivement y répondre envoient une proposition à
l'émetteur, qui choisit la proposition la plus adaptée à ses besoins.
Ce système présente l'avantage de la simplicité mais multiplie les
échanges de messages entre les agents du système et implique un
mécanisme de comparaison et de choix des offres.
DURFEE et LESSER proposent dans [#!durfee-1991!#] un modèle apportant une dimension dynamique et une approche à base de plans du mécanisme du contrat et du partage de tâches. Ce modèle considère qu'un contrat n'est qu'un plan: l'engagement qui lie deux parties lors de l'établissement d'un contrat est équivalent au partage d'un plan dont l'objet serait celui du contrat. Ainsi, si l'un des agents d'un système à besoin qu'une tâche soit accomplie (ce modèle s'applique aussi au partage de ressources), il propose un plan à ses voisins. Si un voisin décide de lui venir en aide, il accepte le plan et le partage avec l'émetteur. Les agents peuvent de plus proposer des aménagements aux plans soumis (contre-plans), voir annuler un plan en cours d'exécution s'il ne correspond plus à leurs buts internes (voir la section , cha:cooperation-plans).