Tải bản đầy đủ (.pdf) (74 trang)

Chương 2. QUY HOẠCH TUYẾN TÍNH

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (196.58 KB, 74 trang )

Chương 2. QUY HOẠCH TUYẾN TÍNH
Lê Phương
Bộ mơn Tốn kinh tế
Đại học Ngân hàng TP. Hồ Chí Minh
Homepage: />

1 Lập mơ hình bài tốn qui hoạch tuyến tính

Khái niệm bài tốn qui hoạch tuyến tính
Các bước lập mơ hình bài tốn
2 Thuật tốn đơn hình
Biến đổi bài tốn về dạng chuẩn
Dạng tổng qt
Dạng chính tắc
Dạng chuẩn

Thuật tốn đơn hình cơ bản
Thuật tốn đơn hình mở rộng
3 Bài tốn đối ngẫu
Xây dựng bài toán đối ngẫu
Mối quan hệ giữa hai bài tốn đối ngẫu

Cặp ràng buộc đối ngẫu
Tìm tập phương án tối ưu
Chứng minh một phương án là phương án tối ưu

4 Bài tốn vận tải

Định nghĩa
Tính chất
Thuật tốn thế vị



Nội dung


Khái niệm bài tốn QHTT
Ví dụ
Tại sân bay X có nhu cầu vận chuyển 2000 khách và 220 tấn hàng
hoá đến sân bay Y. Thời điểm đó có ba loại máy bay có thể sử dụng
với khả năng vận chuyển và chi phí (triệu đồng) như sau:
Loại máy bay

Chi phí

A
B
C

140
200
300

Khả năng vận chuyển
Hành khách Hàng hóa
150 người
18 tấn
180 người
16 tấn
320 người
25 tấn


Có thể
sử dụng
3 chiếc
6 chiếc
5 chiếc

Xác định phương án sử dụng máy bay để vận chuyển hết số hàng và
khách nêu trên với chi phí thấp nhất.


Khái niệm bài toán QHTT
Khái niệm
Bài toán quy hoạch tuyến tính là bài tốn tối ưu có điều kiện ràng
buộc và được phát biểu ở dạng tổng quát như sau:
Tìm vector x = (x1 , x2 , . . . , xn ) sao cho
f (x) = c1 x1 + c2 x2 + · · · + cn xn → min (max)

a11 x1 + a12 x2 + · · · + a1n xn
[≤, ≥, =] b1



a x + a x + · · · + a x
[≤,
≥, =] b2
21 1
22 2
2n n

···




am1 x1 + am2 x2 + · · · + amn xn [≤, ≥, =] bm
xj ≤ 0, hoặc xj ≥ 0, hoặc xj tùy ý
trong đó
• aij , bi và cj là các hằng số cho trước
• xj là các biến số
(i = 1, m, j = 1, n)


Khái niệm bài tốn QHTT
Ví dụ
f (x) = x1 − 2x2 + 3x3 → min


2x − x2 + x3
=4

 1
3
3x1 − x2 + x3 ≤ −2

2


x1 + x2 + 2x3
= −5
x1 ≥ 0, x2 ≤ 0


Ví dụ

f (x) = 2x1 − x3 + x4 → max


≥ 14
2x1 − x2 + x3 + x4
x1 + 2x2 − x3
≤ −7


3x1 + x2 + 2x3 − x4 ≤ 4
xj ≥ 0, xj ∈ N, j = 1, 4


Các bước lập mơ hình bài tốn QHTT
Xác định các biến cần thiết xj (j = 1, n) để có thể
• Xây dựng được hàm mục tiêu
f (x) = c1 x1 + c2 x2 + · · · + cn xn → min (max)
• Thiết lập được các ràng buộc chính đối với các biến

a11 x1 + a12 x2 + · · · + a1n xn
[≤, ≥, =] b1



a x + a x + · · · + a x
[≤, ≥, =] b2
21 1
22 2

2n n

·
·
·



am1 x1 + am2 x2 + · · · + amn xn [≤, ≥, =] bm
• Xác định các ràng buộc dấu đối với mỗi biến

