• Non ci sono risultati.

PROBLEMI DI TRASPORTO

N/A
N/A
Protected

Academic year: 2021

Condividi "PROBLEMI DI TRASPORTO"

Copied!
12
0
0

Testo completo

(1)

PROBLEMI DI TRASPORTO

OFFERTA IMPIANTI UTENTI DOMANDA (ai) (origini) (destinazioni) (bi)

c

ij COSTO UNITARIO DI TRASPORTO DA

i

a

j

1 2 3 4 ai

1 5 2 3 9 150

2 7 1 12 4 200

3 8 15 19 2 130

bj 180 120 90 90

PROBLEMA: DETERMINARE LE QUANTITA’ DA INVIARE IN MODO DA MINIMIZZARE IL COSTO TOTALE DI TRASPORTO

x

ij (>=0) quantità di prodotto che dall’origine i raggiunge la destinazione j

1 2 3 4 ai

1 X11 x12 x13 x14 150

2 X21 x22 x23 x24 200

3 X31 x32 x33 x34 130

bj 180 120 90 90

1

1

2

3

2

3

4 (150)

(200)

(130)

(180)

(120)

(90)

(90)

TABELLA DEI DATI

ai = bj

IPOTESI :

TABELLA DELLE

ALLOCAZIONI

(2)

PROBLEMI DI TRASPORTO CON DISEGUAGLIANZE

0 min

=

∑∑

ij

j i

ij j

i ij

i j

ij ij

x

b x

a x

x c

0 min

=

∑∑

ij

j i

ij j

i ij

i j

ij ij

x

b x

a x

x c

OFFERTA TOTALE. DOMANDA TOTALE. OFFERTA TOTALE. DOMANDA TOTALE.

j j i

i b

a

j j i

i b

a

ORIGINE FITTIZIA DESTINAZIONE FITTIZIA

+ =

i i j

j

m b a

a 1 + =

j i i

j

n a b

b 1

VARIABILI DI DIFETTO xm+1,j 0 VARIABILI DI ECCEDENZA xi,n+1 0 +∞

+ j =

cm 1, (PENALI) ci,n+1 =0 (COSTI DI MAGAZZINO)

- L’ORIGINE FITTIZIA SI INTRODUCE CON UNA RIGA FITTIZIA m+1 CON COSTI DI PENALITA’ NELLA TABELLA DEI DATI

- LA DESTINZIONE FITTIZIA SI INTRODUCE CON UNA COLONNA FITTIZIA n+1 CON COSTI DI MAGAZZINO NELLA TABELLA DEI DATI

1

1

m

m+1

n a1

am

+1

am

b1

bn

1

1

m

n+1

a1

am

b1

bn

+1

bn

(3)

MODELLO MATEMATICO DEL PROBLEMA

∑∑

i j

ij ij

x c min

m ORIGINI

=

j

i

ij a

x i=1...m (ai 0)

n DESTINAZIONI

=

i

j

ij b

x j=1...n

(

bj 0

)

0

xij i,j

FORMA MATRICIALE x

c

T

min

cT(1×mn) x(mn×1)

b

Ax =

A((m+n)×mn)

≥ 0

x

b((m+n)×1)

(x x xn x x x n xmn)T

x= 11, 12,..., 1 , 21, 22,..., 2 ,...

( n n mn)

T c c c c c c c

c = 11, 12,..., 1 , 21, 22,..., 2 ,...

(a a am b b bn)T

b= 1, 2,..., , 1, 2,...,

=

n n

n I I

I A

. . .

1 . . . 0 0

.

0 . . . 1 0

0 . . . 0 1

-

IL PROBLEMA DEI TRASPORTI AMMETTE SEMPRE UNA SOLUZIONE OTTIMA FINITA (CASO PARTICOLARE DI P.L.)

-

LA MATRICE A E’ TOTALMENTE UNIMODULARE CIOE’ IL

DETERMINANTE DI OGNI SUA SOTTOMATRICE QUADRATA

E’ –1, 0, 1.

(4)

PROPRIETA’ DELLA MATRICE A

LEMMA:NEL PROBLEMA DEI TRASPORTI IL RANGO DI A è (n+m-1)

