Vous êtes sur la page 1sur 108

d’Oran-- Es Sénia

Université d’Oran Sénia--


Faculté des Sciences
Département d’informatique

Mémoire
Présenté Par SEDDIKIOUI WAHIBA
Pour l’obtention du
MAGISTER
Spécialité : informatique et Automatique

Titre :

Proposition d’un Modèle générique pour les interfaces homme


machine adaptatives : Application
Application à l’aide à la décision
industrielle.

Composéé par :
Compos
Mr Yagoubi Bel Abbas Président
Mr Abdi Mustapha Examinateur
Mr Guezouri Mustapha Examinateur
Mr Bouamrane Karim Co-Encadreur
Mme Taghezout Noria Encadreur

Proposition d’un Modèle générique pour les interfaces homme


machine adaptatives : Application à l’aide à la décision industrielle.
industrielle.
2010-2011
Remerciement
Remerciement

Je dédie ce travail à ma 2éme mère


décédée le 25 décembre 2004 « lala »

Voilà, c’est fini. Trois ans de ma vie résumés en quelques pages qui n’auraient pas été écrites
sans le soutien des personnes à qui je rend hommage dans ces quelques lignes.
Ce magister doit beaucoup à Mme Taghezout Noria et à Mr Bouamrane Karim.
Merci de m’avoir encadrée tout au long de ces trois années avec la chaleur méditerranéenne
dont vous aviez faits preuve. Je souhaite à tout étudiant d’avoir des encadrants comme vous.
Il ya de nombreuses personnes que je me dois de remercier au 1ér rang, bien sur, je placerai
Mme Taghezout Noria qui m’as supporté au propre et au figuré pendant ces trois années.
Je remercie Mr « Yagoubi Belabbas» pour avoir accepté d’être président de mon jury. J’ai
également été très honoré par Mr «Guezouri Mustapha » d’avoir accepté de faire partie de
mon jury et de m’avoir prodigué des remarques très pertinentes. J’exprime ma profonde
gratitude à Mr « Abdi Mustapha » pour sa participation à mon jury.
Je n’oublie pas dans ces remerciements tous les membres de l’équipe méthodes et modèles pour
l’ingénierie de transport ingénierie urbaine et gestion de production pour leurs conseils et
leurs critiques avisés.

J’aimerais également exprimer toute ma reconnaissance à mes parents pour m’avoir transmis
la passion de la recherche et l’art de la persévérance dans l’apprentissage en toute
circonstance. Merci papa, merci maman je vous aime. Je n’oublie pas bien sur ma très chère
sœur et mes deux frères et toute ma famille (mes tantes, mes oncles, mes grand pères) pour
leur soutien et leur confiance.

« Un grand merci à ma belle-famille pour leur patience et leur humour. »


Et un merci rempli d’amour à mon époux Badreddine, qui a eu la patience en
m’encourageant pendant les nombreuses années passées. Je le remercie pour tout ce qu’il a dû
endosser pour que je puisse mener à bien ce mémoire. Sans toi, je ne serais sûrement pas là
aujourd’hui.
À la mémoire de mon papa chéri « SEDDIKIOUI AHMED » [le 10/03/2011]

Parce que j'ai la chance d'avoir un papa exceptionnel….


Je ne peux pas expliquer tout ici, ce serais trop long, mais je voudrais juste faire savoir combien
cet homme est "grand".. Il à été la pour moi dans mes moments de moins, dans mes périodes de
noirs, il a été mes jambes lorsque j'allais si mal.. Entre lui et moi, il y aura toujours plus que ce
lien de sang, je lui dois tellement..

Papa était et est toujours à travers ce qu'il nous a enseigne un être unique, Une personne
merveilleuse qui nous manque tant aujourd'hui, Toujours avec le sourire au coin des lèvres! Il
avait le plus beau sourire du monde. Toute sa vie il s'est consacré aux autres, aux grands comme
aux petits, Quel homme il était! Et quel père fantastique j'ai eu! Que sa mémoire soit bénie
« amine ».

Pour tout cela je voudrais te dire je t'aime papa vraiment Je ne pouvais espérer avoir un père
plus formidable que toi J'ai eu beaucoup de chance que le bon Dieu. T’ai choisi pour que tu sois
mon papa chéri Ta petite famille t'aime énormément, Je souhaite faire pouvoir faire pour mon
fils autant que t’a fais pour moi.

Papa …….

Tu as su m’inculquer le sens de la responsabilité, de l’optimisme et de la confiance en soi


face aux difficultés de la vie. Tes conseils ont toujours guidé mes pas vers la réussite.
Ta patience sans fin, ta compréhension et ton encouragement sont pour moi le soutien
indispensable que tu as toujours su m’apporter. Je te dois ce que je suis aujourd’hui et
ce que je serai demain et je ferai toujours de mon mieux pour rester ta fierté et ne
jamais te décevoir. Mais j’ai toujours besoin de toi…

Aucune dédicace ne saurait exprimer l’amour, l’estime, le dévouement et le respect que


j’ai toujours eu pour toi. Rien au monde ne vaut les efforts fournis jour et nuit pour
mon éducation et mon bien être. Ce travail est le fruit de tes sacrifices que tu as
consentis pour mon éducation et ma formation.

Je t’aime papaaa, tu reste toujours mon plus beau père du monde.

Une dédicace spéciale pour ma très chere grand mére « mima » décedée le 29/12/2010.

rabi yarhamkoume
Table des Matières

Introduction générale

Introduction……………………………………………………………………….. 2
Problématique……………………………………………………………………... 3
Organisation de mémoire…………………………………………………………… 3

Chapitre 1
Les Interfaces Adaptatives

1.1. Introduction……………………………………………………………………….. 6
1.2. L’interaction homme machine……………………………………………………. 6
1.3. Les composants de l’interaction H/M…………………………………………….. 7
1.3.1. L’utilisateur…………………………………………………………………. 7
1.3.2. La tache……………………………………………………………………… 7
1.3.3. Le Contexte………………………………………………………………….. 8
1.3.4. Le système informatique……………………………………………………. 8
1.4. Les définition d’une interface homme-machine…………………..……………... 8
1.5. Définition d’une interface adaptative……………………………………………. 9
1.6. Principe d’adaptation dans les IHM(s)……………………………………………. 10
1.6.1. Aspect pris en compte dans l’adaptation…………………………………… 12
1.6.2. Concepts d’adaptation………………………………………………………. 13
1.6.3. Le processus d’adaptation…………………………………………………... 15
1.7. Les agents dans les interfaces adaptatives………………………………………… 16
1.8. Exemple de mise en œuvre du concept d’adaptation en IHM…………………… 17
1.9. Conclusion…………………………………………………………………………. 19

Chapitre 2
Les Systèmes Multi-
Multi-agents
agents

2.1. Introduction……………………………………………………………………….. 21
2.2. Système multi agents……………………………………………………………… 21
2.2.1. Définition des SMA…………………………………………………………. 21
2.2.2. Propriétés des SMA…………………………………………………………. 22
2.2.3. Domaine d’application des SMAs…………………………………………... 23
2.3. La notion d’agent…………………………………………………………………... 23
2.3.1. Définition des agents……………………………………………………….. 23
2.3.2. Type d’agent………………………………………………………………… 24
2.3.2.1. Agents réactifs………………………………………………………. 25
2.3.2.2. Agents cognitifs……………………………………………………... 25
2.3.2.3. Agents mixtes……………………………………………………….. 26
2.3.3. Pourquoi les agents ………………………………………………………… 26
2.3.4. Caractéristiques d’agent…………………………………………………….. 27
2.3.5. Architecture fonctionnelle d’un agent intelligent………………………… 27
2.3.6. Modèle d’architecture d’agent……………………………………………… 29
2.4. L’interaction et la coopération entre agents……………………………………… 33
2.5. Communication entre agents……………………………………………………... 34
2.5.1. Echange d’informations par tableau noir………………………………….. 34
2.5.2. Actes de langage et conversation…………………………………………... 35
2.6. Conclusion…………………………………………………………………………. 36

Chapitre 3
Les Systèmes Interactifs D’aide à la Décision

3.1. Introduction……………………………………………………………………….. 39
3.2. L’aide à la décision………………………………………………………………… 40
3.3. SIAD……………………………………………………………………………….. 40
3.3.1. Informatique décisionnelle…………………………………………………. 40
3.3.1.1. Définitions………………………………………………………….. 40
3.3.1.2. Les composants d’un SIAD………………………………………… 41
3.3.1.3. Rôle d’un SIAD…………………………………………………….. 42
3.3.1.4. Evolution des technologies dans les SIAD………………………… 44
3.4. Intégration des agents dans le système d’aide à la décision……………………… 44
3.4.1. Le système intelligent d’aide à la décision…………………………………. 45
3.4.2. Les composants d’un IDSS………………………………………………….. 46
3.4.3. Architecture générale d’un système multi agent pour l’IDSS…………….. 47
3.5. Aide à la décision industrielle…………………………………………………….. 48
3.5.1. Le système de production…………………………………………………... 49
3.5.1.1. Définition…………………………………………………………... 49
3.5.1.2. Gestion hiérarchique de la production…………………………… 50
3.6. Conclusion…………………………………………………………………………. 51

Chapitre 4
Eléments
Eléments de Conception
4.1. Model proposé.. ………………………………..………………………………….. 55
4.2. Démarche de traitement de problème par un organigramme ………………….. 59
4.3. Démarche de traitement de problème par un diagramme UML ………………... 59
4.4. Architecture des agents et langages………………………………………………. 61
4.4.1. Communication et langage de communication inter-agents……………… 61
4.5. Architecture BDI…………………………………………………………………... 62
4.5.1. Le contrôle des BDI………………………………………………………... 66
4.5.2. Le cycle d’exécution d’un agent …………………………………………… 67

4.6. Différentes méthodes de résolution de conflits…………………………………... 68


4.7. Conclusion…………………………………………………………………………. 68

Chapitre 5
Implémentation et Mise en œuvre

5.1. Introduction……………………………………………………………………….. 71
5.2. Outils de développement…………………………………………………………. 71
5.2.1. langage java………………………………………………………………… 71
5.2.1.1 Avantages…………………………………………………………… 72
5.2.2. Plate forme JADE………………………………………………………….. 72
5.3. Modèle de communication………………………………………………………... 74
5.4. Modélisation et Simulation………………………………………………………... 74
5.4.1. La simulation entre les agents……………………………………………… 75
5.5. Scénarios d’exécution de l’application……………………………………………. 75
5.5.1. Par les expressions vocales………………………………………………….. 75
5.5.2. Par la manipulation directe…..……………………………………………... 76
5.5.3. Le déroulement d’un exemple de notre interface………………………….. 77
5.5.4. Panne……………………..………………………………………………….. 81
5.5.5. La communication entre les agents ………...……………………………… 82
5.5.6. La communication entre les agents sous jade……………………………… 85
5.5.7. Détail du Scénario de communication par les imprimes-écrans………….. 87
5.6. Conclusion…………………………………………………………………………. 87

Conclusion

6.1. Travail réalisé……………………………………………………………………….. 91


6.2. Perspectives…………………………………………………………………………. 92
Liste des Figures

Figure 1.1 Représentation d’un système interactif [Site&]………………………… 7


Figure 1.2 Espace pour l’adaptation d’une interface [Site2]……………………….. 11
Figure 1.3 L’espace de conception pour la prise en compte du contexte
[Vanderdonckt, 2005]……………………………………………………. 12
Figure 1.4 Différents types de processus d’adaptation selon la taxinomie de
Dieterich [Dieterich, 1993]……………………………………………… 16
Figure 1.5 Architecture basée agents pour la modélisation des IHM adaptatives
[vaudry, 2002]……………………………………………………………... 18
Figure 2.1 Modèle d’un agent réactif [Labidi, 1993]……………………………….. 25
Figure 2.2 Modèle d’un agent cognitif [Labidi, 1993]……………………………… 26
Figure 2.3 Modèle de fonctionnement d’agent [Caglayan, 1998]…………………. 28
Figure 2.4 Modèle générale d’architecture d’agent [Site4]………………………… 29
Figure2.5(a) Le fonctionnement des agents BDI [Shoham, 1993]…………………... 30
Figure2.5(b) l’architecture d’agent BDI [Site5]………………………………………. 31
Figure 3.1 Architecture des SIAD [Sprague, 1982]…………………………………. 41
Figure3.2(a) Modèle du processus décisionnel [Reix, 2000]…………………………. 43
Figure3.2(b) Le processus décisionnel fondant les SIAD…………………………….. 43
Figure 3.3 Architecture d’IDDS [Phillips-Wren, 2002]……………………………. 47
Figure 3.4 Architecture d’agents pour l’IDSS [Zuh, 2002]…………………………. 48
Figure 4.1 Modèle proposé pour une IHM adaptative [ACIT, 2008]……………… 56
Figure 4.2 Réception et le traitement de la requête de l’utilisateur………………. 59
Figure 4.3 Le diagramme de séquence pour l’adaptation…………………………... 60
Figure 4.4 Les étapes de l’adaptation [López-Jaquero, 2008]………………………. 60
Figure 4.5 Modèle BDI [Site7]………………………………………………………. 63
Figure 4.6 Architecture BDI d'un agent [Site8]…………………………………….. 65
Figure 4.7 Le cycle d'exécution d'un agent BDI [Winikoff, 2001]………………… 68
Figure 5.1 Le modèle de référence pour une plate-forme multi-agent FIPA……... 73
Figure 5.2 L’expression vocale………………………………………………………. 76
Figure 5.3 création des nouveaux projets…………………………………………… 77
Figure 5.4 Notre interface de simulation…………………………………………… 77
Figure 5.5 Choisir un exemple pour l’exécution…………………………………… 78
Figure 5.6 l’exécution est démarrée (1)……………………………………………... 79
Figure 5.7 l’exécution est démarrée (2)……………………………………………... 80
Figure 5.8 l’exécution est démarrée (3)……………………………………………... 81
Figure 5.9 une ressource est tombée en panne……………………………………... 82
Figure 5.10 l’interface des agents (Initiale)………………………………………….. 83
Figure 5.11 l’interface des agents (1)…………………………………………………. 84
Figure 5.12 l’interface des agents (2)…………………………………………………. 85
Figure 5.13 un premier aspect de la communication entre les agents……………… 86
Figure 5.14 le scénario de communication ………………………………………….. 87

Liste des Tableaux

Tableau 1.1 La différence entre l’adaptabilité et l’adaptativité [Site3]……………… 14


Introduction Générale

Problématique
Organisation du mémoire
Introduction Générale

L’évolution des systèmes informatiques a été très rapide ces dernières années. Cette
évolution est notamment perceptible au travers des interfaces homme-machine (IHM).
L’utilisation de tels systèmes reste, dans de nombreux cas, difficile pour les personnes
n’ayant pas d’expérience dans le domaine informatique, car l’utilisation et la perception
d’un système se fait différemment selon ces personnes. Il serait donc approprié d’avoir
une interface homme-machine (IHM) spécifique pour chaque utilisateur, ce qui est
difficilement réalisable.
Les interfaces des systèmes informatiques sont les éléments logiciels et matériels qui
permettent aux utilisateurs de communiquer avec ses systèmes pour la réalisation des
tâches. La recherche dans le domaine des interfaces vise à définir des méthodes, des
modèles et des composants logiciels pour la création d’interfaces efficaces. Par efficacité
on entend aussi bien la facilité d’apprentissage et d’utilisation, que la minimisation de la
charge de travail ou la réduction du nombre d’erreurs commises par un utilisateur. Etant
données la grande diversité des utilisateurs et de leurs pratiques, il apparaît de plus en
plus évident qu’une même interface ne peut convenir à tous et en toute circonstance.
C’est pourquoi la notion d’interface adaptative, qui change en fonction de l’utilisateur, de
sa tâche ou du contexte, prend une certaine importance dans le domaine des interfaces.
Les interfaces adaptatives permettent aux utilisateurs d’exécuter des tâches
potentiellement complexes, plus rapidement, avec une plus grande exactitude, et une
amélioration de la satisfaction de l’utilisateur.
Actuellement, toute entreprise se doit d’être plus performante et d’avoir un niveau
supérieur, sur le plan technique et économique.
L’amélioration de la gestion de production est à la base de toute recherche dans le
domaine de la productivité à accroitre. Parmi les fonctions de la gestion de production,
un nous intéresse plus particulièrement, c’est l’allocation des taches.
Le modèle proposé repose sur une architecture multi- agents appliquées à IDSS, les
agents utilisés sont de types BDI.
La fonction d’adaptation n’est pas une tache spécifique mais elle émerge de l’ensemble
de comportement des agents.
Problématique
Dans les systèmes industriels, l'interface peut être considérée comme le résultat d'un
certain équilibre entre quatre éléments dont l'importance relative évolue
continuellement : les opérateurs, la tâche, l'environnement et le système informatique.
Les systèmes informatiques dans le contexte d’une aide à la décision doivent fournir de
façon synthétique et simple les éléments nécessaires aux décideurs pour évaluer une
situation. C’est pourquoi, il est indispensable de construire des Interfaces Homme-
Machine (IHM) bien adaptées à la perception de chaque utilisateur.
Les applications réalisées dans le cadre de la résolution des problèmes de production ou
de contrôle doivent d’être dotées d’interfaces conviviales, interactives et adaptées à tous
ces changements.
C’est pour cela qu’une modélisation par agents semble être bien adaptée à la
construction de ce type d’interface dédiée, car elle permet de prendre en compte la
complexité des interactions présentes au sein de système global.
Organisation du mémoire
Ce document est structuré en différents chapitres, afin de répondre aux besoins et
exigences du sujet.
Nous commençons par une introduction qui donne une vue globale de la position du
sujet au cœur des recherches actuelles afin de faciliter la compréhension des chapitres
qui suivent, ainsi le reste du mémoire est organisé comme suit :
- Le premier chapitre est consacré à l’étude des interfaces adaptatives, nous
commençons par leurs définitions, leurs architectures, ensuite nous présentons le
processus d’adaptation et quelques exemples des interfaces.
- Le deuxième chapitre est dédié aux systèmes multi-agents, l’accent étant mis sur
les agents BDI (Belief Desire Intention).
- Le troisième chapitre introduit les systèmes interactifs d’aide à la décision (SIAD)
en présentant leurs définitions, leurs types et leur utilisation, et présente le
domaine de l’application pour lequel l’interface va être développée. A ce niveau,
nous mettons l’accent sur deux points importants qui sont : le potentiel
d’intégration des agents dans les SIAD et le principe de fonctionnement d’un SIAD
intelligent.
- Le quatrième chapitre présent, à travers un ensemble de diagrammes et de
schémas notre modèle proposé pour concevoir une interface intelligente et
adaptative capable de répondre à tous les besoins et les préférences d’utilisateurs
dans un contexte industriel.
Enfin, la conclusion et les perspectives soulignent les différentes étapes suivies tout au
long du développement de ce projet et fut ressortir les différents résultats obtenus et
attendus.
Les Interfaces Adaptatives

