GENERATION DE COMPORTEMENTS AUTONOMES POUR LA SCD - PowerPoint PPT Presentation

1 / 46
About This Presentation
Title:

GENERATION DE COMPORTEMENTS AUTONOMES POUR LA SCD

Description:

D centraliser les m canismes fonctionnels du syst me afin que les entit s s'adaptent ... Agissent sur des groupes d'entit s. R tribution imm diate. FF ind. 24 / 46 CS [Sanza2001] ... – PowerPoint PPT presentation

Number of Views:37
Avg rating:3.0/5.0
Slides: 47
Provided by: jpj3
Category:

less

Transcript and Presenter's Notes

Title: GENERATION DE COMPORTEMENTS AUTONOMES POUR LA SCD


1
GENERATION DE COMPORTEMENTS AUTONOMES POUR LA
SCD
  • CEDRIC SANZA
  • IRIT
  • Équipe Synthèse dImages

2
Thème de recherche
  • Simulation Comportementale
  • Donner une autonomie de comportement aux entités
    qui composent un environnement virtuel
  • Décentraliser les mécanismes fonctionnels du
    système afin que les entités sadaptent
    elles-mêmes aux contraintes qui leurs sont
    imposées
  • Apprentissage aucune connaissance initiale
  • Évolution aptitude à sadapter à
    lenvironnement
  • Coopération comportement de groupe
  • Communication avec dautre entités ou
    utilisateurs
  • Interaction avec dautre entités ou utilisateurs
  • Applications en SCD

3
Simulation comportementale
  • Méthodes de génération de comportements
  • Approche procédurale
  • Un comportement est défini par un programme écrit
    dans un langage traditionnel (C, C, JAVA)
    cinématique ou dynamique inverse
  • Approche logique
  • Un comportement est défini par un ensemble de
    règles interprétées par un moteur dinférences
    (PROLOG)
  • Approche neuronale
  • Un comportement est défini par un ou plusieurs
    réseaux de neurones ayant subi, au préalable, une
    phase dentraînement
  • Approche évolutionnaire
  • On définit un comportement de manière implicite
    en spécifiant la pression quexerce
    lenvironnement sur un ensemble de solutions (AG,
    PG)

4
Exemples
  • Animations

1994 and 1998 Walt Disney Pictures
5
Exemples
  • Jeux

2000 Koei and Electronic Arts
2000 Blizzard Entertainment
6
Comportements de foules
  • Reynolds (1987) nuée d'oiseaux et banc de
    poissons
  • Pas d'attribution statique de trajectoires mais
    des
  • comportements connus pour les personnages
    principaux
  • comportements autonomes pour les autres
  • Chaque individu définit ainsi son action de
    manière locale
  • en acquérant de l'information sur son
    environnement
  • en déduisant de cette information sa nouvelle
    position par application de lois simples
  • éviter les collisions avec ses voisins et avec la
    scène
  • réguler sa vitesse sur celle de ses voisins les
    plus proches
  • rester à côté de ses voisins les plus proches

7
Comportements de foules
  • Reynolds (1987)

8
Les modules comportementaux
  • Terzopoulos (1994) système complet d'animation
    de poissons
  • Simulation du comportement des différents
    poissons
  • Implante les comportements de haut niveau
  • un générateur d'intention
  • un module de comportement
  • Simulation physique de l'environnement et des
    poissons
  • Mouvement du poisson gt déplacement d'eau gt
    avancement

9
Les modules comportementaux
  • Terzopoulos (1994)

10
 Evolved Virtual Creatures 
  • Sims (1994) créatures cubiques générées par un
    réseau de neurone
  • Le réseau de neurones est la meilleure solution
    calculée avec un algorithme génétique
  • Le système génère
  • le comportement
  • la morphologie associée

11
 Framsticks 
  • Komosinski (1998) créatures composées de
    bâtonnets
  • Le cerveau de la créature fonctionne grâce à un
    réseau de neurones qui agit sur les jointures

