Académique Documents
Professionnel Documents
Culture Documents
N° :
TITRE :
Discipline :
Présenté par
Karam MUSTAPHA
22 Septembre 2011
JURY
ANNÉE : 2011
TABLE DES MATIÈRES
CHAPITRE 1 : INTRODUCTION GÉNÉRALE ................................................................. 1
1. Problématique et contributions...................................................................................... 1
1. Introduction ..................................................................................................................... 7
1. Introduction ................................................................................................................... 74
Chapitre 2
Chapitre 3
Figure 3.11 : Modèle d’indicateur de performance [BERRAH et al. 1995] ..................... 80
Figure 3.12 : Classification d'Indicateur [MUSTAPHA et al., 2010] ................................ 81
Figure 3.13 : Etapes de modélisation et de simulation ........................................................ 86
Figure 3.14 : Cadre méthodologique pour la modélisation et la simulation orientée
agents. ...................................................................................................................................... 88
Figure 3.15 : Méta-modèle CROM ....................................................................................... 93
Figure 3.16 : Illustration du modèle CROM dans le cas de chaîne logistique .................. 96
Figure 3.17 : Méta-modèle CAOM ....................................................................................... 98
Figure 3.18 : Modélisation de communication................................................................... 101
Figure 3.19 : Illustration du modèle CAOM dans le cas de chaîne logistique ................ 102
Figure 3.20 : Méta-modèle OPAM...................................................................................... 104
Figure 3.21 : Exemple de diagramme d’états .................................................................... 107
Figure 3.22 : Exemple de diagramme de séquences .......................................................... 108
Figure 3.23 : Echanges de messages entre agents délibératifs et agents réactifs. ........... 109
Figure 3.24 : Illustration du modèle OPAM dans le cas de chaîne logistique ................ 110
Figure 3.25 : Spécification des comportements et interaction entre les agents .............. 111
Chapitre 4
Figure 4.26: Fédérations en exécution (d’après [SERMENT, 2007] ............................... 121
Figure 4.27 : Architecture générale .................................................................................... 126
Figure 4.28 : Communication entre les simulateurs à partir d’un médiateur................ 127
Figure 4.29: Architecture générale : services du médiateur ............................................ 128
Figure 4.30 : Représentation d’un message KQML.......................................................... 130
Figure 4.31 : Principes architecturaux de JASON ............................................................ 134
Figure 4.32 : Exemple de code source d’un agent JASON ............................................... 135
Figure 4.33 : Architecture distribuée d’une plateforme JADE [RIMASSA et al., 1999],
................................................................................................................................................ 136
Figure 4.34 : Principe architecturaux d’un agent Jade .................................................... 137
Figure 4.35 : Exemple de code source d’un agent Jade .................................................... 138
Figure 4.36 : Architecture détaillée d’une simulation basée sur l’intégration de
simulateurs ............................................................................................................................ 139
Figure 4.37 : Interopérabilité par partage de données ..................................................... 142
Figure 4.38 : Interopérabilité entre les plateformes.......................................................... 143
Figure 4.39 : Modèle OPAM d’une Chaîne logistique simplifiée. ................................... 147
Figure 4.40 : Deux types d’agents avec module pour l’interopérabilité ......................... 148
Figure 4.41 : Transcription du modèle OPAM dans l’architecture logicielle ................ 149
Figure 4.42 : Interaction entre les agents dans le groupe 1 (Agents Délibératifs) et les
agents du médiateur ............................................................................................................. 151
Figure 4.43 : Interaction entre les agents dans le groupe 3 (Agent réactifs et Cognitifs)
................................................................................................................................................ 152
Figure 4.44 : Interaction entres les agents dans le Groupe 2 (agents cognitifs agent
réactifs) .................................................................................................................................. 153
Chapitre 5
Chapitre 2
Chapitre 3
Chapitre 4
Tableau 4.6 : Catégories de services assurés par le RTI................................................... 122
Tableau 4.7 : Classification et description des indicateurs retenus ................................. 132
Chapitre 5
1. Problématique et contributions
La chaîne logistique (Supply Chain) trouve son essence dans la possibilité qu‘elle offre aux
entreprises de générer des profits supplémentaires tout en accroissant leur flexibilité et leur
réactivité. Dans ce contexte de concurrence accrue et de mondialisation, les synergies
d‘entreprises résistent plus efficacement, ainsi comme l‘avance [LEE et BILLINGTON,
1995], "La bataille pour dominer le marché ne sera pas une bataille d‘entreprises mais de
chaînes logistiques."
Les chaînes logistiques devenant de plus en plus complexes, dans la recherche de leur
performance, leur modélisation/simulation s‘avère nécessaire. En effet, la
modélisation/simulation de la chaîne logistique peut être utilisée soit à des fins descriptives ou
normatives. A des fins descriptives elle vise à aider les décideurs à mieux comprendre le
comportement et les performances de la chaîne logistique modélisée et de favoriser
l'émergence des idées de gestion. A des fins normatives elle utilise la simulation dans le but
d'améliorer le fonctionnement et la performance de la chaîne logistique en identifiant les
meilleures décisions à prendre concernant ses transformations structurelles ou
organisationnelles, ainsi que le choix de politiques managériales associées.
La modélisation/simulation orientée agent étend considérablement les capacités de
simulation à événements discrets à des fins descriptives et normatives dans le contexte des
connaissances complexes de la chaîne logistique. Les agents sont des entités autonomes aptes
à exercer leurs fonctions sans avoir besoin d‘une interaction continue de la part d‘utilisateur.
Les agents sont exploités pour la construction et ou la simulation de systèmes complexes. La
simulation orientée agent (SOA - Agent Based Simulation) est aujourd‘hui utilisée dans un
nombre croissant de domaines, citons notamment la sociologie, biologie, l‘économie, la
physique, la chimie, l‘écologie et le domaine industriel. Dans tous ces domaines, elle
remplace progressivement les différentes techniques de micro simulation et de simulation
orientée objets. Cette tendance tout d‘abord est due à la capacité de la SOA à appréhender des
modèles dynamiques très différents, composés d‘entités très simples (agents réactifs), jusqu‘à
des entités plus complexes (sous la forme d‘agents délibératifs). Le concept d‘agent permet
d‘abord de développer des modèles qui ont le principal intérêt d‘être exécutés (simulés),
permettant l‘étude du comportement du système complexe modélisé, et donc de sa
1
Chapitre 1: Introduction générale
2
Chapitre 1: Introduction générale
leur simulation, ceci afin de mieux appréhender leurs comportements dans la recherche de
leurs performances.
Ensuite, afin de simuler les modèles de simulation de ces chaines logistiques obtenus par
ce cadre méthodologique, nous proposons une architecture logicielle multi-paradigmes
spécifique. Cette architecture a un double objectif : accompagner le processus de conception
de simulation de chaînes logistiques jusqu‘à son implémentation et exécution ; mais aussi
permettre d‘exploiter, et de réutiliser des modèles de simulations (opérationnels) préexistants
indépendamment du langage utilisé. Une approche par intégration à l‘aide d‘un médiateur
(mise en œuvre par une architecture agent) a été retenue pour atteindre ces deux objectifs.
2. Organisation du Manuscrit
Le chapitre deux constitue un état de l‘art de ce travail de recherche. Dans ce chapitre
nous nous intéressons tout d‘abord aux chaines logistiques en les définissant, en précisant la
problématique de leur management, et en présentant les différentes grandes approches de leur
modélisation et de leur simulation nécessaire à ce management. Puis convaincu que
l‘approche multi-agents était la plus pertinente pour aborder la modélisation et la simulation
de ces chaines, nous définissons ce que cette approche recouvre, tant au niveau des systèmes
multi-agents (SMA) qu‘au niveau de la simulation orientée agents (SOA). Ensuite , notre
contribution se voulant tout d‘abord méthodologique, nous nous intéressons plus
particulièrement à des travaux concernant le processus de conception d‘une SOA en générale,
ainsi que des travaux plus proches de nos préoccupations, portant sur le processus de la
modélisation et de la simulation orientées agents de chaines logistiques. Enfin nous concluons
en précisant la problématique de notre recherche.
Le chapitre trois présente notre première contribution, consistant en la proposition d‘un
nouveau cadre méthodologique de modélisation et de simulation orientées agents de chaînes
logistiques, prenant en compte explicitement les aspects organisationnels, tant structurel que
dynamique, ainsi que des observables et indicateurs dans la modélisation de ces chaînes. Tout
d‘abord nous précisons l‘objectif, les fondements ou principes, du cadre méthodologique
orienté agents que nous proposons pour la modélisation des chaines logistiques. Puis nous
présenterons de façon générale ce cadre méthodologique, notamment les différents niveaux
d‘abstraction qui le structure : niveau conceptuel et niveau opérationnel, ainsi que les
différents modèles qui le composent à chacun de ces niveaux d‘abstraction. Ensuite, nous
développons en détail l‘étape de modélisation conceptuelle du cadre méthodologique proposé,
en présentant les modèles concernés, leur articulation et le processus de leur élaboration, avec
3
Chapitre 1: Introduction générale
une illustration concrète sur une chaîne logistique. Enfin nous développons en détail l‘étape
de modélisation opérationnelle de ce cadre méthodologique en l‘illustrant par la modélisation
d‘une chaîne simple.
Dans le chapitre quatre présentons une architecture logicielle orientée agents permettant
de simuler les modèles de simulation de ces chaines logistiques obtenus par le cadre
méthodologique proposé dans le chapitre précédent. L‘architecture logicielle multi-
paradigmes qui est proposée supporte l‘intégration de différentes plates-formes de simulation
qui assurent l‘implémentation et l‘exécution d‘agents cognitifs et d‘agents réactifs nécessaire
à la simulation de la chaine. Cette approche d‘intégration se justifie notamment par
l‘hétérogénéité des plateformes de simulation répondant chacune à des capacités et des
besoins de représentation différents selon la complexité des comportements à simuler.
L‘architecture d‘intégration proposée s‘appuie sur des travaux antérieurs au LSIS ainsi que
sur la spécification HLA (High Level Architecture), et est basée sur un médiateur assurant
l‘interaction entre les simulateurs à l‘aide d‘agents spécialisés. Ces agents sont chargés de
collecter les informations permettant de produire les observables, maintenir la structure
organisationnelle lorsque des entités organisationnelles (groupes) sont distribués sur différents
simulateurs, l‘interopérabilité entre ces simulateurs et enfin garantir la validité de la
simulation d‘un point de vue temporel. Ce chapitre se termine par une illustration sur un cas
simple des mécanismes d‘intégration et de production d‘indicateurs que permet cette
architecture dans la simulation d‘une chaîne logistique.
Le chapitre cinq illustre la mise en œuvre du cadre méthodologique et de l‘architecture
logicielle précédemment proposés. Cette illustration sur un cas d‘étude de chaîne logistique
relative à la fabrication des raquettes de tennis, cas d‘étude qui est tout d‘abord présenté. Puis
cette illustration présente les modélisations conceptuelle et opérationnelle de cette chaîne
obtenue selon le cadre de modélisation proposé. L‘implémentation de l‘architecture logicielle
à base d‘agents proposée est ensuite présentée, ainsi que sa mise en œuvre sur la chaine
logistique du cas d‘étude. Ce chapitre se termine par la présentation et l‘interprétation de
résultats de simulation associés à l‘étude de scénarios pertinents relatifs au comportement de
la chaine logistique du cas d‘étude.
Enfin, dans le chapitre six, conclusion générale, nous présentons un bilan de nos travaux
de recherche en mettant en avant nos principales contributions, et leurs limites, ainsi que les
différentes perspectives qui leurs sont associées.
4
CHAPITRE 2: MODÉLISATION ET SIMULATION
ORIENTÉS AGENTS DE CHAÎNE LOGISTIQUE
PLAN DU CHAPITRE
1. Introduction ..................................................................................................................... 7
6
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
1. Introduction
Accompagner le processus de conception d‘une simulation d‘une chaîne logistique jusqu‘à
son expérimentation sur une architecture logicielle adaptée, requiert d‘appréhender
l‘ensemble des enjeux et opportunités que cet objectif soulève.
Dans l‘identification de ces enjeux et opportunités, une des difficultés rencontrées dans ce
travail de recherche résulte justement de la nature pluridisciplinaire de notre sujet de
recherche. Il s‘agit en effet de bien comprendre ce que peuvent apporter les Systèmes Multi-
Agents (SMA) d‘un point de vue méthodologique, conceptuel et logiciel à l‘ingénierie du
« complexe », ce qu‘implique la simulation de systèmes en terme de modèles et leurs
exploitation, et bien sûr déterminer les besoins soulevés par la compréhension et
l‘amélioration des performances (au sens large) des chaînes logistiques. De fait, la rencontre
entre SMA, Simulation et Chaînes Logistiques n‘est pas récente, et rend d‘autant plus difficile
son appropriation par les interconnexions qui se sont formés au fur et à mesure de ces
rencontres et les combinaisons multiples proposés par des chercheurs de communautés
scientifiques différentes.
Aussi dans ce chapitre d‘état de l‘art, nous nous intéressons tout d‘abord aux chaînes
logistiques en les définissant, en précisant la problématique de leur management, et en
présentant les différentes grandes approches de leur modélisation et de leur simulation
nécessaire à ce management. Ensuite convaincu que l‘approche multi-agents était la plus
pertinente pour aborder la modélisation et la simulation de ces chaînes, nous définissons ce
que cette approche recouvre, tant au niveau des systèmes multi-agents (SMA) qu‘au niveau de
la simulation orientée agents (SOA). Notre contribution se voulant en premier lieu
méthodologique, nous nous intéressons au processus même de conception d‘une SOA en
général, ainsi que des travaux plus proches de nos préoccupations, portant sur le processus de
la modélisation et de la simulation orientées agents de chaînes logistiques. Enfin nous
concluons en précisant la problématique de notre recherche.
7
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
concurrentielles comme énoncé dans [LEE et BILLINGTON, 1995], "La bataille pour
dominer le marché ne sera pas une bataille d‘entreprises mais de chaînes logistiques."
Dans cette section, nous définissons tout d‘abord le concept de chaîne logistique ainsi que
ses évolutions, et cernons brièvement le management de ces chaînes. Ensuite nous ferons un
tour d‘horizon des différentes approches de la modélisation et de la simulation des chaînes
logistiques pouvant contribuer au management de ces dernières. Enfin nous présentons le
modèle de référence SCOR qui s‘appuie sur des niveaux explicites et des indicateurs.
8
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
diverses étapes de transformation avant de prendre le statut de produit fini. Ces derniers sont
livrés vers les centres de distribution, dans lesquels ils sont stockés ou bien directement
dirigés vers les marchés. Les points de vente, qui constituent différentes zones de marché,
mettent ainsi à disposition les produits finis auprès des consommateurs. Les flux
informationnels, qui circulent en amont et en aval, concernent l‘ensemble des données qui
sont partagées entre les entreprises (commandes, délais, etc.).
A. Logistique séparée
De 1940 et 1950, la logistique concerne les fonctions physiques liées aux flux de distribution.
A partir de la fin des années 1950, la conjoncture économique met à jour l‘importance de la
fonction logistique puisse que l‘efficacité des entreprises repose sur l‘analyse et le contrôle
des coûts, [BOWERSOX et al., 1986].
Entre les années 1960 et 1970 la logistique devient une fonction de gestion matérielle et
informationnelle intégrée à l‘ensemble des autres fonctions, [BALLOU, 1992], grâce à
l‘émergence du management fonctionnel (séparation des principales fonctions de gestion de
l‘entreprise).
9
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
A partir des années 1970, la fonction logistique de l‘entreprise est plus particulièrement
appréhendée par l‘optimisation des lancements d‘ordres de fabrication, des achats, des plans
de production et des systèmes de distribution [HESKETT, 1973]. SLATER en 1976, cité dans
[GANESHAN et al., 1998], soutient qu‘une approche prenant en compte la globalité des
canaux logistiques devrait considérablement réduire les coûts et améliorer la qualité des
opérations.
B. Logistique intégrée
Pendant les années 1980, les entreprises responsabilisent et unifient la plupart de leurs
fonctions autour de la logistique, [COLIN et PACHÉ, 1988]. Cette évolution donne à cette
fonction un rôle clef dans les stratégies d‘entreprise, [SHAPIRO, 1984], notamment en
coordonnant les autres fonctions pour servir la production et la distribution physique.
C. Logistique coopérée
Les années 1990 voient le développement d‘alliances externes et de partenariats, dans le but
d‘accroître la compétitivité des partenaires du système logistique, basé sur l'optimisation des
flux [CHRISTOPHER, 1992]. Dans ce type de logistique, pour consolider les avantages
stratégiques nés de ces alliances, les entreprises mettent en œuvre des modes de coopération et
de coordination entre elles [SHAPIRO, 2001].
On est ainsi passé d‘une fonction purement physique liées aux flux de distribution, à la
recherche d‘une intégration globale partant du fournisseur du fournisseur jusqu‘au client du
client. Cette logique d‘intégration s‘est accompagnée du déploiement des nouvelles
technologies de l‘information et de la communication, et a abouti au développement d‘outils
informatisés permettant de mieux manager les chaînes logistiques, outils notamment liés à
l‘optimisation et surtout la simulation de ces chaînes, que nous aborderons dans une prochaine
section.
10
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
implémentée alors que d'autres le considèrent comme une intégration de plus de fonctions que
la logistique.
Le Council of Logistics Management (CLM) est considéré comme étant l‘un des premiers
organismes internationaux reconnaissant la nature intégrative des CL. Il a récemment mis à
jour sa définition pour identifier que le SCM est la plus étendu parmi les fonctions de
l‘entreprise et définit la logistique comme la partie du processus de CL qui projette,
implémente, et vérifie l'écoulement efficient et le stockage efficace des marchandises, des
services, et de leur information respective du point d'origine au point de consommation afin
de répondre aux exigences des clients. [CLM, 2006].
Aujourd'hui, après 15 ans sur les premiers travaux du CLM, plusieurs définitions du
management de la CL (SCM) ont lui été attribués. GIUNIRERO et al [1996] n‘identifient que
trois typologies de SCM s'étendant des flux (unique) de marchandises, un flux de
marchandises et d'information, à une approche intégrée à valeur ajoutée. Depuis, la plupart
des définitions se sont avancées sur la vision sommaire des flux de marchandises et ils
considèrent maintenant la nature intégrative des CL. COOKE [1997] définit le SCM comme
la coordination et l'intégration réussies de toutes ces activités associées aux circulations des
marchandises de l'étape de matières premières à l'utilisateur final, pour un avantage
concurrentiel durable. Ceci inclut des activités comme le management des systèmes,
l'approvisionnement, l'ordonnancement de la production, traitement d'ordre, gestion des
stocks, transport, entreposage, et service à la clientèle. [QUINN, 1997] ajoute, qu‘un SCM
réussi coordonne et intègre toutes ces activités dans un processus sans raccord. En plus de
l‘interaction entre les différents des départements de l'organisation, SCM incluse la relation
entre les fournisseurs, des entrepreneurs, des tierces compagnies, et des fournisseurs de
systèmes d'information.
Dans cette intégration [LAMBERT et al., 1998] renforce le concept de la valeur, l‘auteur
définit le SCM par le l'intégration des principaux processus d'affaires de l'utilisateur ultime
aux fournisseurs initial qui fournissent des produits, services et informations qui pourvoit de
la valeur ajoutée aux clients et autres dépositaires, à travers cette définition l‘auteur veut
renforcer le principe de la valeur ajoutée du SCM alors que [COOPER et al., 1997] notent que
cette définition est plus large que la définition traditionnelle de la logistique et précise le
besoin d'intégration au delà de la fonction logistique.
[BALLOU et al., 2000] se sont intéressés à la réalisation de la revue les changements de
définitions de la vision de la logistique avec le temps et associent la CL à toutes les activités
11
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
liées à la transformation, aux flux des marchandises et des services, comprenant leurs propres
flux d'information, de la source des matières premières à l‘utilisateur ultime. De leur part, les
auteurs identifient trois dimensions du management de la CL : (i) la coordination intra-
fonctionnelle, (ii) la coordination inter-fonctionnelle et (iii) coordination inter-
organisationnelle. La première dimension se rapporte à l'administration des activités et des
processus dans la fonction logistique de la société. La deuxième se réfère à la coordination
des activités entre les secteurs fonctionnels de la société tandis que la coordination inter-
organisationnelle s‘applique à la coordination des activités de la CL qui ont lieu entre les
sociétés légalement séparées.
De leur côté [MABERT et VENKATARAMANAN et al., 1998] ajoute le procédé de
conception de produits à la définition du CL et le présente comme le réseau d'installation et
d'activités qui exécute les fonctions du développement du produit, l'approvisionnement du
matériel depuis les fournisseurs, le déplacement des matériaux entre les installations, la
fabrication des produits, la distribution des produits finis aux clients, et enfin le service après
vente. Bien que [SIMCHI-LEVI et al., 2000] identifient le dispositif systémique inhérent à la
définition de la CL, devenant ainsi l‘un ensemble d'approches qui vise à intégrer efficacement
des fournisseurs, fabricants, entrepôts, et magasins, de sorte que les marchandises soient
produites et distribuées en bonnes quantités, aux bons endroits, et au bon moment, afin de
réduire au minimum le niveau des coûts du système tout en répondant aux conditions du
niveau de service tandis que [ALBER et al., 1998] ajoutent l'élément critique des flux
financier à la CL et la définissent comme un réseau global employé pour livrer des produits et
services depuis les matières premières au clients extrêmes par la construction des flux
d'information, de distribution CL comme un réseau global employé pour livrer des produits et
services depuis les matières premières aux clients extrêmes par la construction des flux
d'information, de distribution physiques, et financiers. Dans la même continuité, [AYERS,
2000] toujours centré sur les flux, mais ajoute également une dimension de connaissance, et
déclare que le management de la CL est plus qu'une circulation des marchandises physique
«terre à terre », c'est également de l'information, circulation de l'argent, et la création et le
déploiement du capital intellectuel."
De l'importance de la coordination fonctionnelle et de la congruence stratégique,
[MENTZER et al., 2001] définissent le management de la CL comme : « la coordination
systémique, stratégique des fonctions opérationnelles classiques et de leurs tactiques
respectives à l intérieur d‘une même entreprise et entre partenaires au sein de la CL, dans le
12
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
13
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
14
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
15
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
16
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
A. Présentation générale
Le modèle SCOR (Supply Chain Operations Reference) fournit un cadre qui permet à ses
utilisateurs de définir puis améliorer leurs pratiques de management de la SC. Il a pour but
l‘optimisation de la communication entre partenaires de la SC par l'utilisation de définitions
standards et un langage commun, ce qui facilite la comparaison entre entreprises et entre
industries similaires. Le modèle SCOR a été développé en 1996 par le Supply Chain Council
(SCC) [SUPPLY CHAIN COUNCIL, 2006]
Le modèle SCOR est un modèle de référence. À la différence des modèles d'optimisation,
aucune description mathématique formelle de la SC et aucune méthode optimale ou
heuristique pour résoudre un problème n'est donné. Le modèle SCOR propose une
terminologie de processus normalisés permettant une description générale des SC. Le modèle
SCOR s‘appuie de manière explicite sur les concepts bien connus du « reengineering » qui
analyse l‘existant et propose une solution-cible, du « benchmarking » qui compare la
performance à des entreprises similaires, et de la recherche objective des meilleures pratiques
à partir de mesures de performance, dans un cadre « transfonctionnel».
L'utilisation d'une terminologie normalisée, qui définit et unifie les termes utilisés,
améliore la communication entre les entités d'une SC. En effet, régulièrement, les définitions
non unifiées d'un terme mènent à de fausses idées ou supposition. C'est pourquoi, le SCC a
17
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
établi une terminologie standard pour le SCM. Dans le modèle SCOR environ 120 termes,
appelés des termes de processus (process terms), sont définis dans un glossaire.
18
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
Modèle SCOR
Figure 2.2 : Quatres processus de base du SCOR [SUPPLY CHAIN COUNCIL, 2006]
De plus le modèle SCOR peut se découper en 4 niveaux de modélisation qui sont détaillés
dans la section suivante.
19
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
20
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
actives mobilités), (3) Gestion des informations agrégées et détaillées utilisées par SC, (4)
Management intégré des stocks (matières premières et composants achetés, encours,
produits finis) de la SC (niveau stratégique, tactique et opérationnel), (5) Management de
la capacité productive de la SC (acquisition, maintenance, externalisation), (6)
Management des transports, (7) Management de la configuration de la SC, en cohérence
avec le portefeuille de produits et son évolution liée à leurs cycles de vie, (8) Management
des réglementations (respect des contraintes légales et réglementaires jouant sur
l‘ensemble de la SC), (9) Management stratégique de la cohérence de la SC avec la
stratégie globale de l‘entreprise.
21
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
22
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
23
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
modélisation orientée agents est qu‘elle permet en général une simulation autorisant une étude
de la dynamique du système considéré. La représentation du système, qu‘il soit physique,
biologique, économique ou encore social, peut s‘appuyer sur différentes approches de
modélisation. L‘approche de modélisation orientée agents permet de représenter le système à
travers l‘identification et la spécification du comportement des individus en interactions qui le
composent. Ces individus peuvent évoluer et agir sans contrôle ni intervention extérieure
(autonomie), peuvent percevoir leurs environnements et répondre à ces modifications
(réactivité), initier des comportements dirigés par des buts internes (pro-activité), et interagir
avec d‘autres individus (habilité sociale).
Les sections suivants introduisent plus en détail les systèmes multi-agents et la simulation
orientée agent, qui sont associés à l‘approche de modélisation et de simulation de chaînes
logistique que nous avons retenu pour cette recherche.
24
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
A. Systèmes multi-agents
La conception et ensuite le développement d‘un système multi-agents requièrent la définition
d‘un certain nombre d‘éléments, indépendamment du domaine d‘application ou le degré
d‘intelligence des agents. Dans [FERBER, 1995], les éléments entrant dans la composition
d‘un système multi-agents sont multiples :
Ŕ Un environnement E, définissant un espace doté généralement d‘une métrique.
Ŕ Un ensemble d‘objets O situés dans E. Ces objets sont passifs, ils peuvent être perçus,
créés, détruits et modifiés par les agents.
Ŕ Un ensemble A constitué d‘agents qui sont des objets particuliers (A ⊆ O), lesquels
représentent les entités actives du système.
Ŕ Un ensemble de relations R rassemblant des objets (et donc des agents) entre eux.
Ŕ Un ensemble d‘opérations Op permettant aux agents de A de percevoir, produire,
consommer, transformer et manipuler des objets de O.
Ŕ Les lois de l‘univers désignent des opérateurs chargés de représenter l‘application de
ces opérations et la réaction du monde à cette tentative de modification.
Concevoir un SMA impose donc de traiter ces différentes questions en tenant compte
également de la dimension interaction entre agents. On peut retrouver dans l‘approche
Voyelle AEIO, [DEMAZEAU, 2001], une approche similaire où un SMA est constitué de 4
dimensions : Agent, Environnement, Interaction et Organisation.
Ŕ Agent: concerne les modèles (ou les architectures) utilisés pour la partie active de
l'agent, depuis un simple automate à un système à base de connaissances complexe;
Ŕ Environnement: qualifie les milieux dans lesquels sont plongés les agents. Ils sont
généralement spatiaux dans la plupart des applications multi-agents;
Ŕ Interactions: concernent les infrastructures, les langages et les protocoles
d'interactions entre agents, depuis de simples interactions physiques à des interactions
langagières par actes de langage;
25
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
B. Agents
Dans la littérature scientifique il n‘existe pas vraiment de définition consensuelle définissant
ce qu‘est un agent. Cependant, la définition la plus reprise au sein de la communauté des
systèmes multi-agents est celle proposée dans [JENNINGS et al., 1998] : « Un agent est un
système informatique, situé dans un environnement, et qui agit d‘une façon autonome et
flexible pour atteindre les objectifs pour lesquels il a été conçu.». Dans [WOOLDRIDGE et
JENNINGS, 1995], les scientifiques fixent le concept d‘agent selon les propriétés suivantes :
Ŕ L’autonomie : l‘agent agit sans l'intervention directe d‘un tiers (humain ou autres) et
n‘est soumis à aucun contrôle sur son travail, ni sur son état interne;
Ŕ La réactivité : l‘agent est attentif à son environnement de travail et capable de faire
face aux changements dans ce cadre d‘une manière propice;
Ŕ La pro-activité : l‘agent doit être capable de montrer des comportements dirigés par
des buts internes, en prenant des initiatives;
Ŕ La sociabilité : les agents sont en interaction entre eux grâce à des langages de
communication et des règles de sociabilité communes. Les agents communiquent entre
eux et créent des règles de sociabilités qui leur sont propres.
A ces propriétés « minimales » de ce que doit être un agent, peuvent s‘ajouter des
propriétés additionnelles afin de répondre aux besoins parfois spécifiques du domaine d‘étude
ou de l‘approche retenue [CHAIB-DRAA et al., 2001]. Dans [FRANKLIN et GRAESSER,
1996], [NWANA, 1996] et [BRIOT et DEMAZEAU, 2001], sont fait des tours d‘horizon des
divers usages des agents selon différents domaines. Deux écoles coexistent selon le degré
d‘intelligence et de connaissance attribué aux agents, [LABIDI et LEJOUAD, 1993]. L‘une
concerne les agents réactifs qui considèrent des agents simples réalisant des actions par
26
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
27
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
global de la société d‘agent qui émerge de leurs interactions peut être "intelligent". La
simulation constitue un domaine privilégié pour l‘utilisation des systèmes d‘agents réactifs,
[BOUSQUET et LE PAGE, 2001].
Dans [SAUTER et al., 2002], les agents représentent des phéromones synthétiques et des
véhicules robotisés. Les véhicules robotisés utilisent les phéromones pour se déplacer au
cours de missions de combats. Dans le système MANTA (Modeling an ANThill Activity),
[DROGOUL, 1993], les agents disposent de trois types d‘opérations (perception, sélection et
activation) pour la réalisation d‘un ensemble de tâches. Celles-ci sont caractérisées par trois
paramètres (poids, seuil et niveau d‘activation) qui évoluent en fonction des stimuli de
l‘environnement. Selon cette approche, les premiers travaux réalisés s‘apparentent à
l‘architecture Subsumption présentée dans [BROOKS, 1986]. Selon cette étude, un agent est
caractérisé par un ensemble de comportements hiérarchisés en fonction de leur complexité.
Ces comportements se trouvent entre la perception et l‘action. Un comportement peut inhiber
toute action d‘un comportement de niveau inférieur. Au sein de l‘approche Eco-Résolution,
[FERBER, 1989], les agents sont à la recherche d‘un état de satisfaction en ayant recours à
trois conduites (satisfaction, agression et fuite). Si un agent est gêné par un autre agent dans
son aspiration à être satisfait, il se sent agressé, déclenchant chez lui un déplacement dans
l‘environnement (fuite).
28
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
29
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
30
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
L‘agent possède une base de connaissance hiérarchique ce qui lui assure la manipulation
des informations et la révision ses croyances. Le modèle du monde (croyances de l‘agent sur
l‘environnement) est le premier niveau de la base de connaissances, associé à la couche
Comportements. Le deuxième niveau, la couche Planification Locale, désigne le modèle
mental de l‘agent (croyances propres). Le troisième niveau, la couche Coopération, représente
le modèle social (croyances de l‘agent sur les autres agents du SMA).
Parmi les autres architectures d‘agents hybrides citons la Touring Machine où chaque
couche correspond à un niveau d‘abstraction [FERGUSON, 1992]. Elle se définie comme une
architecture horizontale selon la classification proposée dans [MÜLLER et al., 1995], puisque
les couches de réaction, planification et modélisation, se situent entre la perception et l‘action.
Le modèle ASTRO, [OCCELLO, 2003], est un modèle d‘agent disposant d‘aspects réactifs et
cognitifs tenant compte des contraintes liées au contexte de temps réel. En effet, les
architectures hybrides sont plus efficaces pour comprendre les capacités de décisions et
d‘actions des agents dans le temps durant la phase de conception du SMA. Cependant, il
n‘existe pas de véritable guide méthodologique pour guider la conception d'applications
utilisant de ce type d‘architectures. La conception d‘agents constitue une problématique
importante dans le domaine de recherche des SMA. De plus, les interactions entre agents
influent sur les architectures d‘agents à concevoir et exploiter. Les caractéristiques et les
propriétés liées au domaine d‘application de notre travail de recherche, à savoir les chaînes
logistiques, vont nous confronter à des choix relatifs aux architectures d‘agents.
31
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
Le processus ou les systèmes «Holoniques» sont les processus manipulant les Holons.
Depuis 1993, le terme «Holonique» a été adapté au monde de la fabrication Holoniques
(HMS : Holonic Manufacturing Systems). Les systèmes Holoniques manfacturiers sont basés
sur la métaphore du marché pour concevoir la coordination entre Holons. Les caractéristiques
et propriétés internes d‘un Holon ne sont pas pré-supposés par les systèmes Holoniques
manufacturiers [RODRIGUEZ et al., 2007].
Finalement, on définit la fabrication Holonique, par un ensemble d‘Holons dans une
hiérarchie où ceux-ci sont définis par leurs fonctions ou leurs tâches. Un Holon peut se
réguler automatiquement et réagir aux changements d‘environnement à l‘aide de stratégies
flexibles.
Par rapport aux autres modèles d‘agent, les Holons ont apporté une capacité de description
récursive : un holon peut être décrit comme composé d‘holons. De plus, les systèmes
holoniques étant largement appliqués (voire inspirés) de problématiques manufacturières, un
holon se voit souvent attribuer la possibilité de contrôler un ou plusieurs dispositifs matériels
intervenant dans un processus de production (ou de transport). Les holons constituent donc
davantage une spécification fonctionnelle qu‘un véritable modèle d‘agent. Il est à noter que
depuis le début des travaux sur les holons, le domaine des SMA s‘est emparé de ces objectifs.
Citons par exemple les travaux de [OCCELLO et DEMAZEAU, 1997] sur la récursivité ou
encore ceux de [FERBER et al., 2004] sur la dichotomie « esprit »-« corps ».
32
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
al., 1989], attraction/répulsion dans des systèmes réactifs [DROGOUL, 1993], négociation
pour l‘aide à la décision de groupe [TRANVOUEZ, 2001]).
Ainsi, deux modes principaux d‘interactions sont possibles :
- Interaction par émission de signal : inspirée des modèles biologiques, un agent émet
un signal qui sera capté par d‘autres agents qui pourront à leur tour réagir à ce signal
(soit en émettant d‘autres signaux soit en modifiant leur comportement). Un signal
peut prendre la forme d‘une trace (marque laissée dans l‘environnement), ou avoir une
signification (cri d‘alerte, appel au secours,…). Ce type d‘interaction est en souvent
associé à une architecture d‗agent réactive.
- Interaction par échange de message : les agents s‘échange des informations ou
requêtes sous la forme de message dont le contenu nécessite un traitement plus ou
moins complexes chez l‘agent destinataire. Selon la complexité de l‘interaction, les
messages peuvent être organisés en protocoles afin de garantir le bon déroulement de
l‘interaction. Parmi ces interactions citons par exemple, des processus collectifs de
coordination, de coopération ou encore de négociation.
Dans ce dernier cas, la définition de la forme et du contenu des messages peut nécessiter
une formalisation afin d‘ajouter une dimension sémantique et non plus seulement syntaxique
et ainsi avoir recours à des langages de communication. Deux principaux langages de
communication se sont imposés, ayant tous deux pour origine la théorie des actes de langage
proposée dans [SEARLE, 1969] :
- KQML (Knowledge Query Manipulation Language) développé en 1993 par le
consortium DARPA-KSE (Knowledge Sharing Effort), [FININ et al., 1994].
- ACL (Agent Communication Language) proposé en 1997 par la FIPA (Foundation for
Intelligent Physical Agents), [FIPA, 1997].
Ces langages reposent sur la définition de performatives (KQML) ou actes de
communication (ACL) dont l'énonciation constitue l‘expression d‘un acte (accomplissement
d‘une action). KQML et ACL se distinguent au niveau de la sémantique des actes du langage
utilisés. En effet, le langage ACL fortement inspiré des travaux de KQML, propose un
langage auquel s‘ajoute la définition de protocoles d‘interactions, [KONING et PESTY,
2001], dont la sémantique est basée sur ARCOL [SADEK, et al. 1997]. La FIPA propose de
nombreux protocoles dont notamment le protocole Contract-Net [FIPA, 2002], présenté dans
[SMITH, 1980].
33
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
34
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
observer les sorties correspondantes ». De manière plus précise, dans le cadre de notre
recherche, nous avons retenu la définition de [DROGOUL et al., 2008] pour qui:« la
simulation est l‘activité au cours de laquelle, selon un protocole et avec un objectif précis, on
utilise un simulateur pour faire évoluer les entrées d‘un modèle dynamique, l‘exécuter, et en
recueillir les sorties. Tout modèle écrit en respectant le méta-modèle associé au simulateur et
comportant au moins un paramètre d‘entrée peut se prêter à ce processus de simulation ». On
retrouve cette notion d‘objectif dans la définition antérieure, devenue classique, proposée par
Minsky: « Pour un observateur B, un objet A* est un modèle d‘un objet A dans la mesure où
B peut utiliser A* pour répondre aux questions qu‘il se pose au sujet de A » [MINSKY,
1968].
Nous pouvons alors retenir de ces trois définitions, qu‘un modèle n‘est pas apprécié par sa
complexité ou sa précision de représentation du réel, mais par sa capacité à apporter des
réponses aux questions posées par les scientifiques qui vont se servir de ce modèle. En
relation avec l‘intention initiale de la simulation, l‘objectif de la simulation est alors de fournir
des résultats en fonctions de paramètres d‘entrées contrôlés. Ces résultats, leur nature et leur
métrique, participent à la définition de l‘objectif des expérimentateurs. Le choix du paradigme
et du langage de modélisation dépendra des connaissances du système réel disponibles.
La notion d‘objectif est ainsi relativement large. Elle peut recouvrir l‘usage que l‘on
escompte faire des résultats ou plus précisément les type d‘informations que l‘on recherche.
Dans le premier cas, une simulation peut viser des objectifs de:
- Prédiction : estimation d‘une valeur ou réponse à une observation à un choix multiple.
- Extrapolation : trouver la valeur en dehors des périmètres observés.
- Interpolation : permettre à compléter et combler la connaissance.
- Compréhension : évolué la connaissance des phénomènes ou des processus.
Indépendamment de ces objectifs globaux, la notion d‘objectif peut également plus
prosaïquement caractériser le type d‘informations attendues sur le comportement du système
simulé en cours et en fin de simulation. En fonction de leur nature, cet objectif peut conduire à
différents type de modèle et nécessiter un processus de conception particulier.
Dans la section suivante, nous nous intéresserons plus particulièrement à deux approches
de la simulation [DROGOUL, 1993] : les approches analogiques et les approches
numériques.
35
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
36
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
Bien que ne prenant pas en compte les facteurs climatiques et saisonnières, ce système
permettait de formaliser un phénomène abstrait et de le transposer à des phénomènes
similaires. Ces modèles s‘intéressent cependant uniquement à des données macroscopiques,
sans tenir compte par exemple à la dimension géographique du problème : il n‘est ainsi pas
possible d‘étudier l‘influence de la répartition géographique et démographique de ces deux
populations dans un environnement. L‘émergence des approches individu centrée (et leurs
cousines multi-agents) est liée ce constat.
Dans la lignée de cette hérédité mathématique, d‘autres approches ont cherché à bénéficier
de ses avantages en ajoutant une aide à la conception des modèles au travers de formalismes
associés à des notations graphiques (diagramme état-transition, diagramme d‘Harel…). Parmi
les formalismes à événements discrets, DEVS [ZEIGLER, 1976] en est un exemple
remarquable par sa contribution et l‘étendue des évolutions et des applications qui ont suivi
[ZEIGLER, 1976]. DEVS propose une modélisation basée sur structure algébrique définissant
les relations entre les entrées et les sorties du modèle de simulation, les états du système, les
transitions (et leur règle de déclenchement) interne et externe au système/modèle permettant
de calculer le nouvel état du système lors de l‘occurrence d‘un événement, ainsi que les
conséquences sur l‘évolution des valeurs caractéristiques du système. L‘association d‘une
notation graphique de type états-transitions, facilite également la conception des modèles. Ces
approches apparaissent cependant peu adaptées pour modéliser et reproduire des
comportements délibératifs, ou favoriser l‘étude de phénomène d‘émergence ou d‘auto-
organisation.
37
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
variables descriptives des modèles. Question souvent secondaire en simulation orientée agent,
car implicite, la notion du temps est considérée comme incontournable dans le domaine de la
simulation qui distingue :
- les modèles à temps continu, dans lesquels le temps évolue de manière continue ;
- les modèles à temps discret, dans lesquels le temps évolue en passant d'une valeur
entière à une autre.
- De même, selon le type de variables descriptives du modèle, on parlera:
- de modèles à états discrets, lorsque les variables descriptives prennent leurs valeurs
dans un ensemble discret;
- les modèles continus, lorsque les variables descriptives prennent leurs valeurs dans
l‘ensemble des nombres réels.
Les discordances entre ces modèles mettent en exergue les obstacles que peuvent dévoiler
le couplage de modèles renfermant des échelles temporelles et spatiales de nature différente.
Les modèles de simulations étant classifiés peuvent alors être abordées en fonction de leur
déterminisme. Ces modèles peuvent être qualifiés soit de déterministe ou de stochastique :
- un modèle déterministe se doit d‘avoir un comportement monotone et assurer que
plusieurs expérimentations, avec les mêmes paramètres d‘entrée, doivent produire des
résultats similaire voire identique ;
- un modèle stochastique par contre présente un caractère plus aléatoire. Chaque
expérimentation peut donner lieu, à condition initiale égale, des résultats différents. La
réalisation de nombreuses simulation doit permettre de produire l‘équivalent de
valeurs d‘une variable aléatoire dont il faudra ensuite déterminer si elle suit un loi
particulière ou amène à un ensemble fini d‘états finaux associés à des probabilités
moyenne d‘occurrence.
Pour qu‘un modèle puisse subir une simulation, il est nécessaire que le modèle puisse être
implémenté (rendu fonctionnel d‘un point de vue informatique). Durant les nombreuses
étapes de modélisation, une simulation fonctionnelle est alors produite par les différents
acteurs qui ont interagi [DROGOUL et al., 2003] : les professionnels/experts du domaine à
savoir les informaticiens (experts informatique) et les modélisateurs (qui servent de liaison
entre les deux protagonistes). La fonction essentielle du modélisateur est d‘éclaircir les
concepts utilisés par le professionnel et de gommer les équivoques potentielles. Le recours à
des modèles de domaine, c‘est à dire maitrisé et peut être déjà existant, facilite la transition
vers la simulation elle-même, en assurant la prise en compte de la vision des experts (puisque
38
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
ces modèles spécialisés ont identifiés dans leur langage, les caractéristiques qui leur parait
importante dans le système étudié). L‘informaticien soumet un modèle faisant trait d‘union
entre le programme informatique et le modèle du modélisateur. Le processus n‘est pas tout à
fait séquentiel puisqu‘il passe par plusieurs étapes, allant de l‘énonciation du problème à la
prise de décision en passant par les différentes étapes de modélisation, l‘implémentation et la
simulation.
39
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
40
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
41
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
en place d‘algorithme complexes ciblant une situation particulière (actions d‘agents sur un
même objet – une ressource à consommer par des agents animaux par exemple), au recours à
des modèles relativement générique séparant l‘aspect action (décision d‘agir) et la
conséquence de cette action sur l‘environnement (influence) [MICHEL, 2006]
Aux architectures type BDI, s‘est ajoutée la question de la coordination des actions dans le
temps ainsi que le coût temporel du processus de délibération de l‘agent notamment lorsque
ces comportements délibératifs sont associés à des simulations où le temps est pris en compte.
Le recours à des architectures hybride est parfois considéré comme nécessaire afin de
proposer des comportements « rapides » face à une situation d‘urgence (i.e. délai de réaction
« logiciel » donné par l‘environnement). Un autre approche consiste à gommer l‘hétérogénéité
des modèles de simulation en s‘appuyant sur un modèle de simulation « informatique »
exprimé dans un formalisme tiers intégrant explicitement les notions de temps et de causalité.
L‘environnement Mimosa1 par exemple [MÜLLER, 2004], propose de traduire les différents
modèles de comportement d‘agents en un modèle DEVS afin de bénéficier des propriétés que
ce langage propose notamment au niveau temporel.
Enfin, il est possible de considérer ces différents modèles de simulation comme des
environnements de simulation indépendants [SERMENT, 2007] : la coordination des
environnements est alors assurée de la même manière que des simulations classiques et vue
comme un problème d‘interopérabilité. Ainsi, le standard HLA [DMSO, 1998], standard
IEEE 1516, propose une architecture logicielle et une spécification d‘interface pour la
simulation distribuée afin de faciliter l‘interopérabilité et la réutilisation de simulations dans
un contexte distribués. La notion d‘interopérabilité ne se limite pas à des problèmes de
compatibilité de formats de données ou d‘appels de fonction, et traite explicitement la
question de l‘échange d‘évènements entre simulateurs et leur synchronisation. Cette dernière
solution est particulièrement utile lorsqu‘une SOA est associée à d‘autres types de simulation.
1
http://mimosa.sourceforge.net/
42
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
biologiques (végétaux, insectes, animaux voire humains) et leur milieu naturel. La conception
de sociétés d‘agents permet de reproduire le comportement de chaque sous-système en
interaction tout en intégrant les dynamiques internes à l‘origine de ces comportements. Ces
sous-systèmes sont généralement mis en œuvre via des architectures réactives. L‘ajout du
facteur humain peut conduire à recourir à des modèles cognitifs pour montrer les
conséquences de différents modes de rationalité sur l‘évolution de l‘écosystème. Il peut
également assurer la stabilité de ce système (exemple: gestion d‘un parc naturel) [SERMENT
et al. 2007].
Les sciences économiques et sociales expérimentent aussi le paradigme agent dans l‘étude
de théories économiques (en particulier micro-économiques), de phénomènes sociologiques,
en théorie des jeux ou encore en simulation financière [PHAN et AMBLARD, 2007]. Le
terme « artificial economics » a d‘ailleurs consacré l‘existence à part entière de ce champ de
recherche. Les applications ont porté aussi bien sur des comportements de marchés, formation
de coalition ou de réseaux, diffusion d‘opinion politique, formation des normes, etc. [PHAN,
2004].
Les systèmes socio-techniques par leur nature distribuée, du fait que les performances
globales dépendent des performances locales et qu‘ils font face à des environnements
changeants, présentent toutes les caractéristiques d‘un problème multi-agents. La simulation
multi-agents s‘est donc rapidement intéressée à l‘étude des systèmes de production ou encore
aux chaînes logistiques [BUSSMANN et al., 2004] [GALLAND et al. 2005]. Les travaux
étudient leur comportement en vue d‘améliorer leur productivité ou leur robustesse face aux
perturbations. La validation de stratégie de contrôle de ces systèmes peut requérir des
simulations complexes hétérogènes dans lesquelles des SMA cognitifs réagissent aux stimuli
de SMA réactifs reproduisant les réactions du système de production aux décisions du
système dit « décisionnel » [LABARTHE et al., 2007].
Dans le domaine de la Physique, l‘approche agent a été utilisée dans l‘étude du
comportement de matériaux granulaires i.e. la formation ou la rupture d‘états d‘équilibre
(modèle GranuLab), la modélisation de l‘écoulement d‘eau sur des reliefs variés (modèle
Rivage par exemple), la reproduction de phénomènes astrophysique, ou de la structure
moléculaire.
On peut retrouver des approches similaires en Biologie. Une société d‘agents peut
modéliser des processus biologiques (évolution de populations d‘animaux) ou biochimiques
43
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
44
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
45
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
47
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
48
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
des protocoles qui symbolisent les interactions entre les rôles. Ils
sont conçus dans la phase de définition des interactions.
Figure 2.5 : méthode GAIA [WOOLDRIDGE et al., 2000] [ZAMBONELLI et al., 2003]
49
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
- Respect des standards : La modélisation dans GAIA s‘appuie sur les langages
AUML et UML.
- Outils et Implantation : GAIA ne propose pas de solution d‘implantation et donc
d‘outils associés. Des travaux complémentaires ont cependant cherché à
compenser cette lacune (cf. par ex. [PAYLOS et al., 2002] pour un couplage avec
Jade).
50
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
51
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
52
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
53
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
interactions avec les autres agents jouant les rôles correspondants. Les groupes
sont des ensembles de liens, de rôles et de relations de compatibilité entre rôles.
En ce qui concerne la spécification fonctionnelle, les concepts de bases sont le
schéma, le plan, le but et la mission. Comme illustré sur la Figure 2.8 (b), un
schéma social est composé d‘un ensemble de buts, de plans et de missions et
représente une fonction d‘un ou de plusieurs agents au sein de l‘organisation. Le
schéma a un but racine qui sera le but à atteindre pour exécuter le schéma social.
Les buts sont découpés en plans, c‘est-à-dire en ensembles de sous-buts qu‘il faut
atteindre séquentiellement, en parallèle, ou au choix (seulement l‘un d‘entre eux).
Enfin les missions regroupent les buts en ensembles cohérents au sein d‘un même
schéma pour être assignées aux rôles.
La spécification déontique est composée d‘un ensemble d‘expressions mettant en
relation les deux autres spécifications (un rôle et une mission) paramétrées par un
opérateur déontique (Obligation, Permission ou Interdiction) et une contrainte
temporelle. Ces relations rendent explicites la dimension normative des rôles que
joueront les agents en définissant par exemple l‘Obligation pour le rôle R1
d‘accomplir la mission m1 avant la date t. Ces expressions contraignent les agents
sur la possibilité de s‘engager sur une mission ou d‘atteindre un but suivant le rôle
qu‘ils jouent.
La spécification de ces trois dimensions forme une spécification d‘organisation
(OS) tandis que l‘instanciation des trois dimensions à l‘aide d‘agents jouant les
rôles et donc contraints par l‘organisation représente une entité organisationnelle
(OE). A un instant t de l‘évolution de l‘OE, chaque agent se voit contraint
d‘accomplir ou de ne pas accomplir une mission.
Par rapport aux modèles vus dans la section précédente, nous remarquons que
Moise+ utilise à la fois une spécification de la structure et de la fonction du SMA
ainsi qu‘une spécification déontique. De plus, même si la fonctionnalité du
système n‘est pas aussi poussée que dans TÆMS (Task Analysis, Environment
Modeling, and Simulation) [PRASAD et al., 1996], la structure est une des plus
complètes vue jusqu‘à maintenant et les expressions déontiques se basent sur ces
deux spécifications pour définir précisément les droits et devoirs non pas des
agents mais des rôles que ces agents joueront. Suivant si l‘agent joue un ou
plusieurs rôles, l‘agent sera plus ou moins contraint à accomplir ou non des
54
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
missions définies dans les fonctions du système. Cependant, AGR comme GAIA
spécifie les interactions entre les agents (ou les rôles selon le point de vue), ce que
Moise+ ne fait pas directement puisqu‘il ne définit aucun protocole mais des
contraintes sur les communications entre rôles grâce aux liens.
Figure 2.8 : (a) Structure de l‘équipe football et (b) l‘attaque en MOISE+ [HUBNER et al.,
2007]
55
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
- Respect des standards : la modélisation dans MOISE + repose sur les notations
graphique celle qui est utilisée dans les figures précédentes.
- Outils et Implantation : MOISE+ n‘adresse pas la phase d‘implantation.
56
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
- Respect des standards : La modélisation dans CRIO repose sur les langages de
modélisation UML.
- Outils et Implantation : CRIO est associé à la plate-forme d‘implantation JANUS
qui fournit les concepts de base nécessaires à l‘implantation du modèle
organisationnel.
57
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
58
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
A: Analyse, C: Conception, D : Développement, Haut: Support de génération de code, Moyen: Cadre « Modèle»
méthodes
CRIO GAIA AGR ADELFE MOISE (A&A)
Critères
Simulation multi-échelle
Oui Non Oui Non Non
59
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
60
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
62
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
plupart des applications sont axées sur la recherche dans la nature. Il existe quelques
prototypes industriels qui ont utilisé un langage de programmation (Par exemple, Java), un
logiciel commercial, ou un freeware / boîtes à outils open-source (par exemple, Swarm,
JATLite, JADE) pour leur développement.
La littérature ne semble pas envisager, explicitement, l'analyse et la conception (Aspects
les plus importants dans le développement d'applications de qualité industrielle), mais semble
prendre directement la mise en œuvre d‘exigences pré-déclarées. Nous n'avons pas trouvé
dans la littérature que des opinions considérant le développement des systèmes multi agents
dans la chaîne logistique comme un processus générique. Comme une étape dans cette
direction, les chercheurs ont commencé à développer des méthodes génériques, et boîtes à
outils pour les systèmes multi-agents.
63
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
Le modèle MASCF utilise surtout SCOR dans la phase d'analyse et dans une moindre
mesure, dans la phase de conception architecturale. Cependant SCOR n‘est pas utilisé dans la
conception détaillée. La phase d'analyse impliquant les SCOR transforme les entrées des
exigences du système en sorties d‘informations pour la définition des rôles basés sur SCOR,
leurs interactions, et leurs attributs. Cette information devient une entrée aux différents
modèles à développer dans la phase d'analyse utilisant la méthode GAIA.
La procédure d'analyse utilisant GAIA reste la même que dans la méthode GAIA
originale. La seule exception de l'analyse fondée sur GAIA est de rendre plus précises les
entrées à base de SCOR en plus des exigences habituelles du système. En conséquence, la
sortie de la phase d'analyse serait également plus précise et conforme aux définitions de
processus standard de SCOR. Une fois la phase d'analyse utilisant GAIA terminée, elle génère
une sortie sous forme d‘attributs basés sur le SCOR et relatifs à l'environnement, les rôles, les
interactions et les règles d'organisation pour toutes les sous-organisations du système de
chaîne logistique. Cette sortie devient une entrée à la phase de conception architecturale. En
outre, il pourrait y avoir des entrées supplémentaires SCOR relatives à ces rôles et à ces
interactions qui sont d'ordre organisationnel, très spécifiques et non prises en compte dans la
phase d'analyse. À part ces entrées supplémentaires, plus spécifiques, la phase de conception
architecturale dans le cadre reste le même que dans méthode GAIA. La sortie de la phase de
conception architecturale sera une contribution à la phase de conception détaillée. Etant donné
64
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
que les SCOR y sont exclus, la phase de conception détaillée resterait la même que dans la
méthode et GAIA génèrera une sortie sous la forme d'agents et de modèles de services pour le
système multi-agent de la chaîne logistique en cause.
Figure 2.10 : Cadre Multi Agent de chaîne logistique multi-agents (MASCF) [GOVIENDU et
CHINNAM, 2007]
Après avoir présenté les détails le cadre, nous allons maintenant concentrer notre
discussion sur comment SCOR améliore la précision et l'efficacité de GAIA.
La méthode autonome GAIA ne propose que des directives générales pour le
développement de tout système multi-agents. Ces directives générales sont très conceptuelles,
et sont destinées à fournir des orientations pour la réalisation de l'analyse et la conception,
laissant ainsi aux analystes individuels / développeurs, de prendre beaucoup de décisions.
Bien que l'information des systèmes du monde réel aide à apporter plus de clarté, les
développeurs auraient encore à traiter plusieurs variantes possibles pour chaque élément du
système multi-agent, que ce soit dans la définition des rôles, les interactions, les sous-
organisations, l‘environnement ou des règles de l'organisation. Ils doivent également faire
face à la modélisation de la bonne résolution (niveau global ou au niveau détaillé). Cela fait
de la conception de systèmes multi-agent une tâche très complexe.
65
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
En outre, la modélisation dans les situations du monde réel n'a jamais statique, en effet, la
modification, expansion, et réduction de la portée dépendent de temps en temps de l'évolution
des besoins. Toutes ces possibilités énumérées, nous pensons que si des descriptions plus
précises et plus d‘informations sont apportées dans ces activités, la modélisation des systèmes
multi-agents de la chaîne logistique restera une tâche complexe et fastidieuse. Même si les
développeurs individuels jouent toujours un rôle essentiel dans la plateforme, l‘apport de
précision grâce à des descriptions de processus standard, aiderait à réduire la complexité dans
une large mesure. C'est ici que le SCOR joue un rôle majeur dans ce cadre MASCF. Il
s‘aligne avec la méthode Gaia dans la définition de chaque élément du système. L‘analyse à
base de SCOR convertit les exigences du système en entrées plus précises, spécifiques,
structurées et bien définies pour l'analyse en utilisant la méthode GAIA. Cette entrée permet à
GAIA d‘apporter une analyse mieux structurée et la sortie qu'il offre serait beaucoup plus
précise. Il aide à une meilleure réalisation de la phase de conception.
66
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
Néanmoins le modèle MASCF nous apparaît présenter des limites, elles aussi liées à
l‘usage conjoint de la méthode GAIA et et du modèle SCOR. Ces limites sont :
- MASCF ne s'engage pas à des techniques spécifiques pour la modélisation (par
exemple, les rôles, l'environnement, et les interactions) étant donné que les normes
multi-agents sont encore en évolution.
- Il est technologiquement neutre et ne traite pas directement de la mise en œuvre
informatique.
- Les activités liées à la collecte des exigences et à la modélisation sont en dehors de
son champ d'application.
- MASCF couvre toutes les opérations définies dans le modèle SCOR. Du fait que
SCOR est un model opérationnel de référence, il ne couvre pas tous les processus ou
activités (par exemple, de génération de demande, le support client après livraison, et
de l'administration). Toutefois, comme le modèle MASCF est basé sur une méthode
générique à savoir GAIA, il serait encore possible de modéliser d'autres aspects (par
exemple, tactique et stratégique) des systèmes non couverts par SCOR.
67
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
d‘abstraction et s‘articule autour de trois modèles : (i) un modèle de domaine, (ii) modèle
conceptuel, (iii) et un modèle opérationnel. Il se concentre essentiellement sur les aspects de
conception et l‘analyse.
La modélisation orientée agents de la chaînes logistique repose sur la transformation du
modèle de domaine. Les éléments du modèle de domaine sont représentés dans le modèle
conceptuel par des agents et des objets. Il s‘agit de spécifier les agents au niveau conceptuel
afin de les rendre opérationnel. La transformation des éléments selon deux types d‘agents
d‘un niveau conceptuel : l‘Agent-Acteur et l‘Agent-Activité. L‘Agent - Acteur représente un
centre NetMan (Networked Manufacturing) [LABARTHE et al., 2007] et l‘Agent-Activité
représente un processus de transformation de distribution ou de stockage réalisé par un Agent-
Acteur. A travers la phase de spécification l‘informaticien transforme les agents conceptuels
sur la base d‘architectures d‘agents adaptées à la modélisation opérationnelle. Cette phase
repose sur la définition des processus décisionnels et opérationnels. Chaque agent conceptuel
est représenté par un modèle d‘agent composé de deux architectures logicielles d‘agents : les
agents cognitifs et les agents réactifs.
Le modèle de l‘Agent-Acteur représente un acteur du système réel, par son aspect
comportemental, par son rôle social et par les responsabilités qu‘il exerce au sein de
l‘organisation [LABARTHE et al., 2006] .Le modèle de l‘Agent Acteur définit une relation de
dépendance entre deux ou plusieurs agents. Il compose deux types d‘agents caractérisés par
une structure interne et des fonctionnalités différentes. Un Agent Acteur en représenté par un
seul agent cognitif ou bien par un seul agent réactif selon les spécificités et les caractéristiques
du système à simuler.
Le modèle de l‘Agent-Acteur permet de représenter les comportements des agents d‘un
point de vue local et d‘un point de vue social. Le niveau local recouvre les comportements
individuels de l‘agent mis en œuvre pour l‘atteinte de ses objectifs propres. Le niveau social
concerne les comportements collectifs des agents pour la réalisation d‘objectifs communs.
Le modèle de l‘Agent-Acteur est défini en tant que composition d‘agents élémentaires en
interactions. Dans le modèle Agent-Acteur il y a deux formalismes de spécification des
comportements. Les comportements des agents réactifs sont spécifiés à l‘aide du langage de
modélisation AUML, tandis que les comportements des agents cognitifs sont spécifiés à l‘aide
d‘un formalisme spécifique développé au LSIS.
68
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
7 Synthèse et conclusion
Dans notre état de l‘art, nous avons tout d‘abord défini le concept de chaîne logistique, et
cernés le management de la chaîne logistique, ainsi que le besoin de modéliser ces chaînes et
simuler la dynamique de leur comportement.
69
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
La prise en compte de la dynamique est une étape importante dans la création des modèles
pour la simulation. Les propriétés qui caractérisent les SMA apparaissent "naturelles" pour
l‘étude et la représentation comportementale des entités qui constituent la chaîne logistique,
entités soumises à la nature dynamique des interactions. Les systèmes multi-agents offrent la
possibilité de représenter et d‘exprimer explicitement les individus, leurs comportements et
leurs interactions. La simulation par système multi-agents s‘appuie sur la spécification du
comportement d‘entités autonomes dont les interactions définissent le comportement du
système.
Un nombre croissant de travaux portent sur la modélisation et/ ou la simulation de chaînes
logistiques par SMA. Les agents sont essentiellement utilisés pour la représentation des
entités de la chaîne logistique. La spécification de leurs comportements est déterminée par le
niveau d‘abstraction du modèle. De fait, les rôles joués par les agents et leur nombre sont
différents d‘un projet à l‘autre. Les agents possèdent des compétences, des comportements,
des capacités de communication et de prise de décisions qui s‘étendent de la gestion d‘une
ressource matérielle à la gestion stratégique d‘une entreprise.
Les méthodologies de conception de SMA générales s‘intéressent à des problèmes de
conception de systèmes multi-agents relatifs à : l‘identification des agents, la spécification des
capacités de raisonnement, l‘organisation du système multi-agents et la représentation des
interactions entre agents. Elles ont pour objectifs de guider le concepteur dans les phases
d‘analyse et de conception de systèmes multi-agents.
Les difficultés inhérentes à la modélisation de la chaîne logistique sont principalement
dues aux causes suivantes : (i) l‘hétérogénéité des entités qui la composent, (ii) la complexité
des interactions, (iii) la prise en compte de l‘environnement, et (iv) la diversité des structures
organisationnelles.
De nombreux projets de recherche s‘intéressent à l‘analyse du comportement de la chaîne
logistique dans le cadre de l‘échange de données. Au niveau de la conception des modèles
pour la simulation, la demande est généralement spécifiée comme un paramètre d‘entrée.
Cependant, dans un contexte de personnalisation des produits, cette demande est difficile à
obtenir par l‘exploitation de modèles prédictifs classiques du fait du manque de données ou
d‘historiques.
La prise en compte de la dynamique est une étape importante dans la création des modèles
pour la simulation. Les propriétés qui caractérisent les systèmes multi-agents, apparaissent
"naturelles" pour l‘étude et la représentation comportementale des entités qui constituent la
70
Chapitre 2 : Modélisation et simulation orientés agents de chaîne logistique
chaîne logistique, entités soumises à la nature dynamique des interactions. Les systèmes
multi-agents offrent la possibilité de représenter et d‘exprimer explicitement les individus,
leurs comportements et leurs interactions. La simulation par système multi-agents s‘appuie
sur la spécification du comportement d‘entités autonomes dont les interactions définissent le
comportement du système.
L‘objectif général de notre recherche est d‘accompagner le processus de modélisation et
de simulation d‘une chaîne logistique jusqu‘à son expérimentation. L‘atteinte de cet objectif
nécessite d‘une part la proposition d‘un cadre méthodologique spécifique, et d‘autre part la
proposition d‘une architecture logicielle adaptée à ce cadre, permettant l‘exécution des
simulations de ces chaînes.
Aussi en nous appuyant sur les divers travaux présentés dans cet état de l‘art, dans la
poursuite des travaux développés au LSIS, le chapitre trois présentera notre contribution au
niveau méthodologique consistant à proposer un cadre méthodologique de modélisation de
chaînes logistiques modélisant de façon explicite des indicateurs, et des aspects
organisationnels liés à ces chaînes.
Etroitement lié à ce cadre méthodologique proposé, le chapitre quatre présentera notre
contribution relative à la proposition d‘une architecture logicielle permettant la simulation de
chaînes logistiques avec la prise en compte de ces indicateurs et ces aspects organisationnels.
71
CHAPITRE 3 : UN CADRE MÉTHODOLOGIQUE
ORIENTÉ AGENTS POUR LA MODÉLISATION
ET LA SIMULATION ORGANISATIONNELLES
DE CHAÎNES LOGISTIQUES
PLAN DU CHAPITRE
1. Introduction ................................................................................................................... 74
73
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
1. Introduction
Comme nous l‘avons vu lors du chapitre précédent d‘état le l‘art, de nombreux travaux de
recherche s‘appuient sur le paradigme agent pour proposer une modélisation et/ou une
simulation de chaînes logistiques. En effet, ce paradigme fournit une approche adaptée à la
représentation de tels systèmes complexes permettant une prise en compte de leur dynamique.
La conception de modèles orientés agents pour la modélisation et/ou la simulation de chaîne
logistiques est une tâche complexe qui nécessite la mise en œuvre de connaissances et de
compétences spécifiques.
74
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
Enfin au niveau de la simulation des chaînes logistiques, si l‘on enlève la conséquence de
la non prise en compte des observables et indicateurs portant sur l‘organisation précédemment
évoquée, la principale faiblesse nous semble résider dans le fait que les architectures de
support à la simulation proposées, peuvent paraître assez rigides, et notamment ne pas
suffisamment permettre l‘intégration, la réutilisation, de modèles de simulation pouvant être
développées dans d‘autres outils de simulation.
Dans ce chapitre, nous proposons un nouveau cadre méthodologique de modélisation et
simulation orienté agents de chaînes logistiques, tentant de répondre à ces faiblesses,
notamment en prenant en compte explicitement les aspects organisationnels, tant structurel
que dynamique, ainsi que des observables et indicateurs dans la modélisation de ces chaînes,
avec leurs conséquences sur leur simulation. Dans le chapitre suivant, nous proposons une
architecture logicielle de support à l‘exécution des modèles de simulation élaborés selon ce
cadre méthodologique proposé.
Dans la deuxième section de ce chapitre nous précisons l‘objectif, les fondements ou
principes, du cadre méthodologique orienté agents que nous proposons pour la modélisation
des chaînes logistiques. Dans la troisième section nous présenterons de façon générale ce
cadre méthodologique, notamment les différents niveaux d‘abstraction qui le structure :
niveau conceptuel et niveau opérationnel, ainsi que les différents modèles qui le composent à
chacun de ces niveaux d‘abstraction. Dans la quatrième section, nous développons l‘étape de
modélisation conceptuelle du cadre méthodologique proposé, en présentant les modèles
concernés, leur articulation et le processus de leur élaboration, avec une illustration concrète
sur une chaîne logistique. Dans la section cinq nous présentons en détail l‘étape de
modélisation opérationnelle de ce cadre méthodologique en l‘illustrant par une modélisation
d‘une chaîne simple.
75
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
Operation Reference) à une structure méthodologique générique pour le développement d‘un
système multi-agents selon la méthode Gaia. Citons aussi les travaux développés au
laboratoire LSIS [LABARTHE et al., 2007] qui proposent un cadre méthodologique pour la
modélisation et la simulation des chaînes logistiques, cadre reposant sur plusieurs niveaux
d‘abstraction assurant un continuum dans l‘expression des modèles issus du domaine, et ce,
jusqu‘à leur mise en œuvre pour la simulation.
Comme nous l‘avons déjà évoqué, ces travaux présentent différentes faiblesses tant au
niveau de la modélisation (aspects organisationnels et indicateurs) des chaînes logistiques
qu‘au niveau de leur simulation qui doit en résulter (intégration, réutilisation). L‘objectif
général du cadre méthodologique proposé dans cette recherche est de palier certaines de ces
faiblesses, plus précisément il s‘agit plus de permettre la modélisation et la simulation de
chaînes logistiques prenant mieux en compte les aspects organisationnels et les finalités
d‘étude de ces chaînes.
Pour atteindre cet objectif, le cadre méthodologique proposé est fondé sur trois grands
principes : (i) une description organisationnelle de la chaîne, (ii) une identification explicite
d‘observables, et (iii) une approche multi-niveaux dans laquelle cette description
organisationnelle et cette identification des observables seront faites à des niveaux de détail
et/ou d‘organisation différents, jugés pertinents pour la modélisation et la simulation de la
chaîne. Dans les sous-sections suivantes nous développons ces trois grands principes sur
lesquels est fondé notre cadre méthodologique.
76
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
d‘implémentation. La plupart de ces méthodes utilisent les rôles afin de rendre le
développement plus flexible, en ayant souvent recours à des niveaux d‘abstraction ou de
détail (hiérarchiques). Elles exploitent les rôles soit pour décomposer ou contextualiser les
comportements d‘agent et ajoutent souvent des contraintes au travers de règle ou de normes.
De plus, dans ces méthodes, le temps n‘est en général pas traité - excepté dans CRIO
[GAUD et al., 2008], et une granularité homogène (un seul type d'agents) sont la plupart du
temps supposés. Quand les agents délibératifs et les agents réactifs reproduisent des
comportements d'horizon temporel différents, alors la synchronisation s‘impose et doit être
spécifiée lors la phase de modélisation, avec éventuellement des conséquences au niveau de
l‘implémentation logicielle.
La description de l'organisation de la chaîne logistique, sa structure organisationnelle et sa
dynamique, doit être faite dès le début de la modélisation de la chaîne, afin de proposer les
observables appropriés à ses composants, et du fait que cette organisation préexiste au modèle
d'agent. Enfin, en ce qui concerne la dynamique organisationnelle, les comportements
coopératifs sont les outils de base pour reproduire des situations de coopération dans une
chaîne logistique réelle comme pour traiter des événements perturbateurs, permettant à la
chaîne de s‘adapter [TRANVOUEZ et FERRARINI, 2006].
Une architecture délibérative et réactive d'agents, architecture composée d‘agents
délibératifs et d‘agents réactifs en interaction, résulte directement du besoin de valider de tels
comportements coopératifs. Dans [LABARTHE et al., 2007] il est proposé de mixer différents
types de comportements (réactifs et délibératifs), afin de permettre d‘étudier comment les
comportements locaux peuvent impacter le comportement global de la chaîne logistique.
Cependant, des aspects organisationnels ont principalement été pris en considération au
niveau du logiciel de simulation.
Ainsi, le cadre méthodologique que nous proposons doit explicitement prendre en compte
dans la modélisation de la chaîne logistique, sa structure organisationnelle et sa dynamique,
notamment les relations organisationnelles pouvant exister entre les acteurs de la chaîne, ainsi
que la modélisation des comportements réactifs et délibératifs et les différents rôles de ces
acteurs.
77
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
logistique considérée, observables caractérisant tant sa structure que sa dynamique comme
nous l‘avons vu dans le chapitré précédents.
Les observables organisationnels d‘une chaîne logistique sont généralement définis par les
experts de la logistique, lors d‘une première modélisation de la chaîne (modélisation de
niveau domaine). Comme nous l‘avons déjà évoqué, le fait que ces observables et indicateurs
ne soient pas pris en compte dans la phase de modélisation de la chaîne a des conséquences
importantes au niveau de la simulation de la chaîne. En effet, ces observables sont des
éléments organisationnels de la chaîne importants, dont il s‘agit de cerner l‘évolution lors de
la simulation (taux de rotation des stocks, niveau de service client…). Aussi s‘ils ne sont pas
pris en compte en modélisation, ils ne pourront être pleinement ou simplement étudiés lors de
la simulation. Afin de mieux cerner les enjeux posés par l‘identification des observables et la
production d‘indicateur nous rappelons ci-après quelques définitions en nous inspirant du
cadre d‘analyse proposée par [LETOUZEY, 2001]
Les observables sont des données, des informations, devant être mises en avant dans les
résultats de simulation pour être plus particulièrement étudiés dans leur évolution. L'objectif
principal est de reproduire le comportement de la chaîne logistique selon des niveaux de détail
requis pour produire les observables désirés par un utilisateur observateur. Les observables
décrivent ainsi des informations ou des indicateurs, simples ou agrégés (à différents niveaux
hiérarchiques), décrivant les états des entités de la chaîne logistique, les performances, ainsi
que les processus ou les décisions (stratégies d‘ordonnancement, stratégies de gestion de
stock, etc.), et leurs conséquences (évaluation des performances de leurs résultats sur la
chaîne). Ces observables organisationnels sont généralement mesurés selon des indicateurs,
notamment de performance, qui permettront de constituer des métriques d‘observation et
évaluation de la chaîne lors de sa simulation.
En management un indicateur se définit comme une information ou un ensemble
d‘informations contribuant à l‘appréciation d‘une situation. Il peut être défini comme un
événement, un fait observable, mesurable et déterminé par un calcul qui l‘identifie de façon
qualitative ou quantitative. A partir de cela, nous considérons un indicateur organisationnel
comme l‘information choisie associée à un phénomène organisationnel, destinée à en observer
périodiquement les évolutions au regard d'objectifs. Ainsi, ces indicateurs sont des données
quantitatives qui caractérisent une situation en évolution (une action ou des conséquences
d'une action) afin d'évaluer et comparer leur statut à différentes dates.
78
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
Si la notion d‘indicateur n‘est pas nécessairement associée à une mesure de performance,
les indicateurs de performance sont largement utilisés en management, notamment pour
l‘élaboration de divers tableaux de bords. Un indicateur de performance (Key Performance
Indicator) [RECH, 2005] est une mesure ou un ensemble de mesures orientées sur un aspect
critique de la performance globale de l'organisation. Le but principal d'une évaluation des
performances d'un système est de mesurer l'écart entre les performances réelles et les
performances souhaitées, et de juger le caractère plus ou moins acceptable de cet écart [LE
DAIN et NDAO, 1997]. En conséquence, un indicateur de performance est une donnée
quantifiée qui mesure l‘efficacité et/ou l‘efficience de tout ou partie d‘un processus ou d‘un
système (réel ou simulé) par rapport à une norme, un plan ou un objectif, déterminé et accepté
dans le cadre d‘une stratégie d‘entreprise.
Une première caractéristique fondamentale de l‘indicateur de performance est qu‘il est
généralement défini par rapport à un objectif [BERRAH, 1997] [BITTON, 1990], en
conséquence son évaluation se fait par comparaison à une référence. Le but principal d'une
évaluation des performances d'un système est de mesurer l'écart entre les performances réelles
et les performances souhaitées, et de juger le caractère plus ou moins acceptable de cet écart
[LE DAIN et NDAO, 1997]. Une autre caractéristique de l‘indicateur de performance est son
aspect quantifié [LE DAIN et NDAO, 1997] [BERRAH, 1997] [BITTON, 1990], il est avant
tout une mesure, pas nécessairement directe, et pouvant nécessiter une recherche
d'information à des niveaux plus ou moins élevés du système évalué.
Ainsi l'indicateur de performance est caractérisé par un objectif, une mesure d'efficacité et
des variables d'action [BERRAH et HAURAT, 1997]. L'objectif représente l'état espéré, la
mesure l'état réel et la variable d'action l'un des leviers sur lesquels on peut agir en fonction de
l'écart entre l'objectif et la mesure [BERRAH et al., 2000].
D‘une façon générale, on distingue dans la littérature deux grands types d‘indicateurs :
- Indicateur de résultat : il se réfère à la qualité du produit ou de la prestation, ce type
d‘indicateur indique une valeur à un moment donné et reflète la réalité. Généralement
sa lecture se fait dans la durée, la propension à l‘efficacité ou non résulte en effet du
cumul de ces données dans le temps (par exemple pour un résultat de production de
6000 chaises par jour).
- Indicateur de processus : c‘est une mesure qui donne l‘ensemble à mettre en œuvre
pour atteindre un objectif déterminé, sur une période déterminée. Indique le respect
79
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
des processus existant, par exemple le délai (par exemple pour les travaux en cours au
sein d'un processus de production).
A ces deux types d‘indicateurs de performance peut se rajouter des indicateurs externes,
comme les indicateurs associés à la satisfaction du client. Les indicateurs de résultats et de
processus peuvent être répartis en trois grandes familles :
- Stratégique (par exemple pour une augmentation des ventes de 10% il ya aura des
indicateurs précis par produit, par vente, par vendeur, par territoire).
- Tactique (par exemple pour l'atteinte de résultats au niveau de l'amélioration continue
à l'intérieur de l'entreprise; pour améliorer le temps de 'setup' d'une machine).
- Opérationnel (par exemple pour déterminer et améliorer les temps d'opération au sein
d'un processus).
On trouve aussi dans [BERRAH, 1997] et [BERRAH et al., 1995] la proposition d‘un
modèle d‘indicateur de performance articulé autour de trois facettes : objectifs, évaluation et
appréciation (Figure 3.11) :
80
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
- la facette évaluation concernant la mesure : acquisition puis évaluation par rapport à
l'objectif;
- la facette appréciation concernant l'interprétation de la mesure par l'utilisateur :
vérification de la validité de la mesure (conditions de la mesure) et remise en cause de
l'objectif, en fonction des connaissances et de l'expertise de l'utilisateur.
Ce modèle nous apparaît original car il propose d'intégrer l'évaluation de données
qualitatives, alors que l'indicateur de performance précédemment défini était essentiellement
une donnée quantifiée. Cet aspect qualitatif, que l'on retrouve également au niveau de
l'objectif associé, est un point intéressant des indicateurs, quoique très discuté. Bien que
souvent ignoré par la recherche, il est très présent dans l'industrie où il est parfois difficile de
formuler précisément l'objectif à atteindre.
A partir de cela, nous pouvons considérer que, comme l‘illustre la Figure 3.12
[MUSTAPHA et al., 2010], l‘indicateur de performance peut être caractérisé par : (i) une
catégorie spécifiant le type d‘objectif pour lequel il a été défini, par exemple décrire une
activité, une productivité, une qualité, des coûts, des délais, (ii) un type qui peut être soit
quantitatif ou qualitatif et ainsi nécessiter la définition de ses unités et les valeurs autorisées
(un nombre réel si de type quantitatif et liste des valeurs si de type qualitatif), et enfin (iii) par
une ou plusieurs fonctions comme un objectif de mesure (résultats, processus, satisfaction
client, etc.), un domaine de mesure (activité, projet, entreprise, etc.), ou encore une catégorie
d‘utilisateur (direction générale de l‘entreprise, direction du projet, chefs de projet, etc.).
81
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
2.3 Modélisation et simulation multi-niveaux, multi-échelles et
multi-paradigmes
Le cadre méthodologique pour la modélisation et la simulation de chaîne logistiques que nous
proposons préconise une modélisation de la chaîne logistique intégrant des modélisations de
composants de celle-ci réalisées à différents niveaux de détail. En effet la prise en compte
explicite d‘une part d‘aspects organisationnels de la chaîne logistique, aspects tant structurels
que dynamiques, avec notamment l‘explicitation de rôles et de comportements de types
réactifs ou délibératifs des composants de la chaînes, et d‘autre part d‘observables et
d‘indicateurs associés à la chaîne ou à ses différents composants, font qu‘il est nécessaire de
préconiser une modélisation à la fois multi-niveaux de détails et multi-échelles, avec ses
conséquences au niveau de la simulation.
82
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
être pertinents et efficaces du point de vue de la complexité de la modélisation ou du point de
vue technique. Par conséquent, la modélisation et la simulation doit permettre l‘élagage de la
structure organisationnelle de la chaîne, et de considérer différentes échelles de simulation.
Ainsi dans la simulation d‘une chaîne logistique un acteur entreprise peut être complètement
simulée tout le long de son niveau d'organisation, alors que la simulation d‘un autre acteur
entreprise puisse se résumer à une seule entité de simulation, sans que cela n‘empêche ces
deux acteurs entreprises d‘interagir.
Au niveau de la simulation de la chaîne logistique, une gestion d‘échelles temporelles
différentes s‘avère nécessaire. En effet, les composants de la chaîne logistique peuvent
réaliser des activités dans en temps réel (simulé) ; (par exemple la surveillance d'une machine
de production ou d'un camion) ou avoir une durée plus longue (par exemple, un processus de
rééchelonnement). La simulation doit donc faire face à des ordonnanceurs locaux (chacune
dédiée à un niveau d'organisation ou un groupe d'entités simulées), tout en assurant un
comportement global cohérent de la SC (en termes de contrainte de temps et de causalité).
83
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
En raison de la nature de la chaîne logistique (SC) et des exigences de simulation,
l'architecture de logiciels distribués est nécessaire. Deux approches principales sont possibles:
84
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
3.1 Niveaux d’abstraction considérés
Les travaux de recherche présentés lors de la revue de littérature proposent différentes
approches de modélisation de la chaîne logistique. Ces approches reposent sur un mécanisme
de représentation positionnant la phase d‘abstraction entre le système réel et le modèle multi-
agents.
Nous proposons une démarche de modélisation incrémentale selon laquelle différents
modèles sont élaborés à des niveaux d‘abstraction différents. Dans un premier temps, le
système réel est représenté selon une approche de modélisation liée au domaine de l‘étude.
Dans un second temps, nous avons recours au paradigme agent pour traduire le modèle de
domaine en un modèle multi-agents. Ceci, afin de prendre en considération l‘ensemble des
propriétés relatives au domaine de l‘étude dés la phase d‘abstraction. La transformation du
modèle de domaine en modèle multi-agents favorise le transfert des connaissances rapportées
par l‘expert du domaine, tant au niveau de la représentation des individus qu‘au niveau de la
représentation de leur organisation.
Trois intervenants majeurs dans le processus général de la modélisation et simulation de
chaînes logistiques ont été définis dans [MEURISSE et VANBERGUE, 2001] : le
thématicien, le modélisateur et l‘informaticien. Ces intervenants travaillent conjointement
dans le but de concevoir et de manipuler des modèles aux objectifs différents. Le thématicien
définit les besoins de simulation et se charge de la description du système par la conception
du modèle de domaine. Le modélisateur transforme le modèle de domaine en un modèle
conceptuel, et s‘appuie pour cela sur le paradigme agent. L’informaticien pour sa part
s‘intéresse à l‘opérationnalisation du modèle conceptuel pour l‘implémentation d‘agents
logiciels au sein d‘un environnement de simulation. De plus l‘informaticien conçoit un
environnement d‘expérimentation pour l‘exploitation des simulations et des résultats associés.
Ces modèles différents modèles impliqués dans le processus général de la modélisation et
simulation de chaînes logistiques peuvent être structurés selon différents niveaux de
conceptions, ou niveaux d‘abstraction, déjà été définis dans [LABARTHE et al., 2007], et qui
sont les suivants :
- Le niveau domaine a pour objet de formaliser les connaissances manipulées par
l‘expert de domaine sur les chaînes logistiques. Il s‘agit de décrire la structure du
réseau manufacturier ainsi que les comportements de ses acteurs. Ce niveau requiert
l‘utilisation de formalismes relevant du domaine de l‘étude.
85
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
- Le niveau conceptuel traduit le modèle de domaine en s‘appuyant sur une approche
de modélisation orientée agents. Le modélisateur fait abstraction des considérations
techniques liées à l‘exécution de simulations. La modélisation conceptuelle repose sur
plusieurs modèles précisant la nature des agents et l‘architecture du système multi-
agents.
- Le niveau opérationnel a pour objet de traduire le modèle conceptuel afin de le
rendre opératoire. Il s‘agit pour l‘informaticien d‘opérationnaliser le modèle
conceptuel agent. Chaque agent identifié au niveau conceptuel est spécifié et
implémenté selon les contraintes liées à l‘environnement de développement.
- Le niveau exploitation s‘intéresse à la mise en œuvre du modèle opérationnel au sein
d‘un système informatique. Il s‘agit, toujours pour l‘informaticien, de prendre en
compte les contraintes techniques ignorées au niveau opérationnel. Ainsi le système
multi-agents sera déployé au sein d‘un environnement logiciel autorisant son
exécution pour la conduite d‘expérimentations par simulations.
La « colonne vertébrale » du cadre méthodologique proposée est ainsi définie par la mise
en relief de l‘ensemble des niveaux d‘abstraction. A ces niveaux, correspondent des grandes
étapes du processus de modélisation et de simulation, étapes prises en charge par les trois
intervenants (thématicien, modélisateur et informaticien). L‘articulation de ces étapes est
illustrée à la Figure 3.13.
86
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
L‘enchaînement de ces étapes offre une vue d‘ensemble des niveaux de conception pour la
modélisation et la simulation orientées agents. Il s‘agit par la suite de définir le cadre
méthodologique.
2
www.ueml.org
87
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
chapitre. L‘étape de modélisation de domaine ne sera pas traitée dans le cadre de cette
recherche, nous renvoyons le lecteur sur la littérature consacrée à la modélisation d‘entreprise,
notamment dans [LABARTHE, 2006]. En ce qui concerne l‘étape d‘exploitation, elle sera
abordée dans le chapitre suivant relatif à l‘architecture logicielle de support à la simulation.
89
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
3.4 Problématique de la modélisation opérationnelle
La problématique générale de l‘étape de modélisation opérationnelle est de traduire le modèle
conceptuel orienté agent obtenue à l‘issue de la modélisation conceptuelle dans un modèle
orienté agents opératoire. Il s‘agit pour l‘informaticien d‘opérationnaliser le modèle
conceptuel agent CAOM. Chaque agent identifié au niveau conceptuel doit être spécifié et
implémenté selon les contraintes liées à l‘environnement de développement.
Cette modélisation opérationnelle repose principalement sur l‘élaboration d‘un modèle, le
Modèle OPérationnel Agent (OPAM – OPerational Agent Model). Nous voyons dans la
section 5 dédiée à la modélisation opérationnelle, que ce modèle OPAM n‘est pas suffisant
pour couvrir toutes les spécifications attendues à ce niveau opérationnel, aussi d‘autres
modèles ou diagrammes le complèteront.
Le passage de la modélisation conceptuelle et la modélisation opérationnelle se fait au
travers de la « spécification ». Nous proposons de découper cette spécification en deux
temps : (i) traduire le modèle de rôles en Modèle Organisationnel Conceptuel Agent (ou
CAOM – Conceptual Agent Organizational Model) (agentification) et ensuite (ii) spécifier un
modèle opérationnel agent à partir de ce modèle conceptuel agent.
A partir du Modèle OPérationnel Agent (ou OPAM – OPerational Agent Model),
l‘informaticien s‘intéresse à la conception du système multi-agent. Il s‘agit pour
l‘informaticien de rendre exécutable le modèle opérationnel en l‘implémentant au sein d‘un
environnement de développement agents. Cette dernière étape de conception nécessite la
réalisation de nombreux tests pour la validation du système multi-agents.
Notons que dans les travaux développés dans [LABARTHE et al., 2007], les observables,
potentiellement liés à la structure organisationnelle du système réel ne sont pas explicitement
décrits au niveau de la modélisation (conceptuelle et opérationnelle). Ils ne sont mentionnés
qu‘au niveau du modèle de système multi-agents, c‘est-à-dire qu‘ils n‘apparaissent qu‘au
moment de la mise en œuvre. Dans le cadre méthodologique que nous proposons, ces
observateurs sont rattachés aux aspects organisationnels de la chaîne, ils sont alors spécifiés
dès la modélisation conceptuelle.
Un autre objectif visé par ce cadre méthodologique au niveau opérationnel est de
permettre une simulation de composants de la chaîne, à différents niveaux d‘organisation
et/ou de détail, sur différentes plates-formes logicielles associées à différents paradigmes de
modélisation, et ainsi de faciliter le processus de traduction vers ces différents paradigmes et
90
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
leur mise en œuvre. Cela nécessite une architecture logicielle, multi-modèle, multi-paradigme
et un cadre méthodologique pour faciliter la construction de la simulation d'une chaîne
logistique.
91
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
repose ce modèle CROM, puis son méta-modèle. Enfin, nous présentons un exemple
illustratif d‘élaboration d'un modèle CROM pour une chaîne logistique simple.
92
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
chaîne ainsi que le type prédéfini des groupes (par exemple l'organisation des services
différents de production).
Dans un modèle CROM l‘organisation d‘une chaîne logistique est composé de niveaux
(hiérarchiques) qui détiennent un ou plusieurs groupes, chaque groupe contenant les acteurs
jouant des rôles. Notons qu‘un acteur joue un rôle dans un groupe, mais peut aussi jouer le
même rôle dans les différents groupes. Inversement, le même rôle peut être joué par plusieurs
acteurs.
93
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
L‘organisation, le groupe, et les acteurs peuvent générer des observables (quantitatifs ou
qualitatifs). Un rôle fournit des services à d'autres rôles du même groupe, tandis qu'un service
peut exiger des capacités (tel que définies dans le modèle de domaine). Des relations peuvent
se tisser entre acteurs et/ou rôles. Elles représentent un flux d'informations et/ou flux
physiques (produits, produits semi-finis, matières premières, etc.).
Il existe dans un modèle CROM deux types de groupes d‘acteurs jouant des rôles :
- les groupes structurels associés à une description isomorphe de l'organisation
structurelle de la chaîne logistique;
- les groupes dynamiques, caractérisé par une durée de temps ou un objectif partagé par
des acteurs de différents groupes structurels.
Type de Catégorie de la Notation
Type de flux Description
relation relation graphique
Représenter les processus de
collaboration entre les acteurs d'une
On distingue deux types d‘interactions dans un modèle CROM : les relations structurelles
correspondant à des interactions permettant de développer une collaboration, des contrôle, un
94
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
ordonnancement et une planification, et les relations dynamiques associées à des interactions
contractuelles. Notons que les relations structurelles et fonctionnelles des sous-types reliées à
la même distinction : un groupe de structure ne détient ainsi que la relation structurelle. Le
Tableau 3.2 présente plus en détail ces deux types de relations (interactions) possibles dans un
modèle CROM, avec les types de flux concernés, et les notations graphiques adoptées.
Les observables sont caractérisés par ses catégories comme l‘activité, productivité,
qualité, coûts, délais (quantitative ou qualitative).
Sur la base de concepts CROM (acteurs, des groupes et niveaux hiérarchiques), chaque
niveau est défini par ses groupes, leurs acteurs et leurs rôles. Les rôles sont caractérisés par
un service qu'ils mettent en mouvement.
Ainsi, la structure d‘un groupe est définie comme un quintuplé: Gi = (Aci, Ri, Si, Rei, T),
où :
- Aci est l'ensemble des acteurs représentés par le groupe Gi ;
- Ri est l'ensemble des rôles joués par des Aci ;
- Si est l'ensemble des services des rôles;
- Rei est l'ensemble des relations entre les acteurs;
- T représente l'horizon de temps. Chaque niveau a un horizon temporel (court terme,
moyen terme, à long terme) qui sera utile pour la simulation.
95
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
en négociant avec l‘acteur Compagnie 2 au niveau N1. Tandis qu‘au niveau N2, cet acteur
Compagnie 2 contrôle ses capacités de production/assemblage avec un autre acteur qui est son
Directeur de production/assemblage. Ce dernier acteur prend des décisions à court terme à ce
niveau N2, et il contrôle en temps réel l‘exécution de ces décisions par des acteurs plus fins
qui sont Machine 1, Machine 2, Machine n modélisés sur le niveau N3.
Dans cet exemple, est décrit un processus VMI (Vendor Management Inventory) dans
lequel la Compagnie 2 utilise Compagnie 1 comme une ressource d'actions en cas de besoin.
Considérant que l'acteur Stock appartient à la Compagnie 1 (relation structurelle) joue le
96
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
même rôle <stock> dans un groupe dynamique constitué avec l'acteur de camions de
Compagnie 2. Une relation de type contrôle spécifie les flux d'informations que les acteurs
échangent pour atteindre leurs objectifs.
97
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
Comme le précise le méta-modèle, une organisation est structurée selon des niveaux
(hiérarchiques) qui contiennent un ou plusieurs groupes, qui à leur tour se composent d‘un ou
plusieurs agents jouant un seul rôle. Ainsi, dans un modèle CAOM, un agent joue un rôle
unique dans un groupe. Notons qu‘un agent peut jouer le même rôle dans des groupes
différents, et qu‘un même rôle peut être joué par plusieurs agents dans un même groupe.
L‘organisation, le groupe, et les agents peuvent générer des valeurs observables
(quantitatifs ou qualitatifs). Un rôle fournit des services à d'autres rôles du même groupe,
tandis qu'un service peut exiger des capacités (tel que défini dans le modèle de domaine). Il
existe une ontologie de domaine pour chaque rôle. Les interactions reliant les agents peuvent
s‘établir entre l'agent et/ou des rôles.
Il existe deux types de groupes : les groupes structurels, correspondant à une description
isomorphe de l'organisation de la chaîne logistique, et des groupes dynamiques, caractérisés
par une durée de temps ou un objectif partagé par des agents de différents groupes structurels.
98
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
Type Catégories de notation Description
d'interaction l'interaction graphique
Physique
De façon similaire aux modèles l'AGR [FERBER et al., 2009] et CRIO [GAUD et al.,
2008], la structure d‘un groupe d‘agents dans le modèle CAOM peut être défini par un
quadruplet : Gi = (Ai, Si, Ii, T), où :
- Ai est l‘ensemble des agents appartenant au groupe Gi;
- Si est l'ensemble des services des agents ;
- Ii est l'ensemble des interactions entre les agents ;
- T représente la simulation du temps à identifier l'échelle de temps (court terme, moyen
terme, à long terme) comme défini dans le CROM.
Le passage d‘un modèle CROM à un modèle CAOM repose sur une agentification
effectuée à partir des rôles des acteurs définis dans le modèle CROM. Les rôles d‘acteurs du
modèle CROM peuvent être combinés en caractérisant un ou plusieurs agents, selon le type de
comportement qui devrait être étudiée « simple » ou « intelligents ».
Le Tableau 3.4 résume les différents critères utilisés pour décider de l‘agentification à
partir des rôles d‘acteurs définis dans le modèle CAOM. Par exemple, dans le modèle Agent-
Acteur "mécanique" les rôles sont décrits avec des agents réactifs, (mis en œuvre dans JADE
[RIMASSA et al., 1999], tandis que le rôle des comportements complexes est édicté par
l'agent délibératifs (plate-forme JASON [BORDINI et HÜBNER, 2006] [BORDINI et al.,
99
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
2005] [VIEIRA et al., 2007]. Dans le cas de l‘architecture CRIO (agent/holon) le choix est
fait de soutenir le modèle CAOM, puis les rôles peuvent être décrits avec l'agent hybride.
CROM CAOM
Agent Comportement (Critères de traduction)
Agent Réactive Si le comportement simple est requis, un type de comportement stimulus-
réponse est suffisant. Ceci peut être décrit plus tard avec un diagramme
<AR>
Rôles de l’acteur
100
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
(1)
(2)
(3)
101
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
102
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
Compagnie 2 en tant que ressource de camion en cas de besoin. L'interaction physique
spécifie la circulation de l'information à l'usage agent pour accomplir leurs objectifs.
La section suivante développe plus en détail la modélisation opérationnelle du cadre
méthodologique proposé, en présentant les modèles concernés, leur articulation et processus
d‘élaboration, avec une illustration concrète sur une chaîne logistique.
103
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
104
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
5.2 Vue dynamique : comportements et interactions
Comme nous l‘avons déjà dit, un seul diagramme, le modèle OPAM n‘est pas suffisant pour
couvrir toutes les spécifications attendues à ce niveau opérationnel, notamment les
comportements d‘agents et les interactions entre agents, associés à la vue dynamique de la
modélisation opérationnelle.
105
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
objets. Par rapport aux objets, les agents disposent d‘un ensemble de propriétés
caractéristiques leur permettant notamment de réaliser des actions pour l‘atteinte de leurs buts
(exemple : l‘autonomie). Ces différences mettent en avant l‘insuffisance d‘UML pour
modéliser les agents et les systèmes multi-agents. A titre d‘exemple, AUML remplace la
notion de méthode par celle de service et la notion de classe par celle de but.
Répondre « Informer» Message qui permet à un agent de répondre à la requête, il fournit son
identifiant, son rôle et son groupe.
Requête Demande d‘un agent à un autre agent d‘exécuter un plan.
Demande d‘informer Requête d‘un agent à un autre agent. L‘agent à l‘initiative de la communication
à besoin d‘une information à un autre agent,
Information Échange d‘informations
Négociation Communication entre les agents, il fournit aussi l‘identifiant, le rôle et le groupe
106
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
Une transition est déclenchée par l'arrivée d'un événement. La Figure 3.21 propose sur un
exemple, la représentation du comportement d‘un agent réactif pour la réalisation d‘une
activité de livraison de produits suite à la réception d‘un ordre. Lorsqu‘une commande ne peut
être complétée, elle est retardée et placée en attente. Chaque réception de produits conduit
l‘évaluation des commandes en souffrance afin d‘identifier si les ordres retardés peuvent être
complétés.
Ce type de diagramme représente de manière dynamique les actions réalisées par un agent
réactif et un agent délibératif. Les diagrammes d‘état offrent un formalisme pour décrire le
comportement des agents réactifs et des agents délibératifs. Chaque état concerne une action
réalisée par l‘agent. La transition est associée à un événement issu de l‘environnement ou bien
résultant d‘une action de l‘agent. Les stimuli représentent les interactions avec d'autres agents
(réactifs et/ou délibératifs) ou des objets situés dans le système multi-agents.
Au sein du Modèle Opérationnel Agent, les agents communiquent par échanges de
messages. Nous retenons les diagrammes de séquence pour représenter les échanges de
messages. Ce type de représentation permet de visualiser le type de messages échangés, leur
contenu, ainsi que le processus d‘activités qu‘ils déclenchent. La bande d‘activation
représente les périodes d'activité des agents. Les flèches représentent les messages échangés
entre les agents. La Figure 3.22 illustre un exemple d‘échange de messages entre deux agents,
source [Odell et al., 2000].
107
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
108
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
109
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
5.3.1 Vue structurelle : modèle OPAM de la chaîne
Pour l‘élaboration du modèle OPAM de notre chaîne logistique simple, la structure du modèle
de classes du modèle CAOM est divisée en deux partitions, une pour les agents délibératifs et
l‘autre pour les agents réactifs.
Comme l‘illustre la Figure 3.24, dans l‘environnement d‘agents délibératifs, nous plaçons
l‘Agent Compagnie 1 et l‘Agent Directeur de production, et ces deux agents sont reliés par
une interaction de type message. L‘agent Compagnie 2 est considéré comme un agent hybride
parce qu‘il joue deux rôles différents, un rôle délibératif dans l‘environnement délibératif et
un rôle réactif dans l‘environnement réactif.
110
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
Ce diagramme montre l‘échange des messages entre les différents types d‘agents (réactifs
et cognitifs). Le but de cet exemple est de fabriqué un produit, tout d'abord l‘Agent
Compagnie 1 il envoi une commande à l‘Agent Directeur de Production pour fabriqué ce
produit. Ce dernier s‘occupe à exécuter et envoyé cet ordre vers les Agents Machines pour
fabriquer les produits. Ensuite, le produit fini sont livrés vers le stock qu‘ils soient disponibles
pour l‘étape suivante (assemblage, transporteur..).
6. Conclusion
Modéliser des systèmes complexes nécessite la définition de nombreuses hypothèses
simplificatrices. Le problème de modélisation se trouve reformulé, puisqu‘il ne s‘agit pas de
construire un modèle multi-agent ex-nihilo d‘un système réel, nécessitant par exemple de
passer par une phase d‘expression des besoins très générale. Comme toute organisation
humaine, la solution d‘associer un agent à une entité de la chaîne logistique s‘impose assez
vite, ne serait-ce que pour des raisons de compréhension ou d‘interprétation par l‘expert de
domaine ne disposant pas de compétences en ingénierie multi-agents. La proposition d‘un
111
Chapitre 3 : Un cadre méthodologique orienté agents pour la modélisation et la simulation de
chaînes logistiques
cadre méthodologique s‘intéresse à la définition des étapes de conception nécessaires à
l‘élaboration de modèles multi-agents, tant au niveau conceptuel qu‘au niveau opérationnel.
La Modélisation Conceptuelle de chaînes logistiques offre une représentation du modèle
de domaine. Cette modélisation repose sur plusieurs modèles, Modèle Organisationnel
Conceptuel Rôle et Modèle Organisationnel Conceptuel Agent ; Le modèle conceptuel offre
une représentation des éléments du Modèle Structurel et de leurs comportements définis dans
le Modèle Dynamique.
La Modélisation Opérationnelle Agent propose une représentation détaillée du Modèle
Organisationnel Conceptuel Agent. Pour la représentation des agents et de leurs
comportements au niveau opérationnel, nous proposons une approche de modélisation
permettant de différencier les agents, ce type de modélisation est dirigées par l‘observables.
Cette approche de modélisation est composée de deux environnements d‘agents : un
environnement d‘agents réactifs et un environnement d‘agents délibératifs.
Afin de décrire les liens existants entre les deux environnements d‘agents, nous
proposons, dans le chapitre suivant les environnements de développement pour les différents
types d‘agents, et une architecture d‘agent définie en tant que composition d‘agents en
interactions, agents de nature cognitive et agents de nature réactive. Les agents délibératifs
adoptent des comportements complexes et les agents réactifs adoptent les comportements
simples.
112
CHAPITRE 4 : UNE ARCHITECTURE LOGICIELLE
POUR LA MODELISATION ET LA SIMULATION
ORGANISATIONNELLE DE CHAÎNE
LOGISTIQUE
PLAN DU CHAPITRE
113
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation
organisationnelle de chaînes logistique
1. Introduction
L‘objectif de ce chapitre est de présenter la solution logicielle retenue pour accompagner le
processus de conception et de production de simulations de chaînes logistiques orientées
organisation et basées sur une modélisation multi-agents. Il s‘agit de proposer une architecture
logicielle qui facilite la production de ces simulations en intégrant les besoins fonctionnels et
logiciels liés à la simulation de chaînes logistiques.
Les différentes étapes du cadre méthodologique présentées dans le chapitre précédent,
aboutissent à une modélisation opérationnelle cristallisée par le modèle OPAM et caractérisée
par :
- L‘affinement de l’organisation multi-agents : décomposée en deux sociétés distinctes
mais en interaction : l‘une dite cognitive (ou délibérative) simulant des processus
décisionnels, et l‘autre dite réactive, simulant des processus simple ou fortement
automatisés.
- La spécification des comportements des agents : dans des langages adaptés à la
granularité des agents, il s‘agit de décrire comment l‘agent doit se comporter au cours
de la simulation sans préjuger de la manière dont ils seront effectivement mis en
œuvre (langage de programmation, langage de simulation, environnement, etc.).
- La spécification des interactions entre agents : desquelles résulte la dynamique de la
simulation. Ces interactions présenteront des problématiques de mise en œuvre
différentes selon que sont impliqués des agents d‘une même société ou de deux
sociétés différentes (réactive et cognitive).
Le modèle OPAM représente ainsi un premier niveau de solution d‘implémentation du
modèle conceptuel (CAOM). Il s‘agit maintenant de le mettre en œuvre avec une architecture
logicielle adaptée.
Dans ce chapitre nous présentons tout d‘abord les besoins de différentes natures auxquels
doit répondre une telle architecture. Puis nous présentons différentes approches logicielles
possibles, et argumentons l‘approche « intégrative » que nous avons retenue. Ensuite nous
présentons en détail l‘architecture logicielle que nous proposons pour la simulation
organisationnelle de chaines logistiques. Enfin, avant de conclure, nous illustrons le
fonctionnement de cette architecture sur un exemple de simulation d‘une chaine logistique
très simple.
114
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation
organisationnelle de chaînes logistique
115
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation
organisationnelle de chaînes logistique
c'est-à-dire rendre ou maintenir compatibles à un niveau conceptuel et opérationnel. Le
paradigme multi-agent nous paraît le permettre.
Ce besoin issu d‘une analyse a priori du système peut également, de manière plus
pragmatique, résulter d‘investissements en termes d‘effort d‘analyse et de modélisation
antérieurs. Ainsi, des modèles « hérités » (issus de legacy systems) peuvent avoir été produits
et présenter un intérêt dans une expérience particulière de simulation [CHATFIELD et al.,
2007]. Ces modèles peuvent avoir été développés dans des langages de modélisation et/ou de
programmation différents (par exemple avec AnyLogic3, Arena4, etc.). Cette approche
d‘intégration de logiciel « prêt à l‘emploi » (ou COTS – Components Off The Shelves ou
encore (CSPs - Commercial-Off-The-Shelf Simulation Packages), présente des difficultés
spécifiques [BOER et al., 2008] [TAYLOR et al. 2009]. La simulation finale devant exploiter
l‘ensemble des modèles disponibles et assurer une bonne interaction entre ces modèles.
Si l‘intégration conceptuelle de ces modèles a pu être gérée dans les étapes de
modélisation précédente, il reste à maintenir cette intégration au niveau logiciel, ainsi qu‘à
gérer l‘éventuelle interopérabilité entre les systèmes logiciels dans lesquels évoluent ces
modèles (partage de données, redirection d‘évènements, etc.).
3
http://www.xjtek.com
4
http://www.arenasimulation.com
116
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation
organisationnelle de chaînes logistique
La gestion des groupes pose problème à différent niveaux en fonction du contexte de
simulation. L‘architecture de simulation doit ainsi proposer des primitives de gestion de
groupe (création, demande d‘entrée dans un groupe, gestion des rôles dans un groupe,
communication intergroupe, etc.) dans un contexte d‘hétérogénéité logicielle. Si des
propositions ont déjà été faites au sein d‘environnement « totalement » multi-agent (exemple,
MadKit [GUTKNECHT et FERBER, 2000]), la question de la conservation de l‘identité de
groupe, tel que définis et maintenus dans les modèles CROM, CAOM puis OPAM, dans des
environnements logiciels non agent est plus délicate. A moins de prévoir, et modifier
fortement, les modèles de simulation antérieurs, il faut pouvoir assurer cette identité de
groupe à l‘extérieur des environnements de simulation. Ce point peut également être
important pour le respect du besoin de la production d‘observables.
La production d‘observables, simples ou agrégés, identifiés et définis dans les étapes
précédentes du cadre méthodologique, constitue un enjeu important au niveau architectural,
notamment lorsque plusieurs environnements logiciels sont concernés. Cette production
d‘information peut avoir un impact sur la performance de la simulation : une approche naïve
pourrait par exemple ne pas tenir compte du coût de transport de message au sein et entre les
simulateurs et augmenter la charge de simulation. D‘un point de vue architectural, il faut alors
trouver une solution assurant la cohérence et la validité des données produites et ce à un coût
(en terme de temps d‘exécution) raisonnable.
Ayant identifié les différents besoins que doit remplir un simulateur capable
d‘accompagner le processus de conception de simulation proposé dans le cadre
méthodologiques, nous étudierons dans les sections suivantes les solutions existantes pouvant
répondre en tout ou partie à ces besoins.
117
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation
organisationnelle de chaînes logistique
- Une société d‘agents (type BDI) développée avec MAJORCA5 [TRANVOUEZ, 2001]
pour l‘exécution des agents cognitifs, auxquels s‘ajoutent des agents de services
(gestion d‘annuaire, etc.).
- Anylogic pour la simulation de la société réactive : chaque agent (réactif) est en fait un
modèle orienté objet (Active Object) d‘Anylogic.
- Un Agent Events Scheduler assurant l‘interopérabilité entre les deux sociétés
consistant à traduire des messages ACL (entre les agents cognitifs) en événements
(associé à un objet message contenant les informations utiles) renvoyés aux Active
Objects correspondants.
- une base de données : pour la gestion des scénarii et des résultats de simulation.
Cette architecture logicielle est en accord avec le cadre méthodologique proposé dans
[LABARTHE, 2006], cadre considérant une chaîne logistique comme étant composée d‘une
partie décisionnelle et d‘une partie physique. La partie décisionnelle décrivant des
comportements des niveaux supérieurs de la hiérarchie, alors que la partie physique décrit la
partie exécutive de la chaîne logistique (les machines de production, les véhicules de
transports, etc.). De fait, la simulation repose sur deux niveaux hiérarchiques avec des
échanges de messages relativement homogène ; des ordres venant de la partie décisionnelle et
des informations de la partie physique. Cette homogénéité se traduit par un mécanisme
d‘intégration relativement simple en ce qu‘il consiste à relayer les messages en les traduisant
en événement dans la partie « physique » et en faits (Jess) dans la partie décisionnelle.
Dans notre recherche, comme l‘a montré le chapitre précédent, si un agent « décisionnel »
au sens de ces travaux précédents ne présentait pas d‘intérêt pour la simulation, il se trouverait
simulé sous la forme d‘un agent simple, réactif, et ainsi se retrouverait dans ce qui était la
partie physique du système antérieur. La modélisation organisationnelle, par la génération
d‘observables, pose alors la question du maintien de l‘ « identité » du groupe ainsi réparti sur,
par exemple, deux environnements différents. Cette identité implique la possibilité de
récupérer des informations, ainsi que relayer des messages de natures différentes selon le lien
d‘interaction et le type d‘agents considérés. A cette difficulté s‘ajoute également, les
contraintes temporelles propres à chaque environnement de simulation. Il s‘agit de garantir la
synchronisation des agents où qu‘ils se trouvent.
Ainsi, la spécificité de notre cadre méthodologique, apporte de nouveaux besoins non
couverts par l‘architecture proposée dans [LABARTHE, 2006], rendant nécessaire une
5
Consistant en une instanciation du moteur d‘inférence Jess (http://www.jessrules.com/), d‘un module de
communication et d‘un gestionnaire de plan.
118
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation
organisationnelle de chaînes logistique
nouvelle réflexion sur les choix architecturaux. Au vu des besoins de différentes natures
identifiés dans la section précédente, l‘exécution des modèles de simulations OPAM peut être
réalisée de trois façons différentes :
- Traduire les modèles dans un seul environnement de simulation.
- Disposer ou définir d‘un environnement générique et ouvert à d‘autres langages et
modèles de simulation (i.e. moteur de simulation générique).
- Proposer une architecture d‘intégration.
Les deux premières façons reviennent à retenir un seul environnement de simulation, alors
que la troisième réutilise des modèles de simulation exécutés sur des simulateurs pouvant être
différents et pose le problème de leur intégration. Nous étudions dans les sections suivantes
chacune de ces deux approches basées, soit sur un environnement de simulation unique, soit
sur l‘intégration de simulateurs existants.
119
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation
organisationnelle de chaînes logistique
Il existe de nombreux paradigmes de modélisation pour la simulation (orienté objet,
événements discrets, individu centré, etc.), ainsi que de langages et d‘environnements
logiciels de simulation (Anylogic6, Arena7, NetLogo8) la plupart commercialisés. Il n‘existe
pas vraiment de langage standard de simulation à l‘image de ce qu‘à pu constituer UML pour
la modélisation Objet. Certains de ces environnements supportent différents langages de
simulation. Lorsque plusieurs langages de modélisation sont proposés, et si tant est qu‘ils
conviennent au besoin de modélisation (ce qui n‘est pas le cas d‘ores et déjà pour la
dimension IA de notre simulation), il faudrait alors traduire les modèles déjà produits
(lorsqu‘ils existent) dans des modèles sans doute équivalent mais requérant tout de même une
charge de travail supplémentaire, avec le risque potentiel, d‘ajouter des biais de modélisation.
A l‘inverse, l‘existence de modules de modélisation déjà disponibles, permettant
d‘importer, de réutiliser des modèles prédéfinis pourrait constituer une alternative. La
stratégie commerciale des éditeurs semble aller en l‘encontre d‘une recherche de
compatibilité, même lorsque des approches type HLA (cf. ci après) pourraient le proposer
[BOER et al., 2008]. De même, la particularité de devoir gérer des comportements « IA » ne
correspond pas ou peu avec la démarche des simulateurs existants.
Il parait ainsi difficile de pouvoir disposer d‘une solution « prête à l‘emploi ». La seconde
approche, basée sur l‘intégration de simulateurs existants, apparaît comme une solution de
compromis réaliste, réduisant l‘investissement architectural à la définition d‘une infrastructure
logicielle d‘intégration.
6
http://www.xjtek.com
7
http://www.arenasimulation.com
8
http://ccl.northwestern.edu/netlogo/
120
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation
organisationnelle de chaînes logistique
supportée par un SMA et qui s‘inspire sur l‘architecture HLA (High Level Architecture),
apparaît intéressante dans notre contexte de simulation organisationnelle de chaînes
logistiques.
Rappelons que l‘architecture HLA constitue un standard reconnu IEEE 1516 [IEEE,
2000], plus particulièrement dédié à la construction de simulations suffisamment complexes
pour recourir à plusieurs simulateurs (simulation distribuée). Chaque simulateur produit des
données éventuellement exploitées en retour par d‘autres simulateurs : la distribution du
contrôle et des données est alors incontournable et se confronte alors au besoin de
synchronisation des simulateurs garantissant la validité des résultats de simulation.
Développée à l‘initiative et sous le contrôle de l'Office pour la Modélisation et la
Simulation de la Défense américaine (DMSO), HLA constitue une réponse à des besoins réels
rencontrés par cet office dans la constitution de simulations complexes mêlant micro et macro
simulation, avec des degrés divers de dépendance entre les simulateurs (relation
fournisseur/client de données, respect de la temporalité ou causalité des évènements). Cette
architecture est donc très générique mais présente des faiblesses que nous rappellerons en
conclusion.
121
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation
organisationnelle de chaînes logistique
L‘architecture HLA constituée de trois principaux éléments : les fédérés, le RTI (Run
Time Infrastructure), et les fédérations (Figure 4.26):
- Fédération : est une simulation composée d‘un groupe de simulateurs ou fédérés
interagissant via un médiateur (RTI).
- Fédéré : représente un simulateur au sein d‘une fédération. Les fédérés sont constitués
d‘un simulateur et d‘une implémentation de l‘interface assurant l‘interface avec le
RTI. Chaque fédérés possède des fonctions interne (assurent la simulation local) et
externes (assurent la connexion avec les autres fédérés à travers le RTI).
- RTI (RunTime Infrastructure) : est une infrastructure permettant aux fédérés de
coordonner des opérations et des échanges de données durant l‘exécution d‘une
simulation globale. Il gère aussi les interactions et des objets partagés entre fédérés,
l‘ajout ou le retrait de simulateurs dans la simulation. Enfin, il assure la
synchronisation du temps et la communication entre fédérés. Les services rendus par
le RTI sont synthétisés dans le tableau suivant.
Catégorie de Services et descriptions
services
Gestion de la Création, la destruction, l‘exécution, la mise en pause, l‘enregistrement
fédération ou la restauration de fédérations. Ces services permettant également aux
fédérés de rejoindre ou quitter une fédération.
Gestion de Services permettant aux fédérés de communiquer (publier) leurs
déclarations données (objets) et interactions qu‘ils proposent à la fédération, ou
celles d‘autres fédérés qu‘ils souhaitent utiliser (souscrire un
abonnement).
Gestion d’objets Services utilisés pour créer une nouvelle instance d‘objet HLA,
supprimer une instance, modifier les valeurs des attributs.
Gestion de Services concernant les propriétés d‘attributs pour acquérir ou modifier
propriété un privilège sur un attribut d‘un objet.
Gestion du Services concernant la gestion du temps et notamment la
temps synchronisation entre les différents fédérés. Ils permettent aux fédérés
de choisir le mode de gestion des évènements désiré (parmi ceux
supportés par le RTI), de faire appel aux services d‘incrémentation du
temps de simulation correspondant, de connaître son temps local de
simulation.
Gestion de la Les services DDM tentent de réduire le nombre d‘échanges de données
distribution de sur le réseau
données (DDM)
122
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation
organisationnelle de chaînes logistique
Il est intéressant de faire un parallèle entre la gestion d‘un SMA et d‘une fédération HLA,
et de constater des similitudes, sans toutefois être surprenant du fait des enjeux similaire de
gestion de la distribution sur un ensemble d‘entité. Ainsi, la gestion de la fédération est à
rapprocher à la gestion de groupes tel que proposé dans AGR [FERBER et al., 2009].
La gestion de déclaration fait également penser aux missions remplies par les agents dits
annuaires (par ex. Pages Blanches, Page Jaunes, etc.). La gestion d‘objets partagés peut être
comparée à la gestion d‘Artefacts dans A&A et plus généralement dans [HÜBNER et al.,
2010] et A&A [MONTAGNA et al., 2008]. Enfin, la gestion de la distribution de données
constitue une autre face du problème de l‘optimisation des échanges entre entités … elle est
en général traitée dans les SMA au niveau de l‘environnement de développement de SMA
(par exemple échanges de références sur des objets « Message » au sein d‘un « noyau » et par
TCP/IP ou invocation de méthodes à distance - RMI – entre noyaux). La différence se situe au
final à plusieurs niveaux :
- La manière dont ces services sont mis en œuvre : par invocation de service par ex.
dans HLA (donc ordre comminatoire) ou par échange de message (demande a priori
acceptée), ou combinaison des deux. Ainsi, dans GRIDS [SUDRA, 2001], ou ARTI
[TAN et al., 2000] les agents communiquent entre eux mais encapsulent des
simulateurs. Cette encapsulation peut être gérée par exemple selon la proposition de la
FIPA sur l‘agentification de service [FIPA, 2002] (cf. [SERMENT, 2007] pour une
présentation détaillée).
- La prise en compte explicite du temps : le temps est rarement pris en compte par les
approches agents… Lorsqu‘elle l‘est, dans les plateforme MIMOSA [MULLER,
2004] [MULLER, 2010] et VLE [QUESNEL et al., 2007, elle est conditionnée à une
homogénéisation des modèles de simulation (à rapprocher des discussion de la section
précédente) en s‘appuyant sur DEVS par exemple.
- Le niveau de description du partage d’objet : très formel et structuré dans HLA, mais
on peut trouver une approche s‘en rapprochant dans [HÜBNER et al., 2010], A&A
[MONTAGNA et al., 2008] et Moise [HUBNER et al., 2007]).
- La granularité des entités gérées : en pratique, HLA considère un nombre restreint de
simulateurs et en tous les cas, de forte granularité… mettant en œuvre des simulateurs
complexes. A l‘opposé, une approche agent s‘appuie sur une distribution des calculs
sur des entités plus simple. Ceci s‘explique facilement, dans la différence des
approches de la distribution, mais a des conséquences lourdes sur le nombre de
message/événements envoyés ou données partagés.
123
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation
organisationnelle de chaînes logistique
La complexité de la mise en œuvre de HLA, du fait de son objectif de généricité et des
motivations initiales de son développement, et tous les inconvénients que cela implique, peut
freiner sa diffusion. Aussi, Taylor et ses collègues (Taylor et al. 2008) ont également tenté de
proposer ce qui peut devenir un standard pour l‘intégration de simulateurs. On retrouve les
mêmes problèmes de synchronisation entre simulateurs, de partage de données.
L‘optimisation des temps de calculs est obtenu par une architecture de type Grid et orientée
service. Le parallèle avec une distribution de la simulation sur des agents disséminés sur un
réseau d‘ordinateur est alors naturel, et apporte une solution alternative à ces différentes
approches9.
9
A noter que des travaux combinant ces différentes approches existent également, citons par ex. l‘infrastructure
GRIDS ((Generic Runtime Infrastructure for Distributed Simulation) [Sudra , 2000], base sur un SMA.
124
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation
organisationnelle de chaînes logistique
comme tel et donc fourni proactivement) à un autre, mais également production des
indicateurs correspondant aux observables retenus pour cette simulation. Ce dernier
point devra être également possible au niveau des groupes (indicateurs globaux)
indépendamment de la manière dont les entités, contenues dans ces groupes, sont
modélisés et simulés (i.e. sur différents simulateurs).
- Gestion du temps : assurer la synchronisation des simulateurs et/ou des
événements/message circulant en et entre eux.
- Gestion des agents : au sens large, c.à.d. toute les fonctions requises pour qu‘un SMA
fonctionne (création, activation, communication, etc.).
- Gestion de l’interopérabilité : entre les simulateurs pour pouvoir transmettre les
informations au bon format.
- Gestion de l’intégrité organisationnelle : i.e. faire en sorte que les interactions
identifiées dans les modèles CROM et CAOM au sein des groupes soient maintenues
au niveau des différents
La section suivante présente plus en détail l‘architecture logicielle de simulation que nous
proposons pour la simulation organisationnelle de chaînes logistique, en mettant plus
particulièrement l‘accent sur ce module logiciel majeur qu‘est le « médiateur ».
125
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation
organisationnelle de chaînes logistique
4.1 Principes généraux
L‘architecture logicielle [MUSTAPHA et al., 2011] que nous proposons pour la simulation
organisationnelle de chaînes logistique est basée sur l‘intégration de simulateurs par
médiation, en s‘inspirant des travaux antérieurs du LSIS et de la spécification HLA. Il s‘agit
dans cette proposition de gagner en généricité dans le couplage des simulateurs, d‘intégrer
l‘objectif de production d‘observables identifiés en amont de la démarche méthodologique
présentée dans le chapitre 3, tenant compte de la structure organisationnelle de la chaîne
logistique, et ce en facilitant au mieux le passage de l‘idée de simulation à son implantation
logicielle et son expérimentation. Le recours à un médiateur facilitant l‘intégration
d‘environnements de simulation hétérogènes s‘imposent.
Ainsi que l‘illustre la Figure 4.27, ce médiateur assure le lien entre ces simulateurs,
permettant ainsi de bénéficier de leurs avantages spécifiques (simulations existantes, expertise
des experts, spécificité des comportements à simuler …), tout en ajoutant les objectifs
supplémentaires, identifiés grâce à la démarche méthodologique, de maintien de la structure
organisationnelle et la production d‘observables.
Plateforme 1 Plateforme 2
Base de
donnée
Médiateur
Plateforme 3 Plateforme N
Ces simulateurs devront être capables de simuler les modèles produits par les étapes
précédentes de la démarche méthodologique. Le médiateur doit alors permettre l‘interaction
entre ces simulateurs. Ces interactions peuvent concerner l‘échange de résultats (partiels) de
simulation, la synchronisation des simulateurs, etc. La Figure 4.28 illustre une interaction
126
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation
organisationnelle de chaînes logistique
« classique » entre deux simulateurs, dans le cadre de partage d‘information au cours d‘une
simulation [SERMENT et al. 2007] :
1- Demande/Production d’un résultat de simulation d‘un simulateur auprès du
médiateur. Le simulateur 1 peut émettre un besoin d‘information (explicite ou détecté
comme tel) ou produire un résultat de simulation (idem) qui sera traité/intercepté par
le médiateur ;
2- Le médiateur recherche alors si un simulateur (en l‘occurrence le Simulateur 2) a
besoin/peut être intéressé par ces données ;
3- Et transfère les données au Simulateur 2, ou, dans le cas d‘une demande de résultat,
se charge de récupérer les données demandées ou transmettre la demande de donnée ;
4- Le Simulateur 2, en cas de demande de résultat de simulation produit à son tour ces
données qui suivent le chemin inverse pour arriver au Simulateur 1.
127
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation
organisationnelle de chaînes logistique
d‘autant que ces agents contribuent également à la représentation de la structure
organisationnelle de la chaîne logistique et la production d‘observables.
Dans ce but, nous avons identifié cinq missions principales du médiateur (cf. Figure 4.29)
qualifiés de service, dans le reste du document. Ces services sont :
- Gestion de l’interopérabilité ;
- Gestion du temps ;
- Gestion des agents ;
- Communication inter-agent ;
- Gestion du modèle organisationnel ;
- Gestion d’Indicateurs ;
Le rôle de chacun de ces services est détaillé ci après.
Utilisateur (s)
Simulateur 1 Simulateur 2
Médiateur
Gestion du temps
Simulateur 3 Simulateur N
1. Gestion de l’interopérabilité
L‘interopérabilité a pour objectif de permettre à plusieurs systèmes logiciels, de même nature
ou hétérogènes, de communiquer voire se coordonner. Elle peut s‘appuyer sur des standards
définissant les pré-requis (en terme d‘interface, de protocoles…) nécessaires a priori pour que
deux systèmes puisse interagir. Elle peut également être le résultat d‘une conception ad hoc en
réponse à un problème ou des architectures logicielles spécifiques. Dans notre architecture, le
module assurant l‘interopérabilité regroupe l‘ensemble des dispositifs (librairies, wrappers,
128
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation
organisationnelle de chaînes logistique
services web…) chargés de gérer au niveau logiciel les transferts d‘information ou autres
invocation de services entre Simulateurs.
2. Gestion du temps
Cette question est rarement évoquée en simulation multi-agents du fait que la nature
distribuée de la simulation est souvent plus conceptuelle que logicielle. Ainsi, la gestion du
temps est soit implicitement centralisée dans les SMA réactifs (les cycles de simulation – ie
exécution à tour de rôle de tous les agents pour « une action » - revenant à une simulation à
temps discret) soit non gérés dans les systèmes délibératifs si ce n‘est en terme relatifs
(répondre avant x unités de temps). Dès lors que l‘on considère l‘interfaçage avec des
simulateurs « non-agents », la gestion du temps de simulation devient une mission importante
du médiateur. Nous reprenons l‘approche retenue dans la plateforme IMAGIN [Serment
2006] à savoir la possibilité d‘implémenter différents mode de gestion du temps : gestion
pessimiste du temps avec contrôle du déroulement de temps de simulation dans chaque
simulateur en fonction de l‘arrivée d‘événements, discrétisation du temps en fonction des
différents pas de temps de chaque simulateurs, recours à un groupe d‘agents pour gérer le
temps [FIANYO, 2001].
4. Communication inter-agent
Ce module assure la communication, i.e. le bon acheminement des messages ou signaux, entre
les agents indépendamment de leur « localisation » et ce aussi bien à un niveau logiciel que
syntaxique. Le niveau logiciel peut nécessiter l‘invocation du module responsable de
l‘interopérabilité entre simulateurs, et ainsi assurer le routage « physique » du message. Au
niveau syntaxique, il s‘agira d‘une part de trouver la localisation de l‘interlocuteur
(simulateur), de traduire éventuellement ce message pour qu‘il soit exploitable par le
destinataire (exemple, message ACL message simple type signal) en se basant sur les
informations qu‘il aura maintenue dans un annuaire. Il peut également gérer un annuaire type
129
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation
organisationnelle de chaînes logistique
page jaune intégrant des informations sur les capacités et/ou rôles joués par les agents de la
simulation. La Figure 4.30 rappelle la structure d‘un message KQML auquel recourront les
agents délibératifs (cf. section suivante).
KQML (Knowledge Query Manipulation Language), premier standard de
communications muli-agents, recouvre l‘ensemble des besoins d‘une communication riche
entre agent : un langage de communication structuré (définissant le format d‘un message), des
protocoles de communications (i.e. séquence normative de messages) et des considérations
logicielles et réseau sur le transport physique de ces messages. Un message KQML est
structuré comme suivant :
130
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation
organisationnelle de chaînes logistique
6. Gestion des indicateurs
L‘objectif est de produire les indicateurs caractérisant les observables définis lors de la
modélisation conceptuelle de la chaîne logistique étudiée. Ce module est responsable de la
production des indicateurs identifiés dans les étapes précédentes du cadre méthodologique
décrit dans le chapitre précédent. Il s‘agit de s‘assurer la récupération des données
nécessaires, leur transformation en une donnée globale et la diffusion de ces données
consolidées.
Un indicateur portera donc sur un aspect particulier de la chaîne, impliquant un certain
nombre d‘agents (ou de groupes) représentant des acteurs et/ou entités de la chaîne, de
méthodes de calculs de ces indicateurs, et ce le plus indépendamment possible de la source
des données nécessaires à sa production. Le tableau suivant liste les catégories d‘indicateurs
retenus illustrés par des exemples d‘indicateurs et leur mode de calcul dans le cadre de l‘étude
de chaînes logistiques.
Catégories Indicateurs
(Objet et Méthode de calcul)
Activité 1. Volumes traités = Nombre de commandes
1. Taux d’utilisation des ressources = Taux ressource utilisé / Taux
ressource total.
2. Délai moyen de lancement ou modification = Moyenne des délais de
livraison des nouveaux produits ou des modifications validés/ le mois, le
Productivité
trimestre ou l‘année.
3. Taux de ponctualité des lancements ou modifications = Nombre de
lancements ou modifications dans les délais/ Nombre de lancements ou
modifications.
1. Qualité du produit. : total produits conformes / total produits fabriqués
2. Qualité du service = Nombre des commandes livrées à temps/ nombre
total de commandes.
3. Qualité du service de fournisseurs = Nombre de commandes
d'approvisionnement livrées dans les conditions demandées / Nombre de
commandes totales.
4. Qualité du service de production = Nombre d'ordres de fabrication
Qualité soldés dans les conditions demandés/ nombre total d'ordre de fabrication
(Conditions demandées = respect des quantités et du premier délai
défini).
5. Qualité du service de clients = Nombre de commandes livrées
complètes dans les conditions demandées / Nombre de commandes
totales expédiées (Conditions demandées = respect du premier délai
défini avec le client, des quantités).
6. Qualité de transport = Nombre des commandes transportées/ nombre
total de transport.
131
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation
organisationnelle de chaînes logistique
1. Coût unitaire.
2. Coût total = ∑ (Coût de chaque unité).
3. Coût de production = coûts d‘acquisition + charges de production.
4. Coût de transport (des ventes) = Dépenses annuelles en transport/Valeur
des ventes annuelles.
5. Coût de stockage: en % flux annuels: Valeur du stock/ valeur du flux
Coûts annuel.
6. Coût de stockage: Taux de rotation du stock: Valeur du flux/ valeur du
stock.
7. Coût de commande: dépenses annuelles en commande/ valeur des
commande annuelles.
8. Coût de distribution: ensemble des charges de distribution afférentes aux
ventes de la période.
1. Délai de livraison
Délais 2. Délai de réponse
La section suivante présente les choix technologiques qui ont été faits pour
l‘implémentation de notre architecture de simulation.
132
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation
organisationnelle de chaînes logistique
simulation. Le chapitre suivant développera davantage ces mécanismes sur un cas d‘étude
plus complet.
Après avoir présenté rapidement les choix technologiques pour simuler les comportements
délibératifs et réactifs identifiés dans les modèles opérationnels du cadre méthodologique,
nous détaillons l‘architecture orientée agent du médiateur avant de s‘intéresser au mécanisme
de production d‘indicateur.
L‘objectif de la simulation de chaîne logistique impliquant des comportements
hétérogènes en termes de complexité des comportements mis en œuvre, nous avons retenus
deux plateformes différentes pour réaliser ces comportements : Jade et JASON.
133
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation
organisationnelle de chaînes logistique
basant notamment sur des annotations de plans permettant de mettre en œuvre des
processus de décision lors du choix du plan à réaliser (par ex. sélection d‘une stratégie
de résolution de problème – i.e. plan - en fonction du contexte) ;
- Un environnement de développement d‘agents ;
- Et enfin une capacité d‘extensibilité de la plateforme en intervenant directement sur
les classes java utilisées pour développer les agents.
Les figures suivantes, apportent un éclairage supplémentaire sur l‘architecture et la
programmation avec JASON.
Un agent JASON, comme l‘indique la Figure 4.31, est donc constitué (de manière
simplifiée) de Croyances (base de faits), de Désirs (buts) et d‘Intentions (Plans). L‘arrivée
d‘un évènement (nouvelle croyance – éventuellement issue de ses percepteurs – ou nouveau
sous-buts) enclenche une mise à jour/révision des croyances. De cette mise à jour, de
nouveaux (sous) buts peuvent être déduits. La fonction de délibération identifie les plans à
même de le satisfaire et en sélectionne un, le place dans la liste des plans à exécuter et donc
met à jour la liste des intentions (i.e. agenda des plans). La fonction d‘action exécute le plan
suivant, l‘ordre des plans ayant pu être modifié par l‘opération précédente. Le cycle se répète
tant que des buts restent (et peuvent l‘être) à satisfaire. L‘échange des messages, nous l‘avons
vu, se fait en KQML.
134
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation
organisationnelle de chaînes logistique
La figure suivante donne un exemple de code source d‘un agent Jason. Ce code est
simplifié, mais il permet de reconnaître des croyances ou faits (nom de l‘agent : agent-
supplier ), des buts ( !registration) et des plans. Un plan est défini par l‘évènement
déclencheur (un but par exemple : +registration), une condition ( : true ici donc
toujours vérifiée) et le corps de la règle contenant les actions à entreprendre (ici envoi de
message essentiellement).
name(agent-supplier)
!produce(productX,10).
!registration.
/* Plans */
+!registration
:true
jadedf.register("Gestionnaire1","Registration1");
jadedf.register("Get-Info","Quality").
+!produce(Product,Qty)
: true
.wait(15000);
-+target(Product,Qty);
.print("A message has been sent to 'production_manager' to produce: [Product: ",Product," ; Quantity: ",Qty,"].");
.send(production_manager, achieve, produce1(Product,Qty)).
Construire un agent JASON, consiste ainsi à définir ce qu‘il sait, ce qu‘il veut et comment il
peut l‘obtenir dans un langage déclaratif. Ayant posé les motivations et le principe d‘une
programmation avec JASON, nous faisons de même dans la section suivante avec la
deuxième plateforme : Jade.
135
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation
organisationnelle de chaînes logistique
« utilitaires » assurant le bon fonctionnement d‘un SMA. La programmation se fait
directement en Java, et malgré un système de gestion de comportements (des classes
Behaviour associées à un agenda interne à chaque agent permettant la gestion de l‘activation –
éventuellement cyclique - de ces comportements), ne facilite pas le développement de
comportements complexes.
A1
AMS DF
Is registered with
Main Container
Is registered with
Plateforme 1
A4 A2 A3
Container 2 Container 1
Réseau
AMS DF
Main Container
Plateforme 2 A5
Figure 4.33 : Architecture distribuée d‘une plateforme JADE [RIMASSA et al., 1999],
136
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation
organisationnelle de chaînes logistique
- L‘Introspector Agent est un agent qui permet de contrôler l‘activité d‘un agent : son
cycle de vie, ses messages ACL échangés et les comportements exécutés.
Un agent Jade est de fait une sous classe de la classe Agent : la programmation de l‘agent
se fait donc directement en Java en s‘appuyant sur des librairies dédiées. De manière plus
abstraite, un agent Jade sera composé de croyances et de capacités (attributs d‘objet) et d‘un
ensemble de comportements (i.e. classes héritant de la classe Behaviour). C‘est
l‘ordonnanceur de comportement qui définira l‘ordre des comportements de l‘agent et donc la
séquence d‘actions qu‘il entreprendra. Le gestionnaire du cycle de vie des agents se situe au
niveau du Container et gère l‘ensemble des agents. Les agents communiquent via des
messages ACL.
Un SMA est alors constitué de « Main containers », i.e. noyaux d‘exécution d‘une société
d‘agents, d‘une ou plusieurs instanciation d‘agents services, et bien sur des agents propres au
domaine d‘application (i.e. acteurs de la CL). Jade ne considère pas spécifiquement les
besoins propres à la simulation notamment d‘un point de vue gestion du temps (à noter
quelques tentatives allant dans ce sens comme [PAWLASZCZYK et TIMM 2006]. Ceci nous
l‘avons vu s‘explique par rapport au type d‘applications multi-agents généralement
développées. Sa facilité d‘interopérabilité avec JASON a cependant conforté ce choix de
plateforme. Le renforcement des autres fonctions du médiateur, permettra éventuellement de
considérer d‘autres plateformes après avoir effectué une première validation de l‘approche
proposée.
138
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation
organisationnelle de chaînes logistique
4.3 Les agents du médiateur
La plateforme de simulation orientée agent et organisation, dont nous avons entrepris le
développement, est donc basée sur deux Simulations Orientées Agents (SOA) et un
médiateur. Ce dernier sera également mis en œuvre par des agents aux capacités spécifiques et
dont les interactions assureront l‘intégration des deux simulateurs. Le problème de
l‘intégration, nous l‘avons vu, sera moins logiciel que sémantique : i.e. faire échanger les
bonnes informations entre les simulateurs pour réaliser les objectifs définis en amont de la
démarche méthodologique.
Comme l‘illustre la Figure 4.36, cette plateforme sera constituée de : (i) JASON pour
l‘exécution des agents cognitifs, (ii) JADE pour l‘exécution des agents réactifs, (iii) un
Médiateur pour assurer l‘interopérabilité, et, (iv) une base de données pour l‘enregistrement
des paramètres des scénarii et la sauvegarde des résultats de simulation. Les modèles OPAM
des différents agents cognitifs et réactifs sont traduits dans des langages de programmation
adaptés dans chaque plateforme (i.e. langage AgentSpeak pour Jason, et Java dans Jade). Les
agents sont développés séparément dans chaque environnement, avec des outils adéquats,
reproduisant ainsi les contraintes spécifiques de développement qui aurait pu être rencontré
avec d‘autre type de simulateurs (à la différence d‘une interopérabilité simplifiée du fait des
choix de Jade et Jason).
Utilisateur (s)
2
1 3
JASON
Médiateur
Agent Gestionnaire
Agent Indicateur
JADE
4 6
5
Figure 4.36 : Architecture détaillée d‘une simulation basée sur l‘intégration de simulateurs
139
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation
organisationnelle de chaînes logistique
Le médiateur est lui-même composé de plusieurs agents spécialisés répartis en 6 grands types,
détaillés ci-dessous :
- L‗Agent Management System (AMS) assure principalement des services de gestion
de cycle de vie des agents, et des services de type « pages-blanches ». Il contrôle
l‘accès et l‘utilisation des canaux de communication des agents, créé et supprime des
agents, décide si un agent peut être enregistré dans le SMA, et supervise les
éventuelles migrations des agents vers d‘autres plateformes.
- L‘agent Pages Jaunes ou Directory Facilitator (DF) fournit un service de
renseignement de type « pages-jaunes ». Les agents publient leurs services (e.g.
compétences…) aux agents du domaine en enregistrant les descriptions de leurs rôles
auprès de l‘agent DF.
- L‘agent Agent Communication Channel (ACC) est l'agent qui fournit la route pour
les interactions de base entre les agents dans et hors de la plate-forme ; c'est la
méthode de communication implicite qui offre un service fiable et précis pour le
routage des messages ; il doit aussi être compatible avec le protocole IIOP pour
l'interopérabilité entre les différentes plates-formes multi-agents.
- L’Agent Gestionnaire de Groupe (AGG): cet agent est responsable de l‘intégrité du
groupe, tel que définis dans les modèles CROM et CAOM, en tenant compte de leur
périmètre i.e. de leur localisation dans tel simulateur comme induit par les choix du
modèle OPAM. Il assure l‘enregistrement des compétences des agents contenus dans
son groupe, leur localisation et le moyen de les contacter.
- L’Agent Source de Donnée (ASD) : l‘agent source de donnée joue un rôle double : i)
un rôle d’intermédiaire vis-à-vis des indicateurs en leur relayant les données dont ils
ont besoin pour produire leurs indicateur ; et ii) un rôle gestion de l’interopérabilité
puisqu‘il doit être capable de récupérer ces mêmes données auprès des différents
agents du groupe concernés, et ce où que ces agents se trouvent (i.e. dans JASON ou
JADE dans notre implémentation).
- L’Agent Indicateur : est responsable de la production d‘un indicateur. Il contacte les
agents source de données requis, produit les valeurs de l‘indicateur et les diffusent à
ses abonnés. La section suivante développe davantage son fonctionnement et son
interaction avec les autres agents.
La figure ci après, donne un exemple caractéristique des situations possibles que l‘on peut
obtenir après l‘implémentation d‘un modèle OPAM dans l‘architecture de simulation orientée
organisation. Le module d‘interopérabilité est présent davantage à titre indicatif, puisque
140
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation
organisationnelle de chaînes logistique
s‘agissant de Jade et Jason, la compatibilité des plateformes permet une communication
directe entre les agents. Sa description est cependant intéressante en ce qu‘il montre une
approche intermédiaire entre HLA et IMAGIN [SERMENT, 2007] : il est le tube par lequel
passe les informations et s‘appuie sur des sous modules d‘interopérabilité (équivalent au RTI
mais surtout aux adaptateurs d‘IMAGIN) situés dans chacune des plateformes. Le module de
gestion du temps est similaire à celui défini dans IMAGIN. Il peut mettre en œuvre des
stratégies différentes pour la synchronisation du temps on trouvera dans [SERMENT, 2006]
des exemples de stratégies possibles.
Les groupes 1, 2 et 4 sont des groupes homogènes, en ce qu‘ils se trouvent chacun localisé
dans un même environnement de simulation, facilitant ainsi l‘interopérabilité. Le groupe 3 par
contre est « à cheval » sur deux environnements, impliquant un travail accru dans la gestion
des messages entre ces deux agents. Chaque groupe est donc constitué d‘un agent
Gestionnaire de Groupe (AGG), d‘un agent Source de données (ASD) et d‘un ensemble
d‘agents « métiers » modélisant la chaîne logistique. Chaque AGG et ASD gèrent un seul
groupe à la fois. Les agents indicateurs eux peuvent s‘adresser à différents AGG et ASD
comme l‘explique la section suivante.
141
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation
organisationnelle de chaînes logistique
142
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation organisationnelle de chaînes logistique
144
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation
organisationnelle de chaînes logistique
- Les agents sollicités par l‘ASD lui fournissent alors les données nécessaires une seule
fois (i.e. demande unique) ou selon une fréquence, un seuil de signalement …selon la
règle de publication choisie. Ainsi, l‘agent ASD s‘abonne lui aussi aux données
d‘autres agents qui peuvent alors gérer leur propre liste d‘abonnement (mais qui
auront par contre un seul souscripteur : l‘ASD, réduisant ainsi les flots de messages
qui résulte de ces échanges).
- L‘ASD transmet alors le groupe d‘informations demandé à l‘agent Indicateur qui peut
produire alors la valeur agrégée. A noter, que des objectifs d‘optimisation des flux
d‘information peuvent amener à préférer à un enregistrement des données dans la Base
de données ; l‘ASD se contentant alors d‘informer l‘agent Indicateur que les
informations sont disponibles.
La publication des informations s‘appuie sur différentes stratégies de publication (HLA
[OUNNAR et al., 2001] et [SERMENT, 2007]), déclarées auprès de l‘ASD :
- publication à la demande : il ne s‘agit pas à proprement parler d‘un abonnement en ce
qu‘il s‘agit d‘une demande ponctuelle. Par exemple, nombre de machine
opérationnelle à un instant t) ;
- publication à chaque modification : automatiquement l‘agent signalera tout
changement de situation de son état, de l‘état d‘une de ses connaissances ou propriété
(par ex. panne machine).
- Publication datée : l‘agent publiera les données à un rythme donné. Par exemple,
publication toutes les heures des commandes clients reçues.
- Publication conditionnelle : l‘agent informera l‘ASD dés qu‘une condition est
vérifiée (par exemple Etat machine != occupée).
A l‘aide de cette spécification, le SMA est à même de gérer des sources de données
multiples et hébergées dans des environnements hétérogènes. Ayant présenté les principes
généraux de l‘architecture logicielle supportant une simulation orientée agent et
organisationnelle, nous illustrons dans la section suivante son fonctionnement sur un cas
d‘étude simplifié.
146
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation
organisationnelle de chaînes logistique
Les groupes existent au travers des agents Gestionnaire de Groupe, dans le médiateur :
ainsi dans le cas de simulateurs « fermés », l‘identité du groupe (ses membres, les rôles joués,
les compétences, etc.) pourra être maintenue indépendamment de l‘architecture interne du
simulateur. De même, les agents Sources de Données sont reliés, soit directement aux agents,
soit à la description des données qu‘ils peuvent produire, garantissant ainsi sa capacité à
répondre aux demandes d‘information des agents Indicateurs. Ainsi que nous l‘évoquions en
début de la section 4.2, l‘interopérabilité est dans le cas présent simplifiée puisque les agents
peuvent communiquer directement. Elle se résume donc à la capacité d‘un agent à trouver son
interlocuteur indépendamment de sa localisation (i.e. environnement multi-agents) : aussi est
elle assurée par l‘agent DF i.e. fournissant un service d‘annuaire type Page Blanches et Pages
Jaunes. La Figure 4.40, montre le mécanisme de cette interopérabilité entre un agent cognitif
(Jason) et un agent réactif (Jade). De manière classique en SMA, elle se limite de fait à
l‘enregistrement des agents auprès du DF puis au la réponse du DF au demande d‘information
d‘adressage d‘un agent à un autre. Les agents peuvent alors communiquer directement entre
eux.
147
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation
organisationnelle de chaînes logistique
148
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation organisationnelle de chaînes logistique
149
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation
organisationnelle de chaînes logistique
- Phase Simulation CL :
1- L‘agent Compagnie 1 contacte son Directeur de Production afin de préparer et
livrer la commande qu‘il a pu négocier avec un autre agent.
2- Ce dernier évalue sa capacité à répondre à cette commande dans les temps. Elle
peut impliquer un calcul complexe comme celui décrit dans [TRANVOUEZ et
FERRARINI, 2006] consistant soit à recourir aux stocks disponibles, à produire
totalement la commande ou toute combinaison des deux, en se basant sur des
opérations de réordonnancement au niveau des machines de production. Dans ce
dernier cas, un processus de négociation pourrait être lancé par l‘agent Directeur
de production. La complexité du processus justifie ainsi pleinement le recours à
une architecture délibérative.
3- L‘agent Directeur de Production confirme (ou non) sa capacité à traiter la
demande.
- Phase Production d’indicateur :
L‘agent Indicateur demande à l‘Agent Source de Données (ASD) du groupe 1, de lui
envoyer le nombre de commandes validées.
L‘ASD relaie cette information auprès de l‘agent Directeur de production; qui lui
répond avec les informations demandées. L‘ASD transmet alors l‘information à
l‘agent indicateur qui peut produire l‘indicateur de type Activité (cf. Tableau 4.7)
Volume traité en intégrant les données reçues.
150
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation
organisationnelle de chaînes logistique
Figure 4.42 : Interaction entre les agents dans le groupe 1 (Agents Délibératifs) et les agents
du médiateur
151
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation
organisationnelle de chaînes logistique
Figure 4.43 : Interaction entre les agents dans le groupe 3 (Agent réactifs et Cognitifs)
La Figure 4.43 décrit la gestion d‘un transport de produit après fabrication : l‘Agent
Compagnie 2 donne l‘ordre aux agents (réactifs donc implémentés en Jade) Camion et Stock
de se préparer à livrer une commande. L‘agent Camion confirme sa disponibilité ou sa
capacité à répondre dans les temps, demande les produits concernés à l‘agent Stock qui les lui
remet, et part les livrer au client (Compagnie 3) qui lui remet un accusé de réception de la
marchandise. Il confirme enfin à l‘agent Compagnie 2 la livraison (ou pas) des produits.
152
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation
organisationnelle de chaînes logistique
Figure 4.44 : Interaction entres les agents dans le Groupe 2 (agents cognitifs agent réactifs)
L‘agent Indicateur demande le nombre de produits livrés à l‘ASD qui relaie à l‘agent
Compagnie 2 cette demande, puis il transmet cette information à l‘agent Indicateur afin qu‘il
puisse produire un indicateur de qualité de service concernant le taux de produits livrés dans
le temps.
6. Conclusion
Le chapitre 3 a décrit le cadre méthodologique, que nous proposons, pour faciliter
l‘élaboration de simulations de chaînes logistiques tenant compte de leur structure
organisationnelle et des observables retenus dans une expérimentation particulière.
L‘architecture logicielle, que ce chapitre a présentée, se propose d‘accompagner cette
implémentation en permettant une transition simplifiée des modèles CAOM et leur
implémentation dans différents simulateurs. Nous avons alors établi les différents types de
besoin que cet objectif soulevait (gestion de la structure organisationnelle i.e. les groupes,
production des indicateurs correspondants aux observables, gestion du temps , etc.).
Une revue de littérature ciblée sur ces besoins a conclu à l‘intérêt d‘une approche par
intégration capable d‘assurer l‘intégration des modèles produits par le cadre méthodologiques
153
Chapitre 4 : Une architecture logicielle pour la modélisation et la simulation
organisationnelle de chaînes logistique
154
CHAPITRE 5 : MISE EN ŒUVRE SUR UN CAS
D’ÉTUDE DE CHAÎNE LOGISTIQUE
PLAN DU CHAPITRE
155
Chapitre 5 : Mise en œuvre sur un cas d‘étude de chaîne logistique
1. Introduction
Les deux chapitres précédents ont présenté nos principales contributions, tout d‘abord un
cadre méthodologique et ensuite une architecture logicielle pour la modélisation et la
simulation « organisationnelle » de chaines logistiques. L‘objet de ce chapitre est de mettre en
œuvre ces deux contributions sur un cas d‘étude de chaine logistique.
Dans la deuxième section de ce chapitre nous présentons l‘étude de cas d‘une chaine
logistique, le cas « Raquette », relatif à la production de raquettes de tennis, qui nous servira à
illustrer la mise en œuvre de nos deux contributions. La section trois développe la
modélisation de cette chaine logistique selon le cadre de modélisation que nous avons
proposé, conduisant à la production des modèles CROM, CAOM et OPAM. La section quatre
présente l‘implémentation et la mise en œuvre de l‘architecture logicielle à base d‘agents que
nous avons proposé, permettant l‘exécution du modèle OPAM. Enfin la section cinq présente
et interprète les résultats de simulations relatifs à la chaîne logistique du cas « Raquette »,
obtenus par l‘étude de plusieurs scénarios pertinents.
156
Chapitre 5 : Mise en œuvre sur un cas d‘étude de chaîne logistique
fournisseurs chargés d‘acheminer les composants ou les matières premières dont ils assurent
la production, vers le manufacturier de produits finis (manufacturier de la raquette de tennis).
L‘offre du marché en matière de raquettes de tennis doit permettre au joueur de mieux
choisir sa raquette en fonction de ses mensurations, de son type de jeu, et de ses préférences
en général. Les raquettes de tennis présentent donc un intérêt d‘un point de vue organisation
de la chaîne logistique : elles peuvent être produites à la fois en de nombreux exemplaires et
présenter de nombreuses combinaisons d‘assemblage voire être proposée en production sur
mesure. En d‘autres termes, l‘organisation de la chaîne logistique doit alors répondre à ces
différents types de demande des profils de joueurs.
Comme l‘illustre la Figure 5.45, la raquette de tennis se compose d'un cœur qui peut être
en différents matériaux (bois, aluminium, composite,...) et d‘un cordage. La partie par laquelle
on tient la raquette est le manche, bordé d'un grip pour le confort et une meilleure tenue. Les
rôles des différents éléments sont les suivants :
- Le manche : partie par laquelle le joueur tient sa raquette, le manche peut être de
différentes épaisseurs afin de répondre aux besoins spécifiques de chaque client.
157
Chapitre 5 : Mise en œuvre sur un cas d‘étude de chaîne logistique
158
Chapitre 5 : Mise en œuvre sur un cas d‘étude de chaîne logistique
159
Chapitre 5 : Mise en œuvre sur un cas d‘étude de chaîne logistique
Les fabricants de Raquettes de Tennis (ou manufacturier dans la Figure 5.46) se chargent
de l‘assemblage des produits finis, à partir des matières premières ou semi-finies produites par
les fournisseurs de chacun des type de composant formant une raquette de Tennis. Un
fabricant réalise : i) des opérations de modification des composants (Manche, Cadre,
Cordage) et ii) leur assemblage (insertion du cadre sur le manche, etc.). Ces opérations
peuvent traiter des commandes globales ou répondre à des demandes de personnalisation de
produit. Il fait transporter sa production vers le distributeur principal. Les fabricants des
pièces à assembler interagissent également avec les fournisseurs de matières premières.
Dans le cas de matériaux ou d‘opérations d‘assemblage complexes, un fabricant peut
sous-traiter une partie de sa production à un autre fabricant. Ces différents transports de
marchandises sollicitent donc, à différent moment du cycle de vie d‘une raquette de Tennis,
des transporteurs. Leur constitution est un peu différente des autres entreprises en ce sens
qu‘ils sont généralement issus d‘un tissu d‘entreprises de petite ou moyenne taille (PME),
caractérisées généralement par une structure hiérarchique allégée. Dans le présent cas
industriel, nous avons retenus les fabricants intermédiaires suivants : (i) un fabricant de
Manche (Handle), un fabricant de cadre (cœur compris) (Shoulder), (iii) et un fabricant de
cordage (Stringing).
160
Chapitre 5 : Mise en œuvre sur un cas d‘étude de chaîne logistique
- Distributeur : Reçoit, stocke, prépare et expédie des produits, modules et pièce pour
satisfaire des commandes ou requis de clients ;
- Détaillant : Accomplit des actes de commerce. Reçoit, stocke et prépare des produits
pour satisfaire des commandes ou requis de clients ;
- Transporteur : Déplace, transporte, manipule des biens entre les centres selon les
ordres des clients.
Cette typologie des rôles générique permet de décrire les principaux rôles qui s‘inscrivent
dans une chaîne logistique qui dispose d‘un rôle précis au sein de l‘organisation. Afin de
prendre en considération le contexte des produits configurables, et ce, dès la phase de
conception, nous proposons d‘ajouter un rôle qui est celui du consommateur. Dans le but
d‘appréhender les comportements de ces individus distincts aux besoins personnalisés il
apparaît nécessaire de les représenter, et ce, dès la phase de modélisation.
161
Chapitre 5 : Mise en œuvre sur un cas d‘étude de chaîne logistique
162
Chapitre 5 : Mise en œuvre sur un cas d‘étude de chaîne logistique
La Figure 5.47 décrit les interactions entre les entreprises (fournisseurs, manufacturiers,
distribution et points de vente) de la CL. Cette représentation constitue un modèle de domaine
de la chaîne logistique indiquant notamment le fonctionnement interne de chaque entreprise
en termes de processus (production, assemblage, etc.) et de gestion de stock.
Dans les tableaux suivants (Tableau 5.8 et Tableau 5.9) sont présentées les
caractéristiques associées au niveau des marchés considérés.
Caractéristique Description
Taille La taille de la tête des raquettes tennis représente la longueur du cadre, le profilé et les
dimensions du tamis.
Tamis Le tamis décrit la surface de cordes des raquettes tennis. Selon sa taille, il détermine la puissance
de la raquette et sa tolérance. Un tamis moyen est compris entre 630 cm² et 660cm². Un grand
tamis est supérieur à 660 cm². Un petit tamis est inférieur à 630 cm².
Cadre Le cadre est décrit par sa longueur, représentée par la longueur totale d‘une raquette exprimée en
centimètre comprenant le manche et la tête. Les raquettes tennis de taille standard ont une
longueur de leur cadre circulant de 68 à 69. Devenant stretch ou long body quand leurs tailles
sont plus grandes que 69 cm. le profilé de la raquette, quant à lui, est exprime en millimètre et
détermine l‘épaisseur du cadre.
Profilé L‘épaisseur du cadre varie selon l‘objectif du client : fin pour un gain de précision et large pour
plus de puissance. et de contrôle.
Poids Le poids de la raquette de tennis intervient également dans la puissance et le contrôle du jeu : ces
deux objectifs étant en opposition : une raquette plus lourde aura plus de puissance mais moins
de contrôle. Ainsi, le poids de raquettes cordées pour des enfants et débutant varie entre 200 gr et
270 gr contre 240 à 360/370 pour des joueurs plus expérimentés..
Contrôle La raquette de tennis est plus puissante lorsque son profile est plus élevé, inversement, le
contrôle est plus élevé lorsque le profilé est plus petit.
Matériau En aluminium pour des raquettes de débutant, les matériaux employés sont en graphite ou des
combinaisons d‘aluminium et de graphite, en Fibre de carbone, etc.
Puissance La puissance des raquettes de tennis peuvent être améliores, selon les types de mouvements, ou
des styles de jeux des joueurs. Les raquettes tennis sont ainsi caractérisées selon plusieurs critères
: matériaux, profilé, tamis, équilibre. La puissance est d‘autant plus grande que le tamis est plus
grand au détriment du contrôle.
Maniabilité La maniabilité d‘une raquette est inversement proportionnelle au poids de la raquette.
Précision Un tamis petit ou moyen, un profilé plus fin et un matériau Titanium ou graphite répond à un
besoin (client) de contrôle.
Equilibre Il détermine la distance (en cm) de la base du manche jusqu'au point d'équilibre de la raquette.
Les raquettes dites rallongées ont un équilibre environ toujours en tête et sont en général plus
légères. Le choix de l'équilibre d'une raquette changera selon la morphologie et le type de jeu
pratiqué. Un joueur avec un aspect d'une amplitude plus importante et désirant obtenir un gain de
puissance privilégiera une raquette plus en tête (plus grand de 34cm) à l‘inverse, un joueur au
aspect court et voulant obtenir un gain de maniabilité privilégiera un équilibre plutôt en manche
(plus petit de 32cm).
La souplesse et la La souplesse et la rigidité sont fonction de la nature des matériaux utilisés dans la fabrication.
163
Chapitre 5 : Mise en œuvre sur un cas d‘étude de chaîne logistique
rigidité Une raquette rigide apportera plus de stabilité à l'impact et donc plus de contrôle et de précision,
à l'inverse une raquette souple apportera un gain de puissance et de confort. Un équilibre en tête
peut faire apparaître la raquette pour plus lourde qu'elle ne l'est en réalité et inversement.
Le plan de cordage Le tamis peut accueillir 14, 16 ou 18 montants et 18, 19, 20 ou 22 travers. Plus la balle est en
contact avec une densité importante de cordes plus on peut lui donner la précision que l'on désire.
Moins il y a de cordes, moins il y a de contrôle mais davantage de puissance et de prise d'effet.
La demande est considérée comme étant l‘un des éléments essentiels formant la
dynamique de l‘environnement de la chaîne logistique. En termes de produit nous considérons
trois types, qui sont les suivants (Tableau 5.9) :
Type Description
Junior Destinés à des enfants, deux gammes de raquettes sont prévues en fonction du niveau de
pratique:
1. gamme débutant : pour les enfants commençant à jouer au tennis.
- Poids: Une raquette est dite légère quand son poids est inférieur à 285g.
Adulte Le joueur régulier doit choisir sa raquette en favorisant le contrôle et la puissance. S‘il a besoin
de contrôle, il choisira pour une raquette avec un tamis moyen et/ou un équilibre neutre. S'il a
régulier
besoin de puissance, il choisira pour une raquette avec un grand tamis et/ou un équilibre en tête.
- Taille du tamis: Un grand tamis est supérieur à 660 cm². un tamis moyen est compris
entre 630 cm² et 660cm².
- Poids: Une raquette est dite légère quand son poids est inférieur à 285g.
Afin de reproduire des phénomènes saisonniers, propre à l‘industrie du loisir, nous avons
établi un volume de vente par trimestre et par marché. Ces données sont synthétisées dans le
Tableau 5.10.
164
Chapitre 5 : Mise en œuvre sur un cas d‘étude de chaîne logistique
De même, nous avons défini un niveau de stock de produits selon chaque famille de
produit (Junior, Intensif et Régulier), ainsi que l‘indique le Tableau 5.11.
Niveau Stock de type Junior Stock de type adulte intensif Stock de type adulte régulier
Stock initial Taille initiale Stock initial Taille initiale Stock initial Taille initiale
Agent
Stock Vrai 7000 Vrai 8750 Vrai 8500
Tableau 5.11 : Les paramètres d‘initialisation des stocks des différents types
165
Chapitre 5 : Mise en œuvre sur un cas d‘étude de chaîne logistique
(iii) une approche multi-niveaux dans laquelle cette description organisationnelle et cette
identification des observables seront faites à des niveaux de détail et/ou d‘organisation
différents, jugés pertinents pour la modélisation et la simulation de la chaîne.
Dans le processus de modélisation et de simulation de chaîne logistiques, comme l‘illustre
la figure suivante, notre cadre méthodologique distingue trois principales étapes :
166
Chapitre 5 : Mise en œuvre sur un cas d‘étude de chaîne logistique
167
Chapitre 5 : Mise en œuvre sur un cas d‘étude de chaîne logistique
Ainsi l‘acteur Compagnie1 joue tout d‘abord deux rôles différents (Fournisseur et
Représentant de la direction) dans deux groupes différents (un Groupe Dynamique et un
Groupe Structurel) et dans les niveaux N1 et N2. Cet acteur envoie un ordre à l‘acteur
Directeur_de_production pour fabriquer un produit, en jouant deux rôles: Gestion de produit
(au niveau N2) et Assignation de produit (au niveau N3), ils s‘assurent de la bonne exécution
de cet ordre.
168
Chapitre 5 : Mise en œuvre sur un cas d‘étude de chaîne logistique
170
Chapitre 5 : Mise en œuvre sur un cas d‘étude de chaîne logistique
dans le modèle (CAOM). Chaque acteur dans le CROM est présenté par un agent dans le
modèle CAOM. Cette tâche permet de traduire les relations entre les acteurs définis lors de la
première tâche. Il s‘agit de reporter sur le CAOM, l‘ensemble des relations recensées sur le
CAOM. Chaque relation du CROM est représentée sur le CAOM par des interactions. Dans le
modèle CAOM on distingue deux grands types d‘agents : les agents réactifs (AR) aux
comportements basiques, et les agents délibératifs (AD) aux comportements complexes
pouvant nécessiter des interactions avec d‘autres agents délibératifs ou réactifs.
La Figure 5.50 illustre le modèle CAOM associé à notre cas d‘étude. Comme le modèle
CROM dont il est dérivé, il est structuré en 3 niveaux N1, N2 et N3. Chaque niveau se
compose d‘une ou plusieurs groupes (Structurel ou Dynamique) d‘agents. Dans le niveau N1,
les agents Compagnie1, Compagnie2, Compagnie3 et Compagnie4 sont liés par une
interaction de type complexe, définie par relation de type « collaboration » dans le Modèle
CROM. Chacune de ces agents est représenté par un groupe d‘agents (de nature réactive ou
délibérative) qui jouent un rôle à différents niveaux hiérarchique.
En outre, un processus VMI et décrit dans laquelle l‘agent Compagnie 2 utilise l‘agent
Compagnie 1, comme l‘agent Compagnie 3 utilise l‘agent Compagnie 2, en tant que
ressources d‘actions en cas de besoin. Ainsi l‘agent Stock est un agent jouant le même rôle
dans deux groupes différents, c‘est un agent commun à Compagnie 1 et à Compagnie 2.
L‘interaction physique spécifie la circulation de l‘information entre agents liés à des flux
physiques (i.e. transfert de matières, produits…). Ainsi que spécifiée dans le modèle CROM
précédent, ces interactions ont lieu au sein de groupes dynamiques (GD 5 et GD 6),
caractérisant des relations « contractuelles », c'est-à-dire définie en dehors d‘un cadre
structurel (i.e. dans entreprise) et dont la durée de vie est liée à celle du contrat (au sens large,
i.e. dans un cadre de collaboration ou client/fournisseur).
171
Chapitre 5 : Mise en œuvre sur un cas d‘étude de chaîne logistique
173
Chapitre 5 : Mise en œuvre sur un cas d‘étude de chaîne logistique
174
Chapitre 5 : Mise en œuvre sur un cas d‘étude de chaîne logistique
175
Chapitre 5 : Mise en œuvre sur un cas d‘étude de chaîne logistique
Base de données
Résultats
Données
Paramètre
JASON
Agent Agent Agent Agent
Compagnie1 Compagnie2 Compagnie3 Compagnie4
Reçois des
Groupe d’Indicateurs
informations
MÉDIATEUR
Source de Source de Source de Source de Source de Source de
données données données données données données Demande
d’informations
Gestion du modèle organisationnel
Gestion d‘un groupe (Interne)
Groupe Groupe Groupe Groupe Groupe Groupe
manager manager manager manager manager manager
Gestionnaire Globale (Externe)
DF
Agent Agent Agent Agent
Production1 Emballage Personnaliseur
Service de « pages jaunes» à la
Compagnie3
plate-forme
Agent Agent Agent Agent
JADE
Agent
Production2 Stock 1 Assemblage Stock 2
Chercher
Distributeur AMS
ACC
Supervise
Agent Gère la Communication
Agent Agent l'enregistrement des
Camion2 agents
entre agents
Production3 Groupage Agent
Groupe 2 Groupe 6 Personnaliseur
Containeur
176
Chapitre 5 : Mise en œuvre sur un cas d‘étude de chaîne logistique
177
Chapitre 5 : Mise en œuvre sur un cas d‘étude de chaîne logistique
Figure 5.53 : Une partie d‘Illustration de l‘architecture dans le cas de la chaîne logistique
178
Chapitre 5 : Mise en œuvre sur un cas d‘étude de chaîne logistique
Agents JASON
Médiateur
Donnée
Agent ACC Interopérabilité entre
les plateformes
Agent Gestionnaire « Agents DF» Agent Indicateur
Groupe
Agents JADE
Les agents AMS et ACC du médiateur, relatifs à la gestion des agents, sont déjà
implémentés dans la plateforme JADE, et les services administratifs spécifiés pour chaque
type agent dans ALMOSIM sont gérés automatiquement et de manière transparente par
JADE. L‘interaction entre l‘agent cognitif et l‘agent réactif repose sur l‘échange de message
entre les deux environnements de développement retenus. Les interactions entre les
plateformes de développement multi-agents JASON et JADE s‘effectuent via des messages
ACL. Cette communication ou l‘interaction communication entre un agent cognitif à un agent
réactif se fait à partir un composant DF qui fait office d'annuaire. Les agents Sources de
Données faisant partie de noyau de l‘architecture (Médiateur), ces agents peuvent assurer
l‘interopérabilité entre l‘agent indicateur et les agents dans les plateformes (JASON «Agents
Cognitifs» et JADE «Agents Réactifs») pour partager les données ou l‘échange des
informations. Enfin, l‘agent Gestionnaire de groupe est responsable de la gestion des entrées
179
Chapitre 5 : Mise en œuvre sur un cas d‘étude de chaîne logistique
dans le groupe (i.e. demande de jouer un rôle dans un groupe), du maintien des informations
sur groupes, notamment vis-à-vis de requêtes d‘autres agents..
180
Chapitre 5 : Mise en œuvre sur un cas d‘étude de chaîne logistique
Figure 5.56 : Exemple, Communication entres les agents cognitifs (ou agents JASON)
181
Chapitre 5 : Mise en œuvre sur un cas d‘étude de chaîne logistique
182
Chapitre 5 : Mise en œuvre sur un cas d‘étude de chaîne logistique
diagramme de séquence est proposé à la Figure 5.58, permettant ainsi d‘illustrer les
communications entres les agents cognitifs et réactifs.
Le message envoyé de l‘agent cognitif Supplier vers l‘agent cognitif Production Manager
contient des informations la quantité et ainsi la référence de produits à commander. Le
message envoyé sous forme suivante: Name_Message (Type : Order ; Format : Confirm ;
Ref_Product : Chiffre ; Quantity: 10 ; From : Supplier ; To : Production Manager;).
Le message envoyé de l‘agent cognitif «Agent Gestion de Production» vers l‘agent réactif
«Agent Stock1» concernant une demande d‘information sur l‘espace de stockage disponible.
Le message envoyé par l‘agent cognitif « Stock Matière Première » vers les agents réactifs
« Production 1, Production 2, Production3 » contient des informations concernant la mise à
disposition des matières premières nécessaires à la fabrication des produits.
183
Chapitre 5 : Mise en œuvre sur un cas d‘étude de chaîne logistique
Figure 5.58 : Communication entres les agents cognitifs et les agents réactifs
184
Chapitre 5 : Mise en œuvre sur un cas d‘étude de chaîne logistique
La Figure 5.59 présente des messages de la Figure 5.58. Cet exemple présente la
communication entre deux agents JASON (agents délibératifs). Le rôle de premier agent où
l‘agent fournisseur à demandé de fabriqué d‘un produit (Raquettes de Tennis) à l‘agent
gestion de production.
La figure suivante montre l‘état ou les messages entre tous les agents (Réactifs et
Cognitifs) dans le système. La Figure 5.60 montre une trace « brute » des messages échangés.
185
Chapitre 5 : Mise en œuvre sur un cas d‘étude de chaîne logistique
Alors que la Figure 5.61, montre l‘échange entre les agents, toujours en cours d‘exécution.
186
Chapitre 5 : Mise en œuvre sur un cas d‘étude de chaîne logistique
Initialisation phase
(name /roles/abilitiesregistration…)
Simulation phase
187
Chapitre 5 : Mise en œuvre sur un cas d‘étude de chaîne logistique
188
Chapitre 5 : Mise en œuvre sur un cas d‘étude de chaîne logistique
189
Chapitre 5 : Mise en œuvre sur un cas d‘étude de chaîne logistique
6. Conclusion
Ce chapitre nous a tout d‘abord permis d‘illustrer, à travers un cas industriel, la mise en
œuvre du cadre méthodologique proposé au chapitre 3. Cette illustration concerne, au niveau
exploitation, la simulation d‘une chaîne logistique de fabrication de raquettes de tennis.
Pour réaliser cette simulation, nous avons proposé un environnement logiciel permettant
l‘implémentation du Modèle Opérationnel Agent. Cet environnement de simulation permet de
simuler les agents délibératifs et les agents réactifs, par la mise en œuvre deux plates-formes
logicielles spécifiques, l‘une pour les agents délibératifs (JASON), et l‘autre pour les agents
réactifs (JADE).
Afin de valider le cadre méthodologique, nous avons détaillé les étapes de conception et
les phases de transition, menant de l‘abstraction du système réel jusqu‘à la conduite
d‘expérimentations. Appliqué au cas industriel, nous avons implémenté et exécuté un système
multi-agents nous permettant d‘analyser le comportement d‘une chaîne logistique.
Au niveau de la conduite d‘expérimentations par simulations orientées agents, nous avons
atteint un premier niveau nous permettant de mener des études et des analyses sur les
comportements de chaînes logistique. A travers la définition de différentes interfaces
expérimentales, nous avons obtenu de nombreux résultats de simulation. la proposition et la
simulation de différents scénarii nous ont permis de définir de multiples indicateurs de
performances.
190
CHAPITRE 6: CONCLUSION GÉNÉRALE ET
PERSPECTIVES
192
Chapitre 6 : Conclusion générale et perspectives
2. Perspectives de recherche
Le travail réalisé jusqu‘ici a permis d‘établir les contributions citées dans la section
précédente ainsi qu‘un début de validation expérimentale de la pertinence de notre démarche.
Les perspectives de recherche que nous dégageons de tout ce travail peuvent se résumer en
une poursuite de cette volonté de validation de la démarche et de l‘architecture logicielle
associée, suivie d‘un enrichissement des propositions faites dans ce mémoire.
L‘objectif final étant de produire des simulations, une validation renforcée pourrait se
faire en plusieurs temps : i) développer le cas d‘étude afin d‘obtenir in fine une simulation
plus complète ; ii) développer les autres fonctions du médiateur (essentiellement la gestion du
temps et de l‘interopérabilité logicielle) en intégrant un environnement de simulation non-
agent. Bien que nous ayons identifié les solutions possibles pour mettre en œuvre ces
fonctions, il reste encore à les implémenter. Ces deux améliorations valideraient ainsi
l‘ensemble de nos propositions.
L‘enrichissement du cadre méthodologique consisterait, à court terme, à préciser la
procédure de traduction assurant la transition entre les modèles CROM, CAOM et OPAM. De
fait, des critères de décision ont été proposés mais des expérimentations plus exhaustives (cf.
paragraphe précédent) permettraient de définir des règles explicites facilitant le travail des
modélisateurs et des informaticiens chargés de produire ces simulations. En se rapprochant
193
Chapitre 6 : Conclusion générale et perspectives
des concepts et techniques de l‘ingénierie dirigée par les modèles (ou Model Driven
Engineering), ceci pourrait être mise en œuvre à l‘aide d‘outils comme ATL11.
A plus long terme, la poursuite de l‘objectif de prise en compte de l‘organisation dans
la simulation de chaîne logistique impliquerait d‘intégrer la dimension réellement dynamique
de cette organisation en rendant encore plus explicite l‘organisation, à l‘image de ce que
propose A&A [MONTAGNA et al., 2008] et Moise (et Moise+) [HUBNER et al., 2007].
Ainsi, en donnant la capacité des agents de pouvoir raisonner sur l‘organisation, il serait
possible de simuler des processus de décision conduisant à externaliser une partie de la
production (par ex.) d‘une entreprise et d‘étudier leur conséquence et donc de comparer les
performances de la chaîne au fur et à mesure des changements organisationnels.
Enfin, concernant l‘architecture logicielle elle-même, au-delà des optimisations que
des expérimentations supplémentaires permettraient d‘identifier (échanges de message,
exécution sur une grille de calcul…), il serait intéressant voire nécessaire d‘améliorer la
réutilisation des modèles et des simulations. De fait, le processus de conception des
simulations peuvent amener, en fonction des objectifs de simulation et des observables
associés, à produire plusieurs modèles de simulation à partir d‘un même modèle de domaine
d‘une chaîne logistique. De fait, la réutilisation actuellement réside dans la possibilité de
récupérer entre deux simulations des modèles ou des implémentations d‘agents. Dans le cas
de modèles non agent, cette réutilisation peut être moins simple et ainsi nécessiter une étude à
part entière pour ajouter, par exemple, une conception à base de composants (agentifiés ou
non [PUJALTE et al. 2006].
11
http://wiki.eclipse.org/ATL
194
BIBLIOGRAPHIE
[AHN et al., 2003] AHN, H. J., Lee, H., et Park, S. J. (2003). A flexible agent system for
change adaptation in supply chains. Expert Systems with Applications, 25, 603–618.
[ALBER et WALKER, 1998] ALBER, K. L. et WALKER, W. T. (1998) Supply Chain
Management: Principles and Techniques for the Practitioner, Research Paper Series,
APICS Educational & Research Foundation, Falls Church, VA.
[AMICE, 1993] AMICE (1993) CIMOSA : Open Systems Architecture for CIM, Springer-
Verlag.
[AKKERMANS et al., 1999] AKKERMANS, H.; BOGERD, P. et VOS, B. (1999) Virtunous
and Vicious Cycles on the Road Towards Intrnational Supply Chain Management,
International Journal of Operations & Production Management, Vol. 19, No. 5/6, 565-
58.
[AYERS, 2000] AYERS, J. (2000) A Primer on Supply Chain Management, Information
Strategy : The Executive’s Journal, Vol. 16, No. 2, 6-15.
[BALCI, 1998] BALCI O., (1998) Verifiation, validation and testing. The Handbook of
Simulation. Edited by Jerry Banks, John Wiley et Sons, New York, USA.. Chapter 10,
pp. 335-393.
[BALLOU, 1992] BALLOU, R. (1992) Business Logistics Management, Englewood Cliffs.
[BALLOU et al., 2000] BALLOU, R. H.; GILBERT, S. M. et MUKHERJEE, A. (2000). New
Managerial Challenges from Supply Chain Opportunities, Industrial Marketing
Management, Vol. 29, No. 1, 7 - 18.
[BERNON et al., 2002] BERNON, C., GLEIZES, M.P., PICARD, G. et GLIZE, P. (2002)
The Adelfe Methodology For an Intranet System Design. In Proc. of the Fourth
International Bi-Conference Workshop on Agent-Oriented Information Systems
(AOIS), Toronto, Canada.
[BERRAH et al., 2000] BERRAH, L., MAURIS, G., FOULLOY L. et HAURAT A., (2000)
"Global vision and performance indicators for an industrial improvement approach",
Computers in Industry, vol., n°43, pp. 211-225.
[BERRAH, 1997] BERRAH, L., (1997) "Une approche d'évaluation de la performance
industrielle. Modèle d'indicateur et techniques floues pour un pilotage réactif", Thèse de
Doctorat en Génie Industriel, Institut National Polytechnique de Grenoble, Juillet.
[BERRAH et HAURAT, 1997] BERRAH, L., HAURAT, A., (1997) "Une stratégie de mise
en place d'indicateurs de performance pour le pilotage des processus de production",
MOSIM 97, 1ère Conférence Francophone sur la Modélisation et la Simulation, Rouen,
France, 5-6 Juin,
[BERRAH et al., 1995] BERRAH, L., MAURIS, G., HAURAT, A. et FOULLOY, L., (1995)
« Modélisation de la performance : une approche par la logique des indicateurs de
performance», Congrès International de Génie Industriel : La productivité dans le
monde sans frontière, Montéal, canada.
[BISWAS et NARAHARI, 2004] BISWAS, S. et NARAHARI, Y. (2004) ‗Object oriented
modelling and decision support for supply chain‘, European Journal of Operational
Research, Vol. 153.
[BITTON, 1990] BITTON, M., (1990) "ECOGRAI : méthode de conception et d'implantation
des systèmes de mesure des performances pour organisations industrielles", Thèse de
Doctorat en Automatique, Université de Bordeaux I, Septembre.
[BOER et al., 2008] BOER, C.A., DE BRUIN A. et VERBRAECK A. DISTRIBUTED
SIMULATION IN INDUSTRY – A SURVEY PART 3 – THE HLA STANDARD IN
195
Bibliographie
196
Bibliographie
197
Bibliographie
[FERRARINI et al., 2001] FERRARINI, A., LABARTHE, O., et ESPINASSE, B., (2001)
"Modelling and Simulation of Supply Chains with a Multiagent System" , Workshop on
Multiagent Based Modelling and Simulation in Industry and Environment, ESS'2001 -
13th European Simulation Symposium and Exibition, Marseille, 2001
[FERBER et al., 2009] Ferber, J., Stratulat, T. et Tranier, J. (2009), Towards an integral
approach of organizations in multi-agents systems: the MASQ approach. Semantics and
dynamics of organizational models in Virginia Dignum,.
[FERBER et al., 2004] FERBER, J., GUTKNECHT, O. et MICHEL, F. (2004) From agents
to organizations : an organizational view of multi-agent systems. In Agent-Oriented
Software Engineering IV 4th International Workshop, volume 2935 of LNCS, pages
214–230, Melbourne, Australia, mar 2004. Springer Verlag.
[FERBER et GUTKNECHT, 1998] FERBER, J. et GUTKNECHT, O. (1998). A meta-model
for the analysis and design of organizations in multiagent systems. In Y. Demazeau, E.
Durfee, and N.R. Jennings, editors, Third International Conference on Multi-Agent
Systems (ICMAS), pages 128–135, Paris, France, july 1998.
[FERBER, 1995] FERBER, J. (1995) Les Systèmes Multi-Agents, vers une intelligence
collective, InterEditions.
[FERBER, 1989] FERBER, J. (1989) ‗Eco Problem Solving: how to solve a problem by
interactions‘, Proceedings of the 9th workshop on Distributed Artificial Intelligence.
[FERGUSON, 1992] FERGUSON, I.A. (1992) TouringMachines : An Architecture for
Dynamic, Rational, Mobile Agents, PhD thesis, University of Cambridge.
[FININ et al., 1994] FININ, T., LABROU, Y. et MAYFIELD, J. (1994) ‗KQML as an agent
communication language‘, Proceedings of the 3rd International Conference on
Information and Knowledge Management.
[FIPA, 1997] FIPA (1997) Agent Communication Language, Foundation for Intelligent
Physical Agents, www.fipa.org/specs/fipa00018/.
[FIPA, 2002] FIPA (2002) FIPA Contract Net Interaction Protocol Specification, Foundation
for Intelligent Physical Agents, www.fipa.org/specs/fipa00029/.
[FORRESTER, 1961] Forrester, J.W. (1961) Industrial Dynamics, MIT Press.
[FOX et al., 2000] FOX, M. S., Barbuceanu, M., et Teigen, R. (2000). Agent-oriented supply
chain management. The International Journal of Flexible Manufacturing Systems, 12,
165–188.
[FRANCHESQUIN, 2001] FRANCHESQUIN N., (2001), Modélisation et simulation Multi-
Agents d'écosystèmes anthropisés : une application à la gestion hydraulique en Grande
Camargue. Thèse d'informatique de l'Université de Droit, d'Économie et des Sciences
d'Aix-Marseille, Aix-Marseille III.
[FRANKLIN et GRAESSER, 1996] FRANKLIN, S. et GRAESSER, A. (1996) ‗Is it an
Agent, or just a Program?: A Taxonomy for Autonomous Agents‘, Proceedings of the
Third International Workshop on Agent Theories, Architectures, and Languages.
[FUJIMOTO, 2000] FUJIMOTO R. 2000. Parallel and distributed simulation systems. John
Wiley & Sons, Inc. USA
[GALLAND et al., 2005] GALLAND, S., GRIMAUD, F., BEAUNE, P. et CAMPAGNE,
J.P., (2005) ―Simulation of Distributed Industrial Systems - A Multi-Agent
Methodological Approach‖, Supply Chain Optimisation: Product/Process Design,
Facility Location and Flow Control». Series: Applied Optimization, Vol. 94. Dolgui,
Alexandre; Soldek, Jerzy; Zaikin, Oleg (Eds.), 289 pages. Springer. ISBN: 0-387-
23566-3
[GANESHAN et al., 1998] GANESHAN, R., JACK, E., MAGAZINE, M. et STEPHENS, P.
(1998) ‗A taxonomic review of supply chain management research‘, in TAYUR, S.,
198
Bibliographie
199
Bibliographie
200
Bibliographie
201
Bibliographie
202
Bibliographie
203
Bibliographie
Bernaola, G., Orue-Etxebarria, X., Payros, A., Pujalte, V. (eds.). Climate and Biota of
the Early Paleogene 2006, Bilbao, Volume of abstracts, p. 104
[QUESNEL et al., 2007] QUESNEL G., DUBOZ R., RAMAT E., et TRAORÉ M.K.. VLE:
A Multimodeling and Simulation Environment. Proceedings of the Summer Simulation
Multiconference (SummerSim‘07), San Diego, California, USA, July 15-18, 2007, pp.
367-374.
[RAO, 1996] RAO, A, (1996). S. AgentSpeak(L): BDI Agents speak out in a Logical
Computable Language. In W. Van de Velde and J Perram, editors, Proceedings of the
Seventh Workshop on Modeling Autonomous Agents in a Multi-Agent World
(MAAMAW'96), Jan. 22-25, Eindhoven, Netherlands, no. 1038 in LNAI, pp. 42-55,
Springer-Verlag, London, U.K.
[RAO et GEORGEFF, 1991a] RAO, A.S. et GEORGEFF, M.P. (1991a) ‗Asymmetry thesis
and side-effect problems in linear time and branching time intention logics‘
Proceedings of the Twelfth International Joint Conference on Artificial Intelligence.
[RAO et GEORGEFF, 1991b] RAO, A.S. and GEORGEFF, M.P. (1991b) ‗Modeling rational
agents within a BDIarchitecture‘ Proceedings of Knowledge Representation and
Reasoning, FIKES, R. and SANDEWALL, E. (Eds).
[RECH, 2005] RECH, J., (2005). Your Guide to Management: Key Performance Indicators.
[RICCI et al., 2007] RICCI, A., VIROLI, A. et OMICINI, A. (2007). "Give Agents their
Artifacts": The A&A Approach for Engineering Working Environments in MAS. 6th
International Joint Conference "Autonomous Agents & Multi-Agent Systems"
(AAMAS 2007), 14-18 May 2007.
[RIMASSA et al., 1999] RIMASSA G., BELLIFEMINE F., et POGGI A. (1999), JADE - A
FIPA Compliant Agent Framework, PMAA`99, p. 97-108, Londres.
[RODRIGUEZ et al., 2007] RODRIGUEZ, S., GAUD, N., HILAIRE, V., GALLAND, S. et
KOUKAM, A. (2007). An analysis and design concept for selforganization in holonic
multi-agent systems. In S. Bruckner, S. Hassas, M. Jelasity, and D. Yamins, editors,
Engineering Self-Organising Systems, volume 4335 of LNAI, pages 15–27. Springer-
Verlag.
[RODRIGUEZ, 2005] RODRIGUEZ, S. (2005). From analysis to design of Holonic MAS : A
Framework, Methodological Guidelines and Applications. : PhD thesis, UTBM.
[RUSSEL et NORVIG, 2003] RUSSEL, S. et NORVIG, P. (2003). Artificial Intelligence A
Modern Approach. Pearson Education, Upper Saddle River, New Jersey, second edition
[SADEH et al., 2001] SADEH, N. M., HILDUM, D. W., KJENSTAD, D., et TSENG, A.
(2001). MASCOT: An agent-based architecture for dynamic supply chain creation and
coordination in the internet economy. Production Planning & Control, 12(3), 212–223.
[SADEK et al., 1997] SADEK, M.D., BRETIER, P. et PANAGET, F. (1997) ‗Artimis:
natural dialogue meets rational agency‘, Proceeding of IJCAI'97, Nagoya, Japan.
[SAUTER et al., 2002] SAUTER, J.A., MATTHEWS, R., PARUNAK, H.V.D. et
BRUECKNER, S. (2002) ‗Evolving adaptive pheromone path planning mechanisms‘
Proceedings of the first international joint conference on Autonomous agents and
multiagent systems.
[SAUTER ET PARUNAK, 1999] SAUTER, J. A. ET PARUNAK, H. V. D., (1999) ANTS
in the Supply Chain. In Workshop on Agent-Based Decision-Support for Managing the
Internet-Enabled Supply-Chain, Agents'99, Seattle, WA, 1999, pp. 81-88.
[SEARLE, 1969] SEARLE, J.R. (1969) Speech acts, Cambridge University Press.
[SERMENT, 2007] SERMENT, J. (2007) Une infrastructure d‘intégration à base d‘agents
logiciels pour l‘élaboration de systèmes d‘aide à la décision environnementale :
Application à la gestion hydraulique camarguaise. Thèse, Université Paul Cézanne, Aix-
Marseille II.
204
Bibliographie
205
Bibliographie
206
Bibliographie
207