1.1. Introduction
1.2. L’interaction Homme Machine
1.3. Les composants de l’interaction Homme-Machine
1.4. Les définitions d’une Interface Homme-Machine
1.5. Définition d’une interface adaptative
1.6. Principe d’Adaptation dans les IHM
1.7. Les agents dans les interfaces adaptatives
1.8. Exemple de mise en œuvre du concept d’adaptation
en IHM
1.9. Conclusion
Chapitre 1

Les Interfaces Adaptatives

1.1 Introduction
L’utilisation des applications informatiques est désormais omniprésente dans notre
vie quotidienne. Néanmoins, cette utilisation reste, dans de nombreux cas, difficile pour
les personnes n’ayant pas d’expérience dans le domaine informatique, car l’utilisation et
la perception de l’interface d’une application se font différemment selon ces personnes.
Il serait donc nécessaire d’avoir des interfaces homme-machine (IHM) qui aident
l’utilisateur dans la réalisation de son activité et/ou s’adaptent à lui. Ce type d’IHM est
appelé « IHM adaptative».
La conception de systèmes interactifs dotés de capacités d’adaptation est un
domaine de recherche en plein essor qui fait appel à des compétences variées : telle que
la psychologie, l’intelligence artificielle et le génie logiciel. La difficulté majeure sur
laquelle se centrent les efforts actuels est la construction de modèles pertinents et
efficaces, qui permettent une bonne adaptation du comportement de l’interface.
Après quelques définitions sur les interfaces H-M et adaptatives, nous présentons
une taxonomie d’adaptation qui donnera un aperçu sur les recherches actuelles et les
avancées récentes sur les interfaces adaptatives. Quelques exemples de modèles
représentatifs de ces interfaces seront proposés.
1.2 L’interaction Homme Machine
L’Interaction Homme-Machine peut être vue comme étant l’étude des moyens qui
existent pour permettre la communication entre un opérateur humain, appelé
utilisateur, et un ensemble de machines sur lesquelles l’utilisateur agit, appelé système
interactif. Un système interactif, présenté schématiquement sur la Figure1.1, est avant
tout un système réactif, c’est-à-dire un système qui ne fait que répondre à des stimuli
extérieurs.
Un tel système résulte de la fusion d’un noyau fonctionnel, partie de l’application qui
effectue les calculs, et d’une interface, ensemble des moyens d’entrée et de sortie
proposé à l’utilisateur pour obtenir l’exécution d’un travail de la part du système.

Figure 1.1 : Représentation d'un système interactif [Site1]

1.3 Les composants de l’interaction Homme-Machine


Les composants de l’interaction Homme-Machine sont comme suit :
1.3.1 L’utilisateur
– Un nouveau système ne peut être adapté à la fois à tous les utilisateurs potentiels,
– pour qu’un logiciel soit adapté à une population, il doit connaître les
caractéristiques de ces utilisateurs (capacités, expérience, formation…).
 Problème : les utilisateurs évoluent à mesure qu’ils acquièrent de l’expérience.
 Idéal : des interfaces dont les éléments importants changent en fonction de
l’acquisition de l’expérience des utilisateurs.
Cette analyse nécessite de connaître les besoins des utilisateurs.
 La solution est que les utilisateurs doivent aider à la définition des caractéristiques
de l’interface homme-machine par exemple : par le biais d’interview, de mise en
situation d’essai, on s’assurera que toutes leurs exigences seront prise en compte,
donc l’utilisateur doit être associé à l’élaboration du cahier des charges (meilleure
acceptation si ses suggestions sont implémentées).
1.3.2 La tâche
L’objectif est de définir, du point de vue de l’utilisateur, les exigences auxquelles le
logiciel doit se conformer.
Les moyens d’analyse de tâche sont :

– Constitution d’organigramme, de scénarios, et


– les décisions de conception, les simulations et les évaluations doivent faire partie
du processus itératif aux différentes étapes du développement et de
l’implémentation du logiciel.
La réalisation d’une tâche par l’utilisateur met en jeu 7 étapes :
 L’établissement d’un but,
 la formation d’une intention,
 la spécification d’une suite d’actions,
 l’exécution des actions,
 la perception de l’état du système,
 l’interprétation de l’état du système, et
 l’évaluation de l’état du système par rapport au but.
1.3.3 Le contexte
 Attribution des tâches: qui fait quoi ? Comment les résultats sont-ils contrôlés ?
 dépendances entre tâches (workflow),
 partage du pouvoir et de l’influence,
 existence d’un support technique (service informatique interne, collègues…),
 politique de formation,
 gestion du personnel, et
 contraintes économiques.
1.3.4 Le système informatique
Le système informatique est un ensemble de matériels et de logiciels destinés à réaliser
des taches mettant en jeu le traitement automatique de l’information.
 Contraintes matérielles
– capacité mémoire et puissance de calcul, qualité des périphériques d’E/S.
 Contraintes logicielles
– système d’exploitation, applications disponibles.
 Organisation des machines
– machines isolées, en réseau (intranet, extranet,…).
1.4 Les définitions d’une Interface Homme-Machine
Une Interface Homme-Machine est généralement considérée comme un ensemble de
composants graphiques agencés d’une manière donnée les uns par rapport aux autres et
gérant les événements d’interfaces en provenance de l’utilisateur selon un
comportement fixé.

L'interface Homme-Machine (IHM) est définie comme étant le moyen de


communication entre l'homme et le système informatique. Il s'agit d'un ensemble des
règles communes de communication entre deux acteurs. On peut l'appeler interface
utilisateur, interface usager, ou interface ordinateur [Meinadier, 1991].

Les interfaces Homme Machine visent à faciliter le dialogue Homme-Machine ce sont


des boites qui permettent la communication entre l’outil informatique et l’utilisateur
humain. Elles assurent une grande cohérence entre le vu et le représenté. Elles
permettent aussi d’envisager une communication homme-machine à la fois simple et
puissante en fournissant à l’utilisateur des règles simples favorisant une compréhension
des fonctionnalités plus efficaces. Donc le rôle d’une bonne interface est d’accommoder
l’utilisateur en cachant la complexité du système autant que possible. Ceci est possible
en utilisant des mécanismes ayant une interaction minimale tels que les icônes, les
menus, les fenêtres…etc [Bouché, 1994].
L’interface Homme-Machine (IHM) étudie la façon dont les humains interagissent
avec les ordinateurs ou entre eux à l'aide d'ordinateurs, ainsi que la façon de concevoir
des systèmes informatiques qui soient ergonomiques, c'est-à-dire efficaces, faciles à
utiliser ou plus généralement adaptés à leur contexte d'utilisation.

1.5 Définition d’une interface adaptative


Définition 1 :
Les interfaces adaptatives sont des interfaces capables de s’adapter à leurs
utilisateurs. Elles reposent sur la modélisation de l’utilisateur (connaissances,
préférences, expériences…) en prenant en compte ses comportements dans les
fonctionnalités du système.
Les interfaces adaptatives permettent à l’utilisateur de minimiser l’effort dédié à
l’exploration du système et à la recherche des réponses satisfaisantes à sa requête
[Furtado, 2000] en gardant ainsi intacte sa motivation initiale. Néanmoins, elles
négligent un facteur très important dans l’utilisation de tout système informatique à
savoir la réduction de la charge cognitive des utilisateurs grâce à une adaptation à leurs
capacités perceptives (audition, vision, …).
Définition 2 :
La conception des IHM adaptatives a fait l’objet de très nombreux travaux. Il s’avère
que c’est là une problématique fort complexe qu’attestent les emprunts à différentes
branches des sciences de l’information et des sciences humaines comme la psychologie,
l’intelligence artificielle, la pédagogie, les interfaces Homme-Machine, etc. Les résultats
restent mitigés avec indéniablement des échecs et des réussites [Vaudry, 2002].

1.6 Principe d’Adaptation dans les IHM


Les différents travaux menés sur les systèmes adaptatifs ont permis d’identifier
différentes sortes d’adaptation. Afin de faciliter la compréhension des concepts
introduits par nos études, nous introduisant quelques notions de base.
Ces définitions sont issues de plusieurs lectures, en particulier [Kobsa, 2001]
[Thevenin, 2001].
L’adaptation d’une application est sa capacité à satisfaire l’utilisateur dans sa
situation d’interaction. Nous rappelons que la situation d’interaction (ou d’utilisation)
est le triplet < utilisateur, utilisation, contexte>, ou le contexte regroupe la plate forme ou
le dispositif de restitution utilisé et l’environnement.
On dira d’un système qu’il est adaptable s’il peut exécuter les demandes de
personnalisation de l’utilisateur. Du point de vue da la conception, il s’agit d’adaptabilité.
On dira d’un système qu’il est adaptatif s’il peut s’adapter automatiquement à
l’utilisateur ou à tout autre élément de la situation d’utilisation. Du point de vue de la
conception, il s’agit d’adaptativité.
L’adaptation peut donc porter sur de très nombreux aspects des applications
interactives. Pour simplifier l’analyse, nous avons suggéré de les organiser en 4 familles :
 l’IHM que nous scindons en 3 sous éléments : la présentation de l’interface
(position, taille, images, sons, couleurs, structure…), les techniques et styles
d’interaction (menus, choix multiples, etc.) et la navigation ;
 les données ou informations qui sont filtrées et/ou réorganisées et
 les services qui peuvent être modifiés (ajout, restriction, paramétrage) ;
L’adaptation d’une interface est caractérisée par deux propriétés : l’adaptabilité et
l’adaptativité. L’adaptabilité est la capacité d’une interface à être modifiée par
l’utilisateur, et l’adatativité est la capacité d’une interface à se modifier
automatiquement, sans action explicite de l’utilisateur.
 Nous définissons l’espace d’adaptation, par les axes suivants, Figure1.2 : la Cause de
l’adaptation, l’objet qui s’adapte, quand l’adaptation se produit et l’acteur qui
déclenche l’adaptation.

Figure 1.2: Espace pour l’adaptation d’une interface. [Site2]

 selon l’axe des causes, c’est une adaptation aux caractéristiques physiques de la
plate-forme visée, ou une adaptation aux contraintes environnementales;
 selon l’axe du quand, l’adaptation est statique, c’est-à dire que les contrainte
peuvent être fixées à la conception, et l’interface est générée en fonction, ou
l’adaptation est dynamique c’est-à-dire qu’au cours de l’exécution, l’interface est
adaptée en fonction des variations de contraintes;
 selon l’axe des objets, la plasticité est une adaptation de l’arbre de tâche et/ou des
techniques de rendu;
 selon l’axe de l’acteur, le système ou un humain (le concepteur ou l’utilisateur
final) provoque l’adaptation.

1.6.1 Aspects pris en compte dans l’adaptation


De nombreuses taxonomies ont vu le jour pour identifier un espace d’adaptation des
interfaces tentant de répondre aux questions suivantes : à quoi s’adapter ? Qui adapte et
quand a lieu l’adaptation ? Qu’adapte-t-on et Comment ? Selon quels critères ? Avec quoi
? [Habieb-Mammar, 2004].
Thévenin [Thévenin, 2001], a regroupé ces taxonomies dans une classification en forme
de fleur des outils pour IHM multi-cibles. Dans le même esprit, Vanderdonckt
[Vanderdonckt, 2005] présente un espace de conception pour la prise en compte du
contexte Figure1.3.

Figure1.3 : L’espace de conception pour la prise en compte du contexte


[Vanderdonckt, 2005].

