Documente Academic
Documente Profesional
Documente Cultură
Istoric
Planul de nvmnt
(= 10 sptmni)
ANTON BTTORESCU
Tehnici de optimizare - Cursul 1
TEHNICI DE OPTIMIZARE
CURS = 2
ORE / SPTMN
SEMINAR = 1
OR / SPTMN
Coninutul cursului:
Modele de optimizare liniar i programe software.
Algoritmul simplex primal i algoritmul simplex dual.
Interpretarea economic a valorilor i soluiilor.
Metode de partiionare i relaxare.
Metode pentru probleme de optimizare neliniar.
Bibliografie
http://www.ilog.com/
www.maximalsoftware.com
f ( x ) = ( x + 2 )( x 1)( x 3) ( x 5 ) = x 4 7 x 3 + 5 x 2 + 31x 30
f : [ 0, 5.6] R,
f ( x ) = x 4 7 x3 + 5 x 2 + 31x 30
optim {2 x + 3 y} ,
Cu ndeplinirea condiiilor:
x+ y 4
8 x + 2 y 3
5 x 3 y 15
x + 2 y 10
2 x + y 16
Rezolvare grafic
a
a
a
22
2n
A = 21
= ( aij )1i m
1 j n
a
a
a
mn
m1 m 2
unde, aij R, 1 i m, 1 j n,
nm
A R .
Transpusa matricei A o vom nota
cu
Mulimea matricelor de aceeai dimensiune formeaz un spaiu
vectorial peste corpul numerelor reale.
f
A, B Rmn , R,
1 j n
Produsul matricelor:
det A =
( ) a ( ) a ( ) a ( )
Sn
1 1
0
1
1
A A = A A = In =
0
1
0
Rnn
10
n1
n
Un vector coloana v R este considerat ca fiind o matrice v R ,
v1
v2
f
v=
= ( v1 , v2 , , vn ) , v f = ( v1 , v2 , , vn )
vn
n
x, y Rn , x f y = xi yi = y f x.
i =1
Definim relaiile:
x = y xi = yi pentru orice i = 1, n,
x y xi yi pentru orice i = 1, n y x Rn+
n particular, x 0 R
xi 0, i = 1, n.
Tehnici de optimizare - Cursul 1
11
am1 x1 + am 2 x2 + + amn xn = bm
n
unde x R reprezint vectorul necunoscutelor.
Notm:
A x = b
Ai x = bi , i = 1, m
j
A
x j = b.
j =1
12
x = A1 b.
sm
s1 s2
B
=
A
A
...
A
.
o matrice de baz:
13
Partiionarea matricei:
A = ( B R ) .
B = {s1 , s2 ,..., sm } ,
R = {1, 2,..., n} \ B .
xB
Partiionarea variabilei x R , x = ,
xR
n
xR = ( x j )
jR
n care,
Rm
Rn m
variabile secundare
14
A x = b
B xB + R xR = b
xB = B 1 b B 1 R xR
vR 0R
15
inf { f ( x ) | x P} = sup { f ( x ) | x P}
Fie Rn i R.
Tipuri de restricii n raport cu felul problemei de optimizare:
minimizare
maximizare
concordant
neconcordant
concordant
neconcordant
f x ,
f x ,
f x ,
f x ,
Forma general:
Conine toate tipurile de restricii i variabile care pot aprea.
m n j
Aij R i
concordante
egalitate
neconcordante
, bi Rmi , c j R j , 1 i 3, 1 j 3.
n
x2
oarecare;
x3
Forma standard:
Conine restricii egalitate i variabile nenegative.
inf {c f x A x = b, x 0}
Datele problemei:
A Rmn , b Rm , c Rn .
Forma canonic:
Conine restricii concordante i variabile nenegative.
inf {c f x A x b, x 0}
Datele problemei:
A Rmn , b Rm , c Rn .
Forma mixt:
Conine restricii concordante i egalitate, i variabile nenegative.
f
A1 x b1
inf c x
, x 0
A2 x = b2
A1 Rm1n , b1 Rm1
Datele problemei:
m2 n
m2
A
b
R
,
R
2
2
, c Rn .
Transformri echivalente:
f x
f
x
f x+ y =
x y =
f
y0
f x =
f x
f
x
O variabil nepozitiv
x 0 x = x 0.
O variabil oarecare
xR
x = x+ x ,
unde
x + 0, x 0.
inf {c f x | A x = b, x 0}
(P)
A v = b , v 0.
O soluie admisibil v R este o soluie optim a problemei (P),
c f v c f y.
dac oricare ar fi soluia admisibil y , avem:
n
Teorem:
1. Dac problema (P) are o soluie admisibil, atunci ea are i o
soluie admisibil de baz.
2. Dac problema (P) are o soluie optim, atunci ea are i o
soluie optim de baz.
Tehnici de optimizare - Cursul 2
Demonstraie.
n
Fie v R o soluie admisibil a problemei (P).
Considerm
k 1. Dac
Dac
astfel nct:
i =1
yi R, i = 1, k , yi > 0,
i =1
A yi = 0.
i
y 0,i
Definim vectorul:
A y = .0
x ( ) = v + y, R.
Avem: A x ( ) = A ( v + y ) = A v + A y = A v = b,
deci, x ( ) este o soluie a sistemului A x = b pentru orice
Tehnici de optimizare - Cursul 2
R.
7
Deoarece xi ( ) = 0, i = k + 1, n, avem:
x ( ) 0 xi ( ) = vi + yi 0, pentru i = 1, k .
vi
vi
dac yi > 0,
dac yi < 0.
yi
yi
vi
Definim:
>
max
y
0
1i k
dac exist yi > 0,
i
=
yi
vi
min
= 1i k yi
yi < 0
x ( ) 0,
Observaie: cel puin una dintre valorile ', '' este finit!
Pentru 0 = finit { ', ''} i0 , 1 i0 k , astfel nct vi0 + 0 yi0 = 0.
Deci, vectorul x ( 0 ) este o soluie admisibil a problemei (P) i are
cel mult ( k 1) componente nenule.
Tehnici de optimizare - Cursul 2
n
Fie v R o soluie optim a problemei (P) cu vi > 0, i = 1, k .
1
2
k
Dac A , A ,..., A
Din relaia:
rezult:
cf v cf x ( ) = cf v + cf y
[ , ] avem c f y 0.
c f y = 0.
C mn
10
inf {c f x | A x = b, x 0}
m n
m
n
unde A R , b R , c R ,
rang ( A ) = m < n.
(P)
A x = b
xB = B 1 b B 1 R xR = x Y j x j
jR
1
m
j
1
j
unde am notat: x = B b R i Y = B A , 1 j n.
Poziia indicelui
11
xB x B 1b
n raport cu baza B, soluia de baz este: x = = =
x
0
0
R
1
Matricea de baz B se numete primal admisibil, dac B b 0.
Funcia obiectiv se poate exprima astfel:
f
j
z = c x = c xB + c xR = c x Y x j + cR xR =
R
j
f
B
f
R
f
B
= cBf x ( cBf Y j c j ) x j = z ( z j c j ) x j
jR
unde am notat:
jR
z = cBf x , z j = cBf Y j , 1 j n.
jR
12
inf {c f x | A x = b, x 0}
m n
m
n
unde A R , b R , c R ,
rang ( A ) = m < n.
(P)
A x = b
xB = B 1 b B 1 R xR = x Y j x j
jR
1
m
j
1
j
unde am notat: x = B b R i Y = B A , 1 j n.
Poziia indicelui
xB x B 1b
x= = =
Soluia de baz corespunztoare lui B :
x
0
0
R
1
Matricea de baz B se numete primal admisibil, dac B b 0.
Funcia obiectiv se poate exprima astfel:
f
j
z = c x = c xB + c xR = c x Y x j + cR xR =
R
j
f
B
f
R
f
B
= cBf x ( cBf Y j c j ) x j = z ( z j c j ) x j
jR
unde am notat:
jR
z = cBf x , z j = cBf Y j , 1 j n.
jR
Definim vectorul:
xB ( ) = x Y k
locR ( k )
nm
x ( ) =
e
,
unde
R
x ( ) = elocR ( k )
R
Se verific fr dificultate c:
Rezult,
x ( ) 0,
A x ( ) = B xB ( ) + R xR ( ) = b Ak + Ak = b.
0, x ( ) este soluie admisibil pentru (P).
c f x ( ) = cBf xB ( ) + cRf xR ( ) =
= cBf ( x Y k ) + ck = z ( zk ck )
Deoarece
( zk ck ) > 0,
rezult:
lim c f x ( ) = .
Observaie.
n condiiile Teoremei de optim infinit, baza B definete o soluie nenul
A a xsistemului
= 0, x omogen
0 :
v
=
Y
B
n
vR, v =
v = elocR ( k )
R
Acest vector reprezint o direcie (raz) de-a lungul creia soluiile admisibile
xB
x ( ) = + v
0R
sunt nemrginite.
Notm vectorul
0
det B
1
1
unde
y
y
y
1 y
= 1k ,..., r 1, k , , r +1, k ,..., mk
yrk
yrk
yrk
yrk
yrk
Er ( ) = ( e1 e r 1 e r +1 e m ) =
yik
1
yrk
0
1
yrk
A j y jk
s
j =1
A j j + Ak r = 0.
s
j =1, j r
j =1, j r
sj
+ y jk r ) + Asr yrk r = 0,
adic o combinaie liniar de coloane ale matricei B care este egal cu zero
i deci toi coeficienii trebuie s fie nuli. Dar, yrk r 0. Contradicie!
Coloanele lui
A = A j y jk
k
rezult:
j =1
y jk
A = A
j =1, j r
yrk
m
sr
sj
k 1
=B
+ A
yrk
E ( )
B=B
r
1 = E ( ) B 1.
B
r
xi
xr
= min
yrk 1i m yik
atunci, matricea
yik > 0 ,
z = c B b cBf B 1 b = z .
f
)
B
este o
B 1 b 0.
B 1 b = E ( ) B 1 b = E ( ) x =
r
r
Evident,
Dac
yik
yrk
1
yrk
xr
0.
yrk
yik > 0,
Dac
xi ik xr
xi
yrk
xr
xr
yrk
yik < 0,
xi yik
xr
0.
yrk
xi
xr
xr
xi yik
= yik
0.
10
k B
= , csi , , ck ,
yik
1
yrk
0
1
yrk
x =
11
csi yik ck
= , csi , ,
+
, x =
yrk
yrk
ir
xr
x
= csi xi csi yik ck
+ csr xr csr yrk r =
yrk
ir
ir
yrk
m
m
x
x
= csi xi csi yik ck r = z ( zk ck ) r z .
1
424
3 yrk
y
i =1
i =1
rk
123 1
424
3
>0
0
z
zk
12
x = B 1 b, z = cBf x , Y = B 1 A, z f c f = cBf Y c f .
Pasul 2. (test de optimalitate) Dac z c 0, atunci s-a obinut valoarea
optim z , i soluia optim de baz xB = x , xR = 0. STOP.
Pasul 3. (test de optim infinit) Dac k R pentru care zk ck > 0 i Y k
atunci problema are optim (-)infinit. STOP.
0,
Se formeaz matricea
1 = E ( ) B 1 i se revine la Pasul 1.
B
r
Tehnici de optimizare - Cursul 3
13
x = B b; u = cB B ;
z = cBf x = cBf B 1 b = u f b;
Y = B 1 A;
z f c f = cBf Y c f = u f A c f
Componentele vectorului
Componentele lui
Yk .)
14
B 1 = ( ij )1i m
1 j m
Avem:
( )
B 1 =
ij
1 i m
1 j m
B 1 = E ( ) B 1 ,
r
de unde rezult:
rj yik
ij = ij
pentru i = 1, m, i r , j = 1, m;
yrk
rj
pentru j = 1, m.
rj =
yrk
15
x = B b = Er ( ) B 1 b = Er ( ) x =
xi = xi
xr =
yik
yrk
1
yrk
xi ik xr
xi
yrk
=
xr
xr
y
rk
yik
xr pentru i r ;
yrk
xr
.
unde r = loc ( k ) pentru k B
yrk
Tehnici de optimizare - Cursul 3
16
u = c B = , csi , , ck , Er ( ) B 1
Componenta j:
ij
cs yik ck
u j = , cs , ,
+
, =
yrk
yrk
ir
rj
f
rj
y
= csi ij csi yik ck
+ csr rj csr rj rk
yrk
ir
ir
yrk
u j = u j ( zk ck )
rj
yrk
, 1 j m.
17
1
j
y
yij ik yrj
yrk
1
Y = B A j = Er ( ) B 1 A j = Er ( ) Y j =
yrj
yrk
yij = yij
y rj =
yik
yrj pentru i = 1, m, i r ;
yrk
yrj
yrk
18
b = u b = u b
z = c B
j j
f
B
j =1
rj
z = u j ( zk ck )
yrk
j =1
m
m
zk ck ) m
(
rj b j
b j = u j b j
yrk
j =1
j =1
zk ck )
(
z = z
x
yrk
19
z j c j = cBf B 1 A j c j = u f A j c j =
ri
= ui aij c j = ui ( zk ck )
yrk
i =1
i =1
m
( zk ck ) m
ri aij
= ui aij c j
yrk
i =1
i =1
z j c j = ( z j c j )
( zk ck ) yrj
yrk
aij c j =
, 1 j n.
20
Organizarea calculelor
Tabloul simplex standard
xB
c B V.B x
c si
x si
c sr
x sr
Y B1 A
z c
cj
ck
xj
xk
x i
y ij
x r
z
y rj
y rk
zj c j
z = csi xi
i =1
y ik
z j c j = csi yij c j
i =1
zk ck
21
B1
x B x
u
c B V.B.
xk
c si
x si
x i
c sr
x sr
x r
z
ij
rj
uj
y ik
y rk
z = csi xi
i =1
m
u j = csi ij
i =1
zk ck = u f Ak ck > 0
zk c k
Y k = B 1 A k
22
Regula dreptunghiului
Elementul
trj =
trj
yrk
, j = 0, n.
i =1, m +1, i r.
tij = tij
trj tik
yrk
i = 1, m + 1, i r ,
,
j = 0, n, j k .
23
inf { c f x | A x = b, x 0 }
m n
m
unde A R , b R ,
b 0,
(P)
c Rn .
min { e f x a | A x + I m x a = b, x 0, x a 0 }
unde
(Pa)
e = (1,...,1) Rm , x a = ( xn +1 , xn + 2 ,..., xn + m ) Rm ,
f
( AI m ) Rm( n+ m) ,
rang ( AI m ) = m < n + m ;
I m1 b = b 0 ;
x 0 za = e x = xn +i 0.
a
i =1
i B este o
rang ( A ) m 1
atunci,
i0 = locB ( n + i0 ) ,
B 1 = ( ij )1i m
Demonstraie. Notm:
1 j m
Din ipotez,
0 = yi0 j = i0 k akj =
k =1
Deoarece
Deci,
Y = ( yi j ) = B 1 A .
i k akj + i i ai j , j = 1, n .
k =1, k i0
00
ai0 j =
adic, linia
k =1, k i0
i k akj , j = 1, n , Ai =
0
k =1, k i0
i k Ak ,
0
bi0 =
k =1, k i0
i k bk .
0
k {1,..., n} , yi0 k 0,
i0
atunci, se poate
din
B s fie nlocuit
( )
0.
yi0 k 0 det B
x = x , i = 1, m
i
xi0 = 0 i
z = z .
B 1 b = B 1 b 0 ,
sau
nlocuite cu o variabil
a problemei date.
(P) nu are
soluie.
nu
STOP
da
nu
n + i0 B
yi0 j = 0
da
da
j = 1, n
nu
Se nlocuiete
xn +i0 cu xk
Se elimin restricia i0
STOP
Exemple
Degenerare i ciclare
Descreterea funciei obiectiv:
zk ck )
(
z = z
x
xr 0
yrk
inf c x A x = b ( ) , x 0
f
cu b ( ) = b + j A j , > 0.
j =1
B >0
astfel nct
x ( ) = B 1 b ( ) > 0, ( 0, B ) .
x ( ) = x + j =1 Y j j , unde (Y 1 ,..., Y m ) = I m .
n
i
j i
Pe componente, pentru i = 1, m , xi ( ) = xi + 1 + yij .
j = m +1
Lum
B = min {1 ,..., m } .
Rezult, 0,
Tehnici de optimizare - Cursul 4
),
x ( ) > 0.
7
xi ( )
xr ( )
= min
1 i m
yrk
yik
r , ( 0, ') :
yik > 0 .
xs ( st ) xt ( st )
s, t cu ysk > 0, ytk > 0
,
ysk
ytk
xs
xs
xt n ysj ytj j
xt
adic,
+
st 0. Dac
= 0,
ysk ytk j =1 ysk ytk
ysk ytk
ysp ytp
p , 1 p n,
0. Altfel, det B = 0 !
ysk ytk
Demonstraie. Trebuie ca
Lum
B1
5
2
= 13
B2
= 12
3
4
D2
=8
= 17
B3
= 10
xij , i = 1, 2, j = 1, 2,3,
x12 + x22 8
x13 + x23 10
xij 0, i = 1, 2, j = 1, 2,3.
Problema 2.
v1
D1
= 13
u1
Cumpr
D2
= 17
v2
Vnd
B1
= 12
B2
=8
B3
= 10
u2
v3
Problema primal:
n raport cu
x1 0
x3 0
(P)
=========================================================================
Problema dual:
n raport cu
f
f
f
A12 u1 + A22 u2 + A32 u3 = c2
A13f u1 + A23f u2 + A33f u3 c3
u1 0
u3 0
(D)
Problema primal:
n raport cu
x1 0
x3 0
(P)
=========================================================================
Problema dual:
n raport cu
f
f
f
A12 u1 + A22 u2 + A32 u3 = c2
A13f u1 + A23f u2 + A33f u3 c3
u1 0
u3 0
(D)
Problema primal:
n raport cu
x1 0
x3 0
(P)
=========================================================================
Problema dual:
n raport cu
f
f
f
A12 u1 + A22 u2 + A32 u3 = c2
A13f u1 + A23f u2 + A33f u3 c3
u1 0
u3 0
(D)
Problema primal:
n raport cu
x1 0
x3 0
(P)
=========================================================================
Problema dual:
n raport cu
f
f
f
A12 u1 + A22 u2 + A32 u3 = c2
A13f u1 + A23f u2 + A33f u3 c3
u1 0
u3 0
(D)
10
Problema primal:
n raport cu
x1 0
x3 0
(P)
=========================================================================
Problema dual:
n raport cu
f
f
f
A12 u1 + A22 u2 + A32 u3 = c2
A13f u1 + A23f u2 + A33f u3 c3
u1 0
u3 0
(D)
11
Problema primal:
n raport cu
x1 0
x3 0
(P)
=========================================================================
Problema dual:
n raport cu
f
f
f
A12 u1 + A22 u2 + A32 u3 = c2
A13f u1 + A23f u2 + A33f u3 c3
u1 0
u3 0
(D)
12
Problema primal:
n raport cu
x1 0
x3 0
(P)
=========================================================================
Problema dual:
n raport cu
f
f
f
A12 u1 + A22 u2 + A32 u3 = c2
A13f u1 + A23f u2 + A33f u3 c3
u1 0
u3 0
(D)
13
Problema primal:
n raport cu
x1 0
x3 0
(P)
=========================================================================
Problema dual:
n raport cu
f
f
f
A12 u1 + A22 u2 + A32 u3 = c2
A13f u1 + A23f u2 + A33f u3 c3
u1 0
u3 0
(D)
14
Problema primal:
n raport cu
x1 0
x3 0
(P)
=========================================================================
Problema dual:
n raport cu
f
f
f
A12 u1 + A22 u2 + A32 u3 = c2
A13f u1 + A23f u2 + A33f u3 c3
u1 0
u3 0
(D)
15
Problema primal:
n raport cu
x1 0
x3 0
(P)
=========================================================================
Problema dual:
n raport cu
f
f
f
A12 u1 + A22 u2 + A32 u3 = c2
A13f u1 + A23f u2 + A33f u3 c3
u1 0
u3 0
(D)
16
sup { b f u | Af u c }
problema dual:
primala n form canonic: inf { c f x | A x b, x 0 }
sup { b f u | Af u c, u 0 }
problema dual:
inf { c f x }
A x b
1
1
, x0
A2 x = b2
sup { b f u + b f u }
1
1
2
2
problema dual:
n raprt cu:
Af u + Af u c ,
2
2
1 1
u1 0
Tehnici de optimizare - Cursul 5
17
Teoreme de dualitate
Fie
A Rmn , b Rm , c Rn
P = { x Rn | A x b, x 0 } ,
D = { u Rm | Af u c, u 0 }
inf { c f x | x P }
sup { b f u | u D
........................... ( P )
........................... ( D )
P , D ,
atunci x P, u D , are loc relaia: c f x b f u .
f
f
f
f
f
x
c.
u A x u b,
Af u c 0
u0
Prin urmare,
c f x x f Af u = u f A x b f u .
Tehnici de optimizare - Cursul 5
18
x P, u D ,
astfel nct
cf x = bf u ,
P , D ,
atunci,
este soluie
c f x = b f u .
b)
P = i D = .
c)
19
0n
S = A
c f
Af
0m
bf
b
0
Avem:
x 0,
u 0,
r 0,
r>0
r=0
Af u + cr 0,
A x br 0,
(1)
(2)
c f x + b f u 0,
(3)
x Af u + cr > 0,
A x + u br > 0,
(4)
(5)
c f x + b f u + r > 0.
(6)
20
Cazul r > 0.
x =
Definim:
x
r
u =
u
r
A x b i Af u c .
Deci,
x P i u D ,
adic,
P i D .
c f x b f u
c f x b f u
x i u
c f x = b f u .
21
Cazul r = 0.
P i D .
Prin absurd, dac exist x0 P i u0 D ,
avem:
Nu putem avea
A x0 b 0
f
f
u
b
u
A x0 0,
u 0
0 din (1)
x 0
f
f
f
x
c
x
A
u0 0,
f
123
A u0 c 0
0 din (2)
deci,
x f c 0 u f b . Contradicie! cu (6)
P = i D = .
Rezult:
P i D =
sau P = i D .
22
x ( ) = x0 + x , R, 0.
Avem evident x ( ) 0 i
A x ( ) = A x0 +
A x A x0 b.
0 din (2)
Deci, R, 0,
Deoarece
cf x
< b f u x0f
Af u 0,
din (6)
rezult,
x ( ) P .
0, din (1)
f
lim c f x ( ) = lim c f x0 + c
x = .
<0
23
Dac
x ,
P , D ,
respectiv
u ,
astfel nct
( A x b ) + u > 0,
( c A u ) + x > 0.
f
r>0.
x P , u D .
Atunci,
Fie
u f ( A x b ) = 0,
x f ( c Af u ) = 0.
f
f
f
c f x b f u + u f A x x f Af u = u ( A x b ) + x ( c A u ) = 0.
f
f
Adunm membru cu membru relaiile din enun i obinem: c x = b u .
24
inf { c f x | A x = b, x 0 }
sup { b f u | Af u c }
i duala ei,
unde
Fie
(P)
(D)
Notm:
n plus,
x = B 1 b 0
(primal-admisibilitatea lui B)
cBf B 1 A c f
u f = cBf B 1
u f A cf
z = cBf x = cBf B 1 b = u f b .
cBf B 1 A c f
Teorem (optim): Dac baza B este primal i dual admisibil, atunci ea
este optim pentru problemele (P) i (D).
Algoritmul simplex primal:
i=0
B(i) dual
Determin B(i)
primal admisibil
admisibil ?
nu
i i+1
nu
da
B(i) optim !
B(i) primal
Determin B(i)
dual admisibil
i=0
da
admisibil ?
B(i) optim !
nu
i i+1
nu
STOP
Fie
nu are soluie.
Demonstraie.
Definim vectorul:
f
f
1
1
Notm u = cB B i Bi linia i a lui B1.
u f ( ) = u f Bi1 , R, 0.
Tehnici de optimizare - Cursul 6
Pentru orice
j = 1, n, avem:
u f ( ) A j = u f A j Bi1 A j = z j yij z j c j
zj
yij
B dual admis.
u f ( ) b = u f b Bi1 b = z xi
lim u f ( ) b = z + lim ( xi ) = + .
>0
Problema (D) are optimul + i din T.F.D. rezult c (P) nu are soluie.
sm
s1 s2
B
=
A
A
A
Teorem (schimbarea bazei): Fie
o baz dual
admisibil i componenta xr < 0, pentru care exist j R cu yrj < 0.
Dac alegem indicele k R astfel nct
z j c j
zk ck
= min
jR
yrk
yrj
yrj < 0
z
=
c
B
b = z.
admisibil, pentru care
atunci, matricea
j = 1, n,
este o
z j c j = c B A j c j 0.
z j c j = ( z j c j )
(z
( zk ck ) yrj
yrk
c j ) 0, j = 1, n .
z j c j zk ck
z j c j = yrj
y
yrk
rj
<0
0.
zk ck )
(
z = z
x
yrk
z.
0
Tehnici de optimizare - Cursul 6
Pasul 1. Se calculeaz
x = B 1 b, z = cBf x , Y = B 1 A, z f c f = cBf Y c f 0f .
= min
yrj < 0 .
jR
yrk
y
rj
= B\ Ar
Se formeaz B
i se revine la Pasul 1.
s
1 = E ( ) B 1
UAk , se calculeaz inversa B
r
Tehnici de optimizare - Cursul 6
c B V.B x
c si
x si
c sr
x sr
Y B1 A
z c
cj
ck
xj
xk
x i
y ij
x r
y rj
y rk
zj c j
z = csi xi
i =1
y ik
z j c j = csi yij c j
i =1
zk ck
x12
x1n
a1
x21
x22
x2n
a2
Marf disponibil
m Depozite
xm1
b1
xm2
b2
n Beneficiari
xmn
am
Matricea
costurilor
bn
c11
c1n
cm1
cmn
Marf solicitat
Modelul matematic:
Costul total
i =1 j =1
x
j =1
ij
n raport cu
x
i =1
ij
ai , i = 1, m ,
Cantitatea disponibil
(oferta)
bj ,
Cantitatea solicitat
(cererea)
j = 1, n ,
xij 0, i = 1, m , j = 1, n .
Condiia natural de existen a unei soluii admisibile este:
Oferta
Cererea
m n
ai xij = xij b j
i =1
i =1 j =1
j =1 i =1
j =1
m
bj
10
x
j =1
n raport cu
ij
x
i =1
ij
i =1 j =1
= ai , i = 1, m ,
(PT)
= bj ,
j = 1, n ,
xij 0, i = 1, m , j = 1, n .
Teorem. (PT) are o soluie admisibil dac i numai dac
ai 0, i = 1, m ; b j 0, j = 1, n ;
Demonstraie.
a = b .
i =1
j =1
Rezult imediat:
xij 0, i = 1, m , j = 1, n ,
ij
a
=
x
=
x
ij ij = b j .
i
i =1
i =1 j =1
j =1 i =1 j =1
m
= ai
ai 0
bj 0
= bj
11
Dac
i =1
j =1
i =1 j =1
S = 0 ai = b j = 0 xij = 0, i, j.
ai b j
S > 0 este suficient s lum xij =
0, i = 1, m , j = 1, n .
S
m
m ab
m
bj
i j
xij =
= ai = b j , j = 1, n .
S i =1
i =1
i =1 S
n
n ab
ai n
i j
xij =
= b j = ai , i = 1, m .
S j =1
j =1
j =1 S
( c
m
S = ai = b j = xij 0.
Notm
Dac
i =1 j =1
ij
cij 0 , i = 1, m , j = 1, n .
i =1 j =1
i =1 j =1
c x
i =1 j =1
ij ij
i =1 j =1
= constant
12
x11
x12
x1n
x21
x22
x2n
xm1
xm2
xmn
= a1
1
= a2
o
f
e
r
t
a
= am
1
1
= b1
= b2
1
= bn
c
e
r
e
r
e
a
Se elimin linia m + 1
13
da
ai ai xij
i = j =1
i i +1
ai = 0
b j b j xij
da
nu
j j +1
Stop
nu
i + jm+ n
13
Exemplu.
17
11
19
7
18
16
10
14
da
ai ai xij
i = j =1
i i +1
ai = 0
b j b j xij
da
nu
j j +1
Stop
Exemplu.
nu
i + jm+ n
x11
13
17
11
19
18
16
10
15
da
ai ai xij
i = j =1
i i +1
ai = 0
b j b j xij
da
nu
j j +1
Stop
Exemplu.
nu
i + jm+ n
6
17
11
19
18
16
10
16
da
ai ai xij
i = j =1
i i +1
ai = 0
b j b j xij
da
nu
j j +1
Stop
Exemplu.
nu
i + jm+ n
x12
6
17
11
19
18
16
10
17
da
ai ai xij
i = j =1
i i +1
ai = 0
b j b j xij
da
nu
j j +1
Stop
Exemplu.
nu
i + jm+ n
0
17
11
19
12
16
10
18
da
ai ai xij
i = j =1
i i +1
ai = 0
b j b j xij
da
nu
j j +1
Stop
Exemplu.
nu
i + jm+ n
x22
17
11
19
12
16
10
19
da
ai ai xij
i = j =1
i i +1
ai = 0
b j b j xij
da
nu
j j +1
Stop
Exemplu.
nu
i + jm+ n
12
5
11
19
16
10
20
da
ai ai xij
i = j =1
i i +1
ai = 0
b j b j xij
da
nu
j j +1
Stop
Exemplu.
nu
i + jm+ n
6
12
0
x23
5
11
19
16
10
21
da
ai ai xij
i = j =1
i i +1
ai = 0
b j b j xij
da
nu
j j +1
Stop
Exemplu.
nu
i + jm+ n
6
12
0
5
0
11
19
16
10
22
da
ai ai xij
i = j =1
i i +1
ai = 0
b j b j xij
da
nu
j j +1
Stop
Exemplu.
nu
i + jm+ n
6
12
0
5
x33
11
19
16
10
23
da
ai ai xij
i = j =1
i i +1
ai = 0
b j b j xij
da
nu
j j +1
Stop
Exemplu.
nu
i + jm+ n
6
12
0
5
7
19
16
10
24
da
ai ai xij
i = j =1
i i +1
ai = 0
b j b j xij
da
nu
j j +1
Stop
Exemplu.
nu
i + jm+ n
6
12
0
5
4
0
x34
7
19
16
10
25
da
ai ai xij
i = j =1
i i +1
ai = 0
b j b j xij
da
nu
j j +1
Stop
Exemplu.
nu
i + jm+ n
6
12
0
5
4
0
7
0
19
10
26
da
ai ai xij
i = j =1
i i +1
ai = 0
b j b j xij
da
nu
j j +1
Stop
Exemplu.
nu
i + jm+ n
6
12
0
5
4
0
7
x44
19
10
27
da
ai ai xij
i = j =1
i i +1
ai = 0
b j b j xij
da
nu
j j +1
Stop
Exemplu.
nu
i + jm+ n
6
12
0
5
4
0
7
10
10
28
da
ai ai xij
i = j =1
i i +1
ai = 0
b j b j xij
da
nu
j j +1
Stop
Exemplu.
nu
i + jm+ n
6
12
0
5
4
0
7
x45
10
10
29
da
ai ai xij
i = j =1
i i +1
ai = 0
b j b j xij
da
nu
j j +1
Stop
Exemplu.
nu
i + jm+ n
6
12
0
5
4
0
7
10
30
da
ai ai xij
i = j =1
i i +1
ai = 0
b j b j xij
da
nu
j j +1
Stop
Exemplu.
nu
i + jm+ n
6
12
13
5
4
18
17
7
11
10
16
10
19
31
cij = min
J = {1, 2, , n}
rI , kJ
ai ai xij
{ crk }
b j b j xij
I I \{ i }
nu
da
?
da
Stop
ai = 0
I = J =
J J \{ j }
nu
Exemplu.
5
13
17
11
19
Matricea costurilor
18
16
10
32
cij = min
J = {1, 2, , n}
rI , kJ
ai ai xij
{ crk }
b j b j xij
I I \{ i }
nu
da
?
da
Stop
ai = 0
I = J =
J J \{ j }
nu
Exemplu.
13
11
19
Matricea costurilor
x24
18
16
17
10
33
cij = min
J = {1, 2, , n}
rI , kJ
ai ai xij
{ crk }
b j b j xij
I I \{ i }
nu
da
?
da
Stop
ai = 0
I = J =
J J \{ j }
nu
Exemplu.
13
11
19
Matricea costurilor
16
18
10
34
cij = min
J = {1, 2, , n}
rI , kJ
ai ai xij
{ crk }
b j b j xij
I I \{ i }
nu
da
?
da
Stop
ai = 0
I = J =
J J \{ j }
nu
Exemplu.
x13
13
11
19
Matricea costurilor
16
18
10
35
cij = min
J = {1, 2, , n}
rI , kJ
ai ai xij
{ crk }
b j b j xij
I I \{ i }
nu
da
?
da
Stop
ai = 0
I = J =
J J \{ j }
nu
Exemplu.
9
11
19
Matricea costurilor
16
18
10
36
cij = min
J = {1, 2, , n}
rI , kJ
ai ai xij
{ crk }
b j b j xij
I I \{ i }
nu
da
?
da
Stop
ai = 0
I = J =
J J \{ j }
nu
Exemplu.
5
Matricea costurilor
4
16
1
11
x41
7
19
18
10
37
cij = min
J = {1, 2, , n}
rI , kJ
ai ai xij
{ crk }
b j b j xij
I I \{ i }
nu
da
?
da
Stop
ai = 0
I = J =
J J \{ j }
nu
Exemplu.
5
Matricea costurilor
4
16
1
11
7
0
12
18
10
38
cij = min
J = {1, 2, , n}
rI , kJ
ai ai xij
{ crk }
b j b j xij
I I \{ i }
nu
da
?
da
Stop
ai = 0
I = J =
J J \{ j }
nu
Exemplu.
5
Matricea costurilor
x15
16
4
1
11
7
0
12
18
10
39
cij = min
J = {1, 2, , n}
rI , kJ
ai ai xij
{ crk }
b j b j xij
I I \{ i }
nu
da
?
da
Stop
ai = 0
I = J =
J J \{ j }
nu
Exemplu.
5
Matricea costurilor
4
16
0
1
11
7
0
12
18
6
40
cij = min
J = {1, 2, , n}
rI , kJ
ai ai xij
{ crk }
b j b j xij
I I \{ i }
nu
da
?
da
Stop
ai = 0
I = J =
J J \{ j }
nu
Exemplu.
5
Matricea costurilor
9
x22
4
16
0
1
11
7
0
12
18
6
41
cij = min
J = {1, 2, , n}
rI , kJ
ai ai xij
{ crk }
b j b j xij
I I \{ i }
nu
da
?
da
Stop
ai = 0
I = J =
J J \{ j }
nu
Exemplu.
5
Matricea costurilor
9
1
4
16
0
0
11
7
0
12
17
6
42
cij = min
J = {1, 2, , n}
rI , kJ
ai ai xij
{ crk }
b j b j xij
I I \{ i }
nu
da
?
da
Stop
ai = 0
I = J =
J J \{ j }
nu
Exemplu.
5
Matricea costurilor
9
1
4
16
0
x35
7
0
11
12
17
6
43
cij = min
J = {1, 2, , n}
rI , kJ
ai ai xij
{ crk }
b j b j xij
I I \{ i }
nu
da
?
da
Stop
ai = 0
I = J =
J J \{ j }
nu
Exemplu.
5
Matricea costurilor
9
1
4
16
0
6
7
0
5
12
17
0
44
cij = min
J = {1, 2, , n}
rI , kJ
ai ai xij
{ crk }
b j b j xij
I I \{ i }
nu
da
?
da
Stop
ai = 0
I = J =
J J \{ j }
nu
Exemplu.
5
Matricea costurilor
9
1
4
16
0
6
x42
17
5
12
0
45
cij = min
J = {1, 2, , n}
rI , kJ
ai ai xij
{ crk }
b j b j xij
I I \{ i }
nu
da
?
da
Stop
ai = 0
I = J =
J J \{ j }
nu
Exemplu.
5
Matricea costurilor
9
1
4
16
0
6
12
5
0
0
46
cij = min
J = {1, 2, , n}
rI , kJ
ai ai xij
{ crk }
b j b j xij
I I \{ i }
nu
da
?
da
Stop
ai = 0
I = J =
J J \{ j }
nu
Exemplu.
9
x32
Matricea costurilor
12
4
16
0
0
5
0
0
47
cij = min
J = {1, 2, , n}
rI , kJ
ai ai xij
{ crk }
b j b j xij
I I \{ i }
nu
da
?
da
Stop
ai = 0
I = J =
J J \{ j }
nu
Exemplu.
9
Matricea costurilor
12
4
16
0
0
0
0
0
48
cij = min
J = {1, 2, , n}
rI , kJ
ai ai xij
{ crk }
b j b j xij
I I \{ i }
nu
da
?
da
Stop
ai = 0
I = J =
J J \{ j }
nu
Exemplu.
9
Matricea costurilor
12
18
4
16
13
17
11
19
16
10
49
6
12
Metoda colului de N V.
Costul total = 193
13
5
4
17
7
11
10
19
18
16
10
Matricea costurilor
12
18
4
16
13
17
11
19
16
10
50
6
12
Metoda colului de N V.
Costul total = 193
13
5
4
17
7
11
10
19
18
16
10
Matricea costurilor
12
18
4
16
13
17
11
19
16
10
3
6
6
10
13
11
17
11
12
19
18
16
10
Matricea costurilor
12
18
4
16
13
17
11
19
16
10
Testul de optimalitate
Forma standard a problemei de transport:
m
x
j =1
n raport cu
ij
x
i =1
ij
= ai , i = 1, m ,
(PT)
= bj ,
j = 1, n ,
xij 0, i = 1, m , j = 1, n .
Condiia de existen a soluiei:
ai 0, i = 1, m ; b j 0, j = 1, n ;
a = b .
i =1
j =1
c12
c1n
c21
c22
c2n
cm1
cm2
cmn
x11
x12
x1n
x21
x22
x2n
xm1
xm2
xmn
= a1
1
= a2
= am
1
1
= b1
= b2
1
= bn
Rangul matricei
este
1 restriciilor
1 m + n 1.
xij ,
n particular, pentru
( i, j ) B , zij cij = 0.
Rezult,
xij ,
ij
unde
Ao( ) Rm + n 1.
ij
ui + v j = cij , ( i, j ) B ,
ui + v j cij , ( i, j ) B .
( i, j ) B
( ui , v j ) , ( i, j ) B
Dac
zij cij 0, ( i, j ) , 1 i m, 1 j n.
Avem:
Dar,
( i, j ) B
c11
c12
c1n
c21
c22
c2n
cm1
cm2
cmn
x11
x12
x1n
x21
x22
x2n
xm1
xm2
xmn
1
1
1
1
u1
= a2
u2
= am
um
= b1
v1
= b2
v2
= bn
vn
Duala problemei
1 de transport:
1
n
m
max ai ui + b j v j
j =1
i =1
= a1
ui + v j cij , i = 1, m , j = 1, n
(DT)
xij ,
respectiv
(u , v ) ,
i
1 i m , 1 j n,
ui xij ai = 0, i = 1, m ,
j =1
v j xij b j = 0,
i =1
Condiii evident
satisfcute !
j = 1, n ,
xij ( ui + v j cij ) = 0, i = 1, m, j = 1, n .
Condiii evident
satisfcute pentru
xij = 0, ( i, j ) B .
xij > 0, ( i, j ) B ,
pentru ca aceasta s fie optim, trebuie ca: ui + v j cij = 0, ( i , j ) B .
Dac soluia admisibil de baz este:
ui + v j = cij , ( i, j ) B .
card ( B ) = m + n 1 ecuaii i m + n variabile.
Considerm sistemul:
Acesta are
ui , i = 1, m, v j , j = 1, n,
Dac
soluia obinut.
ui + v j cij , ( i, j ) B ,
xij ,
( i, j ) B ,
soluie de baz
optim pentru problema (PT).
( r, k ) B ,
ur + vk > crk .
xrk = x 0.
xst
B \ ( s, t )
y( st )( rk )
xij
= min
( ij )B
y( ij )( rk )
xij = xij
xrk =
y(ij )( rk )
y( st )( rk )
xst
y( st )( rk )
y( ij )( rk ) > 0
= B \ ( s, t ) U( r , k )
B
xst , ( i, j ) B \ ( s, t ) ,
= x 0.
Y(
rk )
= B 1 Ao(
rk )
i1 , i2 , , i p {1, 2, , m} ,
Definiie. Mulimea perechilor
se numete ciclu.
j1 , j2 , , j p {1, 2, , n} .
( i1 , j1 ) , ( i1 , j2 ) , ( i2 , j2 ) , , ( i p , j p ) , ( i p , j1 )
A(ij ) = ei + e m+ j Rm+ n
(i j )
(i j )
i j
A(i1 j1 ) A( i1 j2 ) + A(i2 j2 ) A( 2 3 ) + + A p p A p 1 =
m+ j p
e p em+ j1 = 0.
i
nu conine cicluri.
10
Y(
Ao( rk ) = B Y ( rk ) =
( ij )B
rk )
) B ,
= B 1 Ao( ) .
rk
y(ij )( rk ) Ao(ij )
0
C=
pentru care
( rj1 )
=A
( i1 j1 )
A
1
Rezult:
y(ij )( rk ) =
2p-2
2p-1
{ ( r , k ) , ( r , j ) , ( i , j ) , , ( i , j ) , ( i , k ) }
1
B
( rk )
pentru
1 pentru
0 pentru
( i1 j2 )
+A
(ip j p )
(ip k )
A
+A .
( i, j ) C de ordin impar
( i, j ) C de ordin par
( i, j ) C
11
xst
y( st )( rk )
= min
( ij )B
xij
y( ij )( rk )
y( ij )( rk ) > 0
= +1
adic,
( s, t )
( i, j ) C
de ordin impar
va prsi baza B .
12
xij = xij
xrk =
Rezult:
xij =
y(ij )( rk )
y( st )( rk )
xst
y( st )( rk )
xst , ( i, j ) B \ ( s, t ) ,
= x 0.
xij x pentru
xij + x pentru
xij
= + 1, 1, 0
pentru
= +1
( i, j ) C de ordin impar
( i, j ) C de ordin par
( i, j ) C
13
Exemplu
B = {(1,3) , (1,5 ) , ( 2, 2 ) , ( 2, 4 ) , ( 3, 2 ) , ( 3,5 ) , ( 4,1) , ( 4, 2 )}
Matricea costurilor
12
18
4
16
13
17
11
19
16
10
14
( i, j ) B
ui + v j = cij pentru
Valoare iniial: v2 = 0 .
vj
ui
Matricea costurilor
12
18
4
16
13
17
11
19
16
10
15
( i, j ) B
ui + v j = cij pentru
Valoare iniial: v2 = 0 .
vj
ui
Matricea costurilor
12
18
4
16
13
17
11
19
16
10
16
( i, j ) B
ui + v j = cij pentru
Valoare iniial: v2 = 0 .
vj
ui
Matricea costurilor
12
18
4
16
13
17
11
19
16
10
17
( i, j ) B
ui + v j = cij pentru
Valoare iniial: v2 = 0 .
vj
ui
Matricea costurilor
12
18
4
16
13
17
11
19
16
10
18
( i, j ) B
ui + v j = cij pentru
Valoare iniial: v2 = 0 .
vj
ui
Matricea costurilor
12
18
4
16
13
17
11
19
16
10
19
( i, j ) B
ui + v j = cij pentru
Valoare iniial: v2 = 0 .
vj
ui
-2
9
Matricea costurilor
12
18
4
16
13
17
11
19
16
10
20
( i, j ) B
ui + v j = cij pentru
Valoare iniial: v2 = 0 .
vj
ui
-2
-1
9
Matricea costurilor
12
18
4
16
13
17
11
19
16
10
21
( i, j ) B
ui + v j = cij pentru
Valoare iniial: v2 = 0 .
vj
-1
4
3
ui
-2
-1
Matricea costurilor
12
18
4
16
13
17
11
19
16
10
22
( i, j ) B
ui + v j = cij pentru
Valoare iniial: v2 = 0 .
vj
-1
4
3
ui
-2
-1
Matricea costurilor
12
18
4
16
13
17
11
19
16
10
23
( i, j ) B
ui + v j = cij pentru
Valoare iniial: v2 = 0 .
vj
-1
-2
-2
-1
ui
Matricea costurilor
12
18
4
16
13
17
11
19
16
10
24
( i, j ) B
ui + v j = cij pentru
Valoare iniial: v2 = 0 .
vj
-1
-2
-2
-1
ui
Matricea costurilor
12
18
4
16
13
17
11
19
16
10
25
vj
ui + v j cij pentru
( i, j ) B
-1
-2
-2
-1
ui
Matricea costurilor
12
18
4
16
13
17
11
19
16
10
26
vj
ui + v j cij pentru
( i, j ) B
u3 + v4 > c34
( 3, 4 ) B
-1
-2
-2
-1
ui
Matricea costurilor
?
!
12
18
4
16
13
17
11
19
16
10
27
vj
C = {( 3, 4 )}
-1
-2
-2
-1
16
+x
ui
Matricea costurilor
12
18
13
17
11
19
16
10
28
vj
C = {( 3, 4 ) , ( 3, 2 )}
-1
-2
-2
-1
16
5-x
+x
ui
Matricea costurilor
12
18
13
17
11
19
16
10
29
vj
C = {( 3, 4 ) , ( 3, 2 ) , ( 2, 2 )}
-1
-2
-2
-1
1+x
16
5-x
+x
ui
Matricea costurilor
12
18
13
17
11
19
16
10
30
vj
C = {( 3, 4 ) , ( 3, 2 ) , ( 2, 2 ) , ( 2, 4 )}
-1
-2
-2
-1
1+x
16-x
5-x
+x
ui
Matricea costurilor
12
18
13
17
11
19
16
10
31
C = {( 3, 4 ) , ( 3, 2 ) , ( 2, 2 ) , ( 2, 4 )}
x = min { 5, 16 } = 5
vj
-1
-2
-2
-1
1+x
16-x
5-x
+x
ui
Matricea costurilor
12
18
13
17
11
19
16
10
32
( i, j ) B
ui + v j = cij pentru
Valoare iniial: u1 = 0 .
vj
ui
Matricea costurilor
9
6
4
11
5
12
18
13
17
11
19
16
10
33
vj
ui + v j cij pentru
ui
Matricea costurilor
( i, j ) B
9
6
4
11
5
12
18
13
17
11
19
16
10
34
ui + v j cij pentru
( i, j ) B
vj
+3
+1
ui
Matricea costurilor
9
6
4
11
5
12
18
13
17
11
19
16
10
35
ui + v j = cij
C = {( 4,3)}
vj
ui
Matricea costurilor
9
6
4
11
5
12
+x
18
13
17
11
19
16
10
36
ui + v j = cij
C = {( 4,3) , (1,3)}
vj
ui
Matricea costurilor
9-x
6
4
11
5
12
+x
18
13
17
11
19
16
10
37
ui + v j = cij
ui
Matricea costurilor
9-x
6
4+x
11
5
12
+x
18
13
17
11
19
16
10
38
ui + v j = cij
ui
Matricea costurilor
9-x
6
4+x
11
5
12
+x
18
13
17
6-x
11
19
16
10
39
ui + v j = cij
ui
Matricea costurilor
9-x
6
4+x
11
5+x
12
+x
18
13
17
6-x
11
19
16
10
40
ui + v j = cij
ui
Matricea costurilor
9-x
6
4+x
11-x
5+x
12
+x
18
13
17
6-x
11
19
16
10
41
ui + v j = cij
ui
Matricea costurilor
9-x
6+x
4+x
11-x
5+x
12
+x
18
13
17
6-x
11
19
16
10
42
ui + v j = cij
ui
Matricea costurilor
9-x
6+x
4+x
11-x
5+x
12-x
+x
18
13
17
6-x
11
19
16
10
43
ui + v j = cij
ui
Matricea costurilor
9-x
6+x
4+x
11-x
5+x
12-x
+x
18
13
17
6-x
11
19
16
10
44
ui + v j cij pentru
( i, j ) B
vj
0
0
ui
+3
+3
+1
Matricea costurilor
3
12
3
3
18
10
13
17
11
11
19
16
10
45
K {1, 2, , n}
K = {1, 2, , n}
Notaii:
(P*)
P0 = { x Rn A x = b, x 0}
Evident,
P* = { x P0 xk Z, k K }
P0 P *
inf {c f x x P0 }
(P*)
inf {c f x x P *}
x P *, atunci x
P0 P *
Demonstraie.
Avem:
c f x = inf {c f x x P0 } inf {c f x x P *} c f x
Pe de alt parte,
Rezult,
c f x = inf { c f x x P * } .
x P *
Soluia optim.
Stop
Rezolv (Pi )
i=0
c f x = inf c f x
xPi
Determin
x P *
nu
Pi +1 = Pi ( i )
x Pi +1
ii+1
Observaie:
P0 P1 Pi Pi+1 P *.
Tehnici de optimizare - Cursul 8
xsk = xk ykj x j
Avem:
jR
xk = xk + f k 0
ykj = ykj + f kj
Introducem notaiile:
Rezult,
xsk Z.
Dar, x P *
n plus, avem:
jR
f
jR
Se adaug restricia:
kj
x j 0 & f k 0 ( 0,1)
( f ) x
jR
kj
fk 0 .
xB x
x= =
xR 0
( f ) x
jR
kj
x nu verific restricia
= 0 fk 0 < 0 .
Contradicie!
Pi +1 = Pi ( i ) = x Pi
( f ) x
jR
kj
Implementare.
Fie B(i) o baz optim pentru (Pi ). Pentru (Pi+1 ) considerm matricea:
B( i +1)
B( i )
= f
0
B(i 1+1)
B(i 1) 0
=
0f 1
x( i )
0
B
(i )
( i ) b( i )
(i )
1
x(i +1) = B( i +1) b( i +1) =
=
0
=
0f 1 f f f
k0
k0
k0
j
j
1
A
Y
0
B
(i )
(i )
(i )
1
j
j
kj kj
j
Y
(i )
( i +1)
(i )
j
f
f
z j c j = cB(i+1) Y( i +1) c j = cB(i ) , 0
cj = zj cj 0
f
k0
(i )
x
i +1
i +1
(i )
z ( ) = cBf (i+1) x ( ) = cBf (i ) , 0
= z
fk 0
Tabloul simplex:
x si
xj
xp
x i
x sk
y ip
x k f k0
y i
y ij
y i
y kj f kj
y kp f kp
f k0
f kj
f kp
zj cj
zp cp
min {2x1 x2 }
Exemplu.
n raport cu
x1
x1
2 x1
+
+
x2
x2
1
3
x1 , x2 Z+
Rezolvare grafic:
x x 1 x 2 x 3 x 4 x 5
x1 x2
x3 x4 x5
x 3 1 1
x3
7
2
1
2
x4 3
x4
1
2
1
2
x5 5
x1
5
2
1
2
x1 x2 x3 x4 x5
x3
x2
1
2
x1
5
2
11
2
0
1
0
0
1
0
0
1 1
1
2
1
2
0 1
1
2
x1 x2 x3 x4
x5
x3
1 1
x2
1
2
1
2
x1
5
2
1
2
1
2
1
2
11
2
0 1
1
2
x1 x2 x3 x4
x5
x3
x2
1
2
1
2
x1
5
2
1
2
1
2
1
2
11
2
1
2
x1 x2 x3 x4 x5
x3
1 1 0
1
2
x2
0 1
x1
1 2
5 0
0 1 0 1
A1
D1
unde
A2
D2
Ak
Dk
Ai Rm0 ni , Di Rmi ni , 1 i k .
1.
2.
Problema iniial
Tehnici de optimizare - Cursul 9
Rezultate preliminare
n
Definiie. Fie X R o mulime convex. Mulimea punctelor extreme
Ext ( X ) = x X a, b X \ { x} , x a + (1 ) b, [ 0,1]
Co ( Ext ( X ) ) = X .
nevid i mrginit
i
i Ext ( X ) = x , 1 i r . Atunci, orice element x X poate fi scris sub
r
r
forma:
i
x = i x ,
i 0,
i =1
= 1.
i =1
Principiul de descompunere
Considerm problema
inf c f x
A x = b0
Dx = b
( m0 restricii )
( m restricii )
x0
S = { x Rn | D x = b, x 0} mrginit i
Ext ( S ) = { x j , 1 j r} .
Prin urmare,
x S ,
x = i x ,
i
i 0,
i =1
j =c x
j = A x j
f
Notm:
= 1.
i =1
inf { c f x x S & A x = b0 }
r
j
r
inf
j j
j =1
Programul principal:
j = b0
j =1
r
= 1,
j 0, 1 j r
j =1
inf
j j
j =1
Avem doar
m0 + 1
j = b0
restricii !
j =1
r
= 1,
j 0, 1 j r
j =1
Numrul de
variabile/coloane:
r = card(Ext(S)).
n
Printr-o procedur de faz 1 aplicat mulimii S = x R | D x = b, x 0
determinndu-se apoi l m0 + 1 puncte extreme.
s
f
f
u s = max u
1 j r
Partiionm vectorul
u f = ( u0f , u1 ) ,
j
j 0.
u0 Rm0 , u1 R.
j
A x j f j
f
f
f
j
u j = ( u0 , u1 )
x
=
u
x
+ u1
(
)
0
1
1
f
f
max u
1 j r
= maxn
xR
j
j = jmax ( u0f A c f ) x j + u1
1
x Ext ( S )
{ (u
f
0
A c f ) x D x = b, x 0 + u1 =
b0
= B .
1
1
x = i x i
iB
soluia optim a
problemei iniiale
s A xs
Dac > 0, coloana care intr n baz este: =
,
1 1
f
s
avnd coeficientul de cost: s = c x .
Efectund operaia de schimbare a bazei n programul principal, se obine o
nou baz primal admisibil i calculele se reiau cu testul de optimalitate.
inf {c1f x1 +
Acest procedeu devine
atractiv dac se aplic la
A1 x1 +
c2f x 2 + + ckf x k }
A2 x 2 + + Ak x k
D1 x1
= b1
D2 x 2
probleme bloc-unghiulare:
= b0
= b2
Dk x k
= bk
xi 0, i = 1, k , k > 0
Ai Rm0 ni , Di Rmi ni , ci Rni , bi Rmi .
Tehnici de optimizare - Cursul 9
k f
max ( u0 Ai cif ) xi
i =1
Di xi = bi , xi 0, i = 1, k
maxn
xi
R i
{ (u A c ) x
f
0
Di xi = bi , xi 0 ,
i = 1, k .
2.
xi ( u0 ) , i = 1, k .
= ( u0f Ai cif ) xi ( u0 ) + u1
k
1.
Se calculeaz
i =1
1.
x = i x i
iB
ni
S = x Ri=1
1.
D1
b1
b
Dk
k
s
Ai xi ( u0 )
= i =1
m0 +1
inf i i +
i =1
m0 +1
i + = b0
i =1
m0 +1
+ = 1
i
i =1
i 0, i = 1, m0 + 1, 0