Dim.: Essendo le righe linearmente dipendenti r(A)n+m1. Tralasciando l’ultima riga di A e scegliendo le colonne n, 2n…n+1,…n-1, si ha

(

1 2 11, 12 1, 1

)

' = a n,a n,...,amn,a ,a ,...a n

A

1 )

( )

(A' =r A = n+mr

LEMMA: LA MATRICE A E’ TOTALMENTE UNIMODULARE a) In Ak esiste una colonna con elementi tutti nulli per cui Ak =0

b) Tutte le colonne di Ak hanno due elementi uguali ad 1 e gli altri tutti nulli. Sommando le righe dei vincoli origine e quelle dei vincoli destinazione si hanno due righe di tutti 1 Ak =0

c) Esiste una o più colonne con un solo elemento uguale ad 1 per cui

1 1

±

= k

k A

A

TEOREMA: Se ai, 1im e bj, 1in sono intere allora le soluzioni di base del PROBLEMA DEI TRASPORTI sono intere

=0

xG b

A b A A x

S T S S

S

~

~

~ ˆ~

~ 1

=

=





=

















=

−1 '

0

1 . . 0 0 0 . . 0 0

. . . . . 0 . . 0 0

0 . 0 1 0 0 . . 0 0

0 . 0 0 1 1 . . 0 0

. . . . . . . . . .

0 . . 0 0 0 . . 1 0

1 . . 1 1 0 . . 0 1

n m

I F A I

(5)

COROLLARIO: il problema dei trasporti può essere risolto con l’algoritmo del simplesso, anche nel caso di variabilli intere.

Soluzione del problema dei trasporti con l’algoritmo del simplesso:

1. Determinazione di una soluzione ammissibile di base di partenza 2. Determinazione dei costi ridotti

3. Cambio base

La struttura particolare della matrice dei coefficienti permette di eseguire queste operazioni in modo efficiente.

(6)

METODI PER LA DETERMINAZIONE DELLA SOLUZIONE INIZIALE

1 1

)

(A =n+m m+n

r VARIABILI DI BASE

a) SCELTA DI UNA POSIZIONE (i,j)

b) CANCELLAZIONE DI UNA RIGA i (O DELLA COLONNA j) in seguito a saturazione del relativo vincolo

c) MODIFICA DELLA COLONNA j (O DELLA RIGA i) non saturata IL PROCEDIMENTO E’ RIPETUTO m+n-1 VOLTE

1. METODO NORD-OVEST

LA POSIZIONE (i,j) SCELTA E’ QUELLA IN ALTO A SINISTRA NELLA TABELLA CORRENTE

2. METODO MINIMI COSTI

LA POSIZIONE (i,j) SCELTA E’ QUELLA (O UNA DI QUELLE) IN CUI IL COSTO E’ DI VOLTA IN VOLTA MINIMO PER L’INTERA TABELLA 3. METODO VOGEL (maximum regret)

IN CORRISPONDENZA AD OGNI VINCOLO (riga e colonna) SI DETERMINANO I VALORI ASSOLUTI DEGLI SCARTI TRA I DUE COSTI MIGLIORI. SIANO TALI SCARTIpi(i=1,2,...m) e aj(j =1,2,...n). SI SELEZIONA IL VINCOLO (riga o colonna) AVENTE LO SCARTO MASSIMO. LA POSIZIONE (i,j) E’ QUELLA RELATIVA AL COSTO MINIMO DELLA RIGA O COLONNA COSI’ SELEZIONATA.

DEGENERAZIONE: SATURAZIONE CONTEMPORANEA DI UNA RIGA ED UNA COLONNA

SOLUZIONE DI “BASE” DEGENERE

VG MC NO

NO MC VG

valore della funzione obiettivo

Tempi di calcolo

(7)

DEGENERAZIONE (riga e colonna si saturano contemporaneamente)

1 2 3

1 20 30 50

2 40 40

20 30 40

VI SONO MENO ALLOCAZIONI DI QUELLE PREVISTE (m+n-1).

UN SOTTOINSIEME DELLE DISPONIBILITA’ E’ UGUALE AD UN SOTTOINSIEME DELLE RICHIESTE

