Bài ging quy hoch toán
Chng 1. BÀI TOÁN QUY HOCH TUYN TÍNH
PHNG PHÁP HÌNH HC
1.1. Các bài toán thc t
1.1.1. Bài toán lp k hoch sn xut
a) Ví d sn xut ko và bánh cn 2 th nguyên liu chính là đng và bt mì,
vi tr lng hin có là 0,9kg đng và 1,1 kg bt mì. 1kg ko cn 0,5 kg đng và 0,3
kg bt mì; 1kg bánh cn 0,2kg đng và 0,4 kg bt mì.
Giá 1kg ko là 10000đ; 1kg bánh là 20000đ. Hãy lp k hoch sn xut sao cho
tng giá tr sn phm ln nht.
Gi x
1
là s kg ko đc sn xut; x
2
là s kg bánh đc sn xut.
Có mô hình toán hc:
f(x) = 10000x
1
+20000x
2
max
⎪
⎩
⎪
⎨
⎧
≥
≤+
≤+
0,
1.14.03.0
9.02.05.0
21
21
21
xx
xx
xx
b)Tng quát sn xut n loi sn phm khác nhau cn m loi yu t sn xut
vi tr lng hin có là b
1
, b
2
, , b
m
. H s hao phí yu t i ( i=1 m ) cho 1 đn v sn
phm j (j=1 n) là a
ij
. Giá 1 đn v sn phm j là c
j
(j=1 n). Hãy lp k hoch sn xut
trên c s các yu t sn xut hin có sao cho tng giá tr sn phm ln nht.
Gi x
j
là s sn phm j đc sn xut,
f(x) là tng doanh thu ng vi k hoch sn xut x = (x
1
,x
2
, , x
n
).
Có mô hình toán hc:
f(x) =
c
∑
=
n
j 1
j
x
j
max
⎪
⎩
⎪
⎨
⎧
=≥
=≤
∑
=
) 1(0
) 1(
1
njx
mibxa
j
ij
n
j
ij
Bài ging quy hoch toán
1.1.2. Bài toán vn ti
Có m kho hàng cha cùng 1 loi hàng hóa vi s lng kho i là ai (i=1 m).
ng thi có n ca hàng vi nhu cu ca hàng j là bj (j=1 n). Chi phí vn chuyn 1
đn v hàng t kho i đn ca hàng j là c
ij
. Hãy lp k hoch vn chuyn sao cho tha mãn
nhu cu các ca hàng và chi phí vn chuyn thp nht.
Gi x
ij
là s lng hàng chuyn t kho i đn ca hàng j
f(x) là tng chi phí theo k hoch vn chuyn x.
Mô hình toán hc:
f(x) =
∑
∑
c
=
m
i 1 =
n
j 1
ij
x
ij
min
⎪
⎪
⎪
⎪
⎩
⎪
⎪
⎪
⎪
⎨
⎧
==≥
==
=≤
∑
∑
=
=
) 1, 1(0
) 1(
) 1(
1
1
njmix
njbx
miax
ij
j
m
i
ij
i
n
j
ij
1.1.3. Bài toán xác đnh khu phn
Có n loi thc n gia súc, giá 1 đn v thc n j là c (j=1 n). Gia súc cn m cht
dinh dng vi nhu cu ti thiu cht i là b
i
(i=1 m). Bit hàm lng cht i có trong 1
đn v thc n j là a
ij
. Hãy xác đnh khu phn thc n cho gia súc sao cho chi phí thp
nht đng thi đm bo các cht dinh dng cho gia súc.
Gi x
j
là lng thc n j có trong khu phn,
f(x) là giá khu phn x = (x
1
,x
2
, , x
n
).
Có mô hình toán hc sau:
f(x) =
c
∑
=
n
j 1
j
x
j
min
⎪
⎩
⎪
⎨
⎧
=≥
=≥
∑
=
) 1(0
) 1(
1
njx
mibxa
j
ij
n
j
ij
1.2. Bài toán qui hoch tuyn tính
Xét bài toán
Bài ging quy hoch toán
(1) f(x) = c
∑
=
n
j 1
j
x
j
min
(2)
⎪
⎪
⎪
⎪
⎩
⎪
⎪
⎪
⎪
⎨
⎧
+=≤
+=≥
==
∑
∑
∑
=
=
=
) 1(
) 1(
) 1(
1
1
1
mkibxa
kpibxa
pibxa
ij
n
j
ij
ij
n
j
ij
ij
n
j
ij
Bài toán (1,2) gi là bài toán quy hoch tuyn tính dng tng quát, ký hin là (d,f).
* f(x) gi là hàm mc tiêu.
* H (2) gi là h ràng buc.
* Ma trn A = (a
ij
)
mxn
gi là ma trn s liu.
* Vect C = (c
j
)
n
gi là h s hàm mc tiêu.
Mi b s x=(x
1
, x
2
, , x
n
) tha mãn h ràng buc (2) gi là phng án, ký hiu x
∈
d.
Phng án làm cho hàm mc tiêu f(x) đt cc tr cn tìm gi là phng án ti u, hay là
nghim ca bài toán (d,f) .
1.3. Phng pháp hình hc
Phng pháp hình hc dùng đ gii bài toán (d,f) 2 n, hoc nhiu hn 2 n
nhng có th đa v bài toán 2 n tng đng.
Xét bài toán
f(x) = ax +by min (max)
(d)
{
) 1( miciybxa
ii
=≤+
Min d d là giao các na mt phng, hay là mt đa giác. Bài toán có th phát biu bng
hình hc nh sau:
Tìm trong h đng thng song song ax+ by = f gi là h đng mc ,mt đng mc
ng vi f nh nht (ln nht) có ít nht 1 đim chung vi min d.
Ví d 1.1
f(x,y) = x + 2y max
⎪
⎩
⎪
⎨
⎧
≥
≤+
≤+
0,
1143
925
yx
yx
yx
Bài ging quy hoch toán
y
A(0,11/4)
B(1,2)
d
O C(9/5,0) x
Qua hình v thy đng thng qua A(0,
4
11
) ng vi f ln nht. Vy nghim là x
1
=0,
x
2
=
4
11
và f
max
=
2
11
.
Nhn xét
- Nghim là đnh ca đa giác.
- Nu hàm mc tiêu là f(x,y) = 3x + 4y thì nghim là c đon thng AB.
- Giá tr f ca h đng mc tng theo chiu ca pháp vect.
Ví d 1.2
f(x,y) = x + y max
⎪
⎩
⎪
⎨
⎧
≥
≤−
−≥−
0,
22
1
yx
yx
yx
d
A(0,1)
O B(2,0)
Theo hình v, hàm mc tiêu không b chn trên trong min d nên bài toán vô nghim.
oOo
Bài ging Quy hoch toán hc Trang 5
________________________________________________________________________
1.4. Bài tp
Gii các bài toán sau bng phng pháp hình hc
1. f(x) = x + 2y → max 2. f(x) = 5x - 3y → min
36
34 1
00
xy
xy
xy
+≤
+≤
≥≥
⎧
⎨
⎪
⎩
⎪
,
2
xy
xy
xy
+≤
+≥
≥≥
⎧
⎨
⎪
⎩
⎪
24
36
00,
3. f(x) = 3x + y → max 4. f(x) = 2x + 3y +10 → max
−+≥
+≤
≥≥
⎧
⎨
⎪
⎩
⎪
36
351
00
xy
xy
xy,
5
36
4
24
00
xy
xy
xy
xy
+
≤
+≤
+≤
≥≥
⎧
⎨
⎪
⎪
⎩
⎪
⎪
,
5. f(x) = 2x + 5y → max 6. f(x) = x + 3y → max
22
8
3
21
00
xy
xy
xy
xy
xy
+≥
+≤
+≥
+≤
≥≥
⎧
⎨
⎪
⎪
⎪
⎩
⎪
⎪
⎪
,
2
xy
xy
xy
+≤
+≥
≥≥
⎧
⎨
⎪
⎩
⎪
36
4
00,
7. f(x) = x + 2y → max 8. f(x) = 2x + 3y → min
xy
xy
xy
+≤
+≤
≥≥
⎧
⎨
⎪
⎩
⎪
8
21
00,
4
xy
xy
xy
xy
+
≥
+≥
+≥
≥≥
⎧
⎨
⎪
⎪
⎩
⎪
⎪
28
36
34 1
00,
2
0
0
9. f(x) = 5x
1
+ 2x
2
+ 3x
3
→ max 10. f(x) = 2x
1
+ x
3
→ min
xxx
xx x
xx x
xxx
123
12 3
12 3
123
1
253 4
432
00
++=
++≤
++ ≤
≥≥≥
⎧
⎨
⎪
⎪
⎩
⎪
⎪
,,
xxx
xx x
xxx
123
12 3
123
1
223
00
++=
++ ≥
≥≥≥
⎧
⎨
⎪
⎩
⎪
,,
***********************
________________________________________________________________________
GV: Phan Thanh Tao
Bài ging Quy hoch toán hc Trang 6
________________________________________________________________________
Chng 2. PHNG PHÁP N HÌNH
2.1.
Dng chính tc và dng chun tc
2.1.1. nh ngha
Trong thc t, đa s các bài toán có điu kin không âm ca các n. T đó có đnh
ngha dng chính tc là bài toán (d,f) nh sau:
f(x) = c
∑
=
n
j 1
j
x
j
min (1)
⎪
⎩
⎪
⎨
⎧
=≥
==
∑
=
)3() 1(0
)2() 1(
1
njx
mibxa
j
ij
n
j
ij
(2) gi là ràng buc cng bc, (3) gi là ràng buc t nhiên.
Vi bài toán (d,f) chính tc, có th gi s m ≤n.
Mt trng hp đc bit ca dng chính tc là ma trn s liu A = (a
ij
)
mxn
có cha
đ m vect ct là m vect đn v ca không gian R
m
và b
i
≥ 0 (i=1 m) gi là dng chun
tc. Không mt tính tng quát, có th đnh ngha bài toán (d,f) chun tc nh sau:
f(x) =
c
∑
=
n
j 1
j
x
j
min
⎪
⎩
⎪
⎨
⎧
=≥
==+
∑
+=
) 1(0
) 1(
1
njx
mibxax
j
ij
n
mj
iji
trong đó b
i
≥ 0 (i=1 m).
2.1.2. Các phép bin đi
Các phép bin đi sau đ đa bài toán (d,f) bt k v dng chính tc tng đng
đ gii, và t đó suy ra nghim ca bài toán ban đu.
a/ f(x) max g(x) = -f(x) min ⇔
b/
∑
vi x
=
≤
n
j
ijij
bxa
1
⇔
∑
=
+
=+
n
j
iinjij
bxxa
1
n+i
≥0
∑
vi x
=
≥
n
j
ijij
bxa
1
⇔
∑
=
+
=−
n
j
iinjij
bxxa
1
n+i
≥0
x
n+i
gi là n ph. Có kt lun sau:
Nu
x = (x
1
, x
2
, , x
n
, x
n+1
, , x
n+m
) là nghim ca bài toán chính tc bin đi thì
x=(x
1
, x
2
, , x
n
) là nghim bài toán gc.
________________________________________________________________________
GV: Phan Thanh Tao
Bài ging Quy hoch toán hc Trang 7
________________________________________________________________________
c/ Nu n x
j
không ràng buc v du thì đc thay bng hiu hai n không âm.
Ngha là đt x
j
=x
j
’ – x
j
” vi x
j
’≥0, x
j
”≥0.
d/ Trng hp b
i
< 0 thì nhân hai v phng trình cho -1 có đc b
i
>0.
Vy: Mi bài toán quy hoch tuyn tính đu có th đa v bài toán dng chính tc
tng đng. Hn na có th các h s t do b
i
trong h ràng buc là không âm.
2.1.3. Phng án c bn
Xét bài toán (d,f) dng chính tc
f(x) = c
∑
=
n
j 1
j
x
j
min
⎪
⎩
⎪
⎨
⎧
=≥
==
∑
=
) 1(0
) 1(
1
njx
mibxa
j
ij
n
j
ij
t A
j
= (a
1j
, a
2j
, , a
mj
) là vect ct th j trong ma trn A
mxn
b = (b
1
, b
2
, , b
m
) là ct h s t do.
Gi s x = (
x
1
, x
2
, , x
n
) là phng án ca bài toán thì h vect { A
j
/ x
j
> 0 }
gi là h vect liên kt vi phng án x.
nh ngha
x
∈
d
là phng án c bn nu h véct liên kt vi x đc lp tuyn tính.
n x
j
gi là n c bn nu
x
j
> 0.
Nhn xét:
- Phng án c bn có ti đa m thành phn dng.
Phng án c bn có đúng m thành phn dng gi là không suy bin. Ngc li
gi là suy bin. Bài toán có phng án c bn suy bin gi là bài toán suy bin.
- S phng án c bn ca mt bài toán (d,f) là hu hn.
- Vi bài toán dng chun tc thì có phng án c bn là x
o
= (b
1
, b
2
, ,b
m
,0, ,0).
2.1.4. Các tính cht
Tính cht 1 Bài toán (d,f) ch xy ra 1 trong 3 trng hp sau:
a) Vô nghim b) Có 1 nghim duy nht c) Vô s nghim.
Tính cht 2 Nu hàm mc tiêu f(x) là chn di (trên ) đi vi bài toán dng min (max)
trên tp phng án d thì bài toán (d,f) có nghim.
________________________________________________________________________
GV: Phan Thanh Tao
Bài ging Quy hoch toán hc Trang 8
________________________________________________________________________
Tính cht 3 Nu bài toán (d,f) có nghim thì có nghm là phng án c bn.
2.2. Phng pháp đn hình
2.2.1. Ni dung
Xut phát t phng án c bn nào đó, tìm cách đánh giá nó. Nu cha ti u thì
chuyn sang phng án c bn mi tt hn. Nu bài toán có nghim thì sau hu hn
bc s tìm đc phng án c bn ti u. Hn na du hiu vô nghim cng đc th
hin trên thut toán .
Ví d 2.1 Xét bài toán (d,f) dng chun tc:
f(x) = x
1
-2x
2
+3x
3
-2x
4
min
⎪
⎩
⎪
⎨
⎧
=≥
=++
=+−
)4 1(0
5
432
421
321
jx
xxx
xxx
j
Có phng án c bn x
o
= (0, 0, 4, 5) và f(x
o
)=2 vi x
3
, x
4
là n c bn.
ánh giá:
∀ x=(x
1
,x
2
,x
3
,x
4
)∈ d :
⎪
⎩
⎪
⎨
⎧
=≥
=++
=+−
)4 1(0
5
432
421
321
jx
xxx
xxx
j
⇔
⎪
⎩
⎪
⎨
⎧
=≥
−−=
+−=
)4 1(0
5
324
214
213
jx
xxx
xxx
j
f(x) = x
1
-2x
2
+3x
3
-2x
4
= x
1
-2x
2
+3(4-2x
1
+3x
2
) -2(5-x
1
-x
2
)
= 2 -3x
1
+9x
2
= 2-∆
1
x
1
- ∆
2
x
2
Vì x
1
, x
2
≥0 nên nu ∆
1
, ∆
2
≤ 0 thì f(x)≥2 và x
o
là phng án ti u. Tuy nhiên, đây
∆
1
=3>0 nên x
o
cha phi là nghim.
Th chn x
1
, x
4
làm n c bn , cho x
2
=0 và x
3
=0. Có
⎩
⎨
⎧
=+
=
5
42
41
1
xx
x
x⇒
1
=2 và x
4
=3.
Rõ ràng A
1
, A
4
đc lp tuyn tính nên có phng án c bn là
x = (2, 0, 0, 3)
và f(
x ) = - 4.
ánh giá:
∀ x=(x
1
,x
2
,x
3
,x
4
)∈ d :
________________________________________________________________________
GV: Phan Thanh Tao
Bài ging Quy hoch toán hc Trang 9
________________________________________________________________________
⎩
⎨
⎧
=++
=+−
5
432
421
321
xxx
xxx
⇔
⎪
⎪
⎩
⎪
⎪
⎨
⎧
+−=
−+=
324
321
2
1
2
5
3
2
1
2
3
2
xxx
xxx
f(x) = x
1
-2x
2
+3x
3
-2x
4
= (2+
2
3
x
2
-
2
1
x
3
)
-2x
2
+3x
3
-2(3-
2
5
x
2
+
2
1
x
3
)
= - 4 +
2
9
x
2
+
2
3
x
3
(= -4-∆
2
x
2
- ∆
3
x
3
)
≥ -4
Vì x
2
, x
3
≥0 nên
x là phng án ti u (∆
2
, ∆
3
≤0).
2.2.2. Bng đn hình
Cho bài toán (d,f) chun tc:
f(x) =
c
∑
=
n
j 1
j
x
j
min
⎪
⎩
⎪
⎨
⎧
=≥
==+
∑
+=
) 1(0
) 1(
1
njx
mibxax
j
ij
n
mj
iji
trong đó b
i
≥ 0 (i=1 m).
∀ j=1 n đt ∆
j
=
∑
c
=
m
i 1
i
a
ij
- c
j
và gi là c lng ca n x
j
đi vi phng án c bn
x
o
=(b
1
, b
2
, …, b
m
, 0, …, 0) vi f(x
o
)= c
∑
=
m
i 1
i
b
i
Lu ý: ∆
i
= 0 , ∀ i=1 m
Có bng đn hình sau:
H
s
n
CB
P/Án x
1
c
1
x
2
c
2
… x
m
c
m
x
m+1
c
m+1
… x
s
c
s
… x
n
c
n
c
1
x
1
b
1
1 0 … 0 a
1,m+1
… a
1s
… a
1n
c
2
x
2
b
2
0 1 … 0 a
2,m+1
… a
2s
… a
2n
… …
…
… … … … … … …
c
r
x
r
b
r
0 0 … 0 a
r,m+1
… a
rs
… a
rn
… …
…
… … … … … … …
c
m
x
m
b
m
0 0 … 1 a
m,m+1
… a
ms
… a
mn
f(x) ∆
1
∆
2
∆
m
∆
m+1
∆
s
∆
n
________________________________________________________________________
GV: Phan Thanh Tao
Bài ging Quy hoch toán hc Trang 10
________________________________________________________________________
2.2.3. C s lý lun
Cho bài toán (d,f) chun tc:
f(x) = c
∑
=
n
j 1
j
x
j
min
⎪
⎩
⎪
⎨
⎧
=≥
==+
∑
+=
) 1(0
) 1(
1
njx
mibxax
j
ij
n
mj
iji
trong đó b
i
≥ 0 (i=1 m).
∀ j=1 n đt ∆
j
= c
∑
=
m
i 1
i
a
ij
- c
j
Có phng án c bn x
o
=(b
1
, b
2
, …, b
m
, 0, …, 0) vi f(x
o
)= c
∑
=
m
i 1
i
b
i
nh lý 1 ( Du hiu ti u)
Nu ∆
j
≤0 vi mi j = 1 n thì x
o
là phng án ti u.
Chng minh
Có f(x
o
)= c
∑
=
m
i 1
i
b
i
∀ x=(x
j
)
n
∈ d : x
i
+ a
∑
+=
n
mj 1
ij
x
j
=b
i
(i=1 m) ⇒ x
i
= b
i
- a
∑
+=
n
mj 1
ij
x
j
(i=1 m)
f(x) = c
∑
=
n
j 1
j
x
j
= c
∑
=
m
i 1
i
x
i
+ c
∑
+=
n
mj 1
j
x
j
= c
∑
=
m
i 1
i
(b
i
- a
∑
+=
n
mj 1
ij
x
j
) + c
∑
+=
n
mj 1
j
x
j
= c
∑
=
m
i 1
i
b
i
- ( c
∑
+=
n
mj 1
∑
=
m
i 1
i
a
ij
-c
j
) x
j
= f(x
o
) - ∆
∑
+=
n
mj 1
j
x
j
≥ f(x
o
) : vì ∆
j
≥0 và x
j
≥ 0 (j=m+1 n)
nh lý 2 ( Du hiu vô nghim)
Nu
∃ ∆
k
>0 và a
ik
≤0 ∀ i = 1 m thì bài toán vô nghim.
Chng minh
Vì ∆
i
= 0 , i=1 m và ∆∀
k
>0 nên có k>m.
________________________________________________________________________
GV: Phan Thanh Tao
Bài ging Quy hoch toán hc Trang 11
________________________________________________________________________
∀ >0, xét b s x=(x
j
)
n
vi
⎪
⎩
⎪
⎨
⎧
≠+==
=
=−=
), 1(0
) 1(
kjnmjx
x
miabx
j
k
ikii
ϑ
ϑ
∀ i=1 m: x
i
+ a
∑
+=
n
mj 1
ij
x
j
= (b
i
-a
ik
) + a
ik
= b
i
(1)
x
k
= >0 nên x
j
≥0 j=m+1 n ∀
∀ i=1 m: x
i
= b
i
-a
ik
≥bi ≥0. Vì >0 và a
ik
≤0.
Vy x
j
≥0 ∀ j=m+1 n (2)
(1) và (2) có x∈ d
f(x) =
c
∑
=
n
j 1
j
x
j
=
c
∑
=
m
i 1
i
x
i
+ c
∑
+=
n
mj 1
j
x
j
= c
∑
=
m
i 1
i
(b
i
-a
ik
) + c
∑
+=
n
mj 1
j
x
j
= c
∑
=
m
i 1
i
b
i
- c
∑
=
m
i 1
i
a
ik
+c
k
= f(x
o
) – ( c
∑
=
m
i 1
i
a
ik
-c
k
)
= f(x
o
) – ∆
k
Cho x +∞ thì f(x) -∞ trên d. Hay f(x) không b chn di trên d.
Vy bài toán vô nghim.
nh lý 3 ( iu chnh phng án)
Nu
∀ ∆
k
>0, ∃ a
ik
>0 thì có th tìm đc phng án c bn mi tt hn x
o
, trong
trng hp bài toán không suy bin.
Chng minh:
Gi s ∆
s
= max {∆
j
} vi ∆
j
>0 (j=1 n).
Theo gi thit a∃
is
>0
t =min {
is
i
a
b
} vi a
is
> 0 . Có >0 do bài toán không suy bin.
Gi s =
rs
r
a
b
, có
rs
r
a
b
≤
is
i
a
b
Xét b s
x =(x
j
)
n
vi
________________________________________________________________________
GV: Phan Thanh Tao
Bài ging Quy hoch toán hc Trang 12
________________________________________________________________________
⎪
⎩
⎪
⎨
⎧
≠+==
=
=−=
), 1(0
) 1(
sjnmjx
x
miabx
j
s
isii
ϑ
ϑ
∀ i=1 m: x
i
+ a
∑
+=
n
mj 1
ij
x
j
= (b
i
-a
is
) + a
is
= b
i
(1)
x
s
= >0 nên x
j
≥0 j=m+1 n ∀
∀ i=1 m: x
i
= b
i
-a
is
= b
i
-
rs
r
a
b
a
is
≥0. Vì
is
i
a
b
≥
rs
r
a
b
(i=1 m) và a
is
>0.
Vy x
j
≥0 ∀ j=m+1 n (2)
(1) và (2) có x∈ d
Có x
r
= b
r
-a
rs
= b
r
-
rs
r
a
b
a
rs
=0. Vy x
r
là n không c bn.
H vect liên kt x
o
là m vect đn v {A
1
, A
2
, …, A
m
}.
Vy h vect liên kt
x là h con ca {A
1
, A
2
, …, A
m
}U {A
s
}\{A
r
}.
Gi s h vect liên kt x ph thuc tuyn tính thì h {A
1
, A
2
, …, A
m
} {AU
s
}\{A
r
} ph
thuc tuyn tính.
Nên ∃ k
i
≠0 sao cho: + k
∑
≠
=
m
ri
i
ii
Ak
1
s
A
s
= ( vect không)
Nu k
s
=0 thì k∃
i
≠0 (i=1 m) sao cho: = . Mâu thun vì {A
∑
≠
=
m
ri
i
ii
Ak
1
1
, A
2
, …, A
m
} là h
vect đn v. Vy k
s
≠0 và + k
∑
≠
=
m
ri
i
ii
Ak
1
s
A
s
=
hay A
s
= -
∑
≠
=
m
ri
i
i
s
i
A
k
k
1
(3)
Ngoài ra, A
s
= (a
1s
, a
2s
, , a
ms
) = a
∑
=
m
i 1
is
A
i
(4)
Tr (4) cho (3) có
∑
≠
=
+
m
ri
i
i
s
i
is
A
k
k
a
1
)( + a
rs
A
r
= .
Do {A
1
, A
2
, …, A
m
} là h đc lp tuyn tính nên có a
rs
=0 (mâu thun).
Vy h vect liên kt
x là h đc lp tuyn tính. Hay x là phng án c bn.
f(
x ) = c
∑
=
n
j 1
j
x
j
________________________________________________________________________
GV: Phan Thanh Tao
Bài ging Quy hoch toán hc Trang 13
________________________________________________________________________
= c
∑
=
m
i 1
i
x
i
+ c
∑
+=
n
mj 1
j
x
j
= c
∑
=
m
i 1
i
(b
i
-a
is
) + c
∑
+=
n
mj 1
j
x
j
= c
∑
=
m
i 1
i
b
i
- c
∑
=
m
i 1
i
a
is
+c
s
= f(x
o
) – ( c
∑
=
m
i 1
i
a
is
-c
s
)
= f(x
o
) – ∆
s
< f(x
o
) , vì >0 và ∆
s
>0.
Hay phng án c bn tt hn phng án c bn x
o
mt lng ∆
s
.
2.2.4. Các bc ca thut toán đn hình
Bc 1 Kim tra tính ti u ca phng án x
o
=(b
1
, b
2
, …, b
m
, 0, …, 0)
* Nu ∆
j
≤0 ∀ j = 1 n thì x
o
là phng án ti u và f
min
=f(x
o
)= c
∑
=
m
i 1
i
b
i
.
* Nu ∃ ∆
k
>0 thì chuyn sang bc 2.
Bc 2 Kim tra điu kin vô nghim
* Nu ∃ ∆
k
>0 và a
ik
≤0 vi mi i = 1 m thì bài toán vô nghim.
* Nu
∀ ∆
k
>0, ∃ a
ik
>0 thì chuyn sang bc 3.
Bc 3 Tìm n thay th và n loi ra
* Nu ∆
s
= max {∆
j
} vi ∆
j
>0 (j=1 n) thì đa x
s
đa vào tp n c bn .
* Nu
rs
r
a
b
=min {
is
i
a
b
} vi a
is
> 0 thì loi x
r
ra khi tp n c bn .
* Chuyn sang bc 4.
Bc 4 Bin đi bng đn hình
* Bin đi bng đn hình theo công thc sau:
⎪
⎪
⎩
⎪
⎪
⎨
⎧
≠−=
=
)('
'
ria
a
a
aa
a
a
a
is
rs
rj
ijij
rs
rj
rj
⎪
⎩
⎪
⎨
⎧
≠−=
=
)('
'
ria
a
b
bb
b
is
rs
r
ii
r
θ
* Tính li các giá tr ∆
j
, quay li bc 1.
________________________________________________________________________
GV: Phan Thanh Tao
Bài ging Quy hoch toán hc Trang 14
________________________________________________________________________
Quá trình này có th mô t nh vic bin đi s cp v hàng trên ma trn b sung
ca h ràng buc sao cho vect A
s
tr thành vect đn v th r, và các vect đn v khác
vn gi nguyên.
Nhn xét Các công thc bin đi cho a
ij
cng đúng cho c b
i
và ∆
j
nu xem b là ct th 0
và ∆ là hàng th m+1 ca ma trn s liu A
mxn
.
Ví d 2.2
f(x) = 5x
1
+4x
2
+ 5x
3
+2x
4
+x
5
+ 3x
6
min
⎪
⎪
⎩
⎪
⎪
⎨
⎧
=≥
=++
=+++
=+++
)6 1(0
363
60324
52342
631
5321
4321
jx
xxx
xxxx
xxxx
j
H
s
n
CB
P/Án x
1
5
x
2
4
x
3
5
x
4
2
x
5
1
x
6
3
2 x
4
52 2 4 3 1 0 0
1 x
5
60 4 2 3 0 1 0
3 x
6
36 3 0 1 0 0 1
272
12 6 7 0 0 0
2 x
4
28 0 4 7/3 1 0 -2/3
1 x
5
12 0 2 5/3 0 1 -4/3
5 x
1
12 1 0 1/3 0 0 1/3
128
0 6 3 0 0 -4
2 x
4
4 0 0 -1 1 -2 2
4 x
2
6 0 1 5/6 0 1/2 -2/3
5 x
1
12 1 0 1/3 0 0 1/3
92
0 0 -2 0 -3 0
∆
j
≤0 j =1 6, x
∀
opt
= (12, 6, 0, 4, 0, 0) và f
min
=92
Ví d 2.3
f (x) = 3x
1
-2x
2
+2x
3
- x
4
min
⎪
⎩
⎪
⎨
⎧
=≥
=++−
=−+
)4 1(0
132
12
432
421
jx
xxx
xxx
j
________________________________________________________________________
GV: Phan Thanh Tao
Bài ging Quy hoch toán hc Trang 15
________________________________________________________________________
H
s
n
CB
P/Án x
1
3
x
2
-1
x
3
2
x
4
-1
3 x
1
1 1 1 0 -2
2 x
3
1 0 -2 1 3
5
0 0 0 1
3 x
1
5/3 1 -1/3 2/3 0
-1 x
4
1/3 0 -2/3 1/3 1
14/3
0 2/3 -1/3 0
Có ∆
2
=2/3>0 và trên ct này không có s dng nên bài toán vô nghim.
2.2.5. Bài toán n ph
Các phép bin đi đ đa bài toán (d,f) v dng chính tc
vi x
∑
=
≤
n
j
ijij
bxa
1
⇔
∑
=
+
=+
n
j
iinjij
bxxa
1
n+i
≥0
∑
vi x
=
≥
n
j
ijij
bxa
1
⇔
∑
=
+
=−
n
j
iinjij
bxxa
1
n+i
≥0
x
n+i
gi là n ph. Có kt lun sau:
Nu
x = (x
1
, x
2
, , x
n
, x
n+1
, , x
n+m
) là nghim ca bài toán chính tc bin đi thì
x=(x
1
, x
2
, , x
n
) là nghim bài toán gc.
Ví d 2.4
f (x) = -x
1
+3x
2
-2x
3
max
⎪
⎪
⎩
⎪
⎪
⎨
⎧
=≥
≤++−
−≥−−
=++−
)4 1(0
10834
1242
723
321
321
4321
jx
xxx
xxx
xxxx
j
Bài toán chính tc tng đng
g (x) = x
1
-3x
2
+2x
3
min
⎪
⎪
⎩
⎪
⎪
⎨
⎧
=≥
=+++−
=+++−
=++−
)6 1(0
10834
1242
723
6321
5321
4321
jx
xxxx
xxxx
xxxx
j
Trong đó x
5
, x
6
là n ph.
ây là bài toán (d,f) chun tc nên đc đa vào bng đn hình đ gii.
________________________________________________________________________
GV: Phan Thanh Tao
Bài ging Quy hoch toán hc Trang 16
________________________________________________________________________
H
s
n
CB
P/Án x
1
1
x
2
-3
x
3
2
x
4
0
x
5
0
x
6
0
0 x
4
7 3 -1 2 1 0 0
0 x
5
12 -2 4 1 0 1 0
0 x
6
10 -4 3 8 0 0 1
0
-1 3 -2 0 0 0
0 x
4
10 5/2 0 9/4 1 1/4 0
-3 x
2
3 -1/2 1 ¼ 0 1/4 0
0 x
6
1 -5/2 0 29/4 0 -3/4 1
-9
1/2 0 -11/4 0 -3/4 0
1 x
1
4 1 0 9/10 2/5 1/10 0
-3 x
2
5 0 1 7/10 1/5 3/10 0
0 x
6
11 0 0 19/2 1 -1/2 1
-11
0 0 -16/5 -1/5 -4/5 0
∆
j
≤0 j =1 6, x
∀
opt
= (4, 5, 0, 0, 0, 11) và f
min
=-11. Vy nghiêm bài toán gc là
x
opt
= (4, 5, 0, 0) và f
max
=11.
Nu các giá tr min/max đt ti nhiu v trí thì chn tùy ý mt v trí bt k trong s đó.
Thông thng chn ch s nh nht.
2.2.6. Bài toán n gi
Cho bài toán (d,f) dng chính tc:
f(x) =
c
∑
=
n
j 1
j
x
j
min
⎪
⎩
⎪
⎨
⎧
=≥
==
∑
=
) 1(0
) 1(
1
njx
mibxa
j
ij
n
j
ij
trong đó b
i
≥0 (i=1 m).
Xét bài toán:
f ( x ) = c
∑
=
n
j 1
j
x
j
+ M
∑
x
=
m
i 1
n+i
min
⎪
⎩
⎪
⎨
⎧
+=≥
==+
+
=
∑
) 1(0
) 1(
1
mnjx
mibxxa
j
iinj
n
j
ij
vi M là s dng khá ln ( M∞)
Bài toán này gi là bài toán m rng ca bài toán trên, hay bài toán M.
________________________________________________________________________
GV: Phan Thanh Tao
Bài ging Quy hoch toán hc Trang 17
________________________________________________________________________
Vi bài toán M có ngay phng án c bn ban đu vi x
n+i
(i=1 m) là các n c bn .
Dùng thut toán đn hình đ gii.
x
n+i
gi là các n gi.
Sau khi gii bài toán M, có đc quan h gia bài toán M và bài toán (d,f) nh sau:
• Nu bài toán M vô nghim thì bài toán (d,f) vô nghim.
• Nu bài toán M có nghim
x = (x
1
, x
2
, , x
n
, 0, ,0) thì x = (x
1
, x
2
, , x
n
) là
nghim ca bài toán (d,f).
• Nu bài toán M có nghim
x = (x
1
, x
2
, , x
n+m
) và
∃
x
n+m
)>0 thì bài toán (d,f) vô
nghim.
Tin trình gii bài toán M là loi dn các n gi ra khi tp n c bn cho đn khi loi tt
c là bt đu gii bài toán gc. Nên t đó có th không cn tính cho các ct n gi. Nu
cui cùng không loi đc các n gi mà nhn giá tr 0 thì bài toán gc cng có nghim.
đây gi s bài toán (d,f) trong ma trn s liu A không có vect
đn v nào. Tuy
nhiên, ch cn thêm mt s (<m) n gi cho đ m vect đn v.
Ví d 2.5
f (x) = x
1
+2x
2
-x
3
max
⎪
⎪
⎩
⎪
⎪
⎨
⎧
=≥
=+−
≥++
≤−+−
)3 1(0
422
62
624
321
321
321
jx
xxx
xxx
xxx
j
Dng chính tc tng đng:
f (x) = -x
1
-2x
2
+x
3
min
⎪
⎪
⎩
⎪
⎪
⎨
⎧
=≥
=+−
=−++
=+−+−
)5 1(0
422
62
624
321
5321
4321
jx
xxx
xxxx
xxxx
j
trong đó x
4
, x
5
là hai n ph.
Bài toán chính tc cn thêm hai n gi đ đa v bài toán chun tc là x
6
, x
7
.
Bài toán M tng ng:
f ( x ) = -x
1
-2x
2
+ x
3
+M x
6
+M x
7
min
________________________________________________________________________
GV: Phan Thanh Tao
Bài ging Quy hoch toán hc Trang 18
________________________________________________________________________
⎪
⎪
⎩
⎪
⎪
⎨
⎧
=≥
=++−
=+−++
=+−+−
)7 1(0
422
62
624
7321
65321
4321
jx
xxxx
xxxxx
xxxx
j
ây là bài toán dng chun tc nên đc đa vào bng đn hình đ gii.
H s n
CB
P/Án x
1
-1
x
2
-2
x
3
1
x
4
0
x
5
0
x
6
M
x
6
M
0 x
4
6 -1 4 -2 1 0 0 0
M x
6
6 1 1 2 0 -1 1 0
M x
7
4 2 -1 2 0 0 0 1
3M+1 2 4M-1 0 -M 0 0
0 x
4
10 1 3 0 1 0 0 1
M x
6
2 -1 2 0 0 -1 1 -1
1 x
3
2 1 -1/2 1 0 0 0 1/2
-M+2 2M+3/2 0 0 -M 0 -2M+1/2
0 x
4
7 5/2 0 0 1 3/2 -3/2 5/2
-2 x
2
1 -1/2 1 0 0 -1/2 1/2 -1/2
1 x
3
5/2 3/4 0 1 0 -1/4 1/4 1/4
-9/2
11/4 0 0 0 3/4 -M-3/4 -M+5/4
-1 x
1
14/5 1 0 0 2/5 3/5 -3/5 1
-2 x
2
12/5 0 1 0 1/5 -1/5 1/5 0
1 x
3
2/5 0 0 1 -3/10 -7/10 7/10 -1/2
-36/5
0 0 0 -11/10 -9/10 -M+9/10 -M-3/2
Nghim bài toán M là x = (14/5, 12/5, 2/5, 0, 0,0,0), n gi đã b loi t bng th 3.
Nghim bài toán gc chính tc là x = (14/5, 12/5, 2/5,0,0), vi x4, x5 là n ph, nên có
nghin bài toán gc là x
opt
= (14/5, 12/5, 2/5,0,0) và f
max
= 36/5
Ví d 2.6
f (x) = 8x
1
-6x
2
-2x
3
max
⎪
⎩
⎪
⎨
⎧
=≥
=−+
=++
)3 1(0
434
4434
321
321
jx
xxx
xxx
j
Bài toán M tng ng:
f ( x ) = -8x
1
+6x
2
+2x
3
+Mx
4
+Mx
5
min
⎪
⎩
⎪
⎨
⎧
=≥
=+−+
=+++
)5 1(0
434
4434
5321
4321
jx
xxxx
xxxx
j
________________________________________________________________________
GV: Phan Thanh Tao
Bài ging Quy hoch toán hc Trang 19
________________________________________________________________________
H
s
n
CB
P/Án x
1
-8
x
2
6
x
3
2
x
4
M
x
5
M
M x
4
4 4 3 4 1 0
M x
5
4 4 1 -3 0 1
8M+8 4M-6 M-2 0 0
-8 x
1
1 1 3/4 1 1/4 0
M x
5
0 0 -2 -7 -1 1
0 -2M-12 -7M-10 -2M-2 0
Nghim bài toán M là X= (1,0,0,0,0)
n gi x
5
còn là n c bn nhng nhn giá tr 0 nên nghim bài toán gc là x = (1,0,0) và
f
max
= 8
Ví d 2.7
f (x) = -8x
1
+6x
2
+2x
3
min
⎪
⎩
⎪
⎨
⎧
=≥
=−+
=++
)3 1(0
534
4434
321
321
jx
xxx
xxx
j
Bài toán M tng ng:
f ( x ) = -8x
1
+6x
2
+2x
3
+Mx
4
+Mx
5
min
⎪
⎩
⎪
⎨
⎧
=≥
=+−+
=+++
)5 1(0
534
4434
5321
4321
jx
xxxx
xxxx
j
H s n
CB
P/Án x
1
-8
x
2
6
x
3
2
x
4
M
x
5
M
M x
4
4 4 3 4 1 0
M x
5
5 4 1 -3 0 1
8M+8 4M-6 M-2 0 0
-8 x
1
1 1 3/4 1 1/4 0
M x
5
1 0 -2 -7 -1 1
0 -2M-12 -7M-10 -2M-2 0
n gi x
5
còn là n c bn nhng nhn giá tr x
5
=1>0 nên nên bài toán gc vô nghim.
________________________________________________________________________
GV: Phan Thanh Tao
Bài ging Quy hoch toán hc Trang 20
________________________________________________________________________
2.3. Cài đt thut toán đn hình
2.3.1. Khai báo d liu
a) Xem b là ct 0, c là hàng 0 và ∆ là hàng m+1 ca ma trn s liu a và f(x
o
)=a[m+1][0]
vi a[0][0]=0. Các giá tr b
i
, c
j
, ∆
j
và f(x) bin đi thao cùng công thc vi a
ij
. Ngha là:
b
i
=a[i][0], c
j
=a[0][j], ∆
j
=a[m+1][j].
Ch cn khai báo mt ma trn A nh sau:
float a[m+2][n+1];
b) Các mng đánh du tp n c bn:
int cb[n+1], acb[m];
vi ý ngha:
x
j
là n c bn cb[j]=1 ⇔
và
x
j
n c bn th i ⇔ acb[i]=j
Tp n c bn ban đu gm m n đc nhp t bàn phím
2.3.2. Tính các c lng ∆
j
for (j=1; j<=n; j++){
a[m+1][j]=0;
for (i=1; j<=m; i++) a[m+1][j]+= a[0][ACB[i]]*a[i][j];
a[m+1][j]-= a[0][j];
}
2.3.3. Kim tra ti u và tìm n thay th
int Toiuu( )
{
int s=1, j=1;
for (j=1; j<=n; j++)
if (a[m+1][j]> a[m+1][s])s=j;
return a[m+1][s]>0;
}
2.3.4. Kim tra vô nghim
int Vonghiem( )
{
int i,j;
for (j=1; j<=n; j++)
if (a[m+1][j]> 0){
i=1; while (i<=m && a[i][j]<=0)i++;
if (i>m)retrun 1;
}
return 0;
}
________________________________________________________________________
GV: Phan Thanh Tao
Bài ging Quy hoch toán hc Trang 21
________________________________________________________________________
2.3.5. Tìm n loi ra
r=1; while (a[i][j]<=0)r++;
for (i=r+1; i<=m; i++)
if (a[i][j]>0)
if (a[i][0]/a[i][j]< a[r][0]/a[r][j])r=i;
2.3.6. Bin đi bng
abc[r]:=s; cb[s]=1;
ars = a[r][s]; // Bin trung gian
// Bin đi riêng hàng r
for (j=0; j<=n; j++) a[r][j]/=ars;
for (i=1; i<=m+1; i++)
if (i!=r){
ais=a[i][s]; // Bin trung gian
a[i][j]-= a[r,j]* ais/ars;
}
oOo
________________________________________________________________________
GV: Phan Thanh Tao
Bài ging Quy hoch toán hc Trang 22
________________________________________________________________________
2.4. Bài tp
Gii các bài toán sau bng phng pháp đn hình
1. f(x) = 7x
1
- 5x
2
- 3x
3
→ max
4x + x - 3x 15
4x + 3x +5x 12
x + 2x + 3x 10
x 0 (j = 1 3)
12 3
123
12 3
j
=
=
=
≥
⎧
⎨
⎪
⎪
⎩
⎪
⎪
2. f(x) = -5x
1
- 4x
2
+ 5x
3
- 3x
4
→ max
2x + 4x + 3x x 42
4x - 2x + 3x 24
3x + x 15
x 0 (j = 1 4)
1234
12 3
13
j
+
=
≤
≤
≥
⎧
⎨
⎪
⎪
⎩
⎪
⎪
3. f(x) = 7x
1
+15x
2
+ 5x
3
→ min
3x - 2x - 4x
-x + 4x + 3x -3
2x +x + 8x 2
x 0 (j = 1 3)
123
123
12 3
j
≥
≥
≥
≥
⎧
⎨
⎪
⎪
⎩
⎪
⎪
1
4. f(x) = 2x
1
+17x
2
+18x
3
→ max
6x + 4x + 7x
8x + 4x 30
x 0 (j = 1 3)
123
13
j
≤
≤
≥
⎧
⎨
⎪
⎩
⎪
50
5. f(x) = 3x
1
-x
2
+2x
3
x
4
+5x
5
→ max
2x -x +x +2x +x
4x - 2x + x
x - x + 2x + x
x + x +2x +x
x 0 (j = 1 5)
12 3 4 5
123
12 3 5
12 34
j
≤
=
≥−
≤
≥
⎧
⎨
⎪
⎪
⎪
⎩
⎪
⎪
⎪
17
20
18
100
________________________________________________________________________
GV: Phan Thanh Tao
Bài ging Quy hoch toán hc Trang 23
________________________________________________________________________
6. f(x) = -5x
1
- 4x
2
+ 5x
3
- 3x
4
→ max
2x + 4x + 3x x 42
4x - 2x + 3x 24
3x + x 15
x 0 (j = 1 4)
1234
12 3
13
j
+
=
≤
≤
≥
⎧
⎨
⎪
⎪
⎩
⎪
⎪
7. f(x) = 8x
1
+ 7x
2
+ 9x
3
> min
45 3
364
248
013
123
12 3
123
xxx
xx x
xxx
xj
j
−+=
+−≤
++=
≥∀=
⎧
⎨
⎪
⎪
⎩
⎪
⎪
,
6
9
7
6
3
2
8. f(x) = 2x
1
- x
2
+ 3x
3
> min
7x + 3x + 9x 5
2x - x - 8x
6x +4x + 2x
123
12 3
123
≤
=−
=
≥∀=
⎧
⎨
⎪
⎪
⎩
⎪
⎪
18
20
013xj
j
,
9. f(x) = 3x
1
+ 2x
2
- 4x
3
> min
568
434
272
013
123
12 3
123
xxx
xx x
xxx
xj
j
−+=
++=
−−≤
≥∀=
⎧
⎨
⎪
⎪
⎩
⎪
⎪
,
10. f(x) = 3x
1
- x
2
+ 5x
3
> min
2x + 3x + 7x 5
5x - 2 x - x
6x + 2x + x
123
123
123
≤
=−
=
≥∀=
⎧
⎨
⎪
⎪
⎩
⎪
⎪
41
10
013xj
j
,
11. f(x) = x
1
+ 2x
2
+ x
3
→ max
x -4 x + 2x -6
x +x + 2x 5
2x - x + 2x 3
x 0 (j = 1 3)
12 3
12 3
12 3
j
≥
=
=
≥
⎧
⎨
⎪
⎪
⎩
⎪
⎪
***********************
________________________________________________________________________
GV: Phan Thanh Tao
Bài ging Quy hoch toán hc Trang 24
________________________________________________________________________
Chng 3. BÀI TOÁN I NGU
3.1.
Các bài toán thc t
3.1.1. Bài toán lp k hoch sn xut
Mt nhà máy sn xut hai loi sn phm A, B gm hai phân xng vi nng sut nh
sau:
Phân xng I : 1 nghìn sn phm A + 4 nghìn sn phm B trong 1 nm. và
Chi phí 16 triu đng.
Phân xng II : 3 nghìn sn phm A + 1 nghìn sn phm B trong 1 nm. và
Chi phí 15 triu đng.
K hoch Nhà nc giao cho nhà máy là: 1 nghìn sn phm A + 2 nghìn sn phm B.
Hãy lp k hoch sn xut sao cho tng chi phí th
p nht đng thi đm bo k hoch
nhà nc giao cho nhà máy.
Gi x
1
là thi gian phân xng I sn xut ( đn v nm),
x
2
là thi gian phân xng II sn xut ( đn v nm)
Tng chi phí ca k hoach sn xut x=(x
1
, x
2
) là
f(x) = 16x
1
+ 15x
2
(triu đng)
Mô hình toán hc:
f(x) = 16x
1
+ 15x
2
min
(d)
⎪
⎩
⎪
⎨
⎧
≥
≥+
≥+
0
24
13
2,1
21
21
xx
xx
xx
3.1.2. Bài toán đánh giá sn phm
Vi nng sut hai phân xng ca nhà máy nh bài toán trên . Nhà máy sn xut đc 1
nghìn sn phm A và 2 nghìn sn phm B. Hãy đnh giá tr cho 1 sn phm A và 1 sn
phm B sao cho tng giá tr ca sn phm: phân xng I không vt quá chi phí là 16
triu đng/nm và phân xng II không vt quá chi phí là 15 triu đng/nm, và tng
giá tr sn phm ca nhà máy ln nht.
Gi y
1
(nghìn đng) là giá tr đn v sn phm A,
y
2
(nghìn đng) là giá tr đn v sn phm B
Tng giá tr sn phm theo k hoch đánh giá y=( y
1
, y
2
) là
g(y) = y
1
+2y
2
(nghìn đng)
Mô hình toán hc:
g(y) = y
1
+2y
2
max
________________________________________________________________________
GV: Phan Thanh Tao
Bài ging Quy hoch toán hc Trang 25
________________________________________________________________________
( d
~
)
⎪
⎩
⎪
⎨
⎧
≥
≤+
≤+
0
153
164
2,1
21
21
yy
yy
yy
x
2
(4,3)
d
(5/11, 2/11)
O
O x
1
f
min
=f(5/11, 2/11)= 10 (triu đng) g
max
=g(4, 3)= 10 (triu đng)
Nhn xét: f
min
= g
max
3.2. Bài toán đi ngu
3.2.1. i ngu không đi xng
Cho bài toán (d,f) dng chính tc
(1) f(x) = c
∑
=
n
j 1
j
x
j
min
(d)
⎪
⎩
⎪
⎨
⎧
=≥
==
∑
=
) 1(0
) 1(
1
njx
mibxa
j
ij
n
j
ij
Cùng vi bài toán (I), xét bài toán (
d
~
, g) nh sau:
( 1
~
) g(y) = b
∑
=
m
i 1
i
y
i
max
( d
~
)
⎪
⎩
⎪
⎨
⎧
=
=≤
∑
=
) 1(dotu
) 1(
1
miy
njcya
i
ji
n
j
ji
( 1
~
) gi là bài toán đi ngu ca bài toán (1).
________________________________________________________________________
GV: Phan Thanh Tao