You are on page 1of 23

LINEARNO PROGRAMIRANJE

Uvod
Linearno programiranje je grana matematike koja se bavi problemom optimizacije sustava unutar zadanih ogranienja. Uveo ju je Leonid Kantorovi kasnih 1930-ih godina kao metodu rjeavanja problema planiranja proizvodnje. U SAD-u je linearno programiranje razvijeno tijekom Drugog Svjetskog rata prvenstveno za probleme vojne logistike, kao to je optimiziranje prijevoza vojske i opreme konvojima. Vaan je i doprinos ekonomista Tjallinga Koopmansa (ro en u Nizozemskoj, 1940. preselio u SAD). Kantorovi i Koopmans su 1975. god. podijelili Nobelovu nagradu za ekonomiju za njihov pionirski rad u linearnom programiranju. Proizvo a eli odrediti kako iskoristiti ograniene koliine sirovina uz najvei profit, poslovo a kako rasporediti zadani posao izme u svojih zaposlenika tako da bude napravljen u najkraem moguem vremenskom roku... Cilj ovih problema je optimizacija, maksimiziranje korisnosti ili minimiziranje trokova uz zadana ogranienja to se rjeava linearnim programiranjem. Podruje primjene linearnog programiranja je iroko: proizvodnja, transport i distribucija, marketing, telekomunikacije, financijsko ulaganje i planiranje, raspored zaposlenika, Formulirati (modelirati) realni ivotni problem kao problem linearnog programiranja zahtijeva timski rad strunjaka iz vie podruja.

1. Sustavi linearnih nejednadbi sa dvije varijable


Linearno programiranje promatra probleme u kojima se linearna funkcija cilja mora optimizirati (maksimizirati ili minimizirati) uz uvjete ili ogranienja dana u obliku jednadbi ili/i nejednadbi i uz nenegativne varijable odluivanja. To je formalni postupak optimizacije sustava kod kojih se funkcija cilja i ogranienja mogu izraziti linearnim kombinacijama promjenljivih veliina Kod cjelobrojnog su programiranja varijable odluivanja cjelobrojne. Primjer 1.1: Proizvo a proizvodi dvije vrste betona. Svaka vrea visokokvalitetnog betona sadri 10 kg ljunka i 5 kg cementa, dok svaka vrea niskokvalitetnog betona sadri 12 kg ljunka i 3 kg cementa. U skladitu postoji 1920 kg ljunka i 780 kg cementa. Proizvo a ostvaruje zaradu od 1,20$ za svaku vreu visokokvalitetnog, a 1,00$ za

svaku vreu niskokvalitetnog betona i eli odrediti koliko vrea treba proizvesti jednoga i drugoga iz dostupnih sirovina za najveu zaradu. Rjeenje: Iz praktinih razloga poinje se konstrukcijom tablice koja pokazuje koliinu ljunka i cementa u vrei za svaki tip betona, raspoloivost sirovina i zaradu za svaku vreu. Visokokvalitetan/kg Niskokvalitetan/kg Raspoloivo

ljunak

10

12

1920

Cement

780

Zarada/Vrea

1,20

1,00

Ako se proizvedene vree visokokvalitetnog betona oznae niskokvalitetnog s N, a zaradu s Z, linearna funkcija e izgledati ovako: Z = 1,20V + 1,00N Koliine raspoloivih sirovina se mogu izraziti s dvije nejednadbe: 10V + 12N 1920 5V + 3N 780 ljunak Cement

V,

Negativne vrijednosti V i N nemaju fizikalni smisao u kontekstu ovog problema, pa vrijedi V 0 i N 0. Prema tome problem se moe izraziti matematiki kao: Maksimizirati funkciju zarade unutar graninih uvjeta Z = 1,20V + 1,00N 10V + 12N 1920 5V + 3N 780 V, N 0

U ovom primjeru treba primijetiti da se optimalno rjeenje koje se trai nalazi u rjeenju sustava linearnih nejednadbi.

Uvod u terminologiju
1. Kada je ravnina podijeljena na 2 dijela (strane) pravcem, svaka strana se naziva poluravninom. 2. Ako je ravnina podijeljena okomitim pravcem dijeli se na lijevu i desnu poluravninu. 3. Ako je ravnina podijeljena bilo kojim neokomitim pravcem dijeli se na gornju i donju poluravninu. 4. Ako nejednadba ukljuuje < ili >, poluravnina se naziva otvorenom i koristimo isprekidano liniju za njeno oznaavanje, to znai da nije ukljuena u sustav rjeenja. 5. Ako nejednadba ukljuuje ili , poluravninu se naziva zatvorenom i koristimo punu liniju za njeno oznaavanje, to znai da je ukljuena u sustav rjeenja. 6. Podruje izvedivosti je skup toaka (x, y) koji zadovoljava sve nejednadbe istovremeno. 7. Funkcija cilja F je matematiki opis postavljenog cilja. 8. Optimiziranje je odre ivanje skupa vrijednosti promjenljivih veliina kojim se postie optimalna vrijednost (maksimalna ili minimalna) funkcije cilja F

