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

Một phương pháp xấp xỉ trong giải bài toán quy hoạch nguyên phân tuyến tính theo phương pháp nhánh cận và ứng dụng

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 (460.77 KB, 63 trang )

ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC KHOA HỌC

ĐINH QUANG NGỌC

MỘT PHƯƠNG PHÁP XẤP XỈ TRONG
GIẢI BÀI TOÁN QUY HOẠCH NGUYÊN PHÂN TUYẾN TÍNH
THEO PHƯƠNG PHÁP NHÁNH CẬN VÀ ỨNG DỤNG

LUẬN VĂN THẠC SĨ TOÁN HỌC

Thái Nguyên - 2015


ĐẠI HỌC THÁI NGUYÊN
TRƯỜNG ĐẠI HỌC KHOA HỌC

ĐINH QUANG NGỌC

MỘT PHƯƠNG PHÁP XẤP XỈ TRONG
GIẢI BÀI TOÁN QUY HOẠCH NGUYÊN PHÂN TUYẾN TÍNH
THEO PHƯƠNG PHÁP NHÁNH CẬN VÀ ỨNG DỤNG

Chuyên ngành: Toán ứng dụng
Mã số:

60 46 01 12

LUẬN VĂN THẠC SĨ TOÁN HỌC

Người hướng dẫn khoa học:


TS. NGUYỄN ANH TUẤN

Thái Nguyên - 2015


i

Mục lục
Lời cam đoan

iii

Mở đầu
1

1

Bài toán quy hoạch phân tuyến tính với miền ràng buộc là hệ bất
phương trình tuyến tính và thuật toán giải
1.1

1.2

Một số bài toán thực tế đưa về bài toán quy hoạch phân tuyến
tính và quy hoạch nguyên phân tuyến tính . . . . . . . . . . . .

3

1.1.1


Bài toán vận tải phân tuyến tính . . . . . . . . . . . . .

4

1.1.2

Bài toán cực tiểu giá thành sản phẩm . . . . . . . . . .

4

1.1.3

Bài toán cực đại hiệu suất tiêu diệt mục tiêu địch . . . .

5

Bài toán quy hoạch phân tuyến tính với miền ràng buộc là hệ
bất phương trình tuyến tính và một vài tính chất của nó . . . . .
1.2.1
1.2.2

6

Bài toán quy hoạch phân tuyến tính với miền ràng buộc
là hệ bất phương trình tuyến tính . . . . . . . . . . . . .

6

Một vài tính chất của bài toán quy hoạch phân tuyến
tính với miền ràng buộc là hệ bất phương trình tuyến tính


1.3

3

7

Thuật toán nón xoay xấp xỉ trong giải bài toán quy hoạch phân
tuyến tính . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
1.3.1

Khái niệm về nón đơn hình tuyến tính . . . . . . . . . . 11

1.3.2

Khái niệm về cạnh và phương của cạnh của nón đơn hình 11

1.3.3

Khái niệm nón xoay M(r,s) sinh ra từ nón M . . . . . . . 18

1.3.4

Dấu hiệu tối ưu (Điều kiện tối ưu): . . . . . . . . . . . . 22


ii
1.3.5

Thuật toán nón xoay xấp xỉ trong giải bài toán quy

hoạch phân tuyến tính . . . . . . . . . . . . . . . . . . 23

1.4

Bảng lặp giải bài toán quy hoạch phân tuyến tính bởi thuật toán
PTT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

1.5

Thuật toán nón xoay tìm một nghiệm của hệ bất phương trình
tuyến tính . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
1.5.1

Thuật toán nón xoay tìm một nghiệm của hệ bất phương
trình tuyến tính với cơ sở xuất phát từ gốc toạ độ là đỉnh
của nón Rn+ . . . . . . . . . . . . . . . . . . . . . . . . 31

1.5.2

Bảng lặp tìm một nghiệm của hệ bất phương trình tuyến
tính với cơ sở xuất phát từ gốc toạ độ là đỉnh của nón Rn+ 32

2

Thuật toán nhánh cận xấp xỉ trong giải bài toán quy hoạch nguyên
phân tuyến tính với miền ràng buộc là hệ bất phương trình tuyến
tính và ứng dụng
2.1

34


Bài toán quy hoạch nguyên phân tuyến tính với miền ràng buộc
là hệ bất phương trình tuyến tính và thuật toán Land-Doig . . . . 34
2.1.1

Bài toán quy hoạch nguyên phân tuyến tính . . . . . . . 35

2.1.2

Thuật toán Land-Doig giải bài toán quy hoạch nguyên
phân tuyến tính . . . . . . . . . . . . . . . . . . . . . . 36

2.2

Thuật toán nhánh cận xấp xỉ trong giải bài toán quy hoạch
nguyên tuyến tính . . . . . . . . . . . . . . . . . . . . . . . . . 40

2.3

Minh họa ứng dụng thuật toán nhánh cận xấp xỉ trong ILF giải
bài toán quy hoạch nguyên phân tuyến tính có số chiều nhỏ với
miền ràng buộc là hệ bất phương trình tuyến tính . . . . . . . . 42

Kết luận và Đề nghị

57

Tài liệu tham khảo

58



iii

Lời cam đoan
Tôi xin cam đoan đây là công trình nghiên cứu của tôi.

Thái Nguyên, ngày 20 tháng 04 năm 2015
Học viên

Đinh Quang Ngọc


1