METODO DELLE PERTURBAZIONI

0 ε

0 ε

LA VARIABILE DI BASE È NULLA.

CIÒ AVVIENE QUANDO SI SATURA CONTEMPORANEAMENTE UNA RIGA ED UNA COLONNA

N.O.

20 30 ε 50+ε

40 40 20 30 40+ε

20 30 0 50

40 40 20 30 40

20 30 50

ε 40 40+ε 20 30+ε 40

20 30 50

0 40 40 20 30 40

(8)

DETERMINAZIONE DI UNA SOLUZIONE AMMISSIBILE INIZIALE In un problema dei trasporti, si dice che una successione di variabili forma un ciclo se nella tabella dei trasporti è possibile congiungerle tutte con una successione di segmenti alternativamente orizzontali e verticali, ognuno dei quali abbia come estremi due di tali variabili, che, partendo da una qualunque di esse ritorni sulla stessa senza passare mai due volte per una variabile

 LE COLONNE DELLA MATRICE A CORRISPONDENTI A VARIABILI CHE FORMANO UN CICLO SONO LINEARMENTE DIPENDENTI

 SE UN SOTTOINSIEME DELLE VARIABILI CORRISPONDE A COLONNE DELLA MATRICE A LINEARMENTE DIPENDENTI ALLORA TALI VARIABILI FORMANO UN CICLO

COROLLARIO: CONDIZIONE NECESSARIA E SUFFICIENTE AFFINCHE’

m+n-1 VARIABILI ENTRINO A COSTITUIRE UNA SOLUZIONE DI BASE E’ CHE ESSE, O UN LORO SOTTOINSIEME, NON FORMINO UN CICLO

aus auv

arq ars

apq apv

NOTA: I METODI SOPRA MENZIONATI NON INTRODUCONO CICLI (SI CANCELLA LE RIGHE/COLONNE SATURE) E QUINDI PORTANO A SOLUZIONI AMMISSIBILI DI BASE!

u

r p

s v

(9)

CALCOLO DEI COSTI RIDOTTI

In generale, nell’algoritmo del simplesso per un problema con p variabili e q vincoli, i costi ridotti sono ottenuti come

r

j

= c

j

– c

BT

B

-1

A

j

Indichiamo con

λ ∈ ℜq

il prodotto

λλλλT

= c

BT

B

-1 ∈∈∈∈ ℜℜℜℜ1 x q

Definiamo

λ

il vettore dei moltiplicatori del simplesso.

NOTA: esiste un moltiplicatore associato ad ogni vincolo del problema.

Il calcolo dei costi ridotti si riduce quindi al calcolo dei moltiplicatori del simplesso.

Nel caso del problema dei trasporti, il calcolo è semplificato dalla struttura della matrice A dei vincoli.

λλλλT

= [ u

T

, v

T

]

u

∈∈∈∈ ℜℜℜℜm

: moltiplicatori associati ai vincoli di origine

v

∈∈∈∈ ℜℜℜℜn

: moltiplicatori associati ai vincoli di destinazione

Inoltre, per ogni colonna A

ij

(colonna associata alla variabile x

ij

), ci sono due soli ‘1’: uno per il vincolo di origine i e uno per il vincolo di destinazione j. Di conseguenza, il costo ridotto r

ij

associato alla variabile x

ij

è:

r

ij

= c

ij

λλλλT

A

ij

= c

ij

– [ u

T

, v

T

] A

ij

= c

ij

– u

i

– v

j

Dato che, per le (m+n-1) variabili in base, r

ij

= 0 si può scrivere il sistema nelle incognite u

i

e v

j

c

ij

– u

i

– v

j

= 0,

∀∀∀∀

x

ij

in base

(10)

Il sistema ha m+n incognite e m+n-1 equazioni ed è risolvibile scegliendo a piacere il valore di un moltiplicatore e determinando il valore degli altri per sostituzione (tale possibilità deriva dall’assenza di cicli)

Una volta determinati i valori dei moltiplicatori u e v è possibile determinare i costi ridotti delle variabili fuori base con la formula

r

ij

= c

ij

– u

i

– v

j

= 0,

∀∀∀∀

x

ij

fuori base

