Chương I: BÀI TOÁN QHTT Bài 4. PHƯƠNG PHÁP ĐƠN HÌNH 1. Giới thiệu chung: Ta xét bt QHTT CT: (1) () , min (2) (3) 0 fx cx Ax b x 1 2 1 2 .. n n Ax xA xA xA Với
Jan 30, 2016
Chương I: BÀI TOÁN QHTT
Bài 4. PHƯƠNG PHÁP ĐƠN HÌNH
1. Giới thiệu chung: Ta xét bt QHTT CT:
(1) ( ) , min
(2)
(3) 0
f x c x
Ax b
x
1 21 2 .. n
nAx x A x A x A Với
1 1 2 2
11 1 12 2 1 1
21 1 22 2 2 2
1 1 2 2
(1) ( ) .. min
...
...(2)
... ... ... ...
...
(3) 0 1, .
n n
n n
n n
m m mn n m
j
f x c x c x c x
a x a x a x b
a x a x a x b
a x a x a x b
x j n
Hoặc viết bt trên dưới dạng chi tiết:
-Giả sử cho trước PA x, nếu biết x là PATƯ nhờ một cách nào đó thì ta kết thúc bt.
-Nếu biết x chưa TƯ thì ta tìm PACB khác tốt hơn, (tức là PA làm cho giá trị hàm mục tiêu nhỏ hơn).Ý tưởng tìm PA mới là: ta đi xây dựng một cơ sở mới bằng PP thay thế một véctơ trong cơ sở cũ bởi một véctơ nằm ngoài cơ sở cũ.
Giả sử bt trên có một PACB dạng:
20
10 0 0 0( ; ;..; ;0;0;..;0), , 1,0m jxx mx x jx
1,..., mA A1 2
10 20 0.. mmA Ab x x x A
11
22 .. , j =1,nj j m
jj
mA A A Ax x x -Biểu diễn vt cột Aj của A qua cs, giả sử:
và ký hiệu các chỉ số biểu diễn là véctơ
1 2( ; ;..; )j jj
mjxx x x
-Từ (2) ta có: (đây cũng là biểu diễn b qua cs của x0)
Khi đó:
-Hệ vectơ liên kết (cơ sở) của x:
Ví dụ 1: Xét bt 1 2 3
1 3
2 3
( ) 6 9 min
2 6
8
0, 1,2,3.j
f x x x x
x x
x x
x j
Cho trước PACB: x0=(6,8,0).
Ta có: m=2, n=3 và
1 2 31 0 2 6, , ,
0 1 1 8A A A b
nên x0 có cơ sở liên kết là: 1 2,A A
010 20( ; ;0) (6,8,0)x x x
•Khi đó ta kiểm chứng được:
1 2 1 0 66 8
0 1 86 8A A b
1 21 2 , 1,2,3j
j jx A x A A j
•Biểu diễn vt cột Aj qua cs của x để tìm xj
1 2 111 211:j x A x A A
11 21
1 0 1
0 1 0x x
11
1
1
2
1,
0
x
xx
1 2 212 222 :j x A x A A
12 22
1 0 0
0 1 1x x
12
2
2
2
0,
1
x
xx
1 2 313 233:j x A x A A
13 23
1 0 2
0 1 1x x
13
2
3
3
2
1
xx
x
Vậy,1 1 2 11. 0. (1,0)A A A x
2 1 2 20. 1. (0,1)A A A x 3 1 2 32. 1. (2,1)A A A x
Đặt:
trong đó c0=(c1,c2,c3,…,cm),
và Δj gọi là ước lượng của ẩn thứ j.
2. Thuật toán đơn hình giải btct: Từ hai véctơ: 0
10 20
1
0
2
( ; ;..; ;0;0;..;0),
( ; ;..; )
m
jj j mj
x x x
x x
x
xx
1 21 2
, , 1,
j j mjj m j
jj
c c c c
c
x x x
x c j n
Ví dụ: Xét lại bt ví dụ 11 2 3
1 3
2 3
( ) 6 9 min
2 6
8
0, 1,2,3.j
f x x x x
x x
x x
x j
Cho trước PACB: x=(6,8,0).
Khi đó X có cơ sở liên kết là: 1 2,A A
Mà:
Vậy1 2 11 11. 0. (1,0)A A A x A 2 2 21 20. 1. (0,1)A A A x A
3 2 31 32. 1. (2,1)A A A x A , j
j jc x c
Lần lượt thay j=1,2,3 ta có :
1 0 2
0 1 1A
11 1, (1,6), (1,0) 1c x c
1.1 6.0 1 0
22 2, (1,6), (0,1) 6c x c
1.0 6.1 6 0 3
3 3, (1,6), (2,1) 9c x c 1.2 6.1 9 1
Định lý 1 ( Dấu hiệu tối ưu). Cho btct (1)(2)(3) có PACB x0, nếu x0 có:
thì x0 là PATƯ.
0, 1,j j n
1 2 3
1 3
2 3
( ) 6 9 min
2 6
8
0, 1,2,3.j
f x x x x
x x
x x
x j
Cho trước PACB: x=(6,8,0).
Khi đó X có cơ sở liên kết là:
và
1 2,A A
Ví dụ 1: Xét lại bt trong VD1
1 11 1
2 22 2
3 33 3
(1,0) , 0,
(0,1) , 0,
(2,1) , 1
x c x c
x c x c
x c x c
Ta thấy với j=1,2,3. Vậy x là phương án tối ưu và giá trị tối ưu là:
fmin(x)=1.6+6.8+9.0=54.
0j
Cơ sở Hệsố
cj
PA c1
x1
c2
x2
c3
x3
A1
A2
c1
c2
b1
b2
x1 x2 x3
f(x)1 2
3
Để dễ thấy ta sắp xếp các số lên bảng sau:
Cơ sở Hệ số P. án 1
x1
6
x2
9
x3
A1
A2
1
6
6
8
1
0
0
1
2
1
f(x)=541 0 2 30 1
Định lý 2. Cho btct (1)(2)(3) có PACB x0, nếu x0
thì bt trên không có PATƯ.
0 & 0jj x
Ví dụ 2: Xét bt QHTT:
1 2 3
1 2
2 3
( ) 7 26 9 min
2 5
7
0, 1,2,3.j
f x x x x
x x
x x
x j
với PACB x=(5,0,7). Xét xem x có phải là PATƯ không ?
Giải:
PACB x có cơ sở là: 1 31 0,
0 1A A
Ta xác định các véctơ xj :
1 1 3 1 3 111 31 1. 0. (1,0)A x A x A A A x
2 1 3 1 3 212 32 2 1. ( 2, 1)A x A x A A A x
3 1 2 1 2 313 23 0. 1. (0,1)A x A x A A A x
, jj jc x c
Lần lượt thay j=1,2,3 vào công thức tính ∆j
11 1, (7,9), (1,0) 7 0c x c
22 2,
(7,9), ( 2, 1) ( 26) 3
c x c
33 3, (7,9), (0,1) 9 0c x c
Ta thấy và .Vậy bt không có PATƯ. Rõ hơn là hàm mục tiêu không bị chặn dưới trên tập phương án.
2 0 2 ( 2, 1) 0x
Cơ sở Hệ số P. án 7
x1
-26
x2
9
x3
A1
A3
7
9
5
7
1
0
-2
-1
0
1
1 0 2 3 3 0
Định lý 3. Cho btct (1)(2)(3) có PACB x0, nếu x0 0 & 0j ijx
+ biểu diễn b qua cơ sở mới →PA mới.
max / 0j j k
0min / 0ii ik s
ik
xx
x
thì bt trên tồn tại PACB mới tốt hơn. Cách tìm PACB mới:
↔ Ak đưa vào cơ sở mới.
↔ As đưa ra khỏi cs.
Ví dụ 3: Xét bt QHTT1 2 3 4
1 2 4
2 3 4
( ) 2 2 0 min
4 6
2 5 8
0, 1,2,3,4.j
f x x x x x
x x x
x x x
x j
Với PACB x=(6,0,8,0) cơ sở liên kết là:
1 3 1 31 0, , ,
0 1A A A A
PACB x =(6,0,8,0) có phải PATƯ không?
0j
Cơ sở
Hệ số P. án 1
x1
-2
x2
2
x3
0
x4
A1
A3
1
2
6
8
1
0
1
2
0
1
4
5
f(x) 22 0 7 0 14
Ta thấy nên PA chưa TƯ, và trong số các ,các xj đều có hệ số dương. Do đó có thể tìm PA mới x’ tốt hơn:
0j
+Véctơ đưa vào là: A4 vì Δ4 dương lơn nhất
0 10 304 1 3
4 14 34
min : 0 min ,ii i
i
x x xx
x x x
1 3 1
6 8min ,
4 5
+Véctơ đưa ra: A1 vì
+Cơ sở mới: {A4, A3} . Biểu thị véctơ b theo cơ sở mới:
6 4 03 1
8 5 12 2b
1 30,0, ,
2 2x
Giá trị hàm mục tiêu lúc này là:1 3 1
( ) 0,0, , 0 2.0 2. 12 2 2
f x f
Rõ ràng PA x’ tốt hơn x.
Bây giờ xem x’ như x. Ta kiểm tra xem x’
có TƯ chưa.
( ) 22f x
Cơ sở của x’ là {A4, A3}, xác định các xj:1 3 4 3 4 1
31 41
5 1 5 1. . ,
4 4 4 4A x A x A A A x
2 3 4 3 4 232 42
3 1 3 1,
4 4 4 4A x A x A A A x
3 3 4 3 4 3
33 43 1. 0. (1,0)A x A x A A A x
, jj jc x c
Lần lượt thay j=1, 2, 3, 4 ta có :
4 3 4 3 4 434 44 0. 1. (0,1)A x A x A A A x
11 1
5 1 7, (2,0), , 1
4 4 2c x c
22 2
3 1 7, (2,0), , ( 2)
4 4 2c x c
33 3, (2,0), (1,0) 2 0c x c
44 4, (2,0), (0,1) 0 0c x c
PA này vẫn chưa tối ưu.
Để tiện theo dõi ta sắp xếp lên bảng:
Cơ sở
Hệ số P. án 1
x1
-2
x2
2
x3
0
x4
A4
A3
0
2
3/2
1/2
1/4
-5/4
1/4
3/4
0
1
1
0
f(x) 1 -7/2 7/2 0 0
Ta liên hệ hai bảng này với nhau:
Cơ sở
Hệ số P. án 1
x1
-2
x2
2
x3
0
x4
A1
A3
1
2
6
8
1
0
1
2
0
1
4
5
f(x) 22 0 7 0 14
Bảng 1
Bảng 2
A4
A3
0
2
3/2
1/2
1/4
-5/4
1/4
3/4
0
1
1
0
f(x) 1 -7/2 7/2 0 0
TÓM TẮT. Nếu:
0, 1,j j n 0 & 0j
j x 0 & 0j ijx
+ biểu diễn b qua cơ sở mới →PA mới
max / 0j j k
0min / 0ii ik s
ik
xx
x
→ PA đang xét là TƯ
: bt không có PATƯ
: tồn tại PA mới tốt hơn. Cách tìm:
↔ Ak đưa vào
↔ As đưa ra
BÀI TẬP: Giải bt QHTT:
1 2 3
1 3
2 3
( ) 2 2 min
4 7
10
0, 1,2,3.j
f x x x x
x x
x x
x j
với PACB x=(7,10,0).
Giải:
Véctơ x có cơ sở là: 1 31 0,
0 1A A