Les axes dans cet espace représentent les questions qu’il faut poser pour
l’identification du champ de l’adaptation. Sur chaque axe des éléments de réponse sont
positionnés. La partie supérieure de cet espace décrit quel type de variation de contexte
peut inciter l’adaptation (l'action), tandis que la partie inférieure représente les
éléments impliqués dans l’adaptation (la réaction par rapport au contexte).
Dans cette partie, centrée sur le processus de conception des systèmes interactifs
adaptables, [Vanderdonckt, 2005] se contentes de répertorier les éléments de réponse
pour les trois groupes de questions suivantes : Qui adapte et quand a lieu l’adaptation ?
A quoi s’adapter ? Qu’adapte-t-on et Comment ? Répondre à la première question
revient à identifier les acteurs de l’adaptation et leurs instants d’intervention dans le
processus d’adaptation.
La deuxième question nécessite l’identification du contexte d’utilisation d’un
système interactif et la façon dont ce contexte est pris en compte pour l’adaptation du
système. Pour répondre à la troisième question, il faut comprendre le processus de
conception et d’adaptation.
1.6.2 Concepts d'adaptation (adaptabilité - adaptativité)
Pour amorcer la réflexion sur ces concepts, nous commencerons par définir ce que
nous entendons par "adaptation", "adaptabilité" et "adaptativité". Ensuite nous
présentons un tableau lequel, désignez le (Tab1.1) qui résume la différence entre
l’adaptabilité et l’adaptativité :

Bien qu’il existe une taxonomie importante dans les recherches sur l’adaptation en
général, notre objectif est de présenter une définition qui soit des plus accessibles à un
large public. Dans ce sens, et pour une première approche, les explications de [Bogdan,
2001] nous paraissent les plus appropriées: "L’adaptabilité est la capacité du système
de s’adapter aux personnalisations expressément demandées par l’utilisateur, tandis
que l’adaptativité désigne sa capacité à répondre aux besoins de l’utilisateur sans une
intervention explicite de sa part".

En termes d’action, l’adaptabilité renvoie à un processus dit statique, basé


essentiellement sur des connaissances disponibles ou acquises par le système avant que
les interactions utilisateur-système ne soient engagées. Ainsi, les adaptations sont
réalisées lors de l’initialisation du système qui se présente dans une version adaptée à
l’utilisateur. De plus, les connaissances utilisées par le système semblent inchangées au
cours d’utilisation.
Quant à l’adaptativité, elle a une vision plus dynamique du processus d’adaptation.
En effet, les connaissances sont acquises ou modifiées par le système au cours des
interactions. C’est à dire, le système procède à des adaptations pendant que l’utilisateur
interagit avec lui.

Par ailleurs, l’utilisateur prend le contrôle de ses actions (initiation, proposition,


sélection, exécution) sur le système dans l’adaptabilité alors qu’il n’exerce aucun
contrôle sur le système dans l’adaptativité [Villanova-Olivier, 2002].

Adaptabilité Adaptativité
l’utilisateur émet une demande explicite, le le système s’adapte tout seul grâce à
système s’adapte pour y répondre l'observation de l'utilisateur
Pendant l’interaction utilisateur /
En amont de l’interaction utilisateur / système
système
statique dynamique
dépend surtout du but de l’utilisateur dépend surtout du but de l’action

Tableau 1.1: la différence entre l’adaptabilité et l’adaptativité [Site3].

Selon l’approche proposée dans [Kobsa, 2001], l’opposition des termes est basée sur
le degré de contrôle que possède l’acteur dans le processus d’adaptation. Il identifie cinq
acteurs (intervenants) possibles dans le processus d’adaptation : le concepteur,
l’administrateur du système, l’expert local, l’utilisateur final et le système lui-même.
Les quatre niveaux différents sont alors définies [Kobsa, 2001]:
♦ Initiation : décision d’un acteur de suggérer une adaptation ;
♦ Proposition : suggestions ou recommandations ;
♦ Sélection : processus de choix parmi les propositions de réaction ;
♦ Exécution : mise en œuvre de la réaction choisie.
Le contrôle de l’utilisateur s’exerce à ces niveaux, et définit sur cette base ce qui
distingue l’adaptabilité de l’adaptativité.
Les systèmes où l'utilisateur est responsable du contrôle, de l'initiation, de la
proposition, de la sélection et de la production d'adaptation sont appelés adaptables. Par
exemple, un utilisateur d'un site Web a besoin de présenter un raccourci pour une page
du Web qu’il visite fréquemment (initiation d'adaptation). L'utilisateur propose alors de
créer un lien sur la barre de navigation (si cela s’avère possible) ou définir un signet
dans le navigateur. Ensuite, il choisit le lien de raccourci et exécute les étapes
nécessaires pour produire cette adaptation.

En revanche, les systèmes qui exécutent automatiquement toutes ces étapes sans
l’intervention de l’utilisateur sont appelés adaptatifs. Par exemple, le système AVANTI
[Fink, 1997] qui insère automatiquement des liens de raccourci personnalisés dans des
pages qu'un utilisateur visite fréquemment.

1.6.3 Le processus d’adaptation


Le processus d’adaptation est le moteur intelligent pour la génération des documents
adaptés à l’utilisateur. Un processus d’adaptation peut également relever de
configurations qui combinent les caractéristiques de l’adaptabilité (i.e. contrôle émanant
de l’utilisateur) et de l’adaptativité (i.e. contrôle émanant du système).
La Figure 1.4 représente différents types de processus d’adaptation : de l’adaptabilité
à l’adaptativité. L’adaptation du système est vue comme le résultat d’un processus
pouvant relever de l’adaptabilité, de l’adaptativité ou de processus qui mélangent leurs
caractéristiques.
Les graphiques montrent qui, de l’utilisateur ou du système (axe horizontal), contrôle
les actions (initiation, proposition, sélection, exécution– axe vertical) qui constitue les
étapes du processus d’adaptation. Le contrôle est symbolisé par un cercle plein.
Figure 1.4 : Différents types de processus d’adaptation selon la taxonomie de
Dieterich [Dieterich, 1993].

1.7 Les agents dans les interfaces adaptatives


La modélisation d’une IHM adaptative doit prendre en considération les aspects
suivants :
 La sélection de l'information la plus pertinente, par le choix d'une représentation
la plus appropriée possible et du moment le plus opportun pour la présenter.
 La prise en compte de la diversité des utilisateurs et des situations.
 La prise en compte des différents niveaux d'expertise.
La modélisation des IHM adaptatives se fait, dans le cadre de nos etudes, par le biais
d’un système multi-agents. Ce système se place entre l'interface et l'application; il
permet d'interpréter les actions de l'utilisateur sur l'application et de réadapter l'IHM au
comportement de l'utilisateur de façon à faciliter ces actions sur l'application.
La raison pour laquelle nous abordons cette classe de problèmes avec des agents est que
les champs d'expertise sont fonctionnellement distribués dans différents domaines
[Charton, 2000]. Par exemple, afin de changer la présentation d'une IHM (interface
homme-machine), on doit tenir compte de la connaissance du domaine, de la
connaissance des besoins de l'utilisateur, et de l'état de l’interface.
De plus, les modèles multi-agents sont caractérisés par une organisation fortement
modulaire, des traitements en parallèle et des communications par événements. La
modélisation par agents semble donc être bien adaptée car elle permet de prendre en
compte la complexité des interactions présentes au sein de l’IHM (interface homme-
machine), la difficulté des tâches, la dynamicité de certaines situations et la diversité des
informations [Horgen, 2001].
1.8 Exemple de mise en œuvre du concept d’adaptation en IHM

Nous décrivons dans cette partie quelques exemples représentatifs de mise en œuvre du
concept d’adaptation en Interface Homme- Machine.
Exemple 1 :

Composition d’interface adaptative d’un poste de pilotage : ACHI. Les résultats du projet
de recherche ACHI ont fait l’objet d’une publication à ECAI2000 [Vaudry, 1998]. ACHI
simule un tableau de bord d’un véhicule guidé à distance. L’opérateur n’a donc qu’une
vision virtuelle de la situation dans laquelle se trouve engagé le véhicule (présence d’une
voiture à l’avant, et d’une voiture à l’arrière), et des paramètres du véhicule (vitesse, état
du levier de vitesse, compte tours, température du véhicule). Un agent de simulation de
la situation du véhicule envoie en permanence des signaux à l’interface au sujet
d’éventuelles voitures à l’avant et à l’arrière, ainsi que des informations sur la présence
de côtes ou de descentes à un modèle du véhicule. Ce dernier calcule la valeur des
différents paramètres et l’envoie à l’interface. Celle-ci affiche les différentes informations
utiles selon leur prédominance en fonction de la situation du véhicule et de son contexte,
et des préférences de l’opérateur.

Exemple 2 :
[Vaudry, 2002] Présente par le schéma donné à la (Figure1.5) un modèle générique de
l’adaptation des interfaces Homme-Machine. Ce modèle peut s’appliquer à divers types
d’application. Il permet de présenter l’ensemble des fonctions qui peuvent intervenir à
divers titres dans un processus d’adaptation indépendamment du type d’application.
Figure 1.5: Architecture basée agents pour la modélisation des IHM
Adaptatives [vaudry, 2002]

Exemple 3 :
AMEBICA signifie Auto-adaptive Multimédia Environment Based on Intelligent
Collaborating Agents [Vaudry, 2002]. AMEBICA est un projet Esprit qui s’est achevé en
mars 2001, les objectifs de ce projet étaient de construire des bases conceptuelles et de
proposer une architecture générique basée sur un système multi-agents pour faciliter le
développement d’interface multimédia adaptative pour la supervision industrielle.
Il est attendu de telles interfaces qu’elles aident l’opérateur à mieux percevoir et
s’approprier les informations les plus importantes relativement au contexte.
Exemple 4 :
Des travaux plus récents visent non pas à adapter le comportement du système à l’état
émotionnel de l’utilisateur courant mais à agir sur cet état. Ainsi (Prendinger, 2005)
décrit une étude ou le comportement empathique d’un agent conversationnel animé
réduit significativement l’anxiété de l’utilisateur pendant un entretien d’embauche
simulé.
L’objectif est d’entrainer celui- ci à contrôler ses émotions négatives au cours de ce type
d’entretien. La détection de l’état émotionnel de l’utilisateur est effectuée au moyen de
capteurs physiologiques du rythme cardiaque et de la conductance de la peau.

1.9 Conclusion
L'évolution technologique induit la généralisation des fonctions d'interface homme-
machine (IHM), c'est-à-dire de dispositifs matériels et logiciels qui permettent à un ou
plusieurs utilisateurs de communiquer avec un dispositif chargé de réaliser une action ou
de fournir une information. Ces interfaces servent à transmettre un ordre de l'humain
vers le dispositif (souris d'ordinateur, volant de direction, manette de jeu, commandes de
machines-outils ...) ou à relayer une information du dispositif vers l'humain (écran
d'ordinateur, tableau de bord automobile, alarme sonore, retour de force, réalité
augmentée, synthèse vocale ...).
Les interfaces doivent être adaptées à l'usage, en tenant compte par exemple de la
priorité de délivrer telle information ou de réaliser telle action sur telle autre.
Nous avons essayé de présenter dans ce chapitre une idée assez générale de la
définition des interfaces adaptatives et le principe d’adaptation dans les Interfaces
Hommes- Machines
Nous avons exposé dans ce chapitre les besoins des IHM adaptatives et détaillé les
idées et concepts essentiels à notre travail (ressources d’information, utilisateur,
système, interface, processus d’adaptation …etc.).
Le chapitre suivant présente le paradigme de systèmes multi-agents, nous nous
intéressons plus particulièrement sur les agents BDI pour la résolution de problèmes
d’interface adaptative.
Les Systèmes Multi-Agents

2.1. Introduction
2.2. Systèmes multi-agents (SMA)
2.3. La notion d’agent
2.4. L’interaction et la coopération entre agents
2.5. Communication entre agents
2.6. Conclusion

Chapitre 2

Les systèmes multi-agents

2.1 Introduction
Le thème des systèmes multi-agents (SMA), s’il n’est pas récent, est actuellement un
champ de recherche très actif. Cette discipline est à la connexion de plusieurs domaines
en particulier de l’intelligence artificielle, des systèmes informatiques distribués et du
génie logiciel. C’est une discipline qui s’intéresse aux comportements collectifs produits
par les interactions de plusieurs entités autonomes et flexibles appelées agents, que ces
interactions tournent autour de la coopération, de la concurrence ou de la coexistence
entre ces agents. Ce chapitre introduit, tout d’abord, les notions d’agents et de systèmes
multi-agents SMA(s), et détaille par la suite les différentes questions que soulèvent la
problématique des SMA, en particulier: les interactions, la coopération, la coordination,
la planification et la communication.
2.2 Systèmes multi-agents (SMA)
Les systèmes multi-agents sont constitués de deux dimensions qui peuvent être
vues de manières distinctes : le collectif (« système multi ») et l’individu (« agent »)
[Chadés, 2003]. Chacune des ces dimensions est caractérisée pas des propriétés
spécifiques : la capacité, l’intention, l’autonomie, au niveau individuel ; et le rôle, le
groupe, la mission, les règles d’interaction au niveau collectif.
2.2.1 Définition des SMA
Un système multi-agent est un système distribué composé d’un ensemble d’agents.
Contrairement aux systèmes d’IA, qui simulent dans une certaine mesure les capacités
du raisonnement humain, les SMA sont conçus et implantés idéalement comme un
ensemble d’agents interagissant, le plus souvent, selon des modes de coopération, de
concurrence ou de coexistence [Site4].
[Ferber, 1995] a donné la définition suivante :
« Un système multi-agent : est un système composé des éléments suivantes :
 Un environnement c’est à dire un espace disposant généralement d’une métrique,
 Un ensemble d’objets situés dans l’espace, ils sont passifs, ils peuvent être perçus,
détruits, crées et modifiés par les agents,
 Un ensemble d’agents qui sont les entités actives du système,
 Un ensemble de relations qui unissent les objets entre eux,
 Un ensemble d’opérations permettent aux agents de percevoir, de détruire, de
créer, de transformer et de manipuler les objets.
 Un ensemble d’opérateurs chargés de représenter l’application de ces opérations
et la réaction du monde à cette tentative de modification (les lois de l’univers) ».

2.2.2 Propriétés des SMA


Un SMA est généralement caractérisé [Site4] par :
♦ Chaque agent a des informations ou des capacités de résolution de problèmes
limitées (informations incomplètes et champs d’action limité), ainsi chaque
agent à un point de vue partiel,
♦ Les données sont décentralisées,
♦ Le calcul et les traitements sont asynchrones,
♦ Il n’y a aucun contrôle global du système multi-agents (contrôle réparti).
De par leur nature répartie, les SMA offrent en outre des propriétés intéressantes
comme :
- L’efficacité des traitements : les agents travaillent en parallèle et communiquent de
façons asynchrone ;
- La robustesse et la sûreté de fonctionnement : la mise hors fonctionnement de
quelques agents ne modifient pas sensiblement le comportement global du
système ;
- La flexibilité et le traitement des systèmes à grande échelle : on peut toujours
augmenter le nombre d’agents pour traiter des systèmes de plus en plus gros,
sans pour autant perturber le travail des agents existants ; en fait cette propriété
reste encore ouverte dans la mesure ou aujourd’hui encore elle est à elle seule un
sujet de recherche.
2.2.3 Domaine d’application des SMAs
Les SMAs [SAN, 2001] sont à l’intersection de plusieurs domaines scientifiques :
l’informatique répartie, le génie logiciel, et l’intelligence artificielle. Ils s’inspirent
également d’études issues d’autres disciplines connexes notamment la sociologie, la
psychologie sociale, les sciences cognitives et bien d’autres. C’est ainsi qu’on les trouve
parfois à la base des :
- Systèmes distribués ;
- Interface hommes-machines ;
- Bases de données et bases de connaissances distribuées coopératives ;
- Systèmes pour la compréhension du langage naturel ;
- Protocole de communication et réseaux de télécommunications ;
- Programmation orientée agents et génie logiciel ;
- Robotique cognitive et coopération entre robots ;
- Applications distribuées comme le Web, l’internet, le contrôle de trafic routier,
etc.
2.3 La notion d’agent
Il est extrêmement difficile de donner une définition du terme d’agent tant la notion
même d’agent n’est pas unique et claire, non seulement ce terme est utilisé pour
désigner des applications qui sont la plupart du temps très différentes, mais aussi de
nombreuses communautés venant d’horizon divers utilisent les agents pour des
applications très différentes les unes des autres.
Toutefois, voici quelques définitions qui donnent une première idée de la notion
d’agent.
2.3.1 Définitions des agents
Définition 1 :
Un agent est une entité réelle ou abstraite autonome qui se caractérise par son rôle,
sa spécialité et ses fonctionnalités, ses buts, ses croyances et ses différentes capacités :
décisionnelles, de raisonnement, de communication et éventuellement d’apprentissage,
Tous les agents ne disposent pas des mêmes aptitudes. On les classe généralement en
fonction de leurs capacités de résolution de problèmes en deux grandes familles : les
agents réactifs et les agents cognitifs [Labidi, 1993].
Dèfintion2 :
« Un agent est une entité autonome, réelle ou abstraite, qui est capable d’agir sur elle-
même et sur son environnement, qui, dans un univers multi-agent, peut communiquer
avec d’autres agents, et dont le comportement est la conséquence de ses observations,
de ses connaissances et des interactions avec les autres agents » [Ferber, 1995].
Dèfintion3 :
M. Woodbridge propose la définition suivante [Wooldridge, 1995]: un agent est un
programme informatique qui est situé dans un environnement et qui est doté de
comportements autonomes (actions) lui permettant d’atteindre, dans cet
environnement, les objectifs qui lui ont été fixé à sa conception.
Jennings, sycara et Woodbridge [Jennings, 1998] ont proposé la définition suivante
pour un agent :
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.
Les notions « situé », « autonomie », et « flexible » sont définies comme suit :
 Situé : l’agent est capable d’agir sur son environnement à partir des entrées
sensorielles qu’il reçoit de ce même environnement. Exemple : systèmes de
contrôle de processus, systèmes embarqués, etc. ;
 Autonome : l’agent est capable d’agir sans l’intervention d’un tiers (humains ou
agent) et contrôle ses propres actions ainsi que son état interne ;
 Flexible : l’agent est caractérisé par la réactivité, la pro activité, et l’aspect social.
2.3.2 Types d’agent

La granularité des agents impliqués dans une application varie selon deux écoles
coexistantes : l’école cognitive et l’école réactive.

2.3.2.1 Agents réactifs


Ils n’ont de connaissances explicites ni de l’environnement, ni des autres agents, ni de
leur passé, pas plus que de leur buts (pas de planification de leurs actions, pas de
moyens de mémorisation). Ils possèdent une fonction perception /action sur
l’environnement qui constitue l’unique protocole de communication avec les autres
agents [Labidi, 1993]. La figure ci-dessous présente un modèle d’agent réactif.
Figure 2.1 : Modèle d’un agent réactif [Labidi, 1993].

2.3.2.2 Agents cognitifs

A l’opposé des agents réactifs, les agents cognitifs sont capables à eux seuls de
réaliser des opérations relativement complexes et, généralement coopèrent les uns avec
les autres pour atteindre un but commun (résolution d’un problème, tâche complexe,
etc.).
Ils possèdent un ensemble de représentations explicites (sur l’environnement, sur les
autres agents et sur eux mêmes) décrits dans une base de connaissances sur laquelle ils
peuvent raisonner. Ils réagissent en fonction de leurs connaissances, leurs buts et en
fonction des échanges avec les autres agents et de la perception de l’environnement en
organisant leurs actions suivant une planification.
Ils sont dotés de moyens et de mécanismes de communication pour gérer les
interactions avec les autres agents (coopération, négociation).
Ce modèle d’agent est une métaphore du modèle humain et s’appuie plutôt sur les
sciences humaines et sociales alors que le modèle de l’agent réactif s’appuie plutôt sur
les sciences de la vie. La figure ci dessous présente un modèle d’agent cognitif.

Figure 2.2 : Modèle d’un agent cognitif [Labidi, 1993].

2.3.2.3 Agents mixtes

En pratique, un compromis entre complexité et efficacité est souvent recherché, ce


qui se traduit par des agents qui sont à la fois réactifs et cognitifs. On parle alors
d’agents mixtes ou encore hybrides.
2.3.3 Pourquoi les agents ?
La plupart des utilisations des agents peuvent être réparties dans ces catégories :
 Simplifier les applications informatiques distribuées
1. Résolution distribuée de problèmes
• Résolution d’une tache complexe par un ensemble de spécialistes
ayant des compétences complémentaires.
• L’expertise est distribuée mais le domaine ne l’est pas.
• Etc….
2. Résolution de problèmes distribués
• Le domaine est distribué.
• Analyse, identification, contrôle de systèmes physiquement distribués.
• Ex : contrôle de réseau de communication.
3. Résolution par coordination
• L’expertise par coordination.
• Ex : affectation de taches dans un atelier, emploi du temps.
• Surmonter des problèmes d’interface utilisateur.
 Un paradigme de recherche en intelligence artificielle.

2.3.4 Caractéristiques d’agent


La recherche sur les technologies d’agent est relativement récente. De ce fait elle est
en perpétuelle évolution et les approches sont nombreuses. Toutefois, nous pouvons
identifier quelques caractéristiques qu’un agent doit posséder pour être qualifié d’agent
intelligent.
o Autonomie :
L’agent doit pouvoir prendre des initiatives et agir sans intervention de l’utilisateur final.
Car ce qui distingue fortement un agent d’un autre type de logiciel c’est l’objectif qu’il
possède et qui lui permet d’être autonome.
o Capacité à communiquer et à coopérer :
L’agent doit pouvoir échanger des informations plus au moins complexes avec d’autres
agents, avec des serveurs ou avec d’autre humains.
o Capacité à raisonner, à réagir à leur environnement :
L’agent doit être capable de s’adapter à son environnement (qui peut être composé
d’autres agents, du web en général ou des utilisateurs) et aux évolutions de celui- ci.
Cette adaptation doit s’appuyer sur l’analyse de l’environnement extérieur.
2.3.5 Architecture fonctionnelle d’un agent intelligent