Mở đầu
Nhiều bài toán thực tế trong kinh tế cũng như trong toán học, thường gặp
trong lý thuyết trò chơi, trong công nghiệp hóa chất, trong cắt nguyên vật liệu,
trong mạng vận tải và trong định giá thành sản phẩm, . . . dẫn đến chúng ta
phải đi giải các bài toán quy hoạch nguyên phân tuyến tính. Một phương pháp
hiệu quả thường sử dụng để giải bài toán này đó là phương pháp nhánh cận
Land-Doig.
Để giải bài toán quy hoạch nguyên phân tuyến tính thông thường là chúng ta
phải tiến hành giải các bài toán quy hoạch phân tuyến tính tương ứng khi chưa
có điều kiện nguyên của biến với các ràng buộc bổ sung dạng bất phương trình
cho các thành phần của biến. Rõ ràng khi sử dụng phương pháp nhánh cận để đi
tìm các cận dưới tốt hơn (đối với bài toán min) cho bài toán quy hoạch nguyên
thì ta thường phải giải các bài toán tương ứng khi chưa có điều kiện nguyên
với miền ràng buộc được bổ sung thêm sau mỗi bước một ràng buộc dạng bất
phương trình đối với thành phần chưa nguyên của biến.

Các thuật toán giải bài toán quy hoạch nguyên phân tuyến tính với miền ràng
buộc là hệ phương trình tuyến tính với các biến không âm đã có nhiều thuật toán
giải tương tự như thuật toán đơn hình trong quy hoạch tuyến tính (xem [2], [8]).
Tuy nhiên trên thực tế bài toán thường có miền ràng buộc là hệ bất phương trình
tuyến tính. Do đó việc sử dụng các thuật toán giải trực tiếp bài toán quy hoạch
phân tuyến tính với miền ràng buộc là hệ bất phương trình tuyến tính là khá ưu
việt và hiệu quả hơn (vì không phải thêm vào các biến bù) khi ta phải đi giải
chúng bởi các phương pháp mà miền ràng buộc đòi hỏi ở dạng chính tắc (tức
là miền ràng buộc là hệ phương trình tuyến tính đối với các ràng buộc chính).
Chính vì vậy, luận văn này trình bày việc xây dựng một thuật toán xấp xỉ trong


2
giải bài toán quy hoạch nguyên phân tuyến tính với miền ràng buộc là hệ bất
phương trình tuyến tính và khai thác đặc thù riêng của hàm mục tiêu có tính đơn
điệu chứng minh bài toán nếu có lời giải thì nó có lời giải đạt ở biên của miền
chấp nhận, do đó trong mỗi bước để tìm các cận dưới đúng của bài toán nguyên,
chúng ta chỉ phải đi giải các bài toán quy hoạch tuyến tính tương ứng khi chưa
có điều kiện nguyên có số chiều là n − 1 (n là số chiều của bài toán). Như vậy
thuật toán sẽ hiệu quả khi giải bài toán quy hoạch nguyên tuyến tính dạng chuẩn
có số chiều là 2.

Thái Nguyên, tháng 04 năm 2015
Đinh Quang Ngọc
Học viên Cao học Toán K7A
Chuyên ngành Toán ứng dụng
Trường Đại học Khoa học - Đại học Thái Nguyên
Email:



3

Chương 1

Bài toán quy hoạch phân tuyến tính với miền
ràng buộc là hệ bất phương trình tuyến tính và
thuật toán giải
Như chúng ta đã biết, nhiều bài toán thực tế trong kinh tế cũng như trong
toán học, thường gặp trong lý thuyết trò chơi, trong công nghiệp hóa chất, trong
cắt nguyên vật liệu, trong mạng vận tải và trong định giá thành sản phẩm, . . .
đều có mô hình toán học dạng các bài toán quy hoạch nguyên phân tuyến tính.
Vì vậy nội dung của chương này sẽ giới thiệu một số mô hình thực tế có dạng
bài toán này và sau đó trình bày thuật toán xấp xỉ trong giải bài toán quy hoạch
phân tuyến tính với miền ràng buộc là hệ bất phương trình tuyến tính, làm cơ sở
để xây dựng thuật toán giải bài toán quy hoạch nguyên phân tuyến tính với miền
ràng buộc là hệ bất phương trình tuyến tính trình bày trong chương 2.

1.1

Một số bài toán thực tế đưa về bài toán quy hoạch phân
tuyến tính và quy hoạch nguyên phân tuyến tính

Sau đây chúng ta trình bày một số mô hình bài toán thực tế có dạng bài toán
quy hoạch phân tuyến tính và bài toán quy hoạch nguyên phân tuyến tính với
miền ràng buộc là hệ bất phương trình tuyến tính.


4

1.1.1


Bài toán vận tải phân tuyến tính

Có m trạm phát (kho hàng gồm các loại hàng như: ti vi, tủ lạnh, máy giặt,
. . . ) Ai (i = 1, 2, . . . , m). Mỗi trạm Ai có thể cung cấp tối đa ai đơn vị hàng. Có
n trạm thu (nơi có nhu cầu về hàng) Bj (j = 1, 2, . . . , n). Mỗi trạm thu Bj cần
phải được đáp ứng tối thiểu bj đơn vị hàng. pij là lợi nhuận (lãi suất) mà công ty
vận tải thu được khi vận chuyển một đơn vị hàng từ trạm phát Ai đến trạm thu
Bj , dij là chi phí vận chuyển một đơn vị hàng từ trạm phát Ai đến trạm thu Bj ,
Các lợi nhuận khác và các chi phí khác ngoài vận chuyển được xác định bằng
các hằng số p0 và d0 . Gọi xij là lượng hàng cần vận chuyển trạm phát Ai đến
trạm thu Bi . Ta có bài toán quy hoạch nguyên phân tuyến tính sau đây gọi là bài
toán vận tải phân tuyến tính:
Hàm mục tiêu:
m

P (x)
Q (x) =
=
D(x)

n

