11.07.2015 Views

Problemi di Localizzazione - Massimo Paolucci

Problemi di Localizzazione - Massimo Paolucci

Problemi di Localizzazione - Massimo Paolucci

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Modelli decisionali su grafi-<strong>Problemi</strong> <strong>di</strong> <strong>Localizzazione</strong><strong>Massimo</strong> <strong>Paolucci</strong>(paolucci@<strong>di</strong>st.unige.it)DIST – Università <strong>di</strong> GenovaLocation Problems: : modelli ed applicazioni2 Decisioni a me<strong>di</strong>o e lungo termine (pianificazione) Caratteristiche dei modelli:• Orizzonte temporale (mono-periodo, multi-periodo)• Omogeneità dei flussi (single-commo<strong>di</strong>ty, multi-commo<strong>di</strong>ty)• Livelli dei flussi (singolo livello, due livelli) Imprese logistiche e <strong>di</strong> servizi:• Localizzare no<strong>di</strong> logistici (centri <strong>di</strong> produzione, magazzini, centri <strong>di</strong><strong>di</strong>stribuzione)• Dimensionare i flussi logistici (trasporti)• Dimensionare le capacità dei no<strong>di</strong>• Localizzare servizi (ospedali, protezione civile)


Modello singolo prodotto a un livello3 Un livello: costo trasporto a monte ed a valle del sistematrascurabile• Esempio: localizzazione <strong>di</strong> centri <strong>di</strong> <strong>di</strong>stribuzioneV 2V 1siti potenzialipunti <strong>di</strong> domanda• G = (V 1 ∪V 2 , A)• ipotesi: domanda frazionabile, costi lineariModello singolo prodotto a un livello4 Formulazioni• d j , j∈V 2 livello <strong>di</strong> domanda in j(dato)• q i , i∈V 1 capacità del sito i (dato)• u i , i∈V 1 livello <strong>di</strong> attività del sito i(var. decisionale)• s ij , i∈V 1 j∈V 2 quantità <strong>di</strong> prodottoinviata da i a j (var. decisionale)• c ij , i∈V 1 j∈V 2 costo del trasportotra i e j (dato)• f i , i∈V 1 costo della produzione nelsito i (dato)min ∑ ∑ cijsij+ ∑ fu i ii∈V1j∈V2i∈V1∑ sij= uii∈V1j∈V2∑ sij= djj∈V2i∈V1ui≤ qii∈V1sij≥ 0 i∈V 1,j∈V2ui≥ 0 i∈V1• Cosa rappresentano i vincoli?


Modello singolo prodotto a un livello5 Formulazioni• Costo della produzione con set-up (attivazione)f i set-up , g i costo marginale per la produzione nel sito i:⎧fi+ gu i iF(u i i)= ⎨⎩0ui≥ 0ui= 0• y i i∈V 1 var.binaria (1= sito i attivato, 0 = sito i non attivato)• la formulazione si mo<strong>di</strong>fica∑ fiui→ ii∈V1i∈V1∑ ( f y + g u )iiiui≤ qi→ ui≤ yiqii ∈ V1Modello singolo prodotto a un livello6 Formulazioni• Imporre un numero prefissato p <strong>di</strong> no<strong>di</strong> da introdurre:∑ y i = pi∈V 1• Variazione: in<strong>di</strong>viduare tra n possibili località quelle in cui ospitare pcentri <strong>di</strong> smistamento minimizzando la <strong>di</strong>stanza totale• Tutti i no<strong>di</strong> in V possono ospitare i centri• Non è importante la capacità produttiva• Non ci sono costi <strong>di</strong> set-up• ...• Come si può formulare?


