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

Tập bài giảng 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 (1.71 MB, 147 trang )

Bài giảng Quy hoạch tuyến tính

LỜI GIỚI THIỆU
Trong q trình cơng nghiệp hóa, hiện đại hóa nền kinh tế, việc giải quyết các bài
toán kinh tế bằng cách tăng cƣờng và hợp lí hóa q trình sản xuất, địi hỏi phải áp
dụng rộng rãi các phƣơng pháp khoa học tiên tiến, giúp có đƣợc các cách quyết định
hợp lý, hiệu quả. Một trong những kĩ thuật giúp lập kế hoạch hợp lí là việc áp dụng các
phƣơng pháp và mơ hình tốn kinh tế, đặc biệt là phƣơng pháp Quy hoạch tuyến tính.
Học phần Tốn chun đề 2 (Quy hoạch tuyến tính) là một học phần tự chọn đối
với các ngành học kỹ thuật nhƣ CNTT, Cơ khí . . . của trƣờng Đại học Sƣ phạm Kỹ
thuật. Để việc dạy và học theo học chế tín chỉ có hiệu quả thì việc biên soạn tập bài
giảng Quy hoạch tuyến tính là rất cần thiết.
Các tác giả đã cố gắng trình bày nội dung một cách đơn giản, trực quan nhƣng
vẫn đảm bảo tính khoa học của bài giảng. Tập bài giảng gồm 3 chƣơng:
Chương 1: Bài toán Quy hoạch tuyến tính và phương pháp đơn hình
Chương 2: Bài tốn Quy hoạch tuyến tính đối ngẫu
Chương 3: Bài tốn vận tải
Do tập bài giảng đƣợc biên soạn lần đầu nên khơng tránh khỏi những sai sót, các
tác giả rất mong nhận đƣợc sự đóng góp ý kiến của bạn đọc để tập bài giảng đƣợc hoàn
thiện hơn.
Các tác giả xin chân thành cảm ơn!
CÁC TÁC GIẢ

TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT NAM ĐỊNH

5


Bài giảng Quy hoạch tuyến tính

TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT NAM ĐỊNH



6


Bài giảng Quy hoạch tuyến tính

Chƣơng 1:

BÀI TỐN QUY HOẠCH TUYẾN TÍNH VÀ
PHƢƠNG PHÁP ĐƠN HÌNH

1.1. BÀI TỐN QUY HOẠCH TUYẾN TÍNH
1.1.1. Các ví dụ
Ví dụ 1: (Bài tốn lập kế hoạch sản xuất trong điều kiện tài nguyên hạn chế)
Nhân dịp tết Trung Thu, công ty sản xuất bánh Tràng An muốn sản xuất ba loại bánh:
Đậu xanh, Nƣớng, Dẻo. Để sản xuất ba loại bánh này, công ty cần: đƣờng, đậu, bột,
trứng, mứt, lạp sƣờn . . . Giả sử số đƣờng có thể chuẩn bị đƣợc 500 kg, đậu là 300 kg,
các nguyên liệu khác muốn bao nhiêu cũng có. Lƣợng đƣờng, đậu cần thiết và số tiền
lãi khi bán một chiếc bánh mỗi loại cho trong bảng sau:
Bánh

Bánh đậu xanh

Bánh nƣớng

Bánh dẻo

Nguyên liệu
Đƣờng: 500kg


0,06 kg

0,04kg

0,07 kg

Đậu: 300 kg

0,08 kg

0

0,04 kg

Lãi

2 nghìn

1,7 nghìn

1,8 nghìn

Cần lập kế hoạch sản xuất mỗi loại bánh bao nhiêu cái để không bị động về đƣờng,
đậu và tổng số lãi thu đƣợc là lớn nhất. (Giả thiết: nếu sản xuất bao nhiêu cũng bán hết)
Phân tích
Gọi x1 , x2 , x3 lần lƣợt là số chiếc bánh đậu xanh, nƣớng, dẻo cần sản xuất.
 Tất nhiên số lƣợng chiếc bánh mỗi loại không thể là số âm, tức là xj  0
(j = 1..3) (bằng 0 nếu không sản xuất loại bánh đó)
 Tổng số đƣờng cần dùng là: ……………………………………………………...
Tổng này khơng thể vƣợt quá 500 kg đƣờng có trong kho

 ...........................................................................................................................
TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT NAM ĐỊNH

7


Bài giảng Quy hoạch tuyến tính

 Tổng số đậu xanh cần dùng là: …………………………………………………..
Tổng này không thể vƣợt quá 300 kg đậu xanh có trong kho
 ...........................................................................................................................
 Tổng số lãi thu đƣợc là: .........................................................................................
Tổng này tất nhiên càng lớn càng tốt.
Từ các phân tích trên, mơ hình của bài tốn này là:
f(x) = 2x1 + 1,7x2 + 1,8x3  max

(1)

 0, 06x1  0, 04x 2  0, 07x 3  500

 300
 0, 08x1  0, 04x 3

(2)

xj  0 (j = 1,2,3)

(3)

 Hàm f(x) ở (1) đƣợc gọi là hàm mục tiêu của bài toán

 Các bất phƣơng trình ở (2) đƣợc gọi là các ràng buộc bắt buộc của bài toán
 Các ràng buộc về dấu (3) đƣợc gọi là các ràng buộc tự nhiên
