You are on page 1of 59

Operaciona Istraivanja

skripta sa predavanja prof Katarine Surle 2002/2003.


Nadj Danijel, 2003.
Skripta je namenjena da olaka praenje nastave i pripremu usmenog ispita. Unapred se
izvinjavam na svim grekama u tekstu, kojih i pored najbolje volje mora biti (u nekim
delovima fale yu slova). Razjanjenja za neke eventualne nejasnoe predlaem da se
potrae u zbirci zadataka iz Operacionih istraivanja. Posebnu zahvalnost dugujem
Tamari Doroti, koja je uredno pratila i beleila sve na predavanjima, a zatim te beleke i
sredila, to je ovu skriptu uinilo moguom.
Ne ohrabruju se bilo kakve malverzacije ili zloupotrebe u smislu prepisivanja na ispitu itd,
jer je u ovu skriptu uloeno puno truda i sa mnogo manje truda ispit moe da se spremi.
Ujedno pozivam sve koji raspolau znanjem i vremenom, da trae ovu skriptu od mene u
tex obliku i da rade na njenom poboljanju, tj ispravljanje greaka, crtanje slika itd.
danijel@uns.ns.ac.yu
1
Konveksni skupovi
Definition Vektorski prostor R
n
o, [ R, x, y R
n
1. o(x + y) = ax + ay
2. (o + [)x = ox + [x
3. o([x) = (o[)x
4. 1x = x
Definition Neka je x
i
R
n
, i = 1, . . . , m, o
i
R. Suma _
i=1
m
o
i
x
i
se naziva linearna
kombinacija. Linearna kombinacija _
i=1
m
o
i
x
i
= 0 je linearno zavisna ako
_
i=1
m
|o
i
| > 0, a linearno nezavisna ako je _
i=1
m
|o
i
| = 0.
Definition Preslikavanje A : X Y je linearno ako za x, y X o, [ R vai
A(ox + [y) = oAx + [Ay
Skup svih linearnih preslikavanja (funkcionala) R
n
R se obeleava R
n-
predstavlja linearni vektorski prostor.
Za f, g R
n-
(f, x) oznaava f primenjeno na x.
(f + g, x) = (f, x) + (g, x) sabiranje
(of, x) = o(f, x) mnoenje 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 (moe se zadati
matricom) A = a
ij
)
i=1,...,n;j=1,...,m
Ae
j
=
_
i=1
m
a
ij
q
i
x X
n
x =
_
j=1
n
x
j
e
j
Ax = A
_
j=1
n
x
j
e
j
=
_
j=1
n
x
j
Ae
j
=
_
j=1
n
x
j _
i=1
m
a
ij
q
i
1
Definition Skup K R
n
je konveksan ako je prazan ili ako za svaka dva elementa
a, b K vai
oa + (1 o)b K, o, 0 _ o _ 1
Ceo R
n
je konveksan kao i svaki njegov interval. Presek odrava konveksnost, a unija
ne. Mnoenje skalarom i sabiranje skupova odravaju konveksnost.
Definition Linearna kombinacija _
i=1
m
a
i
o
i
se naziva konveksna kombinacija za a
i
R
n
,
o
i
R, i = 1, . . . , m, ako vai _
i=1
m
o
i
= 1, o _ 0.
Definition X R
n
je potprostor prostora R
n
ako za x, y X i o, [ R vai
ox + [y X.
2
U slucaju m=2 moe se zapisati:
oa + (1 o)b, 0 _ o _ 1; o
1
a
1
+ o
2
a
2
, o
1,
o
2
_ 0, o
1
+ o
2
= 1
Definition Konveksna obvojnica skupa S R
n
je skup svih konveksnih kombinacija
elemenata iz S:
Co(S) =
_
i=1
n
o
i
a
i
, n N, a
i
S, o
i
_ 0, i = 1, . . . , n,
_
i=1
n
o
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
, i=1,...,n, i skup svih funkcionala X
n
-
sa bazom e
j
-
,
j=1,...,n. Tada vai:
(e
j
-
, e
k ) = o
jk
=
1, j = k
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

= H; Svaka hiperravan deli prostor na dva potprostora.


Definition Neka su H
i
, i=1,...,m hiperravni u prostoru X
n
. Ako je skup K = ,
i=1
m
H
i

= on
se naziva konveksan poliedar, m _ n.
Definition Vrh poliedra je v = ,
i=1
n
H
i
l
, ako postoji, gde su H
i
l
, hiperravni koje definiu
poliedar.
Svakom H
i
moe se pridruiti funkcional na sledeci nacin: H
i

= x X
n
: (h
i
-
, x) _ b
i
).
Tada se definie a
ij
= (h
i
-
, e
j ), a onda je H
i

= x X
n
: _
j=1
n
a
ij
x
j
_ b
i
). Dakle svaki
poluprostor H
i
, i=1,...,m je definisan linearnim nejednainama. Zato je K reenje sistema
linearnih nejednaina _
j=1
n
a
ij
x
j
_ b
i
, i=1,...,m.
Konveksni poliedri mogu biti ogranieni i neogranieni. Ogranien poliedar je onaj kod
koga postoji lopta konanog poluprenika, takva da ceo poliedar lei 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 = _
j=1
n
x
j
e
j
, gde je e
j
, j=1,...,n baza vektorskog prostora R
n
.
(h
i
-
, x) = h
i
-
,
_
j=1
n
x
j
e
j
=
=
_
j=1
n
x
j(h
i
-
, e
j ) =
=
_
j=1
n
x
j
a
ij
= b
i
2
Vrh se dobija kao reenje sistema jednaina _
j=1
n
x
j
a
ij
= b
i
, i=1,...,m.
Vrhova moe biti
m
n
( ), sto je konaan broj, a ne mora biti ni jedan.
Definition Neka je K = ,
i=1
m
H
i
= poliedar i neka je l = ,
i=1
n1
H
i
, gde je n dimenzija
prostora. Tada se l , K naziva ivica poliedra, a l je prava na kojoj ivica lei. Ivica
3
poliedra moe biti prava, poluprava ili du.
Theorem Neka je K ogranien konveksan poliedar i neka su v
i
, i=1,...,l svi njegovi vrhovi.
Tada je K konveksna obvojnica skupa vrhova, K = Co(v
1
, . . . , v
l
)), tj za x K
vai x = _
i=1
l
z
i
v
i
, _
i=1
l
z
i
= 1, z
i
_ 0, i=1,...,l
Proof (skica dokaza)
Lemma Presek ogranienog konveksnog poliedra sa bilo kojom hiperravni koja je
njegova stranica je poliedar u prostoru dimenzije n-1.
n=1
Ogranien poliedar u R
1
je du sa vrhovima v
1
i v
2
. Parametrizacija:
ov
1
+ (1 o)v
2
, 0 _ o _ 1, sto je konveksna kombinacija vrhova
IH pretpostavimo da vai za n-1 (R
n1
)
n: Proizvoljna taka 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 taka y nalazi na stranici poliedra, koja
je poliedar dim n-1 i po IH, vai da je y konveksna kombinacija vrhova poliedra u
n-1
y =
_
i=1
p
z
i
w
i
,
_
i=1
p
z
i
= 1, z
i
_ 0, w
i
v
1
, . . . , v
l
), i = 1, . . . , p 3
Po sluaju za 1 dim, vai da je x konveksna kombinacija v
1
i y
x = zy + (1 z)v
1
, 0 _ z _ 1 4
Zameni se y iz (3) u (4) i time se dobija x predstavljeno kao konveksnu
kombinacija vrhova poliedra.
4
Linearno programiranje
Zadatak je najcee da se optimizuje funkcija cilja nad zadatim skupom. Ukoliko je ta
zadata funkcija cilja linearna, kao i ogranienja kojima je zadat skup, radi se o problemu
linearnog programiranja.
J(u) min
u U, U R
n
J(u) funkcija cilja, U dopustiv skup, u U dopustivo reenje;
J(u) = (c, u) min za linearnu funkciju cilja se uzima skalarni proizvod vektora,
(c, u) = _
i=1
n
c
i
u
i
, c, u R
n
.
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
Au _ b
u _ 0
sva ogranienja su u obliku nejednakosti
J(u) = (c, u) min
u U
U = u R
n
: Au _ b, u _ 0)
drugi nain zapisivanja istog oblika
2. Standardni oblik
J(u) = (c, u) min
Au = b
u _ 0
Ogranienja su u obliku jednakosti
Au = b _
j=1
n
a
ij
u
j
= b
i

_
j=1
n
a
ij
u
j
_ b
i
_
j=1
n
a
ij
u
j
_ b
i
3. Kanoniki oblik
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. Poto je A=(C|E),
rang(E) = m r = m.
Svaki problem se moe prebaciti iz jednog oblika u drugi.
Ako se nejednaine prebacuju u jednaine proiruje se dimenzija problema:
_
j=1
n
a
ij
u
j
+ d
i
= b
i
, i=1,...,m; dodaje se i d
i
_ 0, i=1,...,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 obeleavaju vektori matrice A:
A
1
=
a
11
a
21
. . .
a
m1
. . . A
i
=
a
1i
a
2i
. . .
a
mi
. . . A
m
=
a
1n
a
2n
. . .
a
mn
, pa A moe da se zapie:
A = |A
1
A
2
. . . A
n
]
Au = b A
1
u
1
+ A
2
u
2
+. . . +A
n
u
n
= b
Definition Za svaku taku 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, kae 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 bazine komponente v
ij
> 0, i=1,...,r, onda je taj vrh
nedegenerisan. Ako medju bazinim komponentama postoji neka tako da
v
jk
= 0, 1 _ k _ r, taj vrh je degenerisan. Degenerisan vrh ima vie baza.
Simpleks metod
Ako postoji reenje problema linearnog programiranja, onda postoji vrh dopustivog
skupa u kome funkcija cilja dostie optimalnu vrednost (minimum ili maksimum).
Reenje ne mora da bude jedinstveno. Sutina simpleks metoda je da pronadje vrhove,
obilazi jedan po jedan i rauna vrednosti funkcije cilja za svaki vrh. Onda se trai
minimalna vrednost. Ipak, to je neupotrebljivo u praksi ako su problemi veih dimenzija.
Simpleks metod odbacuje neke vrhove, pa je raunanje lake. Ovom metodom se
reavaju realni problemi.
Sekundarni simpleks metod
Reava se problem:
J(u) = (c, u) min
Au = b
u _ 0
6
b R
m
, rang(A) = r, r = m A
rn
Polazi se od poznatog vrha v. Pravi se metod koji proverava da li je v optimalno reenje,
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 =
v
1
v
2
. . .
v
r
, a za vektor u R
n
, bazine komponente su: =
u
1
u
2
. . .
u
r
Pretpostavi se da je vrh v nedegenerisan, sledi da je v
i
> 0, i = 1, . . . , r. Zato vai:
A
1
v
1
+ A
2
v
2
+. . . +A
r
v
r
= b odnosno:
Bv = b v = B
1
b 1
Osnosno za bilo koje u U vai:
B
A
1
u
1
+ A
2
u
2
+. . . +A
r
u
r
+A
r+1
u
r+1
+. . . +A
n
u
n
= b
B + A
r+1
u
r+1
+. . . +A
n
u
n
= b 2
det B = 0, jer su A
1
, . . . , A
r
linearno nezavisni JB
1
+
_
k=r+1
n
B
1
A
k
u
k
= B
1
b = v 3
B
1
A
k
je vektor, (B
1
A
k
)
s
= ,
sk
je s-ta komponenta tog vektora. Raspie se sistem
pomou nove oznake:
u
1
+ + ,
1r+1
u
r+1
+. . . +,
1n
u
n
= v
1
u
2
+ + ,
2r+1
u
r+1
+. . . +,
2n
u
n
= v
2
.
u
r
+ ,
rr+1
u
r+1
+. . . +,
rn
u
n
= v
r
4
Ovaj sistem izraava bazine promenljive preko nebazinih. Isto se uradi i za funkciju
cilja:
J(u) = (c, u) = (c, ) +
_
i=r+1
n
c
i
u
i
= v
_
k=r+1
n
B
1
A
k
u
k
iz (3)
J(u) = (c, v ) c,
_
i=r+1
n
B
1
A
i
u
i
+
_
i=r+1
n
c
i
u
i
= (c, v )
_
i=r+1
n
(
A
i
(c, B
1
A
i ) c
i
)u
i
= J(v)
_
i=r+1
n
A
i
u
i
5
7
A
i
= (c, B
1
A
i ) c
i
=
_
s=1
r
c
s
,
si
c
i
Sad je (5) funkcija cilja izraena preko nebazinih komponenti. Vrhu v pridruuje se
simpleks tabela:
u
1
u
2
u
r
u
r+1
u
r+2
u
n
v
u
1
1 0 0 ,
1r+1
,
1r+2
,
1n
v
1
u
2
0 1 0 ,
2r+1
,
2r+2
,
2n
v
2
. . . ` . . . . .
u
r
0 0 1 ,
rr+1
,
rr+2
,
rn
v
r
0 0 0 A
r+1
A
r+2
A
n
J(v)
tabela 1
A
i
= 0, i = 1, . . . , r zato to A
i
= _
s=1
r
c
s
,
si
c
i
= c
i
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 reenje ili treba traiti 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
. . .
u
i
= v
i
,
ik
u
k
. . .
u
r
= v
r
,
rk
u
k
6
Ovo se dobija iz (4), to je isto to i Au=b.
J(u) = J(v) A
k
u
k
7
sledi iz (5) gde od sume ostaje samo A
k
u
k
.
Na osnovu simpleks tabele vrha v razlikuju se tri sluaja:
1. za sve komponente vai:
A
i
= (c, B
1
A
i ) c
i
_ 0, i = r + 1, . . . , n 8
Pokazuje se da je tada vrh v reenje problema. Treba pokazati da je u U,
J(v) _ J(u)
8
J(u) = (c, u)
=
_
i=1
r
c
i
u
i
+
_
i=r+1
n
c
i
u
i
_ (c, ) +
_
i=r+1
n
(c, B
1
A
i )u
i
= c,
v
+
_
i=r+1
n
B
1
A
i
u
i
= J(v)
sledi iz (8)
iz (3)
2. Jk, r + 1 _ k _ n, tako da A
k
> 0 i ,
ik
_ 0, i = 1, . . . , r.
Postoji kolona tako da je A
k
> 0, a iznad nje nema pozitivnog broja. Tada
zadatak nema reenja. 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. Poto je A
k
> 0, a
,
ik
_ 0, i = 1, . . . , r, u
k
se moe pustiti da tei ka beskonano, a da jo uvek
ostane u U, tj da vai Au=b. Kada se to ubaci u (7) dobija se J(u) , u U,
odnosno funkcija je neograniena sa donje strane.
3. Jk, r + 1 _ k _ n, tako da A
k
> 0 i Ji, 1 _ i _ r, ,
ik
> 0.
Postoji kolona u kojoj je A
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) A
k
u
k
< J(v), odnosno nova taka ima manju vrednost
funkcije cilja. Da bi ta taka pripadala U, mora u (6) svako u
i
da bude
nenegativno. Kada je ,
ik
< 0 nema problema, ali za ,
ik
> 0 mogu se javiti
problemi, tada treba da vai:
v
i
_ ,
ik
u
k

v
i
,
ik
_ u
k
, ,
ik
> 0
Da bi sve jednaine u (6) bile nenegativne treba da vai
iI
k
min
v
i
,
ik
_ u
k
, pa se za
u
k
uzima ba
iI
k
min
v
i
,
ik
, oznaava sa
vs
,
sk
i ,
sk
se naziva pivot. Tada je u
i
_ 0,
dakle u U.
Taka definisana sistemom (6) oznaava se w = (w
1
, . . . , w
n
), gde je:
w
1
= v
1
,
1k
v
s
,
sk
. . .
w
s
= v
s
,
sk
v
s
,
sk
= 0
. . .
w
k
=
v
s
,
sk
. . .
w
i
= 0, i = r + 1, . . . k 1, k + 1, . . . , n
ova komp izlazi iz
ulazi u bazu
nebazicne komp
Sada se moe odrediti baza vrha w i sistem Au=b zapisati preko te baze.
Na osnovu s-te jednaine sistema (4) vai:
9
,
sk
u
k
= v
s
u
s

_
i=r+1
i=k
n
,
si
u
i
/,
sk
1
u
k
=
v
s
,
sk

u
s
,
sk

_
i=r+1
i=k
n
,
si
,
sk
u
i
9
U ostale jednaine zameni se u
k
:
u
i
= v
i

_
j=r+1
n
,
ij
u
j
= v
i

_
j=r+1
j=k
n
,
ij
u
j
,
ik
v
s
,
sk

u
s
,
sk

_
j=r+1
j=k
n
,
sj
,
sk
u
j
Po w
i
= v
i
,
ik
vs
,
sk
, sledi:
u
i
= w
i

,
is
'

,
ik
,
sk
u
s

_
j=r+1
j=k
n
,
ij
'
,
ij

,
sj
,
sk
,
ik
u
j
Ova formula vai za i = 1, . . . , s 1, s + 1, . . . , r
u
s
i u
k
menjaju mesta u tabeli
Pri prelasku na novu bazu vae nove vrednosti za ,:
0 ,
is
'
=
,
ik
,
sk
, i = 1, . . . , s 1, s + 1, . . . , r
0 ,
ij
'
= ,
ij

,
sj
,
sk
,
ik
, i = 1, . . . , s 1, s + 1, . . . , r; j = r + 1, . . . k 1, k + 1, . . . , n;
pravilo pravougaonika
0 ,
ks
'
=
1
,
sk
0 ,
kj
'
=
,
sj
,
sk
, j = r + 1, . . . k 1, k + 1, . . . , n
Poslednja vrsta se transformie:
0 J(u) = J(v) A
i
vs
,
sk
0 A
s
'
=
A
k
,
sk
0 A
j
'
= A
j
A
k
,
sj
,
sk
, j = r + 1, . . . k 1, k + 1, . . . , n
Na osnovu ovih jednaina dobija se postupak za transformaciju tabele:
0 pivot prelazi u svoj inverzni broj
0 elementi kolone u kojoj je pivot se podele sa pivotom i pomnoe sa -1 (osim
pivota)
0 elementi reda u kome je pivot se podele sa pivotom
0 ostali elementi tabele se transformiu na osnovu pravila pravougaonika
0 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 reenje, onda postoji vrh u kome funkcija dostie minimum. Do reenja se
stie 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
u _ 0
10
Prvo se ovaj sistem transformie 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
. . .
a
m1
u
1
+ a
m2
u
2
+. . . +a
mn
u
n
+ 0 - d
1
+ 0 - d
2
+. . . +d
m
= b
m
11
Promenljive d
i
_ 0, i=1,...,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)
m(m+n)
.
rang(C)=m, jer je rang(E)=m.
c = c
1
, c
2
, . . . , c
n
,
m
0, . . . , 0
x _ 0, za u
i
_ 0 vai 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 reenje sistema (12) je ujedno i reenje sistema (10) i obrnuto.
Za problem (12) je ispunjeno rang(C)=m i vai 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
n+m
, Cx = b, x _ 0)
Vektor v je vrh jer uz pozitivne komponente vrha v stoje linearno nezavisni vektori kolone
matrice C (uz b
i
stoji jedinini vektor e
i
). Matrica vrha v je B = |e
1
e
2
. . . e
m
].
Sledi da kada je b>0 vrh je automatski poznat, jer je tada lako utvrditi da su vektori
linearno nezavisni. Ovde su ve nebazine komponente izraene preko bazinih i sada
se moe primeniti simpleks metoda. Sistem (11) odgovara proirenoj simpleks tabeli.
ee se koristi njen skraen oblik, bez E:
u
1
u
2
. . . u
n
d
1
a
11
a
12
a
1n
b
1
d
2
a
21
a
22
a
2n
b
2
. . . . . .
d
m
a
m1
a
m2
a
mn
b
m
c
1
c
2
. . . c
n
J(v)
tabela 2
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 opti oblik problema linearnog
programiranja, medjutim ako se posmatra neki drugi oblik, javljaju se sledei problemi:
0 kako utvrditi da li je rang(A) = m? Kako eliminisati zavisne jednaine iz sistema?
0 kako utvrditi da li je U = ? Ako je U = onda sistem nema reenje.
0 ako je U = kako pronai vrh v?
Ovaj metod daje odgovor na sva tri pitanja. Ideja je da se formira vetaki problem koji
zadovoljava uslove sekundarnog simpleks metoda i da se reavajui taj problem
dobijaju odgovori na prethodna pitanja.
Polazi se od problema:
J(u) = (c, u) min
Au = b
u _ 0
1
sa sistemom:
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
2
uvode se vetake promenljive u
n+i
, i = 1, . . . , m i dobija se sistem:
a
11
u
1
+ a
12
u
2
+. . . +a
1n
u
n
+ u
n+1
= b
1
a
21
u
1
+ a
22
u
2
+. . . +a
2n
u
n
+ u
n+2
= b
2
. . .
a
m1
u
1
+ a
m2
u
2
+. . . +a
mn
u
n
+ u
n+m
= b
m
3
Sistemi (2) i (3) su ekvivalentni kada je u
n+1
= u
n+2
=. . . = u
n+m
= 0
Problemu (1) se pridruuje nov problem:
J
1
(z) = u
n+1
+. . . +u
n+m
min
z Z = z : z = (u, w) R
n+m
, z _ 0, Cz = Au + Ew = b)
4
gde je z = (u, w) = (u
1
, . . . , u
n
, u
n+1
, . . . , u
n+m
); w = (u
n+1
, . . . , u
n+m
) vektor vetakih
promenljivih.
0 Ako je w = 0 onda Cz = b Au = b, tada moe da se primeni sekundarni
simpleks na problem (1), jer su ispunjeni uslovi.
0 Ako je w = 0 onda se sekundarni simpleks primenjuje na (4) jer su ispunjeni
uslovi:
- rang(C) = 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
-
reenje problema (4), dobijeno sekundarnim simpleksom. Vai jedno od
sledeeg:
a) J
1
(z
-
) > 0 U = i problem (1) nema reenje. Dokaz:
z
-
= (v
1
, w
1
), J
1
> 0 w
1
= 0
Pretpostavi se suprotno, tj U = Ju U potencijalno reenje. Toj taki u
pridruuje se z = (u, 0) Z, jer je Au=b. Medjutim tada je J
1
(z) = 0 < J
1
(z
-
) i to
je kontradikcija jer je z
-
minimum (reenje (4)). Sledi U = .
b) J
1
(z
-
) = 0 w
n+1
1
+ w
n+2
1
+. . . +w
n+m
1
= 0 w
1
= 0 z
-
= (v
1
, 0)
12
Treba pokazati da je tada v
1
vrh skupa U, tj reenje (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 moe prikazati u obliku
v = ov
1
+ (1 o)v
2
, v
1
, v
2
U, 0 < o < 1, jedino ako je
v = v
1
= v
2
.
Neka su u
1
, u
2
U tako da vai v
1
= ou
1
+ (1 o)u
2
, 0 < o < 1. Takama u
1
, u
2
pridruuje 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
= ou
1
+ (1 o)u
2
z
-
= oz
1
+ (1 o)z
2
Poto 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 reenje (1).
Theorem Ako je U = tada on ima bar 1 vrh. Taj vrh se moe nai primenom primarnog
simpleks metoda.
Proof Dokazano sluajem 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 reenje (4) vektori baze su A
1
, . . . , A
r
, e
1
, . . . , e
mr
, ima ih m rang(C) = m
r = rang(A) _ m
Optimalna tabela za z
-
Bazine Nebazine Vestake
u
1
u
2
. u
r
u
r+1
. u
n
u
n+1
. u
n+mr
u
n+mr+1
. u
n+m
B
a
u
1
1 0 . 0 ,
1r+1
. ,
1n
0 . 0 ,
1
n+mr+1
. ,
1
n+m
v
1
1
i

z
u
2
0 1 . 0 ,
2r+1
. ,
2n
0 . 0 ,
2
n+mr+1
. ,
2
n+m
v
2
1
e
n
. . . ` . . . . . . . .
u
r
0 0 1 ,
rr+1
. ,
2n
0 . 0 ,
r
n+mr+1
. ,
2
n+m
v
r
1
V
e
u
n+1
0 0 . 0 ,
n+1
r+1
. ,
n+1
n
1 . 0 ,
n+1
n+mr+1
. ,
n+1
n
=0
-
v
n+1
1
t
a

. . . . . . . ` . . . .
k
e

u
n+mr
0 0 . 0 ,
n+mr
r+1
. ,
n+mr
n
0 . 1 ,
n+mr
n+mr+1
. ,
n+mr
n+m
=0
-
v
n+m
1
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 vetakih promenljivih. Vai:
+ _
k=r+1
n+m
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
+. . . +,
jn+m
u
n+m
= v
j
1
, j = 1, . . . , r 5
Posto nema vetakih promenljivih sledi u
n+1
=. . . = u
n+m
= 0. Zato vai
(5) Au = b Cz = b, odnosno vektori u i z su isti jer nema vetakih
13
promenljivih. U tabelu treba dodati jo poslednju vrstu A
j
:
A
1
=. . . = A
r
= 0
A
i
= _
s=1
r
c
s
,
si
c
i
, i = r + 1, . . . , n
Tako je dobijena tabela za v
1
. Nastavlja se sa sekundarnim simpleksom.
2. r < m i J,
n+i,k
> 0, 1 _ i _ m r, r + 1 _ k _ n, odnosno postoji pozitivan broj u
obeleenom delu tabele. Formira se skup:
I
k
= j : r + 1 _ k _ n, n + 1 _ i _ n + m r, ,
jk
_ 0)
I
k
= min
jI
k
v
j
1
,
jk
=
v
n+i
1
,
n+i,k
= 0 jer su vetake promenljive jednake 0.
Ako se izvri transformacija po pivotu (koji je 0) funkcija cilja se nee
promeniti; promenie se samo baza vrha, pri emu vetaka promenljiva u
n+i
izlazi iz baze, a u bazu se uvodi promenljiva u
k
. Ujedno se brie kolona
vetake promenljive u
n+i
, koja je izala iz baze. Opet se proveravaju sluajevi
1, 2, 3.
J(u) = J(v) A
k
u
k
= J(v) A
k
vs
,
sk
= J(v), v
s
= 0
3. r < m i u uokvirenom delu tabele nema pozitivnih elemenata. Jednaine tog
sistema se tada mogu zapisati:
u
j
+ ,
jr+1
u
r+1
+. . . +,
jn
u
n
= v
j
1
, j = 1, . . . , r
,
n+i,r+1
u
r+1
+. . . +,
n+i,n
u
n
= 0, i = 1, . . . , m r 6
U jednainama (6) ,
n+1,j
, i = 1, . . . , m r, j = r + 1, . . . , n, mogu biti nula ili
negativni. Negativni se izdvoje u novi sistem:
<0
,
n+i,s1
u
s1
+. . . +
<0
,
n+i,sq
u
sq
= 0, to je tano samo za u
s1
=. . . = u
sq
= 0. Te
promenljive se nazivaju brisane (anulirane) promenljive. Njihove kolone se
izbacuju iz tabele.
Sada se formira novi problem na koji se svodi poetni (1):
_
i=1
r
c
i
u
i
+ _
iI
c
i
u
i
min
u
j
+ _
kI
,
jk
u
k
= v
j
1
, j = 1, . . . , r
gde je I skup indeksa promenljivih koje nisu anulirane.
Popunjava se poslednja vrsta sa:
A
i
=
_
s=1
r
c
s
,
s,i
c
i
, i I
v
1
= (v
1
1
, . . . , v
r
1
,
=0
v
r+1
1
, . . . , v
n+mr
1
) jer v
1
U, a tamo su vetake promenljive
jednake nuli.
Kada se stigne do reenja, vraaju se anulirane promenljive i tako se dobija vektor
odgovarajue 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 bazine komponente jednake nuli. Degenerisani vrhovi
imaju vie baza, tj ti vrhovi mogu menjati bazu.
Neka je dat sledei problem linearnog programiranja, pri emu on moe biti
14
degenerisan:
J(u) = (c, u) min
Au = b
u _ 0
1
uz pretpostavku da je rang(A)=r=m; poznat vrh v U = u R
n
, Au = b, u _ 0).
Ovaj problem se reava sekundarnim simpleks metodom, pri se emu sluajevi 1 i 2
reavaju potpuno isto, bez obzira da li je vrh degenerisan.
3. sluaj JA
k
> 0 i ,
ik
> 0, I
k
= i : 1 _ i _ r, ,
ik
> 0) = 0
posmatra se min
iI
k
v
i
,
ik
=
vs
,
sk
, gde je ,
sk
pivot.
0 kod nedegenerisanih problema, indeks s je jedinstveno odredjen. Kada se prelazi
sa vrha v na w, nove bazine komponente vrha w
i
su:
w
i
= v
i
,
ik
vs
,
sk
_ 0
Mora biti w
i
> 0 za i I
k
, i = s, zato je minimum jedinstven.
0 kod degenerisanih problema, w
i
moe biti 0, pa se minimum dostie na vie
mesta, sledi da minimum nije jedinstven, pa ni pivot nije jedistveno odredjen.
Vai: J(w) = J(v) A
k
vs
,
sk
J(w) _ J(v)
Kod degenerisanih vrhova neka bazina komponenta je v
i
= 0. Poto 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 vre se uobiajene transformacije.
Elementi matrice D transformiu se po pravilu pravougaonika:
d
ij
'
= d
ij

,
ik
,
sk
d
sj
, i = 1, . . . , s 1, s + 1, . . . , r
d
kj
'
=
d
sj
d
sk
, i = k
s izlazi iz baze
k ulazi u bazu
Na osnovu poslednje vrste posmatraju se sluajevi 1, 2, i 3, pri emu se 1 i 2 reava isto
kao sekundarni simpleks bez degeneracije.
U 3. sluaju, JA
k
> 0, ,
ik
> 0, formira se skup I
k
= i : 1 _ i _ r, ,
ik
> 0) = 0.
Ako je min
iI
k
v
i
,
ik
=
vs
,
sk
jedinstven, uzima se za pivot i nastavlja se po standardnom
algoritmo, kao za nedegenerisan vrh. Minimum moe biti jedinstven jer degeneracija
moe doi do izraaja u nekom drugom koraku. Ako minimum nije jedinstven, formira se
skup: I
k1
= s I
k
: min
iI
k
v
i
,
ik
=
vs
,
sk
.
Po prethodnom razmatranju, ovaj skup nije jednolan, pa se formira skup I
k2
tako to se
elementi prve kolone dopisane matrice dele elementima kolone u kojoj je A
k
> 0.
I
k2
= s I
k1
: min
iI
k1
d
i1
,
ik
=
d
s1
,
sk
, ako je skup jednolan ,
sk
je pivot, inae se uzima
druga kolona, deli k-tom i analogno formira novi skup I
k3
. Postupak se ponavlja dok se
ne stigne do jednolanog skupa i tada je ,
sk
pivot. Opti sluaj:
I
kn
nije jednolan, formira se I
kn+1
= s I
kn
: min
iI
kn
d
in
,
ik
=
dsn
,
sk
Tabela se razreava na osnovu dobijenog pivota, pri emu se i dodatna tabela
15
transformie.
Teorijska pozadina algoritma anticiklina
Uporedo sa problemom (1) posmatra se i problem:
J(U) = (c, u) min
u U
c
= u R
n
: Au = b(c) = b + _
i=1
r
c
i
R
i
2
R
i
su vektori kolone regularne matrice R.
Kod sekundarnog simpleksa se trai da b>0. Ako je neka komponenta b
i
= 0 problem je
degenerisan. Ovde je dozvoljeno b _ 0, ali je b(c) > 0, pa je time problem sveden na
regularan.
Theorem Neka je R regularna matrica i neka je U
c
= . Tada postoji c
1
, tako da je za
svako c, 0 < c < c
1
problem (2) regularan i ako je v(,) = (v
1
(,), . . . , v
n
(,)) vrh
skupa U
,
za neko 0 < , < c
1
i ako je baza tog vrha (A
j1
, . . . , A
jr
) tada jednaine:
A
j1
v
j1
+ A
j2
v
j2
+. . . +A
jr
v
jr
= b(c); v
i
= 0, i = j
l
, l = 1, . . . r,
definiu vrh v(c) skupa U
c
za 0 < c < c
1
. Takodje kada je c = 0 ove jednaine
definisu vrh v(0) koji je vrh skupa U.
Umesto (1) reava se problem (2). Kad se pronadje reenje za (2), postavi se c = 0 i
tako se dobija reenje za (1). Primenom sekundarnog simpleksa za resavanje (2) dobija
se:
+
_
k=r+1
n
B
1
A
k
u
k
= B
1
b(c)
= B
1
(b +
_
j=1
r
c
j
R
j
)
= B
1
b +
_
j=1
r
c
j
(B
1
R
j
)
B je baza vrha v(c) , zato se uzme R = B B
1
R
j
= E
j
jedinini vektor; (B
1
R
j
)
i
= d
ij
.
Sada se ispiu jednaine za simpleks tabelu:
u
1
+ + ,
1r+1
u
r+1
+. . . +,
1n
u
n
= v
1
+ d
11
c + d
12
c
2
+. . . +d
1r
c
r
u
2
+ + ,
2r+1
u
r+1
+. . . +,
2n
u
n
= v
2
+ d
21
c + d
22
c
2
+. . . +d
2r
c
r
.
u
r
+ ,
rr+1
u
r+1
+. . . +,
rn
u
n
= v
r
+ d
r1
c + d
r2
c
2
+. . . +d
rr
c
r
3
J(u) = J(v(c)) _
i=r+1
n
A
i
u
i
, A
i
= (c, B
1
A
i ) c
i
Posmatra se kolona iznad A
k
> 0, trazi se min
iI
k
v
i
(c)
,
ik
=
vs
,
sk
. Ovaj minimum je jedinstven,
zato je problem regularan i ,
sk
je pivot.
Da bi se naao minimum kolinika
v
i
(c)
,
ik
treba porediti polinome po c :
v
i
(c)
,
ik
= p
i
(c) = c
i0
+ c
i1
c + c
i2
c
2
+. . . +c
ir
c
r
vm(c)
,
im
= p
m
(c) = f
m0
+ f
m1
c + f
m2
c
2
+. . . +f
mr
c
r
Poto c moe biti proizvoljno malo, manji je polinom koji ima manji slobodan lan, tj:
c
i0
< f
m0
p
i
(c) < p
m
(c). 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 izali 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 moe se dodeliti dualan problem.
J(u) = (c, u) min
Au _ b, b _ 0
u _ 0
1 primal
Odmah je poznat jedan vrh, nula vektor. Formira se tabela:
x
d A b
-c 0
x = (u
1
, . . . , u
n
) U R
n
Vektori x i d se razdvoje na dva dela:
x
1
= (u
1
, . . . , u
k
), x
2
= (u
k+1
, . . . , u
n
)
d
1
= (d
1
, . . . , d
k
), d
2
= (d
k+1
, . . . , d
m
)
x
1
x
2
d
1
A
11
A
12
b
1
d
2
A
21
A
22
b
2
c
1
c
2
0
Pretpostavi se da se vre transformacije tabele tako da je prvih k komponenti vektora d
(d
1
) prelo gore, tj izalo iz baze, a prvih k komponenti vektora x (x
1
) prelo dole, tj ulo
u bazu. Nastaje sledea tabela:
d
1
x
2
x
1
A
11
1
A
11
1
A
12
A
11
1
b
1
d
2
A
21
A
11
1
A
22
A
21
A
11
1
A
12
b
2
A
21
A
11
1
b
1
c
1
A
11
1
c
2
+ c
1
A
11
1
A
12
c
1
A
11
1
b
1
Za k=1 ovo bi bila transformacija sa pivotom, zato ovo vai bez dokaza. Tabela je
optimalna ako je poslednja vrsta (c) negativna, a poslednja kolona pozitivna (b). Vektor b
ostaje pozitivan, jer se tako vre transformacije, tj trai se da vai A
11
1
b
1
_ 0 i
b
2
A
21
A
11
1
b
1
_ 0.
Sada se definie dualni problem:
17
(d, b) max
dA _ c
d _ 0
2 dual
Pod predpostavkom da vai:
A
11
1
b
1
_ 0
b
2
A
21
A
11
1
b
1
_ 0
c
1
A
11
1
_ 0
c
2
+ c
1
A
11
1
A
12
_ 0
3
Prethodna tabela je optimalna
Theorem Neka vae uslovi pod (3). Tada je:
a x
0
=
A
11
1
b
1
0
optimalno reenje primala
d
0
= |c
1
A
11
1
, 0] optimalno reenje duala
b Vrednost funkcije cilja u optimalnim takama primala i duala je ista tj:
c
1
A
11
1
b
1
= (c, x
0 ) = (d
0
, b)
c Prvih k ogranienja u optimalnoj taki su zadovoljena u obliku jednakosti, a
ostala u obliku nejednakosti. Pri tome b
2
A
21
A
11
1
b
1
kod primala pokazuje za
koliko je leva strana manja od desne, a kod duala (c
2
c
1
A
11
1
A
12
) pokazuje za
koliko je leva strana vea od desne u nejednakostima.
d Vrednost funkcije cilja primala u bilo kojoj taki dopustivog skupa je vea od
vrednosti funkcije cilja duala u bilo kojoj taki 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 reenja: x
0
_ 0 zbog uslova (3), proverava se Ax
0
_ b
Ax
0
=
A
11
A
12
A
21
A
22
A
11
1
b
1
0
=
b
1
A
12
A
11
1
b
1
(3)
_
b
1
b
2
Iz gornjeg sledi da je prvih k ogranienja zadovoljeno sa jednakou, a u
ostalima nejednakost i da b
2
A
12
A
11
1
b
1
pokazuje za koliko je desna strana vea od
leve.
Optimalnost reenja: m =
m
1
m
2
U, proizvoljna taka iz U.
J
p
(m) = c
1
m
1
+ c
2
m
2
(3)
_ c
1
m
1
+
_c
2
c
1
A
11
1
A
12
m
2
=
=
_0
c
1
A
11
1
_b1, po Au_b
(A
11
m
1
+ A
12
m
2
)_ c
1
A
11
1
b
1
= J
p
(x
0
)
Dakle x
0
je optimalno reenje primala. Analogno za d
0
:
Dopustivost:d
0
_ 0 iz (3).
d
0
A = |c
1
A
11
1
, 0]
A
11
A
12
A
21
A
22
= |c
1
, c
1
A
11
1
A
12
] _ |c
1
, c
2
]
Optimalnost:n = |n
1
n
2
] D proizvoljno
18
J
d
(n) = (n
1
b
1
+ n
2
b
2
)
(3)
_ n
1
b
1
n
2
A
21
A
11
1
b
1
=
= (
_c
1
, po dA_c
n
1
A
11
+ n
2
A
12
)A
11
1
b
1
_ c
1
A
11
1
b
1
= J
D
(d
0
)
b) sledi iz podvuenih delova prethodnih jednaina, c) je dokazano
d) J
D
(d) _ J
D
(d
0
) = J
P
(x
0
) _ J
P
(x); d D, x U
Resurs je potroen tamo gde su dopunske promenljive nula. Ako dualna promenljiva nije
nula, onda ona govori o promeni dobiti. Dualnost se koristi ako je tabela ovakva:
d
1
x
2
x
1
A
11
1
A
11
1
A
12
<0
A
11
1
b
1
d
2
A
21
A
11
1
A
22
A
21
A
11
1
A
12
b
2
A
21
A
11
1
b
1
_0
c
1
A
11
1
_0
(c
2
c
1
A
11
1
A
12
) c
1
A
11
1
b
1
Tada je za dualni problem zadovoljen uslov, ali za primal nije (zbog A
11
1
b
1
< 0). Tada se
pronadje dopustivo reenje duala i startuje se simpleks metod. Dopustivo reenje je:
d = |c
1
A
11
1
, 0]. Cilj je da deo poslednje kolone koji je negativan, bude nenegativan. U
ovakvoj transformaciji pivot se trai tako to se izabere vrsta u kojoj je poslednji njen
element negativan, pa se u toj vrsti trai minimum kolinika njenih elemenata i
elemenata poslednje vrste (vektor c).
Svaki problem se moe napisati kao dual, pa onda reavati kao primal. Moe se i
napisati kao dual, a reavati kao primal. Izbor zavisi od vrste problema.
Neka je dato:
u _ 0
Au _ b
(c, u) max
4 primal
d _ 0
dA _ c
(d, b) min
5 dual
Theorem (slabe dualnosti) Ako je u dopustivo reenje primala i d dopustivo reenje duala,
onda vai (c, u) _ (d, b)
Theorem (jake dualnosti) Za problem primala i duala vai jedan od sledea tri iskaza:
1. Primal ima optimalno reenje u
-
i dual ima optimalno reenje d
-
i pri tome je
(c, u
-) = (d
-
, b)
2. Ni jedan od problema nema dopustivo reenje
3. Jedan problem nema dopustivo reenje, a drugi problem ima dopustivo
reenje, ali nema optimalno. Funkcija cilja drugog problema je neograniena
na dopustivom skupu.
Theorem (slabe komplementarnosti) Neka su u
-
i d
-
dopustiva reenja problema (4) i
(5), respektivno, i neka vai (d
-
, (Au
-
b)) = 0 i ((d
-
A c), u
-) = 0. Tada su u
-
i
d
-
optimalna reenja problema (4) i (5).
Posledica: Ako su u
-
i d
-
dopustiva reenja problema (4) i (5), i vai:
19
0 d
i
-
> 0 _
j=1
n
a
ij
u
j-
= b
i
, ako je dualna vea od nule, dopunska je jednaka
nuli
0 _
j=1
n
a
ij
u
j-
< b
i
d
i
-
= 0, ako je dopunska vea od nule, onda je dualna
jednaka nuli
0 u
j-
> 0 _
i=1
m
a
ij
d
i
-
= c
j
0 _
i=1
m
a
ij
d
i
-
> c
j
u
j-
= 0
Tada su u
-
i d
-
i optimalna reenja.
Kod linearnog programiranja vai da je dual duala primal!
Theorem (jake komplementarnosti) Ako oba problema (4) i (5) imaju bar po jedno
dopustivo reenje, onda postoji par optimalnih reenja 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 najee reava u praksi, tj ovim metodom se optimizuje transport robe
izmedju skladita i mesta za prodaju.
Posmatraju se skladita S
1
, . . . , S
k
i punktovi prodaje P
1
, . . . , P
h
, roba iz svakog S
i
moe
da se prenese u svako P
j
. Sa s
i
se oznaava koliina robe u skladitu S
i
, a sa p
i
potrebna koliina robe u P
j
.
x
ij
je koliina robe koja se prenosi iz S
i
u P
j
. Pretpostavlja se da vai da je
_
j=1
h
x
ij
= s
i
,
_
i=1
k
x
ij
= p
j
1
ime se obezbedjuje da je ponuda jednaka potranji, pa se ovo naziva zatvoren
transportni problem.
Uvodi se jos cena transporta iz s
i
u p
j
, obeleava se sa t
ij
. Ukupna cena transporta za
takav problem je onda _
i=1
k
_
j=1
h
x
ij
t
ij
min.
_
j=1
h
x
ij
= s
i
_
i=1
k
x
ij
= p
j
_
j=1
h
p
j
= _
i=1
k
s
i
= U
x
ij
_ 0, i, j
T(x) = _
i=1
k
_
j=1
h
t
ij
x
ij
min
problem transporta
Ovo je problem linearnog programiranja, pa se moe reiti simpleks metodom. Poto
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 vai ogranicenje (1) je otvoreni problem transporta.
Zatvoren problem transporta uvek ima reenje. Takodje se pretpostavlja da je s
i
> 0 i
p
j
> 0, to je i logino.
Poto je c
ij
_ 0 i x
ij
_ 0 T(x) _ 0, gde je x = x
ij
)
i=1,..,k
j=1,...,h
. Dakle funkcija cilja T(x) je
20
ograniena sa donje strane. Poto je s
i
> 0 i p
j
> 0 sledi da je U > 0. Dakle dopustiv
skup nije prazan, jer postoji trivijalno reenje:
x
ij
=
s
i
p
j
U
> 0 zadovoljava sva ogranienja:
_
i=1
k
x
ij
= _
i=1
k s
i
p
j
U
=
p
j
U
_
i=1
k
s
i
=
p
j
U
U = p
j
x
11
+ x
12
+. . . +x
1h
+ +0. . . = s
1
+x
21
+ x
22
+ x
2h
+ +0 = s
2
. . .
x
k1
+ x
k2
+. . . +x
kh
= s
k
x
11
+ +x
21
+. . . x
k1
= p
1
x
12
+ + x
22
+. . . + x
k2
= p
2
. . .
x
1h
+ + x
2h
+ . . . +x
kh
= p
h
Matrica sistema je:
A
(k+h)kh
=
h
1 1 ... 1
0 0 ... 0
. . .
0 0 ... 0
h
0 0 ... 0
1 1 ... 1
. . .
0 0 ... 0
...
0 0 ... 0
0 0 ... 0
. . .
1 1 ... 1
k
1 0 ... 0
0 1 ... 0
. . .
0 0 ... 1
1 0 ... 0
0 1 ... 0
. . .
0 0 ... 1
...
1 0 ... 0
0 1 ... 0
. . .
0 0 ... 1
h
, b =
s
1
. . .
s
k
p
1
. . .
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 s
i
i p
j
: _
j=1
h
p
j
= _
i=1
k
s
i
, to znai da
bar jedan vektor moe da se izrazi kao linearna kombinacija svih ostalih.
Iz matrice A se izdvaja podmatrica ranga k+h-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. kh.
1 0 ... 0
0 1 ... 0
... ... ...
0 0 ... 1
h1
1 1 ... 1
0 0 ... 0
... ... ...
0 0 ... 0
0
1 0 ... 0
0 1 ... 0
... ... ...
0 0 ... 1
21
Matrica je donja trougaona, pa je njena determinanta 1, zato je ona regularna, sledi
rang(A)=k+h-1.
Ovim je pokazano da svako reenje moe da ima najvie k+h-1 bazinu komponentu.
Bazino reenje je ono reenje za koje vai da su vektori A
i1
, . . . , A
ir
linearno nezavisni,
gde je u = (u
1
, . . . , u
n
) reenje, 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.
Poto je dokazano rang(A)=k+h-1, sledi da bazino reenje ima najvie k+h-1 pozitivnih
komponenti, zato trivijalno reenje nije bazino (sve komponente su pozitivne).
Metoda severozapadnog ugla
Ovom metodom se odredjuje jedno dopustivo reenje transportnog problema. Dobijeno
reenje je uvek bazino.
0 formira se tabela k h polja, u nju se upisuju vrednosti x
ij
0 uoi se severozapadni ugao tabele i ispituje:
M s
1
s
2
. . .
s
k
p
1
p
2
. . . p
h
x
11
0
= minp
1
, s
1
)
U zavisnosti od prvog elementa, javljaju se dva sluaja:
minp
1
, s
1
) = p
1
minp
1
, s
1
) = s
1
p
1
M s
1
p
1
0 s
2
0 . . .
0 s
k
0 p
2
. . . p
h
s
1
0 0 0 0
M s
2
. . .
s
k
p
1
s
1
p
2
. . . p
h
0 Za nastavak algoritma posmatra se tabela bez vrste ili kolone koja je popunjena,
odredi se severozapadni ugao i opet se trai minimum.
0 Algoritam se nastavlja dok se ne popuni tabela
Transportna mrea
Definition Neka je zadat konaan skup Q = Q
1
, . . . , Q
l
) i neka je t skup neuredjenih
parova (Q
i
, Q
j
) koji se nazivaju lukovi. Skup Q t se naziva transportna mrea,
gde su Q
i
punktovi (vorovi) transportne mree, a t njeni lukovi.
Definition Proizvoljan niz Q
i0
, Q
i1
, . . . , Q
ik
, gde Q
ir
Q, r = 0, . . . , r naziva se maruta
ako se svaki par (Q
ir
, Q
ir+1
) u nizu pojavljuje najvie jednom.
Definition Maruta oblika Q
i0
, Q
i1
, . . . , Q
ik
, Q
i0
se naziva kruni put ili cikl.
Definition Transportna mrea (Q, t) je povezana ako se bilo koja dva punkta mogu spojiti
marutom.
Lemma Ako iz svakog punkta polaze ne manje od 2 luka, transportna mrea sadri
kruni put.
22
Lemma Ako je transportna mrea povezana i ako iz svakog punkta polaze tano dva
luka, tada je cela transportna mrea kruni put.
Lemma Ako je Q
io
vezan marutom za Q
ir
, a Q
ir
vezan marutom za Q
jo
, onda su i Q
io
i
Q
jo
povezani marutom.
Lemma Ako transportna mrea ne sadri krune puteve, onda je svaka maruta
jednoznano odredjena krajnjim takama.
Lemma Ako je l broj punktova u skupu Q, a skup t sadri manje od l-1 luk, transportna
mrea je nepovezana.
Lemma Ako je transportna mrea (Q, t) povezana i ne sadri kruzne puteve, skup t ima
tano l-1 luk.
Sad se svakom bazinom reenju pridruuje transportna mrea:
P = P
1
, . . . , P
n
), S = S
1
, . . . , S
k
)
Uvodi se Q = P S punktovi, t = (S
i
, P
j
), S
i
S, P
j
P) lukovi
Za konkretno reenje (S
i
, P
j
) t akko x
ij
> 0
Posto vai pretpostavka da s
i
, p
j
> 0, onda iz svakog punkta izlazi ili ulazi jedan luk.
Za reenje X = x
ij
) transportna mrea je (P S, t). Transportnoj mrei reenja 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
vai a
ij
A(x) x
ij
> 0.
Theorem Dopustivo reenje je bazino akko odgovarajua transportna mrea ne sadri
krune puteve
Proof ) Reenje je bazino, dokazuje se da transportna mrea ne sadri krune
puteve.
Pretpostavi se suprotno: reenje je bazino i transportna mrea sadrzi kruzni
put.
Uzima se reenje X takvo da njegova transporta mrea sadri kruni 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 krunom 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 reenje bazino i pretpostavka ne vai. Dakle transportna
mrea ne sadri krune puteve.
) Transportna mrea ne sadri kruni put, dokazuje se da je reenje baino.
Pretpostavi se suprotno: Transportna mrea ne sadri kruni put i reenje nije
bazino.
Neka su vektori iz A(x) linearno zavisni: _[
ij
a
ij
= 0; J[
ij
= 0
Posmatra se transportna mrea (S P, t), gde je t definisano sa
(S
i
, P
j
) t [
ij
= 0. Tada je t t.
Posmatra se jedno [
ij
= 0. Tada mora Ja
ip
A(x), p = j, [
ip
= 0, jer ako
takav vektor ne postoji, i-ta komponenta zbira _[
ij
a
ij
bi bila razliita od nule, pa
sledi da iz S
i
polaze dva luka.
Dalje se moe pokazati da i iz P
j
, P
p
, . . polaze dva luka, pa i iz svakog punkta
polaze dva luka iz ega sledi da mrea ima kruni put, to je kontradikcija sa
osnovnom pretpostavkom. Dakle pretpostavka ne vai i reenje je bazino.
Do sada je vaila pretpostavka da reenje 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 k+h-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 Reenje transportnog problema je degenerisano akko postoje skupovi
G . M = 1, . . . , k) i H . N = 1, . . . , h) tako da je _
iG
s
i
= _
jH
p
j
. Tada
reenje ima manje od k+h-1 pozitivnu komponentu.
Theorem Reenje dobijeno metodom severozapadnog ugla je bazicno reenje.
Proof Neka je X
0
reenje dobijeno metodom severozapadnog ugla. Formira se njegova
transportna mrea. Pretpostavi se da mrea sadri kruni put S
i1
P
j1
S
i2
P
j2
. . . S
ik
P
jk
S
i1
gde za indekse vai 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 kruni put, jer tada jedan od lukova (S
i1
, P
j1
), (S
j1
, P
jk
) ne moe da postoji.
Dakle ovakvo reenje je bazino.
Za pronalaenje poetnog reenja 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 najniom cenom, a onda (ako je potrebno) onaj sa sledeom
minimalnom cenom. Analogno za metodu minimuma kolone.
Metoda potencijala
Ova metoda slui za pronalaenje optimalnog reenja problema transporta. Do
poetnog reenja za ovu metodu moe se doi bilo kojom metodom za pronalaenje
dopustivog reenja.
Pretpostavi se da je X
0
poetno reenje. Trai se X
1
tako da vai T(X
1
) < T(X
0
).
g = T(X) =
_
i=1
k
_
j=1ij
h
x
ij
t
ij
min
Formira se dual za ovaj problem:
u
i
dualna promenljiva za s
i
v
j
dualna promenljiva za p
j
z = _
j=1
h
v
j
p
j
_
i=1
k
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
]
[
v
j
u
i
_ t
ij
1
Ako se pretpostavi da je je nadjeno optimalno reenje primala i duala onda je z=g:
24
g z =
_
i=1
k
_
j=1
h
x
ij
t
ij

_
i=1
k
u
i
s
i
+
_
j=1
h
v
j
p
j
=
_
i=1
k
_
j=1
h
t
ij
x
ij

_
i=1
k
u
i _
j=1
h
x
ij
+
_
j=1
h
v
j _
i=1
k
x
ij
=
_
i=1
k
_
j=1
h
(t
ij
(v
j
u
i
))x
ij
= 0
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 vai 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 X
0
optimalno reenje i postupak je zavren. Ako
je neki od dobijenih brojeva negativan, to reenje nije optimalno. Problem pravi broj koji
je manji od nule, jer vai A
ij
= t
ij
(v
j
u
i
), a ne treba da A bude pozitivno. Problem je
to tada ne vai (1). Ako postoje indeksi i
0
j
0
takvi da je A
i0j0
< 0 vri se transformacija
tabele.
Metoda
Neka je X
0
= x
ij
0
) bazino reenje. Za one komponente gde je x
ij
0
> 0 formiraju se
jednaine v
j
u
i
= t
ij
. Ako su bazine komponente x
i1j0
0
x
i1j1
0
x
i2j1
0
. . . . onda je maruta koja
odgovara bazinom reenju: P
j0
S
i1
P
j1
S
i2
. . . S
ik
P
jk
S
i0
. Zato sistem jednaina ima oblik:
v
j0
0
u
i1
0
= t
i1j0
v
j1
0
u
i1
0
= t
i1j1
. . .
v
jk
0
u
ik
0
= t
ikjk
v
jk
0
u
i0
0
= t
i0jk
2
Ovaj sistem ima k+h-1 jednaina, a k+h nepoznatih. Zato se fiksira jedna promenljiva
(npr u
i0
0
= 0), pa se onda reava sistem. Na osnovu dobijenih podataka za u i v formira
se tabela:
v
1
v
2
... v
k
-u
1
-u
2
...
-u
k
Tabela se pounjava na sledei nain: Ako je v
j
u
i
_ 0 pie se taj broj. Ako je v
j
u
i
< 0
na to mesto se unosi A
ij
. Tabela je optimalna ako nema negativnih elemenata.
Ako negativni element postoji, onda se vri transformacija tabele:
Pretpostavka Ji
0
j
0
, takvi da -A
i0j0
< 0
Tada se odgovarajua nebazina komponenta x
i0j0
0
ubacuje u bazu, a neka druga,
bazina izbacuje.
Reenju X
0
odgovara A(X
0
) sistem linearno nezavisnih vektora. Pretpostavlja se da su
problem i reenje nedegenerisani. Sistemu A(X
0
) dodaje se vektor a
i0j0
(koji odgovara
25
komponenti x
i0j0
koja se ubacuje). Tada je skup A(X
0
) a
i0j0
linearno zavisan, pa mu
odgovara kruni put, transportne mree za X
0
: S
i0
P
j0
S
i1
P
j1
S
i2
. . . S
ik
P
jk
S
i0
. Na osnovu
komponenti krunog puta formira se novo reenje:
x
i0j0
1
= x
i0j0
0
+ 0
x
i1j0
1
= x
i1j0
0
0
x
i1j1
1
= x
i1j1
1
+ 0
. . .
x
i0jk
1
= x
i0jk
0
0
3
Poto je ponuda jednaka potranji, mora se oduzeti i dodati isti broj 0.
0 = min
0_r_k
x
ir+1r
0
), tj 0 je najmanja od onih bazinih komponenti koje se u sledeoj
iteraciji smanjuju. Kada se 0 odredi, jedna od ovih jednaina postaje x
il+1jl
1
= 0. Zbog
toga se iz krunog puta izbacuje luk S
l+1
P
l
i tako se dobija nov put za reenje x
1
Novo reenje se definie na sledei nain:
0 promenljive na krunom putu se transformiu po (3)
0 one koje nisu na krunom putu se ne menjaju, tj x
ij
1
= x
ij
0
Maruta za reenje X
1
nije kruni put, tako da je to reenje bazino. Jo je potrebno
pokazati T(X
1
) < T(X
0
).
Ako se svaka druga jednaina sistema (2) pomnoi sa -1 i onda se saberu sve
jednaine, dobija se:
u
i0
0
v
j0
0
=
_
i,j
t
ij
= A 4
T(X
1
) T(X
0
) =
_
i,j
t
ij
0
(x
ij
1
x
ij
0
)=
=
_
i,j
i=i
0
,j=j
0
t
ij
(x
ij
1
x
ij
0
) + t
i0j0
(x
i0j0
1
x
i0j0
0
)
=
_
i,j
i=i
0
,j=j
0
t
ij
0 + 0t
i0j0
= 0(A + t
i0j0
) = 0(
A
i0j0
u
i0
0
v
j0
0
+ t
i0j0
) < 0
Dakle, metoda potencijala u novom koraku daje reenje 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 Taka u
-
je minimum funckije J(u) na skupu U ako vai 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 vai
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) ograniena 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 vai
lim
k
J(u
k
) = inf
uU
J(u) = J
-
.
Definition Taka u
-
je taka lokalnog minimuma funkcije J(u) ako JL > 0, tako da je
J(u
-
) _ J(u), u U , u : ]u u
-
] < L) = O
L
(u
-
). Ako se jednakost
J(u
-
) = J(u) dotie samo za u=u
-
tada je u
-
strogi lokalni minimum funkcije J(u).
Theorem Neka je U zatvoren i ogranien skup u R
1
. Tada je funkcija J(u) ograniena sa
donje strane na U, skup U
-
je neprazan, zatvoren i bilo koji minimizirajui niz
u
k
) U tei ka u
-
.
Definition Niz u
k
) konvergira ka skupu U
-
ako vai: 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 o i [ tako da je
a _ o _ [ _ b i vai:
1) J(u) je opadajua na |a, o]
2) J(u) je rastua na |[, b]
3) J(u) = J
-
, o _ u _ [, tj U
-
= |o, []
Ako je o = [ funkcija J(u) je strogo unimodalna.
Metoda polovljenja pripada klasi metoda uporedjivanja:
u
1
=
a+bo
2
; u
2
=
a+b+o
2
; 0 < o < b a
Kada se formiraju ove dve take, raunaju se J(u
1
) i J(u
2
).
0 Ako je J(u
1
) _ J(u
2
) u
-
|a, u
2
], postavi se a
1
= a, b
1
= u
2
0 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
], duina intervala |a
1
, b
1
] je b
1
a
1
=
ba+o
2
. Biraju se take
u
3
=
a
1
+b
1
o
2
i u
4
=
a
1
+b
1
+o
2
, pa se raunaju J(u
3
) i J(u
4
).
Ovim postupkom se dobija u
-
|a
k1
, b
k1
]; u
2k1
=
a
k1
+b
k1
o
2
i u
2k
=
a
k1
+b
k1
+o
2
.
Postupak se nastavlja dok ne bude |b
k
a
k
| _ c, gde je c unapred zadat broj.
Sad vai da je u
-
~
a
k
+b
k
2
.
U svakom koraku se rade po 2 izraunavanja. Broj raunanja vrednosti
funkcije J(u
n
) je n = 2k. Tada je tanost reenja (b a)2
1
n
2
.
2. Metoda zlatnog preseka
Postie istu tanost, sa upola manje raunanja.
ba
bu
1
=
bu
1
u
1
a
u
1
= a + (3 5 )
ba
2
u
1
deli [a,b] po principu zlatnog preseka
ba
u
2
a
=
u
2
a
bu
2
u
2
= a + ( 5 1)
ba
2
Takodje vai
u
2
a
u
2
u
1
=
u
2
u
1
u
1
a
. Raunaju se J(u
1
) i J(u
2
).
0 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)
ba
2
) a = ( 5 1)
ba
2
0 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 )
ba
2
)) = ( 5 1)
ba
2
Postupak se nastavlja dok se ne dodje do intervala |a
k
, b
k
], za koji vai
|b
k
a
k
| _ c, gde je c zadata tanost b
k
a
k
= (
5 1
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 greku. Sa
n izruaunavanja funkcije postie se red tanosti kao i sa metodom polovljenja
sa 2n raunanja.
3. Metoda Fibonaija
L
n
= b a; L
n
: L
n1
= F
n
: F
n1
L
n
= L
n1
+ L
n2
; L
0
= 1, L
1
= 1;
Posmatra se vrednost funkcije u u
1
i u
2
:
0 Ako je J(u
1
) _ J(u
2
) u
-
|a, u
2
], postavi se a
1
= a, b
1
= u
2
0 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
]
F
n
=
1+ 5
2
n

1 5
2
n
5
d-duina poslednjeg intervala, tj tanost:
F
n
: 1 = (b a) : d d =
ba
Fn
- odredjuje se n
ba
u
1
a
=
Fn
F
n2
u
1
=
(ba)F
n2
Fn
+ a
Minimizacija funkcija vie promenljivih
Posmatra se funkcija J(u), u R
n
Epsilon okolina take u obleava se sa: O
c
(u) = v : v R
n
, ]v u] < c), c > 0
Definition Funkcija J(u) je diferencijabilna u taki u ako postoji vektor J
'
(u) R
n
takav
da je:
28
AJ(u) = J(u + h) J(u) = J
'
(u), h + o(h, u)
Gde je
o(h,u)
]h]
0, h 0.
Vektor J
'
(u) je gradijent funkcije J(u) u taki u.
J
'
(u) =
cJ(u)
cu
1
cJ(u)
cu
2
. . .
cJ(u)
cu
n
cJ(u)
cu
i
= lim
o0
J(u+oe
i
)J(u)
o
, gde je e
i
jedinini vektor
Definition Funkcija J(u) je dvostruko diferencijabilna u taki u ako postoji matrica J
''
(u),
takva da se prirataj funkcije moe izraziti u obliku:
AJ(u) = J
'
(u), h +
1
2
J
''
(u)h, h + o(h, u)
pri emu je
o(h,u)
]h]
0, h 0.
Matrica J
''
(u) je hesijan:
J
''
(u) =
c
2
J(u)
c
2
u
1
c
2
J(u)
cu
1
cu
2
. . .
c
2
J(u)
cu
1
cun
c
2
J(u)
cu
2
cu
1
c
2
J(u)
c
2
u
2
. . .
c
2
J(u)
cu
2
cun
. . . . . . . . .
c
2
J(u)
cuncu
1
c
2
J(u)
cuncu
2
. . .
c
2
J(u)
c
2
un
Definition Taka v za koju vai 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
''
(v)h, h :
0 Ako je J
''
(v)h, h > 0 za h = 0, tj pozitivno definitna q, taka v je taka
lokalnog minimuma.
0 Ako je J
''
(v)h, h < 0 za h = 0, tj negativno definitna , taka v je taka
lokalnog maksimuma.
0 Ako kvadratna forma menja znak, onda u toj taki nema ekstrema.
0 Ako je kvadratna forma jednaka nuli u taki v, onda se za ispitivanje koriste izvodi
vieg 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 priblino.
Problem minimizacije funkcije vie promenljivih moe biti bez ogranienja (1) ili sa
ogranienjima (2):
(1)
J(u) min
u R
n
(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
s+1
, . . . , u
n
)
u
2
= a
2
(u
s+1
, . . . , u
n
)
. . .
u
s
= a
s
(u
s+1
, . . . , u
n
)
Problem se svodi na problem minimizacije bez ogranienja. Tada:
(x) = J(a
1
(u
s+1
, . . . , u
n
), a
2
(u
s+1
, . . . , u
n
), . . . , a
s
(u
s+1
, . . . , u
n
), u
s+1
, . . . , u
n
)
gde je x = (u
s+1
, . . . , u
n
) R
ns
, bez ogranienja. Medjutim to nije uvek mogue uraditi,
zato se ee koristi sledea metoda:
Metoda Lagranovih mnozitelja
Problemu (3) dodeljuje se funkcija Lagrana:
L(u, z) = z
0
J(u) +
_
j=1
s
z
j
g
j
(u)
z = (z
0
, z
1
, . . . , z
s
) R
s+1
Ako postoji reenje problema (3) i ako je taj minimum vektor u
-
, tada postoje mnoitelji
Lagrana z
-
= (z
0
-
, z
1
-
, . . . , z
s
-
) = 0, takvi da je:
z
0
-
cJ(u
-
)
cu
i
+
_
j=1
s
z
j
-
cg
j
(u
-
)
cu
i
= 0, i = 1, . . . , n 4
odnosno vektori J
'
(u), g
1
'
(u), . . . , g
s
'
(u) su linearno zavisni u taki u
-
.
Ako se sistemu jednaina (4) doda sistem
g
j
(u
-
) = 0, j = 1, . . . , s 5
dobija se sistem od n+s jednaina sa n+s+1 nepoznatom (postoji 1 stepen slobode).
Odatle sledi da ako je neki par (v, z) reenje sistema, onda je i par (v, oz) reenje tog
sistema, gde je o skalar.
Najcesce se prethodnom sistemu doda i jednaina _
i=1
s
z
i
= 1, pa je to onda sistem sa
istim brojem nepoznatih i jednacina.
Ako je z
0
= 0 problem je regularan. Tada se uzima z
0
= 1 i funkcija Lagrana postaje:
L(u, z) = J(u) +
_
j=1
s
z
j
g
j
(u)
Ako su reeni sistemi (4) i (5)), da li je to reenje minimum funkcije J(u)?
Pretpostavlja se da sistemi (4) i (5) imaju reenje i da je z
0
= 1.
Ako je kvadratna forma (L
nn
(u
-
, z
-
)h, h) > 0, tj pozitivno definitna, za h = 0 za koje vai i
g
i
'
(u
-
), h = 0, gde je (u
-
, z
-
) reenje sistema (4) i (5), tada je u
-
minimum funkcije
J(u), tj reenje 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(ou + (1 o)v) _ oJ(u) + (1 o)J(v), u, v U, 0 _ o _ 1 1
Ako je u (1) jednakost mogua samo za o = 0 ili o = 1, onda je funckija strogo
konveksna.
Funkcija J(u) je konkavna ako je -J(u) konveksna. Stroga konkavnost se
definie analogno strogoj konveksnosti.
Geometrijska interpretcija:
M(u,J(u)); N(v,J(v));
Posmatraju se take definisane sa: [ = ou + (1 o)v; , = oJ(u) + (1 o)J(v)
[ je parametrizacija dui (u,v), tj intervala. ([, ,) opisuje seicu.
U R
2
grafiki posmatrano, konveksna funkcija je ona kod koje grafik lei ispod seice.
0 Za konveksan skup U vai:
u
i
U, i = 1, . . . , m _
i=1
m
o
i
u
i
U, _
i=1
m
o
i
= 1, o
i
_ 0, i = 1, . . . , m.
0 Za konveksnu funkciju J(u) vai analogno:
J(_
i=1
m
o
i
u
i
) _ _
i=1
m
o
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 vai:
J(u) _ J(v) + J
'
(v), u v , u, v U 2
Proof ) J(u) je konveksna funkcija. Na osnovu definicije:
J(ou + (1 o)v) _ oJ(u) + (1 o)J(v)
teorema o sr. vred
J(ou + (1 o)v) J(v) _ o(J(u) J(v))
Teorema o srednjoj vrednosti: f(x) f(y) = f
'
()(x y), (x, y), sledi:
J
'
(v + 0o(u v)), o(u v) _ o(J(u) J(v)) / : o
J
'
(v + 0o(u v)), (u v) _ (J(u) J(v)) /o 0
J
'
(v), (u v) _ (J(u) J(v))
to je ba (2).
) pretpostavka da vai (2); u, v U, 0 _ o _ 1
Formira se taka u
o
= ou + (1 o)v U (U je konveksan skup)
(J(u) J(u
a
)) _ J
'
(u
a
), u u
o
/o
(J(v) J(u
a
)) _ J
'
(u
a
), v u
o
/(1 o)
+
o(J(u) J(u
a
)) + (1 o)(J(v) J(u
a
)) _ o J
'
(u
a
), u u
o
+ (1 o) J
'
(u
a
), v u
o
oJ(u) + (1 o)J(v) J(u
o
) _ J
'
(u
a
),
=uo
ou + (1 o)v u
a
= 0
oJ(u) + (1 o)J(v) _ J(u
o
) = J(ou + (1 o)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, = unutranjost 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.
0 u , R
n
, Jc
0
< 0, tako da u + c U za |c| _ c
0
Za konveksne funkcije vai (3), pa se primenjuje:
J
'
(u + c) J
'
(u), c
te o sr vred
= J
''
(u + 0c), c
2
(3)
_ 0, 0 _ 0 _ 1
J
''
(u + 0c), _ 0, c 0
J
''
(u), _ 0 to je (4)
0 u je rubna taka
Po definiciji adherentnih taaka postoji niz u
m
), u
m
tako da
lim
m
u
m
= u.
Za unutranje take vai J
''
(u
m
), _ 0, R
n
lim J
''
(u
m
), = J
''
(u), _ 0, jer J(u) C
2
(U).
) vai relacija (4)
Na osnovu teoreme o srednjoj vrednosti:
J
'
(u) J
'
(v), u v = J
''
(
U
v + 0(u v))(

-
u v),

-
u v
(4)
_ 0
sto znaci da vai 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 taaka minimuma funkcije J(u) na skupu U. Potreban i dovoljan uslov da
neka taka u
-
pripada skupu U
-
je da vai:
J
'
(u
-
), u u
-
_ 0, u U 5
Ako je u
-
unutranja taka 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
-
o(u u
-
)) J(u
-
)
g _ 0 jer je u
-
o(u u
-
) U, a vrednost funkcije u proizvoljnoj taki je vea
ili jednaka od vrednosti funkcije u minimumu, tj u
-
.
g se razvija u Tejlorov red:
g = o J
'
(u
-
), u u
-
+ o(o) _ 0 / : o
J
'
(u
-
), u u
-
+
o(o)
o
_ 0,
J
'
(u
-
), u u
-
_ 0 za o 0 , to je (5).
0 Za u
-
, Jc
0
> 0, e R
n
, u
-
+ c
0
e , kad se ovo uvrsti u (5):
c J
'
(u
-
), e _ 0, |c| _ c
0
, e R
n
Poto c moe biti i pozitivno i negativno, kao i e, ova relacija moe biti
tana, samo kada je J
'
(u
-
) = 0, tj kada je J
'
(u
-
) normalan na svaki
vektor e.
0 Ako je U = R
n
tada u u
-
generie ceo prostor R
n
. Uslov (5) je
zadovoljen sa jednakou.
32
J
'
(u
-
), u u
-
= 0 moe biti jedino ako je J
'
(u
-
) = 0, tj ako je J
'
(u
-
)
normalno na svaku razliku u-u
-
.
) vai relacija (5)
J(u) je konveksna, zato vai relacija (2):
J(u) J(u
-
)
(2)
_ J
'
(u
-
), u u
-
(5)
_ 0
Dakle u U, J(u) _ J(u
-
) u
-
je minimum.
Metode gradijenta
Reava se problem:
J(u) min
u R
n
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 u
0
do u
1
prolazi pravcem u kome ta funkcija
najbre opada. Pokazuje se da je taj pravac, pravac antigradijenta (J
'
(u)). Pravac
najbreg rasta je pravac gradijenta (J
'
(u)).
Prirataj u taki u, iz Tejlorovog razvoja je:
J(u + h) J(u) = J
'
(u), h + o(h)
Koristi se nejednakost Koi-Bunjakovskog:
a = (a
1
, . . . , a
n
); b = (b
1
, . . . , b
n
);
_
k=1
n
a
k
b
k
2
_
_
k=1
n
a
k
2
_
k=1
n
b
k
2
sledi:
]a]]b] _
_
k=1
n
a
k
b
k
_ ]a]]b]
Primenom na prirataj dobija se:
]J
'
(u)]]h]
2.
_ J
'
(u), h
1.
_ ]J
'
(u)]]h]
Trai se h tako da vai jednakost. Neka je o > 0.
0 Ako je h = oJ
'
(u) onda 2. prelazi u jednakost, i to je pravac najbreg pada.
0 Ako je h = oJ
'
(u) onda 1. prelazi jednakost, i to je pravac najbreg rasta.
Od take u
k
do take u
k+1
pomera se u pravcu antigradijenta tako to se formira sledei
niz:
u
k+1
= u
k
o
k
J
'
(u
k
), k = 0, 1, . . . 1
Prvo se bira u
0
, onda se formira niz u
k
). Duinu koraka du antigradijenta odredjuje o.
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 o
k
.
Posmatra se prirataj:
J(u
k+1
) J(u
k
) = J
'
(u
k
), u
k+1
u
k
+ o(u
k+1
u
k
)
J(u
k+1
) J(u
k
) = o
k
(J
'
(u
k
))
2
+ o(o
k
), o
k
> 0 2
U dovoljno maloj okolini u
k
moe se izabrati o
k
tako da ceo izraz (2) bude negativan, tj
da se postupak kree ka minimumu.
33
Algoritamski: izabere se neko o
k
i izrauna u
k+1
. Proveri se da li je prirataj negativan.
Ako nije smanji se o
k
i ponovo vri 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 moe nekim preciznijim postupkom,
npr Njutnovim, doi do tanog reenja.
Metoda najbrzeg pada (Koijeva metoda)
Posmatra se niz:
u
k+1
= u
k
o
k
J
'
(u
k
), k = 0, 1, . . .
J
'
(u
k
) = 0, u
0
R
n
1
o
k
se bira na sledei nain:
Posmatra se funkcija f
k
(o) = J(u
k
oJ
'
(u
k
)). Trai se infimum ove funkcije:
f
k
(o
k
) = inf
o_0
f
k
(o) = f
k-
2
Proverava se da li je o
k
= 0
f
k
'
(o) = J
'
(u
k
oJ
'
(u
k
)), J
'
(u
k
)
f
k
'
(0) = J
'
(u
k
)
2
= 0, jer je J
'
(u
k
) = 0, sledi da je o
k
> 0 i metod ima smisla.
0 Ako je J(u) =
1
2
(Au, u) (b, u) kvadratna forma, gde je A matrica, u i b su vektori.
Metoda najbreg pada za ovu funkciju bi bila:
u
k+1
= u
k
o
k
(Au
k
b) 3
jer je J
'
(u) = Au b. Izraz (3) opisuje relaksacioni metod za reavanje jednaine
Au=b.
Za ovakvu funkciju J(u), o
k
se moe eksplicitno izraziti:
f
k
(o) = J(u
k
) o]J
'
(u
k
)]
2
+
o
2
2
AJ
'
(u
k
), J
'
(u
k
) , o _ 0
f
k
'
(o) = ]J
'
(u
k
)]
2
+ o AJ
'
(u
k
), J
'
(u
k
) = 0 stacionarna taka
o
k
=
J
'
(u
k
)
2
(A(Au
k
b),Au
k
b)
, i sad u
k+1
= u
k
o
k
J
'
(u
k
)
0 Ako funkcija nije tako jednostavna, o
k
se ne moe nai egzaktno. Poto je f
k
(o)
funkcija jedne promenljive na nju moe da se primeni neka od metoda za
minimizaciju funkcija jedne promenljive. Medjutim, tako dolazi do greke, pa se
uslov za o
k
oslabljuje:
f
k-
_ f
k
(o
k
) _ f
k-
+ o
k
, o
k
> 0,
_
k=1

o
k
= o < 4
f
k-
_ f
k
(o
k
) _ (1 z
k
)f
k
(0) + z
k
f
k-
, 0 < z
k
< 1 5
0 o
k
moe da se odredi i tako da vai sledece:
J(u
k
) J(u
k
o
k
(J
'
(u
k
)) _ co
k
]J
'
(u
k
)]
2
, c > 0 6
Pomou c se regulie da drugi lanovi ovog Tejlorovog razvoja ne kvare
nejednakost.
Theorem Ako je niz u
k
) odredjen sa (1), o
k
odredjeno sa (6) i J(u) C
1
(R
n
), tada je
svaka taka nagomilavanja niza u
k
), stacionarna taka funkcije J
'
(u).
Theorem Neka je niz u
k
) dobijen postupkom (1), o
k
odredjeno sa (2), J
'
(u
k
) = 0, J(u)
konveksna funkcija, J(u) C
1
(R
n
). Tada je svaka taka nagomilavanja niza u
k
)
globalni minimum funkcije J(u) na skupu R
n
.
34
Theorem Neka je J
-
= inf
uR
n
J(u) > , J(u) C
1
(R
n
) i ]J
'
(u) J
'
(v)] _ L]u v],
gde je L>0 Lipicova konstanta, u, v R
n
(oznakom J(u) C
1,1
(R
n
)). Neka je niz
u
k
) dobijen postupkom (1) i o
k
sa (4). Tada za proizvoljno u
0
R
n
vai
lim
k
J
'
(u
k
) = 0. Ako je jo skup n
o
(u
0
) = u R
n
: J(u) _ J(u
0
) + o), gde je o
greka iz (4), ogranien, tada je svaka taka nagomilavanja niza u
k
) stacionarna
taka 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 o
k
sa (4) vai lim
k
J(u
k
) = J
-
i lim
k
(u
k
, u
-
) = 0. Ako je u (4)
o
k
= o(k
2
) tada vai 0 _ J(u
k
) J
-
_ c
0
k
1
, c
0
> 0.
Prethodna teorema govori da za minimizaciju funkcije jedne promenljive, o
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(ou + (1 o)v) _ oJ(u) + (1 o)J(v) o(1 o)_]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 _ j]u v]
2
, u, v U, j > 0
Ekvivalentan uslov je: J
''
(u), _ j]]
2
.
Geometrijska interpretacija
Primenom metode najbreg pada na funkciju J(u) dobija se niz taaka u
i
) koji se
sputa 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
oJ
'
(u
k
), o _ 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 krunice, do reenja (minimuma) bi se dolo u jednom koraku. Zato treba
smenom promenljivih dobiti linije to blie krunici.
Dokaz da su pravci normalni na linije nivoa:
u(t) je parametarska jednaina linije G
k
. Tada vai
J(u(t)) = J(u
k
) = const , a _ t _ b, u(t
0
) = u
k
7
Izvod leve i desne strane ove relacije po parametru t je:
J
'
(u
k
), u(t) = 0, za t=t
0
:
J
'
(u
k
), u(t
0
) = 0 L
k
G
k
/ L
k
] J
'
(u
k
) J
'
(u
k
) G
k
Iz definicije koeficijenta o
k
:
f
k
'
(o) = J
'
(u
k
oJ
'
(u
k
)), J
'
(u
k
) |
o
k
f
k
'
(o
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 vai J(u) C
1,1
(U). Tada
vae ocene:
0 Ocena po vrednosti funkcije:
0 _ J(u
k
) J
-
_ (J(u
0
) J
-
)q
k
Gde je
35
q = 1
j
L
8
gde je j konstanta iz teoreme jake konveksnosti, a L Lipicova konstanta.
0 Ocena po argumentima funkcije:
]J
'
(u) J
'
(v)] _ L]u v]
]u
k
u
-
]
2
_
2
j
(J(u
0
) J
-
)q
k
, 0 _ q < 1
Ako su linije nivoa kruznice tada vai:
J
'
(u) J
'
(v) = u v 9
Kada se (9) ubaci u Lipicov uslov, sledi da je L=1, onda iz teoreme sledi j = 1. To se
iskoristi u (8) i dobija se q=0, pa sledi da se minimum dobija u prvom koraku.
Ova metoda daje loe rezultate kod funkcija koje imaju oblik "erpe" (jaruge), zato to
ortogonalni pavci uvek ostaju na obodu i ne sputaju 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 najbreg spusta.
Metodom gradijenta se zapravo minimizuje Tejlorov razvoj funkcije. Za kvadratnu
funkciju metoda najbreg pada ne daje tano reenje, jer Tejlorov red daje tanu ocenu
jedino za linearne funkcije, a kod kvadratnih priblinu.
Gradijentni postupak se moe ubrzati uvodjenjem jedne regularne pozitivno definitne
matrice A
k
:
u
k+1
= u
k
o
k
A
k
J
'
(u
k
)
o
k
> 0
Ako je ta matrica A
k
= (J
''
(u
k
))
1
, onda se dobija Njutnova metoda i ona je bra od
gradijente. Ako se A
k
pogodno izabere, linije nivoa se mogu transformisati da budu blie
krunicama.
Metoda konjugovanih pravaca
Ova metoda daje minimum kvadratne forme u konano mnogo koraka. Zato je bolja od
metode najbreg pada. Zasniva se na poznavanju prvog izvoda.
J(u) C
1
(R
n
)
Hiperravan: I = I(c, ,) = u R
n
: (c, u) = ,)
c- vektor normale hiperravni, c = 0
u
0
I (c, u
0 ) = ,
u I (c, u) = ,
kombinacijom ovoga dobija se drugaije izraena hiperravan:
I = I(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) =
1
2
(Au, u) (b, u) inf, gde je A>0 pozitivno definitna i simetrina matrica.
Funkcija J(u) je jako konveksna i dostie svoj minimum u u
-
R
n
koja je jedinstvena
taka i vai:
J
'
(u) = Au b
J
''
(u) = A
za u=u
-
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
o
0
p
0
, gde je o
0
_ 0, f
0
(o) = J(u
0
op
0
) i to se minimizira: f
0
(o
0
) = min
o>0
f
0
(o),
na isti nain kao kod metode najbreg pada. Proverava se da li je o
0
> 0 :
f
0
'
(o) = J
'
(u
0
op
0
),
=J
'
(u
0
)
p
0
f
0
'
(0) = J
'
(u
0
), J
'
(u
0
) = ]J
'
(u
0
)] < 0 o
0
> 0
f
0
'
(o
0
) = J
'
(u
0
o
0
p
0
), p
0
= J
'
(u
1
), p
0
= 0 1
sledi J
'
(u
1
) p
0
, p
0
= J
'
(u
0
), p
0
= 0 Ap
0
= 0
Zato se moe definisati hiperravan I
1
= u R
n
: (Ap
0
, u u
1 ) = 0)
Pokazuje se da minimum lei u I
1
. Hiperravan je linearna kombinacija vektora iz R
n1
.
Time je ve smanjen stepen prostora, na ovaj nain se stepen moe 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
-
I
1
Nastavlja se dalje, rauna se J
'
(u
1
).
0 ako je J
'
(u
1
) = 0 u
-
= u
1
0 ako je J
'
(u
1
) = 0 formira se pravac p
1
= J
'
(u
1
) [
0
p
0
, gde je [
0
takvo da vai:
p
1
] I
1
, p
1
Ap
0
2
Zato treba da vai:
(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
[
0
=
Ap
0
,J
'
(u
1
)
(Ap
0
,p
0 )
, (Ap
0
, p
0 ) = 0 jer je A>0 i p
0
= 0 iz pretpostavke.
Sada se definise taka u
2
:
u
2
= u
1
o
1
p
1
3
gde je o
1
odredjeno na isti nain kao i o
0
:
f
1
(o) = J(u
1
op
1
); f
1
(o
1
) = min
o_0
f
1
(o)
f
1
'
(0) = J
'
(u
1
), p
1
= J
'
(u
1
), J
'
(u
1
) + [
0
p
0
= ]J
'
(u
1
)]
2
< 0, jer je
J
'
(u
1
), [
0
p
0
= 0 iz (1) o
1
> 0 pa je u
2
dobro definisano.
f
1
'
(o
1
) = 0 jer treba da bude minimum
f
1
'
(o
1
) = J
'
(u
1
o
1
p
1
), p
1
= J
'
(u
2
), p
1
= 0
J
'
(u
2
) p
1
4
J
'
(u
1
) J
'
(u
2
) = Au
1
b (Au
2
b) = A(u
1
u
2
)
(3)
= Ao
1
p
1
, sledi
J
'
(u
2
) = J
'
(u
1
) o
1
Ap
1
5
J
'
(u
2
), J
'
(u
0
)
(5)
= J
'
(u
1
) o
1
Ap
1
, J
'
(u
0
) =
=0(1)
J
'
(u
1
), p
0
+
=0(2)
(o
1
Ap
1
, p
0 )= 0 sledi
J
'
(u
2
) J
'
(u
0
) = p
0
6
J
'
(u
2
), J
'
(u
1
) = J
'
(u
2
), p
1
+ [
0
p
0
=
=0(4)
J
'
(u
2
), p
1
+
=0(6)
J
'
(u
2
), [
0
p
0
sledi
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:
0 u
i+1
= u
i
o
i
p
i
0 f
i
(o) = J(u
i
op
i
); f
i
(o
i
) = min
o_0
f
i
(o)
0 p
i
= J
'
(u
i
) [
i1
p
i1
= 0
0 [
i1
=
Ap
i1
,J
'
(u
i
)
(Ap
i1
,p
i1 )
Pretpostavlja se jo da vae normalnosti:
0 (Ap
i
, p
j ) = 0, i = j, 0 _ i, j _ k 1
0 J
'
(u
i
), p
j
= 0, 0 _ j < i _ k
0 J
'
(u
i
), J
'
(u
j
) = 0, i = j, 0 _ i, j _ k
0 J
'
(u
i
) = 0, i = 0, 1, . . . , k
Uz ove pretpostavke trvdi se da uslovi normalnosti vae i za i=k. Dokaz je analogan
dokazu kad se prelazi sa u
1
na u
2
, pa je izostavljen.
Ovakvim postupkom se generiu hiperravni:
I
i+1
= u R
n
: (Ap
i
, u u
i+1 ) = 0), i = 1, . . . , k 1
Hiperravni I
k
predstavljaju linearne mnogostrukosti dimenzije n-k u prostoru R
n
.
Za svaku I
k
vai: u
-
I
k
. U najvie n koraka dolazi se do n-k=0, 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
moe postojati najvie n takvih vektora. Zato mora postojati k N tako da
J
'
(u
k
) = 0 u
-
= u
k
i do njega se dolazi u najvie n koraka.
Do sada je razmatran metod konjugovanih gradijenata za funkciju J(u) u obliku
kvadratne forme, tj za problem:
J(u) =
1
2
(Au, u) (b, u) inf
u R
n
Algoritam je sledei:
1. izabere se u
0
R
n
2. u
k+1
= u
k
o
k
p
k
3. f
k
(o
k
) = min
o_0
f
k
(o), f
k
(o) = J(u
k
op
k
)
4. p
k
= J
'
(u
k
) [
k
p
k1
[
i
=
Ap
i1
,J
'
(u
i
)
(Ap
i1
,p
i1 )
p
0
= J
'
(u
0
)
Tada vai da je J
'
(u
k+1
), p
k
= 0, J
'
(u) = Au b
(Au
k+1
b, p
k ) = (A(u
k
o
k
p
k
) b, p
k )
= (Au
k
b o
k
Ap
k
, p
k )
= J
'
(u
k
) o
k
Ap
k
, p
k
= J
'
(u
k
), p
k
o
k(Ap
k
, p
k ) = 0
sledi:
o
k
=
J
'
(u
k
), p
k
(Ap
k
, p
k )
Vai jo da su pravci p
i
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 optem obliku
J(u) min
u R
n
7
J(u) C
1
(R
n
)
Kree se od koeficijenta [
k
i iz njegove formule, gde treba eliminisati A:
brojilac:
Ap
k1
, J
'
(u
k
)
(5)
= o
k1
1
(J
'
(u
k
) + J
'
(u
k1
)), J
'
(u
k
)
= o
k1
1
J
'
(u
k
), J
'
(u
k
) + o
k1
1
=0ort.
J
'
(u
k1
), J
'
(u
k
)
= o
k1
1
]J
'
(u
k
)]
2
imenilac:
(Ap
k1
, p
k1 ) = o
k1
1
(J
'
(u
k
) + J
'
(u
k1
)), p
k1
= o
k1
1
J
'
(u
k1
), p
k1
, J
'
(u
k
), p
k1
= o
k1
1
J
'
(u
k1
), p
k1
= o
k1
1
J
'
(u
k1
), J
'
(u
k1
) [
k2
ort.
p
k2
= o
k1
1
J
'
(u
k1
), J
'
(u
k1
)
= o
k1
1
]J
'
(u
k1
)]
2
Ove jednakosti vae 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
o
k
p
k
3. f
k
(o) = J(u
k
op
k
), f
k
(o
k
) = min
o_0
f
k
(o)
4. p
k
= J
'
(u
k
) [
k
p
k1
p
0
= J
'
(u
0
)
gde se [
k
odredjuje na jedan od sledeih naina:
[
k
=
J
'
(u
k
), J
'
(u
k1
) J
'
(u
k
)
]J
'
(u
k1
)]
2
8
[
k
=
]J
'
(u
k
)]
2
]J
'
(u
k1
)]
2
9
[
k
=
J
''
(u
k
)p
k1
, J
'
(u
k
)
J
''
(u
k
)p
k1
, p
k1
, akoJ(u) C
2
(R
n
) 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, moe se desiti da zbog greaka zaokruivanja 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
reavanje 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 vai ocena:
0 _ a
k
= J
'
(u
k
) J
-
_ q
k
a
0
- konvergencija po vrednosti funkcije
]u
k
u
-
]
2
_
2
j
q
k
a
0
, k = 0, 1, . . . - konvergencija po vrednosti argumenata
gde je q = 1
j
3
L(j
2
L
2
)
, 0 < q < 1, j je konstanta iz uslova jake konveksnosti,
J
'
(u) J
'
(v), u v _ j]u v]
2
, a L je Lipicova konstanta.
Metod konjugovanih pravaca konvergira i po vrednostima funkcije i po vrednostima
argumenata.
Njutnova metoda
Reava se problem minimizacije:
J(u) min
u U R
n
sa ogranienjima, a moe i bez.
Vea glatkost obezbedjuje bru 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 priblinog reenja u
k
. Vai
razvoj:
J(u) J(u
k
) = J
'
(u
k
), u u
k
+
1
2
J
''
(u
k
)(u u
k
), u u
k
+ o(]u u
k
]
2
)
Zanemari se ostatak i definie funkcija:
J
k
(u) = J
'
(u
k
), u u
k
+
1
2
J
''
(u
k
)(u u
k
), u u
k
1
Neka je
k
reenje (minimum) ove funkcije, tj: J
k
(
k
) = min
uU
J
k
(u)
Formira se niz:
u
k+1
= u
k
+ o
k
(
k
u
k
), o _ o
k
_ 1
to predstavlja opti oblik Njutnove metode. U zavisnosti od naina na koji se bira o
k
postoji vie varijanti Njutnovog metoda:
1. o
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
k1
u
k
) = 0 2
Ako se pretpostavi da je J
''
(u
k
) regularna matrica, tada iz (2) reavanjem po
u
k+1
sledi:
u
k+1
= u
k
(J
''
(u
k
))
1
J
'
(u
k
) 3
"obian Njutn". Ranije je radjeno f(u) = 0, reava se: u
k+1
= u
k

f
'
(u
k
)
f
''
(u
k
)
2. o
k
= z
i
0
, i
o
je najmanji i>0 za koje vai:
40
J(u
k
) J(u
k
z
i
(
k
u
k
)) _ cz
i
]J
'
(
k
)], 0 < z, c < 1
3. f
k
(o
k
) = min
1_o_0
f
k
(o), f
k
(o) = J(u
k
+ o(
k
u
k
))
Ako je J
k
(u) jako konveksna i ako je U = R
n
moe se primeniti npr metod konjugovanih
pravaca i dobiti reenje 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. Najee se gradijentnom metodom dodje u neku okolinu reenja
i tu ponu oscilacije. Zato se u toj taki primeni Njutnov metod i bre dodje do reenja.
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)] _ L]u v], u, v R
n
. Neka je u
0
izabrano tako da vai:
L]J
'
(u
0
)] _ 2j
2
q 4
J
''
(u), _ j]]
2
i 0<q<1, 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 vai ocena:
]u
k
u
-
] _ 2jL
1
q
2
k
, k = 0, 1, . . .
Proof Egzistencija i jedinstvenost resenja se izvode iz jake konveksnosti. Uslov:
J
''
(u), _ j]]
2
, u R
n
, R
n
5
za = 0 sistem J
''
(u) = 0 ima samo trivijalno reenje, jer je u suprotnom
0 _ j]]
2
> 0 to je kontradikcija.
Sledi da je det(J
''
(u)) = 0 J(J
''
(u))
1
u
k
je dobro definisan.
Neka je z = J
''
(u) = (J
''
(u))
1
z
Iz uslova (5) sledi:
j]]
2
= j](J
''
(u))
1
z]
2
_ z, (J
''
(u))
1
z
KosiBujak.
_ ]z]](J
''
(u))
1
z]
j](J
''
(u))
1
z] _ ]z]
](J
''
(u))
1
] _ j
1
6
Indukcijom se pokazuje da za gradijent vai:
a
k
= ]J
'
(u
k
)] _ 2j
2
L
1
q
2
k
7
k=0 vai jer je to pretpostavka za u
0
, pretpostavi se da vai za k. Razmatra se
k+1, koristi se J
'
(u + h) J
'
(u) = ]
0
1
J
''
(u + th)hdt
J
'
(u
k+1
) = J
'
(u
k
) + ]
0
1
J
''
(u
k
+ t(u
k+1
u
k
))(u
k+1
u
k
)dt
(3)
= ]
0
1
J
''
(u
k
) J
''
(u
k
+ t(u
k+1
u
k
)) dt(J
''
(u
k
))
1
J
'
(u
k
))
a
k+1
_ L]u
k+1
u
k
]
1
2
j
1
a
k
_
L
2
j
2
a
k
2
ih
_
L
2
j
2
4j
4
L
2
q
2
k+1
= 2L
1
j
2
q
2
k+1
Posto je J(u) jako konveksna vai: J
'
(u) J
'
(v), u v _ j]u v]
2
, u, v R
n
U prethodnu formulu se u i v zamene sa u
k
i u
-
:
j]u
k
u
-
]
2
_ J
'
(u
k
)
=0
J
'
(u
-
), u
k
u
-
_ ]J
'
(u
k
)]]u
k
u
-
]
sledi ]u
k
u
-
] _ j
1
a
k
(7)
_ 2jL
1
q
2
k
Theorem Neka je niz u
k
) odredjen sa (3) i neka U R
n
(postoje ogranienja). 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)] _ L]u v], u, v U. Tada je niz u
k
) odredjen
o
k
= 1 jednoznano odredjen pri bilo kom izboru u
0
U. Ako je u
0
odredjeno tako
da vai q =
L
2j
]u
1
u
0
] < 1 tada niz u
k
) konvergira ka u
-
i vai ocena
]u
k
u
-
] _
2j
L
q
2
k
(1 q
2
k
)
1
Ovim se minimizira kvadratni deo prirataja funkcije nad skupom U.
Ako je skup U linearno ogranien, to je onda kvadratno programiranje i reava se
simpleksom, jer je tako lake.
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

1g(u
k
)
(J
''
(u
k
))
1
J
'
(u
k
)
gradijentna:u
k+1
= u
k

o
k
g(u
k
)
o
k
J
'
(u
k
)
uopsteno: u
k+1
= u
k
o
k
g(u
k
); o
k
= min
o_0
J(u
k
og(u
k
))
u
k+1
= u
k
o
k
H
k
J
'
(u
k
), k=0,1,...; H
0
= E-gradijentna;H
k
= (J
''
(u
k
))
1
-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 o
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 o
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)=
1
2
(u, Au) + (a, u) + b, u, a R
n
, J(u) R, onda bi posle n koraka H
n
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 o
k
kao reenje min
o_0
J(u
k
+ od
k
)
5. racuna se u
k+1
= u
k
+
z
k
-
o
k
d
k
6. proverava se p
k+1
= J
'
(u
k+1
)
?
= 0
ako jeste sledi u
k+1
= u
-
, ako nije nastavlja se
7. formira se pravac o
k
= p
k+1
p
k
8. upotpuni se matrica H
k
:
H
k+1
= H
k
+ A
k
+ B
k
A
k
=
z
k
z
k
T
(z
k
,o
k )
, B
k
=
H
k
o
k
o
k
T
H
k
(w
k
,H
k
o
k )
9. povratak na 3.
42
Ako funkcija nije data u obliku kvadratne fome mora se deinisati neki drugi izlazni
kriterijum. To moe biti:
0 ]J
'
(u
k
)] _ c
0 ]u
k+1
u
k
] _ c
0 o
k
_ so
0
, gde je se unapred zadato 0<s<1
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
vai 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
'
(o
k
) = 0 jer je o
k
minimum funkcije
f
k
'
(o
k
) = J
'
(u
k
+ o
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 vai da je matrica A pozitivno definitna vai:
(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 reenje dobija u n-tom koraku,
vai 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 moe zapisati kao linearna kombinacija vektora d
k
. Zato
vai 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
dn
H
n
J
'
(u
n
) = 0. Sledi d
k
, J
'
(u
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 reenje je dobijeno u najvise n
koraka. Ovaj korak je ekvivalentan Njutnovom postupku.
Konveksno programiranje
Minimizacija sa ogranienjem:
J(u) min
u U R
n
U = u R
n
: u U
0
, g
i
(u) _ 0, i = 1, . . , m, g
i
(u) = 0, i = m + 1, . . . , s)
1
2
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 Lagrana. Definie se funkcija Lagrana za problem
(1):
L(u, z) = J(u) +
_
i=1
s
z
i
g
i
(u), u U
0
3
z = (z
1
, z
2
, . . . , zs); z A
0
= z : z
i
_ 0, i = 1, . . . , m), m _ s
Definition Taka (u
-
, z
-
) U
0
A
0
naziva se sedlasta taka funkcije Lagrana (3) ako
vai:
L(u
-
, z) _ L(u
-
, z
-
) _ L(u, z
-
) 4
za u U
0
, z A
0
.
Lemma Da bi taka (u
-
, z
-
) U
0
A
0
bila sedlasta taka funkcije Lagrana potrebno
je i dovoljno da vai:
L(u
-
, z
-
) _ L(u, z
-
), u U
0
z
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
-
, z
-
) i reenja u
-
.
Theorem (KT1) Ako je (u
-
, z
-
) U
0
A
0
sedlasta taka funkcije Lagrana, tada je u
-
U
-
i J
-
= L(u
-
, z
-
) = J(u
-
) pri emu je U
-
skup reenja problema (1).
Proof (u
-
, z
-
) ina n+s komponenti. Posto je (u
-
, z
-
) sedlasta taka za nju vai (5) i (6),
pa se te jednaine mogu zameniti u (3):
L(u
-
, z
-
) = J(u
-
) +
=0 po (6)
_
i=1
s
z
i
-
g
i
(u
-
) L(u
-
, z
-
) = J(u
-
)
Na osnovu (5) dobija se:
J(u
-
) _ J(u) +
_0 po (2)
_
i=1
s
z
i
-
g
i
(u), u U
J(u
-
) _ J(u), u U u
-
U
-
Po uvedenim oznakama J(u
-
) = J
-
Proverava se da li vai suprotno tj, da li vai da ako zadatak ima reenje, on ima i
sedlastu taku. Pokazuje se da ne mora da vai, kontraprimerom:
J(u) = u konveksna funkcija,
U
0
= u R, u _ 0) konveksan skup
g(u) = u
2
konveksna funkcija
U = u U
0
, g(u) _ 0) = 0) J(0) = J
-
= 0 u
-
= 0 reenje
Za ovu funkciju J(u) funkcija Lagrana je: L(u, z) = u + zu
2
u _ 0, z _ 0, trebalo bi da vai L(u
-
, z
-
) _ L(u, z
-
), u U
0
0 _ u + z
-
u
2
kad u 0 desna strana nejednakosti je manja od nule, odnosno, u > z
-
u
2
44
i to je kontradikcija i sedlasta taka ne postoji.
Dakle da bi tvrdjenje vailo i u ovom smeru, mora se dodati jos neki uslov. U se
transformie 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 Ogranienje g
i
(u) _ 0 se naziva regularno na skupu U, ako postoji taka
u
i
U tako da g
i
(u
i
) < 0. Ako su sva ogranienja 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 i=1,...,m. taka za koju to vai
se naziva Slaterova taka i definie se = _
j=1
m
o
j
u
j
, _
j=1
m
o
j
= 1, o
j
_ 0, j=1,...,m
Uslov g
i
() < 0, i=1,...,m, se zove Slaterov uslov i zbog konveksnosti vai:
g
i
() = g
i
(
_
j=1
m
o
j
u
j
) _
_
j=1
m
o
j
g
i
(u
j
) < 0
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 reenja problema
(7) U
-
= . Tada za svaku taku u
-
U
-
postoje mnoitelji Lagrana
z
-
= (z
1
-
, . . . , z
m
-
) A
0
= z R
m
: z
i
_ 0, i = 1, . . . , m), tako da par (u
-
, z
-
)
predstavlja sedlastu taku funkcije Lagrana koja odgovara problemu (7). Ta
sedlasta taka pripada skupu U
0
A
0
.
Proof U skupu R
m+1
definiu se podskupovi:
A =
uU
0
A(u);
A(u) = a = (a
0
, a
1
, . . . , a
m
) R
m+1
: a
0
_ J(u), a
i
_ g
i
(u), i = 1, . . . , m, u U
0
B = b = (b
0
, b
1
, . . . , b
m
) R
m+1
: 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.
0 A , B = : a A Ju 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 Ji, 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.
0 Konveksnost
Prvo za skup A. A je konveksan ako i samo ako
a, c A a
o
= oa + (1 o)c A
a, c A Ju, 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 taka u
o
= ou + (1 o)v U
0
jer je konveksan.
J(u
o
)
konv
_ oJ(u) + (1 o)J(v) _
prva komp a
o
oa
0
+ (1 o)c
0
g
i
(u
o
)
konv
_ og
i
(u) + (1 o)g
i
(v) _
i-ta komp a
o
oa
i
+ (1 o)c
i
45
a
o
A Ju
o
U
0
, a
o
0
_ J(u
o
), a
o
i
_ g
i
(u
o
)
Dakle a
o
= oa + (1 o)c A, jer takva taka u
a
postoji, pa je A
konveksan. Analogno se pokazuje da je i B konveksan skup.
Za diskujnktne konveksne skupove vai da postoji hiperravan koja ih razdvaja,
neka je to
H
ip
= u : (c, u) = ,)
c = (z
0
-
, . . . , z
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
m+1
: b
0
_ J
-
, b
i
_ 0, i = 1, . . . , m)
(c, b) _ , _ (c, a)
a A, b B

.
_
i=0
m
z
i
-
b
i
_ , _
_
i=0
m
z
i
-
a
i
Zato je vektor preseka y = (J
-
, 0, . . . , 0) A , B

, = (c, y) = z
0
-
J
-
z
0
-
b
0
+
_
i=1
m
z
i
-
b
i
_ z
0
-
J
-
_ z
0
-
a
0
+
_
i=1
m
z
i
-
a
i
8
posmatra se vektor b = (J
-
1, 0, . . . , 0) B

i uvrsti u (8):
z
0
-
(J
-
1) _ z
0
-
J
-
z
0
-
_ 0
za b = (J
-
, 0, . . . , 0,
i poz
1, 0, . . . , 0) B

opet se uvrsti u (8):


z
0
-
J
-
z
i
-
_ z
0
-
J
-
z
i
-
_ 0, i = 1, . . . , m
Pokazuje se da su ovakvi z
i
-
Lagranovi mnoitelji, tj da je (u
-
, z
-
) sedlasta
taka, 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:
z
0
-
J
-
+ z
i
-
g
i
(u
-
) _ z
0
-
J
-
_ z
0
-
J
-
+ z
i
-
g
i
(u
-
)
z
i
-
g
i
(u
-
) _ 0 _ z
i
-
g
i
(u
-
)
z
i
-
g
i
(u
-
) = 0, u
-
U a to je (6).
Jedna od pretpostavki teoreme je da je U regularan skup, tj da vai Slaterov
uslov. Neka je Slaterova taka. Pokazuje se da kod regularnih problema vai
z
0
-
> 0.
Uzima se a = (J(), g
1
(), . . . , g
m
()) A i uvrsti u (8)
z
0
-
_ z
0
-
J() +
_
i=1
m
z
i
-
g
i
()
Pretpostavi se suprotno, tj z
0
-
= 0, tada
0 _ 0 +
_
i=1
m
z
i
-
g
i
()
to je kontradikcija jer vai Slaterov uslov, pa je _
i=1
m
z
i
-
g
i
() < 0. Ni preostale z
i
-
ne smeju biti jednaki nuli, jer je vektor c = 0, a pretpostavljeno je da je z
0
-
= 0, to
je kontradikcija. Dakle z
0
-
> 0.
Bez umanjenja oposti se uzima z
0
-
= 1.
Uzima se a = (J(u), g
1
(u), . . . , g
m
(u)) A, u U
0
, i uvrsti u (8)
46
J
-
_ J(u) +
_
i=1
m
z
i
-
g
i
(u) = L(u, z
-
)
u ovo se zameni u = u
-
, u
-
U
-
:
J
-
_ J(u
-
) +
=0 po (6)
_
i=1
m
z
i
-
g
i
(u
-
)= L(u
-
, z
-
)
J
-
= J(u
-
) = L(u
-
, z
-
) L(u
-
, z
-
) _ L(u, z
-
), a to je (5).
Poto vae (5) i (6) dokazano je da je (u
-
, z
-
) sedlasta taka funkcije Lagrana.
Theorem (KT3) Neka je dat problem nelinearnog programiranja kakav je opisan u teoremi
KT2. Potreban i dovoljan uslov da u
-
bude reenje takvog problema je da postoji
z
-
_ 0 tako da je (u
-
, z
-
) sedlasta taka funkcije Lagrana dodeljene tom
problemu.
Dualnost u nelinearnom programiranju
Kod linearnog programiranja je vailo J
p
(u
-
) = J
d
(d
-
), kod nelineranog programiranja to
ne vai.
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)
1
g
i
(u) = (a
i
, u) b
i
, i = m + 1, . . . , s
Zadatku (1) se pridruuje funkcija Lagrana:
L(u, z) = J(u) +
_
i=1
s
z
i
g
i
(u), u U
0
z A
0
= z R
s
: z
i
_ 0, i = 1, . . . , m)
Definie se funkcija x :
x(u) = sup
zA
0
L(u, z), u U
0
x(u) = L(u, 0), u U
0
x(u) =
J(u), u U
, u U
0
/U
sledi:
inf
uU
0
x(u) = inf
uU
J(u) = J
-
Iz ovoga sledi da se problem (1) moe ekvivaletno zapisati kao:
x(u) inf
u U
0
1p (primal)
Pretpostavi se da (1) ima reenje, tj da U
-
= i J
-
>
Neka je U
-
= u
-
U
0
: x(u
-
) = J
-
)
Definie se funkcija
47
(z) = inf
uU
0
L(u, z), z A
0
Formira se problem:
(z) sup
z A
0
1d (dual)
Problem (1p) je primal, a problem (1d) koji mu je pridruen je dual.
sup
zA
0
(z) =
-
A
-
= z A
0
: (z) =
-
) skup reenja.
Lemma Za probleme (1p) i (1d) vai relacija:
(z)
(2)
_
-
(3)
_ J
-
(4)
_ x(u) , u U
0
, z A
0
5
Proof (2) sledi iz definicije supremuma.
(4) sledi iz definicije infimuma
Dokaz za (3):
(z) = inf
uU
0
L(u, z) _ L(u, z), u U
0
, z A
0
6
sup
zA
0
(z) =
-
_ sup
zA
0
L(u, z) = x(u) 7
inf
uU
0

-
=
-
_ inf
uU
0
x(u) = J
-
to je traena relacija.
Posebno ce se razmatrati pod kakvim uslovima vai:
A
-
= , U
-
= i
-
= J
-
8
Theorem Relacije (8) vae ako i samo ako funkcija Lagrana L(u, z), u U
0
, z A
0
ima
sedlastu taku na skupu U
0
A
0
. Skup sedlastih taaka funkcije Lagrana na skupu
U
0
A
0
poklapa se sa skupom. U
-
A
-
.
Proof ) pretpostavi se da vai (8)
Poznato je da uvek vai

-
= (z
-
) = inf
uU
0
L(u, z
-
) _ L(u
-
, z
-
) _ sup
zA
0
L(u
-
, z) = x(u
-
) = J
-
posto vai (8), vai i:
inf
uU
0
L(u, z
-
) = L(u
-
, z
-
) = sup
zA
0
L(u
-
, z)
Kad se izbace inf i sup, dobija se:
L(u
-
, z) _ L(u
-
, z
-
) _ L(u, z
-
)
to je definicija sedlaste tacke funkcije Lagrana. Dakle ako postoji z
-
i u
-
onda je
(u
-
, z
-
) sedlasta taka.
) pretpostavi se da je (u
-
, z
-
) U
-
A
-
sedlasta taka.
Poznato je
L(u
-
, z) _ L(u
-
, z
-
) ,z A
0
, jer je sedlasta taka
sup
zA
0 L(u
-
, z) = x(u
-
) = L(u
-
, z
-
)
L(u
-
, z
-
) _ L(u, z
-
), u U
0
, jer je sedlasta taka i
inf
uU
0
L(u, z
-
) = (z
-
) = L(u
-
, z
-
)
Ove relacije se ubace u (5):
L(u
-
, z
-
) _ (z
-
) _
-
_ J
-
_ x(u
-
) _ L(u
-
, z
-
)
48
svi _ prelaze u = i zato:

-
= (z
-
) A
-
=
J
-
= x(u
-
) U
-
=

-
= J
-
esto je lake reiti dual, nego primal. Dual je uvek konveksna funkcija ak i kada primal
nije. Ogranienja za z su uvek linearna i funkcija (z) je linearna po z. Konveksnost
ostaje ouvana. Zato je oigledno da dual duala nije primal kod nelinearnog
programiranja.
Metoda Lagranovih 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 reenje.
Pridruzuje se funkcija Lagrana:
L(u, z) = J(u) +
_
i=1
s
z
i
g
i
(u), u U
0
, z A
0
Za probleme konveksnog programiranja koji zadovoljavaju slaterov uslov poznato je da
je potreban i dovoljan uslov za postojanje resenja egzistencija sedlaste tacke funkcije
Lagrana, odnosno postojanje mnozitelja Lagrana:
z
-
A
0
, A
0
= z R
s
: z
i
_ 0, i = 1, . . . , m)
L(u
-
, z
-
) _ L(u, z
-
), u U
0
z
i
-
g
i
(u
-
) = 0, i = 1, . . . , s, u
-
U
-
2
3
4
Uslovi (3) i (4) su uslovi koji odredjuju sedlastu tacku. Na ovaj nacin je postavljen
problem za n+s nepoznatih. Ako se nadje vektor z
-
R
s
tako da vai (2),(3),(4), onda je
(u
-
, z
-
) sedlasta taka, a to znaci da je u
-
reenje problema (1).
0 Ako je J(u), g
i
(u) C
1
(U
0
), onda se uslov (3) svodi na
L
u
'
(u
-
, z
-
), u u
-
_ 0, u U
0
3
0 Ako je U
0
= R
n
onda je uslov (3) ekvivalentan sa
L
u
'
(u
-
, z
-
) = 0 3
J
u
'
(u
-
) +
_
i=1
s
z
i
-
g
i
'
(u
-
) = 5 5
Metod mnozitelja Lagrana se sastoji u tome da se iz (4) i (5), koji zajedno cine sistem
n+s jednacina sa n+s nepoznatih, izracuna sedlasta taka.
Ako se dobije z
i
-
_ 0, i = 1, . . . , m (uslov (2)), onda je (u
-
, z
-
) sedlasta taka, odnosno
u
-
je reenje.
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 o > 0 tako da +od U, za o,
0_ o _ o .
Theorem (Fritz-John-ovi uslovi optimalnosti) Neka ogranicenja u problemu konveksnog
programiranja datog sa (1) zadovoljavaju Slaterov uslov. Neka je u
-
U dopustivo
reenje i P(u
-
) skup aktivnih ogranicenja u u
-
. reenje u
-
je optimalno ako sledeci
sistem nema reenje d.
J
'
(u
-
), d < 0
g
i
'
(u
-
), d < 0, i P(u
-
)
2
Ako reenje 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
+ o
k
d
k
, k = 0, 1, . . . , gde su
o
k
koraci, a d
k
dopustivi smerovi iz tacke u
k
. Korak o
k
se odredjuje jednodimenzionalno
nelinearnom optimizacijom iz uslova:
J(u
k
+ od
k
) min
o _ 0
3
reenje problema (3) je o
k
.
Smer d
k
se racuna iz uslova (2). Posto je pretpostavljeno da g
i
(u) zadovoljavaju Slaterov
uslov, potreban i dovoljan uslov da u
-
bude reenje problema (1) je da problem (2)
nema reenje. Na osnovu toga se formira sledeci problem:
o max, o _ 0
J
'
(u
-
), d + o _ 0
g
i
'
(u
-
), d + o _ 0, i P(u
-
)
|d
i
| _ 1, i = 1, . . . , n
4
Ogranicenja |d
i
| _ 1, i = 1, . . . , n predstavljaju uslov normalnosti. Dodata su zbog
stabilnosti metode, a mogu se izostaviti.
Problem (4) ima trivijanlo reenje d=0,o = 0. Zato se stavlja o _ 0.
Ako problem (4) i dalje ima reenje, onda (2) ima reenje i tada u
-
nije reenje problema
(1).
0 Ako ne postoji takav o, onda je u
-
reenje za (1).
0 Ako je o > 0 reenje, 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
] _ c, c > 0
2. U tacki u
k
odredi se skup aktivnih ogranicenja P(u
k
) i resi problem
50
o max, o _ 0
J
'
(u
k
), d + o _ 0
g
i
'
(u
k
), d + o _ 0, i P(u
-
)
|d
i
| _ 1, i = 1, . . . , n
4
Resenja problema (4) se oznace sa o
k
i d
k
.
Ako je o
k
= 0 postupak se prekida i u
k
je reenje problema (1).
Inace za o
k
> 0, vektor d
k
je dopustiv smer iz u
k
, i prelazi se na korak 3.
3. Resava se problem
J(u
k
+ od
k
) min
g
i
(u
k
+ od
k
) _ 0, i = 1, . . . , m
o _ 0
3
reenje ovog problema oznacava se sa o
k
.
4. Formira se niz u
k+1
= u
k
+ o
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 k+1 i algoritam se
nastavlja
Izlazak iz ovog algoritma moe nastupiti ako je nadjeno tacno reenje ili ako je
zadovoljen izlazni kriterijum.
Problem ove metode moe biti zaokruzivanje pri racunanju. Uvodi se oslabljenje, pa se
umesto skupa P(), posmatra skup:
P(, c) = i P, c _ g
i
() _ 0)
Jos jedno oslabljenje je da se u problemu (4) i (4) mogu zanemariti uslovi o max, i
moe se traziti bilo kakvo reenje tog problema. To je moguce jer vec egzistenzija
resenja o 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 moe da se linearizuje, ali time se dobija reenje 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, . . .
u U
0
2
U. U
0
, U
0
moe biti R
n
ali je pozeljno da to bude neki relativno velik skup za koji je lako
odrediti da li mu taka pripada.
reenje problema (2) za fiksirano k oznaci se sa u
k
. Cilj je da niz resenja problema (2)
u
k
) konvergira ka resenju problema (1), tj u
k
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 P
k
.
Definition Niz funkcija P
k
(u)), k = 1, 2, . . . , u U
0
. U, nazivaju se kaznene funkcije
skupa U na skupu U
0
ako vai:
lim
k
P
k
(u) =
0, u U
, u U
0
\U
Kada u napusta skup U, kaznena funkcija mu daje beskonacno veliku kaznu.
Postoji vise nacina za zadavanje ovakvih funkcija. Neka je U
0
= 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]
2 P
k
(u) =
0, u 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
uU
0

k
(u) > 4
Realnije bi bilo posmatrati u
k
kao priblizno reenje, tada se definise i ovako:

k
(u
k
) _
k
-
+ c
k
, c
k
_ 0, lim
k
= 0 5
Ako je c
k
= 0, onda su (4) i (5) ekvivalentne.
Cilj je da vai:
lim
k

k
(u
k
) = lim
k

k
-
= lim
k
J(u
k
) = J
-
Posmatra se problem (1), sa skupom U definisanim
U = u U
0
= R
n
: g
i
(u) _ 0, i = 1, . . . m, g
i
(u) = 0, i = m + 1, . . . , s)
Kaznena funkcija za skup se definise:
P
k
(u) = A
k
P(u)
P(u) =
_
i=1
m
(maxg
i
(u), 0))
p
+
_
i=m+1
s
]g
i
(u)]
p
, u U
0
, p _ 1
A
k
> 0, lim
k
A
k
=
6
Pokazuje se da je ovo dobro definisana kaznena funkcija:
0 u U P(u) = 0 P
k
(u) = 0
0 u U Jj, g
j
(u) > 0, 1 _ j _ m ili Jj, 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 p>r iz definicije (6) i funkcija
P(u) C
r
(U
0
). Ako je r=1 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
P(u) =
_
i=1
s
(g
i
+
(u))
p
6
Dakle kaznene funkcije se mogu definisati ovako:
4 P
k
(u) = _
i=1
s
A
k
i
(g
i
+
(u))
p
i
, p
i
> 1, u U
0
, A
k
i
> 0, lim
k
i

A
k
i
=
5 P
k
(u) = _
i=1
s
A
k
i

i
(g
i
+
(u)), u U
0
, g(u) _ 0, (0) = 0, (g) > 0 za g>0
6 P
k
(u) = (1 + _
i=1
s
(g
i
+
(u))
p
i
)
A
k
1, p
i
_ 0
7 P
k
(u) =
1
A
k
_
i=1
m
e
A
k
g
i
(u)
+ _
i=m+1
s
e
A
k
g
i
2
(u)
, u U
0
u U lim
k
P
k
(u) =
S

= 0
u U
e


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 vai:
lim
k
J(u
k
) _ lim
k

k
(u
k
) = lim
k

k
-
_ J
-
Pored toga, ako je J
--
= inf
uU
0
J(u) > , vai:
P(u
k
) =
_
i=1
s
(g
i
+
(u
k
))
p
= O(A
k
1
)
lim
k
g
i
(u
k
) _ 0, i = 1, . . . , m
lim
k
g
i
(u
k
) = 0, i = m + 1, . . . , s
Metoda kaznenih funkcija jako zavisi od izbora oganicenja. Ko se jedna oblast U
0
moe
dobiti na vise nacina, moe 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:
lim
k
g
i
(u
k
) _ 0, i = 1, . . . , m
lim
k
g
i
(u
k
) = 0, i = m + 1, . . . , s
vai 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 vai
lim
k

k
-
= J
-
7
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 vai (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
Lagrana.
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 takama u U\, = i ako
za svaki niz tacaka v
r
) U\,, za koji je lim
r
v
r
= v , vai lim
r
B(v
r
) = .
Neka je funkcija g(u) definisana i neprekidna na U.
0 , = u R
n
: u U, g(u) = 0), U\, =
Tada su barijerne funkcije za ovaj skup:
B(u)=]g(u)]
1
B(u)=maxln]g(u)], 0)
0 , = u R
n
: u U, g(u) _ 0), U\, =
Tada su barijerne funkcije za ovaj skup:
B(u)=(maxg(u), 0))
p
, p > 0
B(u)=]lng(u)], u U\,
U svim slucajevima vai da kada se u priblizava granici, B(u) , ne dozvoljava da se
granica predje.
Formiraju se funkcije
F
k
(u) = J(u) + a
k
B(u), 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
reenje problema (2) za fiksirano k.
F
k
-
= inf
uU\,
F
k
(u) optimalna vrednost funkcije F
k
(u)
Ako vai F
k
(u
k
) = F
k
-
, reenje u
k
je tacno (egzaktno). Cesce se uzima da je u
k
priblizno:
F
k
(u
k
) _ F
k
-
+ c
k
, c
k
> 0, lim
k
c
k
= 0 3
reenje problema (2) ne moe biti blizu , jer za tacke blizu ,, B . Za veliko k
a
k
k
0, barijera se moe preskociti, ako za takav niz vai da a
k
0 brze nego sto
B . Na taj nacin se dobija reenje iz ,. To ima smisla samo ako unutrasnjost , nije
prazna.
Problemi (2) se mogu resavati gradijetnom metodom:
u
kr+1
= u
kr
o
r
F
k
'
(u
kr
), r = 0, 1, . . .
gde je r iteracija.
u
k0
= u
k1
Pocetna iteracija se bira u
00
= U\,. Postoji neka okolina te tacke u , tako da za
neko o
0
u
01
. Ako u
01
, smanji se o
0
i proverava da li u
01
.
Ovim postupkom za dovoljno malo o
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
] _ c.
Tada je u
0r+1
reenje nultog problema, tj u
0r+1
= u
0
.
Za pocetnu iteraciju problema k=1, uzima se reenje problema k=0, onda se resava
problem za k=1:
F
1
(u) inf
u
Opet se formira niz u
10
, u
11
, . . . , u
1r
dok nije zadovoljeno ]u
1r+1
u
1r
] _ c u
1r+1
= u
1
.
Tako nastaje niz u
0
, u
1
, . . . i on treba da konvergira ka resenju problema (1).
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 vai:
lim
k
F
k
-
= lim
k
F
k
(u
k
) = lim
k
J(u
k
) = J
-
(konvergencija po vrednosti funkcije)
lim
k
a
k
B(u
k
) = 0
Ako je jos U ogranicen i zatvoren, a J(u) neprekidna, onda vai u
k
U
-
, tj
lim
k
(u
k
, U
-
) = 0 (konvergencija po argumentima).
Neka je U=u 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 moe definisati klasa barijernih funkcija:
B(u) =
_
i=1
m

i
(g
i
(u)), u = U\,
gde je
i
(t) neprekinda nenegativna funkcija za t>0 i vai 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\, vai g
j
(v
r
) < 0.
Sve g
i
su neprekidne, zato vai:
lim
r
g
j
(v
r
) = g
j
(v) = 0
B(v
r
) _
j
(g
j
(v
r
)) jer je to jedan sabirak, a
i
su nenegativne,
lim
r
B(v
r
) _ lim
r

j
(g
j
(v
r
)) = B(u) je barijerna funkcija za ,.
Za funkciju
i
(t) se moe izabrati:
0
i
(t) =
1
t
B(u)=_
i=1
m
1
g
i
(u)
, u U\,
0
i
(t) = (maxlnt, 0))
p
, p _ 0
B(u)=_
i=1
m
(maxln(g
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 p>r, 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 moe doci do
veliki gresaka, npr moguce je da se resenja ta dva problema ne poklapaju ili da cak novi
problem nema reenje. Zato se ovakav postupak ne primenju u praksi.
Ako je funkcija nelinearnog programiranja "zgodna", problem moe da se prevede na
neki drugi koji lako moe da se resi simpleksom. Ako je funkcija sledeceg oblika, onda je
rec o kvadratnom programiranju:
J(u) =
1
2
(u, Qu) + (c, u) min
Au _ b
u _ 0
1
Q
nn
simetricna, pozitivno definitna matrica, A
mn
, u, c R
n
, b R
m
Theorem taka u
-
je optimalno reenje problema (1) akko postoje vektori z
-
R
m
i
j
-
R
n
, z _ 0, j _ 0, y R
m
, y_ 0 takvi da vai:
Qu
-
A
T
z
-
+ j
-
c = 0
Au
-
+ y = b
(y, z
-
) = 0
(j
-
, 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
(Au_ b)
(u_ 0)
Formira se funkcija Lagrana za problem (1):
L(u, z, j) = J(u) +
_
i=1
m
z
i
g
i
(u) +
_
i=1
n
j
i
f
i
(u)
Kun-Takerovi uslovi optimalnosti:
cL(u
-
, z
-
, j
-
)
cu
= 0
z
i
-
g
i
(u
-
) = 0, j
i
-
f
i
(u
-
) = 0
Primenjeno na ovu funkciju dobija se:
J
'
(u) + _
i=1
m
z
i
g
i
'
(u) + _
i=1
n
j
i
f
i
'
(u)
z
i
g
i
(u) = 0, z
i
_ 0, i = 1, . . . , m
j
i
f
i
(u) = 0, j
i
_ 0, i = 1, . . . , n
3
Sistem (3) mora imati reenje 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
z j = 0
z
i
(b Au)
i
= 0, z
i
_ 0, i = 1, . . . , m
j
i
u
i
= 0, j
i
_ 0, i = 1, . . . , n
4
Uvodi se smena y=b-Au Au + y = b
Qu A
T
+ j = c
Au + y = b
z
i
y
i
= 0, i = 1, . . . , m (z, y) = 0
j
i
u
i
= 0, i = 1, . . . , n (j, u) = 0
z _ 0, j _ 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:
M =
0 A
A
T
Q
, q =
b
c
, w =
y
j
, z =
z
u
;
Pomocu ovih oznaka problem se zapisuje:
w Mz = q
(w, z) = 0
w _ 0
z _ 0
6
(w, z) = 0 w
i
z
i
= 0, i = 1, . . . , m + n
w
i
i z
i
ne mogu biti 0 u isto vreme (samo jedna od njih moe 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
reenje problema (6), tada ce poslednjih n komponenti vektora z
-
biti reenje problema
(1), tj u
-
.
z i j su Lagranovi mnozitelji koji odgovaraju ogranicenjima.
Resava se (6):
0 q_ 0 trivijalno reenje w=q, z=0 u = 0
0 Ji 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 reenje 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
J(u) =
(c,u)+o
(d,u)+[
min
Au _ b
u _ 0
1
Ogranicenja su linearna (Au_ b), skup U ogranicen. moe jos da se pretpostavi da je
(d, u) + [ > 0, sto ne utice na opstost.
Uz sve ove pretpostavke moe se problem (1) prevesti u problem linearnog
programiranja. Uvode se smene:
z =
1
(d, u) + [
, u =
y
z
(c,
y
z
) + o
(d,
y
z
) + [
=
1
z
(c, y) + o
1
z
(d, y) + [
=
(c, y) + zo
(d, y) + z[
min
Pretpostavi se da je imenilac jednak 1. Tada se problem (1) svodi na:
J
1
(y, z) = (c, u) + zd min
Ay bz _ 0
[z + (d, y) = 1
y _ 0, z _ 0
2
Problem (2) je linearan i resava se poznatim metodama.
Neka je optimalno reenje problema (2) y
-
, z
-
. Tada je reenje problema (1) u
-
=
y-
z-
(to
se moe pokazati). Zato cazi da ako postoji reenje problema (2), onda postoji i reenje
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)+o
(d,u)+[
min
Au _ b
u _ 0
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 moe se predtaviti u obliku:
u =
_
i=1
k
z
i
v
i
,
_
i=1
k
z
i
= 1, z
i
_ 0, i = 1, . . . , k
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 moe
zapisati kao:
(c, v
j ) + o
(d, v
j ) + [
_
(c, v
i ) + o
(d, v
i ) + [
odnosno
((c, v
j ) + o)((d, v
i ) + [) _ ((c, v
i ) + o)((d, v
j ) + [)
Mnozenjem ove nejednacine sa z
i
i sabiranjem desnih i levih strana dobijenih za
58
svako i, dobija se:
((c, v
j ) + o)( d,
_
i=1
k
z
i
v
i
+ [) _ ( c,
_
i=1
k
z
i
v
i
+ o)((d, v
j ) + [)
((c, v
j ) + o)((d, u) + [) _ ((c, u) + o)((d, v
j ) + [)
Dakle
J(v
j
) =
(c, v
j ) + o
(d, v
j ) + [
_
(c, u) + o
(d, u) + [
= J(u)
za svako u U, sto znaci da funkcija J(u) dostize minimum u vrhu v
j
.
59

You might also like