Macchine parallele M 1 M 2 M 3 J 1 J 2 LAVORI J 3 J 4

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Macchine parallele M 1 M 2 M 3 J 1 J 2 LAVORI J 3 J 4"

Transcript

1 Macchine parallele M 1 J 1 J 2 LAVORI M 2 J 3 J 4 M 3

2 Macchine parallele

3 Scheduling su macchine parallele scorrelate R C max Descrizione del problema n lavori devono essere processati da m macchine diverse (unrelated) disposte in parallelo. Le macchine possono eseguire un solo lavoro alla volta. Ogni lavoro deve essere eseguito su una ed una sola macchina senza interruzione. Dati I tempi di processamento p ij, i=1,, m, del lavoro j sulla macchina i sono noti. Obiettivo Assegnare i lavori alle macchine in modo tale da minimizzare il tempo totale di completamento della macchina più carica (equivalente a minimizzare il makespan).

4 Scheduling su macchine parallele scorrelate R C max Obiettivo Trovare un assegnamento dei lavori alle macchine che minimizza il makespan (C max ) equivale a bilanciare il più possibile i carichi di lavoro delle macchine.

5 Esempio Macchine Lavori Una soluzione ammissibile M 1 J 1 J 4 M 2 J 5 J 2 M 3 J 3 34 t

6 Esempio Macchine Lavori Una soluzione ottima M 1 J 1 J 4 M 2 J 5 J 3 M 3 J 2 33 t

7 Complessità Il problema è NP-completo anche con due macchine identiche m=2 p ij = p j i = 1,..., m P2 C max

8 Un algoritmo approssimato per Pm C max Regola LPT (Longest Processing Time): assegna alle macchine (che si rendono) disponibili i lavori non eseguiti con tempo di esecuzione più grande. Permette di trovare una soluzione che non dista più di un dato valore dall ottimo (algoritmo approssimato)

9 Un algoritmo approssimato per Pm C max Esempio regola LPT J p j m=4 Soluzione LPT M 1 J 1 J 7 J 9 M 2 J 2 J 8 M 3 J 3 J 5 M 4 J 4 J 6 15 t

10 Un algoritmo approssimato per Pm C max J p j Soluzione Ottima M 1 J 1 J 5 M 2 J 2 J 6 M 3 J 3 J 4 M 4 J 7 J 8 J 9 12 t

11 Un algoritmo approssimato per Pm C max Si può dimostrare che vale il seguente rapporto di approssimazione: C max (LPT) C max (OPT) m C max (LPT): soluzione trovata con la regola LPT C max (OPT): soluzione ottima

12 Un algoritmo approssimato per Pm C max Esempio regola LPT J p j m=4 C max (LPT) C max (OPT) = = m = = 15 12

13 Il problema con premption Pm prmp C max Consideriamo il problema di schedulare n lavori su m macchine identiche con l obiettivo di minimizzare il makespan, e con la possibilità di interrompere l esecuzione dei lavori. Uno stesso lavoro può quindi essere eseguito su più macchine. Il problema è formulabile come problema di Programmazione Lineare e quindi risolubile in tempo polinomiale.

14 Il problema con premption Pm prempt C max Una Formulazione di PL Definizione delle variabili C i, i=1,, m, tempo di completamento della macchina i x ij = tempo di lavoro j assegnato alla macchina i C max = max i = 1,..., m { C } tempo di completamento di tutto il sistema i

15 Una formulazione di PL per Pm prempt C max Funzione obiettivo Il tempo di completamento C i della generica macchina i è pari a: C i = C max = max i=1,...,m n x ij j=1 n { C } i = max i=1,...,m x ij j=1

16 Una formulazione di PL per Pm prempt C max Vincoli Ogni lavoro deve essere completato m x ij i=1 = p j j = 1,...,n

17 Una formulazione di PL per Pm prempt C max Vincoli Il tempo totale di ogni lavoro non può superare C max m x ij i=1 C max j = 1,...,n (il vincolo implica che le esecuzioni di uno stesso lavoro su diverse macchine non possono sovrapporsi)

18 Una formulazione di PL per Pm prempt C max Vincoli Il tempo totale di lavoro di ogni macchina non può superare C max n x ij j=1 C max i = 1,...,m

19 Una formulazione di PL per Pm prempt C max min C max tale che m x ij i=1 m x ij i=1 n x ij j=1 x ij 0 = p j j = 1,...,n C max j = 1,...,n C max i = 1,...,m

20 Una formulazione di PLI per R C max

21 Una formulazione di PLI per R C max Definizione delle variabili C i, i=1,, m, tempo di completamento della macchina i 1 se lavoro j è assegnato alla macchina i x ij = 0 altrimenti C max = max i = 1,..., m { C } tempo di completamento di tutto il sistema i

22 Una formulazione di PLI per R C max Funzione obiettivo C i, i=1,, m, tempo di completamento della macchina i C i = n j=1 p ij x ij C max = max i=1,...,m n { C } i = max i=1,...,m p ij x ij j=1

23 Una formulazione di PLI per R C max Vincoli Ogni lavoro deve essere assegnato ad esattamente una macchina m x ij i=1 = 1 j = 1,...,n

24 Una formulazione di PLI per R C max min C max = min max i=1,...,m tale che m = 1 j = 1,...,n i=1 x ij { } x ij 0,1 n { C } i = min max i=1,...,m p ij x ij j=1

25 Una formulazione di PLI per R C max min C max = min max i=1,...,m tale che m = 1 j = 1,...,n i=1 x ij { } x ij 0,1 n { C } i = min max i=1,...,m p ij x ij j=1 Funzione obiettivo non lineare

26 Una formulazione di PLI per R C max min C max tale che C i = m i=1 x ij n p ij x ij C max i = 1,...,m j=1 = 1 j = 1,...,n { } x ij 0,1

27 Esempio Consideriamo un problema con 10 macchine e 10 lavori. In tabella sono riportati i tempi di processamento: Lavori Macchine

28 Formulazione con Excel

29 Formulazione con Excel

30 Formulazione con Excel

31 Soluzione del rilassamento lineare

