LỜI MỞ ĐẦU - Web viewKiến thức sau khi học quy hoạch ... hình hóa...

34
BỘ CÔNG THƯƠNG TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP TP.HỒ CHÍ MINH ……………….o0o………………. QUY HOẠCH TUYẾN TÍNH Khoa: Khoa Học Cơ Bản Lớp: 211301219 GVHD: Nguyễn Ngọc Chương 1 TIỂU LUẬN

Transcript of LỜI MỞ ĐẦU - Web viewKiến thức sau khi học quy hoạch ... hình hóa...

Page 1: LỜI MỞ ĐẦU -    Web viewKiến thức sau khi học quy hoạch ... hình hóa ngôn ngữ nhờ việc lập trình trên máy ... và ứng dụng một bài toán

BỘ CÔNG THƯƠNGTRƯỜNG ĐẠI HỌC CÔNG NGHIỆP TP.HỒ CHÍ MINH

……………….o0o……………….

QUY HOẠCH TUYẾN TÍNH Khoa: Khoa Học Cơ Bản

Lớp: 211301219

GVHD: Nguyễn Ngọc Chương

TP.HCM 11/2014

1

TIỂU LUẬN

Page 2: LỜI MỞ ĐẦU -    Web viewKiến thức sau khi học quy hoạch ... hình hóa ngôn ngữ nhờ việc lập trình trên máy ... và ứng dụng một bài toán

BỘ CÔNG THƯƠNGTRƯỜNG ĐẠI HỌC CÔNG NGHIỆP TP.HỒ CHÍ MINH

……………….o0o……………….

QUY HOẠCH TUYẾN TÍNH Khoa: Khoa Học Cơ Bản

Lớp: 211301219

GVHD: Nguyễn Ngọc Chương

Danh Sách Nhóm

Võ Ngân Hà 13008641

Nguyễn Mạnh Khương 13010131

Lê Thị Kim Luyến 13022461

Nguyễn Thị Tuyết Nhung 13015781

Trần Thị Thanh Trang 13037681

Đoàn Thị Trinh 13022461

2

TIỂU LUẬN

Page 3: LỜI MỞ ĐẦU -    Web viewKiến thức sau khi học quy hoạch ... hình hóa ngôn ngữ nhờ việc lập trình trên máy ... và ứng dụng một bài toán

LỜI MỞ ĐẦU1. Lý do chọn đề tài

Trong thực tế ta thường hay gặp các tình huống là phải lựa chọn một trong số

những quyết định quan trọng để đưa ra những phương án hoặc chiến lược tốt

nhất trong sản xuất kinh doanh hay trong một trò chơi mà đối thủ là một kẻ

thông minh và nguy hiểm…Khi đó ta cần phải lập mô hình toán học quy hoạch

tuyến tính để có được phương án tối ưu cần thiết.

Trong đó phương pháp đơn hình được George Bemanrd Dantzig đưa ra năm

1947 cùng lúc với việc khai sinh ra quy hoạch tuyến tính, phương pháp này

thực sự có hiệu quả để giải những bài toán quy hoạch tuyến tính cỡ lớn trong

thực tế mà ta thường gặp, như để vận chuyển hàng hóa đầy đủ nhưng có tổng

chi phí là nhỏ nhất – đây chính là bài toán vận tải. Hoặc trong kinh doanh phải

lập kế hoạch sản xuất đối với các nguyên liệu và sản phẩm để thu được tổng lợi

nhuận là lớn nhất…

Kiến thức sau khi học quy hoạch tuyến tính rất cần thiết, đây là những kiến thức

rất quan trọng để xây dựng một mô hình toán học cho bất kỳ bài toán phức tạp

nào trong thực tế, chỉ cần xây dựng các thuật toán đã mô hình hóa ngôn ngữ

nhờ việc lập trình trên máy tính ta có thể giải quy hoạch tuyến tính một cách dể

dàng nhanh chóng và chính xác. Như vậy việc học quy hoạch tuyến tính rất

quan trọng, nó đem lại những hiệu quả kinh tế rất lớn nếu biết lập các mô hình

và tính toán đúng quy cách.

2. Đối tượng nghiên cứu và phương pháp nghiên cứu

Quy hoạch tuyến tính là lĩnh vực nghiên cứu các bài toán tối ưu mà hàm

mục tiêu là vấn đề được quan tâm nhất và các ràng buộc là các yêu cầu ,điều kiện

của kế hoạch đặt ra, đều là hàm và các phương trình, bất phương trình tuyến tính.

3

Page 4: LỜI MỞ ĐẦU -    Web viewKiến thức sau khi học quy hoạch ... hình hóa ngôn ngữ nhờ việc lập trình trên máy ... và ứng dụng một bài toán

Các bước để nghiên cứu và ứng dụng một bài toán quy hoạch tuyến tính điển hình

là:

Xác định vấn đề cần giải quyết, thu thập dữ liệu .

Lập mô hình toán học thật chính xác.

Xây dựng các thuật toán để giải bài toán trên các lập trình máy tính.

Tính toán thử và điều chỉnh mô hình nếu cần .

Áp dụng để giải các bài toán thực tế .

4

Page 5: LỜI MỞ ĐẦU -    Web viewKiến thức sau khi học quy hoạch ... hình hóa ngôn ngữ nhờ việc lập trình trên máy ... và ứng dụng một bài toán

QUY HOẠCH TUYẾN TÍNH BÀI TOÁN ĐỐI NGẪU

A. Lý Thuyết

Đối ngẫu là một phương pháp mà ứng dụng với mỗi bài toán QHTT đã cho

(gọi là bài toán gốc), ta có thể thiết lập một bài toán QHTT khác (gọi là bài toán

đối ngẫu) sao cho từ lời giải của bài toán này ta có thể thu được thông tin về lời

giải của bài toán kia.

Khi phân tích đồng thời cả hai bài toán gốc và dối ngẫu ta có thể rút ra các

kết luận sâu sắc cả về mặt toán học lẫn về ý nghĩa thực tiễn.

1. CÁCH LẬP BÀI TOÁN ĐỐI NGẪU1.1. Xét quy hoạch tuyến tính dạng chuẩn tắc:

f(x) = c1x1 + c2x2 + … + cnxn min

(P) [Bài toán gốc]

Trong đó aij, bi, cj là các hệ số cho trước; x= (x1, x2, … ,xn) Rn l vecto biến

cần tìm.

Ta gọi đối ngẫu của (P) là QHTT, ký hiệu (Q), có dạng:

g(y) = b1y1+b2y2+ … + bmym max

(Q) [Bài toán đối ngẫu]

Ở đây y = (y1, y2, … ,ym) Rm là vectơ biến cần tìm.

5

{ai1 x1+a i2 x2+. ..+ ain xn≥bi , i=1 , 2 , . . ., m ¿¿¿¿

{a1 j y1+a2 j y2+…+amj ym≤c j , j=1 , 2,… , n ,¿ ¿¿¿

Page 6: LỜI MỞ ĐẦU -    Web viewKiến thức sau khi học quy hoạch ... hình hóa ngôn ngữ nhờ việc lập trình trên máy ... và ứng dụng một bài toán

Nhận xét:

- Các ràng buộc chính của (P) các biến của (Q). Các biến của (P)

các ràng buộc chính của (Q).

- Các hệ số vế phải ràng buộc chính của (P) trở thành các hệ số mục tiêu

của (Q), còn các hệ số mục tiêu của (P) lại trở thành các hệ số vế phải ràng buộc

chính của (Q).

- Bài toán gốc tìm min thì bài toán đối ngẫu tìm max (và ngược lại).

- Cả hai bài toán (P) và(Q) đều có dạng chuẩn.

Ví dụ: tìm bài toán đối ngẫu của bài toán QHTT dạng chuẩn.

f(x) = 20x1 + 15x2 min

{3 x1+x2 ≥ 60 ¿ {x1 +x2 ≥40¿ {x1 + 2 x2≥60 ¿ ¿¿¿Bài toán đối ngẫu là:

g(y) = 60y1 + 40y2 + 60y3 max

{3 y1+ y2+ y3≤20 ¿ { y1 + y2 + y3≤15 ¿ ¿¿¿ Dùng ký hiệu vectơ và ma trận, ta có thể viết:

Bài toán gốc: Bài toán đối ngẫu:

{ f ( x )=⟨c , x⟩→ min ¿ { Ax≥b ¿¿¿¿ {g( y )=⟨b , y ⟩→ max ¿ { AT y≤c ¿ ¿¿¿AT là ma trận chuyển vị của A, <a, b> là tích vô hướng của hai vectơ a và b.

6

Page 7: LỜI MỞ ĐẦU -    Web viewKiến thức sau khi học quy hoạch ... hình hóa ngôn ngữ nhờ việc lập trình trên máy ... và ứng dụng một bài toán

1.2. Định nghĩa đối ngẫu của bài toán qui hoạch tuyến tính dạng chính tắc:

{ f ( x )= c1 x1+c2 x2+…+ cn xn → min ¿ {ai1 x1+ a i2 x2+…+ain xn= bi , i=1, 2 ,… , m, ¿¿¿¿

Là bài toán:

{g ( y )=b1 y1+b2 y2+…+bm y→ max ¿ ¿¿¿

Dưới dạng vectơ – ma trận, ta có thể viết:

Bài toán gốc: Bài toán đối ngẫu:

{ f ( x )=⟨c , x⟩→ min ¿ { Ax=b ¿¿¿¿ {g( y )=⟨b , y ⟩→ max ¿ ¿¿¿1.3 Tổng quát, xét bài toán QHTT có dạng

{f ( x )=c1 x1+c2 x2+…+cn xn → min ¿¿¿

¿¿

Trong đó I1I2I3 = {1,…,m}, IiIk = , i, k = 1, 2, 3 (ik); J1J2J3 = {1,

…,n}, JiJk = , j, k = 1, 2, 3(jk).

Ta gọi đối ngẫu của bài toán trên là bài toán:

7

Page 8: LỜI MỞ ĐẦU -    Web viewKiến thức sau khi học quy hoạch ... hình hóa ngôn ngữ nhờ việc lập trình trên máy ... và ứng dụng một bài toán

{g ( y )=b1 y1+b2 y2+…+bm ym → max ¿ ¿¿

¿¿

SƠ ĐỒ ĐỐI NGẪU TỔNG QUÁT

Bài toán gốc Bài toán đối ngẫu

Các biến gốc: x1, x2,…, xn Các biến đối ngẫu: y1, y2,…,ym

Hàm mục tiêu

f(x) = c1x1 + c2x2 +…+ cnxn min g(y) = b1y1+ b2y2 +…+ bmym max

Các ràng buộc

ai1x1+ai2x2+…+ainxn

[¿ ¿ ] [¿ ¿ ]¿¿

¿¿

b i , i∈ I 1

b i , i∈ I 2bi i∈ I 3 yi

[¿0 ¿ ] [dâu tùy ý ¿ ]¿¿

¿¿

i≥I 1

i∈ I2i≤I3

xj

[¿0 ¿ ] [dâu tùy ý ¿ ]¿¿

¿¿

j∈ J 1

j∈ J 2j∈ J3 a1jy1+a2jy2+…+amjym

[¿ ¿ ] [¿ ¿ ]¿¿

¿ ¿c j , j∈ J 1

c j , j∈ J 2c j , j∈J 3

8

Page 9: LỜI MỞ ĐẦU -    Web viewKiến thức sau khi học quy hoạch ... hình hóa ngôn ngữ nhờ việc lập trình trên máy ... và ứng dụng một bài toán

Nhận xét: Nếu lấy đối ngẫu của bài toán đối ngẫu thì ta sẽ nhận

được bài toán gốc.

Ví dụ: tìm bài toán đối ngẫu của bài toán sau

{f ( x )=4 x1−3 x2+2x3 → min ¿ {2 x1+ x2−3 x3≥8 ¿ {−x1−2 x2+4 x3=6 ¿ {3 x1+4 x2−x3≤3 ¿¿ ¿¿Bài toán đối ngẫu là:

{g ( y )=8 y1+6 y2+3 y3 → max ¿ {2 y1−y2+3 y3≤4 ¿ { y1−2 y2+4 y3≥−3 ¿ {−3 y1+4 y2−y3=2¿ ¿¿¿2. CÁC ĐỊNH LÝ ĐỐI NGẪU.2.1. Cặp bài toán đối ngẫu dạng chuẩn:

(P) { f ( x )=⟨c , x⟩→ min ¿ { Ax≥b ¿¿¿¿

(Q) {g( y )=⟨b , y ⟩→ max ¿ { AT y≤c ¿ ¿¿¿

Để tiện nghiên cứu lý thuyế đối ngẫu, ta xét cặp bài toán đối ngẫu (P) và (Q)

cho ở dạng chuẩn. Tuy nhiên các kết quả nhận được cũng đúng cho một cặp bài

toán đối ngẫu bất kỳ.

Định lý 1: (Đối ngẫu yếu).

Nếu x là 1 phương án bất kỳ của bài toán gốc (P) và y là 1 phương án bất kỳ

của bài toán đối ngẫu (Q) thì:

f(x) = c1x1 + c2x2 +…+ cnxn g(y) = b1y1 + b2y2 +…+ bmym

9

Page 10: LỜI MỞ ĐẦU -    Web viewKiến thức sau khi học quy hoạch ... hình hóa ngôn ngữ nhờ việc lập trình trên máy ... và ứng dụng một bài toán

Hệ quả:

- Giá trị mục tiêu của 1 phương án đối ngẫu bất kỳ là 1 cận dưới cho giá

trị mục tiêu đối với mọi phương án của bài toán gốc.

- Nếu hàm mục tiêu của bài toán gốc không bị chặn dưới trong miền ràng

buộc của nó thì bài toán đối ngẫu không có bất kỳ mộ phương án nào.

- Nếu hàm mục tiêu của bài toán đối ngẫu không bị chặn trên trong miền

ràng buộc của nó thì bài toán gốc không có bất kỳ một phương án nào.

- Nếu x* là 1 phương án của bài toán gốc, y* là 1 phương án của bài toán

đối ngẫu và f(x*) = g(y*) thì x* là phương án tối ưu của bài toán gốc và y* là

phương án tối ưu của bài toán đối ngẫu.

Định lý 2: (Đối ngẫu mạnh).

Nếu một quy hoạch có phương án tối ưu thì quy hoạch đối ngẫu của nó cũng

có phương án tối ưu và giá trị tối ưu của chúng là bằng nhau.

Định lý 3: (Định lý tồn tại).

Đối với mỗi cặp quy hoạch đối ngẫu nhau thì có thể xảy ra một trong ba khả

năng loại trừ nhau sau đây.

- Cả hai bài toán đều không có phương án.

- Cả hai bài toán đều có phương án. Khi đó, cả hai bài toán đều có

phương án tối ưu và giá trị tối ưu của các hàm mục tiêu là bằng nhau.

- Một bài toán có phương án và bài toán kia không có phương án. Khi

đó, bài toán có phương án sẽ không có phương án tối ưu và hàm mục tiêu của nó

không giới nội trong miền ràng buộc.

Định lý 4: (Định lý về độ lệch bù).

10

Page 11: LỜI MỞ ĐẦU -    Web viewKiến thức sau khi học quy hoạch ... hình hóa ngôn ngữ nhờ việc lập trình trên máy ... và ứng dụng một bài toán

Một cặp phương án x, y của hai bài toán (P), (Q) là những phương án tối ưu

khi và chỉ khi chúng nghiệm đúng các hệ thức:

yi(∑j=1

n

aij x j−b i)=0 , ∀ i=1 , 2 ,…, m , (1)

x j (c j−∑

i=1

m

aij y i)=0 , ∀ j=1 , 2 ,…, n (2)

Nhận xét:

(∑j=1

n

aij x j−bi) : độ lệch ở ràng buộc I của (P).

(c j−∑i=1

m

aij y i): độ lệch ở ràng buộc j của(Q).

Ghi chú:

Các hệ thức (1), (2) nói rằng: với mỗi ràng buộc gốc hay đối ngẫu thì tích

của độ lệch ở ràng buộc này và biến đối ngẫu (hay biến gốc) tương ứng với ràng

buộc đó phải bằng không.

Nói cách khác, nếu một ràng buộc có độ lệch dương thì biến (gốc hay đối

ngẫu) tương ứng với ràng buộc đó phải bằng không; ngược lại, nếu một biến gốc

hay đối ngẫu có giá trị dương thì phương án của bài toán thỏa mãn ràng buộc

tương ứng với dấu bằng.

Như vậy, hệ thức (1) có nghĩa là:

∑j=1

n

aij x j>bi ⇒ yi = 0

11

Page 12: LỜI MỞ ĐẦU -    Web viewKiến thức sau khi học quy hoạch ... hình hóa ngôn ngữ nhờ việc lập trình trên máy ... và ứng dụng một bài toán

Và yi > 0 ⇒∑j=1

n

aij x j=bi

Hệ thức (2) cũng có nghĩa tương tự:

∑i=1

m

aij y i< cj ⇒ xj = 0

Và xj > 0 ⇒ ∑i=1

m

aij y i= cj

Định lý 5 (Định lý mạnh về độ lệch bù).

Nếu cặp bài toán đối ngẫu (P) và (Q) có phương án thì tồn tại một cặp

phương án tối ưu x*, y* nghiệm đúng

y* + (Ax* - b) > 0

Và x* + ( c – ATy*) >0

2.2. Tìm phương án tối ưu của bài toán đối ngẫu

Nếu biết phương án tối ưu của bài toán gốc, vận dụng lý thuyết đối ngẫu ta

có thể suy ra phương án tối ưu của bài tối đối ngẫu tương ứng mà không cần giải

nó,

Ví dụ: Bài toán qui hoạch tuyến tính

{f ( x )=x1+ x2+x3+x4+x5→ min ¿ {3 x1+x2+x3 =1 ¿ {5 x1+x2+x3+ x4 =3 ¿ {2x1+5 x2+x3 +x5 =8¿ ¿¿¿12

Page 13: LỜI MỞ ĐẦU -    Web viewKiến thức sau khi học quy hoạch ... hình hóa ngôn ngữ nhờ việc lập trình trên máy ... và ứng dụng một bài toán

Có phương án tối ưu x* = (0, 1, 0, 2, 3) với fmin = 6. Hãy tìm phương án tối

ưu của bài toán đối ngẫu tương ứng.

Giải

Bài toán đối ngẫu của bài toán gốc là:

{g ( y )=y1+3 y 2+8 y3 → max ¿ {3 y1+5 y2+2 y3≤1 ¿ { y1+ y2+5 y3 ≤1 ¿ { y1+ y2+ y3 ≤1 ¿ { y2 ≤1 ¿ { y3 ≤1 ¿ ¿¿¿Gọi y* là phương án tối ưu của bài toán đối ngẫu

Do x*2, x*3, x*5 >0, nên theo định lý độ lệch bù, y* là nghiệm đúng hệ

phương trình:

{ y1+ y2+5 y3 =1¿ { y2 =1 ¿¿¿¿

Giải hệ phương trình ta có:{y1=−5

y2=1y3=1

Vậy y* (-5, 1, 1) là phương án tối ưu của g(y) với

gmax = -5 +(3*1) + (8*1) = 6 = fmin

Ví dụ: dùng phương pháp đơn hình giải quy hoạch gốc (P) sau đây, từ

đó suy ra lời giải của bài toán đối ngẫu tương ứng với nó.

13

Page 14: LỜI MỞ ĐẦU -    Web viewKiến thức sau khi học quy hoạch ... hình hóa ngôn ngữ nhờ việc lập trình trên máy ... và ứng dụng một bài toán

{ f ( x )=x1−x2−2x4+2 x5−3 x6→ min ¿ {x1 +x4 +x5 −x6 =2 ¿ { x2 +x 4 +x6 =12 ¿ { x3+2x4+4 x5+3 x6=9 ¿¿¿¿Xuất phát từ phương án cực biên ban đầu x0=(2, 12, 9, 0, 0, 0), cơ sở tương

ứng {A1, A2, A3). Quá trình giải được ghi lại trong bảng đơn hình dưới đây.

Sở

Hệ số

cj

Phương

án

A1 A2 A3 A4 A5 A6

1 -1 0 -2 2 -3

A1 1 2 1 0 0 [1] 1 -1 2

A2 -1 12 0 1 0 1 0 1 12

A3 0 9 0 0 1 2 4 3 4,5

Bảng 1 -10 0 0 0 2 -1 1

A4 -2 2 1 0 0 1 1 -1

A2 -1 10 -1 1 0 0 -1 2 5

A3 0 5 -2 0 1 0 2 [5] 1

Bảng 2 -14 -2 0 0 0 -3 3

A4 -2 3 3/5 0 1/5 1 7/5 0

A2 -1 8 -1/5 1 -2/5 0 -9/5 0

A6 -3 1 -2/5 0 1/5 0 2/5 1

Bảng 3 -17 -4/5 0 -3/5 0 -21/5 0

14

Page 15: LỜI MỞ ĐẦU -    Web viewKiến thức sau khi học quy hoạch ... hình hóa ngôn ngữ nhờ việc lập trình trên máy ... và ứng dụng một bài toán

Để tìm lời giải (phương án tối ưu) của bài toán đối ngẫu ta áp dụng qui tắc

sau:

Qui tắc

Nếu cơ sở ban đầu của (P) là cơ sở chính tắc (các vecto đơn vị), giả sử là

{Aj, jJ}.

Để tìm lời giải của bài toán đối ngẫu, ta chọn ra từ bảng đơn hình cuối cùng

của (P) các j (jJ) rồi cộng với hệ số cj tương ứng.

Vì thế, lời giải của bài toán đối ngẫu y* = (y*1, y*2, y*3) được xác định như

sau:

{y1∗¿ Δ1+c1=−45

+1=15 ¿ { y2∗¿ Δ2+c2=0−1=−1 ¿ ¿¿¿

Vậy y* =(15 , -1,

−35 ) và gmax = -17 = fmin

B. BÀI TẬP

1. Viết bài toán đối ngẫu của các qui hoạch tuyến tính sau:a. f = 2x1 + 3x2 - 4x3 + 5x4+ min

Điều kiện { x1 + x2−2 x3+2 x4≥10 , ¿ {−x1 +2 x2+ x3− x4=8 ,¿ { x1 − x2−2 x3+ x4≤9 , ¿ ¿¿¿

Giải

15

Page 16: LỜI MỞ ĐẦU -    Web viewKiến thức sau khi học quy hoạch ... hình hóa ngôn ngữ nhờ việc lập trình trên máy ... và ứng dụng một bài toán

Bài toán đối ngẫu của bài toán gốc :

g = 10y1 + 8y2 + 9y3 max

Điều kiện { y1− y2+ y3=2 , ¿ { y1+2 y2−y3≤3 ,¿ {−2 y1+ y2−2 y3≥−4 , ¿ { 2 y1− y2+ y3≤5 , ¿¿¿¿

b. f = x1 - 4x2 - 3x3 - 2x4 min

Điều kiện { x1−2 x2+ x3+ x4=−1 , ¿ { 2 x1+ x2+3 x3− x4≥8 , ¿ {−x1−5 x2− x3+3 x 4≤− 4 ,¿ ¿¿¿

Giải

Bài toán đối ngẫu của bài toán gốc:

g = -y1 + 8y2 - 4y3 max

Điều kiện{ y1+2 y2− y3≤1 , ¿ {−2 y1+ y 2−5 y3=−4 , ¿ { y1+3 y2− y3≤−3 ,¿ { y1− y2+3 y3≥−2, ¿ ¿¿ ¿

1. Xét qui hoạch tuyến tính: { f=x1+x2+ x2→min,¿ { −x2+x3≥−1 ,¿ { x1 −x3≥−1 ,¿ {−x1+x2 ≥−1, ¿ ¿¿¿

16

Page 17: LỜI MỞ ĐẦU -    Web viewKiến thức sau khi học quy hoạch ... hình hóa ngôn ngữ nhờ việc lập trình trên máy ... và ứng dụng một bài toán

Chứng tỏ rằng bài toán này trùng với bài toán đối ngẫu của nó (bài toán

tự đối ngẫu).

Giải

Giả sử bài toán g’(y) sau đây trùng với bài toán gốc:

g¿= y1+ y2+ y3→min

{ −y2 + y3 ≥−1¿ { y1 −y3≥−1 ¿ {− y1 + y2 ≥−1¿ ¿¿¿

¿

Bài toán đối ngẫu của bài toán gốc f(x) là:

{g=− y1− y2− y3→max, ¿ { y2− y3≤1 , ¿ {− y1 + y3≤1, ¿ { y1− y2 ≤1 , ¿ ¿¿¿Đưa bài toán đối ngẫu về dạng min ta có bài toán tương đương:

{g¿= y1+ y2+ y3→min, ¿ { − y2+ y3≥−1 , ¿ { y1 + y3≥−1 ,¿ {− y1+ y2 ≥−1 , ¿ ¿¿¿Bài toán tương đương của bài toán đối ngẫu trùng với bài toán gốc.

bài toán tự đối ngẫu.

điều phải chứng minh.

17

Page 18: LỜI MỞ ĐẦU -    Web viewKiến thức sau khi học quy hoạch ... hình hóa ngôn ngữ nhờ việc lập trình trên máy ... và ứng dụng một bài toán

2. Cho bài toán qui hoạch tuyến tính:

{ f=x1−2 x2+2 x3→min,¿ {x1+x2 +4 x4=6 ,¿ { 2 x2+x3+5 x 4=8 ,¿ ¿¿¿Có phương án tối ưu x* = (2, 4, 0, 0) và giá trị tối ưu là -6. Hãy tìm

phương án tối ưu và giá trị tối ưu của bài toán đối ngẫu.

Giải

Bài toán đối ngẫu của bài toán gốc:

{g=6 y1+8 y2→max, ¿ {y1 ≤1 , ¿ {y1+2 y2 ≤−2 , ¿ { y2 ≤2 , ¿ {4 y1+5 y2≤0 . ¿¿¿¿Gọi y* = (y1, y2) là phương án tối ưu của bài toán đối ngẫu.

Do x1*, x2

* > 0 nên theo định lí về độ lệch bù, y* là nghiệm đúng hệ phương

trình

{ y1 =1¿ ¿¿¿

18

Page 19: LỜI MỞ ĐẦU -    Web viewKiến thức sau khi học quy hoạch ... hình hóa ngôn ngữ nhờ việc lập trình trên máy ... và ứng dụng một bài toán

Giải hệ phương trình, ta được y* = (1, -32 ).

Với gmax = 6.1 + 8.(- 32 ) = -6 = fmin

3. Xét qui hoạch tuyến tính:

{f=15 x1+19 x2→min ¿ {3 x1+ x2≥3 , ¿ { x1+ x2≥2 ,¿ {3 x1+4 x2≥7 , ¿ ¿¿¿a. Phát biểu bài toán đối ngẫu của bài toán trên.

b. Hãy giải một trong hai bài rồi suy ra phương án tối ưu của bài

toán còn lại.

Giải

a. Bài toán đối ngẫu của bài toán gốc:

{g=3 y1+2 y2+7 y3→max, ¿ {3 y1+ y2+3 y3≤15 , ¿ { y1+ y2+4 y3≤19 , ¿¿¿ ¿b. Ta giải bài toán đối ngẫu:

Thêm vào hai ẩn phụ y4≥0 , y5≥0 vào ràng buộc thứ nhất và thứ hai. Lập

bảng đơn hình, ta có:

sở

Hệ

số

Phương

án

A1 A2 A3 A4 A5

3 2 7 0 0

A4 0 15 3 1 3 1 0 5

19

Page 20: LỜI MỞ ĐẦU -    Web viewKiến thức sau khi học quy hoạch ... hình hóa ngôn ngữ nhờ việc lập trình trên máy ... và ứng dụng một bài toán

A5 0 19 1 1 [4] 0 1 19/4

Bảng 1 0 -3 -2 -7 0 0

A4 0 3/4 [9/4] 1/4 0 1 -3/4 1/3

A3 7 19/4 1/4 1/4 1 0 1/4 19

Bảng 2 133/4 -5/4 -1/4 0 0 7/4

A1 3 1/3 1 [1/9] 0 4/9 -1/3 3

A3 7 14/3 0 2/9 1 -1/9 1/3 21

Bảng 3 101/3 0 -1/9 0 5/9 4/3

A2 2 3 9 1 0 4 -3

A3 7 4 -2 0 1 -1 1

Bảng 4 34 1 0 0 1 1

Phương án tối ưu của bài toán đối ngẫu: y* = (0, 3, 4)

Gọi x* = (x1, x2) là phương án tối ưu của bài toán gốc.

Do y2*, y3

* >0, nên theo định lí về độ lệch bù, x*là nghiệm đúng hệ phương

trình:

{x1+x2=2 ¿¿¿¿

Giải hệ phương trình, ta được: x* = (1, 1)

20

Page 21: LỜI MỞ ĐẦU -    Web viewKiến thức sau khi học quy hoạch ... hình hóa ngôn ngữ nhờ việc lập trình trên máy ... và ứng dụng một bài toán

Với fmin = gmax = 34

4. Xét bài toán quy hoạch tuyến tính:

f(x) = 4x1 –x2 -3x3 min

{ x1 +3 x2−4 x3≥−2, ¿ { x2− x3≤4 , ¿ {2x1−4 x2+3 x3≥− 3 ¿ { x1−3 x2 ≥−6 , ¿ {−x1 +2 x3≤3 . ¿ ¿¿¿(*)

Viết bài toán đối ngẫu. Chứng tỏ x0 = (-1, 1, 1) là phương án tối ưu. Xác

định một phương án tối ưu của bài toán đối ngẫu.

Giải

Bài toán đối ngẫu của bài toán gốc:

g(y) = -2y1 + 4y2 - 3y3 - 6y4 + 3y5 max

{ y1 +2 y3+ y4− y5=4 ,¿ { 3 y1+ y2−4 y3−3 y4 =−1 , ¿ {−4 y1− y2+3 y3 +2 y5 =−3 ,¿ ¿¿¿

Thay x0 = (-1, 1, 1) vào hệ ràng buộc (*), ta có:

21

Page 22: LỜI MỞ ĐẦU -    Web viewKiến thức sau khi học quy hoạch ... hình hóa ngôn ngữ nhờ việc lập trình trên máy ... và ứng dụng một bài toán

{−1+3−4 =−2 ,¿ { 1−1 =0≤4 , ¿ {−2−4+3 =−3 ,¿ {−1−3 =−4≥−6 , ¿ ¿ ¿¿ x0 = (-1, 1, 1) thỏa (*) x0 là phương án của bài toán gốc.

Gọi y0 = (y1, y2, y3, y4, y5) là phương án của bài toán đối ngẫu.

Do độ lệch ràng buộc 2, 4 của bài toán gốc khác 0 nên theo định lí về độ

lệch bù, y0 là nghiệm đúng hệ phương trình:

{ y1 +2 y3 − y5=4 ,¿ { 3 y1 −4 y3 =−1 , ¿ {−4 y1 +3 y3 +2 y5=−3 , ¿¿ ¿¿Giải hệ phương trình, ta được y0 = (1, 0, 1, 0, -1).

Với: f(x) = g(x) = -8.

x0 = (-1, 1, 1) là phương án tối ưu của bài toán gốc.

y0 = (1, 0, 1, 0, -1) là phương án tối ưu của bài toán đối ngẫu.

5. Xét qui hoạch tuyến tính:

{ f ( x )=x1−2 x2+x3−x 4+x5→min, ¿ { x1−2 x2+ x3+3 x4−2 x5=6 ,¿ {−2 x1−3 x2+2 x3+ x4− x5≥−4 ,¿ {x1 +3 x3 −4 x5≥8 , ¿¿¿¿(*)

a. Kiểm tra tính tối ưu của phương án x0 = (5, -6, 1, -4, 0).

b. Phát biểu bài toán đối ngẫu của bài toán trên.

22

Page 23: LỜI MỞ ĐẦU -    Web viewKiến thức sau khi học quy hoạch ... hình hóa ngôn ngữ nhờ việc lập trình trên máy ... và ứng dụng một bài toán

c. Chứng tỏ bài toán đã cho không có phưong án tối ưu.

Giải

a. Thế x0 = (5, -6, 1, -4, 0) vào hệ ràng buộc (*), ta có

{5+12+1−12=6 , ¿ {−10+18+2−4=6 ,¿ ¿¿¿Do độ lệch ràng buộc 2 khác 0 và x1

0, x20, x3

0, x40 khác 0 nên theo định lí về

độ lệch bù vectơ x0 = (5, -6, 1, -4, 0) là phương án tối ưu của bài toán gốc khi tồn

tại vectơ y0 = (y1, y2, y3) R3 sao cho:

{ y1−2 y2+3 y3=1 , ¿ {−2 y1−3 y2=−2, ¿ { y1+2 y2+3 y3=1 ,¿ {3 y1+ y2=−1, ¿ {−2 y1− y2−4 y3≤1 , ¿ ¿¿ ¿Hệ này vô nghiệm

không tồn tại y0 R3 thoả hệ trên.

phương án x0 = (5, -6, 1, -4, 0) không phải là phương án tối ưu của bài

toán gốc.

b. Bài toán đối ngẫu của bài toán gốc:

{g ( y )=6 y1−4 y2+8 y3→max,¿ { y1−2 y2+ y3≤1, ¿ {−2 y1−3 y2=−2 , ¿ { y1+2 y2+3 y3≤1 ,¿ {3 y1+ y2=−1 , ¿ {−2 y1− y2−4 y3≤1 , ¿ ¿ ¿ ¿

23

Page 24: LỜI MỞ ĐẦU -    Web viewKiến thức sau khi học quy hoạch ... hình hóa ngôn ngữ nhờ việc lập trình trên máy ... và ứng dụng một bài toán

c. Ta giải hệ ràng buộc của bài toán đối ngẫu:

{y1=−57

,¿ {y2=87

,¿ { y3≤4 , ¿ {y3≤−421

, ¿ {y 3≥−528

, ¿ ¿¿¿

Hệ này vô nghiệm bài toán đối ngẫu có tập phương án rỗng

Mà bài toán gốc có tập phương án khác rỗng (vì x0 là 1 phương án)

bài toán gốc không có phương án tối ưu (theo định lí tồn tại).

6. Xét qui hoạch tuyến tính:

{f ( x )=−4 x1+9x2+16 x3−8 x4−20 x5→min, ¿ {5 x1+4 x2−x3+3 x4+x5≥5 , ¿ {−x1+2 x2+4 x3−2 x4−5 x5≥−9 , ¿ {−x1−2 x2−x3+2 x4+3 x5=2 , ¿¿¿¿(*)

a. Kiểm tra tính tối ưu của phương án x0 = (2, 0, 1, -2, 3).

b. Phát biểu bài toán đối ngẫu của bài toán trên.

c. Tìm phương án tối ưu của bài toán đối ngẫu.

Giải

a. Thế x0 = (2, 0, 1, -2, 3) vào hệ ràng buộc (*), ta có:

{10−1−6+3=6 , ¿ {−2+4+4−15=−9 , ¿¿¿¿24

Page 25: LỜI MỞ ĐẦU -    Web viewKiến thức sau khi học quy hoạch ... hình hóa ngôn ngữ nhờ việc lập trình trên máy ... và ứng dụng một bài toán

Do độ lệch ràng buộc 1 của bài toán gốc khác 0 và x10, x3

0, x40, x5

0 khác

không nên theo định lí về độ lệch bù vectơ x0 = (2, 0, 1, -2, 3) là phương án tối ưu

của bài toán gốc khi tồn tại vectơ y0 = (y1, y2, y3) R3 sao cho:

{5 y1− y2− y3=−4 ,¿ {4 y1+2 y2−2 y3≤9 ,¿ {− y1+4 y2− y3=16 , ¿ {3 y1−2 y2+2 y3=−8 , ¿ { y1−5 y2+3 y3=−20 , ¿ ¿¿ ¿Giải hệ phương trình, ta được y0 = (0, 4, 0).

tồn tại y0 R3 thỏa hệ trên.

phương án x0 = ( 2, 0, 1, -2, 3) là phương án tối ưu của bài toán gốc.

b. Bài toán đối ngẫu của bài toán gốc:

{g ( y )=5 y1−9 y2+2 y3→max, ¿ {5 y1− y2− y3≤−4 ,¿ {4 y1+2 y2−2 y3≤9 ,¿ {− y1+4 y2− y3≤16 , ¿ {3 y1−2 y2+2 y3=−8 , ¿ { y1−5 y2+3 y3=−20 ,¿ ¿¿¿c. Vì đã biết x0 = (2, 0, 1, -2, 3) là phương án tối ưu của bài toán gốc

nên phương án tối ưu y0 của bài toán đối ngẫu có thể tìm từ định lí độ lệch bù:

25

Page 26: LỜI MỞ ĐẦU -    Web viewKiến thức sau khi học quy hoạch ... hình hóa ngôn ngữ nhờ việc lập trình trên máy ... và ứng dụng một bài toán

{[5− (5 x1+4 x2−x3+3 x4+x5 ) y1]=0 ¿ {[−9−(−x1+2 x2+4 x3−2 x4−5 x5 ) ] y2=0 ¿ {[2−(−x1−2 x2−x3+2 x4+3 x5 ) ] y3=0 ¿ {[−4−(5 y1− y2− y3) ]x1=0 ¿ {[9−(4 y1+2 y2−2 y3) ]x2=0 ¿ {[16−(− y1+4 y2− y3 ) ] x3=0 ¿ {[−8−(3 y1−2 y2+2 y3) ] x 4=0 ¿¿ ¿¿

Thay các giá trị đã biết vào hệ, ta được:

{ y1=0 ¿ {4 y2− y3=0¿ {−2 y2+2 y3=−8 ¿ ¿¿¿Vậy phương án tối ưu của bài toán đối ngẫu là y0 = (0, 4, 0).

Với gmax = fmin = -36.

7. Xét qui hoạch tuyến tính:

{f ( x )=2 x1+x2+x3+3 x 4→max, ¿ {x1−2 x2+ x3=16 , ¿ {x2+4 x3+x4≤8 , ¿ {x2−2 x3+3 x4≤20 , ¿ ¿¿¿a. Phát biểu bài toán đối ngẫu của bài toán trên.

26

Page 27: LỜI MỞ ĐẦU -    Web viewKiến thức sau khi học quy hoạch ... hình hóa ngôn ngữ nhờ việc lập trình trên máy ... và ứng dụng một bài toán

b. Hãy giải một trong hai bài toán rồi suy ra phương án tối ưu của

bài toán còn lại.

Giải

a. Bài toán đối ngẫu của bài toán gốc:

{g ( y )=16 y1+8 y2+20 y3→min, ¿ { y1≥2, ¿ {−2 y1+1 y2+1 y3≥1, ¿ { y1+4 y2−2 y3≥1 , ¿ { y2+3 y3≥3 ,¿ ¿¿ ¿b. Ta giải bài toán gốc

Thêm vào hai ẩn phụ x5 0, x6 0 vào ràng buộc thứ hai và thứ ba. Lập

bảng đơn hình, ta có:

sở

Hệ

số

Phươn

g án

A1 A2 A3 A4 A5 A6

2 1 1 3 0 0

A1 2 16 1 -2 1 0 0 0

A5 0 8 0 [1] 4 1 1 0 8

A6 0 20 0 1 -2 3 0 1 20

Bảng 1 32 0 -5 1 -3 0 0

A1 2 32 1 0 9 2 2 0

A2 1 8 0 1 4 1 1 0

27

Page 28: LỜI MỞ ĐẦU -    Web viewKiến thức sau khi học quy hoạch ... hình hóa ngôn ngữ nhờ việc lập trình trên máy ... và ứng dụng một bài toán

A6 0 12 0 0 -6 2 -1 1

Bảng 2 72 0 0 21 2 5 0

Phương án tối ưu của bài toán gốc là x0 = (32, 8, 0, 0).

Gọi y0 = (y1, y2, y3) là phương án tối ưu của bài toán đối ngẫu.

Dựa vào bảng đơn hình, ta có:

{ y1=Δ1+c1=0+2=2¿ { y2=Δ5+c5=5+0=5 ¿ ¿¿¿Vậy phương án tối ưu của bài toán đối ngẫu là y0 = (2, 5, 0).

Với gmin = fmax = 72.

28

Page 29: LỜI MỞ ĐẦU -    Web viewKiến thức sau khi học quy hoạch ... hình hóa ngôn ngữ nhờ việc lập trình trên máy ... và ứng dụng một bài toán

Mục LụcLỜI MỞ ĐẦU..............................................................................................................................................................

1. Lý do chọn đề tài..........................................................................................................................................

2. Đối tượng nghiên cứu và phương pháp nghiên cứu...................................................................................

A. Lý Thuyết..........................................................................................................................................................

1. CÁCH LẬP BÀI TOÁN ĐỐI NGẪU......................................................................................................

1.1. Xét quy hoạch tuyến tính dạng chuẩn tắc:.......................................................................................

1.2. Định nghĩa đối ngẫu của bài toán qui hoạch tuyến tính dạng chính tắc:................................................

1.3 Tổng quát, xét bài toán QHTT có dạng......................................................................................................

2. CÁC ĐỊNH LÝ ĐỐI NGẪU....................................................................................................................

2.1. Cặp bài toán đối ngẫu dạng chuẩn:...........................................................................................................

B. BÀI TẬP.........................................................................................................................................................

1. Viết bài toán đối ngẫu của các qui hoạch tuyến tính sau:.........................................................................

2. Cho bài toán qui hoạch tuyến tính:............................................................................................................

3. Xét qui hoạch tuyến tính:..........................................................................................................................

4. Xét bài toán quy hoạch tuyến tính:.............................................................................................................

5. Xét qui hoạch tuyến tính:............................................................................................................................

6. Xét qui hoạch tuyến tính:............................................................................................................................

7. Xét qui hoạch tuyến tính:..........................................................................................................................

29