Docsity
Docsity

Prepara i tuoi esami
Prepara i tuoi esami

Studia grazie alle numerose risorse presenti su Docsity


Ottieni i punti per scaricare
Ottieni i punti per scaricare

Guadagna punti aiutando altri studenti oppure acquistali con un piano Premium


Guide e consigli
Guide e consigli


Modelli di Programmazione Lineare: Applicazioni e Esempi, Slide di Ricerca Operativa

Slide Ricerca Operativa del corso di informatica

Tipologia: Slide

2018/2019

Caricato il 28/10/2019

LilianaCara
LilianaCara 🇮🇹

4.2

(5)

25 documenti

1 / 39

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
Modelli
Problemi e modelli
Mauro Passacantando
Dipartimento di Informatica, Universit`a di Pisa
Corso di Ricerca Operativa A
Laurea in Informatica - Universit`a di Pisa - a.a. 2019/20
Mauro Passacantando Ricerca Operativa A 1 / 37
:
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27

Anteprima parziale del testo

Scarica Modelli di Programmazione Lineare: Applicazioni e Esempi e più Slide in PDF di Ricerca Operativa solo su Docsity!

Problemi e modelli

Mauro Passacantando

Dipartimento di Informatica, Universit`a di Pisa

[email protected]

Corso di Ricerca Operativa A

Laurea in Informatica - Universit`a di Pisa - a.a. 2019/

Esempio 1 - problema

Un coltivatore ha a disposizione 12 ettari di terreno da coltivare a lattuga o a

patate. Le risorse a sua disposizione, oltre al terreno, sono: 70 kg di semi di

lattuga, 18 t di tuberi e 160 t di concime. Supponendo che il mercato sia in grado

di assorbire tutta la produzione e che i prezzi siano stabili, la resa stimata per la

coltivazione di lattuga e di 3000 e/ettaro e quella delle patatee di 5000 e/ettaro.

L’assorbimento delle risorse per ogni tipo di coltivazione `e di 7 kg di semi e 10 t di

concime per ettaro di lattuga, 3 t di tuberi e 20 t di concime per ettaro di patate.

Stabilire quanto terreno destinare a lattuga e quanto a patate in modo da

massimizzare la resa economica e sfruttando al meglio le risorse disponibili.

Esempio 2 - problema

Un personal trainer deve preparare un piano di allenamento settimanale di 8 ore

combinando diverse attivit`a fisiche. Nella tabella seguente sono riportate le

attivita possibili, le calorie consumate in un’ora di attivita e il numero massimo di

ore dedicabili ad ogni attivit`a:

Attivit`a Camminare Jogging Nuoto Ginnastica Bicicletta

Calorie consumate 100 300 200 250 150

Max numero ore 6 3 4 3 5

Il piano di allenamento richiede almeno due ore di sport all’aperto (camminare,

jogging, bicicletta), che le calorie consumate con gli sport all’aperto non superino

il 50% delle calorie totali consumate e che le ore di nuoto non siano pi`u del 10%

del totale. Qual `e il piano di allenamento che massimizza le calorie consumate?

Esempio 2 - modello

Variabili decisionali:

x 1 = ore dedicate a camminare,

x 2 = ore dedicate al jogging,

x 3 = ore dedicate al nuoto,

x 4 = ore dedicate alla ginnastica,

x 5 = ore dedicate alla bicicletta.

Modello matematico (di programmazione lineare):

max 100x 1 + 300x 2 + 200x 3 + 250x 4 + 150x 5

x 1 + x 2 + x 3 + x 4 + x 5 = 8

x 1 + x 2 + x 5 ≥ 2

100 x 1

  • 300x 2

  • 150x 5

