Estratto del documento

Ricerca operativa per le applicazioni industriali

La ricerca operativa è la matematica applicata ai problemi economico-organizzativi; si parte, quindi, da un problema reale e si arriva a un modello matematico.

X = (x1, x2, …, xn) → Sono dette variabili decisionali.

f(x) = z → Viene detta funzione obiettivo o funzione reale di n variabili reali; l’esito z rappresenta l’obiettivo da rendere massimo o minimo, a seconda che si tratti di un guadagno o di un costo.

g1(x), g2(x), …, gm(x) → sono dette funzioni di vincolo e possono essere in forma di equazione o di disequazione.

  • I) g1(x) ≤, ≥, = 0
  • II) g2(x) ≤, ≥, = 0
  • III) gn(x) ≤, ≥, = 0

X rappresenta l’insieme ammissibile, cioè è l’insieme su cui vengono soddisfatti tutti i vincoli, quindi si parla di un'ottimizzazione vincolata e quindi di una programmazione.

Programmazione lineare

Esempio di un problema di programmazione lineare:

Max z = 13 x1 + 23 x2 (Questa è la funzione obiettivo: si deve affrontare un problema di Max = massimizzazione.)

  • I) 5 x1 + 15 x2 ≤ 480
  • II) 4 x1 + 4 x2 ≤ 160
  • III) 35 x1 + 20 x2 ≤ 1190
  • x1, x2 ≥ 0 (→ Vincoli di non negatività, che devono essere sempre scritti!)

In questo problema abbiamo:

  • n = 2 variabili x1, x2;
  • 4 funzioni di vincoli I), II), III) e i vincoli di non negatività.

Le possibili soluzioni di un problema possono essere trovate seguendo diversi metodi, in base al numero di variabili:

1) Metodo geometrico

Quando il problema in questione ha un numero di variabili n ≤ 2, si può risolverlo col metodo geometrico.

Esempio:

Max z = 3 x1 + 5 x2

  • I) x1 ≤ 4
  • II) x2 ≤ 6
  • III) 3 x1 + 2 x2 ≤ 18
  • x1, x2 ≥ 0

Si risolve la terza equazione: 3 x1 + 2 x2 ≤ 18; x2 = 9 – 3/2 x1; x2 ≤ 9 – 3/2 x1

Si rappresentano tutti i vincoli sul piano cartesiano, inclusi i vincoli di non negatività:

  1. Si trova il gradiente, dato dai coefficienti delle variabili della funzione obiettivo (Max z = 3 x1 + 5 x2) e si rappresenta sul piano. Esso deve essere ortogonale alla retta (passante per l’origine) z = 0;
  2. Si pone la funzione obiettivo uguale a zero, quindi z = 0, quindi 3 x1 + 5 x2 = 0;
  3. Si isola x2 e quindi x2 = -3/5 x1 e si rappresenta graficamente;
  4. Il punto di massimo vincolato x*=(2,6), oltre il quale la soluzione non è più ottima, poiché non contenuta nella regione ammissibile.
  5. Si sostituiscono i valori di x*=(2,6) nella funz. obiettivo. Si ha z* = 36 come soluzione ottima al problema.

2) Metodo delle rette di livello

Si deve calcolare l’insieme delle curve di livello della funzione obiettivo; esse sono tutte parallele tra loro.

Riprendendo l’esempio precedente, considero due rette di livello:

  • z = 0 e quindi 3 x1 + 5 x2 = 0 → x2 = -3/5 x1
  • z = 1 e quindi 3 x1 + 5 x2 = 1 → x2 = -3/5 x1 + 1/5

Considero una retta di livello e il gradiente della funzione obiettivo (3, 5).

Le coordinate del vertice si ottengono dall’intersezione delle secondo e del terzo vincolo:

x2 = 6

3 x1 + 2 x2 = 18 → x* = (2,6) → z* = 36

3) Confronto tra vertici

Solo nel caso in cui l’insieme ammissibile X sia limitato, esiste un punto di ottimo (per il teorema di Weierstrass), e ci si può limitare a cercarlo tra i vertici.

Con riferimento ai vertici del primo esempio, abbiamo i vertici:

  • 0 (0,0); A (0,6); B (2,6); C (4,3); D (4,0);

Si procede sostituendo ciascun vertice nella funzione obiettivo e considerando, quindi, il vertice in cui la funzione obiettivo z assume il valore massimo.

  • z (0,0)=0; z (0,6)=30; z (2,6)=36; z (4,3)=27; z (4,0)=12

Quindi x*= (2,6) e z*=36

Ogni vincolo lineare definisce un semipiano. L’intersezione di questi semispazi è un poliedro chiuso e convesso.

Un VERTICE è l’intersezione di (almeno) due rette (se le rette sono più di due, il vertice si dice degenere).

Uno SPIGOLO è un segmento congiungente due vertici adiacenti.

Esempio: min z = x1 – x2

  • c.v. x1 + x2 ≤ 2
  • 2x1 + x2 ≤ 2
  • x1, x2 ≥ 0