pij .xij + p0
i=1 j=1
m n

(1.1)
dij .xij + d0


i=1 j=1

Chúng ta cần phải cực đại hóa (cực tiểu hóa) hàm mục tiêu trên với các điều
kiện ràng buộc sau:
n

xij

ai (i = 1, 2, ...m)

(1.2)

xij

bj (j = 1, 2, ...n)

(1.3)

j=1
m

i=1

xij

1.1.2

0, nguyên, (i = 1, 2, . . . , m) , (j = 1, 2, . . . , n)

(1.4)


Bài toán cực tiểu giá thành sản phẩm

Một loại sản phẩm được sản xuất theo các phương pháp Tj (j = 1, 2, . . . , n).
Gọi pj là năng suất của phương pháp Tj (tức là số lượng sản phẩm được sản


5
xuất trong mỗi đơn vị thời gian), rj là chi phí trong một đơn vị thời gian đối với
phương pháp Tj , xj là số đơn vị thời gian sản xuất theo phương pháp Tj . Như
vậy giá thành một sản phẩm là
n

rj .xj
c(x) =

j=1
n

pj .xj
j=1

Bài toán đặt ra là cần cực tiểu hàm c(x) với các ràng buộc về vật tư, vốn, lao
động, kỹ thuật, . . .

1.1.3

Bài toán cực đại hiệu suất tiêu diệt mục tiêu địch

Một máy bay chiến đấu mang vũ khí với tải trọng là M . Trong kho vũ khí

có n loại (bom, tên lửa, rốc két, . . . ). Máy bay phải mang vũ khí đến đánh một
mục tiêu của địch, trọng lượng mỗi đơn vị vũ khí loại j là aj (j = 1, 2, . . . , n).
Xác suất tiêu diệt mục tiêu địch (trúng mục tiêu) của một đơn vị vũ khí loại j
là pj , số lượng vũ khí loại j có trong kho là Nj . Gọi xj là số lượng vũ khí loại j
mà máy bay cần mang. Bài toán đặt ra là máy bay cần mang mỗi loại vũ khí là
bao nhiêu để hàm hiệu suất chiến đấu dưới đây đạt cực đại:
n

pj .xj
P (x) =

j=1
n

xj
j=1

Với các ràng buộc

n

aj .xj

M

j=1

0

xj


Nj , nguyên, (j = 1, 2, . . . , n)


6

1.2

Bài toán quy hoạch phân tuyến tính với miền ràng buộc
là hệ bất phương trình tuyến tính và một vài tính chất
của nó

Trong mục này chúng tôi sẽ trình bày bài toán quy hoạch phân tuyến tính
với miền ràng buộc là hệ bất phương trình tuyến tính và một và tính chất cần
thiết cho việc xây dựng thuật toán giải bài toán này khi nó có điều kiện nguyên,
những tính chất đề cập ở đây là tính đơn điệu của hàm mục tiêu của bài toán trên
đoạn thẳng và tính đạt trên biên của ràng buộc bổ sung vào bài toán trong trường
hợp tái tối ưu hóa, tính chất này rất quan trọng vì sự khẳng định này sẽ làm cho
chúng ta khi đi tìm cận dưới đúng của các bài toán quy hoạch phân tuyến tính
tương ứng (chưa có điều kiện nguyên) sẽ khá hiệu quả, cụ thể là chúng ta khi
giải các bài toán này để tìm cận dưới đúng chỉ phải giải các bài toán quy hoạch
phân tuyến tính có số chiều là n − 1.

1.2.1

Bài toán quy hoạch phân tuyến tính với miền ràng buộc là
hệ bất phương trình tuyến tính

Xét bài toán quy hoạch sau đây gọi là bài toán quy hoạch phân tuyến tính
dạng chuẩn tổng quát:


L (x)

 f (x) = 1
→ min
L
(x)
2
(LF P )

 x ∈ P := {x ∈ Rn : < Ai , x > +b
i

0, i = 1, 2, ..., m}

trong đó
L1 (x) =< A0 , x > +b0 , L2 (x) =< C 0 , x > +d0 , A0 , Ai , C 0 , x ∈ Rn là
các vectơ dòng, A0 (a01 , a0 2, ..., a0n ), Ai (ai1 , ai2 , ..., ain ), C 0 (c01 , c02 , ..., c0n ),
là các vectơ dòng bi ∈ R1 . Hạng của hệ Ai (i = 1, 2, ..., m) bằng n, (m

n),

giả thiết này rất bình thường bởi miền ràng buộc P của bài toán quy hoạch phân
tuyến tính bao giờ cũng có ràng buộc về dấu của biến x. Giả thiết P là một đa


7
diện và L2 (x) = 0 trên P và không mất tính tổng quát giả sử L2 (x) > 0 trên P ,
L1 (x)
−L1 (x)

L+
1 (x)
vì nếu L2 (x) < 0 trên P thì ta có thể viết f (x) =
=
= +
L2 (x)
−L2 (x)
L2 (x)
+
và do đó sẽ có L2 (x) > 0 trên P . Với các giả thiết trên và những cơ sở đặc thù
riêng của hàm phân tuyến tính, ta có hàm mục tiêu của bài toán là hàm đơn điệu
trên mọi đoạn thẳng nằm trong P . Do vậy ta có thể xây dựng được theo kỹ thuật
đơn hình thuật toán giải bài toán quy hoạch phân tuyến tính với ràng buộc tuyến
tính, trước khi xây dựng thuật toán giải bài toán LF P trên, chúng ta trình bày
một vài tính chất riêng của bài toán quy hoạch phân tuyến tính với miền ràng
buộc là hệ bất phương trình tuyến tính.

1.2.2

