• Aucun résultat trouvé

2.1 Définition générale

2.1.4 Solutions d’un problème de planification

Comme nous l’avons vu, il existe de multiples sortes de problèmes de planifi- cation. Nous allons à présent définir ce qu’est une solution d’un problème de pla- nification.

Forme des solutions

Les solutions possibles peuvent prendre diverses formes. La plus basique est simplement une suite d’actions, que l’on appelle un plan.

Définition 2.1.3 (Plan). Soit Σ =⟨S, A, γ⟩ un système états-transitions. Un plan π

poun Σ est une suite finie d’actions de A : π = ⟨a1, . . . , an⟩ ∈ An, avec n ∈ N

l’horizon de π.

Tous les plans ne sont pas des solutions, ils ne sont même pas tous faisables — nous formaliserons cela dans les deux sous-sections suivantes. Intuitivement, un plan est solution d’un problème s’il « permet d’atteindre le but » quand les actions sont exécutées dans le bon ordre en partant de l’état initial. Si nous prenons, par exemple, un état initial défini par{i} dans le problème de planification classique de la figure 2.2, un plan-solution du problème consistant à atteindre un état où f est vrai est⟨B, A, C⟩.

Il y a diverses sortes de plans : ils peuvent être notamment soit séquentiels, soit

parallèles (si les actions peuvent être exécutées simultanément). Quand les actions à

exécuter dépendent de certaines observations, les plans peuvent être conditionnels. Outre les plans, les politiques constituent une autre forme de solution.

Définition 2.1.4 (Politique de décision). Soit Σ = ⟨S, A, γ⟩ un système états-

transitions. Une politique de décision δ pour Σ est une fonction δ : S → A.

La politique δ peut être partielle, c’est-à-dire non définie sur l’ensemble entier des états.

Contrairement aux plans-solutions, qui fournissent une suite ordonnée d’actions à exécuter, une politique est une fonction allant de l’ensemble des états à celui des actions. Elle indique la prochaine décision à prendre en fonction de l’état courant. Une fois que cette décision a été exécutée, le système doit interroger la politique à nouveau pour déterminer l’action suivante, et ainsi de suite.

Les politiques sont plus robustes aux incertitudes que les plans : au cours de l’exécution, si l’une des décisions n’a pas eu l’effet escompté, un plan peut devenir inutile (si les décisions restantes ne sont pas adaptées à l’état inattendu). Avec une politique, même si l’on se retrouve dans un état inattendu, il est possible d’avoir à disposition l’action à effectuer.

La forme attendue de la solution à un problème dépend donc grandement du modèle : les politiques sont bien adaptées aux problèmes non-déterministes, mais nécessitent une modification du modèle pour être capables d’exprimer une suite fixe d’actions (il faut en effet ajouter des variables d’état spéciales pour se souvenir de l’« historique » des actions). Les plans conditionnels sont adaptés aux problèmes partiellement observables, mais ne permettent pas à une action d’être répétée indé- finiment tant qu’un état donné n’est pas atteint.

Faisabilité des solutions

Pour définir ce que sont un plan solution et une politique solution, nous devons pouvoir exprimer le fait que les plans et politiques ne sont pas systématiquement

exécutables, ou faisables. La notion de faisabilité signifie intuitivement que le plan

ou la politique est compatible avec les transitions du modèle. La définition formelle d’un plan faisable [adaptée de FG00] s’appuie sur la notion d’historique.

Définition 2.1.5 (Historique). Soit Σ = ⟨S, A, γ⟩ un système états-transitions, et

π = ⟨a1, . . . , an⟩ un plan pour Σ. Un historique pour π est une suite d’états

⟨h0, . . . , hk⟩ ∈ Sk, avec 0⩽ k ⩽ n, qui vérifie

∀i ∈ {1, . . . , k}, hi ∈ γ(hi−1, ai).

L’état h0est l’état de départ de cet historique, hkson état d’arrivée, et k sa taille.

Un historique est donc une suite d’états compatibles avec le plan π : l’application de ce plan à partir de l’état de départ peut mener à l’état d’arrivée.

Définition 2.1.6 (Plan faisable). Soit Σ =⟨S, A, γ⟩ un système états-transitions, et

s0 ∈ S. Un plan π = ⟨a1, . . . , an⟩ pour Σ est dit faisable depuis s0 (ou (toujours)

exécutable depuis s0) si et seulement si tout historique pour π de taille k < n et

débutant par s0vérifie|γ(hk, ak+1)| > 0.

Un plan est faisable depuis un état initial donné si la première action est applicable dans l’état initial, la seconde applicable dans tous les états résultants possibles, etc. Pour qu’un plan soit faisable, il ne doit exister aucun historique menant à un état dans lequel l’action courante n’est pas applicable.

Pour définir les historiques des politiques de décision, il nous faut introduire le concept de structure d’exécution.

Définition 2.1.7 (Structure d’exécution). Soit Σ = ⟨S, A, γ⟩ un système états-

transitions, et δ une politique. La structure d’exécution induite par δ sur Σ est l’en- semble Σδ={ ⟨s, s′⟩ ∈ S × S | s′ = γ(s, δ(s))}.

Une structure d’exécution est donc un système états-transitions simplifié, dans le- quel il ne reste aucune action ; on peut la voir comme un graphe orienté, où les arcs sont les transitions compatibles avec la politique. Nous pouvons maintenant définir les historiques pour les politiques de décision.

