Phương pháp điểm trong giải quy hoạch tuyến tính
ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC KHOA HỌC NGUYỄN THỊ HỒNG LÊ PHƯƠNG PHÁP ĐIỂM TRONG GIẢI QUI HOẠCH TUYẾN TÍNH LUẬN VĂN THẠC SĨ TOÁN HỌC Thái Nguyên - Năm 2011 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn ĐẠI HỌC THÁI NGUYÊN TRƯỜNG ĐẠI HỌC KHOA HỌC NGUYỄN THỊ HỒNG LÊ PHƯƠNG PHÁP ĐIỂM TRONG GIẢI QUI HOẠCH TUYẾN TÍNH Chuyên ngành: TOÁN ỨNG DỤNG Mã số : 60.46.36 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 - Năm 2011 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn i Mục lục Mục lục . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . i LỜI NÓI ĐẦU 1 Nội dung 5 1 KIẾN THỨC CHUẨN BỊ 5 1.1 Qui hoạch tuyến tính và qui hoạch đối ngẫu . . . . . . . . 5 1.2 Phương pháp đơn hình và đơn hình đối ngẫu . . . . . . . . 9 1.3 Độ phức tạp của thuật toán . . . . . . . . . . . . . . . . . 12 1.4 Ví dụ Klee-Minty về độ phức tạp mũ . . . . . . . . . . . . . 15 2 PHƯƠNG PHÁP ELLIPSOID 19 2.1 Về hệ bất phương trình đại số tuyến tính . . . . . . . . . . 20 2.2 Kỹ thuật ellipsoid . . . . . . . . . . . . . . . . . . . . . . . 23 2.3 Thuật toán Khachian . . . . . . . . . . . . . . . . . . . . . 26 2.4 Áp dụng vào giải qui hoạch tuyến tính . . . . . . . . . . . . 29 3 PHƯƠNG PHÁP ĐIỂM TRONG 30 3.1 Tâm giải tích . . . . . . . . . . . . . . . . . . . . . . . . . . 30 3.2 Đường trung tâm . . . . . . . . . . . . . . . . . . . . . . . 34 3.2.1 Đường trung tâm đối ngẫu . . . . . . . . . . . . . . 37 3.2.2 Đường trung tâm gốc-đối ngẫu . . . . . . . . . . . 40 3.3 Chiến thuật giải . . . . . . . . . . . . . . . . . . . . . . . . 41 3.3.1 Phương pháp hàm chắn gốc . . . . . . . . . . . . . . 43 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn i 3.3.2 Phương pháp bám đường gốc- đối ngẫu . . . . . . . 45 3.3.3 Phương pháp hàm thế gốc- đối ngẫu . . . . . . . . . 48 3.3.4 Độ phức tạp của mỗi vòng lặp . . . . . . . . . . . . 51 3.4 Vấn đề khởi sự và kết thúc thuật toán . . . . . . . . . . . . 52 3.4.1 Khởi sự thuật toán . . . . . . . . . . . . . . . . . . 53 3.4.2 Kết thúc thuật toán . . . . . . . . . . . . . . . . . 54 3.4.3 Thuật toán HSD . . . . . . . . . . . . . . . . . . . 56 Kết luận 61 Tài liệu tham khảo 64 Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 1 LỜI NÓI ĐẦU Nhiều bài toán thực tế trong kinh tế, tài chính, công nghiệp và kỹ thuật có thể diễn đạt như bài toán qui hoạch tuyến tính, tức là dưới dạng 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 ràng buộc đẳng thức hay bất đẳng thức tuyến tính. Phương pháp đơn hình do Dantzig đề xuất từ năm 1947, đến nay vẫn còn được sử dụng rộng rãi để giải các bài toán qui hoạch tuyến tính. Cách tiếp này chỉ cần xét các đỉnh của tập đa diện ràng buộc và mỗi lần lặp đi từ một đỉnh tới một đỉnh kề với nó, thường là tốt hơn đỉnh trước đó (cải tiến được giá trị của hàm mục tiêu). Cuối cùng, nó đạt tới đỉnh mà từ đó không thể cải tiến hàm mục tiêu được nữa, đỉnh đó chính là lời giải cần tìm của bài toán. Mặc dầu nó rất hiệu quả trong thực tiễn (số lần lặp thường nhỏ hơn m+n, trong đó m là số ràng buộc tuyến tính và n là số biến của bài toán). Tuy nhiên, V.Klee và G.Minty(1972) đã đưa ra một bài toán qui hoạch tuyến tính đặc biệt mà để giải nó cần một thời gian tỉ lệ với hàm mũ của n. Điều này chứng tỏ về mặt lý thuyết thuật toán đơn hình không phải là một thuật toán thời gian đa thức. Vào những năm 1950, người ta đã đề cao tới các phương pháp điểm trong (đi từ phía trong miền ràng buộc). Tuy nhiên, chúng chưa thành đạt như phương pháp đơn hình. Năm 1979 [4] Khachian là người đầu tiên đã chứng minh được rằng có thể giải bài toán qui hoạch tuyến tính trong thời gian đa thức, bằng cách sử dụng thuật toán điểm trong thích hợp. Mặc dầu thuật toán Khachian chưa đủ hiệu quả trong thực tiễn, nhưng thành Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 2 tựu này của Khachian đã làm khởi sắc sự quan tâm trở lại tới các phương pháp điểm trong giải qui hoạch tuyến tính. Tiếp đó, năm 1984 [3] Karmarkar đã đề xuất một phương pháp điểm trong mới giải qui hoạch tuyến tính. Phương pháp này có độ phức tạp đa thức và nó có hiệu năng thực tiễn cao, đặc biệt đối với các bài toán tuyến tính cỡ lớn. Các công trình nghiên cứu của Khachian và Karmarkar là điểm khởi đầu cho nhiều nghiên cứu về các phương pháp điểm trong giải qui hoạch tuyến tính. Đó cũng là chủ đề chính của luận văn này. Cách tiếp cận mới khác cơ bản với phương pháp đơn hình . Thay cho đi trên các cạnh của tập ràng buộc từ đỉnh này tới đỉnh khác, các điểm lặp (xấp xỉ) đi men theo “ đường trung tâm” để tới tập lời giải. Có nhiều dạng phương pháp điểm trong , tiêu biểu nhất là phương pháp chắn gốc, phương pháp bám đường gốc-đối ngẫu tạo ra lời giải cho cả hai bài toán gốc và đối ngẫu của qui hoạch tuyến tính, phương pháp hàm thế , Trong nhiều năm kể từ 1984, các thuật toán và phần mềm giải qui hoạch tuyến tính đã trở nên hoàn toàn tinh xảo và có thể nói rằng đến nay các phương pháp điểm trong đã thực sự chiếm ưu thế. Cũng đã có nhiều mở rộng của phương pháp điểm trong để giải các bài toán tối ưu phi tuyến; qui hoạch lồi toàn phương, qui hoạch nón . Chẳng hạn, Nesterov và Nemirovsky (1994) [6] đã xây dựng cơ sở lý thuyết các phương pháp điểm trong cho tối ưu hóa lồi. Luận văn này đề cập tới các phương pháp điểm trong giải qui hoạch tuyến tính do Khachian và Karmarkar đề xuất. Việc tìm hiểu và nghiên cứu chủ đề này là rất cần thiết và hữu ích giúp hiểu được các mở rộng và ứng dụng của phương pháp điểm trong vào các bài toán tối ưu khác. Nội dung luận văn được chia thành 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ề bài toán qui hoạch tuyến tính và lý thuyết đối ngẫu trong Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 3 qui hoạch tuyến tính, về phương pháp đơn hình và đơn hình đối ngẫu giải bài toán qui hoạch tuyến tính .Tiếp đó nêu khái niệm độ phức tạp của thuật toán, thuật toán thời gian đa thức và nêu ví dụ của Klee- Minty về phương pháp đơn hình có độ phức tạp mũ. Các kiến thức này sẽ cần đến ở các chương sau . Chương 2 “Phương pháp Khachian” giới thiệu thuật toán ellipsoid do Khachian đề xuất. Về thực chất, thuật toán Khachian qui việc tìm nghiệm tối ưu của cặp bài toán đối ngẫu của qui hoạch tuyến tính về việc tìm nghiệm của một hệ bất phương trình tuyến tính.Nhiều khái niệm và sự kiện trình bày ở chương này được minh họa qua các ví dụ và hình vẽ cụ thể. Chương 3 “ Phương pháp điểm trong ” trình bày các khái niệm cơ bản về tâm giải tích, đường trung tâm gốc và đối ngẫu; những nội dung chính của phương pháp gốc-đối ngẫu, từ ý tưởng phương pháp (đi men theo đường trung tâm) đến thuật toán cụ thể (thuật toán bám đường). Phương pháp này được đánh giá là phương pháp điểm trong hiệu quả nhất giải qui hoạch tuyến tính. Tiếp đó, giới thiệu hai thuật toán bám đường tiêu biểu: thuật toán dự báo và thuật toán hiệu chỉnh. Vấn đề khởi sự và kết thúc thuật toán cũng được đề cập tới. Do thời gian và kiến thức còn 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 phương pháp điểm trong giải qui hoạch tuyến tính, chưa đi sâu vào các chi tiết thực thi thuật toán. Trong quá trình viết luận văn cũng như trong xử lý văn bản chắc chắn không tránh khỏi những sai sót nhất định. Tác giả luận văn rất mong nhận được sự góp ý của các thầy cô và các bạn đồng nghiệp để luận văn được hoàn thiện hơn. Nhân dịp này, tác giả 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. Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 4 Tác giả xin trân trọng cảm ơn các thầy, cô giáo Trường Đại học Khoa học- Đạ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ác giả học tập và nghiên cứu. Tác giả cũng xin chân thành cảm ơn Ban giám hiệu, tổ toán –tin Trường THPT Ngô Quyền –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ác giả hoàn thành tốt luận văn này. Thái Nguyên, tháng 09 năm 2011. Người thực hiện Nguyễn Thị Hồng Lê Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 5 Chương 1 KIẾN THỨC CHUẨN BỊ Chương này nhắc lại các kết quả cơ bản về lý thuyết qui hoạch tuyến tính và phương pháp đơn hình giải qui hoạch tuyến tính, đồng thời nêu khái niệm độ phức tạp của thuật toán và dẫn ra ví dụ của V. Klee và G. Minty cho thấy thuật toán đơn hình là thuật toán thời gian mũ (chứ không phải thuật toán thời gian đa thức!). Nội dung của chương chủ yếu dựa trên các tài liệu [1], [2], [5] và [7]. 1.1 Qui hoạch tuyến tính và qui hoạch đối ngẫu Qui 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 ⊂ R n . Bài toán thường được viết ở hai dạng: • Dạng chuẩn (standard form): min{f(x) = c T x : Ax ≥ 0, x ≥ 0}. với A ∈ R m×n (ma trận m hàng, n cột),b ∈ R m , c, x ∈ R n , x ≥ 0, tức là x ∈ R n + . T là ký hiệu chuyển vị véctơ, D = {x ∈ R n : Ax ≥ b, x ≥ 0} là một tập lồi đa diện. • Dạng chính tắc (canonical form): Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 6 min f (x) = c T x : Ax = b, x ≥ 0 , trong đó các ký hiệu A ∈ R m×n , b ∈ R m , c, x ∈ R n như ở trên. Trong bài toán này, tập D = {x ∈ R n : Ax = b, x ≥ 0} cũng là một tập lồi đa diện. Trong hai dạng trên, f gọi là hàm mục tiêu, D gọi là tập ràng buộc hay miền chấp nhận được. Điểm x = (x 1 , . . . , x n ) T ∈ D gọi là một lời giải (điểm, nghiệm)chấp nhận được hay một phương án của bài toán. Một phương án đạt cực tiểu (cực đại) của hàm mục tiêu gọi là một lời giải (điểm, nghiệm) tối ưu hay một phương án tối ưu. Bài toán max c T x : x ∈ D = −min −c T x : x ∈ D . Với mỗi bài toán qui hoạch tuyến tính, chỉ xảy ra một trong ba khả năng: a) Bài toán không có lời giải chấp nhận được (tập ràng buộc D rỗng). b) Bài toán có lời giải chấp nhận được, nhưng không có lời giải tối ưu. c) Bài toán có lời giải tối ưu (hữu hạn). Định lý sau nêu điều kiện để một qui hoạch tuyến tính có lời giải tối ưu. Định lý 1.1. Nếu một qui hoạch tuyến tính có lời giải chấp nhận được và hàm mục tiêu bị chặn dưới trong miền chấp nhận được (đối với bài toán min) thì qui hoạch đó chắc chắn có lời giải tối ưu. Định nghĩa 1.1. Một lời giải chấp nhận được x ∈ D mà đồng thời là đỉnh của D gọi là một lời giải cơ sở, nghĩa là x không thể biểu diễn dưới dạng một tổ hợp lồi của bất cứ hai lời giải chấp nhận được khác của D. Nói một cách khác, hễ x = λx 1 + (1 −λ) x 2 với 0 < λ < 1 và x 1 , x 2 ∈ D thì phải có x = x 1 = x 2 . Định lý sau nêu một tính chất đặc trưng cho lời giải cơ sở của qui hoạch tuyến tính chính tắc với giả thiết m ≤ n và rank(A) = m. Định lý 1.2. Để một lời giải chấp nhận được x = {x 1 , x 2 , . . . , x n } của qui hoạch tuyến tính chính tắc là lời giải cơ sở, thì cần và đủ là các véctơ cột Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn [...]... lập tuyến tính Từ định lý 1.2 dễ dàng suy ra các hệ quả sau đây: Hệ quả 1.1 Số lời giải cơ sở của qui hoạch tuyến tính chính tắc là hữu hạn Hệ quả 1.2 Số thành phần dương trong mỗi lời giải cơ sở của qui hoạch tuyến tính chính tắc tối đa bằng m (m là số hàng của ma trận A) Mỗi qui hoạch tuyến tính đã cho (qui hoạch gốc) được gắn với một qui hoạch tuyến tính khác (qui hoạch đối ngẫu) và hai qui hoạch. .. nhất định phương pháp ellipsoid tạo ra một thuật toán đa thức giải qui hoạch tuyến tính Một dạng phương pháp ellipsoid đề cập tới ở chương này thực ra nhằm mục đích tìm một điểm của tập lồi đa diện X cho bởi một hệ bất phương trình tuyến tính: X = x ∈ Rn : ai x ≤ bi , i = 1, , m , trong đó ai = (ai1 , , ain ) ∈ Rn Như sẽ thấy, tìm một điểm thuộc Ω tương đương với giải một qui hoạch tuyến tính Chẳng... dụng thuật toán Khachian giải hệ này ta thu được một phương pháp mới giải bài toán qui hoạch tuyến tính trong thời gian đa thức Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn 30 Chương 3 PHƯƠNG PHÁP ĐIỂM TRONG Chương này trình bày phương pháp điểm trong giải qui hoạch tuyến tính Mục 3.1 đề cập khái niệm tâm giải tích của một tập và nêu ví dụ minh họa Mục 3.2 trình bày các... yi ≥ 0, i = 1, , n Để giải bài toán (MK) tổng quát cũng cần 2n − 1 lần lặp theo thuật toán đơn hình đối ngẫu Tóm lại, chương này đã trình bày tóm tắt về bài toán qui hoạch tuyến tính, bài toán qui hoạch tuyến tính đối ngẫu, tính chất của lời giải cơ sở, ý tưởng của phương pháp đơn hình và đơn hình đối ngẫu giải qui hoạch tuyến tính Có thể tìm thấy chứng minh các định lý trong tài liệu tham khảo[1]... bài toán đối ngẫu thường gặp • Đối ngẫu của qui hoạch tuyến tính dạng chuẩn (qui hoạch gốc): (P ) min f (x) = cT x : Ax ≥ b, x ≥ 0 là qui hoạch tuyến tính (qui hoạch đối ngẫu): (Q) max g (y) = bT y : AT y ≤ c, y ≥ 0 (AT là ma trận chuyển vị của ma trận A) • Đối ngẫu của qui hoạch tuyến tính dạng chính tắc min f (x) = cT x : Ax = b, x ≥ 0 là quy hoạch tuyến tính max g (y) = bT y : AT y ≤ c (biến đối ngẫu... nghiệm 2.4 Áp dụng vào giải qui hoạch tuyến tính Thuật toán Khachian cho phép trong khoảng thời gian đa thức biết được hệ bất đẳng thức tuyến tính đã cho có nghiệm hay không Dùng lập luận như đã nêu trong Bổ đề 2.1 và áp dụng thuật toán này nhiều lần ta có một thuật toán tìm nghiệm của một hệ đẳng thức tuyến tính tương thích (đúng hơn là tìm một hệ phương trình độc lập tuyến tính mà mỗi nghiệm của... lời giải chấp nhận được thì tồn tại cặp lời giải tối ưu x∗ , y ∗ nghiệm đúng y ∗ + (Ax∗ − b) > 0và x∗ + c − AT y ∗ > 0 1.2 Phương pháp đơn hình và đơn hình đối ngẫu Bằng cách thực hiện một số phép biến đổi đơn giản, ta có thể đưa bài toán qui hoạch tuyến tính từ dạng này sang dạng khác Vì thế khi giải ta chỉ cần chọn một dạng thuận tiện để xét mà không làm giảm tính tổng quát của phương pháp Xét qui hoạch. .. lời giải tối ưu của bài toán gốc và y ∗ là lời giải tối ưu của bài toán đối ngẫu Định lý 1.4 (Đối ngẫu mạnh) Nếu một qui hoạch có lời giải tối ưu thì qui hoạch đối ngẫu của nó cũng có lời giải tối ưu và các trị tối ưu bằng nhau Các kết quả trên cho thấy quan hệ sau giữa hai qui hoạch gốc và đối ngẫu Định lý 1.5 (Định lý đối ngẫu cơ bản) Đối với mỗi cặp qui hoạch tuyến tính đối ngẫu nhau chỉ có một trong. .. qui hoạch tuyến tính cho dưới dạng chuẩn như sau: max cT x : Ax ≤ b, x ≥ 0 (LP ) trong đó A là ma trận m × n, c, x ∈ Rn , b ∈ Rm (vectơ cột) Như đã biết, bài toán (LP) là giải được khi và chỉ khi hệ bất đẳng thức tuyến tính sau đây có nghiệm (x ∈ Rn , y ∈ Rm ) T T −c x + b y ≤ 0, Ax ≤ b, −x ≤ 0, −AT y ≤ −c, −y ≤ 0 Áp dụng thuật toán Khachian giải hệ này ta thu được một phương pháp. .. 1979, cho phép giải qui hoạch tuyến tính trong thời gian đa thức Nội dung của chương chủ yếu tham khảo từ các tài liệu [2], [4] Ý tưởng chính của phương pháp ellipsoid bắt nguồn từ các 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ước Khachian thực hiện Về thực chất, ý tưởng là đặt miền ta quan tâm (chứa lời giải tối ưu ) vào trong các ellipsoid . trở lại tới các phương pháp điểm trong giải qui hoạch tuyến tính. Tiếp đó, năm 1984 [3] Karmarkar đã đề xuất một phương pháp điểm trong mới giải qui hoạch tuyến tính. Phương pháp này có độ phức. pháp điểm trong , tiêu biểu nhất là phương pháp chắn gốc, phương pháp bám đường gốc-đối ngẫu tạo ra lời giải cho cả hai bài toán gốc và đối ngẫu của qui hoạch tuyến tính, phương pháp hàm thế , Trong. giải qui hoạch tuyến tính đã trở nên hoàn toàn tinh xảo và có thể nói rằng đến nay các phương pháp điểm trong đã thực sự chiếm ưu thế. Cũng đã có nhiều mở rộng của phương pháp điểm trong để giải