Réorganisation et auto-organisation dans les systèmes multi-agents

ted works may be structured along two main points of view ..... règles sociales et des schémas prédéfinis. Des ... SMA orientés organisation (en bas à droite) :.
264KB taille 25 téléchargements 108 vues
Réorganisation et auto-organisation dans les systèmes multi-agents a

G. Picarda

J. F. Hübnera

O. Boissiera

M.-P. Gleizesb

[email protected]

[email protected]

[email protected]

[email protected]

Département SMA, Centre G2I, Ecole nationale supérieure des mines de Saint-Etienne, France b

Institut de Recherche en Informatique de Toulouse, Université de Toulouse, France

Résumé Récemment, les aspects sociaux et organisationnels sont devenus des sujets de recherche majeurs en systèmes multi-agents (SMA). Les travaux conduits peuvent être déclinés suivant un point de vue centré agent (ACPV) et un point de vue centré organisation (OCPV), dans lesquels la notion centrale de dynamique des organisations est considérée. Dans ACPV, cette notion correspond à des phénomènes ascendants et émergents qui sont regroupés sous le terme général d’auto-organisation. Dans OCPV, cette notion d’organisation nourrit un large panel de travaux relatifs à la réorganisation formelle et descendante d’organisations préexistantes installées dans le SMA. Dans cet article, nous proposons de positionner ces approches afin de construire une vision synthétique de la dynamique des organisations dans les SMA. Mots-clés : Réorganisation, auto-organisation Abstract In the last years, social and organisational aspects of agency have become a major issue in multi-agent systems’ research. The conducted works may be structured along two main points of view : an agent centred point of view (ACPV) and an organisation centred point of view (OCPV). In both approaches the central notion of multi-agent organisation dynamic is considered. In ACPV, this notion leads to a kind of informal, bottom-up, emergent phenomena that we regroup under the general term of selforganisation. In OCPV, this notion gives birth to a huge set of works related to the reorganisation of the formal, top-down, pre-existent organisations that are installed in the MAS. In this paper, we propose to position these two approaches to build a comprehensive picture of organisation dynamic in multi-agent systems. Keywords: Reorganisation, self-organisation

1

Introduction

Notre but dans cet article est d’étudier et de proposer une vue synthétique des moyens de rendre des organisations multi-agents adaptatives à la

dynamique, à l’ouverture et aux environnements à grande échelle. Dans le domaine des systèmes multi-agents (SMA), les communautés SASO et COIN s’intéressent principalement à de tels sujets. La communauté SASO 1 (Self-Adaptive and Self-Organizing systems) étudie les organisations sous l’angle des phénomènes émergents dans les systèmes complexes. Dans le contexte des SMA, nous pouvons caractériser ce point de vue comme étant centré agent (ou agent-centred point of view – ACPV) [30]. En effet, les concepteurs de tels systèmes s’intéressent principalement aux parties du système à construire, à savoir les agents. En spécifiant et concevant des comportements locaux et des interactions pairà-pair adéquats, la fonctionnalité globale du système est le résultat des interactions complexes et des dynamiques au sein de la société d’agents. Cependant, une telle approche de conception introduit souvent des phénomènes imprévisibles et non vérifiables a priori, le comportement global étant plus qu’une simple juxtaposition de comportements d’agents. La communauté COIN 2 (Coordination, Organisation, Institutions and Norms in agent systems) a pour but l’ingénierie de mécanismes effectifs de coordination et de régulation dans le cadre de la conception de SMA ouverts et complexes. Contrairement à la communauté SASO, COIN se focalise principalement sur un point de vue centré organisation (organisation centred point of view – OCPV), dans lequel le concepteur spécifie d’une part l’organisation et les schémas de coordination dans leur intégralité et d’autre part les comportements des agents vis-à-vis de cette organisation. En fonctionnement, les agents peuvent considérer les contraintes définies par l’organisation comme étant obligatoires ou comme étant de simple propositions pour la coordination de leurs actions collectives. Les systèmes définis selon OCPV peuvent donc assurer certains invariants comportementaux ou de performance provenant des spécifications de l’organisation. Comme nous pouvons le voir, le terme orga1. http://www.saso-conference.org/ 2. http://www.pcs.usp.br/~coin/

nisation est à l’intersection de ces deux approches. Cet article vise principalement à clarifier les différences et les points communs de ces deux visions, en nous focalisant sur le processus d’organisation. Nous utiliserons dans cet article, le terme réorganisation pour désigner la mise en œuvre de ce processus selon l’OCPV et les approches descendantes – ou top-down, du niveau macro (organisation) vers le niveau micro (agents). Nous utiliserons le terme d’autoorganisation pour désigner la mise en œuvre de ce processus selon le point de vue ACPV et des approches ascendantes – ou bottom-up, du niveau micro vers le niveau macro – où, de facto, une adaptation ou une modification de l’organisation est émergente. Nous étudions différentes convergences et complémentarités possibles entre ces deux processus. Dans la section 2, nous fournissons en premier lieu une vue synthétique du concept d’organisation dans les SMA. Cette section dresse également une comparaison des deux principaux points de vue sous l’angle de l’adaptation et de la vérification. La section 3 analyse le processus d’adaptation des organisation dans ACPV et OCPV, afin de proposer dans la section 4 une définition des concepts d’auto-organisation et de réorganisation. Enfin, la section 5 conclut cet article avec quelques perspectives.

2

Vision synthétique