Postupak crtanja grafa linearnih nejednadbi sa dvije varijable


Crtanje grafova linearnih nejednadbi sa dvije varijable obuhvaa vizualno prikazivanje toki koje zadovoljavaju nejednadbu (skup rjeenja). Takav graf e biti poluravnina. Postoje 4 razliite vrste nejednadbi sa dvije varijable koje se mogu pojaviti: Ax + By < C Ax + By C Ax + By > C Ax + By C gdje su A, B i C konstante, a najmanje je jedan od koeficijenata A ili B razliit od nule. Za crtanje grafa nejednadbi zadanih u jednom od ovih oblika: Ax + By < C Ax + By C Ax + By > C Ax + By C postupak je slijedei: 1. Nacrta se odgovarajua jednadba Ax + By = C (granini pravac) tako da se odrede toke na koordinatama (T1(0,y) i T2(x,0)) i povue pravac kroz njih. Pravac se crta isprekidanom linijom kad je < ili >, a punom linijom kad je ili . 2. Sustav rjeenja je poluravnina na jednoj od strana graninog pravca. Za odre ivanje strane poluravnine se koristi probna toka T(a,b) koja ne pripada pravcu Ax + By = C. Ako probna toka zadovoljava nejednadbu onda je

strana na kojoj se ona nalazi strana rjeenja, u suprotnom se rjeenje nalazi na drugoj strani. (Najee se uzima T(0,0), ako pravac ne prolazi kroz ishodite). Primjer 1.2: Potrebno je nacrtati grafove slijedeih nejednadbi: a) 2x y 5 Rjeenje: b) 3x + y > 0 c) x < 4

Slika 1.1 2x-y=5 3x+y=0 x=4

(1,1) (0,0) (0,0)

(a) graf 2x y 5

(b) graf 3x+y>0

(c) graf x<4

Primjer 1.3: Potrebno je odrediti podruje izvedivosti sustava slijedeih nejednadbi 3x y 2 x+y6 Rjeenje: Podruje izvedivosti je podruje u kome se zadani grafovi preklapaju.

Slika 1.2

y 3x-y=2

3x-y=2

x+y=6 (2,4)

(0,0)

(0,0)

x x+y=6

(a) graf 3 x y 2

(b) graf x + y 6

(c) graf sustava 3x y 2, x + y 6

Mogua rjeenja se nalaze unutar prostora definiranog zadanim ogranienjima. U pravilu, optimalna rjeenja lee u vrhovima. Izuzeci su kada se poklope granini pravci i funkcije cilja tada dva vrha i sve toke na pravcu izme u dva vrha daju isto optimalno rjeenje. Vrhovi odre enog podruja izvedivosti se nalaze unutar tog podruja, na presjecitu dvaju graninih pravaca. Primjer 1.4 Potrebno je nacrtati graf, odrediti podruje izvedivosti i sve vrhove za sustav nejednadbi: 2x y 5 3x + y > 0 x4

Slika 1.3 podruje izvedivosti za sustav 2x y 5 3x + y > 0


x4

legenda (a) 2x y 5

3x+y=0

x=4

2x-y=5

(b) 3x + y > 0 (4,3) (c) x 4 x (1,-3) podruja preklapanja

(a) i (b) (4,-12) (b) i (c)

(a) i (c)

(a), (b) i (c)

Primjer 1.5: Potrebno je nacrtati na grafu podruje izvedivosti i odrediti vrhove za slijedei sustav nejednadbi: 10V + 12N 1920 5V + 3N 780 V, N 0 Rjeenje:

Iz nejednadbe V 0 i N 0 je vidljivo da se podruje izvedivosti nalazi u prvom kvadrantu VN ravnine. Nacrtati granine pravce 10V + 12N = 1920 i 5V + 3N = 780, te odabrati probnu toku za svaku od nejednadbi (ishodite odgovara za obje). Iz 100V + 120N 1920 slijedi da je rjeenje na grafu nejednadbe 10V + 12N 1920 skup svih toaka ispod graninog pravca (ukljuujui pravac) i istim postupkom se odre uje graf nejednadbe 5V + 3N 780 koji je skup svih toaka ispod graninog pravca 5V + 3N = 780

Slika 1.4 Podruje izvedivosti za sustav nejednadbi 10H + 12L 1920 L 5H + 3L 780 H,L 0 5H+3L=780 (0,160)

(120,60) 10H+12L=1920 (192,0) (0,0) (156,0) H

Podruje izvedivosti je najtamnije obojano podruje. Vrhovi se dobivaju rjeavanjem dvije jednadbe s dvije nepoznanice za svaku toku.

