Thuật toán đơn hình đối ngẫu trong tái tối ưu hóa

Một phần của tài liệu (LUẬN văn THẠC sĩ) thuật toán đơn hình đối ngẫu và ứng dụng trong tái tối ưu hóa với ràng buộc phụ (Trang 29)

buộc về dạng đẳng thức và đổi dấu hai vế đẳng thức thu được:  x1  x2  x3 + x6 =

 60.

Bước 2. Bây giờ ta đưa ràng buộc này vào Bảng 3 và lập Bảng 4. Để ý là biến

bù mới x6 không có mặt trong hai ràng buộc còn lại và trong hàm mục tiêu, vì thế hệ số của x6 trong hai ràng buộc này cũng như trong hàm mục tiêu bằng 0. Hơn nữa, biến x6 sẽ là biến cơ sở.

Biến cơ sở CB Giả phương án x1 x2 x3 x4 x5 x6 15 12 10 0 0 0 x2 12 25 7/8 1 0 3/8 1/4 0 x3 10 30 1/4 0 1 1/4 1/2 0 x6 0 60  1  1  1 0 0 1 Bảng 4 600 7 0 0 2 2 0

Bước 3. Biến Bảng 4 về bảng đơn hình đối ngẫu: Do x2, x3 là các biến cơ sở nên cột x2, x3 phải là các véctơ cột đơn vị với số 1 ở ô có cùng tên biến trên dòng và cột của nó. Muốn thế ta cộng dòng 1 và dòng 2 vào dòng 3. Kết quả ta nhận được Bảng 5. Biến cơ sở CB Giả phương án x1 x2 x3 x4 x5 x6 15 12 10 0 0 0

x2 12 25 7/8 1 0 3/8 1/4 0 x3 10 30 1/4 0 1 1/4 1/2 0 x6 0 5  3/8 0 0 1/8 1/4 1 Bảng 5 600 7 0 0 2 2 0

Bước 4. Bảng này tương ứng với giả phương án x0 = (0; 25; 30; 0; 0; 5) thỏa mãn tiêu chuẩn tối ưu. Loại biến x6 khỏi cơ sở và đưa biến x5 vào cơ sở. Biến đổi Bảng 5 theo phương pháp đơn hình đối ngẫu ta nhận được Bảng 6. Trong bảng này ta thấy mọi phần tử trong cột Giả phương án đều dương nên phương án tối ưu của bài toán mới bây giờ là x* = (0; 20; 40) với giá trị cực tiểu mới fmin = 640 (giá trị này đương nhiên lớn hơn giá trị fmin cũ).

Biến cơ sở CB Giả phương án x1 x2 x3 x4 x5 x6 15 12 10 0 0 0 x2 12 20 1/2 1 0 1/2 0 1 x3 10 40 1/2 0 1 1/2 0 2 x5 0 20 3/2 0 0 1/2 1 4 Bảng 6 640 4 0 0 1 0 8 3.3. VÍ DỤ MINH HỌA

Ví dụ 3.2. Giải bài toán qui hoạch tuyến tính dạng chuẩn sau đây. f(x) = x1 + 100x2 + 10000x3 min,

x1 + 20x2 + 200x3  100, x2 + 20x3  10, x1 0, x2 0, x3 0.

Đưa bài toán về dạng chính tắc và đổi dấu hai vế các ràng buộc đẳng thức, ta nhận được bài toán:

f(x) = x1 + 100x2 + 10000x3 min,

 x1 20x2 200x3 + x4 =  100,  x2 20x3 + x5 =  10,

x1 0, x2 0, x3 0.

Bài toán có n = 5 biến và m = 2 ràng buộc chính, nên mỗi bảng đơn hình gồm n + 3 = 8 cột và m + 1 = 3 dòng. Bảng đầu tiên ghi lại các hệ số trong bài toán, Bảng này tương ứng với giả phương án x0 = (0, 0, 0, 100, 10, 1), f0 = f(x0) = 0.

Biến cơ sở CB Giả phương án x1 x2 x3 x4 x5 15 12 10 0 x4 0 100 1  20  200 1 0 x5 0  10 0  1  20 0 1 Bảng 1 0 1 100 10000 0 0 x1 1 100 1 20 200 - 1 0 x5 0  10 0  1  20 0 1 Bảng 2 100 0  80 9800 1 0 x1 1 100 1 0  200 1 20 x2 100 10 0 1 20 0 1 Bảng 3 900 0 0 - 8200 1 80 x4 0 100  1 0 200 1  20 x2 100 10 0 1 20 0  1 Bảng 4 1000  1 0  8000 0  100

Bảng 4 cho thấy mọi phần tử trong cột "Giả phương án đều dương nên phương án tối ưu của bài toán này là x* = (0, 10, 0, 100, 0) với giá trị tối ưu của hàm mục tiêu fmin = 1000.

 Bây giờ ta thêm vào bài toán ràng buộc mới x3 1. Ta thấy phương án tối ưu x* không thoả mãn ràng buộc mới x3 1, nên x* không phải là một phương án của bài toán mới. Cách xử lý ràng buộc mới như sau:

Bước 1.Thêm vào biến bù x6  0 để đưa ràng buộc về dạng đẳng thức và đổi dấu hai vế đẳng thức thu được:  x3 + x6 =  1.

Bước 2. Đưa ràng buộc này vào Bảng 4 và lập Bảng 5. Để ý là biến bù mới x6

trong hai ràng buộc này cũng như ở hàm mục tiêu bằng 0. Hơn nữa, biến x6 sẽ là biến cơ sở.

Bước 3. Bảng 5 đã là bảng đơn hình đối ngẫu: Các biến x4, x2 và x6 là các biến cơ sở (các cột x4, x2, x6 đều là các véctơ cột đơn vị với số 1 ở ô có cùng tên biến trên dòng và cột của nó).

Bước 4. Bảng này tương ứng với giả phương án x0 = (0, 10, 0, 100, 0, 1) thỏa mãn tiêu chuẩn tối ưu. Loại biến x6 khỏi cơ sở và đưa biến x3 vào cơ sở. Biến đổi Bảng 5 theo phương pháp đơn hình đối ngẫu ta nhận được Bảng 6.

Bước 5. Trong bảng 6, ở cột "Giả phương án" vẫn còn phần tử âm. Loại biến

x4 khỏi cơ sở và đưa biến x1 vào cơ sở. Biến đổi Bảng 6 theo phương pháp đơn hình đối ngẫu ta nhận được Bảng 7.

Biến cơ sở CB Giả phương án x1 x2 x3 x4 x5 x6 15 12 10 0 0 x4 0 100  1 0 200 1  20 0 x2 100 10 0 1 20 0  1 0 x6 0  1 0 0  1 0 0 1 Bảng 5 1000  1 0  8000 0  100 0 x4 0 100  1 0 0 1 20 200 x2 100  10 0 1 0 0 1 20 x3 10000 1 0 0 1 0 0 1 Bảng 6 9000 1 0 0 0 100 8000 x1 1 100 1 0 0 1 20 200 x2 100 10 0 1 0 0 1 20 x3 10000 1 0 0 1 0 0 1 Bảng 7 9100 0 0 0 1 80 8200 x1 1 100 1 20 0 1 0 200 x5 0 10 0 1 0 0 1 20

x3 10000 1 0 0 1 0 0 1 Bảng 8 9900 0 80 0 1 0 -9800 x4 0 100  1 20 0 1 0 200 x5 0 10 0 1 0 0 1 20 x3 10000 1 0 0 1 0 0 1 Bảng 9 10000 1 100 0 0 0 10000

Bước 6. Trong bảng 7, ở cột "Giả phương án" vẫn còn phần tử âm. Loại biến