xj ≤ 0, hoặc xj ≥ 0, hoặc xj tùy ý.
Hệ ràng buộc chính và ràng buộc dấu được gọi chung là hệ ràng
buộc.


Các bước lập mơ hình bài tốn QHTT

Khi lập mơ hình bài tốn qui hoạch tuyến tính cần chú ý
• Để xác định các biến dễ dàng hơn, ta thường xác định hàm mục
tiêu của bài tốn trước.
• Thơng thường các biến được gọi là các biến đơn giản nhất của
bài tốn.
• Nhiều bài tốn địi hỏi các biến là các số tự nhiên.
• Các sai lầm hay gặp phải khi gọi biến
1
2

Việc gọi biến chỉ lập được hàm mục tiêu mà khơng lập được các
ràng buộc chính.

Gọi biến nhưng sau đó xác định được ngay giá trị của biến.


Các bước lập mơ hình bài tốn QHTT

Ví dụ (Bài toán vận tải)
Cần vận chuyển gạo từ 2 kho A1, A2 với khối lượng lần lượt là 100 và
150 tấn đến 3 đại lí gạo B1, B2, B3 lần lượt có nhu cầu là 70, 100 và
80 tấn. Hãy lập mơ hình để tổng chi phí vận chuyển là nhỏ nhất, biết
rằng chi phí vận chuyển 1 tấn gạo từ mỗi kho đến mỗi đại lí được cho
trong bảng sau
PP
PP Đến
B1 B2 B3
PP
Từ
PP
A1
10
7
3
A2
5
9
6


Các bước lập mơ hình bài tốn QHTT
Giải:
Gọi x1

x2
x3
x4
x5
x6

là khối lượng gạo (tấn) vận chuyển từ kho A1 đến đại lí B1.
là khối lượng gạo (tấn) vận chuyển từ kho A1 đến đại lí B2.
là khối lượng gạo (tấn) vận chuyển từ kho A1 đến đại lí B3.
là khối lượng gạo (tấn) vận chuyển từ kho A2 đến đại lí B1.
là khối lượng gạo (tấn) vận chuyển từ kho A2 đến đại lí B2.
là khối lượng gạo (tấn) vận chuyển từ kho A2 đến đại lí B3.

Hàm mục tiêu là hàm tổng chi phí vận chuyển:
f (x) = 10x1 + 7x2 + 3x3 + 5x4 + 9x5 + 6x6 → min.
Các ràng buộc chính:
Tổng cung của kho A1: x1 + x2 + x3 = 100.
Tổng cung của kho A2: x4 + x5 + x6 = 150.
Tổng cầu của đại lí B1: x1 + x4 = 70.
Tổng cầu của đại lí B2: x2 + x5 = 100.
Tổng cầu của đại lí B3: x3 + x6 = 80.
Các ràng buộc dấu: xj ≥ 0, j = 1, 6.


Các bước lập mơ hình bài tốn QHTT

Vậy mơ hình bài toán là:
f (x) = 10x1 + 7x2 + 3x3 + 5x4 + 9x5 + 6x6 → min



x1 + x2 + x3 = 100





x4 + x5 + x6 = 150
x1 + x4 = 70



x2 + x5 = 100



x + x = 80
3
6
xj ≥ 0, j = 1, 6.


Các bước lập mơ hình bài tốn QHTT
Bài tập 1
Có 3 xí nghiệp A, B, C có khả năng sản xuất 3 loại sản phẩm
S1 , S2 , S3 . Biết cứ mỗi đơn vị tiền tệ đầu tư vào A sẽ sản xuất được
1200, 800, 1050 sản phẩm S1 , S2 , S3 . Đầu tư vào B được 1000, 740,
900. Đầu tư vào C được 1100, 600, 1000. Mức tiêu hao nguyên liệu
(kg / sản phẩm) và lao động (giờ / sản phẩm) cho bởi bảng sau:
Xí nghiệp
A

B
C

NL
4
4,2
4,5

S1


2
3
2,5

S2
NL
10
9
10,5


4
4,5
5