Một vài tính chất của bài toán quy hoạch phân tuyến tính
với miền ràng buộc là hệ bất phương trình tuyến tính

Với các giả thiết của bài toán ở trên chúng ta phát biểu các tính chất của bài
toán này dưới dạng các định lí.
Tính đơn điệu của hàm mục tiêu bài toán LFP
L1 (x)
là hàm đơn điệu trên mỗi đoạn thẳng nằm
L2 (x)
trọn trong D, trừ ra tại những điểm {x ∈ D|L2 (x) = 0} hàm f (x) không xác


Định lí 1.1. Hàm f (x) =

định.
Chứng minh. Lấy x, y ∈ D xét sự thay đổi của f (x) trên đoạn thẳng nối hai
điểm x, y :
z = λx + (1 − λ)y, (0 λ 1).
λ.L1 (x) + (1 − λ) .L1 (y)
f (z) =
= L (λ) , (0
λ.L2 (x) + (1 − λ) .L2 (y)
đạo hàm theo λ:



λ

1)

dL(λ)
1  L1 (x) L1 (y) 
= 2

L2 (z) L2 (x) L2 (y)

dấu của đạo hàm phụ thuộc vào dấu của định thức. Vậy khi λ thay đổi trong
đoạn [0; 1] thì f (z) tăng hoặc giảm, hoặc giữ nguyên giá trị bằng hằng số.


8
Tính tái tối ưu hóa của bài toán LFP

Xét bài toán qui hoạch phân tuyến tính với miền ràng buộc là hệ bất phương
trình tuyến tính sau:

L1 (x)


f (x) =
→ min
L2 (x)
(T )

 x ∈ PT = x ∈ Rn :< Ai , x > +bi 0, i = 1, 2, . . . , N
x ∈ Rn , Ai là vectơ dòng và Ai ∈ Rn , N

n, Ai (ai1 , ai2 , ..., ain ) = O(0, . . . , 0),

C(c1 , c2 , ..., cn ), bi ∈ R1 , i = 1, 2, ..., N . Hạng của hệ Ai (i = 1, 2, . . . , N ) bằng
n, giả thiết này rất bình thường bởi vì miền ràng buộc PT của bài toán quy hoạch
tuyến tính thông thường có ràng buộc về dấu của biến x.
Giả sử chúng ta đã biết một lời giải của bài toán (T ) là
M∗
M∗

xM∗ = (xM
1 , x2 , ..., xn ) là đỉnh của nón đơn hình M∗ với tập chỉ số cơ sở


I∗ = (i∗1 , i∗2 , ..., i∗n )
i
và các vectơ chỉ phương của các cạnh của nón M∗ là zM

, ∀i ∈ I∗ . Bây giờ ta


thêm vào miền ràng buộc PT của bài toán (T ) ràng buộc sau:
< AN +1 , x > +bN +1

0.

(1.5)

Khi đó nếu xM∗ thoả mãn (1.5) thì nó cũng là một lời giải của bài toán (T ) có
thêm ràng buộc bổ sung (1.5), nếu ngược lại mà
< AN +1 , xM∗ > +bN +1 > 0.

(1.6)

Thì chúng
 ta gọi bài toán sau đây là bài toán tái tối ưu hoá của bài toán (T ):
L1 (x)


f (x) =
→ min
L2 (x)
(T∗ )

 x ∈ PT = x ∈ Rn :< Ai , x > +bi 0, i = 1, 2, . . . , m
trong đó m = N + 1



9
Rõ ràng để giải bài toán (T∗ ) mà sử dụng phương pháp đơn hình thì chúng ta
sẽ không khai thác được thông tin về việc đã biết lời giải của bài toán (T ). Còn
nếu chúng ta sử dụng phương pháp nón xoay xấp xỉ trong P T T trình bày trong
mục 1.3 dưới đây để giải bài toán (T∗ ) thì sẽ khai thác được thông tin (1.5) và
(1.6) nói trên. Đồng thời chúng ta sẽ đề ra một quy tắc ưu tiên chọn chỉ số đưa
ra khỏi cơ sở một cách hợp lý làm cho thuật toán P T T trở nên hiệu quả hơn khi
giải bài toán tái tối ưu hoá (T∗ ).
Định lý tái tối ưu hoá:
Nếu xM∗ là một lời giải của bài toán (T ), nhưng nó không phải là phương
án của bài toán (T∗ ) và bài toán (T∗ ) có phương án, thì bài toán (T∗ ) luôn có
phương án tối ưu x∗ thoả mãn:
< AN +1 , x∗ > +bN +1 = 0

Chứng minh. Ta thấy PT ⊃ PT∗ và do xM∗ là một lời giải của (T ) nên:
f (xM∗ )

f (x), ∀x ∈ PT ⇒ f (xM∗ )

f (x), ∀x ∈ PT∗

Điều này có nghĩa là trên miền PT∗ hàm mục tiêu bài toán (T∗ ) bị chặn dưới
và nó có phương án thì nó phải có phương án tối ưu. Giả sử x1 là một phương
án tối ưu của bài toán(T∗ ), vậy dễ thấy:
⇒ f (xM∗ )

f (x1 )

i) Nếu < AN +1 , x1 > +bN +1 = 0 thì ta có ngay điều phải chứng minh.
ii) Nếu

< AN +1 , x1 > +bN +1 < 0,
và do xM∗ không phải là phương án của bài toán (T∗ ) tức ta có (1.6).
< AN +1 , x1 > +bN +1
Gọi α1 =
(< AN +1 , xM∗ > +bN +1 ) − (< AN +1 , x1 > +bN +1 )

(1.7)


10

(1.8)

x(α1 ) = α1 xM∗ + (1 − α1 )x1
Dễ dàng kiểm tra thấy:

(1.9)

< AN +1 , x(α1 ) > +bN +1 = 0.

Lại từ (1.6), (1.7) dễ dàng thấy α1 ∈ (0, 1) và vì xM∗ , x1 tương ứng là phương
án của các bài toán (T ) và (T∗ ) nên ta có:
< Ai , x(α1 ) > +bi = α1 [< Ai , xM∗ > +bi ]+(1−α1 )[< Ai , x1 > +bi ]

0,

∀i = 1, 2, ..., N
Hay
< Ai , x(α1 ) > +bi


0, ∀i = 1, 2, ..., N

(1.10)

Vậy từ (1.9) và (1.10) suy ra x(α1 ) là một phương án của bài toán (T∗ ) Mặt khác
do tính đơn điệu của hàm phân tuyến tính nên ta có:
f xM

f (x (α1 ))

f x1

(1.11)

Từ (1.11) và do x1 là phương án tối ưu của bài toán (T∗ ) nên suy ra x∗ = x(α1 )
cũng là phương án tối ưu của bài toán (T∗ ) thoả mãn (1.9).
Định lý này cho ta kết luận rằng: Nếu biết lời giải của bải toán quy hoạch
phân tuyến tính với miền ràng buộc là hệ bất phương trình tuyến tính, không
còn là lời giải của bài toán mới khi thêm vào miền ràng buộc một ràng buộc là
bất phương trình tuyến tính, và nếu bài toán mới này (gọi là bài toán tái tối ưu
hóa) có phương án thì nó sẽ có lời giải thỏa mãn chặt ràng buộc mới thêm vào.

1.3

Thuật toán nón xoay xấp xỉ trong giải bài toán quy
hoạch phân tuyến tính

Chúng ta đã biết đối với bài toán quy hoạch phân tuyến tính (Linear-fractional
programming) dạng “chính tắc” với các ràng buộc chính là hệ phương trình



11
tuyến tính trong Rn , thì khi biết một phương án cực biên chấp nhận được của nó
chúng ta có thể giải bài toán bằng thuật toán tương tự như thuật toán đơn hình
(xem [2] , [8]). Sau đây chúng ta từ khái niệm nón xoay tuyến tính trình bày trong
[5], xây dựng một thuật toán xấp xỉ trong giải trực tiếp bài toán quy hoạch phân
tuyến tính dạng chuẩn với các ràng buộc chính là hệ bất phương trình tuyến tính
trong Rn . Rõ ràng việc giải trực tiếp bài toán quy hoạch với các ràng buộc chính
của miền chấp nhận được là hệ bất phương trình tuyến tính có những ưu điểm
là giải bài toán khi các ràng buộc chính của miền chấp nhận được là hệ phương
trình tuyến tính, bởi vì như vậy số chiều bài toán không tăng lên do phải thêm
vào các biến bù.

1.3.1

Khái niệm về nón đơn hình tuyến tính

Xét tập M xác định từ n ràng buộc tuyến tính của P , cụ thể là:
M := {x ∈ Rn :< Ai , x > +bi

0, i ∈ IM }

(1.12)

trong đó IM := {i1 , i2 , ..., in } ⊂ {1, 2, ..., m}, |IM | = n (ở đây |IM | là số đo hay
là số phần tử của tập IM ) và Ai với i ∈ IM là một hệ độc lập tuyến tính. Tập
M gọi là nón đơn hình tuyến tính của hệ ràng buộc P với đỉnh xM là nghiệm
(được xác định) thoả mãn hệ sau:
< Ai , x > +bi = 0, ∀i ∈ IM


(1.13)

Hệ vectơ Ai với i ∈ IM được gọi là cơ sở của nón M , hay còn gọi là cơ sở của
đỉnh xM . Tập IM gọi là tập chỉ số của cơ sở của nón M .

1.3.2

Khái niệm về cạnh và phương của cạnh của nón đơn hình

Với mỗi i ∈ IM , tập hợp các điểm x ∈ Rn thỏa mãn hệ:
< Ar , x > +br = 0, ∀r ∈ IM \ {i}

(1.14)


12
gọi là đường thẳng i của nón M .
Tập các điểm x thoả mãn hệ:

 < Ar , x > +br = 0, ∀r ∈ IM \ {i}
 < Ai , x > +b

i

0

gọi là cạnh i của nón M .
i
(i ∈ IM ), xác định bởi hệ:
Với mỗi i(i ∈ IM ), vectơ zM


 < Ar , z i >= 0, ∀r ∈ IM , r = i
M

(1.15)

 < Ai , z i >= −1
M
gọi là vectơ chỉ phương của cạnh i của nón M .

Đỉnh xM của nón M có thể xác định từ (1.13), trong trường hợp biết hệ
i
vectơ chỉ phương zM
(i ∈ IM ) thì chúng ta có thể sử dụng công thức sau:

xM =

(1.16)

i
bi .zM
i∈IM

Định lí 1.2. Nếu xM là đỉnh của nón đơn hình M được xác định từ (1.13), và
i
hệ vectơ chỉ phương zM
(i ∈ IM ) của cạnh i của nón M xác định từ (1.15) thì

chúng ta có thể xác định đỉnh xM từ công thức sau:
xM =


i
bi .zM
i∈IM

Chứng minh. Thật vậy, với mỗi i (i ∈ IM ), chúng ta thay x =
i∈IM

trái của (1.13) ta được:
,

,

i
bi .zM
> +bi, =

< Ai ,
i∈IM

i
bi .zM
vào vế

i
> +bi, = −bi, + bi, = 0
bi < Ai .zM
i∈IM

i

