• Aucun résultat trouvé

3.2 Adaptation dynamique d’une application compos´ ee

3.3.1 M´ ecanismes de composition semi-automatique

La plupart des m´ecanismes de composition d’application pr´esent´es dans la section 3.2 sont des m´ecanismes compl`etement automatiques. Dans ces syst`emes, il est ainsi uniquement possible d’impliquer un utilisateur lors de la d´efinition initiale de l’ap- plication `a composer. Ce type d’implication est limit´e car il ne prend pas en compte l’impr´ecision et l’´evolution des besoins.

Cette section pr´esente des approches alternatives qui s’int´eressent `a la composi- tion semi-automatique d’applications. Cette section pr´esente tout d’abord des travaux portants sur la composition semi-automatique de services Web. Elle s’int´eresse en- suite plus g´en´eralement `a des approches de planification interactive, qui peuvent aussi s’appliquer `a la composition dynamique d’application.

a) Composition semi-automatique de services Web

Dans le cadre des services Web, Sirin et al. (Sirin et al., 2004) d´efinissent les prin- cipes de fonctionnement d’un syst`eme de composition semi-automatique. Ce syst`eme est fond´e sur la construction graduelle d’une orchestration de services Web. Dans cette approche, chaque nouveau service Web est ajout´e successivement, et en suivant plu- sieurs ´etapes :

1. d´efinition abstraite de la fonctionnalit´e recherch´ee.

2. d´ecouverte : le syst`eme d´ecouvre tous les services correspondant `a la description abstraite de la fonctionnalit´e recherch´ee (par exemple, un service de r´eservation de transport).

3. filtrage : parmi les services d´ecouverts, certains doivent ˆetre filtr´es s’ils ne cor- respondent pas `a la tˆache (par exemple, s’il n’offre pas de transport pour la destination voulue) ou s’ils violent une pr´ef´erence de l’utilisateur (par exemple, un prix maximum).

4. compatibilit´e : parmi les services restants, seuls peuvent ˆetre utilis´es ceux qui sont compatibles avec les services d´ej`a s´electionn´es pour accomplir d’autres ´

etapes de l’orchestration.

Chacune des ´etapes peut ˆetre en partie automatis´ee grˆace `a l’utilisation de descrip- tion s´emantique des services Web (exprim´e avec OWL-S). En particulier, les incom- patibilit´es sont d´etermin´ees `a l’aide des informations contenues dans les descriptions et de m´ecanismes de raisonnement sur les ontologies. La description s´emantique est ainsi utilis´ee pour filtrer automatiquement certaines possibilit´es, mais ne s´electionne pas automatiquement un seul service possible. Cette approche a l’avantage d’´eviter de faire l’hypoth`ese que les descriptions du service et de la fonctionnalit´e recherch´ee sont suffisamment expressives pour effectuer la s´election de mani`ere automatique et d´eterministe.

b) Planification interactive

De nombreuses solutions pour la composition automatique d’application sont ba- s´ees sur des techniques de planification. Dans ce domaine, des travaux ´etudient par ailleurs la probl´ematique de planification interactive, dans laquelle un syst`eme de pla- nification interagit avec un utilisateur au cours de son fonctionnement. Dans ces ap- proches, un utilisateur (g´en´eralement expert d’un domaine) est aid´e plutˆot que rem- plac´e par le syst`eme automatique.

