min det det Allora è unimodulare se e solo se det 1, 1, 0 per ogni sottomatrice quadrata di di qualsiasi dimensione.

Documenti analoghi
Matrici unimodulari e totalmente unimodulari

3.3 Problemi di PLI facili

Metodi e Modelli per l Ottimizzazione Combinatoria Problema dell assegnamento e matrici totalmente unimodulari

Introduzione ai grafi

Formulazioni. Consideriamo il seguente problema di Knapsack 0-1. max (5x x 2. ) st 3x x 2. < 6 x {0,1} 2

Possibile applicazione

Definizione 1.3 (Arco accoppiato) Un arco è accoppiato se è appartenente al matching M.

Matrici delle differenze finite

Figura 1: 1) Si scriva la formulazione del problema come problema di PLI (con un numero minimo di vincoli) e la matrice dei vincoli.

MATEMATICA DISCRETA CLAUDIA MALVENUTO PRIMA PROVA IN ITINERE 24 APRILE 2014

UNIVERSITÀ DEGLI STUDI ROMA TRE Collegio Didattico in Ingegneria Informatica corso di Ricerca operativa 2. Esercizi sul problema dell assegnamento

Parte IV: Matrici totalmente unimodulari

Algoritmi Avanzati Soluzioni dello scritto del 2 febbraio 2004 (appello straordinario)

Massimo flusso e matching

Introduzione ai grafi. Introduzione ai grafi p. 1/2

Grafi e reti di flusso

Teoria della Programmazione Lineare Intera

Teoria dei Grafi Elementi di base della Teoria dei Grafi

Esercitazione 5 Network Flow

Prima prova Intermedia di Ricerca Operativa 2 COMPITO A Esercizio 1 (7 punti): LIFO

Introduzione ai grafi. Introduzione ai grafi p. 1/2

Gestione della produzione e della supply chain Logistica distributiva. Paolo Detti Dipartimento di Ingegneria dell Informazione Università di Siena

RICERCA OPERATIVA (a.a. 2017/18) Nome: Cognome: Matricola:

Appunti sui problemi di matching

Ricerca Operativa. G. Liuzzi. Lunedí 20 Aprile 2015

Esercitazione 6 Ancora sul Network Flow

ESERCIZIO 1: Punto 1

Gestione della produzione e della supply chain Logistica distributiva

ESERCIZIO 1. Ricordiamo il teorema di Gallai: Per ogni grafo G con n nodi si ha: μ(g)+ ρ(g) = n (2) Se inoltre G non ha nodi isolati

APPUNTI DI TEORIA DEGLI INSIEMI. L assioma della scelta e il lemma di Zorn Sia {A i } i I

Esempi. In R 2, le coppia (2, 5) è combinazione lineare dei vettori (0, 1) e (1, 1). Infatti:

ALBERI ORIENTATI. Definizione: Albero orientato = rooted tree = grafo orientato con le seguenti proprietà: - ha un nodo fissato, detto radice (r);

Se il grafo è bipartito, un accoppiamento viene anche detto assegnamento.

Lista di esercizi 11 maggio 2016

a 11 a 12 a 1n a 21 a 22 a 2n a m1 a m2 a mn mentre le variabili decisionali sono rappresentate dal vettore colonna n-dimensionale x,

DISPIEGAMENTO CENTRALIZZATO L ACCOPPIAMENTO PERFETTO DI PESO MINIMO IL PROBLEMA DEL SENSORI MOBILI IL PROBLEMA (1)

Esercitazione 2. Progettare un algoritmo che risolva tale problema in tempo O( E + V log V ).

Parte IV: Rafforzamento di formulazioni e algoritmo dei piani di taglio

Il metodo del simplesso

7.1 Progettare un algoritmo per costruire ciclo euleriano di un grafo non orientato.

Rango di una matrice e teorema di Rouché-Capelli

Algoritmo basato su cancellazione di cicli

1) Data la seguente istanza di TSP (grafo completo con 5 nodi): c 12 = 52; c 13 = 51; c 14 = 40; c 15 = 53; c 23 = 44;