32 Formulazione con Cplex min Cmax subject to 3 x0,0 + 7 x0, x0, x0, x0, x0, x0, x0, x0, x0,9 - Cmax <= 0 85 x1,0 + 3 x1, x1, x1, x1, x1, x1, x1, x1, x1,9 - Cmax <= 0 16 x2, x2, x2, x2, x2, x2, x2, x2,7 + 3 x2, x2,9 - Cmax <= 0 43 x3, x3, x3, x3, x3,4 + 7 x3, x3, x3,7 + 7 x3, x3,9 - Cmax <= 0 78 x4, x4, x4, x4,3 + 5 x4, x4, x4,6 + 1 x4, x4, x4,9 - Cmax <= 0 94 x5, x5, x5, x5, x5, x5, x5, x5, x5,8 + 7 x5,9 - Cmax <= 0 86 x6, x6, x6, x6, x6, x6, x6, x6, x6, x6,9 - Cmax <= 0 44 x7,0 + 6 x7, x7, x7, x7, x7, x7, x7, x7, x7,9 - Cmax <= 0 62 x8, x8, x8, x8, x8, x8, x8, x8, x8, x8,9 - Cmax <= 0 98 x9, x9, x9, x9, x9, x9, x9, x9, x9, x9,9 - Cmax <= 0 x0,0 + x1,0 + x2,0 + x3,0 + x4,0 + x5,0 + x6,0 + x7,0 + x8,0 + x9,0 =1 x0,1 + x1,1 + x2,1 + x3,1 + x4,1 + x5,1 + x6,1 + x7,1 + x8,1 + x9,1 =1 x0,2 + x1,2 + x2,2 + x3,2 + x4,2 + x5,2 + x6,2 + x7,2 + x8,2 + x9,2 =1 x0,3 + x1,3 + x2,3 + x3,3 + x4,3 + x5,3 + x6,3 + x7,3 + x8,3 + x9,3 =1 x0,4 + x1,4 + x2,4 + x3,4 + x4,4 + x5,4 + x6,4 + x7,4 + x8,4 + x9,4 =1 x0,5 + x1,5 + x2,5 + x3,5 + x4,5 + x5,5 + x6,5 + x7,5 + x8,5 + x9,5 =1 x0,6 + x1,6 + x2,6 + x3,6 + x4,6 + x5,6 + x6,6 + x7,6 + x8,6 + x9,6 =1 x0,7 + x1,7 + x2,7 + x3,7 + x4,7 + x5,7 + x6,7 + x7,7 + x8,7 + x9,7 =1 x0,8 + x1,8 + x2,8 + x3,8 + x4,8 + x5,8 + x6,8 + x7,8 + x8,8 + x9,8 =1 x0,9 + x1,9 + x2,9 + x3,9 + x4,9 + x5,9 + x6,9 + x7,9 + x8,9 + x9,9 =1 integers x0,0 x0,1 x0,2... x9,8 x9,9 end

33 La tecnica del Rilassamento Lagrangiano nella soluzione di problemi di PLI: Un applicazione a R C max

34 Il Rilassamento Lagrangiano nei problemi di PLI Si consideri il seguente problema di PLI, P: z* = mincx Ax b (1) Cx d (2) x { 0,1} n,b R m 1,d Rm 2 c R n vettore riga

35 Il Rilassamento Lagrangiano nei problemi di PLI Si consideri il seguente problema di PLI, P: z* = mincx Ax b (1) Cx d (2) x { 0,1} n,b R m 1,d Rm 2 c R n vettore riga Supponiamo che P sia difficile da risolvere

36 Supponiamo invece che sia di facile risoluzione il problema rilassato P R : mincx Cx d (2) x { 0,1} n Il Rilassamento Lagrangiano dei vincoli (1) consiste nell'inserire una combinazione pesata di tali vincoli nella funzione obiettivo

37 Il Rilassamento Lagrangiano dei vincoli (1) consiste nell'inserire una combinazione pesata di tali vincoli nella funzione obiettivo. Si ottiene il seguente Problema Lagrangiano: mincx + λ(b-ax) Cx d (2) x { 0,1} n con λ 0 vettore riga di dimensione m 1 Supponiamo che il Problema Lagrangiano sia ancora facile da risolvere per ogni λ 0

38 La funzione L(λ) (con λ 0 vettore riga di dim. m 1 ): { } L(λ) = min cx + λ(b Ax) :Cx d,x { 0,1} n è detta funzione Lagrangiana, il vettore λ è detto vettore dei moltiplicatori di Lagrange

39 Vale la seguente proprietà: La funzione lagrangiana è un lower bound alla soluzione ottima del problema iniziale P per ogni vettore λ 0: L(λ) z * λ R m 1 +

40 Dimostrazione Infatti, per ogni vettore λ 0 si ha: { } z* = min cx : Ax b;cx d,x { 0,1} n { } min cx + λ(b Ax) : Ax b;cx d,x { 0,1} n

41 Dimostrazione(segue) Infatti, per ogni vettore λ 0 si ha: { } z* = min cx : Ax b;cx d,x { 0,1} n { } min cx + λ(b Ax) : Ax b;cx d,x { 0,1} n { } = L(λ) min cx + λ(b Ax) :Cx d,x { 0,1} n

42 Il miglior lower bound è ottenuto calcolando il Duale Lagrangiano { } L(λ * ) = max L(λ) : λ 0 L(λ * ) può essere ottenuto risolvendo un problema di ottimizzazione non differenziabile L(λ) L(λ * ) λ * λ

43 Teorema. Sia z* PL il valore della soluzione otttima del rilassamento lineare di P : z PL = mincx Ax b (1) Cx d (2) 0 x 1 si ha L(λ * ) z* PL

44 Teorema. Sia z* PL il valore della soluzione otttima del rilassamento lineare di P : si ha Dim. z PL = mincx Ax b (1) Cx d (2) 0 x 1 L(λ * ) z* PL { { { } n } : λ 0 } L(λ * ) = max min cx + λ(b Ax) :Cx d,x 0,1 max{ min{ cx + λ(b Ax) :Cx d,0 x 1} : λ 0}

45 Teorema. Sia z* PL il valore della soluzione otttima del rilassamento lineare di P : si ha Dim. z PL = mincx Ax b (1) Cx d (2) 0 x 1 L(λ * ) z* PL { { { } n } : λ 0 } L(λ * ) = max min cx + λ(b Ax) :Cx d,x 0,1 max{ min{ cx + λ(b Ax) :Cx d,0 x 1} : λ 0} max{ min{ cx + λ(b Ax) + µ(d Cx) : x 1,x 0} : λ 0,µ 0} max{ min{ cx + λ(b Ax) + µ(d Cx) +ν(x 1) : x 0} : λ 0,µ 0,ν 0} =

46 Dim. (segue) L(λ * )... max{ min{ cx + λ(b Ax) + µ(d Cx) +ν(x 1) : x 0} : λ 0,µ 0,ν 0} = max{ min {(c λa µc +ν)x + bλ + dµ ν1: x 0} : λ 0,µ 0,ν 0} = W

47 Dim. (segue) L(λ * )... max{ min{ cx + λ(b Ax) + µ(d Cx) +ν(x 1) : x 0} : λ 0,µ 0,ν 0} = max{ min {(c λa µc +ν)x + bλ + dµ ν1: x 0} : λ 0,µ 0,ν 0} = W Se (c λa µc +ν) < 0 per x = + si ha min {(c λa µc +ν)x + bλ + dµ ν1: x 0} = Se (c λa µc +ν) 0 la soluzione ottima è x = 0 e si ha min {(c λa µc +ν)x + bλ + dµ ν1: x 0} = bλ + dµ ν1

48 Dim. (segue) L(λ * )... max{ min{ cx + λ(b Ax) + µ(d Cx) +ν(x 1) : x 0} : λ 0,µ 0,ν 0} = max{ min {(c λa µc +ν)x + bλ + dµ ν1: x 0} : λ 0,µ 0,ν 0} = W Se (c λa µc +ν) < 0 per x = + si ha min {(c λa µc +ν)x + bλ + dµ ν1: x 0} = Se (c λa µc +ν) 0 la soluzione ottima è x = 0 e si ha min {(c λa µc +ν)x + bλ + dµ ν1: x 0} = bλ + dµ ν1 per cui ha senso considerare solo vettori (c λa µc +ν) 0 in corrispondenza dei quali si ha x = 0 min {(c λa µc +ν)x + bλ + dµ ν1: x 0} = bλ + dµ ν1