12
Les outils informatiques utilisés
  • Les réseaux de neurones
  • Les algorithmes génétiques
  • La programmation génétique
  • Les systèmes de classifieurs

13
Les réseaux de neurones
  • Un neurone est une cellule pouvant être reliée à
    dautres neurones
  • La sortie dun neurone fournit un potentiel
    électrique
  • L'interconnexion des neurones permet de créer un
    réseau de neurones
  • Un réseau de neurones est simulé en calculant
    pour chaque neurone la valeur de sortie en
    fonction de ses valeurs d'entrées
  • Cette valeur de sortie peut devenir une valeur
    d'entrée pour d'autres neurones
  • Le nombre de couches, la topologie des
    connexions, les poids associés sont autant de
    paramètres définissant le comportement du réseau
  • La phase d'apprentissage permet de configurer le
    réseau pour obtenir un comportement particulier

14
Les algorithmes génétiques
  • Algorithmes génétiques
  • De tels systèmes peuvent être vus comme un
    ensemble dopérations faisant converger une
    population vers la solution dun problème
  • Les opérateurs appliqués sur les éléments de la
    population sont
  • la sélection
  • la mutation
  • le croisement

15
Les algorithmes génétiques
  • La phase de sélection
  • Permet de conserver les meilleures solutions au
    problème
  • La phase de modification

Parents
Enfants
Croisement
Point de croisement
Parents
Enfant
Mutation
Position de mutation
16
La programmation génétique
  • La programmation génétique est une extension des
    AG
  • La programmation génétique travaille directement
    sur un codage de la solution du problème
  • Lindividu étudié est alors un programme
  • Lespace de recherche de lalgorithme génétique
    sera ainsi lensemble de tous les programmes
    pouvant être ainsi définis
  • Lévaluation dun individu doit tenir compte de
  • la taille du programme
  • son temps dexécution
  • son efficacité

17
Les systèmes de classifieurs (LCS)
  • Un système de classifieurs est un système
    dapprentissage adaptatif de règles syntaxiques
  • Ensemble de règles
  • SI condition(s) ALORS action(s)
  • Règles basées sur le triplet
  • Condition-Action-Force
  • Représentation par chaîne binaire ( symbole
      )
  • Principe de fonctionnement
  • Initialisation aléatoire des règles
  • Interface entre lenvironnement et la base de
    règles
  • Ensemble de capteurs/effecteurs
  • Apprentissage par renforcement (fitness)

18
Les systèmes de classifieurs (LCS)
  • Codage des informations provenant de
    lenvironnement
  • Sélection dune règle
  • Activation
  • Rétribution
  • Algorithme génétique

19
Les systèmes de classifieurs (LCS)
  • Sélection dun classifieur en fonction de
  • Sa condition
  • Sa force
  • Sa spécificité
  • Classifieur généralisé
  • Classifieur spécialisé
  • Exemple
  • message entrant 011
  • 001 condition
  • 011 spécificité 1
  • 01 spécificité 2/3
  • 1 spécificité 1/3

20
Les systèmes de classifieurs (LCS)
  • Le système de rétribution
  • Augmenter la force des règles efficaces
  • Réduire la force de celles qui sont inefficaces
  • Algorithme Bucket Brigade
  • Fitness ? Rétribution R
  • S(t) ? S(t-1) R(t) - ?.S(t-1)
  • ??01
  • Réduire la force de celles qui sont inactives
  • Taxation des règles
  • S(t) ? ?.S(t-1)
  • ??01

21
Travaux réalisés
  • ?CS
  • NeViS

22
?CS Sanza2001
  • Génération de comportements
  • Système comportemental dentités virtuelles
  • Définition dun modèle générique pour des entités
    virtuelles
  • Caractéristiques
  • Multi-objectif
  • Coopération
  • Communication

