lezione n° 9: 31 marzo-1 aprile 2009 algoritmo del simplesso: - coefficienti di costo ridotto -...
TRANSCRIPT
![Page 1: Lezione n° 9: 31 Marzo-1 Aprile 2009 Algoritmo del Simplesso: - Coefficienti di costo ridotto - Condizioni di ottimalità - Test dei minimi rapporti - Cambio](https://reader036.vdocuments.site/reader036/viewer/2022062404/5542eb65497959361e8d12fc/html5/thumbnails/1.jpg)
Lezione n° 9: 31 Marzo-1 Aprile 2009Algoritmo del Simplesso:
- Coefficienti di costo ridotto
- Condizioni di ottimalità
- Test dei minimi rapporti
- Cambio di base
Anno accademico 2008/2009
Prof. Cerulli – Dott.ssa Gentili
Lezioni di Ricerca OperativaCorso di Laurea in Informatica ed Informatica Applicata
Università di Salerno
![Page 2: Lezione n° 9: 31 Marzo-1 Aprile 2009 Algoritmo del Simplesso: - Coefficienti di costo ridotto - Condizioni di ottimalità - Test dei minimi rapporti - Cambio](https://reader036.vdocuments.site/reader036/viewer/2022062404/5542eb65497959361e8d12fc/html5/thumbnails/2.jpg)
Calcolo della soluzione ottima di un problema di PL.
Supponendo di aver individuato una base B ammissibile, riscriviamo la funzione obiettivo:
(1) NTNB
TB
N
BNB
T xcxcx
xccxcz
Sostituiamo in (1) l’espressione delle variabili di base:
(2)NNBBB xAAbAx 11
![Page 3: Lezione n° 9: 31 Marzo-1 Aprile 2009 Algoritmo del Simplesso: - Coefficienti di costo ridotto - Condizioni di ottimalità - Test dei minimi rapporti - Cambio](https://reader036.vdocuments.site/reader036/viewer/2022062404/5542eb65497959361e8d12fc/html5/thumbnails/3.jpg)
Calcolo della soluzione ottima di un problema di PL.
Il valore dell’obiettivo corrispondente alla base B è
bAcz BTB
1
(3)ottenendo: NTNNB
TBB
TB xcAAcbAcz 11
![Page 4: Lezione n° 9: 31 Marzo-1 Aprile 2009 Algoritmo del Simplesso: - Coefficienti di costo ridotto - Condizioni di ottimalità - Test dei minimi rapporti - Cambio](https://reader036.vdocuments.site/reader036/viewer/2022062404/5542eb65497959361e8d12fc/html5/thumbnails/4.jpg)
Le relazioni (2) e (3) esprimono rispettivamente i
vincoli e la funzione obiettivo in funzione delle
variabili fuori base.
(4)
Le (4) sono m+1 equazioni.
NNBBB xAAbAx 11
NTNNB
TBB
TB xcAAcbAcz 11
![Page 5: Lezione n° 9: 31 Marzo-1 Aprile 2009 Algoritmo del Simplesso: - Coefficienti di costo ridotto - Condizioni di ottimalità - Test dei minimi rapporti - Cambio](https://reader036.vdocuments.site/reader036/viewer/2022062404/5542eb65497959361e8d12fc/html5/thumbnails/5.jpg)
Indicando con:
bAb B1
Otteniamo:
NNBB xAAbx 1
NTNNB
TB
TB xcAAcbcz 1
(4)
![Page 6: Lezione n° 9: 31 Marzo-1 Aprile 2009 Algoritmo del Simplesso: - Coefficienti di costo ridotto - Condizioni di ottimalità - Test dei minimi rapporti - Cambio](https://reader036.vdocuments.site/reader036/viewer/2022062404/5542eb65497959361e8d12fc/html5/thumbnails/6.jpg)
dove aj è la colonna di N che moltiplica la j-esima
variabile fuori base.
Inoltre essendo:
Nj
jjNN xaxA
Abbiamo
jjNj
BNNBB xaAbxAAbx
11
![Page 7: Lezione n° 9: 31 Marzo-1 Aprile 2009 Algoritmo del Simplesso: - Coefficienti di costo ridotto - Condizioni di ottimalità - Test dei minimi rapporti - Cambio](https://reader036.vdocuments.site/reader036/viewer/2022062404/5542eb65497959361e8d12fc/html5/thumbnails/7.jpg)
Dove le yj sono termini noti e xj variabili.
Infine ponendo:jjB yaA 1
Otteniamo:
Nj
jjB xybx
La nostra funzione obiettivo diventa:
Nj
jjNj
jj
TB
TB xcxycbcmin
![Page 8: Lezione n° 9: 31 Marzo-1 Aprile 2009 Algoritmo del Simplesso: - Coefficienti di costo ridotto - Condizioni di ottimalità - Test dei minimi rapporti - Cambio](https://reader036.vdocuments.site/reader036/viewer/2022062404/5542eb65497959361e8d12fc/html5/thumbnails/8.jpg)
Poniamo:jj
TB
TB zyczbc e 0
la nostra F.O. diventa:
Nj
jjjNj
jjNj
jj xczzxcxzz )(minmin 00
I coefficientijj cz
Vengono detti coefficienti di costo ridotto.
![Page 9: Lezione n° 9: 31 Marzo-1 Aprile 2009 Algoritmo del Simplesso: - Coefficienti di costo ridotto - Condizioni di ottimalità - Test dei minimi rapporti - Cambio](https://reader036.vdocuments.site/reader036/viewer/2022062404/5542eb65497959361e8d12fc/html5/thumbnails/9.jpg)
Verifichiamo se la soluzione di Base corrente è ottima.
Consideriamo l’obiettivo:
Nj
jjj xczzz )(min 0
e consideriamo come varia l’obiettivo facendo diventare positiva la variabile fuori base xk, attualmente nulla.
kkk xczzz )(0
>0
>0
L’obiettivo migliora !
Supponiamo che esista un coefficiente kN tale che
0 kk cz
![Page 10: Lezione n° 9: 31 Marzo-1 Aprile 2009 Algoritmo del Simplesso: - Coefficienti di costo ridotto - Condizioni di ottimalità - Test dei minimi rapporti - Cambio](https://reader036.vdocuments.site/reader036/viewer/2022062404/5542eb65497959361e8d12fc/html5/thumbnails/10.jpg)
Allora si potrebbe pensare di aumentare
indefinitivamente xk migliorando sempre l’obiettivo.
Tuttavia, aumentando xk anche le equazioni (2)
corrispondenti ai vincoli variano, modificando i valori
delle variabili di base:
0
0
x
xybxNj
jjB(2)
![Page 11: Lezione n° 9: 31 Marzo-1 Aprile 2009 Algoritmo del Simplesso: - Coefficienti di costo ridotto - Condizioni di ottimalità - Test dei minimi rapporti - Cambio](https://reader036.vdocuments.site/reader036/viewer/2022062404/5542eb65497959361e8d12fc/html5/thumbnails/11.jpg)
Dal momento che per j N le xj sono uguali a zero per
j ≠ k la relazione
Nj
jjB xybx
Diventa
kkB xybx
![Page 12: Lezione n° 9: 31 Marzo-1 Aprile 2009 Algoritmo del Simplesso: - Coefficienti di costo ridotto - Condizioni di ottimalità - Test dei minimi rapporti - Cambio](https://reader036.vdocuments.site/reader036/viewer/2022062404/5542eb65497959361e8d12fc/html5/thumbnails/12.jpg)
In forma vettoriale:
k
mk
rk
k
k
m
r
B
B
B
B
x
y
y
y
y
b
b
b
b
x
x
x
x
m
r
2
1
2
1
2
1
0 se iky
allora xBi cresce al crescere di xk e così xBi continua a essere non negativo.
![Page 13: Lezione n° 9: 31 Marzo-1 Aprile 2009 Algoritmo del Simplesso: - Coefficienti di costo ridotto - Condizioni di ottimalità - Test dei minimi rapporti - Cambio](https://reader036.vdocuments.site/reader036/viewer/2022062404/5542eb65497959361e8d12fc/html5/thumbnails/13.jpg)
Se yik >0 allora xBi decresce al crescere di xk. Il valore di xk verrà incrementato finchè una delle variabili checostituiscono la soluzione di base assumerà valore zero. Infatti noi vogliamo che:
0
0
0
22
11
2
1
kmkmB
kkB
kkB
xybx
xybx
xybx
m
la variabile che si azzererà per prima verrà tolta dallevariabili di base e sarà rimpiazzata da xk.
![Page 14: Lezione n° 9: 31 Marzo-1 Aprile 2009 Algoritmo del Simplesso: - Coefficienti di costo ridotto - Condizioni di ottimalità - Test dei minimi rapporti - Cambio](https://reader036.vdocuments.site/reader036/viewer/2022062404/5542eb65497959361e8d12fc/html5/thumbnails/14.jpg)
mk
m
kkmkmB
kkkkB
kkkkB
y
bxxybx
y
bxxybx
y
bxxybx
m
0
0
0
2
2
22
1
1
11
2
1
Possiamo scrivere:
Esaminiamo queste disuguaglianze.
Dobbiamo considerare solo i rapporti in cui 0iky
![Page 15: Lezione n° 9: 31 Marzo-1 Aprile 2009 Algoritmo del Simplesso: - Coefficienti di costo ridotto - Condizioni di ottimalità - Test dei minimi rapporti - Cambio](https://reader036.vdocuments.site/reader036/viewer/2022062404/5542eb65497959361e8d12fc/html5/thumbnails/15.jpg)
Quindi considerando quei rapporti in cui yjk >0 xk assumerà il seguente valore:
0:min jkjk
j
Bjrk
r
k yy
b
y
bx
Così:
00
00
00 11111
rk
r
mkmkmkmB
rk
r
rkrkrkrB
rk
r
kkkB
y
bybxybx
y
bybxybx
y
bybxybx
m
r
![Page 16: Lezione n° 9: 31 Marzo-1 Aprile 2009 Algoritmo del Simplesso: - Coefficienti di costo ridotto - Condizioni di ottimalità - Test dei minimi rapporti - Cambio](https://reader036.vdocuments.site/reader036/viewer/2022062404/5542eb65497959361e8d12fc/html5/thumbnails/16.jpg)
Fare assumere ad xk un valore positivo significa
portare la variabile xkin base.
Nello stesso tempo il valore delle altre variabili di
base per cui yik>0 diminuisce.
0:min jkjk
j
Bjrk
r
k yy
b
y
bx
Il valore che xk assume in base è quello corrispondente all’annullamento della prima variabile di base, cioè
![Page 17: Lezione n° 9: 31 Marzo-1 Aprile 2009 Algoritmo del Simplesso: - Coefficienti di costo ridotto - Condizioni di ottimalità - Test dei minimi rapporti - Cambio](https://reader036.vdocuments.site/reader036/viewer/2022062404/5542eb65497959361e8d12fc/html5/thumbnails/17.jpg)
La variabile xk entra in base con tale valore, ed in
corrispondenza la variabile esce di base.xBr
Il coefficiente yrk è detto Pivot, (l’aggiornamento della base si dice Pivoting) e viene usato per aggiornare i valori delle variabili in base dopo l’ingresso in base di xk.
rk
r
k y
bx
rk
r
ikiB y
bybx
i
La nuova soluzione di base
0 0 '' rBj xkNNNjx Le nuove variabili
fuori base
![Page 18: Lezione n° 9: 31 Marzo-1 Aprile 2009 Algoritmo del Simplesso: - Coefficienti di costo ridotto - Condizioni di ottimalità - Test dei minimi rapporti - Cambio](https://reader036.vdocuments.site/reader036/viewer/2022062404/5542eb65497959361e8d12fc/html5/thumbnails/18.jpg)
Con il cambio delle variabili in base, la nuova matrice
di base risulta composta delle stesse colonne della
vecchia base ad eccezione del fatto che la colonna
associata a è stata sostituita dalla colonna
associata a xk.
xBr
![Page 19: Lezione n° 9: 31 Marzo-1 Aprile 2009 Algoritmo del Simplesso: - Coefficienti di costo ridotto - Condizioni di ottimalità - Test dei minimi rapporti - Cambio](https://reader036.vdocuments.site/reader036/viewer/2022062404/5542eb65497959361e8d12fc/html5/thumbnails/19.jpg)
La nuova soluzione di base ha migliorato il valore della
funzione obiettivo:
00 )( zy
bczzz
rk
r
kk
>0
>0
![Page 20: Lezione n° 9: 31 Marzo-1 Aprile 2009 Algoritmo del Simplesso: - Coefficienti di costo ridotto - Condizioni di ottimalità - Test dei minimi rapporti - Cambio](https://reader036.vdocuments.site/reader036/viewer/2022062404/5542eb65497959361e8d12fc/html5/thumbnails/20.jpg)
E’ possibile iterare il procedimento fino a che esiste
qualche variabile fuori base che può migliorare
l’obiettivo se portata in base.
5. Teorema (Condizione di ottimalità)
Una soluzione di base non degenere di un
problema di PL è ottima se e solo se:
le)migliorabi(non 0 2)
le)(ammissibi 0 1)
Njcz
b
jj
i
![Page 21: Lezione n° 9: 31 Marzo-1 Aprile 2009 Algoritmo del Simplesso: - Coefficienti di costo ridotto - Condizioni di ottimalità - Test dei minimi rapporti - Cambio](https://reader036.vdocuments.site/reader036/viewer/2022062404/5542eb65497959361e8d12fc/html5/thumbnails/21.jpg)
Nel caso di soluzione degenere possono esistere
soluzioni ottime in cui il punto (2) del teorema 5 non
è soddisfatto.
Tuttavia, se un problema ammette soluzione ottima
finita allora ammette una soluzione di base ottima
che soddisfa le condizioni (1) e (2) del teorema 5.