Teoria della Programmazione Lineare Intera

INFORMATICA AA Università degli Studi di Ferrara Facoltà di Scienze MM FF NN Corso di Laurea in «Scienze e Tecnologie per i Beni Culturali»

Dai ponti di Königsberg al postino cinese

Ottimizzazione Combinatoria Proprietà dei Grafi. Ottimizzazione Combinatoria

Preparazione orale analisi numerica:

Esame di Ricerca Operativa - 18 aprile 2007 Facoltà di Ingegneria - Udine - CORREZIONE -

Esercizi di Programmazione Lineare

Soluzione. 2.1 Pianificazione multiperiodo della produzione energetica

GE460 - Teoria dei grafi. Soluzioni esame del 28 Gennaio 2013

Parte V: Rilassamento Lagrangiano

Riassumiamo le proprietà dei numeri reali da noi utilizzate nel corso di Geometria.

Ottimizzazione su grafi: massimo flusso (parte 1) Ottimizzazione su grafi:massimo flusso (parte 1) p. 1/33

Riassumiamo le proprietà dei numeri reali da noi utilizzate nel corso di Geometria.

I Appello Ricerca Operativa 2 bis Compito A

UNIVERSITÀ DEGLI STUDI DI TERAMO FACOLTÀ DI SCIENZE POLITICHE CORSO DI LAUREA IN ECONOMIA BANCARIA FINANZIARIA ED ASSICURATIVA

04 - Logica delle dimostrazioni

G è 2-colorabile se ogni nodo può essere colorato di bianco o di nero in modo che nodi connessi da archi siano colorati con colori distinti.

Matroidi, algoritmi greedy e teorema di Rado

3.6 Metodi basati sui piani di taglio

02 - Logica delle dimostrazioni

Corso di Laurea in Matematica per l Informatica e la Comunicazione Scientifica

UNIVERSITÀ DEGLI STUDI DI TERAMO FACOLTÀ DI SCIENZE POLITICHE CORSO DI LAUREA IN ECONOMIA BANCARIA FINANZIARIA ED ASSICURATIVA

Teorema 1. Il problema AP è N P-complete.

Soluzione. V : insieme dei nodi del grafo A: insieme degli archi del grafo K: insieme degli indici delle coppie di origine-destinazione (s k,t k )

Proprietà e strutture dei grafi

Introduzione alla Teoria dei Grafi

NOTE DI ALGEBRA LINEARE v = a 1 v a n v n, w = b 1 v b n v n

Fattorizzazione QR e matrici di Householder

Flusso di costo minimo

Programmazione Lineare Intera: Piani di Taglio

Corso di GEOMETRIA Dipartimento di Ingegneria ed Architettura Università degli Studi di Trieste Prof. Fabio Perroni. 5. Rango

Prof. Giorgio Poletti

A titolo di esempio proponiamo la risoluzione del sistema sia con il metodo della matrice inversa sia con il metodo di Cramer.

Lezione 3 - Teoria dei Numeri

RICERCA OPERATIVA (a.a. 2018/19)

Programmazione Matematica / A.A Soluzioni di alcuni esercizi

Geometria della Programmazione Lineare

Grafi Stessa distanza

1 Addendum su Diagonalizzazione

Sviluppando ancora per colonna sulla prima colonna della prima matrice e sulla seconda della seconda matrice si ottiene:

Il teorema di dualità forte

Certificati dei problemi in NP

r 2 r 2 2r 1 r 4 r 4 r 1

Dimostrazione. Indichiamo con α e β (finiti o infiniti) gli estremi dell intervallo I. Poniamo

Corso di Geometria BIAR, BSIR Esercizi 4: soluzioni

A T x b x 0. che chiameremo problema primale, possiamo associare ad esso un altro problema di PL, detto problema duale, definito come segue.

Quinto appello 27/6/ = 4. B b B = 2 b N = 4

Algebra Proff. A. D Andrea e P. Papi Primo scritto