Ví dụ 2: (Bài tốn vốn đầu tư nhỏ nhất)
Có ba xí nghiệp may: I , II , III cùng có thể sản xuất áo véc và quần. Do trình độ cơng
nhân, tài tổ chức, mức trang bị kỹ thuật … khác nhau, nên hiệu quả của đồng vốn ở các
xí nghiệp cũng khác nhau. Giả sử từ 1000 USD vào xí nghiệp I thì cuối kỳ sẽ cho 35
áo véc và 45 quần; vào xí nghiệp II thì cuối kỳ sẽ cho 40 áo véc và 42 quần; cịn vào xí
nghiệp III thì cuối kỳ cho 43 áo véc và 30 quần. Lƣợng vải và số giờ công cần thiết để
sản xuất 1 áo và 1 quần (còn gọi là xuất tiêu hoa nhiên liệu và lao động) ở ba xí nghiệp
cho trong bảng sau:

TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT NAM ĐỊNH

8


Bài giảng Quy hoạch tuyến tính

Xí nghiệp
I

II

III

Sản phẩm
Áo véc

3,5 m


20 giờ

4,0 m

16 giờ

3,8 m

18 giờ

Quần

2,8 m

10 giờ

2,6 m

12 giờ

2,5 m

15 giờ

Tổng số vải và giờ cơng lao động có thể huy động đƣợc cho cả 3 xí nghiệp là 10.000 m
và 52.000 giờ cơng. Theo hợp đồng kinh doanh thì cuối kỳ phải có tối thiểu 1.500 bộ
quần áo. Do đặc điểm hàng hố thì nếu lẻ bộ, chỉ có quần là dễ bán.
Hãy lập kế hoạch đầu tƣ vào xí nghiệp bao nhiêu vốn để:



Hồn thành kế hoạch sản phẩm



Khơng khó khăn về tiêu thụ



Khơng bị động về vải và lao động



Tổng số vốn đầu tƣ nhỏ nhất có thể

Phân tích
Gọi xj là số vốn (đơn vị là 1000 USD) đầu tƣ vào xí nghiệp j (j = 1,2,3)
 Tất nhiên xj  0 (j = 1,2,3)
 Tổng số áo véc thu đƣợc ở 3 xí nghiệp cuối kỳ là:
............................................................................................................................
Tổng này không thể nhỏ hơn 1500
............................................................................................................................
 Tổng số quần thu đƣợc ở 3 xí nghiệp cuối kỳ là:
............................................................................................................................
Tổng này khơng thể ít hơn tổng số áo véc, tức là:
............................................................................................................................
............................................................................................................................
TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT NAM ĐỊNH

9



Bài giảng Quy hoạch tuyến tính

Điều này đảm bảo nếu lẻ bộ thì chỉ dƣ quần (dễ bán)
 Tổng số vải cần dùng cho cả 3 xí nghiệp:
Tổng số vải để may áo véc là:
............................................................................................................................
Tổng số vải để may quần là:
............................................................................................................................
Tổng số vải cần dùng cho cả 3 xí nghiệp là:
............................................................................................................................
Tổng này không thể vƣợt quá 10.000 m
............................................................................................................................
 Tổng số giờ công lao động là:
............................................................................................................................
Tổng số giờ công để may áo véc là:
............................................................................................................................
Tổng số giờ công để may quần là:
............................................................................................................................
Tổng số giờ cơng cần dùng cho cả 3 xí nghiệp là:
............................................................................................................................
Tổng này không thể vƣợt quá 52.000 giờ công
............................................................................................................................
 Tổng số tiền cần phải đầu tƣ vào 3 xí nghiệp là:
............................................................................................................................
............................................................................................................................

TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT NAM ĐỊNH

10



Bài giảng Quy hoạch tuyến tính

Từ các phân tích trên, mơ hình bài tốn là:
f(x) = x1 + x2 + x3 → min
35x1 + 40x2 + 43x3

≥ 1500

10x1 + 2x2 - 13x3

≥0

248,5x1 + 269,2x2 + 238,4x3 ≤ 10000
≤ 52000

1150x1 + 1144x2 + 1224x3
xj  0 (j = 1,2,3)
Ví dụ 3: (Bài toán vận tải)

Ta cần vẩn chuyển vật liệu xây dựng từ 2 kho: K1 , K2 đến 3 công trƣờng xây dựng:
C1, C2, C3. Tổng số vật liệu có ở mỗi kho, tổng số vật liệu yêu cầu ở mỗi cơng trƣờng,
cũng nhƣ cƣớc phí vận chuyển 1 tấn vật liệu từ mỗi kho đến mỗi công trƣờng đƣợc cho
trong bảng sau:
Cơng trƣờng
Cƣớc phí

C1: 15 tấn


C2: 20 tấn

C3: 25 tấn

Kho
5 nghìn

7 nghìn

2 nghìn

K1: 20 tấn
x11
4 nghìn

x12
3 nghìn

x13
6 nghìn

K2: 40 tấn
x21

x22

x23

Hãy lập kế hoạch vận chuyển thế nào để:



Các kho giải phóng hết vật liệu



Các cơng trƣờng nhận đủ vật liệu cần thiết



Tổng số cƣớc phí vận chuyển là ít nhất

TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT NAM ĐỊNH

11


Bài giảng Quy hoạch tuyến tính

Phân tích
Gọi xij là số tấn vật liệu sẽ vận chuyển từ kho Ki đến công trƣờng Cj (i = 1,2 ; j = 1, 3 )
 Tất nhiên xij  0 với  i , j
 Số tấn vật liệu vận chuyển từ kho K1 đến cả 3 công trƣờng là:
............................................................................................................................
Tổng này phải bằng 20 tấn nếu muốn giải phóng kho K1
............................................................................................................................
 Số tấn vật liệu vận chuyển từ kho K2 đến cả 3 công trƣờng là:
............................................................................................................................
Tổng này phải bằng 40 tấn nếu muốn giải phóng kho K2
............................................................................................................................
 Số tấn vật liệu vận chuyển về công trƣờng C1 là:

............................................................................................................................
Tổng này phải bằng 15 tấn theo yêu cầu của công trƣờng C1
............................................................................................................................
 Số tấn vật liệu vận chuyển về công trƣờng C2 là:
............................................................................................................................
Tổng này phải bằng 20 tấn theo yêu cầu của công trƣờng C2
............................................................................................................................
 Số tấn vật liệu vận chuyển về công trƣờng C3 là:
............................................................................................................................
Tổng này phải bằng 25 tấn theo yêu cầu của cơng trƣờng C3
............................................................................................................................
 Tổng số cƣớc phí phải trả là:
............................................................................................................................

TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT NAM ĐỊNH

12


Bài giảng Quy hoạch tuyến tính

Tổng này càng nhỏ càng tốt
Từ phân tích trên, mơ hình của bài tốn này là
F(x) = 5x11 + 7x12 + 2x13 + 4x21 + 3x22 + 6x23  min
x11 + x12 + x13 = 20
x21 + x22 + x23 = 40
x11 + x21 = 15
x12 + x22 = 20
x13 + x23 = 25
xij ≥ 0 với i = 1,2; j = 1, 3

1.1.2. Bài tốn quy hoạch tuyến tính tổng qt
Bài tốn quy hoạch tuyến tính (QHTT) dạng tổng qt có dạng là:
Tìm (x1 , x2 , . . . , xn) sao cho
n

f(x) =

c x
j 1

j

j

 min (max)

(1)

với hệ ràng buộc:

 
a ij x j    b i ,

j 1
  

i = 1..m

(2)


 0 
x j   0 
 tïy ý 

, j = 1..n

(3)

n

 Hàm f(x) ở (1) đƣợc gọi là hàm mục tiêu của bài tốn, nó là tổ hợp tuyến tính
của các ẩn số, biểu thị một đại lƣợng nào đó mà ta phải quan tâm trong bài toán:
tổng số lãi thu đƣợc, tổng số vốn phải bỏ ra, giá thành sản phẩm . . .

TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT NAM ĐỊNH

13


Bài giảng Quy hoạch tuyến tính

 Các phƣơng trình, bất phƣơng trình ở (2) đƣợc gọi là các ràng buộc bắt buộc
của bài toán. Các ràng buộc này đƣợc nảy sinh do tài nguyên hạn chế, kế hoạch
sản phẩm, yêu cầu về kỹ thuật trong sản xuất . . .
 Các ràng buộc về dấu (3) đƣợc gọi là các ràng buộc tự nhiên: xj có thể âm,
dƣơng hoặc có dấu tuỳ ý (nó là số sản phẩm, số vốn, số ngƣời, nhiệt độ bảo
quản thực phẩm . . .)
Nhƣ vậy, bài tốn QHTT là bài tốn có các biểu thức xác định ở hàm mục tiêu và các
ràng buộc bắt buộc đều ở dạng tuyến tính.
Định nghĩa 1:

 Véc tơ x = (x1 , x2 , . . . , xn) đƣợc gọi là phƣơng án (PA) hay lời giải chấp
nhận đƣợc của bài tốn QHTT nếu nó thoả mãn tất cả các ràng buộc của bài
toán (kể cả ràng buộc bắt buộc và ràng buộc tự nhiên).
-

Tập hợp các phƣơng án của bài toán QHTT gọi là miền ràng buộc, ký
hiệu là D.

-

Phƣơng án x thỏa mãn ràng buộc i với dấu “=”, nghĩa là:

n

a x
j 1

ij

j

 bi thì

ràng buộc i gọi là “chặt” đối với phƣơng án x, hoặc phƣơng án x thỏa mãn
chặt ràng buộc i.
-

