Ottiizzazione Cobinatoria Totale Uniodularità Prof. Antonio Sassano Dipartiento di Inforatica e Sisteistica Università di Roa La Sapienza A.A. 2
Coe diostrare che una forulazione è ottia? Problea di PL: z* in {c T x : x x S} P {x R n : Dx < d} forulazione di S P P S {x R n : Ax < b} Conv(S)? Si può diostrare che : Ogni disequazione del sistea Ax < b è iplicata dal sistea Dx < d; 3x +2x 2 + x 3 2x 4 2 (/2) 2x 2x 2-2x 3 +2x 4 2 4x +x 2 -x 4 3 Oppure che argin {c T x : x P} S per ogni c R n Oppure che ogni vertice di P ha coponenti - Iniziao da quest ultio caso.
Totale Uniodularità Definizione : Una atrice A ( n) di è detta uniodulare se e solo se, per ogni sotto-atrice quadrata B ( ) di A (base) si ha det(b) (B) {,,-} } Definizione 2: Una atrice A ( n) di è detta totalente uniodulare se e solo se, per ogni sotto-atrice quadrata di A B (p p) con p> si ha det(b) (B) {,,-} } 3 2 uniodulare a non totalente uniodulare Non uniodulare uniodulare e totalente uniodulare
Uniodularità e vertici interi (I) TEOREMA : Sia A una atrice a coponenti intere con. Allora le seguenti afferazioni sono equivalenti: rank(a) (A). A è uniodulare; vertici di P {x R n : Axb, x x n } sono interi 2. I vertici ogni vettore b Z (intero) 3. Ogni sotto-atrice quadrata B ( ) non interi per non-singolare di A ha una atrice inversa B - a coponenti intere DIMOSTRAZIONE: L equivalenza si diostra provando che: ( 2) (2 3) (3 )
Uniodularità e vertici interi ( 2) A è uniodulare Vertici di P interi per b Z DIMOSTRAZIONE: x vertice di P {x R n : Axb, x x n } x SBA (Soluzione( di Base Aissibile) Esiste B sotto-atrice ( ) di A con det(b) x B R tale che, posto: x e n A ( B N) xn R Ax b Bx o B b B B + NxN b x o n x n + N B B con B + atrice aggiunta di B det(b) A atrice intera (a coponenti intere) B + intera A atrice uniodulare uniodulare det(b) x abbiao: B - b Z per ogni b Z x Z n per ogni b Z
Vertici interi e interezza di B - (2 3) Vertici di P interi per b Z B non-singolare ha B - intera DIMOSTRAZIONE: - Sia B una sotto-atrice ( ) di A con det(b) B π π π L π con [ ] 2 - Sia t un vettore intero tale che t+π k - Sia b(t) Bt+u (u k k B b( t) B ( Bt + u n n 3 ( π k colonna di B- ) Diostriao che una generica colonna π k è intera: k-esio vettore unitario) n SBA del sistea Axb(t), x n Vertice di P {x R n : Axb(t), x x n } t+π k k ) un vettore intero π k t + B [ t è un vettore intero] u k un vettore intero t + π k n [per ipotesi] n
Interezza di B - e uniodularità (3 ) B non-singolare ha B - intera A è uniodulare DIMOSTRAZIONE: - Sia B una sotto-atrice ( ) di A con det(b) B - ha tutte coponenti intere det(b) e det(b - ) nueri interi a det(b) det(b - ) det(bb - ) det(b) det(b - ) A è uniodulare
Vertici, fora Standard e fora Generale TEOREMA 2: Il vettore x è un vertice del poliedro: P {x R n : Ax b, x x n } se e solo se il vettore: è un vertice del poliedro x R s R n b x Ax Q {(x,s) R n+ : Ax+Isb, x x n, s } DIMOSTRAZIONE: : (x è( un vertice di P (x,s ) è un vertice di Q) - Supponi che (x,s ) non sia un vertice di Q esistono due vettori (x,s ) (x 2,s 2 ) tali che: (x,s ) )α (x,s ) +(-α) ) (x( 2,s 2 ) > α > x α x +(-α) x 2 > α > x x 2 [x è un vertice di P] s b-ax b-ax 2 s 2 CONTRADDIZIONE (x,s ) (x,s ) (x 2,s 2 )
Vertici, fora Standard e fora Generale DIMOSTRAZIONE: : ((x,s ) ( è un vertice di Q x è un vertice di P ) -Supponi che x non sia un vertice di P esistono due vettori x x 2 tali che: x α x +(-α) x 2 α > s b-ax b-ax 2 s 2 s α s +(-α) ) s 2 (x,s ) )α (x,s ) +(-α) ) (x( 2,s 2 ) α > con (x,s ) (x 2,s 2 ) CONTRADDIZIONE
Totale Uniodularità e vertici interi TEOREMA: Sia A una atrice a coponenti intere con rank(a) (A). Allora I vertici di P {x R n : Ax b, x sono interi atrice A è totalente uniodulare. b, x n } interi per ogni vettore b Z (intero) se e solo se la DIMOSTRAZIONE: [Teorea 2] 2 x R n è un vertice del poliedro: P {x R n : Ax b, x x n } se e solo se il vettore: è un vertice del poliedro: x R s R n b x Ax Q {(x,s) R n+ : Ax+Isb, x x n, s } I vertici di Q hanno coponenti intere se e solo se la atrice uniodulare [Teorea (A I ) è uniodulare Teorea ]
Totale Uniodularità e vertici interi (II( II) Dobbiao diostrare che: (A I ) uniodulare A totalente uniodulare [ ] [ n A I a L a u L u ] [solo se] A totalente uniodulare (A I ) uniodulare Sia B una sotto-atrice ( ) di (A I ) con det(b) B [ ] + a L a u L u r r B F F I r r + M M r det(b) det(f)
Totale Uniodularità e vertici interi (III( III) [se] (A I ) uniodulare A totalente uniodulare Sia F una sotto-atrice (p p) di A con p> e det(b) Siano { },..., p gli indici delle colonne di F Definisci la seguente base B ( ) di ( A,I ) B [ ] + a L a u L u p p B F F I p p+ M M p det(f) det(b)
Coe verificare la Totale Uniodularità TEOREMA: Sia A una atrice a coponenti {,,-} se: A è totalente uniodulare (TUM) totalente uniodulare (TUM) se }. Allora () ogni colonna contiene al più due coefficienti diversi da zero; (2) le righe di A sono partizionabili in due insiei Q e Q 2 tali che: (2a) Se una colonna contiene due eleenti a i e a h aventi lo stesso segno allora i Q e h Q 2; (2b) Se una colonna contiene due eleenti a i e a h aventi lo segno diverso allora allora i,h Q oppure i,h DIMOSTRAZIONE: : (provate a diostrarlo difficile) - Si tratta di una condizione sufficiente (criterio) h h i,h Q 2; - Per le atrici per le quali vale la () la (2) è necessaria
Criterio Sufficiente (esepi) TEOREMA: Sia A una atrice a coponenti {,,-} }. Allora A è totalente uniodulare (TUM) se: () ogni colonna contiene al più due coefficienti diversi da zero; (2) le righe di A sono partizionabili in due insiei Q e Q 2 tali che: (2a) Se una colonna contiene due eleenti a i aventi lo stesso segno allora allora i Q e h Q 2; i e a h (2b) Se una colonna contiene due eleenti a i e a h aventi lo segno diverso allora i,h Q oppure i,h Q Q 2 Criterio OK TUM Non TUM h h i,h Q 2; Criterio fallito TUM
Matrici Totalente Uniodulari. Se A è totalente uniodulare A T A In I A A n sono totalente uniodulari 2. La atrice di incidenza M di un grafo orientato è totalente uniodulare DIMOSTRAZIONI: : (a cura dello studente)