x2 khỏi cơ sở và đưa biến x5 vào cơ sở. Biến đổi Bảng 7 theo phương pháp đơn hình đối ngẫu ta nhận được Bảng 8.

Bước 7. Trong bảng 8, ở cột "Giả phương án" vẫn còn phần tử âm. Loại biến

x1 khỏi cơ sở và đưa biến x4 vào cơ sở. Biến đổi Bảng 8 theo phương pháp đơn hình đối ngẫu ta nhận được Bảng 9.

Bước 8. Ở Bảng 9 ta thấy mọi phần tử trong cột Giả phương án đều không âm

nên phương án tối ưu của bài toán mới bây giờ là x* = (0, 0, 1, 100, 10, 0) với giá trị cực tiểu mới fmin = 10000 (giá trị này đương nhiên lớn hơn fmin = 1000 ở Bảng 4).

Tóm lại, chương này đã trình bày vấn đề tái tối ưu hóa khi thêm ràng buộc mới vào bài toán đã giải xong và giới thiệu tác dụng của thuật toán đơn hình đối ngẫu trong tái tối ưu hóa với ràng buộc phụ.

KẾT LUẬN

Luận văn này giới thiệu thuật toán đơn hình đối ngẫu giải bài toán qui hoạch tuyến tính và ứng dụng của nó trong tái tối ưu hóa, khi thêm ràng buộc phụ vào bài toán đã giải.

Luận văn đã trình bày các nội dung cụ thể sau:

 Một số kiến thức cơ bản cần thiết về qui hoạch tuyến tính, bài toán qui hoạch tuyến tính đối ngẫu, các định lý đối ngẫu trong qui hoạch tuyến tính. Giới thiệu ý tưởng cơ bản của phương pháp đơn hình gốc, đơn hình đối ngẫu giải qui hoạch tuyến tính.

• Chi tiết hóa các bước tính toán của thuật toán đơn hình đối ngẫu dạng đầy đủ và của thuật toán đơn hình đối ngẫu dạng cải biên. Cuối chương trình bày ví dụ áp dụng thuật toán đơn hình đối ngẫu vào giải bài toán trò chơi ma trận.

• Vấn đè tái tối ưu hóa khi thêm ràng buộc vào bài toán sau khi đã giải xong và vai trò của việc áp dụng thuật toán đơn hình đối ngẫu trong tái tối ưu hóa. Cuối chương nêu ví dụ minh họa.

Đây là một đề tài mang tính ứng dụng thiết thực, nhưng có nhiều chi tiết kỹ thuật phức tap, đòi hỏi nhiều tính toán tỉ mỉ. Tuy nhiên, có thể kết hợp với kỹ thuật lập trình để thực thi giải bài toán trên máy tính. Tác giả luận văn hy vọng trong tương lai sẽ có dịp được tìm hiểu thêm về các thuật toán khác của tối ưu hóa và ứng dụng của chúng.

TÀI LIỆU THAM KHẢO Tiếng Việt

[1] Nguyễn Thị Bạch Kim (2014), Giáo trình các phương pháp tối ưu: Lý thuyết và thuật toán. NXB Bách Khoa Hà Nội.

[2] Trần Vũ Thiệu (2004), Giáo trình tối ưu tuyến tính. NXB Đại học Quốc

gia Hà Nội.

Tiếng Anh

[3] Bazara M.S. (2006), Nonlinear Programming: Theory and Algorithms. 3rd

Edition. A John Willey & Sons, Inc., Publication.

[4] Dantzig G. B., Thapa M. N. (2003), Linear Programming: Theory and Extensions. Springer.

[5] Griffn C. (2009), Linear Programming: Penn State Math 484 Lecture

Notes, Licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 United States.

Một phần của tài liệu (LUẬN văn THẠC sĩ) thuật toán đơn hình đối ngẫu và ứng dụng trong tái tối ưu hóa với ràng buộc phụ (Trang 29)

Tải bản đầy đủ (PDF)

(35 trang)