Il manque actuellement une définition claire et consensuelle de ce qu’on nomme « organisation » dans les SMA. Sa signification varie souvent entre deux visions basiques [29] : (i) une entité collective ayant sa propre identité qui est représentée par (mais pas identique à) un groupe d’agents exhibant des structures sociales hautement formalisées [40], (ii) un schéma ou structure stable d’activités conjointes qui peut contraindre ou affecter les actions et les interactions des agents pour un but donné [6]. Comme nous pouvons le voir, dans le sens général, une organisation réfère à un schéma de coopération pouvant être plus ou moins (voire pas du tout) formalisé. Comme en sociologie [2], elle peut concerner l’expression d’une division du travail, d’une distribution de rôles, d’un système d’autorité, d’un système de communication, ou encore d’un système de contribution-rétribution. Ce panel de sujets peut également être étendu au savoir, à la culture, à la mémoire ou à l’histoire du collectif [19]. L’approche autopoïétique de son côté voit une organisation comme un réseau de processus se régénérant et définissant le système en tant qu’entités concrètes [34]. C’est ce que [36] expriment en des termes différents lorsqu’ils proposent unedéfinition d’orga-

nisation, du point de vue auto-organisationnel, à trois niveaux : (i) un ordre (ou mesure) sur les organisations, i.e. une application de l’ensemble des organisations vers l’ensemble des nombres réels ; (ii) un processus dans un système dans lequel la mesure précédente croît avec le temps (de moins organisé à plus organisé) ; (iii) la structure résultant de cette précédente évolution. Toutes ces visions ne sont pas mutuellement exclusives et ont donné lieu à différentes approches dans le domaine des SMA. Comme dans [3], nous nous focalisons sur quelques caractéristiques afin de construire une vision synthétique. Tout d’abord, nous prendrons en compte le processus de définition de l’organisation des agents, puis nous considérerons sa représentation au sein des agents. Comme toute classification, notre proposition a ses limites et doit être considérée comme une grille d’analyse des différents travaux et non comme une vision cloisonnée et figée des organisations en SMA. De plus, nous nous intéressons ici aux moyens de manipuler une organisation, et non à sa forme. Une analyse des organisations d’un tel point de vue se retrouve dans [17]. Enfin, le concepteur peut parfaitement avoir une vision agent ou une vision organisation, mais l’observateur – juge final du système – n’utilise pas toujours la même vision. 2.1

ACPV vs. OCPV

Le premier axe de la grille est une extension des points de vue centré agent et centré organisation initialement proposés dans [30]. Le point de vue centré agent considère les agents comme étant le “moteur” de l’organisation. Les organisations n’existent qu’en tant que phénomènes émergents observables qui établissent une vision, globale, objective et ascendante, des schémas de coopération entre les agents (voir première ligne dans la Fig. 1-ab). Par exemple (cas (a)), dans une colonie de fourmis, aucune contrainte comportementale et organisationnelle n’est explicitement et directement définie dans les fourmis [15]. L’organisation est le résultat d’un comportement collectif émergent conséquence de la façon pour les agents d’agir et d’interagir dans un environnement dynamique commun [35]. Un point de vue similaire peut être considéré dans les différentes approches réactives de la littérature [39]. D’un point de vue plus cognitif (cas (b)), les études sur la formation de coalitions définissent des mécanismes (au sein des agents, comme le raisonnement social [41], par exemple), pour construire les schémas de coopération, structurant et aidant les agents dans leurs activités collaboratives, lors d’un processus ascendant.

Inconscience de l’organisation

Conscience de l’organisation

Centré agent

(a)

(b)

(c)

(d)

Centré organisation

Spécification de l’org.

Représentation locale

Entité de l’org.

Organisation observée

Concepteur / Observateur Ascendant

Descendant

F IGURE 1 – Vue synthétique : (a) SMA émergents ; (b) SMA basés sur les coalitions ; (c) Ingénierie orientée agent ; (d) SMA orientés organisation. Le concepteur/observateur peut être le développeur/utilisateur (cas exogène) ou un ensemble d’agents (cas endogène). Le point de vue centré organisation est orienté vers la direction opposée : les organisations existent en tant qu’entités explicites du système (voir la deuxième ligne dans la Fig. 1-c-d). Il souligne l’importance d’une dimension supraindividuelle et l’usage de primitives différentes de celles des agents. Un schéma de coopération est fixé par le concepteur (ou par les agents euxmêmes) et installé de manière descendante afin de contraindre ou de définir les comportements des agents. Notons que l’observateur du système peut obtenir une description de l’organisation du système. Par exemple, dans une école, on dispose de documents établissant comment cet établissement est organisé. Bien sûr, en plus de la description explicite de l’organisation, l’observateur peut également observer l’organisation réelle de l’école qui est possiblement différente de l’organisation formellement définie. 2.2

Représentation de l’organisation

En considérant l’architecture des agents, nous pouvons affiner ces deux points de vue en suivant l’axe orthogonal sur la capacité des agents à se représenter et à raisonner sur l’organisation. Dans la première colonne de la Fig. 1, les agents ne connaissent rien à propos de l’organisation. Dans le cas (a) les agents ne représentent pas l’organisation, bien que l’observateur puisse identifier une organisation émergeant des interactions entre agents. Dans un sens, Ils ne sont pas conscients d’appartenir à une organisation. Ils peuvent néanmoins avoir une représentation locale, interne et partielle des autres agents.

Dans le cas (c), l’organisation existe comme un schéma spécifié et formalisé, construit par le concepteur des agents, mais les agents ne savent rien de cette organisation et ne peuvent donc raisonner sur ce sujet. Ils s’y conforment simplement comme si les contraintes organisationnelles étaient codées en dur en eux – par exemple, le SMA résultant d’un déroulement d’une méthode de développement orientée agent où le code des agents est généré à partir de spécifications organisationnelles [1]. Dans la seconde colonne, nous considérons les cas où les agents ont une certaine représentation ou conscience de l’organisation dans laquelle ils évoluent. Dans le cas (b), chaque agent possède une représentation des schémas de coopération qu’il suit afin de décider que faire – par exemple, les réseaux de dépendances pour la formation de coalitions [41]. Cette représentation locale est obtenue par les perceptions, les communications ou des raisonnements explicites (comme le raisonnement social dans [41]) car il n’y a, a priori, dans une vue centrée agent, aucune représentation globale explicite de l’organisation définie. Les agents sont capables de raisonner sur l’organisation et de l’utiliser afin d’initier des coopérations avec d’autres agents. Toutefois, les frontières entre ces différentes catégories sont floues et perméables. Dans la littérature, certaines approches organisationnelles pour les SMA correspondent à des cas de la Fig. 1, alors que d’autres s’étendent sur plusieurs cases. Les propositions concernant les approches de réorganisation pour les organisations formelles peuvent combiner les cas (b) et (d)