Phƣơng án x thỏa mãn ràng buộc i với dấu bất đẳng thức thực sự (dấu “<”
hoặc “>”, nghĩa là:


n

 aij x j  bi hoặc
j 1

n

a x
j 1

ij

j

 bi thì ràng buộc i gọi là “lỏng”

đối với phƣơng án x, hoặc phƣơng án x thỏa mãn lỏng ràng buộc i.
 Phƣơng án x* = ( x1* , x*2 ,..., x*n ) đƣợc gọi là phƣơng án tối ƣu (PATƢ) hay lời
giải tối ƣu của bài toán QHTT nếu giá trị hàm mục tiêu tại đó “khơng xấu” hơn
giá trị hàm mục tiêu tại một phƣơng án bất kỳ, tức là:
-

Nếu f(x)  min thì f(x*) ≤ f(x) với  x  D

-

Nếu f(x)  max thì f(x*) ≥ f(x) với  x  D

TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT NAM ĐỊNH


14


Bài giảng Quy hoạch tuyến tính

Một bài tốn QHTT có thể có nhiều PATƢ.
 Giải bài tốn QHTT tức là tìm một phƣơng án tối ƣu của nó (nếu có) hoặc chỉ ra
rằng nó khơng có PATƢ.
 Hai bài tốn QHTT đƣợc gọi là tƣơng đƣơng với nhau nếu chúng có chung tập
hợp các phƣơng án tối ƣu.
Quan hệ giữa bài toán cực đại và bài toán cực tiểu

f(x)  max

x  D

(1)



g(x)  f(x)  min

x  D

(2)

(trong đó: D là tập hợp các phƣơng án)
Tức là: nếu đổi dấu hàm mục tiêu và đổi loại hàm mục tiêu thì ta đƣợc bài tốn tƣơng
đƣơng. Vì lý do này mà khi nghiên cứu cách giải bài toán QHTT ngƣời ta chỉ cần xét
bài tốn có loại hàm mục tiêu là cực tiểu (hay chỉ xét bài tốn có hàm mục tiêu là cực

đại).
Chứng minh:
x* là PATƢ của bài toán (1)


x*  X và f(x*)  f(x) ,  x  X



x*  X và g(x*) = - f(x*)  - f(x) = g(x) ,  x  X



x* là PATƢ của bài tốn (2)

Ví dụ 4: Cho bài tốn QHTT sau
f(x) = 8x1 + 2x2 + 9x3 - x4  min
3x1
+ 2x3 - x4  14
x1 - 4x2
- 2x4 = 8
- x1 + 7x2 + x3 + 3x4  -7
x1  0
x2  0
x3  0
x4 tùy ý

(1)
(2)
(3)

(4)
(5)
(6)
(7)

TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT NAM ĐỊNH

15


Bài giảng Quy hoạch tuyến tính

Hỏi x0 = (0, -1, 6, -2) có phải PA của bài tốn trên khơng, nếu có thì chỉ ra nó thỏa
mãn ràng buộc nào là chặt, ràng buộc nào là lỏng?
Giải:
Số ẩn của bài toán trên là n = 4.
Dễ thấy X0 = (0, -1, 6, -2) thỏa mãn tất cả các ràng buộc từ (1) đến (7) nên x0 là PA.
Ngoài ra:
(1):

VT = 14 = VP (thỏa mãn chặt);

(2):

VT = 8 = VP (thỏa mãn chặt);

(3):

VT = -7 = VP (thỏa mãn chặt);


(4):

x1 = 0 = 0 (thỏa mãn chặt);

(5):

x2 = -1 < 0 (thỏa mãn lỏng);

(6):

x3 = 6 > 0 (thỏa mãn lỏng);

Định nghĩa 2: Phƣơng án cực biên (PACB)
x0 là PACB của bài tốn QHTT khi và chỉ khi nó phải làm thỏa mãn chặt ít nhất n
ràng buộc, trong đó phải có n ràng buộc chặt độc lập tuyến tính.
Chú ý: các ràng buộc đƣợc gọi là ĐLTT nếu hệ các véc tơ ràng buộc là ĐLTT
Ví dụ 5: Cho bài toán QHTT sau
f(x) = 8x1 + 2x2 + 9x3 - x4  min
+ 2x3 - x4  14

3x1
x1 - 4x2

- 2x4 = 8

- x1 + 7x2 + x3 + 3x4  -7

(1)
(2)
(3)


x1  0

(4)

x2  0

(5)

x3  0

(6)

x4 tùy ý

(7)

TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT NAM ĐỊNH

16


Bài giảng Quy hoạch tuyến tính

Hỏi X1 = (4, 0, 0, -2); X2 = (0, 0, 5, -4); X3 = (6, 0, 0, -1); X4 = (12, 0, 0, 2) có phải là
PA, PACB của bài tốn?
Giải:
Số ẩn của bài toán trên là n = 4.
* Phƣơng án X1 = (4, 0, 0, -2)




(1):

VT = 14 = VP (thỏa mãn chặt);

(2):

VT = 8 = VP (thỏa mãn chặt);

(3):

VT = -10 < -7 = VP (thỏa mãn lỏng);

(4):

x1 = 4 > 0 (thỏa mãn lỏng);

(5):

x2 = 0 = 0 (thỏa mãn chặt);

(6):

x3 = 0 = 0 (thỏa mãn chặt);

x1 = (4, 0, 0, -2) đã thỏa mãn chặt 4 ràng buộc.

Ta có: các ràng buộc (1), (2), (5), (6) là:
+ 2x3 - x4  14


3x1
x1 - 4x2

- 2x4 = 8

(1)
(2)

x2  0

(5)

x3  0

(6)

có định thức của ma trận hệ số là:

3 0
2 - 1
1 - 4 0 - 2
3 - 1
A=
= (- 1)4+ 3 (- 1)3+ 2
= - 5¹ 0
0 (1) 0
0
1 - 2
0 0 (1) 0



ràng buộc (1), (2), (5), (6) là độc lập tuyến tính

Kết luận: x1 là PACB của bài toán.
* Phƣơng án x2 = (0, 0, 5, -4)
(1):

VT = 14 = VP (thỏa mãn chặt);
TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT NAM ĐỊNH

17


Bài giảng Quy hoạch tuyến tính



(2):

VT = 8 = VP (thỏa mãn chặt);

(3):

VT = -7 = -7 = VP (thỏa mãn chặt);

(4):

x1 = 0 = 0 (thỏa mãn chặt);


(5):

x2 = 0 = 0 (thỏa mãn chặt);

(6):

x3 = 5 > 0 (thỏa mãn lỏng);

x2 = (0, 0, 5, -4) đã thỏa mãn chặt 5 ràng buộc (n = 4).

Xét định thức của ma trận hệ số các ràng buộc (1), (2), (4), (5) ta có:

3
0
1 - 4
A=
(1) 0
0 (1)

2 - 1
0 - 2
2 - 1
= (- 1)4+ 2 (- 1)3+ 1
= - 4¹ 0
0 0
0 - 2
0 0

 các ràng buộc (1), (2), (4), (5) là độc lập tuyến tính.
Kết luận: x2 là PACB của bài toán.

* Phƣơng án X3 = (6, 0, 0, -1)



(1):

VT = 19 >14 = VP (thỏa mãn lỏng);

(2):

VT = 8 = VP (thỏa mãn chặt);

(3):

VT = -9 < -7 = VP (thỏa mãn lỏng);

(4):

x1 = 4 > 0 (thỏa mãn lỏng);

(5):

x2 = 0 = 0 (thỏa mãn chặt);

(6):

x3 = 0 = 0 (thỏa mãn chặt);

x3 là PA của bài tốn nhƣng khơng là PACB vì nó chỉ thỏa mãn chặt có 3 ràng


buộc, nhỏ hơn số ẩn (n = 4).
* Phƣơng án x4 = (12, 0, 0, 2)
(1):

VT = 34 >14 = VP (thỏa mãn lỏng);

(2):

VT = 8 = VP (thỏa mãn chặt);

(3):

VT = - 6  -7 (không thỏa mãn).
TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT NAM ĐỊNH

18


Bài giảng Quy hoạch tuyến tính

 x4 khơng thỏa mãn ràng buộc (3) của bài tốn nên nó khơng là PA của bài toán trên.

1.1.3. Bài toán quy hoạch tuyến tính dạng chính tắc
Bài tốn QHTT dạng chính tắc là trƣờng hợp đặc biệt của bài toán QHTT dạng
tổng quát, trong đó các điều kiện ràng buộc bắt buộc là hệ gồm m phƣơng trình độc
lập tuyến tính (m  n), tất cả các ẩn số đều không âm. Dạng chính tắc của bài tốn
QHTT là:
Tìm (x1 , x2 , . . . , xn) sao cho
n


f(x) =

c x
j 1

j

j

 min

(1)

với hệ ràng buộc:

 a11x1  a12 x 2  ...  a1n x n  b1

 a 21x1  a 22 x 2  ...  a 2 n x n  b 2

.............................................
 a m1x1  a m2 x 2  ...  a mn x n  b m
xj  0 ,

j = 1, n

(2)

(3)

Trong nhiều trƣờng hợp, để thuận tiện cho việc trình bày, ta gọi bài tốn trên là

bài tốn (P) và viết nó ở dạng ma trận nhƣ sau:
c.x  min

(1)

Ax = b

(2)

x

(3)

trong đó:
 a11
a
 A =  21
 ...

 a m1

a12
a 22
...
am2

... a1n 
... a 2 n 
- là ma trận hệ số các ràng buộc bắt buộc.
... ... 


... a mn 

TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT NAM ĐỊNH

19


Bài giảng Quy hoạch tuyến tính

 a1 j 
a 
2j
 Aj =   - là véc tơ cột của ma trận A ứng với ẩn thứ j.
 ... 
 
 a mj 



A = [A1, A2, A3, . . . , An]

 b1 
b 
 b =  2  - là ma trận các số hạng tự do hay ma trận vế phải
 ... 
 
bm 

 c = c1


c2 ... cn  - là ma trận hệ số các ẩn trong hàm mục tiêu

 x1 
x 
 x =  2  - la ma trận ẩn số
 ... 
 
xn 

;

0
0
=  
...
 
0

Chú ý:
 Trong bài tốn QHTT dạng chính tắc, các ràng buộc đều chặt “Ax = b” và hạng
của ma trận A là bằng m: r(A) = m ≤ n.
 Nếu m = n thì hệ phƣơng trình Ax = b gồm n phƣơng trình, chứa n ẩn số mà r(A) =
n nên hệ đó có nghiệm duy nhất x* = (x*1, x*2, . . . , x*n) nên việc tìm cực trị của
hàm mục tiêu trở nên vơ nghĩa, do đó ta chỉ xét trƣờng hợp m < n.
Định nghĩa 3: Ta gọi cơ sở của ma trận A là một bộ gồm m véc tơ cột độc lập tuyến
tính B = {Aj1, Aj2, . . . , Ajm} của nó.
Giả sử B = {Aj1, Aj2, . . . , Ajm} là một cơ sở của ma trận A = {A1, A2, . . . , An} và đặt:
J = {1, 2, . . . , n} và JB = {j1, j2, . . . , jm}
Khi đó véc tơ x = (x1, x2, . . . , xn) thỏa mãn:

xj = 0 nếu j  JN = J \ JB
xjk (jk  JB) là thành phần thứ k của véc tơ B-1b

TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT NAM ĐỊNH

20


Bài giảng Quy hoạch tuyến tính

Nếu phƣơng án x = (x1, x2, . . . , xn) có các thành phần đều ≥ 0 thì nó là phương án cực
biên ứng với cơ sở B và B đƣợc gọi là cơ sở của bài tốn của bài tốn QHTT dạng
chính tắc trên.
Các biến xj  JB đƣợc gọi là biến cơ sở, còn xj  JN là biến phi cơ sở
Định lý 1: Một phƣơng án x* = (x1*, x2*, . . ., xn*) của bài tốn QHTT dạng chính tắc là
phƣơng án cực biên (PACB) khi và chỉ khi hệ véc tơ cột Aj ứng với thành phần xj* > 0
là độc lập tuyến tính.
Xét PACB x* = (x1*, x2*, . . ., xn*). Đặt: J(x) = { j | xj* > 0}, khi đó:
 Nếu | J(x) | = m thì PA x* trên là PACB khơng suy biến, tức là nó có đủ m thành
phần dƣơng và B = {Aj| j  J(x)} là một cơ sở tƣơng ứng với phƣơng án x*.
 Nếu | J(x) | < m thì PA x* trên là PACB suy biến, tức là nó có ít hơn m thành phần
dƣơng. Khi đó, ta có thể bổ sung vào hệ véc tơ {Aj| j  J(x)} một số véc tơ cột của
A sao cho thu đƣợc một hệ gồm đúng m véc tơ độc lập tuyến tính, tức là thu đƣợc
một cơ sở B của A và là cơ sở tƣơng ứng với x*.
Bài tốn QHTT đƣợc gọi là khơng suy biến nếu mọi PACB đều khơng suy biến; bài
tốn QHTT gọi là suy biến nếu có ít nhất một PACB là suy biến.
Ví dụ 6:
Cho bài tốn QHTT dạng chính tắc sau:
f(x) = -x1 - 2x2 – 3x3  min
x1 + x2 + x3 = 4

x1 - x2

=0

xj ≥ 0 , j = 1, 2, 3
Các véc tơ nào sau đây: x = (2; 2; 0), y = (0; 0; 4), z = (1; 1; 2) là PACB của bài toán.
Nếu là PACB thì hãy chỉ ra nó là PACB suy biến hay không suy biến.
Giải:

TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT NAM ĐỊNH

21


Bài giảng Quy hoạch tuyến tính

Ta có:

é1 1 1 ù
ú ; A1 =
A= ê
êë1 - 1 0 ú
û

é1ù
ê ú; A2 =
êë1ú
û

é1 ù

ê ú; A3 =
êë- 1ú
û

é1 ù
ê ú;
êë0 ú
û

Dễ thấy các véc tơ x, y, z đều thỏa mãn tất cả các ràng buộc bắt buộc và ràng buộc tự
nhiên nên x, y, z đều là PA của bài toán trên.
* Xét PA x = (2; 2; 0)  có 2 thành phần dƣơng: x1 = x2 = 2 > 0


|A1 A2| =

1
1
=-2
1 - 1

 {A1 , A2}_ độc lập tuyến tính

 PA x = (2; 2; 0) là PACB và khơng suy biến vì có đủ m = 2 thành phần dƣơng.
* Xét PA y = (0; 0; 4)  có 1 thành phần dƣơng: x3 = 4 > 0
mà véc tơ A3 khác véc tơ khơng nên nó độc lập tuyến tính
 PA y = (0; 0; 4) là PACB và là PACB suy biến vì có chỉ có 1 thành phần dƣơng.
* Xét PA z = (1; 1; 2)  có 3 thành phần dƣơng: x1 = x2 = 1, x3 = 2
mà hệ véc tơ {A1 , A2 , A3} thuộc không gian 2 chiều nên nó phụ thuộc tuyến tính.
 PA z = (1; 1; 2) khơng là là PACB của bài tốn trên.

Hệ quả 1: (tính hữu hạn của PACB)
Số PACB của bài tốn QHTT dạng chính tắc là hữu hạn.
Hệ quả 2:
Số thành phần dƣơng trong mỗi PACB của bài toán QHTT dạng chính tắc tối đa bằng
m (m là số dịng của ma trận A và r(A) = m)
Hệ quả 3:
Nếu bài tốn QHTT dạng chính tắc có PA thì cũng có PACB
Định lý 2: (Sự tồn tại của PATƢ)
Nếu bài toán QHTT có PA và hàm mục tiêu bị chặn dƣới (đối với bài toán f(x) 
min) hoặc hàm mục tiêu bị chặn trên (đối với bài toán f(x)  max) trên tập các PA thì
bài tốn có PATƢ.
Định lý 3: (Sự tồn tại của PACB tối ƣu)
TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT NAM ĐỊNH

22


Bài giảng Quy hoạch tuyến tính

Nếu bài tốn QHTT dạng chính tắc có PATƢ thì bài tốn có PACB tối ƣu.
Định lý 4: (Sự tồn tại nhiều PACB tối ƣu)
Nếu x0 là PATƢ của bài toán QHTT (P) và x1, x2 cũng là 2 PA khác nhau của bài toán
(P) trên thỏa mãn điều kiện x0 =  x1 + (1 – ) x2 với 0 <  < 1 thì x1, x2 là PATƢ
của bài tốn (P).
1.1.4. Bài tốn quy hoạch tuyến tính ở dạng chuẩn tắc
Bài tốn QHTT dạng chuẩn tắc là trƣờng hợp đặc biệt của bài tốn QHTT ở dạng
chính tắc, trong đó ma trận hệ số các ràng buộc A có chứa một ma trận con đơn vị cấp
m và các số hạng tự do khơng âm, tức là bi  0. Dạng chính tắc của bài tốn QHTT là:
Tìm (x1 , x2 , . . . , xn) sao cho
n


f(x) =

c x
j 1

j

j

 min

(1)

với hệ ràng buộc:

 a1(m 1) x m 1  a1(m  2) x m  2  ...  a1n x n  b1

 x1

 x2





 a 2(m 1) x m 1  a 2(m  2) x m  2  ...  a 2 n x n  b 2
..............................................................
x m  a m(m 1) x m 1  a m(m  2) x m  2  ...  a mn x n  b m
xj  0 ,


ngoài ra bi  0

j = 1, n

(2)

(3)

i = 1, m

,

Ta thấy ma trận hệ số là:

1
0

A = 0

...
0


0
1
0
...
0


0
0
1
...
0

...
...
...
...
...

0
0
0
...
1

a1( m 1)
a 2( m 1)
a 3( m 1)
.........
a m( m 1)

...
...
...
...
...


a1n 
a 2 n 
a 3n  = [A1 , A2 , . . . , Am , Am+1 , . . . , An]

... 
a mn 

Ma trận đơn vị cấp m

TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT NAM ĐỊNH

23


Bài giảng Quy hoạch tuyến tính

trong đó: Aj là các véc tơ cột của ma trận A ( các véc tơ cột A1 , A2 , . . . , Am trong
ma trận A còn đƣợc gọi là các véc tơ cột đơn vị)
Đối với bài toán QHTT dạng chuẩn tắc, hệ B gồm m véc tơ cột đơn vị luôn là một cơ
sở của ma trận A và là cơ sở đơn vị, các ẩn ứng với các véc tơ cột đơn vị trong ma trận
A đƣợc là ẩn cơ sở và còn đƣợc gọi là các ẩn cơ bản. Ẩn cơ bản ứng với véc tơ cột
đơn vị thứ i (i = 1..m) đƣợc gọi là ẩn cơ bản thứ i. Các ẩn còn lại là các ẩn khơng cơ
bản.
Nhận xét: Với bài tốn dạng chuẩn, ta ln tìm đƣợc PACB ban đầu ứng với cơ sở đơn
vị bằng cách cho các ẩn không cơ bản bằng không, các ẩn cơ bản bằng vế phải của
ràng buộc chứa nó, tức là:

 b j víi j  1, m
xj = 
 0 víi j  m  1 , n

tức là (x1 , . . . , xm , xm+1 , . . . , xn) = (b1 , . . . , bm, 0 , . . . , 0)
(nhớ rằng ở đây bi  0 , i = 1, m )
Chú ý: Ở trên, để tiện cách trình bày, ta xem m ẩn đầu là ẩn cơ bản, đồng thời số thứ
tự của ẩn cơ bản cũng chính là số thứ tự của ẩn. Trong thực tế, có sự xáo trộn và ta phải
nhận ra:
 Ẩn nào là ẩn cơ bản
 Ẩn cơ bản ấy là ẩn cơ bản thứ mấy
Ví dụ 7: Cho bài tốn QHTT ở dạng chuẩn sau:
f(x) = 2x1 – 5x2 + x3 – x5 + x6  min
 20
 2x1  2x 4  x 5

 3x1  4x 2  4x 4  x 6  0
 x  2x  x  3x
 28
2
3
4
 1

xj  0

, j = 1, 6

TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT NAM ĐỊNH

24


Bài giảng Quy hoạch tuyến tính


Ta thấy ma trận hệ số là:
2 1 0
 2 0 0

A   3 4 0 4 0 1
 1 2 1 3 0 0 
     
A1 A 2 A 3 A 4 A 5 A 6

é1 0 0 ù
ê
ú
Dễ thấy: [A5 A6 A3] = ê0 1 0 ú
ê
ú
ê0 0 1 ú
ë
û


Véc tơ cột đơn vị thứ nhất là A5 , thứ 2 là A6 , thứ 3 là A3



Ẩn cơ bản thứ nhất là x5 , ẩn cơ bản thứ 2 là x6 , ẩn cơ bản thứ 3 là x3

Cho các ẩn không cơ bản: x1 = x2 = x4 = 0  x3 = 28, x5 = 20, x6 = 0.
 PACB ban đầu là (x1 , x2 , x3 , x4 , x5 , x6) = (0 , 0 , 28 , 0 , 20 , 0). Đây là PACB suy
biến vì số thành phần dƣơng nhỏ hơn m = 3.

Ví dụ 8:
Cho bài tốn QHTT ở dạng chuẩn sau:
f(x) = 2x1 – 5x2 + x3 – x5 + x6  min

 2x 2  x 4  x 5

 3x 2  x 3  4x 6

 x1  2x 2  x 5  3x 6
 2x  x  x
6
7
 5
xj  0

 20
 10
 28
 25
, j = 1,7

Có ma trận hệ số là:
.....
.....
A= 
.....

.....

..... ..... ..... ..... ..... .....

..... ..... ..... ..... ..... .....
..... ..... ..... ..... ..... .....

..... ..... ..... ..... ..... .....

TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT NAM ĐỊNH

25


Bài giảng Quy hoạch tuyến tính

Véc tơ cột đơn vị thứ nhất, thứ 2, thứ 3 và thứ 4 lần lƣợt là ............................................
Ẩn cơ bản thứ nhất, thứ 2, thứ 3 và thứ 4 lần lƣợt là .......................................................
PACB ban đầu là (x1 , x2 , x3 , x4 , x5 , x6 , x7) = (

,

,

,

,

,

,

) và là PACB


suy biến hay khơng suy biến ? .........................................................................................
Ví dụ 9:
Cho bài tốn QHTT ở dạng chính tắc sau:
f(x) = 2x1 – 5x2 + x3 – x5 + x6  min

 2x 2  x 4  x 5

 3x 2  x 3  4x 6

 x 2  2x 4  x 5  3x 6
 2x  x  x
6
7
 5

7
5
 12
 13

xj  0 , j = 1,7
Có ma trận hệ số là:
.....
.....
A= 
.....

.....

..... ..... ..... ..... ..... .....

..... ..... ..... ..... ..... .....
..... ..... ..... ..... ..... .....

..... ..... ..... ..... ..... .....

Có các véc tơ cột đơn vị thứ mấy ? Cụ thể là các véc tơ nào ? ........................................
Còn thiếu các véc tơ cột đơn vị thứ mấy ? .......................................................................
Có các ẩn cơ bản nào ? Thứ tự của nó thế nào ? ..............................................................
Cịn thiếu các ẩn cơ bản thứ mấy ? ...................................................................................
1.2. BIẾN ĐỔI DẠNG CỦA BÀI TỐN QUY HOẠCH TUYẾN TÍNH
1.2.1. Đưa dạng tổng qt về dạng chính tắc
Mọi bài tốn QHTT dạng tổng qt đều có thể đƣa về dạng chính tắc với 5 quy tắc
mô tả dƣới đây:
1) Nếu hàm mục tiêu f(x)  max thì đổi dấu hàm mục tiêu và dạng của nó, tức là ta đặt:

TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT NAM ĐỊNH

26


Bài giảng Quy hoạch tuyến tính

g(x) = - f(x)  min
n

2) Nếu gặp ràng buộc

a x
j 1


ij

j

 bi thì ta cộng thêm vào vế trái một ẩn phụ không âm

xn+i  0 để biến về dạng phƣơng trình:

n

a x
j 1

n

3) Nếu gặp ràng buộc

a x
j 1

ij

j

ij

j

+ xn+i = bi


 bi thì ta cộng thêm vào vế trái một ẩn phụ không âm

xn+i  0 với hệ số -1 để biến về dạng phƣơng trình:

n

a x
j 1

4) Nếu gặp ẩn xj  0 thì ta đổi biến: xj = - x ,j

với

ij

j

- xn+i = bi

x ,j  0

5) Nếu gặp ẩn xj tuỳ ý về dấu, ta thay xj = x ,j - x ,,j với x ,j  0 và x ,,j  0
(nhƣng xj vẫn có thể âm, dƣơng, bằng 0 tuỳ theo x ,j nhỏ hơn, lớn hơn hay bằng x ,,j )
Chú ý:
a) Các ẩn phụ chỉ là những số giúp ta biến bất phƣơng trình thành phƣơng trình, chứ
khơng đóng vai trị gì về kinh tế nên nó khơng ảnh hƣởng đến hàm mục tiêu. Vì
vậy hệ số của nó trong hàm mục tiêu bằng 0.
b) Sau khi đƣa bài toán QHTT dạng tổng quát về dạng chính tắc, rồi giải bài tốn này.
Khi đó:
 Nếu bài tốn mới khơng có PATƯ thì bài tốn xuất phát cũng khơng có PATƯ.

 Nếu bài tốn mới có PATƯ x*  (x1* , x*2 ,..., x*n , x*n 1 ,...) thì x*  (x*1,x *2,...,x *n)