NL
8
7,8
8,4


S3


4,5
5
4

Tổng số lao động và nguyên liệu có thể cung cấp lần lượt là 2.000 giờ
công và 39.000 kg. Theo kế hoạch sản xuất khơng được ít hơn 2.300
sp S1 ; 1.800 sp S2 ; 2.100 sp S3 . Hãy lập mơ hình bài tốn tìm kế
hoạch sản xuất tối ưu.


Các bước lập mơ hình bài tốn QHTT
Bài tập 2
Một người có số tiền 70 triệu đồng dự định đầu tư vào các khoản sau:
Gửi tiết kiệm không kỳ hạn với lãi suất 6,5%/năm; Gửi tiết kiệm có kỳ
hạn với lãi suất 8,5%/năm; Mua tín phiếu với lãi suất 10%/năm; Cho
doanh nghiệp tư nhân vay với lãi suất 13%/năm.
Mỗi khoản đầu tư đều có các rủi ro của nó, nên người đó quyết định
đầu tư theo các chỉ dẫn sau đây của nhà tư vấn: Không cho doanh
nghiệp tư nhân vay quá 20% số tiền, số tiền mua tín phiếu không
được vượt quá tổng số tiền đầu tư vào 3 khoản cịn lại, đầu tư ít nhất
30% tổng số tiền vào gửi tiết kiệm có kỳ hạn và mua tín phiếu, tỉ lệ
tiền gửi tiết kiệm không kỳ hạn trên tiền gửi tiết kiệm có kỳ hạn khơng
được q 1/3.
Hãy lập mơ hình cho bài tốn xác định số tiền đầu tư vào mỗi
khoản để tổng số tiền lời đạt được cao nhất và tuân theo các chỉ
dẫn của nhà tư vấn, biết rằng người đó quyết định đầu tư hết số tiền

đang có.


Các bước lập mơ hình bài tốn QHTT
Bài tập 3
Một xí nghiệp cần sản xuất 3 loại bánh: bánh đậu xanh, bánh thập
cẩm và bánh dẻo. Lượng nguyên liệu đường, đậu cho một bánh mỗi
loại, lượng dự trữ nguyên liệu, tiền lãi cho một bánh mỗi loại được cho
trong bảng sau
PP
PP Bánh đậu xanh
PP
NL
P
P
Đường
0,04kg
Đậu
0,07kg
Lãi
3000

thập cẩm

dẻo

Lượng dự trữ

0,06kg
0kg

2000

0,05kg
0,02kg
2500

500kg
300kg

Hãy lập mơ hình bài tốn tìm số lượng mỗi loại bánh cần sản xuất
sao cho không bị động về nguyên liệu mà lãi đạt được cao nhất.


Các bước lập mơ hình bài tốn QHTT
Bài tập 4
Một cơ sở sản xuất đồ gỗ dự định sản xuất ba loại sản phẩm là bàn,
ghế và tủ. Định mức sử dụng lao động, chi phí sản xuất và giá bán
mỗi sản phẩm mỗi loại ước tính trong bảng sau
❳❳❳
Sản phẩm
❳❳❳
❳❳❳
Yếu tố


Lao động (ngày cơng)
Chi phí sản xuất (ngàn đồng)
Giá bán (ngàn đồng)

Bàn


Ghế

Tủ

2
100
260

1
40
120

3
250
600

Hãy lập mơ hình tốn học của bài toán xác định số sản phẩm mỗi loại
cần phải sản xuất sao cho không bị động trong sản xuất và tổng
doanh thu đạt được cao nhất, biết rằng cơ sở có số lao động tương
đương với 500 ngày cơng, số tiền dành cho chi phí sản xuất là 40
triệu đồng và số bàn, ghế phải theo tỉ lệ 1/6.


Các bước lập mơ hình bài tốn QHTT
Bài tập 5
Giả sử yêu cầu tối thiểu mỗi ngày về các chất dinh dưỡng đạm,
đường, khoáng cho một loại gia súc tương ứng là 90g, 130g, 10g.
Cho biết hàm lượng các chất dinh dưỡng (g) trên có trong 1g thức ăn
A, B, C và giá mua 1kg thức ăn mỗi loại (đ) được cho trong bảng sau

