Dualnost Sadrzaj 1 Dualna zadaca 2 1.1 Standardni oblik – primjer ...

25
Dualnost mainSadrˇ zaj 1 Dualna zada´ ca 2 1.1 Standardni oblik – primjer .......... 3 1.2 Rjeˇ senje primarne zada´ ce. .......... 3 1.3 Aktivni uvjeti ................. 9 1.4 Dualna simpleks metoda ........... 10 1.5 Primjer dualne simpleks metode ...... 11 1.6 Primal–dual simpleks metoda ........ 15 1.7 Primjer primal–dual simpleks metode .... 17

Transcript of Dualnost Sadrzaj 1 Dualna zadaca 2 1.1 Standardni oblik – primjer ...

Page 1: Dualnost Sadrzaj 1 Dualna zadaca 2 1.1 Standardni oblik – primjer ...

Dualnost main→

Sadrzaj

1 Dualna zadaca 21.1 Standardni oblik – primjer . . . . . . . . . . 31.2 Rjesenje primarne zadace. . . . . . . . . . . 31.3 Aktivni uvjeti . . . . . . . . . . . . . . . . . 91.4 Dualna simpleks metoda . . . . . . . . . . . 101.5 Primjer dualne simpleks metode . . . . . . 111.6 Primal–dual simpleks metoda . . . . . . . . 151.7 Primjer primal–dual simpleks metode . . . . 17

� � � �

Page 2: Dualnost Sadrzaj 1 Dualna zadaca 2 1.1 Standardni oblik – primjer ...

2/22

1 Dualna zadaca

Primarna zadaca. Kanonski oblik zadace

max {zτx | x ≥ 0, Ax ≤ b} (P)

Dualna zadaca ima formu

min {yτb | y ≥ 0, yτA ≥ zτ} (D)

Zadatak. Dokazati da je dual duala primal.

Teorem dualnosti Ako su dopustivi skupovi P i Dneprazni onda

max {zτx | Ax ≤ b } = min {yτb | y ≥ 0, yτA = zτ} .

� � � �

Page 3: Dualnost Sadrzaj 1 Dualna zadaca 2 1.1 Standardni oblik – primjer ...

3/22

1.1 Standardni oblik – primjer

Primarna zadaca: Dualna zadaca:

max x1+ x2 min 4y1−4y2+8y3

uz uvjete uz uvjete

−2x1− x2 ≤ 4 −2y1− y2+2y3 =1

−x1+2x2 ≤−4 −y1+2y2− y3 =1

2x1− x2 ≤ 8 yi ≥0

1.2 Rjesenje primarne zadace.

Potrebna je inicijalizacija jer nema uvjeta nenegativnosti na

primarnu varijablu.

� � � �

Page 4: Dualnost Sadrzaj 1 Dualna zadaca 2 1.1 Standardni oblik – primjer ...

4/22

Simpleks tabela primarne zadace, novi λ-stupac i ζ-redak

x1 x2 λ

w1 2 1 1 4

w2 1 −2 1 −4

w3 −2 1 1 8

ζ 0 0 −1 0

z 1 1 0 0

w3 λ w2

w1 − 53

4 − 43

12

x2 − 13

1 − 23

0

x1 − 23

1 − 13

4

ζ 0 −1 0 0

z −1 2 −1 4

Brisanjem λ-stupca i ζ-retka dobiva se optimalna tabela.

Rjesenje x = (4, 0) je presjek pravaca w2 = 0 i w3 = 0, v. sliku 1.

� � � �

Page 5: Dualnost Sadrzaj 1 Dualna zadaca 2 1.1 Standardni oblik – primjer ...

5/22

z = (1, 1) z = a2 + a3

w1 = 0

w2 = 0

w3 = 0

a1 = (−2,−1)

a2 = (−1, 2)

a3 = (2,−1)

P

v

Slika 1: Primal i dual � � � �

Page 6: Dualnost Sadrzaj 1 Dualna zadaca 2 1.1 Standardni oblik – primjer ...

6/22

Dualna zadaca ima uvjet u formi jednakosti. Polazni rjecnik i

simpleks tabela dualne zadace su

h1 = 2y1 + y2 − 2y3 + 1 (= 0)

h2 = y1 − 2y2 + y3 + 1 (= 0)