49 Dim. (segue) L(λ * )... max{ min{ cx + λ(b Ax) + µ(d Cx) +ν(x 1) : x 0} : λ 0,µ 0,ν 0} = max{ min {(c λa µc +ν)x + bλ + dµ ν1: x 0} : λ 0,µ 0,ν 0} = W per cui ha senso considerare solo vettori (c λa µc +ν) 0 in corrispondenza dei quali si ha x = 0 min {(c λa µc +ν)x + bλ + dµ ν1: x 0} = bλ + dµ ν1 W = max{ bλ + dµ ν1: c λa µc +ν 0,λ 0,µ 0,ν 0}

50 Dim. (segue) W = max{ bλ + dµ ν1: c λa µc +ν 0,λ 0,µ 0,ν 0} = 1 min{ cx : Ax b,cx d,0 x 1} = Z * PL 1 La penultima uguaglianza discende dalla teoria della dualità.

51 Calcolo del Duale Lagrangiano L * Metodo del subgradiente Il calcolo del duale lagrangiano L*=L(λ * ) può essere effettuato attraverso il metodo del subgradiente che genera una successione di punti del tipo: λ k = λ k-1 + θ k d k tale che lim k->+ L(λ k )= L *

52 Calcolo del Duale Lagrangiano L * Metodo del subgradiente Nel metodo del subgradiente si ha: λ k = λ k-1 + θ k d k tale che lim k->+ L(λ k )= L * dove θ k = α k UB L(λ k 1 ) s k è il passo d k = sk s k è una direzione di salita

53 Calcolo del Duale Lagrangiano L * Metodo del subgradiente θ k = α k UB L(λ k 1 ) s k è il passo d k = sk s k è una direzione di salita s k è un subgradiente di L in λ k 1 0 < α k 2

54 Calcolo del Duale Lagrangiano L * Metodo del subgradiente Può essere dimostrato che un subgradiente s k di L in λ k 1 è dato da: s k = b Ax k dove x k è la soluzione del Problema Lagrangiano L(λ k 1 )

55 L(λ k 1 )

56 Un applicazione al problema R C max min C max tale che C i = m i=1 x ij n p ij x ij C max i = 1,...,m (1) j=1 = 1 j = 1,...,n (2) x ij 0,1 { } (3)

57 Rilassamento Lagrangiano dei vincoli (1) L(λ) = min C max + ( x ij C max ) tale che m i=1 x ij m i=1 λ i n j=1 p ij = 1 j = 1,...,n (2) x ij 0,1 { } (3)

58 Rilassamento Lagrangiano dei vincoli (1) m n L(λ) = min C max + λ i ( p ij x ij C max ) : (2), (3) i=1 j=1 = m m n = min (1 λ i )C max + λ i p ij x ij : (2), (3) i=1 i=1 j=1 = L 1 (λ) + L 2 (λ) = m min (1 λ i )C max : C max 0 + i=1 m n m min λ i p ij x ij : x ij = 1 j, x ij 0,1 i=1 j=1 i=1 { } i, j

59 Soluzione del problema L(λ) Si possono distinguere i due seguenti casi: 1. Se Σ i λ i >1 C max = + L 1 (λ) = - L(λ) = - non significativo! 2. Se Σ i λ i 1 L 1 (λ) = 0 L(λ) = L 2 (λ) Nel calcolo di L( λ * ) posso considerare solo il caso 2.

60 Soluzione del problema L(λ) 2. Se Σ i λ i 1 Il problema lagrangiano diventa quindi: ( ) = L ( 2 λ) = L λ min m x ij i=1 m n i=1 j=1 x ij 0,1 λ i p ij x ij = 1 j = 1,...,n { } i = 1,...m; j = 1,...,n

61 Soluzione del problema L(λ) L( λ) = L 2 λ m x ij i=1 x ij 0,1 " $ n j=1 m i=1 ( ) = min# λ i p ij = 1 j = 1,...,n { } L(λ) puo essere decomposto in n sottoproblemi, uno per ogni lavoro. Per il lavoro k si ha: min m i = 1 x ik x ik m i = 1 = λ 1 i p ik %$ x ik { 0,1 } i = 1,..., m x ij & $ ' ($

62 Soluzione del problema L(λ) L(λ) può essere decomposto in n sottoproblemilavori. Per il lavoro k si ha: min m i = 1 x ik x ik m i = 1 = λ 1 i p ik x ik { 0,1 } i = 1,..., n

63 Soluzione del problema L(λ) L(λ) può essere decomposto in n sottoproblemilavori. Per il lavoro k si ha: min m i = 1 x ik x ik m i = 1 = λ 1 i p ik x ik { 0,1 } i = 1,..., n La soluzione del sottoproblema associato al lavoro k consiste nell assegnare k alla macchina i per cui è minimo il prodotto λ i p ik.