5.2 IL TEOREMA FONDAMENTALE DELLA PROGRAMMAZIONE LINEARE

min 2x 1 +4x 2 2x 3 +2x 4 x 1 +4x 2 +2x 3 + x 4 =6 2x 1 + x 2 +2x 3 + x 5 =3 x 0.

Esercizi di Programmazione Lineare

Richiami di Teoria dei Grafi. Paolo Detti Dipartimento di Ingegneria dell Informazione Università di Siena

Metodi e Modelli per l Ottimizzazione Combinatoria Ripasso sulla Programmazione Lineare e il metodo del Simplesso (parte I)

Esempio. L immagine di f è l insieme dei vettori w = (w 1, w 2 ) R 2 che hanno w 1 = w 2. Quindi:

( ) le colonne della matrice dei coefficienti, con. , risulta A 3 = A 1 + 4A 2 + 4A 5, A 4 = A 1 + A 2,

ALGEBRA I: ASSIOMI DI PEANO E PROPRIETÀ DEI NUMERI NATURALI

ESERCIZI SULLA TECNICA BACKTRACKING e BRANCH & BOUND

Transcript:

Se è unimodulare e è intero allora il poliedro 0 ha vertici interi. Sia un vertice di Per definizione esiste allora una base di tale che, 0 Poiché è non singolare ( invertibile det 0) si ha che det 1 è intera è intero è intero. Quindi se è unimodulare possiamo ottenere una soluzione intera del problema in forma standard risolvendo il rilassamento lineare. Se invece il problema è in forma canonica: min 0 min 0 dove è un vettori di variabili slack e è la matrice identità La matrice dei vincoli in questo caso non è più, bensì, La base, se prima era una sottomatrice di, ora deve essere una sottomatrice di ed avrà dunque alcune colonne di ed alcune colonne di ; in particolare ha: colonne di, con 0, ed colonne di. A meno di permutazioni di righe e colonne ha l aspetto det det Allora è unimodulare se e solo se det 1, 1, 0 per ogni sottomatrice quadrata di di qualsiasi dimensione.

Se è una matrice TUM e è intero allora = 0 ha solo vertici interi. Sia un vertice di Mostriamo che, con = è un vertice del poliedro =, 0 = Supponiamo per assurdo che non sia così, ovvero che esistano due punti distinti, e, di tali che, =, + 1, con 0 < < 1 Si noti che,, infatti Inoltre E quindi = 0 = 0,, = + 1 con 0 < < 1 Si è giunti così ad un assurdo perché non può essere un vertice di (un vertice di, per definizione, non può essere espresso come combinazione strettamente convessa di altri due punti del poliedro). Pertanto, è un vertice di. Quindi se è TUM allora =, è unimodulare e, per il teorema precedente, se, è intero allora è intero.

Sia una matrice con = 1, +1, 0, A è TUM se valgono le seguenti condizioni (sufficienti ma non necessarie!) 1. Ogni colonna di ha al più 2 elementi non nulli 2. Esiste una partizione, delle righe di tale che ogni colonna con 2 elementi non nulli abbia questi due elementi su righe appartenenti ad insiemi e diversi se e solo se i due elementi sono concordi in segno Bisogna mostrare che per ogni sottomatrice quadrata di qualsiasi ordine si ha che det = 1, +1, 0 Si dimostra per induzione su, dove è l ordine di ( = 1,, ) = 1 = det = 1, +1, 0 = 1 Supponiamo che per ogni di ordine 1 si abbia det 0, ±1 e dimostriamo allora che ciò vale per ogni di ordine = + 1: Dalla condizione 1 si possono verificare solo 3 casi: 1. ha una colonna di zeri det = 0 2. ha una colonna con un solo elemento diverso da zero A meno di permutazioni di righe e colonne posso scrivere in questo modo: ±1 0 0 dove è la matrice del passo 1 che per ipotesi ha det 0, ±1 det = ± det 0, ±1 3. Ogni colonna di ha 2 elementi non nulli Se esiste la partizione specificata dalla seconda condizione, consideriamo le righe di come vettori ed effettuiamo la differenza tra la somma di quelle appartenenti ad = e la somma di quelle appartenenti ad = NOTA: = 0,, 0 Le righe di sono quindi linearmente indipendenti det = 0 Essendo il teorema una condizione solamente sufficiente ma non necessaria, per mostrare che una matrice non è TUM bisogna mostrare una sottomatrice di per cui det 0, ±1. Se non è TUM significa che non è possibile identificare la partizione imposta dal secondo vincolo e dunque vi è una colonna con due elementi non nulli le cui corrispondenti righe non possono essere assegnate correttamente agli opportuni insiemi. La sottomatrice si identifica andando alla ricerca dei primi elementi che hanno indotto la partizione che genera il conflitto di assegnazione.