dans le sens où les agents utilisent leurs propres mécanismes internes pour adapter l’organisation imposée par le système. Les manipulations ascendantes ou descendantes d’une organisation peuvent être réalisées soit de manière endogène (par les agents appartenant à l’organisation euxmêmes) ou de manière exogène (par une entité, humain ou agent, hors du système). 2.3

Positionnement des travaux en SMA

Pour être plus clair, nous pouvons positionner quelques SMA concrets et approches existantes dans la grille. SMA à organisation émergente (en haut à gauche) : ici les agents sont incapables de raisonner sur l’organisation puisqu’elle n’est pas modélisée. Les agents s’auto-organisent de pairà-pair ou en utilisant des communications indirectes via l’environnement. Comme exemple, nous pouvons citer les swarm systems [36]. Les agents peuvent aussi avoir une représentation locale d’autres agents comme dans certains SMA adaptatifs (AMAS) [21] et plus généralement, tous les travaux provenant de la communauté SASO. SMA basés sur les coalitions (en haut à droite) : ici les agents sont toujours incapables de raisonner sur l’organisation globale mais peuvent construire des modèles propres, plus ou moins détaillés, des interactions et des relations de dépendance avec leurs voisinage en respectant des règles sociales et des schémas prédéfinis. Des exemples classiques de telles approches sont les SMA basés sur le contract net protocol [42], dans lesquels les agents se construisent des représentations des autres agents au fil des interactions et des expériences avec ces derniers. Dans ce cas l’organisation est une composition de toutes ces représentations locales. De manière plus élaborée, les coalitions multi-agents [41] raisonnent directement sur des schémas de coopération. Ingénierie orientée agent (en bas à gauche) : cette catégorie d’approches considère l’organisation durant la conception. Les organisations sont spécifiées avant l’implémentation des agents. Des exemples de telles approches se retrouvent principalement dans la communauté AOSE (Agent Oriented Software Engineering) qui propose de nombreuses méthodes orientées (multi-)agent se focalisant sur les modèles organisationnels comme dans MaSE [12], INGENIAS [37] ou bien ASPECT pour les approches holoniques basées sur CRIO [10]. SMA orientés organisation (en bas à droite) : ces approches sont influencées à la fois par l’ingénierie orientée agent et le raisonnement so-

cial, dans le sens où les organisations sont manipulées par le concepteur pour spécifier le système à concevoir et par les agents ont une représentation de cette organisation et peuvent effectuer des actes organisationnels et ainsi potentiellement modifier l’organisation. AGR [18], TAEMS [31], STEAM [45], MOISE+ [25] ou ISLANDER[16] en sont de bons exemples 2.4

Vérification vs. adaptation

Revenons à présent aux motivations principales de l’existence des deux points de vue présentés. D’un côté, la communauté SASO vise à développer des systèmes adaptatifs en s’inspirant de systèmes naturels, biologiques et physiques présentant de réelles capacités d’adaptation et d’autonomie. Cependant, de telles propriétés soulèvent également quelques problèmes majeurs de conception : comment assurer que le système convergera vers un état spécifié et non s’adapter et changer constamment ? D’un autre côté, la communauté COIN s’intéresse principalement à la définition de schémas de coordination et d’organisation, à des normes. Dans certains travaux, une attention particulière est mise sur la capacité à vérifier dans ces propositions le comportement du système vis-à-vis des schémas spécifiés. Néanmoins, un tel modèle a priori de l’organisation représente une limitation certaine du potentiel d’adaptation, commune aux approches de model checking : comment peut-on modéliser toutes les changements d’organisations possibles au moment de la conception ? Comme nous le voyons ces deux points de vue se focalisent sur deux extrema opposés d’un même spectre allant de l’adaptation totale à la vérification totale. Entre ces deux extrêmes, des moyens termes peuvent être atteints : des systèmes dans lesquels des vérifications partielles peuvent être menées, des systèmes dans lesquels de la vérification totale est réalisable sous certaines hypothèses. Nous allons nous intéresser à identifier les complémentarités afin de dresser des perspectives d’unification des approches auto- et réorganisationnelles.

3

Où sont l’auto- et le ré- dans l’adaptation d’organisations ?

Dans cette section, nous analysons différents aspects concernant les deux principales approches pour l’adaptation des organisations – la réorganisation et l’auto-organisation – au travers des questions quoi, qui, pourquoi, quand et comment.

3.1

Qu’est-ce qui est changé ?