5V + 3N = 780

5V + 3N = 780

10V + 12N = 1920

H=0

L=0

10V + 12N = 1920

H=0

L=0

Vrhovi

(156,0)

(120,60)

(0,160)

(0,0)

Napomena: Ako je presjecite dva granina pravca izvan podruja izvedivosti onda to nije vrh. npr. toka (192,0) nije vrh jer ne zadovoljava nejednadbu 5192 + 30 780

2. Geometrijsko linearno programiranje


Linearni program sa dvije varijable x i y sadri linearnu funkciju f = ax + by koja se naziva funkcijom cilja i koja mora biti optimizirana unutar sustava linearnih nejednadbi. Varijable x i y nazivaju se varijablama odluivanja, a rjeenje sustava nejednadbi naziva se podrujem izvedivosti. Za rjeavanje linearnog programa, iz cijelog skupa izvedivih rjeenja odabire se jedno, koje daje optimalnu vrijednost (maksimum ili minimum) funkcije cilja. Takvo rjeenje (moe ih biti vie) naziva se optimalnim rjeenjem. Za programe koji ukljuuju samo dvije varijable odre uje se podruje izvedivosti pomou dosad obra enih grafova. Me utim, podruje izvedivosti uglavnom sadri beskonaan broj toaka. Primjer 1.1 (nastavak) Problem je formuliran kao slijedei linearni program. Potrebno je: maksimizirati funkciju zarade unutar graninih uvjeta Z = 1,20V + 1,00N 10V + 12N 1920 5V + 3N 780 V, N 0

Slika 2.1

5H + 3L = 780

(0, 160)

(120, 60)

10H + 12L = 1920 (0, 0) (156, 0) (a) podruje izvedivosti


L

(0, 160)

C=240 C=204

C st ra

C=80

(120, 60)

(0, 0)

(156, 0) (b) pravci konstantne zarade 1.2H+L=C uz rast vrijednosti konstante C

U primjeru 1.5 je odre eno podruje izvedivosti i vrhovi. Za rjeenje linearnog programa se odre uje u kojoj toki funkcija Z = 1,20V + 1,00N ima najveu vrijednost (maksimum). Moe se primijetiti da za svaku konstantu C graf jednadbe 1,20V + N = C je pravac s nagibom -1.2. Taj pravac se naziva pravcem konstantne zarade zato to je zarada u svim tokama (V,N) koje se nalaze na tom pravcu jednaka. Svi pravci konstantne zarade imaju isti nagib iz ega slijedi da su paralelni i kako se C poveava odgovarajui pravci se udaljavaju od ishodita. Posljednji pravac koji dodiruje podruje izvedivosti prolazi kroz vrh (120,60), pa se moe zakljuiti da je maksimalna zarada: Zmax = 1,20120 + 1,0060 = 204 Zakljuak: S obzirom na dana ogranienja proizvo a e imati najveu zaradu ako proizvede 120 vrea visokokvalitetnog i 60 vrea niskokvalitetnog betona. Najvea zarada iznosi 204$.

Teorem o vrhu
Kod svakog linearnog programa sa dvije varijable podruje izvedivosti (I) e biti konveksni poligonski skup, odnosno I e biti podruje sa slijedeim svojstvima: 1. Granica I se sastoji od konanog broja pravaca ili segmenata pravaca 2. Ako su P i Q bilo koje dvije toke unutar I, segment pravca koji ih spaja (PQ) lei potpuno unutar I

Slika 2.2 Q P

(a) konveksni skupovi

(b) nekonveksni skupovi

Funkcija cilja u linearnom programu sa dvije varijable je oblika F= ax + by (a ,b = konst.). Za svaku konstantu C graf jednadbe F = C e biti pravac (pravac konstantne vrijednosti ili jednostavnije izolinija). Sve izolinije imaju isti nagib 10

i tvore porodicu paralelnih pravaca. Praktino je zamisliti porodicu pravaca F = C kao pomicanje pravca u jednom smjeru kako C raste.

F=C P1 F=C P P2 Q
ra C st
tC ras

(a) maksimum u P, minimum u Q

(b) maksimum du P1P2

(c) ne postoji maksimum