La n´ecessit´e d’int´egrer des m´ecanismes qui permettent un contrˆole personnalis´e sur la planification est notamment apparue lors de l’application de techniques de planifica- tion issues de l’intelligence artificielle `a des probl`emes r´eels. O-Plan (Drabble & Tate,

1996) est un exemple de syst`eme de planification utilis´e pour des applications r´eelles, en particulier dans le domaine militaire. Afin de r´epondre `a la complexit´e et `a la criti- cit´e des d´ecisions, O-Plan peut impliquer un utilisateur (expert) dans le m´ecanisme de planification. Pour cela, O-Plan propose des alternatives `a l’utilisateur lorsqu’il n’est pas en mesure de prendre seul les d´ecisions. Le fonctionnement de O-Plan est fond´e sur un r´eseau de tˆaches hi´erarchiques (HTN), qui permet de d´ecomposer le probl`eme, et sur la d´efinitions de contraintes portants sur les actions choisies.

Nareyek et al. (Nareyek et al., 2005) soulignent l’int´erˆet de l’utilisation de m´eca- nismes de satisfaction de contraintes pour l’application des syst`emes de planification `a des probl`emes r´eels. En effet, de nombreux aspects des probl`emes r´eels sont difficiles `a mod´eliser en utilisant les formalismes manipul´es par les algorithmes de planification, mais peuvent ˆetre mod´elis´es plus simplement dans les formalismes des probl`emes de satisfaction de contraintes (Nareyek et al., 2005). Nareyek et al. d´etaillent ainsi plu- sieurs travaux dans lesquels tout ou partie d’un probl`eme de planification est mod´elis´e sous la forme d’un graphe de contraintes. Ils notent que l’utilisation d’une mod´elisa- tion bas´ee sur les graphes de contraintes est particuli`erement int´eressante pour g´erer l’interactivit´e. En particulier, il existe des techniques d’explication des m´ecanismes de raisonnement (Sqalli & Freuder, 1996) et des m´ecanismes de gestion de graphes de contraintes dynamiques (Verfaillie & Schiex, 1994), grˆace auxquels un graphe de contraintes peut-ˆetre modifi´e de mani`ere incr´ementale et refl´eter ainsi un changement du probl`eme de planification. Par ailleurs, cette approche a aussi des avantages pour favoriser la gestion de l’impr´ecision, de la distribution et la facilit´e d’utilisation.

Les approches par propagation de contraintes constituent une cat´egorie particuli`ere de techniques de planification interactive reposant sur une formalisation sous forme de probl`eme de satisfaction de contraintes. Ces techniques consistent `a construire la solution d’un probl`eme complexe de mani`ere incr´ementale, en introduisant progressi- vement les contraintes du probl`eme et en interagissant avec l’utilisateur pour les r´e- soudre. Lamma et al. (Lamma, 1999) proposent ainsi un framework pour les probl`emes de satisfaction de contraintes interactifs (ICSP, interactive constraint satisfaction pro- blems) qui entremˆelent l’acquisition de valeurs pour chaque variable et la v´erification des contraintes. Herakles II (Ambite et al., 2005) est un exemple de syst`eme fond´e sur un r´eseau de contraintes conditionnelles et sur la propagation de contraintes, qui combine la planification, l’interaction et l’acquisition d’information.

c) Synth`ese

Int´erˆets Dans le cadre de la composition d’applications, l’utilisation d’une ap- proche de planification interactive est particuli`erement int´eressante pour permettre une meilleure personnalisation du fonctionnement. L’utilisateur peut en effet non seule- ment d´efinir le besoin initial, comme dans le cas de la composition, mais il est aussi impliqu´e dans certaines d´ecisions. Cela lui garantit un contrˆole appropri´e sur le fonc- tionnement de l’application produite, en laissant le syst`eme r´esoudre automatiquement certains aspects plus pr´ecis. En particulier, lorsque des descriptions s´emantiques des fonctionnalit´es sont disponibles, un syst`eme semi-automatique peut prendre en charge la r´esolution de l’interop´erabilit´e entre les fonctionnalit´es.

Inconv´enients Un inconv´enient des approches de planification interactive concerne la robustesse de fonctionnement. En effet, le syst`eme ne mod´elise pas n´ecessairement le besoin auquel l’application r´epond et il lui est donc impossible de s’adapter dy- namiquement pour fournir l’application souhait´ee lorsque l’environnement change. La d´el´egation est ainsi relativement faible et le fonctionnement du syst`eme peut n´ecessiter de fr´equentes interventions de l’utilisateur, ce qui augmente sa charge cognitive.

3.3.2

Implication des utilisateurs dans un syst`eme multi-