Changer l’organisation peut simplement impliquer des changements au sein du système à différents niveaux (agents, coalitions, etc.) ou en différentes mesures (changement de poids, de topologie, etc.). Ces changements peuvent dépendre fortement du point de vue adopté (ACPV ou OCVP) et sur les capacités organisationnelles des agents (étant conscients ou non de l’organisation). Dans les SMA à organisation émergente, l’organisation observée peut être changée différemment : configuration spatiale, voisinages, différentiation/spécialisation des individus, etc. Dans de nombreuses approches, la configuration spatiale contraint fortement les capacités et le potentiel que le système peut exhiber. Par conséquent, l’adaptation du système s’effectue en changeant la cette configuration de telle sorte que le système se comporte de manière plus adaptée à la pression de l’environnement perçue ou subie. Par exemple, dans un mécanisme auto-construit, les composants mécaniques (agents) changent eux-mêmes leurs connexions à d’autres composants afin d’optimiser une fonction de trajectoire, qui peut changer en cours de fonctionnement, sans être conscients de la forme globale, donc de l’organisation, du mécanisme [4]. Ce genre d’adaptation se retrouve en robotique collective où la position spatiale des agents est fortement liée aux plans qu’ils doivent exécuter [11]. L’organisation observée peut également être modifiée en changeant les partenaires des agents ou la façon avec laquelle ils interagissent entre-eux. On retrouve de tels mécanismes de régulation dans les systèmes épidémiques (gossip), les marchés (créationdestruction) ou bien les communautés d’intérêts basées sur la confiance. D’autres exemples de mécanismes auto-organisateurs sont également présentés dans [13, 23]. Adapter un système peut aussi être effectué à travers des changements de tâches, de buts à atteindre. Dans les approches bio-inspirées, l’auto-différenciation installe une sorte d’allocation de rôles (du point de vue de l’observateur) ascendante et implicite [15]. Dans les SMA basés sur les coalitions, la topologie de l’organisation est exprimée en terme de configurations sociales locales : les voisinages, les coalitions exprimées en termes de pouvoirs, de dépendances, ou d’engagements sociaux. L’organisation peut ainsi être modifiée en changeant les partenaires avec lesquels les agents coopèrent ou leur manière d’interagir. Par exemple, les agents modifient leur façon d’inter-

agir en fonction d’une évaluation de la croyance qui est calculée en utilisant des expériences passées et des opinions provenant d’autres agents [7]. Ce mécanisme local de régulation guide le système vers un ordre social. Les coalitions sont également construites et détruites en utilisant de tels mécanismes dans les places de marché [9]. Dans des solveurs distribués de problèmes sous contraintes, une coalition est définie/modifiée à partir d’une élection dépendant de l’état courant du voisinage (par exemple, l’agent le plus contraint est élu pour proposer une solution) ou de l’avancement dans la résolution [33]. Pour les SMA orientés organisation, comme il existe une spécification explicite, le changement d’organisation peut être considéré à deux niveaux : (i) modification de la définition même l’organisation et (ii) modification de l’allocation des rôles aux agents. Un exemple du premier cas se retrouve dans les travaux de [26], dans lesquels les agents sont capables d’évaluer leur organisation, d’identifier que le problème est causé par la définition ou spécification courante, et ainsi de décider de modifier la spécification. Ce genre de changements implique normalement des changements dans l’allocation des rôles. Dans le second cas, la réorganisation peut consister en la reproduction et la composition d’agents afin de réassigner les rôles joués par les agents [27]. Les raisons pour changer l’organisation proviennent de la volonté d’obtenir une structure adaptée à l’environnement et que les tâches soient adaptées aux agents présents. Un autre exemple se retrouve dans [22] où l’organisation est changée par l’entrée de nouveaux agents jouant des rôles particuliers. Un nouvel agent est accepté seulement lorsqu’il augmente l’utilité du système dans son intégralité. La génération de structures organisationnelles a également été proposée, comme le résultat de perspectives locales [20], globales [8], et hybrides. D’un point de vue ingénierie, le concepteur peut changer le modèle du système à plusieurs niveaux. A un bas niveau, l’agentification peut être changée, et ainsi l’organisation. A un plus haut niveau, le modèle de l’organisation peut également être modifié en ajoutant de nouveaux rôles, groupes, tâches, etc. 3.2

Quand et qui change l’organisation ?

Une organisation peut être modifiée à différents moments du cycle de vie du système. Ce processus peut être initié par différents acteurs. La décision d’initier le processus peut être soit statique, soit dynamique [26]. Dans le premier cas, le processus est démarré en fonction de critères prédéfinis lors de la spécification de l’organisa-

tion. Dans le second cas, les processus de réorganisation est une conséquence du fonctionnement du système. Cela signifie que si les agents ne vérifient pas certains critères (but, performance, etc.) l’organisation est changée. Le processus est statique et réalisé par le concepteur et c’est uniquement lors de la conception que les organisations sont adaptées. Seuls les concepteurs peuvent détecter, en utilisant des outils de model checking, de prototypage rapide ou de simulation, comme dans IODA [28], leur permettant d’exhiber des comportements globaux non désirés. Les agents ne sont alors pas acteurs de cette adaptation de l’organisation, mais seulement une implémentation du modèle organisationnel que le concepteur spécifie. Le processus est dynamique quand l’organisation est modifiée cours de fonctionnement. Cette modification peut être réalisée par une entité extérieure au SMA (concepteur, autre système) qui agit sur les agents en train de s’exécuter ou afin de concevoir des agents et/ou des systèmes autonomes, la décision est déléguée aux agents eux-mêmes. Par exemple, les agents au sein d’un système auto-organisateur changent indirectement l’organisation en réponse à un changement environnemental détecté au niveau des agents. Ainsi, dans l’exemple d’un mécanisme physique auto-construit, les composants mécaniques peuvent changer leurs pondérations (tension, longueur, etc.) lorsqu’ils reçoivent un feedback extérieur positif ou négatif (par le biais de mécanismes de propagation), concernant la distance à la trajectoire-objectif [4]. Une coalition réagit également aux changements détectés au niveau de la coalition, par pression sociale (par exemple, une coalition a reçu une opinion négative concernant son leader), et ainsi change l’organisation (e.g. en changeant de leader) [32]. 3.3

Pourquoi et comment l’organisation change ?

Alors que nous pouvons identifier les différentes sortes d’objets ou artefacts modifiés en fonction du modèle organisationnel utilisé, nous pouvons également identifier certains types de processus de changement (pourquoi/comment) qui seront détaillés dans la suite de la section : (i) les changements prédéfinis, (ii) les changements contrôlés et (iii) les changements émergents. L’organisation doit être modifiée dès lors que l’organisation n’aide pas à l’atteinte du but social. En d’autres mots, l’organisation courante contraint les comportements des agents à des comportements qui ne permettent pas d’atteindre le but global. De telles situations peuvent survenir, par exemple, lorsque l’environnement, le but du