Na slici 2.3(a) je podruje izvedivosti ome eno, a maksimalna i minimalna vrijednost F se nalaze u tokama P i Q, tj. na dva kraja podruja izvedivosti. Na slici 2.3(b) jedan od paralelnih pravaca prolazi kroz dva susjedna vrha P1 i P2, te je F maksimiziran du cijelog brida P1P2. Na slici 2.3(c) podruje izvedivosti nije ome eno u smjeru poveavanja C stoga funkcija moe imati minimalnu vrijednost, ali joj maksimalna vrijednost tei beskonanosti, nemogue ju je odrediti i smatra se da ne postoji. Teorem o vrhu glasi: Ako linearni program ima optimalno rjeenje (maksimum ili minimum) mora se nalaziti u vrhu izvedbenog podruja. Taj teorem omoguava jednostavan postupak rjeavanja linearnog programa. Geometrijska metoda rjeavanja linearnog programa s dvije varijable odluivanja - saetak 1. Nacrta se graf podruja izvedivosti I i prona u se koordinate svih vrhova u I 2. Napravi se tablica procjene vrijednosti funkcije cilja F u svakom vrhu 3. Ako je I ome ena nazivamo je ogranienom. U ovom sluaju njena najvea (najmanja) vrijednost je u vrhu 4. Ako I nije ome ena nazivamo je neogranienom i njeno optimalno rjeenje ne mora postojati. Me utim, ako postoji mora biti u vrhu U primjeru 1.1 vrhovi su u (156,0), (120,60) i (0,0) (slika 2.1). Izraunom zarade funkcije Z = 1,20V + N u vrhovima, dobiva se slijedea tablica:

11

ras

tC

Slika 2.3

F=C

Vrhovi

Vrijednost Z = 1,20V + N

(156,0)

187,2

(120,60)

204

Najvea vrijednost (maksimum)

(0,160)

160

(0,0)

Iz ove tablice se izvodi zakljuak da se najvea vrijednost funkcije cilja unutar podruja izvedivosti nalazi u toki (120,60), to potvr uje rezultat dobiven geometrijskim putem.

Linearno programiranje sa vie od dvije varijable


Svaki linearni program koji ima rjeenje moe biti rijeen odre ivanjem vrhova podruja izvedivosti i zatim raunanjem funkcije cilja u vrhovima. Ipak, samo nalaenje vrhova podruja izvedivosti u viedimenzionalnom prostoru moe biti prilino komplicirano. Primjer 3.1 Potrebno je: maksimizirati F = 5x + 8y + 6z uz granine uvjete 3x + 2y + 7z 55 2x + 5y + 4z 40 x, y, z 0 U ovom sluaju postoji pet rubnih ploha i deset kombinacija u kojima se tri plohe sijeku u toki, ali sve ove toke nisu unutar podruja izvedivosti. Svako sjecite koje je unutar prostora izvedivosti je vrh i pretpostavljajui da problem ima optimalno rjeenje ono se moe odrediti izraunavanjem funkcije cilja u svakom vrhu. Iako je to izvedivo zahtjeva prilian napor. Sreom, postoji puno efikasnija metoda pod imenom simpleks metoda.

12

3.

Uvod u simpleks metodu

Iako su Kantorovi, Koopmans i drugi dali veliki doprinos razvoju linearnog programiranja, za njegov znaaj kao praktian alat u ekonomiji, industriji i znanosti je zasluan ameriki matematiar George Dantzig. 1947. godine Dantzig je primijetio da su odre eni vojni problemi u sutini isti kao i problemi uskla ivanja aktivnosti unutar velikih organizacija. Tada je razvio simpleks metodu kao nain efikasnog rjeavanja problema linearnog programiranja. Simpleks metoda je nain efikasnog pretraivanja vrhova podruja izvedivosti (simpleksa) kako bi se pronalo u kojem se pojavljuje optimalna vrijednost funkcije cilja. Najzanimljiviji linearni programi koji se pojavljuju u praksi ukljuuju velik broj varijabli i ogranienja, pa ih se mora rjeavati upotrebom raunala. Iz ovog razloga, cilj objanjavanja simpleks metode nije samo zbog rjeavanja problema na papiru, ve razumijevanja raunalnih programa s kojima se mogu susresti.

3.1 Standardni maksimum - tip linearnog programa


Problem standardnog maksimuma je specijalna vrsta linearnog programa koji je jednostavan za analizu. To je linearni program kojime elimo maksimizirati funkciju cilja: F = c1x1 + c2x2 + ... + cnxn Ogranienja su u obliku: a11x1 + a12x2 + ... + a1nxn b1 a21x1 + a22x2 + ... + a2nxn b2 . . . . . . . . . . . . am1x1 + am2x2 + ... + amnxn bm x1, x2, ... , xn 0 gdje je bj 0 za j = 1, 2, ... , m. Openito, problem standardnog maksimuma je linearni program koji zadovoljava slijedee uvjete: 1. 2. 3. 4. Funkcija cilja F mora biti maksimizirana. Sva ogranienja su tipa . Sve varijable odluivanja xi ne smiju biti negativne (xi 0). Sve vrijednosti bj na desnoj strani nejednadbi ne smiju biti negativne (bj 0).

13

3.2 Dopunske varijable i inicijalna tablica


