Metodi di Ottimizzazione per la Logistica e la Produzione
|
|
- Ortensia Graziani
- 6 anni fa
- Visualizzazioni
Transcript
1 Metodi di Ottimizzazione per la Logistica e la Produzione Laboratorio Manuel Iori Dipartimento di Scienze e Metodi dell Ingegneria Università di Modena e Reggio Emilia MOLP Parte I 1 / 41
2 Contenuto della Parte di Laboratorio 1. Modelli Matematici ed Euristici per Alcuni Problemi di Base 2. Modelli Matematici ed Euristici per il TSP MOLP Parte I 2 / 41
3 Modelli Matematici ed Algoritmi Euristici per Alcuni Problemi di Base n+d b c f n+e n+f e n+c d n+b a 0 n+a MOLP Parte I 3 / 41
4 Knapsack Problem (KP01) Definizione del problema Dati n oggetti j, con profitto p j e peso w j (j = 1,...,n) e un contenitore (knapsack, zaino) di capacità c, il knapsack problem (KP01) richiede di determinare il sottoinsieme di oggetti il cui peso totale non ecceda c e il cui profitto totale sia massimo Il KP01 ha numerose applicazioni nei problemi di ottimizzazione finanziaria, nel taglio e/o impaccamento di oggetti e come sottoproblema di problemi di ottimizzazione più complessi MOLP Parte I 4 / 41
5 Modello Matematico per il KP01 Modello Matematico Definiamo la variabile binaria: { 1 se l oggetto j è scelto, x j = 0 altrimenti per j = 1,...,n Il KP01 può essere modellato come n z(kp01) = max p j x j (1) j=1 n w j x j c (2) j=1 x j {0,1} j = 1,...,n (3) MOLP Parte I 5 / 41
6 Algoritmo Greedy per il KP01 Idea di base dell algoritmo: Impaccare gli oggetti nel knapsack uno alla volta dal più conveniente al meno conveniente, fino a quando c è spazio Input: Profitti p 1,p 2,...,p n ; Pesi w 1,w 2,...,w n ; Capacità c; Oggetti ordinati secondo rapporto profitto su peso descrescente (p 1 /w 1 p 2 /w 2 p n /w n ) Output: z gr = valore soluzione euristica ottenuta dall algoritmo greedy; s(j) = 1 se l oggetto j è scelto, 0 altrimenti MOLP Parte I 6 / 41
7 Pseudo-codice: z gr := 0 c res := c for (j := 1 to n) do if (w j c res ) then s(j) := 1 c res := c res w j z gr := z gr +p j else s(j) := 0 end-if end-for return(z gr,s) Complessità: O(n) per l esecuzione del ciclo for, ma anche O(n log n) per l ordinamento iniziale degli oggetti. Quindi la complessità del greedy è O(n log n). (Attenzione, ciò non deve far concludere che il KP01 sia nella classe P!) MOLP Parte I 7 / 41
8 Esempio KP01 Input: n = 6; c = 100 p = (70, 35, 15, 9, 9, 1) w= (50, 30, 15, 10, 10, 3) Evoluzione dell algoritmo greedy: iterazione 0 z gr := 0 c res := s(1) := 1 z gr := 70 c res := 50 2 s(2) := 1 z gr := 105 c res := 20 3 s(3) := 1 z gr := 120 c res := 5 4 s(4) := 0 z gr := 120 c res := 5 5 s(5) := 0 z gr := 120 c res := 5 6 s(6) := 1 z gr := 121 c res := 2 Come nota, la soluzione ottima ha valore z(kp01) = 123 MOLP Parte I 8 / 41
9 Bin Packing Problem (BPP) Definizione del problema: Dati n oggetti j con peso w j (j = 1,...,n) e un numero abbastanza grande m di contenitori (bin) aventi ognuno capacità c, il bin packing problem (BPP) richiede di impaccare gli oggetti nel minor numero di contenitori, in modo che la somma dei pesi degli oggetti assegnati ad ogni contenitore non ecceda la data capacità Il BPP è molto studiato per le applicazioni nel taglio industriale di oggetti, nel dimensionamento di magazzini/flotte di veicoli, e come sottoproblema di problemi di ottimizzazione più complessi MOLP Parte I 9 / 41
10 Modello Matematico per il BPP Modello Matematico: Definiamo una prima variabile binaria per i = 1,...,m: { 1 se uso il bin i, y i = 0 altrimenti Definiamo una seconda variabile binaria per i = 1,...,m e j = 1,...,n: { 1 se assegno l oggetto j al bin i, x ij = 0 altrimenti Il BPP può essere modellato come: z(bpp) = min m y i i=1 m i=1 x ij = 1 j = 1,...,n (5) n j=1 w jx ij cy i i = 1,...,m (6) y i {0,1} i = 1,...,m (7) (4) x ij {0,1} i = 1,...,m;j = 1,...,n (8) MOLP Parte I 10 / 41
11 La convergenza del modello (4) (8) può essere rafforzata con i vincoli x ij y i i = 1,...,m;j = 1,...,n (9) che impongono una relazione più stretta tra le variabili x e y, migliorando quindi il rilassamento lineare Può essere rafforzata anche con i vincoli y i y i+1 i = 1,...,m 1 (10) che impongono un ordinamento nella scelta dei bin, e quindi riducono la dimensione dell albero decisionale Introducendo (9) e/o (10) in (4) (8) si ottiene un modello che, nella maggior parte dei casi, converge piú velocemente all ottimo e quindi risolve piú velocemente l istanza MOLP Parte I 11 / 41
12 Algoritmo Next Fit Decreasing per il BPP Idea di base dell algoritmo: Impaccare gli oggetti uno alla volta, dal più grande al più piccolo. Per l impaccamento si usa il bin corrente fino a quando c è spazio, poi si crea un nuovo bin. Input: Pesi w 1,w 2,...,w n ; Capacità c. Oggetti ordinati per peso descrescente (w 1 w 2 w n ). Output: z nf = valore soluzione euristica ottenuta; o(j) = indice del bin al quale è stato assegnato l oggetto j. MOLP Parte I 12 / 41
13 Pseudo-codice: z nf := 1 c res := c for (j := 1 to n) do if (w j c res ) then o(j) := z nf c res := c res w j else z nf := z nf +1 c res := c w j o(j) := z nf end-if end-for return(z nf,o) Complessità: O(n) per l esecuzione del ciclo for, ma anche O(n log n) per l ordinamento iniziale degli oggetti, quindi l algoritmo ha complessità O(n log n) MOLP Parte I 13 / 41
14 Esempio BPP Input: n = 5; c = 10 w = (6, 5, 4, 3, 2) Evoluzione dell algoritmo next fit decreasing: iterazione 0 z nf := 1 c res := 10 1 o(1) := 1 z nf := 1 c res := 4 2 o(2) := 2 z nf := 2 c res := 5 3 o(3) := 2 z nf := 2 c res := 1 4 o(4) := 3 z nf := 3 c res := 7 5 o(5) := 3 z nf := 3 c res := 5 Come nota, la soluzione ottima ha valore z(bpp) = 2 MOLP Parte I 14 / 41
15 Algoritmo First Fit Decreasing per il BPP Idea di base dell algoritmo: Impaccare gli oggetti uno alla volta, dal più grande al più piccolo. L oggetto corrente è impaccato nel primo bin avente abbastanza spazio residuo. Se tale bin non esiste, allora se ne crea uno nuovo. Input: Pesi w 1,w 2,...,w n ; Capacità c; Oggetti ordinati per peso descrescente. Output: z ff = valore soluzione euristica ottenuta; o(j) = indice del bin al quale è stato assegnato l oggetto j. MOLP Parte I 15 / 41
16 Pseudo-codice: z ff := 1 c res (1) := c for (j := 1 to n) do o(j) := 1 for (i := 1 to z ff ) do if (w j c res (i)) then o(j) := i c res (i) := c res (i) w j break end-if end-for if (o(j) = 1) then z ff := z ff +1 o(j) := z ff c res (z ff ) := c w j end-if end-for return(z ff,o) MOLP Parte I 16 / 41
17 Esempio BPP Input: n = 5; c = 10 w = (6, 5, 4, 3, 2); Evoluzione dell algoritmo first fit decreasing: iterazione 0 z ff := 1 c res (1) := 10 1 o(1) := 1 z ff := 1 c res (1) := 4 2 o(2) := 2 z ff := 2 c res (1) := 4 c res (2) := 5 3 o(3) := 1 z ff := 2 c res (1) := 0 c res (2) := 5 4 o(4) := 2 z ff := 2 c res (1) := 0 c res (2) := 2 5 o(5) := 2 z ff := 2 c res (1) := 0 c res (2) := 0 Complessità: O(nm) per l esecuzione dell algoritmo, e sempre O(n log n) per l ordinamento iniziale degli oggetti. Nelle istanze difficili di BPP si ha m > logn, quindi normalmente si usa O(nm) per definire la complessità dell algoritmo MOLP Parte I 17 / 41
18 Esempio BPP 2 Input: n = 10; c = 10 w = (6, 6, 3, 3, 2, 2, 2, 2, 2, 2); Evoluzione dell algoritmo first fit decreasing: iterazione 0 z ff := 1 c res(1) := 10 1 o(1) := 1 z ff := 1 c res(1) := 4 2 o(2) := 2 z ff := 2 c res(1) := 4 c res(2) := 4 3 o(3) := 1 z ff := 2 c res(1) := 1 c res(2) := 4 4 o(4) := 2 z ff := 2 c res(1) := 1 c res(2) := 1 5 o(5) := 3 z ff := 3 c res(1) := 1 c res(2) := 1 c res(3) := 8 6 o(6) := 3 z ff := 3 c res(1) := 1 c res(2) := 1 c res(3) := 6 7 o(7) := 3 z ff := 3 c res(1) := 1 c res(2) := 1 c res(3) := 4 8 o(8) := 3 z ff := 3 c res(1) := 1 c res(2) := 1 c res(3) := 2 9 o(9) := 3 z ff := 3 c res(1) := 1 c res(2) := 1 c res(3) := 0 10 o(10) := 4 z ff := 4 c res(1) := 1 c res(2) := 1 c res(3) := 0 c res(4) := 8 Come nota, la soluzione ottima ha valore z(bpp) = 3 MOLP Parte I 18 / 41
19 Parallel Processor Scheduling Problem (P C max ) Definizione del problema: Dati n lavori j, ognuno richiedente un tempo di lavorazione positivo p j (j = 1,...,n), e date m macchine identiche in parallelo, ognuna in grado di svolgere un solo lavoro alla volta, il parallel processor scheduling problem (noto come P C max nella letteratura scientifica) richiede di assegnare i lavori alle macchine in modo che sia minimo l istante di fine dell ultima lavorazione (detto makespan) Il P C max ha applicazioni soprattutto nell ambito della schedulazione delle attività di lavoro (scheduling) e dell ottimizzazione della produzione MOLP Parte I 19 / 41
20 Modello Matematico per il P C max Definiamo una variabile binaria: { 1 se assegno il lavoro j alla macchina i, x ij = 0 altrimenti per i = 1,...,m e j = 1,...,n; e una variabile lineare non negativa z = makespan Il P C max può essere modellato come: z(p C max ) = min z (11) m x ij = 1 j = 1,...,n (12) i=1 n p j x ij z i = 1,...,m (13) j=1 x ij {0,1} i = 1,...,m;j = 1,...,n (14) MOLP Parte I 20 / 41
21 Algoritmo Longest Processing Time per il P C max Idea di base dell algoritmo: Assegna i lavori uno alla volta, dal più lungo al più piccolo. Il lavoro corrente è assegnato alla macchina che in quel momento risulta più scarica Input: Tempi di processamento p 1,p 2,...,p n Numero macchine m Lavori ordinati per tempi descrescenti (p 1 p 2 p n ) Output: z lpt = valore euristico del makespan o(j) = indice della macchina alla quale è stato assegnato il lavoro j MOLP Parte I 21 / 41
22 Pseudo-codice: z lpt := 0 for (i := 1 to m) carico(i) := 0 for (j := 1 to n) do min := + for (i := 1 to m) do if (carico(i) < min) then min := carico(i) i min := i end-if end-for o(j) := i min carico(i min ) := carico(i min )+p j if (carico(i min ) > z lpt ) z lpt := carico(i min ) end-for return(z lpt,o) Complessità: O(nm) per l esecuzione dell algoritmo, e sempre O(n log n) per l ordinamento iniziale degli oggetti MOLP Parte I 22 / 41
23 Esempio P C max Input: n = 8; m = 3 w = (10, 10, 9, 8, 8, 6, 5, 4) Evoluzione dell algoritmo longest processing time: (c(i) = carico(i)): iterazione 0 z lpt := 0 c(1) := 0 c(2) := 0 c(3) := 0 1 o(1) := 1 z lpt := 10 c(1) := 10 c(2) := 0 c(3) := 0 2 o(2) := 2 z lpt := 10 c(1) := 10 c(2) := 10 c(3) := 0 3 o(3) := 3 z lpt := 10 c(1) := 10 c(2) := 10 c(3) := 9 4 o(4) := 3 z lpt := 17 c(1) := 10 c(2) := 10 c(3) := 17 5 o(5) := 1 z lpt := 18 c(1) := 18 c(2) := 10 c(3) := 17 6 o(6) := 2 z lpt := 18 c(1) := 18 c(2) := 16 c(3) := 17 7 o(7) := 2 z lpt := 21 c(1) := 18 c(2) := 21 c(3) := 17 8 o(8) := 3 z lpt := 21 c(1) := 18 c(2) := 21 c(3) := 21 Come nota, la soluzione ottima ha valore z(p C max ) = 20 MOLP Parte I 23 / 41
24 Set Covering Problem (SCP) Definizione del problema: È data una matrice A = [a ij ] di n colonne e m righe. Ogni entry a ij della matrice A vale 0 o 1. Ogni colonna j ha costo c j. L obiettivo del set covering problem (SCP) è di selezionare un sottoinsieme di colonne che abbia almeno un 1 in ogni riga e il cui costo sia minimo Il SCP può essere usato per modellare un numero enorme di problemi di ottimizzazione combinatoria (tra cui il BPP e il P C max ). L utilizzo dipende dal significato preso dalle colonne e dalla loro conseguente costruzione MOLP Parte I 24 / 41
25 Modello Matematico per il SCP Modello Matematico: Definiamo una variabile binaria { 1 se seleziono la colonna j, y j = 0 altrimenti per j = 1,...,n Il SCP può essere modellato come: n z(scp) = min c j y j (15) j=1 n a ij y j 1 i = 1,...,m (16) j=1 y j {0,1} j = 1,...,n (17) MOLP Parte I 25 / 41
26 Algoritmo Greedy per il SCP Idea di base dell algoritmo: Seleziona le colonne una alla volta, dalla più conveniente alla meno conveniente, fino a quando tutte le righe sono coperte Input: Costi c j ; matrice A = [a ij ]; Sia k j = m i=1 a ij il numero di 1 nella colonna j; supponiamo che le colonne di A siano state ordinate per rapporto c j /k j crescente (c 1 /k 1 c 2 /k 2 c n /k n ) Output: z gr = valore soluzione euristica ottenuta; s(j) = 1 se la colonna j è scelta, 0 altrimenti MOLP Parte I 26 / 41
27 Pseudo-codice: z gr := 0; n cop := 0; ind := 1 for (j := 1 to n) s(j) := 0 for (i := 1 to m) cop(i) := 0 while (n cop < m) do s(ind) := 1 z gr := z gr +c ind for (i := 1 to m) do if (a i,ind = 1 and cop(i) = 0) then cop(i) := 1 n cop := n cop +1 end-if end-for ind := ind +1 end-while return(z gr,s) Complessità: Nel caso peggiore si devono selezionare tutte le colonne, quindi l algoritmo ha complessità O(nm) MOLP Parte I 27 / 41
28 Esempio SCP Input: m = 5; n = 8 c = (10, 12, 15, 16, 9, 10, 11, 12); a ij Evoluzione dell algoritmo greedy: iterazione 0 z gr := 0 n cop := 0 1 s(1) := 1 z gr := 10 n cop := 2 2 s(2) := 1 z gr := 22 n cop := 4 3 s(3) := 1 z gr := 37 n cop := 4 4 s(4) := 1 z gr := 53 n cop := 5 MOLP Parte I 28 / 41
29 2. Modelli Matematici ed Euristici per il TSP Traveling Salesman Problem Definizione del problema: È dato un grafo G = (V,A), dove V = {1,2,...,n} rappresenta l insieme dei vertici e A = {(i,j) : i,j V} l insieme degli archi. Ad ogni arco (i,j) è associato un costo c ij L obiettivo del traveling salesman problem (TSP) è quello di trovare il circuito hamiltoniano di G di costo minimo, ovvero determinare la sequenza che visita ogni vertice una e una sola volta con costo complessivo minimo Il TSP ha numerose applicazioni nei problemi su reti (stradali, di telecomunicazioni, etc.) Nel seguito supponiamo che 1 sia il vertice iniziale della sequenza. Esistono varie formulazioni matematiche che permettono di modellare il TSP MOLP Parte I 29 / 41
30 2. Modelli Matematici ed Euristici per il TSP TSP - Formulazione classica a due indici Definiamo una variabile binaria { 1 se l arco (i,j) appartiene al circuito hamiltoniano, x ij = 0 altrimenti per i,j = 1,...,n Il TSP può essere modellato come: z(tsp) = min n i=1 n n j=1 c ijx ij (18) x ij = 1 j = 1,...,n (19) i=1 n x ji = 1 j = 1,...,n (20) i=1 x ij S 1 S V : S V 1 (21) i S j S x ij {0,1} i,j = 1,...,n (22) MOLP Parte I 30 / 41
31 2. Modelli Matematici ed Euristici per il TSP TSP - Formulazione MTZ (Miller-Tuckler-Zemlin) Definiamo una variabile binaria: { 1 se l arco (i,j) appartiene al circuito hamiltoniano, x ij = 0 altrimenti per i,j = 1,...,n, e una variabile continua non negativa y j = ordine nel quale il vertice j è visitato. per j = 2,...,n Il TSP può essere modellato come: z(tsp) = min n i=1 n n j=1 c ijx ij (23) i=1 x ij = 1 j = 1,...,n (24) n i=1 x ji = 1 j = 1,...,n (25) y j +(n+1)(1 x ij ) y i +1 i,j = 2,...,n (26) x ij {0,1} i,j = 1,...,n (27) 1 y j n 1 j = 2,...,n (28) MOLP Parte I 31 / 41
32 2. Modelli Matematici ed Euristici per il TSP TSP - Formulazione one-commodity Definiamo una variabile binaria: { 1 se l arco (i,j) appartiene al circuito hamiltoniano, x ij = 0 altrimenti per i,j = 1,...,n, e una variabile continua non negativa: per i,j = 1,...,n f ij = flusso sull arco (i,j), Intuitivamente f ij rappresenta il numero di visite da effettuarsi nella sequenza ottimale dopo l arco (i, j), sempre che tale arco venga usato MOLP Parte I 32 / 41
33 2. Modelli Matematici ed Euristici per il TSP Il TSP può essere modellato come: z(tsp) = min n i=1 n n j=1 c ijx ij (29) x ij = 1 j = 1,...,n (30) i=1 n x ji = 1 j = 1,...,n (31) i=1 f ij (n 1)x ij i,j = 1,...,n (32) n f 1i = n 1 (33) i=1 n f ij = n f jk +1 j = 2,...,n (34) i=1 k=1 x ij {0,1} i,j = 1,...,n (35) 0 f ij n 1 i,j = 1,...,n (36) MOLP Parte I 33 / 41
34 2. Modelli Matematici ed Euristici per il TSP TSP - Formulazione multi-commodity Definiamo la solita variabile binaria x ij per i,j = 1,...,n, e una variabile continua non negativa: f k ij = flusso verso il vertice k passante sull arco (i,j), per i,j = 1,...,n, e k = 2,...,n Intuitivamente f k ij definisce il percorso tra 1 e k, e prende valore 1 se il vertice k sarà visitato nella sequenza ottimale dopo l arco (i, j), sempre che tale arco venga usato MOLP Parte I 34 / 41
35 2. Modelli Matematici ed Euristici per il TSP Il TSP può essere modellato come: z(tsp) = min n i=1 n n j=1 c ijx ij (37) x ij = 1 j = 1,...,n (38) i=1 n x ji = 1 j = 1,...,n (39) i=1 fij k x ij i,j = 1,...,n,k = 2,...,n (40) n i=1 f k 1i = 1 k = 2,...,n (41) n f k i=1 i1 n n n = 0 k = 2,...,n (42) i=1 f k ik = 1 k = 2,...,n (43) i=1 f k ki = 0 k = 2,...,n (44) f k i=1 ij = n i=1 ji j,k = 2,...,n : j k (45) x ij {0,1} i,j = 1,...,n (46) 0 f k ij 1 i,j = 1,...,n,k = 2,...,n (47) MOLP Parte I 35 / 41
36 2. Modelli Matematici ed Euristici per il TSP Algoritmo Closest Neighbor per il TSP Idea di base dell algoritmo: Dato un vertice corrente, scegli sempre l arco che porta al vertice più vicino tra quelli non ancora visitati Input: Vertice di partenza (in questo esempio: 1); costi c ij Output: z cn = valore soluzione euristica ottenuta; o(j) = indice del vertice visitato nella posizione j del circuito MOLP Parte I 36 / 41
37 2. Modelli Matematici ed Euristici per il TSP Pseudo-codice: z cn := 0 for (j := 1 to n) vis(j) := 0 from := 1; vis(1) := 1; o(1) := 1 for (i := 2 to n) do min := + for (j := 1 to n) do if (c from,j < min and vis(j) = 0) then min := c from,j to := j end-if end-for z cn := z cn +c from,to o(i) := to vis(to) := 1 from := to end-for z cn := z cn +c to,1 return(z cn,o) MOLP Parte I 37 / 41
38 2. Modelli Matematici ed Euristici per il TSP Esempio TSP Input: n = 5; c ij Evoluzione dell algoritmo closest neighbor: iterazione 1 o(1) := 1 z cn := 0 from := 1 2 o(2) := 4 z cn := 2 from := 4 3 o(3) := 3 z cn := 3 from := 3 4 o(4) := 5 z cn := 5 from := 5 5 o(5) := 2 z cn := 9 from := 2 6 z cn := 24 Complessità: L esecuzione dell algoritmo richiede O(n 2 ) MOLP Parte I 38 / 41
39 2. Modelli Matematici ed Euristici per il TSP Ricerca locale di tipo swap per il TSP Idea di base dell algoritmo: Data una soluzione euristica rappresentata da una permutazione (ad esempio ocn), provare a scambiare tra loro ogni coppia di vertici non contigui nella permutazione, escludendo il deposito iniziale e quello finale Se si trova un miglioramento nella funzione obiettivo, effettuare lo scambio e riniziare da capo MOLP Parte I 39 / 41
40 2. Modelli Matematici ed Euristici per il TSP Pseudo-codice: comment: vertici = 1,2,...,n, con 1 = deposito e ocn(n+1) = 1 improved := true while (improved = true) do improved := false for (i := 2 to n 2) do for (j := i +2 to n) do := c ocn(i 1),ocn(i) c ocn(i),ocn(i+1) c ocn(j 1),ocn(j) c ocn(j),ocn(j+1) +c ocn(i 1),ocn(j) +c ocn(j),ocn(i+1) +c ocn(j 1),ocn(i) +c ocn(i),ocn(j+1) if ( < 0) then help:=ocn(j) ocn(j):=ocn(i) ocn(i):=help zcn:=zcn + improved := true break end-if end-for if (improved = true) break end-for return(zcn, ocn) MOLP Parte I 40 / 41
41 2. Modelli Matematici ed Euristici per il TSP Tabella Comparativa delle Complessità Algoritmo Complessità Complessità Problema euristico dell algoritmo dell enumerazione presentato euristico completa KP01 greedy O(n) O(2 n ) BPP next fit decr. O(n) O(m n ) BPP first fit decr. O(nm) O(m n ) P C max longest proc. time O(nm) O(m n ) TSP closest neighbor O(n 2 ) O(n!) SCP greedy O(nm) O(2 n ) MOLP Parte I 41 / 41
ALGORITMI 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
DettagliTSP Ricerca Locale. Riccardo Mondani Martina Alberti
TSP Ricerca Locale Riccardo Mondani Martina Alberti Caratteristiche di base Partenza: Soluzione euristica dell algoritmo TSP Closest Neighborhood. Il vettore o finale contiene un ordinamento di tutti i
Dettagli2.2 Alberi di supporto di costo ottimo
. Alberi di supporto di costo ottimo Problemi relativi ad alberi hanno numerose applicazioni: progettazione di reti (comunicazione, teleriscaldamento,...) protocolli reti IP memorizzazione compatta di
DettagliProblemi di localizzazione di servizi (Facility Location Problems)
9. Problemi di Localizzazione di Servizi 1 Problemi di localizzazione di servizi (Facility Location Problems) Dato un insieme di clienti richiedenti una data domanda di merce e dato un insieme di possibili
DettagliProblemi dello zaino e di bin packing
Problemi dello zaino e di bin packing Laura Galli Dipartimento di Informatica Largo B. Pontecorvo 3, 56127 Pisa laura.galli@unipi.it http://www.di.unipi.it/~galli 2 Dicembre 2014 Ricerca Operativa 2 Laurea
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à
Dettagli2.2 Alberi di supporto di costo ottimo
. Alberi di supporto di costo ottimo Problemi relativi ad alberi hanno numerose applicazioni: progettazione di reti (comunicazione, teleriscaldamento,...) memorizzazione compatta di sequenze (DNA) diffusione
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
Dettagli2.3 Cammini ottimi. E. Amaldi Fondamenti di R.O. Politecnico di Milano 1
. Cammini ottimi E. Amaldi Fondamenti di R.O. Politecnico di Milano .. Cammini minimi e algoritmo di Dijkstra Dato un grafo orientato G = (N, A) con una funzione di costo c : A c ij R e due nodi s e t,
DettagliStruttura del Corso. Durata
Manuel Iori Dipartimento di Scienze e Metodi dell Ingegneria (DISMI) Università degli studi di Modena e Reggio Emilia Via Amendola 2, Pad. Buccola, 42122 Reggio Emilia web: www.or.unimore.it/iori/iori.htm
DettagliRilassamento Lagrangiano
RILASSAMENTO LAGRANGIANO 1 Rilassamento Lagrangiano Tecnica più usata e conosciuta in ottimizzazione combinatoria per il calcolo di lower/upper bounds (Held and Karp (1970)). Si consideri il seguente problema
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
DettagliCapitolo 5: Ottimizzazione Discreta. E. Amaldi DEI, Politecnico di Milano
Capitolo 5: Ottimizzazione Discreta E. Amaldi DEI, Politecnico di Milano 5.1 Modelli di PLI, formulazioni equivalenti ed ideali Il modello matematico di un problema di Ottimizzazione Discreta è molto spesso
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
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
Dettagli5.3 Metodo dei piani di taglio
5.3 Metodo dei piani di taglio (PLI) min s.v. c T x Ax b x interi X Ipotesi: a ij, c j e b i interi Osservazione: La regione ammissibile di un PLI può essere descritta mediante dei vincoli più o meno stringenti
DettagliRilassamento Lagrangiano
Rilassamento Lagrangiano AA 2009/10 1 Rilassamento Lagrangiano Tecnica più usata e conosciuta in ottimizzazione combinatoria per il calcolo di lower/upper bounds (Held and Karp (1970)). Si consideri il
DettagliFlusso a Costo Minimo
Sapienza Università di Roma - Dipartimento di Ingegneria Informatica, Automatica e Gestionale Flusso a Costo Minimo Docente: Renato Bruni bruni@dis.uniroma.it Corso di: Ottimizzazione Combinatoria Dal
DettagliMacchine parallele M 1 M 2 M 3 J 1 J 2 LAVORI J 3 J 4
Macchine parallele M 1 J 1 J 2 LAVORI M 2 J 3 J 4 M 3 Macchine parallele Scheduling su macchine parallele scorrelate R C max Descrizione del problema n lavori devono essere processati da m macchine diverse
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
DettagliProgrammazione Matematica: VI Estensioni dell algoritmo del Simplesso
Programmazione Matematica: VI Estensioni dell algoritmo del Simplesso Daniele Vigo D.E.I.S. Università di Bologna dvigo@deis.unibo.it rev. 1.0 Aprile 2004 Algoritmo del Simplesso L algoritmo del Simplesso
DettagliProgrammazione Lineare Intera: Piani di Taglio
Programmazione Lineare Intera: Piani di Taglio Andrea Scozzari a.a. 2014-2015 April 22, 2015 Andrea Scozzari (a.a. 2014-2015) Programmazione Lineare Intera: Piani di Taglio April 22, 2015 1 / 23 Programmazione
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
DettagliIl problema del commesso viaggiatore e problemi di vehicle routing
Il problema del commesso viaggiatore e problemi di vehicle routing Laura Galli Dipartimento di Informatica Largo B. Pontecorvo 3, 56127 Pisa laura.galli@unipi.it http://www.di.unipi.it/~galli 2 Dicembre
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)
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
DettagliMakespan con set-up dipendenti dalla sequenza. 1/s jk /C max
Makespan con set-up dipendenti dalla sequenza 1/s jk /C max 1/s jk /C max Un tempo di riattrezzaggio (set-up) s jk è richiesto fra il processamento di j e quello di k. In questo caso, C max dipende dalla
DettagliAlgoritmi greedy. Gli algoritmi che risolvono problemi di ottimizzazione devono in genere operare una sequenza di scelte per arrivare alla soluzione
Algoritmi greedy Gli algoritmi che risolvono problemi di ottimizzazione devono in genere operare una sequenza di scelte per arrivare alla soluzione Gli algoritmi greedy sono algoritmi basati sull idea
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)
DettagliScopo del laboratorio
p. 1/1 Scopo del laboratorio Imparare ad usare programmi che implementino metodi di ottimizzazione: simplesso, branch and bound ecc. utilizzarli per risolvere un problema proposto Modellatori Solver p.
DettagliProblemi e algoritmi. Il che cosa e il come. F. Damiani - Alg. & Lab. 04/05 (da U. de' Liguoro - Alg. & Spe. 03/04)
Problemi e algoritmi Il che cosa e il come Il che cosa ed il come Problema: descrive che cosa si deve calcolare Specifica (di un algoritmo): descrive che cosa calcola un algoritmo Algoritmo: descrive come
DettagliProblemi e algoritmi. Il che cosa ed il come. Il che cosa ed il come. Il che cosa e il come
Problemi e algoritmi Il che cosa e il come Problema: descrive che cosa si deve calcolare Specifica (di un algoritmo): descrive che cosa calcola un algoritmo Algoritmo: descrive come effettuare un calcolo
DettagliAlgoritmo per A. !(x) Istanza di B
Riduzioni polinomiali Una funzione f: T*!T* è detta computabile in tempo polinomiale se esiste una macchina di Turing limitata polinomialmente che la computi. Siano L 1 e L 2 " T* due linguaggi. Una funzione
DettagliIl problema dello zaino
Il problema dello zaino (knapsack problem) Damiano Macedonio mace@unive.it Copyright 2010 2012 Moreno Marzolla, Università di Bologna (http://www.moreno.marzolla.name/teaching/asd2011b/) This work is licensed
DettagliWeek #9 Assessment. Practice makes perfect... November 23, 2016
Week #9 Assessment Practice makes perfect... November 23, 2016 Esercizio 1 Un azienda di trasporto deve caricare m camion {1,..., m} in modo da servire giornalmente un dato insieme di clienti. Nei camion
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
DettagliEsame di Ricerca Operativa del 07/09/2016
Esame di Ricerca Operativa del 0/09/201 (Cognome) (Nome) (Matricola) Esercizio 1. Un industria chimica produce due tipi di fertilizzanti (A e B) la cui lavorazione è affidata ai reparti di produzione e
DettagliFondamenti di Informatica 6. Algoritmi e pseudocodifica
Vettori e matrici #1 Fondamenti di Informatica 6. Algoritmi e pseudocodifica Corso di Laurea in Ingegneria Civile A.A. 2010-2011 1 Semestre Prof. Giovanni Pascoschi Le variabili definite come coppie
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
DettagliProblema del cammino minimo
Algoritmi e Strutture di Dati II Problema del cammino minimo Un viaggiatore vuole trovare la via più corta per andare da una città ad un altra. Possiamo rappresentare ogni città con un nodo e ogni collegamento
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
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
DettagliTecniche euristiche Ricerca Locale
Tecniche euristiche Ricerca Locale PRTLC - Ricerca Locale Schema delle esercitazioni Come ricavare la soluzione ottima Modelli Solver commerciali Come ricavare una stima dell ottimo: rilassamenti Rilassamento
DettagliEsercizi vari. Alberto Montresor. 19 Agosto, 2014
Esercizi vari Alberto Montresor 19 Agosto, 2014 Alcuni degli esercizi che seguono sono associati alle rispettive soluzioni. Se il vostro lettore PDF lo consente, è possibile saltare alle rispettive soluzioni
DettagliParte III: Algoritmo di Branch-and-Bound
Parte III: Algoritmo di Branch-and-Bound Divide et Impera Sia z * max {c T x : x S} (1) un problema di ottimizzazione combinatoria difficile da risolvere. Domanda: E possibile decomporre il problema (1)
DettagliNell informatica esistono alcuni problemi particolarmente rilevanti, poiché essi:
Pag 24 3) Il problema della ricerca Nell informatica esistono alcuni problemi particolarmente rilevanti, poiché essi: si incontrano in una grande varietà di situazioni reali; appaiono come sottoproblemi
DettagliEsame di Ricerca Operativa del 15/01/2015
Esame di Ricerca Operativa del 1/01/201 (Cognome) (Nome) (Matricola) Esercizio 1. Un azienda produce palloni da calcio e da basket che vende a 1 e 20 euro rispettivamente. L azienda compra ogni settimana
DettagliEsame di Ricerca Operativa del 15/01/2015
Esame di Ricerca Operativa del 1/01/01 (Cognome) (Nome) (Matricola) Esercizio 1. Un azienda produce palloni da basket e da calcio che vende rispettivamente a 1 e euro. L azienda compra ogni settimana 00
DettagliSoluzioni degli esercizi di formulazione di PL{0, 1}
Soluzioni degli esercizi di formulazione di PL{0, 1} Salvatore Nocella 12 febbraio 2007 1 Al lavoro Due operai devono eseguire un certo numero di lavori J = {1,..., n}, ciascuno della durata di un ora.
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
DettagliCapitolo 3: Ottimizzazione Discreta. E. Amaldi DEIB, Politecnico di Milano
Capitolo 3: Ottimizzazione Discreta E. Amaldi DEIB, Politecnico di Milano 3.1 Modelli di PLI e PLMI Moltissimi problemi decisionali complessi possono essere formulati o approssimati come problemi di Programmazione
Dettaglix 2 (20, 60) z = 200 (40, 30) z = 100 z = 0 x 1 40
Mauro Dell Amico Dipartimento di Scienze e Metodi dell Ingegneria (DISMI) Università degli studi di Modena e Reggio Emilia Via Amendola 2, Pad. Morselli, 42122 Reggio Emilia web: www.or.unimore.it email:
DettagliESERCIZI SULLA TECNICA BACKTRACKING e BRANCH & BOUND
ESERCIZI SULLA TECNICA BACKTRACKING e BRANCH & BOUND 1. [ STRINGHE] Scrivere in pseudo-codice una procedura che, preso in input un intero n, stampi tutte le stringhe di lunghezza minore o uguale ad n sull
DettagliGrafi pesati Minimo albero ricoprente
Algoritmi e Strutture Dati Definizioni Grafi pesati Minimo albero ricoprente Sia G=(V,E) un grafo non orientato e connesso. Un albero ricoprente di G è un sottografo T G tale che: T è un albero; T contiene
Dettagli2.3.3 Cammini ottimi nei grafi senza circuiti
.. Cammini ottimi nei grafi senza circuiti Sia un grafo G = (N, A) orientato senza circuiti e una funzione di costo che assegna un valore c ij R ad ogni arco (i, j) A circuito Proprietà I nodi di un grafo
DettagliMetodi di Ottimizzazione per la Logistica e la Produzione
Metodi di Ottimizzazione per la Logistica e la Produzione Parte III Manuel Iori Dipartimento di Scienze e Metodi dell Ingegneria Università di Modena e Reggio Emilia Anno Accademico 2016/17 MOLP Parte
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
DettagliEsame di Ricerca Operativa del 03/09/2015
Esame di Ricerca Operativa del 0/09/201 (Cognome) (Nome) (Matricola) Esercizio 1. Una raffineria di petrolio miscela tipi di greggio per ottenere tipi di carburante: senza piombo, diesel e blu diesel.
DettagliEsame di Ricerca Operativa del 06/02/17
Esame di Ricerca Operativa del 0/0/ (Cognome) (Nome) (Numero d Matricola) Esercizio. Uno studente vuole definire un piano di studio settimanale per preparare gli esami A, B e C, massimizzando le ore (h)
DettagliAlgoritmo basato su cancellazione di cicli
Algoritmo basato su cancellazione di cicli Dato un flusso ammissibile iniziale, si costruisce una sequenza di flussi ammissibili di costo decrescente. Ciascun flusso è ottenuto dal precedente flusso ammissibile
DettagliCorso di Perfezionamento
Programmazione Dinamica 1 1 Dipartimento di Matematica e Informatica Università di Camerino 15 febbraio 2009 Tecniche di Programmazione Tecniche di progettazione di algoritmi: 1 Divide et Impera 2 Programmazione
DettagliASSEGNAMENTO DELLE OPERAZIONI DI TAGLIO NELLA PRODUZIONE DI CAPI DI ABBIGLIAMENTO
ASSEGNAMENTO DELLE OPERAZIONI DI TAGLIO NELLA PRODUZIONE DI CAPI DI ABBIGLIAMENTO Lo scenario produttivo Una nota azienda produce capi di abbigliamento per l alta moda Ogni capo è costituito da vari pezzi
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
Dettagli4.5 Metodo del simplesso
4.5 Metodo del simplesso min z = c T x s.v. Ax = b x PL in forma standard Esamina una sequenza di soluzioni di base ammissibili con valori non crescenti della funzione obiettivo fino a raggiungerne una
DettagliEsame di Ricerca Operativa del 11/07/2016
Esame di Ricerca Operativa del /0/01 (Cognome) (Nome) (Matricola) Esercizio 1. Un erboristeria vuole produrre una nuova tisana utilizzando tipi di tisane già in commercio. Tali tisane sono per lo più composte
DettagliEsercizi di Algoritmi e Strutture Dati
Esercizi di Algoritmi e Strutture Dati Moreno Marzolla marzolla@cs.unibo.it Ultimo aggiornamento: 3 novembre 2010 1 Trova la somma/1 Scrivere un algoritmo che dati in input un array A[1... n] di n interi
Dettagli11.4 Chiusura transitiva
6 11.4 Chiusura transitiva Il problema che consideriamo in questa sezione riguarda il calcolo della chiusura transitiva di un grafo. Dato un grafo orientato G = hv,ei, si vuole determinare il grafo orientato)
DettagliAlgoritmi e Strutture Dati (Mod. B) Algoritmi Greedy (parte I)
Algoritmi e Strutture Dati (Mod. B) Algoritmi Greedy (parte I) Algoritmi greedy Gli algoritmi per problemi di ottimizzazione devono in genere operare una sequenza di scelte per arrivare alla soluzione
DettagliRisoluzione del rilassamento continuo del problema del commesso viaggiatore
Risoluzione del rilassamento continuo del problema del commesso viaggiatore Sia G = (V,E) un grafo orientato completo, con un costo c ij R associato a ciascun arco (i, j) E. Si consideri la seguente formulazione
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
DettagliOttimizzazione nella Gestione dei Progetti - Esercitazione 1: calcolo degli schedule ottimi
Università degli Studi di Roma La Sapienza Ottimizzazione nella Gestione dei Progetti - Esercitazione : calcolo degli schedule ottimi di FABIO D ANDREAGIOVANNI Dipartimento di Informatica e Sistemistica
DettagliSintesi Sequenziale Sincrona Sintesi Comportamentale di reti Sequenziali Sincrone
Sintesi Sequenziale Sincrona Sintesi Comportamentale di reti Sequenziali Sincrone Il problema dell assegnamento degli stati versione del 9/1/03 Sintesi: Assegnamento degli stati La riduzione del numero
DettagliCercare il percorso minimo Ant Colony Optimization
Cercare il percorso minimo Ant Colony Optimization Author: Luca Albergante 1 Dipartimento di Matematica, Università degli Studi di Milano 4 Aprile 2011 L. Albergante (Univ. of Milan) PSO 4 Aprile 2011
DettagliProcessi di cost management - Programmazione multiperiodale
Processi di cost management - Programmazione multiperiodale Queste slide (scrte da Carlo Mannino) riguardano il problema di gestione delle attivà di un progetto allorché i costi di esecuzione sono legati
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
DettagliAlgoritmi e Strutture Dati
Algoritmi Golosi (Greedy) Maria Rita Di Berardini, Emanuela Merelli 1 1 Dipartimento di Matematica e Informatica Università di Camerino un algoritmo goloso correttezza Problema della selezione di attività
DettagliGrafi (non orientati e connessi): minimo albero ricoprente
.. Grafi (non orientati e connessi): minimo albero ricoprente Una presentazione alternativa (con ulteriori dettagli) Problema: calcolo del minimo albero di copertura (M.S.T.) Dato un grafo pesato non orientato
DettagliEsame di Ricerca Operativa del 16/06/2015
Esame di Ricerca Operativa del 1/0/01 (Cognome) (Nome) (Matricola) Esercizio 1. Una ditta produce vernici in tre diversi stabilimenti (Pisa, Cascina, Empoli) e le vende a tre imprese edili (A, B, C). Il
DettagliAppunti lezione Capitolo 14 Greedy
Appunti lezione Capitolo 14 Greedy Alberto Montresor 21 Novembre, 2016 1 Domanda: dimostrare che S[i, j] = con i j Nel problema della selezione delle attività, il sottoinsieme S[i, j] è definito nel modo
DettagliArray e Oggetti. Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1. Dispensa 12. A. Miola Dicembre 2006
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica 1 Dispensa 12 Array e Oggetti A. Miola Dicembre 2006 http://www.dia.uniroma3.it/~java/fondinf1/ Array e Oggetti 1 Contenuti Array paralleli
DettagliAlgoritmi Euristici. Corso di Laurea in Informatica e Corso di Laurea in Matematica. Roberto Cordone DI - Università degli Studi di Milano
Algoritmi Euristici Corso di Laurea in Informatica e Corso di Laurea in Matematica Roberto Cordone DI - Università degli Studi di Milano Lezioni: Mercoledì 08.30-10.30 Venerdì 08.30-10.30 Ricevimento:
DettagliEsame di Ricerca Operativa del 09/02/2016
Esame di Ricerca Operativa del 0/0/01 (Cognome) (Nome) (Matricola) Esercizio 1. Una sartoria produce tipi di vestiti: pantaloni, gonne e giacche, utilizzando stoffa e filo. Settimanalmente, la disponibilità
DettagliDati e Algoritmi I (Pietracaprina) Esercizi sulle Nozioni di Base
Dati e Algoritmi I (Pietracaprina) Esercizi sulle Nozioni di Base Dati e Algoritmi I (Pietracaprina): Esercizi 1 Problema 1. Sia T una stringa arbitraria di lunghezza n 1 su un alfabeto Σ. È sempre possibile
DettagliAlgoritmi e Strutture Dati. Capitolo 4 Ordinamento
Algoritmi e Strutture Dati Capitolo 4 Ordinamento Ordinamento Dato un insieme S di n oggetti presi da un dominio totalmente ordinato, ordinare S Esempi: ordinare una lista di nomi alfabeticamente, o un
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
DettagliIntroduzione alla programmazione
Introduzione alla programmazione Risolvere un problema Per risolvere un problema si procede innanzitutto all individuazione Delle informazioni, dei dati noti Dei risultati desiderati Il secondo passo consiste
DettagliModelli decisionali su grafi - Problemi di Localizzazione
Modelli decisionali su grafi - Problemi di Localizzazione Massimo Paolucci (paolucci@dist.unige.it) DIST Università di Genova Percorso Minimo tra tutte le coppie di vertici 2 Si può applicare n volte Dijstra
DettagliGrafi e Funzioni di Costo ESERCIZI
Grafi e Funzioni di Costo ESERCIZI Esercizio1 Si determini la matrice di incidenza archi-percorsi ed i costi di percorso per la rete di trasporto rappresentata in figura. 1 4 2 3 5 Ramo Costo Ramo Costo
DettagliCammini minimi fra tutte le coppie
Capitolo 12 Cammini minimi fra tutte le coppie Consideriamo il problema dei cammini minimi fra tutte le coppie in un grafo G = (V, E, w) orientato, pesato, dove possono essere presenti archi (ma non cicli)
DettagliAlberi di copertura. Mauro Passacantando. Dipartimento di Informatica Largo B. Pontecorvo 3, Pisa
Alberi di copertura Mauro Passacantando Dipartimento di Informatica Largo B. Pontecorvo, Pisa mpassacantando@di.unipi.it M. Passacantando TFA 0/ - Corso di Ricerca Operativa Università di Pisa / 9 Definizioni
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
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
Dettaglii completi l'esecuzione dell'algoritmo di programmazione dinamica per questo problema restituendo il valore ottimo e una soluzione ottima del problema
Compito di Ricerca Operativa II Esercizio ( punti). ia dato il problema di flusso massimo sulla rete in figura (le capacit a degli archi sono riportate sopra di essi). 0 8 i consideri il seguente flusso
DettagliCOMPITO DI RICERCA OPERATIVA. max 5 2x 1 + 3x 2 x 3 = 2 + x 1 5x 2 x 4 = 5 + x 2. x 5 = 1 + x 1 x 2
COMPITO DI RICERCA OPERATIVA ESERCIZIO. ( punti) La riformulazione di un problema di PL rispetto alla base B = {x, x, x } è la seguente: max 2x + x 2 x = 2 + x x 2 x = + x 2 x = 2 + x + x 2 x, x 2, x,
DettagliOttimizzazione Multi Obiettivo
Ottimizzazione Multi Obiettivo 1 Ottimizzazione Multi Obiettivo I problemi affrontati fino ad ora erano caratterizzati da una unica (e ben definita) funzione obiettivo. I problemi di ottimizzazione reali
DettagliFondamenti di Informatica
Fondamenti di Informatica AlgoBuild: Strutture selettive, iterative ed array Prof. Arcangelo Castiglione A.A. 2016/17 AlgoBuild : Strutture iterative e selettive OUTLINE Struttura selettiva Esempi Struttura
DettagliAlgoritmi Euristici. Corso di Laurea in Informatica e Corso di Laurea in Matematica. Roberto Cordone DI - Università degli Studi di Milano
Algoritmi Euristici Corso di Laurea in Informatica e Corso di Laurea in Matematica Roberto Cordone DI - Università degli Studi di Milano Lezioni: Mercoledì 08.30-10.30 Venerdì 08.30-10.30 Ricevimento:
DettagliProblema Determinare la miscelazione ottimale delle materie prime in modo da massimizzare il profitto complessivo
Mix Produttivo Si dispone di i=1,...,m risorse produttive (ad esempio, materie prime) in quantità limitata. La massima disponibilità delle risorse è b 1,...,b m Si possono produrre j=1,...,n diversi prodotti
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
Dettagli