Operaciona Istraživanja skripta sa predavanja prof Katarine Surle 2002/2003. Nadj Danijel, 2003. enje nje nastave i pripremu usmenog ispita. Unapred se Skripta je namenjena da olakša pra e izvinjavam na svim greškama u tekstu, kojih i pored najbolje volje mora biti (u nekim delovima fale yu slova). Razjašnjenja za neke eventualne nejasno e predlažem da se potraže u zbirci zadataka iz Operacionih istraživanja. Posebnu zahvalnost dugujem , koja je uredno pratila i beležila sve na predavanjima, a zatim te beleške i Tamari Doroti sredila, što je ovu skriptu u i nilo mogu om. inilo om. Ne ohrabruju se bilo kakve malverzacije ili zloupotrebe u smislu prepisivanja na ispitu itd, jer je u ovu skriptu uloženo puno truda i sa mnogo manje truda ispit može da se spremi. Ujedno pozivam sve koji raspolažu znanjem i vremenom, da traže ovu skriptu od mene u tex obliku i da rade na njenom poboljšanju, tj ispravljanje grešaka, crtanje slika itd.
[email protected]
1
Konveksni skupovi Definition Vektorski prostor R n , R, 1. 2. 3. 4.
x, y R n
x y ax ay x x x x x 1x x m i R. Suma i1 x i 1, . . . , m, i x i se naziva linearna m kombinacija. Linearna kombinacija i1 x i x i 0 je linearno zavisna ako m i1 | i | 0, a linearno nezavisna ako je im1 | i | 0.
Definition Neka je x i R n ,
Definition Preslikavanje A : X Y je linearno ako za x, y X
, R važi
A x y Ax Ay Skup svih linearnih preslikavanja (funkcionala) R n R se obeležava R n predstavlja linearni vektorski prostor. Za f , g R n f , x ozna ava ava f primenjeno na x. f f g, x f f , x g, x sabiranje f f , x f f , x množenje skalarom
Neka je X n linearni vektorski prostor sa bazom e i , i 1 , . . . , n, a Y m linearni vektorski prostor sa bazom q j , j 1,..., m. Preslikavanje X n Y m je linearno (može se zadati matricom) A a ij i1,...,n; j j1,...,m m
Ae j
aij qi i1
n
x X n x
x j e j j1
n
Ax A x j e j j1
n
n
m
Ae j x j a ij q i x j Ae j1
j1
1
i1
Definition Skup K R n je konveksan ako je prazan ili ako za svaka dva elementa
a, b K važi
a 1 b
K , , 0 1
Ceo R n je konveksan kao i svaki njegov interval. Presek održava konveksnost, konveksnost, a unija ne. Množenje skalarom i sabiranje skupova održavaju održavaju konveksnost. m Definition Linearna kombinacija i1 a i i se naziva konveksna kombinacija za a i R n , m i R, i 1, . . . , m, ako važi i1 i 1, 0. Definition X R n je potprostor prostora R n ako za x, y X i , R važi x y
X .
2
U slucaju m2 može se zapisati: a 1 b, 0 1; 1 a 1 2 a 2 , 1, 2 0, 1 2 1 Definition Konveksna obvojnica skupa S R n je skup svih konveksnih kombinacija elemenata iz S:
n
n
i1
i1
CoS i a i , n N , a i S, i 0, i 1, . . . , n, i 1 Definition Neka je Y m X n . Linearna mnogostrukost dimenzije m je skup M a Y m ,
a X n . Maksimalne linearne mnogostrukosti dimenzije u prostoru dimenzije n su dimenzije n-1 i nazivaju se hiperravni . Dat je vektorski prostor X n sa bazom e j , i1,...,n, i skup svih funkcionala f unkcionala X n sa bazom e j ,
j1,...,n. Tada važi:
1, j k
e j , e k jk
0, j
k
Theorem Neka je h 0 linearni funkcional u prostoru X n , c R. Tada skup H x X n , h , x c predstavlja hiperravan u prostoru X n .
H x X n , h , x c i H x X n , h , x c su potprostori prostora X n i
konveksni su skupovi. H H X n ; H H
Svaka hiperravan deli prostor na dva potprostora. i , i1,...,m hiperravni u prostoru X n . Ako je skup K im1 H i on Definition Neka su H , se naziva konveksan poliedar , , m n. H ;
Definition Vrh poliedra je v ni1 H i ,l ako postoji, gde su H i ,l hiperravni koje definišu
poliedar.
Svakom H i može se pridružiti funkcional na sledeci nacin: H i x X n : h i , x b i . Tada se definiše a ij h i , e j , a onda je H i x X n : jn1 a ij x x j b i . Dakle svaki poluprostor H i , i1,...,m je definisan linearnim nejednainama. Zato je K rešenje sistema linearnih nejednaina jn1 a ij x x j b i , i1,...,m. Konveksni Konveksni poliedri mogu m ogu biti ogranieni i neogranieni. Ogranien poliedar je onaj kod koga postoji lopta konanog poluprenika, takva da ceo poliedar leži u njoj. Osnovne karakteristike poliedra su što ima vrhove i ivice. Neka je h i , x b i hiperravan, x R n . x R n x jn1 x j e j , gde je e j , j1,...,n baza vektorskog prostora Rn . n
h i , x
h i ,
x j e j
j1
n
x j h i, e j j1 n
x j aij b i
2
j1
Vrh se dobija kao rešenje sistema jednaina jn1 x j a ij b i , i1,...,m. Vrhova može biti mn , sto je konaan broj, a ne mora biti ni jedan. Definition Neka je K im1 H i poliedar i neka je l ni11 H , i , gde je n dimenzija prostora. Tada se l K naziva ivica poliedra , a l je prava na kojoj ivica leži. Ivica 3
poliedra može biti prava, poluprava ili duž. en konveksan poliedar i neka su v , i , i1,...,l svi njegovi vrhovi. Theorem Neka je K ograni en Tada je K konveksna obvojnica skupa vrhova, K Cov 1 , . . . , v l , tj za x K važi x
il1 i v i , il1 i
1, i
0, i1,...,l
Proof (skica dokaza)
enog konveksnog poliedra sa bilo kojom hiperravni koja je Lemma Presek ograni enog njegova stranica je poliedar u prostoru dimenzije n-1. n1 Ograni en en poliedar u R 1 je duž sa vrhovima v 1 i v 2 . Parametrizacija: v 1 1 v 2 , 0 1, sto je konveksna kombinacija vrhova IH pretpostavimo da važi za n-1 (R n1 ) n: Proizvoljna ta ka ka x K se spoji sa vrhom v 1 i time je odredjena prava. Presek te prave i poliedra je duž v 1 y, gde se ta ka ka y nalazi na stranici poliedra, koja je poliedar dim n-1 i po IH, važi da je y konveksna kombinacija vrhova poliedra u n-1 p
y
p
i wi , i 1, i 0, w i v 1, . . . , v l , i 1, . . . , p i1
3
i1
Po slu aju aju za 1 dim, važi da je x konveksna kombinacija v 1 i y x y 1 v 1 , 0 1 Zameni se y iz (3) u (4) i time se dobija x predstavljeno kao konveksnu kombinacija vrhova poliedra.
4
4
Linearno programiranje Zadatak je najceše da se optimizuje funkcija cilja nad zadatim skupom. Ukoliko je ta ta zadata funkcija cilja linearna, kao i ogranienja kojima je zadat skup, radi se o problemu linearnog programiranja. J u min J(u) funkcija cilja, U dopustiv skup, u U dopustivo rešenje; u U , U R n
vektora, J u c, u min za linearnu funkciju cilja se uzima skalarni proizvod vektora, n n c, u i1 c i u i , c, u R . Posmatra se J u min, ako je potreban max onda J u max J u min. U u R n : Au b, u 0, A R mn , b R m ; skup U je konveksni poliedar. Oblici problema linearnog programiranja: 1.
Osnovni oblik
J u c, u min sva ogranienja su u obliku nejednakosti Au b u0 J u c, u min drugi nain zapisivanja istog oblika u U U u R n : Au b, u 0 2.
Standardni oblik
J u c, u min Ogranienja su u obliku jednakosti j ednakosti Au b u0 Au b 3.
jn1 a ij u j
bi
jn1 a ij u j b i jn1 a ij u j b i
ki i oblik Kanoni k
Ako je u standardnom obliku matrica A(C|E), gde je E mm jedinina matrica, onda je problem u kanonskoj formi. Neka je rang A r . Pošto je A(C|E), rangE m r m. Svaki problem se može prebaciti iz jednog j ednog oblika u drugi. Ako se nejednaine prebacuju u jednaine proširuje se dimenzija problema: jn1 a ij u j d i b i , i1,...,m; dodaje se i d i 0, i1,...,m. Od sada se pretpostavlja da je problem linearnog programiranja dat u standardnom obliku. Au b
Raspisan sistem:
5
a 11 u 1 a 12 u 2 . . . a 1n u n b 1 ...
a m1 u 1 a m2 u 2 . . . a mn u n b m
Sa A i se obeležavaju vektori matrice A: A 1
a 11 a 21
. . . Ai
...
a m1 A A 1 A 2 . . . A n
a 1i a 2i ...
. . . Am
a mi
a 1n a 2n ...
,
pa A može da se zapiše:
a mn
Au b A 1 u 1 A 2 u 2 . . . A n u n b Definition Za svaku ta ku v U sa komponentama v v 1 , v 2 , . . . , v n i osobinom
A j1 v j1 A j2 v j2 . . . A jr v jr b
1
gde su vektori kolona A j1 , . . . , A jr linearno nezavisni, kaže se da je vrh skupa U, ako je rang A r i v j 0 za j jl, l 1, . . . , r.
Vektori baze vrha v su vektori kolona koji se javljaju u 1 , B A j1 , A j2 , . . . , A jr .
Matrica baze vrha v B
A j1 A j2 . . . A jr .
Komponente v j1 , v j2 , . . . , v jr vrha v se nazivaju bazine. Ostale komponente su nula i one su nebazine. Ako su sve bazi ne komponente v ij 0, i1,...,r, onda je taj vrh nedegenerisan . Ako medju bazi nim komponentama postoji neka tako da v jk 0, 1 k r , taj vrh je degenerisan. Degenerisan vrh ima više baza.
Simpleks metod Ako postoji rešenje problema linearnog programiranja, onda postoji vrh dopustivog skupa u kome funkcija cilja dostiže optimalnu vrednost (minimum ili maksimum). Rešenje ne mora da bude jedinstveno. Suština simpleks metoda je da pronadje vrhove, obilazi jedan po jedan i rauna vrednosti funkcije cilja za svaki vrh. Onda se traži minimalna vrednost. Ipak, to je neupotrebljivo u praksi ako su problemi veih dimenzija. Simpleks metod odbacuje neke vrhove, pa je ra unanje lakše. Ovom metodom se rešavaju realni problemi. Sekundarni simpleks metod Rešava se problem: J u c, u min Au b u0
6
b R m , rang A r , r m A r n
Polazi se od poznatog vrha v. Pravi se metod koji proverava da li je v optimalno rešenje, a ako nije, daje put do vrha w, tako da je J(w)J(v). Pretpostavi se da je prvih r vektora baza: B A 1 , A 2 , . . . , A r , bazine komponente vrha v su: v
v1 v2 ...
, a za vektor u R n , bazine komponente su:
u1 u2
...
v r
u r
Pretpostavi se da je vrh v nedegenerisan, sledi da je v i A 1 v 1 A 2 v 2 . . . A r v r b odnosno:
0, i 1,..., r . Zato važi:
1
Bv b v B 1 b
Osnosno za bilo koje u U važi: A 1 u 1 A 2 u 2 . . . A r u r A r 1 u r 1 . . . A n u n b B
2
B A r 1 u r 1 . . . A n u n b det B 0, jer su A 1 , . . . , A r linearno nezavisni B 1 n
B A k uk B b v 1
3
1
k r 1
B 1 A k je vektor, B 1 A k s sk je s-ta komponenta tog vektora. Raspiše se sistem
pomou nove oznake:
u1 u2
1r 1 u r 1 . . . 1n u n v 1 2r 1 u r 1 . . . 2n u n v 2
4
u r rr 1 u r 1 . . . rn u n v r
Ovaj sistem izražava bazine promenljive preko nebazinih. Isto se uradi i za funkciju cilja: n
J u c, u c ,
ciui
ir 1 n
v
B A k u k
iz (3)
1
k r 1 n
J u c , v c ,
n
B 1 A
ir 1
iui
ciui
ir 1
n
c , v
c , B A i ci ui 1
ir 1
i
n
J v
iui
5
ir 1
7
r
c, B 1 A
i
i
cs si c i
ci
s1
Sad je (5) funkcija cilja izražena preko nebazinih komponenti. Vrhu v pridružuje se simpleks tabela: u 1 u 2 u r u r 1 u1 1 u2 0
0
0
1r 1 1r 2 1n
1
0
2r 1 2r 2
2n
v v1 v2
u r 0
0
1
rr 1
rr 2
rn
0
0
0
r 1
r 2
n
i 0, i 1 , . . . , r zato što i
sr 1 c s si c i
u r 2
ci
un
tabela 1
v r J v
c i 0 jer je jedino ii 1, u prvom
delu tabele, a ostali su 0. Na osnovu tabele vidi se da li je vrh v rešenje ili treba tražiti novi vrh w tako da je J(w)J(v). Promene koje se prave u vektoru v su minimalne, tj menja se samo jedna komponenta - jedna bazina se izbacuje, a jedna nebazina ubacuje u bazu. Time se dobija novi vektor w. Za neku nebazinu komponentu u k , r 1 k n formira se: u 1 v 1 1k u k ...
6
u i v i ik u k ...
u r v r rk u k
Ovo se dobija iz (4), to je isto što i Aub. 7
J u J v k u k sledi iz (5) gde od sume ostaje samo k u k .
Na osnovu simpleks tabele vrha v razlikuju se tri sluaja: 1. za sve komponente važi: i c , B 1 A i c i 0, i r 1 , . . . , n Pokazuje se da je tada vrh v rešenje problema. Treba pokazati da je u U , J v J u
8
8
J u c, u r
n
ciui ciui i1
ir 1
n
c , c , B 1 A i u i
sledi iz (8)
ir 1 n
c , B 1 A i u i
iz (3)
ir 1
v
J v 2.
3.
k , r 1 k n, tako da k 0 i ik 0, i 1,..., r .
Postoji kolona tako da je k 0, a iznad nje nema pozitivnog broja. Tada zadatak nema rešenja. Pokazuje se da je funkcija cilja tada neograniena sa donje strane, tj da nema minimum. U sistemu (6) svi ik su manji od nule, a u k 0 po definiciji. Pošto je k 0, a ik 0, i 1 , . . . , r , u k se može pustiti da teži ka beskonano, a da još uvek ostane u U, tj da važi Aub. Kada se to ubaci u (7) dobija se J u , u U , odnosno funkcija je neograniena sa donje strane. k , r 1 k n, tako da k 0 i i, 1 i r , ik 0. Postoji kolona u kojoj je k 0 i u toj koloni postoji element koji je pozitivan. Dakle postoji skup I k i : 1 i r , ik 0 Tada je J u J v k u k J v, odnosno nova taka ima manju vrednost funkcije cilja. Da bi ta taka pripadala U, mora u (6) svako ui da bude nenegativno. Kada je ik 0 nema problema, ali za ik 0 mogu se javiti problemi, tada treba da važi: v i ik u k vik i u k , ik 0 Da bi sve jednaine u (6) bile nenegativne treba da važi min vik i u k , pa se za u k uzima baš min i I k
vi ik
, oznaava sa
vs sk
i I k
i sk se naziva pivot. Tada je u i
dakle u U . Taka definisana sistemom (6) oznaava se w s w 1 v 1 1k vsk
w 1 , . . . , w n ,
0,
gde je:
... s 0 w s v s sk vsk
ova komp izlazi iz
... s w k vsk
ulazi u bazu
...
w i 0, i r 1,... k 1, k 1 , . . . , n
nebazicne komp
Sada se može odrediti baza vrha w i sistem Aub zapisati preko te baze. Na osnovu s-te jednaine sistema (4) važi:
9
n
sk u k v s
u s si u i / sk 1 ir 1 ik n
si s s usk sk u k vsk ui
9
ir 1 ik
U ostale jednaine zameni se u k : ui vi
Po w i
vi
n
n
jr 1
jr 1 jk
ij u j vi ij u j ik
n
sj vs us sk sk sk u j jr 1 jk
ik vsk s , sledi: ui wi
ik sk
is
n
us jr 1 jk
ij
sj ik u j sk
ij
Ova formula važi za i 1,..., s 1, s 1 , . . . , r u s i u k menjaju mesta u tabeli Pri prelasku na novu bazu važe nove vrednosti za : ik is , i 1,..., s 1, s 1,..., r sk sj ij ij ik , i 1,..., s 1, s 1 , . . . , r ; j sk pravilo pravougaonika
ks
kj
1 sk sj sk ,
r 1,... k 1, k 1 , . . . , n;
j r 1,... k 1, k 1,..., n
Poslednja vrsta se transformiše: vs J u J v i sk k s sk sj j j k , j r 1,... k 1, k 1,..., n sk Na osnovu ovih jednaina dobija se postupak za transformaciju tabele: pivot prelazi u svoj inverzni broj elementi kolone u kojoj je pivot se podele sa pivotom i pomnože sa -1 (osim pivota) elementi reda u kome je pivot se podele sa pivotom ostali elementi tabele se transformišu na osnovu pravila pravougaonika u s i u k zamene mesta Na ovaj nain je dobijena tabela za vrh w i ponovo se razmatraju sluaji 1,2 i 3. Ako zadatak ima rešenje, onda postoji vrh u kome funkcija dostiže minimum. Do rešenja se stiže u konano mnogo koraka jer ima konano mnogo vrhova. Definisani simpleks metod primenjuje se za problem u standardnom obliku. Za problem koji je dat u osnovnom obliku uvode se sledee promene:
10
J u c, u min Au b u0
10
Prvo se ovaj sistem transformiše u standardni oblik a 11 u 1 a 12 u 2 . . . a 1n u n d 1 0 d 2 . . . 0 d m b 1 a 21 u 1 a 22 u 2 . . . a 2n u n 0 d 1 d 2 . . . 0 d m b 2
11
...
a m1 u 1 a m2 u 2 . . . a mn u n 0 d 1 0 d 2 . . . d m b m
Promenljive d i 0, i1,...,m, se nazivaju dopunske promenljive. Uvodi se nova oznaka x u 1 , u 2 , . . . , u n , d 1 , . . . , d m u, d . Sa C se oznaava matrica novog sistema, C AE mmn . rang(C)m, jer je rang(E)m. c
c1, c2, . . . , cn, 0 , . . . , 0 m
x 0, za u i 0 važi po zahtevima za U, a za d i po definiciji.
Dobijen je novi sistem:
J u c , x min Cu b x 0
12
Svako rešenje sistema (12) je ujedno i rešenje sistema (10) i obrnuto. Za problem (12) je ispunjeno rang(C)m i važi pretpostavka da je problem nedegenerisan. Još je potrebno odrediti neki vrh. Uzima se vektor v 0,...,0, b 1 , . . . , b m X ; X x R nm , Cx b, x 0 Vektor v je vrh jer uz pozitivne komponente vrha v stoje linearno nezavisni vektori kolone matrice C (uz bi stoji jedinini vektor e i ). Matrica vrha v je B e 1 e 2 . . . e m . Sledi da kada je b0 vrh je automatski poznat, jer je tada lako utvrditi da su vektori linearno nezavisni. Ovde su ve nebazine komponente izražene preko bazinih i sada se može primeniti simpleks metoda. Sistem (11) odgovara proširenoj simpleks tabeli. eše se koristi njen skraen oblik, bez E: d 1 d 2
u1 u2 . . . un a 11 a 12 a 1n b 1 a 21 a 22 a 2n b 2
...
...
tabela 2
d m a m1 a m2 a mn b m c 1 c 2 . . . c n J v
Poslednja vrsta je vektor c iz J(u), ali suprotnog znaka. Ova tabela se razmatra na isti nain kao tabela 1, ispituju se 1,2 i 3. sluaj.
Primarni simpleks metod
11
Sekundarni simpleks metod je primenjiv na standardni i opšti oblik problema linearnog programiranja, medjutim ako se posmatra neki drugi oblik, javljaju se sledei problemi: kako utvrditi da li je rang A m? Kako eliminisati zavisne jednaine iz sistema? kako utvrditi da li je U ? Ako je U onda sistem nema rešenje. ako je U kako pronai vrh v? Ovaj metod daje odgovor na sva tri pitanja. Ideja je da se formira veštaki problem koji zadovoljava uslove sekundarnog simpleks metoda i da se rešavajui taj problem dobijaju odgovori na prethodna pitanja. Polazi se od problema: J u c, u min Au b u0
1
sa sistemom: a 11 u 1 a 12 u 2 . . . a 1n u n b 1
2
...
a m1 u 1 a m2 u 2 . . . a mn u n b m
uvode se veštake promenljive u ni , i
1 , . . . , m i dobija se sistem:
a 11 u 1 a 12 u 2 . . . a 1n u n u n1 a 21 u 1 a 22 u 2 . . . a 2n u n u n2
b1 b2
3
...
a m1 u 1 a m2 u 2 . . . a mn u n
Sistemi (2) i (3) su ekvivalentni kada je u n1 Problemu (1) se pridružuje nov problem:
u nm b m
u n2 . . . u nm 0
J 1 z u n1 . . . u nm min z Z z : z u, w R nm , z 0, Cz Au Ew b
4
gde je z u, w u 1 , . . . , u n , u n1 , . . . , u nm ; w u n1 , . . . , u nm vektor veštakih promenljivih. Ako je w 0 onda Cz b Au b, tada može da se primeni sekundarni simpleks na problem (1), jer su ispunjeni uslovi. Ako je w 0 onda se sekundarni simpleks primenjuje na (4) jer su ispunjeni uslovi: rangC m - poznat vrh z 0 0, b Z , jer je baza vrha z 0 B e 1 , e 2 , . . . , e m - Z , jer z 0 Z Neka je z rešenje problema (4), dobijeno sekundarnim simpleksom. Važi jedno od -
sledeeg:
J 1 z 0 U i problem (1) nema rešenje. Dokaz: z v 1 , w 1 , J 1 0 w 1 0 Pretpostavi se suprotno, tj U u U potencijalno rešenje. Toj taki u pridružuje se z u, 0 Z , jer je Aub. Medjutim tada je J 1 z 0 J 1 z i to je kontradikcija jer je z minimum (rešenje (4)). Sledi U . b) J 1 z 0 w 1n1 w 1n2 . . . w 1nm 0 w 1 0 z v 1 , 0 a)
12
Treba pokazati da je tada v 1 vrh skupa U, tj rešenje (1): Cz b Av 1 b v 1 U U . Da je v 1 vrh se pokazuje po definiciji Definition v U je vrh skupa U ako se može prikazati u obliku v v 1 1 v 2 , v 1 , v 2 U , 0 1, jedino ako je
v v1 v2. Neka su u 1 , u 2 U tako da važi v 1 u 1 1 u 2 , 0 1. Takama u 1 , u 2 pridružuje se z 1 u 1 , 0 i z 2 u 2 , 0, u skladu sa definicijom skupa Z, z 1 , z 2 Z . Oigledno: v 1 u 1 1 u 2 z z 1 1 z 2 Pošto je z vrh skupa Z sledi da je z 1 z 2 u 1 u 2 v 1 je vrh skupa U v 1
je rešenje (1).
Theorem Ako je U tada on ima bar 1 vrh. Taj vrh se može na i primenom primarnog
simpleks metoda. Proof Dokazano slu ajem pod b)
Do sada su nadjeni naini da se odgovori na pitanja da li je U prazan i kako nai poetni vrh. Još je ostalo pitanje ranga matrice, da bi mogla da se formira simpleks tabela za vektor v 1 . z je rešenje (4) vektori baze su A 1 , . . . , A r , e 1 , . . . , e mr , ima ih m rangC m r rang A m Optimalna tabela za z Bazine Nebazine Vestake u 1 u 2 u r u r 1 u n u n1 u nmr u nmr 1 u nm 1 u1 1 0 0 1r 1 1n 0 0 v 11 1 B a
z i
u2
0
1
n e
u r
0
0
u n1
0
0
0
2r 1
2n
0
0
š t a
k e
2
nmr 1
V e
nm
nmr 1
1
rr 1
0
n1
2n
0
0
n1
1
0
u nmr 0
0
0
nmr nmr r 1
n
r 1
n
0
1
r nmr 1 n1 nmr 1
nmr nmr 1
n1
v 1r
2 nm
v 1n1
n
0
v 12
2 nm
v 1nm
nmr
nm
0
J 1 z U zavisnosti od tabele javljaju se sledei sluajevi: 1. r m z v 1 , w 1 , baza z je A 1 , . . . , A r , e 1 , . . . , e mr , vektori A 1 , . . . , A r ine bazu v 1 , sledi da nema veštakih promenljivih. Važi: nm k r 1 B 1 A k u k v , B 1 A k s sk , pa se jednaine sistema zapisuju: u j jr 1 u r 1 . . . jn u n . . . jnm u nm v j1 , j 1,..., r
5
Posto nema veštakih promenljivih sledi u n1 . . . u nm 0. Zato važi (5) Au b Cz b, odnosno vektori u i z su isti jer nema veštakih 13
promenljivih. U tabelu treba dodati još poslednju vrstu j : 1 . . . r 0 r i s1 c s si c i ,
2.
i r 1 , . . . , n
Tako je dobijena tabela za v 1 . Nastavlja se sa sekundarnim simpleksom. r m i ni,k 0, 1 i m r , r 1 k n, odnosno postoji pozitivan broj u obeleženom delu tabele. Formira se skup: I k j : r 1 k n, n 1 i n m r , jk 0 v j v nn iik 0 jer su veštake promenljive jednake 0. I k min j I k jk Ako se izvrši transformacija po pivotu (koji je 0) funkcija cilja se nee promeniti; promenie se samo baza vrha, pri emu veštaka promenljiva u ni izlazi iz baze, a u bazu se uvodi promenljiva u k . Ujedno se briše kolona veštake promenljive u ni , koja je izašla iz baze. Opet se proveravaju sluajevi 1, 2, 3. J u J v k u k J v k vsk s J v, v s 0 r m i u uokvirenom delu tabele nema pozitivnih elemenata. Jednaine tog sistema se tada mogu zapisati: 1
1
,
3.
u j jr 1 u r 1 . . . jn u n v j1 ,
j 1 , . . . , r
ni,r 1 u r 1 . . . ni,n u n 0,
i 1,..., m r U jednainama (6) n1, j , i 1 , . . . , m r , j r 1 , . . . , n, mogu biti nula ili
negativni. Negativni se izdvoje u novi sistem: ni,s1 u s1 . . . ni,sq u sq 0, što je tano samo za u s1 0
6
. . . u sq 0. Te
0
promenljive se nazivaju brisane (anulirane) promenljive. Njihove kolone se izbacuju iz tabele. Sada se formira novi problem na koji se svodi poetni (1):
ir 1 c i u i i I c i u i min u j k I jk u k v j1 , j 1,..., r gde je I skup indeksa promenljivih koje nisu anulirane. Popunjava se poslednja vrsta sa: r
i
c s s i c i , i I ,
s1
v 1 v 11 , . . . , v 1r , v 1r 1 , . . . , v 1nmr jer v 1 U , a tamo su veštake promenljive 0
jednake nuli. Kada se stigne do rešenja, vraaju se anulirane promenljive i tako se dobija vektor odgovaraju e dimenzije.
Problemi linearnog programiranja sa degeneracijom Problemi sa degeneracijom su oni u kojima se javlja bar jedan degenerisan vrh. Vrh je degenerisan ako su mu neke bazi ne komponente jednake nuli. Degenerisani vrhovi imaju više baza, tj ti vrhovi mogu menjati bazu. Neka je dat sledei problem linearnog programiranja, pri emu on može biti 14
degenerisan: J u c, u min Au b u0
1
uz pretpostavku da je rang(A)rm; poznat vrh v U u R n , Au b, u 0 . Ovaj problem se rešava sekundarnim simpleks metodom, pri se emu sluajevi 1 i 2 rešavaju potpuno isto, bez obzira da li je vrh degenerisan. 3. sluaj k 0 i ik 0, I k i : 1 i r , ik 0 0 posmatra se min i I k vik i vsk s , gde je sk pivot. kod nedegenerisanih problema, indeks s je jedinstveno odredjen. Kada se prelazi sa vrha v na w, nove bazine komponente vrha wi su: w i v i ik vsk s 0 Mora biti w i 0 za i I k , i s, zato je minimum jedinstven. kod degenerisanih problema, wi može biti 0, pa se minimum dostiže na više mesta, sledi da minimum nije jedinstven, pa ni pivot nije jedistveno odredjen. Važi: J w J v k vsk s J w J v Kod degenerisanih vrhova neka bazi na komponenta je v i 0. Pošto su svi ostali kolinici vei od nule, ako je ta komponenta iz I k onda je i minimum nula, sledi J w J v.
Ako je za pivot izabran sk , takav da je v s 0, tada A s izlazi iz baze, a A k ulazi u bazu. Medjutim i ta nova baza je baza istog vrha v i ovim nije promenjena funkcija cilja.
Algoritam anticiklin Posmatra se vrh i njegova tabela. Na tu tabelu se dopisuje jedinina matrica D, iji su
elementi obelezeni sa d ij . Nad simpleks tabelom vrše se uobiajene transformacije. Elementi matrice D transformišu se po pravilu pravougaonika:
ik d ij d ij sk d sj , i 1 , . . . , s 1, s 1,..., r d d kj sj , i k d sk
s izlazi iz ba k ulazi u baz
Na osnovu poslednje vrste posmatraju se sluajevi 1, 2, i 3, pri emu se 1 i 2 rešava isto kao sekundarni simpleks bez degeneracije. U 3. sluaju, k 0, ik 0, formira se skup I k i : 1 i r , ik 0 0. Ako je min i I k vik i vsk s jedinstven, uzima se za pivot i nastavlja se po standardnom algoritmo, kao za nedegenerisan vrh. Minimum može biti jedinstven jer degeneracija može doi do izražaja u nekom drugom koraku. Ako minimum nije jedinstven, formira se skup: I k1 s I k : min i I k vik i vsk s . Po prethodnom razmatranju, ovaj skup nije jednolan, pa se formira skup I k 2 tako što se elementi prve kolone dopisane matrice dele elementima kolone u kojoj je k 0. I k2 s I k 1 : min i I k d iik d ssk , ako je skup jednolan sk je pivot, inae se uzima druga kolona, deli k-tom i analogno formira novi skup Ik 3 . Postupak se ponavlja dok se ne stigne do jednolanog skupa i tada je sk pivot. Opšti sluaj: I kn nije jednolan, formira se I kn1 s I kn : min i I kn d iik n d ssk n Tabela se razrešava na osnovu dobijenog pivota, pri emu se i dodatna tabela 1
1
1
15
transformiše. Teorijska pozadina algoritma anticiklina
Uporedo sa problemom (1) posmatra se i problem: J U c, u min i u R n : Au b b ir 1 R i
u U
2
R i su vektori kolone regularne matrice R. Kod sekundarnog simpleksa se traži da b0. Ako je neka komponenta b i 0 problem je degenerisan. Ovde je dozvoljeno b 0, ali je b 0, pa je time problem sveden na regularan. Theorem Neka je R regularna matrica i neka je U . Tada postoji 1 , tako da je za svako , 0 1 problem (2) regularan i ako je v v 1 , . . . , v n vrh skupa U za neko 0 1 i ako je baza tog vrha A j1 , . . . , A jr tada jedna ine: A j1 v j1 A j2 v j2 . . . A jr v jr b; v i 0,
i j l , l 1, . . . r ,
definišu vrh v skupa U za 0 1 . Takodje kada je 0 ove jedna ine definisu vrh v(0) koji je vrh skupa U.
Umesto (1) rešava se problem (2). Kad se pronadje rešenje za (2), postavi se 0 i tako se dobija rešenje za (1). Primenom sekundarnog simpleksa za resavanje (2) dobija se: n
B A k uk B b 1
1
k r 1
r
B 1 b
j R j j1 r
B 1 b
j B R j 1
j1
B je baza vrha v , zato se uzme R B B 1 R j Sada se ispišu jednaine za simpleks tabelu: u1 u2
E j
jedinini vektor; B 1 R j i
d ij .
1r 1 u r 1 . . . 1n u n v 1 d 11 d 12 2 . . . d 1r r 2r 1 u r 1 . . . 2n u n v 2 d 21 d 22 2 . . . d 2r r
3
u r rr 1 u r 1 . . . rn u n v r d r 1 d r 2 2 . . . d rr r J u J v inr 1 i u i ,
i c, B 1 A i c i
Posmatra se kolona iznad k 0, trazi se min i I k vi ik vsk s . Ovaj minimum je jedinstven, zato je problem regularan i sk je pivot. Da bi se našao minimum kolinika vi ik treba porediti polinome po : v i
ik v m im
p i c i0 c i1 c i2 2 . . . c ir r p m f m0 f m1 f m2 2 . . . f mr r
Pošto može biti proizvoljno malo, manji je polinom koji ima manji slobodan lan, tj: c i0 f m0 p i p m . Ako je c i0 f m0 porede se sledei lanovi, a ako su i oni jednaki, onda sledei itd. Moraju se nai neki c ik i f mk koji su razliiti, inae bi dve vrste 16
matrice D bile proporcionalne, što je kontradikcija sa pretpostavkom da je matrica regularna. Matrica D se ne mora dopisati odmah na poetku, ve ju je mogue dopisati tek kada je potrebna, tj kad se javi problem sa degeneracijom. Ako se matrica dopisuje kada su ve uradjene neke transformacije u tabeli, ne dopisuje se jedinina matrica, ve se, na mestima onih vektora kolona koji su izašli iz baze, dopisuje kolona koja im trenutno odgovara. Za komponente koje su još uvek u bazi dopisuje se jedinini vektor. U praksi se ne dopisuje matrica D, ve B 1 koja se nalazi na osnovu tekue i polazne tabele.
Dualnost u lineranom programiranju Svakom problemu linearnog programiranja može se dodeliti dualan problem. J u c, u min Au b, b 0 u0
1 primal
Odmah je poznat jedan vrh, nula vektor. Formira se tabela: x n d A b x u 1 , . . . , u n U R -c 0 Vektori x i d se razdvoje na dva dela: x 1 u 1 , . . . , u k , d 1 d 1 , . . . , d k ,
x 2 u k 1 , . . . , u n d 2 d k 1 , . . . , d m x 1 d 1 A 11 d 2 A 21 c 1
x2 A 12 b 1 A 22 b 2 c 2 0
Pretpostavi se da se vrše transformacije tabele tako da je prvih k komponenti vektora d (d 1 ) prešlo gore, tj izašlo iz baze, a prvih k komponenti vektora x (x 1 ) prešlo dole, tj ušlo u bazu. Nastaje sledea tabela: d 1 x 1 A 111 d 2 A 21 A 111 c 1 A 111
x2 A 111 A 12 A 111 b 1 A 22 A 21 A 111 A 12 b 2 A 21 A 111 b 1 c 2 c 1 A 111 A 12 c 1 A 111 b 1
Za k1 ovo bi bila transformacija sa pivotom, zato ovo važi bez dokaza. Tabela je optimalna ako je poslednja vrsta (c) negativna, a poslednja kolona pozitivna (b). Vektor b ostaje pozitivan, jer se tako vrše transformacije, tj traži se da važi A 111 b 1 0 i b 2 A 21 A 111 b 1 0. Sada se definiše dualni problem:
17
d , b max
2 dual
dA c d 0
Pod predpostavkom da važi: A 111 b 1 0 b 2 A 21 A 111 b 1 0 c 1 A 111 0 c 2 c 1 A 111 A 12 0
3
Prethodna tabela je optimalna Theorem Neka važe uslovi pod (3). Tada je: a
x0
A 111 b 1 0
optimalno rešenje primala
d 0 c 1 A 111 , 0 optimalno rešenje duala b c
d
Vrednost funkcije cilja u optimalnim ta kama primala i duala je ista tj: c 1 A 111 b 1 c, x 0 d 0 , b nja u optimalnoj ta ki su zadovoljena u obliku jednakosti, a Prvih k ograni e ostala u obliku nejednakosti. Pri tome b 2 A 21 A 111 b 1 kod primala pokazuje za koliko je leva strana manja od desne, a kod duala c 2 c 1 A 111 A 12 pokazuje za koliko je leva strana ve a od desne u nejednakostima. Vrednost funkcije cilja primala u bilo kojoj ta ki dopustivog skupa je ve a od vrednosti funkcije cilja duala u bilo kojoj ta ki dopustivog skupa: c, x d , b , x U u R n : u 0, Au b , d D d R m : d 0, dA c Proof a) Dopustivost rešenja: x 0 0 zbog uslova (3), proverava se Ax 0 b
Ax 0
A 111 b 1 0
A 11 A 12 A 21 A 22
b1 A 12 A 111 b 1
3
b1 b2
Iz gornjeg sledi da je prvih k ograni enja zadovoljeno sa jednakoš u, a u ostalima nejednakost i da b 2 A 12 A 111 b 1 pokazuje za koliko je desna strana ve a od leve. m1 U , proizvoljna ta ka iz U. Optimalnost rešenja: m m2 J p m c 1 m 1 c 2 m 2 c 1 m 1 c 1 A 111 A 12 m 2 3
c 1 A 111 A 11 m 1 0
A 12 m 2
c 2 c 1 A 111 b 1
J p x 0
b1, po Aub
Dakle x 0 je optimalno rešenje primala. Analogno za d 0 : Dopustivost:d 0 0 iz (3). d 0 A c 1 A 111 , 0
A 11 A 12 A 21 A 22
c 1 , c 1 A 111 A 12
c 1 , c 2
Optimalnost:n n 1 n 2 D proizvoljno
18
3
J d n n 1 b 1 n 2 b 2 n 1 b 1 n 2 A 21 A 111 b 1 n 1 A 11 n 2 A 12 A 111 b 1 c 1 A 111 b 1 J D d 0 c 1 , po dAc
b) sledi iz podvu enih delova prethodnih jedna ina, c) je dokazano d D, x U d) J D d J D d 0 J P x 0 J P x;
Resurs je potrošen tamo gde su dopunske promenljive nula. Ako dualna promenljiva nije nula, onda ona govori o promeni dobiti. Dualnost se koristi ako je tabela ovakva: x 1
d 1 A 111
x2 A 111 A 12
A 111 b 1 0
A 1
d 2 A 21 c 1 A 111 0
11
A 1 A
A 22 A 21 11 12 b 2 A 21 A 111 b 1 c 2 c 1 A 111 A 12 c 1 A 111 b 1 0
Tada je za dualni problem zadovoljen uslov, ali za primal nije (zbog A 111 b 1 0). Tada se pronadje dopustivo rešenje duala i startuje se simpleks metod. Dopustivo rešenje je: d c 1 A 111 , 0 . Cilj je da deo poslednje kolone koji je negativan, bude nenegativan. U ovakvoj transformaciji pivot se traži tako što se izabere vrsta u kojoj je poslednji njen element negativan, pa se u toj vrsti traži minimum kolinika njenih elemenata i elemenata poslednje vrste (vektor c). Svaki problem se može napisati kao dual, pa onda rešavati kao primal. Može se i napisati kao dual, a rešavati kao primal. Izbor zavisi od vrste problema. Neka je dato: u0 Au b c, u max
4 primal
d 0 dA c d , b min
5 dual
Theorem (slabe dualnosti) Ako je u dopustivo rešenje primala i d dopustivo rešenje duala, onda važi c, u d , b Theorem (jake dualnosti) Za problem primala i duala važi jedan od slede a tri iskaza: 1. 2. 3.
Primal ima optimalno rešenje u i dual ima optimalno rešenje d i pri tome je c, u d , b Ni jedan od problema nema dopustivo rešenje Jedan problem nema dopustivo rešenje, a drugi problem ima dopustivo na rešenje, ali nema optimalno. Funkcija cilja drugog problema je neograni e na dopustivom skupu.
Theorem (slabe komplementarnosti) Neka su u i d dopustiva rešenja problema (4) i (5), respektivno, i neka važi d , Au b 0 i d A c, u 0. Tada su u i
d optimalna rešenja problema (4) i (5).
Posledica: Ako su u i d dopustiva rešenja problema (4) i (5), i važi:
19
d i 0
nuli
jn1 a ij u j
jn1 a ij u j
ako je dualna vea od nule, dopunska je jednaka
bi,
ako je dopunska vea od nule, onda je dualna
b i d i 0,
jednaka nuli
u j 0 im1 a ij d i c j im1 a ij d i c j u j 0
Tada su u i d i optimalna rešenja. Kod linearnog programiranja važi da je dual duala primal!
Theorem (jake komplementarnosti) Ako oba problema (4) i (5) imaju bar po jedno
dopustivo rešenje, onda postoji par optimalnih rešenja u i d tako da: b Au d 0
i
d A c u 0
Transportni problem Transportni problem je problem linearnog programiranja sa karakteristinom strukturom matrice sistema. Ime ovog problema potie od tipa problema koji se ovom metodom naješe rešava u praksi, tj ovim metodom se optimizuje transport robe izmedju skladišta i mesta za prodaju. Posmatraju se skladišta S 1 , . . . , S k i punktovi prodaje P 1 , . . . , P h , roba iz svakog S i može da se prenese u svako P j . Sa s i se oznaava koliina robe u skladištu S i , a sa pi potrebna koliina robe u P j . x ij je koliina robe koja se prenosi iz S i u P j . Pretpostavlja se da važi da je h
k
x ij si , x ij p j j1
1
i1
ime se
obezbedjuje da je ponuda jednaka potražnji, pa se ovo naziva zatvoren transportni problem. Uvodi se jos cena transporta iz s i u p j , obeležava se sa t ij . Ukupna cena transporta za takav problem je onda ik 1 jh1 x ij t ij min.
jh1 x ij s i ik 1 x ij p j jh1 p j ik 1 s i
problem tran
U
x ij 0, i, j T x
ik 1 jh1 t i j x ij
min
Ovo je problem linearnog programiranja, pa se može rešiti simpleks metodom. Pošto ovaj problem ima karakteristinu strukturu (matrica sistema se sastoji samo od 0 i 1), za njega e se formirati poseban, jednostavniji, simpleks metod. Problem transporta kod koga ne važi ogranicenje (1) je otvoreni problem transporta. Zatvoren problem transporta uvek ima rešenje. Takodje se pretpostavlja da je s i 0 i p j 0, što je i logino. h Pošto je c ij 0 i x ij 0 T x 0, gde je x x ij ji1,..., . Dakle funkcija cilja T(x) je 1,..,k 20
ograniena sa donje strane. Pošto je s i 0 i p j skup nije prazan, jer postoji trivijalno rešenje: s i p j 0 zadovoljava sva ogranienja: x ij U
k i1 x ij
ik 1
s i p j U
p j U
ik 1 s i
p j U U
0 sledi da je U 0.
Dakle dopustiv
p j
x 11 x 12 . . . x 1h 0... x 21 x 22 x 2h
s1 s2
0 ...
x 11 x 12
x k 1 x k 2 . . . x kh x k 1 x k 2
x 21 . . . x 22 . . .
s k p1 p2
...
x 1h
x 2h
. . . x kh p h
Matrica sistema je: h
A k hkh
h
1 0 . 0
1 ... 0 ... . 0 ...
1 0 . 0
0 1 . 0
0 ... 1 ... . 0 ...
0 1 . 0
1 0 . 0
0 ... 1 ... . 0 ...
0 0 . 1
1 0 . 0
0 ... 1 ... . 0 ...
0 0 . 1
...
...
0 0 . 1
0 ... 0 ... . 1 ...
0 0 . 1
1 0 . 0
0 ... 1 ... . 0 ...
0 0 . 1
s1
k
... ,b
s k p 1 ...
h
p k
Jasno je da je rang A k h. Pokazuje se da je rang A k h 1. Matrica A nema maksimalni rang, jer postoji linearna veza izmedju si i p j : jh1 p j ik 1 s i , što znai da bar jedan vektor može da se izrazi kao linearna kombinacija svih ostalih. Iz matrice A se izdvaja podmatrica ranga kh-1, za koju se pokazuje da je regularna. Matica se formira od h., 2h., ...,kh. kolone matrice A i bez poslednje vrste matrice, uz dopisanih h-1 prvih kolona prvog bloka matrice A: h. 2h.
1 0 ... 0
h1
kh.
0 ... 0 1 ... 0 ... ... 0 ... 1
0
1 0 ... 0
1 ... 1 0 ... 0 ... ... 0 ... 0
1 0 ... 0
0 ... 0 1 ... 0 ... ... 0 ... 1
21
Matrica je donja trougaona, pa je njena determinanta 1, zato je ona regularna, sledi rang(A)kh-1. Ovim je pokazano da svako rešenje može da ima najviše kh-1 bazinu komponentu. Bazino rešenje je ono rešenje za koje važi da su vektori A i1 , . . . , A ir linearno nezavisni, gde je u u 1 , . . . , u n rešenje, A mn , rang(A)r, b R m , A i1 u i1 . . . A ir u ir b, u il 0, za l j, j 1 , . . . , r . Pošto je dokazano rang(A)kh-1, sledi da bazino rešenje ima najviše kh-1 pozitivnih komponenti, zato trivijalno rešenje nije bazino (sve komponente su pozitivne).
Metoda severozapadnog ugla Ovom metodom se odredjuje jedno dopustivo rešenje transportnog problema. Dobijeno rešenje je uvek bazino. formira se tabela k h polja, u nju se upisuju vrednosti xij uoi se severozapadni ugao tabele i ispituje: s1 s2
...
x 011 min p 1 , s 1
s k p 1 p 2 . . . p h
U zavisnosti od prvog elementa, javljaju se dva sluaja: min p 1 , s 1 p 1 p 1 s1 p1 0 s2
0
0
0
s2
0
...
...
0
s k
s k
0
min p 1 , s 1 s 1 0 s1
p2 . . . ph
p 1 s 1 p 2 . . . p h
Za nastavak algoritma posmatra se tabela bez vrste ili kolone koja je popunjena, odredi se severozapadni ugao i opet se traži minimum. Algoritam se nastavlja dok se ne popuni tabela
Transportna mreža Definition Neka je zadat kona an skup Q Q 1 , . . . , Q l i neka je skup neuredjenih parova Q i , Q j koji se nazivaju lukovi. Skup Q se naziva transportna mreža , gde su Q i punktovi ( vorovi) transportne mreže, a njeni lukovi. Definition Proizvoljan niz Q i0 , Q i1 , . . . , Q ik , gde Q ir Q, r 0, . . . , r naziva se maršuta ako se svaki par Q ir , Q ir 1 u nizu pojavljuje najviše jednom. Definition Maršuta oblika Q i0 , Q i1 , . . . , Q ik , Q i0 se naziva kružni put ili cikl. Definition Transportna mreža Q, je povezana ako se bilo koja dva punkta mogu spojiti
maršutom. Lemma Ako iz svakog punkta polaze ne manje od 2 luka, transportna mreža sadrži
kružni put.
22
Lemma Ako je transportna mreža povezana i ako iz svakog punkta polaze ta no dva
luka, tada je cela transportna mreža kružni put. Lemma Ako je Q io vezan maršutom za Q ir , a Q ir vezan maršutom za Q jo , onda su i Q io i
Q jo povezani maršutom. Lemma Ako transportna mreža ne sadrži kružne puteve, onda je svaka maršuta jednozna no odredjena krajnjim ta kama. Lemma Ako je l broj punktova u skupu Q, a skup sadrži manje od l-1 luk, transportna
mreža je nepovezana. Lemma Ako je transportna mreža Q, povezana i ne sadrži kruzne puteve, skup ima ta no l-1 luk.
Sad se svakom bazinom rešenju pridružuje transportna mreža: P P 1 , . . . , P n , S S 1 , . . . , S k Uvodi se Q P S punktovi, S i , P j , S i S, P j P lukovi Za konkretno rešenje S i , P j akko x ij 0 Posto važi pretpostavka da s i , p j 0, onda iz svakog punkta izlazi ili ulazi jedan luk. Za rešenje X x ij transportna mreža je P S, . Transportnoj mreži rešenja X
dodeljen je i skup vektora A(x). Vektori iz A(x) su vektori kolona matrice A, izabrani na sledei nain: a ij je vektor koji ima sve nule, osim jedinica na poziciji i i na poziciji k j i važi a ij A x x ij 0. Theorem Dopustivo rešenje je bazi no akko odgovaraju a transportna mreža ne sadrži
kružne puteve Proof Rešenje je bazi no, dokazuje se da transportna mreža ne sadrži kružne puteve. Pretpostavi se suprotno: rešenje je bazi no i transportna mreža sadrzi kruzni put. Uzima se rešenje X takvo da njegova transporta mreža sadrži kružni put S i1 P j1 S i2 P j2 . . . S ik P jk S i1 . Luku S i1 P j1 odgovara komponenta x i1j1 0, a njoj odgovara vektor a i1j1 . Dakle celom kružnom putu odgovaraju vektori a i1j1 , a i2j1 , a i2j2 , . . . , a ikjk , a i1jk . Formira se sledea linearna kombinacija ovih vektora: a i1j1 a i2j1 a i2j2 . . . a ikjk a i1jk 0 Ocigledno su ovi vektori linearno zavisni. To je kontradikcija sa osnovnom pretpostavkom da je rešenje bazi no i pretpostavka ne važi. Dakle transportna mreža ne sadrži kružne puteve. Transportna mreža ne sadrži kružni put, dokazuje se da je rešenje baži no. Pretpostavi se suprotno: Transportna mreža ne sadrži kružni put i rešenje nije bazi no. Neka su vektori iz A(x) linearno zavisni: ij a ij 0; ij 0 Posmatra se transportna mreža S P, , gde je definisano sa S i , P j ij 0. Tada je . Posmatra se jedno ij 0. Tada mora a ip A x, p j, ip 0, jer ako takav vektor ne postoji, i-ta komponenta zbira ij a ij bi bila razli ita od nule, pa sledi da iz S i polaze dva luka. Dalje se može pokazati da i iz P j , P p , . . polaze dva luka, pa i iz svakog punkta polaze dva luka iz ega sledi da mreža ima kružni put, što je kontradikcija sa osnovnom pretpostavkom. Dakle pretpostavka ne važi i rešenje je bazi no. Do sada je važila pretpostavka da rešenje nije degenerisano. Ako bi bilo s 1 p 1 , onda bi
problem bio degenerisan. U takvim sluajevima se na jedno mesto u tabeli mora
23
postaviti 0 (bazina komponenta koja ima vrednost 0) da bi bilo kh-1 razliitih komponenti. Kod metode severozapadnog ugla 0 se stavlja ili na prvo mesto sa desne strane od polja popunjenog sa s 1 p 1 ili na prvo mesto ispod. Theorem Rešenje transportnog problema je degenerisano akko postoje skupovi G M 1, . . . , k i H N 1, . . . , h tako da je iG s i j H p j . Tada
rešenje ima manje od k h-1 pozitivnu komponentu.
Theorem Rešenje dobijeno metodom severozapadnog ugla je bazicno rešenje. Proof Neka je X 0 rešenje dobijeno metodom severozapadnog ugla. Formira se njegova
transportna mreža. Pretpostavi se da mreža sadrži kružni put S i1 P j1 S i2 P j2 . . . S ik P jk S i1 gde za indekse važi i1 ir, r 1,...,k. Iz S i1 postoji put u P j1 i P jk . Medjutim metodom severozapadnog ugla jedan od P j1 i P jk mora biti popunjen (zadovoljen). To je kontradikcija sa pretpostavkom da postoji kružni put, jer tada jedan od lukova S i1 , P j1 , S j1 , P jk ne može da postoji. Dakle ovakvo rešenje je bazi no.
Za pronalaženje poetnog rešenja transportnog problema postoje i druge metode, npr metoda minimuma vrste i metoda minimuma kolone. Kod metode minimuma vrste, tabela se popunjava redom po vrstama. U svakoj vrsti se prvo popunjava element sa najnižom cenom, a onda (ako je potrebno) onaj sa sledeom minimalnom cenom. Analogno za metodu minimuma kolone. Metoda potencijala Ova metoda služi za pronalaženje optimalnog rešenja problema transporta. Do poetnog rešenja za ovu metodu može se do i bilo kojom metodom za pronalaženje dopustivog rešenja. Pretpostavi se da je X 0 poetno rešenje. Traži se X 1 tako da važi T X 1 T X 0 . k
g T X
h
x ij t ij min i1 j1ij
Formira se dual za ovaj problem: u i dualna promenljiva za s i v j dualna promenljiva za p j z jh1 v j p j ik 1 u i s i max funkcija cilja duala Ogranienja za dual su: u v A t 11 . . . t 1k t 21 . . . t 2k . . . t h1 . . . t hk
1
v j u i t ij
Ako se pretpostavi da je je nadjeno optimalno rešenje primala i duala onda je zg:
24
k
gz
h
x ij t ij i1 j1 k
i1
j1
u i s i v j p j k
i1 j1
h
h
t i j xij k
k
h
h
k
u i x ij v j x ij i1
j1
j1
i1
h
t ij v j ui xij 0 i1 j1
a) x ij 0 t ij v j u i 0 bazine komponente b) x ij 0 g z 0 nebazine komponente Zbog ogranienja (1) za nebazine komponente važi t ij v j u i 0. Za bazina mesta formira se sistem jednaina t ij v j u i 0 i odatle izrauna v j , u i . Za nebazina mesta te promenljive (v j i u j ) se uvrste u t ij v j u i i to izrauna. Ako se dobije broj koji je nenegativan, onda je X0 optimalno rešenje i postupak je završen. Ako je neki od dobijenih brojeva negativan, to rešenje nije optimalno. Problem pravi broj koji je manji od nule, jer važi ij t ij v j u i , a ne treba da bude pozitivno. Problem je što tada ne važi (1). Ako postoje indeksi i 0 j 0 takvi da je i0 j0 0 vrši se transformacija tabele. Metoda
Neka je X 0 x 0ij bazino rešenje. Za one komponente gde je x 0ij 0 formiraju se jednaine v j u i t ij . Ako su bazine komponente x 0i1 j0 x 0i1 j1 x 0i2 j1 . . . . onda je maršuta koja odgovara bazinom rešenju: P j0 S i1 P j1 S i2 . . . S ik P jk S i0 . Zato sistem jednaina ima oblik: v j00 u 0i1 t i1 j0 v j01 u 0i1 t i1 j1
2
... 0 v jk u 0ik t ikjk 0 u 0i0 t i0 jk v jk
Ovaj sistem ima kh-1 jednaina, a kh nepoznatih. Zato se fiksira jedna promenljiva (npr u 0i0 0), pa se onda rešava sistem. Na osnovu dobijenih podataka za u i v formira se tabela: v1 v2 ... vk -u1 -u2 ... -uk Tabela se pounjava na sledei nain: Ako je v j u i 0 piše se taj broj. Ako je v j u i 0 na to mesto se unosi ij . Tabela je optimalna ako nema negativnih elemenata. Ako negativni element postoji, onda se vrši transformacija tabele: Pretpostavka i 0 j 0 , takvi da - i0 j0 0 Tada se odgovarajua nebazina komponenta x 0i0 j0 ubacuje u bazu, a neka druga, bazina izbacuje. Rešenju X 0 odgovara A(X 0 ) sistem linearno nezavisnih vektora. Pretpostavlja se da su problem i rešenje nedegenerisani. Sistemu A(X 0 ) dodaje se vektor a i0 j0 (koji odgovara 25
komponenti xi0 j0 koja se ubacuje). Tada je skup A X 0 a i0 j0 linearno zavisan, pa mu odgovara kružni put, transportne mreže za X 0 : S i0 P j0 S i1 P j1 S i2 . . . S ik P jk S i0 . Na osnovu komponenti kružnog puta formira se novo rešenje: x 1i0 j0 x 0i0 j0 x 1i1 j0 x 0i1 j0
3
x 1i1 j1 x 1i1 j1 ...
x 1i0 jk x 0i0 jk
Pošto je ponuda jednaka potražnji, mora se oduzeti i dodati isti broj . min 0r k x 0ir 1r , tj je najmanja od onih bazinih komponenti koje se u sledeoj iteraciji smanjuju. Kada se odredi, jedna od ovih jednaina postaje x 1il1 jl 0. Zbog toga se iz kružnog puta izbacuje luk S l1 P l i tako se dobija nov put za rešenje x 1 Novo rešenje se definiše na sledei nain: promenljive na kružnom putu se transformišu po (3) 1 0 one koje nisu na kružnom putu se ne menjaju, tj x ij x ij Maršuta za rešenje X 1 nije kružni put, tako da je to rešenje bazino. Još je potrebno pokazati T X 1 T X 0 . Ako se svaka druga jednaina sistema (2) pomnoži sa -1 i onda se saberu sve jednaine, dobija se: u 0i0 v j00
t ij A
4
i ,j
T X 1 T X 0
t ij x ij x ij 1
0
i ,j
t ij x 1ij x 0ij t i0 j0 x 1i0 j0 x 0i0 j0
i, j ii 0 , j j 0
t ij t i0 j0
i, j ii 0 , j j 0
A t i0 j0 u 0i0
v j00 t i0 j0 0 i0 j0
Dakle, metoda potencijala u novom koraku daje rešenje ija je vrednost funkcije cilja manja od stare.
26
Nelinearno programiranje Minimizacija funkcija jedne promenljive bez ogranicenja J u min u U U R 1 u : u Definition Ta ka u je minimum funckije J(u) na skupu U ako važi J u J u, u U .
Skup taaka u koji zadovoljava uslov J u J u oznaava se sa U . Definition Funkcija J(u) je ograniena sa donje strane na skupu U ako važi J U M , u U , M const. Funkcija J(u) je neograniena sa donje strane ako postoji niz u k U tako da lim k J u k . Definition Neka je funkcija J(u) ograni ena sa donje strane. Tada je J J u donja
medja ili infimum funkcije J(u) na skupu U.
Definition Niz u k U je minimizirajui niz za J(u) ako važi lim k J u k inf uU J u J . Definition Ta ka u je ta ka lokalnog minimuma funkcije J(u) ako L 0, tako da je J u J u, u U u : u u L O L u . Ako se jednakost J u J u dotiže samo za uu tada je u strogi lokalni minimum funkcije J(u). Theorem Neka je U zatvoren i ograni en skup u R 1 . Tada je funkcija J(u) ograni ena sa donje strane na U, skup U je neprazan, zatvoren i bilo koji minimiziraju i niz u k U teži ka u . Definition Niz u k konvergira ka skupu U ako važi: lim k u k , U 0, gde je u k , U inf u U u k u
Metode uporedjivanja vrednosti 1. Metoda polovljenja Definition Funkcija F(u) je unimodalna na skupu U u : a u b , ako je neprekidna na intervalu a, b i ako postoje i tako da je a b i važi:
na a, 1) J(u) je opadaju a
2) J(u) je rastu a na , b 3) J u J , u , tj U , Ako je funkcija J(u) je strogo unimodalna.
Metoda polovljenja pripada klasi metoda uporedjivanja: 0 ba u 1 ab2 ; u 2 ab2 ; Kada se formiraju ove dve take, raunaju se J u 1 i J u 2 . Ako je J u 1 J u 2 u a, u 2 , postavi se a 1 a, b 1 u 2 Ako je J u 1 J u 2 u u 1 , b, postavi se a 1 u 1 , b 1 b 27
Sada u a 1 , b 1 , dužina intervala a 1 , b 1 je b 1 a 1 ba2 . Biraju se take u 3 a b2 i u 4 a b2 , pa se raunaju J u 3 i J u 4 . Ovim postupkom se dobija u a k 1 , b k 1 ; u 2k 1 a k b2k i u 2k a k b2k . Postupak se nastavlja dok ne bude |b k a k | , gde je unapred zadat broj. Sad važi da je u ak 2b k . U svakom koraku se rade po 2 izraunavanja. Broj raunanja vrednosti 1 n funkcije J u n je n 2k . Tada je tanost rešenja b a2 . Metoda zlatnog preseka Postiže istu tanost, sa upola manje raunanja. bu ba u a u 1 a 3 5 b2a u 1 deli [a,b] po principu zlatnog preseka bu u a ba ba u a bu u 2 a 5 1 2 Takodje važi uu ua uu ua . Raunaju se J u 1 i J u 2 . Ako je J u 1 J u 2 u a, u 2 , postavi se a 1 a, b 1 u 2 u 1 deli a 1 , b 1 po principu zlatnog preseka, i prenese se simetrino, tj odredi se druga taka: b 1 a 1 a 5 1 b2a a 5 1 b2a Ako je J u 1 J u 2 u u 1 , b, postavi se a 1 u 1 , b 1 b b 1 a 1 b a 3 5 b2a 5 1 b2a Postupak se nastavlja dok se ne dodje do intervala a k , b k , za koji važi 5 1 |b k a k | , gde je zadata tanost b k a k 2 k b a Prednost metode zlatnog preseka ima jedno izraunavanje u svakom koraku. Mana je što poinje sa iracionalnim brojem 5 , a to u startu unosi grešku. Sa n izruaunavanja funkcije postiže se red tanosti kao i sa metodom polovljenja sa 2n raunanja. Metoda Fibonaija L n b a; L n : L n1 F n : F n1 1
1
1
1
1
1
1
1
2
2.
1
1
1
2
2
2
2
2
3.
2
1
L n L n1 L n2 ;
1
1
L 0 1,
L 1 1;
Posmatra se vrednost funkcije u u 1 i u 2 : Ako je J u 1 J u 2 u a, u 2 , postavi se a 1 a, b 1 u 2 Ako je J u 1 J u 2 u u 1 , b, postavi se a 1 u 1 , b 1 b u a 1 , b 1 n n 1 5 1 5 2 2 F n
5
d-dužina poslednjeg intervala, tj tanost: F n : 1 b a : d d bF na - odredjuje se n ba u 1 a
F n F n2
u1
baF n2
F n
a
Minimizacija funkcija više promenljivih Posmatra se funkcija J(u), u R n Epsilon okolina take u obležava se sa: O u v : v R n , v u , 0 Definition Funkcija J(u) je diferencijabilna u taki u ako postoji vektor J u R n takav
da je:
28
J u J u h J u J u, h oh, u
Gde je
oh,u h
0, h 0.
Vektor J u je gradijent funkcije J(u) u ta ki u. J u J u J u J u ... u 1 u 2 u n
J u u i
lim 0
J ue i J u
, gde je e i jedini ni vektor
Definition Funkcija J(u) je dvostruko diferencijabilna u ta ki u ako postoji matrica J u,
takva da se priraštaj funkcije može izraziti u obliku: J u J u, h 1 J uh, h h, u 2 h,u pri emu je h 0, h 0. Matrica J u je hesijan:
J u
2 J u 2u1 2 J u u 2 u 1
2 J u u 1 u 2
...
2 J u u 1 u n
2 J u 2 u2
...
2 J u u 2 u n
...
...
2 J u
2 J u
u n u 1
u n u 2
... ...
2 J u 2u n
Definition Ta ka v za koju važi J v 0 naziva se stacionarna taka funkcije J(u).
Stacionarne take su potencijalni ekstremi. Da bi se utvrdilo da je stacionarna taka v ekstrem funkcije J(u) posmatra se kvadratna forma J vh, h : Ako je J vh, h 0 za h 0, tj pozitivno definitna , taka v je taka lokalnog minimuma. Ako je J vh, h 0 za h 0, tj negativno definitna , taka v je taka lokalnog maksimuma. Ako kvadratna forma menja znak, onda u toj taki nema ekstrema. Ako je kvadratna forma jednaka nuli u taki v, onda se za ispitivanje koriste izvodi višeg reda. Medjutim, izvod 3. reda je matrica u 3 dim, matrica 4. reda u 4 dim itd, pa se ovo ne koristi u praksi, nego se minimum odredjuje približno. Problem minimizacije funkcije više promenljivih može biti bez ogranienja (1) ili sa ogranienjima (2):
1
J u min u Rn
2
J u min u U U R n
Odredjivanje vezanog ekstrema Posmatra se problem sa ogranienjima: J u min u U U u R n : g 1 u 0 , . . . , g s u 0
3
Ako bi se skup U zapisao u drugaijem obliku, tj da se prvih s promenljivih izrazi preko 29
ostalih: u 1 a 1 u s1 , . . . , u n u 2 a 2 u s1 , . . . , u n ...
u s a s u s1 , . . . , u n
Problem se svodi na problem minimizacije bez ogranienja. Tada: x J a 1 u s1 , . . . , u n , a 2 u s1 , . . . , u n , . . . , a s u s1 , . . . , u n , u s1 , . . . , u n
gde je x u s1 , . . . , u n R ns , bez ogranienja. Medjutim to nije uvek mogue uraditi, zato se eše koristi sledea metoda: Metoda Lagranžovih mnozitelja Problemu (3) dodeljuje se funkcija Lagranža: s
Lu, 0 J u j g j u j1
R s1
0 , 1 , . . . , s
Ako postoji rešenje problema (3) i ako je taj minimum vektor u , tada postoje množitelji Lagranža 0 , 1 , . . . , s 0, takvi da je: s g j u J u 0 j 0, i 1 , . . . , n u i u i j1
4
odnosno vektori J u, g 1 u, . . . , g s u su linearno zavisni u taki u . Ako se sistemu jednaina (4) doda sistem
5
g j u 0, j 1 , . . . , s
dobija se sistem od ns jednaina sa ns1 nepoznatom (postoji 1 stepen slobode). Odatle sledi da ako je neki par v, rešenje sistema, onda je i par v, rešenje tog sistema, gde je skalar. Najcesce se prethodnom sistemu doda i jednaina is1 i 1, pa je to onda sistem sa istim brojem nepoznatih i jednacina. Ako je 0 0 problem je regularan. Tada se uzima 0 1 i funkcija Lagranža postaje: s
Lu, J u j g j u j1
Ako su rešeni sistemi (4) i (5)), da li je to rešenje minimum funkcije J(u)? Pretpostavlja se da sistemi (4) i (5) imaju rešenje i da je 0 1. Ako je kvadratna forma L nn u , h, h 0, tj pozitivno definitna, za h 0 za koje važi i g i u , h 0, gde je u , rešenje sistema (4) i (5), tada je u minimum funkcije J(u), tj rešenje problema (3). Uglavnom e se posmatrati minimizacija konveksnih funkcija, tj problemi oblika:
J u min u U
gde je J(u) konveksna funkcija, U konveksni skup. Tada se problem (7) naziva problem konveksnog programiranja.
30
Konveksne funkcije Definition Funkcija J(u) koja je definisana na konveksnom skupu U, je konveksna na tom
skupu ako je: J u 1 v J u 1 J v, u, v U , 0 1
1
Ako je u (1) jednakost mogu a samo za 0 ili 1, onda je funckija strogo konveksna. Funkcija J(u) je konkavna ako je -J(u) konveksna. Stroga konkavnost se definiše analogno strogoj konveksnosti.
Geometrijska interpretcija: M(u,J(u)); N(v,J(v)); Posmatraju se take definisane sa: u 1 v; J u 1 J v je parametrizacija duži (u,v), tj intervala. , opisuje seicu. U R 2 grafiki posmatrano, konveksna funkcija je ona kod koje grafik leži ispod seice. Za konveksan skup U važi: u i U , i 1 , . . . , m im1 i u i U , mi1 i 1, i 0, i 1,..., m. Za konveksnu funkciju J(u) važi analogno: J im1 i u i im1 i J u i Theorem Neka je U konveksan skup, J u C 1 U . Potreban i dovoljan uslov da je J konveksna na U je da važi: J u J v J v, u v , u, v U
2
Proof J(u) je konveksna funkcija. Na osnovu definicije: J u 1 v J u 1 J v
J u 1 v J v J u J v teorema o sr . vred
Teorema o srednjoj vrednosti: f x f y f x y, x, y, sledi: / : J v u v, u v J u J v
J v u v, u v J u J v
/ 0
J v, u v J u J v što je baš (2). pretpostavka da važi (2); u , v U , 0 1 Formira se ta ka u u 1 v U (U je konveksan skup) J u J u a J u a , u u /
J v J u a J u a , v u / 1 J u J u a 1 J v J u a J u 1 J v J u
J u a , u u 1 J u a , v u
J u a , u 1 v u a
0
u
J u 1 J v
J u J u 1 v
što je definicija konveksnosti funkcije.
31
Theorem Ako je U konveksni skup i J u C 1 U , funkcija J(U) je konveksna na U akko: J u J v, u v 0, u, v U 3 Theorem Neka je U konveksan skup, unutrašnjost skupa,J u C 2 U , funkcija
J(u) je konveksna na U akko: J u, 0, R n , u U R n
4
Proof Funkcija je konveksna. n u , R , 0 0, tako da u U za || 0 Za konveksne funkcije važi (3), pa se primenjuje:
te o sr vred
J u J u, J u , 0, 0 J u, 0 što je (4)
3
J u , 2
0, 0 1
u je rubna ta ka ka postoji niz u m , u m tako da Po definiciji adherentnih ta a
lim m u m u.
Za unutrašnje ta ke važi J u m , 0, R n lim J u m , J u, 0, jer J u C 2 U . važi relacija (4)
Na osnovu teoreme o srednjoj vrednosti:
J u J v, u v
J v u vu v, u v
U
4
0
sto znaci da važi relacija (3) i sledi da je funkcija konveksna. Theorem Neka je U konveksan skup i J u C 1 u. Neka je J(u) konveksna na U i neka je U skup ta aka minimuma funkcije J(u) na skupu U. Potreban i dovoljan uslov da neka ta ka u pripada skupu U je da važi: J u , u u 0, u U 5
Ako je u unutrašnja ta ka onda se ovaj uslov svodi na J u 0. Ako je U R n , uslov (5) se takodje svodi na J u 0. Proof u je minimum Posmatra se funkcija g J u u u J u g 0 jer je u u u U, a vrednost funkcije u proizvoljnoj ta ki je vea ili jednaka od vrednosti funkcije u minimumu, tj u . g se razvija u Tejlorov red: / : g J u , u u o 0 o J u , u u 0, J u , u u 0 za 0 , što je (5). n Za u , 0 0, e R , u 0 e , kad se ovo uvrsti u (5): J u , e 0, || 0 , e R n
Pošto može biti i pozitivno i negativno, kao i e, ova relacija može biti ta n a, samo kada je J u 0, tj kada je J u normalan na svaki vektor e. Ako je U R n tada u u generiše ceo prostor R n . Uslov (5) je zadovoljen sa jednakoš u.
32
J u , u u 0 može biti jedino ako je J u 0, tj ako je J u normalno na svaku razliku u-u . važi relacija (5)
J(u) je konveksna, zato važi relacija (2): 2 5 J u J u J u , u u 0 Dakle u U , J u J u u je minimum.
Metode gradijenta Rešava se problem: J u min u Rn
bez dodatnih ogranienja. Princip: Uzima se poetna taka u 0 , nekim sistemom dolazi se do take m koja je minimum. Sistem se bira tako da se od u0 do u1 prolazi pravcem u kome ta funkcija najbrže opada. Pokazuje se da je taj pravac, pravac antigradijenta J u. Pravac najbržeg rasta je pravac gradijenta J u. Priraštaj u taki u, iz Tejlorovog razvoja je: J u h J u J u, h oh
Koristi se nejednakost Koši-Bunjakovskog: a a 1 , . . . , a n ; b b 1 , . . . , b n ; 2
n
n
ak bk
k 1
n
ak bk 2
k 1
2
k 1
sledi: n
a b
ak bk ab k 1
Primenom na priraštaj dobija se:
2.
1.
J u h J u, h J u h
Traži se h tako da važi jednakost. Neka je 0. Ako je h J u onda 2. prelazi u jednakost, i to je pravac najbržeg pada. Ako je h J u onda 1. prelazi jednakost, i to je pravac najbržeg rasta. Od take u k do take u k 1 pomera se u pravcu antigradijenta tako što se formira sledei niz: 1 u k 1 u k k J u k , k 0,1,... Prvo se bira u0 , onda se formira niz u k . Dužinu koraka duž antigradijenta odredjuje . Pokazuje se da postoje uslovi koji obezbedjuju da lim k u k u U . Sve metode gradijenta imaju formulu (1), a razlikuju se po nainu biranja koeficijenta k . Posmatra se priraštaj: J u k 1 J u k J u k , u k 1 u k ou k 1 u k 2 J u k 1 J u k k J u k 2 o k , k 0 U dovoljno maloj okolini uk može se izabrati k tako da ceo izraz (2) bude negativan, tj da se postupak kree ka minimumu.
33
Algoritamski: izabere se neko k i izrauna u k 1 . Proveri se da li je priraštaj negativan. Ako nije smanji se k i ponovo vrši izraunavanje i provera. Tako se smanjuje vrednost J u k i ide ka minimumu. Ako je u nekoj tacki J u k 0, metoda otkazuje. Ova metoda je gruba, ali se dolazi do take koja se nalazi u blizini minimuma, a onda se može nekim preciznijim postupkom, npr Njutnovim, doi do tanog rešenja. Metoda najbrzeg pada (Košijeva metoda) Posmatra se niz:
u k 1 u k k J u k , k 0,1,... J u k 0, u 0 R n
1
k se bira na sledei
nain: Posmatra se funkcija f k J u k J u k . Traži se infimum ove funkcije:
2
f k k inf f k f k 0
Proverava se da li je k 0 f k J u k J u k , J u k 2 f k 0 J u k 0, jer je J u k 0, sledi da je k 0 i metod ima smisla. 1 Ako je J u Au, u b, u kvadratna forma, gde je A matrica, u i b su vektori. 2 Metoda najbržeg pada za ovu funkciju bi bila: u k 1 u k k Au k b 3 jer je J u Au b. Izraz (3) opisuje relaksacioni metod za rešavanje jednaine Aub. Za ovakvu funkciju J(u), k se može eksplicitno izraziti: 2 f k J u k J u k 2 AJ u k , J u k , 0 2 stacionarna taka f k J u k AJ u k , J u k 0
2
2
i sad u k 1 u k k J u k A Au k b ,Au k Ako funkcija nije tako jednostavna, k se ne može nai egzaktno. Pošto je f k funkcija jedne promenljive na nju može da se primeni neka od metoda za minimizaciju funkcija jedne promenljive. Medjutim, tako dolazi do greške, pa se uslov za k oslabljuje: k
J u k
, b
k
4
f k f k k 1 k f k 0 k f k , 0 k 1
5
f k f k k f k k , k 0,
k 1
k može da se odredi i
tako da važi sledece: 2 J u k J u k k J u k k J u k ,
6
0
Pomou se reguliše da drugi lanovi ovog Tejlorovog razvoja ne kvare nejednakost. Theorem Ako je niz u k odredjen sa (1), k odredjeno sa (6) i J u C 1 R n , tada je
svaka ta ka nagomilavanja niza u k , stacionarna ta ka funkcije J u.
Theorem Neka je niz u k dobijen postupkom (1), k odredjeno sa (2), J u k 0, J(u) konveksna funkcija, J u C 1 R n . Tada je svaka ta ka nagomilavanja niza u k
globalni minimum funkcije J(u) na skupu R n .
34
Theorem Neka je J inf u R n J u , J u C 1 R n i J u J v Lu v , gde je L0 Lipšicova konstanta, u , v R n (oznakom J u C 1,1 R n ). Neka je niz u k dobijen postupkom (1) i k sa (4). Tada za proizvoljno u 0 R n važi lim k J u k 0. Ako je još skup n u 0 u R n : J u J u 0 , gde je greška iz (4), ograni en, tada je svaka ta ka nagomilavanja niza u k stacionarna ta ka funkcije J u.
Theorem Neka je J u C 1 R n i J(u) konveksna funkcija. Tada za niz u k dobijen postupkom (1) i k sa (4) važi lim k J u k J i lim k u k , u 0. Ako je u (4) k ok 2 tada važi 0 J u k J c 0 k 1 , c 0 0.
Prethodna teorema govori da za minimizaciju funkcije jedne promenljive, k , treba koristiti minimizaciju reda veeg za jedan od željene tanosti za u . Definition Funkcija J(u) je jako konveksna na skupu U ako postoji 0 tako da J u 1 v J u 1 J v 1 u v 2 za u, v U Theorem (Jake konveksnosti) Potreban i dovoljan uslov da funkcija J(u) bude jako
konveksna je: J u J v, u v u v 2 ,
u, v U , 0
Ekvivalentan uslov je: J u, 2 .
Geometrijska interpretacija
Primenom metode najbržeg pada na funkciju J(u) dobija se niz taaka u i koji se spušta do minimuma. Ta figura se presee ravnima paralelnim xy ravni u takama niza i te linije se projektuju na xy ravan. Dobijene linije lie na nivoe u geografskim kartama J u J u k jedna jednaina linije nivoa G k u R n : J u J u k linija nivoa L k u R n : u u k J u k , 0 u k 1 L k pravac Pravac L k je skup svih taaka prave koja prolazi kroz tacku u k i ima pravac J u k . Da su linije nivoa kružnice, do rešenja (minimuma) bi se došlo u jednom koraku. Zato treba smenom promenljivih dobiti linije što bliže kružnici. Dokaz da su pravci normalni na linije nivoa: u(t) je parametarska jednaina linije G k . Tada važi 7 J ut J u k const , a t b, ut 0 u k Izvod leve i desne strane ove relacije po parametru t je: J u k , ut 0, za tt 0 : J u k , ut 0 0 L k G k L k J u k J u k G k Iz definicije koeficijenta k : f k J u k J u k , J u k | k f k k 0 J u k 1 , J u k J u k 1 J u k Iz J u k G k i J u k 1 J u k sledi G k 1 J u k . Znaci sa istim indeksima G i i L i su normalni, a sa uzastopnim indeksom su paralelni. Ova metoda se primenjuje na jako konveksne funkcije, za koje važi J u C 1,1 U . Tada važe ocene: Ocena po vrednosti funkcije: 0 J u k J J u 0 J q k Gde je
35
q 1
8
L
gde je konstanta iz teoreme jake konveksnosti, a L Lipšicova konstanta. Ocena po argumentima funkcije: J u J v Lu v u k u 2 2 J u 0 J q k , 0 q 1 Ako su linije nivoa kruznice tada važi: 9 J u J v u v Kada se (9) ubaci u Lipšicov uslov, sledi da je L1, onda iz teoreme sledi 1. To se iskoristi u (8) i dobija se q0, pa sledi da se minimum dobija u prvom koraku. Ova metoda daje loše rezultate kod funkcija koje imaju oblik "šerpe" (jaruge), zato što ortogonalni pavci uvek ostaju na obodu i ne spuštaju se do minimuma. Takve funkcije se prepoznaju tako što se za male promene argumenta vrednost funkcije jako menja. Za takve funkcije se koriste druge metode, npr metoda ravnine, koja ima popravke u odnosu na metodu najbržeg spusta. Metodom gradijenta se zapravo minimizuje Tejlorov razvoj funkcije. Za kvadratnu funkciju metoda najbržeg pada ne daje ta no rešenje, jer Tejlorov red daje tanu ocenu jedino za linearne funkcije, a kod kvadratnih približnu. Gradijentni postupak se može ubrzati uvodjenjem jedne regularne pozitivno definitne matrice A k : u k 1 u k k A k J u k
k 0
Ako je ta matrica A k J u k 1 , onda se dobija Njutnova metoda i ona je brža od gradijente. Ako se A k pogodno izabere, linije nivoa se mogu transformisati da budu bliže kružnicama. Metoda konjugovanih pravaca Ova metoda daje minimum kvadratne forme u konano mnogo koraka. Zato je bolja od metode najbržeg pada. Zasniva se na poznavanju prvog izvoda. J u C 1 R n Hiperravan: c, u R n : c, u c- vektor normale hiperravni, c 0 u 0 c, u 0 kombinacijom ovoga dobija se drugaije izražena hiperravan: u c, u c, u 0 u R n : c, u u 0 0 c u u 0 , c 0 Minimizirae se funkcija J(u) data kao: J u 12 Au, u b, u inf, gde je A0 pozitivno definitna i simetrina matrica. Funkcija J(u) je jako konveksna i dostiže svoj minimum u u R n koja je jedinstvena taka i važi: J u Au b
J u A
za uu sledi
J u Au b 0 u A 1 b Algoritam
Odabere se u 0 R n kao poetna taka i pravac p 0
J u 0
36
Ako je J u 0 0 u 0 u , inae ako je J u 0 0 rauna se nova taka: u 1 u 0 0 p 0 , gde je 0 0, f 0 J u 0 p 0 i to se minimizira: f 0 0 na isti nain kao kod metode najbržeg pada. Proverava se da li je 0 0 :
min 0 f 0 ,
f 0 J u 0 p
J u 0 0 , 0
p
f 0 0 J u 0 , J u 0 J u 0 0 0 0
1
f 0 0 J u 0 0 p 0 , p 0 J u 1 , p 0 0
sledi J u 1 p 0 , p 0 J u 0 , p 0 0 Ap 0 0 Zato se može definisati hiperravan 1 u R n : Ap 0 , u u 1 0 Pokazuje se da minimum leži u 1 . Hiperravan je linearna kombinacija vektora iz Rn1 . Time je ve smanjen stepen prostora, na ovaj nain se stepen može smanjiti do R 0 , što je taka. Ap 0 , u u 1 Ap 0 , A 1 b u 1 A 1 Ap 0 , b Au 1 p 0 , J u 1 0 zbog (1) sledi u 1 Nastavlja se dalje, rauna se J u 1 . ako je J u 1 0 u u 1 ako je J u 1 0 formira se pravac p 1 J u 1 0 p 0 , gde je 0 takvo da važi: 2 p 1 1 , p 1 Ap 0 Zato treba da važi:
Ap 0 , p 1 0 Ap 0 , p 1 Ap 0 , J u 1 0 p 0
Ap 0 , J u 1
Ap 0 , 0 p 0 0
Ap 0 ,J u 1
0
Ap 0 , p 0
, Ap 0 , p 0
0 jer je A0 i p 0 0 iz pretpostavke.
Sada se definise taka u 2 : 3
u 2 u 1 1 p 1
gde je 1 odredjeno na isti nain kao i 0 : f 1 J u 1 p 1 ; f 1 1 min 0 f 1 2 f 1 0 J u 1 , p 1 J u 1 , J u 1 0 p 0 J u 1 J u 1 , 0 p 0 0 iz (1) 1 0 pa je u 2 dobro definisano. f 1 1 0 jer treba da bude minimum f 1 1 J u 1 1 p 1 , p 1 J u 2 , p 1 0 J u 2 p 1
0,
jer je
4
3
J u 1 J u 2 Au 1 b Au 2 b Au 1 u 2 A 1 p 1 , sledi J u 2 J u 1 1 Ap 1
5
5
J u 2 , J u 0 J u 1 1 Ap 1 , J u 0 J u 1 , p 0 1 Ap 1 , p 0 0 sledi
0 2
0 1
6
J u 2 J u 0 p 0 J u 2 , J u 1 J u 2 , p 1 0 p 0 J u 2 , p 1 J u 2 , 0 p 0 sledi
0 4
0 6
J u 2 J u 1
Zakljuak: svi pravci su medjusobno ortogonalni. Proverava se linearna nezavisnost Ap 0 i Ap 1 0 Ap 0 1 Ap 1 0
/ p 0
0 Ap o , p 0 0 0 0
37
0 Ap 0 1 Ap 1 0
/ p 1
1 Ap 1 , p 1 0 1 0
Sledi da su linearno nezavisni. Pretpostavi se da je formiran niz taaka u 0 , u 1 , . . . , u k po formulama: u i1 u i i p i f i J u i p i ; f i i min 0 f i p i J u i i1 p i1 0
i1
Ap i1 , J u i Ap i1 , p i1
Pretpostavlja se još da važe normalnosti: Ap i , p j 0, i j, 0 i, j k 1 J u i , p j 0, 0 j i k J u i , J u j 0, i j, 0 i, j k J u i 0, i 0,1,..., k Uz ove pretpostavke trvdi se da uslovi normalnosti važe i za ik. Dokaz je analogan dokazu kad se prelazi sa u 1 na u2 , pa je izostavljen. Ovakvim postupkom se generišu hiperravni: i1 u R n : Ap i , u u i1 0 , i 1 , . . . , k 1 Hiperravni k predstavljaju linearne mnogostrukosti dimenzije n-k u prostoru R n . Za svaku k važi: u k . U najviše n koraka dolazi se do n-k0, a ta linearna mnogostrukost je taka. Drugim reima: Vektori J u 0 , J u 1 , . . . , J u k su svi medjusobno ortogonalni, a u prostoru R n može postojati najviše n takvih vektora. Zato mora postojati k N tako da J u k 0 u u k i do njega se dolazi u najviše n koraka. Do sada je razmatran metod konjugovanih gradijenata za funkciju J(u) u obliku kvadratne forme, tj za problem: J u 12 Au, u b, u inf u Rn Algoritam je sledei: 1. izabere se u 0 R n 2. u k 1 u k k p k 3. f k k min 0 f k , f k J u k p k 4. p k J u k k p k 1
i
Ap i1 , J u i Ap i1 ,p i1
p 0 J u 0
Tada važi da je J u k 1 , p k
0,
J u Au b
Au k 1 b, p k Au k k p k b, p k Au k b k Ap k , p k
J u k k Ap k , p k
J u k , p k
k Ap k , p k 0
sledi:
J u k , p k k Ap k , p k
Važi još da su pravci pi medjusobno ortogonalni i konjugovani u odnosu na matricu A, tj: Ap i , p i 0 i Ap i , p j 0, i j. I gradijenti J u 0 , . . . , J u k su ortogonalni i konjugovani
38
na A. Posmatra se primena ovog metoda na problem u opštem obliku J u min u Rn
7
J u C 1 R n
Kree se od koeficijenta k i iz njegove formule, gde treba eliminisati A: brojilac: 5 Ap k 1 , J u k k 11 J u k J u k 1 , J u k k 11 J u k , J u k k 11 J u k 1 , J u k
2
0 ort .
k 11 J u k
imenilac:
Ap k 1 , p k 1 k 11 J u k J u k 1 , p k 1
J u k 1 , p k 1 , J u k , p k 1
k 11
k 11 J u k 1 , p k 1
k 11 J u k 1 , J u k 1 k 2 p k 2 ort .
2
J u k 1 , J u k 1
k 11
k 11 J u k 1
Ove jednakosti važe samo za kvadratne forme, jer su odatle dobijene. Za primenu metoda konjugovanih pravaca za problem (7), algoritam je sledei: 1. izabere se u 0 R n 2. u k 1 u k k p k 3. f k J u k p k , f k k min 0 f k 4. p k J u k k p k 1
p 0 J u 0
gde se k odredjuje na jedan od sledeih naina: J u k , J u k 1 J u k
k
J u k 1
k
J u k
2
8
2
J u k 1
9
2
J u k p k 1 , J u k k , akoJ u C 2 R n J u k p k 1 , p k 1
10
Jednakosti (8),(9) i (10) su ekvivalentne za kvadratnu formu. Metod zasnovan na jednakosti (10) se retko koristi, samo kada se matrica J u k lako izraunava. Ako se metod primenjuje dugo, može se desiti da zbog grešaka zaokruživanja pravci p k zalutaju. Tada se postavi k 0 i time se vraa na gradijent. Broj k za koji se uzima k 0 se naziva momenat obnavljanja metode. k I 0 n, 2n, 3n. . . n-dimenzija prostora.
39
Theorem Neka je J(u) jako konveksna funkcija na R n . Neka je J u C 1,1 R n i neka je za
rešavanje problema (7) primenjen metod konjugovanih pravaca sa k koje je odredjeno sa (8). Tada za bilo koji izbor skupa I 0 i bilo koje u 0 R n niz u k konvergira ka u i pri tome važi ocena: 0 a k J u k J q k a 0 - konvergencija po vrednosti funkcije
u k u 2
2
q k a 0 , k 0, 1, . . . - konvergencija po vrednosti argumenata 3
gde je q 1 L2 L 2 , 0 q 1, je konstanta iz uslova jake konveksnosti, J u J v, u v u v 2 , a L je Lipšicova konstanta.
Metod konjugovanih pravaca konvergira i po vrednostima funkcije i po vrednostima argumenata.
Njutnova metoda Rešava se problem minimizacije: J u min u U R n
sa ogranienjima, a može i bez. Vea glatkost obezbedjuje bržu konvergenciju. Ova metoda se sastoji u minimizaciji kvadratnog dela Tejlorovog razvoja funkcije J(u), zato je tanost vea od prethodne metode. Ona daje minimum kvadratne forme u jednom koraku (u emu se ogleda brzina), ali zahteva raunanje hesijana. Potrebno je da bude J u C 2 U , U R n . Neka je u 0 U i neka se bilo kojom metodom dodje do približnog rešenja uk . Važi razvoj: J u J u k J u k , u u k 1 J u k u u k , u u k ou u k 2
2
Zanemari se ostatak i definiše funkcija: J k u J u k , u u k
1 J u k u u k , u u k 2
1
Neka je k rešenje (minimum) ove funkcije, tj: J k k min uU J k u Formira se niz: u k 1 u k k k u k , o k 1 Što predstavlja opšti oblik Njutnove metode. U zavisnosti od naina na koji se bira k postoji više varijanti Njutnovog metoda: 1.
k 1, k 0,1,... Tada je u k 1 k J k u k 1 min uU J k u Specijalno kada je U R n onda je J k u k 1 0,
iz (1) sledi: J k u k 1 J u k J u k 1 u k 1 u k 0 Ako se pretpostavi da je J u k regularna matrica, tada iz (2) rešavanjem po u k 1 sledi: u k 1 u k J u k 1 J u k
2
"obian Njutn". Ranije je radjeno f u 2.
k i 0 , i o
0,
je najmanji i0 za koje važi:
rešava se: u k 1
u k
3
f u k
f u k
40
J u k J u k i k u k i J k , 0 , 1 f k k min 10 f k , f k J u k k u k Ako je J k u jako konveksna i ako je U R n može se primeniti npr metod konjugovanih 3.
pravaca i dobiti rešenje u n koraka. Njutnov metod se koristi kada se gradijent i hesijan mogu relativno lako izraunati. Metode gradijenta nemaju uslov za pocetnu taku, dok Njutnova metoda ima. Naješe se gradijentnom metodom dodje u neku okolinu rešenja i tu ponu oscilacije. Zato se u toj taki primeni Njutnov metod i brže dodje do rešenja. Teoreme o konvergenciji Njutnove metode:
Theorem Neka je J(u) jako konveksna funkcija na U R n . Neka je J u C 2 R n i J u J v Lu v , u, v R n . Neka je u 0 izabrano tako da važi:
L J u 0 2 2 q
4
J u, 2 i 0q1, takvo postoji za sve jako konveksne funkcije iz klase C 2 . Tada niz (3) postoji (matrica J u je regularna) i u k konvergira ka u pri emu važi ocena: k u k u 2 L 1 q 2 , k 0, 1, . . . Proof Egzistencija i jedinstvenost resenja se izvode iz jake konveksnosti. Uslov: J u, 2 , u R n , R n za 0 sistem J u 0 ima samo trivijalno rešenje, jer je u suprotnom 0 2 0 što je kontradikcija. Sledi da je det J u 0 J u 1 u k je dobro definisan. Neka je z J u J u 1 z Iz uslova (5) sledi: Kosi Bujak . 2 2 J u 1 z z, J u 1 z z J u 1 z J u 1 z z J u 1 1
5
6
Indukcijom se pokazuje da za gradijent važi: k a k J u k 2 2 L 1 q 2
7
k 0 važi jer je to pretpostavka za u 0 , pretpostavi se da važi za k. Razmatra se 1 k 1, koristi se J u h J u 0 J u thhdt 1
J u k 1 J u k J u k t u k 1 u k u k 1 u k dt
0
3
1
0 J uk J uk t uk 1 uk
dt J u k 1 J u k
ih k 1 1 L 1 2 2 a k 1 Lu k 1 u k a k a k L 2 4 4 L 2 q 2 2 2 2 k 1 1 2 2 2L q Posto je J(u) jako konveksna važi: J u J v, u v u v 2 , u, v R n U prethodnu formulu se u i v zamene sa u k i u :
u k u 2
J u k J u , u k u 7
J u k u k u
0 k
sledi u k u 1 a k 2 L 1 q 2 Theorem Neka je niz u k odredjen sa (3) i neka U R n (postoje ograni enja). Neka je U konveksan i zatvoren skup u R n . J(u) jako konveksna funkcija, J u C 2 U .
41
Neka je još J u J v Lu v , u, v U . Tada je niz u k odredjen k 1 jednozna no odredjen pri bilo kom izboru u 0 U . Ako je u 0 odredjeno tako da važi q 2L u 1 u 0 1 tada niz u k konvergira ka u i važi ocena k k 2 u k u L q 2 1 q 2 1
Ovim se minimizira kvadratni deo priraštaja funkcije nad skupom U. Ako je skup U linearno ogranien, to je onda kvadratno programiranje i rešava se simpleksom, jer je tako lakše.
Metoda promenljive metrike Resava se problem minimizacije bez ogranicenja: J(u) min u R n Ova metoda kupi dobre osobine gradijentnog spusta i Njutnove metode. Njutnova : u k 1 u k J u k 1 J u k 1gu k
gradijentna:uk 1 uopsteno: u k 1
u k k J u k k gu k
u k 1 u k k gu k ; k min 0 J u k gu k 1 u k k H k J u k , k0,1,...; H0 E -gradijentna; H k J u k -njutn u 0 R n fiksirana pocetna taka
Metod promenljive metrike pocinje gradijentnom metodom (linearna konvergencija), a zavrsava se Njutnovom metodom (kvadratna konvergencija). To je moguce postici jer se u svakom koraku k i H k menjaju tako da se od E dobija J u k 1 . Na taj nacin se postize Njutnov red konvergencije, a opet je minimizacija bez ogranicenja. U zavisnosti od izbora k postoje razlicite metode. Sve metode se rukovode idejom da, ako se za J(u) uzme kvadratna forma, do resenja se stize u najvise n koraka. Odnosno ako je J(u) 12 u, Au a, u b, u, a R n , J(u) R , onda bi posle n koraka Hn trebalo da se ponasa kao A 1 . Razmatra se Davidon-Fletcher-Powel metoda. Pokazuje se da ova metoda daje minimum kvadratne forme u n koraka. Algoritam: 1. bira se u 0 R n , H 0 E , p 0 J u 0 2. izlazni kriterijum: provera da li je J u 0 0. Ako jeste u 0 u inace se nastavlja 3. racuna se d k H k p k 4. nalazi se k kao rešenje min 0 J u k d k 5. racuna se u k 1 u k k d k
z k
6. 7. 8.
9.
proverava se p k 1 J u k 1 ? 0 ako jeste sledi u k 1 u , ako nije nastavlja se formira se pravac k p k 1 p k upotpuni se matrica H k : H k 1 H k A k B k T H T H A k zzk k z,k k , B k wkk , H k k k k k povratak na 3.
42
Ako funkcija nije data u obliku kvadratne fome mora se deinisati neki drugi izlazni kriterijum. To može biti: J u k u k 1 u k k s 0 , gde je se unapred zadato 0s1 Taj uslov treba dodati u 9. pre prelaska u novi ciklus. Za dokaz ovog algoritma koriste se sledece leme:
Lemma Matrica H k 1 definisana u 8. je pozitivno definitna.
Lemma Za vektore d k i H k važi d k , J u k 1 0. Odnosno pravci gradijenata su ortogonalni u odnosu na matricu H k : p k 1 , H k p k 0 Proof f k k 0 jer je k minimum funkcije f k k J u k k d k , d k 0 J u k 1 , d k 0 p k 1 , H k p k 0 Lemma Za kvadratnu formu kod koje važi da je matrica A pozitivno definitna važi: d k , Ad l 0,
k l;
H k Ad l d l ,
k l
Onda su vektori d l sopstveni vektori matrice H k A Theorem Tacan minimum kvadratne funkcije sa pozitivno definicnom simetricnom
matricom A, postize se u najvise n koraka. Ako se rešenje dobija u n-tom koraku, važi da je H n A 1 . Proof Neka su tokom DFP algoritma dobijeni vektori d k , k 0,1,...,n-1. Ovi vektori su na osnovu leme linearno nezavisni (jer su ortogonalni). Zato oni generisu ceo prostor R n . Posto je H n Ad k d k za k 0, 1, . . . , n 1 onda je H n Au u za u R n jer se svako u može zapisati kao linearna kombinacija vektora d k . Zato važi H n A 1 . Poznato je d k , Ad n 0, za k 0,1,...,n-1. Na osnovu koraka 3 . sledi
d k , A H n J u n
0. Sledi d k , J u n
d n
0 J u n
d 0 , . . . , d n1 . Ovo je
moguce samo ako je J u n 0, jer u prostoru dimenzije n postoji najvise n ortogonalnih vektora. J u n 0 u n u . Dakle rešenje je dobijeno u najvise n koraka. Ovaj korak je ekvivalentan Njutnovom postupku.
Konveksno programiranje Minimizacija sa ogranienjem: J u min u U R n
1 2
U u R n : u U 0 , g i u 0, i 1,.., m, g i u 0, i m 1,..., s U 0 R n zadat konveksan skup, bira se tako da ga je lako odrediti i da je lako odrediti da li mu neki vektor pripada. Kod linearnog programiranja U 0 u R n : u 0 pretpostavke: g i u 0, i 1 , . . . , m konveksne funkcije; g i u 0 a i , u b i , i m 1 , . . . , s linearne funkcije Theorem Neka je U konveksan skup i J(u) konveksna funkcija na U . Tada je skup
43
M c u U : J u c konveksan za bilo koje c R.
Iz ove teoreme sledi da je U definisan u (2) konveksan, jer je presek konveksnih skupova. Problem (1) kod koga je U konveksan i J konveksna funkcija na U se naziva problem konveksnog programiranja. Definition Veliku ulogu ima funkcija Lagranža. Definiše se funkcija Lagranža za problem
(1): s
Lu, J u i g i u, u U 0
3
i1
1 , 2 , . . . , s ;
0 : i 0, i 1, . . . , m ,
ms
Definition Ta ka u , U 0 0 naziva se sedlasta taka funkcije Lagranža (3) ako
važi:
Lu , Lu , Lu,
4
za u U 0 , 0 . Lemma Da bi ta ka u , U 0 0 bila sedlasta ta ka funkcije Lagranža potrebno
je i dovoljno da važi:
Lu , Lu, , u U 0 i g i u 0, i 1, . . . , s, u U
5 6
Posledica 4 5 6 Teoreme Kuhn-Tuckera
Ove teoreme daju vezu izmedju sedlaste take u , i rešenja u . Theorem (KT1) Ako je u , U 0 0 sedlasta ta ka funkcije Lagranža, tada je u U
i J Lu , J u pri emu je U skup rešenja problema (1). Proof u , ina ns komponenti. Posto je u , sedlasta ta ka za nju važi (5) i (6), pa se te jedna ine mogu zameniti u (3): s
Lu , J u i g i u Lu , J u i1
0 po (6 )
Na osnovu (5) dobija se: s
J u J u i g i u, u U i1
0 po (2)
J u
J u, u U u U Po uvedenim oznakama J u J
Proverava se da li važi suprotno tj, da li važi da ako zadatak ima rešenje, on ima i sedlastu taku. Pokazuje se da ne mora da važi, kontraprimerom: J u u konveksna funkcija, U 0 u R, u 0 konveksan skup gu u 2 konveksna funkcija U u U 0 , gu 0 0 J 0 J 0 u 0 rešenje Za ovu funkciju J(u) funkcija Lagranža je: Lu, u u 2 u 0, 0, trebalo bi da važi Lu , Lu, , u U 0 0 u u 2 kad u 0 desna strana nejednakosti je manja od nule, odnosno, u
u 2
44
i to je kontradikcija i sedlasta taka ne postoji. Dakle da bi tvrdjenje važilo i u ovom smeru, mora se dodati jos neki uslov. U se transformiše tako da bude: U u R n , u U 0 , g i 0, i 1,..., m J u inf
7
odnosno izbaena su linearna ogranienja. Definition Ograni enje g i u 0 se naziva regularno na skupu U, ako postoji ta ka u i U tako da g i u i 0. Ako su sva ograni enja u skupu U regularna, onda je U regularan skup. Ako je U regularan i konveksan skup i g i u konveksne funkcije za i 1,..., s na U. Tada postoji jedinstvena taka U tako da g i 0 za i1,...,m. taka za koju to važi se naziva Slaterova taka i definiše se jm1 j u j , jm1 j 1, j 0, j1,...,m Uslov g i 0, i1,...,m, se zove Slaterov uslov i zbog konveksnosti važi: m
g i g i j u j j1
m
j gi u j 0 j1
g i u j 0; g i u i 0 Theorem (KT2) Neka je U 0 R n konveksan skup, funkcije J u , g i u, i 1, . . . , m,
konveksne funkcije na U 0 , a skup U iz (7) regularan. Neka je skup rešenja problema (7) U . Tada za svaku ta ku u U postoje množitelji Lagranža 1 , . . . , m 0 R m : i 0, i 1, . . . , m , tako da par u , predstavlja sedlastu ta ku funkcije Lagranža koja odgovara problemu (7). Ta sedlasta ta ka pripada skupu U 0 0 . Proof U skupu R m1 definišu se podskupovi: A uU 0 Au; Au a a 0 , a 1 , . . . , a m R m1 : a 0 J u, a i g i u, i 1, . . . , m, u U 0 B b b 0 , b 1 , . . . , b m R m1 : b 0 J , b i 0, i 1, . . . , m , J inf uU J u Pokazuje se da su A i B konveksni i disjunktni skupovi. A B : a A u U 0 , a 0 J u, a i g i u, i 1, . . . , m u U a 0 J u J ali b 0 J a B u U 0 \ U i, g i u 0 a i g i u 0 ali b i 0 a B Analogno se dokazuje da za b B b A.
Konveksnost
Prvo za skup A. A je konveksan ako i samo ako a, c A a a 1 c A a, c A u, v U 0 : a 0 J u, a i g i u, i 1, . . . , m; c 0 J v, c i g i v, i 1, . . . , m Formira se ta ka u u 1 v U 0 jer je konveksan. konv
J u J u 1 J v a 0 1 c 0 prva komp a
konv
g i u g i u 1 g i v a i 1 c i i -ta komp a
45
a A u U 0 , a 0 J u , a i g i u Dakle a a 1 c A, jer takva ta k a u a postoji, pa je A konveksan. Analogno se pokazuje da je i B konveksan skup.
Za diskujnktne konveksne skupove važi da postoji hiperravan koja ih razdvaja, neka je to H ip u : c, u c 0 , . . . , m 0 fiksiran vektor Ova hiperravan razdvaja i A i B (zatvorenje skupa B) - bez dokaza. B b b 0 , b 1 , . . . , b m R m1 : b 0 J , b i 0, i 1, . . . , m c, b c, a
a A, b B . m
m
i b i
i ai
i0
i0
Zato je vektor preseka y J , 0, . . . , 0 A B c, y 0 J m
0 b 0
m
i b i
0 J
0 a 0
i1
i a i
8
i1
posmatra se vektor b J 1, 0, . . . , 0 B i uvrsti u (8): 0 J 1 0 J 0 0 za b J , 0, . . . , 0, 1 , 0, . . . , 0 B opet se uvrsti u (8): i poz 0 J
i
0 J i 0, i 1, . . . , m
Pokazuje se da su ovakvi i Lagranžovi množitelji, tj da je u , sedlasta ta ka, odnosno da su zadovoljene relacije (5) i (6). Uzima se a J , 0, . . . , 0, g i u , 0, . . . , 0 A B i u U i uvrsti u (8) sa obe strane: 0 J i g i u 0 J 0 J i g i u i g i u 0 i g i u i g i u 0, u U a to je (6). Jedna od pretpostavki teoreme je da je U regularan skup, tj da važi Slaterov uslov. Neka je Slaterova ta ka. Pokazuje se da kod regularnih problema važi 0 0. Uzima se a J , g 1 , . . . , g m A i uvrsti u (8) m
0
0 J
i gi i1
Pretpostavi se suprotno, tj 0 0, tada m
0 0 i g i i1
što je kontradikcija jer važi Slaterov uslov, pa je im1 i g i 0. Ni preostale i ne smeju biti jednaki nuli, jer je vektor c 0, a pretpostavljeno je da je 0 0, što je kontradikcija. Dakle 0 0. Bez umanjenja opšosti se uzima 0 1. Uzima se a J u, g 1 u, . . . , g m u A, u U 0 , i uvrsti u (8)
46
m
J J u i g i u Lu, i1
u ovo se zameni u u , u U : m
J J u i g i u Lu , i1
0 po (6 )
J J u Lu , Lu ,
Lu, , a to je (5). Pošto važe (5) i (6) dokazano je da je u , sedlasta ta ka funkcije Lagranža. Theorem (KT3) Neka je dat problem nelinearnog programiranja kakav je opisan u teoremi KT2. Potreban i dovoljan uslov da u bude rešenje takvog problema je da postoji 0 tako da je u , sedlasta ta ka funkcije Lagranža dodeljene tom problemu.
Dualnost u nelinearnom programiranju Kod linearnog programiranja je važilo J p u J d d , kod nelineranog programiranja to ne važi. Posmatra se sledei problem: J u inf u U U u R n : u U 0 , g i u 0, i 1,.., m, g i u 0, i m 1 , . . . , s g i u a i , u b i ,
1
i m 1,...,s
Zadatku (1) se pridružuje funkcija Lagranža: s
Lu, J u i g i u, u U 0 i1
0 R s : i 0, i 1 , . . . , m
Definiše se funkcija
: u sup Lu, , u 0
U 0
u Lu, 0, u u
U 0 J u, u U , u U 0 / U
sledi: inf u inf J u J
uU 0
uU
Iz ovoga sledi da se problem (1) može ekvivaletno zapisati kao: u inf
1p (primal)
u U 0
Pretpostavi se da (1) ima rešenje, tj da U i J Neka je U u U 0 : u J Definiše se funkcija
47
inf Lu, , uU 0
0
Formira se problem: sup
1d (dual)
0
Problem (1p) je primal, a problem (1d) koji mu je pridružen je dual. sup 0
0 : skup rešenja. Lemma Za probleme (1p) i (1d) važi relacija:
2
3
4
J u , u U 0 , 0
5
Proof (2) sledi iz definicije supremuma.
(4) sledi iz definicije infimuma Dokaz za (3): inf Lu, Lu, , u U 0 , 0
6
uU 0
sup sup Lu, u
0
7
0
inf inf u J
uU 0
uU 0
Što je tražena relacija.
Posebno ce se razmatrati pod kakvim uslovima važi: , U i J
8
Theorem Relacije (8) važe ako i samo ako funkcija Lagranža L u, , u U 0 , 0 ima sedlastu ta ku na skupu U 0 0 . Skup sedlastih ta aka funkcije Lagranža na skupu
U 0 0 poklapa se sa skupom. U . Proof pretpostavi se da važi (8) Poznato je da uvek važi inf Lu, Lu , sup Lu , u J uU 0
0
posto važi (8), važi i: inf Lu, Lu , sup Lu , uU 0
0
Kad se izbace inf i sup, dobija se: Lu , Lu , Lu, što je definicija sedlaste tacke funkcije Lagranža. Dakle ako postoji i u onda je u , sedlasta ta ka. pretpostavi se da je u , U sedlasta ta ka. Poznato je Lu , Lu , , 0 , jer je sedlasta ta ka sup 0 Lu , u Lu , Lu , Lu, , u U 0 , jer je sedlasta ta ka i inf uU 0 Lu, Lu , Ove relacije se ubace u (5): Lu , J u Lu ,
48
svi prelaze u i zato:
J u U J
esto je lakše rešiti dual, nego primal. Dual je uvek konveksna funkcija ak i kada primal nije. Ogranienja za su uvek linearna i funkcija je linearna po . Konveksnost ostaje ouvana. Zato je oigledno da dual duala nije primal kod nelinearnog
programiranja. Metoda Lagranžovih mnozilaca Posmatra se problem:
J u inf u U U u R n : u U 0 , g i u 0, i 1,.., m, g i u 0, i m 1,..., s
1
pretpostavi se da inf J u J tj da problem ima rešenje. Pridruzuje se funkcija Lagranža: s
Lu, J u i g i u, u U 0 , 0 i1
Za probleme konveksnog programiranja koji zadovoljavaju slaterov uslov poznato je da je potreban i dovoljan uslov za postojanje resenja egzistencija sedlaste tacke funkcije Lagranža, odnosno postojanje mnozitelja Lagranža: 2 0 , 0 R s : i 0, i 1 , . . . , m 3 Lu , Lu, , u U 0 4 i g i u 0, i 1 , . . . , s, u U Uslovi (3) i (4) su uslovi koji odredjuju sedlastu tacku. Na ovaj nacin je postavljen problem za ns nepoznatih. Ako se nadje vektor R s tako da važi (2),(3),(4), onda je (u , sedlasta taka, a to znaci da je u rešenje problema (1). 1 Ako je J u, g i u C U 0 , onda se uslov (3) svodi na 3’ L u u , , u u 0, u U 0
Ako je U 0
Rn
onda je uslov (3) ekvivalentan sa
L u u , 0
3”
s
J u u i g i u 5
5
i1
Metod mnozitelja Lagranža se sastoji u tome da se iz (4) i (5), koji zajedno cine sistem ns jednacina sa ns nepoznatih, izracuna sedlasta taka. i 1,..., m (uslov (2)), onda je (u , sedlasta taka, odnosno Ako se dobije i 0, u je rešenje.
Metoda dopustivih smerova Ovom metodom se resava problem: J u min P 1,..., m u U u R n : g i u 0, i 1 , . . . , m
1
49
Definition Za proizvoljno U skup aktivnih ogranicenja oznacava se sa P()i P, g i 0 . Ogranicenje g i u je aktivno u tacki ako je g i 0.
Pravac je dopustiv ako vodi u unutrasnost oblasti U Definition Pravac d je dopustiv smer u tacki ako postoji 0 tako da d U , za ,
0 .
Theorem (Fritz-John-ovi uslovi optimalnosti) Neka ogranicenja u problemu konveksnog
programiranja datog sa (1) zadovoljavaju Slaterov uslov. Neka je u U dopustivo rešenje i P(u skup aktivnih ogranicenja u u . rešenje u je optimalno ako sledeci sistem nema rešenje d.
J u , d 0
2
g i u , d 0, i Pu Ako rešenje d postoji, ono je dopustiv smer.
Sistem (2) je ekvivalentan Kun-Takerovim uslovima. Metoda dopustivih smerova koristi ovu teoremu. Izabere se pocetna iteracija u 0 U . Formira se niz u k 1 u k k d k , k 0,1,..., gde su k koraci, a d k dopustivi smerovi iz tacke u k . Korak k se odredjuje jednodimenzionalno nelinearnom optimizacijom iz uslova: J u k d k min 0
3
rešenje problema (3) je k . Smer d k se racuna iz uslova (2). Posto je pretpostavljeno da gi u zadovoljavaju Slaterov uslov, potreban i dovoljan uslov da u bude rešenje problema 1 je da problem (2) nema rešenje. Na osnovu toga se formira sledeci problem: 0 J u , d 0 max,
4
g i u , d 0, i Pu |d i |
1, i 1,..., n
Ogranicenja |d i | 1, i 1,..., n predstavljaju uslov normalnosti. Dodata su zbog stabilnosti metode, a mogu se izostaviti. Problem (4) ima trivijanlo rešenje d0, 0. Zato se stavlja 0. Ako problem (4) i dalje ima rešenje, onda 2) ima rešenje i tada u nije rešenje problema (1). Ako ne postoji takav , onda je u rešenje za (1). Ako je 0 rešenje, onda je d dopustiv smer iz u Resavanje problema (1) se zamenjuje resavanjem problema (3) i (4), gde (3) daje korak, a (4) smer kretanja. Algoritam 1. Izabere se u 0 U i definise izlazni kriterijum u k 1 u k , 0 2. U tacki u k odredi se skup aktivnih ogranicenja P(u k i resi problem
50
0 J u k , d 0 max,
g i u k , d 0, i Pu |d i |
3.
4’
1, i 1,..., n
Resenja problema (4’) se oznace sa k i d k . Ako je k 0 postupak se prekida i u k je rešenje problema (1). Inace za k 0, vektor d k je dopustiv smer iz u k , i prelazi se na korak 3. Resava se problem J u k d k min g i u k d k 0, i 1,..., m 0
3’
rešenje ovog problema oznacava se sa k . 4. Formira se niz u k 1 u k k d k 5. Vraca se na 1. i proverava izlazni kriterijum. Ako je zadovoljen u u k 1 i prekida se postupak. Ako nije zadovoljan, k postaje k1 i algoritam se nastavlja Izlazak iz ovog algoritma može nastupiti ako je nadjeno tacno rešenje ili ako je zadovoljen izlazni kriterijum. Problem ove metode može biti zaokruzivanje pri racunanju. Uvodi se oslabljenje, pa se umesto skupa P(), posmatra skup: P, i P, g i 0 Jos jedno oslabljenje je da se u problemu (4) i (4’) mogu zanemariti uslovi max, i može se traziti bilo kakvo rešenje tog problema. To je moguce jer vec egzistenzija resenja govori o postojanju dopustivog smera d.
Kaznene funkcije Ime ovih funkcija ima istorijski znacaj. Ovakvi problemi su se prvo resavali, pa je tek onda razvijena teorija. Ovakve funkcije se primenjuju u slucajevima kada neka taka u U "bezi" iz skupa. Tada se takvoj tacki nametne kazna. Metoda spoljasnih kaznenih funkcija Resava se problem sa ogranicenjima J u inf u U
1
Ovaj problem može da se linearizuje, ali time se dobija rešenje koje jako odstupa od tacnog. Drugi nacin da se ovaj problem uprosti je da se predje na minimizaciju bez ogranicenja: k u inf, k 0,1,...
2
u U 0
U U 0 , U 0 može biti R n ali je pozeljno da to bude neki relativno velik skup za koji je lako odrediti da li mu taka pripada. rešenje problema (2) za fiksirano k oznaci se sa uk . Cilj je da niz resenja problema (2) u k konvergira ka resenju problema (1), tj uk u , J u k J . Zato se funkcije k u formiraju tako da na skupu U imaju iste vrednosti kao funkcija J(u), a van skupa U da idu 51
u beskonacnost. Sto vece k funkcija k u bi trebala da bude bliza funkciji J(u). Da bi se kontrolisale takve funkcije uvode se kaznene funkcije Pk . Definition Niz funkcija P k u, k 1, 2, . . . , u U 0 U , nazivaju se kaznene funkcije skupa U na skupu U 0 ako važi:
0, u U , u U 0 \ U
lim P k u k
Kada u napusta skup U, kaznena funkcija mu daje beskonacno veliku kaznu. Postoji vise nacina za zadavanje ovakvih funkcija. Neka je U0 R n , A k 0 niz iz R, lim k A k . Tada kaznene funkcije mogu biti: 1 P k u A k u, U , u U 0 R n , u, U inf vU u v 0, u U 2 P k u A k u , u U , U Funkcije k se formiraju na sledeci nacin: k u J u P k u, u U 0 3 Ako je u zadatku (2) funkcija k definisana sa (3), onda za u U k u J u, a za u U k u . Infimum funkcije k u je iz skupa U. k u k je optimalna vrednost funkcije k k u k k inf k u 4 uU 0
Realnije bi bilo posmatrati uk kao priblizno rešenje, tada se definise i ovako: k u k k k , k 0, lim 0 k
5
Ako je k
0,
onda su (4) i (5) ekvivalentne.
Cilj je da važi: lim k u k lim k lim J u k J k
k
k
Posmatra se problem (1), sa skupom U definisanim U u U 0 R n : g i u 0, i 1,... m, g i u Kaznena funkcija za skup se definise:
0, i m 1 , . . . , s
P k u A k Pu m
Pu
maxgi
s
u, 0 p
i1
gi u p , u U , p 1
6
0
im1
A k 0, lim A k k
Pokazuje se da je ovo dobro definisana kaznena funkcija: u U Pu 0 P k u 0 u U j, g j u 0, 1 j m ili j, g j u 0, m 1 j s Znaci da u bar jednoj sumi postoji neki pozitivan broj, pa je P(u)0 P k u
k
Ako su funkcije J(u),g i u C r U 0 , onda je za pr iz definicije (6) i funkcija P(u) C r U 0 . Ako je r1 iz neprekidnosti g i u sledi neprekidnost P(u), ali nema glatkosti. Ako su funkcije g i u 0 konveksne, a g i u 0 linearne funkcije, onda je funkcija P k u isto konveksna funkcija.
52
Uvode se oznake: g i
maxg i u, 0 , i 1 , . . . , m g i u , i m 1,..., s s
Pu
gi u p
6’
i1
Dakle kaznene funkcije se mogu definisati ovako: s 4 P k u i1 A k i g i u p i , p i 1, u U 0 , A k i 0, lim k i A k i s 5 P k u i1 A k i i g i u, u U 0 , gu 0, 0 0, g 0 za g0 s 6 P k u 1 i1 g i u p i A k 1, p i 0 m s 7 P k u A1 i1 e A k g i u im1 e A k g i u , u U 0 k u U lim k P k u S 0 u U e 2
Teoreme o konvergenciji kaznenih funkcija Theorem Neka su funkcije J(u) i g i u, i 1, . . , s, definisane na skupu U 0 i neka je niz u k definisan sa (3),(5) i (6). Tada važi: lim J u k lim k u k lim k J k
k
k
Pored toga, ako je J inf uU 0 J u , važi: s
Pu k
g i uk p O A k 1
i1
limg i u k 0, i 1, . . . , m k
limg i u k 0, i m 1, . . . , s k
Metoda kaznenih funkcija jako zavisi od izbora oganicenja. Ko se jedna oblast U0 može dobiti na vise nacina, može se desiti da na jedan nacin taj metod konvergira, a na drugi ne konvergira. Definition Ogranicenja g i u 0, i 1, . . . , m i g i u 0, i m 1, . . . , s su saglasna sa funkcijom cilja J(u) na skupu U U 0 , ako za bilo koji niz u k U 0 , koji zadovoljava uslove:
limg i u k 0, i 1, . . . , m k
limg i u k 0, i m 1, . . . , s k
važi da je lim k J u k J inf uU J u Theorem Neka je k u definisano sa (3), P u sa (6), k sa k inf k u, u U 0 .
Potreban uslov da važi
lim k J
7
k
je da su ogranicenja sagrlasna sa funkcijom cilja na skupu U. Ako je J inf uU 0 J u , tada je saglasnost i dovoljan uslov da važi (7)
Ova metoda je univerzalna, ali gruba. Koristise kada se vidi da funkcija cilja opada za u k . Cim se primeti da funkcija slabo opada bolje je izabrati neku drugu metodu. Za veliko k, dobija se oblik jaruge, pa minimizacija postaje otezana. Ova metoda lici na metodu Lagranža.
53
Metoda unutrasnjih kaznenih funkcija J u inf u U
1
Neka je U fiksan podskup skupa U. Nekada je potrebno posmatrati tacke van , ako je zadato komplikovanim izrazima. Ovom metodom se omogucava "preskakanje" barijere. Definition Neka je U. Funkcija B(u) naziva se barijera (ili barijerna funkcija) skupa , ako je ona definisana, konacna i nenegativna, nad svim ta kama u U \ i ako za svaki niz tacaka v r U \ , za koji je lim r v r v važi lim r Bv r . Neka je funkcija g(u) definisana i neprekidna na U. n u R : u U , gu 0 , U \ Tada su barijerne funkcije za ovaj skup: B(u)gu 1 B(u)max lngu , 0 n u R : u U , gu 0 , U \ Tada su barijerne funkcije za ovaj skup: B(u)(maxgu, 0 p , p 0 B(u)ln gu , u U \ U svim slucajevima važi da kada se u priblizava granici, Bu , ne dozvoljava da se granica predje. Formiraju se funkcije F k u J u a k Bu, u U \ , k 0,1,... a k je niz pozitivnih brojeva, tako da lim k a k 0. Tako izabran niz umanjuje efekat koji namece B(u) kada se u priblizava granici. Metoda Umesto problema (1) resava se sledeci niz problema: F k u inf, k 0,1,... u U \
2
Neka je u k rešenje problema (2) za fiksirano k. F k inf uU \ F k u optimalna vrednost funkcije F k u Ako važi F k u k F k , rešenje uk je tacno (egzaktno). Cesce se uzima da je uk priblizno: 3 F k u k F k k , k 0, lim k 0 k rešenje problema (2) ne može biti blizu jer za tacke blizu , B . Za veliko k k a k 0, barijera se može preskociti, ako za takav niz važi da a k 0 brze nego sto B . Na taj nacin se dobija rešenje iz . To ima smisla samo ako unutrasnjost nije prazna. Problemi (2) se mogu resavati gradijetnom metodom: u kr 1 u kr r F k u kr , r 0,1,... gde je r iteracija.
u k 0 u k 1
Pocetna iteracija se bira u 00 U \ . Postoji neka okolina te tacke u , tako da za neko 0 u 01 . Ako u 01 , smanji se 0 i proverava da li u01 . Ovim postupkom za dovoljno malo r u kr 1 . 54
Formira se niz u 00 , u 01 , . . . , u 0r dok ne bude zadovoljen izlazni kriterijum u 0r 1 u 0r Tada je u 0r 1 rešenje nultog problema, tj u 0r 1 u 0 . Za pocetnu iteraciju problema k1, uzima se rešenje problema k0, onda se resava problem za k1:
.
F 1 u inf u
Opet se formira niz u10 , u 11 , . . . , u 1r dok nije zadovoljeno u 1r 1 u 1r u 1r 1 Tako nastaje niz u 0 , u 1 , . . . i on treba da konvergira ka resenju problema (1).
u1.
Theorem (O konvergenciji barijernih funkcija) Neka je dat problem (1), U , U \ , J J , pri cemu je J inf uU J u, J inf uU \ J u, B(u) barijerna funkcija skupa , niz u k odredjen sa (3). Tada važi: lim F k lim F k u k lim J u k J k
k
k
(konvergencija po vrednosti funkcije) lim a k Bu k 0 k
Ako je jos U ogranicen i zatvoren, a J(u) neprekidna, onda važi u k U , tj lim k u k , U 0 (konvergencija po argumentima).
Neka je Uu U 0 : g i u 0, i 1,..., m , U 0 R n . Neka su g i u neprekidne na U 0 i zadovoljavaju Slaterov uslov. Definise se u U : g i u 0, za bar jedno i 1 , . . . , m u U 0 : g i u 0, i 1,..., m zbog Slaterovog uslova Tada se može definisati klasa barijernih funkcija: m
Bu
i gi u, u U \ i1
gde je i t neprekinda nenegativna funkcija za t0 i važi lim t 0 i t Dokazuje se da je B(u) klasa barijernih funkcija. Neka je niz v r U \ takav da lim r v r v . Tada postoji j, 1 j m, takvo da g j v 0. Posto je v r U \ važi g j v r 0. Sve g i su neprekidne, zato važi: lim g v g j v 0 r j r
Bv r j g j v r jer je to jedan sabirak, a i su nenegativne, lim r Bv r lim r j g j v r B(u) je barijerna funkcija za . Za funkciju i t se može izabrati: 1 i t t B(u) im1 g1i u , u U \ p i t max ln t , 0 , p 0 B(u) im1 max lng i u, 0 p , u U \
Ako je U 0 konveksan skup i g i (u) konveksne funkcije, tada je i skup U\ konveksan, kao i funkcije i , B. To omogucava da se koriste metode konveksnog programiranja za resavanje (2). Ako je pr, gde je r stepen glatkosti funkcija g i onda i B(u) ima glatkost stepena r. Tada se mogu primenjivati metode koje zahtevaju veci stepen glatkosti. 55
Za ogranicenja koja su samo oblika jednakosti mogu se primeniti spoljasnje kaznene funkcije, jer za unutrasnje mora postojati unutrasnjost. Postoje mesovite kaznene funksije: za ogranicenja oblika jednakosti upotrebljavaju se spoljasnje, a za ogranicenja oblika nejednakosti unutrasnje kaznene funkcije.
Kvadratno programiranje Kvadratno programiranje spada u metode nelinearnog programiranja koje se realizuju pomocu linearnog programiranja. Nelinearne probleme je skoro uvek moguce prevesti u linearne, tako sto se funkcija cilja razvije u Tejlorov red i od razvoja uzme samo prvi clan. Medjutim tada može doci do veliki gresaka, npr moguce je da se resenja ta dva problema ne poklapaju ili da cak novi problem nema rešenje. Zato se ovakav postupak ne primenju u praksi. Ako je funkcija nelinearnog programiranja "zgodna", problem može da se prevede na neki drugi koji lako može da se resi simpleksom. Ako je funkcija sledeceg oblika, onda je rec o kvadratnom programiranju: J u
1 2
u, Qu c, u min
1
Au b u0
Q nn simetricna, pozitivno definitna matrica, Amn , u, c R n , b R m Theorem ta ka u je optimalno rešenje problema (1) akko postoje vektori R m i
R n , 0, 0, y R m , y 0 takvi da važi:
Qu A T c 0 Au y b y, 0 , u 0
2
Proof Koriste se Kun-Takerovi uslovi optimalnosti.
Neka je g i u a i u b i 0, i 1, . . . , m f i u u i 0, i 1, . . . , n Formira se funkcija Lagranža za problem (1): m
n
i1
i1
(Au b (u 0
Lu, , J u i g i u i f i u Kun-Takerovi uslovi optimalnosti: Lu , , 0 u i g i u 0, i f i u 0 Primenjeno na ovu funkciju dobija se: J u im1 i g i u in1 i f i u
3
i g i u 0, i
0, i 1, . . . , m i f i u 0, i 0, i 1, . . . , n
Sistem (3) mora imati rešenje da bi bili zadovoljeni uslovi Kun-Takera. Kad se
56
ovaj sistem zapise pomocu vektora i matrica dobija se:
J u
Qu c A T 0 i b Au i 0, i 0, i 1, . . . , m i u i 0, i 0, i 1, . . . , n
4
Uvodi se smena yb-Au Au y b
Qu A T c Au y b i y i 0, i 1, . . . , m , y 0 i u i 0, i 1, . . . , n , u 0 0, 0, y 0, u 0 Dakle ono sto je dato sistemom (2) su Kun-Takerovi uslovi. Posto je ovo linearan problem, to su potrebni i dovoljni uslov (ne treba Slaterov uslov).
Uvode se oznake: 0 A
M
A T Q
,
q
b c
,
w
y
,
z
u
;
Pomocu ovih oznaka problem se zapisuje: w Mz q w, z 0 w0 z 0
6
w, z 0 w i z i 0, i 1 , . . . , m n
wi i z i ne mogu biti 0 u isto vreme (samo jedna od njih može biti u bazi) Definition Problem (6) predstavlja linearni komplementarni problem problema (1).
Problem (6) se resava pomocu specificnog simpleksa. Kada se pronadje w i z oji su rešenje problema (6), tada ce poslednjih n komponenti vektora z biti rešenje problema (1), tj u . i su Lagranžovi mnozitelji koji odgovaraju ogranicenjima. Resava se (6): q 0 trivijalno rešenje wq, z0 u 0 i q i 0 tada je linearni komplementarni problem sledeceg oblika: Ew Mz z 0 e q w i z i 0, i 1 , . . . , m n w i 0, z i 0, i 1 , . . . , m n, z 0 0
7
gde je z 0 nova promenljiva, e(1,...,1). Ako je z 0 0, problem (7) se svodi na (6), i to je optimalno rešenje za (7). Zato se tabele transformisu sve dok z 0 ne izadje iz baze pri cemu se transformacije vrse tako da bude q 0. Kada z 0 izadje iz baze, dobijeno je resenej za (6).
Razlomljeno (hiperbolicno) programiranje 57
c,u d ,u
J u
min
1
Au b u0
Ogranicenja su linearna (Au b, skup U ogranicen. može jos da se pretpostavi da je d , u 0, sto ne utice na opstost. Uz sve ove pretpostavke može se problem (1) prevesti u problem linearnog programiranja. Uvode se smene:
c , d ,
y
y
1 1
1
d , u
,u
y
c, y c, y min d , y d , y
Pretpostavi se da je imenilac jednak 1. Tada se problem (1) svodi na: J 1 y, c, u d min Ay b 0 d , y 1 y 0, 0
2
Problem (2) je linearan i resava se poznatim metodama. Neka je optimalno rešenje problema (2)y , . Tada je rešenje problema (1) u y (to se može pokazati). Zato cazi da ako postoji rešenje problema (2), onda postoji i rešenje problema (1). Problem (2) ima jednu promenljivu vise, tj povecana je dimenzija zadatka. Ono sto je dobijeno ovom transformacijom, je ipak vrednije - problem je sveden na linearno programiranje. Theorem (Zadatak 2.30) Dat je problem hiperbolicnog programiranja
J u
c,u d ,u
min
Au b u0 gde je d , u 0 i skup U u R n , Au b, u 0 ogranicen. Pokazati da se minimum funkcije J(u) na U dostize u vrhu konveksnog poliedra U. Proof Neka poliedar U ima k vrhova v 1 , . . . , v k . Bez ogranicenja opstosti pretpostavi se da je d , u 0. Svako u U može se predtaviti u obliku: k
u
k
i vi , i 1, i 0, i 1, . . . , k i1
i1
Neka je v j vrh u kome funkcija cilja dostize najmanju vrednost u odnosu na preostale vrhove, tj J(v j J v i , i 1, . . . , k , i j. Ova nejednakost se može zapisati kao: c, v j c, v i d , v i d , v j odnosno c, v j d , v i c, v i d , v j Mnozenjem ove nejednacine sa i i sabiranjem desnih i levih strana dobijenih za
58