Sur le plan fonctionnel [Caglayan, 1998], un agent intelligent est vu comme un


ensemble de compétences :

Figure
2.3 :
Modèle de
fonctionne
ment
d’agent
[Caglayan,
1998].

 Co
mp
éte
nc
e
de
niveau tâche

Correspondant à la capacité des agents à accomplir leur propre but. Ces


compétences spécifient la fonction d’un agent, pour cela ce dernier doit pouvoir
percevoir son environnement par le biais de capteurs et agir sur son
environnement pour la réalisation de sa tache.
 Compétence de niveau connaissance

Correspond aux règles à suivre par l’agent pour réaliser sa tâche, effectivement
pour entreprendre une action, l’agent doit connaître son environnement, cette
connaissance introduite par le concepteur ou acquise par des techniques
d’apprentissage, et peut être :
• Spécifiée par le développeur : modèles du domaine d’application ou d’un
utilisateur : une connaissance formelle organisée en règle ou en frames.
• Inconvénient : manque d’adaptabilité après mise en place de
ces agents.
• Spécifiée par l’utilisateur : définition d’une tache utilisateur par les règles
de programmation dans les systèmes à base de règles.
• Inconvénient : l’utilisateur n’as pas le choix de son environnement de
programmation.
• Dérivée d’autres sources de connaissances : acquisition d’expertise de la
communauté agent par les langages agent.
• Apprise pas le système : acquise par l’agent de son environnement et de
l’utilisateur.
 La communication
Les capacités de communication influencent les interactions avec l’utilisateur, via
l’interface qui est considérée comme canal de communication, il faut noter que dans
un environnement distribué le module de communication doit également contrôler
les interactions avec les autres agents, pour cela les agents doivent disposer d’un
protocole de communication inter agents, ce qui implique un langage de
communication (et même des applications intermédiaires) :
Telescript de General Magic, SmallTalkAgents de Quaser Knowledje System, Agent
TCL(Tool Command Language), ACL (Agent Communication Language).
2.3.6 Modèle d’architecture d’agent
Le choix d’un modèle d’agent se fait essentiellement en fonction des besoins qui sont
exprimés pour cet agent. Tous les agents doivent disposer de moyens de
communication de haut niveau, de capacité de raisonnement et de prise de décision. Le
schéma ci-dessous en présente l’architecture générale.
Figure 2.4: Modèle général d’architecture d’agent [Site4]
La base de connaissances représente les états internes de l’agent (connaissances sur
lui-même) et la représentation des autres agents (accointances). Les plans
correspondent aux protocoles d’interactions, et leur suivi est assuré par un module de
contrôle. Le module de raisonnement permet de déterminer l’enchainement des
protocoles (planification) en fonction des objectifs et du rôle de l’agent (buts). Les
actions correspondent à l’envoi de messages vers les autres agents ou vers l’utilisateur.
Ce modèle d’architecture, bien que simplifié, est très fortement inspiré du modèle
d’agent BDI (Beliefs Désirs Intentions) de Rao et Georgeff [RAO, 1995B]. Ce type
d’architecture a été conçu pour stocker au sein d’un agent des croyances (Beliefs), des
plans à court terme (Intentions) et des plans à long terme (Désirs).

(a) Figure 2. 5 (a) : Le fonctionnement des agents BDI [Shoham, 1993].


Entrée de Capteurs

BRF

Croyances

Générer Options

Désires

Filtres

Intentions

Action
Sorties d’actions

(b) Figure 2.5(b) : l’architecture d’agent BDI [Site5].

La figure 2.5 (a) met en place la plupart des notions que l’on retrouve dans les
architectures de ce type:
 L’agent perçoit son environnement : cette perception comprend aussi bien celle
des objets qui entourent l’agent que les messages en provenance des autres
agents ;
 Cette perception est utilisée pour mettre à jour un ensemble de croyances. Ces
croyances peuvent porter sur l’environnement, ce que croit les autres agents, les
actions possibles et leur description, etc. ;
 L’agent est muni de buts explicites. C’est, en partie, ce qui lui confère son
autonomie puisqu’il n’a pas nécessairement des buts communs aux autres
agents ;
 Ses capacités de raisonnement lui permettent de raisonner sur ses connaissances
et ses buts pour en déduire des plans d’actions possibles ;
 Les plans possibles décrivent des alternatives d’actions que l’agent peut mettre
en œuvre de façon à satisfaire ses buts ;
 Les désirs sont issus du caractère partiel des plans possibles ce qui induit que
certaines choses sont souhaitables selon les différentes alternatives possibles ;
 Les motivations sont l’expression symbolique ou numérique des préférences qui
serviront de critères pour choisir entre les différents plans possibles ;
 Ses capacités de décision vont donc appliquer les critères de préférences pour
sélectionner parmi les alternatives possibles, le plan qui semble le meilleur ;
 Les intentions sont donc l’expression du plan choisi et que l’on essayera de suivre
jusqu’au bout quoiqu’il arrive mais, bien évidemment, dans certaines limites qui
définissent les conditions d’abandon des intentions et engagements ;
 Finalement l’exécution va réaliser les intentions sous la forme d’actions sur
l’environnement ou sur les autres agents via les actes de langage.
Ce schéma a l’avantage de pouvoir expliquer simplement sur quoi vont porter les
actes de langage :
- Les croyances sur soi et sur les autres ;
- Les buts ;
- Les motivations ;
- Les plans possibles et les désirs ;
- Les intentions.
La raison pour laquelle on va communiquer et ce qu’un agent va faire en recevant
une certaine information :
 Une communication sur une croyance permettra de mettre à jour la base de
croyances de l’agent modifiant ainsi indirectement son comportement ;
 Une communication sur les buts permettra de changer ses buts (ordre) ou de
prendre connaissance des buts des autres pour identifier ainsi des conflits
possibles ;
 Une communication sur les plans possibles et les désirs permettra de détecter
des alternatives incompatibles avec les actions envisagées par les autres ;
 Une communication à propos des motivations permettra d’agir sur les
préférences (persuasion, etc.) ;
 Enfin une communication sur les intentions permettra de se coordonner ou de