(Vì zM
thoả mãn (1.15) ) Mặt khác do hệ Ai (∀i ∈ IM ) là hệ độc lập tuyến

tính nên nghiệm của hệ (1.13) là duy nhất, suy ra ta có công thức (1.16) Vậy từ
i
định lí 1.2.1 ta suy ra trong trường hợp biết hệ vectơ chỉ phương zM
(i ∈ IM ) thì


13
chúng ta có thể xác định đỉnh xM từ công thức sau:
xM =

i
bi .zM
i∈IM

Dễ thấy tập các điểm x nằm trên cạnh i của nón M đều có thể biểu diễn như
sau:
x = xM + λi , λi

(1.17)

0, ∀i ∈ IM

i
với i ∈ IM là một hệ độc lập tuyến tính.
Định lí 1.3. Hệ vectơ chỉ phương zM

Chứng minh. Ta chứng minh bằng phản chứng, giả sử ngược lại hệ vectơ chỉ

i
phương zM
với i ∈ IM là một hệ phụ thuộc tuyến tính. Khi đó sẽ tồn tại một

trong n vectơ của hệ được biểu diễn tuyến tính qua các vectơ còn lại như sau:
i0
zM
=

i
βi .zM
i∈IM (i=i0 )

i0
Vậy: < Ai0 , zM
>=< Ai0 ,

i
βi .zM
>=
i∈IM (i=i0 )

i
βi . < Ai0 , zM
>= 0
i∈IM (i=i0 )

i0
Điều này mâu thuẫn với < Ai0 , zM
>= −1 (từ (1.15)).


Định lí 1.4. Với mỗi x bất kỳ thuộc nón đơn hình M , luôn có biểu diễn duy nhất
x = xM +

i
λi .zM
, λi

0, ∀i ∈ IM .

i∈IM

Ngược lại mọi điểm x = xM +

i
αi .zM
, αi

0, ∀i ∈ IM đều thuộc nón

i∈IM

M.
i
Chứng minh. Vì hệ vectơ chỉ phương zM
với i ∈ IM là một hệ độc lập tuyến

tính nên tồn tại bộ số duy nhất λi (∀i ∈ IM ), sao cho ta có biểu diễn:
x − xM =


i
λi .zM
⇔ x = xM +
i∈IM

i
λi .zM
i∈IM

(1.18)


14
Mặt khác vì x là một điểm của nón đơn hình M , từ (1.18) và (1.15) ta suy ra với
mỗi r ∈ IM :
< Ar , x > +br =< Ar , xM +

i
λi .zM
> +br

0

i∈IM

⇔ < Ar , xM > +br +

i
λi . < Ar , zM
>


0

i∈IM
r
⇔λr . < Ar , zM
>

0 ⇔ λr

0, ∀r ∈ IM .

Điều ngược lại ta dễ dàng thay biểu diễn của x vào các ràng buộc tương ứng xác
định nón đơn hình M để kiểm tra và thấy thoả mãn.
Từ định lí này, chúng ta có thể định nghĩa khác về nón đơn hình M như sau:
1
2
Định nghĩa 1.1. Cho trước một điểm xM và n vectơ độc lập tuyến tính zM
, zM
,
n
..., zM
. Tập M :=

x ∈ Rn : x = x M +

n

i
αi .zM

, ∀αi

i=1
M
1
2
n
gọi là nón đơn hình với đỉnh là x và zM , zM
, ..., zM

0, i = 1, 2, ..., n được

gọi là các vectơ chỉ phương

của n cạnh của nón đơn hình M . Và chúng ta nói rằng nón đơn hình M được
1
2
n
xác định hay là được sinh ra từ hệ gốc cơ sở xM , zM
, zM
, ..., zM

Giả sử M

là một nón đơn hình tuyến tính xác định bởi (1.12), đỉnh là xM . Nó được gọi là
nón không thoái hóa của miền ràng buộc P nếu
< Ai , xM > +bi = 0, ∀i = {1, 2, . . . , m} \IM

(1.19)


Nếu xM ∈ P tức là:
< Ai , xM > +bi

0, ∀i = {1, 2, . . . , m}

thì nón đơn hình tuyến tính M gọi là nón đơn hình tuyến tính chấp nhận được
của P hay còn gọi là nón đơn hình chấp nhận được của P . Vậy nếu nón đơn
hình chấp nhận được của P là không thoái hóa thì ta có
< Ai , xM > +bi < 0, ∀i = {1, 2, . . . , m} \IM

(1.20)


15
Bài toán quy hoạch phân tuyến tính (LF P ), gọi là không thoái hóa nếu tất cả
các đỉnh của các nón đơn hình chấp nhận được của P là không thoái hóa. Từ
nay về sau ta giả thiết bài toán (LF P ) là bài toán không thoái hóa. Giả sử M là
một nón đơn hình chấp nhận được của P nó được xác định bởi (1.12) Ta gọi:
JM := {j ∈ {1, 2, ..., m} : j ∈ IM }

(1.21)

J xM := j ∈ {1, 2, ..., m} :< Aj , xM > +bj = 0

(1.22)