thu được bằng cách bỏ đi các ẩn phụ và nếu các ẩn xi khơng bị ràng buộc về
dấu (tức là có dấu tuỳ ý) thì tính x*j  x,*j  x,,*j , trong đó x ,*j và x ,,*j là 2 thành
phần tương ứng trong x *

TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT NAM ĐỊNH

27


Bài giảng Quy hoạch tuyến tính

Ví dụ 1: Đƣa bài tốn sau đây về dạng chính tắc:
f(x) = 3x1 – x2 + 2x3 - 5x4 + 2x5  min
2x1  x 3  3x 4  4x 5
x  3x  x
 2
3
4

x1  5x 4  x 5

4x1  x 2  2x 3  3x 5

 5
 2
 3
 8

x1 , x3  0 ; x5  0 ; x2 , x4 tuỳ ý

Ta thấy, bài toán trên chƣa ở dạng chính tắc do:
- Ràng buộc 1 , 2 , 4 chƣa phải là phƣơng trình
- Ẩn x5  0 và x2 , x4 tuỳ ý
Do đó để đƣa bài tốn QHTT trên về dạng chính tắc, ta làm nhƣ sau:
 Vì dấu của ràng buộc (1) là ≥ nên tại ràng buộc này, ta trừ đi ẩn phụ x6 ≥ 0:
2x1 – x3 + 3x4 + 4x5 – x6 = 5
 Vì dấu của ràng buộc (2) là ≤ nên tại ràng buộc này, ta cộng thêm ẩn phụ x7 ≥ 0:
x2 + 3x3 - x4 + x7 = - 2
 Vì dấu của ràng buộc (4) là ≤ nên tại ràng buộc này, ta cộng thêm ẩn phụ x8 ≥ 0:
4x1 – x2 + 2x3 - 3x5 + x8 = 8
Hệ số trong hàm mục tiêu của các ẩn x6 , x7 , x8 đều có hệ số bằng 0. Ngồi ra:
 Vì ẩn x5 ≤ 0 nên ta thay bằng x5 = – x ,5 với x ,5 ≥ 0
 Vì ẩn x2, x4 là tùy ý nên ta thay bằng:

x2 = x,2  x,,2 ; x4 = x,4  x,,4 (với x ,2 ,

x ,,2 , x ,4 , x ,,4  0)

trong hàm mục tiêu và các ràng buộc bắt buộc.
Khi đó, dạng chính tắc của bài tốn trên là:

TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT NAM ĐỊNH

28


Bài giảng Quy hoạch tuyến tính

f(x) = 3x1 – (x’2 – x”2) + 2x3 - 5(x’4 – x”4) - 2x’5  min
2x1 - x3 + 3(x’4 – x”4) - 4x’5 - x6 = 5