PROPOSIZIONE Se N è un cover, allora la disuguaglianza cover 1 è verificata per. Considerato un insieme di oggetti, supponiamo che esista una soluzione che non soddisfa la disuguaglianza cover, ossia tale che > 1 Si ha allora che =, cioè. = >

Sia connesso. Le seguenti affermazioni sono equivalenti: 1. è euleriano 2. Ogni nodo di ha grado pari 3. è ottenibile come unione di cicli disgiunti sugli archi Le 2. e 3. sono condizioni necessarie e sufficienti affinché un grafo sia euleriano. 1 2: Se è euleriano allora esiste un ciclo euleriano,,,,,,,,,,,,,, dove - = -, : nodo all interno dell -esimo ciclo euleriano in -, : arco uscente dal nodo all interno dell -esimo ciclo euleriano in Sia, il grado in del nodo,. Questo grado è ottenuto dagli archi, ed, che danno contributo 2 (sono rispettivamente l arco che precede e l arco che segue il nodo, ). Poiché, =, per qualche h, con h allora si avranno altri contributi comunque pari al grado del nodo. 2 3: Sappiamo che 2 e pari, dunque non ha nodi di grado 1. Un grafo connesso senza nodi di grado 1 non è un albero, quindi deve avere almeno un ciclo. Sia = il grafo ottenuto rimuovendo da gli archi di, allora ovvero, o : = 0 = 0 che è pari oppure = che è pari per ipotesi 3 1: Se = 0 allora è un nodo isolato. Se è costituito solo da nodi isolati allora segue la tesi, altrimenti: si considera una delle componenti connesse di in cui ogni nodo ha grado pari e maggiore o uguale a 2; esiste quindi un ciclo e sia = : se è costituito da soli nodi isolati segue la tesi altrimenti si itera il ragionamento. Siano,,, i cicli disgiunti tali che =. Consideriamo : per l ipotesi di connessione esiste almeno un con almeno un nodo in comune con (con 1). Senza perdita di generalità, supponiamo che questo ciclo sia e sia, il ciclo che si ottiene concatenando con. Dal momento che è connesso allora esiste un, con 1,2, con almeno un nodo in comune con, e sia esso : iterando si otterrà un ciclo,,, contenente tutti e soli gli archi di, che è quindi un grafo euleriano.

Un grafo connesso con 2 nodi di grado dispari ammette un cammino euleriano. TEOREMA Dato un grafo connesso con 2 nodi di grado dispari, l insieme degli archi può essere partizionato in sottoinsiemi,,, ognuno dei quali induce un cammino. Indichiamo con ed con = 1,, i 2 nodi del grafo di grado dispari e costruiamo =, come segue: - è l insieme dei nodi di più nodi fittizi per = 1,, - è composto dagli archi di più 2 nuovi archi che connettono i nodi ai nodi ed è euleriano, infatti esso è connesso e tutti i nodi hanno grado pari. Sia un ciclo euleriano di. attraversa tutti i nodi di ed, in particolare, ciascun è preceduto da e seguito da. Se si eliminano da i nodi ed i 2 archi incidenti su ciascuno di essi restano esattamente cammini disgiunti sugli archi che connettono nodi di grado dispari. Inoltre questi cammini contengono tutti e soli gli archi di e da qui segue la tesi. TEOREMA Se è un grafo hamiltoniano allora è 2-connesso, ovvero per ogni coppia di nodi esistono 2 cammini distinti (sui nodi) che li connettono (condizione necessaria ma non sufficiente). TEOREMA Se è completo allora è hamiltoniano.

