Ths Đức 0972 670 808 1
Bài 1:
Dạng bài toán QHTT
* Dạng tổng quát
n
j j
j 1
n
ij j i 1
j 1
n
ij j i 2
j 1
n
ij j i 3
j 1
j 1 j 2 j 3
(1) f (x) c x min(max)
a x b , i I
(2) a x b , i I
a x b , i I
(3) x 0 j J , x 0 j J , x tu`y y ' j J
=
=
=
=
= →
= ∈
≤ ∈
≥ ∈
≥ ∈ ≤ ∈ ∈
∑
∑
∑
∑
Trong đó
- f(x) là hàm mục tiêu
- I
1
, I
2
, I
3
là rời nhau và I
1
U I
2
U I
3
={1,2, …,m}
- J
1
, J
2
, J
3
là rời nhau và J
1
U J
2
U J
3
= {1,2,…,n}
- A= (a
ij
)
mxn
: Ma trận hệ số ràng buộc
- B= (b
1
, b
2
, …, b
m
): Vectơ các hệ số tự do
- C= (c
1
, c
2
, …,c
m
): Vectơ các hệ số ẩn trong hàm mục tiêu
- X=(x
1
, x
2
, …,x
n
): Vectơ các ẩn số
* Dạng chính tắc
n
j j
j 1
n
ij j i
j 1
j
(1) f (x) c x min(max)
(2) a x b , i 1 m
(3) x 0 j 1 n
=
=
= →
= =
≥ =
∑
∑
* Dạng chuẩn
n
j j
j 1
n
ij j i
j 1
j
(1) f (x) c x min(max)
(2) a x b , i 1 m
(3) x 0 j 1 n
=
=
= →
= =
≥ =
∑
∑
Trong
đ
ó :
-
Các h
ệ
s
ố
t
ự
do b
1
, b
2
, …, b
m
đề
u không âm.
-
Trong ma tr
ậ
n h
ệ
s
ố
ràng bu
ộ
c A = (a
ij
)
mxn
có
đầ
y
đủ
m vect
ơ
c
ộ
t
đơ
n v
ị
e
1
, e
2
, …,e
m
:
1 2 m
1 0 0
0 1 0
e ;e ; ;e
0 0 1
= = =
D
ạ
ng t
ổ
ng quát D
ạ
ng chính t
ắ
c D
ạ
ng chu
ẩ
n
Ths
Đứ
c 0972 670 808 2
Bài 2:
Phương pháp đơn hình
Bước 1: Lập bảng đơn hình xuất phát
* Xác
đị
nh pacb ban
đầ
u xu
ấ
t phát:
1 2 n
x (x , x , , x )
=
. Là ph
ươ
ng án có các
ẩ
n không c
ơ
b
ả
n
đề
u là s
ố
0,
ẩ
n c
ơ
b
ả
n có giá tr
ị
b
ằ
ng các h
ệ
s
ố
t
ự
do
* Xác
đị
nh J(x) =
{
}
j
j/ x 0
>
* Xác
đị
nh h
ệ
ẩ
n c
ơ
b
ả
n
{
}
j
x j J(x)
∈
* L
ậ
p b
ả
ng
đơ
n hình xu
ấ
t phát sau:
1
c
c
2
… c
n
Ẩ
n c
ơ
b
ả
n H
ệ
s
ố
Ph
ươ
ng án
x
1
x
2
… x
n
j
λ
x
j
c
j
b
j
z
j1
z
j2
…
z
jn
jn
λ
f
1
∆
2
∆
…
n
∆
Trong
đ
ó:
j j
j J( x)
f c x f (x)
∈
= =
∑
: giá tr
ị
hàm m
ụ
c tiêu t
ươ
ng
ứ
ng v
ớ
i x
(f = cột Hệ số* cột Phương án)
k j jk k
j J( x)
c z c
∈
∆ = −
∑
: h
ệ
s
ố
ướ
c l
ượ
ng c
ủ
a bi
ế
n x
k
, k=1 n
(
k
∆ =
cột Hệ số*cột z
jk
–c
k
)
Lưu ý:
k
0, k J(x)
∆ = ∈
(ứng với các ẩn cơ bản).
1 2 3 4 5 6
1 2 3 4
1 2 3 5
1 2 3 6
j
f (x) x 2x 2x x x 2x min
2x x 5x x 5
x 2x 2x x 4
4x x x x 2
x 0, j 1 6
= − + − + − →
− − + =
− + + =
− + + + =
≥ =
Giải:
Ta có: c= (1,-2,2,-1,1,-2)
Các biến cơ bản là x
4
, x
5
, x
6
Các biến không cơ bản: x
1
, x
2
, x
3
x=(0,0,0,5,4,2), J(x)= {4,5,6}
2 1 5 1 0 0
A 1 2 2 0 1 0
4 1 1 0 0 1
− −
= −
−
1 2 3
2 1 5
A 1 ,A 2 , A 2
4 1 1
− −
= = =
−
. Tương tự cho các biến cơ bản
4 5 6
1 0 0
A 0 ,A 1 , A 0
0 0 1
= = =
Ths Đức 0972 670 808 3
1 -2
2 -1
1 -2 Ẩn cơ
bản
Hệ số
j
c
PA
x
1
x
2
x
3
x
4
x
5
x
6
x
4
x
5
x
6
-1
1
-2
5
4
2
2
1
-4
-1
-2
1
-5
2
1
1
0
0
0
1
0
0
0
1
-5
(6)
-1 3 0 0 0
Bước 2: Xét dấu hiệu tối ưu
* Xem dòng ghi
1 2 n
, , ,
∆ ∆ ∆
- Nếu có
k
0, k
∆ ≤ ∀
: phương án đang xét là PATU. Thuật toán kết thúc
- Nếu không: bước 3
Bước 3: Xét dấu hiệu không tối ưu
* Xét xem có cột
k
∆
sao cho
k
0
∆ >
và mọi phần tử thuộc cột này ( ở bước lặp đang xét ) đều
0
≤
không?.
- Nế
u có : BT không có PATU. Thu
ậ
t toán k
ế
t thúc
- N
ế
u không b
ướ
c 4
Bước 4: Cải tiến PA ( Tìm pacb tốt hơn)
Tìm pacb
1 2 n
x ' (x ' , x ' , , x ' )
=
t
ố
t h
ơ
n pacb x: f(x’) <= f(x)
L
ậ
p b
ả
ng
đơ
n hình m
ớ
i t
ừ
b
ả
ng
đơ
n hình c
ũ
nh
ư
sau
a) Chọn ẩn đưa vào hệ ẩn cơ bản
Ch
ọ
n s sao cho
{
}
v k k
max 0
∆ = ∆ ∆ >
.
Chọn cột có
k
∆
dương lớn nhất .
Khi
đ
ó x
v
là
ẩ
n mà ta s
ẽ
đư
a
vào h
ệ
ẩ
n c
ơ
b
ả
n.
b) Chọn ẩn đưa ra khỏi hệ ẩn cơ bản
Ch
ọ
n
j
r
r jv
rv jv
b
b
min j J(x) và z 0
z z
λ = = ∈ >
. Khi
đ
ó
ẩ
n x
r
là
ẩ
n
đư
a ra kh
ỏ
i h
ệ
c
ơ
b
ả
n.
Bước 5: Tìm phần tử chốt
Ph
ầ
n t
ử
ch
ố
t là ph
ầ
n t
ử
giao gi
ữ
a
ẩ
n
đư
a vào và
ẩ
n
đư
a ra: z
rv
Bước 6: Biến đổi bảng
•
Trong cộ
t
Ẩ
n c
ơ
b
ả
n ta thay x
r
b
ằ
ng x
v
. Trong c
ộ
t h
ệ
s
ố
ta thay c
r
b
ằ
ng c
v
.
•
Dùng phép bi
ế
n
đổ
i
r
r
rv
h
h
z
=
: ngh
ĩ
a là hàng r m
ớ
i = hàng r c
ũ
/ph
ầ
n t
ử
ch
ố
t.
•
V
ớ
i các hàng
i r
≠
ta dùng phép bi
ế
n
đổ
i:
jv rk
'
jk jk
rv
z * z
z z
z
= −
rk rv
jk jv
z z
z ? z
Bước 7: Quay về bước 2
z
rv
z
rv
z
rv
z
rv
Ph
ầ
n t
ử
ch
ố
t
nhân
chia
Ths
Đứ
c 0972 670 808 4
*Lưu ý:
Quy t
ắ
c ch
ỉ
s
ố
bé nh
ấ
t c
ủ
a R.G.Bland
*Trong các c
ộ
t có
∆
d
ươ
ng thì ta ch
ọ
n c
ộ
t có ch
ỉ
s
ố
nh
ỏ
nh
ấ
t
* N
ế
u có nhi
ề
u
r
λ
để
ch
ọ
n thì ch
ọ
n dòng có ch
ỉ
s
ố
nh
ỏ
nh
ấ
t.
Bài 5: Bài toán Đối ngẫu
1. Quy tắc thành lập bài toán Đối ngẫu
* Hàm m
ụ
c tiêu c
ủ
a Bài toán (BT) g
ố
c
→
min(max)
⇔
Hàm mục tiêu của BT Đối ngẫu
→
min(max)
*
H
ệ
s
ố
c
ủ
a hàm m
ụ
c tiêu c
ủ
a BT g
ố
c là h
ệ
s
ố
v
ế
ph
ả
i c
ủ
a ràng bu
ộ
c chung c
ủ
a BT
Đố
i ng
ẫ
u.
H
ệ
s
ố
v
ế
ph
ả
i c
ủ
a ràng bu
ộ
c chung c
ủ
a BT g
ố
c là h
ệ
s
ố
c
ủ
a hàm m
ụ
c tiêu c
ủ
a BT
Đố
i ng
ẫ
u
* Ma tr
ậ
n h
ệ
s
ố
c
ủ
a BT g
ố
c l
ấ
y chuy
ể
n v
ị
thành ma tr
ậ
n h
ệ
s
ố
c
ủ
a BT
Đố
i ng
ẫ
u.
* S
ố
ràng bu
ộ
c chung c
ủ
a BT g
ố
c là s
ố
bi
ế
n c
ủ
a BT
Đố
i ng
ẫ
u
*Quy t
ắ
c v
ề
d
ấ
u nh
ư
sau:
D
ấ
u m
ộ
t ràng bu
ộ
c chung c
ủ
a bài toán g
ố
c quy
đị
nh d
ấ
u c
ủ
a m
ộ
t ràng bu
ộ
c bi
ế
n t
ươ
ng
ứ
ng cùa BT
Đố
i
ng
ẫ
u
D
ấ
u m
ộ
t ràng bu
ộ
c bi
ế
n c
ủ
a BT g
ố
c quy
đị
nh d
ấ
u c
ủ
a m
ộ
t ràng bu
ộ
c chung t
ươ
ng
ứ
ng c
ủ
a BT
Đố
i
ng
ẫ
u.
Cách nhớ:
Bài toán gốc min: ràng buộc chung cùng dấu, ràng buộc biến trái dấu.
Bài toán gốc max: ràng buộc chung trái dấu, ràng buộc biến cùng dấu.
Ví d
ụ
:
1 2 4 1 2 3
1 2 3 4 1 2 3
2 3 4 1 2 3
1 2 3
1 2 3 4 1 2 3
1 2 3 4 1 2 3
f (x) x 2x 3x min BT DN g(y) 7y y 2y max
x 3x 4x x 7 y 0y 5y 1
x 2x 6x 1 3y y 5y 2
, y 0, y 0, y tùy ý
5x 5x x 8x 2 4y 2y y 0
x 0, x 0, x , x tùy ý y 6y 8y 3
1 3 4 1
A 0 1 2 6
5
= − + → = + − →
+ + + ≥ + + ≤
− + + ≤ − + ≥ −
≥ ≤
+ + + = − + + =
≥ ≤ + + =
= −
T
1 0 5
3 1 5
A
4 2 1
5 1 8
1 6 8
−
=
Ths
Đứ
c 0972 670 808 5
2. Cách tìm PATU của BT Đối ngẫu
* T
ừ
PATU c
ủ
a Bài Toán g
ố
c (BT
Đố
i ng
ẫ
u)
(
)
1 2 n 1 2 n
x ' (x ' , x ' , , x ' ) hoac y ' (y ' , y' , , y ' )
= =
ta th
ế
vào các ràng bu
ộ
c chung c
ủ
a BT g
ố
c
(
BT
Đố
i ng
ẫ
u
).
* Ki
ể
m tra xem trong các ràng bu
ộ
c chung BT g
ố
c n
ế
u ràng bu
ộ
c nào không x
ả
y ra d
ấ
u ‘=’ thì
ẩ
n
t
ươ
ng
ứ
ng trong BT
Đố
i ng
ẫ
u s
ẽ
‘=0’
* Ng
ượ
c l
ạ
i n
ế
u trong PA
1 2 n
x ' (x ' , x ' , , x ' )
=
c
ủ
a BT g
ố
c, giá tr
ị
'
i
x 0
>
thì ph
ươ
ng trình th
ứ
i trong
BT
Đố
i ng
ẫ
u s
ẽ
x
ả
y ra d
ấ
u ‘=’.