SMA et/ou les exigences de performances ont changé, lorsque les agents ne sont pas capables de bien jouer leurs rôles, lorsque une nouvelle tâche arrive alors que l’organisation n’est pas appropriée, etc. [14] définissent le « quand » se réorganiser comme étant lié à l’utilité de l’organisation (succès des interactions, des rôles et de la structure) et à l’utilité des agents (différente pour chaque agent, dépendant de ses buts et production/consommation de ressources). Dans les AMAS [21], par exemple, l’organisation doit changer dès que le système n’est plus en adéquation fonctionnelle avec son environnement. Processus générique de changement d’organisation.

De manière générale, afin de modifier une organisation, nous pouvons identifier un processus générique qui sera implémenté différemment en fonction de l’approche suivie. Ce processus est normalement composé de deux phases – la surveillance (ou monitoring), et la réparation. Cette dernière phase suivant le type de SMA, peut être constituée des phases de conception (ou design), de sélection et d’exécution (ou d’implémentation) [43] ou uniquement des phases de sélection et d’exécution. Il peut s’inscrire dans un bouclage environnement-système : perception, processus de changement, action, et ainsi de suite. Les problèmes inhérents à ce processus et à l’approche choisie sont détaillés dans la suite de cette section. 1. La phase de surveillance ou monitoring est destinée à détecter les problèmes d’inadéquation entre le système, l’organisation ou les agents, et l’environnement. Quelle que soit l’entité responsable de cette surveillance (agent, organisation, entité externe), et donc quel que soit le niveau d’abstraction de cette détection (niveau macro ou niveau micro), il convient de définir des situations de non adaptation. 2. Une fois qu’un besoin de modification est détecté lors du monitoring, la phase de réparation met en œuvre un processus pour que l’organisation retrouve un fonctionnement le plus optimal possible et ce, en cours de fonctionnement du système. 3. Pour cela, la phase design vise à définir et à développer un ensemble d’alternatives possibles pour l’organisation courante, de manière ascendante ou descendante. 4. La phase de sélection détermine une des alternatives pour modifier l’organisation. Le principal problème est donc la définition de critères d’évaluation des propositions les plus prometteuses. 5. La phase d’exécution ou d’implémentation correspond à la mise en œuvre de l’alternative choisie précédemment.

Ici nous considérons que les changements sont déjà planifiés et exprimés, avec, entre autres, des modèles organisationnels temporels [5] par le concepteur. Par exemple, une équipe de football a prévu de changer de formation au bout de 30 minutes de jeu [44]. Dans cette approche, l’exécution du processus de changement est assez immédiat. Le monitoring est effectuée par les agents eux-mêmes ou une entité extérieure (par exemple, le coach de l’équipe de football consulte un timer pour connaître le temps pour la condition de déclenchement du changement). La phase de conception, qui détermine toutes ces conditions de déclenchement, n’est pas réalisée en cours de fonctionnement, puisque les conditions de déclenchement doivent être prédéfinies. Les phases de sélection et d’exécution sont immédiates, car les conditions de déclenchement vont de pair avec des actions prédéfinies, exécutables à la volée. Ici, le système ne sait pas quand l’organisation changera, mais connaît les conditions nécessaires de déclenchement d’un changement, qui sera effectué en suivant une procédure connue (par exemple, une équipe a un expert qui contrôle le processus de réorganisation). Ce processus peut être conduit de deux manières : (i) une approche endogène où un agent particulier (centralisation) ou les agents eux-mêmes (de manière décentralisée et coordonnée) prendront en charge la réorganisation ; ou (ii) une approche exogène où l’utilisateur du SMA, ou un système extérieur, contrôle le processus. Durant l’exécution d’une instance du système spécifié, l’entité responsable du changement de l’organisation (concepteur ou agent) peut détecter que l’organisation n’est pas adaptée pour cause de performances non adéquates, et ainsi peut modifier le modèle et la spécification pour améliorer les performances en programmant une organisation plus adaptée. La phase de monitoring identifie ici une situation où l’organisation actuelle n’est pas adaptée et ne satisfait pas les besoins du SMA. Le principal problème lors de cette phase est d’identifier si le but global ne sera pas atteint à cause d’une organisation courante inappropriée. De nombreuses autres raisons peuvent impliquer que le SMA n’accomplisse pas sa tâche globale (par exemple, le but est simplement impossible à atteindre). Dans certains cas, changer l’organisation n’est pas une solution. Même dans le cas où le problème est connu pour être résolu par un processus de réorganisation, le nouveau problème est d’identifier quelle partie de l’organisation a causé le problème afin de modifier l’organisation au bon niveau. La sous-partie de Changement prédéfini de l’organisation.