Sia =, orientato. è bipartito Non esistono cicli dispari (cicli con un numero dispari di archi). Sia =,, un grafo bipartito e sia un qualsiasi ciclo in. Percorrendo a partire da un qualsiasi si passa sempre da un nodo di ad un nodo di. Tutti i nodi di che si trovano in vengono visitati dopo aver attraversato un numero dispari di archi mentre quelli di in vengono visitati dopo un numero pari di archi. Ci si può quindi ritrovare in (chiusura del ciclo) solo dopo un numero pari di archi e dunque è un ciclo pari. Supponiamo di avere un grafo senza cicli dispari e supponiamo che sia connesso (se non lo è si ripete il ragionamento che segue per ogni componente connessa di ). Consideriamo un nodo qualsiasi e calcoliamo la distanza tra ed ogni altro nodo con : sia, tale distanza (numero di archi). Viene indotta su la seguente partizione: =, =, Ora bisogna dimostrare che non esistono archi da a e da a (poiché questi andrebbero a costituire un ciclo dispari in ). Mostriamo allora che = : Supponiamo per assurdo che esista un arco tra due nodi,. Siano e i due cammini minimi che collegano rispettivamente ad e a. Sia l ultimo nodo in comune ai due cammini ( può coincidere con nel caso in cui e non abbiano nodi in comune). Consideriamo il ciclo che si forma percorrendo tra ed, l arco, e tra ed. Calcoliamo la lunghezza di : =, + 1 +, dove, indica il tratto di tra e, ma =, +, =, +, ed osservando che =,, deve necessariamente essere /,,, oppure /,,, Comunque assunti, ed,, entrambi pari o entrambi dispari, risulta in una quantità dispari. Esiste un ciclo dispari e ciò contraddice l ipotesi ( senza cicli dispari); non esistono quindi archi che connettono con. Allo stesso modo si dimostra che = e dunque è bipartito.

di Konig Dato un grafo bipartito =,, max = min Ovvero, la cardinalità massima di un matching è uguale alla cardinalità minima di un vertex-cover. A partire da =,, costruiamo un nuovo grafo ottenuto orientando tutti gli archi di da a, aggiungendo due nodi, e collegandoli rispettivamente con tutti i nodi di e di. Le capacità degli archi di sono pari ad - per gli archi da a - 1 per gli archi da a e da a La dimostrazione si basa su: A. Su esiste un matching di cardinalità Su esiste un flusso ammissibile da a di valore B. Su esiste un vertex cover di cardinalità Su esiste un taglio di capacità Dimostrazione A: Dato matching di cardinalità su Su un flusso ammissibile da a di valore Dato il matching di cardinalità, poniamo ad 1 il flusso di ogni arco di e sugli archi, ed, con,. Si verifica facilmente che è un flusso ammissibile (per ogni nodo accoppiato entra ed esce una unità di flusso e le capacità sono rispettate). Dato un flusso ammissibile da a di valore su Su un matching di cardinalità Sia il valore intero del flusso. In si consideri il taglio definito da. Gli archi,, con e, attraversati dal flusso costituiscono un matching: non esistono 2 archi di questo insieme che abbiano nodi in comune (altrimenti, per come sono definite le capacità, si avrebbe una violazione della conservazione del flusso). Gli archi originali attraversati da flusso 1 costituiscono un matching di cardinalità (devono essere, infatti altrimenti non si potrebbe portare tutto da a ). Dimostrazione B: Dato un vertex cover un taglio di capacità Si consideri un vertex cover ed un insieme così definito:,, ovvero tale da contenere solo gli archi di che da conducono in. Questo insieme di archi costituisce un taglio, infatti: ogni cammino da a deve attraversare uno degli archi originali e quindi, poiché è un vertex cover, deve attraversare uno degli archi di. La capacità di è pari alla sua cardinalità, cioè. Dato un taglio di capacità un vertex cover di cardinalità = Supponiamo di avere un taglio,, di capacità. Gli archi di sono solo di capacità pari ad 1 e sono del tipo,, con, e,, con. Da si costruisce : - se, - se, Ogni arco, definisce un cammino. Poiché è un taglio si possono verificare solo 2 casi:, e, e per essi si ha comunque che oppure, rispettivamente, quindi è un vertex cover.

