Upload
haphuc
View
248
Download
0
Embed Size (px)
Citation preview
Introduzione alla ricerca operativa
Problemi e modelli
Giandomenico Mastroeni
TFAAnno Accademico 2012-13
Giandomenico Mastroeni Introduzione alla ricerca operativa
La metodologia della matematica applicata
Problema reale
De�nizione del modello matematico
Algoritmo risolutivo
Analisi dei risultati
Giandomenico Mastroeni Introduzione alla ricerca operativa
Il problema reale
Reperimento dei dati
Il problema reale, deve essere caratterizzato dalla possibilita' di reperiredati su�cientemente corretti ed esaustivi per la formulazione di unopportuno modello matematico.
De�nizione degli obbiettivi
Ad esempio,la massimizzazione dei pro�tti in un problema di produzione
De�nizione dei vincoli
La quantita' di risorse a disposizione
Giandomenico Mastroeni Introduzione alla ricerca operativa
Modelli matematici
Modelli deterministici
I dati del problema sono valori certi
Modelli probabilistici
I dati sono caratterizzati da una distribuzione di probabilita'
Il modello matematico viene formulato a partire da un insieme di ipotesisul problema reale che devono essere adeguatamente motivate. Taliipotesi costituiscono i limiti del modello studiato e devono essere sempretenute in considerazione, in particolar modo nell'analisi dei risultatiottenuti.
Giandomenico Mastroeni Introduzione alla ricerca operativa
Modelli matematici
Problemi di ottimizzazione vincolata
Determinazione del massimo o del minimo di una funzione
min(max) f (x) x ∈ R
Sistemi di equazioni lineari e non lineari
Modelli basati sui gra�
Strumenti matematici
Calcolo di�erenziale
Teoria dei gra�
Algebra delle matrici
Giandomenico Mastroeni Introduzione alla ricerca operativa
Algoritmo risolutivo
Un algoritmo e' una sequenza di istruzioni univocamentedeterminate che portino in un tempo limitato ad una soluzione delproblema o ad una sua opportuna approssimazione.
Un algoritmo determina una particolare soluzione e nonnecessariamente tutto l'insieme delle possibili soluzioni.
Gli algoritmi piu' comuni sono quelli iterativi mediante i quali vienegenerata una successione di punti convergente ad una soluzioneottimale del problema.
Giandomenico Mastroeni Introduzione alla ricerca operativa
Analisi dei risultati
La ricaduta dei risultati ottenuti sulla formulazione del problema reale(feedback) e' di fondamentale importanza: riesaminando la formulazionedel problema e confrontandola con il modello si possono evidenziareeventuali incongruenze o lacune sui dati utilizzati.Un ulteriore esame della validita' del modello puo' essere e�ettuatovariando i parametri di input e controllando se l'output e' compatibilecon tali variazioni: tale esame e' particolarmente e�cace quando venganoassegnati ai parametri valori prossimi agli estremi del loro intervallo divariazione.
Giandomenico Mastroeni Introduzione alla ricerca operativa
Problemi di ottimizzazione
Nella sua forma piu' generale un problema di ottimizzazione scalare in Rn
consiste nel determinare un punto x ∈ R ⊆ X che renda minimo (omassimo) il valore di una funzione f : X → R, ove X e' un opportunospazio. Tale problema viene indicato con la notazione
minx∈R
(max) f (x). (1)
Dalla relazionemaxx∈R
f (x) = −minx∈R
(−f (x)),
segue che il problema della ricerca del massimo di una funzione puo'essere ricondotto a quello della ricerca del minimo.
Osservazione
Se R = X , il problema (1) si dice non vincolato. Se X e' uno spaziotopologico e R e' un insieme aperto, si conviene considerare il problema(1) non vincolato.
Giandomenico Mastroeni Introduzione alla ricerca operativa
De�nizione
(i) x̄ ∈ R e' detto punto di minimo globale se
f (x̄) ≤ f (x), ∀x ∈ R.
(ii) x̄ ∈ R e' detto punto di minimo locale se
f (x̄) ≤ f (x), ∀x ∈ R ∩ V (x̄),
ove V (x̄) e' un intorno di x̄ .
Osservazione
Si noti che la de�nizione di punto di minimo locale richiede che sullospazio X sia de�nita una topologia.
Giandomenico Mastroeni Introduzione alla ricerca operativa
Problemi di programmazione matematica
Un problema di programmazione matematica e' un problema diottimizzazione nel quale alcuni vincoli sono espressi mediante funzioni,ossia, l'insieme R e' de�nito nella forma
R := {x ∈ X : gi (x) ≤ 0, i = 1, .., p, hj(x) = 0, j = 1, ..,m},
ove g : X −→ Rp, h : X −→ Rm. Useremo la notazione:
g(x) := (g1(x), .., gp(x)), h(x) := (h1(x), .., hm(x)).
De�nizione
Si de�nisce problema di programmazione matematica, il problema:
minx∈R
f (x) (2)
ove R := {x ∈ X : g(x) ≤ 0, h(x) = 0, }.
La funzione f viene anche detta funzione obbiettivo mentre g ed h sonodette funzioni vincolari.
Giandomenico Mastroeni Introduzione alla ricerca operativa
A seconda delle proprieta' della funzione obbiettivo, delle funzionivincolari e dell'insieme X , si distiguono varie classi di problemi diprogrammazione matematica.Nel caso in cui le funzioni siano lineari ed X = Rn, (2) e' detto problemadi programmazione lineare le cui formulazioni standard sono della forma:
min 〈c, x〉Ax = b, (Ax ≤ b)
x ≥ 0
ove c ∈ Rn, A ∈ Rm×n, b ∈ Rm.
Osservazione
Mediante opportune trasformazioni, e' possibile ricondursi ad unaqualsiasi delle precedenti formulazioni.
Giandomenico Mastroeni Introduzione alla ricerca operativa
Un problema di programmazione dei trasporti
Siano dati un insieme A1,A2, ..,Am di origini nelle quali e' disponibile laquantita' a1, a2, .., am di un materiale omogeneo che si desideratrasportare nelle destinazioni B1,B2, ..,Bn che hanno capacita' diricezione di una quantita' pari a b1, b2, .., bn, rispettivamente.
Problema
Detto cij il costo unitario di trasporto dall'origine Ai alla destinazione Bj ,i = 1, ..,m, j = 1, .., n, si intende formulare un problema diprogrammazione lineare per la minimizzazione del costo totale ditrasporto del materiale disponibile nelle origini Ai alle destinazioni Bj .
Giandomenico Mastroeni Introduzione alla ricerca operativa
Facciamo dapprima l'ulteriore ipotesi:
m∑i=1
ai =n∑
j=1
bj (A1)
(Vedremo in seguito che l'ipotesi (A1) non risultera' essere restrittiva).Dette xij le variabili che rappresentano la quantita' di materiale datrasportare dall'origine Ai alla destinazione Bj , i = 1, ..,m, j = 1, .., n, ilproblema di programmazione dei trasporti puo' essere formulato nelmodo seguente:
min
m∑i=1
n∑j=1
cijxij
n∑j=1
xij = ai , i = 1, ..,m
m∑i=1
xij = bj , j = 1, .., n
xij ≥ 0, i = 1, ..,m, j = 1, .., n
(3)
Giandomenico Mastroeni Introduzione alla ricerca operativa
Nel caso in cui la (A1) non fosse veri�cata e valesse la relazione:
m∑i=1
ai <
n∑j=1
bj ,
e' possibile ricondursi alla precedente formulazione introducendo unaorigine �ttizia Am+1 avente disponibilita' am+1 :=
∑n
j=1bj −
∑m
i=1ai , e
de�nendo cm+1,j := 0, j = 1, .., n.In modo analogo, se valesse la relazione:
m∑i=1
ai >
n∑j=1
bj ,
e' possibile ricondursi alla precedente formulazione introducendo unadestinazione �ttizia Bn+1 avente capacita' di ricezione pari abn+1 :=
∑m
i=1ai −
∑n
j=1bj , e de�nendo ci,n+1 := 0, i = 1, ..,m.
Giandomenico Mastroeni Introduzione alla ricerca operativa
Alternativamente, se valesse la relazione:
m∑i=1
ai <
n∑j=1
bj ,
volendo garantire che tutto il materiale presente nelle origini vengatrasferito nelle destinazioni (senza che queste vengano saturate), ilproblema di programmazione dei trasporti puo' essere formulato nelmodo seguente:
min
m∑i=1
n∑j=1
cijxij
n∑j=1
xij = ai , i = 1, ..,m
m∑i=1
xij ≤ bj , j = 1, .., n
xij ≥ 0, i = 1, ..,m, j = 1, .., n
(4)
Giandomenico Mastroeni Introduzione alla ricerca operativa
Analogamente, se valesse la relazione:
m∑i=1
ai >
n∑j=1
bj ,
volendo garantire che il materiale presente nelle origini venga trasferitonelle destinazioni in modo che queste vengano saturate, il problema diprogrammazione dei trasporti puo' essere formulato nel modo seguente:
min
m∑i=1
n∑j=1
cijxij
n∑j=1
xij ≤ ai , i = 1, ..,m
m∑i=1
xij = bj , j = 1, .., n
xij ≥ 0, i = 1, ..,m, j = 1, .., n
(5)
Giandomenico Mastroeni Introduzione alla ricerca operativa
Il problema della dieta
Si consideri un insieme C1,C2, ..,Cn di n cibi nei quali sono presenti msostanze nutritive S1, S2, ..,Sm, dei quali sono noti i seguenti dati:
il costo cj del cibo Cj , j = 1, .., n;
la quantita' aij di sostanza Si presente in un'unita' di cibo Cj ,i = 1, ..,m, j = 1, .., n.
bi la quantita' minima di sostanza Si richiesta dalla dieta,i = 1, ..,m.
Si vuole formulare un problema di programmazione lineare perdeterminare una dieta di minimo costo che soddis� l'apportonutritivo richiesto.
Dette xj , j = 1, .., n le variabili che rappresentano la quantita' di cibo Cj
presente nella dieta, il problema puo' essere formulato nel modo seguente:
min
n∑j=1
cjxj s.t.
n∑j=1
aijxj ≥ bi , i = 1, ..,m xj ≥ 0, j = 1, .., n
Giandomenico Mastroeni Introduzione alla ricerca operativa
Un problema di produzione
Si vogliono fabbricare n prodotti P1,P2, ..,Pn, avendo a disposizione mmaterie prime M1,M2, ..,Mm, dei quali sono noti i seguenti dati:
il pro�tto unitario cj relativo alla vendita' del prodotto Pj , j = 1, .., n;
la quantita' aij di materia prima Mi necessaria per fabbricareun'unita' di prodotto Pj , i = 1, ..,m, j = 1, .., n.
la quantita' bi di materia prima Mi di cui si dispone, i = 1, ..,m.
Problema
Si vuole formulare un problema di programmazione lineare perdeterminare un piano di produzione che massimizzi il pro�tto ottenuto.
Giandomenico Mastroeni Introduzione alla ricerca operativa
Dette xj , j = 1, .., n le variabili che rappresentano la quantita' di prodottoPj che conviene fabbricare, si ha la seguente:
Formulazione
max
n∑j=1
cjxj
n∑j=1
aijxj ≤ bi , i = 1, ..,m
xj ≥ 0, j = 1, .., n
(6)
De�nendo
c := (c1, .., cn), x := (x1, .., xn)T , A := [aij ] i=1,..,mj=1,..,n
, b := (b1, .., bm)T ,
il problema viene formulato nella forma compatta:
max 〈c, x〉Ax ≤ b,x ≥ 0, x ∈ Rn
(7)
Giandomenico Mastroeni Introduzione alla ricerca operativa
Reti sociali
Una rete sociale identi�ca la presenza di una relazione tra diverseentita' sociali, dette attori;
Gli attori non sono necessariamente singole persone ma possonoessere gruppi di persone, enti, citta', nazioni, etc.
Le relazioni possono essere di tipo emozionale, formale, biologico(amicizia, autorita', discendenza) oppure possono esprimereconnessioni �siche (una strada, un ponte) o trasferimenti di risorse.
Giandomenico Mastroeni Introduzione alla ricerca operativa
Rappresentazione dei dati di una rete sociale
Mediante un grafoSociometricaAlgebrica
Esempio
Sia N = {1, 2, 3, 4} l'insieme di 4 bambini di cui si considera la relazionedi amicizia.
Rappresentazione gra�ca
Giandomenico Mastroeni Introduzione alla ricerca operativa
Rappresentazione sociometrica
X :=
0 1 0 11 0 0 10 0 0 11 1 1 0
Rappresentazione algebrica
xij = 1 identi�ca la presenza di una relazione tra il bambino i e ilbambino j .
x12 = 1, x14 = 1, x24 = 1, x34 = 1
Giandomenico Mastroeni Introduzione alla ricerca operativa