Operatioanalyysi 2011, Harjoitus 3, viikko 39 H3t1, Exercise 3.1. H3t2, Exercise 3.2. H3t3, Exercise 3.3. H3t4, Exercise 3.4. H3t5
(Exercise 3.1.) 1 3.1. Find the (a) standard form, (b) slack form of the LP min z = 2x 1 + 3x 2 (0) s.t. 1 x 1 + x 2 9 (1) 2x 1 x 2 4 (2) 2 7x 1 + x 2 100 (3) x 2 0 You can also make an Octave program that constructs the standard and slack forms to you automatically.
(Exercise 3.1.) 1 3.1. Find the (a) standard form, (b) slack form of the LP min z = 2x 1 + 3x 2 (0) s.t. 1 x 1 + x 2 9 (1) 2x 1 x 2 4 (2) 2 7x 1 + x 2 100 (3) x 2 0 You can also make an Octave program that constructs the standard and slack forms to you automatically. (a) (i) Muutetaan ongelma maksimointitehtäväksi (ii) poistetaan kaksoisepäyhtälöt
(a) (Exercise 3.1.(a)) 2 min z = 2x 1 + 3x 2 (0) s.t. 1 x 1 + x 2 9 (1) 2x 1 x 2 4 (2) 2 7x 1 + x 2 100 (3) x 2 0 max z = 2x 1 3x 2 (0 ) s.t. x 1 + x 2 9 (1a ) x 1 + x 2 1 (1b ) 2x 1 x 2 4 (2) 7x 1 + x 2 100 (3a ) 7x 1 + x 2 2 (3b ) x 2 0
(a) (Exercise 3.1.(a)) 2 min z = 2x 1 + 3x 2 (0) s.t. 1 x 1 + x 2 9 (1) 2x 1 x 2 4 (2) 2 7x 1 + x 2 100 (3) x 2 0 max z = 2x 1 3x 2 (0 ) s.t. x 1 + x 2 9 (1a ) x 1 + x 2 1 (1b ) 2x 1 x 2 4 (2) 7x 1 + x 2 100 (3a ) 7x 1 + x 2 2 (3b ) x 2 0 (i) Kerrotaan vielä epäyhtälöt (1b*) ja (3b*) miinus yhdellä, jolloin erisuuruus-merkki kääntyy ja (ii) sijoitetaan x 1 = p 1 m 1. (p 1 0 ja m 1 0.)
(a) (Exercise 3.1.(a)) 3 Standardi muoto: x 1 = p 1 m 1, (p 1 0,m 1 0) max z = 2p 1 2m 1 3x 2 s.t. p 1 m 1 + x 2 9 p 1 + m 1 x 2 1 2p 1 2m 1 x 2 4 7p 1 7m 1 + x 2 100 7p 1 + 7m 1 x 2 2 p 1,m 1,x 2 0
(a) (Exercise 3.1.(a)) 3 Standardi muoto: x 1 = p 1 m 1, (p 1 0,m 1 0) max z = 2p 1 2m 1 3x 2 s.t. p 1 m 1 + x 2 9 p 1 + m 1 x 2 1 2p 1 2m 1 x 2 4 7p 1 7m 1 + x 2 100 7p 1 + 7m 1 x 2 2 p 1,m 1,x 2 0 (b) Lisätään slack-muuttujat
(b) (Exercise 3.1.(b)) 4 Slack muoto: max z = 2p 1 2m 1 3x 2 s.t. p 1 m 1 +x 2 +s 1 = 9 p 1 + m 1 x 2 +s 2 = 1 2p 1 2m 1 x 2 +s 3 = 4 7p 1 7m 1 +x 2 +s 4 = 100 7p 1 +7m 1 x 2 +s 5 = 2 p 1,m 1,x 2,s 1,s 2,s 3,s 4,s 5 0
(Exercise 3.2.) 5 3.2. Solve the LP of Exercise 3.1 by checking all the corners (of its slack form). Checking all the corners may be hard work. So, if you are lazy and clever, you can make an Octave program that checks the corners for you.
(Exercise 3.2.) 5 3.2. Solve the LP of Exercise 3.1 by checking all the corners (of its slack form). Checking all the corners may be hard work. So, if you are lazy and clever, you can make an Octave program that checks the corners for you. Ensin katsomme pohjustukseksi alkuperäisen LP-mallin graafisen ratkaisun käyvän alueen nurkkapisteet. Tämä ei ole vielä tehtävän ratkaisu, sillä tehtävässä pyydetää nurkkaratkaisut slack-muodolle. Slack-muodossa muuttujia on 8, joten emme voi sitä piirtää. Piirros auttaa ymmärtämään lopullista ratkaisua.
(Exercise 3.2.) 6 x 2 max z = 2x 1 3x 2 s.t. x 1 + x 2 9 (1a) x 1 + x 2 1 (1b) 2x 1 x 2 4 (2) 7x 1 + x 2 100 (3a) 7x 1 + x 2 2 (3b) x 2 0 (4) x 1
(Exercise 3.2.) 6 x 2 max z = 2x 1 3x 2 s.t. x 1 + x 2 9 (1a) x 1 + x 2 1 (1b) 2x 1 x 2 4 (2) 7x 1 + x 2 100 (3a) 7x 1 + x 2 2 (3b) x 2 0 (4) (1a) x 1
(Exercise 3.2.) 6 x 2 max z = 2x 1 3x 2 s.t. x 1 + x 2 9 (1a) x 1 + x 2 1 (1b) 2x 1 x 2 4 (2) 7x 1 + x 2 100 (3a) 7x 1 + x 2 2 (3b) x 2 0 (4) (1b) (1a) x 1
(Exercise 3.2.) 6 x 2 max z = 2x 1 3x 2 s.t. x 1 + x 2 9 (1a) x 1 + x 2 1 (1b) 2x 1 x 2 4 (2) 7x 1 + x 2 100 (3a) 7x 1 + x 2 2 (3b) (2) x 2 0 (4) (1b) (1a) x 1
(Exercise 3.2.) 6 x 2 max z = 2x 1 3x 2 s.t. x 1 + x 2 9 (1a) x 1 + x 2 1 (1b) 2x 1 x 2 4 (2) 7x 1 + x 2 100 (3a) 7x 1 + x 2 2 (3b) (2) x 2 0 (4) (1b) (1a) x 1 (3a)
(Exercise 3.2.) 6 x 2 max z = 2x 1 3x 2 s.t. x 1 + x 2 9 (1a) x 1 + x 2 1 (1b) 2x 1 x 2 4 (2) 7x 1 + x 2 100 (3a) 7x 1 + x 2 2 (3b) (2) x 2 0 (4) (3b) (1b) (1a) x 1 (3a)
(Exercise 3.2.) 6 x 2 max z = 2x 1 3x 2 s.t. x 1 + x 2 9 (1a) x 1 + x 2 1 (1b) 2x 1 x 2 4 (2) 7x 1 + x 2 100 (3a) 7x 1 + x 2 2 (3b) (2) x 2 0 (4) (3b) (1b) (1a) x 1 (4) (3a)
(Exercise 3.2.) 6 D x 2 max z = 2x 1 3x 2 s.t. x 1 + x 2 9 (1a) x 1 + x 2 1 (1b) 2x 1 x 2 4 (2) 7x 1 + x 2 100 (3a) 7x 1 + x 2 2 (3b) (2) x 2 0 (4) C E (3b) A B(1b) (1a) x 1 (4) (3a)
(Exercise 3.2.) 7 D x 2 max z = 2x 1 3x 2 s.t. x 1 + x 2 9 (1a) x 1 + x 2 1 (1b) 2x 1 x 2 4 (2) 7x 1 + x 2 100 (3a) 7x 1 + x 2 2 (3b) (2) x 2 0 (4) C E (3b) A B(1b) x 1 (1a) (4)
(Exercise 3.2.) 7 x 2 D E (3b) max z = 2x 1 3x 2 s.t. x 1 + x 2 9 (1a) x 1 + x 2 1 (1b) 2x 1 x 2 4 (2) 7x 1 + x 2 100 (3a) 7x 1 + x 2 2 (3b) (2) x 2 0 (4) A B(1b) C x 1 (1a) (4) A = (1,0) B = (2,0) C = (4.333,4.667) D = ( 1.167, 10.167) E = (0.167,0.833)
(Exercise 3.2.) 7 x 2 D E (3b) max z = 2x 1 3x 2 s.t. x 1 + x 2 9 (1a) x 1 + x 2 1 (1b) 2x 1 x 2 4 (2) 7x 1 + x 2 100 (3a) 7x 1 + x 2 2 (3b) (2) x 2 0 (4) A B(1b) C x 1 (1a) (4) A = (1,0) B = (2,0) PARAS on B! C = (4.333,4.667) D = ( 1.167, 10.167) E = (0.167,0.833)
(Exercise 3.2.) 8 Seuraavaksi aloitamme tehtävän ratkaisemisen. Slack-muotoisessa mallissa on 8 muuttujaa (xp 1, xm 1, x 2, s 1, s 2, s 3, s 4 ja s 5 ), ja 5 rajoitetta. Kantaan kuuluvat viisi muuttujaa voidaan valita ( ) 8 5 = 8! 5!(8 5)! = 8 7 6 5 4 5 4 3 2 1 = 56 tavalla. Ei siis kannata vääntää käsin se olisi hirmuinen urakka.
(Exercise 3.2.) 8 Seuraavaksi aloitamme tehtävän ratkaisemisen. Slack-muotoisessa mallissa on 8 muuttujaa (xp 1, xm 1, x 2, s 1, s 2, s 3, s 4 ja s 5 ), ja 5 rajoitetta. Kantaan kuuluvat viisi muuttujaa voidaan valita ( ) 8 5 = 8! 5!(8 5)! = 8 7 6 5 4 5 4 3 2 1 = 56 tavalla. Ei siis kannata vääntää käsin se olisi hirmuinen urakka. Tiedostossa or11h3t1.m on octave-koodi, joka tulostaa kantaratkaisut. Ohjelma tulostaa kantaratkaisuja 40 kappaletta, sillä osa kantaratkaisu-yhtälöryhmistä eivät ratkea, koska kerroinmatriisin determinantti on nolla. Kun vielä listalta poistetaan ei-käyvät, niin lista on seuraava:
(Exercise 3.2.) 9 k xp1 xm1 x2 s1 s2 s3 s4 s5 -z 1 0.17 0.00 0.83 8.00 0.00 4.50 98.00 0.00-2.17 2 4.33 0.00 4.67 0.00 8.00 0.00 65.00 33.00-5.33 3 2.00 0.00 0.00 7.00 1.00 0.00 86.00 12.00 4.00 4 1.00 0.00 0.00 8.00 0.00 2.00 93.00 5.00 2.00 5 0.00 1.17 10.17 0.00 8.00 16.50 98.00 0.00-32.83 6 0.00 0.00 2.00 7.00 1.00 6.00 98.00 0.00-6.00 7 0.00 0.00 9.00 0.00 8.00 13.00 91.00 7.00-27.00 Paras kantaratkaisu on #3 (BV #6 = {x 1,s 1,s 2,s 4,s 5 }, NBV #6 = {x 2,s 3 }) x 1 = 2,x 2 = 0,s 1 = 7,s 2 = 1,s 3 = 0,s 4 = 86,s 5 = 12, z = 4.
(Exercise 3.3.) 10 3.3. Solve the LP of Exercise 3.1 with (a) stu_lp_solver, (b) glpk. a-kohdassa tarvitaan standardi-muoto. max mz = z = 2p 1 2m 1 3x 2 s.t. p 1 m 1 + x 2 9 p 1 + m 1 x 2 1 2p 1 2m 1 x 2 4 7p 1 7m 1 + x 2 100 7p 1 + 7m 1 x 2 2 p 1,m 1,x 2 0
H3t3 a). (Exercise 3.3.a)) 11 max mz = z = 2p 1 2m 1 3x 2 s.t. p 1 m 1 + x 2 9 p 1 + m 1 x 2 1 2p 1 2m 1 x 2 4 7p 1 7m 1 + x 2 100 7p 1 + 7m 1 x 2 2 p 1,m 1,x 2 0 c = 2 2 3, A = 1 1 1 1 1 1 2 2 1 7 7 1 7 7 1, b = 9 1 4 100 2
H3t3 a). (Exercise 3.3.a)) 12 c = [2-2 -3] ; A = [1-1 1; -1 1-1; 2-2 -1; 7-7 1; -7 7-1]; b = [9-1 4 100-2] ; [mz_max, x_max] = stu_lp_solver(c,a,b) ################################# # mz_max = 4 # x_max = # # 2 # 0 # 0
H3t3 b). (Exercise 3.3.b)) 13 b-kohdassa tarvitaan muoto, jossa kaksois-epäyhtälöt on hajotettu kahdeksi tavalliseksi epäyhtälöksi. Koska merkkirajoite ei koske kuin toista muuttujaa, määritellään muuttujat vapaiksi, mutta x 2 :ta koskeva merkkirajoite lisätää rajoitteisiin eksplisiittisesti. min z = 2x 1 + 3x 2 (0 ) s.t. x 1 + x 2 9 (1a ) x 1 + x 2 1 (1b ) 2x 1 x 2 4 (2) 7x 1 + x 2 100 (3a ) 7x 1 + x 2 2 (3b ) x 2 0 (x 2 :n merkki)
H3t3 b). (Exercise 3.3.b)) 14 ( 2 c = 3 min z = 2x 1 + 3x 2 s.t. x 1 + x 2 9 x 1 + x 2 1 2x 1 x 2 4 7x 1 + x 2 100 7x 1 + x 2 2 x 2 0 ), A = 1 1 1 1 2 1 7 1 7 1 0 1, b = 9 1 4 100 2 0 [x_min, z_min]=glpk(c,a,b,[],[],"uluull","cc",1)
H3t3 b). (Exercise 3.3.b)) 15 c = [-2, 3] ; A = [1,1; 1,1; 2,-1; 7,1; 7,1; 0,1]; b = [9, 1, 4, 100, 2, 0] ; [x_min, z_min] = glpk(c,a,b,[],[],"uluull","cc",1) ################################# # x_min = # # 2 # 0 # # z_min = -4 #
(Exercise 3.4.) 16 3.4. Find all the optima of the LP max z = 3x 1 + 6x 2 s.t. 5x 1 + 7x 2 35 x 1 + 2x 2 2 x 1,x 2 0 Ratkaistaan kaikki kantaratkaisut. Sitä varten tehdään ensin slack-muoto.
(Exercise 3.4.) 17 max z = 3x 1 + 6x 2 s.t. 5x 1 + 7x 2 + s 1 = 35 x 1 + 2x 2 + s 2 = 2 x 1,x 2,s 1,s 2 0 BV = {x 1,x 2 }
(Exercise 3.4.) 17 max z = 3x 1 + 6x 2 s.t. 5x 1 + 7x 2 + s 1 = 35 x 1 + 2x 2 + s 2 = 2 x 1,x 2,s 1,s 2 0 x 1 = 56/17 x 2 = 45/17 s 1 = 0 s 2 = 0 z = 6 BV = {x 1,x 2 } { 5x1 + 7x 2 = 35 x 1 + 2x 2 = 2 x 1 = 56/17 3.29 x 2 = 45/17 2.65 z = 6
(Exercise 3.4.) 18 max z = 3x 1 + 6x 2 s.t. 5x 1 + 7x 2 + s 1 = 35 x 1 + 2x 2 + s 2 = 2 x 1,x 2,s 1,s 2 0 x 1 = 56/17 x 2 = 45/17 s 1 = 0 s 2 = 0 z = 6 BV = {x 1,s 1 }
(Exercise 3.4.) 18 max z = 3x 1 + 6x 2 s.t. 5x 1 + 7x 2 + s 1 = 35 x 1 + 2x 2 + s 2 = 2 x 1,x 2,s 1,s 2 0 x 1 = 56/17 x 2 = 45/17 s 1 = 0 s 2 = 0 z = 6 BV = {x 1,s 1 } { 5x1 + s 1 = 35 x 1 = 2 x 1 = 2 s 1 = 45 ei ole käypä
(Exercise 3.4.) 19 max z = 3x 1 + 6x 2 s.t. 5x 1 + 7x 2 + s 1 = 35 x 1 + 2x 2 + s 2 = 2 x 1,x 2,s 1,s 2 0 x 1 = 56/17 x 2 = 45/17 s 1 = 0 s 2 = 0 z = 6 BV = {x 1,s 2 }
(Exercise 3.4.) 19 max z = 3x 1 + 6x 2 s.t. 5x 1 + 7x 2 + s 1 = 35 x 1 + 2x 2 + s 2 = 2 x 1,x 2,s 1,s 2 0 x 1 = 56/17 x 2 = 45/17 s 1 = 0 s 2 = 0 z = 6 x 1 = 7 x 2 = 0 s 1 = 0 s 2 = 9 z = 21 BV = {x 1,s 2 } { 5x1 + = 35 x 1 s 2 = 2 x 1 = 7 s 2 = 9 z = 21
(Exercise 3.4.) 20 max z = 3x 1 + 6x 2 s.t. 5x 1 + 7x 2 + s 1 = 35 x 1 + 2x 2 + s 2 = 2 x 1,x 2,s 1,s 2 0 x 1 = 56/17 x 2 = 45/17 s 1 = 0 s 2 = 0 z = 6 x 1 = 7 x 2 = 0 s 1 = 0 s 2 = 9 z = 21 BV = {x 2,s 1 }
(Exercise 3.4.) 20 max z = 3x 1 + 6x 2 s.t. 5x 1 + 7x 2 + s 1 = 35 x 1 + 2x 2 + s 2 = 2 x 1,x 2,s 1,s 2 0 x 1 = 56/17 x 2 = 45/17 s 1 = 0 s 2 = 0 z = 6 x 1 = 7 x 2 = 0 s 1 = 0 s 2 = 9 z = 21 x 1 = 0 x 2 = 1 s 1 = 28 s 2 = 0 z = 6 BV = {x 2,s 1 } { 7x2 + s 1 = 35 2x 2 = 2 x 2 = 1 s 1 = 28 z = 6
(Exercise 3.4.) 21 max z = 3x 1 + 6x 2 s.t. 5x 1 + 7x 2 + s 1 = 35 x 1 + 2x 2 + s 2 = 2 x 1,x 2,s 1,s 2 0 x 1 = 56/17 x 2 = 45/17 s 1 = 0 s 2 = 0 z = 6 x 1 = 7 x 2 = 0 s 1 = 0 s 2 = 9 z = 21 x 1 = 0 x 2 = 1 s 1 = 28 s 2 = 0 z = 6 BV = {x 2,s 2 }
(Exercise 3.4.) 21 max z = 3x 1 + 6x 2 s.t. 5x 1 + 7x 2 + s 1 = 35 x 1 + 2x 2 + s 2 = 2 x 1,x 2,s 1,s 2 0 x 1 = 56/17 x 2 = 45/17 s 1 = 0 s 2 = 0 z = 6 x 1 = 7 x 2 = 0 s 1 = 0 s 2 = 9 z = 21 x 1 = 0 x 2 = 1 s 1 = 28 s 2 = 0 z = 6 BV = {x 2,s 2 } { 7x2 = 35 2x 2 + s 2 = 2 x 2 = 5 s 2 = 8 ei ole käypä
(Exercise 3.4.) 22 max z = 3x 1 + 6x 2 s.t. 5x 1 + 7x 2 + s 1 = 35 x 1 + 2x 2 + s 2 = 2 x 1,x 2,s 1,s 2 0 x 1 = 56/17 x 2 = 45/17 s 1 = 0 s 2 = 0 z = 6 x 1 = 7 x 2 = 0 s 1 = 0 s 2 = 9 z = 21 x 1 = 0 x 2 = 1 s 1 = 28 s 2 = 0 z = 6 BV = {s 1,s 2 }
(Exercise 3.4.) 22 max z = 3x 1 + 6x 2 s.t. 5x 1 + 7x 2 + s 1 = 35 x 1 + 2x 2 + s 2 = 2 x 1,x 2,s 1,s 2 0 x 1 = 56/17 x 2 = 45/17 s 1 = 0 s 2 = 0 z = 6 x 1 = 7 x 2 = 0 s 1 = 0 s 2 = 9 z = 21 x 1 = 0 x 2 = 1 s 1 = 28 s 2 = 0 z = 6 x 1 = 0 x 2 = 0 s 1 = 35 s 2 = 2 z = 0 BV = {s 1,s 2 } { s s1 = 35 1 = 35 s 2 = 2 s 2 = 2 z = 0
(Exercise 3.4.) 23 max z = 3x 1 + 6x 2 s.t. 5x 1 + 7x 2 + s 1 = 35 x 1 + 2x 2 + s 2 = 2 x 1,x 2,s 1,s 2 0 x 1 = 56/17 x 2 = 45/17 s 1 = 0 s 2 = 0 z = 6 x 1 = 7 x 2 = 0 s 1 = 0 s 2 = 9 z = 21 x 1 = 0 x 2 = 1 s 1 = 28 s 2 = 0 z = 6 x 1 = 0 x 2 = 0 s 1 = 35 s 2 = 2 z = 0 Tavoitefunktion arvo on z = 6, jos x 1 56/17 x 2 s 1 = t 45/17 0 + (1 t) s 2 0 0 1 28 0, 0 t 1
24 (a) Is it possible that LP has no optima, but it is nevertheless bounded? This means that your value z is bounded by some number, but one can still always make any given decision better. (b) Is the previous possible for any optimization problem?
24 (a) Is it possible that LP has no optima, but it is nevertheless bounded? This means that your value z is bounded by some number, but one can still always make any given decision better. (b) Is the previous possible for any optimization problem? Vastaus: (a) ei (b) kyllä.
24 (a) Is it possible that LP has no optima, but it is nevertheless bounded? This means that your value z is bounded by some number, but one can still always make any given decision better. (b) Is the previous possible for any optimization problem? Vastaus: (a) ei (b) kyllä. (b)-kohta on helpompi, joten aloitamme siitä. Optimointitehtävällä max z = x 1 s.t. 0 < x 1 < 1 ei ole optimia vaikka arvot ovat rajoitettu välille 0 < z < 1
(a) #1 25 (a)-kohdassa aukottoman perustelun antaminen ei ole helppoa. Seuraavassa on annettu kolme erilaista perustelua. Perusteluyritys #1 (kuvaileva) Oleellinen seikka on se, että käyvän alueen reunapisteet ovat käypiä. Oletamme nyt, että ongelma on maksimointitehtävä ja tavoitefunktion arvot on rajoitettu välille M z = f (x) M Olkoon aluksi t = M + 1. Tarkastellaan niitä päätösmuuttuja -avaruuden pisteitä, joissa f (x) = t. Pisteet muodostavat hypertason T (t), joka liikkuu käypää aluetta kohden, kun t:tä pienennetään. Ensimmäinen piste, jossa T koskettaa käypää aluetta on käyvän alueen reunan piste ja siis optimipiste.
(a) #1 25 (a)-kohdassa aukottoman perustelun antaminen ei ole helppoa. Seuraavassa on annettu kolme erilaista perustelua. Perusteluyritys #1 (kuvaileva) Oleellinen seikka on se, että käyvän alueen reunapisteet ovat käypiä. Oletamme nyt, että ongelma on maksimointitehtävä ja tavoitefunktion arvot on rajoitettu välille M z = f (x) M Olkoon aluksi t = M + 1. Tarkastellaan niitä päätösmuuttuja -avaruuden pisteitä, joissa f (x) = t. Pisteet muodostavat hypertason T (t), joka liikkuu käypää aluetta kohden, kun t:tä pienennetään. Ensimmäinen piste, jossa T koskettaa käypää aluetta on käyvän alueen reunan piste ja siis optimipiste. Miksi on olemassa ensimmäisen kosketuksen piste? (?!?!)
(a) #2 26 Perustelu #2 (lineaarialgebran keinoin) Tarkastellaan LP-mallin slack-muotoa. Jokainen käypä kantaratkaisu x i antaa yhden käyvän alueen nurkkapisteen joka on käypä ratkaisu ja jossa tavoitefunktio saa arvon z i = f (x i ) = c x i.
(a) #2 26 Perustelu #2 (lineaarialgebran keinoin) Tarkastellaan LP-mallin slack-muotoa. Jokainen käypä kantaratkaisu x i antaa yhden käyvän alueen nurkkapisteen joka on käypä ratkaisu ja jossa tavoitefunktio saa arvon z i = f (x i ) = c x i. Kahden kantaratkaisun x i ja x j painotettu keskiarvo x = t 1 x i + t 2 x j (jossa painojen summa on t 1 + t 2 = 1) on myös käypä ratkaisu, sillä Ax = A(t 1 x i + t 2 x j ) = t 1 Ax i + t 2 Ax j = t 1 b + t 2 b = b. ja f (x) = c (t 1 x i + t 2 x j ) = t 1 z i + t 2 z j.
(a) #2 27 Vastaavasti painotettu keskiarvo kaikista käyvistä kantaratkaisuista x = N k=1 t k x k (jossa painojen summa on t k = 1) on myös käypä ratkaisu ja f (x) = c ( t k x k ) = t k z k. (Se, että kaikki käyvän alueen pisteet saadaan kantaratkaisujen painotettuina keskiarvoina, on melko luonnollinen ajatus, mutta jää nyt todistamatta!)
(a) #2 27 Vastaavasti painotettu keskiarvo kaikista käyvistä kantaratkaisuista x = N k=1 t k x k (jossa painojen summa on t k = 1) on myös käypä ratkaisu ja f (x) = c ( t k x k ) = t k z k. (Se, että kaikki käyvän alueen pisteet saadaan kantaratkaisujen painotettuina keskiarvoina, on melko luonnollinen ajatus, mutta jää nyt todistamatta!) Kantaratkaisuja (nurkkapisteitä) on paljon, mutta kuitenkin vain äärellinen määrä. Voimme siis aina löytää parhaan nurkkapisteen. Paras käyvän alueen piste löytyy nyt niin, että annetaan parhaalle nurkkapisteelle paino 1 ja muille nurkkapisteille painot 0. Saatu piste on kaikista paras ja käypä, siis optimiratkaisu.
(a)#3 28 Perustelu #3 (topologian keinoin) Käypä alue on R n :n suljettu joukko (reuna on mukana). R n :n rajoitettu, suljettu joukko on kompakti. Topologiasta tiedämme, että jos K R n on epätyhjä ja kompakti ja f : K R on jatkuva funktio, niin f saa kompaktissa joukossa K suurimman arvonsa. LP-mallin käypä alue on kompakti ja tavoitefunktio on jatkuva, joten edellisen nojalla optimi on olemassa. Jos jokin sana jäi epäselväksi, niin googlaamalla löytyy selityksiä. Hyvä kirjallinen lähde on mm. Jussi Väisälä (2007), Topologia I, Limes ry, ISBN 978-951-745-216-8