Ricerca Operativa 2. Ricerca Operativa 2 p. 1/6
|
|
- Francesco Brescia
- 5 anni fa
- Visualizzazioni
Transcript
1 Ricerca Operativa 2 Ricerca Operativa 2 p. 1/6
2 Introduzione In questo corso ci occuperemo di problemi di ottimizzazione. Tali problemi sono tipicamente raggruppati in classi ognuna delle quali è formata da più istanze. Ricerca Operativa 2 p. 2/6
3 Classi di problemi Una classe di problemi di ottimizzazione è formata da un insieme I di istanze. Ogni istanza I I è rappresentata da una coppia (f I,S I ) dove f I : S I R è detta funzione obiettivo e S I è detta regione ammissibile. Ricerca Operativa 2 p. 3/6
4 Problemi di massimo Se il problema è di massimo, allora una sua istanza I si rappresenta nel modo seguente maxf I (x) x S I e risolvere l istanza vuol dire trovare un x S I tale che f I (x ) f I (x) x S I. Ricerca Operativa 2 p. 4/6
5 Problemi di minimo Se il problema è di minimo, allora una sua istanza I si rappresenta nel modo seguente min f I (x) x S I e risolvere l istanza vuol dire trovare un x S I tale che f I (x ) f I (x) x S I. Ricerca Operativa 2 p. 5/6
6 Ottimo e valore ottimo In entrambi i casi il punto x viene chiamato ottimo (globale) dell istanza I del problema, mentre f I (x ) viene detto valore ottimo dell istanza. Ricerca Operativa 2 p. 6/6
7 Classi già note Problemi di Programmazione Lineare (PL): ogni istanza I è definita dal vettore c I dei coefficienti delle variabili nell obiettivo, dal vettore b I dei termini noti e dalla matrice dei vincoli A I : In tal caso: max c I x A I x b I x 0 f I (x) = c I x, S I = {x R n : A I x b I, x 0}. Ricerca Operativa 2 p. 7/6
8 Esempio max 2x 1 + 3x 2 + 4x 3 x 1 x 2 + x 3 5 x 1 + 2x 2 + 3x 3 2 x 1,x 2,x 3 0 c I = (2 3 4) b I = (5 2) A I = [ ] Ricerca Operativa 2 p. 8/6
9 Classi già note: continua Problemi di Programmazione Lineare Intera (PLI): max c I x A I x b I x 0 x Z n In tal caso: f I (x) = c I x, S I = {x Z n : A I x b I, x 0}. Ricerca Operativa 2 p. 9/6
10 Classificazione All interno delle classi dei problemi di ottimizzazione possiamo riconoscere due grandi categorie. Ottimizzazione Combinatoria: in ogni istanza I la regione ammissibile S I contiene un numero finito o un infinità numerabile di punti. Ottimizzazione Continua: la regione ammissibile S I può contenere un infinità non numerabile di punti. Ricerca Operativa 2 p. 10/6
11 Esempi Alla categoria dei problemi di ottimizzazione combinatoria appartiene la classe dei problemi di PLI; alla categoria dei problemi di ottimizzazione continua appartiene la classe dei problemi di PL. In questo corso ci occuperemo prevalentemente di problemi di ottimizzazione combinatoria (con regione ammissibile di solito costituita da un numero finito di elementi) ma dedicheremo una parte anche all ottimizzazione continua. Ricerca Operativa 2 p. 11/6
12 Cenni di complessità Come primo passo vogliamo associare ad ogni problema di ottimizzazione un grado di difficoltà. Ci renderemo conto che esistono delle notevoli differenze nella difficoltà di risoluzione dei diversi problemi di ottimizzazione. Tali differenze vengono formalizzate nella teoria della complessità. Per cominciare introdurremo come esempi di diversi gradi di difficoltà tre problemi di ottimizzazione. Ricerca Operativa 2 p. 12/6
13 Alberi Definizione Sia dato un grafo G = (V,A) con V = n dove V denota la cardinalità (il numero di elementi) dell insieme V. Si dice che G è un albero se soddisfa le seguenti condizioni (equivalenti tra loro) 1. G è privo di cicli e connesso (ovvero esiste un cammino tra ogni coppia di nodi); 2. G è privo di cicli e A = n 1; 3. G è connesso e A = n 1; 4. esiste un unico cammino che congiunge ogni coppia di nodi. Ricerca Operativa 2 p. 13/6
14 Alberi di supporto Definizione Sia dato un grafo generico G = (V,A). Si definisce albero di supporto di G un sottografo T = (V,A T ) di G (quindi con A T A) che è un albero. Si noti che un albero di supporto di G deve contenere tutti i nodi di G e che in virtù del punto 2. (o del punto 3.) della definizione di albero, si dovrà avere A T = V 1. Ad ogni arco e A del grafo associamo un peso w(e): w : A R Ricerca Operativa 2 p. 14/6
15 Esempio G = (V,A) V = {a,b,c,d} A = {(a,b); (a,c); (a,d); (b,c); (b,d); (c,d)} e w(e) (a, b) 3 (a, c) 6 (a, d) 2 (b, c) 5 (b, d) 4 (c, d) 8 Ricerca Operativa 2 p. 15/6
16 Albero di supporto a peso minimo Regione ammissibile S: è composta da tutti i possibili alberi di supporto del grafo G, che sono in numero finito. Funzione obiettivo f: per ogni albero di supporto T = (V,A T ) S è definita come somma dei pesi degli archi dell albero, cioè f(t) = e A T w(e). Il problema dell albero di supporto a peso minimo o Minimum Spanning Tree (abbreviato nel seguito con M ST ) consiste nel determinare un albero di supporto T = (V,A T ) tale che f(t ) f(t) T S Ricerca Operativa 2 p. 16/6
17 Esempio T 1 = (V,A T1 ) A T1 = {(a,b); (a,d); (c,d)} f(t 1 ) = = 13 T 2 = (V,A T2 ) A T2 = {(a,c); (b,d); (c,d)} f(t 2 ) = = 18 Ricerca Operativa 2 p. 17/6
18 Il problema dello zaino Sia dato un insieme {1,...,n} di oggetti. Ad ogni oggetto i è associato: un peso p i > 0; un valore v i > 0. Si ha inoltre a disposizione uno zaino con capacità (peso massimo trasportabile) pari a b > 0. Ricerca Operativa 2 p. 18/6
19 Regione ammissibile È formata da tutti i sottinsiemi di oggetti il cui peso complessivo non supera la capacità dello zaino e quindi S = {N {1,...,n} : p i b}. i N Si noti che S è un insieme finito. Infatti S 2 n. Ricerca Operativa 2 p. 19/6
20 Funzione obiettivo f La funzione obiettivo è definita dalla somma dei valori degli oggetti nel sottinsieme, ovvero f(n) = i N v i. Il problema dello zaino, indicato nel seguito come problema KNAPSACK, è un problema di massimo e consiste nel determinare un sottinsieme N S tale che f(n ) f(n) N S. Ricerca Operativa 2 p. 20/6
21 Esempio Si consideri l insieme {1, 2, 3, 4} di oggetti con i seguenti valori e pesi v 1 = 8 v 2 = 6 v 3 = 10 v 4 = 1 p 1 = 7 p 2 = 7 p 3 = 13 p 4 = 4 Si supponga inoltre che la capacità dello zaino sia b = 16. Si ha che N 1 = {1, 4} S con f(n 1 ) = 9, N 2 = {2, 4} S con f(n 2 ) = 7, N 3 = {1, 3} S. Ricerca Operativa 2 p. 21/6
22 Nota bene La classe di problemi KNAPSACK prende il nome da una sua particolare applicazione (mettere oggetti nello zaino) ma naturalmente questa non è l unica applicazione in cui ci si trova a risolvere problemi in tale classe. Ricerca Operativa 2 p. 22/6
23 Circuito hamiltoniano Definizione Dato un grafo orientato G = (V,A), un circuito hamiltoniano è un sottografo C = (V,A C ) i cui archi formano un cammino orientato all interno del grafo che partendo da un nodo dello stesso tocca tutti gli altri nodi una ed una sola volta e ritorna infine al nodo di partenza. NB: A C = V. Ricerca Operativa 2 p. 23/6
24 Regione ammissibile S È costituita da tutti i possibili circuiti hamiltoniani del grafo. Se il grafo è completo (cioè esiste un arco orientato tra ogni coppia ordinata di nodi) il numero di tali circuiti è pari a (n 1)! dove n = V è il numero di nodi. Ricerca Operativa 2 p. 24/6
25 Funzione obiettivo f Ad ogni arco (i,j) A è associato un valore d ij che rappresenta la "distanza" da percorrere lungo tale arco. Dato il circuito hamiltoniano C = (V,A C ), f associa a C la somma delle "distanze" degli n archi attraversati dal circuito, cioè f(c) = (i,j) A C d ij e rappresenta quindi la "distanza" complessiva percorsa lungo il circuito. Ricerca Operativa 2 p. 25/6
26 Esempio Grafo completo con insieme di nodi V = {a,b,c,d}. Distanze d ij : a b c d a b c d Ricerca Operativa 2 p. 26/6
27 Esempio - continua C 1 = (V,A C1 ) A C1 = {(a,b); (b,c); (c,d); (d,a)} Circuito hamiltoniano a b c d a. f(c 1 ) = = 18 C 2 = (V,A C2 ) A C2 = {(a,c); (c,d); (d,b); (b,a)} Circuito hamiltoniano a c d b a. f(c 2 ) = = 19 Ricerca Operativa 2 p. 27/6
28 Il problema del commesso viaggiatore o Travelling Salesman Problem (abbreviato con TSP nel seguito) è un problema di minimo in cui si cerca un circuito hamiltoniano C = (V,A C ) con "distanza" complessiva minima, cioè f(c ) f(c) C S. Ricerca Operativa 2 p. 28/6
29 Il problema TSP simmetrico Problema TSP in cui: (i,j) e (j,i) A : d ij = d ji. Si può rappresentare con un grafo non orientato con un solo arco non orientato tra ogni coppia di nodi e il numero totale di circuiti hamiltoniani è dimezzato rispetto al caso asimmettrico. Ricerca Operativa 2 p. 29/6
30 Nota bene Come per la classe di problemi KNAPSACK, anche la classe TSP prende il nome da una sua particolare applicazione ma anche in questo caso questa non è l unica applicazione in cui ci si trova a risolvere problemi in tale classe. Ricerca Operativa 2 p. 30/6
31 Enumerazione completa Valuta la funzione f per ogni elemento in S e restituisci l elemento con valore di f minimo (o massimo se il problema è di massimo). Tutte le istanze dei tre problemi descritti in precedenza sono risolvibili in modo esatto con questa procedura, detta di enumerazione completa, poiché le regioni ammissibili sono sempre costituite da un numero finito di elementi. Ricerca Operativa 2 p. 31/6
32 Ma una semplice osservazione metterà in luce i limiti di questo approccio. Problema TSP su un grafo completo con numero di nodi n = 22 numero di circuiti hamiltoniani pari a (n 1)! = 21! > Ipotesi: la valutazione della funzione obiettivo per un singolo circuito hamiltoniano richieda un nanosecondo (10 9 secondi). Quindi la valutazione di tutti i circuiti hamiltoniani richiede più di secondi > 200 anni! Ricerca Operativa 2 p. 32/6
33 Da un punto di vista pratico si parlerà di problema risolvibile con una data procedura solo nel caso in cui la procedura restituisca una soluzione in tempi ragionevoli. Ciò rende la procedura di enumerazione completa accettabile solo per istanze di problemi di dimensioni limitate (quindi per grafi con pochi nodi per i problemi MST e TSP e per istanze con pochi oggetti per il problema KNAPSACK). Ricerca Operativa 2 p. 33/6
34 Domanda Esistono altre procedure che consentono di risolvere in tempi ragionevoli istanze dei tre problemi visti con dimensioni molto più elevate? Risposta: dipende dal problema. È facile trovare procedure più efficienti dell enumerazione completa ma mentre per uno dei problemi (il problema MST ) si possono risolvere in tempi ragionevoli istanze di grandi dimensioni, per il problema KNAPSACK e, ancor più, per il problema T SP può essere difficile risolvere anche istanze di dimensioni non troppo elevate. Tutto ciò ha una formulazione ben precisa nella teoria della complessità, della quale si daranno brevi cenni di seguito. Ricerca Operativa 2 p. 34/6
35 Complessità Dimensione dim(i) = quantità di memoria necessaria per memorizzare (in codifica binaria) l istanza I. Procedura di risoluzione o algoritmo A per il problema. numop A (I)= numero di operazioni elementari eseguite da A per risolvere I. Ricerca Operativa 2 p. 35/6
36 Analisi worst case L analisi worst case definisce il tempo t A (k) necessario all algoritmo A per risolvere istanze di dimensione k come il massimo tra tutti i tempi di esecuzione di istanze di dimensione k, cioè t A (k) = max numop A(I). I: dim(i)=k Ricerca Operativa 2 p. 36/6
37 Continua Tipicamente non si conosce l espressione analitica della funzione t A (k) ma se ne conosce l ordine di grandezza. Si dice che la funzione t A (k) = O(g(k)), ovvero che t A (k) è dell ordine di grandezza della funzione g(k), se esiste una costante u > 0 tale che t A (k) ug(k). Ricerca Operativa 2 p. 37/6
38 Diverse possibili funzioni g g(k) k = 10 k = 20 k = 30 k = 40 k = 50 log 2 (k) k k k k 1024 > 10 6 > 10 9 > > k! > > > > Ricerca Operativa 2 p. 38/6
39 Complessità degli algoritmi Un algoritmo per il quale t A (k) fosse dell ordine di grandezza di 2 k oppure k! si dice che ha complessità esponenziale. È evidente che un tale algoritmo consente di risolvere in tempi ragionevoli solo istanze di dimensioni limitate. Per questa ragione si cercano per i problemi algoritmi di risoluzione con complessità polinomiale, in cui cioè la funzione t A è dell ordine di grandezza di un polinomio k p per un qualche esponente p. Ricerca Operativa 2 p. 39/6
40 Continua Tanto maggiore è l esponente p del polinomio, quanto più rapidamente cresce il numero di operazioni dell algoritmo al crescere di k e quindi quanto più piccole sono le dimensioni dei problemi che l algoritmo è in grado di risolvere in tempi ragionevoli (già per p = 4 la crescita è piuttosto rapida). Tuttavia la crescita polinomiale è sempre preferibile ad una esponenziale. Ricerca Operativa 2 p. 40/6
41 Domanda Data una classe di problemi di ottimizzazione combinatoria, possiamo sempre trovare un algoritmo con complessità polinomiale che ne risolva le istanze? Risposta: forse, ma è molto improbabile. Ricerca Operativa 2 p. 41/6
42 La classe P Definizione Un problema di ottimizzazione appartiene alla classe P se esiste almeno un algoritmo di complessità polinomiale che lo risolve. I problemi di PL appartengono alla classe P ma l algoritmo del simplesso non ha complessità polinomiale! Esistono altri algoritmi che risolvono i problemi di PL e che hanno complessità polinomiale. Non è invece noto, ma è ritenuto improbabile, se i problemi di PLI appartengano alla classe P. Ricerca Operativa 2 p. 42/6
43 Algoritmo greedy per il problema MST Passo 1 Dato il grafo G = (V,A), si ordinino tutti gli m = A archi del grafo in ordine non decrescente rispetto al peso, cioè w(e 1 ) w(e 2 ) w(e m 1 ) w(e m ). Si parta con un insieme A T di archi vuoto, cioè A T =. Sia k = 1 Passo 2 Se A T = V 1 ci si arresta e si restituisce l albero T = (V,A T ) come soluzione. Altrimenti si vada al Passo 3. Passo 3 Se e k non forma cicli con gli archi in A T, lo si aggiunga ad A T, cioè si ponga A T = A T {e k }. Altrimenti si lasci A T invariato. Passo 4 Si ponga k = k + 1 e si ritorni al Passo 2. Ricerca Operativa 2 p. 43/6
44 Esempio e w(e) (a, b) 3 (a, c) 6 (a, d) 2 (b, c) 5 (b, d) 4 (c, d) 8 L algoritmo greedy, dopo l ordinamento degli archi, prende gli archi (a,d) e (a,b), scarta l arco (b,d) (forma un ciclo con i primi due) e infine prende l arco (b,c) arrestandosi a questo punto. Ricerca Operativa 2 p. 44/6
45 Complessità dell algoritmo Il numero di operazioni dell algoritmo è O( A log( A )), con A cardinalità dell insieme degli archi. Quindi: l algoritmo ha complessità polinomiale e ciò ci permette di dire che MST P. Ricerca Operativa 2 p. 45/6
46 Nota bene Nel risolvere un problema vorremmo sempre eseguire il minor numero possibile di operazioni. Quindi, dato un problema e un algoritmo che lo risolve, ci si può sempre chiedere se esista un algoritmo di complessità migliore che risolva il problema. Nel caso del MST tale algoritmo esiste e ha complessità pari a O( V 2 ) che, almeno per grafi densi, è migliore di O( A log( A )). Si può anche dimostrare che, in un senso che non specificheremo, questo algoritmo ha complessità ottima, ovvero non esiste un algoritmo che risolva il problema MST con complessità migliore di questa. Ricerca Operativa 2 p. 46/6
47 La classe NP Definizione Una classe di problemi con insieme di istanze I si dice che appartiene alla classe NP se, per ogni istanza I del problema, essendo nota la soluzione ottima x dell istanza, il calcolo del valore ottimo f I (x ) dell istanza può essere effettuato in un tempo polinomiale rispetto alla dimensione dell istanza. Ricerca Operativa 2 p. 47/6
48 P NP Infatti, per tutti i problemi nella classe P il calcolo del valore ottimo di ogni istanza del problema può essere effettuato in tempo polinomiale persino a prescindere dalla conoscenza della soluzione ottima x. Abbiamo quindi, in particolare, che MST P MST NP. Ricerca Operativa 2 p. 48/6
49 KNAPSACK NP Data una soluzione ottima N di un istanza I del problema di KNAPSACK, si ha f I (N ) = i N v i e quindi il calcolo richiede N n somme e quindi un numero polinomiale di operazioni rispetto alla dimensione dell istanza. Ricerca Operativa 2 p. 49/6
50 TSP NP Data una soluzione ottima C = (V I,A C ), dove A C = V I, di un istanza I, relativa al grafo G I = (V I,A I ), del problema di TSP, si ha f I (C ) = (i,j) A C e quindi il calcolo richiede V I somme, ovvero un numero polinomiale (in tal caso lineare) di operazioni rispetto alla dimensione dell istanza. d ij Ricerca Operativa 2 p. 50/6
51 Ma......stabilito che P NP, ci si può chiedere se tutti i problemi in NP sono risolvibili in tempo polinomiale, cioè P = NP, oppure se esistono problemi in NP che non sono risolvibili in tempo polinomiale, cioè P NP. La risposta è... beh, se l avete siete pronti ad entrare nell olimpo dei grandi della matematica! Tra le due possibili risposte quella che, di gran lunga, si ritiene la più probabile è che P NP. Ricerca Operativa 2 p. 51/6
52 Problemi NP completi Definizione Un problema si dice NP completo se soddisfa le seguenti due proprietà: appartiene alla classe NP ; se esistesse un algoritmo di complessità polinomiale che lo risolve, allora P = NP. Ricerca Operativa 2 p. 52/6
53 Continua In base alla definizione e al fatto che non sia chiaro se P = NP o P NP, possiamo dire che non sono al momento noti algoritmi di complessità polinomiale in grado di risolvere problemi N P completi. Inoltre, se, come si ritiene, P NP, allora non esisterebbero algoritmi di complessità polinomiale per tali problemi. Ne risulta quindi che la classe dei problemi NP completi è una classe di problemi "difficili" nel senso che, a meno che non sia P = NP, non possiamo risolverli in tempo polinomiale. Per i problemi visti abbiamo che KNAPSACK,TSP NP completi. Ricerca Operativa 2 p. 53/6
54 Problemi di approssimazione Sia data una classe di problemi di ottimizzazione con insieme I di istanze e tale che I I x S I : f I (x) 0. Per ogni istanza I I sia x la soluzione ottima dell istanza e sia opt(i) = f I (x ) il valore ottimo dell istanza. Ricerca Operativa 2 p. 54/6
55 Continua Definizione Per i problemi di massimo il problema di ε-approssimazione, ε 0, consiste nel determinare un punto x S I tale che opt(i) f I (x) 1 + ε. Per i problemi di minimo il problema di ε-approssimazione consiste nel determinare un punto x S I tale che f I (x) opt(i) 1 + ε. In entrambi i casi il punto x viene definito soluzione ε-approssimata del problema. Ricerca Operativa 2 p. 55/6
56 Continua Per ε = 0 il problema coincide con quello di ottimizzazione. Ma per ε > 0 si richiede qualcosa di meno rispetto al problema di ottimizzazione: non si cerca la soluzione ottima ma una soluzione che non si discosti troppo da quella ottima. In particolare, si ricava che in una soluzione ε-approssimata il valore f I in corrispondenza di tale soluzione differisce, sia per i problemi di massimo che per quelli di minimo, per al più εopt(i) dal valore ottimo opt(i) dell istanza. Chiaramente, tanto maggiore è il valore di ε, quanto minore è la precisione garantita da una soluzione ε-approssimata. Ricerca Operativa 2 p. 56/6
57 Algoritmi di approssimazione Un algoritmo A si definisce algoritmo di ε-approssimazione per una classe di problemi di ottimizzazione, se risolve il problema di ε-approssimazione associato ad ogni istanza I I del problema di ottimizzazione. Ricerca Operativa 2 p. 57/6
58 Ma allora dato un problema NP completo, qual è la complessità dei corrispondenti problemi di ε-approssimazione per diversi possibili valori di ε? Possiamo riconoscere quattro diversi possibili casi in ordine crescente di difficoltà. Ricerca Operativa 2 p. 58/6
59 I quattro gradi di difficoltà Caso 1 Per ogni ε > 0 esiste un algoritmo di ε-approssimazione che richiede tempi polinomiali sia rispetto alla dimensione delle istanze, sia rispetto all inverso 1 ε della precisione richiesta. In tal caso si dice che il problema ammette uno schema di approssimazione completamente polinomiale. Caso 2 Per ogni ε > 0 esiste un algoritmo di ε-approssimazione che richiede tempo polinomiale rispetto alla dimensione delle istanze ma esponenziale rispetto all inverso 1 ε della precisione richiesta. In tal caso si dice che il problema ammette uno schema di approssimazione polinomiale. Ricerca Operativa 2 p. 59/6
60 Caso 3 Per valori piccoli di ε, anche il problema di ε-approssimazione è N P completo, mentre per valori di ε più elevati è risolvibile in tempo polinomiale. Caso 4 Per ogni valore di ε il problema di ε-approssimazione è N P completo. Ricerca Operativa 2 p. 60/6
61 Tra i problemi visti KNAPSACK rientra nel Caso 1: esiste un algoritmo di approssimazione per tale problema, denominato algoritmo scaling-rounding, di complessità O ( n ε 2). T SP rientra nel Caso 4 (anche nel sottocaso simmetrico): per esso non è possibile risolvere in tempi polinomiali, a meno che non sia P = NP, neppure il problema di ε-approssimazione per ogni valore di ε. Più avanti introdurremo un caso particolare di problema TSP, chiamato problema TSP metrico, che, come vedremo, rientra nel Caso 3. Ricerca Operativa 2 p. 61/6
62 Tecniche euristiche Quando affrontiamo un problema vorremmo avere risposte in "tempi ragionevoli". Questo è tanto più difficile, quanto più difficile è il problema che cerchiamo di risolvere in base alla teoria della complessità. Quindi possiamo aspettarci che per problemi nella classe P si possano risolvere in modo esatto in "tempi ragionevoli" anche istanze molto grandi, mentre per problemi NP completi questo è più complicato, in taluni casi persino se ci si accontenta di una soluzione approssimata. Ricerca Operativa 2 p. 62/6
63 Tuttavia questa non è una regola sempre valida. Il tutto, infatti, è strettamente legato all applicazione a cui siamo interessati e a cosa si intende per "tempi ragionevoli" per essa. In alcune applicazioni si devono risolvere problemi appartenenti alla classe P ma si desiderano risposte in tempo reale (frazioni di secondo), che neppure un algoritmo di complessità polinomiale è in grado di fornire. In altre applicazioni si devono risolvere problemi difficili ma i tempi richiesti per la risposta sono molto larghi (giorni o persino mesi) ed in tal caso si può anche sperare di risolvere tali problemi in modo esatto nei limiti di tempo richiesti. Ricerca Operativa 2 p. 63/6
64 In ogni caso ci si pone la seguente domanda: cosa possiamo fare se i "tempi ragionevoli" entro cui si desidera una risposta sono troppo brevi per poter sperare di ottenere una soluzione esatta o approssimata del problema che stiamo affrontando? Possiamo utilizzare tecniche euristiche. Ricerca Operativa 2 p. 64/6
65 Tecniche euristiche Un euristica si può definire come un compromesso tra tempi di esecuzione e qualità della soluzione trovata e deve quindi soddisfare i seguenti due requisiti in conflitto tra loro: 1. essere eseguibile in tempi ragionevoli (in particolare deve avere complessità polinomiale); 2. deve restituire su molte istanze del problema una soluzione ottima o vicina a quella ottima. Ricerca Operativa 2 p. 65/6
Ricerca Operativa 2. Ricerca Operativa 2 p. 1/6
Ricerca Operativa 2 Ricerca Operativa 2 p. 1/6 Introduzione In questo corso ci occuperemo di problemi di ottimizzazione. Ricerca Operativa 2 p. 2/6 Introduzione In questo corso ci occuperemo di problemi
DettagliIntroduzione ai grafi. Introduzione ai grafi p. 1/2
Introduzione ai grafi Introduzione ai grafi p. 1/2 Grafi Un grafo G è costituito da una coppia di insiemi (V,A) dove V è detto insieme dei nodi e A è detto insieme di archi ed è un sottinsieme di tutte
DettagliTeoria della Complessità Concetti fondamentali
Teoria della Complessità Concetti fondamentali L oggetto della teoria della complessità è stabilire se un problema sia facile o difficile La difficoltà di un problema è una caratteristica generale e non
DettagliIntroduzione ai grafi. Introduzione ai grafi p. 1/2
Introduzione ai grafi Introduzione ai grafi p. 1/2 Grafi Un grafo G é costituito da una coppia di insiemi (V,A) dove V é detto insieme dei nodi e A é detto insieme di archi ed é un sottinsieme di tutte
Dettagli3 CENNI DI TEORIA DELLA COMPLESSITA COMPUTAZIONALE. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1
3 CENNI DI TEORIA DELLA COMPLESSITA COMPUTAZIONALE E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 Scopo: Stimare l onere computazionale per risolvere problemi di ottimizzazione e di altra natura
DettagliMETODI DELLA RICERCA OPERATIVA
Università degli Studi di Cagliari FACOLTA' DI INGEGNERIA CORSO DI METODI DELLA RICERCA OPERATIVA Dott.ing. Massimo Di Francesco (mdifrance@unica.it) i i Dott.ing. Maria Ilaria Lunesu (ilaria.lunesu@unica.it)
DettagliAlgoritmi esatti. La teoria ci dice che per problemi difficili (come il
p. 1/4 Algoritmi esatti La teoria ci dice che per problemi difficili (come il KNAPSACK o, ancora di più, il TSP ) i tempi di risoluzione delle istanze, calcolati tramite analisi worst-case, tendono a crescere
Dettagli3.2 Rilassamenti lineari/combinatori e bounds
3.2 Rilassamenti lineari/combinatori e bounds Consideriamo un problema di Ottimizzazione Discreta min{f(x) : x X} e sia z il valore di una soluzione ottima x X. Metodi di risoluzione spesso generano una
DettagliProblemi, istanze, soluzioni
lgoritmi e Strutture di Dati II 2 Problemi, istanze, soluzioni Un problema specifica una relazione matematica tra dati di ingresso e dati di uscita. Una istanza di un problema è formata dai dati di un
DettagliTeoria della Complessità Computazionale
Teoria della Complessità Computazionale Daniele Vigo D.E.I.S. - Università di Bologna dvigo@deis.unibo.it Rev. 1.3, 11/00 rev. 1.3 - Novembre 2000 Teoria della Complessità Studia la difficoltà dei problemi
DettagliALGORITMI DI OTTIMIZZAZIONE M Esercizi Parte I
ALGORITMI DI OTTIMIZZAZIONE M Esercizi Parte I Esercizio 1 Dati n oggetti ed un contenitore, ad ogni oggetto j (j = 1,, n) sono associati un peso p j ed un costo c j (con p j e c j interi positivi). Si
DettagliProf. Pagani Corrado ALGORITMI E COMPLESSITÀ COMPUTAZIONALE
Prof. Pagani Corrado ALGORITMI E COMPLESSITÀ COMPUTAZIONALE COMPLESSITÀ DEGLI ALGORITMI L oggetto della teoria della complessità è stabilire se un problema sia facile o difficile In base a quali parametri
DettagliMetodi e Modelli per l Ottimizzazione Combinatoria Cover inequalities
Metodi e Modelli per l Ottimizzazione Combinatoria Cover inequalities L. De Giovanni M. Di Summa In questa lezione introdurremo una classe di disuguaglianze, dette cover inequalities, che permettono di
Dettagli2 OTTIMIZZAZIONE SU GRAFI. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1
2 OTTIMIZZAZIONE SU GRAFI E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 Molti problemi decisionali possono essere formulati utilizzando il linguaggio della teoria dei grafi. Esempi: - problemi di
DettagliProprietà di un euristica
p. 1/3 Euristiche Cosa fare se non ci possiamo aspettare di determinare in tempi ragionevoli una soluzione ottima o approssimata di un problema? Dobbiamo rinunciare a trattare il problema? No, possiamo
DettagliFigura 1: 1) Si scriva la formulazione del problema come problema di PLI (con un numero minimo di vincoli) e la matrice dei vincoli.
ESERCIZIO 1 Sia dato il grafo orientato in Figura 1. Si consideri il problema di flusso a 1 2 4 Figura 1: costo minimo su tale grafo con b 1 = 4 b 2 = 2 b = b 4 = e c 12 = 2 c 1 = 4 c 14 = 1 c 2 = 1 c
DettagliPossibile applicazione
p. 1/4 Assegnamento Siano dati due insiemi A e B entrambi di cardinalità n. Ad ogni coppia (a i,b j ) A B è associato un valore d ij 0 che misura la "incompatibilità" tra a i e b j, anche interpretabile
DettagliBranch-and-bound per TSP
p. 1/6 Branch-and-bound per TSP Anche qui, rispetto allo schema generale visto in precedenza dobbiamo specificare: p. 1/6 Branch-and-bound per TSP Anche qui, rispetto allo schema generale visto in precedenza
DettagliRichiami di Teoria dei Grafi. Paolo Detti Dipartimento di Ingegneria dell Informazione Università di Siena
Richiami di Teoria dei Grafi Paolo Detti Dipartimento di Ingegneria dell Informazione Università di Siena Teoria dei grafi La Teoria dei Grafi costituisce, al pari della Programmazione Matematica, un corpo
DettagliProblemi intrattabili
Tempo polinomiale ed esponenziale Una Tm M ha complessita in tempo T(n) se, dato un input w di lunghezza n, M si ferma dopo al massimo T (n) passi. Problemi intrattabili Ci occuperemo solo di problemi
DettagliPROGRAMMAZIONE LINEARE A NUMERI INTERI
PROGRAMMAZIONE LINEARE A NUMERI INTERI N.B. Nei seguenti esercizi vengono utilizzate, salvo diversa indicazione, le seguenti notazioni: PLO programma lineare ordinario S a insieme delle soluzioni ammissibili
Dettagli1) 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;
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; c 24 = 15; c 25 = 12; c 34 = 32; c 35 = 55; c 45 = 24 Si calcoli l ottimo duale (formulazione
DettagliCertificati dei problemi in NP
Certificati dei problemi in NP La stringa y viene in genere denominata un certificato Un Certificato è una informazione ausiliaria che può essere utilizzata per verificare in tempo polinomiale nella dimensione
DettagliTeoria della complessità
Teoria della complessità Materiale consigliato: testo del corso capitolo 34 Introduzione agli algoritmi e strutture dati T.H. Cormen, C.E. Leiserson, R.L. Rivest, C. Stein McGraw Hill, 2005 Denise Salvi
DettagliMassimo flusso e matching
Capitolo Massimo flusso e matching. Problema del massimo matching. Nel problema del massimo matching è dato un grafo non orientato G(V, A); un matching in G è un insieme di archi M A tale che nessuna coppia
DettagliIntroduzione ai grafi
TFA A048 Anno Accademico 2012-13 Outline Cenni storici sui grafi Nozioni introduttive: cammini, connessione, alberi, cicli Cammini di costo minimo Origini storiche La nascita della teoria dei grafi risale
DettagliRICERCA OPERATIVA (a.a. 2016/17) Nome: Cognome: Matricola:
Secondo appello //0 RICERCA OPERATIVA (a.a. 0/) Nome: Cognome: Matricola: ) Si risolva il seguente problema di PL max x x x x x + x x x per via algebrica, mediante l algoritmo del Simplesso Primale a partire
DettagliRICERCA OPERATIVA (a.a. 2015/16) Nome: Cognome: Matricola:
o Appello // RICERCA OPERATIVA (a.a. /) Nome: Cognome: Matricola: ) Si consideri il seguente problema di PL: max x + x x x x x x + x x Si applichi l algoritmo del Simplesso Duale, per via algebrica, a
DettagliFormulazioni. Consideriamo il seguente problema di Knapsack 0-1. max (5x x 2. ) st 3x x 2. < 6 x {0,1} 2
Formulazioni Consideriamo il seguente problema di Knapsack 0-1 max (5x 1 + 2x 2 ) st 3x 1 + 4x 2 < 6 x {0,1} 2 Insiemi ammissibili F = {(0, 0), (0, 1), (1, 0)} Rappresentiamo sul piano gli insiemi ammissibili.
DettagliRicerca Operativa A.A. 2007/ Esercitazione di laboratorio: Branch and Bound.
Ricerca Operativa A.A. 2007/2008 17. Esercitazione di laboratorio: Branch and Bound. Luigi De Giovanni - Ricerca Operativa - 17. Esercitazione di laboratorio: Branch and Bound 17.1 . Luigi De Giovanni
DettagliQuinto appello 27/6/ = 4. B b B = 2 b N = 4
Quinto appello // RICERCA OPERATIVA (a.a. /) Nome: Cognome: Matricola: ) Si risolva il problema di PL dato applicando l algoritmo del Simplesso Duale, per via algebrica, a partire dalla base B {, }. Per
DettagliAlgoritmi Euristici. Molti problemi reali richiedono soluzioni algoritmiche
9 Algoritmi Euristici introduzione Vittorio Maniezzo Università di Bologna 1 Molti problemi reali richiedono soluzioni algoritmiche I camion devono essere instradati VRP, NP-hard I depositi o i punti di
DettagliProblema del trasporto
p. 1/1 Problema del trasporto Supponiamo di avere m depositi in cui è immagazzinato un prodotto e n negozi che richiedono tale prodotto. p. 1/1 Problema del trasporto Supponiamo di avere m depositi in
DettagliMatroidi, algoritmi greedy e teorema di Rado
Matroidi, algoritmi greedy e teorema di Rado per il corso di Laboratorio di Algoritmi e Ricerca Operativa Dott. Alberto Leporati / Prof.ssa Enza Messina Dipartimento di Informatica, Sistemistica e Comunicazione
DettagliIl Problema dell Albero Ricoprente Minimo (Shortest Spanning Tree - SST)
Il Problema dell Albero Ricoprente Minimo (Shortest Spanning Tree - SST) È dato un grafo non orientato G=(V,E). Ad ogni arco e i E, i=1,,m, è associato un costo c i 0 7 14 4 10 9 11 8 12 6 13 5 17 3 2
DettagliGestione della produzione e della supply chain Logistica distributiva
Gestione della produzione e della supply chain Logistica distributiva Paolo Detti Dipartimento di Ingegneria dell Informazione e Scienze Matematiche Università di Siena Convergenza dell algoritmo Se non
DettagliPrima prova Intermedia di Ricerca Operativa 2 COMPITO A Esercizio 1 (7 punti): LIFO
Prima prova Intermedia di Ricerca Operativa 2 COMPITO A 13 novembre 2015 Nome e Cognome Matricola: Esercizio 1 (7 punti): Si consideri il seguente problema di programmazione lineare intera. max 32x 1 +
DettagliRicerca Operativa. G. Liuzzi. Lunedí 20 Aprile 2015
1 Lunedí 20 Aprile 2015 1 Istituto di Analisi dei Sistemi ed Informatica IASI - CNR Rilassamento di un problema Rilassare un problema di Programmazione Matematica vuol dire trascurare alcuni (tutti i)
DettagliAutomi e Linguaggi Formali
Automi e Linguaggi Formali Problemi intrattabili, classi P e NP A.A. 2014-2015 Alessandro Sperduti sperduti@math.unipd.it Problemi intrattabili Ci occuperemo solo di problemi decidibili, cioè ricorsivi.
DettagliProgrammazione Lineare Intera. Programmazione Lineare Intera p. 1/4
Programmazione Lineare Intera Programmazione Lineare Intera p. 1/4 Programmazione Lineare Intera Problema di PLI in forma standard: max cx Ax = b x 0, x I n I insieme degli interi. Regione ammissibile:
DettagliIntroduzione ai Problemi di Flusso su Reti
UNIVERSI DI PIS IROCINIO ORMIVO IVO - I CICLO CLSSE DI BILIZIONE MEMIC PPLIC Introduzione ai Problemi di lusso su Reti Relatore: Prof. V. Georgiev.U: Prof. M. Berni Elisabetta lderighi R.O e Riforma della
DettagliMatrici unimodulari e totalmente unimodulari
Matrici unimodulari e totalmente unimodulari Sia una matrice intera di dimensione con, si dice unimodulare se presa una qualsiasi sottomatrice di ordine massimo (di dimensione ) vale det = 1, +1, 0. Una
DettagliComplessità Computazionale
Complessità Computazionale La teoria della Computabilità cattura la nozione di algoritmo nel senso che per ogni problema sia esso decisionale o di calcolo di funzione stabilisce dei criteri per determinare
DettagliProblema di flusso massimo
p. 1/5 Problema di flusso massimo Si consideri una rete, ovvero un grafo orientato G = (V,A). Attraverso tale rete si fa viaggiare quello che chiameremo genericamente un flusso di "prodotto". A seconda
DettagliTeoria della Complessità Computazionale
Teoria della Complessità Computazionale Laura Galli Dipartimento di Informatica Largo B. Pontecorvo 3, 56127 Pisa laura.galli@unipi.it http://www.di.unipi.it/~galli 21 Ottobre 2014 Ricerca Operativa 2
DettagliEuristiche per il Problema del Commesso Viaggiatore
Sapienza Università di Roma - Dipartimento di Ingegneria Informatica, Automatica e Gestionale Euristiche per il Problema del Commesso Viaggiatore Renato Bruni bruni@dis.uniroma.it Il materiale presentato
DettagliLaboratorio di Algoritmi
Laboratorio di Algoritmi Corso di Laurea in Matematica Roberto Cordone DI - Università degli Studi di Milano Lezioni: Lunedì 10.30-13.30 in Aula 2 Martedì 8.30-10.30 in aula 3 Giovedì 8.30-10.30 in aula
DettagliGestione della produzione e della supply chain Logistica distributiva. Paolo Detti Dipartimento di Ingegneria dell Informazione Università di Siena
Gestione della produzione e della supply chain Logistica distributiva Paolo Detti Dipartimento di Ingegneria dell Informazione Università di Siena Un algoritmo per il flusso a costo minimo: il simplesso
DettagliTeoria dei Grafi Concetti fondamentali
Teoria dei Grafi Concetti fondamentali I grafi sono un mezzo per rappresentare relazioni binarie. Ad esempio: due città connesse da una strada due calcolatori connessi in una rete telematica due persone
DettagliA UNIVERSITÀ DEGLI STUDI ROMA TRE Corso di Studi in Ingegneria Informatica Ricerca Operativa 1 Seconda prova intermedia 17 giugno 2010
A Ricerca Operativa Seconda prova intermedia La produzione del pane su scala industriale segue un processo in cinque fasi: () preparazione ingredienti, () impasto in gradienti, (3) prima cottura, (4) trattamento
DettagliParte V: Rilassamento Lagrangiano
Parte V: Rilassamento Lagrangiano Tecnica Lagrangiana Consideriamo il seguente problema di Programmazione Lineare Intera: P 1 min c T x L I Ax > b Cx > d x > 0, intera in cui A = matrice m x n C = matrice
DettagliProblemi intrattabili, classi P e NP. Problemi intrattabili, classi P e NP
roblemi intrattabili Ci occuperemo solo di problemi decidibili, cioe ricorsivi. Tra loro, alcuni sono detti trattabili, se si puo provare che sono risolvibili in tempo polinomiale in modo deterministico.
DettagliTeoria della Complessità Computazionale Parte I: Introduzione
Teoria della Complessità Computazionale Parte I: Introduzione Daniele Vigo D.E.I.S. - Università di Bologna dvigo@deis.unibo.it rev. 3.0 - ottobre 2003 Teoria della Complessità Studia la difficoltà dei
DettagliAniello Murano Classe dei problemi NP. Nella lezione precedente abbiamo visto alcuni problemi che ammettono soluzione polinomiale
Aniello Murano Classe dei problemi NP 13 Lezione n. Parole chiave: Classe NP Corso di Laurea: Informatica Codice: Email Docente: murano@ na.infn.it A.A. 2008-2009 Introduzione alla lezione Nella lezione
DettagliParte IV: Matrici totalmente unimodulari
Parte IV: Matrici totalmente unimodulari Formulazioni Consideriamo il seguente problema di Knapsack 0-1 max (5x 1 + 2x 2 ) st 3x 1 + 4x 2 < 6 x {0,1} 2 Insiemi ammissibili F = {(0, 0), (0, 1), (1, 0)}
DettagliCOMPITO DI RICERCA OPERATIVA APPELLO DEL 07/04/04
COMPITO DI RICERCA OPERATIVA APPELLO DEL 07/04/04 Esercizio 1 1)Dato il seguente problema di PL: max 2x 1 x 2 x 1 + x 2 2 x 1 + 2x 2 7 x 1 + x 2 1 x 1, x 2 0 trasformarlo in forma standard (2 punti) 2)
DettagliParte II: Ottimalità, rilassamenti e bound
Parte II: Ottimalità, rilassamenti e bound Ottimalità, rilassamenti e bound Consideriamo il seguente problema z * = max {c T x : x X, X {0,1} n } dove z* è il valore della soluzione ottima x*. Domanda:
Dettagli3.3 Problemi di PLI facili
3.3 Problemi di PLI facili Consideriamo un generico problema di PLI espresso in forma standard min{c t x : Ax = b, x Z n +} (1) dove A Z m n con n m, e b Z m. Supponiamo che A sia di rango pieno. Sia P
DettagliProgrammazione dinamica
p. 1/1 Programmazione dinamica La programmazione dinamica è un altro approccio che consente di risolvere problemi in modo esatto. Considereremo solo problemi di massimo ma piccole modifiche consentono
DettagliA-2 a PI. Esercizio 2. Domanda 3
A-2 a PI Ricerca Operativa 1 Seconda prova intermedia È dato il problema di PL in figura. 1. Facendo uso delle condizioni di ortogonalità, dimostrare o confutare l ottimalità della soluzione x = 1; x =
DettagliPROBLEMA DEL COMMESSO VIAGGIATORE
PROBLEMA DEL COMMESSO VIAGGIATORE INTRODUZIONE Il problema del commesso viaggiatore (traveling salesman problem :TSP) è un classico problema di ottimizzazione che si pone ogni qual volta, dati un numero
DettagliEsercizi svolti a lezione
Esercizi svolti a lezione Problema 1 In un corso di laurea sono previsti un certo numero di esami obbligatori. Esistono inoltre dei vincoli di propedeuticità: se un esame A è propedeutico ad un esame B
DettagliAlgoritmi e Strutture Dati II: Parte B Anno Accademico Lezione 1
Algoritmi e Strutture Dati II: Parte B Anno Accademico 004-005 Docente: Ugo Vaccaro Lezione 1 Dalla Teoria della NP-Completezza abbiamo appreso che esiste una classe di problemi (NPhard) per cui non è
DettagliNP completezza. Problemi astratti
NP completezza Vittorio Maniezzo - Università di Bologna Problemi astratti Un problema è un entità astratta (es. il TSP). Una istanzadel problema è un suo caso particolare in cui vengono specificati tutti
DettagliNP completezza. Vittorio Maniezzo - Università di Bologna
NP completezza Vittorio Maniezzo - Università di Bologna Problemi astratti Un problema è un entità astratta (es. il TSP). Una istanzadel problema è un suo caso particolare in cui vengono specificati tutti
DettagliLezioni di Ricerca Operativa
Lezioni di Ricerca Operativa Estratto per la parte di programmazione lineare e ottimizzazione sui grafi Corso di Metodi di Ottimizzazione per l'ingegneria della Sicurezza Laurea Magistrale in Ingegneria
Dettagli3.4 Metodo di Branch and Bound
3.4 Metodo di Branch and Bound Consideriamo un generico problema di Ottimizzazione Discreta dove X è la regione ammissibile. (P ) z = max{c(x) : x X} Metodologia generale di enumerazione implicita (Land
DettagliIntroduzione al Column Generation Caso di Studio: il Bin Packing Problem
Introduzione al Column Generation Caso di Studio: il Bin Packing Problem November 15, 2014 1 / 26 Introduzione Il column generation è una metodologia che può essere usata per risolvere problemi di ottimizzazione
DettagliPROBLEMI SU GRAFO (combinatori)
PROLMI SU GRO (combinatori) In molti problemi il numero di soluzioni ammissibili è finito. Questi problemi sono quasi sempre descritti su grafi. Rete stradale: come andare da a in tempo minimo? Grafo orientato
DettagliBranch-and-bound per KNAPSACK
p. 1/1 Branch-and-bound per KNAPSACK Rispetto allo schema generale visto in precedenza dobbiamo specificare: come si calcola un upper bound su un sottinsieme; come si effettua il branching; come si individuano
DettagliTeoria dei Grafi Elementi di base della Teoria dei Grafi
L. Pallottino, Sistemi Robotici Distribuiti - Versione del 4 Marzo 2015 42 Teoria dei Grafi Elementi di base della Teoria dei Grafi Definizione 1. Un grafo G = (V, E) è composto da un insieme finito di
DettagliOttimizzazione Combinatoria 2 Presentazione
Ottimizzazione Combinatoria Presentazione ANTONIO SASSANO Università di Roma La Sapienza Dipartimento di Informatica, Automatica e Gestionale «Antonio Ruberti» Roma, Febbraio Prerequisiti (cosa sapete)
DettagliIl problema del commesso viaggiatore: da Ulisse alla Logistica integrata. Luca Bertazzi
Il problema del commesso viaggiatore: da Ulisse alla Logistica integrata Luca Bertazzi 0 3 Ulisse: da Troia a Itaca Troia Itaca 509 km Quale è stato invece il viaggio di Ulisse? Il viaggio di Ulisse Troia
DettagliRICERCA OPERATIVA (a.a. 2016/17) Nome: Cognome: Matricola:
Primo appello //7 RICERCA OPERATIVA (a.a. 6/7) Nome: Cognome: Matricola: ) Si risolva il seguente problema di PL applicando l algoritmo del Simplesso Duale, per via algebrica, a partire dalla base B {,
Dettagli3 CENNI DI TEORIA DELLA COMPLESSITA COMPUTAZIONALE. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1
3 CENNI DI TEORIA DELLA COMPLESSITA COMPUTAZIONALE E. Amaldi Fondamenti di R.O. Politecnico di Milano 1 Scopo: Stimare l onere computazionale per risolvere problemi di ottimizzazione e di altra natura
DettagliRICERCA OPERATIVA (a.a. 2011/12) Nome: Cognome: Matricola:
5 o Appello 8/0/0 RICERCA OPERATIVA (a.a. 0/) Nome: Cognome: Matricola: ) Si individui un albero dei cammini minimi di radice sul grafo in figura, utilizzando l algoritmo più appropriato dal punto di vista
DettagliIl problema dello zaino: dalla gita in montagna ai trasporti internazionali. Luca Bertazzi
Il problema dello zaino: dalla gita in montagna ai trasporti internazionali Luca Bertazzi 0 Ricerca Operativa (Operations Research) The Science of Better Modelli e algoritmi per la soluzione di problemi
DettagliESERCIZIO 1: Punto 1
ESERCIZIO : Punto La seguente matrice è una matrice delle distanze di un istanza del problema del Commesso Viaggiatore. - - - - - - - Calcolare.Il valore del rilassamento che si ottiene determinando l
DettagliUNIVERSITÀ DEGLI STUDI ROMA TRE Collegio Didattico in Ingegneria Informatica corso di Ricerca operativa 2. Esercizi sul problema dell assegnamento
UNIVERSITÀ DEGLI STUDI ROMA TRE Collegio Didattico in Ingegneria Informatica corso di Ricerca operativa Esercizi sul problema dell assegnamento Richiami di Teoria Ricordiamo che, dato un grafo G=(N,A),
DettagliOttimizzazione Combinatoria e Reti (a.a. 2007/08)
o Appello 6/07/008 Ottimizzazione Combinatoria e Reti (a.a. 007/08) Nome Cognome: Matricola: ) Dopo avere finalmente superato l esame di Ricerca Operativa, Tommaso è pronto per partire in vacanza. Tommaso
DettagliCapitolo 3: Ottimizzazione Discreta. E. Amaldi DEI, Politecnico di Milano
Capitolo 3: Ottimizzazione Discreta E. Amaldi DEI, Politecnico di Milano 3.1 Modelli di PLI e PLMI Moltissimi problemi decisionali complessi possono essere formulati come problemi di Programmazione Lineare
Dettagli5.1 Metodo Branch and Bound
5. Metodo Branch and Bound Si consideri il problema min{ c(x) : x X } Idea: Ricondurre la risoluzione di un problema difficile a quella di sottoproblemi più semplici effettuando una partizione (ricorsiva)
DettagliLezioni di Ricerca Operativa
Lezioni di Ricerca Operativa Massimo Paolucci Dipartimento di Informatica, Sistemistica e Telematica (DIST) Università di Genova paolucci@dist.unige.it http://www.dattero.dist.unige.it Anno accademico
DettagliAlgoritmi e Strutture Dati II: Parte B Anno Accademico Lezione 5
Algoritmi e Strutture Dati II: Parte B Anno Accademico 2004-2005 Docente: Ugo Vaccaro Lezione 5 In questa lezione inizieremo a studiare gli algoritmi di approssimazione per problemi di ottimizzazione NP-hard
DettagliProgrammazione Dinamica (PD)
Programmazione Dinamica (PD) Altra tecnica per risolvere problemi di ottimizzazione, piu generale degli algoritmi greedy La programmazione dinamica risolve un problema di ottimizzazione componendo le soluzioni
DettagliUNIVERSITÀ DEGLI STUDI ROMA TRE Corso di Studi in Ingegneria Informatica Ricerca Operativa 1 Seconda prova intermedia 17 giugno 2013
A UNIVERSITÀ DEGLI STUDI ROMA TRE Corso di Studi in Ingegneria Informatica Ricerca Operativa Seconda prova intermedia 7 giugno 0 Nome: Cognome: Matricola: Orale /06/0 ore aula N Orale 0/07/0 ore aula N
DettagliEsercizi Union-Find e su Grafi. Ugo Vaccaro
Progettazione di Algoritmi Anno Accademico 0 07 Esercizi Union-Find e su Grafi. Ugo Vaccaro. Esercizio: Scrivere pseudocodice per Make-Set, Union, e Find-Set usando la rappresentazione attraverso liste
DettagliIl problema del commesso viaggiatore
Il problema del commesso viaggiatore Mauro Passacantando Dipartimento di Informatica Largo B. Pontecorvo 3, Pisa mpassacantando@di.unipi.it M. Passacantando TFA 2012/13 - Corso di Ricerca Operativa Università
DettagliProgettazione di Algoritmi
Corso di laurea in Informatica Prova scritta del: Progettazione di Algoritmi 06/07/2016 Prof. De Prisco Inserire i propri dati nell apposito spazio. Non voltare la finché non sarà dato il via. Dal via
DettagliLA PROGRAMMAZIONE MATEMATICA (p.m.)
LA PROGRAMMAZIONE MATEMATICA (p.m.) Un problema di programmazione matematica è un problema di ottimizzazione riconducibile alla seguente espressione generale: ricercare i valori delle variabili x 1, x
DettagliProblemi di flusso a costo minimo
p. 1/7 Problemi di flusso a costo minimo È data una rete (grafo orientato e connesso) G = (V,A). (i,j) A c ij, costo di trasporto unitario lungo l arco (i, j). i V b i interi e tali che i V b i = 0. p.
DettagliDomini di funzioni di due variabili. Determinare i domini delle seguenti funzioni di due variabili (le soluzioni sono alla fine del fascicolo):
UNIVERSITA DEGLI STUDI DI SALERNO C.d.L. in INGEGNERIA GESTIONALE Esercizi di Ricerca Operativa Prof. Saverio Salerno Corso tenuto nell anno solare 2009 I seguenti esercizi sono da ritenersi di preparazione
DettagliMetodi e Modelli per l Ottimizzazione Combinatoria Problema dell assegnamento e matrici totalmente unimodulari
Metodi e Modelli per l Ottimizzazione Combinatoria Problema dell assegnamento e matrici totalmente unimodulari L. De Giovanni G. Zambelli 1 Problema dell assegnamento Sia dato un grafo non orientato bipartito
DettagliAMPL Problemi su Reti
Dipartimento di Matematica Università di Padova Corso di Laurea Informatica Outline Problemi su Reti Cammino Minimo Molti problemi di ottimizzazione combinatoria possono essere modellati ricorrendo ai
DettagliEsercizio 2. Domanda 3
A-2 a PI Ricerca Operativa 1 Seconda prova intermedia È dato il problema di PL in figura. 1. Facendo uso delle condizioni di ortogonalità, dimostrare o confutare l ottimalità della soluzione 2; 0; 2. Facendo
DettagliUniversità Ca Foscari Venezia
Università Ca Foscari Venezia Dipartimento di Scienze Ambientali, Informatica e Statistica Giovanni Fasano Brevi NOTE sul Metodo del BRANCH & BOUND Università Ca Foscari Venezia, Dipartimento di Management,
DettagliI Appello Ricerca Operativa 2 bis Compito A
I Appello Ricerca Operativa 2 bis Compito A Cognome e nome:. Esercizio 1. Si consideri il problema del matching di cardinalità massima in un grafo G ed il suo problema di decisione associato: esiste un
Dettagli