Rõ ràng J xM ⊂ JM và IM ∪ JM = {1, 2, ..., m}
i
>= 0}
Với mỗi i ∈ IM ta gọi JM (i) := {j ∈ JM :< Aj , zM

0
i
JM
(i) := {j ∈ JM :< Aj , zM
>= 0}
0
Rõ ràng JM (i) ∪ JM
(i) = JM
+
i
Gọi JM
(i) := {j ∈ JM (i) :< Aj , zM
>> 0}

Định lí 1.5. Nếu m > n , thì ∀j ∈ JM bao giờ cũng tồn tại i ∈ IM sao cho
JM (i) = ∅.
Chứng minh. Ta chứng minh bằng phản chứng, giả sử ngược lại tồn tại j0 ∈ JM ,
i
∀i ∈ IM ta có: JM (i) = ∅ ⇔< Aj0 , zM
>= 0, từ đây suy ra Aj0 = O(0, 0, ..., 0)

vì hệ vectơ chỉ phương của các cạnh của nón đơn hình M là một hệ độc lập tuyến
tính (theo giả thiết), điều này mâu thuẫn với Aj0 = O(0, 0, ..., 0).
Định lí 1.6. Nếu m > n, thì ∀i ∈ IM bao giờ cũng tồn tại j ∈ JM (i) sao cho
+
JM
(i) = ∅.

Chứng minh. Ta chứng minh bằng phản chứng, giả sử ngược lại tồn tại r ∈ IM ,
+

∀j ∈ JM (r) ta có JM
(r) = ∅, tức là
r
< Aj , zM
>

0, ∀j ∈ JM

(1.23)

r
Mặt khác zM
là nghiệm của (1.15) nên ta có: ∀j ∈ IM và j = r thì
r
< Aj , zM
>= 0

(1.24)


16
Còn với j = r thì
(1.25)

r
< Ar , zM
>= −1

Từ (1.23),(1.24) và (1.25) với chú ý là IM ∪ JM = 1, 2, ..., m. Ta có:
r

< Aj , zM
>

0, ∀j ∈ 1, 2, ..., m

(1.26)

r
là một phương vô hạn của P . Điều
Từ (1.26) và tính chất 1.5. trong [5] thì zM
+
(i),
này mâu thuẫn với giả thiết P là một đa diện. Ta dễ thấy ∀i ∈ IM và ∀j ∈ JM
i
cắt siêu phẳng < Aj , x > +bj = 0 tại điểm
đường thẳng x = xM + αi .zM
i
xji = xM + αij .zM

(1.a)

< Aj , xM > +bj
=−
i >
< Aj , zM

(1.b)

Trong đó
αij

Ta gọi S(i) :=

αij . Rõ ràng nếu nón M là một nón chấp nhận
s : αis = min
+
j∈IM (i)

được của bài toán (LF P ) thì < Aj , xM > +bj
0

0, ∀s ∈ S(i) ta có

+
αij , ∀j ∈ JM
(i)

αis

(1.27)

Định lí 1.7. Nếu xM là một điểm chấp nhận được của P thì ∀i ∈ IM , ∀s ∈ S(i)
i
điểm xsl = xM + αis .zM
cũng là một điểm chấp nhận được của P .

Chứng minh. Từ (1.27) ta có: 0
⇔−

αis


< As , xM > +bs
i >
< As , zM

+
αij , ∀j ∈ JM
(i)



< Aj , xM > +bj
i >
< Aj , zM

+
Mặt khác ∀j ∈ JM
(i) thì
i
< Aj , xsi > +bj =< Aj , xM + αis .zM
> +bj

(1.28)


17
< As , xM > +bs
i
=< A , x > +bj −
. < Aj , zM
>

i
s
< A , zM >
< Aj , xM > +bj < As , xM > +bs
j i

=< A , zM >
i >
i >
< Aj , zM
< As , zM
j

M

(1.29)
Từ (1.28) nên
< Aj , xM > +bj < As , xM > +bs

i >
i >
< Aj , zM
< As , zM

0

(1.30)

+
i

(i) nên suy ra:
>> 0, ∀j ∈ JM
Từ (1.29), (1.30) và chú ý là < Aj , zM

< Aj , xsi > +bj

+
0, ∀j ∈ JM
(i)

(1.31)

0
i
>= 0} thì
Với ∀j ∈ JM
(i) := {j ∈ JM :< Aj , zM
i
< Aj , xsi > +bj =< Aj , xM + αis .zM
> +bj
i
=< Aj , xM > +bj + αis . < Aj , zM
>

=< Aj , xM > +bj

0

(1.32)


Với ∀j ∈ IM và j = i thì
i
< Aj , xsi > +bj =< Aj , xM + αis .zM
> +bj
i
=< Aj , xM > +bj + αis < Aj , zM
>

=0

(1.33)

Với j = i thì
i
< Ai , xsi > +bi =< Ai , xM + αis .zM
> +bi
i
=< Ai , xM > +bi + αis < Ai , zM
>

= 0 + (−αis )
0
Từ (1.31), (1.32), (1.33) và (1.34) ta dễ dàng kết luận:

(1.34)


18
0, ∀j = 1, 2, ..., m Điều này chứng tỏ xsi là một điểm


< Aj , xsi > +bj
chấp nhận được của P .

1.3.3

Khái niệm nón xoay M(r,s) sinh ra từ nón M

Giả sử M là một nón đơn hình tuyến tính của P xác định bởi (1.12), khi đó
với mỗi r ∈ IM , và với mỗi s ∈ J(xM ) và s ∈ JM (r) ta gọi
i
s
>= 0},
:= {i ∈ IM :< As , zM
IM
i
0
>= 0}.
:= {i ∈ IM :< As , zM
IM

xét tập hợp các điểm x ∈ Rn thỏa mãn hệ ràng buộc:

 < Ai , x > +bi 0, ∀i ∈ IM , i = r
 < As , x > +b

s

(1.35)

0


Xác định một nón đơn hình tuyến tính gọi là nón xoay M (r, s) đỉnh là:
(1.36)

r
xM (r,s) = xsr = xM + αrs .zM

< As , xM > +bs
=−
trong đó xác định từ (3.b):
i >
< As , zM
đỉnh xsr thỏa mãn: < Ai , xsr > +bi = 0, ∀i ∈ IM (r, s) = (IM ∪ {s} \ {r}) .
αrs

αis

Tập chỉ số cơ sở mới IM (r, s) nhận được từ tập chỉ số cơ sở cũ IM bằng cách
loại chỉ số r ra khỏi tập cơ sở cũ, đưa chỉ số s vào thay. Ta nói nón xoay M (r, s)
sinh ra từ nón M .
Bổ đề 1.1. Hệ Ai với i ∈ IM (r, s) là một hệ độc lập tuyến tính.
Chứng minh. Thật vậy, nếu ngược lại hệ Ai với i ∈ IM (r, s) là phụ thuộc tuyến
tính thì dễ dàng suy ra tồn tại biểu diễn:
As =

r
βi .Ai =< As , zM
>=<
i∈IM \{r}


i∈IM \{r}

βi . < A

=
i∈IM \{r}

r
βi .Ai , zM
>

i

r
, zM

>= 0

(1.1)


19
r
>= 0 (vì s ∈ JM (r))
Điều này mâu thuẫn với < As , zM

Bổ đề này cho ta thấy nón xoay M (r, s) vẫn là một nón đơn hình.
i
Các vectơ chỉ phương zM
(r,s) , i ∈ IM (r, s) của nón xoay mới M (r, s) được


xác định từ (1.15) với tập chỉ số cơ sở mới IM (r, s), hoặc xác định từ một trong
r
i
(xác định từ (1.15)) với i, r
, zM
các công thức đơn giản dưới đây theo các zM

thuộc IM là tập chỉ số của cơ sở cũ:

i
0


zM
khi i ∈ IM




i
 i
> r
< As , zM
i
z

.zM khi i ∈ I s , i = r
M
zM (r,s) =

r
s
< A , zM >




1

r

.zM
khi i = s
−
r
s
< A , zM >

(1.37)

Các công thức này gọi là các công thức đổi cơ sở, bổ đề dưới đây chứng minh
các công thức trên.
Bổ đề 1.2. Giả sử M là nón đơn hình xác định bởi:
M := x ∈ Rn :< Ai , x > +bi

i
của
0, i ∈ IM với các vectơ chỉ phương zM

i

các cạnh xác định theo (1.7), ∀i ∈ IM đường thẳng x = xM + αi .zM
cắt siêu

phẳng < As , x > +bs = 0 tại các giao điểm xsi xác định theo (1.a), (1.b). Khi
đó nón xoay mới M (r, s) có đỉnh là xM (r,s) = xsr xác định từ (1.36) với cơ sở
tương ứng là IM (r, s) = (IM ∪ {s} \ {r}) và các vectơ chỉ phương của các
i
cạnh tương ứng là zM
(r,s) được xác định bởi (1.37).

Chứng minh. Ta có với mỗi i ∈ IM thì:
i
< Aj , zM
>= 0, ∀j ∈ IM , j = i

(1.38)

i
< Ai , zM
>= −1

(1.39)

Ta cần phải chứng minh với mỗi i ∈ IM (r,s) thì:
i
< Aj , zM
(r,s) >= 0, ∀j ∈ IM (r,s) , j = i
i
< Ai , zM
(r,s) >= −1



20
Thật vậy:
s
, i = r, và chú ý tới (1.38), (1.39) ta có:
1) Với mỗi i ∈ IM (r,s) mà i ∈ IM
s
αr r
αrs
j i
j i
j i
r
< A , zM (r,s) >=< A , zM − s zM >=< A , zM > − s . < Aj , zM
>= 0
αi
αi
i
Vậy < Aj , zM
(r,s) >= 0, ∀j ∈ IM (r,s) , j = i
αrs
i
i i
i
r
>