64 Osservazione 1: è sufficiente considerare solo moltiplicatori Lagrangiani tali che Σ i λ i = 1 Infatti: Sia λ : 0 < Σ i λ i < 1, e sia λ : λ ' i = λ i / m i = 1,...,m i=1 λ i m = 1 Siano X e X ' i corrispondenti assegnamenti in L(λ) e L(λ ' ), si ha: X =X ' Soluzione del problema L(λ) λ > λ L(λ ' ) > L(λ) i=1 λ ' i

65 Soluzione del problema L(λ) Osservazione 2: λ vettore, λ i 0 i, si ha: L(λ) è un Lower Bound della soluzione ottima.

66 Soluzione del problema L(λ) Osservazione 2: λ vettore, λ i 0 i, si ha: L(λ) è un Lower Bound della soluzione ottima. Ogni soluzione ammissibile del problema Lagrangiano è un assegnamento dei lavori alle macchine, ed è quindi anche ammissibile per il problema originale R C max, fornisce, cioé un Upper Bound della soluzione ottima di R C max

67 Metodo del subgradiente Per una fissata iterazione it e vettore λ it-1, sia x it la soluzione del problema Lagrangiano L(λ it-1 ) Sia C max it il massimo tempo di completamento relativo a x it Nota: in realtà, in L(λ), C max può assumere qualsiasi valore maggiore o uguale 0

68 Metodo del subgradiente Un subgradiente s it all iterazione it è: s i it n j=1 = p ij x ij it it C max = C it it i C max i = 1,...,m Il nuovo vettore dei moltiplicatori è: λ i it it s = max 0,λ it 1 i +θ it i s it i = 1,...,m, θ it = α C it -L(λ it 1 ) max, 0 < α 2 s it

69 Esercizio Si consideri la seguente istanza di R C max con 3 macchine, M 1, M 2, ed M 3,e5lavori, j 1,j 2,j 3,j 4,j 5. I tempi di processamento, p ij, di ogni job j su ogni macchina i sono riportati nella tabella seguente. Table 2: Tempi di processamento p ij p ij j 1 j 2 j 3 j 4 j 5 M M M Una formulazione del problema è la seguente min D 5P p ij x ij apple D for i =1,...,3 j=1 3P x ij = 1 for j =1,...,5 i=1 x ij 2 {0, 1} for j =1,...,5andi =1,...,3

70 Esercizio (segue) Dove x ij è p a r i a d 1 s e i l l a v o r o j è a s s e g n a t o a l l a m a c c h i n a i e0altrimenti. Siscriva per esteso la formulazione del problema utilizzando i dati di Tabella 2. Si e ettui il 5P rilassamento lagrangiano dei vincoli p ij x ij apple D, per i =1,...,3. Si calcoli il valore j=1 della funzione lagrangiana L( ) in corrispondenza del vettore dei moltiplicatori, con componenti 1 =1/7, 2 =4/7 e 3 =2/7. λ 1 = 3/7 λ 2 = 2/7 λ 3 = 2/7

71 λ 1 = 3/7 λ 2 = 2/7 λ 3 = 2/7 Esercizio (segue) Soluzione del problema lagrangiano: Il lavoro j è assegnato alla macchina i per cui è prodotto λ i p ij p ij j 1 j 2 j 3 j 4 j 5 M M M minimo il " $ L( λ) = L 2 ( λ) = min# λ i p ij m i=1 x ij = 1 j = 1,...,n { } x ij 0,1 %$ n j=1 m i=1 x ij & $ ' ($

72 λ 1 = 3/7 λ 2 = 2/7 λ 3 = 2/7 Esercizio (segue) p ij j 1 j 2 j 3 j 4 j 5 M M M Soluzione del problema lagrangiano: Il lavoro j è assegnato alla macchina i per cui è minimo il prodotto λ i p ij j 1 è assegnato alla macchina 2 j 2 è assegnato alla macchina 3 j 3 è assegnato alla macchina 1 j 4 è assegnato alla macchina 1 j 5 è assegnato alla macchina 2 L( λ) = L 2 ( λ) = min# λ i p ij m i=1 x ij = 1 j = 1,...,n { } x ij 0,1 " $ %$ n j=1 m i=1 x ij & $ ' ($ L(λ)=(3(25+10)+2(15+10)+2*20)/7=195/7=27,85 e quindi: LB=28

73 λ 1 = 3/7 λ 2 = 2/7 λ 3 = 2/7 Esercizio (segue) p ij j 1 j 2 j 3 j 4 j 5 M M M La soluzione del problema lagrangiano è un assegnamento ammissibile per R C max. j 1 è assegnato alla macchina 2 j 2 è assegnato alla macchina 3 j 3 è assegnato alla macchina 1 j 4 è assegnato alla macchina 1 j 5 è assegnato alla macchina 2 Si ha quindi: C max = C 1 = p 13 + p 14 = 35

74 λ 1 = 3/7 λ 2 = 2/7 λ 3 = 2/7 j 1 è assegnato alla macchina 2 j 2 è assegnato alla macchina 3 j 3 è assegnato alla macchina 1 j 4 è assegnato alla macchina 1 j 5 è assegnato alla macchina 2 Esercizio (segue) p ij j 1 j 2 j 3 j 4 j 5 M M M Subgradiente s: s 1 it s 2 it s 3 it 5 j=1 it = p 1j x 1j 5 j=1 it = p 2 j x 2 j 5 j=1 it = p 3 j x 3 j it C max it C max it C max = C it it 1 C max = C it it 2 C max = C it it 3 C max = = 0 = = 10 = =-15

75 Esercizio (segue) Quanto vale la soluzione ottima del problema originale? p ij j 1 j 2 j 3 j 4 j 5 M M M min Cmax subject to 40 x0, x0, x0, x0, x0,4 - Cmax <= 0 15 x1, x1, x1, x1, x1,4 - Cmax <= 0 50 x2, x2, x2, x2, x2,4 - Cmax <= 0 x0,0 + x1,0 + x2,0 =1 x0,1 + x1,1 + x2,1 =1 x0,2 + x1,2 + x2,2 =1 x0,3 + x1,3 + x2,3 =1 x0,4 + x1,4 + x2,4 =1 x0,5 + x1,5 + x2,5 =1 integers x0,0 x0,1 x0,2 x0,3 x0,4 x1,0 x1,1 x1,2 x1,3 x1,4 x2,0 x2,1 x2,2 x2,3 end

76 Esercizio (segue) Quanto vale la soluzione ottima del problema originale? Nodes Cuts/ Node Left Objective IInf Best Integer Best Bound ItCnt Gap * % * % % * % 0 0 cutoff % Elapsed time = 0.05 sec. (0.15 ticks, tree = 0.00 MB, solutions = 3) Root node processing (before b&c): Real time = 0.03 sec. (0.09 ticks) Parallel b&c, 4 threads: Real time = 0.03 sec. (0.01 ticks) Sync time (average) = 0.00 sec. Wait time (average) = 0.00 sec. p ij j 1 j 2 j 3 j 4 j 5 M M M MIP - Integer optimal solution: Objective = e+01 Solution time = 0.08 sec. Iterations = 7 Nodes = 0

77 Esercizio (segue) Quanto vale la soluzione del Rilassamento Lineare? min Cmax subject to 40 x0, x0, x0, x0, x0,4 - Cmax <= 0 15 x1, x1, x1, x1, x1,4 - Cmax <= 0 50 x2, x2, x2, x2, x2,4 - Cmax <= 0 x0,0 + x1,0 + x2,0 =1 x0,1 + x1,1 + x2,1 =1 x0,2 + x1,2 + x2,2 =1 x0,3 + x1,3 + x2,3 =1 x0,4 + x1,4 + x2,4 =1 x0,5 + x1,5 + x2,5 =1 end Cmax= 28,51 p ij j 1 j 2 j 3 j 4 j 5 M M M

Macchine parallele M 1 M 2 M 3 J 1 J 2 LAVORI J 3 J 4

Macchine 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

Dettagli

Parte V: Rilassamento Lagrangiano

Parte 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

Dettagli

Algoritmi esatti. La teoria ci dice che per problemi difficili (come il

Algoritmi 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

Dettagli

Dualità Lagrangiana. Laura Galli Dipartimento di Informatica Largo B. Pontecorvo 3, Pisa

Dualità Lagrangiana. Laura Galli Dipartimento di Informatica Largo B. Pontecorvo 3, Pisa Dualità Lagrangiana Laura Galli Dipartimento di Informatica Largo B. Pontecorvo 3, 56127 Pisa laura.galli@unipi.it http://www.di.unipi.it/~galli 3 Novembre 2015 Ricerca Operativa 2 Laurea Magistrale in

Dettagli

Programmazione Lineare Intera: Piani di Taglio

Programmazione 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

Dettagli

COMPITO DI RICERCA OPERATIVA. max x 1 + 2x 2 + x 3 x 1 x 2 + x 3 = 1 2x 1 + 3x 2 + x 4 = 2

COMPITO DI RICERCA OPERATIVA. max x 1 + 2x 2 + x 3 x 1 x 2 + x 3 = 1 2x 1 + 3x 2 + x 4 = 2 COMPITO DI RICERCA OPERATIVA ESERCIZIO. (9 punti) Sia dato il seguente problema di PL: max x + 2x 2 + x 3 x x 2 + x 3 = 2x + 3x 2 + x 4 = 2 x, x 2, x 3, x 4 0 Si determini il duale del problema ( punto).

Dettagli

Stime dell ottimo - Rilassamenti. PRTLC - Rilassamenti

Stime dell ottimo - Rilassamenti. PRTLC - Rilassamenti Stime dell ottimo - Rilassamenti PRTLC - Rilassamenti Schema delle esercitazioni Come ricavare la soluzione ottima Modelli Solver commerciali Come ricavare una stima dell ottimo: rilassamenti Rilassamento

Dettagli

Rilassamento Lagrangiano

Rilassamento 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

Dettagli

5.1 Metodo Branch and Bound

5.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)

Dettagli

3.3 Problemi di PLI facili

3.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

Dettagli

Formulazioni. 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 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.

Dettagli

4.1 Localizzazione e pianificazione delle base station per le reti UMTS

4.1 Localizzazione e pianificazione delle base station per le reti UMTS esercitazione Ottimizzazione Prof E Amaldi Localizzazione e pianificazione delle base station per le reti UMTS Consideriamo il problema di localizzare un insieme di stazioni radio base, base station (BS),

Dettagli

Programmazione Lineare Intera

Programmazione Lineare Intera Programmazione Lineare Intera Andrea Scozzari a.a. 2012-2013 May 10, 2013 Andrea Scozzari (a.a. 2012-2013) Programmazione Lineare Intera May 10, 2013 1 / 16 Programmazione Lineare Intera: Metodo dei Piani

Dettagli

Condizioni di Karush-Kuhn-Tucker e Programmazione Lineare

Condizioni di Karush-Kuhn-Tucker e Programmazione Lineare Condizioni di Karush-Kuhn-Tucker e Programmazione Lineare A. Agnetis 1 Richiami su condizioni di Karush-Kuhn-Tucker e convessità Si consideri il problema di ottimizzazione vincolata: min f(x) (1) x X R

Dettagli

3.2 Rilassamenti lineari/combinatori e bounds

3.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

Dettagli

Possibile applicazione

Possibile 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

Dettagli

Rilassamento Lagrangiano

Rilassamento 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

Dettagli

Problemi di Localizzazione Impianti

Problemi di Localizzazione Impianti Sapienza Sapienza Università di Roma - Dipartimento di Ingegneria Informatica, Automatica e Gestionale Problemi di Localizzazione Impianti Renato Bruni bruni@dis.uniroma1.it Il materiale presentato è derivato

Dettagli

PROGRAMMAZIONE LINEARE A NUMERI INTERI

PROGRAMMAZIONE 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

Dettagli

5.6 Metodo di penalità e metodo basato sulle funzioni lagrangiane aumentate

5.6 Metodo di penalità e metodo basato sulle funzioni lagrangiane aumentate 5.6 Metodo di penalità e metodo basato sulle funzioni lagrangiane aumentate Consideriamo il generico problema di PNL min f (x) s.v. c i (x) 0 i I c i (x) = 0 i E (1) x R n dove f e le c i sono di classe

Dettagli

Ricerca Operativa A.A. 2007/ Esercitazione di laboratorio: Branch and Bound.

Ricerca 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

Dettagli

Programmazione Lineare Intera. Programmazione Lineare Intera p. 1/4

Programmazione 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:

Dettagli

I Appello Ricerca Operativa 2 bis Compito A

I 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

Parte IV: Matrici totalmente unimodulari

Parte 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)}