❵❵❵
❵❵ ❵
Thức ăn

A
Dinh dưỡng ❵❵❵❵❵
Đạm
0,1
Đường
0,3
Khoáng
0,02
Giá mua
3000

B

C

0,2
0,4
0,01
4000

0,3
0,2
0,03
5000

Hãy lập mơ hình tốn học của bài tốn xác định khối lượng thức ăn

mỗi loại phải mua để tổng số tiền chi cho mua thức ăn ít nhất nhưng
đáp ứng được nhu cầu dinh dưỡng mỗi ngày.


Biến đổi bài toán về dạng chuẩn
Dạng tổng quát
Dạng tổng qt của bài tốn qui hoạch tuyến tính là
f (x) = c1 x1 + c2 x2 + · · · + cn xn → min (max)

a11 x1 + a12 x2 + · · · + a1n xn
[≤, ≥, =] b1



a x + a x + · · · + a x
[≤, ≥, =] b2
21 1
22 2
2n n

·
·
·



am1 x1 + am2 x2 + · · · + amn xn [≤, ≥, =] bm
xj ≤ 0, hoặc xj ≥ 0, hoặc xj tùy ý.

Nhận xét


Với bài toán f (x) → max, ta đặt g(x) = −f (x) thì bài tốn trở thành
g(x) → min. Do đó ta chỉ cần xét bài tốn qui hoạch tuyến tính có
hàm mục tiêu f (x) → min.


Biến đổi bài tốn về dạng chuẩn
Kí hiệu
 thường dùng
a11 a12 · · ·
 a21 a22 · · ·

A= .
..
..
 ..
.
.

a1n
a2n
..
.





: ma trận hệ số ẩn,



am1 am2 · · · amn

b1
 b2 


b =  . : ma trận hệ số tự do,
 .. 
bm
c = c1 c2 . . . cn : ma trận hệ số hàm mục tiêu,


x1
 x2 


[x] =  . : ma trận ẩn số.
 .. 
xn



Biến đổi bài tốn về dạng chuẩn
Dạng chính tắc
Bài tốn qui hoạch tuyến tính dạng chính tắc là bài tốn qui hoạch
tuyến tính mà ràng buộc chính là phương trình và ràng buộc dấu là
không âm
f (x) = c1 x1 + c2 x2 + · · · + cn xn


a11 x1 + a12 x2 + · · · + a1n xn


a x + a x + · · · + a x
21 1
22 2
2n n

···



am1 x1 + am2 x2 + · · · + amn xn
xj ≥ 0 với mọi j = 1, n.

→ min (max)
= b1
= b2
= bm

Bài toán qui hoạch tuyến tính dạng chính tắc có thể viết dưới dạng

f (x) = c[x] → min (max)
A[x] = b
[x] ≥ 0.


Biến đổi bài toán về dạng chuẩn
Các bước đưa bài tốn dạng tổng qt về dạng chính tắc
1


Nếu xj ≤ 0 thì ta thay xj bằng xj′ bằng cách đặt xj = −xj′ với
xj′ ≥ 0.

2

Nếu xj chưa xác định dấu thì ta đặt xj = xj′ − xj′′ với xj′ ≥ 0,
xj′′ ≥ 0.

3

Nếu có ràng buộc chính có dạng
vào ẩn phụ xk ≥ 0 để có

n
j=1

aij xj ≤ bi thì ta cộng thêm

n

aij xj + xk = bi
j=1

4

Nếu có ràng buộc chính có dạng
phụ xk ≥ 0 để có

n

j=1

aij xj ≥ bi thì ta trừ đi ẩn

n

aij xj − xk = bi
j=1


Biến đổi bài tốn về dạng chuẩn
Ví dụ
Hãy đưa bài tốn sau về dạng chính tắc
f (x) = x1 − 2x2 + x3 → min


−x1 − 4x2 − x3 ≤ −6
x1 − x2 + 2x3
≥8