e verificare l’ottimalità della base corrente come condizione

r

ij

0,

∀∀∀∀

x

ij

fuori base

(11)

CAMBIO BASE

Facendo entrare in base una delle variabili x

ij

con r

ij <

0, questa forma necessariamente un ciclo con la base corrente.

Per eliminare il ciclo bisogna eliminare una delle variabili attualmente in base. Si fa notare che, per mantenere l’ammissibilità in termini di saturazione di origini e destinazioni, le variabili di ordine dispari nel ciclo (+, tra cui la variabile entrante) devono essere aumentate, mentre le variabili di ordine pari (–) devono essere diminuite di una stessa quantità

ϑϑϑϑ

. Per mantenere la non negatività delle variabili, si sceglie

ϑϑϑϑ

pari al minimo valore delle variabiali attiualmente in base di ordine pari.

Esempio (tra parentesi i costi ridotti per le variabili fuori base)

ϑϑϑϑ

= 20

Nota: se

ϑϑϑϑ

= 0, si passa da una soluzione degenere ad un’altra soluzione degenere.

Notazione: si userà indifferentemente rij o c’ij per indicare il costo ridotto della variabile xij

20 20 (-1) 40 (2) 10 30 40

20 30 30

+ 40

+ 40

20 30 30

20 / 20 40

30 10 40 20 30 30

(12)

ALGORITMO DI OTTIMIZZAZIONE

DETERMINATA LA SOLUZIONE “BASE” INIZIALE E’ NOTO L’INSIEME DEGLI INDICI DI BASE S =

{

(i1, j1),...,(im+n1, jm+n1)

}

1. si risolve il sistema uih +vjh = cih,jh

2. si calcolano i nuovi valori dei coefficienti cij in base a

j i ij

ij c u v

c' = − − i=1,2,...m j=1,2,...n

3. si esamini il segno dei coefficienti cij' (i, j)G

3.1. se cij' ≥0 (i, j)G STOP x è la soluzione OTTIMA

3.2. se esiste qualche (i, j)G tale che cij' <0 si sceglie tra questi l’indice (i,j) a cui corrisponde maxcij = chk; xhk entra in base

4. si determinino le variabili di base che con xhk formano un ciclo e tra quelle di ordine pari a partire da xhk si determini quella minima, sia xlp; xlp esce dalla base

5. si ponga xhk' =xlp e si determini il nuovo valore delle rimanenti variabili del ciclo

(

xhk,xhj,xij,...xvw,xvk

)

hk hj

hj x x

x' = −

hk ij

ij x x

x' = +

………….

hk lp

lp x x

x' = −

………….

hk vw

vw x x

x' = +

hk vk

vk x x

x' = −

6. si aggiorni l’insieme degli indici di base sostituendo (l,p) con (h,k) e si torni al passo 1).

Riferimenti

Documenti correlati

Si possono analizzare i punti fondamentali di questo processo attraverso un esempio, tratto dal SW utilizzato dalla Texas Instruments (Gregory,1986). 3) Analisi di ciascun

In un problema del trasporto, si dice che una successione di variabili della tabella forma un ciclo se è possibile congiungere tali variabili con una

Al suo interno, si sono sviluppate strutture produttive molto differenti: alcuni comparti (ferroviario, aereo, per condotte) sono caratterizzati da un elevato grado di

La voce “Non dichiarato” è stata introdotta a seguito delle modifiche al regolamento comunitario recepite dal decreto del 27/10/2000 emanato dal Ministero delle finanze in base al

Nel 2004, sulla base della rilevazione mensile sul movimento dei clienti nelle strutture ricettive, si sono registrati 82 milioni e 968 mila arrivi e 336 milioni e 843

Se pertanto la pendenza ∆i è inferiore a ∆i min , è necessario spezzare in due parti il profilo longitudinale di quella estremità della carreggiata che è esterna alla

L’incidenza percentuale del parco auto a metano è particolarmente influenzata dalla capillarità dei distributori che sono maggiormente diffusi in Emilia Romagna anche se la

La Provincia di Torino conferisce alla Dr.sa Susanne Nilsson, che accetta, l'incarico per le attività di gestione e rendicontazione del workpackage 2 all’interno