Dettagli

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;

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; 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

Dettagli

RICERCA OPERATIVA (a.a. 2015/16) Nome: Cognome: Matricola:

RICERCA 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

Dettagli

COMPITO DI RICERCA OPERATIVA. min 2x 1 x 2 + x 3 x 4 x 1 x 2 + x 3 + x 4 = 5 x 1 + x 2 + x 3 3. x 1, x 2, x 3, x 4, x 5 I

COMPITO DI RICERCA OPERATIVA. min 2x 1 x 2 + x 3 x 4 x 1 x 2 + x 3 + x 4 = 5 x 1 + x 2 + x 3 3. x 1, x 2, x 3, x 4, x 5 I COMPITO DI RICERCA OPERATIVA ESERCIZIO. (8 punti) Sia dato il seguente problema di PL: min x x + x x 4 x x + x + x 4 = 5 x + x + x x, x, x, x 4 0 Lo si trasformi in forma standard ( punto). Si determini

Dettagli

RICERCA OPERATIVA. Tema d esame del 04/12/2008 (Simulazione 1)

RICERCA OPERATIVA. Tema d esame del 04/12/2008 (Simulazione 1) RICERCA OPERATIVA Tema d esame del 04/12/2008 (Simulazione 1) COGNOME: NOME: MATRICOLA: 1. Un azienda meccanica deve pianificare il lavoro delle sue tre macchine per un dato giorno. I lotti che è possibile

Dettagli

Branch-and-bound per TSP

Branch-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

Dettagli

Tecniche di Decomposizione per Programmazione Lineare Intera (Mista)

Tecniche di Decomposizione per Programmazione Lineare Intera (Mista) Tecniche di Decomposizione per Programmazione Lineare Intera (Mista) Domenico Salvagnin 2011-06-12 1 Introduzione Dato un problema di programmazione lineare intera (mista), non è sempre possibile (o conveniente)

Dettagli

Dualitá in Programmazione Lineare e alcune conseguenze

Dualitá in Programmazione Lineare e alcune conseguenze Dualitá in Programmazione Lineare e alcune conseguenze Giacomo Zambelli 1 Dualitá per problemi in forma standard Si consideri il seguente problema di PL in forma standard: z = max c x Ax = b (1) ove A

Dettagli

3.6 Rilassamento Lagrangiano

3.6 Rilassamento Lagrangiano 3.6 Rilassamento Lagrangiano Consideriamo un generico problema di Programmazione Lineare Intera min {c t x : Ax b, Dx d, x Z n } con tutti i coefficienti interi, dei vincoli Ax b facili e altri Dx d difficili.

Dettagli

5.3 Metodo dei piani di taglio

5.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

Dettagli

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

Ricerca 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)

Dettagli

5.6 Metodo di penalità e metodo basato sulle funzioni lagrangiane aumentate. min f(x) s.v. c i (x) 0 i I c i (x) = 0 i E (1) x R n

5.6 Metodo di penalità e metodo basato sulle funzioni lagrangiane aumentate. min f(x) s.v. c i (x) 0 i I c i (x) = 0 i E (1) x R n 5.6 Metodo di penalità e metodo basato sulle funzioni lagrangiane aumentate Consideriamo il generico problema di PNL min f(x) s.v. c i (x) 0 i I c i (x) = 0 i E (1) x R n dove f e le c i sono di classe

Dettagli

Parte III: Algoritmo di Branch-and-Bound

Parte 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)

Dettagli

Metodi 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 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

Dettagli

Programmazione Matematica: VI Estensioni dell algoritmo del Simplesso

Programmazione 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

Dettagli

Soluzione dei problemi di Programmazione Lineare Intera

Soluzione dei problemi di Programmazione Lineare Intera Fondamenti di Ricerca Operativa T-A a.a. 2014-2015 Soluzione dei problemi di Programmazione Lineare Intera Andrea Lodi, Enrico Malaguti, Daniele Vigo rev. 1.1.a ottobre 2014 Fondamenti di Ricerca Operativa

Dettagli

Si consideri il seguente tableau ottimo di un problema di programmazione lineare