Siano un matching su un grafo e un cammino aumentante: la differenza simmetrica è un matching di cardinalità + 1. Sia = - Gli archi di che non appartengono a sono in - Gli archi di che non appartengono ad sono in - Gli archi di che appartengono ad vengono esclusi da è un matching: - I nodi non toccati da non sono influenzati dalla nuova situazione - Sui nodi intermedi prima incideva un arco di, ora incide un arco di - I nodi estremi di prima erano esposti, ora sono accoppiati Sia di lunghezza 2 + 1: - archi di (archi accoppiati) - + 1 archi che non appartengono ad (archi liberi) Con la differenza simmetrica gli archi liberi di entrano a far parte di, quelli accoppiati escono: = + 1.

Dato =,, un matching su è massimo Non esistono cammini aumentati. Se esiste un cammino aumentate allora si potrebbe aumentare la cardinalità del matching effettuando la differenza simmetrica. Supponiamo che non esistano cammini aumentati per ; dobbiamo allora dimostrare che è massimo. Supponiamo per assurdo che non sia massimo, allora h > Consideriamo = = h + h. Sia =,. ha solo nodi di grado minore o uguale a 2: - I nodi accoppiati sia in che in hanno grado 2 oppure 0 - I nodi in ma non in, e viceversa, hanno grado 1 - I nodi esposti in entrambi i matching hanno grado 0 Le componenti connesse di sono di 3 tipi: - Nodi isolati - Cicli pari - Cammini costituiti alternatamente da archi di e di Poiché > in ci sono più archi appartenenti ad che ad un cammino costituito da un numero di archi di superiore al numero di archi di inizia e termina con un arco di, ma questo tipo di cammino è aumentante per Ipotesi contraddetta è massimo.

Sia =, un grafo orientato e pesato sugli archi (con peso,, ) e sia =,, il grafo bipartito costruito su in modo tale che - = - =,,,, 0 Valgono per le due seguenti proprietà: 1. In c è sempre un matching perfetto di peso 0 (quello formato dagli archi, ) 2. Il matching perfetto di peso minimo in ha un valore negativo In esistono cicli negativi (idea) Supponiamo di avere in un ciclo negativo,,,,,,,, a questo ciclo si può associare in il matching =,,,,,,,,,,, A partire da un matching quindi posso costruire un ciclo.

di Hall Un grafo bipartito =,, ammette un matching X-perfetto (condizione di Hall), con =, h insieme dei vertici adiacenti ad i vertici in. Sia =, ovvero tutti i nodi di nel matching. Sia il compagno di nel matching. Sappiamo che: - assegna un unico nodo ad ogni - è iniettiva (!.. = ) Quindi si ha che = ed inoltre ed abbiamo così ottenuto di nuovo la condizione di Hall. Supponiamo che valga la condizione di Hall, cioè che Sia un vertex cover minimo di e sia =. Dalla definizione di vertex cover ogni arco di ha almeno un estremo in, possiamo quindi scrivere che quindi = = = + + = Dal momento che, per il teorema di Konig, = si ha = = : ammette un matching X-perfetto. NOTA Si utilizza la condizione di Hall soprattutto per mostrare che non esiste un matching perfetto su un grafo bipartito (condizione di Hall violata). TEOREMA Dato un grafo bipartito,,, su esiste sempre un matching stabile.