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


Esercizi di Programmazione Lineare: Applicazioni e Risoluzione, Dispense di Ricerca Operativa

Sono le dispense del corso di metodi di ottimizzazione del 2016-2017

Tipologia: Dispense

2017/2018

Caricato il 08/02/2018

Utente sconosciuto
Utente sconosciuto 🇮🇹

1 / 212

Toggle sidebar

Questa pagina non è visibile nell’anteprima

Non perderti parti importanti!

bg1
Capitolo 1
Introduzione
1.1 Modelli Matematici
Il termine modello indica una struttura appositamente costruita per eviden-
ziare le caratteristiche di oggetti reali. Alcune volte i modelli possono essere
concreti (come ad esempio i modelli che rappresentano i prototipi di aerei,
navi oppure automobili), ma spesso sono di tipo astratto, come i cosiddetti
modelli matematici che usano appunto il simbolismo matematico per eviden-
ziare determinate caratteristiche di oggetti veri. In poche parole i modelli
matematici non sono altro che insiemi di relazioni che descrivono, in modo
semplificato, fenomeni reali. L’interesse nella modellistica deriva dal fatto
che essa consente di studiare l’evoluzione di tali fenomeni senza che questo
accada realmente. Si pensi per esempio alle simulazioni matematiche degli
effetti di eventi catastrofici come i terremoti in zone abitate, in grado di for-
nire informazioni sulle loro conseguenze che ovviamente non potrebbero mai
essere note se non dopo tale evento (e di conseguenza del tutto inutili). I
campi di applicazione dei modelli matematici sono attualmente i pi`u svariati:
esempi concreti sono i modelli che descrivono la dinamica delle popolazioni,
oppure la diffusione di epidemie oppure lo studio dell’inquinamento in de-
terminati territori. Nei capitoli seguenti saranno analizzate le propriet`a dei
modelli matematici di ottimizzazione e saranno descritti alcuni metodi nu-
merici per determinarne la soluzione.
I modelli matematici possono essere di due tipi:
1. Modelli stocastici: quando descrivono problemi influenzati da eventi
casuali (ad esempio il modello matematico della teoria delle code, in
1
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
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b
pf3c
pf3d
pf3e
pf3f
pf40
pf41
pf42
pf43
pf44
pf45
pf46
pf47
pf48
pf49
pf4a
pf4b
pf4c
pf4d
pf4e
pf4f
pf50
pf51
pf52
pf53
pf54
pf55
pf56
pf57
pf58
pf59
pf5a
pf5b
pf5c
pf5d
pf5e
pf5f
pf60
pf61
pf62
pf63
pf64

Anteprima parziale del testo

Scarica Esercizi di Programmazione Lineare: Applicazioni e Risoluzione e più Dispense in PDF di Ricerca Operativa solo su Docsity!

Capitolo 1

Introduzione

1.1 Modelli Matematici

Il termine modello indica una struttura appositamente costruita per eviden- ziare le caratteristiche di oggetti reali. Alcune volte i modelli possono essere concreti (come ad esempio i modelli che rappresentano i prototipi di aerei, navi oppure automobili), ma spesso sono di tipo astratto, come i cosiddetti modelli matematici che usano appunto il simbolismo matematico per eviden- ziare determinate caratteristiche di oggetti veri. In poche parole i modelli matematici non sono altro che insiemi di relazioni che descrivono, in modo semplificato, fenomeni reali. L’interesse nella modellistica deriva dal fatto che essa consente di studiare l’evoluzione di tali fenomeni senza che questo accada realmente. Si pensi per esempio alle simulazioni matematiche degli effetti di eventi catastrofici come i terremoti in zone abitate, in grado di for- nire informazioni sulle loro conseguenze che ovviamente non potrebbero mai essere note se non dopo tale evento (e di conseguenza del tutto inutili). I campi di applicazione dei modelli matematici sono attualmente i piu svariati: esempi concreti sono i modelli che descrivono la dinamica delle popolazioni, oppure la diffusione di epidemie oppure lo studio dell’inquinamento in de- terminati territori. Nei capitoli seguenti saranno analizzate le proprieta dei modelli matematici di ottimizzazione e saranno descritti alcuni metodi nu- merici per determinarne la soluzione. I modelli matematici possono essere di due tipi:

  1. Modelli stocastici: quando descrivono problemi influenzati da eventi casuali (ad esempio il modello matematico della teoria delle code, in

cui il tempo di servizio di uno sportello `e di tipo casuale);

  1. Modelli deterministici: quando descrivono relazioni esatte tra grandez- ze.

Una seconda suddivisione riguarda la validit`a dei modelli dal punto di vista temporale, infatti i modelli matematici possono essere:

  1. Modelli statici: se le relazioni tra le grandezze restano invariate nel tempo;
  2. Modelli dinamici: se le relazioni tra le grandezze dipendono dal tempo.

Un’ultimo tipo di classificazione `e inerente la tipologia di relazioni matema- tiche tra grandezze:

  1. Modelli lineari: se le relazioni tra le grandezze sono descritte da equa- zioni/disequazioni di tipo lineare;
  2. Modelli non lineari: se almeno una delle relazioni tra le grandezze non `e di tipo lineare.

L’approccio modellistico di un problema reale viene realizzato attraverso diverse fasi:

  1. Analisi del problema: Consiste nell’analisi della struttura del problema con lo scopo di determinare l’obiettivo da raggiungere e le relazioni logico-funzionali;
  2. Costruzione del modello: Si descrivono in termini matematici le prin- cipali caratteristiche del problema e si traducono le relazioni tra le grandezze del problema;
  3. Analisi del modello: Si deducono analiticamente le proprieta mate- matiche del modello (esistenza, unicita della soluzione, stabilit`a della soluzione e altre);
  4. Soluzione numerica: Si desinisce un algoritmo per determinare (anche via software) la soluzione del problema;
  5. Validazione dei risultati: Si verifica la congruenza dei risultati numerici rispetto ai dati sperimentali di cui si `e in possesso. Nel caso in cui i dati siano discordanti allora si effettua un raffinamento del modello e si ripetono i passi precedenti.

In questo caso l’identificazione e molto semplice in quanto dobbiamo de- terminare le quantita giornaliere di ciascun alimento, quindi definiamo le seguenti grandezze: xj = quantita giornaliera del j−esimo alimento, per j = 1,... , n. Il passo successivoe quello di determinare l’obiettivo del modello ovvero de- finire la funzione che descrive lo scopo del problema e che prende il nome appunto di funzione obiettivo.

II Passo: Definire la funzione obiettivo

L’obiettivo e la minimizzazione del costo giornaliero della dieta noti i co- sti unitari cj , ovvero il costo complessivo di tutti gli alimenti. La quantita x 1 del primo alimento costa c 1 x 1 , la quantita x 2 del secondo costa c 2 x 2 , cosicche il costo complessivo degli alimenti `e

Z = c 1 x 1 + c 2 x 2 + · · · + cnxn =

∑^ n

j=

cj xj.

L’obiettivo e quello di determinare le quantita xj , j = 1,... , n, in modo tale che venga minimizzato il valore di Z, purche le quantita dell’i−esimo nutriente sia superiore al valore minimo giornaliero bi. Le variabili xj non possono assumere valori arbitrari ma questi devono essere tali da soddisfare una serie di vincoli, ovvero un vincolo per ciascuna sostanza nutriente. E questo porta all’ultima fase nella definizione del modello.

III Passo: Scrivere i vincoli del problema

Come detto i vincoli riguardano esclusivamente le sostanze nutrienti. Biso- gna calcolare la quantita complessiva di ciascuna sostanza nutriente presente in tutti n gli alimenti assunti nelle quantita x 1 , x 2 ,... , xn. Per esempio nella quantita x 1 del primo alimentoe presente a 11 x 1 quantita del primo nutrien- te, a 21 x 1 del secondo e cosı via. Nella quantita x 2 del secondo alimento sono presenti a 12 x 2 quantita del primo nutriente, a 22 x 2 del secondo e cosı via. Volendo determinare la quantita del primo nutriente questa risulta:

a 11 x 1 + a 12 x 2 + · · · + a 1 nxn

che deve soddisfare la seguente disuguaglianza:

a 11 x 1 + a 12 x 2 + · · · + a 1 nxn ≥ b 1

che costituisce il primo vincolo del modello. In generale la necessit`a di soddisfare il fabbisogno dell’i−esimo nutriente definisce un vincolo:

ai 1 x 1 + ai 2 x 2 + · · · + ainxn ≥ bi.

In questo modo definiamo esattamente m vincoli. Al termine di questa fase abbiamo un passo finale che consiste nella formulazione del modello.

IV Passo: Formulazione completa del modello

In definitiva il problema pu`o essere formulato nel seguente modo:

min Z =

∑^ n

j=

cj xj

Soggetto a: ∑^ n

j=

aij xj ≥ bi, i = 1,... , m

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

Supponiamo per esempio di dover decidere la composizione della dieta gior- naliera a base di pasta, carne, verdura e formaggio, tenendo conto che gior- nalmente si devono assumere almeno 70 g. di proteine, almeno 50 g. di grassi ed almeno 250 g. di zuccheri. Nella seguente tabella sono indicati i grammi di nutrienti in ogni 100 grammi di alimento ed i relativi costi.

Pasta Carne Verdura Formaggio Proteine 9. 9 20. 8 2 22 Grassi 1. 2 1. 1 0. 2 26 Zuccheri 75. 3 0 4 0 Costo e/kg 1. 4 12 1. 2 12

Ad esempio un etto di pasta contiene 9.9 grammi di proteine, 1.2 g. di grassi e 75.3 g. di zuccheri. Di consequenza un chilo di pasta contiene 99 grammi

x 2 (≥ 0): la quantita in kg di materiale ferroso B da utilizzare; x 3 (≥ 0): la quantita in kg di materiale ferroso C da utilizzare; x 4 (≥ 0): la quantita in kg di manganese da utilizzare. Abbiamo imposto che le quantita di prodotto acquistate siano dei valori non negativi (vincoli di nonnegativit`a). Esistono poi altri vincoli che dovranno essere rispettati e che descriviamo di seguito. Il numero totale di kg prodotti deve essere 1000: x 1 + x 2 + x 3 + x 4 = 1000.

La quantita di silicio, in kg, presente nel prodotto risultantee data da

  1. 04 x 1 + 0. 01 x 2 + 0. 006 x 3

che deve essere tale da essere compresa nei limiti voluti (cioe deve essere superiore a 32.5 kg su 1000 kg di prodotto finito e inferiore a 55 kg nella stessa quantita di prodotto):

  1. 5 ≤ 0. 04 x 1 + 0. 01 x 2 + 0. 006 x 3 ≤ 55.

Possiamo quindi esprimere la condizione sulla percentuale di silicio mediante i due vincoli lineari

4 x 1 +x 2 +0. 6 x 3 ≥ 3250 4 x 1 +x 2 +0. 6 x 3 ≤ 5500.

Analogamente, per la condizione sulla percentuale di manganese (che deve essere superiore a 4.5 kg su 1000 kg di prodotto) si ottiene

  1. 0045 x 1 + 0. 005 x 2 + 0. 004 x 3 + x 4 ≥ 4. 5

e quindi

  1. 45 x 1 + 0. 5 x 2 + 0. 4 x 3 + 100x 4 ≥ 450.

Infine il costo complessivo del prodotto risultante `e

  1. 025 x 1 + 0. 030 x 2 + 0. 018 x 3 + 10x 4.

Il problema della determinazione di un piano di produzione che minimizza il costo pu`o quindi essere formulato come segue:

min Z = 0. 025 x 1 + 0. 030 x 2 + 0. 018 x 3 + 10x 4

4 x 1 +x 2 +0. 6 x 3 ≥ 3250 4 x 1 +x 2 +0. 6 x 3 ≤ 5500

  1. 45 x 1 +0. 5 x 2 +0. 4 x 3 +100x 4 ≥ 450 x 1 +x 2 +x 3 +x 4 = 1000

xi ≥ 0 , i = 1, 2 , 3 , 4.

Le variabili x 1 , x 2 , x 3 e x 4 corrispondono alle scelte operative che il problema reale richiede di compiere, e ciascun vincolo del modello corrisponde ad una condizione imposta dal problema reale. Determinare i valori delle variabili in modo che i vincoli siano soddisfatti e la funzione obiettivo assuma il minimo valore fornisce il miglior piano di produzione.

Un problema di pianificazione della produzione

Un’industria chimica produce quattro tipi di fertilizzante, la cui lavorazione e affidata a due reparti: produzione e confezionamento. Per ottenere fertiliz- zante pronto per la venditae necessaria la lavorazione in entrambi i reparti. La seguente tabella riporta, per ciascun tipo di fertilizzante, i tempi (in ore) necessari per la lavorazione in ciascun reparto per avere una tonnellata di prodotto pronto per la vendita

Reparto Tipo 1 Tipo 2 Tipo 3 Tipo 4 Produzione 2 1.5 0.5 2. Confezionamento 0.5 0.25 0.25 1

Dopo aver dedotto, da ciascuna tonnellata, il costo del materiale grezzo, una tonnellata di fertilizzante produce i seguenti profitti (in euro per tonnellata):

Tipo 1 Tipo 2 Tipo 3 Tipo 4 Profitto netto 250 230 110 350

Si vuol determinare la quantita di fertilizzante di ciascun tipo da produrre settimanalmente in modo tale da massimizzare il profitto sapendo che il reparto produzione puo lavorare al pi`u 100 ore la settimana mentre il reparto

zaino in modo da non superare un dato peso (o capacit`a) e da massimizzare appunto il valore complessivo degli oggetti selezionati. Si assume che sia

0 < b <

∑^ n

i=

wi,

altrimenti il problema sarebbe banale e che inoltre sia

wi ≤ b, i = 1,... , n

in quanto nessun elemento di peso superiore alla capacita b puo far parte di una soluzione e quindi ogni elemento di peso superiore a b puo essere eliminato da E. Il problema puo essere scritto come un problema di massimo. Possiamo formulare il problema come uno di programmazione lineare introducendo, per ogni oggetto i = 1, 2 ,... , n, una variabile xi ∈ { 0 , 1 }, con il significato che la variabile assume valore 1 se l’elemento i-esimo appartiene al sottoinsieme selezionato, e 0 altrimenti (si decide cioe se inserire o meno l’oggetto). La condizione relativa alla capacita dello zaino diviene

∑^ n

i=

wixi ≤ b

infatti, dato che ciascuna xi puo assumere solo i valori 0 o 1, nella som- ma vengono considerati i pesi dei soli oggetti selezionati. Analogamente, la funzione obiettivo, da massimizzare,e

Z =

∑^ n

i=

cixi

nella funzione obiettivo si somma il valore dei soli oggetti selezionati. La formulazione finale del problema `e la seguente

max Z =

∑^ n

i=

cixi

∑n

i=

wixi ≤ b

xi ∈ { 0 , 1 }.

Un problema di pianificazione regionale

Una comunita agricola, composta da tre cooperative, deve pianificare la pro- duzione agricola per l’intero anno. Il rendimento di ogni cooperativa dipende dalla quantita di terreno disponibile e dalla quantit`a di acqua, come risulta dalla seguente tabella:

Cooperativa Terra disponibile Acqua disponibile (ettari) (migliaia metri cubi) 1 160 400 2 240 600 3 120 175

I raccolti possibili sono barbabietole, cotone e sorgo. Queste coltivazioni differiscono per la quantit`a di acqua di cui necessitano e per il rendimento netto per ettaro, dati riportati nella seguente tabella:

Prodotto Consumo di acqua Guadagno netto (metri-cubi/ettaro) (euro/ettaro) Barbabietole 3 1000 Cotone 2 750 Sorgo 1 250

Si deve considerare inoltre che per ciascuna coltivazione la comunita ha fissato la massima quantita di terreno coltivabile che si puo usare: 240 ettari per le barbabietole, 200 per il cotone e 130 per il sorgo. Inoltree stato stabilito che la percentuale di terreno che ogni cooperativa puo utilizzare per le coltivazioni deve essere la stessa. Ovviamente le quantita da determinare sono le aree di ciascuna delle tre cooperative da destinare alle tre coltivazioni, quindi definiamo nove variabili:

Coltivazione Cooperativa 1 2 3 Barbabietola x 1 x 2 x 3 Cotone x 4 x 5 x 6 Sorgo x 7 x 8 x 9

Ovviamente la funzione da massimizzare e il guadagno totale netto che si ottiene moltiplicando la quantita totale di ettari destinati a ciascun singolo prodotto per il guadagno netto per ettaro:

Z = 1000(x 1 + x 2 + x 3 ) + 750(x 4 + x 5 + x 6 ) + 250(x 7 + x 8 + x 9 ).

si deve decidere la numerosita. Per questo vengono analizzate le necessita legate ai diversi momenti della giornata, considerando che il proprio perso- nale deve essere ripartito in 5 turni di lavoro che coprono l’intero arco delle 24 ore: Turno 1: dalle 6.00 alle 14. Turno 2: dalle 8.00 alle 16. Turno 3: dalle 12.00 alle 20. Turno 4: dalle 16.00 alle 24. Turno 5: dalle 22.00 alle 6.00. Inoltre, per il numero minimo di lavoratori che devono essere presenti nelle diverse fasce orarie della giornata e per i relativi costi di un’unita di personale sono stati individuati i seguenti dati:

Turno Fascia oraria 1 2 3 4 5 Addetti 6.00-8.00 × 40 8.00-10.00 × × 70 10.00-12.00 × × 65 12.00-14.00 × × × 80 14.00-16.00 × × 65 16.00-18.00 × × 70 18.00-20.00 × × 80 20.00-22.00 × 40 22.00-24.00 × × 50 24.00-6.00 × 15 Costo per addetto 170 e 160 e 175 e 180 e 200 e

Il problema e determinare il numero di dipendenti che devono essere assegnati a ciascun turno in modo tale da minimizzare il costo complessivo e superando il numero minimo di persone che devono essere presenti in ciascuna fascia oraria. E evidente in questo caso definire le seguenti variabili:

xj = numero di dipendenti assegnati al turno j, j = 1, 2 , 3 , 4 , 5.

Il vincolo principale per i possibili valori di queste variabili `e che il loro numero presente durante ogni intervallo di tempo deve superare i valori ri- portati nell’ultima colonna. Per esempio dalle 8.00 alle 10.00 sono in servizio i dipendenti del secondo e del terzo turno e la loro somma deve superare 70:

x 1 + x 2 ≥ 70.

La funzione da minimizzare e il costo complessivo giornaliero chee la somma dei costi relativi ai dipendenti assegnati a ciascun turno, quindi:

minimizzare Z = 170x 1 + 160x 2 + 175x 3 + 180x 4 + 200x 5

mentre i vincoli sono:

x 1 ≥ 40 x 1 +x 2 ≥ 70 x 1 +x 2 ≥ 65 x 1 +x 2 +x 3 ≥ 80 x 2 +x 3 ≥ 65 x 3 +x 4 ≥ 70 x 3 +x 4 ≥ 80 x 4 ≥ 40 x 4 +x 5 ≥ 50 x 5 ≥ 15

e inoltre xj ≥ 0 , j = 1,... , 5

ed xj variabile intera per ogni j. Si puo osservare che alcuni vincoli non sono necessari. Infatti i vincoli di nonnegativita per x 1 , x 4 e x 5 sono ridondanti in virtu del primo, dell’ottavo e del decimo vincolo, cosı come anche il terzo vincolo, a causa della presenza del secondo (se la somma tra x 1 e x 2 deve essere maggiore di 70 allora `e chiaro che supera anche 65) ma anche il sesto esattamente per un motivo analogo.

Un problema di pianificazione urbana

Il piano regolatore di una citt`a prevede che in una zona debbano essere co- struiti il nuovo ospedale, il carcere, una caserma dei Vigili del Fuoco, una scuola, un parcheggio ed una chiesa. Sono state individuate 6 zone in cui le strutture potrebbero essere costruite e, per ciascun’opera, sono stati deter- minati i costi per l’eventuale realizzazione in ognuna delle aree. Tali costi (in milioni di euro) sono riassunti nella seguente tabella.

Se la scelta fosse stata quella schematizzata dalla matrice (1.1) allora il costo complessivo sarebbe stato pari a

Z = 7 + 8 + 3.5 + 2.5 + 0.3 + 2 = 15.3 Me.

Obiettivo `e quello di minimizzare la funzione (1.2) al variare di tutte le possibili matrici (1.1). I vincoli sono legati alla richiesta che ogni riga ed in ogni colonna della matrice X ci deve essere solo un elemento uguale a

  1. Questo puo essere tradotto richiedendo che la somma degli elementi di ogni riga e di ogni colonna della matrice X sia uguale a 1 e che gli elementi possano essere uguali a 0 o a 1. Riassumendo il modello matematicoe il seguente

min Z =

∑^6

i=

∑^6

j=

cij xij

soggetto ai vincoli ∑^6

j=

xij = 1, i = 1,... , 6

∑^6

i=

xij = 1, j = 1,... , 6

xij ∈ { 0 , 1 }.

Un esempio sportivo

Sapendo che una squadra di pallavolo dopo 15 partite di campionato ha vinto 20 set e ne ha persi 30, si vuol determinare il massimo dei punti che potrebbe avere ottenuto. Come noto i possibili risultati di una partita di pallavolo sono solo sei: tre per la vittoria (per 3 set a zero, 3 set a 1 oppure 3 set a 2) e tre per la sconfitta (analogamente 0-3, 1-3 oppure 2-3). Il numero di punti assegnati per la vittoria varia da 3 (se il risultato e 3-0 oppure 3-1) o 2 (se il risultatoe 3-2). Per la sconfitta e assegnato solo un punto se il risultatoe 2-3, altrimenti non sono assegnati punti. Poichee noto il numero dei set vinti e persi conviene

definire sei variabili, ognuna delle quali conta un diverso risultato:

x 1 = numero di vittorie per 3 − 0; x 2 = numero di vittorie per 3 − 1; x 3 = numero di vittorie per 3 − 2; x 4 = numero di sconfitte per 0 − 3; x 5 = numero di sconfitte per 1 − 3; x 6 = numero di sconfitte per 2 − 3.

In questo caso il numero di punti `e la funzione

Z = 3x 1 + 3x 2 + 2x 3 + x 6

che deve essere massimizzata. I vincoli sono tre:

  1. Il numero di partite:

x 1 + x 2 + x 3 + x 4 + x 5 + x 6 = 15;

  1. Il numero di set vinti

3 x 1 + 3x 2 + 3x 3 + x 5 + 2x 6 = 20;

  1. Il numero di set persi

x 2 + 2x 3 + 3x 4 + 3x 5 + 3x 6 = 30.

Riassumendo, la formulazione matematica del problema `e la seguente

max Z = 3x 1 + 3x 2 + 2x 3 + x 6 x 1 + x 2 +x 3 +x 4 +x 5 +x 6 = 15 3 x 1 + 3 x 2 +3x 3 +x 5 +2x 6 = 20 x 2 +2x 3 +3x 4 +3x 5 +3x 6 = 30. xi ≥ 0 , i = 1,... , 6 , variabili intere.

Il problema del trasporto

Una ditta di trasporto deve trasferire container vuoti dai propri 6 Magazzini, situati a Verona, Perugia, Roma, Pescara, Taranto e Lamezia, ai principali Porti nazionali (Genova, Venezia, Ancona, Napoli, Bari). Le disponibilit`a di container vuoti ai Magazzini sono le seguenti

con i = 1,... , 6 , e j = 1,... , 5. Per semplicita indichiamo con cij il costo unitario per trasportare un contai- ner dall’i−esmo magazzno al j−esimo porto. La funzione obiettivo, da minimizzare,e pertanto

Z =

∑^6

i=

∑^5

j=

cij xij.

I vincoli derivano dalla richiesta che ovviamente tutti i container presen- ti in ciascun magazzino devono essere inviati ai porti. Pertanto avremo esattamente 6 vincoli di uguaglianza:

x 11 +x 12 +x 13 +x 14 +x 15 = 10 x 21 +x 22 +x 23 +x 24 +x 25 = 12 x 31 +x 32 +x 33 +x 34 +x 35 = 20 x 41 +x 42 +x 43 +x 44 +x 55 = 24 x 51 +x 52 +x 53 +x 54 +x 55 = 18 x 61 +x 62 +x 63 +x 64 +x 65 = 30

Analogamente ogni porto potra ricevere un numero di container pari alla sua capacita. Dobbiamo pertanto aggiungere altri 5 vincoli, uno per ciascun porto: x 11 +x 21 +x 31 +x 41 +x 51 +x 61 = 20 x 12 +x 22 +x 32 +x 42 +x 52 +x 62 = 15 x 13 +x 23 +x 33 +x 43 +x 53 +x 63 = 25 x 14 +x 24 +x 34 +x 44 +x 54 +x 64 = 33 x 15 +x 25 +x 35 +x 45 +x 55 +x 65 = 21

A questi vanno aggiunti i vincoli di interezza per ciascuna variabile xij.

Un esempio di pianificazione edilizia

In un terreno di 8 ettari una societ`a deve costruire alcuni impianti sportivi, ovvero campi di calcio, di calcetto, di tennis, di pallavolo e di pallacanestro. Si vuole massimizzare il numero di impianti da costruire considerando che i relativi costi e le dimensioni sono riassunti nella seguente tabella:

Impianto Dimensioni (in metri) Costo (in Me) Calcio 100 × 50 1. 0 Calcio a 5 40 × 20 0. 4 Tennis 24 × 11 0. 3 Pallavolo 18 × 9 0. 5 Pallacanestro 28 × 15 0. 5

Bisogna inoltre considerare che l’estensione di ciascun impianto va aumenta- ta del 10% per gli spazi da adibire a strade, spogliatoi e spazio libero intorno ai campi, che la societa ha a disposizione 4 milioni di euro, che bisogna co- struire almeno un impianto per ciascuna tipologia e che il numero di campi di pallacanestro e pallavolo non deve superare la meta del numero degli altri impianti. La funzione da massimizzare `e il numero di impianti complessivo pertanto bi- sogna conoscere il numero di ciascun tipo di impianto da costruire. Definiamo pertanto 5 variabili:

x 1 = Numero di campi di calcio da costruire x 2 = Numero di campi di calcio a 5 da costruire x 3 = Numero di campi di tennis da costruire x 4 = Numero di campi di pallavolo da costruire x 5 = Numero di campi di pallacanestro da costruire.

La funzione obiettivo, da massimizzare, `e pertanto la seguente:

Z = x 1 + x 2 + x 3 + x 4 + x 5.

Il primo vincolo riguarda lo spazio a disposizione, bisogna pertanto calcolare i metri quadri richiesti da ciascun impianto sportivo.

Superificie campo di calcio = 100 × 50 m^2 = 5000 +10% = 5050m^2 Superificie campo di calcio a 5 = 40 × 20 m^2 = 800 +10% = 880m^2 Superificie campo di tennis = 24 × 11 m^2 = 464 +10% = 510. 4 m^2 Superificie campo di pallavolo = 18 × 9 m^2 = 162 +10% = 178. 2 m^2 Superificie campo di pallacanestro = 28 × 15 m^2 = 720 +10% = 792m^2.

Pertanto deve risultare:

5050 x 1 + 880x 2 + 510. 4 x 3 + 178. 2 x 4 + 792x 5 ≤ 80000 m^2.