ò, X >0} trong đó A e R[SUP]mxn[/SUP] (ma trận cỡ m X n), b € R[SUP]m[/SUP], c, X e R[SUP]n[/SUP] X > 0 Trong bài toán này, tập D = {x G R[SUP]n[/SUP] : Ax > b. X >0} là một tập lồi đa diện. Ví dụ 1.1 Quy hoạch tuyến tính dạng chuẩn hai biến: 3xị 4- 2x2 min với điều kiện X 4- 2x2 > 5, 3xi 4- Xo > 4, x > 0, X2 > 0. Dạng chính tắc ( canonical form): min{/(x) = C[SUP]T[/SUP]X : Ax = 6, X > 0} với các kí hiệu như ở trên. Ví dụ 1.2 Quy hoạch tuyến tính dạng chính tắc ba biến: x 4- 3x2 4- 2*3 —> min với điều kiện X-X[SUB]2[/SUB] + X$ = 5, 2x + x-2 — = 4, Xi 4- Xo 4- x[SUB]ẵ[/SUB] = 3, X > 0. X2 > 0, X3 > 0. TÀI LIỆU THAM KHẢO [1] N. T .B. Kim, Giáo trình các phương pháp tối ưu - Lý thuyết và thuật toán,Nhập Nxb Đại Học Bách Khoa Hà Nội, 2008. [2] L. D. Mưu, Nhập môn các phương pháp tối trtí.Nxb Khoa học Kỹ thuật Hà Nội, 1998. [3] T. V. Thiệu, Giáo trình tối líu tuyến tính. Nxb Dại Học Quốc Gia Hà Nội, 2004. [4] T. V. Thiệu và B. T. Tâm. Các phương pháp tối ưu hóa. Nxb Giao Thông Vận Tải, Hà Nội, 1998. [5] H. w. Corley et al The cosine simple algrithm (2005). [6] H. V. Junior and M. p. E. Lins, An improve initial basis for the simplex algorithm. Computers & Operation Reseach. 32 (2005), 1383 - 1393 [7] N. K. Karmarkar. A New Polynomial - Time Algorithm for Linear Programming. Combinatorica. 4: 373 - 395, 1984. [8] L. G. Khachian. Thuật toán đa thức trong quy hoạch tuyến tính. Báo Cáo Viện Hàn Lâm Khoa Học Liên Xô, 1979, 244, N05. 1093 - 1096 (tiếng Nga). [9] Y. Nesterov and A. Nemirovs. Interior - Point Polynomial Algorithms in Convex Programing. SIAM. Philadelphia, 1994. [10] K. Paparrios et al A New Efficient Primal Dual Simplex Algorithm. Computers & Operation Reseach. 30 ('>Luận văn thạc sĩ năm 2011 Đề tài: CẢI TIẾN PHƯƠNG PHÁP ĐƠN HÌNH GIẢI QUY HOẠCH TUYẾN TÍNH Mục lục 1 KIẾN THỨC CHUẨN BỊ 6 1.1 BÀI TOÁN QUY HOẠCH TUYẾN tính và tính CHẤT . c 1.1.1 Nội dung bài toán c 1.1.2 Một số tính chất . 8 1.2 BÀI TOÁN QUY HOẠCH TUYẾN tính Đối ngẫu 11 1.2.1 Dạng bài toán dối ngẫu . 11 1.2.2 Định lí đối ngẫu . 12 1.3 PHƯƠNG PHÁP ĐƠN HÌNH . 13 1.3.1 Thuật toán đdn hình gốc 14 1.3.2 Thuật toán đdn hình đối ngẫu . 17 2 PHƯƠNG PHÁP ĐƠN HÌNH Gốc - Đối NGẦU cải BIÊN 22 2.1 BÀI TOÁN VÀ Ý TƯỞNG THUẬT TOÁN . 22 2.1.1 Nội dung bài toán và các kí hiệu . 22 2.1.2 Ý tưởng thuật toán . 23 2.2 THUẬT TOÁN DƠN HÌNH Gốc - Đối NGẪU CẢI BIÊN (RPDSA) . 25 2.3 PHƯƠNG PHÁP M - LỚN ( BIG M - METHOD) 27 2.3.1 TÌ111 cơ sỏ đối ngẫu chắp nhận được B và phân hoạch ( B, N ) ban đầu 27 2.3.2 Tìm điểm gốc chấp nhận đưdc y ban đầu 27 2.3.3 Phưdng pháp M - lổn ( Big - M Method 28 2.3.4 VÍ DỤ MINH HỌA 30 3 HAI PHƯƠNG PHÁP CẢI TIEN khác 33 3.1 BÀI TOÁN VÀ Ý TƯỞNG THUẬT TOÁN 33 3.1.1 Nội dung bài toán và các kí hiệu . 33 3.1.2 Ý tưởng thuật toán 34 3.2 PHƯƠNG PHÁP GÓC NGHIÊNG NHỎ NHẤT 37 3.2.1 Thuật toán . 37 3.2.2 Ví dụ 3.1 39 3.3 PHƯƠNG PHÁP CÔSIN Dơx HÌNH 41 LỜI NÓI ĐẦU Quy hoạch tuyến tính là bài toán tìm cực đại ( hay cực tiểu ) của một hàm tuyến tính với cấc biến số thỏa mãn các phương trình hay bất phương trình tuyến tính. Quy hoạch tuyến tính là một trong những lớp bài toán tối ưu quan trọng nhất và được ứng dụng rộng rãi nhất trong thực tiễn. Thuật toán đơn hình do Dantzig rĩề xuất từ năm 1947« dựa trên nguyên tắc xoay vần rĩược dùng rộng rỗi và có hiệu quả để giải các bài toán quy hoạch tuyến tính. Tuy nhiên, về mặt lý thuyết nó là thuật toán thời gian mũ ( thời gian tính phụ thuộc theo cấp độ hàm mũ vào độ dài dữ liệu của bài toán cần giải ). Vì thế, nhiều nghiên cứu đã được tiến hành nhằm cải tiến nó cả về lý thuyết lẫn hiệu quả tính toán thực tế. Về lv thuyết, thành tựu nổi bật nhất là đã chứng minh được rằng bài toán quy hoạch tuyến tính có thể giải được bằng các thuật toán thời gian đa thức. L. G. Khachian ([8], 1979) là người đầu tiên rtã đề xuất thuật toán ellipsoid giải quy hoạch tuyến tính trong thời gian đa thức, dựa trên những nghiên cứu trong những năm 60 - 70 của thế kỉ tritóc, chủ yếu ỏ Liên Xô (trước đây), do những tác giả khác, trước Khachian thực hiện. Tiếp đó, N. K. Karmarkar ([7], 1984) đã đề xuất thuật toán chiếu giải quy hoạch tuyến tính. Phương pháp này cũng có độ phức tạp rta thức và có hiệu quả tính toán cao đặc biệt đối với những bài toán tuyến tính cổ lớn. Cả hai bài toán trên đều thuộc loại phương pháp điểm trong. Sau đó đã có nhiều mở rộng phương phấp điểm trong (xem [9]) để giải các bài toán tối Ưu phi tuyến, quy hoạch lồi toàn phương . quy hoạch nón . Về góc độ thực tiễn, có nhiều nghiên cứu nhằm cải tiến thuật toán đơn hình sao cho đạt hiệ quả tính toán cao hơn nữa. Trong đó, đáng ké có thuật toán đơn hình gốc đối ngẫu của K. Paparrizos et al., ([10], 2003) thuật toán cải tiến cơ sở ban đầu cho thuật toán đơn hình do H. V. Junior và M. p. E. Lins đề xuất ([6], 2005) và thuật toán cô sin đơn hình do H. w. Corley et al., đề xuất ([5], 2005) Kết quả tính toán trên các bài toán thử nghiệm cho thấy các thuật toán mới hiệu quả hơn thuật toán đơn hình cổ điển khoảng 30% và tỏ ra rất có triển vọng. Luận văn nàv nhằm tìm hiểu và giới thiệu một số thuật toán mổi cải tiến thuật toán đơn hình, thuộc nhóm thứ hai kể trên. Cụ thế luận văn sẽ trình bày phương pháp đơn hình điếm ngoài (EPSA, RPDSA). phương pháp góc nghiêng nhỏ nhất (MA) và phương pháp côsin đơn hình (CSA). Các thuật toán này có ý tưỏng rõ ràng, dễ thực thi, khối lượng tính toán giảm và do đó hiệu quả tính toán cao hơn. Vì thế, tìm hiểu và nghiên cứu chủ đề này là cần thiết và hữu ích, giúp hiếu rõ các IĨ1Ở rộng và ứng dụng của phương pháp đơn hình trong thực tiễn. Nội dung luận văn được chia làm ba chương: Chương 1: Kiến thức chuẩn bị Nhắc lại tóm tắt một số kiến thức cơ bản cần thiết về nài toán quv hoạch tuyến tính và bài toán quv hoạch tuyến tính đối ngẫu cùng các tính chất của chúng, về phương pháp đơn hình và đơn hình đối ngẫu giải bài toán quy hoạch tuyến tính. Nhiều khái niệm, sự kiện trình bày ở chương này được giải thích, minh họa qua các ví dụ bằng số và hình vẽ cụ thế. Các kiến thức nàv sẽ được dùng đến ở các chương sau. Chương 2: Phương pháp đdn hình đối ngẫu- đối ngẫu cải biên trình bày thuật toán đơn hình gốc - đối ngẫu cải biên (RPDSA) mà thực chất là sự cái biển thuật toán đơn hình đối ngẫu. Thuật toán RPDSA cũng có thế xem như một thuật toán đơn hình điểm ngoài ( exterior point simple algorithm - EPS A), vì các nghiệm cơ sỏ [SUP]k[/SUP] do thuật toán tạo ra luôn nằm ngoài miền chấp nhận được của bài toán. Chương 3: Hai phiídng pháp cải tiến khác trình bày phương pháp góc nghiêng nhỏ nhất giải quy hoạch tuyến tính chính tắc và phương pháp cô sin đơn hình giải quy hoạch tuyến tính chuẩn tắc. Cả hai phương pháp đều (lựa trên nhận xét chung là đỉnh tối líu của bài toán gốc hay đối ngẫu thường gần với đỉnh tạo nên bởi các ràng buộc mà góc giữa véc tơ gradian của chúng với véc tơ hệ số mục tiêu là nhỏ nhất. Phương pháp đầu chọn các véctơ ràng buộc đó làm cơ sở xuất phát, còn phương pháp sau đưa dần các ràng buộc cĩó vào bài toán để giai. Do thời gian và kiến thức còn nhiều hạn chế nên luận văn này mới chỉ đề cập tới những nội dung cơ bản của các thuật toán kiếu đơn hình giải quy hoạch tuyến tính, chưa đi sâu vào kĩ thuật lập trình cụ thể. Trong kĩ thuật viết luận văn cũng như trong quá trình xứ lý văn bán chắc chắn không tránh khỏi những sai xót Iihất định. Tôi rất mong nhận được sự đóng góp của các thầy, cô và các bạn đồng nghiệp để luận văn được chính xác và hoàn thiện hơn. Nhân dịp nay, tôi xin bày tỏ lòng biết ơn sâu sắc đến thầy hướng dẫn GS - TS Trần Vũ Thiệu đã tận tình giứp đỡ trong suốt quá trình làm luận văn. Tôi xin trân trọng cảm ơn các thầy, cô giáo trường Dại Học Khoa Học - Dại Học Thái Nguyên, Viện Toán học - Viện Khoa Học và Công Nghệ Việt Nam, đã giảng dạy và tạo mọi điều kiện thuận lợi trong quả trình tôi học tập và nghiên cứu. Tôi cũng xin chân thành cảm ơn ban giấm hiệu, các Phòng, các Ban chức năng của trường Cao Dang Công Nghệ và Kinh tế Công Nghiệp thành phố Thái Nguyên và tập thế bạn bè đồng nghiệp cùng gia đình đã quan tâm giúp đỡ, động viên để tôi hoàn thành tốt luận văn này. Thái Nguyên, tháng 9/2011 Chương 1 KIẾN THỨC CHUẨN BỊ Chương này trình bày một số kiến thức cơ bản cần thiết về quy hoạch tuyến tính, phương pháp đơn hình ( thuật toán đơn hình gốc và thuật toán đdn hình đối ngẫu ) và đối ngẫu trong quy hoạch tuyến tính. Nội dung của chương chủ yếu dựa trên các tài liệu tham khảo [1] - [4]' 1.1 BÀI TOÁN QUY HOẠCH TUYEN tính và tính CHẤT Quy hoạch tuyến tính là bài toán tìm cực tiểu ( cực đại ) của một hàm tuyến tính f(x) trên một tập lồi đa diện D c R". Quy hoạch tuyến tính là một trong nhftng lớp bài toán tối ưu quan trọng nhất và được ứng dụng rộng rãi nhốt trong thực tiễn. Nó bắt nguồn từ tiling nghiên crtu của nhà bác học Nga nối tiếng, Viện sĩ L. V. Kantorovich trong một loạt công trình về kế hoạch hóa sản xuất công bố năm 939 và nó thực sự phát triển mạnh mẽ kế trt khi nhà toán học Mỹ G. B. Dantzig đề xuất thuật toán đơn hình giải quy hoạch tuyến tính vào năm 1947. 1.1.1 Nội dung bài toán Bài toán quy hoaeh tuyến tính thường được viết ở một số dạng sau: Dạng tống quát ( abstract form ): min{/(x) = C[SUP]T[/SUP]X : X £ D} trong đó c G R' D c R[SUP]n[/SUP] là một tập lồi đa diện, tức là tập nghiệm của một hệ phương trình và bất phương trình tuyến tính. T kí hiệu của chuyển vị véctơ ( ma trận ). Dạng chuẩn ( Standard form): min{ f(x) = C[SUP]T[/SUP]X : Ax > ò, X >0} trong đó A e R[SUP]mxn[/SUP] (ma trận cỡ m X n), b € R[SUP]m[/SUP], c, X e R[SUP]n[/SUP] X > 0 Trong bài toán này, tập D = {x G R[SUP]n[/SUP] : Ax > b. X >0} là một tập lồi đa diện. Ví dụ 1.1 Quy hoạch tuyến tính dạng chuẩn hai biến: 3xị 4- 2x2 min với điều kiện X 4- 2x2 > 5, 3xi 4- Xo > 4, x > 0, X2 > 0. Dạng chính tắc ( canonical form): min{/(x) = C[SUP]T[/SUP]X : Ax = 6, X > 0} với các kí hiệu như ở trên. Ví dụ 1.2 Quy hoạch tuyến tính dạng chính tắc ba biến: x 4- 3x2 4- 2*3 —> min với điều kiện X-X[SUB]2[/SUB] + X$ = 5, 2x + x-2 — = 4, Xi 4- Xo 4- x[SUB]ẵ[/SUB] = 3, X > 0. X2 > 0, X3 > 0. TÀI LIỆU THAM KHẢO [1] N. T .B. Kim, Giáo trình các phương pháp tối ưu - Lý thuyết và thuật toán,Nhập Nxb Đại Học Bách Khoa Hà Nội, 2008. [2] L. D. Mưu, Nhập môn các phương pháp tối trtí.Nxb Khoa học Kỹ thuật Hà Nội, 1998. [3] T. V. Thiệu, Giáo trình tối líu tuyến tính. Nxb Dại Học Quốc Gia Hà Nội, 2004. [4] T. V. Thiệu và B. T. Tâm. Các phương pháp tối ưu hóa. Nxb Giao Thông Vận Tải, Hà Nội, 1998. [5] H. w. Corley et al The cosine simple algrithm (2005). [6] H. V. Junior and M. p. E. Lins, An improve initial basis for the simplex algorithm. Computers & Operation Reseach. 32 (2005), 1383 - 1393 [7] N. K. Karmarkar. A New Polynomial - Time Algorithm for Linear Programming. Combinatorica. 4: 373 - 395, 1984. [8] L. G. Khachian. Thuật toán đa thức trong quy hoạch tuyến tính. Báo Cáo Viện Hàn Lâm Khoa Học Liên Xô, 1979, 244, N05. 1093 - 1096 (tiếng Nga). [9] Y. Nesterov and A. Nemirovs. Interior - Point Polynomial Algorithms in Convex Programing. SIAM. Philadelphia, 1994. [10] K. Paparrios et al A New Efficient Primal Dual Simplex Algorithm. Computers & Operation Reseach. 30 (
Trang 1ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC KHOA HỌC
LUẬN VĂN THẠC SĨ TOÁN HỌC
Người hướng dẫn khoa học GS.TS TRẦN VŨ THIỆU
Thái Nguyên – 2011
Trang 2NGUYỄN THỊ HUỆ
Đề tài: CẢI TIẾN THUẬT TOÁN ĐƠN HÌNH GIẢI QUY HOẠCH TUYẾN TÍNH
Soạn thảo văn bản L A TEX bởi công cụ MikTeX & TeXmaker
Thái Nguyên, ngày 10 tháng 10 năm 2011
Trang 3Mục lục
CHẤT 6
1.1.1 Nội dung bài toán 6
1.1.2 Một số tính chất 8
1.2 BÀI TOÁN QUY HOẠCH TUYẾN TÍNH ĐỐI NGẪU 11 1.2.1 Dạng bài toán đối ngẫu 11
1.2.2 Định lí đối ngẫu 12
1.3 PHƯƠNG PHÁP ĐƠN HÌNH 13
1.3.1 Thuật toán đơn hình gốc 14
1.3.2 Thuật toán đơn hình đối ngẫu 17
2 PHƯƠNG PHÁP ĐƠN HÌNH GỐC - ĐỐI NGẪU CẢI BIÊN 22 2.1 BÀI TOÁN VÀ Ý TƯỞNG THUẬT TOÁN 22
2.1.1 Nội dung bài toán và các kí hiệu 22
2.1.2 Ý tưởng thuật toán 23
2.2 THUẬT TOÁN ĐƠN HÌNH GỐC - ĐỐI NGẪU CẢI BIÊN (RPDSA) 25
2.3 PHƯƠNG PHÁP M - LỚN ( BIG M - METHOD) 27
2.3.1 Tìm cơ sở đối ngẫu chấp nhận được B và phân hoạch ( B, N ) ban đầu 27
Trang 42.3.3 Phương pháp M - lớn ( Big - M Method 28
Trang 5LỜI NÓI ĐẦU
Quy hoạch tuyến tính là bài toán tìm cực đại ( hay cực tiểu ) củamột hàm tuyến tính với các biến số thỏa mãn các phương trình hay bấtphương trình tuyến tính Quy hoạch tuyến tính là một trong nhữnglớp bài toán tối ưu quan trọng nhất và được ứng dụng rộng rãi nhấttrong thực tiễn
Thuật toán đơn hình do Dantzig đề xuất từ năm 1947, dựa trên nguyêntắc xoay vần được dùng rộng rãi và có hiệu quả để giải các bài toánquy hoạch tuyến tính Tuy nhiên, về mặt lý thuyết nó là thuật toánthời gian mũ ( thời gian tính phụ thuộc theo cấp độ hàm mũ vào độdài dữ liệu của bài toán cần giải ) Vì thế, nhiều nghiên cứu đã đượctiến hành nhằm cải tiến nó cả về lý thuyết lẫn hiệu quả tính toán thựctế
Về lý thuyết, thành tựu nổi bật nhất là đã chứng minh được rằngbài toán quy hoạch tuyến tính có thể giải được bằng các thuật toánthời gian đa thức L G Khachian ([8], 1979) là người đầu tiên đã đềxuất thuật toán ellipsoid giải quy hoạch tuyến tính trong thời gian đathức, dựa trên những nghiên cứu trong những năm 60 - 70 của thế kỉtrước, chủ yếu ở Liên Xô (trước đây), do những tác giả khác, trướcKhachian thực hiện Tiếp đó, N K Karmarkar ([7], 1984) đã đề xuấtthuật toán chiếu giải quy hoạch tuyến tính Phương pháp này cũng
có độ phức tạp đa thức và có hiệu quả tính toán cao đặc biệt đối vớinhững bài toán tuyến tính cỡ lớn Cả hai bài toán trên đều thuộc loạiphương pháp điểm trong Sau đó đã có nhiều mở rộng phương phápđiểm trong (xem [9]) để giải các bài toán tối ưu phi tuyến, quy hoạchlồi toàn phương , quy hoạch nón
Về góc độ thực tiễn, có nhiều nghiên cứu nhằm cải tiến thuật toánđơn hình sao cho đạt hiệ quả tính toán cao hơn nữa Trong đó, đáng
Trang 6kể có thuật toán đơn hình gốc đối ngẫu của K Paparrizos et al., ([10],2003) thuật toán cải tiến cơ sở ban đầu cho thuật toán đơn hình do
H V Junior và M P E Lins đề xuất ([6], 2005) và thuật toán cô sinđơn hình do H W Corley et al., đề xuất ([5], 2005) Kết quả tính toántrên các bài toán thử nghiệm cho thấy các thuật toán mới hiệu quảhơn thuật toán đơn hình cổ điển khoảng 30% và tỏ ra rất có triển vọng
Luận văn này nhằm tìm hiểu và giới thiệu một số thuật toán mớicải tiến thuật toán đơn hình, thuộc nhóm thứ hai kể trên Cụ thể luậnvăn sẽ trình bày phương pháp đơn hình điểm ngoài (EPSA, RPDSA),phương pháp góc nghiêng nhỏ nhất (MA) và phương pháp côsin đơnhình (CSA) Các thuật toán này có ý tưởng rõ ràng, dễ thực thi, khốilượng tính toán giảm và do đó hiệu quả tính toán cao hơn Vì thế,tìm hiểu và nghiên cứu chủ đề này là cần thiết và hữu ích, giúp hiểu
rõ các mở rộng và ứng dụng của phương pháp đơn hình trong thực tiễn.Nội dung luận văn được chia làm ba chương:
Chương 1: Kiến thức chuẩn bị Nhắc lại tóm tắt một số kiến thức
cơ bản cần thiết về nài toán quy hoạch tuyến tính và bài toán quyhoạch tuyến tính đối ngẫu cùng các tính chất của chúng, về phươngpháp đơn hình và đơn hình đối ngẫu giải bài toán quy hoạch tuyếntính Nhiều khái niệm, sự kiện trình bày ở chương này được giải thích,minh họa qua các ví dụ bằng số và hình vẽ cụ thể Các kiến thức này
sẽ được dùng đến ở các chương sau
Chương 2: Phương pháp đơn hình đối ngẫu- đối ngẫu cải biêntrình bày thuật toán đơn hình gốc - đối ngẫu cải biên (RPDSA) màthực chất là sự cải biên thuật toán đơn hình đối ngẫu Thuật toánRPDSA cũng có thể xem như một thuật toán đơn hình điểm ngoài
thuật toán tạo ra luôn nằm ngoài miền chấp nhận được của bài toán
Chương 3: Hai phương pháp cải tiến khác trình bày phương phápgóc nghiêng nhỏ nhất giải quy hoạch tuyến tính chính tắc và phươngpháp cô sin đơn hình giải quy hoạch tuyến tính chuẩn tắc Cả haiphương pháp đều dựa trên nhận xét chung là đỉnh tối ưu của bài toángốc hay đối ngẫu thường gần với đỉnh tạo nên bởi các ràng buộc màgóc giữa véc tơ gradian của chúng với véc tơ hệ số mục tiêu là nhỏ
Trang 7nhất Phương pháp đầu chọn các véctơ ràng buộc đó làm cơ sở xuấtphát, còn phương pháp sau đưa dần các ràng buộc đó vào bài toán đểgiải.
Do thời gian và kiến thức còn nhiều hạn chế nên luận văn này mới chỉ
đề cập tới những nội dung cơ bản của các thuật toán kiểu đơn hìnhgiải quy hoạch tuyến tính, chưa đi sâu vào kĩ thuật lập trình cụ thể.Trong kĩ thuật viết luận văn cũng như trong quá trình xử lý văn bảnchắc chắn không tránh khỏi những sai xót nhất định Tôi rất mongnhận được sự đóng góp của các thầy, cô và các bạn đồng nghiệp đểluận văn được chính xác và hoàn thiện hơn
Nhân dịp nay, tôi xin bày tỏ lòng biết ơn sâu sắc đến thầy hướngdẫn GS - TS Trần Vũ Thiệu đã tận tình giúp đỡ trong suốt quá trìnhlàm luận văn
Tôi xin trân trọng cảm ơn các thầy, cô giáo trường Đại Học KhoaHọc - Đại Học Thái Nguyên, Viện Toán học - Viện Khoa Học và CôngNghệ Việt Nam, đã giảng dạy và tạo mọi điều kiện thuận lợi trongquá trình tôi học tập và nghiên cứu
Tôi cũng xin chân thành cảm ơn ban giám hiệu, các Phòng, các Banchức năng của trường Cao Đẳng Công Nghệ và Kinh tế Công Nghiệpthành phố Thái Nguyên và tập thể bạn bè đồng nghiệp cùng gia đình
đã quan tâm giúp đỡ, động viên để tôi hoàn thành tốt luận văn này
Thái Nguyên, tháng 9/2011
Trang 8Quy hoạch tuyến tính là bài toán tìm cực tiểu ( cực đại ) của một
tuyến tính là một trong những lớp bài toán tối ưu quan trọng nhất vàđược ứng dụng rộng rãi nhất trong thực tiễn Nó bắt nguồn từ nữngnghiên cứu của nhà bác học Nga nổi tiếng, Viện sĩ L V Kantorovichtrong một loạt công trình về kế hoạch hóa sản xuất công bố năm 939
và nó thực sự phát triển mạnh mẽ kể từ khi nhà toán học Mỹ G B.Dantzig đề xuất thuật toán đơn hình giải quy hoạch tuyến tính vàonăm 1947
1.1.1 Nội dung bài toán
Bài toán quy hoach tuyến tính thường được viết ở một số dạng sau:
Dạng tổng quát ( abstract form ):
Trang 9trong đó c ∈ Rn, D ⊂ Rn là một tập lồi đa diện, tức là tập nghiệmcủa một hệ phương trình và bất phương trình tuyến tính T kí hiệucủa chuyển vị véctơ ( ma trận ).
Dạng chuẩn ( standard form):
Trang 10Trong các dạng trên, f được gọi là hàm mục tiêu, D gọi là tập ràng
là một phương án hay một lời giải chấp nhận được của bài toán Mộtphương án cực tiểu ( cực đại ) của hàm mục tiêu gọi là phương án tối
ưu hay lời giải tối ưu
Với mỗi bài toán quy hoạch tuyến tính chỉ xảy ra 1 trong 3 khả năngsau:
a) Bài toán không có phương án ( tập ràng buộc D rỗng )
b) Bài toán có phương án nhưng không có phương án tối ưu
c) Bài toán có phương án tối ưu
Nhận xét 1.1:
Định lí 1.1 chỉ đúng cho bài toán quy hoạch tuyến tính, định lí khôngcòn đúng khi hàm mục tiêu hoặc một trong các ràng buộc không còntuyến tính Sau đây là hai ví dụ chứng minh cho nhận xét này
Ví dụ 1.3
Xét bài toán
lồi khác rỗng, nhưng không la tập lồi đa diện Tuy hàm mục tiêu
trên D), nhưng rõ ràng bài toán không có phương án tối ưu, mặc dù
Trang 11Ví dụ 1.4
Xét bài toán
Miền chấp nhận được D ≡ R là một tập lồi đa diện, khác rỗng Tuy
với mọi x ∈ D ( f bị chặn dưới trên D), nhưng rõ ràng bài toán này
1.2)
Định lí 1.2:
Định nghĩa 1.1:
Một phương án x ∈ D mà đồng thời là đỉnh của D gọi là một phương
án cực biên hay một lời giải cơ sở nghĩa là x không thể biểu diễn dướidạng tổ hợp lồi của bất kì hai phương án khác của D Nói cách khác,
Định lí 1.3:
tuyến tính chính tắc là lời giải cơ sở thì điều kiện cần và đủ là các
Trang 12Định lí 1.4:
Nếu bài toán quy hoạch tuyến tính dạng chính tắc có ít nhất mộtphương án thì nó cũng có phương án cực biên (miền ràng buộc D cóđỉnh)
Trang 131.2 BÀI TOÁN QUY HOẠCH TUYẾN TÍNH ĐỐI NGẪU
1.2.1 Dạng bài toán đối ngẫu
Đối ngẫu là một phương pháp mà ứng với mỗi bài toán quy hoạchtuyến tính đã cho (gọi là bài toán gốc), ta có thể thiết lập một bàitoán quy hoạch tuyến tính 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 sẽ thu được thông tin về lời giải của bàitoán kia Sau đây là hai dạng cặp bài toán đối ngẫu thường gặp
Đối ngẫu của quy hoạch tuyến tính dạng chuẩn (quy hoạch gốc):
Đối ngẫu của quy hoạch tuyến tính dạng chính tắc :
( biến đối ngẫu y có dấu tùy ý )
Trang 14Định lí 1.6.( Đối ngẫu yếu)
Nếu x là một phương án của bài toán gốc (P) và y là một phương
án của bài toán đối ngẫu (Q) thì
c) Nếu hàm mục tiêu của bài toán đối ngẫu không bị chặn dưới trongmiề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 ánnào
Trang 15của bài toán đối ngẫu và f (x∗) = g(y∗) thì x∗ là phương án tối ưu của
Định lí 1.7 (Đố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í 1.8 (Đối ngẫu cơ bản):
Đối với mỗi cặp quy hoạch đối ngẫu nhau chỉ có thể xảy ra 1 trong
3 khả năng sau đây:
a) Cả 2 quy hoạch đều có phương án
b) Cả 2 quy hoạch đều có phương án Khi đó cả 2 quy hoạch đề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ằngnhau
c) Một quy hoạch có phương án và quy hoạch kia không có phương
án Khi đó quy hoạch 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
Quan hệ giữa cặp quy hoạch đối ngẫu còn thể hiện ở sự kiện sau
Định lí 1.9 (Định lí độ lệch bù)
Mỗi cặp phương án x, y của 2 quy hoạch đối ngẫu (P) và (Q) lànhững phương án tối ưu khi và chỉ khi chúng nghiệm đúng các hệthức:
Trang 16a) Nếu QHTT chính tắc có phương án tối ưu thì cũng có phương áncực biên tối ưu, nghĩa là có ít nhất 1 đỉnh của miền ràng buộc là lờigiải của bài toán
b) Mỗi điểm cực biên địa phương của hàm tuyến tính (cũng là hàmlồi) trên một tập hợp lồi là một điểm cực tiểu tuyệt đối
1.3.1 Thuật toán đơn hình gốc
Bằng cách thực hiện một số phép biến đổi đơn giản, ta có thể đưabài toán quy hoạch tuyến tính từ dạng này sang dạng khác Vì thế khigiải ta chỉ cần chọn một dạng thuận tiện để xét mà không làm giảmtính tổng quát của phương pháp
Xét quy hoạch tuyến tính chính tắc (m ràng buộc đẳng thức, n biến):
Giả thiết: m ≤ n (m > n bài toán có thể vô nghiệm) và rank(A) = m
Bài toán quy hoạch tuyến tính được gọi là không suy biến nếu tất
cả các phương án cực biên của nó đều không suy biến, tức là đều có
m thành phần dương Bài toán được gọi là suy biến nếu nó có dù chỉ
là một phương án cực biên suy biến ( số thành phần dương nhỏ hơn m)
Xuất phát từ một phương án cực biên (đỉnh ) không suy biến Chẳng
Trang 17là véc tơ hệ số các biến cơ sở.
Tính
Định lí 1.9( Dấu hiệu tối ưu )
Định lí 1.10 ( Dấu hiệu bài toán không có phương án tối ưu )
pương án tối ưu
Thuật toán đơn hình gốc gồm các bước sau:
Bước 1.
Lập bảng đơn hình ban đầu ( xem ví dụ 1.7)
Bước 2 ( Dấu hiệu tối ưu ).
Trái lại, chuyển sang bước 3
Bước 3 ( Dấu hiệu bài toán không có phương án tối ưu )
phương án tối ưu ( Định kí 1.10): dừng quá trình giải Trái lại chuyểnsang bước 4
Trang 18Bước 4 ( Chọn cột quay )
Bước 5 (Chọn dòng quay )
phần tử xoay Chuyển sang bước 6
Bước 6.
Biến đôi bảng đơn hình( theo quy tắc hình chữ nhật ).Trở lại bước 2
Nếu bài toán quy hoạch tuyến tính có phương án và mọi phương áncực biên của bài toán là không suy biến thì thuật toán đơn hình gốc
sẽ cho ra phương án tối ưu hoặc phát hiện bài toán không có phương
án tối ưu ( trị tối ưu vô cực ) sau một số hữu hạn lần thay đổi phương
án cực biên
Ví dụ 1.7
Xét bài toán quy hoạch tuyến tính dạng chính tắc sau đây:
Trang 19với điều kiện
1.3.2 Thuật toán đơn hình đối ngẫu
Về thực chất đây là phương pháp đơn hình áp dụng vào bài toán đốingẫu nhưng để tìm lời giải của bài toán gốc và diễn đạt các bước tínhtoán theo ngôn ngữ bài toán gốc Phương pháp này do G.E.Lemke đềxuất 1954
Phương pháp đơn hình giải quy hoạch tuyến tính bắt đầu từ một
kiện tối ưu (định lí 1.9) Sau mỗi bước lặp ta sẽ tìm được phương ánmới, tốt hơn phương án cũ (giá trị hàm mục tiêu giảm xuống đối vớibài toán tìm cực tiểu) và quá trình này tiếp tục cho đến khi nhận đượcphương án thỏa mãn dấu hiệu tối ưu hoặc tới khi phát hiện bài toánkhông có phương án tối ưu ( hàm mục tiêu giảm vô hạn )
Trang 20Phương pháp đơn hình đối ngẫu lại xuất phát từ một "giả phươngán" (nghiệm đúng Ax = b ) mà nó thỏa mãn tiêu chuẩn tối ưu nhưng
luôn đảm bảo điều kiện tối ưu và quá trình biến đổi bảng được tiếp
đó cũng là phương án tối ưu) hoặc đến khi phát hiện bài toán không
có phương án (miền chấp nhận được rỗng)
Phương pháp đơn hình đối ngẫu thường được sử dụng khi ta chưabiết một phương án cực biên nào của bài toán gốc nhưng lại dễ dàngtìm được phương án cực biên của bài toán đối ngẫu Chẳng hạn, khibài toán cần giải có dạng chuẩn và vecto hệ số mục tiêu không âm
Bài toán đối ngẫu tương ứng có dạng
Thuật toán đơn hình đối ngẫu gồm các bước sau:
Bước 1.
Lập bảng đơn hình đối ngẫu ban đầu ( xem ví dụ 1.8)
Bước 2 ( Dấu hiệu tối ưu ).
án tối ưu: dừng quá trình giải Trái lại, chuyển sang bước 3
Bước 3 (Chọn dòng quay )
Trang 21Bước 4 ( Dấu hiệu bài toán không có phương án )
án : dừng quá trình giải Trái lại chuyển sang bước 5
Bước 5 ( Chọn cột quay )
xoay.Chuyển sang bước 6
dấu 2 vế các ràng buộc đẳng thức nhận được, ta đưa đến bài toán:
Trang 22• Như vậy ta thấy, thuật toán đơn hình gốc luôn giữ cho B−1b ≥ 0 và
mọi k = 1, 2, , n) hoặc đến khi phát hiện bài toán không có phương
Có thể tóm tắt phương pháp đơn hình trong bảng sau:
Trang 23♣ Tóm lại, chương này đã trình bày về bài toán quy hoạch tuyếntính và các tính chất, lý thuyết đối ngẫu trong quy hoạch tuyến tính,phương pháp đơn hình ( thuật toán gốc và thuật toán đối ngẫu ) giảiquy hoạch tuyến tính Có thể tìm thấy chứng minh các định lí đã nêu
ở chương này trong các tài liệu tham khảo [ 1 ], [ 3 ] Những kiến thức
cơ sở đã giới thiệu sẽ cần đến ở các chương sau
Trang 24Chương 2
PHƯƠNG PHÁP ĐƠN HÌNH
GỐC - ĐỐI NGẪU CẢI BIÊN
Chương này trình bày thuật toán đơn hình gốc - đối ngẫu cải biên(RPDSA) giải quy hoạch tuyến tính Thuật toán này có thể xem nhưmột biến thể của thuật toán đơn hình đối ngẫu và nó làm việc khátốt trong thực tiễn đối với các bài toán cỡ nhỏ và vừa Nội dung củachương được tham khảo từ các tài liệu [1], [3] và [10]
2.1.1 Nội dung bài toán và các kí hiệu
Xét bài toán quy hoạch tuyến tính dạng chính tắc
tử của A trên hàng r và cột j ∈ J Phần tử thứ r của cột chỉ số I, J lí
Trang 25Giả sử
y là một nghiệm cơ sở của (DP) Nghiệm cơ sở y là chấp nhận được
nhận được của (LP) và nghiệm ( y, s) là chấp nhận được của (DP) gọi
là một cơ sở tối ưu
Với các kí hiệu trên, ràng buộc và hàm mục tiêu của (LP) trở thành:
2.1.2 Ý tưởng thuật toán
Thuật toán bắt đầu từ một (ma trận) cơ sở B đối ngẫu chấp nhậnđược(cách tìm B sẽ nói sau), nghĩa là (y, s) xác định như trên là mộtnghiệm cơ sở chấp nhận được của (DP) Gọi J là cột chỉ số các véc tơ