>= −1
Còn < Ai , zM

>=<
A
,
z
>=< Ai , zM
. < Ai , zM
M
(r,s)
s
αi
Tóm lại ta có:
i
s
, i = r: < Aj , zM
+ i ∈ IM
(r,s) >= 0, ∀j ∈ IM (r,s) , j = i
i
+ < Ai , zM
(r,s) >= −1
s
)
(chú ý αis = 0, vì s ∈ JM (r) và i ∈ IM

2) Với i = s ta chứng minh như sau:
Ta có ∀j ∈ I (r, s) , j = s :
1
1
r
j r
z

>

r > M
r > . < A , zM >= 0
< As , zM
< As , zM
1
s
r
Còn < As , zM
. < As , zM
>= −1
(r,s) >= −
r
s
< A , zM >
3) Với mỗi i ∈ IM (r,s) mà và chú ý tới (1.38), (1.39) ta có:
s
j
< Aj , zM
(r,s) >=< A , −

i
j i
< Aj , zM
(r,s) >=< A , zM >= 0, ∀j ∈ IM (r,s) , j = i
i i
i
Còn < Ai , zM
(r,s) >=< A , zM >= −1


Tóm lại ta có: với mỗi i ∈ IM (r, s) thì:
i
< Aj , zM
(r,s) >= 0, ∀j ∈ IM (r,s) , j = i
i
< Ai , zM
(r,s) >= −1

Bổ đề đã được chứng minh.
Giả sử f (x) là hàm phân tuyến tính của bài toán (LF P ), ta có định lí sau:
Định lí 1.8. ∀x, xi (i = 1, 2, ..., N ) ∈ P và f (x)

f xi (i = 1, 2, ..., N ) thì

N

f (x)

N
i

f

αi x
i=1

, ∀αi

0,


αi = 1
i=1

Chứng minh. Vì P là đa diện lồi nên xi ∈ P (i = 1, 2, ..., N ) thì
Bây giờ ta sẽ chứng minh định lí bằng phương pháp qui nạp.

N
i=1

αi x i ∈ P


×