donner des ordres.
La figure 2.5 (b) montre avec les lignes grasses les bases de données correspondantes,
les fonctions de la révision des plans (brf), pour les options de génération (générateur
d'options), les intentions de filtrage (filtre désirs) et l'action de sélection (sélection
d'action), en tant que bien que le capteur d'entrée (entrée capteur), l'action de sortie
(sortie d'action) et les bords de la transition.
Un agent BDI doit donc mettre à jour ses croyances avec les informations qui lui
proviennent de son environnement, décidé quelles options lui sont offertes, filtrer ces
options afin de déterminer de nouvelles intentions et poser ses actions au vu de ses
intentions.
Une telle architecture permet donc explicitement de rendre compte d’une certaine
pragmatique du discours. Ainsi elle peut servir d’explication possible pour rendre
compte que l’énonciation « il fait froid » peut dans un certain contexte partagé aboutir à
l’acte d’aller fermer une fenêtre. Il s’agit effectivement d’une possible modification de
croyance à propos du ressenti d’un autre agent, éventuellement partagé, qui, en
modifiant le focus d’attention dans le processus de décision de l’agent va résulter en
l’action souhaitée.

2.4 L’interaction et la coopération entre agents


Un système multi-agents se distingue d’une collection d’agents indépendants par le
fait que les agents interagissent en vue de réaliser conjointement une tache ou d’atteindre
conjointement un but particulier. Les agents peuvent interagir en communiquant
directement entre eux ou par l’intermédiaire d’un autre agent ou même en agissant sur
leur environnement.
La coopération peut être considérée comme une attitude intentionnelle adoptée par les
agents qui décident de travailler ensemble [Ferber, 1995].
Dans ce cas les agents s’engagent dans une action après avoir identifié et adopté un but
commun considéré comme un élément essentiel de l’activité sociale.
Les protocoles d’interaction s’intéressent à des séries de messages échangés entre des
agents ; ce que l’on appelle des conversations. Il existe différentes formes de protocoles
d’interaction suivant les systèmes recherchés.
Dans le cas d’agents compétitifs (buts conflictuels ou simplement des intérêts propres),
l’objectif des protocoles est de maximiser l’utilité de chaque agent.
Dans le cas ou des agents ont des buts identiques ou des problèmes communs, comme
c’est le cas en résolution distribuée de problèmes, les protocoles d’interaction cherchent
à maintenir des invariants globaux sans intervenir sur l’autonomie de chaque agent, ni
avoir recours à un contrôle centralisé [Bourdon, 2001].
2.5 La Communication entre agents
Les agents peuvent interagir soit en accomplissant des actions linguistiques (en
communiquant entre eux), soit en accomplissant des actions non-linguistiques qui
modifient leur environnement. En communiquant, les agents peuvent échanger des
informations et coordonner leurs activités. Dans les SMAs, deux stratégies principales ont
été utilisées pour supporter la communication entre agents :
 Envoi de message : Echange direct de message ou de plans.
 Partage d’information : Accès à une base de données partagée, appelée tableau
noir, dans laquelle les informations sont postées.
Tout protocole de communication (point-a-point, multicast ou brodcast) est
représenté par une structure de données qui contient les champs suivants :
1. Emetteur
2. Récepteur(s)
3. langage utilisé dans le protocole
4. Fonctions d’encodage et de décodage
5. Actions à faire par le(s) récepteur(s)
2.5.1. Echange d’informations par tableau noir
En intelligence artificielle, la technique du tableau noir est très utilisée pour spécifier
une mémoire partagée par divers systèmes. Dans un SMA utilisant un tableau noir, les
agents peuvent écrire des messages, insérée des résultats partiels de leurs calculs et
obtenir de l’information. Le tableau noir est en général partitionné en plusieurs
niveaux qui sont spécifiques à l’application.
Les agents qui travaillent sur un niveau particulier peuvent accéder aux informations
contenues dans le niveau correspondant du tableau noir ainsi que dans des niveaux
adjacents. Les données peuvent, donc, être synthétisées à n’importe quel niveau et
transférées aux niveaux supérieurs alors que les buts de haut niveau peuvent être filtrés
et passés aux niveaux inférieurs pour diriger les agents qui œuvrent à ces niveaux.
2.5.2. Actes de langage et conversation
On considère que les agents sont dotés de structures de données appelées « états
mentaux »à partir desquelles ils peuvent raisonner. Diverses catégories d’états mentaux
ont été retenues par les chercheurs dont notamment les croyances, les désirs, les
intentions ou buts, les capacités, etc. ce sont ces mêmes états mentaux qui caractérisent
les modèles des agents cognitifs en intelligence artificielle distribuée. Ainsi un agent
cognitif raisonne sur ses croyances qui représentent sa compréhension du monde dans
lequel il évolue. Il raisonne aussi sur ses désirs et intentions en relation avec ses
croyances et capacités afin de prendre des décisions auxquelles sont associés les plans
qu’il va accomplir pour agir dans le monde.
Les actes de langage
L’idée est d’utiliser ce que l’on comprend du dialogue entre humains comme
modèle pour la communication entre agents. Dans cette approche la production d’un
énoncé, est un acte qui sert avant tout à produire des effets sur son destinataire
[Bourdon, 2001]. Les principaux actes de langages décrits sont les suivants :
1. les assertifs servent à donner une information sur le monde en
affirmant quelque chose (ex. il fait beau).
2. les directifs sont utilisés pour donner des directives au destinataire (ex.
donne moi ta montre).
3. les promissifs engagent le locuteur à accomplir certains actes dans
l’avenir (ex. je viendrai à la réunion).
4. les expressifs servent à donner au destinataire des indications
concernant l’état mental du locuteur (ex. je suis heureux).
5. les déclaratifs accomplissent un acte par le fait même de prononcer
l’énoncé (ex. je déclare la séance ouverte).

2.6. Conclusion
Les SMA peuvent être vus comme la rencontre de divers domaines :

• l'intelligence artificielle pour les aspects prise de décision de l'agent


• l'intelligence artificielle distribuée pour la distribution de l'exécution
• les systèmes distribués pour les interactions
• le génie logiciel pour l'approche agents et l'évolution vers des composants
logiciels de plus en plus autonomes
• Les objets communiquant.

Des applications de plus en plus complexes et distribuées peuvent être développées en


profitant de la puissance sans cesse croissante des ordinateurs. Cependant, cette
distribution et cette complexité rendent la tâche du concepteur difficile car il a du mal à
appréhender de manière complète et globale les applications telles que la recherche
d'information sur Internet, les réseaux de surveillance, la gestion de réseaux…
La résolution coopérative de problèmes prend une place prépondérante dans les
recherches en intelligence artificielle distribuée (IAD). Un domaine de recherche
relativement complexe, est celui des systèmes multi-agents (SMA). La thématique SMA
se focalise sur l'étude des comportements collectifs et sur la répartition de
l'intelligence sur des agents plus ou moins intelligents, capables de s'organiser et
d’interagir pour résoudre des problèmes.
Nous nous sommes intéressés dans ce chapitre à la théorie des agents BDI, C'est une
théorie du raisonnement pratique qui essaie de surprendre comment les gens
raisonnent dans la vie de tous les jours, en décidant, à chaque moment, ce qu'ils ont à
faire. Les intentions jouent un rôle fondamental car elles limitent les choix possibles
qu'un humain (ou un agent artificiel) peut faire à un certain moment.
Une architecture BDI est alors un bon candidat pour modéliser le comportement d'un
agent intelligent car :

• elle s'appuie sur une théorie connue et appréciée de l'action rationnelle des
humains ;
• la théorie a été formalisée dans une logique symbolique formelle, rigoureuse;
• elle a été implémentée et utilisée avec succès dans beaucoup d'applications.

Certaines décisions ont des conséquences décisives sur le fonctionnement et les


résultats des entreprises : choix d'investissement, gestion de production ou de
distribution, planning d'un projet, gestion des stocks. L’accent sera mis sur la maîtrise
des principes du système d’aide à la décision et du système intelligent d’aide à la
décision dans le contexte industriel. Ce dernier fera l’objet du chapitre suivant.
Les Systèmes Interactifs
d’Aide à La Décision

3.1. Introduction
3.2. L’aide à la décision
3.3. SIAD
3.4. Intégration des agents dans le système d’aide à la
décision
3.5. Aide à la décision industrielle
3.6. Conclusion

Chapitre 3

Les Systèmes Interactifs D’Aide à la Décision


3.1 Introduction
La recherche sur les Systèmes Interactifs d’Aide à la Décision (SIAD) existe depuis
environ trente ans. Elle est donc antérieure à l’existence des systèmes multi-agents. Les
travaux sur les SIAD sont nombreux et couvrent un grand champ d’applications. En effet,
de nombreuses applications font intervenir à différents niveaux de complexité des SIAD
dans les entreprises. Un SIAD peut prendre de nombreuses formes et peut s'utiliser de
diverses manières. Certains définissent un SIAD d'une façon générale comme "un
système informatique qui facilite le processus de prise de décision." D'une manière plus
précise, d'autres définissent un SIAD (DSS) comme "un système d'information
informatique, interactif, flexible et adaptable, spécialement développé pour aider à
trouver une solution à un problème de gestion non structuré, en vue d'une meilleure
prise de décision. Il utilise des données, offre une interface conviviale et permet au
décideur d'apporter ses propres idées." Les SIAD appartiennent à un environnement aux
fondations pluridisciplinaires, comprenant notamment les recherches consacrées aux
bases de données, à l'intelligence artificielle, à l'interaction homme-machine, aux
méthodes de simulation, au génie logiciel et aux télécommunications.
Dans ce chapitre nous allons tenter de cerner le domaine des SIAD en présentant leurs
caractéristiques essentielles, nous nous intéresserons par la suite aux systèmes
intelligents d’aide à la décision qui sont indiscutablement liées aux SIAD. Finalement
nous donnerons un aperçu sur le domaine d’application des SIAD dans le contexte
industriel.
3.2 L’aide à la décision
La décision est souvent vue comme le fait d’un individu isolé (« le décideur ») exerçant
un choix entre plusieurs possibilités d’actions à un moment donné. Nous allons dans un
premier temps donner quelques définitions importantes à propos de la prise de décision
et nécessaire à la présentation des SIAD.
D’après [Holtzman, 1989], prendre une « décision » signifie concevoir et s'engager à une
stratégie d'allocation irrévocable de ressources précieuses. On peut associer à toute
décision son « domaine ». On peut par exemple distinguer les décisions médicales, des
décisions militaires ou industrielles. Ces domaines peuvent être eux-mêmes divisés en
sous-domaines.
Par contre, certains facteurs d'une décision sont uniques et dépendent de la décision et
du décideur. Nous appellerons ces derniers la « situation » d'une décision. Cette
situation se compose du « contexte » et des « préférences » du décideur.
Chaque décideur a pour une décision un contexte qui lui est associé et qui affecte
fortement l'intérêt et la disponibilité des différents choix. Ce contexte inclut l'état des
informations du décideur qui constitue sa perception des conséquences possibles de ses
actions. Chaque décideur a des désirs particuliers qui sont exprimés par ses préférences
sur les résultats possibles de sa décision.
3.3 Système Interactif d’Aide à la Décision (SIAD)
On ne peut étudier les systèmes interactifs d’aide à la décision (SIAD) sans aborder les
autres systèmes d’aide à la décision qui les ont précédés.
Comme l’a précisé Arun Sen [Sen, 1998], la difficulté des systèmes d’aide à la décision
est que leur recherche a été fragmentée et dispersée à travers plusieurs domaines tels
que l’intelligence artificielle, le génie logiciel, et les interfaces utilisateurs graphiques.
3.3.1 Informatique décisionnelle
Nous allons tout d’abord rappeler les définitions des systèmes interactifs d’aide à la
décision, ses composants et les principaux processus de décision.
3.3.1.1 Définitions
Le concept de Système Interactif d’Aide à la Décision (SIAD) a tout d’abord été introduit
par l’école anglosaxone et est la traduction du concept de Decision Support Systems
(DSSs).
Les systèmes interactifs d’aide à la décision (SIAD) sont destinés à faciliter les prises
de décision au niveau de l’entreprise. Un système d'aide à la décision bien conçu est un
logiciel interactif qui aide les décideurs à dégager des informations utiles à partir de
données brutes, de documents, de connaissances personnelles et de modèles métier, afin
d’identifier des situations nécessitant une prise de décision rapide et efficace.
Il existe de nombreuses définitions sur le système interactif d’aide à la décision :
→ Une des définitions les plus citées est celle de [Keen, 1978]. Les SIAD
impliquent l’utilisation d’ordinateurs pour :
 Assister les décideurs dans leur processus de décision dans des tâches
semi structurées ;
 Aider plutôt que remplacer le jugement des décideurs ;
 Améliorer la qualité de la prise de décision plutôt que l’efficacité.
→ [Gorry, 1971] ont définit les SIAD de la manière suivante : « système
informatisé interactif aidant le décideur à manipuler des données et des
modèles pour résoudre des problèmes mal structurés ».
→ D’après [Turban, 2001] l'objectif central d'un SIAD est de soutenir et
d'améliorer la prise de décision,
→ [Little, 1970] définit le SIAD comme un « modèle fondé sur un ensemble de
procédures pour le traitement des données et pour aider le gestionnaire dans
sa prise de décision ».
3.3.1.2 Les composants d’un SIAD

Figure 3.1 : Architecture des SIAD selon [Sprague, 1982].

Un SIAD se compose généralement des composants suivants :


♦ d’une interface qui est un élément clé des fonctionnalités du système
global ;
♦ un utilisateur qui fait partie intégrante du processus de résolution de
problème ;
♦ d’un Système de Gestion de la Base de Données (SGBD) incluant la Base de
Données associée qui stocke, organise, trie et remonte les données
pertinentes pour un contexte particulier de décision ;
♦ ainsi qu’un Système de Gestion de la Base de Modèles (SGBM) incluant une
Base de Modèles associée qui possède un rôle similaire au système de
gestion de la base de données excepté qu’il organise, trie, stocke les
modèles quantitatifs de l’organisation.
3.3.1.3 Rôle d’un SIAD
Un SIAD est un système informatique dont le rôle est d’assister le décideur tout au long
du processus de décision. Un processus de décision, dans le cadre défini par la gestion
des organisations, se compose de quatre phases : une phase d'information, une phase de
conception, une phase de choix et une phase d'évaluation du choix [lévine, 1989].
La Figure3.2.a montre que ce processus n'est pas obligatoirement séquentiel, il peut y
avoir des retours en arrière. Par exemple, pendant la seconde ou la troisième phase, le
décideur peut être amené à générer une nouvelle alternative ou encore à rechercher de
nouvelles informations, et ensuite à modifier le ou les modèles choisis. La présence de
ces retours en arrière pendant le processus de décision dépend du niveau de
structuration du problème de décision.

(a) Figure 3.2.a : Modèle du processus décisionnel [Reix, 2000]


(b) Figure 3.2.b : Le processus décisionnel fondant les SIAD [Site6]

Les approches théoriques de la prise de décision façonnent la manière avec laquelle


un SIAD sera conçu. Aussi, il peut être intéressant d’analyser les théories décisionnelles
afin de mieux comprendre les avantages et limites des différents SIAD.
Une interprétation historique de la théorie décisionnelle permet de dégager trois
grandes étapes successives du point de vue de la mise en œuvre de SIAD. Décrite comme
le premier modèle complet du traitement humain de l'information.

A ce titre, il s’inscrit clairement dans le courant de l'intelligence artificielle.


Comprenant un mécanisme central fondé sur l'analyse et un modèle de la mémoire
centrale, cette méthode a été le point de départ d’un très grand nombre de SIAD. Le
schéma présente à la figure 3.2.b, illustre le modèle qui constitue le fondement de la
majorité des SIAD mis en œuvre à ce jour.
3.3.1.4 Évolution des technologies dans les SIAD
Jusqu’aux années 70, les systèmes de décision étaient associés à des méthodologies
propres à la recherche opérationnelle, l’analyse des données, le calcul optimal, etc.
Le but de ses systèmes était de résoudre des problèmes par la recherche d’une solution
optimale en calculant les maxima ou les minima de fonctions mathématiques exprimant
un objectif à atteindre.
Grace aux progrès informatiques l’une des évolutions des systèmes d’aide à la décision a
été de se rapprocher des utilisateurs pour leur permettre d’intervenir dans le processus
de décision [Maret, 1997].
Dans leur travail, Shim et al. [Shim, 2002] présentent diverses technologies récentes
utilisées dans les SIAD. Au début des années 1990, quatre outils puissants émergent. Le
premier fut les entrepôts de données (data warehousing) puis une technique d’analyse
de ces données (on-line analytical processing OLAP) et l’inter présentation de ces
données (data mining), le dernier outil est associé au Word Wide Web.
Les méthodes d’aide à la décision basées sur l’optimisation tiennent une place
importante dans l’aide à la décision [Labbé, 2001], ils commencent par une étape de
formulation qui consiste à rechercher un modèle dans une forme acceptable. Puis l’étape
de solution réfère à la solution algorithmique du modèle.
3.4 Intégration des agents dans le système d’aide à la décision
Les systèmes interactifs d’aide à la décision sont très souvent des systèmes
d’information distribués multi-Utilisateurs. Il est donc nécessaire qu’ils reposent sur
des systèmes informatiques distribués : des utilisateurs répartis sur plusieurs sites
coopèrent au travers de l’outil informatique. C’est pourquoi dans le cadre de nos
recherches, nous nous sommes intéressés aux systèmes multi-agents physiquement
distribués.
Définir ce qu’est un agent est devenu délicat tant son sens s’est développé.

Ainsi, plusieurs types d’agents peuvent être décrits :


 systèmes autonomes ayant des capacités sociales, et qui sont réactifs et
proactifs ;
 systèmes pouvant intégrer des idées mentales.
L’idée est d’utiliser les agents comme moyen pour mettre en œuvre des décisions
distribuées. Le concept de décisions distribuées provient de recherches en
Intelligence Artificielle et consiste en la segmentation d’une tâche en différentes
activités qui seront gérées par des agents travaillant en coopération.
Ainsi, les agents peuvent être une voie vers l’intégration d’un nouveau modèle
décisionnel dans les SIAD et donc vers la conception d’un nouveau type de SIAD : les
SIAD à base d’agents [Kwon, 2005].
De façon plus générale, les SMA permettent de concevoir des systèmes qui sont de
nature complexe. Cependant, ils n'intègrent pas la notion de contraintes temporelles qui
sont souvent très fortes dans les SIAD.
3.4.1 Le système intelligent d’aide à la décision (IDSS)
Un système d'aide à la décision aide les décideurs à la manipulation des données
et des modèles. Il ne joue pas le rôle d'un assistant intelligent pour le décideur.
Récemment, de nombreuses améliorations ont été constatées dans le domaine du
système d’aide à la décision, avec l'inclusion de techniques d'intelligence artificielle
et des méthodes, comme par exemple: bases de connaissances, logique floue,
systèmes multi-agents, langage naturel, génétique algorithmes, réseaux neuronaux et
ainsi de suite. La nouvelle dénomination commune est: système intelligent d’aide à la
décision (Intelligent Decision Support Systems - IDSS) [Ribeiro, 2006].
Les systèmes intelligents d’aide à la décision sont des systèmes informatiques
interactifs qui utilisent les données, les connaissances et les modèles pour aider les
décideurs dans les organisations complexes à résoudre. Les IDSS s’appuient sur des
idées provenant de diverses disciplines telles que l’analyse de la décision et
l’intelligence artificielle.

L'inclusion de l'intelligence artificielle (AI) dans les technologies de système


d’aide à la décision est un effort de développement des systèmes qui imitent les
qualités humaines, telles que le rapprochement, le raisonnement, l'intuition, et tout
simplement du bon sens.
3.4.2 Les composants d’un IDSS
Deux facteurs ont changé la nature de l'aide à la décision et ils sont susceptibles de
continuer à dominer l'avenir d’IDSSs:
a. les entreprises globales ont un besoin pour distribuées l'information et la prise
de décision rapide,
b. Internet permet d'accéder à distribué l'information et la vitesse.
Dans l'environnement actuel, les informations nécessaires à la prise de décision tendent
à être distribuées [Jia, 2003]. Une première approche d’intégration des agents dans un
SIAD à été donnée dans [Phillips, 2002] (voir Figure 3.3)
 L’IDSS a des entrées qui incluent :
 une base de données nécessaire pour les problèmes de la décision,
 une base de modèle qui comprend par exemple les techniques statistiques
nécessaires à l’analyse.
 Les agents peuvent être utilisés pour interagir avec l'utilisateur.
 La composante de traitement qui analyse les données et décrit à la fois
l’organisation et la structuration d’un problème de décision.
La boucle de rétroaction indique l'interaction entre le traitement et la saisie des
éléments tels que la mise à jour en temps réel ou les besoins des utilisateurs aux
informations supplémentaires.
 et enfin la troisième composante correspondant aux « Sorties » permet
d’afficher le résultat de l’analyse et déterminer toutes les solutions possibles
pour que l’utilisateur ou le décideur puisse choisir la meilleure solution.

Figure 3.3: Architecture IDDS [Phillips, 2002]

3.4.3 Etude d’une approche basée sur les agents [Zhu, 2002]
L'objectif principal pour le SIAD est d’aider les décideurs à prendre rapidement les
bonnes décisions, Les problèmes de décisions dans les situations complexes sont
souvent des problèmes multi-objet, multi contrainte. Un SIAD devrait permettre aux
décideurs de combiner facilement les stratégies de résolution de problème, chacun sous
la forme d'un agent, et permettant à ces agents de coopérer et négocier pour améliorer
la qualité et la diversité de la solution.
[Zhu, 2002] propose une architecture à base d’agents pour les systèmes intelligents
d'aide à la décision (IDSS). Dans cette architecture, il propose trois types d’agents: les
agents d'interface, les agents-tâche et les agents d'information.
 Les agents d’interface peuvent servir de pont entre l’utilisateur et l’ordinateur,
ils constituant les outils dont lesquels les utilisateurs disposent pour
participer au processus de décision.

Ils ont la capacité d'apprentissage des habitudes des utilisateurs, permettent


déduire les intentions des utilisateurs, et de fournir des informations utiles
aux utilisateurs.
 Les agents d’information peuvent rechercher des sources de données avec
profils de recherche définis par l'utilisateur, d'identifier et de consulter les
données pertinentes, de copier et organiser les données, et de les stocker
dans une base de données entrepôt « data warehouse ».
 Les Agents de la Tâche agissent comme les experts du domaine, ils ont les
capacités de la prise de décision, et ils combinent différent types de données
(par exemple des données internes et externes) et les connaissances
nécessaires pour donner une solution ou plusieurs solutions.

Figure 3.4 : Architecture d’agents pour l’IDSS [Zhu, 2002]


3.5 Aide à la décision industrielle
Actuellement, les entreprises doivent se placer dans une démarche constante
d’évolution pour rester compétitives, afin de répondre aux attentes et aux
besoins des clients.
 Les systèmes correspondant à de telles exigences doivent maintenir un
niveau de flexibilité élevé. Ainsi, les systèmes flexibles de production
imposent des

contraintes de fiabilité très sévères et le moindre dysfonctionnement du


système peut affecter le processus de fabrication.
 La maîtrise et la gestion des ressources du système de production sont
incontournables pour supporter un processus de production flexible et
performant.

3.5.1 Le système de production


3.5.1.1 Définition
Le système de production décrit l’ensemble du processus grâce auquel l’entreprise
produit un bien ou un service apte à satisfaire une demande à l’aide de facteurs de
production acquis sur le marché.
Dans le cadre d’une entreprise, le système de production, outre sa finalité première qui
est de produire un bien économique, cherche à satisfaire d’autres objectifs :
 Objectif en termes de quantités produites :
La fonction de production doit permettre à l’entreprise de satisfaire la demande qui
lui est adressée ce qui suppose que l’entreprise adapte sa capacité de production au
volume des ventes. Ceci passe par des actions visant à maintenir en l’état les
capacités productives ou par la mise au point de plans d’investissements en capacité.
 Objectif en termes de qualité :
Les biens économiques produits doivent être de bonne qualité, c’est-à-dire doivent
permettre de satisfaire les besoins de la clientèle. Mais la production doit aussi être
de qualité en termes d’utilisation de ressources afin de respecter le critère
d’efficience attaché au système productif. Le système productif doit donc être
économe en ressources et constant en terme de qualité.
 Objectif de coût :
Le système productif adopté par l’entreprise doit proposer les plus faibles coûts de
production possibles de manière à garantir la compétitivité de l’entreprise. De plus,
les coûts de production calculés doivent aussi être mis en relation avec les coûts de
production prévus par le centre opérationnel. Sur la longue période, cet objectif de
coût

se traduit par la recherche permanente de gains de productivité afin de détenir ou de


conserver un avantage compétitif coût pour l’entreprise.
 Objectif de délai :
Le système de production doit certes produire, mais dans des délais raisonnables,
c’est-à-dire en conformité avec le niveau de la demande à laquelle doit faire face
l’entreprise. Ceci suppose la mise en place d’un mode de production réactif qui
permettra soit d’éviter des stocks de biens finaux, soit de ne pas connaître de goulets
d’étranglement. En terme de productivité, l’objectif de délai signifie aussi réduire les
délais de fabrication.
 Objectif de flexibilité :
Le système productif doit être flexible soit pour pouvoir s’adapter aux variations de
la demande, soit pour tenir compte des évolutions de l’environnement productif de
l’entreprise (innovations technologiques…), soit pour permettre une production
simultanée de plusieurs types de produits différents en même temps.

3.5.1.2 Gestion hiérarchique de la production

En gestion de production, on distingue généralement plusieurs niveaux de décision


allant des décisions stratégiques et/ou à long terme aux décisions opérationnelles et/ou
à très court terme.
Nous nous arrêterons plus particulièrement aux niveaux suivants:
 Gestion stratégique et planification à long terme: ce niveau de décision
couvre :
♦ la définition de la mission de l’entreprise (« what business are we in ?
»), la composition du portefeuille de produits, l’identification des
segments de marché visés, les choix de processus de production.
♦ la définition de la stratégie concurrentielle: domination par les coûts
(cost leadership), différenciation (par la qualité, la flexibilité,
l’innovation, les délais, ...), concentration de l’activité (focus), ...;

 Planification à moyen terme: en gestion de la production, la planification à


moyen terme comprend :
♦ la planification agrégée de la production, dont le rôle est de
coordonner les décisions en matière de production avec le contenu
du plan marketing et la gestion du personnel;
♦ la gestion de projet.
 Planification à court terme: on retrouve ici :
♦ l’élaboration du plan directeur de production (MPS) qui détaille les
quantités à produire sur un horizon restreint;
♦ la planification des besoins en composants;
♦ la gestion des stocks.
 Ordonnancement et lancement de la production: affectation des ordres de
fabrication aux postes de travail.
 Contrôle: suivi des ordres de fabrication, contrôle de qualité, indicateurs
de performance, etc.

3.6 Conclusion
Un SIAD est avant tout un système interactif, il doit assister un décideur tout au long de
son processus de décision par des interactions adaptées. Il est composé d’outils
interactifs de mesure. Les interactions entre l’utilisateur, le SIAD et l’ensemble des outils
doivent permettre à l’utilisateur de prendre une ou plusieurs décisions.
Nous avons dans ce chapitre commencé par une présentation globale des systèmes
d’aide à la décision, pour en souligner les définitions et en montrer certaines
particularités.
Nous avons notre recherche principalement sur les systèmes intelligents d’aide à la
décision (IDSS), ils ont pour objet d'apporter une aide à la décision pour des problèmes
peu ou mal structurés, c’est une nouvelle approche pour la conception et le traitement
des SIAD qui utilise des systèmes multi-agents. C’est pourquoi nous avons ensuite
présenter une architecture des agents dans les IDSS.

Bien que les SIAD aient été le sujet de nombreuses recherches depuis plus d'une
vingtaine d'années, ils n'ont pas nécessairement connu beaucoup de succès, en
particulier du point de vu des utilisateurs [Rudnicka, 2001]. Le domaine des SIAD est
trop vaste pour tenter de dresser une liste exhaustive des raisons qui font que ce type de
systèmes suscite moins d'intérêt en pratique.
Construire un SIAD requiert de l'expertise dans des domaines aussi variés que le
design d'interface, la programmation et l'analyse de décision ce qui, dans certains cas,
peut être compliqué à réunir.
Toutefois, il reste à atteindre notre objectif abordé dans ce mémoire à savoir la
réalisation d’une conception et d’une implémentation de notre modèle qui sera
proposé pour les interfaces homme-machines adaptatives.
Eléments de Conception

4.1. Technologies logicielles orientées multi-agents


4.2. Moteur d’adaptation
4.3. Notre modèle proposé
4.4. Démarche de traitement des conflits par un
organigramme
4.5. Architectures des agents et langages
4.6. Pourquoi les agents BDI ?
4.7. Différentes méthodes de résolution de conflits
4.8. Conclusion
Chapitre 4

Eléments de Conception

Ce chapitre est consacré à la présentation des principes de conception de notre


modèle. Nous commencerons par dérouler étape par étape les différents composants
de l’architecture d’une interface homme machine adaptative, pour que la
compréhension de la partie conception soit plus aisée et facile. Les systèmes d’agents
intelligents, en particulier les agents dit BDI (Belief-Desire-Intention), font l’objet
d’un intérêt croissant. Donc nous proposons une logique modale de la capacité
s’appuyant sur les modèles logiques BDI. En particulier, la capacité d’un agent est
comprise comme la capacité à réaliser une activité pour atteindre un but. Une
activité est un sous-modèle BDI résolvant une classe de problèmes particuliers.
Nous avons considéré dans notre travail deux modalités de réalisation de l’adaptation
[Kobsa, 1993]: l’adaptabilité est la capacité du système de s’adapter aux
personnalisations expressément demandées par l’utilisateur, tandis que l’adaptativité
désigne sa capacité à répondre aux besoins de l’utilisateur sans une intervention
explicite de sa part.
Toute application réalisée à partir de ce modèle se fait en deux sessions. La première
renferme la création des agents intelligents BDI, leur configuration et la gestion de
leur communication, et la seconde renferme les concepts de la reconnaissance de la
parole.

4.1 Le modèle proposé

L’idée de construire des interfaces capables de s’adapter à leurs utilisateurs a déjà fait
l’objet de nombreuses recherches depuis plusieurs années. C’est une nécessité liée aux
besoins changeants du contexte (utilisateur, plate forme, environnement).
De façon générale. Les modèles utilisateurs ont été particulièrement exploités dans les
systèmes d’aide intelligents [Brusilovsky, 1997] et les interfaces adaptatives [Liu, 2003].
Nous proposons, l’objectif vise étant l’adaptation an une architecture d’une IHM
adaptative (Figure 4.1), qui puisse s’adapter au comportement de chaque utilisateur au
moyen de différents composants. Ces composants peuvent être définis comme suit [ICAI,
2009], [JSIO, 2008]:
Figure 4.1 : Modèle proposé pour une IHM adaptative [ACIT, 2008].
L’utilisateur :

L'utilisateur est un type un peu particulier : c'est à l'homme qu'elle permet de dialoguer
avec un système.
Le contrôleur de dialogue :

Le contrôleur de dialogue assure le contrôle du modèle de communication entre


l’utilisateur et l’interface. Il gère le séquencement de l'interaction en entrée et en sortie.
Il maintient un état lui permettant de gérer les modes d'interaction et les enchaînements
d'écrans.
Concernant la première composante « Entrée » :

Nous distinguons trois catégories :


 Le SGBD : Un système de gestion de bases de données (SGBD) est une collection
de logiciels qui nous permet de stocker, de modifier et d’extraire des
informations à partir d’une base de données
 Le SGBC : il regroupe pour sa part un ensemble de connaissances sur le domaine
du problème, sur les modèles et sur les stratégies de constructions des modèles.
Elle permet d'apporter une aide active à la résolution du problème de décision
pendant toutes les phases du processus.
 Le SGBM : il se compose d'un ensemble de modèles et d'un système de gestion
de ceux-ci. Les modèles peuvent être : des outils de recherche opérationnelle,
des modèles statistiques ou autres.
La deuxième composante liée au Traitement
Décrit à la fois l’organisation et la structuration d’un problème de décision,
Concernant la troisième composante « sortie » :
Permet de déterminer toutes les solutions possibles pour que l’utilisateur ou le
décideur puisse choisir la meilleure solution.
Les capteurs :
Les capteurs sont des composants de la chaîne d'acquisition dans une chaîne
fonctionnelle. Les capteurs prélèvent une information sur le comportement de la partie
opérative et la transforment en une information exploitable par la partie commande.
Une information est une grandeur abstraite qui précise un événement particulier parmi
un ensemble d'événements possibles. Pour pouvoir être traitée, cette information sera
portée par un support physique (énergie), on parlera alors de signal.
Les capteurs jouent des rôles de plus en plus important car ce sont eux qui permettent
de mesurer les effets des phénomènes de toutes natures qui agissent sur
l’environnement de l’homme, avec l’évolution de la technologie, l’électronique en
particulier, leur importance s’accroît car il permette d’assurer la liaison homme –
machine – environnement.
Concernant les agents :

→ Agent utilisateur :

L’agent “ utilisateur ” est un agent qui possède très peu de connaissances mais peut faire
appel à certains agents. Il s’agit d’une organisation d’agents permettant à chaque
utilisateur de personnaliser directement son IHM.
→ Agent présentation :

L’agent présentation est un agent relativement autonome qui utilise différentes


techniques d’apprentissage pour effectuer des tâches pour leur utilisateur. On peut voir
un agent présentation comme un assistant personnel qui effectue diverses tâches, il gère
les différents éléments de l’interface, de façon à répondre aux besoins contextuels de
l’application.
→ Les agents Intelligents (BDI) contiennent :

a) L’agent adaptation
Un agent adaptation est capable d'apprendre en fonction de son expérience passée et
de son évolution. Les architectures d'agents produisant des unités fonctionnelles
dédiées à des tâches précises, les techniques d'apprentissage classique de
l'intelligence artificielle s'appliquent particulièrement bien à l'apprentissage d'un
agent (qu'il s'agisse de faire évoluer ses capacités d'action, de décision ou d'analyse).
b) L’agent média
Les connaissances de cet agent portent sur les médias de sortie, par exemple
l’occupation de l’écran et des hauts- parleur.
c) L’agent coordinateur
L’agent coordinateur est responsable de la gestion des conflits pour l’interopérabilité
par partage de données, et le plan d'échanges des informations avec la tâche des agents
pour les aider à coordonner leurs actions. Il fournit deux services à la tâche des agents:
(i) il calcule l'information sommaire pour des plans hiérarchique soumis par la tache
des agents, et (ii) coordonne les plans hiérarchiques en utilisant l'information
sommaire.
4.2 Démarche de résolution de problème par un organigramme
L’organigramme présenté à la figure 4.2 montre les principales étapes de la résolution
des problèmes dans le cas d’une panne après l’arrivée d’un ordre de l’utilisateur (ordre
vocal).
4.3 Démarche de résolution de problème par un diagramme UML
Un diagramme de séquence présente une collaboration avec une interaction superposée.
La figure 4.3 représente un exemple d’un diagramme de séquence d’UML, où la
communication est montrée par des flèches.
A l’arrivée d’un message vocale (par l’utilisateur) les capteurs captent le son vérifié par
la base de données et l’envoi vers l’agent média, l’agent d’adaptation commence à traiter
la requête, en cas de panne les agents communiquent entre eux pour préparer la
résolution d’une panne.
Figure 4.2 : Réception et traitement de la requête de l’utilisateur.