Définition 2.1.8 (Historique). Soit Σ =⟨S, A, γ⟩ un système états-transitions, s0

S, et δ une politique. Un historique de δ depuis s0 est un chemin complet dans la

structure d’exécution Σδdébutant par l’état s0.

À noter que contrairement aux historiques pour les plans, les historiques pour les politiques peuvent être infinis. Ils sont cependant par définition des chemins com-

plets, c’est-à-dire qu’ils ne peuvent s’arrêter que dans des états pour lesquels la

politique ne fournit aucune action à effectuer. La notion d’historique va nous être utile dans la sous-section suivante ; introduisons pour le moment la notion de poli-

tique exécutable [GT99].

Définition 2.1.9 (Politique exécutable). Soit Σ = ⟨S, A, γ⟩ un système états-

transitions. Une politique δ pour Σ est dite exécutable si et seulement pour tout couple⟨s, a⟩ tel que a = δ(s), il existe un état s′∈ S vérifiant s′ = γ(s, a).

Une politique est exécutable si toute action qu’elle renvoie est exécutable dans l’état courant. Remarquons que cette définition est plus simple que celle de plan faisable.

Force des solutions

Pour constituer une solution d’un problème de planification, un plan ou une politique doit nécessairement être exécutable. Cela n’est néanmoins pas suffisant ; la deuxième condition est qu’il ou elle doit permettre d’atteindre l’objectif.

Définition 2.1.10 (Solution en planification classique). Soit P =⟨Σ, s0, G⟩ un pro-

blème de planification classique. Un plan π pour Σ est une solution de P si et seule- ment s’il est faisable depuis s0et s’il existe un historique pour π depuis s0qui arrive

dans un des états-buts g∈ G.

Pour un problème non classique, la définition d’une solution n’est en fait pas unique ; en effet, le problème peut être plus ou moins sujet à de l’incertitude, par le biais du non-déterminisme ou de l’observabilité partielle par exemple. Les exi- gences quant à la robustesse de la solution peuvent alors varier. Pour certaines ap- plications, l’objectif doit être atteint dans tous les cas, malgré le non-déterminisme : on parle alors de solution forte. Pour d’autres applications, cette robustesse n’est pas strictement nécessaire ; on peut se permettre d’être optimiste et de ne chercher qu’une solution dite faible.

La force d’un plan-solution est liée à la notion d’historique, définie dans la sous-section précédente. On peut définir divers types de solution pour chaque ca- tégorie de problème de planification ; nous allons donner quelques exemples, qui nous seront particulièrement utiles dans la suite. Les solutions les plus simples sont les solutions faibles, qui ne requièrent que l’existence d’un historique [GT99].

Définition 2.1.11 (Solution faible). Soit P =⟨Σ, S0, G⟩ un problème de planifica-

tion avec plusieurs états initiaux et objectifs d’atteignabilité. Un plan π (resp. une politique δ) pour Σ est une solution faible de P si et seulement si pour tout s0 ∈ S0, il

(resp. elle) est exécutable depuis s0, et il existe un historique pour π (resp. δ) depuis

Pour qu’une politique soit une solution faible, il doit y avoir, dans la structure d’exé- cution, au moins un chemin depuis chaque état initial vers l’un des états-buts. Pour qu’elle soit forte, il ne doit en revanche exister aucun chemin ne menant pas à un état-but [CRT98b].

Définition 2.1.12 (Solution forte). Soit P =⟨Σ, S0, G⟩ un problème de planification

avec plusieurs états initiaux et objectifs d’atteignabilité. Une politique δ pour Σ est une solution forte de P si et seulement si elle est exécutable et si quel que soit s0

S0, tous les historiques pour δ depuis s0sont finis et arrivent dans un des états-buts

g∈ G.

Quand il s’agit d’un plan, une solution forte est appelée conformante.

Définition 2.1.13 (Solution conformante). Soit P =⟨Σ, S0, G⟩ un problème de pla-

nification avec plusieurs états initiaux et objectifs d’atteignabilité. Un plan π pour Σ, d’horizon n, est une solution conformante de P si et seulement si quel que soit

s0 ∈ S0, il est faisable depuis s0, et tous les historiques pour π de taille n et débutant

par s0 arrivent dans un des états-buts g∈ G.

On cherche généralement des solutions conformantes pour des problèmes entiè- rement non-observables, pour lesquels le plan doit être valide alors même que le système n’a aucune information sur son état courant [voir e.g. SW98]. Si le pro- blème est (partiellement) observable, ce type de solution est plutôt appelé contin-

gente [DHW94]. Pour finir, nous définissons un moyen terme entre les solutions

faibles et fortes [CRT98a].

Définition 2.1.14 (Solutionscycliques fortes). Soit P =⟨Σ, S0, G⟩ un problème de

planification avec plusieurs états initiaux et objectifs d’atteignabilité. Une politique

δ pour Σ est une solution cyclique forte de P is et seulement si elle est exécutable,

et si quel que soit s0 ∈ S0, tous les historiques finis pour δ depuis s0arrivent dans

un des états-buts g∈ G.

Insistons sur la différence avec les solutions fortes : il peut exister des historiques infinis, mais ils ne sont pas pris en compte. La seule exigence est que les historiques finis ne doivent pas arriver dans des états non buts. L’idée est que l’on considère que les boucles infinies sont très improbables — une solution cyclique forte permet donc d’atteindre l’objectif de manière « presque certaine ».