Prvi korak u primjeni simpleks metode za rjeavanje problema standardnog maksimuma je pisanje nejednadbi ogranienja i funkcije cilja kao jednadbi. To omoguuje primjenu prethodno navedenih principa za rjeavanje linearnih programa. Primjer 3.1 Treba pretvoriti nejednadbu 3x1 2x2 + 5x3 6 u jednadbu. Rjeenje: Ova nejednadba se moe objasniti, ako pretpostavimo postojanje odre enog odstupanja vrijednosti lijeve i desne strane nejednadbe. To odstupanje se anulira dodatkom dopunske promjenjive varijable u 0, te se nejednadba napie kao jednadba: 3x1 2x2 + 5x3 + u = 6 Ako je x1 = 2, x2 = 4 i x3 = 1, tada je 32 24 + 51 = 3 6 , a dopunska promjenjiva varijabla iznosi 3 (u + 3 = 6, slijedi u = 3) Primjer 3.2 U sustavu nejednadbi e postojati vie razliitih dopunskih promjenjivih varijabli, po jedna za svaku nejednadbu. Tako da za sustav nejednadbi: 3x1 + 2x2 x3 4 x1 2x2 3 x1 , x2 ,x3 0 dodaju se promjenjive dopunske varijable u1 i u2, te se dobiva slijedei sustav jednadbi: 3x1 + 2x2 x3 + u1 = 4 x1 2x2 + u2 = 3 x1 , x2 ,x3, u1, u2 0 Tako er, uputno je razmiljati o funkciji cilja linearnog programa kao implicitnoj jednadbi. Npr. funkcija F = 2x1 + 4x2 - 7x3 se moe pisati kao -2x1 - 4x2 + 7x3 + F = 0. Kombiniranjem ovih metoda moe se prebaciti linearni program u sustav jednadbi maksimizirati F = 2x1 + 4x2 - 7x3 uz granine uvjete 3x1 + 2x2 x3 4 x1 2x2 3

14

x1 , x2 ,x3 0 U obliku sustava jednadbi: 3x1 + 2x2 x3 + u1 x1 2x2 + -2x1 4x2 + 7x3 + x1 , x2 ,x3, u1, u2 0 = = = 4 3 0

u2

Matrica koeficijenata sustava jednadbi naziva se inicijalna simpleks tablica. U ovom primjeru inicijalna tablica je slijedea:

varijable odluivanja

dopunske varijable

x1
inicijalna tablica

x2

x 3 u1 u 2 F

2 1 1 0 0 4 3 0 0 1 0 3 1 2 2 4 7 0 0 1 0

konstante s desne strane

Donji red tablice sadri koeficijente funkcije cilja (osim 0 u desnom stupcu) i nazivaju se indikatorima.

3.3 Osnovna izvediva rjeenja


Sustav iz primjera 3.2 smo napisali u obliku sustava linearnih jednadbi 3x1 + 2x2 x3 + u1 = 4 x1 2x2 + u2 = 3 gdje su x1 , x2 ,x3, u1 i u2 nenegativne. Postoji beskonaan broj rjeenja ovog sustava jer se moe rijeiti za bilo koje dvije varijable koje uvjetuju ostale tri. Me utim, rjeenje je izvedivo samo ako su mu svi lanovi nenegativni. Ako napiemo sustav iz primjera 3.2 u obliku: u1 = 4 3x1 2x2 + x3 u2 = 3 x1 + 2x2 tada svi proizvoljno odabrani x1 , x2 i x3 odre uju vrijednosti u1 i u2, a linearni sustav posjeduje jedinstveno rjeenje (x1 , x2 ,x3, u1, u2).

15

Kada se linearni sustav napie u ovom obliku u1 i u2 nazivaju se osnovnim varijablama, a x1 , x2 i x3 nazivaju se neosnovnim (parametarskim) varijablama. Kada se postave vrijednosti svih neosnovnih varijabli u 0, rjeenje koje se dobiva naziva se osnovnim rjeenjem. U ovom primjeru osnovno rjeenje glasi x1 = 0, x2 = 0, x3 = 0, u1 = 4 i u2 = 3. Poto su sva rjeenja varijabli nenegativna, rjeenje je izvedivo i naziva se osnovnim izvedivim rjeenjem. Zadani linearni sustav moe imati mnoga osnovna rjeenja, ali sva ne moraju biti izvediva. Npr. ako se linearni sustav napie kao: x3 = 4 + 3x1 + 2x2 + u1 u2 = 3 x1 + 2x2 U ovom su sluaju u2 i x3 neosnovne varijable, a x1, x2 i u1 (neosnovne varijable) jednake 0. Dobiva se odgovarajue rjeenje x1 = 0, x2 = 0, x3 = 4, u1 = 0 i u2 = 3, ali u ovom sluaju osnovno rjeenje nije izvedivo zbog postojanja negativne varijable (x3 = 4) Geometrijski se moe pokazati da za sustav linearnih nejednadbi u standardnom obliku, svako osnovno izvedivo rjeenje posjeduje odgovarajui vrh unutar podruja izvedivosti, i obratno.

