Problemi di copertura, impaccameto e partizioameto (Set Coverig, Packig ad Partitioig Problems) Ua defiizioe geerale dei Problemi di Ottimizzazioe Combiatorica: Defiizioe: Soo dati u isieme fiito N={1,,} ed u vettore c =[c 1,,c ] Dato u geerico sottisieme F N, si defiisce c(f) come c( F) = c j j F Sia data ua collezioe F di sottisiemi di N, allora u Problema di Ottimizzazioe Combiatorica (POC) è dato da (POC) ma c( F) F F I problemi di coverig, packig e partitioig soo tre tipi di problemi di ottimizzazioe combiatorica che differiscoo per il modo co cui è defiito l isieme F, ossia per la diversa proprietà che caratterizza gli isiemi F coeuti i F IP-126
Sia dato u isieme fiito M={1,,m} ed u isieme di sottisiemi di M, co N={1,,} { j : } S = M N Si defiiscoo le tre segueti classi di problemi: L isieme F N si dice Coverig di M se U j F U problema di Set Coverig è u POC per cui F={F: F è coverig di M} L isieme F N si dice Packig di M se j, k F, j k I Mk = U problema di Set Packig è u POC per cui F={F: F è packig di M} = M L isieme F N si dice Partitioig di M se F è sia u coverig che u packig di M U problema di Set Partitioig è u POC per cui F={F: F è partitioig di M} ipicamete i problemi di Set Coverig cercao la copertura a costo miimo, per cui i valori c j rappresetao il costo di ; i problemi di Set Packig cercao l impaccatura dal valore massimo, per cui i valori di c j rappresetao il valore di IP-127
Formulazioe dei problemi I POC di Set Coverig, Packig e Partitioig possoo essere formulati come problemi lieari a umeri biary (0-1 IP) Si defiisce la Matrice di Icideza di S, ua matrice A (m) La matrice A ha ua riga per ogi elemeto di M ed ua coloa per ogi sottisieme M M j A = a11 L a1 1 M M M am1 L am m M1 L M aij = 1 0 se i M j se i M j Si defiisce Vettore di Icideza di F B tale che j = 1 0 se j F se j F (viee scelto l isieme ) (o viee scelto l isieme ) Allora i vicoli delle tre classi di problemi si possoo scrivere come: Coverig: A 1 Packig: Partitioig: A 1 A = 1 dove 1 è u vettore a m elemeti tale che 1 =[1,,1] IP-128
Esempi di POC a) Formazioe di gruppi di lavoro Soo date m attività ed persoe, ciascua i grado di svolgere u sottisieme di tali attività Ad ogi persoa j, j=1,,, è associato u costo c j Si vuole costituire u gruppo di lavoro formato da u sottisieme di persoe i maiera che il gruppo sia i grado di svolgere tutte le attività al costo complessivo miimo M={1,,m} l isieme delle attività N={1,,} l isieme delle persoe S = M M: j N { j } è il sottisieme delle attività che la persoa j è i grado di svolgere: ad esempio, se la persoa j è i grado di svolgere l attività i allora i La matrice A ha ua riga per ciascua attività ed ua coloa per ciascua persoa E u problema di Set Coverig Le variabili costituiscoo il vettore di icideza che idica le persoe scelte mi c A 1 B IP-129
b) Localizzazioe di impiati (Facility Locatio) Soo date m comuità che devoo essere protette da ua cetrale atiicedio ed possibili localizzazioi delle cetrali Il costo pagato per posizioare ua cetrale el sito j è c j Ua cetrale situata i j è i grado di proteggere u certo sottisieme di comuità Si vuole determiare dove localizzare le cetrali i modo che tutte le comuità siao protette miimizzado il costo complessivo M={1,,m} N={1,,} { j : } S = M N l isieme delle comuità da proteggere l isieme delle possibili localizzazioi delle cetrali è il sottisieme delle comuità che soo protette da ua cetrale situata i j (ad esempio, perchè è raggiugibile etro u tempo massimo) La matrice A ha ua riga per ciascua comuità da proteggere ed ua coloa per ciascua possibile localizzazioe di ua cetrale E u problema di Set Coverig Le variabili costituiscoo il vettore di icideza che idica i siti scelti per le cetrali mi c A 1 B IP-130
c) Problemi di istradameto (Routig Problem) Soo dati m clieti che devoo essere serviti da ua azieda di trasporti ed possibili rotte effettuate dai mezzi dell azieda Il costo pagato per seguire ua rotta j è c j Ua rotta j è i grado di servire u certo sottisieme di clieti Si vuole determiare quali rotte effettuare i modo che tutte i clieti siao serviti co il miimo costo complessivo M={1,,m} N={1,,} { j : } S = M N l isieme dei clieti da servire l isieme delle possibili rotte è il sottisieme dei clieti che soo serviti da u trasporto che segua la rotta j La matrice A ha ua riga per ciascu cliete da servire ed ua coloa per ciascua possibile rotta da far eseguire ai mezzi di trasporto E u problema di Set Coverig Le variabili costituiscoo il vettore di icideza che idica quali rotte soo state scelte mi c A 1 B IP-131
d) Formazioe dei collegi elettorali (Political Districtig) Devoo essere suddivisi m comui i u isieme di distretti elettorali Soo specificate a priori possibili suddivisioi i maiera che rispodao a determiati requisiti Se si sceglie di costituire il distretto j si paga u costo c j Ogi comue deve essere icluso esattamete i u solo distretto elettorale Si vuole determiare come formare i distretti elettorali i maiera da miimizzare il costo complessivo M={1,,m} N={1,,} { j : } S = M N l isieme dei comui l isieme dei possibili distretti è il sottisieme di comui che soo iclusi el distretto elettorale j La matrice A ha ua riga per ciascu comue ed ua coloa per ciascu possibile distretto elettorale E u problema di Set Partitioig Le variabili costituiscoo il vettore di icideza che idica quali soo i distretti che si voglioo formare mi c A = 1 B IP-132
Metodi di soluzioe dei problemi di IP Cosideriamo u problema (IP) ( IP) ma c 0 = A = b Z + Il poliedro P associato ai vicoli di (IP) cotiee tutti e soli i puti iteri che soo soluzioi di (IP): { Z :, 0} P = A = b Il rilassameto lieare (RL) di (IP) corrispode a rimuovere da (IP) il vicolo di itegrità: ( RL) ma c 0 = A = b Il poliedro P associato al (RL) è R + { R 0} P' = : A = b, P = P' Z quidi P cotiee ache tutte le soluzioi ammissibili per (IP) IP-133