−c = −4y1 + 4y2 − 8y3

y1 y2 y3

h1 2 1 −2 1

h2 1 −2 1 1

−u −4 4 −8 0

gdje smo s u oznacili vektor funkcije cilja dualne zadace.

Primjetite da u posljednjem retku stoji −u jer u dualnoj zadaci

minimiziramo.

Pocetak optimizacije: h1 i h2 ubacujemo u bazu.

� � � �

Page 7: Dualnost Sadrzaj 1 Dualna zadaca 2 1.1 Standardni oblik – primjer ...

7/22

y1 y2 h1

y3 1 12

− 12

12

h2 2 − 32

− 12

32

−u −12 0 4 −4

y1 h2 h1

y353

− 13

− 23

1

y243

− 23

− 13

1

−u −12 0 4 −4

y = (0, 1, 1) je optimalna tocka i vrijednost od dualne funkcije

cilja iznosi 4 (zasto?).

� � � �

Page 8: Dualnost Sadrzaj 1 Dualna zadaca 2 1.1 Standardni oblik – primjer ...

8/22

y1 y2 h1

y3 1 12

− 12

12

h2 2 − 32

− 12

32

−u −12 0 4 −4

y1 h2 h1

y353

− 13

− 23

1

y243

− 23

− 13

1

−u −12 0 4 −4

y = (0, 1, 1) je optimalna tocka i vrijednost od dualne funkcije

cilja iznosi 4 (zasto?).

– dopustiva je jedino promjena od y1

� � � �

Page 9: Dualnost Sadrzaj 1 Dualna zadaca 2 1.1 Standardni oblik – primjer ...

8/22

y1 y2 h1

y3 1 12

− 12

12

h2 2 − 32

− 12

32

−u −12 0 4 −4

y1 h2 h1

y353

− 13

− 23

1

y243

− 23

− 13

1

−u −12 0 4 −4

y = (0, 1, 1) je optimalna tocka i vrijednost od dualne funkcije

cilja iznosi 4 (zasto?).

– dopustiva je jedino promjena od y1

– stoga h-stupce ne gledamo

� � � �

Page 10: Dualnost Sadrzaj 1 Dualna zadaca 2 1.1 Standardni oblik – primjer ...

8/22

y1 y2 h1

y3 1 12

− 12

12

h2 2 − 32

− 12

32

−u −12 0 4 −4

y1 h2 h1

y353

− 13

− 23

1

y243

− 23

− 13

1

−u −12 0 4 −4

y = (0, 1, 1) je optimalna tocka i vrijednost od dualne funkcije

cilja iznosi 4 (zasto?).

– dopustiva je jedino promjena od y1

– stoga h-stupce ne gledamo

– koeficijent uz y1, u posljednjem retku je negativan

� � � �

Page 11: Dualnost Sadrzaj 1 Dualna zadaca 2 1.1 Standardni oblik – primjer ...

8/22

y1 y2 h1

y3 1 12

− 12

12

h2 2 − 32

− 12

32

−u −12 0 4 −4

y1 h2 h1

y353

− 13

− 23

1

y243

− 23

− 13

1

−u −12 0 4 −4

y = (0, 1, 1) je optimalna tocka i vrijednost od dualne funkcije

cilja iznosi 4 (zasto?).

– dopustiva je jedino promjena od y1

– stoga h-stupce ne gledamo

– koeficijent uz y1, u posljednjem retku je negativan

– desni stupac je pozitivan. Dakle,

� � � �

Page 12: Dualnost Sadrzaj 1 Dualna zadaca 2 1.1 Standardni oblik – primjer ...

8/22

y1 y2 h1

y3 1 12

− 12

12

h2 2 − 32

− 12

32

−u −12 0 4 −4

y1 h2 h1

y353

− 13

− 23

1

y243

− 23

− 13

1

−u −12 0 4 −4

y = (0, 1, 1) je optimalna tocka i vrijednost od dualne funkcije

cilja iznosi 4 (zasto?).

– dopustiva je jedino promjena od y1

– stoga h-stupce ne gledamo

– koeficijent uz y1, u posljednjem retku je negativan

– desni stupac je pozitivan. Dakle,

– tabela je optimalna.

� � � �

Page 13: Dualnost Sadrzaj 1 Dualna zadaca 2 1.1 Standardni oblik – primjer ...

9/22

1.3 Aktivni uvjeti

Definicija. Ako tocka x ∈ P zadovoljava uvjet wi = 0 onda

takav uvjet nazivamo aktivnim uvjetom, a odgovarajuci indeks

retka aktivnim indeksom.

Lema. Skup svih indeksa bazicnih varijabli je podskup skupa

aktivnih indeksa.

Komponente rjesenja dualne zadace iz primjera

y = (0, 1, 1)

su aktivni indeksi. Nadalje

z = 0 · a1 + 1 · a2 + 1 · a3.

Vidi ponovno sl. 1.

� � � �

Page 14: Dualnost Sadrzaj 1 Dualna zadaca 2 1.1 Standardni oblik – primjer ...

10/22

1.4 Dualna simpleks metoda

Primarna i dualna zadaca zadane su u kanonskoj formi (D).

Uvodimo novu varijablu u ∈ Rn (w u primarnoj zadaci)

uτ = yτA− zτ .

Tada je u ≥ 0 ako i samo ako je y ∈ D. Transponirana simpleks

tabela polaznog dualnog rjecnika je

u1 · · · un

y1 −β1

... A...

ym −βm

−z −z1 · · · −zn c = 0

(1)

Nebazicne varijable su u retku, a bazicne u stupcu.

� � � �

Page 15: Dualnost Sadrzaj 1 Dualna zadaca 2 1.1 Standardni oblik – primjer ...

11/22

1.5 Primjer dualne simpleks metode

Primarna zadaca:

max − 2x1 − x2 − x3

uz uvjete

− 2x1 + x2 − x3 ≤−2

x1 + 2x2 ≤ 1

x1, x3, x3 ≥ 0

Dualna zadaca:

min − 2y1 + y2

uz uvjete

− 2y1 + y2 ≥−2

y1 + 2y2 ≥−1

− y1 ≥−1

y1, y2 ≥ 0

u1 u2 u3 −b

y1 −2 1 −1 2

y2 1 2 0 −1

−zτ 2 1 1 c = 0

Polazna simpleks

tabela dualne zadace.

� � � �

Page 16: Dualnost Sadrzaj 1 Dualna zadaca 2 1.1 Standardni oblik – primjer ...

12/22

u1 u2 u3 −b

y1 −2 1 −1 2

y2 1 2 0 −1

−zτ 2 1 1 c = 0

Vrijednost c = 0 mozemo povecati jedino ako povecamo

varijablu y1 i to do granice

y1 = min{1, 1} = 1.

Imamo dva moguca kljucna elementa transformacije γ11 i γ13.

Odlucimo li se za γ11 = −2 tada y1 postaje nebazicna varijabla,

a u1 ulazi u bazu. Dualna Gauss – Jordanova (dGJT)

transformacije daju novu tabelu

� � � �

Page 17: Dualnost Sadrzaj 1 Dualna zadaca 2 1.1 Standardni oblik – primjer ...

13/22

y1 u2 u3 −b

u1 − 12

− 12

12

−1

y212

52

− 12

0

−zτ 1 2 1 2

koja je optimalna. Rjesenje je

(y1, y2) = (1, 0)

i ta tocka je presjek pravaca

u1 = −2y1 + y2 + 2 = 0, y2 = 0.

Odabirom γ12 = −1 za

kljucni element

transformacije dobili bi

optimalnu tabelu s istim

rjesenjem ali kao presjek

pravaca u3 = 0, y2 = 0.

u1 u2 y1 −b

u3 2 −1 −1 −2

y2 1 2 0 −1

−zτ 0 2 1 2

� � � �

Page 18: Dualnost Sadrzaj 1 Dualna zadaca 2 1.1 Standardni oblik – primjer ...

14/22

1.6 Primal–dual simpleks metoda

Dualna simpleks tabela je tabela pridruzena negativnom

rjecniku primarne zadace

δ = Ax − b

c =−zτx + c0

GJT nad negativnim rjecnikom vodi maksimizaciji primarne

funkcije cilja pa prema tome dualnu simpleks tabelu mozemo

shvacati kao tabelu za rjesavanje i primarnog i dualnog

problema.