Communication Coopération
23
?CS Sanza2001
  • Coopération
  • Obtenue par émergence
  • Ajout de fonctions de fitness indirectes
    (globales)
  • Déclenchées par des événements précis
  • Agissent sur des groupes dentités
  • Rétribution immédiate

FF ind.
FF
FF
E1
E2
Événement
E4
E5
FF
E3
24
?CS Sanza2001
  • Communication entité-entité
  • Intérêt partage de règles
  • Déclenchement par le module de supervision
  • Codage et envoi du message entrant
  • Réception des réponses

25
?CS Sanza2001
  • Communication utilisateur-entité
  • Réalisée grâce à linterface graphique
  • Principe
  • Envoi dun message par une entité
  • Réponse de lutilisateur

E1
Langage universel

Générateur syntaxique 1 aller à droite 2 aller à
gauche 3 aller en haut ...
3
3 ? 000 000 100 000
E2
E3
E4
26
NEVIS Sanza2001
  • Simulation distribuée de football virtuel
  • Deux équipes de 11 joueurs
  • Joueurs autonomes (?CS)
  • Joueurs pilotés
  • Immersion dun ou plusieurs utilisateurs
  • Interaction (spacemouse)
  • Communication (interface graphique)
  • Distribution sur deux machines avec WorldToWorld
  • Principe
  • Propriétés de partage des objets
  • Transmission des translations et rotations
  • Intérêt
  • Chaque équipe sexécute sur une machine en envoie
    ses modifications à lautre machine

27
NEVIS Sanza2001
  • Résultats
  • Émergence de comportements
  • Spécialisation des joueurs
  • Coopération active

28
Travaux en cours
  • Simulateur dinterventions de pompiers
  • Simulation de véhicules autonomes
  • Prédictif en environnement virtuel

29
Simulateur dinterventions de pompiers
  • Thèse Eric PERDIGAU
  • Interaction entre utilisateurs et entités
    autonomes sur des simulations dinterventions de
    pompiers
  • Environnement urbain (VIRTools)
  • HLA
  • Animation de personnages autonomes
  • Exécuter les ordres du chef dagrès
  • Prendre des initiatives en cas de besoin

30
Simulation de véhicules autonomes
  • DEA Freddy CASIMIR
  • Simulation distribuée
  • Environnement urbain (Performer)
  • HLA
  • Animation de véhicules par Systèmes de
    Classifieurs
  • Capteurs vision du conducteur
  • Effecteurs actions sur la vitesse, le
    changement de voie
  • Fitness respect des règles du code de la route

31
Prédiction en environnement virtuel
  • DEA Trung Hau TRAN
  • Hypothèse le mouvement dune entité dépend des
    objets quelle perçoit
  • Méthode des champs de potentiels
    (attraction/répulsion)
  • Le mouvement est une combinaison de ces champs
  • On peut prédire la trajectoire si on connaît la
    valeur de ces champs
  • Application problème proie-prédateur
  • La proie a un comportement pré-programmé
  • Le prédateur anticipe les déplacements
  • de la proie 

32
Prédiction en environnement virtuel
33
Application de la prédiction en SCD
  •  Behavioral Dead-Reckoning 
  • Le  Dead-Reckoning  permet danticiper la
    position des objets des fédérés distants (bas
    niveau)
  • Le  Behavioral Dead-Reckoning  pourrait
    anticiper le comportement des objets des fédérés
    distants (haut niveau)
  • A anticipe les actions de B grâce au système de
    prédiction afin déviter lenvoi des paramètres
    de déplacement de B vers A
  • Méthode du dead-reckoning pour calculer lerreur

A
A B
A B
B
34
Systèmes de classifieurs évolués
  • Mono-objectifs ZCS, XCS, ACS
  • Multi-objectifs MCS, ?CS

35
ZCS Wilson94
  • Simplification du LCS
  • Message de lenvironnement unique
  • Liste de message supprimée
  • Sélection probabiliste basée sur les effecteurs
  • Opérateur de covering
  • Message entrant 1010
  • 01001 28
  • 10101 42
  • 011 12
  • 0011 11

