Esercizio 1 Dato il seguente problema di Knapsack 0-1

Slides:



Advertisements
Presentazioni simili
Metodologia Sperimentale Agronomica / Metodi Statistici per la Ricerca Ambientale Marco Acutis a.a CdS.
Advertisements

I circuiti elettrici.
IL GOLD STANDARD: INTRODUZIONE
XXXII CONVEGNO NAZIONALE Società Italiana di Chimica Agraria
Il problema dello zaino
Campi di gravità e topografia: analisi con QGIS
Regole associative Gianluca Amato
Ciclo di Seminari e Corso
Valutazione dei risultati della classificazione
Generalità Laboratorio Arduino.
Natura e origini della attuale crisi europea
ECONOMIA DELLE ISTITUZIONI FINANZIARIE
Stato di COMPASS Franco Bradamante CSN1 Roma, 16 luglio 2012.
La struttura dei materiali
ESSERE HOMELESS: PERCORSI DI VITA E FATTORI DETERMINANTI
Introduzione a VPN Ing. Gianpiero Ciacci.
Le verifiche empiriche del teorema di Heckscher-Ohlin: il paradosso di Leontief Wassily Leontief realizzò la prima verifica empirica del teorema di HO.
…. modello di Solow?.
Politica economica: che cosa è?
 π BUZZO GIACOMO D’AGOSTINO ALBERTO DE ANGELIS FEDERICA
“BLAISE PASCAL”- Voghera-
La vitamina C è una molecola contenente C,H e O
REDDITO DI CITTADINANZA E OPPORTUNITA’ ECONOMICA: UN CONFRONTO TRA ITALIA E RESTO D’EUROPA Pasquale Tridico Dipartimento di Economia, Università Roma Tre.
Classificazione e Predizione
L’economia monetaria Corso di Economia delle Istituzioni Finanziarie
L’infiltrazione LM-75: 2016/2017
UN NUOVO MODO DI GUARDARE IL MONDO
LA PREVENZIONE INCENDI NELLE STRUTTURE RELIGIOSE APERTE AL PUBBLICO
LE NOVITÀ DEL BILANCIO 2016 …………………………………………………………………………………………………………..
Le unità territoriali per le analisi socio-economiche
Pompe di calore a integrazione geotermica
ISTITUZIONI (regole scritte e nn scritte che governano l’interazione tra individui) → d.p. e contratti → norme sociali con appropriati Δ delle regole.
Università di Roma Tor Vergata
Convegno europeo sui minori
ATIPICITA’ DEL FATTORE UMANO NEL PILOTAGGIO DEI DRONI
CALENDARIO LEZIONI AGGIORNATO
RAEE è l’acronimo di Rifiuti da Apparecchiature Elettriche ed Elettroniche; ogni elettrodomestico ha un ciclo di vita terminato il quale, sia per malfunzionamento.
Appunti per ostetriche e non solo
Ricerca e innovazione:
Pubblica Amministrazione: semplificazione e costi della politica
Il processo di analisi dei fabbisogni
Comunicazioni Assemblea nazionale TTA 1-2 dicembre 2016
Proactive Care e Proactive Care Advanced
Maria Antonietta Volonté Dipartimento di Neurologia
IL CONFLITTO NELLA CHIESA PRIMITIVA
Piano di formazione Docenti neoassunti a.s. 2016/2017
È possibile rendere comprensibile oggi questo termine filosofico, al di fuori della esigua cerchia degli specialisti? Io una volta ci ho provato in una.
ACCORDO AGROAMBIENTALE D’AREA OPPORTUNITA’ PER LA VALDASO
Il secondo principio.
PROGETTO RELAZIONI PREPOTENTI
Vitamine Sono sostanze organiche a basso peso molecolare strutturalmente assai varie indispensabili per lo svolgimento delle funzioni vitali, di origine.
La misurazione e la valutazione della performance
1.2 Nuovi prodotti alimentari
ASSOCIAZIONE ITALIANA GIURISTI DI IMPRESA
L’evoluzione del Diritto delle Assicurazioni Continuità o rottura con il passato? Avv. Giuseppe Ranieri Studio Legale Tributario Ranieri Comitato Esecutivo.
ADOZIONE INTERNAZIONALE
Esame delle modifiche apportate al precedente ordinamento
e l’associazione in partecipazione
Profilo biografico e opere
IL TOTALITARISMO.
L’Imposta sul reddito delle società (IRES)
Asl Vco – Direzione Generale
Assunzioni, Attività, Investimenti
UROLOGIA - RIMINI VISITE UROLOGICHE AMBULATORIALI REGIME RICOVERO
Endometriosi profonda: quando la chirurgia
Nota AIFA 75 Determinazione 18 novembre 2010 (GU 29 novembre 2010, n. 279): modifiche, con riferimento alla nota AIFA 75,  alla determinazione del 4 gennaio.
PIANO DI RIORDINO PRESIDI DI FOLIGNO E SPOLETO
SINTOMI DEL BASSO APPARATO URINARIO 4 MARZO 2017
Con gli occhi di Maxwell
Transcript della presentazione:

Esercizio 1 Dato il seguente problema di Knapsack 0-1 max 30x1 + 36x2 + 15x3 + 11x4 + 5x5 + 3x6 9x1 + 12x2 + 6x3 + 5x4 + 3x5 + 2x6 < 17 x  {0,1}6 risolvere il problema tramite l’algoritmo di Branch-and-Bound.

Esercizio 1 Poiché in corrispondenza di ogni nodo dell’albero dovremo risolvere un problema di Knapsack continuo, riordiniamo gli oggetti in modo tale che 𝑝 1 𝑎 1 ≥ 𝑝 2 𝑎 2 ≥...≥ 𝑝 𝑛 𝑎 𝑛 p1/a1 = 30/9 = 3,333  y1 p2/a2 = 36/12 = 3  y2 p3/a3 = 15/6 = 2,5  y3 p4/a4 = 11/5 = 2,2  y4 p5/a5 = 5/3 = 1,666  y5 p6/a6 = 3/2 = 1,5  y6 Gli oggetti sono già ordinati  Conserviamo la formulazione iniziale

Esercizio 1 Sia P0 il rilassamento lineare associato al sottoproblema S0 del nodo radice max 30x1 + 36x2 + 15x3 + 11x4 + 5x5 + 3x6 9x1 + 12x2 + 6x3 + 5x4 + 3x5 + 2x6 < 17 0 < xi < 1, i = 1, …,6 Calcoliamo la soluzione associata all’upper bound utilizzando l’algoritmo per il Knapsack continuo: x0UB = [1, (17 – 9)/12, 0, 0, 0, 0] = [1, 2/3, 0, 0, 0, 0]  z0UB = 54 Per il lower bound, consideriamo una soluzione ammissibile data da x0LB = [1, 0, 0, 0, 0, 0]  z0LB = 30 = zLB.

Esercizio 1 Generiamo i due sottoproblemi S1 t.c. x2 = 0 S2 t.c. x2 = 1 z0UB = 54 z0LB = 30 = zLB S0 x2 = 0 x2 = 1 S1 S2 Sia P1 il rilassamento lineare associato al sottoproblema S1 (x2 = 0) max 30x1 + 15x3 + 11x4 + 5x5 + 3x6 9x1 + 6x3 + 5x4 + 3x5 + 2x6 < 17 0 < xi < 1, i = 1, …,6 x1UB = [1, 0, 1, (17–15)/5, 0, 0] = [1, 0, 1, 2/5, 0, 0]  z1UB = 49,4 x1LB = [1, 0, 1, 0, 0, 0] = [1, 0, 1, 0, 0, 0]  z1LB = 45. Poiché z1LB > zLB, aggiorniamo il valore del lower bound corrente zLB = 45

Esercizio 1 z0UB = 54 z0LB = 30 = zLB S0 x2 = 0 x2 = 1 z1UB = 49.4 z1LB = 45 z2UB = 52.6 z2LB = 36 S1 zLB = 45 S2 Sia P2 il rilassamento lineare associato al sottoproblema S2 (x2 = 1) max 30x1 + 36 + 15x3 + 11x4 + 5x5 + 3x6 9x1 + 12 + 6x3 + 5x4 + 3x5 + 2x6 < 17 9x1 + 6x3 + 5x4 + 3x5 + 2x6 < 5 0 < xi < 1, i = 1, …,6 x2UB = [(17–12)/9, 1, 0, 0, 0, 0] = [5/9, 1, 0, 0, 0, 0]  z2UB = 52,6 x2LB = [0, 1, 0, 0, 0, 0]  z2LB = 36.