Si consideri il seguente tableau ottimo di un problema di programmazione lineare ESERCIZIO 1 Si consideri il seguente tableau ottimo di un problema di programmazione lineare -25/3 0 4/3 19/6 9/2 0 0 0 7/6 1 0 1-1/2-3/2 1 0 0 3/2 11/3 1-2/3-1/3 0 0 0 0 2/3 2/3 0 1/3 1/6-1/2 0 1 0 7/6

Dettagli

Ottimizzazione Combinatoria 2 Presentazione

Ottimizzazione 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)

Dettagli

ALGORITMI DI OTTIMIZZAZIONE M Esercizi Parte I

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

Dettagli

Problemi di Ottimizzazione

Problemi di Ottimizzazione Problemi di Ottimizzazione Obiettivo: misura della qualità di una soluzione. Vincoli: condizioni che devono essere soddisfatte per ottenere una soluzione ammissibile. Problema di Ottimizzazione: determina

Dettagli

COMPITO DI RICERCA OPERATIVA. max x 1 + x 2 x 1 2x 2 + x 3 = 4 x 1 x 2 x 3 = 3 x 2 + 2x 3 = 1 x 1, x 2, x 3 0

COMPITO DI RICERCA OPERATIVA. max x 1 + x 2 x 1 2x 2 + x 3 = 4 x 1 x 2 x 3 = 3 x 2 + 2x 3 = 1 x 1, x 2, x 3 0 COMPITO DI RICERCA OPERATIVA ESERCIZIO. (5 punti) Sia dato il seguente problema di PL: max x + x 2 x 2x 2 + x 3 = 4 x x 2 x 3 = 3 x 2 + 2x 3 = x, x 2, x 3 0 Utilizzando il metodo due fasi, si stablisca

Dettagli

Branch and Bound. Branch and Bound p. 1/3

Branch and Bound. Branch and Bound p. 1/3 Branch and Bound Branch and Bound p. 1/3 Branch-and-bound Un esempio di problema di PLI: P 0 : max x 1 + 3x 2 (u 1 ) x 1 1 2 (u 2 ) 5x 1 + 3x 2 5 (u 3 ) x 1 + 7 5 x 2 13 2 x 1,x 2 0 x 1,x 2 I Branch and

Dettagli

Teoria della Programmazione Lineare Intera

Teoria della Programmazione Lineare Intera Teoria della Programmazione Lineare Intera Laura Galli Dipartimento di Informatica Largo B. Pontecorvo, 567 Pisa laura.galli@unipi.it http://www.di.unipi.it/~galli 7 Ottobre 0 Ricerca Operativa Laurea

Dettagli

COMPITO DI RICERCA OPERATIVA. max 3x 1 + 2x 2 x x 2 + x 3 = 4 2x 1 + x 2 + x 4 = 3

COMPITO DI RICERCA OPERATIVA. max 3x 1 + 2x 2 x x 2 + x 3 = 4 2x 1 + x 2 + x 4 = 3 COMPITO DI RICERCA OPERATIVA ESERCIZIO 1. (7 punti) Sia dato il seguente problema di PL: max 3x 1 + 2x 2 x 1 + 1 2 x 2 + x 3 = 4 2x 1 + x 2 + x 4 = 3 Lo si risolva con l algoritmo che si ritiene più opportuno

Dettagli

Metodi di Ottimizzazione mod. Modelli per la pianificazione delle attività

Metodi di Ottimizzazione mod. Modelli per la pianificazione delle attività Metodi di Ottimizzazione mod. Modelli per la pianificazione delle attività Paolo Detti Dipartimento di Ingegneria dell Informazione e Scienze Matematiche Università di Siena Metodi di Ottimizzazione mod.

Dettagli

Sull algoritmo di ascesa duale per il problema della localizzazione di impianti

Sull algoritmo di ascesa duale per il problema della localizzazione di impianti Sull algoritmo di ascesa duale per il problema della localizzazione di impianti A. Agnetis In queste note presentiamo l algoritmo di ascesa duale per la generazione di lower bound di buona qualità per

Dettagli

RICERCA OPERATIVA. Tema d esame del 13/12/2005

RICERCA OPERATIVA. Tema d esame del 13/12/2005 RICERCA OPERATIVA Tema d esame del 13/12/2005 COGNOME: NOME: MATRICOLA: 1. Un associazione umanitaria ha raccolto 150.000 euro per inviare dei pacchetti regalo natalizi ai bambini di Haiti. Per l acquisto

Dettagli

Esame di Ricerca Operativa del 09/01/15. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Esame di Ricerca Operativa del 09/01/15. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare: Esame di Ricerca Operativa del 0/0/ (Cognome) (Nome) (Corso di laurea) Esercizio. Completare la seguente tabella considerando il problema di programmazione lineare: min 7 y +y + y + y +y +7 y y +y y y

Dettagli

Scuola di Dottorato in Ingegneria L. da Vinci. Problemi di estremo vincolato ed applicazioni. Introduzione ai problemi di estremo

Scuola di Dottorato in Ingegneria L. da Vinci. Problemi di estremo vincolato ed applicazioni. Introduzione ai problemi di estremo Scuola di Dottorato in Ingegneria L. da Vinci Problemi di estremo vincolato ed applicazioni Pisa, 28-29 Maggio, 2009 Introduzione ai problemi di estremo G. Mastroeni Ricercatore, Dipartimento di Matematica

Dettagli

2. ALGORITMO DEL SIMPLESSO

2. ALGORITMO DEL SIMPLESSO . ALGORITMO DEL SIMPLESSO R. Tadei Una piccola introduzione R. Tadei SIMPLESSO L obiettivo del capitolo è quello di fornire un algoritmo, l algoritmo del simplesso, che risolve qualsiasi problema di programmazione

Dettagli

Soluzione dei problemi di Programmazione Lineare Intera

Soluzione dei problemi di Programmazione Lineare Intera Fondamenti di Ricerca Operativa T-A a.a. 2015-2016 Soluzione dei problemi di Programmazione Lineare Intera Andrea Lodi, Enrico Malaguti, Paolo Tubertini, Daniele Vigo rev. 2. ottobre 2016 Fondamenti di

Dettagli

COMPITO DI RICERCA OPERATIVA. max x 1 + x 2 x 1 + x 2 1 x 1 + x 2 2. Lo si trasformi in forma standard e se ne determini una soluzione ottima.

COMPITO DI RICERCA OPERATIVA. max x 1 + x 2 x 1 + x 2 1 x 1 + x 2 2. Lo si trasformi in forma standard e se ne determini una soluzione ottima. COMPITO DI RICERCA OPERATIVA APPELLO DEL 06/07/05 ESERCIZIO 1. (5 punti) Sia dato il seguente problema di PL: max x 1 + x 2 x 1 + x 2 1 x 1 + x 2 2 x 1 0 x 2 0 Lo si trasformi in forma standard e se ne

Dettagli

RICERCA OPERATIVA. Tema d esame del 04/03/2008 (Simulazione)

RICERCA OPERATIVA. Tema d esame del 04/03/2008 (Simulazione) RICERCA OPERATIVA Tema d esame del 04/03/2008 (Simulazione) COGNOME: NOME: MATRICOLA:. Una nota azienda automobilistica produce due modelli di auto (un utilitaria e una berlina), che rivende con un guadagno

Dettagli

