A propos de requêtes possibilistes adressées à des bases de données possibilistes Laurence Duval IRISA/CREST-ENSAI Rennes Olivier Pivert IRISA/ENSSAT Lannion
Introduction(1) Nécessité de traiter des données mal connues dans de nombreux domaines Représentation de l’imprécision dans le cadre de la théorie des possibilités Valeurs que peut prendre une variable : {1/a1 + …+ n/an } les distributions sont normalisées : i tel que i= 1 Valeurs que peut prendre une variable : {1/a1 + …+ n/an } Valeurs que peut prendre une variable : {1/a1 + …+ n/an } les distributions sont normalisées : i tel que i= 1 i [0,1] ai, valeurs possibles de la variable Exemple t.âge = {1/35 + 0.7/36 + 0.3/34} BDA'2002
Introduction (2) Bases de données possibilistes image #i t_a date avion lg vt i1 1/a2 + 0.5/a1 1/d3 + 0.7/d1 a1 20 1000 i2 1/a3 + 0.8/a2 + 0.5/a4 + 0.2/a1 1/d2 + 0.2/d3 a2 25 1200 a3 800 i 3 1/a3 + 0.3/a4 d1 a4 Limites de l’extension des requêtes usuelles Complexité des calculs Difficulté d’interprétation du résultat constitué d’un ensemble de relations. Nouveau type de requêtes Requêtes possibilistes : t=<d1,20> Q = (image avion)[date,lg] t_a BDA'2002
Introduction (3) L’objectif est d’évaluer le degré d’appartenance du tuple t à la solution d’une requête usuelle (Q) Plus de problème d’interprétation du résultat t_a Problème d’efficacité Une seule réponse mais son calcul est a priori coûteux (64 mondes) t=<d1,20> Q = (image avion)[date,lg] 0.5 possible BDA'2002
Comparaison des deux modes d’évaluation Monde 1 Monde n resultat 1 resultat n Q maxi[1..n] s.t. t resultati P(Mondei) Degré de possibilité de t resultat(Q) Relations Initiales Évaluation compacte de Q BDA'2002
Différentes étapes Étape 1 : suppression des attributs inutiles Étape 2 : élimination des tuples ne pouvant pas générer t Étape 3 : évaluation compacte de la requête Q Étape 4 : calcul du degré final Degré de possibilité de t resultat(Q) Relations Initiales Relations possibilistes restreintes Étapes 1 et 2 maxti r degré(ti) Relation possibiliste solution de Q : r Q compacte BDA'2002
Étape 3 : évaluation compacte de Q Définition d’une procédure d’évaluation compacte pour : La sélection La jointure Limite des requêtes possibilistes Pas d’utilisation d’une même table plusieurs fois dans la requête Q BDA'2002
Sélections et jointures Comparaison entre un attribut et une constante Comparaison entre deux attributs Jointure BDA'2002
Sélection 1 : exemple Comparaison entre un attribut et une constante sel(r, t_a a2) image #i t_a date a2 1/d3 + 0.7/d1 i1 1/a3 + 0.8/a2 + 0.5/a4 + 0.2/a1 1/d2 + 0.2/d3 i2 d1 1/a3 + 0.3/a4 i 3 BDA'2002
Sélection 2 : exemple Comparaison entre deux attributs sel(r, t_a1 t_a2 ) #image t_a1 t_a2 1 2 {1/a1 + 1/a2 + 0.7/a3} {0.2/a2 + 0.8/a3+ 0.2/a4} {0.8/a2 + 0.2/a3} {0.6/a1 + 0.1/a4} #image t_a1 t_a2 1 2 {1/a1 + 1/a2 + 0.7/a3} {0.2/a2 + 0.8/a3+ 0.2/a4} {0.8/a2 + 0.2/a3} {0.6/a1 + 0.1/a4} BDA'2002
Sélection 2 : exemple Comparaison entre deux attributs sel(r, t_a1 t_a2 ) #image t_a1 t_a2 1 2 {1/a1 + 1/a2 + 0.7/a3} {0.2/a2 + 0.8/a3+ 0.2/a4} {0.8/a2 + 0.2/a3} {0.6/a1 + 0.1/a4} #image t_a1 t_a2 1 2 {1/a1} {1/a2 } {0.7/a3} {0.2/a2} {0.8/a3} {0.2/a4} {0.8/a2 + 0.2/a3} {0.2/a3} {0.8/a2 } {0.6/a1 + 0.1/a4} {0.6/a1} BDA'2002
Relations restreintes Relations initiales Degré Exemple Relations restreintes Q’ image #i t_a date avion lg Age vt i1 1/a2 + 0.5/a1 1/d3 + 0.7/d1 a1 20 10 1000 i2 1/a3 + 0.8/a2 + 0.5/a4 +0.2/a1 1/d2 + 0.2/d3 a2 25 5 1200 a3 12 800 i 3 1/a3 + 0.3/a4 d1 a4 11 Q = (image avion {vt<1100})[date,lg]) t=<d3,20> t_a t_a date lg vt Exemple permettant de traiter toutes les étapes. 1000 20 1/d3 0.5/a1 Degré de possibilité = 0.5 1000 20 0.2/ d3 0.2/a1 800 20 0.2/ d3 1/a3 BDA'2002
Conclusion (1) Problèmes pour l’utilisation des requêtes usuelles sur des bases de données possibilistes Complexité des calculs Difficulté d’interprétation du résultat qui est un ensemble de relations Idée : requêtes possibilistes Pas de problème d’interprétation du résultat Diminution de la complexité des calculs Utilisation des propriétés du tuple t Pas de passage à l’ensemble des mondes BDA'2002
Conclusion (2) : extensions Ajouter de nouveaux opérateurs Union et intersection Différence ? Utilisation multiple d’une même relation dans Q Implémenter sur un SGBD du marché BDA'2002
Complexité : exemple 2 * 2 * 4 * 2 * 2 = 64 mondes possibles Min( 1 1200 25 a2 20 a4 d1 1/a3 + 0.3/a4 i 3 800 a3 1/d2 + 0.2/d3 1/a3 + 0.8/a2 + 0.5/a4 + 0.2/a1 i2 1000 a1 1/d3 + 0.7/d1 1/a2 + 0.5/a1 i1 vt lg t_a avion date #i image 2 * 2 * 4 * 2 * 2 = 64 mondes possibles i3 i2 i1 date t_a #i a2 d1 Min( 1 , 0.7 , 0.5 , 1 , 1 )= 0.5 a4 d2 a3 d1 BDA'2002