Esercizio 1 Da S2, generiamo i due sottoproblemi S3 t.c. x1 = 0 S4 t.c. x1 = 1 z0UB = 54 z0LB = 30 = zLB S0 x2 = 0 x2 = 1 z1UB = 49.4 z1LB = 45 z2UB = 52.6 z2LB = 36 S1 zLB = 45 S2 x1 = 0 x1 = 1 z3UB = 48.5 z3LB = 36 S3 S4 Sia P3 il rilassamento lineare associato al sottoproblema S3 (x2 = 1, x1=0) max 36 + 15x3 + 11x4 + 5x5 + 3x6 6x3 + 5x4 + 3x5 + 2x6 < 5 0 < xi < 1, i = 1, …,6 x3UB = [0, 1, 5/6, 0, 0, 0]  z3UB = 48,5 x3LB = [0, 1, 0, 0, 0, 0]  z3LB = 36.

Esercizio 1 Da S2, generiamo i due sottoproblemi S3 t.c. x1 = 0 S4 t.c. x1 = 1 z0UB = 54 z0LB = 30 = zLB S0 x2 = 0 x2 = 1 z1UB = 49.4 z1LB = 45 z2UB = 52.6 z2LB = 36 S1 S2 x1 = 0 x1 = 1  z3UB = 48.5 z3LB = 36 S3 S4 inammissibilità Sia P4 il rilassamento lineare associato al sottoproblema S4 (x2 = x1=1) max 30 + 36 + 15x3 + 11x4 + 5x5 + 3x6 9 + 12 + 6x3 + 5x4 + 3x5 + 2x6 < 17  6x3+5x4+3x5+2x6 < 17– 21 0 < xi < 1, i = 1, …,6 Poiché P4 è inammissibile, il nodo S4 può essere chiuso per inammissibilità.

Esercizio 1 Da S1, generiamo i due sottoproblemi S5 t.c. x4 = 0 S6 t.c. x4 = 1 z0UB = 54 z0LB = 30 = zLB S0 x2 = 0 x2 = 1 z1UB = 49.4 z1LB = 45 z2UB = 52.6 z2LB = 36 S1 S2 zLB = 45 x4 = 0 x4 = 1 x1 = 0 x1 = 1  z5UB = 48.33 z6LB = 45 z3UB = 48.5 z3LB = 36 S5 S6 S3 S4 inammissibilità Sia P5 il rilassamento lineare associato al sottoproblema S1 (x2 =x4 = 0) max 30 x1 + 15x3 + 5x5 + 3x6 9x1 + 6x3 + 3x5 + 2x6 < 17 0 < xi < 1, i = 1, …,6 x5UB = [1, 0, 1, 0, (17–15)/3, 0] = [1, 0, 1, 0, 2/3, 0]  z5UB = 48,33 x5LB = [1, 0, 1, 0, 0, 0]  z5LB = 45.

Esercizio 1 Da S1, generiamo i due sottoproblemi S5 t.c. x4 = 0 S6 t.c. x4 = 1 z0UB = 54 z0LB = 30 = zLB S0 x2 = 0 x2 = 1 z1UB = 49.4 z1LB = 45 z2UB = 52.6 z2LB = 36 S1 S2 zLB = 45 x4 = 0 x4 = 1 x1 = 0 x1 = 1  z5UB = 48.33 z6LB = 45 z6UB = 48.5 z6LB = 41 z3UB = 48.5 z3LB = 36 S5 S6 S3 S4 inammissibilità Sia P6 il rilassamento lineare associato al sottoproblema S6 (x2 = 0, x4=1) max 30 x1 + 15x3 + 11 + 5x5 + 3x6 9x1 + 6x3 + 5 + 3x5 + 2x6 < 17  9x1 + 6x3 + 3x5 + 2x6 < 12 0 < xi < 1, i = 1, …,6 x6UB = [1, 0, (12–9)/6 , 1, 0, 0] = [1, 0, 1/2, 1, 0, 0]  z6UB = 48,5 x6LB = [1, 0, 0, 1, 0, 0]  z6LB = 41.

  Esercizio 1 Da S3, generiamo i due sottoproblemi S7 t.c. x5 = 0 z0UB = 54 z0LB = 30 = zLB S0 x2 = 0 x2 = 1 z1UB = 49.4 z1LB = 45 z2UB = 52.6 z2LB = 36 S1 S2 zLB = 45 x4 = 0 x4 = 1 x1 = 0 x1 = 1  z5UB = 48.33 z5LB = 45 z6UB = 48.5 z6LB = 41 z3UB = 48.5 z3LB = 36 S5 S6 S3 S4 inammissibilità x5 = 0 x5 = 1 Sia P7 il rilassamento lineare associato al sottoproblema S7 (x2=x4=x5=0) max 30x1 + 15x3 + 3x6 9x1 + 6x3 + 2x6 < 17 0 < xi < 1, i = 1, …,6 x7UB = [1, 0, 1, 0, 0, 1]  z7UB = 48 x7LB = [1, 0, 1, 0, 0, 1]  z7LB = 48  zLB = 48.  S7 S7 S8 z7UB = 48 z7LB = 48 zLB = 48 OPT.

     Esercizio 1 Da S3, generiamo i due sottoproblemi S7 t.c. x5 = 0 S8 t.c. x5 = 1 z0UB = 54 z0LB = 30 = zLB S0 x2 = 0 x2 = 1 z1UB = 49.4 z1LB = 45 z2UB = 52.6 z2LB = 36 S1 zLB = 45 S2 x4 = 0 x4 = 1 x1 = 0 x1 = 1    z5UB = 48.33 z5LB = 45 z6UB = 48.5 z6LB = 41 z3UB = 48.5 z3LB = 36 S5 S6 S3 S4 bound. bound. inammissibilità x5 = 0 x5 = 1 Poiché z8UB = 47,5 < zLB, il nodo S8 può essere chiuso per bound. Sia P8 il rilassamento lineare associato al sottoproblema S8 (x2=x4=0, x5=1) max 30x1 + 15x3 + 5 + 3x6 9x1 + 6x3 + 3 + 2x6 < 17  9x1+6x3+2x6 < 14 0 < xi < 1, i = 1, …,6 x8UB = [1, 0, (14–9)/6, 0, 1, 0]=[1,0,5/6,0,1,0]  z8UB = 47,5 x8LB = [1, 0, 0, 0, 1, 0]  z8LB = 35   S7 S7 S8 Per lo stesso motivo, anche i nodi S3 ed S6 possono essere chiusi per bound. z7UB = 48 z7LB = 48 z8UB = 47.5 z8LB = 35 zLB = 48 OPT bound.

Esercizio 1 Per determinare il valore finale ottimo del problema, consideriamo tutti i nodi che sono stati chiusi per ottimalità e prendiamo la soluzione che da’ il massimo valore della funzione obiettivo. Nel nostro caso il valore ottimo è dato da z*=48 e corrisponde alla soluzione x* = [1,0,1,0,0,1] associata al nodo S7.

     Esercizio 1 S0 S1 S2 S5 S6 S3 S4 bound. bound. z0UB = 54 z0LB = 30 = zLB S0 x2 = 0 x2 = 1 z1UB = 49.4 z1LB = 45 z2UB = 52.6 z2LB = 36 S1 zLB = 45 S2 x4 = 0 x4 = 1 x1 = 0 x1 = 1    z5UB = 48.33 z5LB = 45 z6UB = 48.5 z6LB = 41 z3UB = 48.5 z3LB = 36 S5 S6 S3 S4 bound. bound. inammissibilità x5 = 0 x5 = 1   S7 S7 S8 z7UB = 48 z7LB = 48 z8UB = 47.5 z8LB = 35 zLB = 48 bound. OPT

Esercizio 2 Dato il seguente problema di Knapsack max 6 x1 + 10 x2 + 12 x3 x1 + 2x2 + 3 x3 < 5 (KP) x  {0,1}3 risolvere il problema tramite l’algoritmo di programmazione dinamica.

Esercizio 2 max 6 x1 + 10 x2 + 12 x3 x1 + 2x2 + 3 x3 < 5 (KP) Calcoliamo la formula di ricorsione per r = 1: z1(0) = 0  x1= 0 z1(1) = 6  x1 = 1 z1(2) = 6  x1 = 1 z1(3) = 6  x1 = 1 z1(4) = 6  x1 = 1 z1(5) = 6  x1 = 1

Esercizio 2 d r 1 2 3 4 5 6 z2(0) z2(1) z2(2) z2(3) z2(4) z2(5) z3(0) Rappresentiamo questi valori in una tabella di dimensione n  b = 3  5, in cui ogni elemento contiene zr(d). Il simbolo * nella soluzione indica che la variabile non è stata ancora fissata d r 1 2 3 4 5 (0,*,*) (1,*,*) 6 z2(0) z2(1) z2(2) z2(3) z2(4) z2(5) z3(0) z3(1) z3(2) z3(3) z3(4) z3(5)

Esercizio 2 Calcoliamo ora z2(d): Per d = {0, 1} z2(0) = z1(0) = 0  x2= 0 z2(1) = z1(1) = 6  x2= 0 Per d = {2, 3, 4, 5} z2(2) = max {z1(2), z1(0) + c2} = max {6, 10} = 10 x2 = 1 z2(3) = max {z1(3), z1(1) + c2} = max {6, 16} = 16 x2 = 1 z2(4) = max {z1(4), z1(2) + c2} = max {6, 16} = 16 x2 = 1 z2(5) = max {z1(5), z1(3) + c2} = max {6, 16} = 16 x2 = 1 Riportando questi valori in tabella si ha:

Esercizio 2 d r 1 2 3 4 5 6 10 16 z3(0) z3(1) z3(2) z3(3) z3(4) z3(5) 1 2 3 4 5 (0,*,*) (1,*,*) 6 (0,0,*) (1,0,*) (0,1,*) 10 (1,1,*) 16 z3(0) z3(1) z3(2) z3(3) z3(4) z3(5)

Esercizio 2 Calcoliamo ora z3(d): Per d = {0, 1, 2} z3(0) = z2(0)  x3 = 0 z3(1) = z2(1)  x3 = 0 z3(2) = z2(2)  x3 = 0 Per d = {3, 4, 5} z3(3) = max {z2(3), z2(0) + c3} = max {16, 12} = 16 x3 = 0 z3(4) = max {z2(4), z2(1) + c3} = max {16, 18} = 18 x3 = 1 z3(5) = max {z2(5), z2(2) + c3} = max {16, 22} = 22 x3 = 1 Riportando questi valori in tabella si ha:

Esercizio 2 d r 1 2 3 4 5 (0,*,*) (1,*,*) 6 (0,0,*) (1,0,*) (0,1,*) 10 (1,1,*) 16 (0,0,0) (1,0,0) (0,1,0) (1,1,0) (1,0,1) 18 (0,1,1) 22 Pertanto, la soluzione ottima è x* = (0, 1, 1) di valore 22.

Esercizio 3 Dato il seguente problema di Knapsack 0-1 max 22x1 + 8x2 – 12x3 + 16x4 7x1 + 3x2 – 4x3 + 5x4 < 10 x  {0,1}4 risolvere il problema tramite l’algoritmo di Branch-and-Bound.

Esercizio 3 Poiché la variabile x3 ha coefficiente negativo, applichiamo il seguente cambio di variabile x'3 = 1 – x3 per ricondurci ad un problema di Knapsack 0-1 in cui i coefficienti del vincolo e della funzione obiettivo sono tutti non negativi. Il problema diventa – 12 + max 22x1 + 8x2 + x'3 + 16x4 7x1 + 3x2 + 4x'3 + 5x4 < 14 x  {0,1}4 Possiamo momentaneamente trascurare la costante –12 ricordandoci di aggiungerla al valore finale della soluzione di branch & bound.

Esercizio 3 Riordiniamo ora gli oggetti in modo tale che 𝑝 1 𝑎 1 ≥ 𝑝 2 𝑎 2 ≥...≥ 𝑝 𝑛 𝑎 𝑛 p1/a1 = 22/7 = 3,14  y2 p2/a2 = 8/3 = 2,66  y4 p3/a3 = 12/4 = 3  y3 p4/a4 = 16/5 = 3,2  y1 Riscriviamo ora il problema nelle nuove variabili yi max 16y1 + 22y2 + 12y3 + 8y4 5y1 + 7y2 + 4y3 + 3y4 < 14 y  {0,1}4

Esercizio 3 Sia P0 il rilassamento lineare associato al sottoproblema S0 del nodo radice max 16y1 + 22y2 + 12y3 + 8y4 5y1 + 7y2 + 4y3 + 3y4 < 14 0 < yi < 1, i = 1, …,4 Calcoliamo la soluzione associata all’upper bound utilizzando l’algoritmo per il Knapsack continuo: y0UB = [1, 1, 1/2, 0]  z0UB = 44 Per il lower bound, consideriamo una soluzione ammissibile data da x0LB = [1, 1, 0, 0]  z0LB = 38 = zLB.

Esercizio 3 Generiamo i due sottoproblemi S1 t.c. y3 = 0 S2 t.c. y3 = 1 z0UB = 44 z0LB = 38 = zLB S0 y3 = 0 y3 = 1 S1 S2 Sia P1 il rilassamento lineare associato al sottoproblema S1 (y3 = 0) max 16y1 + 22y2 + 8x4 5y1 + 7y2 + 3y4 < 14 0 < yi < 1, i = 1, …,4 y1UB = [1, 1, 0, 2/3]  z1UB = 43,33 z1LB = [1, 1, 0, 0]  z1LB = 38.

Esercizio 3 z0UB = 44 z0LB = 38 = zLB S0 y3 = 0 y3 = 1 z1UB = 43.33 z1LB = 38 z2UB = 43.7 z2LB = 28 S1 S2 Sia P2 il rilassamento lineare associato al sottoproblema S2 (y3 = 1) max 16y1 + 22y2 + 12 + 8y4 5y1 + 7y2 + 3y4 < 10 0 < yi < 1, i = 1, …,4 y2UB = [1, 5/7, 1, 0]  z2UB = 43,7 y2LB = [1, 0, 1, 0]  z2LB = 28.

Esercizio 3 Da S1, generiamo i due sottoproblemi S3 t.c. y4 = 0 S4 t.c. y4 = 1 z0UB = 44 z0LB = 38 = zLB S0 y3 = 0 y3 = 1 z1UB = 43.33 z1LB = 38 z2UB = 43.7 z2LB = 28 S1 S2 y4 = 0 y4 = 1  z3UB = 38 z3LB = 38 S3 S4 OPT Sia P3 il rilassamento lineare associato al sottoproblema S3 (y3 = y4 = 0) max 16y1 + 22y2 5y1 + 7y2 < 14 0 < yi < 1, i = 1, …,4 y3UB = [1, 1, 0, 0]  z3UB = 38 x3LB = [1, 1, 0, 0]  z3LB = 38. Chiudiamo il nodo per ottimalità.

Esercizio 3 Da S1, generiamo i due sottoproblemi S3 t.c. x4 = 0 S4 t.c. x4 = 1 z0UB = 44 z0LB = 38 = zLB S0 y3 = 0 y3 = 1 z1UB = 43.33 z1LB = 38 z2UB = 43.7 z2LB = 28 S1 S2 y4 = 0 y4 = 1  z3UB = 38 z3LB = 38 z4UB = 42.8 z4LB = 24 S3 S4 OPT Sia P4 il rilassamento lineare associato al sottoproblema S4 (y3 = 0, y4=1) max 16y1 + 22y2 + 8 5y1 + 7y2 < 11 0 < yi < 1, i = 1, …,5 y4UB = [1, 6/7, 0, 1]  z4UB = 42,8 y4LB = [1, 0, 0, 1]  z4LB = 24.

Esercizio 3 Da S2, generiamo i due sottoproblemi S5 t.c. y2 = 0 S6 t.c. y2 = 1 z0UB = 44 z0LB = 38 = zLB S0 y3 = 0 y3 = 1 z1UB = 43.33 z1LB = 38 z2UB = 43.7 z2LB = 28 S1 S2 y4 = 0 y4 = 1 y2 = 0 y2 = 1   z3UB = 38 z3LB = 38 z4UB = 42.8 z4LB = 24 z5UB = 36 z5LB = 36 S3 S4 S5 S6 OPT OPT/Bound Sia P5 il rilassamento lineare associato al sottoproblema S5 (y3 = 1, y2=0) max 16y1 + 12 + 8y4 5y1 + 3y4 < 10 0 < yi < 1, i = 1, …,4 y5UB = [1, 0, 1, 1]  z5UB = 36 y5LB = [1, 0, 1, 1]  z5LB = 36. Chiudiamo il nodo per ottimalità o per bound.

Esercizio 3 z0UB = 44 z0LB = 38 = zLB Da S2, generiamo i due sottoproblemi S5 t.c. x1 = 0 S6 t.c. x1 = 1 S0 y3 = 0 y3 = 1 z1UB = 43.33 z1LB = 38 z2UB = 43.7 z2LB = 28 S1 S2 y4 = 0 y4 = 1 y2 = 0 y2 = 1   z3UB = 38 z3LB = 38 z4UB = 42.8 z4LB = 24 z5UB = 36 z5LB = 36 z6UB = 43,6 z5LB = 34 S3 S4 S5 S6 OPT OPT/Bound Sia P6 il rilassamento lineare associato al sottoproblema S6 (y3 = 0, y2=1) max 16y1 + 22 + 12 + 8y4 5y1+3y4 < 3 0 < yi < 1, i = 1, …,4 y6UB = [3/5, 1, 1, 0]  z6UB = 43,6 y6LB = [0, 1, 1, 1]  z6LB = 34.

  Esercizio 3 Da S4, generiamo i due sottoproblemi S7 t.c. y2 = 0 z0UB = 44 z0LB = 38 = zLB S0 y3 = 0 y3 = 1 z1UB = 43.33 z1LB = 38 z2UB = 43.7 z2LB = 28 S1 S2 y4 = 0 y4 = 1 y2 = 0 y2 = 1   z3UB = 38 z3LB = 38 z4UB = 42.8 z4LB = 24 z5UB = 36 z5LB = 36 S3 S4 S5 S6 OPT OPT/Bound y2 = 0 y2 = 1 S7 S7 S8

Esercizio 3 Sia P7 il rilassamento lineare associato al sottoproblema S7 (y3=y2=0,y4=1) max 16y1 + 8 5y1 < 11 0 < yi < 1, i = 1, …,4 y7UB = [1, 0,0, 1]  z7UB = 20 y7LB = [1, 0, 0, 1]  z7LB = 20 Poiché y7UB è intera il nodo S7 può essere chiuso per ottimalità. Osserviamo che questo nodo potrebbe anche essere chiuso per bound in quanto z7UB < zLB.

   Esercizio 3 Da S4, generiamo i due sottoproblemi S7 t.c. y2 = 0 z0UB = 44 z0LB = 38 = zLB S0 y3 = 0 y3 = 1 z1UB = 43.33 z1LB = 38 z2UB = 43.7 z2LB = 28 S1 S2 y4 = 0 y4 = 1 y2 = 0 y2 = 1   z3UB = 38 z3LB = 38 z4UB = 42.8 z4LB = 24 z5UB = 36 z5LB = 36 S3 S4 S5 S6 OPT OPT/Bound y2 = 0 y2 = 1  z7UB = 20 z7LB = 20 S7 S7 S8 OPT/Bound

Esercizio 3 Sia P8 il rilassamento lineare associato al sottoproblema S8 (y3=0,y4=y2=1) max 16y1 + 30 5y1 < 4 0 < yi < 1, i = 1, …,4 y8UB = [4/5, 1,0, 1]  z8UB = 42,8 y8LB = [0, 0, 1, 1]  z8LB = 30

   Esercizio 3 Da S4, generiamo i due sottoproblemi S7 t.c. y2 = 0 z0UB = 44 z0LB = 38 = zLB S0 y3 = 0 y3 = 1 z1UB = 43.33 z1LB = 38 z2UB = 43.7 z2LB = 28 S1 S2 y4 = 0 y4 = 1 y2 = 0 y2 = 1   z3UB = 38 z3LB = 38 z4UB = 42.8 z4LB = 24 z5UB = 36 z5LB = 36 S3 S4 S5 S6 OPT OPT y2 = 0 y2 = 1  z7UB = 20 z7LB = 20 z8UB = 42.8 z8LB = 30 S7 S7 S8 OPT/Bound

   Esercizio 3 Da S6, generiamo i due sottoproblemi S9 t.c. y1 = 0 z0UB = 44 z0LB = 38 = zLB S0 y3 = 0 y3 = 1 z1UB = 43.33 z1LB = 38 z2UB = 43.7 z2LB = 28 S1 S2 y4 = 0 y4 = 1 y2 = 0 y2 = 1   z3UB = 38 z3LB = 38 z4UB = 42.8 z4LB = 24 z5UB = 36 z5LB = 36 S3 S4 S5 S6 OPT OPT y2 = 0 y2 = 1 y1 = 0 y1 = 1  z7UB = 20 z7LB = 20 z8UB = 42.8 z8LB = 30 S7 S7 S8 S9 S10 OPT/Bound