Esame di Ricerca Operativa del 13/06/17. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Esame di Ricerca Operativa del 13/06/17. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare: Esame di Ricerca Operativa del /0/ (Cognome) (Nome) (Numero di Matricola) Esercizio. Completare la seguente tabella considerando il problema di programmazione lineare: min y y + y + y + y y + y y +y +y

Dettagli

Organizzazione della produzione

Organizzazione della produzione Scheduling Organizzazione della produzione PRODOTTO che cosa chi ORGANIZZAZIONE PROCESSO come FLUSSO DI PRODUZIONE COORDINAMENTO PIANIFICAZIONE SCHEDULING quando Pianificazione della produzione: schedulazione

Dettagli

Dualitá. Dualitá p. 1/4

Dualitá. Dualitá p. 1/4 Dualitá Dualitá p. 1/4 Dualitá p. 2/4 Dualitá Problema di PL in forma standard max cx Ax = b x 0 Chiamato problema primale. A questo associato un altro problema di PL, detto problema duale: min ub ua c

Dettagli

Algoritmo di Branch & Bound

Algoritmo di Branch & Bound Sapienza Università di Roma - Dipartimento di Ingegneria Informatica, Automatica e Gestionale Algoritmo di Branch & Bound Docente: Renato Bruni bruni@dis.uniroma.it Corso di: Ottimizzazione Combinatoria

Dettagli

i completi l'esecuzione dell'algoritmo di programmazione dinamica per questo problema restituendo il valore ottimo e una soluzione ottima del problema

i 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

Dettagli

Teoria della Complessità Computazionale

Teoria 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

Dettagli

Il Branch & Bound. Definizione 1. Sia S R n. La famiglia S = {S 1, S 2,..., S k S} tale che S 1 S 2 S k = S viene detta suddivisione di S.

Il Branch & Bound. Definizione 1. Sia S R n. La famiglia S = {S 1, S 2,..., S k S} tale che S 1 S 2 S k = S viene detta suddivisione di S. Il Branch & Bound Il metodo Branch & Bound è una tecnica che permette di risolvere all ottimo un generico problema di Programmazione Lineare Intera. Tale metodo si basa su due concetti cardine: quello

Dettagli

3.3 FORMULAZIONE DEL MODELLO E CONDIZIONI DI

3.3 FORMULAZIONE DEL MODELLO E CONDIZIONI DI 3.3 FORMULAZIONE DEL MODELLO E CONDIZIONI DI ESISTENZA DI UN PUNTO DI OTTIMO VINCOLATO Il problema di ottimizzazione vincolata introdotto nel paragrafo precedente può essere formulato nel modo seguente:

Dettagli

Programmazione Matematica / A.A Soluzioni di alcuni esercizi

Programmazione Matematica / A.A Soluzioni di alcuni esercizi Programmazione Matematica / A.A. 8-9 Soluzioni di alcuni esercizi Esercizi - I 3. Aggiungiamo al problema una variabile v, e richiediamo che v soddisfi v n a ij x j b i. j= Fissato x, il minimo v che soddisfa

Dettagli

Algoritmo dibranch & Bound

Algoritmo dibranch & Bound Sapienza Università di Roma - Dipartimento di Ingegneria Informatica, Automatica e Gestionale Algoritmo dibranch & Bound Docente: Renato Bruni bruni@dis.uniroma.it Corso di: Ottimizzazione Combinatoria

Dettagli

Teoria della Programmazione Lineare Intera

Teoria della Programmazione Lineare Intera 0 Teoria della Programmazione Lineare Intera 0. INTRODUZIONE Come visto precedentemente, molti problemi particolarmente importanti dal punto di vista applicativo sono riconducibili alla soluzione di un

Dettagli

Università degli Studi di Roma La Sapienza

Università degli Studi di Roma La Sapienza Università degli Studi di Roma La Sapienza Dipartimento di Informatica e Sistemistica A. Ruberti Proff. Gianni Di Pillo and Laura Palagi Note per il corso di OTTIMIZZAZIONE (a.a. 2007-08) Dipartimento

Dettagli

3.6 Metodi basati sui piani di taglio

3.6 Metodi basati sui piani di taglio 3.6 Metodi basati sui piani di taglio Problema generale di Programmazione Lineare Intera (PLI) con A matrice m n e b vettore n 1 razionali min{ c t x : x X = {x Z n + : Ax b} } Sappiamo che esiste una

Dettagli

Esercizi di Programmazione Lineare - Dualità

Esercizi di Programmazione Lineare - Dualità Esercizi di Programmazione Lineare - Dualità Esercizio n1 Dato il seguente problema 3 + 3 2 2 + a scriverne il duale; b risolvere il duale (anche geometricamente indicando cosa da esso si può dedurre sul

Dettagli

Algoritmi per la programmazione lineare: il metodo del simplesso

Algoritmi per la programmazione lineare: il metodo del simplesso Algoritmi per la programmazione lineare: il metodo del simplesso Dipartimento di Informatica, Universita' di Pisa A.A. 2018/2019 Contenuti della lezione Problemi di programmazione lineare, forma standard

Dettagli

Programmazione Matematica: VII La scomposizione di Dantzig Wolfe

Programmazione Matematica: VII La scomposizione di Dantzig Wolfe Programmazione Matematica: VII La scomposizione di Dantzig Wolfe Daniele Vigo D.E.I.S. Università di Bologna dvigo@deis.unibo.it rev..0 Maggio 2004 Scomposizione di problemi Accade spesso che un problema

Dettagli

Il teorema di dualità forte

Il teorema di dualità forte Complementi di Algoritmi e Strutture Dati Il teorema di dualità forte Docente: Nicolò Cesa-Bianchi versione 13 maggio 2018 Ricordiamo la formulazione del problema di programmazione lineare nella sua forma

Dettagli

NLP KKT 1. Le condizioni necessarie di ottimo per il problema min f o (x) con vincoli g i (x) 0 i I h j (x) = 0 j J

NLP KKT 1. Le condizioni necessarie di ottimo per il problema min f o (x) con vincoli g i (x) 0 i I h j (x) = 0 j J NLP KKT 1 Le condizioni necessarie di ottimo per il problema min f o (x) g i (x) 0 i I h j (x) = 0 j J sono, riferite ad un punto ammissibile x*, μ 0 f o (x*) + i I μ i g i (x*) + j J λ j h j (x*) = 0

Dettagli

città

città Esercitazione 11-4-18 Esercizio 1. Si consideri il problema di trovare il ciclo hamiltoniano di costo minimo su una rete di 5 città, le cui distanze reciproche sono indicate in tabella: città 2 3 4 5 1

Dettagli

Registro dell'insegnamento

Registro dell'insegnamento Registro dell'insegnamento Anno accademico 2016/2017 Prof. MARCO SCIANDRONE Settore inquadramento MAT/09 - RICERCA OPERATIVA REGISTRO Scuola Ingegneria NON CHIUSO Dipartimento Ingegneria dell'informazione

Dettagli

LA STRUTTURA DEI PROBLEMI DI OTTIMIZZAZIONE. L'ipotesi di razionalità implica che un decisore cerchi di

LA STRUTTURA DEI PROBLEMI DI OTTIMIZZAZIONE. L'ipotesi di razionalità implica che un decisore cerchi di LA STRUTTURA DEI PROBLEMI DI OTTIMIZZAZIONE L'ipotesi di razionalità implica che un decisore cerchi di individuare la migliore tra tutte le alternative a sua disposizione. Problemi di ottimizzazione =

Dettagli

Esercizi sulla Programmazione Lineare Intera

Esercizi sulla Programmazione Lineare Intera Soluzioni 4.7-4.0 Fondamenti di Ricerca Operativa Prof. E. Amaldi Esercizi sulla Programmazione Lineare Intera 4.7 Algoritmo del Simplesso Duale. Risolvere con l algoritmo del simplesso duale il seguente

Dettagli

Metodi e Modelli per l Ottimizzazione Combinatoria Cover inequalities

Metodi 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

Dettagli

AA Prova del 30 Novembre 2011 Compito A

AA Prova del 30 Novembre 2011 Compito A Metodi e Modelli di Ottimizzazione Discreta (10 cfu), I parte; Metodi e Modelli di Ottimizzazione Discreta 1 (5 cfu); Metodi e Modelli di Ottimizzazione Discreta 1 On Line; Ricerca Operativa 1-2, II parte;

Dettagli

1. Considerazioni generali

1. Considerazioni generali 1. Considerazioni generali Modelli di shop scheduling In molti ambienti produttivi l esecuzione di un job richiede l esecuzione non simultanea di un certo numero di operazioni su macchine dedicate. Ogni

Dettagli

Esercizi di Programmazione Lineare

Esercizi di Programmazione Lineare Esercizi di Programmazione Lineare 1 grafica Si consideri il seguente problema di programmazione lineare: max 3x 1 + 2x 2 s.t. + 2x 1 + x 2 4 2x 1 + x 2 2 + x 1 x 2 1 x 1, x 2 0 a) Risolvere il problema