Figure 4.3 : Le diagramme de séquence pour l’adaptation

La figure 4.4 montre un organigramme qui décrit les étapes de l’adaptation pour une
interface Homme-Machine telles que ça été proposé dans l’approche de López-Jaquero
[López-Jaquero, 2008]
Figure 4.4 : Les étapes de l’adaptation [López-Jaquero, 2008]

4.4 Architectures des agents et langages

Dans cette partie, nous allons voir comment définir et classifier la structure des agents à
un niveau conceptuel, quelles sont les architectures les plus représentatives des agents
ainsi que les caractéristiques de ces architectures pour les agents intelligents. On y
présentera également un nouveau paradigme de programmation, vue comme une
spécialisation de la programmation orientée objets.

4.4.1 Communications et langage de communication inter-agents

Les communications, dans les SMA comme chez les humains, sont à la base des
interactions et de l'organisation. Une communication peut être définie comme une
forme d'action locale d'un agent vers d'autres agents.
 Langage de communication KQML

KQML “ Knowledge Query and Manipulation Language ” [Labrou, 1997] est un langage
de communication et un protocole de haut niveau pour l'échange de l'information,
orienté messages et indépendant de la syntaxe du contenu et de l'ontologie applicable.
Une ontologie est une spécification ou une vue simplifié et abstraite du domaine qui
sera représenté. En d'autres termes, une ontologie définit le vocabulaire dans un
domaine donné pour que les agents puissent se comprendre. En plus, KQML est
indépendant du mécanisme de transport (TCP/IP, SMTP, IIOP ou autre), indépendant
du langage du contenu échangé (KIF, SQL, Prolog ou autre) et indépendant de
l'ontologie utilisé. Conceptuellement, il existe trois couches dans un message de KQML
: contenu, communication et message.

 la couche “ contenu ” comporte la teneur réelle du message utilisant un


langage de représentation propre au système.
 la couche de “communication ” code un ensemble de dispositifs au message
qui décrivent les paramètres de communication les plus bas, tels que
l'identité de l'expéditeur et du destinataire et un identifiant unique associé à
la communication.
 la couche “ message ”, qui code un message qu'une application voudrait
transmettre à une autre, est le noyau de KQML. Cette couche détermine les
genres d'interactions au sein des agents dialoguant via KQML.

Ce langage propose une description d'un nombre important de performatives


permettant les conversations entre agents mais manque de spécifications et de
formalisation [Cohen, 1995].

 Langage de communication FIPA-ACL


Un standard de langage de communication agent ACL (Agent Communication Language)
[FIPA, 1997] a été proposé et spécifié Comme KQML, ce dernier est basé sur la théorie
des actes de langage : les messages sont des actions ou des actes communicatifs, car ils
sont prévus pour effectuer une certaine action en vertu de l'envoi. Les spécifications de
FIPA-ACL se composent d'un ensemble de types de message et de la description de leur
pragmatique qu'est des effets sur les attitudes mentales des agents (expéditeur et
récepteur). Elles fournissent également la description normative d'un ensemble de
protocoles d'interaction de haut niveau, y compris la demande d'action, l'établissement
de contrat (contract net) et plusieurs genres de ventes aux enchères.
FIPA-ACL est superficiellement semblable à KQML. Sa syntaxe est identique à celle de
KQML excepté différents noms pour quelques primitifs réservés. Ainsi, il maintient
l'approche de KQML de distinguer le langage externe du langage interne. Le langage
externe définit la signification prévue du message; le langage interne ou le contenu,
dénote l'expression à laquelle s'appliquent les croyances, les désirs, et les intentions des
interlocuteurs.

4.5 Architecture BDI

Le modèle BDI (Belief-Desire-Intention) est un modèle de raisonnement utilisé en


intelligence artificielle et ayant ses racines en philosophie et sciences cognitives. Il est
largement utilisé comme modèle de raisonnement agent notamment dans la plateforme
JADE que nous décrivons plus loin.
Dans le modèle BDI, comme représenté dans la figure 4.5, un agent a des croyances sur
le monde, il doit satisfaire des désirs en effectuant des intentions.

Figure 4. 5 : Modèle BDI [Site7].

Les composantes BDI


Une architecture BDI est conçue en partant du modèle "Croyance-Désir-Intention", en
anglais "Belief-Desire-Intention", de la rationalité d'un agent intelligent. Dans ce qui suit,
on va présenter d'une manière informelle, intuitive, la signification de ces trois éléments
dans un modèle BDI. Le modèle a une théorie logique formelle associée, mais on ne va
pas entrer dans les détails de celle-ci.

Rao et Georgeff [RAO, 1995A] ont contribué au développement du modèle BDI en


proposant une structure logique s’appuyant sur les trois modalités primitives : les
croyances, les désirs et les intentions. Leur formalisme est fondé sur un modèle relié au
temps au cours duquel croyance, désir et intention sont interconnectés. Ils ont cherché à
ajouter des plans sociaux à leur formalisme et ont développé une application réelle de la
théorie.
Le B = Belief = Croyance

Les croyances d'un agent sont les informations que l'agent possède sur l'environnement
et sur d'autres agents qui existent dans le même environnement. Les croyances peuvent
être incorrectes, incomplètes ou incertaines et, à cause de cela, elles sont différentes des
connaissances de l'agent, qui sont des informations toujours vraies. Les croyances
peuvent changer au fur et à mesure que l'agent, par sa capacité de perception ou par
l'interaction avec d'autres agents, recueille plus d'information.

Le D = Desire = Désir

Les désirs d'un agent représentent les états de l'environnement, et parfois de lui-même,
que l'agent aimerait voir réalisés. Un agent peut avoir des désirs contradictoires ; dans
ce cas, il doit choisir parmi ses désirs un sous-ensemble qui soit consistant. Ce sous-
ensemble consistant de ses désirs est parfois identifié avec les buts de l'agent.

Le I = Intention = Intention

Les intentions d'un agent sont les désirs que l'agent a décidé d'accomplir ou les actions
qu'il a décidé de faire pour accomplir ses désirs. Même si tous les désirs d'un agent sont
consistants, l'agent peut ne pas être capable d'accomplir tous ses désirs à la fois. Une
architecture BDI est alors un bon candidat pour modéliser le comportement d'un agent
intelligent car :
• elle s'appuie sur une théorie connue et appréciée de l'action rationnelle des
humains ;
• la théorie a été formalisée dans une logique symbolique formelle, rigoureuse ;
• elle a été implémentée et utilisée avec succès dans beaucoup d'applications.

La figure suivante présente les composantes principales d'une architecture BDI.


Figure 4.6 : Architecture BDI d'un agent [Site8].

L'agent a une représentation explicite de ses croyances, désirs et intentions. On dénote


par B l'ensemble des croyances de l'agent, par D l'ensemble de ses désirs, et par I
l'ensemble de ses intentions, et par B, D et I les croyances, désirs et intentions courantes
de l'agent. Les ensembles B, D et I peuvent être représentés au moyen de divers modèles
de représentation de connaissances, par exemple en utilisant la logique des prédicats du
premier ordre, une logique d'ordre supérieur, le modèle des règles de production, ou
bien comme de simples structures de données. L'agent doit produire des plans,
notamment une séquence d'actions qu'il va exécuter pour résoudre le problème. La
représentation des actions la plus commune consiste à représenter les effets de ces
actions sur l'environnement. Par exemple, si dans un état de l'environnement, l'agent
déplace un chariot de la pièce A à la pièce B, la représentation de cette action sera
"déplacer-chariot de A à B" et l'effet sur l'environnement, contiendra notamment le fait
que le chariot n'est plus dans la pièce A et qu'il est dans la pièce B. Le résultat d'une
action sera celui envisagé si l'environnement est déterministe. Les plans conçus par
l'agent sont toujours des structures de connaissances ou structures de données. LibP est
une bibliothèque de plans. Cette composante peut être présente ou non dans
l'architecture. Si elle existe, le processus de planification de l'agent est simplifié car il
peut retrouver des plans adéquats à une certaine situation en parcourant cette
bibliothèque de plans. les carrés représentent des structures de connaissances ou de
données alors que les ovales représentent des composantes de contrôle et d'exécution.

4.5.1 Le contrôle des agents BDI


Dans cette partie, nous allons décrire le processus de contrôle d'un agent BDI par
l'algorithme suivant (basé sur celui de Wooldridge [Wooldridge, 1999]).
Soient B0, D0 et I0 les croyances, désirs et intentions initiales de l'agent.

Algorithme de contrôle d'agent BDI


1 B =B0
2 D =D0
3 I = I0
4 répéter
4.1 obtenir nouvelles perceptions p
4.2 B = revc (B, p)
4.3 I = options (D, I)
4.4 D = des (B, D, I)
4.5 I = filtre (B, D, I)
4.6 PE = plan (B, I)
4.7 exécuter (PE)
jusqu'à ce que l'agent soit arrêté
fin