l’organisation responsable du problème peut être soit sa spécification (par exemple, l’ensemble des rôles jouables), soit l’instantiation courante de cette même spécification (par exemple, l’affectation des rôles à des agents). La réparation nécessite ensuite d’exécuter les phases design, de sélection et d’exécution. La phase de design vise ensuite à développer un ensemble d’alternatives possibles pour l’organisation courante. La conception de cet ensemble peut être (i) basée sur la recherche dans une bibliothèque d’organisations prédéfinies ou (ii) construite à la demande. Dans le premier cas, le problème est d’identifier quelle organisation prédéfinie est appropriée pour réparer l’échec survenu. Dans le second cas, il faut gérer la grande taille de l’espace de recherche (défini par le modèle organisationnel) pour une nouvelle spécification organisationnelle. Lors de l’exécution, il faut établir les moyens de changer l’organisation en cours d’exécution sans causer d’échecs. Par exemple, comment un agent gèrera-t-il le fait que le rôle qu’il jouait jusqu’alors soit retiré de la nouvelle spécification organisationnelle ? Que ferat-il des engagements qu’il avait pris pour ce rôle obsolète ? Dans la limite de nos connaissances, il n’existe actuellement pas de travaux répondant à ces problèmes. MOISE+ est un bon exemple d’une telle approche réorganisationnelle [26]. Ces travaux considèrent la structure (rôles, groupes) et le fonctionnement de l’organisation. Ils se concentrent sur le contrôle du processus de réorganisation présenté précédemment. De leur point de vue, la réorganisation est un processus coopératif en lui-même qui est effectué de manière endogène et décentralisée. Ce processus peut lui-même être le sujet d’une organisation dédiée composée d’une hiérarchie de rôles dédiés à la gestion de la réorganisation. Un autre exemple est [24], où un processus de réorganisation centralisé est utilisée, basé sur le langage de modélisation TAEMS et sur le diagnostic d’un sous-système expert chargé de détecter les défauts de l’organisation et d’assister à la création d’une solution. Des exemples d’autoorganisation contrôlée peuvent également se rencontrer dans certains solveurs SMA, dans lesquels des rôles prédéfinis sont jouables par les agents en fonction de l’avancement du processus de résolution [33, 38]. Les agents peuvent jouer différents rôles – médiateur [33] ou élu [38] – prédéfinis par le concepteur, à différents moments de la résolution. Dans de ce dernier cas, comme pour le changement contrôlé de l’organisation, le moment où l’organisation doit changer n’est pas prédéfini par le Changement émergent de l’organisation.

concepteur. Les raisons de ce besoin de changement sont identiques aux cas précédents : le comportement du système est inadéquat dans son environnement. La caractéristique essentielle du processus de modification de l’organisation est qu’il n’est pas dirigé par une entité extérieure au système. La phase de monitoring est réalisée de manière endogène, par un (ou plusieurs) agent(s) du système. Le concepteur leur donne les moyens de détecter au niveau local que l’organisation au niveau global n’est pas adaptée. Pour cela, les agents sont capables de savoir qu’ils ne sont pas adaptés. Ensuite, l’agent ayant participé à la détection de problème va exécuter la phase de réparation. Elle consiste à la phase de sélection d’une ou de plusieurs actions parmi les actions possibles, suivie de la phase d’exécution. L’agent choisit et exécute l’action, qu’il juge la plus appropriée selon un critère local par exemple la coopération dans [39]. Cette action est déjà définie et implémentée ou bien elle a été apprise par l’agent [15]. C’est toujours en cours de fonctionnement que cette phase est réalisée. Il réagit pour changer sa position dans l’organisation/topologie afin d’adapter le système dans sa globalité, ou changer sa spécialisation comportementale[15]. Un agent peut décider de manière autonome et isolée, d’une action qui va changer l’organisation, par exemple, en disparaissant du système. Un agent peut aussi décider d’agir de manière coopérative c’est-à-dire en tenant compte des agents qu’il connaît [39]. Dans un mécanisme auto-construit, un composant recevant un feedback négatif doit changer sa pondération afin de changer sa fonction et ses interactions avec son voisinage de manière plus adaptée et ainsi réduire le retour négatif. Les coalitions modifient leurs organisations pour cause de relations inadaptées entre agents. De tels changements sont le résultat d’un processus de raisonnement basé sur des concepts sociaux, comme les pouvoirs ou les dépendances, manipulés par les agents. Par exemple, dans une coalition de drones de surveillance, les agents change de leader après que le précédent ait démontré des manques de puissance de calcul ou de communication, afin de maintenir un collectif adapté à la mission [32].

4

Discussion et définitions

La table 1 fournit une vision synthétique structurée suivant la portée du processus d’adaptation (quoi, qui, pourquoi et comment), la conscience de l’organisation (implicite vs. explicite) et la différenciation entre les deux points de vue ACPV et OCPV. Nous pouvons ainsi proposer une définition des concepts de réorganisation et

d’auto-organisation, dans le contexte de la vision synthétique de la Fig. 1 et de la Tab. 1. Définition 1. La réorganisation est un processus endogène ou exogène, concernant les systèmes dans lesquels l’organisation est explicitement manipulée au travers de spécifications, des contraintes ou autres moyens, afin d’assurer un comportement global adéquat, lorsque l’organisation n’est pas adaptée. Les agents étant conscients de l’organisation, ils sont capables de manipuler des primitives afin de modifier leur environnement social. Ce processus peut-être à la fois initié par une entité externe au système ou par les agents eux-mêmes, en raisonnant directement sur l’organisation (rôles, spécification organisationnelle) et sur les schémas de coopération (dépendances, engagements, pouvoirs). Ce processus apparaît ainsi dans le côté droit du cadrant, et concerne donc principalement les systèmes orientés organisation, et, dans une moindre mesure, les coalitions. Définition 2. L’auto-organisation est un processus endogène ascendant concernant les systèmes dans lesquels seules des informations et représentations locales sont manipulées par les agents inconscients de l’état de l’organisation dans sa globalité, afin d’adapter le système à la pression environnementale en modifiant indirectement l’organisation, donc en changeant directement la configuration du système (topologie, voisinages, influences, différenciation), ou l’environnement du système, par des interactions et propagations locales, en évitant le biais de modèles prédéfinis. Ce processus apparaît en haut du cadrant, et concerne donc les SMA à organisation émergente, et dans une moindre mesure les coalitions. Nous pouvons donc identifier un continuum entre les systèmes auto-organisateurs et les systèmes réorganisateurs, passant par les systèmes basés sur les coalitions. Réorganisation et auto-organisation sont également des implémentations distinctes d’un même processus générique d’adaptation des organisations : détection et réparation nécessaires à l’adaptation. Du côté auto-organisation, ce processus est décentralisé, implicite et endogène, laissé à la responsabilité des agents et souvent initié par une pression environnementale. Du côté réorganisation, ce processus peut être centralisé ou décentralisé, mais toujours explicite et directement réalisé par des entités (concepteur ou agent) manipulant des primitives organisationnelles.