Modello singolo prodotto a un livello7 Formulazioni• Capacità minima q i- e massima q i+ <strong>di</strong> un sito: q i- y i ≤ u i ≤ q i+ y i• Costi <strong>di</strong> esercizio lineari a tratti e concavi⎧fi' + g i'uif i ”⎪F i(u i)= ⎨ fi" + g i"uif i ’⎪ ⎩ 0u’ iSi sostituisce i con due no<strong>di</strong> i’ e i”0 ≤ ui≤ u i'ui≥ u i'ui= 0Minimizzando solo uno dei due (quello a costo minore per la u iottima) sarà selezionatoModello multi prodotto a due livelli8 Formulazioni• K prodotti <strong>di</strong>versi ma <strong>di</strong> classe omogenea• V 1 insieme impianti produttivi• V 2 insieme centri <strong>di</strong> <strong>di</strong>stribuzione potenziali (<strong>di</strong> cui attivarne p)• V 3 insieme dei punti <strong>di</strong> domanda• p k i , i∈V 1 k∈K massima quantità <strong>di</strong> k realizzabile in i (cap. impianto)• d k r , r∈V 3 k∈K livello <strong>di</strong> domanda <strong>di</strong> k in r non frazionabile• q j- , q j+ j∈V 2 capacità min e max del centro j• c k ijr , i∈V 1 j∈V 2 r∈V 3 k∈K costo trasporto <strong>di</strong> k da i a r via j• f j , g j j∈V 2 costi fissi e marginali del centro j (dato)• z j , j∈V 2 var. binaria associata alla selezione del centro j• y jr , j∈V 2 r∈V 3 var. binaria associata alla assegnazione <strong>di</strong> r a j• s k ijr , i∈V 1 j∈V 2 r∈V 3 k∈K quantità <strong>di</strong> k inviata da i a r via j


Modello multi prodotto a due livelli⎛⎞minckskf z g dk∑ ∑ ∑ ∑ + j j jr yijr ijr ∑ ⎜ + ∑ ∑ ⎟jri∈V1j∈V2r∈V3k∈Kj∈V⎜2 r V3kK⎟⎝ ∈ ∈ ⎠skpk∑ ∑ ≤ijr ij∈V2r∈V3skdk∑ = r y jr j ∈ V2,r∈ V3,k∈ Kijri∈V1∑ y jr = 1 r ∈ V3j∈V2q−zdkj j ≤r y jr ≤ q+∑ ∑z j j ∈ Vj2r∈V3k∈K∑ z j = pj∈V2z j ∈ B j ∈ V2y jr ∈ B j ∈ V2,r∈ V3i ∈ V1,k∈ Ksk≥ 0 i ∈ V1,j ∈ V2,r∈ V3,k∈ Kijrcapacità impiantisod<strong>di</strong>sf. domandafornitura non frazionabilecapacità centrinumero centri da attivare9<strong>Localizzazione</strong>: centri e me<strong>di</strong>ane10 I problemi <strong>di</strong> localizzazione possono essere modellaticome problemi <strong>di</strong> centro e <strong>di</strong> me<strong>di</strong>ana su grafi:• <strong>Problemi</strong> <strong>di</strong> me<strong>di</strong>ana (minisum)minimizzare la me<strong>di</strong>a delle <strong>di</strong>stanze tra gli utenti ed il servizio<strong>di</strong> afferenza• <strong>Problemi</strong> <strong>di</strong> centro (minimax)minimizzare la <strong>di</strong>stanza tra utente e servizio nel casopeggiore (per il cliente più lontano) I problemi <strong>di</strong> centro sono spesso utili nel settore dei servizipubblici


