Professional Documents
Culture Documents
PHƯƠNG PHÁP ĐƠN HÌNH - HƯỚNG DẪN TOÀN BỘ BÀI VÍ DỤ TÌNH HUỐNG
PHƯƠNG PHÁP ĐƠN HÌNH - HƯỚNG DẪN TOÀN BỘ BÀI VÍ DỤ TÌNH HUỐNG
VÍ DỤ 1
Cho bài toán sau: giải bài toán bằng phương pháp đơn hình:
1
(2) x1 + x2 + 2 x3 - x4 ≤ 5
x1 - 2x2 - 2x3 + 4x4 ≥ -20
-2x1 + 3x2 - x3 + 3x4 + x5 = 3
∀ j=l ,5
(1) xj ≥ 0
Bài làm:
Bước 2: Kiểm tra vế phải của các ràng buộc, nếu thấy số <0 thì nhân hai vế với -1 để đổi
dấu và đổi chiều bất phương trình.
Thực hiện b1 và 2 xong ta có bài toán như sau:
(3) f(x)min= -2x1 - 2x2 - 6x3 + 10x4 + x5 min
Hệ ràng buộc như sau:
1
(2) x1 + x2 + 2 x3 - x4 ≤ 5
-x1 + 2x2 + 2x3 - 4x4 ≤ 20
-2x1 + 3x2 - x3 + 3x4 + x5 = 3
∀ j=l ,5
(1) xj ≥ 0
Bước 3: Chuyển bài toán về CHÍNH TẮC:
Ràng buộc có dạng chính tắc tức là ràng buộc đó có dấu bằng.
Như vậy với bài toán trên ta có RÀNG BUỘC SỐ 3 đã có dạng chính tắc rồi. Còn
ràng buộc 1 và 2 ta phải chuyển về chính tắc, bằng cách:
Với ràng buộc 1: (x1 + x2 + 1/2x3 - x4 ≤ 5), ta thấy vế trái nhỏ hơn vế phải,
vậy để vế trái = vế phải thì ta cộng thêm cho vế trái 1 ẩn là x6, x6 ≥ 0. Và x6 về bản chất
nó là ẨN PHỤ ( phụ thêm cho vế trái để vế trái = vế phải), ẨN PHỤ thì có hệ số = 0 ở
hàm mục tiêu.
Với ràng buộc 2: (-x1 + 2x2 + 2x3 – 4x4 ≤ 20), cũng tương tự, ta cộng thêm cho
vế trái 1 lượng là x7, x7 ≥ 0. Và x7 về bản chất nó là ẨN PHỤ ( phụ thêm cho vế trái để
vế trái = vế phải), ẨN PHỤ thì có hệ số = 0 ở hàm mục tiêu.
Kết quả như sau:
Dạng chính tắc của Ràng buộc 1: x1 + x2 + 1/2x3 – x4 + x6 =5
Dạng chính tắc của Ràng buộc 2: -x1 + 2x2 + 2x3 – 4x4 + x7 = 20
Vậy chốt lại 3 ràng buộc đã có dạng chính tắc rồi. Hệ thống lại như sau:
x1 + x2 + 1/2x3 – x4 + x6 =5
-x1 + 2x2 + 2x3 – 4x4 + x7 = 20
-2x1 + 3x2 – x3 +3x4 + x5 =3
(1) xj ≥ 0, j= 1->7
Như vậy 3 ràng buộc đều có: dạng CHÍNH TẮC đồng thời là dạng CHUẨN TẮC, vì đã
có ẩn cơ bản, nên không thay đổi gì nữa.
Ví dụ khác:
Giải bài toán sau bằng phương pháp đơn hình
(3) f(x)=2x1 - 5x2 - 4x3 + 2x4 min
(2) 2x1 + x3 - 3x4 ≥ 12
x2 + x3 +2x4 = 14
4x1 + x3 - 9x4 ≤ 36
3x1 + 2x3 - 5x4 ≤ 23
(1) xj ≥ 0
GIẢI:
B3: Chuyển bài toán về dạng chính tắc:
(1) xj ≥ 0, j= 1->7
Giá trị bôi vàng gọi là Delta, cách tính là: ∆j = (∑ci*aij)– cj
Vậy ∆1 = ∑ci*ai1 – c1 = (0*1 + 0*-1 + 1*-2 ) - (-2) = 0
∆2 = ∑ci*ai2– c2= (0*1 + 0*2 + 1*3 ) - (-2) = 5
Tương tự tính ∆3,4,5,6,7
Trong bảng đơn hình có cột Phương án cơ bản, được giải thích như sau:
* Khái niệm Phương án cơ bản: là phương án mà các Ẩn KHÔNG CƠ BẢN bị triệt
tiêu, chỉ còn các ẨN CƠ BẢN.
Vây: Ở BẢNG ĐƠN HÌNH 1:
Ta có x6, x7, x5 là ẨN CƠ BẢN, => x1, x2, x3, x4 là ẨN KHÔNG CƠ BẢN, theo khái
niệm PHƯƠNG ÁN CƠ BẢN, thì các ẨN KHÔNG CƠ BẢN bị triệt tiêu, tức là ta có:
x1=x2=x3=x4 = 0
Vậy thế giá trị vào các ràng buộc ta có:
x6 = 5; x7 = 20; x5 = 3
Ta tiếp tuc thế giá trị của x1 đến x7 vào hàm mục tiêu, ta có:
f(x0) = 3, đây được gọi là PHƯƠNG ÁN CƠ BẢN XUẤT PHÁT.
Hoặc nhìn bảng đơn hình, ta tính f(x0) = ∑ci*bi = 0*5+0*20+1*3 = 3
* ĐỂ BIẾT MỘT GIÁ TRỊ f(x0) CÓ PHẢI LÀ PHƯƠNG ÁN TỐI ƯU HAY CHƯA,
TA DỰA VÀO CÁC ĐỊNH LÝ SAU:
Định lý 1: Dấu hiệu tối ưu
Nếu thấy tất cả các Delta (∆) đều có giá trị ≤ 0, thì f(x0) là phương án tối ưu.
Vậy ta thấy trong bảng đơn hình 1 thì vẫn còn Delta 2 = 5, và Delta 3 = 5, là những số >
0, nên với bảng đơn hình 1, f(x0)= 3 chưa phải là phương án tối ưu.
Định lý 2: Dấu hiệu vô nghiệm
Nếu tồn tại Delta k >0, mà tất cả các aik của nó ≤ 0, thì bài toán vô nghiệm.
Vậy ta thấy trong bảng đơn hình 1, ko có điều này xảy ra, tức là bài toán có nghiệm.
Định lý 3: Dấu hiệu điều chỉnh phương án
Nếu tồn tại ít nhất 1 Delta j > 0, và ít nhất 1 aij > 0, sẽ tìm được phương án cơ bản mới
tốt hơn. Bằng cách loại đi 1 ẨN CƠ BẢN, và bổ sung một ẨN KHÔNG CƠ BẢN làm ẨN CƠ
BẢN.
Vậy với bảng đơn hình 1, thì ta thấy chưa tối ưu, vì vẫn còn Delta 2=5, Delta3=5 là
những số >0, và cũng không có dấu hiệu vô nghiệm, nên ta điều chỉnh sang bảng đơn hình 2 để
tìm phương án mới tốt hơn, cách điều chỉnh như sau:
* CÁCH ĐIỀU CHỈNH TỪ BẢNG ĐƠN HÌNH NÀY QUA BẢNG ĐƠN HÌNH TIẾP
THEO:
Phải Xác định PHẦN TỬ TRỤC XOAY ( là giao giữa cột chứa ẨN BỔ SUNG và hàng
chứa ẨN LOẠI RA).
+ Cách xác định ẨN BỔ SUNG: có 2 cách:
-Cách 1: Xét các ∆j>0, tìm giá trị max.
Ví dụ ∆2= 5>0; ∆3 = 8>0, vậy max là ∆3, vậy => x3 là ẨN BỔ SUNG. Bài toán ví dụ có
2 ∆>0 đều bằng nhau nên ta phải sử dụng cách 2.
- Cách 2: Xét các ∆j>0, nếu thấy các ∆j>0 mà bằng nhau, thì ta tìm thêm hệ số θj, và tính
tích ∆j* θj, tìm giá trị max của tích này.
Cách xác định θj như sau: θj =min(bi/aij>0)
Vậy ta có:
+ ∆2 = 5>0, => θ2 = min(bi/ai2>0) = min (5/1; 20/2; 3/3)= min(5;10;1)= 1
=> ∆2* θ2 = 5*1= 5
+ ∆3 = 5>0, => θ3 = min(bi/ai3>0) = min (5/0,5; 20/2)= min(10, 10)=10
=> ∆3* θ3 = 5*10= 50
Vậy ta thấy ∆3* θ3 lớn hơn, suy ra x3 là ẩn bổ sung.
Bước 4: Tính các hệ số ở 2 hàng còn lại ( tính hàng nào trước cũng được)
a) Tính hệ số ở hàng có x7 (tức là hàng 2), cách làm như sau:
+ Trên hàng này, vị trí a23 = 0, quan sát lên bảng đơn hình 1, a23 cũ = 2, => số đối của
a23 cũ là –a23 cũ = -2, ta ghi số đối này bên cạnh hàng chuẩn mới, như sau:
Ẩn -2 -2 -6 10 1 0 0
cơ Phương án
Hệ số (ci) bản cơ bản(bi) x1 x2 x3 x4 x5 x6 x7
Bảng (-2)H.chuẩn
đơn -6 x3 10 2 2 1 -2 0 2 0 mới
hình số 0 x7 0
2 1 x5 0
+ Sau đó, ta lấy các hệ số ở hàng chuẩn mới NHÂN với (-2):
10 2 2 1 -2 0 2 0
NHÂN (-2)
=
-20 -4 -4 -2 4 0 -4 0
+ Sau đó, lấy kết quả trên CỘNG với hàng 2 ở bảng đơn hình 1:
-20 -4 -4 -2 4 0 -4 0
CỘNG
20 -1 2 2 -4 0 0 1
=
0 -5 -2 0 0 0 -4 1
Ta ghi kết quả này vào hàng 2 ở bảng đơn hình 2, như sau:
Ẩn -2 -2 -6 10 1 0 0
cơ Phương án
Hệ số (ci) bản cơ bản(bi) x1 x2 x3 x4 x5 x6 x7
(-2)H.chuẩn
Bảng -6 x3 10 2 2 1 -2 0 2 0 mới
đơn 0 x7 0 -5 -2 0 0 0 -4 1
hình số 1 x5 0
2
b) Tính hệ số ở hàng có x5 (tức là hàng 3), cách làm như sau:
Trên hàng này, vị trí a33 = 0, quan sát lên bảng đơn hình 1, a33 cũ = -1, => số đối của
a33 cũ là –a33 cũ = 1, ta ghi số đối này bên cạnh hàng chuẩn mới, như sau:
Ẩn -2 -2 -6 10 1 0 0
cơ Phương án
Hệ số (ci) bản cơ bản(bi) x1 x2 x3 x4 x5 x6 x7
Bảng -6 x3 10 2 2 1 -2 0 2 0 (1)H.chuẩn mới
đơn 0 x7 0 -5 -2 0 0 0 -4 1
hình số 1 x5 0
2
+ Sau đó, ta lấy các hệ số ở hàng chuẩn mới NHÂN với (1):
10 2 2 1 -2 0 2 0
NHÂN (1)
=
10 2 2 1 -2 0 2 0
+ Sau đó, lấy kết quả trên CỘNG với hàng 3 ở bảng đơn hình 1:
10 2 2 1 -2 0 2 0
CỘNG
3 -2 3 -1 3 1 0 0
=
13 0 5 0 1 1 2 0
Ta ghi kết quả này vào hàng 3 ở bảng đơn hình 2, như sau:
Ẩn -2 -2 -6 10 1 0 0
cơ Phương án
Hệ số (ci) bản cơ bản(bi) x1 x2 x3 x4 x5 x6 x7
Bảng -6 x3 10 2 2 1 -2 0 2 0
đơn 0 x7 0 -5 -2 0 0 0 -4 1
hình số 1 x5 13 0 5 0 1 1 2 0
2 f(x0’)= - 47 -10 -5 0 3 0 -10 0
Ẩn -2 -2 -6 10 1 0 0
cơ Phương án
Hệ số (ci) bản cơ bản(bi) x1 x2 x3 x4 x5 x6 x7
Bảng -6 x3 10 2 2 1 -2 0 2 0
đơn 0 x7 0 -5 -2 0 0 0 -4 1
hình số 1 x5 13 0 5 0 1 1 2 0 H.chuẩn cũ
2 f(x0’)= - 47 -10 -5 0 3 0 -10 0
Ẩn -2 -2 -6 10 1 0 0
cơ Phương án
Hệ số (ci) bản cơ bản(bi) x1 x2 x3 x4 x5 x6 x7
Bảng -6 x3 0
đơn 0 x7 0
hình số 10 x4 1 H. chuẩn mới
3
Bước 2: Ta tính các hệ số ở hàng có số 1 trước, tức là tính hàng chuẩn mới trước, bằng cách lấy
hàng chuẩn cũ ( tức là hàng có phần tử trục xoay ở bảng đơn hình 2), rồi chia cho phần tử trục
xoay.
13 0 5 0 1 1 2 0
Chia
1
13 0 5 0 1 1 2 0
Ta ghi kết quả này vào hàng chuẩn mới, như sau:
Ẩn -2 -2 -6 10 1 0 0
cơ Phương án
Hệ số (ci) bản cơ bản(bi) x1 x2 x3 x4 x5 x6 x7
Bảng -6 x3 0
đơn 0 x7 0
hình số 10 x4 13 0 5 0 1 1 2 0 H. chuẩn mới
3
Bước 3: Ta tính các hệ số ở 2 hàng còn lại, tính hàng nào trước cũng được.
+ Tính các hệ số ở hàng 1, tức là hàng có x3. Ở hàng này ta đã có a14 = 0. Cũng vị trí này, ở
bảng đơn hình cũ, tức là a14 cũ = -2, vậy số đối của số cũ là – a14 cũ = 2. Sau đó lấy hàng chuẩn
mới * 2, được kết quả bao nhiêu thì lấy kết quả này cộng với hàng 1 ở bảng đơn hình 2.
13 0 5 0 1 1 2 0
NHÂN VỚI 2
= 26 0 10 0 2 2 4 0
CỘNG VỚI 10 2 2 1 -2 0 2 0
36 2 12 1 0 2 6 0
+ Tính các hệ số ở hàng 2, tức là hàng có x7. Ở hàng này ta đã có a24 = 0. Cũng vị trí này, ở
bảng đơn hình cũ, tức là a24 cũ, cũng =0. Vậy ta không cần phải làm theo cách tìm số đối, mà
cóp kết quả của hàng 2 cũ bỏ vào hàng 2 mới luôn. Kết quả như dưới đây.
Ẩn -2 -2 -6 10 1 0 0
cơ Phương án
Hệ số (ci) bản cơ bản(bi) x1 x2 x3 x4 x5 x6 x7
Bảng -6 x3 36 2 12 1 0 2 6 0
đơn 0 x7 0 -5 -2 0 0 0 -4 1
hình số 10 x4 13 0 5 0 1 1 2 0 H. chuẩn mới
3
Bước 4: tính f(x0’’) và các Delta, được kết quả như sau:
Ẩn -2 -2 -6 10 1 0 0
cơ Phương án
Hệ số (ci) bản cơ bản(bi) x1 x2 x3 x4 x5 x6 x7
Bảng -6 x3 36 2 12 1 0 2 6 0
đơn 0 x7 0 -5 -2 0 0 0 -4 1
hình số 10 x4 13 0 5 0 1 1 2 0 H. chuẩn mới
3 f(x0’’) = -86 -10 -20 0 0 -3 -16 0
Nhận xét:
Ở bảng đơn hình số 3, ta thấy tất cả các delta đều ≤ 0, nên phương án f(x0’’)min = -86 là phương
án tối ưu, suy ra f(x0’’)max = 86, với nghiệm là:
(Để đọc nghiệm, các bạn nhìn vào cột Ẩn Cơ Bản và cột Phương án cơ bản ở bảng đơn hình số
3, (tức là bảng đơn hình tối ưu), để đọc. Những ẩn nào xuất hiện ở cột Ẩn cơ bản này thì giá trị
của nó ở cột Phương án cơ bản, những ẩn nào không có tức là ẨN KHÔNG CƠ BẢN, giá trị của
nó = 0. Vậy kết quả nghiệm của bài toán là: