67
Ricerca Operativa Ricerca Operativa – p. 1/6

Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

  • Upload
    buinhan

  • View
    222

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Ricerca Operativa

Ricerca Operativa – p. 1/67

Page 2: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Ricerca Operativa

Disciplina basata sulla modellizzazione e la risoluzionetramite strumenti automatici di problemi di decisionecomplessi.

In tali problemi la complessità è determinata dall’ampiezzadello spazio delle scelte possibili.

Ricerca Operativa – p. 2/67

Page 3: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Problema di decisione : componenti

Dati - tutto ciò che è noto a priori e non è sotto ilcontrollo del decisore

Variabili - le quantità sotto il diretto controllo del decisore

Vincoli - condizioni che limitano le possibili scelte deldecisore

Obiettivo - criterio attraverso cui le scelte del decisorevengono confrontate

Ricerca Operativa – p. 3/67

Page 4: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Un (banale) esempio

In casa con voi avete:

una borsa del valore di 25 Euro

una macchina fotografica del valore di 100 Euro

un libro del valore di 10 Euro

Potete portare fuori di casa al massimo un oggetto. Voleteportare con voi il massimo valore possibile

Ricerca Operativa – p. 4/67

Page 5: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Un (banale) esempio - continua

Dati - i valori dei tre oggetti

Variabili - per ogni oggetto dovete decidere se portarlocon voi oppure no

Vincolo - potete portare con voi al massimo uno dei treoggetti

Obiettivo - il valore che portate con voi, da massimizzare

Ricerca Operativa – p. 5/67

Page 6: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Variabili

Borsa =

{

NO non porto la borsa con meSI porto la borsa con me

Simile per Macchina Foto e per Libro.

Ricerca Operativa – p. 6/67

Page 7: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Scelte possibili

Borsa Macchina Foto Libro

NO NO NO

SI NO NO

NO SI NO

NO NO SI

SI SI NO

SI NO SI

NO SI SI

SI SI SI

Ricerca Operativa – p. 7/67

Page 8: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Scelte accettabili

Borsa Macchina Foto Libro V alore

NO NO NO 0

SI NO NO 25

NO SI NO 100

NO NO SI 10

Ricerca Operativa – p. 8/67

Page 9: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Un esempio più complesso

Farina Acqua Medicinali UtilitàTIPO I 10 10 30 14TIPO II 30 20 10 5TIPO III 20 40 5 4

Disp.max 5100 8000 1805

Problema: individuare quanti pacchi di ciascun tiporealizzare, tenuto conto delle disponibilità massime dirisorse, in modo da massimizzare l’utilità totale dei pacchirealizzati.

Ricerca Operativa – p. 9/67

Page 10: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Un esempio più complesso - continua

Dati - i valori nella tabella

Variabili - per ogni tipo di pacco dovete decidere quantipacchi di quel tipo realizzare

Vincoli - non superare la disponibilità massima di risorsedisponibili

Obiettivo - il valore di utilità totale, da massimizzare

Ricerca Operativa – p. 10/67

Page 11: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

La programmazione matematica

Problemi di decisione come quello precedentementedescritto possono essere riformulati in modelli diProgrammazione Matematica. Un modello diProgrammazione Matematica è una traduzione delproblema di decisione in linguaggio matematico

Variabili - ad ogni variabile viene associata una variabilematematica (ad esempio x1, x2, . . . , xn se abbiamo n

variabili)

Vincoli - I vincoli vengono espressi tramite equazioni edisequazioni in cui compaiono variabili e dati delproblema

Obiettivo - L’obiettivo viene tradotto in una funzionematematica delle variabili del problema

Ricerca Operativa – p. 11/67

Page 12: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Prog. Matematica : il problema generico

max (o min) f(x1, . . . , xn)

gi(x1, . . . , xn) ≤ 0 i ∈ I1

gi(x1, . . . , xn) ≥ 0 i ∈ I2

gi(x1, . . . , xn) = 0 i ∈ I3

Ricerca Operativa – p. 12/67

Page 13: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Il modello dell’esempio

Dati - i valori numerici nella tabella

Variabili - xi =quantità di pacchi di tipo i che decidete direalizzare (i = 1, 2, 3)

Vincoli -

10x1 + 30x2 + 20x3 ≤ 5100 (disp. max farina)

10x1 + 20x2 + 40x3 ≤ 8000 (disp. max acqua)

30x1 + 10x2 + 5x3 ≤ 1805 (disp. max medicinali)

x1, x2, x3 ≥ 0 quantità di pacchi non negativa

Obiettivo -

14x1 + 5x2 + 4x3

Ricerca Operativa – p. 13/67

Page 14: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Modello matematico dell’esempio

max 14x1 + 5x2 + 4x3

tenuto conto che10x1 + 30x2 + 20x3 ≤ 5100

10x1 + 20x2 + 40x3 ≤ 8000

30x1 + 10x2 + 5x3 ≤ 1805

x1, x2, x3 ≥ 0

Ricerca Operativa – p. 14/67

Page 15: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

La Programmazione Lineare

La generica forma dei problemi di ProgrammazioneMatematica comprende una grande varietà di problemi acui corrispondono livelli di difficoltà molto diversi e anchetecniche risolutive molto diverse. Qui ci concentreremo suuna importante sottoclasse di problemi di programmazionematematica che si incontra in molte applicazioni pratiche, laclasse dei problemi di Programmazione Lineare (abbreviatacon PL nel seguito).

max (o min)∑n

j=1cjxj

∑nj=1

aijxj ≤ bi i ∈ I1

∑nj=1

aijxj ≥ bi i ∈ I2

∑nj=1

aijxj = bi i ∈ I3

Ricerca Operativa – p. 15/67

Page 16: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Caratteristiche dei modelli di PL

Proporzionalit a Il contributo di ogni variabile xj

nell’obiettivo e nei vincoli è direttamente proporzionaleal valore della variabile.

Additivit a I contributi delle diverse variabili si sommanotra loro sia nell’obiettivo che nei vincoli

Continuit a Le variabili xj possono assumere tutti i valorireali.

Ricerca Operativa – p. 16/67

Page 17: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Importanza della PL

I programmi lineari sono molto importanti per almeno treragioni:

molti problemi reali (tra cui, come abbiamo visto, quellointrodotto in precedenza) hanno come modellomatematico proprio un programma lineare;

sono più semplici da risolvere rispetto ad altri modellidove compaiono termini non lineari. Per i programmilineari esistono delle procedure molto efficienti dirisoluzione (come l’algoritmo del simplesso chedescriveremo in seguito).

Le tecniche di risoluzione di problemi più difficili sibasano spesso sulla risoluzione di sottoproblemi di PL(lo vedremo bene nella Programmazione LineareIntera).

Ricerca Operativa – p. 17/67

Page 18: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

I problemi di PL in forma canonica

In forma scalare:

max∑n

j=1cjxj

∑nj=1

aijxj ≤ bi i = 1, . . . ,m

xj ≥ 0 j = 1, . . . , n

Ricerca Operativa – p. 18/67

Page 19: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Prodotto scalare tra vettori

Vettore di dimensione n

p = (p1 · · · pn)

Dato un altro vettore di dimensione n

q = (q1 · · · qn)

Il prodotto scalare tra i due vettori è un valore scalare:

pq =n∑

j=1

pjqj

Esempio:

p = (2 3 6) q = (3 8 7) pq = 2 ∗ 3 + 3 ∗ 8 + 6 ∗ 7 = 72Ricerca Operativa – p. 19/67

Page 20: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Proprietà

Siano p,q1,q2 ∈ Rn e α, β ∈ R. Allora:

p(αq1 + βq2) = α(pq1) + β(pq2)

Esempio:

p = (2 3 6) q1 = (1 2 5) q2 = (6 0 3) α = 2 β = 3

αq1 + βq2 = 2(1 2 5) + 3(6 0 3) = (2 4 10) + (18 0 9) = (20 4 19)

p(αq1 + βq2) = 2 ∗ 20 + 3 ∗ 4 + 6 ∗ 19 = 166

pq1 = 2 ∗ 1 + 3 ∗ 2 + 6 ∗ 5 = 38 pq2 = 2 ∗ 6 + 3 ∗ 0 + 6 ∗ 3 = 30

α(pq1) + β(pq2) = 2 ∗ 38 + 3 ∗ 30 = 166Ricerca Operativa – p. 20/67

Page 21: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Generalizzazione della proprietà

Dati i vettori p,q1,q2, . . . ,qt ∈ Rn e gli scalariα1, α2, . . . , αt ∈ R, si ha che

p[α1q1 + α2q2 + · · · + αtqt] = p

[t∑

i=1

αiqi

]

=t∑

i=1

αi(pqi)

Ricerca Operativa – p. 21/67

Page 22: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Prodotto matrice-vettore

Data una matrice A di ordine m × n (m righe e n colonne)

a11 . . . a1n

......

...am1 . . . amn

ed un vettore p di dimensione n

p = (p1 · · · pn)

Il prodotto matrice-vettore è un vettore di dimensione m lacui componente i è il prodotto scalare tra la i-esima riga diA e il vettore p:

n∑

j=1

aijpj

Ricerca Operativa – p. 22/67

Page 23: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Prodotto vettore-matrice

Data una matrice A di ordine m × n (m righe e n colonne)

a11 . . . a1n

......

...am1 . . . amn

ed un vettore q di dimensione m

q = (q1 · · · qm)

Il prodotto vettore-matrice è un vettore di dimensione n lacui componente j è il prodotto scalare tra la j-esimacolonna di A e il vettore q:

m∑

i=1

aijqiRicerca Operativa – p. 23/67

Page 24: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Esempi

A =

[

7 6 3

2 4 8

]

p = (3 8 7)

q = (4 5)

Ap = (7 ∗ 3 + 6 ∗ 8 + 3 ∗ 7 2 ∗ 3 + 4 ∗ 8 + 8 ∗ 7) = (90 94)

qA = (4 ∗ 7 + 5 ∗ 2 4 ∗ 6 + 5 ∗ 4 4 ∗ 3 + 5 ∗ 8) = (38 44 52)

Ricerca Operativa – p. 24/67

Page 25: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

PL in forma canonica

Introduciamo i seguenti vettori:

c ∈ Rn: vettore di dimensione n con componenti cj ,j = 1, . . . , n, ovvero:

c = (c1 c2 · · · cn);

x ∈ Rn: vettore di variabili di dimensione n concomponenti xj , j = 1, . . . , n, ovvero:

x = (x1 x2 · · · xn);

ai ∈ Rn, i = 1, . . . ,m: m vettori di dimensione n concomponenti aij, j = 1, . . . , n, ovvero:

ai = (ai1 ai2 · · · ain).

Ricerca Operativa – p. 25/67

Page 26: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

PL in forma canonica

Osservando che

cx =n∑

j=1

cjxj

e

aix =n∑

j=1

aijxj

abbiamo la seguente rappresentazione vettoriale per unproblema di PL in forma canonica:

max cx

aix ≤ bi i = 1, . . . ,m

x ≥ 0

Ricerca Operativa – p. 26/67

Page 27: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

PL in forma canonica

Si consideri la matrice A ∈ Rm×n che ha tante righe quantisono i vincoli del problema (m) e la cui i-esima riga è ilvettore ai e del vettore b = (b1 · · · bm) ∈ Rm di dimensionem con componenti bi, i = 1, . . . ,m. Osservando che

Ax = (a1x . . . amx)

possiamo scrivere la rappresentazione matriciale del problemadi PL in forma canonica:

max cx

Ax ≤ b

x ≥ 0

Ricerca Operativa – p. 27/67

Page 28: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Esempio degli aiuti umanitari

Il vettore c = (14 5 4)Il vettore di variabili x = (x1 x2 x3)I vettori ai, i = 1, 2, 3

a1 = (10 30 20) a2 = (10 20 40) a3 = (30 10 5)

Il vettore b = (5100 8000 1805)La matrice A

10 30 20

10 20 40

30 10 5

Ricerca Operativa – p. 28/67

Page 29: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

PL canonici≡ PL generici

Osservazione Ogni problema di PL in forma generica puòessere trasformato in uno equivalente in forma canonica.

Trasformazione da min a max

min cx = −max −cx

Trasformazione vincolo ≥ in vincolo ≤

aix ≥ bi ⇔ −aix ≤ −bi

Trasformazione vincolo = in due vincoli ≤

aix = bi ⇔ aix ≤ bi, aix ≥ bi ⇔ aix ≤ bi, −aix ≤ −bi

Ricerca Operativa – p. 29/67

Page 30: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

PL canonici≡ PL generici

Sostituzione variabile ≤ 0 con variabile ≥ 0 Data xi ≤ 0,effettuare il cambio di variabile xi = −x′

i, dove x′i ≥ 0

Sostituzione variabile libera in segno con due variabili ≥ 0Data xi libera in segno, effettuare il cambio di variabilexi = x

′′

i − x′i, dove x′

i, x′′

i ≥ 0

Ricerca Operativa – p. 30/67

Page 31: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Un esempio

Si trasformi il seguente problema di PL in forma generica inun problema di PL in forma canonica

min x1 + x2 + x3

x1 + 2x2 − x3 ≤ 3

x1 + 4x2 + 5x3 = 5

x1 − 2x2 + x3 ≥ 3

x1 ≥ 0

x2 ≤ 0

x3 libera in segno

Ricerca Operativa – p. 31/67

Page 32: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Insiemi convessi

Un insieme C ⊆ Rn si dice convesso se

∀ x1,x2 ∈ C ∀ λ ∈ [0, 1] : λx1 + (1 − λ)x2 ∈ C,

ovvero se dati due punti qualsiasi in C, il segmento che licongiunge è anch’esso completamente contenuto in C.

Ricerca Operativa – p. 32/67

Page 33: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Insiemi limitati e chiusi

Un insieme C si dice limitato se esiste una sfera di raggiofinito R che lo contiene.

Un insieme C si dice chiuso se contiene la sua frontiera.

Ricerca Operativa – p. 33/67

Page 34: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Semispazi e iperpiani

Si definisce semispazio in Rn l’insieme di punti che soddisfauna disequazione lineare in Rn:

n∑

j=1

wjxj ≤ v

(in forma vettoriale: wx ≤ v).

Si definisce iperpiano in Rn l’insieme di punti che soddisfaun’equazione lineare in Rn:

n∑

j=1

wjxj = v

(in forma vettoriale: wx = v).Ricerca Operativa – p. 34/67

Page 35: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Poliedri e politopi

Si definisce poliedro l’intersezione di un numero finito disemispazi e/o iperpiani. Se il poliedro è limitato esso vienechiamato politopo.

Ricerca Operativa – p. 35/67

Page 36: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

La regione ammissibileSa

La regione ammissibile Sa di un problema di PL in formacanonica

Sa = {x ∈ Rn : aix ≤ bi, i = 1, . . . ,m, x ≥ 0}.

è un poliedro.

Semispazi e iperpiani sono insiemi chiusi

L’intersezione di un numero finito di insiemi chiusi è uninsieme chiuso

I poliedri (e quindi Sa) sono insiemi chiusi

Ricerca Operativa – p. 36/67

Page 37: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Convessità

Siano x,y ∈ Sa, ovvero

aix ≤ bi i = 1, . . . ,m x ≥ 0,

eaiy ≤ bi i = 1, . . . ,m y ≥ 0.

Per ogni λ ∈ (0, 1) e per ogni i ∈ {1, . . . ,m} avremo:

ai[λx + (1 − λ)y] =

= λ︸︷︷︸

>0

aix︸︷︷︸

≤bi

+(1 − λ)︸ ︷︷ ︸

>0

aiy︸︷︷︸

≤bi

λbi + (1 − λ)bi = bi.

Ricerca Operativa – p. 37/67

Page 38: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Continua

Inoltre:λ

︸︷︷︸

>0

x︸︷︷︸

≥0

+(1 − λ)︸ ︷︷ ︸

>0

y︸︷︷︸

≥0

≥ 0.

Quindi:λx + (1 − λ)y ∈ Sa.

La regione ammissibile Sa è un insieme convesso.

Ricerca Operativa – p. 38/67

Page 39: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Limitatezza e illimitatezza

La regione ammissibile Sa può essere:

= ∅

max x1 + x2

x1 ≤ −1

x1 + x2 ≤ 1

x1, x2 ≥ 0

un poliedro limitato (politopo)

max x1 + x2

x1 + x2 ≤ 1

x1, x2 ≥ 0

Ricerca Operativa – p. 39/67

Page 40: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Continua

un poliedro illimitato

max x1 + x2

x1 − x2 ≤ 0

x1, x2 ≥ 0

Ricerca Operativa – p. 40/67

Page 41: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Ricapitolando ...

... la regione ammissibile Sa di un problema di PL è unpoliedro e come tale è un insieme chiuso e convesso.Inoltre, può essere un insieme vuoto, un insieme limitato(politopo) oppure un insieme illimitato.

Ricerca Operativa – p. 41/67

Page 42: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Vertici di Sa

Si definisce vertice di Sa un punto x ∈ Sa tale che nonesistono due punti distinti x1,x2 ∈ Sa, x1 6= x2, tali che

x =1

2x1 +

1

2x2.

ovvero x è il punto medio del segmento che congiunge x1 ex2.

Ricerca Operativa – p. 42/67

Page 43: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Alcuni risultati

Teorema

Dato un problema di PL in forma canonica, se Sa 6= ∅, alloraSa contiene almeno un vertice.

Osservazione

Sa ha sempre un numero finito di vertici.

Ricerca Operativa – p. 43/67

Page 44: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Raggi

Nel caso Sa sia un poliedro illimitato possiamo ancheintrodurre le definizioni di raggio e raggio estremo.

Si definisce raggio di Sa un vettore r tale che

∀ x0 ∈ Sa ∀ λ ≥ 0 : x0 + λr ∈ Sa,

cioè la semiretta con origine in x0 e direzione r ècompletamente contenuta in Sa per qualsiasi punto x0 ∈ Sa.

Ricerca Operativa – p. 44/67

Page 45: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Raggi estremi

Un raggio r di Sa si definisce raggio estremo di Sa se nonesistono altri due raggi r1 e r2 di Sa con direzioni distinte,ovvero

r1 6= µr2 ∀ µ ∈ R,

tali che

r =1

2r1 +

1

2r2.

Osservazione

Sa ha sempre un numero finito di raggi estremi.

Ricerca Operativa – p. 45/67

Page 46: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Teorema di rappresentazione diSa

Teorema Sia dato un problema di PL in forma canonica conSa 6= ∅. Siano v1, . . . ,vk i vertici di Sa e, nel caso in cui Sa

sia un poliedro illimitato, siano r1, . . . , rh i raggi estremi diSa. Allora

x ∈ Sa

se e solo se

∃ λ1, . . . , λk ≥ 0,k∑

i=1

λi = 1, ∃ µ1, . . . , µh ≥ 0

tali che

x =k∑

i=1

λivi +h∑

j=1

µjrj .

Ricerca Operativa – p. 46/67

Page 47: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Ovvero ...

... i punti in Sa sono tutti e soli i punti ottenibili come sommadi

una combinazione convessa dei vertici di Sa

una combinazione lineare con coefficienti non negatividei raggi estremi di Sa

Quindi un numero finito di oggetti (vertici e raggi estremi) mipermettono di rappresentare tutto l’insieme Sa.

Ricerca Operativa – p. 47/67

Page 48: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

L’insieme delle soluzioni ottimeSott

Insieme soluzioni ottime

Sott = {x∗ ∈ Sa : cx∗ ≥ cx ∀ x ∈ Sa},

Sott ⊆ Sa, quindi Sa = ∅ ⇒ Sott = ∅.

Ricerca Operativa – p. 48/67

Page 49: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Una, nessuna, infinite

Osservazione

Se Sott è un insieme finito e non vuoto, Sott contiene un solopunto.

Dimostrazione Per assurdo sia Sott un insieme finito econtenga più di un punto. Siano x1,x2 ∈ Sott, x1 6= x2, duepunti distinti di Sott.

Ricerca Operativa – p. 49/67

Page 50: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Continua

Per l’ottimalità di x1 e x2 si deve avere cx1 = cx2.

Per la convessità di Sa e x1,x2 ∈ Sa:

λx1 + (1 − λ)x2 ∈ Sa ∀ λ ∈ (0, 1),

Per la linearità della funzione obiettivo ∀ λ ∈ (0, 1):

c[λx1+(1−λ)x2] = λcx1+(1−λ)cx2 = λcx1+(1−λ)cx1 = cx1.

Quindi:λx1 + (1 − λ)x2 ∈ Sott ∀ λ ∈ (0, 1)

cioè tutto il segmento che congiunge x1 e x2 è contenuto inSott, il che contraddice la finitezza dell’insieme Sott.

Ricerca Operativa – p. 50/67

Page 51: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Le diverse forme possibili diSott

Caso 1 Sa = ∅ ⇒ Sott = ∅.

Caso 2 Sa 6= ∅ e politopo.Politopo è insieme chiuso e limitato, funzione obiettivo èlineare e quindi continua ⇒ (Teorema di Weierstrass)Sott 6= ∅.Sono possibili due sottocasi.

Caso 2.1 Sott è costituito da un solo punto.

max 2x1 + x2

x1 + x2 ≤ 1

x1, x2 ≥ 0

Ricerca Operativa – p. 51/67

Page 52: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Continua

Caso 2.2 Sott è costituito da un insieme infinito e limitato dipunti.

max x1 + x2

x1 + x2 ≤ 1

x1, x2 ≥ 0

Ricerca Operativa – p. 52/67

Page 53: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Continua

Caso 3 Sa 6= ∅ e poliedro illimitato. Sono possibili quattrosottocasi.

Caso 3.1 Sott = ∅ in quanto l’obiettivo è illimitato, ovveroesiste una sequenza infinita di punti {xk} di Sa lungo cuila funzione obiettivo cresce a +∞. Formalmente:

∃ {xk} : xk ∈ Sa ∀ k e cxk → +∞ k → +∞.

max x1 + x2

−x1 + x2 ≤ 0

x1 − x2 ≤ 1

x2 ≥ 1

x1, x2 ≥ 0Ricerca Operativa – p. 53/67

Page 54: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Continua

Caso 3.2 Sott è costituito da un solo punto.

max −x1

−x1 + x2 ≤ 0

x1 − x2 ≤ 1

x2 ≥ 1

x1, x2 ≥ 0

Ricerca Operativa – p. 54/67

Page 55: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Continua

Caso 3.3 Sott è costituito da un insieme infinito e limitato dipunti.

max −x2

−x1 + x2 ≤ 0

x1 − x2 ≤ 1

x2 ≥ 1

x1, x2 ≥ 0

Ricerca Operativa – p. 55/67

Page 56: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Continua

Caso 3.4 Sott è costituito da un insieme infinito e illimitato dipunti.

max x1 − x2

−x1 + x2 ≤ 0

x1 − x2 ≤ 1

x2 ≥ 1

x1, x2 ≥ 0

Ricerca Operativa – p. 56/67

Page 57: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Un lemma

Lemma

Dato un problema di PL in forma canonica, se Sott 6= ∅,allora per ogni raggio estremo r di Sa si ha:

cr ≤ 0.

Ricerca Operativa – p. 57/67

Page 58: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Dimostrazione

Per assurdo supponiamo esista un raggio estremo r taleche

cr > 0

Sott 6= ∅ ⇒ Sa 6= ∅.

Sia x0 ∈ Sa. Per definizione di raggio avremo che

∀ λ ≥ 0 : x0 + λr ∈ Sa.

Valore funzione obiettivo in punti x0 + λr:

c(x0 + λr) = cx0 + λ cr︸︷︷︸

>0

→︸︷︷︸

λ→+∞

+∞

Allora Sott = ∅ in quanto l’obiettivo è illimitato sulla regioneammissibile, il che contraddice Sott 6= ∅.

Ricerca Operativa – p. 58/67

Page 59: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Teorema fondamentale della PL

Teorema

Dato un problema di PL in forma canonica, se Sott 6= ∅,allora Sott contiene almeno un vertice di Sa.

Ricerca Operativa – p. 59/67

Page 60: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Dimostrazione

Siano v1, . . . ,vk i vertici di Sa e, nel caso in cui Sa sia unpoliedro illimitato, indichiamo con r1, . . . , rh i raggi estremi diSa.

Se Sott 6= ∅, sia x∗ ∈ Sott.

Per assurdo supponiamo che

v1, . . . ,vk 6∈ Sott

da cui:cvi < cx∗ i = 1, . . . , k

Ricerca Operativa – p. 60/67

Page 61: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Continua

Per il teorema di rappresentazione di Sa, x∗ ∈ Sa implicache

∃ λ∗1, . . . , λ

∗k ≥ 0,

k∑

i=1

λ∗i = 1, ∃ µ∗

1, . . . , µ∗h ≥ 0

tali che

x∗ =k∑

i=1

λ∗i vi +

h∑

j=1

µ∗jrj .

Quindi:

cx∗ = c

k∑

i=1

λ∗i vi +

h∑

j=1

µ∗jrj

Ricerca Operativa – p. 61/67

Page 62: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Continua

Per la linearità della funzione obiettivo

cx∗ =k∑

i=1

λ∗i (cvi) +

h∑

j=1

µ∗j(crj).

Dal lemma precedente:

crj ≤ 0 j = 1, . . . , h.

Ricerca Operativa – p. 62/67

Page 63: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Continua

Quindi:

cx∗ =k∑

i=1

λ∗i (cvi) +

h∑

j=1

µ∗j

︸︷︷︸

≥0

(crj)︸ ︷︷ ︸

≤0

.

da cui:

cx∗ ≤k∑

i=1

λ∗i (cvi).

Ricerca Operativa – p. 63/67

Page 64: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Continua

Da cvi < cx∗, ∀ i segue che:

cx∗ ≤k∑

i=1

λ∗i (cvi)︸ ︷︷ ︸

<cx∗

<

k∑

i=1

λ∗i (cx

∗).

NB: lo strettamente minore vale perchè almeno uno dei λ∗i è

strettamente positivo in quanto la loro somma deve esserepari a 1.

Quindi:

cx∗ < (cx∗)k∑

i=1

λ∗i = cx∗.

il che è assurdo.Ricerca Operativa – p. 64/67

Page 65: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Un commento

Il teorema fondamentale della PL è alla base dellaprocedura di risoluzione che descriveremo, l’algoritmo delsimplesso.

Infatti, tale algoritmo ricerca la soluzione ottima cercando dispostarsi ad ogni iterazione in modo intelligente da unvertice all’altro di Sa. Per modo intelligente si intende chel’algoritmo tenta di spostarsi ad una data iterazione da unvertice a uno con valore della funzione obiettivo maggiore.

Ricerca Operativa – p. 65/67

Page 66: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Problema 1

Sia dato il problema di PL in forma canonica

max cx

aix ≤ bi i = 1, . . . ,m

x ≥ 0

e sia x ∈ Sa tale che

aix < bi ∀ i, x > 0.

Si dimostri che

x ∈ Sott ⇔ Sa = Sott

Ricerca Operativa – p. 66/67

Page 67: Ricerca Operativa - di.unito.itlocatell/didattica/ro1/intropl-sl-bf.pdf · Ricerca Operativa Disciplina basata sulla modellizzazione e la risoluzione tramite strumenti automatici

Problema 2

Siano vi, i = 1, . . . , k, i vertici della regione ammissibile Sa

di un problema di PL. Si supponga che Sott 6= ∅ e che tutti ivertici abbiano lo stesso valore dell’obiettivo, ovvero

cvi = cvj ∀ i 6= j

Si dimostri che:

a) Sa = Sott se Sa è un politopo;

b) può essere Sa 6= Sott nel caso Sa sia un poliedro illimitato.

Ricerca Operativa – p. 67/67