Title: Incertitudes temporelles en planification et ex
1Incertitudes temporelles en planification et
exécutionRéseaux de contrainte ou modèles
dynamiques ?
1er mars 2001 - FERIA / SD - LAAS Toulouse
- Thierry Vidal
- LGP / ENIT
- Tarbes, France
2- Quelques définitions de base
- Tâche opération élémentaire caractérisée par
une date de début, une durée et un ensemble de
ressources affectées - Plan ensemble de tâches en ordre partiel
(relations de précédence) obtenu après une phase
de - Planification but ? déterminer et placer les
tâches à exécuter - (Ordo) Séquencement ensemble d'opérations ?
affecter ressources séquencer les opérations en
conflit sur des ressources - Cohérence propriété attestant que le plan
pourra être exécuté sans violation de contrainte
(temporelle / de ressource) - Durée imprécise / incertaine intervalle li, ui
Pb durée effective contrôlée par lagent
exécutant le plan ou bien contingente,
cest-à -dire uniquement observée lors de
lexécution ?
3- Applications
- Planification / Ordonnancement pour engins
autonomes - Robotique mobile dintervention (LAAS)
- Hélicoptères  drones de surveillance du trafic
(Suède projet WITAS) - Engins spatiaux missions lointaines (NASA projet
Deep Space) - Outils dédition de documents multimedia
- (INRIA Grenoble)
- Ordonnancement dateliers flexibles
- (LGP / ENIT)
4- Exemple
- - cadre dapplication planification pour le
spatial (Deep Space 1) - - Une météorite a été détectée et sa trajectoire
estimée elle sera à la distance minimale de
lengin spatial dans 10 à 30 secondes - Un tâche de prise de vue de la météorite doit
être exécutée au plus 5 secondes avant ou après
cette position idéale, et de préférence le plus
tôt possible
Solution stratégie opportuniste / dynamique
lorsque la position idéale est détectée (la
distance saccroît à nouveau), prendre la photo,
sinon la prendre de toutes façons au plus tard
dans 25 secondes
5- Questions et enjeux
- Modèles / Propriété(s) / Algorithmes ?
- Utilisation en ordo et planif / lors de
lexécution du plan de tâches ? - Politiques de décision dynamiques / réactives
(SED), modèles de type jeu (contre la nature),
liens avec problèmes de planif conditionnelle,
...? - Complexité des algorithmes ?
6Vue densemble
- Réseaux de Contraintes Temporelles classiques
(STN) et avec Incertitude (STNU) - De la cohérence à la Contrôlabilité dynamique
- Recours aux Timed Game Automata (TGA)
- Vérification de contrôlabilité dynamique dans le
STNU ? - Liens entre incertitudes temporelles et
planification conditionnelle
- Réseaux de Contraintes Temporelles classiques
(STN) et avec Incertitude (STNU) - De la cohérence à la Contrôlabilité dynamique
- Recours aux Timed Game Automata (TGA)
- Vérification de contrôlabilité dynamique dans le
STNU ? - Liens entre incertitudes temporelles et
planification conditionnelle
7STN avec Incertitude
(article JETAI 1999)
- Temporal CSP
- graphe dinstants (nœuds x) reliés par des
contraintes (arcs) ci (y - x) - Simple Temporal Network contraintes de durée ci
(y - x) li,ui
- Simple Temporal Network with Uncertainty (STNU)
- instants activés bi / reçus ei
- ? débuts / fins de tâches
- ? décision ?i date effective de bi
- contraintes (Begin/End)Clbs ci (xi - xj) /
Ctgs gi (ei - xj) gt 0 - ? délai entre deux tâches / durée d'une tâche
- ? observation ?i durée effective de gi (connue
à la réception de ei)
- Un cas particulier intéressant le réseau
minimal - (domaines des Clbs réduits aux valeurs conduisant
à une solution)
8Exemples de STNUs
0,10
0,30
?
9Pouvoir expressif et Utilisation pratique
- Activités de durée contingente reliées par des
relations temporelles riches (recouvrement
partiel, "during", etc) - Planif effet devenant vrai au début / au milieu
/ à la fin de la tâche - Ordo relations StartAfterStart, EndAfterEnd,
etc (cf ILOG)
- Nécessité de s'assurer à l'avance de la
faisabilité du plan - Ordo robustesse d'un ordo prévisionnel face aux
aléas - Planif cas où la sécurité est en jeu degré de
certitude 1 exigé (spatial) ? complémentaire de
l'approche floue
- Disposer d'un algorithme d'exécution déterministe
et de complexité de prise de décision très faible - intérêt du réseau minimal décision immédiate
mise à jour (propagation au reste du graphe) en
tâche de fond
10STNU typologie étendue des contraintes
(collaboration INRIA Grenoble - workshop ECAI98)
- EndClb la durée effective reste libre jusquau
dernier moment - Free passé linstant de début, lagent peut
attendre avant de décider dactiver linstant de
fin à tout moment respectant la contrainte - Wait lagent attend linstant reçu, mais le
domaine de la contrainte peut être restreint par
propagation - BeginClb lagent doit décider la durée au début
!
11Vue densemble
- Réseaux de Contraintes Temporelles classiques
(STN) et avec Incertitude (STNU) - De la cohérence à la Contrôlabilité dynamique
- Les divers niveaux de Contrôlabilité
- Méthodes de vérification et complexités ?
- Recours aux Timed Game Automata (TGA)
- Vérification de contrôlabilité dynamique dans le
STNU ? - Liens entre incertitudes temporelles et
planification conditionnelle
12Cohérence Temporelle d'un STN
- Cohérence globale il existe une solution...
- une instanciation de tous les instants telle
que les durées effectives les séparant satisfont
les contraintes
- Algorithme ? Vérification Obtention du réseau
minimal - (éliminer toute valeur ne conduisant pas à une
solution ? exec !)
? pu, yv
- Cohérence locale k-Cohérence tout sous-réseau
de k instants est cohérent - ? polynomial O(nk) !
k ? 2 k-Cohérence ? Cohérence globale k ? 3
k-Cohérence produit le réseau minimal
13Contrôlabilité(s) Temporelle(s) d'un STNU
(article JETAI 1999 ? KR00)
- Contrôlabilité il existe une solution ?
?1,,?G quelle que soit la situation ?
?1,,?G
? il existe une application ? telle que ? ?(?)
est une solution de la projection du STNU sur ?
? Contrôlabilité Faible
Clbt Forte Clbt Faible lapplication ? est
constante ? est unique
14Contrôlabilités Temporelles (suite et fin)
Clbt "à Etapes" (Waypoint) Clbt Faible il
existe un ensemble W dinstants dont la valeur
est unique dans toute solution ? (
MorrisMuscettola, IJCAI99 )
Clbt Dynamique Clbt Faible la solution
construite jusquà t ?ltt dépend uniquement de
la situation observée jusque-là ?ltt
Propriété fondamentale Clbt Forte ? Clbt
Dynamique ? Clbt Faible
15Illustration sur les exemples
16Méthodes et Complexités
Clbt Forte ? se ramener à un graphe limité aux
instant activés P (polynomial)
Clbt Faible ? tester toutes les projections aux
bornes des Ctgs co-NP-complet (exponentiel)
Clbt "à Etapes" (Waypoint) NP-complet
(exponentiel) ou P si W connu
Clbt Dynamique ? jeu contre la nature (au moins)
NP ???
17Contrôlabilité Dynamique
- Algorithme ?
- Vérification Obtention du réseau minimal
- Incrémental en ordo/planif (à chaque ajout de
tâche) et en exéc de plan (à chaque date
effective d'un instant activé ou reçu)
18Vue densemble
- Réseaux de Contraintes Temporelles classiques
(STN) et avec Incertitude (STNU) - De la cohérence à la Contrôlabilité dynamique
- Recours aux Timed Game Automata (TGA)
- Construire le TGA Ã partir du STNU
- Vérifier la contrôlabilité dynamique dans le TGA
- Utilisation en planif/ordo et en exécution de
plan - Lapproche par décomposition
- Vérification de contrôlabilité dynamique dans le
STNU ? - Liens entre incertitudes temporelles et
planification conditionnelle
19Timed Game Automata modèle
(papier KR00)
- Automate à états finis ? simulation dynamique
- 2 joueurs ? 2 types de transition
- transitions soumises au Temps (le 3ème joueur...)
- Le modèle jeu d'un agent contre la nature
- états qi, avec q0 état initial, qok "succès", q
"échec" - transitions ?i de deux types activée / reçue,
et munies de - une étiquette bi / ei
- une garde temporelle condition d'exécution
relative à une horloge - une fonction de réinitialisation d'horloge
- deux types d' horloges chronos et minuteurs ...
20Timed Game Automata algorithmes
- Du STNU vers le TGA algorithme de traduction
incrémental ! - instant activé / reçu ? transition activée /
reçue vers un nouvel état - durées ? réinitialisations gardes temporelles
- chronos ? EndClbs / minuteurs ? BeginClbs ...
- exécution correcte du plan transition vers qok
- cas d'échec transitions vers q
- Vérification de la Clbt Dynamique dans le TGA ?
- algorithme de type synthèse de contrôleur sain
propagation arrière de qok à q0 - restreindre les gardes temporelles des
transitions activées ? empêcher les transitions
vers q
Synthèse du TGA ok ? STNU Dynamiquement
contrôlable
21Illustration du TGA sur un exemple
22Illustration du TGA sur un exemple (2)
23Le TGA en planif/ordo et exec de plan
- Pertinence du modèle
- Planif/ordo avec durées incertaines
conditionnel par nature - implicite dans le STNU modèle de spécification
? compact - explicite dans le TGA modèle de simulation ?
"explosé"
? TGA outil adapté au contrôle d'exécution du
plan en ligne !
- Efficacité
- Pb explosion combinatoire en nombre d'états
- ? reste "raisonnable" si le degré de parallélisme
du plan est faible - ? utilisation du TGA sur le court-terme
vérification incomplète plus efficace sur
l'ensemble du plan
24Notre exemple de départ...
- Exemple de scénario dynamique opportuniste
- prendre une photo d'une météorite au plus tôt
25L'approche par décomposition
- Plan partitionné par les "instants-étapes"
- Clbt Dynamique ? Clbt "Ã Etapes" dans certains
cas (MorrisMuscettola, IJCAI'99)
- Pb ajouter un grand nombre d'instants-étapes
- ? réduction de l'optimalité du plan
- Un bon compromis
- ajouter avec parcimonie des "périodes d'attentes"
dans le plan ? ensemble W restreint - vérifier la Clbt Dynamique dans chaque petit TGA
défini entre deux "instants-étapes" successifs ?
très efficace en pratique (taille des TGAs bornée
? polynomial)
? Clbt Dynamique Partitionnée ? Clbt Dynamique
Globale !
26Vue densemble
- Réseaux de Contraintes Temporelles classiques
(STN) et avec Incertitude (STNU) - De la cohérence à la Contrôlabilité dynamique
- Recours aux Timed Game Automata (TGA)
- Vérification de contrôlabilité dynamique dans le
STNU ? - Liens entre incertitudes temporelles et
planification conditionnelle
27Idée de départ
(collaboration NASA ARC ? IJCAI'01)
- Etudier les conditions locales d'établissement de
la Contrôlabilité Dynamique en surcontraignant
les intervalles de durée des Clbs - ? triangles composés d'au moins une Ctg
- En déduire un algorithme de filtrage local de
type cohérence de chemin 3DC - Identifier les cas non-déterministes exigeant de
séparer le réseau en deux sous-réseaux
déterministes - ? algo global de recherche arborescente, avec
filtrage par 3DC Ã chaque noeud
28Toujours notre exemple...
Si C arrive avant 25 Alors activer B au plus 5
après C Sinon on peut activer B
ltC,25gt
- Stratégie d'exécution dynamique conditionnée par
l'occurrence de C
- Intervalle pour AB ?
- La borne inf gt la borne inf de AC !
- Insuffisant AB est Clb, B est activé, AB ? 15 Ã
l'exec ?
- Contrainte ternaire "AB attend C au moins 25" !
29Clbt Dynamique locale
Ok ssi x, y non réduit
Ok ssi AB ? ?
? y-v, x-u
30Clbt Dynamique locale
Ok ssi AB ? ?
y-v, q ?
Ok ssi AB ? ?
OK ssi q gt y-v
- Algorithme 3DC
- sain mais incomplet
x, q ?
- Algorithme 3DC
- (régression des tempos...)
- sain et complet !
ltC, y-vgt
31Clbt dynamique globale ?
- 3DC Propagation saine mais incomplète
- Filtrage efficace en pratique
- Pb du cas 3b non déterminisme à l'exécution
- ? algorithme de recherche arborescente
(exponentiel)
- 3DC Propagation saine et complète
- ? 3DC ? DC
- ? DC est polynomial !
-
obtention du réseau minimal ? algorithme
d'exécution immédiat ? complexité en O(n3)
équivalent aux STNs sans incertitudes, à une
constante multiplicative près
32Vue densemble
- Réseaux de Contraintes Temporelles classiques
(STN) et avec Incertitude (STNU) - De la cohérence à la Contrôlabilité dynamique
- Recours aux Timed Game Automata (TGA)
- Vérification de contrôlabilité dynamique dans le
STNU ? - Liens entre incertitudes temporelles et
planification conditionnelle
33Incertitudes temporelles ? Conditions
(en cours avec univ Pittsburgh)
- Plan conditionnel ? STN conditionnel (CSTN)
- ? collecte de données / effets non
déterministes des tâches - nœuds-instants de branchement (OU)
- condition vraie ou fausse ? sous-STNs
- nœuds-instants d'observation de la valeur de
vérité d'une condition - plan ensemble de STNs connectés
- un STN ? une exécution possible
- un instant ? un contexte (ensemble de conditions
valuées) - contrainte de connexion lie 2 instants identiques
dans 2 contextes distincts
- propriétés similaires cohérences Forte, Faible
et Dynamique
34Incertitudes temporelles ? Conditions
- Comparer propriétés et algorithmes dans les CSTN
et les STNU - Cohérence Dynamique dans les CSTN
- méthode basée sur les DTP
- utiliser un filtrage de type 3DC ?
- Modèle unifié ? ? CSTNU
- Utilisation des TGA
- ? conditionnel par nature (états nœuds OU)
- Méthodes mixtes dans le réseau de contraintes ?
35Aller plus loin avec les TGAs ...
- Comportements purement réactifs événements non
attendus - ? "mini-STNUs" et "mini-TGA" correspondant
construits hors ligne correspondant à la réaction
adéquate - ? intégration dans l'exécution courante et
vérification en ligne sur réception de l'événement
- Contraintes de synchronisation
- comportements de type "interruption"
- contraintes de "rendez-vous"
- (INRIA Grenoble)
- Durée liée à la ressource affectée
- (LAAS)
36Conclusion
- Caractérisation complète des propriétés de
contrôlabilité - Méthode de vérification de type simulation
(événements discrets) de la Clbt Dynamique grâce
au TGA - complexité polynomiale grâce aux
"instants-étapes" - Preuve de la polynomialité de la Clbt Dynamique
et méthode de vérification par propagation
complète dans le STNU - Exécution du plan aisée grâce soit au TGA, soit
au réseau minimal obtenu dans le STNU
37Et après ?...
- Intégration dans un module d'ordo avec ILOG
- Combiner avec un raisonnement sur les ressources
séquencement / affectation dynamiques ? - Robustesse au sens large intégrer de la
flexibilité durant la phase d'ordo/planif
prédictive - Représentation étendue de l'incertitude /
préférences - Probas TGA ? MDP ?
- Flou STNU ? ordo flou