Title: Agents Software Technologies
1Agents Software Technologies
2Quest quun Agent Logiciel ?
Entité informatique qui réalise de manière
autonome des tâches déléguées par
lutilisateur .
3Caractéristiques des ALI
4Langages pour la construction des applications à
base dagents
5Langages
6Outils
7Agent 0
- Agent 0 (Shoham, 1993)
- propose un nouveau style de programmation et
propose un vrai langage (AOP) intégrant un grand
nombre des concepts définissant la notion
d'agent. - Caractéristiques de Agent 0
- un langage de programmation interprété permettant
de programmer les agents. - fondé sur un langage formel réduit utilisant la
logique modale pour décrire les états mentaux. - Les agents sont programmés en terme de règles
d'échanges mentaux
8Agent 0
- AGENT0 a trois composantes
- 1) un système logique pour définir les états
mentaux de l'agent - 2) un langage de programmation pour programmer
les agents - 3) un processus "agentification", pour compiler
les programmes dagents en un système exécutable
(basniveau). - Les concepts de base sont
- Les Actions provoquant des faits déterminés
(externes ou internes) par des Décisions, - Les Capacités indiquant dans quelle mesure
l'agent est capable d'effectuer une action, - Les Croyances faisant référence à l'état du
monde, aux état mentaux et aux compétences des
autres, et contraignant les décisions, - Les Obligations traduisant des engagements et
proposant des alternatives pour les décisions.
9Agent 0
- Le cycle de contrôle d'un agent AGENT0
10Agent 0
- Le cycle de contrôle est assez simple. Il
consiste en la répétition de la boucle suivante - lire les messages, mettre à jour l'état mental,
- exécuter les actions prévues pour le cycle
courant.
11Agent 0
12LALO
- Lalo est une extension de Agent 0. L'utilisateur
peut choisir de spécifier le comportement à
l'aide - de règles comme dans AGENT0,
- d'un ensemble de plan ou plus simplement d'une
façon procédurale. - L'intérêt de LALO par rapport à AGENT0 réside
surtout dans son aspect compilé. Le compilateur
LALO génère à partir du programme de l'agent, un
code source C pour l'agent, et le code source
d'un programme d'installation dans la base de
données (Orientée Objet) des agents qui contient
au lancement les croyances et engagements
13Le compilateur Lalo
14Dautres langages
- Placa
- MétaTem
-
- Des langages expérimentaux
15Les critères de choix (1)
- Le type de lagent développé
16Les critères de choix (2)
- Le domaine dapplication
- Les compétences techniques disponibles
- Le niveau de sécurité désiré
- Le niveau de performance
17FIPA (1)
(Fundation for Intelligent Physical Agents)
Introduction La fondation pour les agents
physiques intelligents (FIPA) est une association
internationale d'entreprises et d'organisations
qui tentent de produire des spécifications sur la
technologie utilisable par les agents
intelligents. Ces spécifications doivent être
actuelles, reconnues dans le monde entier,
utilisables à travers un grand nombre
d'applications et enfin permettre une interaction
entre les applications.
18Le cycle de vie dans une plate-forme agent
19Le cycle de vie dans une plate-forme agent
-
- description des états
- Initié l'agent est créé ou vient darriver à la
plate-forme. - Actif l'agent opère sur AP.
- Suspendu l'exécution de lagent a été
suspendue, soit par l'agent de gestion de système
ou par l'agent lui-même. Si des messages sont
adressés à un agent dans cet état, l'agent de
gestion du système enverra un message d'échec à
l'agent envoyant. - En attente l'agent attend un certain événement
par exemple des décisions venant de AP. - description des transitions
- Créer
- Démarrer démarrer ou redémarrer l'opération
d'un agent. - Suspendre suspendre l'opération d'un agent soit
par AP, soit demandé par l'agent lui-même. - Activer activer un agent suspendu.
- Attendre mettre l'agent dans un position
d'attente de certains événements. Différent de
l'action de suspension, l'attente ne peut être
décidée par AP. - Réveiller réveiller l'agent de l'état
dattente. Cela peut seulement être décidé par
AP. - Supprimer arrêter l'agent et le supprimer de la
plate-forme.
20Application Réelle
Une système d Agents Logiciels Intelligents
pour favoriser la coopération entre des Système
d Aide à la Décision dédiés à la gestion de crise
Ce travail présente un modèle dAgent Logiciel
Intelligent (ALI) destiné à favoriser la
coopération entre les systèmes dAide à la
décision dédiés à la gestion de crise (la lutte
contre les incendies de forêts). La
coopération entre les ALI repose sur léchange
dun ensemble de service .
21Problématique
La demande des SAD (gestion de crise) ne cesse de
croître.
De nombreux systèmes sont proposés aux
gestionnaires (avec une extrême variété
d information et de services (ex. surveillance,
aide à lanalyse,).
Considérés isolément, les SAD apportent
satisfactions à l utilisateur.
Cependant
Le besoin en terme déchange dinformations et de
services entre SAD ne cesse de croître .
La tâche consistant à permettre la coopération
entre des SAD, préalablement conçu dans des
contextes différents, n est pas aisée.
(Difficultés liées langages, versions, structure
, formats d échange et de communication,
données, ergonomie)
Malgré les progrès au niveau des langages de
programmation, les insuffisances demeurent
(intégration, gestion des interactions et de
coopération entre logiciels).
22Problématique
Une voie de recherche sest entrouverte
le concept dAgent Logiciel Intelligent (ALI)
Réponses effectives et performantes quant au
problème de la coopération inter-logiciels
Pour rendre coopératif un ensemble de SAD
Concevoir des modèles et des méthodes
Informatiques favorisant léchange dinfos au
sein dun env. hétérogène (PC, MAC, Station de
travail, C, Lisp, Pascal,..)
23Proposition de Solution
Concevoir et réaliser une couche de communication
et de coopération entre les SAD (demande de
services, échanges de points de vue, ..)
Pour rendre une coopération entre SAD effective,
trois approches sont possibles
Réecrire les SAD, les transformer en ALI (Av.
Améliore la qualité des SAD, Inc. très coûteuse.
Entreprendre des changements à l intérieur des
SAD afin de les rendre coopératifs. Inc.
demande une compréhension profonde de chaque
logiciel.
Créer une couche (ALI) au dessus de chaque SAD.
Cest à lui que revient la responsabilité
détablir et de gérer la coopération et la
communication entre les autres SAD
24Principe
25Système dALI
Tous les ALI sont conçus de la même façon, même
structure sur le même modèle. Chaque ALI est
responsable d un SAD particulier. Il contient la
description détaillée du SAD qui lui est associé.
26Proposition dun modèle dALI
LALI est constituée de deux partie Une partie
intelligente (ks sociales sur les autres ALI,
capable de raisonnements autorisant une
coopération effective Une partie spécialisée dans
un domaine donné, capable deffectuer des tâches
27Système Coopératif
Le modèle dALI proposé a été testé et validé
dans le domaine de la prévention et de la lutte
contre les incendies de forêts.Il permet à cinq
SAD de communiquer et de coopérer. Ces cinq
SAD ont les caractéristiques suivantes
28Synthèse des services proposés par les
différents SAD
Machines Systèmes
Services
Logiciels
Langage
- détection précoce dun feu - liste des feux
actifs - image visible ou infra-rouge dun feu
Delphi Pascal
Bosque Criado,96
PC
PC
- positions des moyens de lutte (GPS) -
information sur l état du réseau routier - état
des ressources en eau
C et C
Florinus Schmidt,95
PC/Unix
- direction et vitesse du vent - humidité,
température, pluviométrie
Système Météo Chambina,98
C et Pascal
PC
- interpolation des données météo - calcul du
niveau de risque - ressources en eau (citernes) -
simulation de la propagation dun feu
Wilfrid Guarnieri,95
PC/Unix
C
- gestion de messages - suivi de situations -
statistiques
Access et C
MCI Vauche,97
PC
29Principes de coopération entre les ALI
- Le langage de communication utilisé est basé sur
- ACL Agent Communication Language Mayfield et
al.,95 - ASN1 Abstract Syntax Notation One (langage
standardisé par ISO) - Marshall, 90Bustos, 92
- Tous les messages du langage ont une même
structure - L entête du message (le but recherché par
l expéditeur) - Le corps de message (texte libre, demande dun
service, réponse à une - demande, envoi dune information).
Le protocole de communication a été développé
suivant la norme OSI (Open System
Interconnexion). Le standard BER (Basic
Enconding Rules) a été utilisé pour les codages
des messages sous forme binaire pour être
transmis sur le réseau.
30Les actes de communication entre les ALI
- Six actes de communication sont supportés par le
protocole - En cours En train deffectuer la même tâche dans
le cadre dune autre activité. - (2) Engagement car demandé La tâche est mise
dans sa liste de tâche à faire. - (3) Engagement si demande Intéressé, prêt à
laccomplir si un ALI..demande -
- (4) Intérêt Intéressé, mais il est occupé
- (5) Intérêt négatif Intéressé, ne peut pas aider
car pas les compétences nécessaires - (6) Non Intérêt Pas intéressé et il ne peut pas
ou (ne veut pas) aider.
31Exemple de coopération (en situation de crise)
- Le départ dun nouveau feu va générer une
- activité de coopération chez lALI de Wilfried
- Cette activité implique le système Météo pour
- informer les autres de la situation
météorologique - Bosque quand à lui, il doit continuer à suivre
- lévolution du feu
- Florinus doit informer les groupes de pompiers
- sur le terrain à partir des déductions de
Wilfried - quand à l évolution potentielle du front de
feu
32 Agents Mobiles sur le net
33Agent Mobile (1)
Synonyme(s) mobile software agent (agile
applet) Agent intelligent qui quitte
l'ordinateur de l'utilisateur pour
s'exécuter sur un ou plusieurs ordinateurs
distants et ramener éventuellement les
renseignements recueillis à l'ordinateur de
l'utilisateur. Note(s) Le terme applet
agile , calqué sur l'anglais, n'a pas été
retenu à cause de son manque de précision.
Le terme anglais aglet , mot issue de la
contraction de AGile et de appLET ,
désigne des agents autonomes de type objet dans
un environnement réseau.
34Agent Mobile (2)
L'utilisation d'un agent mobile permet, par
exemple, de confier à un robot le repérage du
produit désiré sur le Web et, éventuellement,
d'effectuer une transaction d'achat sur Internet,
sans que l'internaute soit en ligne, etc...
Par exemple, un agent mobile pourrait déterminer
le meilleur prix pour un produit proposé par les
serveurs de plusieurs fournisseurs, en les
consultant successivement, les uns après les
autres, puis en revenant sur lordinateur de
lutilisateur avec la meilleure offre.
35 Technologie d'agent mobile
Note(s) L'apparition d'un langage objet
comme Java, combinée au développement
d'Internet, ont ravivé l'intérêt pour les
technologies d'agent mobile, notamment dans
les applications de recherche d'information et
de commerce électronique. Les compagnies
IBM (avec Aglet), General Magic (avec
Serengeti) et Encanto (avec Commerce
webstation) ont proposé chacune une technologie
d'agent mobile.
36Agent Mobile Client/Serveur Evaluation de
Performance INRIA Rhône-Alpes
37(No Transcript)
38(No Transcript)
39(No Transcript)
40(No Transcript)
41(No Transcript)
42(No Transcript)
43(No Transcript)
44(No Transcript)
45(No Transcript)
46(No Transcript)
47(No Transcript)
48 Mesure des bandes passantes sur les
connexions entre les 3
sites (F GB Suisse)
49(No Transcript)
50(No Transcript)
51(No Transcript)
52(No Transcript)
53(No Transcript)
54Mobile Agents Applications
55Amélioration de la qualité des images médicales
Travaux de Catherine Garbay sur la segmentation
des images du cerveau (2000)
Segmentation séquentielle
Segmentation avec lenvironnement SMA
56Quelques caractéristiques techniques
2 types dagents sont utilisés
- Region agents
- Edge agents
Tous ces agents sont des entités simples et
autonomes qui communiquent dans un environnement
partagé
57Le monitorage des patients
GUARDIAN (Barabara Hayes-Roth, 2000) un
prototype dagents intelligents pour le
monitorage en soins intensifs.
58Quelques caractéristiques techniques
3 types dagents sont utilisés
- Des agents de perception et daction
- Des agents de raisonnement
- Des agents de contrôle
Tous ces agents sont organisés en hiérarchies et
coopèrent entre eux grâce à leurs connaissances.
59Patient Advocate (Miksch et al., 1997)
Diabète
60Trois principales familles dagents (1)
Trois principales familles dagents (diffèrent
selon leur environnement dexistence) A.
Caglayan, C. Harrison Agents bureautiques
(desktop agents) Agents Internet Agents
intranet Les agents bureautique sont des
logiciels qui sintègrent à un système
dexploitation ou à dautres logiciels
applicatifs. Exemple lagent système de
Windows 98 qui a pour but dexécuter à
intervalles réguliers, définis par lutilisateur,
un certain nombre de tâches comme par exemple les
outils de vérification et de défragmentation des
disques durs, la vérification de lintégrité de
la base de registres du système ou encore loutil
davertissement du dépassement de la capacité
dun disque, etc..
61Trois principales familles dagents (2)
Les agents de type Internet interviennent afin
de faciliter certaines opérations qui seraient
trop fastidieuses pour un être humain. Exemple
détecter automatiquement la modification dune
page contenue sur un site web, ou de filtrer
certaines sources diinformations afin den
extraire celles qui correspondent à certains
critères définis par lutilisateur. Enfin,
Les agents rencontrés sur des intranets assurent
des tâches dautomatisation pour certaines
activités particulières ou de filtrage pour des
bases de données internes à une entreprise.
62Trois principales familles dagents (3)
Les Desktop Agents
Les agents systèmes des agents dinterface qui
fournissent une aide à lutilisateur dans
lutilisation du système d exploitation. Les
agents dapplication des agents dinterface qui
fournissent une aide à lutilisateur pour se
servir correctement d une application
particulière. Les agents de suite logicielle
des agents dinterface qui fournissent une aide
à lutilisateur pour faciliter son travail avec
des applications corrélées.
63Trois principales familles dagents (4)
Les agents Internet
Les agents de recherche du web agents Internet
qui fournissent des services de recherche dans
le web à un utilisateur. Les agents serveur du
web agents Internet qui résident sur un site
web spécifique pour fournir des services. Les
agents de filtrage dinformation agents
Internet qui filtrent des informations selon des
critères spécifiés par lutilisateur. Les agents
de recherche documentaire agents Internet qui
retournent un ensemble personnalisé d info.
Correspondant à la demande de lutilisateur. Les
agents de notification agents Internet qui
indiquent à un utilisateur des événements qui
pourraient lintéresser. Les agents de service
agents Internet qui fournissent des services
spécialisés à des utilisateurs. Les agents
mobiles se déplacent dun lieu à un autre afin
déxécuter des âches spéc.
64Trois principales familles dagents (5)
Les agents Intranet
Les agents de personnalisation coopérative
agents intranet qui permettent lautomatisation
du Workflow à l intérieur dune entreprise. Les
agents d automatisation agents intranet qui
automatisent les tâches d une entreprise. Les
agents de base de données agents intranet qui
fournessent des services agent à lutilisateur de
bases de données. Les agents courtiers de
ressources agents intranet qui réalisent
lallocation de ressources dans les
architectures clients/serveur.
65Liste des principaux agents
WebSeeker Un outil très
puissant qui permet, par exemple, d'effectuer
des recherches sur les moteurs
francophones. Web Ferret A
essayer, et en plus il est gratuit ! (cependant
il n'est pas capable
d'éliminer les doublons) Retrieve It Un outil
pour Mac OS. Copernic Un
agent de recherche gratuit. Plus de 30 sources
d'information regroupées en
trois domaines le web, groupes de discussion et
adresses de courrier A
essayer absolument ! Strategic Finder
La version gratuite permet d'interroger
plus de 120 moteurs de
recherches sur Internet. La version payante
permet en plus d'ajouter de
nombreuses sources professionnels sous forme de
plugin. Le logiciel est réalisé
par la société Digimind. BullsEye 2
BullsEye propose un historique des
recherches.
66Strategic Finder
- Strategic Finder exploite les sources
professionnelles visibles et cachées dans
votre secteur dactivité - Strategic Finder optimise la gestion, la
capitalisation et le partage de votre information
on line
67Les fonctionnalités (2)
Simplicité et rapidité de la recherche
Strategic Finder interroge simultanément toutes
les sources sélectionnées avec une seule requête.
Il élimine ensuite les pages doublons et supprime
les pages non pertinentes.
68BULLSEYE PRO
Fig1
http//www.intelliseek.com
69 Nom Copernic (Agent
Technologies) Famille Recherche
d'information Catégorie Meta-moteurs
" off-line "
Description Copernic est un
agent de recherche simple mais efficace.
Les requêtes sont soumises à plusieurs
moteurs de recherche et les
résultats sont présentés sous forme d'un tableau.
On dispose ainsi d'un
historique des données facilement accessible.
70Points positifs -
Simple et intuitif. Il s'intègre parfaitement
dans le browser. -
Prend en compte plusieurs moteurs de recherche
francophones (si
l'on choisi l'interface française).
- Les résultats, qui apparaissent
dans un tableau, peuvent être
triés selon plusieurs critères de
recherche. - Il est
possible de mener des recherches plus précises
directement au sein
des documents rapatriés par l'agent.
- Nouvelles fonctions de veille
(version pro). Points négatifs
- Il est impossible de
rajouter de nouveaux moteurs de recherche
à la liste existante (dans
la version gratuite).
Adresse site http//www.copernic.c
om Telechargez le version Windows
95 Prix Version gratuite, version
plus à 40 , version pro à 80
71Configuration requise Windows 95 ou NT
Pentium 133 min. 32Mo de RAM min. Espace
Disque10 Mo.
25, rue de Wattignies 75012 PARIS Tél 33-1 40
19 02 02 Fax 33-1 40 19 08 08 Mél info _at_
arisem.com
S.A.R.L au capital de 50000 FF- RCS Paris B 404
090 177 00019 - Code APE 722Z
72DIGOUT4U
Nom
DigOut4U (Arisem) Famille
Recherche d'information
Catégorie Agents de recherche
avancés Description DigOut 4U
est un logiciel développé par une jeune société
française qui adopte
une démarche originale basée sur l'analyse du
contenu, du sens et de
la sémantique des textes.
L'application repose sur une technologie
propriétaire (L4U) qui
permet de récupérer les pages web dont le contenu
sémantique correspond
à la requête en langage naturel formulée par
l'utilisateur. A l'heure
actuelle, c'est un des premiers agents à
permettre des recherches
multilingues. Par ailleurs, la technologie
L4U est à la base d'autres
applications plus évoluées notamment
au niveau de la veille.
73DIGOUT4U
- Points positifs
- Requêtes en langage naturel mais avec
possibilité d'intervenir sur les mots-clefs. - Traitements linguistiques des données (présence
d'un dictionnaire de synonymes et
d'équivalences). - Pages sur Internet (site carrefour)
- Elargissement de la portée d'une requête après
une analyse de son contenu. - L'analyse sémantique des pages permet de trier
les document réellement pertinents - Requêtes automatiquement traduites en anglais.
- Elaboration de résumés automatiques dont on peut
modifier la longueur. - Points négatifs
-
- Nécessite un ordinateur assez puissant et une
bonne connexion. - L'interface est encore en évolution.
- Le prix le réserve surtout à un marché
professionnel. - Adresse site
http//www.arisem.com - Telechargez le
version Windows 95 - Prix
Inférieur à 800, DigOut4U Version 1.4 -
(Monoposte)4.700 FF
74TD/TP Etude Comparative de Plates-formes
Multi-Agents
Des plates-formes en Freeware - JADE
http//sharon.cselt.it/projects/jade/ - Swarm
http//www.swarm.org/ Objective C - Madkit
http//www.madkit.org/ - Starlogo
http//el.www.media.mit.edu/groups/el/Projects/sta
rlogo/ - ZEUS http//innovate.bt.com/projects/ag
ents/zeus/index.htm - ZEUS http//www.labs.bt.co
m - Evo http//www.omicrongroup.org/evo/ -
Ascape http//www.brook.edu/es/dynamics/models/a
scape/ en Java - Geamas http//www.univ-reuni
on.fr/mas2/geamas/geamas.html - JAFMAS
http//www.ececs.uc.edu/abaker/JAFMAS/JAFMAS.html
- AgentTcl http//agent.cs.dartmouth.edu/genera
l/agenttcl.html - MANTA http//www-poleia.lip6.f
r/drogoul/projects/manta/index.html Une liste
de liens sur les SMA, mise à jour
quotidiennement - http//www.spiderland.org/br
eve/ Breve a 3d Simulation Environment Designed
for the Simulation of Decentralized Systems and
Artificial Life - http//www.agentland.fr/ -
http//www-2.cs.cmu.edu/softagents/ -
http//wwwttp//www.agentbuilder.com/AgentTools/in
dex.html
75Comparaison avec dautres plateformes
JAFMAS http//www.ececs.uc.edu/abaker/JAFMAS/JA
FMAS.html ZEUS http//www.labs.bt.com AgentTcl
http//agent.cs.dartmouth.edu/general/agenttcl.ht
ml
76ZEUS
A collaborative Agents Tool-Kit Outil de création
de systèmes multi-agents BT Laboratories
England Hyacinth_at_info.bt.co.uk
77ZEUS
78Philosophie (1)
- Le but du projet Zeus est de facilité le
développement - de système multi-agents à partir dune boite
à outil. - Leur philosophie sest orienté selon 3
principes - utilisation de la boite à outils simple.
- Possibilité d ajouter ses propres agents dans la
librairie. - utilisation doutils standards pour faciliter les
modifications ultérieurs.
79Philosophie (2)
- Plus précisément, lutilisateur doit pouvoir
- configurer ses propres agents avec des
fonctionnalités différentes. - établir des relations entre eux.
- définir chaque agent avec différents protocoles
de communication et de coordination - fournir à chaque agent le code spécifique pour
résoudre les problèmes - générer automatiquement le code exécutable pour
chaque agent.
80Architecture (1)
- La structure de lagent ZEUS
- une entité composé de cinq couches
81Architecture (2)
82Avantages de la technologie Agent
Avantages Réaliser des tâches
répétitives Interagir avec des informations
personnalisées Prévenir l utilisateur des
événements importants Apprendre à reconnaître
le comportement des utilisateurs Suivre et
diriger lutilisateur dans un contexte
particulier Réaliser les tâches à distance
Bénéfice Augmenter la productivité Réduire la
quantité dinformations présentée Réduire la
charge de travail Assistance proactive Réduire
le temps de formation Travail local en mode
déconnecté
83StarLogo
84Plan
- Introduction
- La plateforme
- Exemple dun programme
- Démonstration
- Conclusion
85Introduction
- Plusieurs plate-formes multi-agents existent
- les plate-formes de simulation,
- les plate-formes de développement
- et les plate-formes d'exécution.
- Starlogo plate-forme de simulation
- créé par Mitchell Resnick au MIT dans les années
90. - conception de systèmes multi-agents
auto-organisés. ( basé sur le Logo) - portage en Java a été effectué (disponibilité sur
toutes les plateformes et non pas uniquement sur
Macintosh , clarification de l'aspect orienté
objets du langage, construction rapide des
applets qui peuvent être montrés sur le Web. ) - modélisation des comportements collectifs ou
émergents, survenant tant dans les domaines du
vivant que dans les sciences sociales (une
agrégation de cellules, la propagation d'un feu
de forêt, un traffic de voitures ou encore une
recherche de nourriture par des termites. )
86La plateforme
- Notion de décentralisation
- systèmes organisés sans organisateur et
coordonnés sans coordonnateur - Exemple Le vol en formation des oiseaux, les
embouteillages de voitures, le marché économique
ou le comportement d'une fourmilière, - Système auto-organisés
- Interaction locale ajoutée les unes aux autres
-gt ordre (impression dactions centralisées) - Capacité cognitive individuelle limitée mais en
groupe le comportement peut être complexe et
parait organisé (exemple les fourmis) - Stalogo offre au programmeur trois entités
différentes - les tortues (les agents),
- les patches (l'environnement) et
- l'observateur (le superviseur).
87La plateforme
- Les tortues
- Éléments principaux
- Entités colorées sur lécran principal
- Exemple tortues, fourmis, termites,
- Les patches
- Environnement des tortues
- Cases de lécran principal
- Interaction des tortues avec lenvironnement
- Exemple mettre de le nourriture dans
lenvironnement ou laisser des phéromones - Lobservateur
- superviseur
- Extérieur au monde des tortues
- Gestion des programmes dans StarLogo
- Intervention possible même lorsque le programme
est lancé
88La plateforme
- 4 fenêtres de commandes visibles 2 à 2 dans le
centre de commandes,
89La plateforme
- La fenêtre Turtle command center
- Exécution immédiate des commandes simples et de
procédures relatives aux tortues. - Exemple taper forward 10 dans la fenêtre
Turtle command center, on verra alors un joli
cercle, indiquant que vos tortues ont toutes
avancé de 10 pas. - La fenêtre Turtle procedures
- Écriture de toutes les procédures concernant les
tortues. - Exemple
- To set up to demarrer
- Setcolor red setc red
- Forward 10 fd 10
- End end
- Les procédures ne peuvent lancées immédiatement
- dans la fenêtre
- Pour exécuter les procédures
- Taper le nom de la procédure dans la fenêtre
- Turtle command center
- Créer un bouton de lancement de la procédure
90La plateforme
- La fenêtre observer command center
- Exécution immédiate des commandes qui y sont
tapées. - Exécution immédiate des procédures en tapant
leurs noms. - l'observateur peut agir sur le monde des tortues
en créant de nouvelles - tortues, en nettoyant l'écran de visualisation,
ou en monitorant les événements - Exemple
- taper clear-turtles dans cette fenêtre, alors
toutes les tortues seront effacées de l'écran. - taper create-turtles 10, alors va apparaître un
point au centre de l'écran correspondant aux
nouvelles tortues. - La fenêtre observer procedures
- Écriture les procédures relatives à
l'observateur. - Procédures qui permettent de gérer un programme
dans Starlogo - Les procédures ne peuvent lancées immédiatement
dans la fenêtre - Commandes importantes ask-turtles et
ask-patches pour passer des ordres - aux tortues et aux patches
- Exemple
- To set up
- clear-all
91La plateforme
- Les patches
- Pas de commandes spécifiques aux patchs
- Les commandes relatives aux patchs sont
- soit, des commandes qui peuvent être exécutées
par les tortues - soit, des commandes utilisées par l'observateur
(principalement). - Utilisation des patches
- la commande ask-patches ou d'une de ses
variantes. - Vérifier si la commande est associée aux tortues
ou à lobservateur pour savoir où lutiliser. - Exemple
- L'utilisation des patchs par l'observateur
nécessite la commande ask-patches ou une
variante(mettre dans la fenêtre Observer
procedures . - to demarrer
- ask-patches ifelse xcor lt 0 setpc red setpc
blue - end
- (Patches lt 0 rouge sinon bleu
- Xcor commande relative aux tortues mais setpc
sont relatives a lobservateur - Cest le type de derniere commande qui détermine
ou mettre la procédure ici cest lobservateur le
destinataire) - Commande associée aux tortues (à mettre dans la
fenêtre Turtle procedures ) - to demarrer
- ask-turtles demarrer-tortues // dire aux
tortues lancer la procedure demarrer tortues
92Exemple de code
- Beaucoup de fonctions clés
- Fd (Forward) Avance les tortues dune etape
- Setc (SetColor) Couleur des tortues
- Jump Nombre de mouvements des tortues
- Seth (setheading) Angle de direction
- Rt (right turn) Tourner à droite dun certain
angle
93Exemple de programme
- Les termites
- Une termite erre aléatoirement
- Si elle trouve du bois elle le prend
- Puis continue derrer
- Si elle en trouve un autre
- Elle pose le premier dans une pile avec
dautres - ? Regroupement de tous le morceaux de bois
- ? Classification
94Explication du code
to setup setc red seth random 360 jump
random 200 end
to go search-for-chip chercher du bois
find-new-pile trouver un autre bois
find-empty-spot trouver une place libre end
to search-for-chip if pc yellow si elle
trouve du bois stamp black enleve le
bois du schema setc orange couleur
orange pendant le transport jump 20
stop on quitte wiggle
search-for-chip end
Etat initial
Etat final
95Conclusion
- Développement de starLogo en 3D en cours
- Bonne plateforme de simulation
- (Sadapte à de nombreux domaines)
- Pas dacquisition de connaissances
- (Agents réactifs)
96Bibliographie
- www.ades.cnrs.fr/IMG/ppt/Sem-GRANIT_MPiron_02-fev
r-06.ppt - www.sm.u-bordeaux2.fr/rodrigue/starlogo/main.htm
l - www.samuel.landau.free.fr/pub/enseignements/ENSTA
00-01/TD-6/ - education.mit.edu/starlogo/
- www.lirmm.fr/jq/Cours/3cycle/module/sujet2002.ht
ml