ACPV Quoi ? OCPV Qui ? Pourquoi ?

ACPV OCPV ACPV OCPV ACPV

Comment ? OCPV

Inconscience de l’organisation Topologie, Voisinages Poids, influences Différentiation Modèle de conception Agentification Agents, par pression environnementale Concepteur Agents non adaptés Performances non adéquates En réagissant, indirectement sur l’organisation, directement sur l’environnement En programmant, directement l’organisation, directement l’environnement

Conscience de l’organisation Dépendances Engagements Pouvoirs Spécification de l’organisation Affectation des rôles Agents, par pression sociale Concepteur & Agents Relations inter-agents non adaptées Organisation non adaptée En raisonnant, indirectement sur l’organisation, directement sur les schémas de coopération En organisant, directement l’organisation directement les schémas de coopération

TABLE 1 – Aspects de l’adaptation des organisations

5

Conclusion

Dans cet article, nous avons présenté une vision synthétique des aspects organisationnels dans les SMA d’un point de vue centré agent et d’un point de vue centré organisation. Nous avons également souligné les principales différences entre les processus de réorganisation et d’auto-organisation en analysant les raisons et les portées des changements d’organisation (quoi, quand, qui, pourquoi et comment). Suite à cette analyse, nous proposons une définition des concepts de réorganisation et d’autoorganisation à mettre en relief avec les points de vue centrés organisation et agent. Cependant, ces deux concepts ne sont pas incompatibles si nous les considérons à différents moments de la vie du système. Maintenant que nous avons dressé une vision synthétique du processus d’adaptation des organisations, qui pourra également être étendue à d’autres dimensions comme la réflexivité du système ou des agents, nous viserons dans de futurs travaux à définir un cadre formel capturant les notions de chacun des points de vue afin de les mettre en synergie. Nous pouvons imaginer utiliser des mécanismes auto-organisateurs au niveau du modèle organisationnel afin d’explorer l’espace des organisations possibles, et de proposer des organisations et normes sociales plus adéquates. A l’opposé, nous pouvons également imaginer d’utiliser des spécifications organisationnelles pour fixer des bornes comportementales aux phénomènes émergents, en définissant, par exemple, des contraintes que les agents ne pourront violer et d’autres contraintes que les agents pourront contourner afin d’explorer de nouvelles configurations organisationnelles.

Références [1] F. Bergenti, M.P. Gleizes, and F. Zambonelli. Methodologies and Software Engineering for Agent Systems. Kluwer, 2004.

[2] P. Bernoux. La sociologie des organisations. Seuil, 3ème edition, October 1985. [3] O. Boissier, J. F. Hübner, and J. S. Sichman. Organization oriented programming from closed to open organizations. In Engineering Societies in the Agents World VII (ESAW 06), volume 4457 of LNCS, pages 86–105. Springer-Verlag, 2007. [4] D. Capera, M.-P. Gleizes, and P. Glize. Mechanism Type Synthesis based on Self-Assembling Agents. Journal of Applied Artificial Intelligence, 18(9-10) :921–936, 2004. [5] T. Carron and O. Boissier. Towards a temporal organizational structure language for dynamic multiagent systems. In Pre-Proceeding of the 10th European Workshop on Modeling Autonomous Agents in a Multi-Agent World (MAAMAW’2001), 2001. [6] C. Castelfranchi. Modeling social action for AI agents. Artificial Intelligence, 103(1-2) :157–182, 1998. [7] C. Castelfranchi. Engineering Social Order. In ESAW ’00 : Proceedings of the First International Workshop on Engineering Societies in the Agent World, pages 1–18. Springer-Verlag, 2000. [8] D. Corkill and V. Lesser. The use of meta-level control for coordination in distributed problem solving network. In Proceedings of the 8th International Joint Conference on Artificial Intelligence (IJCAI’83), pages 748–756, 1983. [9] D. Cornforth, M. Kirley, and T. Bossomaier. Agent Heterogeneity and Coalition Formation : Investigating Market-Based Cooperative Problem Solving. Autonomous Agents and Multiagent Systems, International Joint Conference on, 2 :556–563, 2004. [10] M. Cossentino, N. Gaud, S. Galland, V. Hilaire, and A. Koukam. A holonic metamodel for agentoriented analysis and design. In Holonic and MultiAgent Systems for Manufacturing" (HoloMAS’07), volume LNAI 4659, pages 237–246. Springer, 2007. [11] M. de Weerdt and B. Clement. Introduction to planning in multiagent systems. Multiagent and Grid Systems An International Journal, 5(4), 2009. [12] S. A DeLoach. The MaSE Methodology. In Methodologies and Software Engineering for Agent Systems. Kluwer, 2004. [13] G. Di Marzo Serugendo, M.-P. Gleizes, and A. Karageorgos. Self-Organisation and Emergence in Multi-Agent Systems : An Overview. Informatica, 30(1) :45–54, 2006.