(0;2) è un vertice degenere poiché dato dall’intersezione di tutte e tre le rette dei vincoli; (1;0) è un vertice, non degenere poiché dato dall’intersezione di solo due rette dei vincoli: x2 ≥ 0; x2 ≥ 2-2x1

Il primo vincolo è da definire superfluo, poiché anche in sua assenza l’insieme ammissibile rimane invariato.

X* rappresenta l’insieme delle soluzioni ottime, tale insieme può avere:

  • Nessuna soluzione ottima perché: X=0 e quindi quando il problema non è normale; oppure z è superiormente (inferiormente) illimitata su X, se sto cercando il massimo (minimo);
  • Almeno una soluzione ottima che può essere unica e quindi ho un vertice;
  • Infinite soluzioni ottime, rappresentate da tutti i punti di un intero spigolo, inclusi entrambi i vertici, oppure esse possono essere tutti i punti di uno spigolo illimitato, incluso il vertice.

Teorema fondamentale di programmazione lineare

Se esistono soluzioni ottime, almeno una è un vertice della regione ammissibile X. Di conseguenza, se la soluzione ottima è unica, essa è un vertice. Le soluzioni corrispondenti ai vertici di X si dicono soluzioni ammissibili basiche; le variabili che si annullano sono dette variabili non basiche, mentre le rimanenti diverse da zero sono dette variabili basiche.

Se si vuole trasformare un problema di minimo (massimo) in un problema di massimo (minimo), basta cambiare semplicemente il segno.

Esempio: min z → max (-z)

c.v. 2 x1 + 3 x2 ≥ 0 → -2 x1 - 2 x2 ≤ 0

Per n numero di variabili abbiamo:

n = 1 n = 2 n = 3
Grafico della funz. Retta Piano Iperpiano (3 dim.)
Ins. Livello Punto Retta Piano
Insieme X Intervallo Poligono convesso Poliedro convesso
Spigolo Punto Segmento Porzione di piano
Ambiente Piano Spazio ordinato Spazio astratto
Vertice Intersezione di 2 rette (almeno) Intersezione di 3 piani (almeno)

Per n > 3 intersezione di almeno n iperpiani; per più di n iperpiani si ha un vertice degenere.

Problema in forma aumentata

Introducendo m variabili, dette RESIDUI (r1, r2, r3, …, rn ≥ 0) o scarti, si trasformano i vincoli in uguaglianze ottenendo la forma aumentata del problema considerato. La forma aumentata è funzionale ai fini della manipolazione algebrica e per la ricerca dei vertici. Alla forma originale si sommano o si sottraggono i residui a seconda, rispettivamente, se nelle funzioni dei vincoli si ha ≤ o ≥.

Esempio:

max z = 3 x1 + 5 x2

c.v. x1 ≤ 4 → x1 + r1 = 4

Trasformo le disuguaglianze in x2 ≤ 6 → x2 + r2 = 6 uguaglianze equivalenti anche

3 x1 + 2 x2 ≤ 18 → 3 x1 + 2 x2 + r3 = 18

x1, x2 ≥ 0 x1, x2, r1, r2, r3 ≥ 0

Una forma equivalente di scrittura è quella matriciale:

max z = cx Forma aumentata: max z = cx

c.v. Ax ≤ b c.v. Ax + r ≤ b

x ≥ 0 x, r ≥ 0

x1 x2 r1 r2 r3
1 0 1 0 0 4
0 1 0 1 0 6
3 2 0 0 1 18

La forma matriciale dell’esempio considerato ha m equazioni e n + m variabili:

IA A I [A [A= b; r I] = m = r I b] → Sistema possibile e indeterminato con n gradi di li

Anteprima
Vedrai una selezione di 5 pagine su 16
Ricerca operativa per le produzioni industriali - Appunti Pag. 1 Ricerca operativa per le produzioni industriali - Appunti Pag. 2
Anteprima di 5 pagg. su 16.
Scarica il documento per vederlo tutto.
Ricerca operativa per le produzioni industriali - Appunti Pag. 6
Anteprima di 5 pagg. su 16.
Scarica il documento per vederlo tutto.
Ricerca operativa per le produzioni industriali - Appunti Pag. 11
Anteprima di 5 pagg. su 16.
Scarica il documento per vederlo tutto.
Ricerca operativa per le produzioni industriali - Appunti Pag. 16
1 su 16
D/illustrazione/soddisfatti o rimborsati
Acquista con carta o PayPal
Scarica i documenti tutte le volte che vuoi
Dettagli
SSD
Scienze matematiche e informatiche MAT/09 Ricerca operativa

I contenuti di questa pagina costituiscono rielaborazioni personali del Publisher Sephora L. di informazioni apprese con la frequenza delle lezioni di Ricerca operativa e studio autonomo di eventuali libri di riferimento in preparazione dell'esame finale o della tesi. Non devono intendersi come materiale ufficiale dell'università Università "Carlo Cattaneo" (LIUC) o del prof Rossignoli Chiara.
Appunti correlati Invia appunti e guadagna

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community