≤ 0 .5 (100x 1

  • 300x 2

  • 200x 3

  • 250x 4

  • 150x 5

x 1

x 2

x 3

x 4

x 5

x 1

, x 2

, x 3

, x 4

, x 5

Esempio 3 - modello

Variabili decisionali:

xB = numero di palloni da basket prodotti

xC = numero di palloni da calcio prodotti

Modello matematico (di programmazione lineare intera):

max 20 x B

  • 15 x C

16 x B

  • 14 x C

8 xB + 12 xC ≤ 3600

xB ≥ 800

xC ≥ 1000

xB , xC ∈ N

Esempio 4 - problema

Un’azienda produce 4 tipi di TV (32, 40, 50 e 55 pollici) e ha a disposizione 2

stabilimenti produttivi (A e B). L’azienda dispone di 50 operai in A e 60 in B

ognuno dei quali lavora 8 ore al giorno per 5 giorni alla settimana. Le ore

necessarie per produrre i TV e le richieste minime da soddisfare sono indicate nella

seguente tabella:

TV 32” 40” 50” 55”

Stabilimento A 1.3 1.4 1.6 1.

Stabilimento B 1.4 1.6 1.9 2.

Richiesta 1000 800 500 300

Sapendo che i 4 tipi di TV vengono venduti rispettivamente a 400, 700, 900, e

1300 euro, l’azienda vuole determinare quanti TV di ogni tipo produrre nei due

stabilimenti in modo da massimizzare il ricavo complessivo.

Esempio 5 - problema

Supponiamo di voler investire un capitale di 100 mila euro. Abbiamo a

disposizione 9 investimenti possibili e per ciascuno di essi conosciamo il ricavo

atteso ed il costo attuale:

Investimento 1 2 3 4 5 6 7 8 9

Ricavo atteso 50 65 35 16 18 45 45 40 25

(migliaia di euro)

Costo 40 50 25 10 10 40 35 30 20

(migliaia di euro)

Compatibilmente con il capitale disponibile, quali sono gli investimenti che

forniscono il massimo ricavo totale?

Esempio 5 - modello

Variabili decisionali: xj =

1 se l’investimento j viene scelto,

0 altrimenti,

per j = 1,... , 9

Modello matematico (di programmazione lineare binaria):

max 50x 1

  • 65x 2

  • 35x 3

  • 16x 4

  • 18x 5

  • 45x 6

  • 45x 7

  • 40x 8

  • 25x 9

40 x 1

  • 50x 2

  • 25x 3

  • 10x 4

  • 10x 5

  • 40x 6

  • 35x 7

  • 30x 8

  • 20x 9

xj ∈ { 0 , 1 }, j = 1,... , 9

Problema del Bin Packing

Dati n oggetti di peso p 1

,... , p n

e m contenitori ognuno di capacit`a C ,

trovare il minimo numero di contenitori in cui inserire tutti gli oggetti.

Variabili: xij =

{

1 se l’oggetto j `e inserito nel contenitore i ,

0 altrimenti,

yi =

{

1 se i `e usato,

0 altrimenti.

Modello:

min

m ∑

i =

yi

m ∑

i =

x ij

= 1 ∀ j = 1,... , n (1)

n ∑

j=

pj xij ≤ C yi ∀ i = 1,... , m (2)

x ij

∈ { 0 , 1 } ∀ i, j

y i

∈ { 0 , 1 } ∀ i

(1): ogni oggetto `e inserito in un solo contenitore (semiassegnamento)

(2): capacit`a contenitori

Carico fisso - problema

Un’azienda conserviera produce tonno all’olio, tonno al vapore e tonno agli aromi.

Per la produzione di ogni tipo di tonno `e necessario affittare una macchina avente

i seguenti costi: 200 euro a settimana per produrre tonno-olio; 150 euro a

settimana per il tonno-vapore; 100 euro a settimana per il tonno-aromi. I tempi di

lavorazione, le richieste di materia prima ed il ricavo di ogni prodotto sono

riassunti nella seguente tabella:

prodotto tempi di lavorazione materia prima ricavo

(ore/scatola) (kg/scatola) (euro/scatola)

tonno-olio 3 4 6

tonno-vapore 2 3 4

tonno-aromi 6 4 7

Ogni settimana sono disponibili 150 ore di lavoro e 160 kg di tonno. Determinare

il piano produttivo settimanale in modo da massimizzare il profitto complessivo.

Vincoli di alternativa - problema

Un’azienda produce tre tipi di auto: utilitarie, berline, station-wagon. Le risorse

necessarie, i tempi di lavorazione ed i profitti sono sintetizzati nella seguente

tabella:

auto acciaio lavoro profitto

(tonnellate) (ore) (euro)

utilitarie 1.5 30 2000

berline 3 25 3000

station-wagon 5 40 4000

L’azienda ha a disposizione 6000 tonnellate di acciaio e 60000 ore di lavoro.

Inoltre, se l’azienda produce un tipo di veicolo, allora ne deve produrre almeno

1000 unit`a.

Trovare il piano di produzione che massimizza il profitto totale.

Vincoli di alternativa - modello

Variabili:

x 1 , x 2 , x 3 = numero di utilitarie, berline e station–wagon prodotte.

y 1

1 se l’azienda produce utilitarie,

0 altrimenti.

Analogamente si definiscono y 2

, y 3

Modello: (^) 

max 2000 x 1

  • 3000 x 2

  • 4000 x 3

  1. 5 x 1
  • 3 x 2

  • 5 x 3

30 x 1

  • 25 x 2

  • 40 x 3

x 1 ≤ 2000 y 1

1000 y 1 ≤ x 1

x 2 ≤ 2000 y 2

1000 y 2 ≤ x 2

x 3 ≤ 1200 y 3

1000 y 3 ≤ x 3

x 1 , x 2 , x 3 ∈ N

y 1 , y 2 , y 3 ∈ { 0 , 1 }

Distribuzione di lavori - modello

Variabili: t = tempo necessario per eseguire tutti i lavori

xij =

1 se il lavoro i `e eseguito dalla macchina j,

0 altrimenti.

Modello: (^) 

min t

n ∑

i =

tij xij ≤ t per ogni macchina j = 1,... m

m ∑

j=

x ij

= 1 per ogni lavoro i = 1,... n

xij ∈ { 0 , 1 }

Selezione di sottoinsiemi - problemi

Insieme I = { 1 ,... , m}.

Famiglia S 1 ,... , Sn di sottoinsiemi di I , ognuno ha costo (o valore) cj.

Problema di copertura: determinare una sottofamiglia F di costo minimo tale

che ogni elemento di I appartenga ad almeno un sottoinsieme di F.

Problema di partizione: determinare una sottofamiglia F di costo minimo tale

che ogni elemento di I appartenga esattamente ad un sottoinsieme di F.

Problema di riempimento: determinare una sottofamiglia F di valore massimo

tale che ogni elemento di I appartenga ad al pi`u un sottoinsieme di F.

Esempio: I = { 1 , 2 , 3 , 4 , 5 , 6 },

S

1

= { 1 , 3 }, S

2

= { 2 , 4 }, S

3

= { 2 , 5 , 6 }, S

4

= { 5 , 6 }, S

5

copertura: F = {S 1

, S

2

, S

3

} partizione: F = {S 1

, S

2

, S

4

riempimento: F = {S 3

, S

5