- revc : B x P ->B est la fonction de révision des croyances de l'agent lorsqu'il reçoit de
nouvelles perceptions sur l'environnement, où P représente l'ensemble des perceptions
de l'agent.
- options : D x I->I est la fonction qui représente le processus de décision de l'agent
prenant en compte ses désirs et ses intentions courantes;
- des : B x D x I->D est la fonction qui peut changer les désirs d'un agent si ses
croyances ou intentions changent, pour maintenir la consistance des désirs de l'agent
(on suppose dans notre modèle que l'agent a toujours des désirs consistants);
- filtre : B x D x I->I est la fonction la plus importante car elle décide des intentions à
poursuivre ; elle est réalisée par la composante Filtre.
La composante Filtre est la partie de l'architecture qui a la responsabilité de bâtir des
plans partiels pour réaliser les intentions de l'agent, tout en tenant compte des nouvelles
opportunités. En conséquence de ce qu'il perçoit de son environnement et de sa révision
des croyances, l'agent peut détecter des nouvelles opportunités qui favorisent la
réalisation de ses intentions ou qui peuvent même empêcher cette réalisation.
- plan : B x I-> PE est la fonction qui transforme les plans partiels en plans exécutables
(PE étant l'ensemble de ces plans).
Si une intention a été choisie par la fonction filtre, on dit que l'agent s'est obligé à
réaliser cette intention. L'obligation d'un agent envers une intention, en anglais appelé
"commitment", a une grande importance dans le modèle BDI d'un agent situé dans un
environnement non déterministe.
4.5.2 Le cycle d’exécution d’un agent
Le cycle d’exécution d’un agent se déroule en plusieurs étapes (Figure 4.7) :
1. Perception des changements de l’environnement par le senseur, interprétation pour
les traduire en termes de croyances.
2. Mise à jour de la base de croyances en relation avec les informations fournies par le
senseur.
3. Ces modifications sont traduites en actions réflexes ou en nouveaux objectifs à
atteindre.
4. La liste d’objectifs est mise à jour et les objectifs à poursuivre sont sélectionnés.
5. S’il n’y a pas de plan sélectionné pour l’objectif en cours, si le plan a échoué, ou s’il y a
Reconsidération du plan actuel, alors, un autre plan est choisi.
6. Le nouveau plan choisi s’étend au champ d’actions à exécuter.
7. L(es) action(s) sont planifiées et exécutées.

Figure 4.7 : Le cycle d'exécution d'un agent BDI [Winikoff, 2001]

4.6 Différentes méthodes de résolution de problémes


De manière générale, dans les méthodes suivantes, la résolution de conflits se fonde sur
la recherche d’un compromis acceptable par l’ensemble des antagonistes. Il s’agit ici de
résolution plutôt démocratique.
Ces compromis peuvent conduire à infléchir différents points de l’état mental d’un
protagoniste et les relations entre agents [Aknine, 2002]. Par exemple :
 Accepter les conditions d’un autre agent peut entraîner qu’un agent soit dans
l’obligation de modifier son propre état interne (croyances, préférences….).
 Accepter les conditions d’un agent peut entraîner la modification des relations
avec un tiers (ou plusieurs) et générer avec ceux-ci des situations de conflits.

4.7 Conclusion
Nous avons proposé dans ce chapitre un modèle générique pour une interface Homme
Machine adaptative. Nous avons présenté la conception d’une IHM intelligente et
adaptative avec l’aide de SIAD intelligent. Ces travaux sont effectués dans un cadre plus
large de la conception de système d’aide à la décision en partie décrite dans le chapitre 3.
De plus, nous avons discuté de deux importantes conséquences conceptuelles de notre
modèle. Premièrement, une logique d’agent BDI devrait être analysée en fonction des
activités qu’un agent est amené à réaliser. Deuxièmement, La voix qui occupe une
position privilégiée dans notre modèle, La reconnaissance vocale est une technologie
informatique qui permet d'analyser un mot ou une phrase captée au moyen d'un
microphone pour la transcrire sous la forme d'un texte exploitable par une machine.
Les concepts de base permettant de mettre en place l'échange d'information, d'induire
des comportements spécifiques et d'interagir ont étés abordés à travers les langages de
communication. La communication constitue donc un concept fondamental du
paradigme multi-agents et la brique de base de cette notion d'interaction.
La totalité du projet est développée en java pour faciliter et permettre la fusion entre ces
deux sessions.
Implémentation et Mise
en Œuvre
5.1. Introduction
5.2. Outils de développement
5.3. Modèle de communication
5.4. Modélisation et Simulation
5.5. Scénarios d’exécution de l’application
5.6. Conclusion
Chapitre 5

Implémentation et Mise en Œuvre

5.1. Introduction
Dans ce chapitre nous allons présenter les outils de développement (le langage java, la
plate forme JADE) utilisés pour la conception de notre application, ensuite quelques
écrans d’illustration de notre interface.
Nous avons choisi d’implémenter notre application avec le langage JAVA vu que ce
dernier est un langage simple, intuitif, orienté objet, performant et dynamique.
Dans le même contexte nous avons opté pour JADE (Java Agent Development
Framework) dans notre choix de la plate forme d’agents. Ce choix est justifié par le fait
que JADE est une plate-forme multi-agents développée en Java, dotée d’une interface
graphique et peut être répartie sur plusieurs serveurs.

5.2. Outils de développement


Les outils de développement utilisés sont :
 Le langage java.
 La plate forme JADE.
5.2.1. Langage java
Le langage Java est un langage de programmation informatique orienté objet créé par
James Gosling et Patrick Naughton employés de Sun Microsystems avec le soutien de Bill
Joy (cofondateur de Sun Microsystems en 1982), présenté officiellement le 23 mai 1995
au SunWorld.

Le langage Java a la particularité principale que les logiciels écrits avec ce dernier sont
très facilement portables sur plusieurs systèmes d’exploitation tels qu’Unix, Microsoft
Windows, Mac OS ou Linux avec peu ou pas de modifications… C’est la plate-forme qui
garantit la portabilité des applications développées en Java. Il reprend en grande partie
la syntaxe du langage C++, très utilisé par les informaticiens. Néanmoins, Java a été
épurée des concepts les plus subtils du C++ et à la fois les plus déroutants, tels que
l’héritage multiple remplacé par l’implémentation des interfaces. Les concepteurs ont
privilégié l’approche orientée objet de sorte qu’en Java, tout est objet à l’exception des
types primitifs (nombres entiers, nombres à virgule flottante, etc.). Java permet de
développer des applications client-serveur. Côté client, les applets sont à l’origine de la
notoriété du langage. C’est surtout côté serveur que Java s’est imposé dans le milieu de
l’entreprise grâce aux servlets, le pendant serveur des applets, et plus récemment les JSP
(JavaServer Pages) qui peuvent se substituer à PHP, ASP et ASP.NET.
5.2.1.1. Avantages
Le langage java est un langage capable de s’exécuter sur n’importe quelle plate forme. Il
est semi-compilé, semi-interprété.
 Robuste et sûr :
 Pas de pointeurs.
 Compilateur très strict car toutes les valeurs doivent être initialisées.
 Traitement des exceptions obligatoire.
 Sécurité.
 Simple.
 Portable.
5.2.2. plate forme JADE
JADE (Java Agent Development Framework) est une plate-forme multi-agents
développée en Java par CSELT (Groupe de recherche de Gruppo
Telecom, Italie) qui a comme but la construction des systèmes multi-agents et la
réalisation d'applications conformes à la norme FIPA [FIPA, 1997].
JADE comprend deux composantes de base : une plate-forme agents compatible FIPA et
un paquet logiciel pour le développement des agents Java.

Figure 5.1 : Le modèle de référence pour une plate-forme multi-agent FIPA.

Dans la figure 5.1, on voit qu'il y a trois rôles principaux dans une plate-forme multi-
agents FIPA:

• Le Système de Gestion d'Agents (Agent Management System - AMS) est l'agent


qui exerce le contrôle de supervision sur l'accès à et l'usage de la plate-forme ; il
est responsable de l'authentification des agents résidents et du contrôle
d'enregistrements.
• Le Canal de Communication entre Agents (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.
• Le Facilitateur d'Annuaire (Directory Facilitator - DF) est l'agent qui fournit un
service de pages jaunes à la plate-forme multi-agents. Il faut remarquer qu'il n'y a
aucune restriction sur la technologie utilisée pour l'implémentation de la plate-
forme : émail, basé sur CORBA, applications multi- threads Java, etc.

Le standard spécifie aussi le Langage de Communication d'Agents (Agent


Communication Language - ACL). La communication des agents est basée sur l'envoi de
messages. Le langage FIPA ACL est le langage standard des messages et impose le
codage, la sémantique et la pragmatique des messages. La norme n'impose pas de
mécanisme spécifique pour le transport interne de messages. Plutôt, puisque les agents
différents pourraient s'exécuter sur des plates-formes différentes et utiliser technologies
différentes d'interconnexion, FIPA spécifie que les messages transportés entre les
plates-formes devraient être codés sous forme textuelle. On suppose que l'agent est en
mesure de transmettre cette forme textuelle. La norme FIPA préconise des formes
communes pour les conversations entre agents par la spécification de protocoles
d'interaction, qui incluent des protocoles simples de type requête-réponse.

5.3. Modèle de communication


La communication est le principal mécanisme d’interactions d’un agent avec la
communauté des agents – en conformité avec la relation triangulaire (Communication,
Coopération, Compétition). Nous insistons sur le fait que pour qualifier un agent
d’intelligent il est essentiel de prouver ses capacités à communiquer dans un but
individuel ou collectif.
Pour communiquer entre eux (information ou dialogue), les agents expriment leurs
intentions selon le langage KQML, dérivé de la théorie des actes de langages [Finin,
1994].
La forme générale d’un acte de langage est donnée par J. Searle sous l’expression F(p),
avec F = {Affirmer, Demander, Promettre, Exprimer, Déclarer} et p une proposition. Le
format que nous avons retenu est défini par le quintuplet <intention, émetteur, récepteur,
langage, message>. Il permet de représenter le contexte, l’intention et le message de la
communication.
5.4 Modélisation et Simulation

Lorsque l’on souhaite passer du problème identifié à la simulation, cela suppose de


franchir un certain nombre d’étapes : l’analyse, la modélisation, l’implémentation
informatique et la simulation. Dans notre approche, nous nous intéresserons plus
particulièrement à la phase de simulation.
la simulation y occupe une place à part, à côté des techniques normatives telles que la
programmation linéaire (mono et multi périodique, déterministe ou stochastique), des
techniques issues de la théorie de la décision, des méthodes multicritères…

5.4.1. La simulation entre les agents


Un modèle de simulation permet la représentation des éléments physiques d’un système
et/ou la description de sa dynamique. Elle utilise des techniques de modélisation qui
permettent de décrire le fonctionnement du système avec le degré de détails nécessaire
à la résolution du problème posé.
Malheureusement ces systèmes sont dotés de moyens très limités (généralement
visualisation graphique et trace) pour aider l’utilisateur dans la composition d’un
scénario, pour lui expliquer ce qui se passe dans le scénario qu’il traite, ou pour
organiser l’étude de simulations multiples… Ces moyens devraient permettre d’atténuer
les imperfections de communication et d’améliorer la compréhension d’une situation
calculée.
Dans notre approche, la modification des scénarios est vue comme une communication
entre les agents du système et l’utilisateur. En fait les agents communiquent entre eux et
avec l’utilisateur pour réaliser les buts fixés ou imposés. C’est un point de vue de
coordination qui S’apprécie de deux manières : la négociation et la coopération.
En général une communication intervient lorsque les agents agissent l’un sur l’autre
pour prendre des décisions communes.

5.5. Scénarios d’exécution de l’application


L’utilisateur a deux possibilités pour introduire ses requêtes d’utilisation de notre
interface :
Par le biais d’expressions vocales.
Par le biais de manipulation directe (la souri et le clavier).
5.5.1. Par les expressions vocales
 Quand je lance la commande « affecter » on voit l’application de l’image qui sera
affiché dans la Figure 5.2

Figure 5.2 : l’expression vocale.

5.5.2. Par la manipulation directe


L’utilisateur doit entrer le nom du projet, la date, l’heure, le nombre de machines et le
nombre de taches, donc il faut créer des nouveaux projets (voir Figure 5.3).
Figure 5.3 : Création des nouveaux projets.
5.5.3. Le déroulement d’un exemple de notre interface

Figure 5.4: Notre interface de simulation.


1 Etape 1 : On clique sur « Fichier » puis « Ouvrir » pour choisir notre exemple. Le fichier
est alors affiché avec un tableau qui donne : le nombre de machines, le nombre de taches,
l’heure, et la date (voir Figure 5.5). Notre interface devienne comme suit (voir Figure
5.6).

Je choisis un exemple et je click sur « Charger ».


Figure 5.5 : Choisir un exemple pour l’exécution.
Figure 5.6 : l’exécution est démarrée (1).
2

Figure 5.7 : l’exécution est démarrée (2).


2 Etape 2 : Lancer la commande « Affecter » : quand je click sur « Affecter » le tableau est
rempli
3

Figure 5.8 : l’exécution est démarrée (3).


Etape 3 : je click sur « Démarrer »
5.5.4. Panne

Etape 4 : Pour provoquer une panne, il suffit de cliquer sur le bouton , et la page
donnée à la Figure 5.9 va apparaître.
Deux façons pour résoudre la panne :
♦ La communication entre les agents en utilisant le SAD.
♦ Réparation immédiate.
5.99 : une ressource est tombée en panne.
Figure 5.
5.5.5. La communication entre les agents
La figure 5.10 montre l’interface initiale des agents, les agents utilisateur et média sont
fixes.
Quand je click sur « Affecter », « Démarrer » ou « Panne » l’agent Coordinateur et l’agent
Adaptation serons affichés (voir figure 5.11).

En cas de changement de la couleur de l’interface, il suffit d’appuie sur (voir figure


5.12) l’agent coordinateur et l’agent présentation serons affichés.
Figure 5.10 : l’interface des agents (Initiale).
Figure 5.11: l’interface des agents (1).
Figure 5.12: l’interface des agents (2).

5.5.6. La communication entre les agents sous jade


Communication :
1. L’agent « Utilisateur » communique avec l’agent « Media ».
2. L’agent « Media » communique avec les agents « coordinateur »
et « adaptation » (dans le cas de « affecter », « démarrer » et
« panne »).
3. L’agent « adaptation » répond par un message ACCEPTE.
4. L’agent « Media » communique avec les agents « coordinateur »
et l’agent « Interface » (dans le cas de « changement de couleur »).
5. L’agent « Interface » répond par un message ACCEPTE.
Figure 5.13 : un premier aspect de la communication entre les agents.

Les étapes du scénario de communication sont décrites dans l’outil « snifer » de la plate
forme « jade » l’agent utilisateur étant l’initiateur, Les autres agents sont des répondeurs.
La communication est couronnée par un succès.
5.5.7. Détail du Scénario de communication par les imprimes-écrans

Figure 5.14 : le scénario de communication.

5.6. Conclusion
Les systèmes multi-agents (SMA) et la programmation orientée agents sont une
approche de programmation particulièrement adaptée à modéliser des systèmes
complexes. Dans un SMA, les agents interagissent selon des modèles d’interactions plus
ou moins élaborés, normalisés, plus riches que dans les modèles de programmation plus
classiques, tels que ceux des systèmes distribués orientés objets ou composants.
Un des principaux enrichissements est notamment la réification dans les messages, ou
dans l’environnement support de l’interaction, d’éléments du contexte local de
l’interaction (initiateur, destinataires, identification de la conversation en cours,
identification d’une réponse, etc.), auxquels pourra faire référence une sémantique de la
communication, apportée par un éventuel langage de communication entre agents (ACL
pour Agent Communication Language).
Nous avons choisi l’utilisation d’un formalisme de type BDI (Belief, Desire, Intention). Ce
formalisme servira comme base de discussion avec les décideurs. Il a en effet l’avantage
de fournir une représentation des connaissances concise et synthétique facilement
compréhensible et réfutable par les différents acteurs. Il constitue un élément
fondamental du dialogue avec eux au niveau de la construction du modèle.
L’application développée a l’aide de la plateforme JADE nous a permis d’exploiter toutes
les possibilités de gestion de communication entres les agents.
Conclusion Générale

6.1. Travail réalisé


6.2. Perspectives
Conclusion et perspectives

Avec son besoin grandissant d’accéder le plus rapidement possible à l’information la


plus pertinente lors d’une prise de décision, l’utilisateur, de nos jours, se trouve au
centre d’un ensemble de solutions. En effet, tout processus de prise de décision nécessite
d’avoir accès à un certain nombre d’informations souvent hétérogènes et complexes, et
est fonction des connaissances et du savoir faire de l’utilisateur.
Au fil du temps les recherches en informatique été concentrées sur l’amélioration de
l’environnement de travail et de décision de l’utilisateur, en particulier dans le domaine
qui nous intéresse ici, c’est à dire l’adaptation des interfaces H-M.
De plus en plus le domaine des IHM se voit confronté à la nécessité d’adapter les
interfaces au contexte d’usage pour des raisons culturelles, d’accessibilité, pour des si-
tuations de mobilité, ou plus généralement pour assurer une meilleure utilisabilité aux
usagers en fonction de leurs habitudes et préférences.
Ce domaine est attirant, et attire toujours, l’attention de plusieurs équipes de recherches
qui amènent des éléments importants pour leur évolution.
Plusieurs disciplines collaborent, parmi lesquelles l’intelligence artificielle, la
linguistique, l’ergonomie cognitive, et ce à un niveau spécifique, pour l’implémentation
de services sur un domaine précis avec des modalités d’entrées-sorties (i.e., écrit/oral)
définies par les usages afin d’optimiser le dialogue ; et à un niveau générique, du point
de vue théorique (pour la capitalisation de connaissances sur le DHM) mais aussi du
point de vue technologique (pour le développement des fonctionnalités de la plate-
forme d’exploitation).

Ce mémoire à pour but de présenter la problématique de l'adaptation des interfaces aux


différents supports physiques, aux différents contextes d'usage et aux différents usagers.
Notre contribution a porté sur la proposition des solutions conceptuelles,
méthodologiques et informatiques afin de palier ces limites. En effet l’étude que nous
avons menée, a abouti dans un premier temps à la proposition d’un modèle générique
pour les IHM adaptatives permette une solution adaptative basée sur l’intégration des
agents dans un contexte d’aide à la décision. Pour cela, nous avons introduit deux
domaines de recherche:
Les systèmes intelligents d’aides à la décision (IDSS), les systèmes multi agents et les
agents de BDI.
Le problème à l’origine de nos travaux nous a conduit naturellement à rechercher les
applications de l’approche SMA pour l’aide à la décision ; Ils font souvent référence aux
concepts développés dans l’architecture de type BDI, c’est à dire les croyances (Belief),
les buts (Desire) et les plans pour satisfaire ces derniers (Intentions).
Notre conclusion comprend deux parties. La première partie est dédiée à la synthèse du
travail réalisé. Dans la deuxième partie nous évoquerons les perspectives de ce travail.
6.1. Travail réalisé
Nous avons introduit le contexte de ce travail et présenté les interfaces Homme Machine
adaptatives comme un domaine en ébullition. Nous avons étudié ses caractéristiques,
mis l'accent sur l’adaptation, l’adaptabilité et l’interactivité de l’interface, ces facteurs
sont essentiels pour permettre à l’utilisateur de rechercher des données pertinentes, Le
premier chapitre présentait donc ses interfaces.
Dans le deuxième chapitre, Nous avons introduit les technologies de système multi-
agent, ses avantages et ses caractéristiques, Nous nous sommes également inspirés du
modèle BDI pour construire notre architecture.
Ainsi, le troisième chapitre était centré sur les Systèmes Interactifs d’Aide à la Décision
(SIAD), en intégrant les définitions issues du domaine.
Un système régulier d'aide à la décision aide les décideurs à la manipulation de données
et de modèles. Il ne joue pas le rôle d'un assistant intelligent pour le décideur.
Récemment, de nombreuses améliorations ont été constatées dans le domaine du SIAD,
avec l'inclusion de techniques d'intelligence artificielle et des méthodes, comme par
exemple: bases de connaissances, logique floue, systèmes multi-agents, réseaux
neuronaux et ainsi de suite. La nouvelle dénomination est: Intelligent Decision Support
Systems (IDSS).
Les Systèmes intelligents d'aide à la décision sont des systèmes informatiques interactifs
qui utilisent des données, de connaissances et de modèles pour soutenir les décideurs
dans les organisations complexes à résoudre.
A travers ce travail de recherche, nous avons constaté que le domaine des interfaces
adaptatives n’est pas très développé. Notre approche est nouvelle et apporte des
améliorations dans l'interface utilisateur et des solutions à ces manques, ainsi un
avantage par rapport aux interfaces dites classiques.
6.2. Perspectives
Nous terminons cette conclusion en évoquant les différentes perspectives de recherche
que nous envisageons d’aborder dans le futur. Donc nos perspectives futures visent
l’amélioration des mécanismes d’adaptation. Dans l’état actuel de développement de
l’application, seules les caractéristiques propres à l’utilisateur (point de vue, niveau
d’expérience, etc.) sont prises en compte.
Le travail réalisé dans cette thèse peut être étendu et amélioré suivant plusieurs
directions.
Il nous reste à continuer à améliorer notre modèle, théories et systèmes permettant de
mieux tirer parti des capacités combinées de l’homme et de la machine pour
comprendre plus, comprendre plus vite et comprendre mieux.
Nous avons essayé de mener de front trois objectifs concurrents :
Améliorer le modèle existant ou concevoir un nouveau modèle conceptuel, montrer
qu’ils étaient adéquats dans des contextes d’usage réels et faciliter la réutilisation des
outils que nous avons réalisés. Nous voulons garder ce mode de fonctionnement qui
paraît efficace pour faire avancer nos recherches.
L’adaptation des interfaces est un domaine qui a fait ses preuves et a montré un
potentiel extrêmement prometteur, nous voulons continuer à l’explorer avec la même
méthode : chercher de nouveaux modèles qui manquent encore cruellement, les
appliquer à des domaines intéressants et complexes, et faciliter l’évolution du domaine.
Nous citons en particulier les axes suivants :

 Concevoir et mettre en œuvre une méthodologie pertinente d’étude ergonomique


de l’apport des interfaces adaptatives, dans un contexte d’utilisation prolongée
(étude des usages).
 Donner à l’utilisateur la possibilité d’adapter une interface à ses préférences et
son comportement à ses intérêts et besoins.
La Bibliographie
Bibliographie

[Aknine, 2002] Aknine S. (2002) "Strategies and Behaviours of Agents in Multi-phased


Negotiations" EC-Web 2002: pp.17-26.

[Bourdon, 2001] Bourdon F. : Système Multi-Agents ; Cours exposé dans le cadre du


DEA-IAA. Université de Caen, 2001.

[Bouché, 1994] Bouché M, « La démarche objet. Concepts et outils », AFNOR, 1994.

[Brusilovsky, 1997] Brusilovsky P., Schwarz, E. User as Student: Towards an Adaptive


Interface for Advanced Web-Based Applications. In A. Jameson, C. Paris, and C. Tasso
(Eds), UserModeling: Proccedings of the Sixth International Conference, UM97, pp. 177-
188.

[Caglayan, 1998] Caglayan A., HARRISON C. : les agents Application bureautiques,


internet et intranet ; Intereditions, Paris 1998.

[Chadés, 2003] Chadés I. Planification distribuée dans les systèmes multi-agents à l’aide
de processus décisionnel de Markov.

[Charton, 2000] Charton R., Boyer A., Charpillt F. (2000) “Utilisation des agents
intelligents dans le commerce électronique”.

[Cohen, 1995] Cohen P.R.,Levesque H.J. Communicative actions for artificial agents. In
Proceedings of the International Conference on multi-agents Systems, AAAI Press, Juin
1995.

[Dieterich, 1993] Dieterich H., Malinowski U., Kühme T., Schneider-Hufschmidt M.,
State of the Art in Adaptive User Interfaces. Schneider-Hufschmidt M., Malinowski
U.(Eds.), 1993, pp.13-48.

[Ferber 1995] Ferber J. Les systèmes multi-agents, vers une intelligence collective.
InterEditions, 1995.
[Finin, 1994] Finin T., Fritzson R., McKay. McEntire and KQML D., R as an agent
communication language, Proceedings of CIKM’94, ACM Press, 1994.

[Fink, 1997] Fink F., Kobsa A., Nill A., Adaptable and Adaptive Information Access for All
Users, Including the Disabled and the Elderly. In Sixth International Conference on User
Modeling. Chia Laguna, Sardinia, 1997.

[Fipa, 1997] FIPA 97. Foundation for Intelligent Physical Agents. FIPA 97 Specification.
Part 2, Agent Communication Language. http://www.fipa.org, 1997.

[Gorry, 1971] Gorry G.A., Morton S., M. (1971), « A Framework for Management
Information Systems. », Sloan Management Review, Vol. 12, no1, pp.55-70.

[Habieb-Mammar, 2004] Habieb-Mammar H., EDPHA : un Environnement de


Développement et de Présentation d'Hyperdocuments Adaptatifs. Thèse de doctorat,
Institut National des Sciences Appliquées (INSA) de Lyon, 2004, p. 205.

[Holtzman, 1989] Holtzman, S. (1989). Intelligent Decision Systems, Addison Wesley.

[Horgen, 2001] Horgen, S.A. (November 2001) “Essay on intelligent user interface and
adaptivity”. Division of Intelligent Systems, NTNU.

[Jennings, 1998] Jennings N.R., Wooldridge M., Sycara K., A roadmap of agent research
and development. Int Journal of Autonomous Agents and Multi-Agent Systems, 1(1):7- 38,
1998.

[Jia, 2003] Jia X., Du H. A framework for Web-based intelligent decision support
enterprise. In: Proceedings of the 23rd IEEE international conference on distributed
computing systems workshops, 2003. p. 958–61.

[Keen, 1978] Keen P., Scott Morton M. (1978): Decision Support Systems : an
organizationnal perspective. Addison-Wesley Publishing Company.

[Kobsa, 2001] Kobsa A. (2001) Generic user modeling systems. User Modeling and User-
Adapted Interaction 11, pp. 49-63. HTTP:// http://www.ics.uci.edu/~kobsa/papers/2001-
UMUAI-kobsa.pdf.

[Kwon, 2005] Kwon O., Yoo K., Suh, E. (2005), « UbiDSS: a proactive intelligent decision
support system as an expert system deploying ubiquitous computing technologies », Expert
Systems with Applications, Vol. 28, no1, pp.149-162.
[Labbé, 2001] Labbé R. (2001). Méthodes d’aide à la décision. Approche théorique et
études des cas développés. Ellipses Edition Marketing, Paris.

[Labidi, 1993] Labidi S., Lejouad W., De l’intelligence Artificielle Distribuée aux Systèmes
Multi-Agents. INRIA Rapport de recherche n° 2004, Aout 1993.

[Labrou, 1997] Labrou Y., Finin T., Proposal A. for a new KQML Specification. Technical
Report CS-97-03, 1997.

[lévine, 1989] lévine P., Pomerol J.-C. (1989). Systèmes interactifs d’aide à la décision et
systèmes experts. Editions hermes.

[Little, 1970] Little J.D.C., Models and Managers: The Concept of a Decision Calculus.
Management Science, 1970. 16(8).
16

[Liu, 2003] Liu, J., Wong C.H., Hui K.K. An Adaptive User Interface Based On
Personalized Learning. In IEEE Intelligent Systems 18 (2) 2003, pp. 52-57.

[López-Jaquero, 2008] López-Jaquero V., Vanderdonck J., Montero F., González P.:
Towards an Extended Model of User Interface Adaptation: The ISATINE Framework. In :
Gulliksen J. et al. (Eds.) EIS 2007. LNCS, vol. 4940, pp. 374–392 (2008).

[Maret, 1997] Maret P., Pinon J.-M. (1997). Ingénierie des savoir-faire – compétences
individuelles et mémoire collective. Hermés, Paris.

[Meinadier, 1991] Meinadier J.P. -L'interface utilisateur : pour une informatique plus
convi viale. –Paris : DUNOD, 1991.-(Informatique et stratégie) .-ISBN 2-10-000160-4.

[Phillips, 2002] Phillips-Wren G, Forgionne G. Advanced decision-making support using


intelligent agent technology. J Decision Systems 2002; 11(2):165–84.

[Prendinger, 2005] Prendinger H., MORI J., Ishizuka M. (2005). Recognizing, Modeling,
and Responding to User’ Affective States. In L. Ardissono, p. Bra, A. Mitrovic (Eds),
Proceedings of 10th International Conference on User Modeling (UM 2005), Edinburgh,
UK, July 24-29, 2005, LNAI Series, n° 3538, Berlin Heidelberg: Springer-Verlag, pp. 60-69.

[RAO, 1995A] Rao A., Georgeff M. (1995) "BDI Agents: From Theory to Practice"
Proceedings of the First International Conference on Multi-Agent Systems (ICMAS-95),
Menlo Park, California, AAAI Press, pp. 312-319.

[RAO, 1995B] Rao AS., Georgeff MP,BDI Agent: From theory to practice Tech. Rep.
Australian Artificial Intelligence Institute, 1995
[Ribeiro, 2006] Ribeiro R., “Intelligent Decision Support Tool for Prioritizing Equipment
Repairs in Critical/Disaster Situations”, in Proceedings of the Euro Working Group On
Decision Support Systems Workshop, Rapport IRIT n°14—2006, Zaraté P. (ed), 2006.

[Rudnicka, 2001] Rudnicka A., Madey G. R. (2001). A Framework for effective user
interface design for web-based electronic commerce applications. Conference Proceedings,
2001 Informing Science Conference, June 19-22 Krakôw, Poland.

[SAN, 2001] Introduction aux Systèmes Multi Agents, « étude des interactions médiatisées
entre gens et agents cognitifs », jean-paul sansonnet, LIMSI-CNRS.
http://sardes.inrialpes.fr/hagimont/cours/CAR/1-intro.pdf

[Sen, 1998] Sen A. (1998). From DSS to DSP: A taxonomic retrospection. Communications
of the ACM, 41(5) :206-216.

[Shoham, 1993] Shoham Y. Agent- oriented programming. Artificial Intelligence, 60:51-


92, 1993.

[Shim, 2002] Shim J. P., Warkentin M., Courtney J F., Power D. J., Sharda R., and Carlsson,
C. (2002). Past, Present and future of decision support technology. Decision support
system, 33(2) :111-126.

[Sprague, 1982] Sprague R., Carlson E. (1982): Building Effective Decision Support
Systems. Prentice-Hall, Inc, Englewood Cliffs.

[Thevenin, 2001] Thevenin D., Adaptation en Interaction Homme-Machine : Le cas de la


Plasticité. Thèse de doctorat, Université Joseph Fourier, Grenoble I, 2001, p. 212.

[Turban, 2001] Turban E., Aronson J. E., Decision Support Systems and Intelligent
Systems. 6th ed. 2001: Prentice Hall. 867.

[Vanderdonckt, 2005] Vanderdonckt J., Grolaux D., Van Roy P., Limbourg Q., Macq B.,
Michel B., A Design Space For Context-Sensitive User Interfaces. In Proceedings of the
14th International Conference on Intelligent and Adaptive Systems and Software
Engineering (IASSE’2005). Toronto, Canada, July 2005, pp. 207-214.

[Vaudry, 1998] Vaudry C. : Modèle ontologique de la composition multimédia : utilisation


dans le cadre d'une négociation agents; Rapport de DEA, LGI2P/LIRMM, Juillet 1998.

[Vaudry, 2002] Vaudry C. (2002) “Composition dynamique d’informations dans la


communication homme-machine. La problématique de la Pertinence dans la CHM”.Thèse
présentée à l’Université Montpellier II Sciences et Techniques du Languedoc pour obtenir
le diplôme de DOCTORAT.
[Villanova, 2002] Villanova-Oliver M. (2002). Adaptabilité dans les systèmes
d’information sur le web : Modélisation et mise en œuvre de l’accès progressif. [Site web:
http://www lsr.imag.fr/users/Marlene.Villanova/THESE/TheseMVO.pdf].

[Winikoff, 2001] Winikoff M., Padgham L., Harland J. (2001) "Simplifying the
Development of Intelligent Agents" 14th Australian Joint Conference on Artificial
Intelligence (AI'01), Adelaide, Australia.

[Wooldridge, 1999] Wooldridge M. (1999) "Intelligent Agents" Multiagent systems, Weiss


G., Ed.: MIT Press.

[Wooldridge, 1995] Wooldridge M., Jennings N., Intelligent Agents: Theory and Practice,
Knowledge Engineering Review, 1995.

[Zhu, 2002] ZHU J., Liu Y., “Approach for the implementation of a Multiagent-Based
Intelligent Decision Support System”, in Journal of Beijing Institute of Technology
(Chinese Language), vol 21, no1, pp.6-10, Feb, 2002.

[ACIT, 2008] Taghezout N., Seddikioui W., The International Conference on Information
Technologie ACIT2008, Tunisie) Sujet: « A Multi-agent Intelligent Decision support
System for an adaptation interface: Application to a manufacturing system ».

[ICAI, 2009] Seddikioui W., Taghezout N., International conference on applied


informatics, centre universitaire de Bordj Bou Arréridj, ICAI’ 09) Sujet: « New Solution to
the Problem of adaptive user interface »

[JSIO, 2008] Seddikioui W., Taghezout N., Premières journées Scientifiques du


Département informatique d’Oran, JSIO’08) Sujet: « A Multi-agent Intelligent Decision
support System for an adaptation interface: Application to a manufacturing system ».

Références de quelques sites

[Site1] David_navarre_these_2001.pdf
[Site2] http://research.nii.ac.jp/~thevenin/papiers/RD-IHM1999/IHM'99-Plasticite.html
[Site3] http://edutechwiki.unige.ch/fr/Adaptation.
[Site4] http://www.univ-annaba.org/laskri_CV_2007.pdf.
[Site5] http://www.iit.bas.bg/PECR/55/90-102.pdf.
[Site6] http://www.gestion-sic.net/documents/SAD.pdf.
[Site7] http://www.uclouvain.be/cps/ucl/doc/iag/documents/WP_71_iaghangmanu.pdf.
[Site8]www.inra.fr/internet/Departements/ESR/vie/docs/theses/Eco-Pub-Le
Bars.pdf?PHPSESSID=0065cd570940779adcd34020580b0aaa

Résumé

Au cours des dernières années l'implication des émotions dans la conception du


dialogue a suscité beaucoup d'intérêt dans la recherche actuelle sur les interfaces
homme-machine intelligentes. Ce papier se concentre sur la mise en œuvre d'un système
flexible et robuste qui intègre le dialogue des émotions et d'autres paramètres
influençant dans le flux de dialogue. Afin d'atteindre un plus haut degré d'adaptabilité,
nous intégrons des agents BDI dans un IDSS peut améliorer la capacité des opérateurs
humains et aux décideurs de mieux exercer leurs fonctions et offrir des améliorations
utiles aux systèmes existants. L'étude rapporte les principes de conception de base de
l'interface utilisateur ainsi que les détails de l’application.

Mots clés : le système multi agent, l’interface adaptative, les agents BDI, les IDSS (les
systèmes intelligents d’aide à la décision), Reconnaissance automatique de la parole, le
modèle adaptative, la communication multimodale.

Abstract

During the past years the involvement of emotions in dialogue design has attracted much
interest in current research on intelligent human-computer interfaces. This paper focuses
on the implementation of a flexible and robust dialogue system which integrates
emotions and other influencing parameters in the dialogue flow. In order to achieve a
higher degree of adaptability we integrate BDI agents into an IDSS can improve the ability
of human operators and decision makers to better perform their duties and provide
useful enhancements to existing systems. The study reports the basic design principles of
the user interface as well as details of the application.

Keywords: multi-agents systems, adaptive interface, BDI agent, IDSS, Automatic speech
recognition, Adaptive Model, multimodal communication.

Vous aimerez peut-être aussi