Dettagli

PROVE D'ESAME 1997/98

PROVE D'ESAME 1997/98 PROVE D'ESAME 1997/98 PROVA PARZIALE DEL 28/11/1997 1) Si consideri il seguente problema di programmazione lineare P: min z = x 1 + 2x 2 s.t. x 1 + x 2 6 2x 1 + x 2 10 x 1 4 x 1, x 2 0 a - Scrivere le

Dettagli

Esame di Ricerca Operativa del 09/06/14. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Esame di Ricerca Operativa del 09/06/14. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare: Esame di Ricerca Operativa del 09/0/ (Cognome) (Nome) (Corso di laurea) Esercizio. Completare la seguente tabella considerando il problema di programmazione lineare: max x x x x +x x x x +x x + x x Base

Dettagli

Esame di Ricerca Operativa del 16/02/15. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Esame di Ricerca Operativa del 16/02/15. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare: Esame di Ricerca Operativa del /0/ Cognome) Nome) Corso di laurea) Esercizio. Completare la seguente tabella considerando il problema di programmazione lineare: min y + y +0 y +0 y +y + y y y +y y y y

Dettagli

Esame di Ricerca Operativa del 23/02/17

Esame di Ricerca Operativa del 23/02/17 Esame di Ricerca Operativa del /0/ (Cognome) (Nome) (Numero di Matricola) Esercizio. Completare la seguente tabella considerando il problema di programmazione lineare: min y + y + y + y y +0 y + y y y

Dettagli

COMPITO DI RICERCA OPERATIVA APPELLO DEL 08/01/04

COMPITO DI RICERCA OPERATIVA APPELLO DEL 08/01/04 COMPITO DI RICERCA OPERATIVA APPELLO DEL 08/01/04 Esercizio 1 Si risolva con il metodo branch-and-bound il seguente problema di PLI max x 1 + x 4x 1 + x + x = 0 x 1 + x + x 4 = x 1, x, x, x 4 0 x 1, x,

Dettagli

Esame di Ricerca Operativa del 21/07/15. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Esame di Ricerca Operativa del 21/07/15. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare: Esame di Ricerca Operativa del /0/ (Cognome) (Nome) (Corso di laurea) Esercizio. Completare la seguente tabella considerando il problema di programmazione lineare: min y +y + y + y + y + y y y + y y +

Dettagli

2.6 Calcolo degli equilibri di Nash

2.6 Calcolo degli equilibri di Nash 92 2 Giochi non Cooperativi Per queste estensioni di giochi non finiti si possono provare risultati analoghi a quelli visti per i giochi finiti. Rimandiamo alla bibliografia per uno studio più approfondito

Dettagli

Esame di Ricerca Operativa

Esame di Ricerca Operativa Esame di Ricerca Operativa (Cognome) (Nome) (Corso di laurea) Esercizio. Completare la seguente tabella considerando il problema di programmazione lineare: min y + y + y +7 y +y + y y y +y y y = y y +y

Dettagli

Esame di Ricerca Operativa del 04/07/17

Esame di Ricerca Operativa del 04/07/17 Esame di Ricerca Operativa del 0/0/ (Cognome) (Nome) (Numero di Matricola) Esercizio. Completare la seguente tabella considerando il problema di programmazione lineare: min y y + y + y + y + y +9 y y y

Dettagli

AA Prova del 4 Dicembre 2012 Compito A

AA Prova del 4 Dicembre 2012 Compito A Prova del 4 Dicembre 2012 Compito A A.1). (14 punti) Un agenzia viaggi sta organizzando una visita guidata a Berlino: per questo motivo ha selezionato 11 escursioni, tra tante che erano possibili. Scrivere

Dettagli

Esame di Ricerca Operativa del 09/06/15. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare:

Esame di Ricerca Operativa del 09/06/15. Esercizio 1. Completare la seguente tabella considerando il problema di programmazione lineare: Esame di Ricerca Operativa del 0/0/ Cognome) Nome) Corso di laurea) Esercizio. Completare la seguente tabella considerando il problema di programmazione lineare: min y + y + y +0 y +y + y y y + y y y y

Dettagli

max z = c T x s.t. Ax b

max z = c T x s.t. Ax b 3 PROGRAMMAZIONE LINEARE A NUMERI INTERI 51 3 Programmazione lineare a numeri interi 3.1 Problemi lineari interi Dato il problema lineare ordinario (PLO): aggiungendo la condizione di integrità: max z

Dettagli

A.A Fondamenti di Ricerca Operativa. 2. Determinare β affinchè il poliedro descritto dal sistema di disequazioni

A.A Fondamenti di Ricerca Operativa. 2. Determinare β affinchè il poliedro descritto dal sistema di disequazioni A.A. 08-09 Fondamenti di Ricerca Operativa. Si consideri il problema min x + x + 4x 3 3x 4 x + x 3 = 5 x + x 4 = x, x, x 3, x 4 0 Stabilire se il problema ha insieme ammissibile vuoto, oppure è illimitato,

Dettagli

a ij x j ) L i vincoli rilassati: a ij x j b i (i = 1,..., m) si inizia con un λ qualunque (es. λ i = 0 i);

a ij x j ) L i vincoli rilassati: a ij x j b i (i = 1,..., m) si inizia con un λ qualunque (es. λ i = 0 i); Determinazione di buoni moltiplicatori lagrangiani 1) Quando possibile, mediante analisi teorica del problema. 2) Metodo iterativo. Consideriamo il caso: funzione obiettivo: c j x j + λ i (b i j i j vincoli

Dettagli