3.4 Pivot metoda


Na primjeru 3.2 vidljivo je da inicijalna tablica standardnog maksimuma linearnog programa odgovara osnovnom izvedivom rjeenju u kojem su sve varijable odluivanja 0. Poto je funkcija cilja jednaka 0 u ishoditu, mala je vjerojatnost da je to optimalno rjeenje. Kod simpleks metode poinje se u ishoditu i nastavlja se put od jednog vrha ka drugom (unutar podruja izvedivosti) sve dok se konano ne prona e vrh koja odgovara optimalnom rjeenju. Od jednog vrha ka drugom putuje se koritenjem osnovnih operacija na redovima i transformiranjem inicijalne tablice u niz ekvivalentnih tablica koje su u svezi s osnovnim izvedivim rjeenjem. Postupak transformacije se zasniva na operaciji pod imenom pivotiranje. Ponovno se vraamo na primjer 3.2. Pivotiranje koeficijenta koji se nalazi na poziciji (1,2) znai da se transformacijama unutar reda zamijeni koeficijent 2 (na poziciji (1,2)) sa koeficijentom 1, a svi ostali koeficijenti u tom stupcu se pretvore u 0.

16

pivot se zamjenjuje brojem 1 zamjenjuju se s 0

x1

x2

x 3 u1 u 2 F

2 1 1 0 0 4 3 1 2 0 0 1 0 3 2 4 7 0 0 1 0

inicijalna tablica

1 R1 R 1 2 2R 1 + R 2 R 2 4R1 + R 3 R 3

x1 3 2 4 4

x3 1 1 2 0 1 0 5
x2

u1 u 2 F 1 0 0 4 2 1 1 0 7 transformirana tablica 2 0 1 8

Nova tablica odgovara linearnom sustavu: 3/2 x1 + x2 1/2 x3 + 1/2 u1 = 2 4x1 x3 + u1 + u2 = 7 4x1 + 5x3 + 2u1 + F = 8 koji moemo napisati i u slijedeem obliku: x2 = 2 3/2 x1 + 1/2 x3 1/2 u1 u2 = 7 4x1 + x3 u1 F = 8 4x1 5x3 2u1 Iz ovog oblika moe se zakljuiti da su nove osnovne varijable x2 i u2. Postavljanjem vrijednosti neosnovnih varijabli x1, x3 i u1 u 0 dobije se osnovno izvedivo rjeenje x1 = 0, x2 = 2, x3 = 0, u1 = 0 i u2 = 7. Odgovarajui vrh obuhvaa samo varijable odluivanja i ima koordinate (0,2,0). Vrijednost funkcije cilja odre uje se uvrtavanjem dobivenih rjeenja. F = 8 4 0 + 5 0+ 20 = 8 Treba primijetiti da se nova vrijednost funkcije cilja pojavljuje u donjem desnom kutu. To vrijedi za sve tablice. Napomena: kolone koje odgovaraju osnovnim varijablama u svim matricama su jednake kao i one u jedininoj matrici (osjenani dijelovi).

17

4. Simpleks metoda : sluaj standardnog maksimuma


Simpleks metoda za linearne programe tipa standardnog maksimuma najlake se moe objasniti na primjeru. Primjer 4.1 Potrebno je: maksimizirati funkciju unutar ogranienja F = 4x1 + 5x2 2x1 + 3x2 9 x1 + x2 4 x1, x2 0

Rjeenje: Prvo se uvode dopunske promjenjive varijable u1 i u2 2x1 + 3x2 + u1 = 9 x1 + x2 + u2 = 4 Cilj je pronai rjeenje u obliku jednadbe za koje su x1, x2, u1 i u2 nenegativne varijable i za koje funkcija cilja F = 4x1 + 5x2 ima najveu vrijednost. Zatim se izra uje inicijalna tablica.
x1 x2

u1
1 0 0

u2

F
0 0 1 9 4 0

3 2 1 1 4 5

0 1 0

Slijedei korak je transformiranje, operacijom pivotiranja, inicijalne tablice u odgovarajuu tablicu s osnovnim izvedivim rjeenjem u kojoj funkcija cilja ima veu vrijednost od funkcije cilja inicijalne tablice. Zatim se nastavlja pivotiranje dok se ne prona e tablica kojoj F- vrijednost nije mogue nadmaiti. Osnovno izvedivo rjeenje koje je u svezi s posljednjom tablicom daje optimalno rjeenje. Osnovne varijable u svezi s inicijalnom tablicom su u1 i u2, a osnovno rjeenje je x1 = 0, x2 = 0, u1 = 9 i u2 = 4. Ovo rjeenje odgovara vrhu koja se nalazi u ishoditu (0,0) unutar podruja izvedivosti. U toj toki funkcija cilja ima vrijednost 0.

18

Slika 4.1 podruje izvedivosti za sustav nejednadbi 2x 1 + 3x 2 9