[14] V. Dignum, F. Dignum, and L. Sonenberg. Towards dynamic organization of agent societies. In G. Vouros, editor, Workshop on Coordination in Emergent Agent Societies, pages 70–78, 2004. [15] A. Drogoul, B. Corbara, and S. Lalande. MANTA : New experimental results on the emergence of (artificial) ant societies. In Artificial Societies : the Computer Simulation of Social Life, pages 119–221. UCL Press, 1995. [16] M. Esteva, J. A. Rodriguez-Aguiar, C. Sierra, P. Garcia, and J. L. Arcos. On the formal specification of electronic institutions. In Proceedings of the Agentmediated Electronic Commerce, LNAI 1191, pages 126–147, Berlin, 2001. Springer. [17] J. Ferber. Les systèmes multi-agents. Dunod, 1995. [18] J. Ferber and O. Gutknecht. A meta-model for the analysis and design of organizations in multiagents systems. In Proceedings of the 3rd International Conference on Multi-Agent Systems (ICMAS’98), pages 128–135. IEEE Press, 1998. [19] L. Gasser. Organizations in multi-agent systems. In Pre-Proceeding of the 10th European Worshop on Modeling Autonomous Agents in a Multi-Agent World (MAAMAW’2001), Annecy, 2001. [20] L. Gasser and T. Ishida. A dynamic organization architecture for adaptive problem solving. In Proceedings Ninth National Conference on Artificial Intelligence (AAAI’91), pages 185–90. The MIT Press & AAAI Press, 1991. [21] J.-P. Georgé, B. Edmonds, and P. Glize. Making Self-Organizing Adaptive Multi-Agent Systems Work - Towards the engineering of emergent multi-agent systems (chapter 8). In Methodologies and Software Engineering for Agent Systems, pages 319–338. Kluwer, 2004. [22] N. Glaser and P. Morignot. The reorganization of societies of autonomous agents. In Multi-Agent Rationality, LNAI 1237, pages 98–111. Springer, 1997. [23] S. Hassas, G. Di Marzo-Serugendo, A. Karageorgos, and C. Castelfranchi. On self-organising mechanisms from social, business and economic domains. Informatica, 30(1) :63–71, 2006. [24] B. Horling, B. Benyo, and V. Lesser. Using selfdiagnosis to adapt organizational structures. In Proceedings of the 5th International Conference on Autonomous Agentes (Agents’ 01), 2001. [25] J. F. Hübner, J. S. Sichman, and O. Boissier. A model for the structural, functional, and deontic specification of organizations in multiagent systems. In Proceedings of the 16th Brazilian Symposium on Artificial Intelligence (SBIA’02), volume 2507 of LNAI, pages 118–128. Springer, 2002. [26] J. F. Hübner, J. S. Sichman, and O. Boissier. Using the MOISE+ for a cooperative framework of MAS reorganisation. In Proceedings of the 17th Brazilian Symposium on Artificial Intelligence (SBIA’04), volume 3171 of LNAI, pages 506–515. Springer, 2004. [27] S. Kamboj and K. S. Decker. Organizational selfdesign in semi-dynamic environments. In AAMAS ’07 : Proceedings of the 6th international joint conference on Autonomous agents and multiagent systems, pages 1–8. ACM, 2007. [28] Y. Kubera, P. Mathieu, and S. Picault. Interactionoriented agent simulations : From theory to implementation. In Proceedings of the 18th European Conference on Artificial Intelligence (ECAI’08), pages 383–387. IOS Press, 2008.

[29] O. Boissier L. Coutinho, J.S. Sichman. Modeling dimensions for multi-agent systems organizations. In Agent Organizations : Models and Simulations (AOMS), Workshop held at IJCAI 07, 2007. [30] C. Lemaître and C. B. Excelente. Multi-agent organization approach. In Proceedings of II Iberoamerican Workshop on DAI and MAS, 1998. [31] V. Lesser, K. Decker, T. Wagner, N. Carver, A. Garvey, B. Horling, D. Neiman, R. Podorozhny, M. NagendraPrasad, A. Raja, R. Vincent, P. Xuan, and X.Q.. Zhang. Evolution of the gpgp/taems domainindependent coordination framework. Autonomous Agents and Multi-Agent Systems, 9(1) :87–143, July 2004. Kluwer Academic Publishers. [32] M. T. Long, R. R. Murphy, and J. Hicinbothom. Social roles for taskability in robot teams. In International Conference on Intelligent Robots and Systems (IROS’07), pages 2338–2344. IEEE, 2007. [33] R. Mailler and V. Lesser. Solving Distributed Constraint Optimization Problems Using Cooperative Mediation. In AAMAS’04, pages 438–445. IEEE Computer Society, 2004. [34] H. Maturana and F. Varela. L’arbre de la connaissance, racines biologique de la compréhension humaine. Addison-Wesley, 1994. [35] J.-P. Müller. Vers une méthologie de conception de systèmes multi-agents de résolution de problème par émergence. In JFIADSMA’98. Hermès, 1998. [36] H. V. D. Parunak and S. A. Brueckner. Engineering swarming systems. In Methodologies and Software Engineering for Agent Systems, pages 341–376. Kluwer, 2004. [37] J. Pavón and J. J. Gómez-Sanz. Agent oriented software engineering with ingenias. In CEEMAS, pages 394–403, 2003. [38] G. Picard, M.-P. Gleizes, and P. Glize. Distributed Frequency Assignment Using Cooperative SelfOrganization. In Self-Adaptive and Self-Organizing Systems, 2007. SASO ’07. First International Conference on, pages 183–192. ACM Press, 2007. [39] G. Picard and P. Glize. Model and Analysis of Local Decision Based on Cooperative Self-Organization for Problem Solving. Multiagent and Grid Systems, 2(3) :253–265, septembre 2006. [40] W. R. Scott. Organizations : rational, natural and open systems. Prentice Hall, 4 edition, 1998. [41] J. S. Sichman, R. Conte, Y. Demazeau, and C. Castelfranchi. A social reasoning mechanism based on dependence networks. In Proceedings of the 11th European Conference on Artificial Intelligence, pages 188–192, 1994. [42] Reid G. Smith. The contract net protocol : Highlevel communication and control in a distributed problem solver. IEEE Transaction on Computers, 29(12) :1104–1113, 1980. [43] Y. So and E. H. Durfee. An organizational selfdesign model for organizational change. In Proceedings of AAAI93 Workshop on AI and Theories of Groups and Organizations, 1993. [44] P. Stone and M. Veloso. Task decomposition and dynamic role assignment for real-time strategic teamwork. In ATAL’98, LNCS 1555, pages 293–308, 1999. [45] M. Tambe. Towards flexible teamwork. Journal of Artificial Intelligence Reseearch, 7 :83–124, 1997.