La sottoclasse di IA: Ord-Horn Bernhard Nebel: Solving Hard Qualitative Temporal Reasoning Problems: Evaluating the Efficiency of Using the ORD-Horn Class. ECAI 1996 : 38-42 Bernhard Nebel, Hans-Jürgen Bürckert : Reasoning about Temporal Relations: A Maximal Tractable Subclass of Allen's Interval Algebra. J. ACM 42 (1): 43-66 (1995)
68
Embed
La sottoclasse di IA: Ord-Horn Bernhard Nebel: Solving Hard Qualitative Temporal Reasoning Problems: Evaluating the Efficiency of Using the ORD-Horn Class.
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
La sottoclasse di IA: Ord-Horn
Bernhard Nebel: Solving Hard Qualitative Temporal Reasoning Problems: Evaluating the Efficiency of Using the ORD-Horn Class. ECAI 1996: 38-42
Bernhard Nebel, Hans-Jürgen Bürckert: Reasoning about Temporal Relations: A Maximal Tractable Subclass of Allen's Interval Algebra. J. ACM 42(1): 43-66 (1995)
SAc ↔ insiemi di ORD-clauses unitarie in cui quando a≠b e’ nell’insieme c’e’ anche a≤b oppure b≤a
ORD-Horn caluses ORD-Horn clausola: e’ una ORD-clausola con
al piu’ un letterale positivo (a=b oppure a≤b) e un numero arbitrario di letterali negativi (a≠b) Esempi a=b v c≠b v e≠f ORD-Horn a≤b v c≠b v e≠f ORD-Horn a≠b v c≠b v e≠f ORD-Horn a=b v c=b v e≠f ORD ma non ORD-Horn a≰b v c≠b v e≠f non ORD e (quindi) non ORD-Horn Notare che ORD-Horn clauses ⊂ ORD clauses
La sottocalsse OH di IA OH ⊂ IA, e tale che r ∈ OH se ha una
forma in clausole, p(r), che e’ un insieme di ORD-Horn clauses
Esempio: I1 (f-1,o,s) I2 ∈ OH
I2- ≤ I2+,
O={I1- ≤ I1+,
I1- ≤ I2-,
I1- ≤ I2+,
I2- ≤I1+,
I1+ < I2+,
I2- ≠ I2+,
I1- ≠ I1+,
I2- ≠ I1+,
I1+ ≠I2+,
( I1+ ≠ I2+ v I1- ≠ I2- ) }
I2I-2 I+2
I1
I+1I-1 I-1
I1
I+1I-1 I+1
Notare che I1 (f-1,o,s) I2 ∉ SA
OH e SA Ogni relazione in SA e’ anche in OH
perche’ la sua forma in clausole e fatta di clausole unitarie
L’inclusione e’ stretta. L’esempio nella slide precedente, I1 (f-1,o,s) I2 , e’ in OH , ma non in SA
Riassumendo
IA
OH SA
SAc213=8192
868~10% 188~2%
88~1%Atomic 13
Caratteristiche di OH
OH contiene 868 relazioni piu’ del 10% di IA Inoltre le clausole che non sono unitarie
sono binarie (cioe’ riguardano solo due intervalli) e contengono letterali solo del tipo (X- op1 Y-) oppure (X+ op2 Y+) con opi ∈{≤,=,≠}
p v p-1∉OH
Teoria PO La teoria PO e’ un insieme di assiomi che
caratterizzano “≤” come ordinamento parziale
∀x,y : x ≤ y and y ≤ z x ≤ z (transitivita’) ∀x: x ≤ x (riflessivita’) ∀x,y : x ≤ y and y ≤ x x = y (Antisimmetria) ∀x,y : x = y x ≤ y ∀x,y : x = y y ≤ x
Questa teoria ammette molti modelli, cioe’ interpretazioni di x, y, z, ≤, =,… che soddisfano gli assiomi
ORD-caluses e teoria PO Th. Dato un insieme di ORD-clauses O, allora O e’ ℝ-soddisfacibile
sse O PO e’ soddisfacibile
Un ℝ-modello di O, e’ un assegnamento di numeri reali i quali soddisfano gli assiomi di PO
supponiamo di avere un modello, F, OPO. Devo ricavarne un ℝ-modello di O. Da PO possiamo dedurre che “=“ riflessiva, transitiva e simmetrica Quindi F/= (F modulo =) e’ ancora un modello di O che soddisfa PO e dunque e’ ordinato parzialmente da ≤. Ogni ordinamento parziale puo’ essere linearizzato ad un ordinamento
totale che puo’ poi essere mappato nei reali. In tale linearizzazione le formule atomiche ORD (a=b), (a ≠b) e (a≤b) di O sono ancora soddisfatte, quindi F puo’ essere cosi’ trasformato in un ℝ-modello di O.
Notare che il Th. vale solo per formule atomiche di tipo ORD, perche’ se ammettiamo O={(a≰b), (b≰a)} allora O non ha un ℝ-modello ma OPO ha come modello un qualunque ordinamento parziale in cui a e b sono incomparabili
HornSAT e’ polinomiale Testare se un insieme di clausole di Horn e’
soddisfacibile e’ lineare nel numero di totale dei letterali presenti nelle clausole
Se non ci sono clausole unitarie allora banalmente soddisfacibile: Assegnare falso a tutte le variabili Infatti ogni clausola contiene almeno un letterale negato
Altrimenti, Unit propagation: Scelgo una clausola unitaria con un solo letterale (e.g.
a≤b) Sostituisco le clausole di tipo: (c v a≥b)^( c v a≠b) con c Elimino le clausole che contengono a≤b
La formula e’ soddisfacibile se alla fine non rimango con un letterale e la sua negazione
ISAT(OH) e’ polinomiale PO e’ una teoria di Horn perche’ contiene solo clausole di
Horn Denotiamo con POO gli assiomi di PO instanziati agli estremi
che compaiono in O Allora usando il Th di Herbrand, OPO e soddisfacibile sse
lo e’ OPOO Dato un insieme di relazioni X ⊆ OH, allora la forma in
clausole p(X) e’ un insieme di clausole ORD-Horn. p(X) puo’ essere ottenuta in tempo lineare nel numero di
relazioni in X PO p(X), cioe’ l’insieme di clausole Horn ottenute instanziando
PO ai punti in p(X) puo’ essere calcolato in tempo lineare in X
p(X) e’ ℝ-soddisfacibile sse p(X) PO p(X) e’ soddisfacibile Ma p(X) PO p(X) e’ un insieme di clausole di Horn ed e’
polinomiale testarne la soddisfacibilita’, lineare nel numero di relazioni in X, quindi quadratico nel numero di intervalli
OH e Path consistency(1) Path consistency su OH risoluzione unitaria
positiva, cioe’ solo di clausole unitarie e positive Assunzione di minimalita’: supponiamo che,
data una relazione r ∈ OH, ogni clausola in p(r) sia minima cioe’: non esiste nessuna clausola con un sottoinsieme di letterali derivabile da p(r)
Assunzione di forma esplicita :a,b,c estremi di intervalli Se (a≤b),(b≤c)∈p(r) (a ≤c)∈p(r) transit. (a≤b),(b≤a)∈p(r) ↔ (a =b)∈p(r) antisimmetria (a=b)∈p(r) ↔ (b=a)∈p(r) (a≤a)∈p(r) riflessivita’
OH e Path consistency(2) Sia R ⊂OH un insieme di relazioni path consistent e
consistente (cioe’ Ø ∉ R). Allora non e’ possibile derivare con la risoluzione positiva unitaria nuove clausole unitarie da p(R)POp(R)
Una nuova clausola unitaria U puo essere derivata solo se esiste una clausola non unitaria C ∈ p(R)POp(R) e un insieme di clausole unitarie positive D ⊆ p(R)POp(R) tale che per tutti i letterali in C tranne U esiste un complementare positivo in D. Si fanno tutti casi possibili per C
Istanza dell’assioma di transitivita’ Istanza dell’assioma di antisimmetria cioe’ di
(x≤y) and (y≤x) y=x, scritto come clausola non unitaria: (not(x≤y) v not(y≤x) v (x=y))
Cioe’ C= (not(a≤a) v not(a≤a) v (a=a)) ma se D={(a≤a),(a≤a)} allora con la
risoluzione derivo (a=a) che non e’ una clausola nuova perche e’ gia’ in p(R) per lassunzione di forma esplicita …oppure
C= (not(a≤b) v not(b≤a) v (a=b)) ma se D={(a≤b),(b≤a)} allora con la risoluzione derivo (a=b) che non e’ una clausola nuova perche e’ gia’ in p(R) per l’assunzione di forma esplicita …oppure
Istanza dell’assioma x=y x≤y oppure y≤x C in p(R)
ISAT(OH) e’ polinomiale Sia R ⊂OH un insieme di relazioni path
consistent. Allora R e’ soddisfacibile sse Ø ∉ R. Ovvia. Se contiene Ø non e’ soddisfacibile se Ø ∉ R allora la clausola vuota non
appartiene a p(R). Quindi non e’ possibile derivare nessuna causola unitaria positiva. Per la completezza di refutazione della risoluzione di clausole positive unitarie p(R)POp(R) e’ soddisfacibile (ha un modello). Per il teorema precedente anche R ha un modello.
Dal teorema per testare la soddisfacibilita’ e’ sufficiente applicare path consistency o(n3)
OH e path consistency Notare che i risultati precedenti si basano
sul fatto che OH e’ chiuso rispetto all’inversione, composizione e intersezione
Quindi, se applico path consistency a un sottoinsieme S di OH ottengo un (possibilmente) nuovo insieme S’⊆OH
MLP(OH) e’ polinomiale ISAT(OH) path consistency O(n3) ISATMLP. Assumiamo un oracolo che
dato un problema di Allen dice se e’ consistente o no. Per ogni vincolo (O(n2)) chiediamo all’oracolo se la rete in cui quel vincolo e’ sostituito con una sola delle sue relazioni ammesse e’ consistente (O(13)).
Ora sappiamo che l’oracolo ci mette ogni volta O(n3)
Quindi MLP(OH) O(13n2) x O(n3)=O(n5)
Riassumendo Sac ⊂ SA ⊂ OH ISAT(SAc)
Con path consistency O(n3) Oppure CSPAN O(n2)
ISAT(SA) CSPAN O(n2)
ISAT(OH) Path consistency O(n3)
MLP(SAc) Path consistency O(n3)
MLP(SA) Feasible O(n4)
MLP(OH) Path-consistency + oracolo O(n5)
Relazioni sentinella1. X (d,d-1,o-1,s-1,f) Y esprime il fatto che X interseca
strettamente Y e comincia dopo, oppure, finisce dopo Y1. p ((d,d-1,o-1,s-1,f))={(X-<X+, Y-<Y+, X-<Y+,(X+>Y-), (X->Y- v
X+>Y+)}
2. X (d-1,o,o-1,s-1,f-1) Y esprime il fatto che X interseca strettamente Y e comincia prima, oppure, finisce dopo Y1. p ((d,d-1,o-1,s-1,f))={(X-<X+, Y-<Y+, X-<Y+,(X+>Y-), (X-<Y- v
X+>Y+)} 3. (p,d-1,o,m,f-1) ∈ SAc⊆OH
1. p ((p,d-1,o,m,f-1))={(X-<X+, Y-<Y+, X-<Y-, X-<Y+)}
Se N1={(p,d-1,o,m,f-1), (p,d,o,m,s), (d,d-1,o-1,s-1,f)} ⊆ S allora ISAT(S) NP-completo
Se N2={(p,d-1,o,m,f-1), (p,d,o,m,s), (d-1,o,o-1,s-1,f-1)} ⊆ S allora ISAT(S) NP-completo
Se OH⊂S allora o (d,d-1,o-1,s-1,f) o (d-1,o,o-1,s-1,f-1) sono nella chiusura di S rispetto a inversione composizione e intersezione
TH. OH⊂S allora ISAT(S) e’ NP-completo
Dimostrazione1. ISAT(S) ∈ NP perche’ ISAT(IA) ∈ NP 2. Vediamo che ISAT(S) ∈ NP-hard3. Esiste una riduzione polinomiale 3SAT N1 e 3SAT N24. Come al solito partiamo da un formula 3SAT F=C1 ^ C2 ^
C3…. cioe’ una congiunzione di clausole del tipo:5. Ci=li,1 v li,2 v li,3 6. Costruiamo un problema temporale T in N1 tale che T e’
soddisfacibile sse lo e’ F7. Per ogni letterale li,j
1. 2 intervalli Xij e Yij 2. il vincolo Xij (d,d-1,o-1,s-1,f) Yij3. Quindi P(T) conterra’ anche (Xij->Yij- v Xij+>Yij+)
8. Per ogni clausola Ci 9. i 3 vincoli {Xi2(p,d-1,o,m,f-1)Yi1, Xi3(p,d-1,o,m,f-1)Yi2, Xi1(p,d-
1,o,m,f-1)Yi3}10. Quindi P(T) contiene anche (Yi1
->Xi2- ), (Yi2
->Xi3-), (Yi3
->Xi1-)
11. In questo modo escludiamo che possa essere soddisfatto (Xij
->Yij- ) per ogni ij,
12. Infatti si avrebbe (Xi1->Yi1
->Xi2- >Yi2
->Xi3- >Yi3
->Xi1-) assurdo
13. e questo lo interpretatiamo come la soddisfazione del letterale lij nella clausola Ci di D
…continua dim…14.Ora non rimane che assicurarsi se lij e’ vero
ogni suo complementare lgh sia falso.
15.Vengono aggiunti i vincoli Xgh(p,d,o,m,s)Yij, Xij(p,d,o,m,s)Ygh
16.Quindi p(T) deve contenere anche (Yij+>Xgh
+ ) and (Ygh
+>Xij+ )
17.In questo modo lij e lgh non possono essere simultaneamente veri altrimenti varrebbero (Xij
+>Yij+ ) e (Xgh
+>Ygh+ ) da cui (Xij
+>Yij+ >
Xgh+>Ygh
+ >Xij+ ) assurdo
…continua dim…18.T soddisfatto formula 3-SAT
soddisfatta. Se il problema di vincoli temporali T ha soluzione allora per ogni i deve esistere un j tale X-
ij>Y-ij non e’
soddisfatta (punto 11 della dim), e questo vuol dire che il letterale lij e’ soddisfatto. Quindi c’e’ un letterale soddisfatto per ogni clausola.
…continua dim…19. Formula 3-SAT soddisfatta T soddisfatta. Sia v un
assegnamento a tutti letterali della formula che la soddisfa.20. per ogni letterale l=true in v
Per ogni sua occorrenza nelle clausole lij eliminiamo X -
ij> Y-ij dalla clausola ORD-Horn ((X-
ij> Y-ij )v (X+
ij> Y+ij))
Per ogni sua occorrenza negata nelle clausole lij eliminiamo X+
ij> Y+ij dalla clausola ORD-Horn ((X-
ij> Y-ij )v (X+
ij> Y+ij))
21. Visto o l =true o not(l) =true eliminando otteniamo tutte ORD-Horn unitarie
22. Visto che ogni clausola e’ soddisfatta non si hanno cicli del tipo X->…>Y- >X->…>Y- contenenti solo punti iniziali (punti 10,11)
23. Visto che letterali complementari hanno valori di verita’ diversi non si possono avere cicli X+>…>X+>Y+>…>X+ contenenti solo punti finali (punto 16)
24. Cicli misti? Non ce ne sono non ci sono disequazioni che coinvolgono un punto iniziale e un punto finale
Il confine tra trattabilita’ e NP-completezza delle sottoclassi di IA
Sia S ⊆ IA. Denotiamo con S* la chiusura di S rispetto all’inversione, composizione e intersezione, cioe’ la piu’ piccola sottoalgebra di IA generata da S
Si puo verificare che dato S tale che OH ⊂S⊆IA, allora
(d,d-1,o-1,s-1,f) ∈S* op (d-1,o,o-1,s-1,f-1)∈S* Metodo enumerativo, controllo se la chiusura di
OH {r} per ogni r in IA-OH contiene oppure no tali relazioni
Alcune considerazioni
Quindi le classi che dominano OH nell’ordinamento prodotto dall’inclusione sono difficili
Ci si chiede se esistono altre sottoclassi massimali di IA, incomparabili con OH che siano trattabili
Si Ad esempio U={≠,1}. Visto che la relazione ≠ tra intervalli
non e’ esprimibile come un insieme di clausole ORD-Horn, U e’ incomparabile con OH. Inoltre ISAT(U) e lineare visto che basta assegnare tutti intervalli distinti
Altre classi trattabili? La classe U non e’ di particolare interesse Capire se esistono sottoclassi contenenti tutte le
relazioni atomiche che siano trattabili e incomparabili a OH
Th. Sia S una sottoclasse contenente le 13 relazioni atomiche. Allora {(p,d-1,o,m,f-1), (p,d,o,m,s)}⊂ S perche’ sono generati
dalla chiusura delle atomiche una delle seguenti alternative e’ vera:
S*⊆OH (d-1,o,o-1,s-1,f-1) or (d,d-1,o-1,s-1,f) sono in S*
OH e’ l’unica classe trattabile massimale Sia S una sottoclasse di IA contenente
tutte le relazioni di base. Allora o S⊆OH e ISAT(S) e’ polinomiale Oppure ISAT(S) e’ NP-completo
Infatti S o contiene N1 oppure contiene N2
Algoritmo ISAT: path-consistency+backtracking
Input:Allen Temporalproblem
Preporcessing:Pathconsistency
Path-consistent?
Intelligent backtracking
Consistent?
Post-processing:Solution determination
no
no
yes
yes
STOP
STOP
Output: labeling atomico
Output:assegnamentodegli intervalli
Intelligent backtracking con OH1. Int-back(matrice vincoli M, i,j interi)2. M’M //salvo M3. 4. for (ogni relazione lk in Mij) do
5. Mij lk6. if (consistency(M)=true) then7. if (Mij last edge or Int-back(M,next_i,next_j)) 8. return true9. MM’; //backtrack10. endfor11. return false12. End;
3. Split(Mij in l1..ls∈Atomic) 3. Split(Mij in l1..ls∈SA) 3. Split(Mij in l1..ls∈OH)
Algebra delle Macro-relazioni
Martin Charles Golumbic, Ron Shamir: Complexity and Algorithms for Reasoning about Time: A Graph-
Theoretic Approach. J. ACM 40(5): 1108-1133 (1993)
Macro algebre Date le macro-relazioni definiamo le seguenti macro-algebre A3= {p,p-1, ∩ } A7= {p,p-1, α, α-1, C, C-1, =} A6= {p,p-1, o, o-1, d, d-1} se gli estremi degli intervalli devono
essere distinti
p
m
o
s
=d
f
f-1
s-1
d-1
o-1
m-1
p-1
∩p
m
o
s
=d
f
f-1
s-1
d-1
o-1
m-1
α-1
α
⊂-1⊂
p-1
Ai i elementi Sono algebre booleane, cioe’ chiuse rispetto all’unione e alla intersezione di insiemi!
p
m
o
s
=d
f
f-1
s-1
d-1
o-1
m-1
p-1A3
A7 A6
Terminologia Problema temporale1. Variabile coppia di intervalli2. Dominio sottoinsieme delle relazioni
dell’algebra che stiamo considerando 3. Vincoli impliciti, indotti dal fatto che le
variabili rappresentano coppie di intervalli temporali (cioe’ intervalli sulla retta reale, e.g. transitivita’)
Taglia di un problema numero di variabili, quindi il numero di relazioni tra coppie di intervalli O(n2) con n intervalli
Terminologia (2) Realizzazione: assegnamento a ogni intervallo di un
intervallo sulla retta reale che soddisfa le relazioni Solo relazioni topologiche ordinamento debole
Realizzazioni distinte sse l’ordinamento dei punti estremi e’ distinto
Problema temporale su una qualche algebra e’ consistente sse ammette almeno una realizzazione
Instanziazione: scelta di una (singola) relazione per ogni dominio delle variabili
Instanziazione consistente o soluzione: se e’ consistente il problema temporale corrispondente
1 realizzazione 1 instanziazione 1 instanziazione molte realizzazioni ISAT(P) : determinare l’esistenza di una soluzione, cioe’ di
una instanziazione consistente MLP(P): trovare i domini minimi togliendo tutte le relazioni
che non fanno parte di una soluzione
Equivalenza di ISAT e MLP (gia’ visto) TH: Determinare la soddisfacibilita’ (ISAT) e determinare la
rete minima (MLP) di problemi temporali di Allen sono problemi equivalenti in tutte le algebre Ai, i=3,6,7,13
PROVA: Da ognuno esiste una mappatura polinomiale all’altro
1. ISATMLP. Assumiamo un oracolo che dato un problema di Allen dice se e’ consistente o no. Per ogni vincolo (O(n2)) chiediamo all’oracolo se la rete in cui quel vincolo e’ sostituito con una sola delle sue relazioni ammesse e’ consistente (O(13)).
2. MLPISAT. Assumiamo di avere un algoritmo che calcoli la rete minima. Perche’ il problema sia soddisfacibile e’ sufficiente controllare che nessun vincolo non ammetta nessuna relazione (O(n2)).
Relazione tra ISAT e trovare tutte le soluzioni (1) TH: Data l’algebra Ai i=3,6,7,13 se ISAT e’ polinomiale
allora esiste una struttura polinomiale che corrisponde all’insieme di tutte le soluzioni
Questa struttura e’ la rete minima + algoritmo polinomiale che permette di enumerare, a partire dalle rete minima, tutte lo soluzioni (ASP).
Algoritmo polinomiale si intende polinomiale per fornire una soluzione, non tutte che sono esse stesse esponenziali
Infatti ISAT polinomiale MLP polinomiale Sia D=(D1,D2,…, Dn) la rete minima. Di e’ l’insieme minimo di
relazioni del vincolo rappresentato dalla variabile Xi. La rete minima D e’ una struttura polinomiale nella
grandezza di problema: O(n), n=numero variabili. Notare che ogni variabile corrisponde alla relazione tra due
intervalli. Quindi O(n), corrisponde a O(k2) dove k e’ il numero di intervalli
Algoritmo ASP Input: rete minima D Output: tutte le soluzioni 1. int vector a[n]; //a[i] numero della relazione assegnata alla var i2. a[1]1, i 13. if (ISAT(D(a))=true) then //test consistenza istanza corrente4. if (i<n) then 5. a[i+1] 1, 6. i i+17. goto 38. else output D(a) 9. if( a[i] < ni) //ni = cardinalita’ dominio var i10. a[i] a[i]+111. goto 3 12. else if (i=1) return13. else a[i]0, ii-1, goto 9
Relazione tra ISAT e trovare tutte le soluzioni (2) Riassumendo, ASP fa una depth-first search nello
spazio delle soluzioni testando la consistenza della soluzione parziale ad ogni assegnamento nuovo
Complessita’ di ASP per fornire una soluzione: O(mn *Comp_ISAT) dove n=numero delle variabili m= massimo numero di relazioni in un dominio di D e Comp_ISAT = complessita’ di ISAT
Quindi, riassumendo SE ISAT e’ polinomiale
MLP polinomiale D polinomiale ASP polinomiale
Grafi di intervalli V insieme qualunque {I(v)}v∈V :insieme di intervalli di ℝ Diciamo che v<w sse I(v) e’ strettamente alla sinistra di I(w) L’ordinamento indotto in questo modo da {I(v)}v∈V su V e’ un
ordinamento parziale detto ordinamento degli intervalli e {I(v)}v∈V e’ la sua rappresentazione in intervalli
Grafo G(V,E) e’ un grafo di intrevalli sse V ammette una rappresentazione in intervalli tale che Se l’arco non orientato (v,w)∈E allora v ~w, cioe’ I(v) ∩I(w)≠Ø Grafo di incomparabilita’ ~
Sequenza dei punti estremi, [lv,rv] di una rappresentazione in intervalli {I(v)}v∈V
si ottiene considerando tutti gli intervalli da sinistra a destra Un ordinamento per intervalli su V o un grafo di intervalli su V puo’
essere indotto da molte rappresentazioni in intervalli diverse. Al peggio un numero esponenziale
piu’ sono le possibili rappresentazioni, meno informazioni temporali si hanno
Applicazione: archeologia Il problema della serialita’ Dare un ordine cronologico ai manufatti Manufatti: lancia con punta di selce, anfora in terracotta,
lancia punta di ferro, bracciale d’oro, lancia con punta avvelenata
Manufatto intervallo temporale in cui era in uso Goal: assegnare ad ogni manufatto l’intervallo giusto Tomba dove il manufatto e’ trovato istante temporale Il punto temporale che rappresenta la tomba e’
nell’intersezione degli intervalli temporali dei manufatti in essa contenuti
Il Sandwich problem per grafi di intervalli E1, E2 due insiemi di archi definiti sugli stessi
nodi V Grafo sandwich per (E1, E2 ): G(V,E) tale che
E1⊆E⊆E1E2 IGS (Interval Graph Sandwich Problem): Dati
due grafi G1=(V,E1) e G2=(V,E2) con E1∩E2=Ø, dire se esiste un grafo sandwich per E1 e E2 che sia un grafo di intervalli
Sia F= (E1 E2)C complementare di (E1 E2), cioe’ l’insieme degli archi mancanti nel grafo G=(V, E1 E2)
Se E1 oppure F sono Ø , allora la riposta e’ trivialmente SI. Nel primo caso E1, nell’altro E1 ∪E2.
Se E2=Ø algoritmo polinomiale di Booth e Luecker
vedremo la complessita’ nel caso generale
Applicazione: DNA Dato un DNA si hanno delle informazioni
sperimentali sull’intersezione o meno di coppie di segmenti del DNA senza conoscerne i nucleotidi
Goal: trovare come i segmenti possono essere disposti sotto forma di intervalli di una linea (la catena del DNA) in modo da rispettare le informazioni sulle intersezioni
Rappresentazione in grafi Vertici segmenti Nessun arco (arco in F) se non si intersecano Arco E1 se si intersecano Arco E2 se non e’ chiaro se si intersecano o meno
Relazione tra IGS e A3 Ogni istanza di un interval sandwich
problem e’ equivalente a un problema ISAT definito su A3
Coppia di nodi (x,y) variabile temporale V(x,y)
(x,y)∈E1 D(V(x,y)) ={∩}
(x,y)∈E2 D(V(x,y)) ={p,∩, p-1}
(x,y)∉E1 E2 D(V(x,y)) ={p, p-1}
IGS e’ in NP IGS
E1, E2 due insiemi di archi definiti sugli stessi nodi V Grafo sandwich per (E1, E2 ): G(V,E) tale che
E1⊆E⊆E1E2 IGS (Interval Graph Sandwich Problem): Dati due
grafi G1=(V,E1) e G2=(V,E2) con E1∩E2=Ø, dire se esiste un grafo sandwich per E1 e E2 che sia un grafo di intervalli
NP: data una rappresentazione in intervalli di V serve un tempo polinomiale per testare se tutti gli intervalli coinvolti in archi in E1 si intersecano Se tutte le coppie di intervalli che si intersecano
corrispondono a nodi toccati da archi o in E1 o in E2 Devo guardare tutte le possibili coppie di intervalli O(n2)
Triple asteroidali Dato un grafo G(V,E) Tripla asteroidale di vertici di V: TA={x,y,z}
tale che non vi e’ nessun arco sui vertici di TA per ogni coppia di vertici h, k ∈ TA esiste un cammino di
archi in E da h a k che non passa per nessun vertice adiacente al terzo vertice in TA
Un grafo di intervalli non puo’ contenere una tripla asteroidale
Infatti visto che non ci sono archi su x, y, z gli intervalli corrispondenti sono ordinati ad esempio in modo tale che x<y<z
ogni intervallo incomparabile con I(x) e I(z) non puo’ essere ordinato rispetto a I(y)
Not All Equal 3-SAT NAE-3SAT Restrizione di 3-SAT Data una congiunzione di clausole ciascuna
disgiunzione di 3 letterali dire se c’e’ un modo di soddisfarla in modo che per ogni clausola ci sia un letterale vero e almeno uno falso
NAE-3SAT e’ NP-completo anzi, rimane NP-completo anche nella versione
monotona (tutti i letterali sono non-negati) in cui SAT e facile
NP-completezza di IGS Riduzione NAE-3SAT IGS
n letterali m clausole
Un vertice ausiliario p Per ogni variabile Xi 4 vertici:
xi, xi vertici letterali di Xi
x’i,x’i vertici privati di Xi
Mettiamo i seguenti archi che consideriamo in E1
x’ixi xipx’i
NP-completezza di IGS(2)
Per ogni clausola Ci=(Xi1vXi2vXi3) 3 vertici vi1, vi2, vi3 vertici privati
della clausola
Denotando con xi1, xi2, xi3 vertici letterali corrispondenti
Archi in E1 Archi in E2
xi3 xi2
xi1
vi3 vi2
vi1
Archi in F = (E1 ∪ E2)c: Archi tra vertici dello stesso sottografo corrispondente a
una variabile che non sono in E1 Archi tra vertici dello stesso sottografo corrispondente a
una clausola non in E1 e non E2 Archi in E2:
i,j=1, …,n i≠j un arco tra ogni vertice in {xi,x’i,xi,x’i} e ogni vertice in {xj,x’j,xj,x’j}
i,j=1, …,m i≠j un arco tra ogni vertice privato, vih, di Ci e ogni vertice privato, vjk, di Cj
i=1, …,m un arco tra ogni vertice privato di Ci e p e un arco tra ogni vertice privato di Ci e ogni vertice letterale
tranne quelli corrispondenti agli altri due letterali in Ci i=1,..n e j=1,…,m un arco tra ogni vertice privato
di Xi e ogni vertice privato di Cj
Esiste IGS NAE-SAT soddisfatta Supponiamo esista un grafo di intervalli G’ che
soddisfa il problema sandwich per E1 e E2 Sia I(v) una rappresentazione di G’ I(p)=[p1,p2] Per costruzione per ogni variabile Xi I(xi)∩I(xi)=Ø p1 ∈ I(xi) e p2 ∈ I(xi) oppure p2 ∈ I(xi) e p1 ∈ I(xi) Ponendo Xi=true sse p1 ∈ I(xi) solo un letterale per ogni variabile e’ true
x’ixi xipx’i
Esiste IGS NAE-SAT soddisfatta
Per ogni clausola Ci Per costruzione Non puo essere che I(xij)∩I(xih)=Ø,
generate da A3)-{<>} Mostriamo che e’ trattabile riducendo
ISAT(∆1) a determinare l’aciclicita’ di un grafo particolare
La sottoclasse ∆1 Ogni relazione di ∆1 corrisponde a una o a
due relazioni definite sugli estremi degli intervalli
Dati gli intervalli I=[I-,I+] e J=[I-,I+] I<J ↔ I+<J- I>J ↔ J+<I- I <⋂ J ↔ I-≤J+ I ⋂> J ↔ J- ≤ I+ I ⋂ J ↔ I-≤ J+ and J- ≤ I+
Grafo corrispondente(1) Problema di vincoli temporali di tipo ∆1, P grafo
G(P)=(V,E) Estremo di un intervallo nodo in V E=(E0,E1) Per ogni intervallo I=[I-,I+] arco (I-,I+)∈E0 Per ogni vincolo I<J arco (I+,J-) ∈E1 Per ogni vincolo I<⋂J arco (I-,J+) ∈E0 Per ogni vincolo I⋂J arco (I-,J+) ∈E0 e arco
(J-,I+) ∈E0 Per ogni vincolo I<⋂>J nessun arco Archi E0 sono detti deboli Archi E1 sono detti forti
Grafo corrispondente (2) Il grafo cosi’ definito e’ bipartito tra
i nodi {I-1,…,I-n} corrispondenti agli estremi inferiori degli intervalli
i nodi {l+1,…,l+n}, corrispondenti agli estremi superiori
I-1
I-2
I-3
I+1
I+2
I+3
E1
E0
Esprime un ordinamento parziale
P={X,Y}X={I1<I2}
Y={I2∩>I3}
ISAT(P) ↔ grafo aciclico Se c’e’ un ciclo c’e’ una relazione ciclica e quindi
inconsistente tra gli estremi degli intrevalli non soddisfacibile
Se non c’e’ un ciclo, scelgo una qualsiasi linearizzazione dell’ordinamento parziale espresso dal grafo ottengo una soluzione del problema temporale
Complessita’: Costruzione del grafo: lineare nel numero di variabili del
problema Test di aciclicita’: ad esempio con una ricerca in profondita’