x2
x1 + x 2 4 x 1, x 2 0

x1 + x 2 = 4
(0, 3)

(3, 1)
2x 1 + 3x 2 = 9

(0, 0)

(4, 0)

x1

Kako bi se odredilo je li to rjeenje optimalno, moramo provjeriti posljednji red inicijalne tablice. Negativni indikatori 4 i 5 poprimaju pozitivne vrijednosti kad se jednadba napie u eksplicitnom obliku. Ovo rjeenje nije optimalno jer se vrijednost F moe poveavati s poveavanjem kako x1 tako i x2. Kako je previe sloeno poveavati istovremeno obje varijable, slijedee rjeenje se dobiva poveavanjem x2 dok istovremeno x1 ostaje na vrijednosti 0. Poveava se x2, a ne x1 zbog toga to x2 ima vei multiplikator (5 > 4) iz ega slijedi da e poveanjem x2 proporcionalni utjecaj na funkciju cilja biti vei. Poveavanje varijable x2 je limitirano ogranienjima prikazanim u prva dva reda simpleks tablice. Prvi red odre uje da je 2x1 + 3x2 + u1 = 9. Sve dok je x1 jednako 0, ova jednadba se reducira na 3x2 + u1 = 9 iz ega slijedi 3x2 9, budui da je u2 nenegativna varijabla. Dijelei obje strane nejednadbe s 3, moe se zakljuiti da je x2 3. Napomena: desna strana ove nejednadbe dobivena je dijeljenjem konstante sa desne strane prvog reda sa odgovarajuim koeficijentom pridruenim varijabli x2. Analogno dijeljenjem konstante drugog reda sa odgovarajuim koeficijentom uz x2 slijedi x2 4. Uspore ujui nejednadbe x2 3 i x2 4 zakljuujemo da je 3 najvea vrijednost koja se moe pridruiti varijabli x2 jer se moraju zadovoljiti oba uvjeta. Kolona u ovoj simpleks tablici koja odgovara varijabli koju se eli poveavati se naziva pivot kolonom, a red iz kojeg se dobiva gornja granica poveavanja ove varijable se naziva pivot redom. Pivot kolona odgovara najnegativnijem indikatoru, a pivot red se pronalazi dijeljenjem svake konstante sa desne strane sa odgovarajuim pozitivnim brojem iz pivot kolone, izabirui red sa najmanjim takvim omjerom.

19

inicijalna tablica pivot

x1

x2

u1
1 0 0

u2
0 1 0

F
0 0 1 9 9/3 4 4/1 0
najmanji omjer

3 2 1 1 4 5

najnegativniji indikator (pivot kolona)


lan koji se nalazi i u pivot koloni i u pivot redu se naziva pivotom. Slijedei korak je pivotiranje za dobivanje nove tablice

pivot zamjena s1

inicijalna tablica

druga tablica

x1 x1 x2

x2
1

u1

u2
0 1 0

F
0 0 1 3 1 15

u1
1 0 0

u2

3 2 1 1 4 5
zamjena s 0

0 1 0

0 0 1

0 5R 1 + R 3 R 3

1 R1 R1 9 3 4 R + R R 1 2 2

2 3 1 3 2 3

1 3 1 0 3 5 0 3

Osnovne varijable su sad x2 i u2 , a odgovarajue osnovno izvedbeno rjeenje je x1 = 0, x2 = 3, u1 = 0, u2 = 1. Ova rjeenja odgovaraju vrhu (0,3) u kojem je vrijednost funkcije cilja F = 15 Prisutnost negativnog indikatora -2/3 ukazuje na to da rjeenje jo uvijek nije optimalno, zato jer se moe poveavati vrijednost F poveavajui x1 (trenutna vrijednosti je 0). U prvom i drugom redu se dijele konstante s desne strane sa pozitivnim koeficijentima uz x1. x1 9/2 i x1 3 Moe se zakljuiti da je 3 najvei broj koji x1 moe poprimiti uz zadane uvjete. Ponovno se transformira tablica s obzirom na pivota 1/3 koji je na poziciji (2,1) u drugoj tablici.

20

druga tablica pivot

x1
2 3 1 3 2 3

x2
1

u1

u2
0 1 0

F
0 0 1 3 =9 3 2/ 3 2 1 1 =3 15 1/ 3

1 3 1 0 3 5 0 3

najmanji omjer pivot red

najnegativniji indikator (pivot kolona)

zamjena s0

druga tablica

x1
2 3 1 3 2 3 pivot zamjena s1

x2
1

u1

u2
0 1 0

F
0 0 1 3 3R 2 R 2 2 1 3 R 2 + R1 R1 2R +R R 15 2 3 3 3

trea tablica (terminalna)

1 3 1 0 3 5 0 3

0 1 0

x1

x2

1 0 0

1 2 1 3 1 2

u1

u2

F
0 1 0 3 1 17

Osnovne varijable sad postaju x1 i x2, a osnovno izvedivo rjeenje je x1 = 3, x2 = 1, u1 = 0 i u2 = 0. Odgovarajui vrh je (3,1), a vrijednost funkcije cilja je F = 17. Kako indikatorski red tree tablice ne sadri negativne indikatore trenutno rjeenje je optimalno. Provjera: Jednadba prikazana u zadnjem redu se napie eksplicitno kao F = 17 u1 2u2. Zato to su koeficijenti u1 i u2 negativni, jedini nain da se povea F je da se smanje u1 i u2, a to je nemogue jer im je trenutna vrijednost 0 i uvjet je da su nenegativni. Trea tablica je konani rezultat problema i naziva se terminalna (zakljuna) tablica. Geometrijski simpleks algoritam je putovao po granicama podruja izvedivosti. Strelice na slici 4.1 pokazuju put pivotiranja. Algoritam poinje u ishoditu (0,0), nastavlja do prvog slijedeeg vrha u (0,3) i konano dolazi do vrha (3,1) u kojem se nalazi maksimalna vrijednost funkcije cilja. Simpleks algoritam za linearni program tipa standardni maksimum saetak 1. Postavlja se inicijalna tablica za zadani problem standardnog maksimuma.

21

2. Dijeli se svaka konstanta sa desne strane sa svim odgovarajuim pozitivnim lanovima u pivot koloni. 3. Pivotira se pivot koji je prona en u drugom koraku transformacije tablice 4. Ako je mogue, ponavljaju se koraci 1-3 sve dok svi indikatori ne poprime nenegativne vrijednosti. Odgovarajua tablica je tada terminalna i iz nje se oita optimalna vrijednost. Napomena: Ako su svi lanovi iznad najnegativnijeg indikatora negativni ne moe se odrediti najmanji omjer, u tom sluaju linearni program nema optimalno rjeenje. F kolona se nikad ne mijenja, pa se dogovorno izostavlja iz tablice.

4.1 Neograniena rjeenja


Svaki linearni program nema optimalno rjeenje. U slijedeem primjeru se uzima u obzir situacija u kojoj je podruje izvedivosti neogranieno, a funkcija cilja moe poprimiti vrijednosti koje su proizvoljno velike. Primjer 4.2 Maksimizirati uz granine uvjete Rjeenje: F = 2x1 5x2 10 x1 + x2 8 x1, x2 0

pivot

inicijalna tablica

2 5 1 1 2 3

x1

x2

u1
1 0 0

u2
0

10 1 8 8 0 0 1

najmanji omjer pivot red

najnegativniji indikator (pivot kolona)


Najnegativniji indikator je 3 u drugoj koloni, a jedini pozitivni broj u drugoj koloni je 1 u drugom redu, pa on mora biti pivot. Pivotiranjem se transformira tablica na slijedei nain:

22

zamjena s 0
2 5 1 0 10 5R 2 + R 1 R1 1 0 1 8 1 3R 2 + R 3 R 3 2 3 0 0 0 inicijalna tablica

x1

x2

u1

u2

3 1 5

x1

5 50 1 8 3 24 druga tablica 0 1 0 1 0 0

x2

u1

u2

Ova tablica nije terminalna obzirom da postoji negativni indikator (5), ali u toj koloni ne postoji pozitivni lan (prva kolona). To znai da se varijabla x1 u odnosu na negativni indikator moe beskonano poveavati bez krenja bilo kojih graninih uvjeta nejednadbi, a kako bi se definirao linearni program. Dakle, postoje izvedive toke koje su povezane sa proizvoljno velikim funkcijama cilja (negativan indikator je vezan s pozitivnom vrijednosti F). Kriterij tablica za problem standardnog maksimuma koji su nerjeivi Uglavnom funkcija cilja linearnog programa nema maksimum ako su lanovi iznad negativnog indikatora u inicijalnoj tablici ili bilo kojoj narednoj tablici svi nepozitivni. injenice o simpleks metodi: 1. Iako se jedini negativni indikatori unutar inicijalne tablice pojavljuju u kolonama varijabli problema, mogue je da se u kasnijim tablicama pojave negativni indikatori i u kolonama dopunskih promjenjivih varijabli. 2. Ponekad postoji vie indikatora koji imaju najnegativniju vrijednost. U tom sluaju se za odre ivanje pivot kolone koristi bilo koji od njih. 3. Ponekad se dijeljenjem konstante s desne strane odgovarajuim koeficijentom moe dobiti vie najmanjih omjera. U tom sluaju se za odre ivanje pivota koristi bilo koji od njih. Takav linearni program nazivamo degenerativnim i postoji mogunost da simpleks algoritam u e u beskonanu petlju tj. da stalno stvara istu tablicu.

23

You might also like