Bài giảng Quy hoạch tuyến tính - Chương 1: Bài toán quy hoạch tuyến tính - Nguyễn Ngọc Chương

pdf 21 trang ngocly 540
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Quy hoạch tuyến tính - Chương 1: Bài toán quy hoạch tuyến tính - Nguyễn Ngọc Chương", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfbai_giang_quy_hoach_tuyen_tinh_chuong_1_bai_toan_quy_hoach_t.pdf

Nội dung text: Bài giảng Quy hoạch tuyến tính - Chương 1: Bài toán quy hoạch tuyến tính - Nguyễn Ngọc Chương

  1. QUY HOẠCH TUYẾN TÍNH 02/09/2012 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Số tín chỉ: 2 (30 tiết). Điều kiện tiên quyết: Đã học xong chương trình toán C2. MÔN QUY HOẠCH TUYẾN TÍNH Mục đích của học phần: Trang bị cho sinh viên các kiến thức về một số mô hình tối ưu trong kinh tế. Giảng viên : Ths. NGUYỄN NGỌC CHƯƠNG  Về kiến thức: . Hiểu biết các khái niệm về bài toán quy hoạch tuyến tính, bài toán đối ngẫu, bài toán vận tải. . Nắm vững các phương pháp giải toán: phương pháp đơn hình, đơn hình đối ngẫu, phương pháp thế vị. 1 2 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Về kỹ năng: Tài liệu tham khảo: . Biết vận dụng các phương pháp vào giải một [1] GS. Đặng Hấn, Quy hoạch tuyến tính, ĐHKT số bài toán cụ thể trong thực tế. TP.HCM. Nội dung của học phần: [2] GS. Phan Quốc Khánh, Quy hoạch tuyến tính, NXBGD 1998.  Chương 1: Bài toán quy hoạch tuyến tính. Tiêu chuẩn và hình thức đánh giá kết quả :  Chương 2: Bài toán đối ngẫu.  Dự lớp: Từ 80% số tiết trở lên.  Chương 3: Bài toán vận tải.  Tiểu luận: (tuần thứ 6) Giáo trình:  Thi giữa kỳ: Tự luận (tuần thứ 6) [1] TS Nguyễn Phú Vinh, Giáo trình Quy hoạch  Thi kết thúc học phần: Tự luận tuyến tính, Trường ĐHCN TP.HCM. Thang điểm: Theo học chế tín chỉ. 3 4 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Bài toán lập kế hoạch sản xuất Chương1: BÀI TOÁN QUY HOẠCH TUYẾN TÍNH Một công ty sản xuất n loại sản phẩm Sj (j=1,2, ,n) sử dụng m loại nguyên liệu Ni (i = 1,2, ,m). Biết: + Lượng nguyên liệu N cần thiết dùng để sản xuất MỘT SỐ BÀI TOÁN DẪN ĐẾN i một đơn vị sản phẩm S là: a BÀI TOÁN QUY HOẠCH TUYẾN TÍNH j ij + Trữ lượng nguyên liệu loại Ni là: bi + Tiền lãi một đơn vị sản phẩm Sj là: cj Hãy xây dựng kế hoạch sản xuất cho công ty để có lợi nhuận nhiều nhất. 5 6 Chuongnn-hui.blogspot.com 1
  2. QUY HOẠCH TUYẾN TÍNH 02/09/2012 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Minh hoạ dữ liệu bài toán: Giải: Sản phẩm Số nguyên Gọi xj là lượng Sj (j=1,2, ,n) cần sản xuất. xj ≥ 0. S S S Nguyên liệu 1 2 n liệu tối đa Lượng nguyên liệu N1 dùng cho sản xuất: a11x1 + a12x2 + + a1nxn ≤ b1 N1 a11 a12 a1n b1 Lượng nguyên liệu N2 dùng cho sản xuất: N2 a21 a22 a2n b2 a21x1 + a22x2 + + a2nxn ≤ b2 Lượng nguyên liệu Nm dùng cho sản xuất: Nm am1 am2 amn bm am1x1 + am2x2 + + amnxn ≤ bm Tiền lãi/đơn vị Số tiền lãi mà công ty thu được là: c1 c2 cn sản phẩm f = f(x1, x2, , xn) = c1x1 + c2x2 + + cnxn 7 8 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Mô hình toán học của bài toán Bài toán vốn đầu tư Tìm x = (x1, x2, , xn) sao cho Một xí nghiệp xử lý giấy có n phân xưởng Sj f(x) = c1x1 + c2x2 + + cnxn ⟶ max (j=1,2, ,n) xử lý m loại giấy Ni (i=1,2, ,m). với các ràng buộc Biết: a11x1 + a12x2 + + a1nxn ≤ b1 . + Lượng giấy loại Ni mà cuối năm phân xưởng Sj có a21x1 + a22x2 + + a2nxn ≤ b2 thể xử lý (nếu cùng đầu tư một đơn vị vốn vào các phân xưởng) là: aij am1x1 + am2x2 + + amnxn ≤ bm + Lượng giấy Ni tối thiểu cần phải xử lý theo hợp x1, x2, , xn ≥ 0 . đồng lao động là: bi Đây là một bài toán quy hoạch tuyến tính. Lập kế hoạch đầu tư để xí nghiệp hoàn thành hợp đồng lao động với tổng vốn đầu tư là nhỏ nhất. 9 10 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Minh hoạ dữ liệu bài toán: Giải: Phân xưởng Lượng rác xử Gọi xj là lượng vốn đầu tư cho Sj (j=1,2, ,n). xj ≥ 0. S S S Loại rác thải 1 2 n lý tối thiểu Lượng giấy N1 xử lý được: a11x1 + a12x2 + + a1nxn ≥ b1 N1 a11 a12 a1n b1 Lượng giấy N2 xử lý được: N2 a21 a22 a2n b2 a21x1 + a22x2 + + a2nxn ≥ b2 Lượng giấy Nm xử lý được: Nm am1 am2 amn bm am1x1 + am2x2 + + amnxn ≥ bm Số vốn mà xí nghiệp cần đầu tư là: f = f(x1, x2, , xn) = x1 + x2 + + xn 11 12 Chuongnn-hui.blogspot.com 2
  3. QUY HOẠCH TUYẾN TÍNH 02/09/2012 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Mô hình toán học của bài toán Bài toán vận tải Tìm x = (x1, x2, , xn) sao cho Xí nghiệp cần vận chuyển hàng hoá từ m điểm phát f(x) = x1 + x2 + + xn ⟶ min Pi (i=1,2, ,m) đến n điểm thu Tj (j=1,2, ,n). Biết với các ràng buộc + Lượng hàng có ở điểm phát Pi là: ai a11x1 + a12x2 + + a1nxn ≥ b1 . + Lượng hàng cần ở mỗi điểm thu Tj là: bj a21x1 + a22x2 + + a2nxn ≥ b2 . + Phí chuyển một đơn vị hàng từ Pi đến Tj là: cij Giả sử tổng lượng hàng có ở các điểm phát bằng am1x1 + am2x2 + + amnxn ≥ bm tổng lượng hàng cần ở các điểm thu. x1, x2, , xn ≥ 0 . Hãy lập kế hoạch vận chuyển hàng hoá với tổng chi Đây là một bài toán quy hoạch tuyến tính. phí là nhỏ nhất và đảm bảo yêu cầu thu phát. 13 14 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Minh hoạ dữ liệu bài toán: Giải: Điểm thu Gọi xij là lượng hàng cần chuyển từ Pi (i=1,2, ,m) T1:b1 T2:b2 Tn:bn Điểm phát đến Tj (i=1,2, ,m). xij ≥ 0. Lượng hàng chuyển đi từ P là: c c c i P :a 11 12 1n x + x + + x = a 1 1 i1 i2 in i c21 c22 c2n P :a Lượng hàng chuyển đến Tj là: 2 2 x1j + x2j + + xmj = bj cm1 cm2 cmn Tổng chi phí vận chuyển là: Pm:am f = f(x11, x12, , xmn) = c11x11 + c12x12 + + cmnxmn 15 16 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Mô hình toán học của bài toán Bài tập: Tìm x = (x11, x12, , xmn) sao cho Lập mô hình toán học của các bài toán sau: f(x) = c11x11 + c12x12 + + cmnxmn ⟶ min 1. Một xí nghiệp sản xuất ba loại sản phẩm A, B và với các ràng buộc C chế tạo từ ba loại nguyên liệu I, II và III . Lượng nguyên liệu I, II và III mà xí nghiệp có lần lượt là x11 + x12 + + x1n = a1 20, 40, 30. Lượng nguyên liệu I, II, III cần cho một . x + x + + x = a đơn vị sản phẩm loại A lần lượt là 3, 3, 2, loại B lần m1 m2 mn m lượt là 3, 2, 1, loại C lần lượt là 2, 1, 1 đơn vị. x + x + + x = b 11 21 m1 1 Hãy lập kế hoạch sản xuất để xí nghiệp thu tiền lãi . nhiều nhất, biết tiền lãi một đơn vị sản phẩm loại A x1n + x2n + + xmn = bn lãi 2 triệu đồng, loại B lãi 4 triệu đồng và loại C lãi x11, x12, , xmn ≥ 0 . 3 triệu đồng. 17 Chuongnn-hui.blogspot.com 3
  4. QUY HOẠCH TUYẾN TÍNH 02/09/2012 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH 2. Một Xí nghiệp chăn nuôi cần mua thức ăn tổng 3. Một Xí nghiệp xử lý giấy có ba phân xưởng I, II, hợp T1, T2, T3 cho gia súc với tỷ lệ chất dinh III cùng xử lý ba loại giấy A, B, C. Nếu đầu tư 10 dưỡng là: 1 kg T1 chứa 3 đơn vị D1, 3 đơn vị D2 và triệu đồng vào mỗi phân xưởng thì cuối năm phân 2 đơn vị D3; 1 kg T2 chứa 3 đơn vị D1, 2 đơn vị D2 xưởng I xử lý được 3 tạ giấy A, 3 tạ giấy B, 2 tạ giấy và 1 đơn vị D3; 1 kg T3 chứa 2 đơn vị D1, 1 đơn vị C, phân xưởng II xử lý được 3 tạ giấy A, 2 tạ giấy B, D2 và 1 đơn vị D3. Mỗi bữa ăn, gia súc cần tối thiểu 1 tạ giấy C, phân xưởng III xử lý được 2 tạ giấy A, 1 20 đơn vị D1, 40 đơn vị D2 và 30 đơn vị D3. Biết tạ giấy B, 1 tạ giấy C. rằng 1 kg T1 có giá là 2 ngàn đồng, 1 kg T2 có giá là Theo yêu cầu Xí nghiệp phải xử lý ít nhất 2 tấn giấy 4 ngàn đồng, 1 kg T3 có giá là 3 ngàn đồng. loại A, 4 tấn giấy loại B, 3 tấn giấy loại C. Hỏi cần Hỏi Xí nghiệp phải mua bao nhiêu kg T1, T2, T3 đầu tư vào mỗi phân xưởng bao nhiêu tiền để xí cho một bữa ăn để bảo đảm tốt về chất dinh dưỡng nghiệp hoàn thành công việc với giá tiền đầu tư là và tổng số tiền mua là nhỏ nhất? nhỏ nhất. Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH 4. Một xí nghiệp chế biến đồ gỗ dùng 3000 đơn vị 5. Một xí nghiệp có thể sử dụng tối đa 510 giờ máy gỗ nguyên liệu nhóm I, 5000 đơn vị gỗ nguyên liệu cán, 360 giờ máy tiện và 150 giờ máy mài để chế nhóm II và 2000 đơn vị gỗ nguyên liệu nhóm III để tạo 3 sản phẩm A, B và C. Để chế tạo một sản phẩm sản xuất tủ trang trí, bàn ghế và giường cao cấp. A cần 9 giờ máy cán, 5 giờ máy tiện và 3 giờ máy Một bộ tủ trang trí bán giá 500000đ dùng 30 đơn vị nhóm I, 10 đơn vị nhóm II và 10 đơn vị nhóm III. mài; một sản phẩm B cần 3 giờ máy cán, 4 giờ máy Một bộ bàn ghế bán giá 800000đ dùng 40 đơn vị tiện; một sản phẩm C cần 5 giờ máy cán, 3 giờ máy nhóm I, 20 đơn vị nhóm II và 50 đơn vị nhóm III. tiện và 2 giờ máy mài. Mỗi sản phẩm A trị giá 48 Một bộ giường bán giá 400000đ dùng 10 đơn vị ngàn đồng, mỗi sản phẩm B trị giá 16 ngàn đồng và nhóm I, 50 đơn vị nhóm II và 80 đơn vị nhóm III. mỗi sản phẩm C trị giá 27 ngàn đồng. Hãy cho biết Hãy xác định số lượng các sản phẩm cần sản xuất xí nghiệp cần chế tạo mỗi loại bao nhiêu sản phẩm sao cho xí nghiệp đạt lợi nhuận nhiều nhất? để có tổng giá trị sản phẩm lớn nhất. Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH 6. Một người nông dân muốn sản xuất lúa gạo và 7. Một xưởng làm cửa sắt có những thanh thép dài lúa mì trên 50 ha đất của ông ta với nguồn nước 12 m, cần cắt thành 8 đoạn dài 4m, 5 đoạn dài 5m dự trữ là 90 ngàn m3 nước và nguồn nhân lực gổm và 3 đoạn dài 7m. Có 5 mẫu cắt sau. Mẫu 1: 3 đoạn 250 công. Biết rằng để sản xuất 1 tấn lúa gạo cần dài 4m, không thừa. Mẫu 2: 1 đoạn 4m, 1 đoạn 5m, sử dụng 3 ha đất, 5 ngàn m3 nước và 15 công với thừa 3m. Mẫu 3: 1 đoạn 4m, 1 đoạn 7m, thừa 1m. lợi nhuận là 18 USD, để sản xuất một tấn lúa mì Mẫu 4: 2 đoạn 5m, thừa 2m. Mẫu 5: 1 đoạn 5m, 1 cần sử dụng 3 ha đất, 4 ngàn m3 nước và 12 công đoạn 7m, không thừa. với lợi nhuận là 21 USD. Hỏi cần dùng những mẫu cắt nào để tiết kiệm nhất. Hỏi người nông dân phải sản xuất bao nhiêu tấn lúa mỗi loại để đạt lợi nhuận cao nhất. Chuongnn-hui.blogspot.com 4
  5. QUY HOẠCH TUYẾN TÍNH 02/09/2012 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH 8. Một xưởng sản xuất dự định mua hai loại máy để in hình vẽ trên vải. Máy A có thể in 100m/phút và chiếm 50 mét vuông diện tích sàn, còn máy B có thể in 200m/phút và chiếm 140 mét vuông diện tích sàn. Xưởng cần in ít nhất 600m/phút và có BÀI TOÁN QUY HOẠCH TUYẾN TÍNH diện tích sàn để đặt máy in tối đa là 350 mét vuông. Mỗi máy A có giá là 22 triệu đồng và mỗi VÀ Ý NGHĨA HÌNH HỌC máy B có giá 42 là triệu đồng. Hỏi cần mua bao nhiêu máy in mỗi loại sao cho tốn ít chi phí nhất. 26 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Bài toán quy hoạch tuyến tính tổng quát Ví dụ: Tìm x = (x1, x2, , xn) sao cho + f(x) = x1 – 2x3 – x4 – 2x6 ⟶ max f(x) = c1x1 + c2x2 + + cnxn ⟶ max(min) (1) x1 + 2x2 – x4 + x5 ≤ 8 với các ràng buộc x1 – 3x3 – x4 + 3x6 ≥ 2 2x + x + x – x = 5 ai1x1 + ai2x2 + + ainxn ≤ bi, i ∊ I1 (2) 1 2 3 4 – x + x + 2x – 3x ≥ 6 ai1x1 + ai2x2 + + ainxn ≥ bi, i ∊ I2 (3) 1 3 4 5 2x2 – 2x3 – x4 – 2x6 ≤ 11 ai1x1 + ai2x2 + + ainxn = bi, i ∊ I3 (4) x1, x4 ≥ 0 xj ≥ 0, j ∊ J1 (5) Với I 1 ∪ I 2 ∪ I 3 ={1,2, ,m}, . x2, x3, x6 ≤ 0 xj ≤ 0, j ∊ J2 (6) I 1 ∩ I 2 ∩ I 3 = ∅ . x ∊ ℝ và J ∪J ∪J ={1,2, ,n}, 5 xj ∊ ℝ, j ∊ J3 (7) 1 2 3 . J1∩J2∩J3=∅ Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Một số khái niệm Dạng chính tắc của bài toán quy hoạch tuyến tính Hàm mục tiêu: hàm f(x) = c1x1 + c2x2 + + cnxn Tìm x = (x1, x2, , xn) sao cho f(x) = c x + c x + + c x ⟶ max(min) Phương án: vectơ x = (x1, x2, , xn) thoả mãn các 1 1 2 2 n n điều kiện ràng buộc từ (2) đến (7). ai1x1 + ai2x2 + + ainxn = bi, i = 1, 2, , m Phương án tối ưu: phương án làm cho hàm mục xj ≥ 0, j = 1, 2, , n . tiêu đạt max hay min nghĩa là thoả mãn (1). hay Tập phương án tối ưu: tập hợp tất cả các phương f(x) = ∑cjxj ⟶ max(min) án của bài toán. ∑aijxj = bi, i = 1, 2, , m Giải bài toán quy hoạch tuyến tính: là tìm phương xj ≥ 0, j = 1, 2, , n . Lưu ý: Mọi bài toán quy hoạch tuyến tính đều có án tối ưu cho bài toán. thể biến đổi đưa về dạng chính tắc. Chuongnn-hui.blogspot.com 5
  6. QUY HOẠCH TUYẾN TÍNH 02/09/2012 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Để biến đổi bài toán về dạng chính tắc tìm min ta Ví dụ: Biến đổi về dạng chính tắc thực hiện như sau: + f(x) = x1 – 3x2 + 2x3 – x4 ⟶ max + Biến hàm mục tiêu f ⟶ max thành g ⟶ min, với 2x1 + x2 + x3 – x4 ≤ 8 g = f. x1 – x3 + x4 = 5 x – 2x – x + 3x ≥ 7 + Biến ràng buộc ∑aijxj ≤ bi thành ∑aijxj + xn+i = bi 1 2 3 4 x , x ≥ 0 bằng cách bổ sung thêm biến xn+i ≥ 0. 1 3 x ≤ 0 + Biến ràng buộc ∑aijxj ≥ bi thành ∑aijxj – xn+i = bi 2 g(x) = – x1 – 2x3 – 3x7 + x8 – x9 ⟶ min x ∊ ℝ bằng cách bổ sung thêm xn+i ≥ 0. 4 2x1 + x3 + x5 – x7 – x8 + x9 = 8 + Đổi biến xj ≤ 0 thành biến x′j ≥ 0 với x′j = xj x1 – x3 + x8 – x9 = 5 + Đổi biến xj ℝ thành hiệu x′j x″j với x′j , x″j ≥ 0 x1 – x3– x6 + 2x7 + 3x8 – 3x9= 7 và x′j x″j = xj xj ≥ 0, j=1,2, ,9 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH + f(x) = 2x1 – x2 + x3 – 3x4 ⟶ min Phương án cực biên x1 + 2x2 + 2x3 – x4 ≥ 6 Xét bài toán 2x1 – x2 – 2x3 + x4 = 9 f(x) = ∑cjxj ⟶ min 3x1 –x2 + x3 + 2x4 ≤ 12 ∑aijxj = bi, i = 1, 2, , m x2, x4 ≥ 0 x ≥ 0, j = 1, 2, , n . f(x) = – x – 3x – 2x + x – x ⟶ min j x1 ≤ 0 2 4 7 8 9 Vectơ liên kết với biến x là vectơ cột A = [a ] 2x – x – x – x + 2x – 2x = 6 j j ij m 1 x3 ∊ ℝ 2 4 5 7 8 9 có các thành phần là hệ số tương ứng của biến x . – x + x – 2x – 2x + 2x = 9 j 2 4 7 8 9 Phương án cực biên: phương án mà hệ vectơ liên –x + 2x + x – 3x + x – x = 12 2 4 6 7 8 9 kết với các biến x > 0 tạo thành một hệ vectơ độc x ≥ 0, j=1,2, ,9 j j lập tuyến tính. Lưu ý: Từ đây ta chỉ xét các bài toán dạng chính tắc tìm min. Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Biến cơ sở là biến xj > 0, vectơ Aj tương ứng với Ví dụ: biến cơ sở gọi là vectơ cơ sở, biến phi cơ sở là biến + Xét bài toán xj = 0. f(x) = 4x1 + x2 + x3 ⟶ min Phương án cực biên không suy biến là phương án x1 +2x2 x3 = 5 có đúng m biến cơ sở, nếu số biến cơ sở bé hơn m x1 x2 + 2x3 = 5 ta có phương án cực biên suy biến. xj ≥ 0, j=1,2,3 Số các phương án cực biên của một bài toán quy Vectơ nào sau là phương án cực biên không suy hoạch tuyến tính là hữu hạn. biến: x0 = (1, 4, 4), x1 = (5, 0, 0), x2 = (0, 5, 5)? ĐS: x2 = (0, 5, 5) Chuongnn-hui.blogspot.com 6
  7. QUY HOẠCH TUYẾN TÍNH 02/09/2012 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH + Xét bài toán Lưu ý: Cách thành lập một phương án cực biên của f(x) = x1 + 2x2 x3 ⟶ min bài toán quy hoạch tuyến tính dạng chính tắc: x1 + x2 + x3 = 4 + Xác định hệ vectơ liên kết với n biến. x1 x2 = 0 + Tìm các hệ con {Ai}, i = 1, 2, ,m gồm m véctơ xj ≥ 0, j=1,2,3 độc lập tuyến tính của hệ vectơ Số hệ con này hữu Vectơ nào sau là phương án cực biên không suy hạn. biến: x0 = (1, 1, 2), x1 = (2, 2, 0), x2 = (0, 0, 4)? + Biểu diễn vectơ b theo hệ con {Ai} ở trên, ta ĐS: x1 = (2, 2, 0) được các hệ số biểu diễn. Thành lập vectơ x có các thành phần là hệ số biểu diễn. + Loại đi những vectơ x có thành phần âm, các véctơ còn lại là các phương án cực biên. 38 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Ví dụ: Tìm các phương án cực biên của bài toán Lưu ý: + f(x) = 2x1 + x3 + 5x4 ⟶ min Do số thành phần dương của một phương án cực biên không suy biến là bằng m nên suy ra số thành x1 + x3 + x4 = 5 9 1 ĐS: (5, 1, 0, 0), ( , 0, 0, ), phần bằng 0 sẽ là n – m. x2 x3 + 2x4 = 1 2 2 x ≥ 0, j=1,2,3,4 (0, 6, 5, 0), (0, 0, 3, 2) Từ đó suy ra muốn tìm phương án cực biên ta có j thể cho n – m thành phần bằng 0 rồi tính giá trị của + f(x) = 2x1 x3 + 2x4 ⟶ min m thành phần còn lại bằng cách giải hệ m phương x1 + x2 + x3 + x4 = 10 trình m ẩn. 16 14 2x2 + x3 x4 = 6 ĐS: (0, 0, 8, 2), (0, , 0, ), 3 3 xj ≥ 0, j=1,2,3,4 (4, 0, 6, 0), (7, 3, 0, 0) 39 40 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Ví dụ: Tìm các phương án cực biên của bài toán Các tính chất chung của bài toán quy hoạch + f(x) = x1 + 6x3 5x4 ⟶ min tuyến tính x + 2x + 3x = 5 8 7 5 + Tập các phương án của bài toán quy hoạch tuyến 1 3 4 ĐS: (5, , 0, 0), (0, , , 0), 3x x + 2x = 8 3 2 2 tính là một tập lồi nghĩa là nếu x, y là hai phương 2 3 4 14 5 (0, , 0, ) án bất kỳ của bài toán thì mọi tổ hợp x + (1 )y, xj ≥ 0, j=1,2,3,4 9 3  ∊ ℝ: 0 ≤ ≤ 1 cũng là một phương án của bài + f(x) = x1 6x3 + x4 x5 ⟶ max toán. x1 + 2x4 + x5 = 8 + Tập các phương án tối ưu của bài toán quy x2 + x4 x5 = 4 ĐS: (8,4,6,0,0), (2,10,0,0,6), hoạch tuyến tính cũng là một tập lồi. x3 + x4 + x5 = 6 (0,0,2,4,0), (0,6,0,2,4) + Nếu bài toán quy hoạch tuyến tính dạng chính x ≥ 0, j=1,2, ,5 tắc có tập phương án khác rỗng thì nó có ít nhất j một phương án cực biên. 41 42 Chuongnn-hui.blogspot.com 7
  8. QUY HOẠCH TUYẾN TÍNH 02/09/2012 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH + Điều kiện cần và đủ để bài toán quy hoạch tuyến Ví dụ: Giải các bài toán quy hoạch tuyến tính tính dạng chính tắc có phương án tối ưu là nó có + f(x) = x1 + 6x3 5x4 ⟶ min tập phương án khác rỗng và hàm mục tiêu bị chặn. x + 2x + 3x = 5 14 5 1 3 4 ĐS: x* = (0, , 0, ), + Nếu bài toán quy hoạch tuyến tính dạng chính 3x x + 2x = 8 9 3 tắc có phương án tối ưu thì nó có ít nhất một 2 3 4 25 x ≥ 0, j=1,2,3,4 fmin = phương án cực biên là phương án tối ưu. j 3 + f(x) = x 6x + x x ⟶ max Lưu ý: Từ đây, ta có thể giải bài toán quy hoạch 1 3 4 5 tuyến tính dạng chính tắc nếu biết nó có phương x1 + 2x4 + x5 = 8 án tối ưu bằng cách tìm tất cả các phương án cực x2 + x4 x5 = 4 ĐS: x* = (0,6,0,2,4), biên của bài toán, phương án tối ưu là phương án x3 + x4 + x5 = 6 fmax = 2 mà giá trị hàm mục tiêu lớn nhất (hay nhỏ nhất). xj ≥ 0, j=1,2, ,5 43 44 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Giải bài toán quy hoạch tuyến tính hai + f(x) = x + 3y ⟶ max biến bằng phương pháp hình học x + 2y ≤ 6 Ví dụ: 2x + y ≤ 10 + f(x) = 2x +3y ⟶ min ‒x + y ≤ 4 3x + y ≥ 3 x ≥ 0, y ≥ 0 x 4y ≤ 6 ĐS: fmax = 9 tại A (0;3) x + 2y ≤ 6 x ≥ 0, y ≥ 0 ĐS: fmin = 2 tại C(1; 0) 45 46 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Cơ sở của phương pháp đơn hình Dựa vào phương án hiện có, ta tìm cách đánh giá phương án đó có là phương án tối ưu hay chưa, nếu phương án đang xét đã là phương án tối ưu thì PHƯƠNG PHÁP ĐƠN HÌNH mục đích của ta đã đạt được nếu chưa là phương án tối ưu thì ta thay thế bởi nó một phương án mới GIẢI BÀI TOÁN QUY HOẠCH TUYẾN TÍNH tốt hơn. Xét bài toán dạng chính tắc (P) f(x) = ∑cjxj ⟶ min ∑aijxj = bi, i = 1, 2, , m xj ≥ 0, j = 1, 2, , n 47 48 Chuongnn-hui.blogspot.com 8
  9. QUY HOẠCH TUYẾN TÍNH 02/09/2012 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH 0 0 0 0 Giả sử ta có phương án x = x1 , x2, , xm, 0, , 0 Định lý: ( Dấu hiệu tối ưu) với các biến cơ sở tương ứng x , x , , x và hệ 0 0 0 1 2 m Nếu x = x1 , x2, , xm, 0, , 0 là một phương án vectơ cơ sở liên kết là {A }, i = 1,2, ,m. i cực biên của (P) sao cho ∆j ≤ 0 với mọi j = 1,2, ,n 0 0 0 0 Giá trị mục tiêu f x = c1x1 + c2x2 + ⋯ + cmxm. thì x là phương án tối ưu. Đặt ∆j= c1x1j + c2x2j + ⋯ + cmxmj − cj Định lý: ( Dấu hiệu không có phương án tối ưu) j với x = (x1j, x2j, , xmj) là toạ độ của các vectơ Aj Nếu ngoài cơ sở liên kết của phương án cực biên j đối với hệ cơ sở {Ai}, gọi là ước lượng của biến xj. tồn tại j sao cho ∆j > 0 và x ≤ 0 nghĩa là xij≤ 0 với mọi i = 1,2, ,m thì (P) không có phương án tối ưu. Lưu ý: Nếu ma trận cột tạo bởi hệ vectơ cơ sở {Ai} là ma trận đơn vị thì xij = aij. Rõ hơn là hàm mục tiêu không bị chặn dưới trên tập phương án. 49 50 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Ví dụ: + Xét bài toán + Xét bài toán f(x) = 7x1 ‒ 26x2 + 9x3 ⟶ min f(x) = x1 + 6x2 + 9x3 ⟶ min x1 ‒ 2x2 = 5 x1 + 2x3 = 6 ‒x2 + x3 = 7 x2 + x3 = 8 xj ≥ 0, j = 1, 2, 3. xj ≥ 0, j = 1, 2, 3. Vectơ x = (5, 0, 7) có phải là phương án tối ưu hay Vectơ x = (6, 8, 0) có phải là phương án tối ưu hay không? không? ĐS: x không phải là phương án tối ưu. ĐS: x là phương án tối ưu. fmin = 54. 51 52 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Định lý: Thuật toán đơn hình Nếu ngoài cơ sở liên kết của phương án cực biên Xét bài toán tồn tại j sao cho ∆j > 0 và có ít nhất một xij > 0 với i f(x) = ∑cjxj ⟶ min nào đó thì ta luôn có thể tìm được một phương án ∑aijxj = bi, i = 1, 2, , m cực biên mới tốt hơn x, nghĩa là phương án này x ≥ 0, j = 1, 2, , n làm cho hàm mục tiêu nhỏ hơn phương án x. j bi ≥ 0, i=1,2, ,m và có sẵn ma trận đơn vị. + Tìm phương án cực biên ban đầu: Giả sử ma trận đơn vị tạo bởi các vectơ cột Ai, i = 1,2, ,m thì ta có phương án cực biên ban đầu 0 0 0 0 x = x1 , x2, , xm, 0, , 0 53 54 Chuongnn-hui.blogspot.com 9
  10. QUY HOẠCH TUYẾN TÍNH 02/09/2012 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH + Đánh giá phương án hiện có: lập bảng đơn hình + Xây dựng phương án mới – Phương pháp phần như hình bên dưới và căn cứ vào đó để đánh giá tử trục quay: Biến Hệ Phương x x x Xác định cột quay s là cột mà s > 0 lớn nhất, biến 1 2 n  cơ sở tương ứng xs là biến cơ sở đưa vào. cơ sở số án c1 c2 cn 0 x c x0 x x x xi 1 1 1 11 12 1n Dòng quay r là dòng mà r nhỏ nhất với θi = , 0 xis x2 c2 x2 x21 x22 x2n (xis > 0) biến cơ sở tương ứng xr là biến cơ sở đưa ra. x c x0 x x x m m m m1 m2 mn Phần tử quay xrs là phần tử giao giữa dòng quay r 0 f(x ) 1 2 n và cột quay s. 55 56 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Xác định các thành phần phương án x1 mới: Ví dụ: Giải các bài toán 0 + f(x) = x ‒ x ‒ 2x + 2x ‒ 3x ⟶ min xr PA s ↓ 1 2 4 5 6 nếu i = r i 1 xrs 0 x1 + x4 + x5 ‒ x6 = 2 x = x xis i x0x − x0x i i rs r is r x + x + x = 12 nếu i ≠ r 0 2 4 6 xrs xr xrs x3 + 2x4 + 4x5 + 3x6 = 9 Xác định các hệ số biểu diễn x ij mới xj ≥ 0, j = 1, 2, ,6. ĐS: Phương án tối ưu x* = (0, 8, 0, 3, 0, 1). Giá trị xrj j ↓ s ↓ nếu i = r i tối ưu f = ‒17. ′ xrs x x min xij = xijxrs−xrjxis ij is nếu i ≠ r r x rs xrj xrs 57 58 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH + f(x) = ‒2x1 ‒ 4x2 + x3 ‒ x4 ⟶ min Lưu ý: + Nếu bài toán có b ≥ 0, i=1,2, ,m và chưa có sẵn x1 + 3x2 + x5 = 4 i ma trận đơn vị ta có thể thực hiện biến đổi ma trận 2x1 + x2 ‒ x3 + x6 = 3 hệ số mở rộng của hệ điều kiện ràng buộc để có ma x2 + 4x3 + x4 = 3 trận đơn vị. xj ≥ 0, j = 1, 2, ,6. Ví dụ: Giải bài toán ĐS: Phương án tối ưu x* = (1, 1, 0, 2, 0, 0). Giá trị + f(x) = ‒ 3x1 + x2 + 3x3 ‒ x4 ⟶ min tối ưu fmin = ‒8. x1 + 2x2 ‒ x3 + x4 = 2 2x1‒ 6x2 + 3x3 + 3x4 = 9 x1 ‒ x2 + x3 ‒ x4 = 6 xj ≥ 0, j = 1,2,3,4. 59 60 Chuongnn-hui.blogspot.com 10
  11. QUY HOẠCH TUYẾN TÍNH 02/09/2012 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH ĐS: Bài toán trở thành + f(x) = 3x1 ‒ 4x2 ‒ 5x3 + 6x4 ⟶ min f(x) = ‒ 3x1 + x2 + 3x3 ‒ x4 ⟶ min x1 + x2 + x3 + 13x4 = 14 6 x + x = 3 2x1+ x2 + 14x4 = 11 1 5 4 12 3x2 + x3 + 14x4 = 16 x2 ‒ x4 = 2 5 xj ≥ 0, j = 1,2,3,4. 23 x ‒ x = 5 3 5 4 xj ≥ 0, j = 1, 2, 3, 4. 61 62 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH ĐS: Bài toán trở thành Thuật toán đơn hình mở rộng Xét bài toán f(x) = 3x1 ‒ 4x2 ‒ 5x3 + 6x4 ⟶ min 27 f(x) = ∑c x ⟶ min x + x = 4 j j 1 5 4 ∑aijxj = bi, i = 1, 2, , m 16 x + x = 3 xj ≥ 0, j = 1, 2, , n 2 5 4 22 với bi ≥ 0, i=1,2, ,m và chưa có sẵn ma trận đơn vị x + x = 7 3 5 4 (giả sử bài toán còn thiếu m vectơ đơn vị). xj ≥ 0, j = 1, 2, 3, 4. Ta bổ sung thêm m biến xn+i, i=1,2, ,m để có được ma trận đơn vị và đưa về xét hàm mục tiêu g = ∑cjxj + Mxn+1 + Mxn+2 + + Mxn+m với M là một số rất lớn, lớn hơn bất cứ số nào khác. 63 64 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Bài toán trở thành bài toán M sau đây Ta dùng thuật toán đơn hình để giải bài toán M với g(x) = ∑cjxj + Mxn+1 + Mxn+2 + + Mxn+m ⟶ min một vài lưu ý: ∑aijxj + xn+i = bi, i = 1, 2, , m + Nếu đã có k vectơ đơn vị thì ta bổ sung vào m – k xj ≥ 0, j = 1, 2, , n+m biến để có ma trận đơn vị cấp m. Lưu ý: + Hàm mục tiêu g, ước lượng của các biến x có Nếu bài toán M có phương án tối ưu (x, t) với t > 0 j j thể viết dưới dạng g = AM + B, j = jM+ j. t = (xn+1, , xn+m) thì bài toán chính không có phương án. Nếu bài toán M có phương án tối ưu + Để so sánh các ước lượng ta có (x, 0) thì x là phương án tối ưu của bài toán chính αj > 0 αj > αk ∆j ≥ 0 ⇔ , ∆j ≥ ∆k⇔ và nếu bài toán M không có phương án tối ưu thì αj = 0,βj ≥ 0 αj = αk,βj ≥ βk bài toán chính cũng không có phương án tối ưu. và các hệ số A, B, ,  được trình bày trên 2 dòng. 65 66 Chuongnn-hui.blogspot.com 11
  12. QUY HOẠCH TUYẾN TÍNH 02/09/2012 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Ví dụ: Giải bài toán + f(x) = 3x1 ‒ 4x2 ‒ 5x3 + 6x4 ⟶ min + f(x) = ‒ 3x1 + x2 + 3x3 ‒ x4 ⟶ min x1 + x2 + x3 + 13x4 = 14 x1 + 2x2 ‒ x3 + x4 = 2 2x1+ x2 + 14x4 = 11 2x1‒ 6x2 + 3x3 + 3x4 = 9 3x2 + x3 + 14x4 = 16 x1 ‒ x2 + x3 ‒ x4 = 6 xj ≥ 0, j = 1,2,3,4. xj ≥ 0, j = 1,2,3,4. ĐS: Phương án tối ưu x* = (4, 3, 7, 0). Giá trị tối ĐS: Phương án tối ưu x* = (3, 2, 5, 0). Giá trị tối ưu fmin = ‒35. ưu fmin = 8. 67 68 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Lưu ý: Với bài toán dạng chính tắc tìm max ta thực 2 17 39 ĐS: Phương án tối ưu x* = ( , , , 0, 0). Giá trị hiện tương tự, chỉ khác là nếu ∆ ≥ 0, ∀j = 1,2, ,n 3 6 2 j 88 thì phương án đang xét là tối ưu, nếu có ∆j < 0 mà tối ưu fmax = . xj ≤ 0 thì bài toán không có lời giải, cột quay s là 3 + f(x) = 3x1 ‒ x2 ‒ 2x3 ⟶ max cột tương ứng với ∆s < 0 nhỏ nhất. Ví dụ: Giải bài toán ‒x1 + 3x2 + x3 + x4 = 7 + f(x) = 2x1 + 3x2 + x3 ⟶ max 3x1‒ 4x2 + 8x3 + x5 = 10 x1 ‒ 5x2 + x3 = 6 4x1‒ 2x2 + x6 = 12 2x1+ 2x2 + x4 = 7 xj ≥ 0, j = 1,2, ,6. ‒x1 + 2x2 + x5 = 5 ĐS: Phương án tối ưu x* = (5, 4, 0, 0, 11, 0). Giá trị xj ≥ 0, j = 1,2,3,4,5. tối ưu fmax = 11. 69 70 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Giải bài toán quy hoạch tuyến tính với EXCEL trong đó ở dòng phương án, ta gán các giá trị ban Cài thêm công cụ Add-ins Solver đầu là 1 (hay 0) cho các biến xj ≥ 0. + Options ⟶ Add-Ins ⟶ Excel Add-Ins. + Trong hộp thoại Add-Ins ta click chọn Solver Add-In. Tổ chức dữ liệu trên bảng tính Tiến hành nhập liệu trên bảng tính Excel như sau 71 72 Chuongnn-hui.blogspot.com 12
  13. QUY HOẠCH TUYẾN TÍNH 02/09/2012 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Tiến hành giải bài toán Ta có thể sửa đổi, thêm bớt các ràng buộc. Muốn + Data ⟶ Solver thêm vào ràng buộc ta click chọn nút Add. + Trong hộp thoại Solver Parameters: Set Objective: click chọn ô chứa giá trị mục tiêu B8. Max/Min/Equal To: chọn loại bài toán để giải. trong hộp thoại Add Constraint: By Changing Cells: click chọn địa chỉ tuyệt đối của Cell Reference: click chọn địa chỉ chứa công thức. các ô ghi các giá trị ban đầu của biến. Ô dấu: lựa chọn dấu của các ràng buộc tương ứng. Subject to the Constraints: nhập các ràng buộc. Constraint: Ô chứa giá trị vế phải của các ràng buộc tương ứng (ta cũng có thể nhập trực tiếp giá trị vế phải của ràng buộc tương ứng). 73 74 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Select a solving method: click chọn phương pháp giải, ở đây là Simplex LP phương pháp đơn hình. Trong hộp thoại Solver Result: Keep Solver Solution: Lấy kết quả, in ra bảng tính. Restore Original Values: Huỷ kết quả vừa tìm được và trả các biến về tình trạng ban đầu. Save Scenario: Lưu kết quả vừa tìm được thành một tình huống để có thể xem lại sau này. Lưu ý: Có 3 loại báo cáo là Answer, Sensitivity và Limits. 75 76 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Định nghĩa bài toán đối ngẫu Xét bài toán quy hoạch tuyến tính gốc (P) f(x) = c x + c x + + c x ⟶ max(min) Chương 2: BÀI TOÁN ĐỐI NGẪU 1 1 2 2 n n ai1x1 + ai2x2 + + ainxn ≤ bi, i ∊ I1 (1) a x + a x + + a x ≥ b , i ∊ I (2) BÀI TOÁN ĐỐI NGẪU VÀ MỘT SỐ TÍNH CHẤT i1 1 i2 2 in n i 2 ai1x1 + ai2x2 + + ainxn = bi, i ∊ I3 (3) xj ≥ 0, j ∊ J1 (4) xj ≤ 0, j ∊ J2 (5) xj ∊ ℝ, j ∊ J3 (6) 77 78 Chuongnn-hui.blogspot.com 13
  14. QUY HOẠCH TUYẾN TÍNH 02/09/2012 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Bài toán đối ngẫu của bài toán (P) là bài toán (Q): Ví dụ: Viết bài toán đối ngẫu (Q) của bài toán (P): g(y) = b1y1 + b2y2 + + bmym ⟶ min(max) + f(x) = 2x1 – x2 + 3x3 + x4 – 2x5 ⟶ min a1jy1 + a2jy2 + + amjym ≤ cj, j ∊ J1 (4′) x1 + x2 + 2x3 – x4 + x5 ≤ 12 a1jy1 + a2jy2 + + amjym ≥ cj, j ∊ J2 (5′) 2x1 – x3 + 3x4 + 2x5 ≥ –5 a1jy1 + a2jy2 + + amjym = cj, j ∊ J3 (6′) – x1 + 3x2 – 2x4 – x5 = 6 yi ≤ 0, i ∊ I1 (1′) 3x1 + 2x2 – x3 + x4 ≥ 3 yi ≥ 0, i ∊ I2 (2′) x1, x3 ≥ 0 yi ∊ ℝ, i ∊ I3 (3′) x5 ≤ 0 Các cặp ràng buộc (1)–(1 ), (2)–(2 ), , (6)–(6 ) x2, x4 ∊ ℝ được gọi là các ràng buộc đối ngẫu với nhau. 79 80 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH ĐS: Bài toán (Q): Cách thành lập bài toán đối ngẫu g(y) = 12y1 – 5y2 + 6y3 + 3y4 ⟶ max Bài toán gốc Chỉ số Bài toán đối ngẫu y1 + 2y2 – y3 + 3y4 ≤ 2 f(x) = cjxj ⟶ min g(y) = biyi ⟶ max y1 + 3y3 + 2y4 = –1 xj ≥0 j ∊ J1 aijyi ≤ cj 2y1 – y2 – y4 ≤ 3 xj ≤ 0 j ∊ J2 aijyi ≥ cj –y1 + 3y2 – 2y3 + y4 = 1 y1 + 2y2 – y3 ≥ –2 xj ∊ ℝ j ∊ J3 aijyi = cj y1 ≤ 0 aijxj ≤ bi i ∊ I1 yi ≤ 0 y2, y4 ≥ 0 aijxj ≥ bi i ∊ I2 yi ≥ 0 y3 ∊ ℝ aijxj = bi i ∊ I3 yi ∊ ℝ 81 82 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Ví dụ: Viết bài toán đối ngẫu (Q) của bài toán (P): ĐS: Bài toán (Q): g(y) = 4y + 7y + 6y + 3y ⟶ min + f(x) = x1 + x2 + x4 – 3x5 ⟶ max 1 2 3 4 y1 – y2 + 2y3 + y4 = 1 x1 + 2x2– 2x4 + x5 = 4 2y1 – 3y3 – 2y4 ≤ 1 – x1 + 3x3 + x4 – 2x5 ≤ 7 3y2 – y3 + 4y4 ≥ 0 2x1 – 3x2 – x3 – x4 + 3x5 = 6 –2y1 + y2 – y3 – y4 ≥ 1 x1 – 2x2 + 4x3 – x4 – x5≥ 3 y1 – 2y2 + 3y3 – y4 ≤ –3 x2, x5 ≥ 0 y2 ≤ 0 x3, x4 ≤ 0 y4 ≥ 0 x ∊ ℝ 1 y1,y3 ∊ ℝ 83 84 Chuongnn-hui.blogspot.com 14
  15. QUY HOẠCH TUYẾN TÍNH 02/09/2012 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Mối liên hệ giữa bài toán gốc và bài toán đối ngẫu Định lý 2 (Đối ngẫu mạnh) Xét bài toán quy hoạch tuyến tính gốc dạng chính Nếu một trong hai bài toán có phương án tối ưu thì tắc tìm min. bài toán đối ngẫu của nó cũng có phương án tối ưu Định lý 1 (Đối ngẫu yếu) và giá trị tối ưu của các hàm mục tiêu của chúng là bằng nhau. Cho x, y theo thứ tự là phương án của bài toán gốc và đối ngẫu ta có f(x) ≥ g(y). Định lý 3 (Định lý tồn tại) Lưu ý: Từ định lý nếu ta có phương án của bài toán Một cặp bài toán và bài toán đối ngẫu của nó chỉ có gốc và đối ngẫu theo thứ tự là x, y mà f(x) = g(y) thể xảy ra một trong 3 khả năng loại trừ sau: thì x, y lần lượt là phương án tối ưu của bài toán Cả hai bài toán đều không có phương án. gốc và bài toán đối ngẫu. 85 86 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Cả hai bài toán đều có phương án, khi đó cả hai n cùng có phương án tối ưu và giá trị tối ưu của hai bi − aijxj yi = 0, i = 1, m hàm mục tiêu là bằng nhau. j=1 Một bài toán có phương án còn bài toán kia m không có phương án, khi đó bài toán có phương án c − a y x = 0, j = 1, n sẽ không có phương án tối ưu và hàm mục tiêu j ij i j không bị chặn trong miền ràng buộc. i=1 Lưu ý: b – a x là độ lệch ở ràng buộc thứ i ở bài Định lý 4 (Độ lệch bù) i ij j toán gốc và c – a y là độ lệch ở ràng buộc thứ j ở Một cặp phương án x, y của bài toán gốc và đối j ij i bài toán đối ngẫu của nó. ngẫu là phương án tối ưu khi và chỉ khi chúng nghiệm đúng hệ thức sau: 87 88 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Giải bài toán đối ngẫu ĐS: Phương án tối ưu của bài toán đối ngẫu là 3 Áp dụng định lý độ lệch bù y* = (1, − ) và g = 6 = f 2 max min Ví dụ: + Cho bài toán gốc + Cho bài toán gốc f(x) = x1 + x2 + x3 + x4 + x5 ⟶ min f(x) = x1 2x2 + 2x3 ⟶ min 3x1 + x2 + x3 = 1 5x + x + x + x = 3 x1 + x2 + 4x4 = 6 1 2 3 4 2x1 + 5x2 + x3 + x5 = 8 2x2 + x3 + 5x4 = 8 xj ≥ 0, j=1,2,3,4,5 xj ≥ 0, j=1,2,3,4 có phương án tối ưu là x* = (0, 1, 0, 2, 3), fmin = 6. có phương án tối ưu là x* = (2, 4, 0, 0), fmin = 6. Tìm phương án tối ưu của bài toán đối ngẫu. Tìm phương án tối ưu của bài toán đối ngẫu. 89 90 Chuongnn-hui.blogspot.com 15
  16. QUY HOẠCH TUYẾN TÍNH 02/09/2012 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH ĐS: phương án tối ưu của bài toán đối ngẫu là ĐS: Phương án tối ưu của bài toán đối ngẫu là y* = ( 5, 1, 1) và g = 6 = f 3 max min y* = (1, − ) và g = 6 = f Dùng bảng đơn hình của bài toán gốc 2 max min Ví dụ: + Giải bài toán gốc + Giải bài toán gốc f(x) = x1 + x2 + x3 + x4 + x5 ⟶ min f(x) = x1 2x2 + 2x3 ⟶ min 3x1 + x2 + x3 = 1 x1 + x2 + 4x4 = 6 5x1 + x2 + x3 + x4 = 3 2x2 + x3 + 5x4 = 8 2x1 + 5x2 + x3 + x5 = 8 x ≥ 0, j=1,2,3,4 j xj ≥ 0, j=1,2,3,4,5 Suy ra phương án tối ưu của bài toán đối ngẫu. Suy ra phương án tối ưu của bài toán đối ngẫu. 91 92 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH ĐS: phương án tối ưu của bài toán đối ngẫu là Phương pháp đơn hình đối ngẫu y* = ( 5, 1, 1) và gmax = 6 = fmin + Tìm một “giả phương án” *Quy tắc: Nếu cơ sở ban đầu là ma trận đơn vị thì + Lập bảng đơn hình đối ngẫu. Nếu các phần tử để tìm lời giải của bài toán đối ngẫu, ta chọn ra từ trong cột giả phương án đều không âm thì ta có bảng đơn hình cuối cùng các ước lượng j của các phương án tối ưu. biến cơ sở xj ở bảng đơn hình đầu tiên rồi cộng + Dòng quay r là dòng có chứa phần tử âm nhỏ thêm hệ số cj tương ứng. nhất trong cột giả phương án. Ta đã giải quyết các bài toán có sẵn ma trận đơn vị + Cột quay là cột s tương ứng với tỷ số nhỏ nhất với hệ số bi ≥ 0 cũng như bài toán chưa có sẵn ma ∆j trong các tỷ số với xrj < 0. trận đơn vị. Với các bài toán có sẵn ma trận đơn vị xrj nhưng có hệ số bi < 0 ta thường áp dụng phương Tiếp tục biến đổi bảng đơn hình bình thường pháp đơn hình đối ngẫu sau đây 93 94 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Ví dụ: Dùng phương pháp đơn hình đối ngẫu, giải + f(x) = 15x1 + 12x2 + 10x3 ⟶ min bài toán 3x1 + 4x2 + 2x3 ≥ 160 + f(x) = x + 2x + 3x + 4x ⟶ min 1 2 3 4 x1 + 2x2 + 3x3 ≥ 140 x + x + x + 4x ≥ 6 1 2 3 4 xj ≥ 0, j=1,2,3. 4x1 + x2 + x3 + x4 ≥ 9 ĐS: Phương án tối ưu là x* = (0, 25, 30), giá trị tối xj ≥ 0, j=1,2,3,4. ưu fmin = 600. ĐS: Phương án tối ưu là x* = (2, 0, 0, 1), giá trị tối ưu fmin = 6. 95 96 Chuongnn-hui.blogspot.com 16
  17. QUY HOẠCH TUYẾN TÍNH 02/09/2012 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Định nghĩa bài toán vận tải Xí nghiệp cần vận chuyển hàng hoá từ m kho (điểm Chương 3: BÀI TOÁN VẬN TẢI phát) Pi, i=1,2, ,m đến n nơi tiêu thụ (điểm thu) Tj, j=1,2, ,n. Lượng hàng có ở mỗi kho Pi là ai, i=1,2, ,m. Lượng hàng cần ở mỗi nơi tiêu thụ Tj là BÀI TOÁN VẬN TẢI VÀ MỘT SỐ KHÁI NIỆM bj, j=1,2, ,n. Chi phí vận chuyển một đơn vị hàng từ kho Pi đến nơi tiêu thụ Tj là cij, i=1,2, m, j=1,2, ,n. Cho biết tổng lượng hàng ở các kho bằng tổng lượng hàng cần tiêu thụ. Hãy lập kế hoạch vận chuyển hàng hoá sao cho tổng chi phí là nhỏ nhất và đảm bảo yêu cầu thu phát. 97 98 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Mô hình toán học của bài toán Ta trình bày dưới dạng bảng vận tải như sau: Tìm x = (x , x , , x ) sao cho 11 12 mn Thu b b b f(x) =  cijxij ⟶ min Phát 1 2 n x = a , i=1,2, ,m. ij i c11 c12 c1n a1 xij = bj, j=1,2, ,n. x11 x12 x1n xij 0, i=1,2, ,m, j=1,2, ,n. c21 c22 c2n a2 x21 x22 x2n trong đó ai = bj (điều kiện cân bằng thu phát) Lưu ý: Bài toán vận tải cân bằng thu phát luôn có phương án tối ưu và ta cũng có thể giải bằng cm1 cm2 cmn am phương pháp đơn hình. xm1 xm2 xmn 99 100 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Một số khái niệm + Chu trình là một dây chuyền khép kín. Số các ô Xét bảng vận tải m n. trong một chu trình là số chẵn. Số các ô tối đa + Ô chọn là ô (i, j) nằm trên dòng i, cột j mà lượng trong bảng không tạo thành chu trình là m + n 1. hàng xij > 0, ô loại là ô (i, j) mà xij = 0. Với m + n 1 ô không tạo thành chu trình ta có thể + Dây chuyền là một tập hợp các ô chọn sao cho bổ sung thêm một ô bất kỳ để có ít nhất một chu không có quá hai ô liên tiếp nằm trên cùng một trình. dòng hoặc cột. Một số chu trình thường gặp Dây chuyền Không là dây chuyền 101 102 Chuongnn-hui.blogspot.com 17
  18. QUY HOẠCH TUYẾN TÍNH 02/09/2012 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH + Ma trận cước phí là ma trận (cij) với cij là cước Tìm phương án cực biên ban đầu phí vận chuyển một đơn vị hàng từ Pi đến Tj. Phương pháp “min” cước + Phương án hay ma trận phương án là ma trận + Tìm ô có cước phí bé nhất, (x ) với x là lượng hàng vận chuyển từ P đến T . ij ij i j + Phân phối lượng hàng tối đa có thể vào ô đó. + Phương án cực biên là phương án có số ô chọn + Loại bỏ dòng hay cột đã phân phối đủ hàng. tối đa không tạo thành chu trình là m + n 1, nếu số ô này bằng đúng m + n 1 ta có phương án cực Tiếp tục quá trình cho đến khi phân phối hết hàng. biên không suy biến, ngược lại ta có phương án cực biên suy biến. Trường hợp suy biến ta có thể bổ sung thêm một số “ô chọn 0” để có m + n 1 ô không tạo thành chu trình. 103 104 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Ví dụ: Tìm phương án cực biên ban đầu + + 130 140 120 160 ĐS: 30 60 50 40 ĐS: 20 18 22 25 Phương án ban đầu 180 0 140 40 0 Phương án ban đầu 1 5 7 2 130 0 0 40 45 30 0 0 15 15 25 30 15 0 0 80 120 170 5 7 4 9 0 5 50 25 Giá trị mục tiêu 80 0 55 0 0 45 30 40 35 f = 13350 Giá trị mục tiêu 200 12 2 3 6 55 f = 630 105 106 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Phương pháp Vogel Ví dụ: Tìm phương án cực biên ban đầu + Tính hiệu số cước phí của hai ô có cước phí bé + nhất trên các dòng và cột. 30 60 50 40 ĐS: + Trên dòng hay cột có hiệu số lớn nhất tìm ô có Phương án ban đầu 1 5 7 2 cước phí bé nhất 30 0 0 15 45 + Phân phối lượng hàng tối đa vào ô có cước phí 0 5 50 25 5 7 4 9 bé nhất đó. 80 0 55 0 0 + Loại bỏ dòng hay cột đã phân phối đủ hàng. Giá trị mục tiêu 12 2 3 6 f = 630 + Tính lại hiệu số cước phí trên cột hay dòng. 55 Tiếp tục quá trình cho đến khi phân phối hết hàng. 107 108 Chuongnn-hui.blogspot.com 18
  19. QUY HOẠCH TUYẾN TÍNH 02/09/2012 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH + Giải bài toán vận tải 130 140 120 160 ĐS: Tìm phương án cực biên không suy biến ban đầu. 20 18 22 25 Phương án ban đầu Áp dụng phương pháp ‘min’ cước hay Vogel. 180 120 0 60 0 10 0 0 160 Đánh giá phương án hiện có – Thuật toán quy 0 15 25 30 15 0 140 60 0 cước phí ô chọn 170 Giá trị mục tiêu + Tìm hệ thống thế vị u và v trên các dòng i, cột j 45 30 40 35 i j f = 12870 sao cho tại các ô chọn (i, j) ta có u + v = c . 200 i j ij + Biến đổi ma trận cước phí (cij) thành ma trận cước phí mới (c ij) với c ij = cij (ui + vj). 109 110 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH + Nếu c ij 0 với mọi i, j thì phương án đang xét là + Gọi h = min{xij  (i, j) U }, biến đổi ma trận phương án tối ưu, trái lại ta chuyển sang xây dựng phương án (xij) thành ma trận phương án mới phương án mới. (x ij) sao cho: Xây dựng phương án mới xij nếu (i, j) U + + Gọi ô (r, s) là ô sao cho crs < 0, bé nhất, tìm một x ij = xij + h nếu (i, j) U chu trình U qua ô (r, s) và tập hợp T các ô chọn. xij h nếu (i, j) U + Đánh dấu +/ các ô trong U, bắt đầu là ô (r, s), Tiếp tục quá trình trên cho đến khi tìm được phân chia U = U+  U , với U+ là tập hợp các ô phương án tối ưu. mang dấu + và U là tập hợp các ô mang dấu . 111 112 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Ví dụ: Giải các bài toán vận tải + + 130 140 120 160 ĐS: 30 60 50 40 ĐS: 20 18 22 25 Phương án tối ưu 180 60 0 120 0 Phương án tối ưu 1 5 7 2 70 0 0 100 5 0 0 40 45 15 25 30 15 0 140 0 60 25 5 50 0 170 5 7 4 9 Giá trị mục tiêu 80 0 55 0 0 45 30 40 35 fmin = 12690 Giá trị mục tiêu 200 12 2 3 6 f = 555 55 min Lưu ý: + Với phương án suy biến ta bổ sung thêm các “ô chọn 0” để có m+n 1 ô không tạo thành chu trình. 113 114 Chuongnn-hui.blogspot.com 19
  20. QUY HOẠCH TUYẾN TÍNH 02/09/2012 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH + Trường hợp ai bj hay cung lớn hơn cầu, ta bổ sung dòng phát giả Pm+1 với am+1= bj ‒ ai và bổ sung cột thu giả Tn+1 với bn+1= ai ‒ bj và cm+1j= 0 đối với các ô giả (m+ 1, j), j = 1, ,n. cin+1= 0 đối với các ô giả (i, n+ 1), i = 1, ,m. Ví dụ: Giải bài toán vận tải Ví dụ: Giải bài toán vận tải 65 45 50 30 ĐS: 100 65 95 ĐS: 10 9 12 7 Phương án tối ưu 7 5 2 Phương án tối ưu 60 30 0 0 30 80 0 0 80 9 11 10 15 30 0 25 0 3 4 5 70 0 0 55 5 45 0 0 70 30 65 15 Giá trị tối ưu Giá trị tối ưu 8 7 14 12 9 2 7 50 fmin = 1385 150 fmin = 875 115 116 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH + Trường hợp có ô cấm, ta bỏ ô cấm và đưa vào đó + Trường hợp bài toán vận tải tìm max: cước phí M rất lớn và tiến hành làm bình thường. Nếu tìm phương án cực biên bằng ‘max’ cước ta ưu Phương án tối ưu không có giá trị trong ô cấm. tiên cho các ô có cước phí lớn nhất, bằng Vogel ta Ví dụ: Giải bài toán vận tải ưu tiên cho các ô có cước phí lớn nhất trên dòng 100 65 95 40 ĐS: hay cột có hiệu số cước phí lớn nhất của hai ô có cước phí lớn nhất rồi tiến hành làm bình thường. 6 5 11 10 Phương án tối ưu 80 15 65 0 0 Dấu hiệu để phương án tối ưu là cij ≤ 0 với mọi i, j 10 5 7 0 0 30 40 sau khi quy 0 cước phí ô chọn. Nếu phương án 70 85 0 65 0 chưa tối ưu ta bổ sung ô (i, j) mà c > 0 lớn nhất Giá trị tối ưu ij 9 8 7 rồi điều chỉnh phương án bình thường. 150 fmin = 2065 117 118 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Ví dụ: Giải bài toán vận tải tìm ‘max’ Giải bài toán vận tải với EXCEL 140 160 120 140 ĐS: Vì bài toán vận tải cũng là bài toán quy hoạch Phương án tối ưu tuyến tính nên ta cũng có thể sử dụng EXCEL để 15 13 17 20 170 0 30 0 140 giải, chỉ có khác biệt ở cách trình bày dữ liệu trên 0 130 70 0 10 20 25 10 bảng tính. 200 140 0 50 0 Giá trị tối ưu Cài thêm công cụ Add-ins Solver 40 25 35 30 f = 14890 Tương tự, trước hết ta phải cài thêm công cụ 190 max Slover để gỉi bài toán. Tổ chức dữ liệu trên bảng tính Tiến hành nhập liệu trên bảng tính Excel như sau 119 120 Chuongnn-hui.blogspot.com 20
  21. QUY HOẠCH TUYẾN TÍNH 02/09/2012 Toán chuyên đề 4: QUY HOẠCH TUYẾN TÍNH Tiến hành giải bài toán vận tải như trường hợp giải bài toán quy hoạch tuyến tính. 121 Chuongnn-hui.blogspot.com 21