Poster R´esum´e Personnages Bande-annonce Dates {o,m} {b} {b} {b} {m} {b} {b} {o} {m} {o}
(a) Graphe de relations temporelles de Allen.
Ci,j Poster R´esum´e Personnages Bande-annonce Dates Poster {e} {o,m} {b} {b} {b}
R´esum´e {oi,mi} {e} {m} {b} {b}
Personnages {bi} {mi} {e} {o} {m}
Bande-annonce {bi} {bi} {oi} {e} {o}
Dates {bi} {bi} {mi} {oi} {e}
(b) Matrice correspondant au graphe de relations de la figure 8.1(a).
Fig. 8.1 – Repr´esentation d’un graphe de relations temporelles sous forme matricielle.
Exemple 25 Dans la table 8.1(b) :
C1,2=C2−,11={mi}−1={m}
C0,1 =C1−,01 ={oi, mi}−1 ={oi−1, mi−1}={o, m}
Dans la section suivante, nous montrons, `a l’aide d’un algorithme, comment v´erifier qu’une matrice de relations est consistante.
8.3 Consistance d’un graphe de relations
Avant de pouvoir engendrer des solutions d’adaptation, il est n´ecessaire de pouvoir tester la consistance d’une matrice de relations.
D´efinition 25 (Consistance d’une matrice de relations) Une matrice de relations est dite consistante si et seulement si un sc´enario correspondant `a cette matrice peut ˆetre produit. Dans le cas contraire, on dira que la matrice de relations est inconsis-tanteet que par cons´equent aucun sc´enario ne pourra satisfaire l’ensemble des relations consid´er´ees.
Dans l’exemple suivant nous pr´esentons deux matrices de relations temporelles : une consistante et l’autre inconsistante.
CHAPITRE 8. ALGORITHME D’ADAPTATION S´EMANTIQUE DE DOCUMENTS MULTIM´EDIA
Exemple 26 Soient les matrices de relations temporelles C1 et C2 suivantes :
C1 Poster R´esum´e Personnages Poster {e} {o,m} {b}
R´esum´e {oi,mi} {e} {m}
Personnages {bi} {mi} {e}
C2 Poster R´esum´e Personnages Poster {e} {o,m} {bi}
R´esum´e {oi,mi} {e} {m}
Personnages {b} {mi} {e}
La matrice de relationsC1 est consistante car le sc´enario temporel suivant satisfait cette matrice :
Poster
R´esum´e Personnages
La matrice de relations C2 est inconsistante car aucun sc´enario temporel ne satis-fait l’ensemble des relations consid´er´ees dans cette matrice.
Dans ce qui suit, nous montrons, `a l’aide d’un algorithme, comment tester la consistance d’une matrice de relations. Nous appliquons cet algorithme sur des matrices de relations temporelles bas´ees sur l’alg`ebre d’intervalles de Allen.
Pour permettre de combiner des connaissances temporelles exprim´ees par des re-lations de Allen sur les intervalles, deux op´erations sont d´efinies sur les ´el´ements de l’ensemble 2A13 :
– L’intersection∩de deux ´el´ements de l’ensemble 2A13 est un ensemble d’´el´ements de 2A13. Par exemple,{b, m} ∩ {m, o}={m}.
– L’union ∪ de deux ´el´ements de l’ensemble 2A13 est un ensemble d’´el´ements de 2A13. Par exemple,{b, m} ∪ {m, o}={b, m, o}.
On d´efinit ´egalement une loi de composition ⊗, associative et non-commutative. Son ´el´ement neutre est l’´egalit´e (c’est-`a-dire,{equals} en Allen).
En effet, `a partir de deux relations r1 et r2 de 2A13, il est possible d’obtenir une nouvelle relation r3(x, z) =r1(x, y)⊗r2(y, z) qui fait aussi partie de 2A13. En d’autres termes, cette loi permet d’inf´erer `a partir des relations r1(x, y) et r2(y, z) la relation r1⊗r2(x, z).
Dans certains cas, comme le montre la table 8.1 de composition sur l’alg`ebre d’in-tervalles de Allen, la relationr3 est disjonctive car la connaissance der1 etr2 ne donne pas toujours assez d’information pour que la relationr3 soit suffisamment pr´ecise.
8.3. CONSISTANCE D’UN GRAPHE DE RELATIONS
r1⊗r2 b m d o s f e
b b b b,m,d,o,s b b b,m,d,o,s b
m b b d,o,s b m d,o,s m
d b b d b,m,d,o,s d d d
o b b d,o,s b,m,o o d,o,s o
s b b d b,m,o s d s
f b m d d,o,s d f f
e b m d o s f e
Tab. 8.1 – Loi de composition de l’alg`ebre d’intervalles de Allen.
Exemple 27 Soient les relations temporelles r1 = {m} et r2 = {d}. La relation de composition r3 =r1⊗r2 ={d, o, s}. La relation r3 est disjonctive car celle-ci ´equivaut aux relations de Allen during (d) ou overlaps (o) ou starts (s).
Lorsquer1 etr2 sont elles-mˆemes disjonctives, l’algorithme de calcul de la relation de compositionr3 est tr`es simple. En voici son principe :
1. D´ecomposerr1 etr2 en une disjonction de relations atomiques.
2. D´evelopper tous les termes en appliquant la distributivit´e de ∩par rapport `a ∪. On obtient ainsi des clauses qui sont des paires conjonctives.
3. Calculer grˆace `a la table 8.1 le r´esultat de chaque paire conjonctive.
4. Les conjonctions ayant disparu, composer les clauses disjonctives en une seule relation compos´ee.
Nous proposons dans l’exemple suivant une application de cet algorithme.
Exemple 28 Soient les relations temporelles disjonctives r1 ={m, f} etr2 ={d, m}. Suivant l’algorithme pr´esent´e pr´ec´edemment :
1. r1 ={m} ∨ {f} et r2 ={d} ∨ {m}.
2. r3 = ({m} ∧ {d})∨({m} ∧ {m})∨({f} ∧ {d})∨({f} ∧ {m}). 3. r3 ={d, o, s} ∨ {b} ∨ {d} ∨ {m}.
4. r3 ={d, o, s, b, m}.
Allen [1] propose un algorithme qui permet la d´etection d’incoh´erences dans une matrice de relations temporelles. Nous illustrons celui-ci par l’algorithme 1 et le nom-mons TestConsistance. Son principe est le suivant :
– `a partir de la table 8.1 de composition, on calcule toutes les relations induites d’une matrice de relations et on les confronte `a ses relations existantes `a l’aide d’une intersection.
• Si une intersection est vide, on d´etecte une incoh´erence, ce qui signifie que la matrice de relations est inconsistante.
• Sinon on remplace les relations existantes par les valeurs des intersections. – L’algorithme propage ces nouvelles relations par application d’une autre s´erie
CHAPITRE 8. ALGORITHME D’ADAPTATION S´EMANTIQUE DE DOCUMENTS MULTIM´EDIA
Algorithme 1: TestConsistance
Entr´ees: Une matrice de relations Ci,j avec 0≤i < n et 0≤j < n.
Sorties: Une matrice de relations ´epur´ee ou une d´etection d’inconsistance.
Donn´ees : Q une pile.
pouri, j∈[0, n−1], i6=j faire
Q← {i, j};
tant queQ6=∅ faire
{i, j} ←D´epiler(Q);
pourk∈[0, n−1], k6=i, j faire
Ci,k′ ←(Ci,j⊗Cj,k)∩Ci,k; Ck,j′ ←(Ck,i⊗Ci,j)∩Ck,j;
siCi,k′ ou Ck,j′ =⊥alors STOP;
siCi,k′ 6=Ci,k alors
Empiler{i,k} dans Q; Ci,k ←Ci,k′ ;
siCk,j′ 6=Ck,j alors
Empiler{k,j}dans Q; Ck,j←Ck,j′ ;
Cet algorithme permet donc de pr´eciser de plus en plus la matrice de relations en ´eliminant des disjonctions. ´Etant donn´e que le nombre de relations et la taille de la matrice sont finis, et que cette matrice, repr´esentant un graphe de relations, est born´e inf´erieurement par le graphe minimal, l’algorithme s’arrˆete toujours :
– soit parce qu’il n’y a plus de relations apportant une information nouvelle. – soit parce qu’une relation compos´ee devient vide, auquel cas on a d´etect´e
l’in-coh´erence de la matrice de relations.
Cet algorithme polynomial n’est malheureusement pas complet. Il l’est seulement lorsque toutes les relations de la matrice sont atomiques. En effet, les r´esultats pr´esent´es dans [96] ont montr´e que cet algorithme pouvait ne pas d´etecter certaines incoh´erences et que le probl`eme d’existence d’une solution avec l’alg`ebre sur les intervalles de Al-len est NP-complet. Par cons´equent, pour rechercher une solution des m´ethodes de recherche exhaustives sont utilis´ees.
L’algorithme 2, pr´esent´e dans [80], propose une telle m´ethode de recherche exhaus-tive. Celui-ci utilise l’algorithme TestConsistance en guise de m´ethode de propagation de contraintes ceci afin de r´eduire l’espace de recherche. Nous nommons cet algorithme Satisfiabilit´e.
N´eanmoins, la recherche d’une solution consistante et par cons´equent la v´erification de la satisfiabilit´e de la matrice de relations, via cet algorithme, est de complexit´e exponentielle. C’est pour cela que de nombreux travaux tentent d’am´eliorer l’efficacit´e de cet algorithme en offrant diverses possibilit´es d’optimisations et d’heuristiques telles que l’ordre d’instanciation des variables ou des relations [94], le choix de l’ensemble D´ecoupe [80], les coupures possibles ´evitant certaines explorations [33]. . .