automate à états finis

10
Automate Automate à à états finis états finis Jeu de Librairies Virtuelles

Upload: tamas

Post on 10-Jan-2016

61 views

Category:

Documents


0 download

DESCRIPTION

Jeu de Librairies Virtuelles. Automate à états finis. Sommaire. Qu’est ce qu’un Automate à Etats Finis ? Définition, exemples Bibliographie internet sur le sujet Exemple du jeu « Homme, Loup, Chèvre, Salade » Sujet, Objectif et Règle du jeu - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Automate  à  états finis

Automate Automate

à à

états finisétats finis

Jeu de Librairies Virtuelles

Page 2: Automate  à  états finis

Qu’est ce qu’un Automate à Etats Finis ?Qu’est ce qu’un Automate à Etats Finis ?Définition, exemplesBibliographie internet sur le sujet

Exemple du jeu « Homme, Loup, Chèvre, Exemple du jeu « Homme, Loup, Chèvre, Salade »Salade »

Sujet, Objectif et Règle du jeuAnalyse du problème, définition d’états et de conditionsAnalyse du problème, détermination de l’automate

théoriqueMise en application, construction de l’automateMise en application, Programme DEMO1Synthèse sur l’utilisation d’un automate pour cet exemple

Sommaire

Page 3: Automate  à  états finis

Qu’est ce qu’un automate à états finis ?Définition, Exemples

DéfinitionDéfinition Un automate à états finis permet de décrire le

comportement d’un processus de façon formelle. On parle aussi de modélisation du processus.

ExemplesExemples Feu tricolore, Machinerie d’ascenseur, etc... Circuits électronique Algorithmes de résolution de problèmes

Page 4: Automate  à  états finis

Quelques sites WEB : http://fr.wikipedia.org/wiki/Automate_fini http://www.laurentbloch.org/spip.php

?article112 http://www.laurentbloch.org/spip.php

?article113 http://jbenech.free.fr/old

_site/agents/html/D-automate.html

Qu’est ce qu’un automate à états finis ?Qu’est ce qu’un automate à états finis ?Bibliographie InternetBibliographie Internet

Page 5: Automate  à  états finis

Exemple du jeu « Homme, Loup, Chèvre, Salade »Exemple du jeu « Homme, Loup, Chèvre, Salade »Sujet , Objectif et Règle du jeuSujet , Objectif et Règle du jeu

SujetSujet Résoudre l’algorithme du Jeu « Homme, Loup, Chèvre, Salade »

à l’aide de l’automate à états finis décrit sur le site WEB : http://www.laurentbloch.org/spip.php?article112

ObjectifObjectif Ecrire un programme informatique permettant à un joueur de

jouer au Jeu « Homme, Loup, Chèvre, Salade » Montrer comment la description du jeu par un automate

d’états finis simplifie l’analyse et la conception du programme Utiliser le Jeu de Librairies Virtuelles pour réaliser le

programme de façon simple et rapide

Page 6: Automate  à  états finis

Exemple du jeu « Homme, Loup, Chèvre, Salade »Exemple du jeu « Homme, Loup, Chèvre, Salade »Sujet , Objectif et Règle du jeuSujet , Objectif et Règle du jeu

Règle du jeuRègle du jeu1. Un homme doit faire traverser une rivière à un loup, une chèvre et une

salade.

2. Le bateau ne peut transporter que 2 passagers maximum à son bord.

3. L’homme ne peut en aucun cas laisser sans surveillance, sur une même rive : Le loup et la chèvre ensemble ou la chèvre et la salade ensemble.

Pour être rapide et efficace, la résolution de ce Pour être rapide et efficace, la résolution de ce problème peut être modéliser avec un automate à problème peut être modéliser avec un automate à états finisétats finis

(décrit par Laurent BLOCH sur son site http://www.laurentbloch.org/spip.php?article112)

Page 7: Automate  à  états finis

Notation des étatsNotation des états ‘H’ pour Homme, ‘L’ pour Loup, ‘C’ pour Chèvre et ‘S’ pour

Salade Le signe ‘-’ (moins) pour déterminer la position sur les rives

Notation des conditionsNotation des conditions ‘h’ lorsque l’homme traverse seul, ‘l’ lorsque l’homme et le loup traversent ‘c’ lorsque l’homme et la chèvre traversent ‘s’ lorsque l’homme et la salade traversent

10 états autorisés10 états autorisésHLCS-, LS-HC, HLS-C, S-HLC, L-HCS, HCS-L, HLC-S, C-HLS, HC-LS et –HLCS

6 états interdits6 états interditsLC-HS, HS-LC, HL-CS, CS-HL, CLS-H et H-CLS

Exemple du jeu « Homme, Loup, Chèvre, Salade »Exemple du jeu « Homme, Loup, Chèvre, Salade »Analyse du problème, Définition d’états et de conditionsAnalyse du problème, Définition d’états et de conditions

Page 8: Automate  à  états finis

HLCS- LS-HC HLS-C

L-HCS

S-HLC

HLC-S

HCS-L

C-HLS HC-LS -HLCS

c

c h

h

l

h

h

c

c

l

l

l

s

s

s

s

c

c

c

c

Cet automate est celui proposé par Laurent BLOCH sur son site

Automate théorique pour la résolution du jeu

Exemple du jeu « Homme, Loup, Chèvre, Salade »Exemple du jeu « Homme, Loup, Chèvre, Salade »Analyse du problème, Détermination d’un automate Analyse du problème, Détermination d’un automate théoriquethéorique

Page 9: Automate  à  états finis

HLCS- LS-HC HLS-C

L-HCS

S-HLC

HLC-S

HCS-L

C-HLS HC-LS -HLCS

c

c h

h

l

h

h

c

c

l

l

l

s

s

s

s

c

c

c

c

Erreur

Recommencer

x

xx

x

xx

x

Démarrage

Automate complété pour la mise en application

x

Nota : La condition ‘x’ correspond à un dépassement du temps de réflexion, une erreur du joueur dans le choix de l’élément à faire traverser ou une demande d’abandon du jeu de sa part

Exemple du jeu « Homme, Loup, Chèvre, Salade »Exemple du jeu « Homme, Loup, Chèvre, Salade »Mise en application : Construction de l’automate Mise en application : Construction de l’automate

Page 10: Automate  à  états finis

Le programme au démarrage

Le programme en cours de jeu

Au delà de son coté ludique, ce programme permet de vérifier l’avantage qu’il y a à utiliser un automate à états finis. C’est en observant les sources, basés sur l’utilisation du modèle d’automate contenu dans le Jeu de Librairies Virtuelles, que l’on mesure l’intérêt de la méthode : Le nombre de lignes de code reste très limité et sans aucune complexité !

Exemple du jeu « Homme, Loup, Chèvre, Salade »Exemple du jeu « Homme, Loup, Chèvre, Salade »Mise en application : Programme DEMO1Mise en application : Programme DEMO1