70 23
36
ZCS Wilson94
environnement
1010
01
capteurs
effecteurs
liste des classifieurs
M
01001 28 011 12 10101 42 0011
11 01110 12 10100 25 ...
rétribution
A
01001 28 011 12 10101 42 0011 11
01001 28 10101 42
AG covering
37
XCS Wilson95
  • LCS basé sur la prédiction du paiement
  • Favorise la création de règles toujours plus
    généralisées
  • Favorise la création de solutions optimales
  • Construit des cartes
  • Condition x Action ? Prédiction
  • Un XCS utilise 3 paramètres
  • La prédiction du paiement p
  • Lerreur de prédiction e
  • La fitness F
  • Numérotation pour classifieurs identiques
  • Macroclassifieurs

p p ?.P-p e e ?.( P-p - e ) F F
?.(k(e) F)
38
ACS Stolzmann98
  • Anticipation du message entrant suivant
  • Règle en 3 parties
  • S condition
  • R action
  • E prédiction de létat suivant
  • Deux forces pour chaque règle
  • Force de la règle
  • Force danticipation
  • Intérêt
  • Enchaînement de comportements

39
ACS Stolzmann98
  • Enchaînement de comportements

40
MCS Multiple Classifier System
  • Cohabitation de plusieurs LCS
  • Cascade de LCS
  • Communication
  • Exemples
  • AlecSys Dorigo93
  • NHCS Lattaud98

capteurs
SC SWITCH
SC 1
SC 2
effecteurs
41
?CS Sanza2001
  • Construction du message entrant
  • Alphabet binaire 0,1
  • Chaque bit fait référence à un capteur
  • Capteur actif 1
  • Absence dinformation 0
  • Pas de symbole
  • Partie condition
  • Longueur nombre de capteurs

capteur1 capteur2 capteur3 capteur4 capteur5 capte
ur6 capteur7
1 0 ? 0 ? 1 1 message entrant
1000011
42
?CS Sanza2001
  • Présélection grâce au message entrant
  • Application dun opérateur de comparaison (lt)
  • Calcul de la concordance D
  • Exemple
  • Sélection grâce à la force
  • Enchère Spec . S
  • Spec 1 D

Message entrant 11011 classifieur 1 11011 ?
4/4 1 classifieur 2 10001 ? 2/4 0.5
classifieur 3 11111 ? 0
43
?CS Sanza2001
  • Longueur (1?).NbEff
  • NbEff nombre deffecteurs
  • ? contrôle des effecteurs
  • Calcul de leffecteur
  • Sous-chaîne de poids le plus
  • fort la plus à gauche
  • Exemple avec ? 1 et NbEff 2
  • Intérêt
  • Définit une priorité implicite des effecteurs

"01 10" ? effecteur 2 "11 10" ? effecteur 1 "11
11" ? effecteur 1
44
?CS Sanza2001
  • Activation des fonctions de fitness
  • Récupération du message entrant
  • Aiguillage vers le sous-réseau
  • Mise à jour des poids
  • Calcul de la rétribution R

message entrant
nuds Nj
1 2 3 n
1 2 3 n
R
?
F1 F2 F3 Fn
fitness
?
aiguillage vers le sous-réseau
k
modifications
45
?CS Sanza2001
UpD( Fi)
Fj Wij Nj
MA
1 2 3 n
1 2 3 n
R
Fi
MR
-MR
?
-MA
2
1
1
(ij)
Rétribution
46
?CS Sanza2001
  • Algorithme génétique avec mutation multiple
  • Etape 1
  • choix de la partie qui va subir la mutation
  • Etape 2
  • partie condition ? mutation classique
  • partie action ? mutation optimisée
  • Application dun système de pondération sur les
    bits afin de favoriser ceux qui sont de poids fort

Partie action Poids
1 0 1 0 2 1 2 1
Write a Comment
User Comments (0)
About PowerShow.com