2x1 + x2 − 3x3 = 4
x1 ≥ 0; x2 ≤ 0
Giải. Bài toán tương đương ở dạng chính tắc là
f (x) = x1 + 2x2′ + x3′ − x3′′ → min

−x1 + 4x2′ − x3′ + x3′′ + x4 = −6

x1 + x2′ + 2x3′ − 2x3′′ − x5 = 8



=4
2x1 − x2′ − 3x3′ + 3x3′′
x1 , x2′ , x3′ , x3′′ , x4 , x5 ≥ 0
trong đó
x2 = −x2′
x3 = x3′ − x3′′


Biến đổi bài toán về dạng chuẩn

Bài tập
Hãy đưa bài tốn sau về dạng chính tắc
f (x) = 2x1 − 4x2 − x3 + 6x4 → max


4x1 − 6x2 + 5x3 ≤ 50
2x1 + 3x2 − 5x3 = −25


7x1 + x3
≥ 30
x1 ≤ 0; x2 ≤ 0


Biến đổi bài toán về dạng chuẩn

Ẩn cơ bản

Ẩn xj được gọi là ẩn cơ bản (ACB) của ràng buộc chính thứ i nếu hệ

số của xj ở ràng buộc chính thứ i bằng 1 cịn trong các ràng buộc
chính còn lại hệ số của xj bằng 0
aij = 1, a1j = a2j = · · · = a(i−1)j = a(i+1)j = · · · = amj = 0.

Dạng chuẩn
Bài tốn qui hoạch tuyến tính dạng chuẩn là bài tốn qui hoạch tuyến
tính dạng chính tắc có bi ≥ 0 với mọi i và mỗi ràng buộc chính có ít
nhất một ẩn cơ bản.


Biến đổi bài toán về dạng chuẩn
Các bước đưa bài tốn dạng chính tắc về dạng chuẩn
1

Nếu tồn tại bi < 0 thì ta thay phương trình
ai1 x1 + ai2 x2 + · · · + ain xn = bi
bằng phương trình
−ai1 x1 − ai2 x2 − · · · − ain xn = −bi

2

Nếu một phương trình khơng có ẩn cơ bản, ta thêm một ẩn giả
xk ≥ 0 vào phương trình, đồng thời cộng Mxk vào hàm mục tiêu
tương ứng với bài tốn min, với M là kí hiệu cho một số dương
lớn tùy ý.


Biến đổi bài tốn về dạng chuẩn
Ví dụ
Biến đổi bài toán sau về dạng chuẩn

f (x) = x1 + 2x2′ + x3′ − x3′′ → min

−x1 + 4x2′ − x3′ + x3′′ + x4 = −6

x1 + x2′ + 2x3′ − 2x3′′ − x5 = 8


=4
2x1 − x2′ − 3x3′ + 3x3′′
x1 , x2′ , x3′ , x3′′ , x4 , x5 ≥ 0

Giải.
f (x) = x1 + 2x2′ + x3′ − x3′′ + Mx6 + Mx7 + Mx8 → min



′′

=6
x1 − 4x2 + x3 − x3 − x4 + x6


′′
x1 + x2 + 2x3 − 2x3 − x5 + x7 = 8


2x1 − x2′ − 3x3′ + 3x3′′ + x8
=4
x1 , x2′ , x3′ , x3′′ , x4 , x5 , x6 , x7 , x8 ≥ 0



Biến đổi bài toán về dạng chuẩn
Bài tập 1
Biến đổi bài toán sau về dạng chuẩn
f (x) = 3x1 + 2x2 + 2x3 + x4 → min


4x1 − 6x2 + 5x3 = 50
7x1 + x3 + x4
=0


2x1 + 3x2 − 5x3 = −25
xj ≥ 0, j = 1, 4

Bài tập 2

Biến đổi bài toán sau về dạng chuẩn
f (x) = 3x1 + 2x2 + 2x3 + x4 → min


≤ 50
−9x1 + 15x3
−6x3 + 2x4
= −120


x1 + 3x2 − 5x3 ≥ −45
xj ≥ 0, j = 1, 4



×