metode optimizacije

Upload: ivan-sanader

Post on 17-Oct-2015

25 views

Category:

Documents


0 download

DESCRIPTION

modeling and optimisation

TRANSCRIPT

  • 33

    4. MATEMATIKA I RAUNALNA PODRKA

    4.1. MATEMATIKA PODRKA

    Tek zavretkom cjelovitog postupka matematikog modeliranja, t.j. nakon pridruivanja matematikih oznaka i meuveza ivotnim zadacima, nakon opisivanja radnog okolia matematikim izrazima ( ogranienja ) i izbora funkcije cilja, pristupa se izboru matematike podrke pogodne za rjeavanje. Znaajno je tono prepoznati karakteristike matematikog zapisa pregledom svih matematikih oznaka (relacija, tablica, grafova) koji odreuju zadatak. Na temelju toga moe se izabrati poznati matematiki algoritam ili poznata metoda pretraivanja ili se moe kombinacijom vlastitog znanja i iskustva graditi vlastiti postupak.

    Da bi se do optimalnog rjeenja bilo kojeg zadatka dolo na nain primjeren Operacijskim istraivanjima, potrebno je do rjeenja doi brzo, ali i uz dozvoljenu koliinu aproksimacija. U tu svrhu, promiljen izbor matematike podrke predstavlja znaajan korak ( Korak 4., Poglavlje 1.1.1).

    4.1.1. Procjena (prepoznavanje) tipa zadatka

    Pomou Primjera 4.1., Primjera 4.2. i Primjera 4.3., koji predstavljaju matematiki gledano deterministike, kvantitativne, statike i linearne matematike modele, prikazat e se znaaj paljivog i promiljenog pristupa.

    Primjer 4.1.

    Zadan je problem proizvodnje opisan u Poglavlju 2. kao Primjer 2.2. Pridruivanjem matematikih oznaka x1 i x2 znaajnim proizvodima i analizom same proizvodnje zadana su ogranienja (27) i funkcija cilja x0 = 3x1 + x2 koju elimo optimirati. Analizirati zadatak s matematikog gledita.

    - x1 + 2x2 = 10 (27a) 6x1 + 3x2 = 30 (27b) x1 0 x2 0 (27)

    Vrijedi:

    A) Matematiki opis zadatka je kvantitativan, statiki i u cjelosti linearan.

  • 34

    B) Postoji samo jedno rjeenje koji zadovoljava sve uvjete i to je toka presjeka dva pravca u ogranienjima ili jednadbi (27a) i (27b).

    C) Funkcija cilja ima samo jedno rjeenje.

    D) Toka presjeka dva pravca moe se dobiti jednostavnim matematikim postupkom rjeavanja sistema linearnih jednadbi ili vrijedi:

    - sustav n-tog reda opisan kao bxAr

    r

    = , ima rjeenje bAx rr 1=

    - sustav ima jednoznano rjeenje ako rang matrice A odgovara redu sustava, t.j. ako je pripadna determinantna n-tog reda razliita od nule.

    - za zadani primjer vrijedi n = 2 ,

    A =

    3621

    ; [ ]Tb 3010=r ; [ ]Txxx 21=r

    - determinanta D2 iznosi 15, moe se doi do jednoznanog rjeenja ili

    =

    3010

    1623

    2

    1

    2

    1Dx

    x

    - rjeenje je x1 = 2, x2 = 6 dobiveno matematikim algoritmom, a funkciji cilja pripada iznos x0 = 12.

    Primjer 4.2.

    Zadan je problem transporta prikazan na Slici 4.1. Polazna skladita imaju koliinu robe A1 i A2, a dolazna skladita mogu primiti B1 i B2. Matematike oznake pridruuju se nepoznatim koliinama robe koja se transportira od pojedinih polaznih skladita do pojedinih dolaznih, x11 (A1 do B1), x12 (A1 do B2 ), x21 (A2 do B1 ), x22 (A2 do B2 ). Minimizirati cijenu transporta prikazanu kao funkciju cilja x0 = 2x11 +3x12 +8x21 +5x22, a ogranienjima (28) odreuje se da je potrebno isprazniti sva polazna i napuniti sva dolazna skladita:

    x11 + x12 = A1 x21 + x22 = A2 x11 + x21 = B1 x12 + x22 = B2 (28)

  • 35

    Slika 4.1.Zadatak transporta

    Vrijedi:

    A) Kao kod Primjera 4.1. matematiki opis zadatka je kvantitativan, statiki i u cjelosti linearan.

    B) Ogranienja predstavljaju sistem od etiri linearne jednadbe s etiri nepoznanice, ili red sustava je n = 4, uz

    A =

    1010010111000011

    [ ]TBBAAb 2121=r

    [ ]Txxxxx 22211211=r

    Da bi se dobilo traeno jednoznano rjeenje, za sustav od 4 jednadbe s 4 nepoznanice, rang matrice A treba biti 4. Rjeavanjem pripadne determinante D4 dobije se njezina vrijednost nula, to znai da sustav ima rang nii od potrebnog. Zadani problem nije jednoznano odreen. Rjeenje se ne postie na klasian nain matematikim algoritmom prikazanim u Primjeru 4.1, ve nekom od metoda pretraivanja moguih rjeenja.

  • 36

    Primjer 4.3.

    Zadan je problem trgovakog putnika prikazan u Poglavlju 3. kao Primjer 3.2. Zadatak je matematiki opisan nepoznanicama xij ( ji ), a funkcija cilja x0 prikazana je kao linearna kombinacija konstantnih cijena putovanja cij i nepoznanica xij . Zadatak je cjelovito opisan nizom ogranienja (29). Dodatni uvjet koji se ne ispisuje u obliku matematikih izraza je da svaka nepoznanica moe imati samo ili vrijednost 0 ili 1 (u nekom smjeru se ili ne putuje ili se putuje).

    x12 + x13 = 1 x21 + x23 = 1 x31 + x32 = 1

    x12 + x32 = 1 x21 + x31 = 1

    x13 + x23 = 1 x12 + x21 1

    x13 + x31 1 x23 + x32 1 (29)

    Vrijedi:

    A) Matematiki opis zadatka je kvantitativan, statiki i u cjelosti linearan.

    B) Vektor nepoznanica je

    [ ]Txxxxxxx 323123211312=r ,

    a sustav ogranienja ima 9 linearnih jednadbi i nejednadbi.

    C) U linearnim zadacima koji su zadani s vie jednadbi (i nejednadbi) od broja nepoznanica, ima beskonaan broj moguih rjeenja. Budui da je u ovom zadatku zadano da nepoznanice mogu biti samo 0 i 1, samo u ovakvim zadacima nema beskonaan broj rjeenja, ve nepoznanice mogu biti meusobno kombinirane na 2n naina (za n nepoznanica) ili ovdje na 26 naina. Koji od naina zadovoljavaju sva ogranienja, a koji od njih je optimalan treba odrediti metodom pretraivanja.

    Premda svi dati primjeri (4.1., 4.2. i 4.3), prema matematikom zapisu, imaju NA PRVI POGLED iste znaajke, daljni opis zadataka pokazuje da je znaajno izvriti i DRUGI, pa i VIE OSTALIH POGLEDA da bi se primijenila primjerena matematika podrka, Slika 4.2.

  • 37

    Slika 4.2. Procjena tipa zadatka prema matematikom modelu

    Simpleks metoda, kao karakteristina metoda Linearnog programiranja, oito je primjenjiva kod zadataka kao to je Primjer 4.1., dok bi pokuaji primjene kod zadataka kao to je Primjer 4.2. bili gubitak vremena i ivaca

    Nain rjeavanja primjenjiv kod Primjera 4.2. razvijen je pod nazivom Transportni problemi. Takav nain rjeavanja mogao bi se primijeniti kod Primjera 4.3., ali uz prilagodbe na rjeenja 0 i 1, pa se u svrhu najbreg rjeavanja zadataka iz Primjera 4.3. razvijaju posebni postupci sa zajednikim nazivom 0-1 Programiranje.

    4.1.2. Standardiziranje matematikog prikaza

    Rjeavanje zadataka postojeim metodama, kao i razvoj novih metoda moe se olakati i ubrzati standardiziranjem matematikog prikaza. Pod tim se podrazumijeva da zadaci zadravaju temeljne matematike znaajke, pa se standardiziranje mora provoditi dozvoljenim matematikim transformacijama. Ne treba naglaavati, ve samo podsjetiti, da zadane informacije o sustavu moraju biti u cjelosti sauvane t.j. identine u svim oblicima matematikog zapisa.

    U veini zadataka nastoji se postii matrini oblik matematikog zapisa, kao najpogodniji za rjeavanje. Znaajni podaci o zadatku postaju elementi redaka i

  • 38

    stupaca matrica, koje se koriste u rjeavanju, kao kod Poglavlja 2., Primjeri 2.1., 2.2., 2.4., kod Poglavlja 4., Primjeri 4.1., 4.2. i 4.3.

    Primjena postupaka nazvanih pojamom matematiki dozvoljene promjene u nainu pisanja matematikih modela moe se ilustrirati jednostavnim, karakteristinim primjerima:

    a) vrijedi,

    853853 2121 + xxxx (30)

    ili

    472472 2121 + xxxx (31)

    t.j. ako se nejednadbe u cjelosti pomnoe s (-1), mijenjaju se oznake nejednadbi, to omoguava da se cijeli skup ogranienja zapie samo ili sa oznakama ili samo sa oznakama . Na ovaj se nain skup ogranienja iz Primjera 3.3. Poglavlja 3.2.2., prikazan izvorno relacijama (22), moe prikazati ili relacijama (32) ili relacijama (33). Zadani prostor rjeenja u cjelosti zadrava izvorni oblik.

    00

    52.066.03

    55533.0

    2

    1

    21

    21

    21

    21

    +

    +

    x

    x

    xx

    xx

    xx

    xx

    (32)

    00

    52.066.03

    55533.0

    2

    1

    21

    21

    21

    21

    +

    +

    x

    x

    xx

    xx

    xx

    xx

    (33)

  • 39

    b) vrijedi

    0753753

    3

    32121

    =+x

    xxxxx (34)

    0753753

    3

    32121

    =x

    xxxxx (35)

    t.j. uvoenjem novih nepoznanica izbjegava se rad sa nejednadabama. Tada se ogranienja koja se odnose na same iznose nepoznanica ( 0ix ) izdvajaju i u primijenjenom postupku rjeavanja posebno nadziru. Na ovaj se nain skup ogranienja iz Primjera 3.3. Poglavlja 3.2.2., prikazan izvorno relacijama (22), moe prikazati relacijama (36). Zadani prostor rjeenja u cjelosti zadrava izvorni oblik, ali se poveava broj nepoznanica po kojima zadatak treba rjeavati. Pretvorba nejednadbi u jednadbe, kao promjena zapisa matematikog modela, provest e se samo ako se dodavanjem novih nepoznanica znaajno skrauje trajanje raunanja u odnosu na izvorni rad s nejednadbama.

    000000

    52.066.03

    55533.0

    6

    5

    4

    3

    2

    1

    621

    521

    421

    321

    =++

    =+

    =+

    =++

    x

    x

    x

    x

    x

    x

    uz

    xxx

    xxx

    xxx

    xxx

    (36)

  • 40

    c) vrijedi

    maksimum = 210 53 xxx minimum 210 53 xxg +=

    gdje je 00 xg (37)

    t.j. metode za rjeavanje zadataka linearnog programiranja mogu se razvijati samo prema postupcima za maksimizaciju ili samo prema postupcima za minimizaciju. Na taj nain se skrauje vrijeme raunanja, budui da nije potrebno za vrijeme izvoenja algoritma provjeravati smjer traenja ekstrema. Potrebno je samo prilagoditi konanu optimalnu vrijednost funkcije cilja.

    4.2. RAUNALNA PODRKA

    Razvoj Operacijskih istraivanja, u prvom redu, usmjeren je na iznalaenje znanstvenih, matematikih metoda donoenja optimalnih odluka na organiziran (optimalan) nain. irenjem podruja primjene, zahtjevi za optimalnim rjeenjima kao i sami sustavi o kojima se odluke donose postali su sloeniji, pa su samo ovjek, matematika, olovka i papir postali nedovoljni. Uvodi se primjena digitalnih raunala, iji razvoj i dananje mogunosti, primjenu raunala ine neizostavnim dijelom Operacijskih istraivanja I raunalna podrka kod Operacijskih istraivanja moe se koristiti na bolji i loiji nain. Ovdje e se upozoriti samo na neke, najznaajnije mogunosti poboljanja primjene raunala.

    4.2.1. Izbor raunalne podrke

    Izbor raunalne podrke provodi se na samom kraju, kad ve povjereni zadatak u cjelosti poznajemo. Izbor nije jednoznaan i provodi se na temelju kompromisne odluke procjenom vie mogunosti, Slika 4.3.

    Gotovi programski paketi

    Na temelju iskustva i velike koliine informacija o razvijenim podrujima Operacijskih istraivanja zadatak koji se rjeava moe se povezati s nekim, ve poznatim, podrujem. Tada se moe pristupiti traenju ve poznatog, razvijenog programskog paketa, podaci se prilagode potrebama postojeeg paketa, upiu se i preuzmu rjeenja. Za primjenu gotovih programskih paketa potrebno je da tekui zadatak ima identine karakteristike kao to je odreeno programom i nisu mogue

  • 41

    promjene programa (nije mogue dodavanje posebnosti koje se mogu u zadacima pojaviti).

    Slika 4.3 Mogunosti pri izboru raunalne podrke

    Izrada vlastitih programskih rjeenja

    Za zadatke kojima se ne mogu pronai odgovarajui gotovi programski paketi, razvijaju se vlastiti programi. Kod pisanja vlastitih programa najznaajnija se dva problema:

    - poznavanje programskih jezika, - prilagodljivost karakteristika zadatka kojeg rjeavamo programskim jezicima .

    Da bi, u ovom sluaju, izbor programske podrke bio u stilu Operacijskih istraivanja (minimalno utroeno vrijeme pristupa raunanju, minimalno vrijeme raunanja i pregledni rezultati) potreban je kompromis. Potrebno je procijeniti da li e vrijeme uenja novog (kvalitetnog) programskog jezika i razvoj paketa u njemu biti due nego to bi trajao razvoj paketa u poznatom programskom jeziku, manje kvalitetnom i sa duim vremenom raunanja.

  • 42

    Takoer, znaajno za izbor programske podrke je i konani cilj rjeavanja pojedinih zadataka. Ako se zadatak rjeava za samostalnog korisnika koji e ponueni postupak i programsko rjeenje viekratno koristiti, programsko rjeenje mora biti izvedeno na slikovit i jednostavan nain i zahtijevat e vie truda kod razvoja paketa. Ako se rjeava samo jedan, unikatan, zadatak, tada se paket moe prilagoditi tom zadatku i osobi koja taj zadatak rjeava. Posebna pozornost danas se, pri razvoju programskih paketa, poklanja mogunostima primjene uz pomo Interneta.

    Raunalna oprema

    Konano, izbor programske podrke ovisit e i o raunalnoj opremi koja se koristi u postupku rjeavanja. Donedavno, raunalna oprema je bila na prvom mjestu kao ograniavajua veliina, a danas su mogunosti raunalne opreme velike pa se oprema ne spominje kao ograniavajua veliina, ve kao poticajna veliina koja moe dati doprinos brem rjeavanju povjerenog zadatka.

    4.2.2. Izrada vlastitih programskih rjeenja

    Pri izradi vlastitih programskih rjeenja, nezavisno o izabranom programskom jeziku, openito se moe utjecati na vie detalja i time poboljati postupak rjeavanja.

    Ulazni podaci: veza korisnik raunalo

    Ulazni podaci predstavljaju kljuni trenutak kod primjene raunala. Nakon to su paljivo i organizirano provedeni svi postupci od zadavanja zadatka pa sve do trenutka rjeavanja, potrebno je i pri unoenju ulaznih podataka smanjiti mogunosti pogreke na minimum. Veza korisnik raunalo mora biti jednostavno organizirana, pregledna i osloboena svih suvinih podataka, Primjer 5.1.

    Primjer 5.1.

    Ogranienja u procesu proizvodnje, koji je na slian nain organiziran kao Primjer 2.2. Poglavlja 2.2., mogu se opisati relacijama (22), Poglavlja 3.2.2. Programsko rjeenje prilagoeno je standardiziranom matematikom zapisu kojim su sve nejednadbe prikazane kao jednadbe, relacije (36) Poglavlja 4.1.2.. Ogranienja na iznose varijabli ( 0ix ) ne unose se posebno kao ulazni podaci, ve je programski rijeen nadzor nad njima. Takoer, matematiki, zadana ogranienja su standardizirana na matrini zapis, pa se preostali dio relacije (36) moe prikazati tablino, Tablica 4.1.

  • 43

    x1 x2 x3 x4 x5 x6 Rjeenje -0.3 1 1 0 0 0 3

    5 -5 0 1 0 0 5 3 0.6 0 0 -1 0 6

    0.2 1 0 0 0 1 5

    Tablica 4.1.

    Elemente matrinog zapisa tvore zadani dijelovi matematikog opisa i nizovi jedinica i nula nastali standardizacijom zapisa. Koliko ima nejednadbi ogranienja, toliko ima novih varijabli, novih stupaca matrice podataka ispunjenih jedinicama i nulama na potrebnim mjestima. Runi unos veeg broja rasporeenih jedinica i nula moe biti nepotreban gubitak vremena, a i jako monoton zadatak pri kojem su mogunosti pogreke velike.

    x1 x2

    -0.3 1 5 -5 3 0.6

    0.2 1

    a) ovjek

    x3 x4 x5 x6 1 0 0 0 0 1 0 0 0 0 -1 0 0 0 0 1

    b) raunalo

    Rjeenje 3 5 6 5

    c) ovjek

    Tablica 4.2.

  • 34

    Da bi se smanjile mogunosti pogreke, unos dijelova podataka ostavlja se raunalu t.j. raunalo samo, programski generira obino one podatke koji nastaju prilagodbama matematikog zapisa (standardiziranje) i koji ostaju zajedniki za svaki zadatak ovakvog tipa. Korisniku se ostavlja unos samo podataka karakteristinih i posebnih za tekui zadatak.

    Tako se podaci matrinog zapisa iz Tablice 4.1. razdvajaju, prema Tablicama 4.2. a), b) i c). Podatke iz Tablica 4.2.a) i c) unosi ovjek, a dio matematikog modela prikazan Tablicom 4.2.b) programski generira raunalo.

    Programsko rjeenje

    Svako programsko rjeenje, pisano u bilo kojem programskom jeziku i temeljeno na izabranom matematikom postupku, predstavlja kompromisni izbor . Kompromisna odluka mora se donijeti izmeu elja za tonou rezultata i duljine trajanja pretraivanja.

    Primjer 4.2.

    Prema Primjeru 2.3. Poglavlja 2.2. zadana je funkcija cilja relacijom (9) ili potrebno je odrediti ekstrem funkcije

    x0 u ovisnosti o parametru .

    210

    pi

    = ex

    Matematiki ekstrem zadane funkcije odreuje se rjeavanjem relacije (38).

    00 =ddx

    (38)

    Programskim rjeenjem za traenje optimalnih vrijednosti, koje bi se temeljilo na relaciji (38), ne mogu se rjeavati derivacije, ve se traenje rjeenja temelji na relaciji (39) ili traenju odgovarajuih diferencijala.

    00

    x

    (39)

  • 35

    Budui da su diferencijali promjene zadanih veliina u konanim iznosima, oito je da se primjenom programa ne postiu prave optimalne vrijednosti, ve pribline. Koliko e te vrijednosti biti bliske pravima ovisit e o koraku , to je korak manji to su vrijednosti tonije, ali je i trajanje iteracija (pretraivanja) znaajno due. Programski e se ostaviti mogunost kompromisa i mogunost zadavanja irina podruja i eljene kvaliteta rezultata i time skratiti ili produiti vrijeme raunanja.

    Ovdje je naglaeno da se elje za optimalno izvedenim programskim rjeenjem mogu sudariti s vie mjera kvalitete, ovisno o potrebama korisnika. Optimalno programsko rjeenje u smislu tonosti nije optimalno i u smislu trajanja raunanja i obratno. Tako se trud oko optimiranja samog programskog rjeenja ponekad moe svesti na kompromise t.j. autor programskog rjeenja mora, ili sam odluiti, ili ostaviti korisniku mogunost odluke o kvaliteti rezultata.

    Izlazni rezultati: veza korisnik raunalo

    Oblikovanje izlaznih rezultata mora biti usmjereno, u prvom redu, na preglednost rezultata. Korisniku se nude kratke i najvanije informacije o optimalnom rjeenju, ne zatrpava se pomonim informacijama, ali treba ostaviti i mogunost da korisnik izdvojeno dobije i pomone informacije, ako to eli.

    Tako, optimalno kreirani izlazni rezultati sadravaju organiziranu i preglednu sliku optimalnih rjeenja i jednostavne upite o dodatnim informacijama koje izvedeno programsko rjeenje moe ponuditi.

    4.3. ZAKLJUAK

    Izborom matematike i raunalne podrke konano se zavrava rjeavanje postavljenog zadatka. Zahtjevi vezani za matematiku i raunalnu podrku mogu se jo proiriti i analizom osjetljivosti rezultata. Na temelju ve izdvojenih i izabranih matematikih i raunalnih postupaka, pronalazi se nain kako brzo i jednostavno izraunati promjene (ako ih ima) u optimalnim rjeenjima koje bi nastupile zbog veih ili manjih promjena ulaznih podataka. Analiza osjetljivosti ne podrazumijeva ponavljanje cijelog postupka raunanja, ve brzu procjenu moguih promjena na temelju samo tekuih optimalnih rjeenja.

    Ovim poglavljem naglaava se da je kod traenja optimalnog rjeenja na organizirani nain potreban oprez i kod primjene matematike i raunalne podrke, budui da je svaki zadatak uvijek pria za sebe. Takoer, kod primjene raunalne podrke naglaava se da ne odreuje samo vrsta zadatka nain rjeavanja, ve to ini i tehnika

  • 36

    opremljenost korisnika. Upravo postavljeni tekui zadatak kao matematika pria za sebe i tehnika opremljenost (raunalna i programski jezici) izvor su stalnih znanstvenih doprinosa u okviru Operacijskih istraivanja.

    Poglavljima 1.,2. i 3. upozorava se na veliku raznolikost i posebnosti ivota oko nas i utjecajima tih raznolikosti na donoenje optimalnih odluka. Poglavlje 4. pokazuje da se optimalne odluke najbre donose kod raznolikih zadataka primjenom dobro razvijene i prilagoene matematike i raunalne podrke, pa je razvoj matematike podrke i dobra informiranost o primjenjivoj raunalnoj podrci pravi znanstveni izazov.