(x’2 – x”2) + 3x3 - (x’4 – x”4) + x7 = -2
x1 - 5(x’4 – x”4) + x’5

=3

4x1 - (x’2 – x”2) + 3x3 + 3x’5 + x8 = 8
x1, x’2, x”2, x3, x’4, x”4, x’5 ≥ 0
Ví dụ 2: Đƣa bài tốn sau về dạng chính tắc:
f(x) = - 2x1 + x2 + x4  max
x1

+ x2

- x3

x1

+ x2

+ x3

2x1

- x2

- x3

≤ 15
+ x4


= 27
≤ 18

x1 ≥ 0 , x2 ≤ 0 , x3 tuỳ ý , x4 ≤ 0
Giải:
Đặt x2 = - x’2 ; x3 = x’3 – x”3 ; x4 = - x’4
Bài tốn ở dạng chính tắc là:
g(x) = - f(x) = - (- 2x1 - x’2 - x’4 )  min
x1

- x’2 - (x’3 – x”3)

x1

- x’2 + (x’3 – x”3)

2x1

+ x’2 - (x’3 – x”3)

+ x5
- x’4

= 15
= 27

+ x6

=18


x1, x’2, x’3, x’’3, x’4, x5, x6 ≥ 0
trong đó: x5, x6 là ẩn phụ.

TRƢỜNG ĐẠI HỌC SƢ PHẠM KỸ THUẬT NAM ĐỊNH

29


×