Title: Subsomptions et rparations de Web Services complexes Sminaire de l'equipe DREAM 24 mai 2006
1Subsomptions et réparations de Web Services
complexes Séminaire de l'equipe DREAM 24
mai 2006
- Laure Bourgois, FTRD, LIPN
- François Lévy, LIPN
- Alexandre Delteil, FTRD
2- 1. Problématique
- A. Vision abstraite des Web Services
- B. Problème subsomption pour réparer
- C. Différents types de pannes
- 2. Calcul de Subsomptions
- A. Représentation
- B. Calcul
- Règles
- Exemples
- Effet de bord de l'algorithme
- 3. Réparations
- A.Plusieurs types de réparation
- B. Heuristique
- C. Remplacement d'une action atomique
- D. Complexité d'une réparation libre
- 4. Travaux connexes
- 5. Conclusion
3Vision Abstraite des Web Services
- Vision du Web base de données informelle non
transactionnelle - - Effectuer des actions (réserver un billet
d'avion) - WEB SERVICE ACTIF
- - Extraire de l'information (afficher service
météo) - WEB SERVICE INFORMATIF
4Web Service Informatif
Web Service Informatif
Base de données sur le Web
Réponse
requête
nouveaux objets
5Web Service Actif
Base de données sur le Web
Web Service Actif
Change états d' éléments
6B. Problème Subsomption
- Un Web Service est-il plus général qu'un autre
? - sélection dans annuaire UDDI
7B. pour réparer des Web Services
- Réparer un Web Service complexe défectueux
- (au sens logique/ QoS, )
- remplacer par un
- - Web Service qui "fait mieux "
- - Web Service avec "moins de contraintes"
- Donner une (des) notion(s) de subsomption
utile(s) à la réparation de Web service
8C. Différent types de pannes dues au
caractère dynamique du Web
- Panne de réseau
-
- Panne de ressources les données n'existent plus
- Panne de programme n'a pas le comportement
prévu - (mauvaise QoS, fait autrement )
- Programme est mal assemblé (vérification)
- Contradiction des observations avec le modèle
d'éxécution
9Exécution normale du Web Service réservAchète
annulAchat réserv1
réservAchète
réserv1
annulAchat
Cdrés
Cdrés
Cdachet
Cdachet
Cdachet
Cdachet
Cdréser
Cdrés
Panne de ressource à l'étape 3 le CD n'est plus
réservable, déjà réservé
annulAchat
réservAchète
réserv1
Cdrés
Cdachet
Cdrés
Cdachet
Cdachet
Cdrés
Cdachet
Cdrés
Cdrés
Panne de programme réserv1 n'agit plus
réserv1
réservAchète
annulAchat
Cdachet
Cdrés
Cdachet
Cdrés
Cdrés
Cdachet
Cdrés
10 A.1 Paradigme action pour représenter un Web
Service simple
- - Action préconditions, effets (fragment
d'OWL-S) - gt représente un Atomic Process
- Plan ensemble structuré d'actions
- gt représente un Composite Process
- - SIMILAIRE à STRIPS, DETERMINISTE
11A. 2 Syntaxe de plan avec la famille PDL
- PDL Propositional Dynamic Logic
- Une famille de logiques modales pour raisonner
sur les systèmes dynamiques décrits par des états
et des actions (représentées par des relations
entre les états)
12logique modale dynamique propositionnelle
Cdachet
Cdrés
Constructeurs formule d'état ,
, , T, , fun
Constructeurs formule d'action
, , , any,
achète
annulAchat
achète
Cdrés
Cdachet
annulAchat
13Sémantique d'une logique PDL
Une structure de Kripke
avec une famille de
relation, telle que
14Exemple de modèle de Kripke
Cdachet
Cdrés
Cdachet
15A.3 Opérateur STRIPS modélisé en PDL
- Description d'une action atomique
- Préconditions et effets
achète
Cdachet
Cdrés
Cdrés
16Sémantique
si et seulement si il existe au plus
tel que
17Conditions pour le déterminisme
- Ensemble d'axiomes de persistance générés
automatiquement
18Fragment action théorie
axiomes de persistance
19Modèle canonique de
annulAchat
Cdrés
Cdrés
Cdachet
Cdachet
achète
achète
Cdrés
Cdrés
Cdachet
Cdachet
annulAchat
20Modèle canonique de
réserv1
Cdrés
Cdrés
Cdachet
Cdachet
réserv1
réserv2
réserv2
Cdrés
Cdrés
Cdachet
Cdachet
21Modèle canonique de
Cdrés
Cdrés
Cdachet
Cdachet
réservAchète
Cdrés
Cdrés
Cdachet
Cdachet
22A.4. Représentation subsomptionGarantie
Ensembliste une action complexe est
subsumée par si et seulement si à chaque
fois que l'on peut atteindre un état du monde par
l'action on aurait pu l'atteindre aussi par
l'action avec moins de conditions pour
s'exécuter Notation
Cdrés
Cdrés
Cdachet
achète
Cdachet
Cdachet
annulAchat
23B. Calcul Pourquoi ?
- modèle canonique a une taille de
- Générer états compactés (qui se projetent sur
ensemble d'états du modèle canonique) - Descriptions normalisées des plans en forme
normale disjonctive (théorème) - Correction et complétude (théorèmes)
- "Web Services Subsumption with a Specific
PDL", L. Bourgois, A. Delteil, F. Lévy, ICIW06,
IEEE Computer Society Press
24Règles d'expansion
Règles de propagation
25Règles d'expansion
Règles de propagation
Action atomiques
séquence
conjonction
Axiome de persistance
disjonction
26réserveAchète annulAchatréserve1
27réserveAchète annulAchatréserve1
Règles d'expansion Règle séquence
annulAchatréserve1
réserveAchète
28réserveAchète annulAchatréserve1
Règles d'expansion Règle séquence
réserveAchète
annulAchatréserve1
Règles d'expansion Règle séquence
réserveAchète
réserve1
annulAchat
29réserveAchète annulAchatréserve1
Règles d'expansion Règle séquence
réserveAchète
annulAchatréserve1
Règles d'expansion Règle séquence
réserveAchète
réserve1
annulAchat
Règles de propagation atomique
annulAchat
Cdréser
réserveAchète
réserve1
Cdréser
Cdacheté
Cdacheté
30réserveAchète annulAchatréserve1
Règles d'expansion Règle séquence
réserveAchète
annulAchatréserve1
Règles d'expansion Règle séquence
réserveAchète
réserve1
annulAchat
Règles de propagation atomique
annulAchat
Cdréser
réserveAchète
réserve1
Cdréser
Cdacheté
Cdacheté
Règles de propagation atomique
annulAchat
réserve1
Cdréser
Cdréser
Cdréser
réserveAchète
Cdréser
Cdacheté
Cdacheté
Cdacheté
Cdacheté
31Formule générée
32(réserve1 achète) (réserve2
achète)
33(réserve1 achète) (réserve2
achète)
règles disjonction
réserve1achète
réserve2 achète
34(réserve1 achète) (réserve2
achète)
règles disjonction
réserve1achète
réserve2 achète
règles séquence, conjonction
achète
réserve1
réserve2
achète
35(réserve1 achète) (réserve2
achète)
règles disjonction
réserve1achète
réserve2 achète
règles séquence, conjonction
achète
réserve1
réserve2
achète
règles atomique
Cdacheté
Cdréser
achète
réserve
réserve2
Cdréser
achète
36(réserve1 achète) (réserve2
achète)
règles disjonction
réserve1achète
réserve2 achète
règles séquence, conjonction
achète
réserve1
réserve2
achète
clash
règles atomique
règles atomique
Cdréser
réserve2
achète
Cdréser
réserve
Cdacheté
Cdréser
achète
37(réserve1 achète) (réserve2
achète)
règles disjonction
réserve1achète
réserve2 achète
règles séquence, conjonction
achète
réserve1
réserve2
achète
38(réserve1 achète) (réserve2
achète)
règles disjonction
réserve1achète
réserve2 achète
règles séquence, conjonction
achète
réserve1
réserve2
achète
règles atomique
achète
Cdréser
réserve2
réserve1
Cdacheté
Cdres
Cdres
achète
Cdacheté
Cdacheté
39Formule générée
40B.2 Effet de bord de l'algorithme
- Localisation de certains types de clashs
- Si on développe les c.s. avec des clashs
OBSERVATIONS - (initialement l'algorithme ne développait
pas une c.s. contenant un clash) - c.s./ c.s. finale
41Web service défectueux
Règlesd'expansion
Règles de propagation
clashs
clashs
42Sur une c.s. finale aire connexe de noeuds avec
change p
change
absence de contraintes sur p
43 bibliothèque de Web services
clash
défectueux ?
Heuristique pour remplacer
Web Service réparé
Web Service complexe
Méthodes de décisions pour les subsomptions
Algorithme Contraintes Observations
44A. Plusieurs types de réparations
- Création de nuds et de sommets autorisée OU NON
- Nombre d'opération de réparation BORNE ou non
- PREFERENCES SUR LES PROPRIETES ou non
45B. Heuristique pour une réparation limitée
- Algorithme de détection de contraintes
observations - Sélection d'une c.s. finale (moins de sommets et
moins d'arcs) apparement facilement réparable - Remplacements d'action atomiques bornés par la
taille du plan
46C. Remplacement d'une action atomique par une
autre action atomique
- Pour tout clash c portant sur dans une
c.s. - si alors
- sinon
- soit des sommets et une
action telle que - s'il existe telle que alors
47Plan défectueux réservAchète
annulAchatréserv2
réserv2
réservAchète
annulAchat
CDréser
CDacheté
Cdachet
CDacheté
Cdrés
CDacheté
Cdachet
Cdréser,
Cdréser
Cdrés,
Cdrés
CDréser
Cdrés
"réparé"
réservAchète
annulAchat
réserv1
Cdachet
Cdrés
Cdrés
Cdachet
Cdachet
Cdrés
Cdachet
Cdrés
SUBSOMPTION ENSEMBLISTE
48Exemple clash degré 4
49D. Complexité d'une réparation libre
- Pbe trouver une transformation d'une c.s.
finale d'un plan défectueux et prouver que chaque
plan remplaçant une partie du plan défectueux
subsume la partie qu'elle remplace. - NEXPTIME upper bound
- Preuve utilisation des circuits succincts
50Représentations de la c.s. finale à réparer
- Matrice d'adjacence
- k symboles dans le langage
- Taille de la matrice
- Codage exponentiel
- Circuit succinct représentation économique d'un
graphe avec sommets avec est un
circuit booléen avec - input gates.
- Codage polynomial
51Remarque
- Papadimitriou a prouvé que
- Des problèmes NEXP et EXP sont respectivement
des problèmes NP et P sur des inputs
"exponentiellement plus succincts". -
- C.Papadimitriou, Computational Complexity, 1994
52Preuve
- Une représentation d'une c.s. finale avec une
matrice d'adjacence - NP - trouver une transformation de la matrice
- - décider les subsomptions est un
problème polynomial - représentation avec des circuits succincts
- - "Réparation deWeb services composites" L.
Bourgois, A. Delteil, F. Lévy, - Conception des systèmes d'information et
services Web, INFORSID 06 - - "Finding Alternatives Web Services to Parry
Breakdowns" L. Bourgois STAIRS (ECAI) 06
534. Travaux connexes (1)
- Narayan McIlraith DAML-S
- réseaux Pétri modélisent control flow
- propriété bon fonctionnement model
checking - Teije, Harmelen Wielinga
- Web service plan abstrait à instancier
- paramètres à régler reconfiguration
- Classer Web services selon degré
reconfigurabilité
544. Travaux connexes (2)
- Cremene, Riveill, Martel, Loghin Miron
- Diagnostique des composants à changer
- Réglage par ajout et retrait de composants
- McIlraith Son instanciation patron par appel
fonction externe - Sirin Parsia paradigme planification
hiérachique
554. CONCLUSIONS
- implémentation réparation (en cours)
- localisation des clashs
(achevée) - En cours
- Modélisation des paramètres des Web services avec
une logique dynamique du 1er ordre en vue
d'appliquer l'algorithme gt subsomption
non-décidable - mais heuristique réparation
- Possibilité
- - combinaison avec des algo ATMS pour
diagnostiquer l'origine des clashs