Esercizio 3 Sia P9 il rilassamento lineare associato al sottoproblema S9 (y3=y2=1, y1=0) max 22 + 12 + 8y4 3y4 < 3 0 < yi < 1, i = 1, …,4 y9UB = [0, 1,1, 1]  z8UB = 42 y8LB = [0, 1, 1, 1]  z8LB = 42 Poiché y9UB è intera, il nodo S9 può essere chiuso per ottimalità. Aggiorniamo il valore del lower bound globale: zLB = 42.

    Esercizio 3 Da S6, generiamo i due sottoproblemi S9 t.c. y1 = 0 S10 t.c. y1 = 1 z0UB = 44 z0LB = 38 = zLB S0 y3 = 0 y3 = 1 z1UB = 43.33 z1LB = 38 z2UB = 43.7 z2LB = 28 S1 S2 y4 = 0 y4 = 1 y2 = 0 y2 = 1   z3UB = 38 z3LB = 38 z4UB = 42.8 z4LB = 24 z5UB = 36 z5LB = 36 S3 S4 S5 S6 OPT OPT y2 = 0 y2 = 1 y1 = 0 y1 = 1   z7UB = 20 z7LB = 20 z8UB = 42.8 z8LB = 30 z9UB = 42 z9LB = 42 S7 S7 S8 S9 S10 zLB = 42 OPT/Bound OPT

Esercizio 3 Poiché il lower bound globale è stato aggiornato al valore zLB = 42, anche il nodo S8 può essere chiuso per bound.

     Esercizio 3 Da S6, generiamo i due sottoproblemi S9 t.c. y1 = 0 S10 t.c. y1 = 1 z0UB = 44 z0LB = 38 = zLB S0 y3 = 0 y3 = 1 z1UB = 43.33 z1LB = 38 z2UB = 43.7 z2LB = 28 S1 S2 y4 = 0 y4 = 1 y2 = 0 y2 = 1   z3UB = 38 z3LB = 38 z4UB = 42.8 z4LB = 24 z5UB = 36 z5LB = 36 S3 S4 S5 S6 OPT OPT y2 = 0 y2 = 1 y1 = 0 y1 = 1    z7UB = 20 z7LB = 20 z8UB = 42.8 z8LB = 30 z9UB = 42 z9LB = 42 S7 S7 S8 S9 S10 zLB = 42 OPT/Bound Bound OPT

Esercizio 3 Sia P10 il rilassamento lineare associato al sottoproblema S10 (y3=y2= y1=1) max 16 + 22 + 12 + 8y4 5 + 3y4 < 3 0 < yi < 1, i = 1, …,4 Poiché P10 è inammissibile, il nodo S10 può essere chiuso per inammissibilità.

      Esercizio 3 Da S6, generiamo i due sottoproblemi S9 t.c. y1 = 0 S10 t.c. y1 = 1 z0UB = 44 z0LB = 38 = zLB S0 y3 = 0 y3 = 1 z1UB = 43.33 z1LB = 38 z2UB = 43.7 z2LB = 28 S1 S2 y4 = 0 y4 = 1 y2 = 0 y2 = 1   z3UB = 38 z3LB = 38 z4UB = 42.8 z4LB = 24 z5UB = 36 z5LB = 36 S3 S4 S5 S6 OPT OPT y2 = 0 y2 = 1 y1 = 0 y1 = 1     z7UB = 20 z7LB = 20 z8UB = 42.8 z8LB = 30 z9UB = 42 z9LB = 42 S7 S7 S8 S9 S10 zLB = 42 OPT/Bound Bound OPT Inammissibilità

Esercizio 3 La soluzione ottima del problema è quella associata al nodo S9 e data da y* = [0, 1,1, 1] di valore z* = 42. Ricordandoci di aggiungere la costante –12 al valore finale, otteniamo che la soluzione ottima ha valore z* = 30. Ricordiamo che y* è la soluzione del problema in cui gli oggetti sono stati riordinati e la variabile x3 è stata complementata. La soluzione ottenuta riordinando gli oggetti è data da: (x*)' = [1, 1, 1, 0] La soluzione ottenuta ricomplementando la variabile x3 è data da: x* = [1, 1, 0, 0]