<strong>Localizzazione</strong>: centri e me<strong>di</strong>ane11 I punti <strong>di</strong> servizio possono essere localizzati sui no<strong>di</strong>(problemi <strong>di</strong> vertice) o in un punto qualsiasi degli archi edei no<strong>di</strong> (problemi assoluti) Definizioni• è dato un grafo G=(V,E) generico• è nota d(v i ,v j ) <strong>di</strong>stanza tra due vertici per ogni coppia <strong>di</strong> vertici• è noto w(v i ) peso <strong>di</strong> un vertice per ogni vertice• si in<strong>di</strong>ca con d(x,y) la <strong>di</strong>stanza tra due punti generici del grafo1-me<strong>di</strong>ana (assoluta) <strong>di</strong> G ogni punto x <strong>di</strong> G per cui è minima lafunzionef(x) =1V∑d(x,v) ⋅ w(v )vi∈Vii<strong>Localizzazione</strong>: centri e me<strong>di</strong>ane12 Teorema (Hakimi)In un grafo connesso non orientato G esiste almeno unvertice v che è anche 1-me<strong>di</strong>ana Definizioni• dato un grafo G=(V,E) generico e le grandezze prima definite si<strong>di</strong>ceeccentricità <strong>di</strong> un punto x la <strong>di</strong>stanza pesata <strong>di</strong> x dal verticepiù lontanoe(x)= maxv i ∈V{ d(x,v )w(v ) }1-centro (assoluto) <strong>di</strong> G il punto x avente eccentricità minimaii


<strong>Localizzazione</strong>: centri e me<strong>di</strong>ane13 Definizioni• dato un grafo G=(V,E) generico e le grandezze prima definite• dato un insieme <strong>di</strong> p punti <strong>di</strong> G=(V,E), X p ={x 1 , x 2 ,...,x p } ed un verticev, si <strong>di</strong>ce <strong>di</strong>stanza <strong>di</strong> v da X p la quantitàd(v,Xp) = min d(v,xi)xi ∈ Xp• Nota: se v è un cliente si assume che si serva dal punto più vicinop-me<strong>di</strong>ana (assoluta) <strong>di</strong> G ogni insieme <strong>di</strong> p punti X p <strong>di</strong> G percui è minima la funzionef(Xp)= ∑ d(Xp,vi) ⋅ w(vi)vi∈V<strong>Localizzazione</strong>: centri e me<strong>di</strong>ane14 Teorema (Hakimi)In un grafo non orientato e connesso G=(V,E) esiste almenoun insieme <strong>di</strong> p vertici che costituisce una p-me<strong>di</strong>anaassoluta• Difficoltà• Determinare la 1-me<strong>di</strong>ana in grafi connessi e non orientati èsemplice (si sceglie il minimo delle somme pesate delle righedella matrice delle <strong>di</strong>stanze tra ogni coppia <strong>di</strong> no<strong>di</strong>)• Determinare la p-me<strong>di</strong>ana su un grafo qualunque è unproblema NP-hard• Nel caso <strong>di</strong> alberi è un problema polinomiale


<strong>Localizzazione</strong>: centri e me<strong>di</strong>ane15 Definizioni• dato un grafo G=(V,E) generico e le grandezze prima definite• dato un insieme <strong>di</strong> p punti <strong>di</strong> G=(V,E), X p ={x 1 , x 2 ,...,x p }p-centro (assoluto) <strong>di</strong> G=(V,E) ogni insieme <strong>di</strong> p punti X p <strong>di</strong> Gper cui è minima la funzioner(Xp) = max d(Xp,vi)⋅ w(vi)vi∈V• Difficoltà• Determinare il 1-centro vertice in grafi connessi è semplice (sisceglie il minimo del massimo delle <strong>di</strong>stanze pesate estratto daogni riga della matrice delle <strong>di</strong>stanze tra ogni coppia <strong>di</strong> no<strong>di</strong>)• In grafi non orientati connessi il 1-centro si può determinare conun metodo grafico• Determinare il p-centro <strong>di</strong> un grafo qualunque è un problemaNP-hard<strong>Localizzazione</strong>: centri e me<strong>di</strong>ane16 Esempio• Ipotesi: pesi unitariv 464v 5v 3v 1 82 26 v 2f(v1)=f(v2)=f(v3)=f(v4)=f(v5)=24 ⎡026⎢⎢830⇐⎢8⎢32 ⎢620 ⎢⎣280210682012861012042⎤e(v1) =6⎥e(v2) =⎥8⎥⇒e(v3) =⎥4⎥e(v4) =0⎥⎦ e(v5) =810121281-me<strong>di</strong>ana1-centri Vertice