• dGJT optimiziraju dualni problem.

• GJT optimiziraju primarni problem.

� � � �

Page 19: Dualnost Sadrzaj 1 Dualna zadaca 2 1.1 Standardni oblik – primjer ...

15/22

Primal–dual simpleks tabela.

x1 · · · xn δ

y1 δ1

... A...

ym δm

uτ u1 · · · un c = 0

(2)

Primarne nebazicne varijable δ = Ax− b ∈ Rm (manjak), Dualne

nebazicne varijable u = Aτy − z ∈ Rn (visak).

(x1, . . . , xn,δ1, . . . , δm) ∈ Rn+m

(u1, . . . , un,y1, . . . , ym) ∈ Rn+m

Primjetimo da u svakom koraku simpleks tabele vrijedi

[ x δ ]τ [ u y ] = xτu + δτy = 0.

� � � �

Page 20: Dualnost Sadrzaj 1 Dualna zadaca 2 1.1 Standardni oblik – primjer ...

16/22

1.7 Primjer primal–dual simpleks metode

Dana je zadaca linearnog programiranja

max − x1 + 2x2 + x3

uzuvjete

x1 + x3 ≥ 1

x2 ≤ 4

x2 − x3 ≥−4

− x1 + x2 − x3 ≤ 5

xi ≥ 0

� � � �

Page 21: Dualnost Sadrzaj 1 Dualna zadaca 2 1.1 Standardni oblik – primjer ...

17/22

i njena primarno dualna simpleks tabela

x1 x2 x3 δ

y1 −1 0 −1 1

y2 0 1 0 −4

y3 0 −1 1 −4

y4 −1 1 −1 −5

u 1 −2 −1 c = 0

δ ima i pozitivne i negativne komponente ⇒ x nije dopustiva.

u ima i pozitivne i negativne komponente ⇒ y nije dopustiva.

Pretpostavimo da smo se odlucili za povecanje dualne funkcije

cilja. Njenu vrijednost mozemo povecati povecanjem y1 do

granice y1 = 1. Nova tabela je nakon dGJT transformacije

� � � �

Page 22: Dualnost Sadrzaj 1 Dualna zadaca 2 1.1 Standardni oblik – primjer ...

18/22

y1 x2 x3 δ

x1 −1 0 1 −1

y2 0 1 0 −4

y3 0 −1 1 −4

y4 −1 1 0 −6

u 1 −2 −2 1

Sada je x = (1, 0, 0) primarna dopustiva tocka. Vrijednost

’primarne’ funkcije cilja mozemo smanjiti ako povecamo x2 do

granice

x2 = min{4, 6} = 4

pa x2 postaje nebazicna varijabla, a y2 bazicna varijabla.

Dualna dGJT daje

� � � �

Page 23: Dualnost Sadrzaj 1 Dualna zadaca 2 1.1 Standardni oblik – primjer ...

19/22

y1 y2 x1 δ

x3 −1 0 1 −1

x2 0 1 0 −4

y3 0 1 1 −8

y4 −1 −1 0 −2

u 1 2 −2 −7

Vrijednost primarnog funkcionala mozemo smanjiti ako

povecamo x3 do granice

x3 = min{1, 8} = 1.

Tada x2 postaje nebazicna, a x1 bazicna varijabla i nova tabela

je nakon GJT

� � � �

Page 24: Dualnost Sadrzaj 1 Dualna zadaca 2 1.1 Standardni oblik – primjer ...

20/22

y1 y2 x1 δ

x3 −1 0 1 −1

x2 0 −1 0 −4

y3 1 1 −1 −7

y4 −1 −1 0 −2

u −1 2 2 −9

Vrijednost primarnog funkcionala mozemo smanjiti ako

povecamo y1 do granice

y1 = min{7} = 7.

U sljedecem koraku nakon dobiva se optimalna tabela

� � � �

Page 25: Dualnost Sadrzaj 1 Dualna zadaca 2 1.1 Standardni oblik – primjer ...

21/22

y3 y2 x1 δ

x3 · · · −8

x1 · · · −4

y1 · · · −7

y4 · · · −9

u 1 3 1 −16

Rjesenje:

x = (0, 4, 8)

y = (0, 3, 1, 0)

zτx = bτy = 16.

� � � �