Esame di Ricerca Operativa (Cognome) (Nome) (Corso di laurea) Esercizio. Completare la seguente tabella considerando il problema di programmazione lineare: max x + x x +x x 0 x + x x +x x x Base Soluzione di base {, } x = {, } y = Ammissibile Degenere (si/no) (si/no) Esercizio. Effettuare due iterazioni dell algoritmo del simplesso primale per il problema dell esercizio. iterazione {,} iterazione Base x y Indice Rapporti Indice uscente entrante Esercizio. Completare la seguente tabella considerando il problema di flusso di costo minimo sulla seguente rete (su ogni nodo è indicato il bilancio e su ogni arco sono indicati, nell ordine, il costo e la capacità). - (,9) (0,) (8,0) - (,) (8,) (9,) (8,8) (9,) - (,) Archi di T Archi di U Soluzione di base Ammissibile Degenere (si/no) (si/no) (,) (,) (,) (,) (,) (,) x = (,) (,) (,) (,) (,) (,) π = (0, Esercizio. Effettuare due iterazioni dell algoritmo del simplesso su reti per il problema dell esercizio. iterazione iterazione Archi di T (,) (,) (,) (,) (,) Archi di U (,) x π Arco entrante ϑ +, ϑ Arco uscente
Esercizio. a) Applicare l algoritmo di Dijkstra per trovare l albero dei cammini minimi di radice sulla seguente rete. 8 9 9 0 nodo visitato iter iter iter iter iter iter iter π p π p π p π p π p π p π p nodo nodo nodo nodo nodo nodo insieme Q b) Applicare l algoritmo di Ford-Fulkerson(con la procedura di Edmonds-Karp per la ricerca del cammino aumentante) per trovare il flusso massimo tra il nodo ed il nodo sulla seguente rete. 0 9 8 0 8 cammino aumentante δ x v Taglio di capacità minima: N s = N t =
Esercizio. Un industria di lavorazione del marmo ha due stabilimenti dove produce lastre di marmo di tre diverse qualità: bassa, media e alta. Per contratto, l industria deve fornire a una ditta esterna almeno 0, 0 e 0 tonnellate di marmo di bassa, media e alta qualità, rispettivamente. La seguente tabella riporta le caratteristiche di produzione nei due diversi stabilimenti: Stabilimento costo giornaliero (euro) produzione (tonnellate/giorno) bassa media alta 00 00 Determinare quanti giorni di lavoro sono necessari nei due stabilimenti per minimizzare i costi. variabili decisionali: modello: Esercizio. Si consideri il seguente problema di programmazione lineare intera: min x + x x + x 8 x + x x 0 x 0 x,x Z a) Calcolare una valutazione inferiore del valore ottimo risolvendo il rilassamento continuo. sol. ottima del rilassamento = v I (P) = b) Calcolare una valutazione superiore del valore ottimo arrotondando la soluzione ottima del rilassamento. sol. ammissibile = v S (P) = c) Calcolare un taglio di Gomory. r = taglio:
Esercizio 8. Si consideri il problema di trovare il ciclo hamiltoniano di costo minimo su una rete di città, le cui distanze reciproche sono indicate in tabella: città 8 9 8 a) Trovare una valutazione inferiore del valore ottimo calcolando l albero di costo minimo. albero: v I (P) = b) Trovare una valutazione superiore applicando l algoritmo del nodo più vicino a partire dal nodo. ciclo: v S (P) = c) Applicare il metodo del Branch and Bound, utilizzando l albero di costo minimo come rilassamento di ogni sottoproblema ed istanziando, nell ordine, le variabili x, x, x.
SOLUZIONI Esercizio. Completare la seguente tabella considerando il problema di programmazione lineare: max x + x x +x x 0 x + x x +x x x Base Soluzione di base Ammissibile Degenere (si/no) (si/no) {, } x = (, 0) SI SI {, } y = (0,,, 0, 0, 0) NO NO Esercizio. Effettuare due iterazioni dell algoritmo del simplesso primale per il problema dell esercizio. Base x y Indice Rapporti Indice uscente entrante iterazione {, } (, 0) (0,, 0, 0, 0, ) 0, iterazione {, } (, 0) (, 0, 0, 0, 0, ),,, Esercizio. Completare la tabella considerando il problema di flusso di costo minimo sulla seguente rete (su ogni nodo è indicato il bilancio e su ogni arco sono indicati, nell ordine, il costo e la capacità). - (,9) (0,) (8,0) - (,) (8,) (9,) (8,8) (9,) - (,) Archi di T Archi di U Soluzione di base Ammissibile Degenere (si/no) (si/no) (,) (,) (,) (,) (,) (,) x = (, 0,, 8, 0,,, 0, 0) SI SI (,) (,) (,) (,) (,) (,) π = (0,, 8,,, 9) NO NO Esercizio. Effettuare due iterazioni dell algoritmo del simplesso su reti per il problema dell esercizio. iterazione iterazione Archi di T (,) (,) (,) (,) (,) (,) (,) (,) (,) (,) Archi di U (,) (,) x (, 0, 0,, 9,, 0,, ) (0,, 0,,,, 0,, ) π (0, 0,,, 8, ) (0,, 8, 0,, ) Arco entrante (,) (,) ϑ +, ϑ, 8, Arco uscente (,) (,)
Esercizio. a) Applicare l algoritmo di Dijkstra per trovare l albero dei cammini minimi di radice sulla seguente rete. 8 9 9 0 iter iter iter iter iter iter iter π p π p π p π p π p π p π p nodo visitato nodo 8 nodo 0 0 0 0 0 0 0 nodo + + 0 0 0 0 0 nodo + nodo + + + + 9 9 9 nodo + + + insieme Q,,,,, b) Applicare l algoritmo di Ford-Fulkerson(con la procedura di Edmonds-Karp per la ricerca del cammino aumentante) per trovare il flusso massimo tra il nodo ed il nodo sulla seguente rete. 0 9 8 0 8 cammino aumentante δ x v - - - (, 0, 0,, 0, 0, 0, 0,, 0, 0) - - - (,, 0,, 0,, 0, 0, 0, 0, 0) 0 - - - - (,, 0,,,, 0, 0,, 0, 0) Taglio di capacità minima: N s = {,,,,,} N t = {}
Esercizio. Un industria di lavorazione del marmo ha due stabilimenti dove produce lastre di marmo di tre diverse qualità: bassa, media e alta. Per contratto, l industria deve fornire a una ditta esterna almeno 0, 0 e 0 tonnellate di marmo di bassa, media e alta qualità, rispettivamente. La seguente tabella riporta le caratteristiche di produzione nei due diversi stabilimenti: Stabilimento costo giornaliero (euro) produzione (tonnellate/giorno) bassa media alta 00 00 Determinare quanti giorni di lavoro sono necessari nei due stabilimenti per minimizzare i costi. variabili decisionali: x = giorni di lavoro nello stabilimento x = giorni di lavoro nello stabilimento modello: min00x +00x x +x 0 x +x 0 x +x 0 x,x 0. c=[ 00 ; 00] COMANDI DI MATLAB A=[ - - ; - - ; - - ] b=[ -0 ; -0 ; -0 ] Aeq=[] lb=[0; 0] beq=[] ub=[] Esercizio. Si consideri il seguente problema di programmazione lineare intera: min x + x x + x 8 x + x x 0 x 0 x,x Z a) Calcolare una valutazione inferiore del valore ottimo risolvendo il rilassamento continuo. ( ) sol. ottima del rilassamento =,0 b) Calcolare una valutazione superiore del valore ottimo arrotondando la soluzione ottima del rilassamento. v I (P) = sol. ammissibile = (,0) v S (P) = c) Calcolare un taglio di Gomory. r = x +x r = 8x +x
Esercizio 8. Si consideri il problema di trovare il ciclo hamiltoniano di costo minimo su una rete di città, le cui distanze reciproche sono indicate in tabella: città 8 9 8 a) Trovare una valutazione inferiore del valore ottimo calcolando l albero di costo minimo. albero: (, ) (, ) (, ) (, ) (, ) v I (P) = 90 b) Trovare una valutazione superiore applicando l algoritmo del nodo più vicino a partire dal nodo. ciclo: v S (P) = 98 c) Applicare il metodo del Branch and Bound, utilizzando l albero di costo minimo come rilassamento di ogni sottoproblema ed istanziando, nell ordine, le variabili x, x, x. 90,98 P x = 0 x = 90,98 P, 0,98 P, x = 0 x = 90,98 P, 98,98 P, x = 0 x = 0,98 90,98 P, P,