<strong>Localizzazione</strong>: centri e me<strong>di</strong>ane17 Il metodo grafico <strong>di</strong> Hakimi per il 1-centro assoluto• Si considera un arco alla volta• Per ciascun arco (v i ,v j ) determina il punto x ij <strong>di</strong> eccentricità minima• Quin<strong>di</strong> tra i vari punti x ij determina il punto <strong>di</strong> eccentricità minima inassolutov h w(v h )d(v i ,v h ) d(v j ,v h )v ityl(v i ,v h )l-tv jd(y,v h ) = min { d(v i ,v h ) + t, d(v j ,v h ) + l(v i ,v h ) - t }• Si tracciano gli andamenti delle d(y,v h )w(v h ) al variare <strong>di</strong> y in (v i ,v h )rispetto ad ogni nodo v h quin<strong>di</strong> si determina l’inviluppo massimo <strong>di</strong>tali grafici• Il punto x ij <strong>di</strong> eccentricità minima per l’arco corrisponde ad uno deiminimi dell’inviluppo massimo<strong>Localizzazione</strong>: centri e me<strong>di</strong>ane18 Il metodo grafico <strong>di</strong> Hakimi per il 1-centro assoluto• Esempi <strong>di</strong> andamenti della <strong>di</strong>stanza <strong>di</strong> y in un arco dai verticid (y,v h ) d (y,v h ) d (y,v h )v iy v j v v ji y v v ji y• Sovrapponendo i grafici si determina l’inviluppo massimo ed il suominimod (y,v h )max d(y,vh) ⋅ w(vh)v h ∈Vv ix ijyv j


<strong>Localizzazione</strong>: centri e me<strong>di</strong>ane19 Tecniche euristiche per la determinazione della p-me<strong>di</strong>ana (ottimi locali)Approccio 11. Scegliere arbitrariamente p vertici u 1 ,...,u p2. Assegnare ogni altro vertice ad uno dei p vertici scelti in base allaminima <strong>di</strong>stanza. Sia V i l’insieme dei vertici assegnati ad u i .Calcolare la somma S delle <strong>di</strong>stanze3. Per ogni V i cercare la me<strong>di</strong>ana z i e sostituirla a u i . Calcolare lanuova somma S’ delle <strong>di</strong>stanze. Se S’TV 1siti potenzialijt ij ≤Ta ij =1 it kj >T a kj =0kV 2punti <strong>di</strong> domanda


<strong>Localizzazione</strong>: modelli <strong>di</strong> copertura21 Si utilizza il modello del Set-Covering• Variabili decisionali:‣ y j , j∈V 1 vettore d’incidenza, attivazione siti y j ∈B‣ z i , i∈V 2 cliente non servito z j ∈B (slack binaria)min ∑ fjyj+ ∑ pizij∈V1 i∈V2∑ aijyj+ zi≥ 1j∈V1yj∈Bj∈V1zi∈Bi∈V2i∈V2• E’ un problema <strong>di</strong> set-covering (NP-hard)<strong>Localizzazione</strong>: modelli <strong>di</strong> copertura22 Si utilizza il modello del Set-Covering• Se i costi <strong>di</strong> attivazione dei siti fossero uguali tra loro ci si puòporre il problema <strong>di</strong> stabilire il numero minimo <strong>di</strong> siti da attivare perservire i clienti nel tempo minimo complessivo• x ij , i∈V 2 , j∈V 1 x ij ∈B cliente i servito dal sito j• M costante sufficientemente grande (big-M)min ∑ Myj+ ∑ ∑ tijxijj∈V1 i∈V2 j∈V1∑ aijxij≥ 1 i∈V2j∈V1xij≤ yji∈V2,j∈ V1yj∈Bj∈V1xij∈Bi∈V2,j∈ V1

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!