NHỮNG bài TOÁN QUY HOẠCH TUYẾN TÍNH

19 649 0
NHỮNG bài TOÁN QUY HOẠCH TUYẾN TÍNH

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

CHƯƠNG I BÀI TOÁN QUY HOẠCH TUYẾN TÍNH 1.1/ MỘT SỐ VÍ DỤ DẪN ĐẾN BÀI TOÁN QUY HOẠCH TUYẾN TÍNH: 1.1.1 Bài toán vận chuyển: Tại sân bay Tân Sơn Nhất có nhu cầu vận chuyển 1200 hành khách 120 hàng máy bay Giả sử có loại máy bay sử dụng với khả vận chuyển loại sau: Máy bay loại A: 01 máy bay chở 150 hành khách 20 hàng với chi phí tương ứng 240 triệu đồng Máy bay loại B: 01 máy bay chở chở 180 hành khách 16 hàng với chi phí tương ứng 220 triệu đồng Hãy lập mô hình tìm phương án sử dụng số máy bay loại cho phải thỏa mãn yêu cầu vận chuyển với tổng chi phí Lập mô hình: Gọi x1 số lượng máy bay loại A Gọi x2 số lượng máy bay loại B Tổng chi phí (triệu đồng): Z = 240 x1 + 220x2 Đảm bảo hành khách: 150 x1 + 180x2 = 1200 Đảm bảo hàng hóa: 20 x1 + 16 x2 = 120 Đảm bảo thực tế: x1,x2 ≥ Giải toán: Z = 240 x1 + 220x2 → (*) 150 x1 + 180 x2 = 1200   20 x1 + 16 x2 = 120  x ≥ 0; j = 1, ( )  j Giải hệ phương trình  x1 = 2, x2 = thay x1 x2 vào (* ) → Z = 1580 1.1.2/ Bài toán phần thức ăn : Để nuôi loại gia súc người ta sử dụng loại thức ăn A, B, C Tỷ lệ % theo khối lượng chất dinh dưỡng P1, P2 có loại thức ăn sau : Thức ăn A B C Chất dinh dưỡng P1 20 10 10 Yêu cầu phần thức ăn loại gia súc này: P2 10 10 20 - Chất dinh dưỡng P1 phải có 70g nhiều 80g - Chất dinh dưỡng P2 có 90g - Giá 1kg thức ăn A,B,C tương ứng 2.000đ, 1.000đ, 2.000đ Yêu cầu : Hãy lập mô hình toán xác định khối lượng thức ăn cần mua cho tổng chi phí Lập mô hình toán : Gọi x1, x2, x3 tương ứng số g thức ăn A, B, C cần mua - Tổng chi phí Z = 2x1 + x2 + 2x3 - Hàm lượng chất dinh dưỡng P1: 0,2x1 + 0,1x2 + 0,1x3 thuộc [ 70,80] (g) P2: 0,1 x1 + 0,1x2 + 0,2 x3 ≥ 90 (g) x j ≥ ( j = 1, 2,3) Bài toán: Tìm xj (j= 1,2,3) cho Z = 2x1+ x2 + 2x3 → 2 x1 + x + x3 ≥ 700 2 x + x + x ≤ 800   x1 + x 2 x3 ≥ 900  x1 , x , x3 ≥ 1.1.3/ Bài toán thời gian thi công ngắn nhất: Để đảm bảo hoàn thành kế hoạch, đơn vị sửa chữa bảo dưỡng đường nhựa A cần gấp rút hoàn thành 50km sơn vạch mặt đường, số km đường sơn kẻ vạch đường cấp I không nhỏ 20% tổng chiều dài sơn kẻ vạch đường cấp II cấp III Đơn vị A có dây chuyền ( người, máy) để làm việc Trong để thời gian hoàn thành 1km đường cấp I, II, III tương ứng 12 ngày, ngày ngày Định mức tiền sơn cho 1km đường cấp I, II, III tương ứng 30, 20 15 triệu đồng, kinh phí dành cho công việc thời gian tới 120 (triệu đồng) Hãy lập mô hình xác định chiều dài sơn kẻ vạch cho cấp đường cho tổng thời gian thực ngắn nhất, đồng thời đảm bảo kinh phí mua sơn Lập mô hình: Gọi x1, x2, x3 chiều dài (km) dự định thực tương ứng cấp đường loại I, II, III Mục tiêu thời gian: Z = Yêu cầu khối lượng: Yêu cầu chủng loại: Yêu cầu kinh phí Điều kiện tất yếu: x1, x2, x3 ≥ Bài toán: 1.2/ ĐỊNH NGHĨA VÀ CÁC DẠNG BÀI TOÁN QUY HOẠCH TUYẾN TÍNH 1.2.1/ Định nghĩa: Bài toán quy hoạch tuyến tính dạng tổng quát: tìm (x1, x2, …, xn) cho n f (x) = c1x1+ c2x2 + cnxn = ∑c j =1 j x j → (max) (1) Với điều kiện n ≤  aij x j  = bi (i =1, 2, , m)(2) ∑   j=  ≥      ≥0  x ≤0  j =(1, 2, , n)(3)   j   Tùyý     + Các bi gọi hệ số tự + Các cj gọi hệ số hàm mục tiêu ( hệ số) + aij gọi hệ số ràng buộc chung + f(x) gọi hàm mục tiêu + Hệ (*) gọi hệ ràng buộc (2) gọi ràng buộc chung (có m ràng buộc) (3) gọi ràng buộc biến (có n ràng buộc) Vector x = (x1, x2, … xn) gọi phương án (P.A) x thỏa (*) tập hợp tất phương án gọi miền ràng buộc kí hiệu D - Một phương án làm cho hàm mục tiêu đạt cực tiểu ( ứng với toán tìm f (min f) cực đại (max f) gọi phương án tối ưu ký hiệu x opt Nghĩa là: BT min: ∀ x ∈ D : f (x) ≥ f (xopt) BT max: ∀ x ∈ D : f (x) ≤ f (xopt) Giải toán quy hoạch tuyến tính tìm phần tử tối ưu (nếu có) + Hai toán quy hoạch tuyến tính gọi tương đương chúng có chung phần tử tối ưu Mệnh đề : Quan hệ max f f  f ( x ) ⇒ max  x ∈ D   ⇔  g ( x ) = − f ( x ) ⇒  x ∈ D 1.2.2/ Biểu diễn toán quy hoạch tuyến tính dạng ma trận: Gọi  a11 a12 a1n  a   A =  21     a a mn   m1 ma trận cấp m*n hệ số ràng buộc chung X= x1 … xn , CT = (c1, c2, …,cn) b1 B= … bm Lúc toán quy hoạch tuyến tính phát biểu Tìm x = ( x1, x2, …, xn) cho f(x) = CT x → (max) thỏa mãn: A.X  B ≥ X≥0 ;  ≤ = 1.2.3/ Các dạng toán quy hoạch tuyến tính quy tắc biến đổi 1.2.3.1: Dạng tắc n f ( x) = ∑ c j x j → ( max ) j =1  n  ∑ aij x j = bi (i = 1, , m)  j =1 x ≥ ( j = 1, 2, , n )  j Ta nhận xét rằng, toán quy hoạch tuyến tính đưa dạng tắc nhờ quy tắc biến đổi sau: • Nếu ràng buộc có dạng : n ∑a j =1 ij x j ≥bi ta đưa dạng tương đương : n ∑a j =1 ij x j − x n +1 = bi với xn+1 ≥ ẩn phụ) • Nếu ràng buộc có dạng : n a ∑ ij j= ta đưa dạng tương đương n ∑a j =1 ij x j ≤bi x j + xn +1 = bi với xn+1 ≥ ẩn phụ) Chú ý: - Hệ số ẩn phụ hàm mục tiêu f(x) - Nếu biến xj ≤ ta thay xj’ : xj’ = - xj (xj’ ≥ 0) - Nếu biến xj không ràng buộc dấu ta thay hiệu biến không, tức đặt xj = xj’ - xj’’ với xj’ ≥ 0, xj’’ ≥ Chú ý rằng: Đây biến phụ nên phải tính lại hàm mục tiêu theo biến Các ví dụ: đưa toán QHTT sau dạng tắc 1/ f(x) = -2x1 +3x2 - 2x3 → 2 x1 + x − x3 =  3 x1 + x3 = −3 x , x , x ≥  Ví dụ dạng tắc xảy dấu = x1, x2, x3 ≥ 2/ f(x) = x1 + x2 + x3 - 2x4 → max  x1 − x2 + x3 ≥  5 x1 − x2 − x3 = x , x , x , x ≤  Giải Ví dụ 2: VD2 tắc vi phạm chỗ: ≥ 2; x1, x2, x3, x4 ≤0 Ta có: f(x) = x1 + x2 + x3 - 2x4 + x5 → max (1)  x1 − x2 + x3 − x5 =  5 x1 − x2 − x3 = x1 = - x1’ ; x2 = -x2’ ; x3 = -x3’, x4 = -x4’ (với x1’, x2’, x3’, x4’ ≥ 0) Ta thay x1, x2, x3, x4 vào (1)  x1 '+ x2 '−2 x3 '+ x5 ' =  − x1 '+ x2 '+3 x3 ' = Tìm x1, x2, x3, x4, x5, x1’, x2’, x3’, x4’ (x5 ẩn phụ) 3/ f(x) = - x1 + 2x2 +1/3 x3 - 2x4 → Tìm x1, x2, x3, x4  x1 − x2 − x3 = −7  x + x − x ≤ −2    x1 + x3 + x = /   x1 , x2 , x3 , x4 ≥ Giải VD3 : VD3 tắc vi phạm chỗ ≤ -2 f (x) = -x1 + 2x2 + 1/3 x3 - 2x4 + x5 → x1 − x2 −3 x3 = −7 x + x − x + x =   x1 + x3 + x =1 /   Tìm x1, x2, x3, x4, x5 ≥0, (x5 ẩn phụ) 4/ f(x) = x1 + 3x2 -2x3 → Tìm x1, x2, x3, x2’, x2’’, x3’, x4, x5 3 x1 + x2 − x3 ≤ − x − x + x =12  2  4 x1 + x2 −8 x3 ≥10  x1 ≥ 0, x3 ≤ Giải 4: Để đưa toán dạng tắc, ta phải đưa ràng buộc bất phương trình phương trình, đồng thời ẩn số phải không âm Có nghĩa ràng buộc thứ cộng thêm ẩn phụ x4 ≤ 0, ràng buộc thứ trừ ẩn phụ x5 ≥ Thay x3 = - x3’ (x3’ ≥ 0) x2 = x2’-x2’’(x2 ≥0, x2’’ ≥0) toán trở thành f(x) = x1 + 3x3 + 2x3’ → (1) 3 x1 + x2 + x3 '+x4 =  − x1 − x2 − x3 ' =12 4 x +3 x +8 x '−x =10  Thay x2 vào (1) ta có 3x1 + x2 '− x2 ' '+ x3 '+ x4 =   − x1 − x2 '+ x2 ' '− x3 = 12  x + 3x '− 3x ' '+ x '− x = 10 2  x1, x2’, x2’’, x3’ ≥ 0; x4, x5 ≥ (x4, x5 ẩn phụ) 1.2.3.2/ Dạng chuẩn (chuẩn tắc ) : Bài toán quy hoạch tuyến tính dạng chuẩn BT QHTT dạng tắc thỏa điều kiện sau: - Các bi bên vế phải ràng buộc chung ≥ - Mỗi ràng buộc chung có biến sở tương ứng Biến sở biến có hệ số +1 ràng buộc chung hệ số ràng buộc lại (Tức biến sở tạo thành ma trận đơn vị) - Các biến không sở ( biến sở) gọi biến tự Ví dụ 1: Xem xét toán sau chuẩn tắc không, tìm phương án ban đầu f = x1 + 2x2 + x3 + x4 →  x1 + x2 − x3 = 7(1)   x2 + x3 + x4 = 5(2)  x ≥ 0; j = (1,2,3, 4)  j Bài toán dạng chuẩn tắc phương trình (1,2) xảy dấu bằng, ràng buộc biến xj ≥0 - Hệ số hàm mục tiêu : c1 = 1, c2 = 2, c3 = 1, c4 = - Ràng buộc chung : m = - Ràng buộc biến : n = - Hệ số ràng buộc chung : a11 = 1, a12 = 1, a13 = 1, a21 = 0, a22 = 1, a23 = 1, a24 = - Các hệ số tự do: b1 = 7, b2 = Ta có hệ số ma trận A= x1 x2 x3 x4 1 -1 0 1 Ta có x1, x4 biến sở ; x2, x3 biến tự Vậy phương án ban đầu : x2 = x3 = thay vào (1) (2) hệ ta x1 = 7, x4 = Phương án ban đầu x = (7,0,0,5) Ví dụ : f(x) = x2 - x5 →  x1 + x2 − x5 = 1(1)   3x2 − x3 + x5 = − 3(2)   − x2 + x4 + x5 = 2(3)  x j ≥ 0; j = (1, 2, ,5)  Đây chưa phải toán dạng chuẩn: Phương trình có hệ số tự bi = -3 nên ta nhân vế với -1  x1 + x2 − x5 = 1(1)  − 3x + x − x = 3(2)    − x2 + x4 + x5 = 2(3)  x j ≥ 0; j = (1,5)  - Hệ số hàm mục tiêu : c1 = 1, c2 = -1 - Ràng buộc chung : m = - Ràng buộc biến : n = - Hệ số ràng buộc chung: a11 = 1, a12 = 1, a13 = 1, a14 = 1, a15 = -2, a21 = 0, a22 = -3, a23 = 1, a24 = 0, a25 = -1, a31 = 0; a32 = -2, a33 = 0, a34 = 1, a35 = - Các hệ số tự do: b1 = 1, b2 = 3, b3 = - Ràng buộc biến: xj≥0 Ta có hệ số ma trận: A= x1 0 x2 -3 -2 x3 x4 0 x5 -2 -1 Ta có x1, x3, x4 biến sở x2, x5 biến tự Thay x2 = x5 = vào (3) → x4 = Thay x2, x5 = vào (2) → x3 = Thay x2, x5 = vào (1) → x1 =1 Vậy phương án ban đầu là: x = (1,0,3,2,0) 1.3/ Giải toán quan hệ tuyến tính biến phương pháp hình học : Trong trường hợp toán QHTT có biến ta giải phương pháp hình học, ta áp dụng kết sau : 1/ Đường thẳng ax + by = c chia mặt phẳng tọa độ thành miền, miền tập tất điểm M(x,y) thỏa ax + by > c miền tập tất điểm M(x,y) : ax + by < c 2/ Cho đường thẳng ax + by = m, m ∈ ℜ tập hợp đường thẳng song song với mà ta gọi đường mức (tương ứng với giá trị mức m) ( đường mức có pháp vector n = (a,b)) Nếu ta chuyển đường thẳng họ (một đường mức) đến đường thẳng khác họ theo hướng vector n =(a,b) giá trị tương ứng m tăng, theo hướng ngược lại giá trị tương ứng m giảm Trong thực hành giải toán ta áp dụng : + Vẽ pháp vector n = (a,b) vector OC với C(a,b) Vẽ đường mức (d) qua O ⊥ với vector n + Dịch chuyển song song đường mức theo hướng vector n = (a,b) giá trị mức tăng ( ứng với toán fmax) theo hướng ngược lại mức giảm (ứng với toán fmin) + Dịch chuyển (d) việc dịch chuyển không làm (d) cắt D dừng Khi điểm OFD nằm đường mức cuối lời giải cần tìm Ví dụ : f(x) = 2x1 + x2 → max  x1 + x2 ≥ − x + 2x ≤    x1 − x2 ≤ 15  x1 , x2 ≥ 0; Xopt = (4,5), fmax = 13 Ví dụ 2: Cũng VD fmin Đs: X0pt1 = (0,2), Xopt2 = (1,0), fmin = Ví dụ 3: f(x) = 3x1 + 4x2 →  x1 − x2 ≥   − x1 + x2 ≥ x , y ≥  1 D = θ , toán vô nghiệm Ví dụ 4: f(x) = 3x1 + 4x2 → max  x1 − 3x2 ≥   − x1 + x2 ≤ x , y ≥  1 Để hiểu rõ ý nghĩa việc giải toán phương pháp hình học ta xét ví dụ thực tế sau đây: Ví dụ (5): Một công ty có phân xưởng P1, P2 sản xuất loại sản phẩm A, B Số đơn vị sản phẩm loại sản xuất chi phí hoạt đông P 1, P2 sau: Sản phẩm A Sản phẩm B Chi phí Phân xưởng 250 100 600.000 Phân xưởng 250 200 1.000.000 Công ty nhận yêu cầu đặt hàng 5.000 đơn vị sản phẩm A 3.000 đơn vị sản phẩm B Hãy tìm cách phân phối thời gian cho phân xưởng hoạt động cho thỏa mãn yêu cầu đặt hàng chi phí Gọi x1, x2 số cần bố trí cho P1, P2 hoạt động 1.4/ Phương pháp đơn hình 1.4.1/ Cơ sở phương pháp đơn hình: Tập lồi: Tập G ∈ ℜ n gọi tập lồi điểm x, y thuộc G đoạn [x, y] thuộc G Tập lồi: Không tập lồi: Điểm cực biên : Điểm x ∈ G gọi điểm cực biên G G không đoạn thẳng nhận x điểm Trở lại ví dụ ** ta thấy D có điểm cực biên A 1, A2, A3 ta gọi chúng phương án cực biên (pacb) ( phương án sở, phương án bản) Nhận xét : Vì tính quan trọng phương án cực biên ta thấy để giải toán quan hệ tuyến tính ta cần xét tập hữu hạn phương án cực biên Cơ sở phương pháp đơn hình : Để tìm phương án tối ưu tập quan hệ tuyến tính ta cần xét phương án Xuất phát từ phương án ban đầu x o Ta tìm cách đánh giá Nếu chưa phải phương án tối ưu ta tìm cách chuyển sang phương án x1 tốt Quá trình lập lại chừng có khả thực di chuyển số phương án hữu hạn nên sau số hữu hạn bước lặp thu phương án tối ưu toán kết luận hàm mục tiêu không bị chặt Ta giả sử toán dạng (chuẩn- fmin) n f ( x ) =∑ a j x j →min j =1 n ∑aij x j = bi (i =1, m)  j =1 x ≥ 0, b ≥ i  j 1.4.2/Bảng đơn hình Hệ số Hệ ẩn P.án c1 cơ x1 c2 cm cm+1 cs cn x2 xm xm+1 xs xn c1 x1 b1 a11 a12 c2 cr x2 b2 xr br ar1 ar2 arm xm bm am1 am2 amm f(x) f(xo) ∆1 ∆2 cm a 1n ∆m arn amm+1 amn ∆m+1 ∆m +n Trong n ẩn ta có x1, x2, , xm : ẩn xm+1, ,xn : ẩn không Giá trị f(x0) tính sau: f(x0) = c1b1+ .+cmbm Các hệ số kiểm tra tính công thức sau n ∆ j = ∑a j aij − ci (i = 1, m) j =1 Chú ý 1=2=…m =0 1.4.3/ Thuật toán đơn hình chi tiết : (sau có bảng đơn hình) Bước 1: - Kiểm tra tính tối ưu phương án : - Nếu j < với j (j=1,n) phương án tương ứng tối ưu - Ngược lại : tồn (có 1) j > chuyển sang bước Bước 2: - Nếu có j >0 mà với aij ≤ ( ∀ i =1,m) nghĩa phần tử cột xj không dương Ngừng thuật toán Kết luận toán không giải - Nếu với j > có aij > chuyển sang bước Bước 3: ( chọn ẩn đưa vào, ẩn đưa khỏi hệ ẩn bản) - Ẩn xs ẩn đưa vào s = max{j >0} - Ẩn đưa xr bi λ = br (ars ≥ ) = ais ars Phần tử ars nằm cột xs ( ứng với ẩn đưa vào) dòng x r (ứng với ẩn đưa ra) gọi phần tử trục ( lưu ý ars >0) Sau xác định ần đưa vào đưa ta chuyển sang bước Bước 4: (Cải tiến : tìm phương án tốt hơn) Xây dựng bảng đơn hình tương ứng với hệ ẩn thu từ hệ ẩn trước cách thay xr xs ( cột hệ số ta thay cr cs) - Để thu dòng xs (mới đưa vào) ta chia dòng xr cho ars - Bảng đơn hình : Trên dòng xs cũ ars = phân tử lại 0, s = Các phần tử lại (kể dòng j) ta tính theo quy tắc hình chữ nhật ajk (mới) = ajk (cũ) Dòng r ark ajs a rs Cột k ark cột s ars chia nhân Dòng j zjk? ajs Sau quay lại bước Cứ tiếp tục chạy thuật toán theo thứ tự bước -> bước 2->bước 3-> bước 4->bước 1->,,,vv Và trả lời yêu cầu toán Ví dụ 1: Giải toán quan hệ tuyến tính sau: f(x) = 6x1 + x2 + x3 + 3x4 + x5 - 7x6 + 6x7 →  − x1 + x − x + x6 + x7 = − 2x + x − 4x + 2x − x =    x1 + x + x5 − 3x6 =  x j ≥ 0; ( j = 1,7 )  Bài toán có dạng chuẩn với phương án ban đầu x0 = (0,3,9,0,2,0,0) có ẩn x2, x3, x5 (n=7, m=3) ta có bảng đơn hình Hệ số 1 Hệ ẩn x2 x3 x5 f(x) P.án 14 x1 -1 -2 -5 x2 0 x3 0 x4 -1 -4 -6 x5 0 -7 x6 [1] -3 x7 -1 -6 Với f(x0) = C1b1 + c2b2 + c3b3 = 1.3 + 1.9 + 1.2 = 14 2 = 3 = 5 = (vì x2, x3, x5 ẩn bản) 2 = * + * + * - = 4 = * (-1) + * (-4) + 1*2 - = - 6 = 1*1+1*2+1*(-3) - (-7) = 7 = 1*1+1*(-1) + 1*0 -6 = -6 Ta có đầy đủ thông tin bảng đơn hình, nên ta bắt đầu dùng thuật toán đơn hình với bước bắt đầu bước Bước 1: Ta thấy có 6 = > chuyển sang bước Bước 2: Ta thấy 6 > có a16, a26 > chuyển sang bước Bước 3: Chọn ẩn đưa vào ta tìm cột có j >0, nhiên ví dụ có 6 > nên x6 ẩn đưa vào Chọn ẩn đưa : Ta có : a16 =1, a26 = 2, (a16, a26 >0) 3  λ =  ;  = suy x2 ẩn bị loại khỏi hệ ẩn phần tử a16 = 1  đóng khung ars = a16 = chuyển sang bước Bước 4: Xây dựng bảng đơn hình Hệ số -7 1 Hệ ẩn X6 X3 X5 f(x) P.án 3 11 -7 X1 -1 X2 -2 -7 X3 0 X4 -1 -2 -1 1 X5 0 -7 X6 0 X7 -3 -13 Ta thay x2 x6 với hệ số x6 -7 ta cần tính lại 8*4 = 32 đại lượng bảng theo công thức bước Sau tính toàn giá trị bảng đơn hình ta quay lại bước 1: Ta thấy 1 > 0; 4 > suy bước Tại 4 = > có tất a14, a24, a34 suy ngừng thuật toán Kết luận toán cho phương án tối ưu: Ví dụ 2: Giải toán quan hệ tuyến tính sau: f(x) = x1+ 4x2 - x3 - x4 + x5 + 3x6 →  x1 − x + x3 + x = 2x + 4x − 2x + x =    x1 + x + x3 + x6 =  x j ≥ 0; ( j = 1,6)  Bài toán có dạng chuẩn , với phương án ban đầu x0 = (0,0,0,1,2,5) Các ẩn x4, x5, x6 ( n = 6, m = 3) Ta có bảng đơn hình: Hệ số Hệ ẩn x4 x5 x6 f(x) -1 P.án 16 x1 2 x2 -1 [4] -1 x3 -2 -3 -1 x4 0 x5 0 x6 0 Với f(x0) = c1b1 + c2b2 + c3b3 = (-1) * + * + * = 16 4 = 5 = 6 = (vì x4, x5, x6 ẩn bản) 1 = (-1) * + * + * - = - + + - = 2 = (-1) * (-1) + * + * - = + + - = 3 = ( -1) * + * (-2) + * - (-1) = - -2 + + = - Ta có đầy đủ thông tin bảng đơn hình, nên ta bắt đầu dùng thuật toán đơn hình với bước đầu bước Bước : Có 2 = > chuyển sang bước Bước : Ta thấy có 2 >0 có a22 a32 >0 chuyển sang bước Bước : Chọn ẩn đưa vào : - Ta tìm cột j >0; nhiên có 2 > nên x2 ẩn đưa vào - Chọn ẩn đưa : Ta có a22 = 4, a32 = (a22, a32 > 0) γ =  ,  = → x5 ẩn bị loại khỏi hệ ẩn 4 2 Phần tử a22 = đóng khung ars = a22 = chuyển sang bước Bước 4: Xây dựng đơn hình Hệ số -1 Hệ ẩn X4 X2 X6 F(x) P.án 3/2 ½ 25/2 X1 5/2 ½ -3/2 X2 0 -1 X3 9/2 -1/2 1/2 -1 X4 0 X5 ¼ ¼ -1/2 -7/4 X6 0 - Chọn ẩn đưa vào: ta có 3 > 0; lại có a13 a33 > → chọn x3 ẩn đưa vào  4 → x4 ẩn đưa phần tử a13 phần tử , = 18  18 - Chọn ẩn đưa ra: γ =  đóng khung; ars = a13 = 9/2 Hệ số Hệ ẩn X3 X2 X6 f(x) -1 P.án 1/3 2/3 10/3 37/3 X1 5/9 7/9 -10/9 -16/9 X2 0 -1 X3 0 -1 X4 2/9 1/9 -4/9 -1/9 X5 1/18 5/18 -11/18 -16/9 X6 0 1= (-1) * 5/9 + * 7/9 + * (-10)/9 - 1= - 16/9 4= - (-1) * 2/9 + * /9 +3 * (-4/9) - (-1) = - 1/9 5= (-1) * 1/18 + * 5/18 + * (-11/18) - = - 16/9   3 Vậy toán có phần tử tối ưu xopt =  0, , ,0,0, 10   ; f(min) =37/3 3 Chú ý : Bài toán dạng chuẩn f max Cách : ( gián tiếp : đưa dạng chuẩn f → min) BT1 f → Max  g=-f → BT2 X ∈ D X ∈ D Nếu xopt phần tử tối ưu tập ⇔ x phần tử tối ưu toán Và giá trị hàm mục tiêu fmax = - gmin Cách 2: (Trực tiếp) Thuật toán giống thuật toán dạng f → Chỉ thay đổi Bước 1: Nếu j ≥ ∀ j phương án tối ưu Bước 2: Nếu có j < mà ∀ aij ≤ ⇒ ngừng thuật toán kết luận toán không giải Bước 3: Chọn ẩn đưa vào: s = j, j < (ẩn đưa vào ẩn ẩn có j âm bé nhất) Ví dụ: f = - x1 + 4x2 + 2x3 - x4 ⇒ max 2 x1 − x2 + x3 =  3 x1 + x2 + x4 =  x ≥ 0; ( j = 1,4 )  j Giải: f = -x1 + 4x2 + 2x3 - x4 → 2 x1 − x3 + x3 =  3 x1 + x2 + x4 =  x ≥ 0; ( j = 1,4 )  j - Hệ số mục tiêu: c1= - 1; c2 = 4; c3 = 2; c4 = - - Hệ số tự do: b1 = 4, b2 = - Ràng buộc chung m = - Ràng buộc biến n = - Hệ số ràng buộc chung: a11 = 2, a12 = - 1, a13 = 1, a21 = 3, a22 = 1, a23 = G = - f → → x1 - 4x2 - 2x3 + x4 → fmax = - gmin (x0) = (0,0,4,7) Hệ số -2 Hệ ẩn X3 X4 f(x) P.án -1 j X1 -2 -4 X2 -1 -1 -2 X3 0 X4 1 2 3 4 Đáp số: xopt toán II : x = (0,7,11,0), gmin = - 50 Cách 2: Tính trực tiếp Hệ số -1 Hệ ẩn X3 X4 F(x) X3 X2 f(x) ⇒ xopt = (0,7,11,0) ; P.án -1 X1 X2 -1 -7 X3 0 -1 X4 11 50 23 1 0 fmax = 50 1.5/ Thuật toán đơn hình giải toán QHTT dạng tổng quát Khi xây dựng thuật toán đơn hình ta giả thiết biết phương án tức toán có dạng chuẩn Tuy nhiên thực tế toán quan hệ tuyến tính có dạng chuẩn Đó lý người ta cần thuật toán giải toán QHTT dạng tổng quát 1.5.1/ Đưa toán QHTT dạng tổng quát dạng chuẩn (bài toán M) Nếu toán QHTT (dạng tắc, b i ≥ 0) phương án ban đầu ta thêm số biến giả vào để có phương án ban đầu Bài toán có biến giả gọi toán (M) Ví dụ: Cho toán gốc (p) f = x1 - 2x2 +3x3 + x4 → 4 x1 + x2 + x3 + x4 =   x1 − x2 + x3 − x4 =  x ≥ 0; ( j = 1,4 )  j Hãy viết toán M [...]... bài toán quan hệ tuyến tính nào cũng có dạng chuẩn Đó là lý do người ta cần một thuật toán giải được bài toán QHTT dạng tổng quát 1.5.1/ Đưa bài toán QHTT dạng tổng quát về dạng chuẩn (bài toán M) Nếu bài toán QHTT (dạng chính tắc, b i ≥ 0) không có ngay phương án cơ bản ban đầu thì ta thêm một số biến giả vào để có ngay phương án cơ bản ban đầu Bài toán có biến giả gọi là bài toán (M) Ví dụ: Cho bài. .. với hệ số của x6 là -7 ta cần tính lại 8*4 = 32 đại lượng trong bảng mới theo các công thức trong bước 4 Sau khi tính toàn bộ các giá trị trong bảng đơn hình mới ta quay lại bước 1: Ta thấy 1 > 0; 4 > 0 suy ra bước 2 Tại 4 = 1 > 0 có tất cả a14, a24, a34 suy ra ngừng thuật toán Kết luận bài toán đã cho không có phương án tối ưu: Ví dụ 2: Giải bài toán quan hệ tuyến tính sau: f(x) = x1+ 4x2 - x3... 1 3 3 Vậy bài toán có phần tử tối ưu là xopt =  0, , ,0,0, 10   ; f(min) =37/3 3 Chú ý : Bài toán dạng chuẩn f max Cách 1 : ( gián tiếp : đưa về dạng chuẩn f → min) BT1 f → Max  g=-f → min BT2 X ∈ D X ∈ D Nếu xopt là phần tử tối ưu của bài tập 1 ⇔ x cũng là phần tử tối ưu của bài toán 2 Và giá trị của hàm mục tiêu là fmax = - gmin Cách 2: (Trực tiếp) Thuật toán cũng giống như thuật toán ở dạng... của bài toán II : x = (0,7,11,0), gmin = - 50 Cách 2: Tính trực tiếp Hệ số 2 -1 2 4 Hệ ẩn cơ bản X3 X4 F(x) X3 X2 f(x) ⇒ xopt = (0,7,11,0) ; P.án cơ bản 4 7 1 -1 X1 2 3 2 4 X2 -1 1 -7 2 X3 1 0 0 -1 X4 0 1 0 11 7 50 5 3 23 0 1 0 1 0 0 1 0 7 fmax = 50 1.5/ Thuật toán đơn hình giải bài toán QHTT dạng tổng quát Khi xây dựng thuật toán đơn hình ta giả thiết là đã biết một phương án cơ bản tức là bài toán. .. 0, s = 0 Các phần tử còn lại (kể cả dòng j) ta tính theo quy tắc hình chữ nhật ajk (mới) = ajk (cũ) Dòng r ark ajs a rs Cột k ark cột s ars chia nhân Dòng j zjk? ajs Sau đó quay lại bước 1 Cứ tiếp tục chạy thuật toán như trên theo thứ tự bước 1 -> bước 2->bước 3-> bước 4->bước 1->,,,vv Và trả lời yêu cầu bài toán Ví dụ 1: Giải bài toán quan hệ tuyến tính sau: f(x) = 6x1 + x2 + x3 + 3x4 + x5 - 7x6... chúng là phương án cực biên (pacb) ( phương án cơ sở, phương án cơ bản) Nhận xét : Vì tính quan trọng của phương án cực biên ta thấy để giải toán quan hệ tuyến tính ta chỉ cần xét trên tập hữu hạn các phương án cực biên Cơ sở của phương pháp đơn hình : Để tìm phương án tối ưu của bài tập quan hệ tuyến tính ta chỉ cần xét những phương án cơ bản Xuất phát từ một phương án cơ bản ban đầu x o nào đó Ta tìm... có x1, x2, , xm : các ẩn cơ bản xm+1, ,xn : các ẩn không cơ bản Giá trị của f(x0) được tính như sau: f(x0) = c1b1+ .+cmbm Các hệ số kiểm tra được tính bằng công thức sau n ∆ j = ∑a j aij − ci (i = 1, m) j =1 Chú ý rằng 1=2=…m =0 1.4.3/ Thuật toán đơn hình chi tiết : (sau khi có bảng đơn hình) Bước 1: - Kiểm tra tính tối ưu của phương án : - Nếu j < 0 với mọi j (j=1,n) thì phương án tương ứng là... lập lại chừng nào còn có khả năng thực hiện sự di chuyển ấy và vì số phương án cơ bản là hữu hạn nên sau một số hữu hạn bước lặp hoặc sẽ thu được phương án tối ưu của bài toán hoặc sẽ kết luận vì hàm mục tiêu không bị chặt Ta giả sử bài toán đang ở dạng (chuẩn- fmin) n f ( x ) =∑ a j x j →min j =1 n ∑aij x j = bi (i =1, m)  j =1 x ≥ 0, b ≥ 0 i  j 1.4.2/Bảng đơn hình Hệ số Hệ ẩn P.án c1 cơ bản cơ... ưu - Ngược lại : nếu tồn tại (có ít nhất 1) j > 0 thì chuyển sang bước 2 Bước 2: - Nếu có một j >0 mà với mọi aij ≤ 0 ( ∀ i =1,m) nghĩa là mọi phần tử trên cột xj đều không dương Ngừng thuật toán Kết luận bài toán không giải được - Nếu với mỗi j > 0 đều có ít nhất một aij > 0 thì chuyển sang bước 3 Bước 3: ( chọn ẩn đưa vào, ẩn đưa ra khỏi hệ ẩn cơ bản) - Ẩn xs là ẩn đưa vào nếu s = max{j >0} -... - gmin Cách 2: (Trực tiếp) Thuật toán cũng giống như thuật toán ở dạng f → min Chỉ thay đổi Bước 1: Nếu j ≥ 0 ∀ j thì phương án là tối ưu Bước 2: Nếu có một j < 0 mà ∀ aij ≤ 0 ⇒ ngừng thuật toán kết luận bài toán không giải được Bước 3: Chọn ẩn đưa vào: s = min j, j < 0 (ẩn đưa vào ẩn cơ bản là ẩn có j âm bé nhất) Ví dụ: f = - x1 + 4x2 + 2x3 - x4 ⇒ max 2 x1 − x2 + x3 = 4  3 x1 + x2 + x4 = 7 ... kinh phí Điều kiện tất yếu: x1, x2, x3 ≥ Bài toán: 1.2/ ĐỊNH NGHĨA VÀ CÁC DẠNG BÀI TOÁN QUY HOẠCH TUYẾN TÍNH 1.2.1/ Định nghĩa: Bài toán quy hoạch tuyến tính dạng tổng quát: tìm (x1, x2, …, xn)... Hai toán quy hoạch tuyến tính gọi tương đương chúng có chung phần tử tối ưu Mệnh đề : Quan hệ max f f  f ( x ) ⇒ max  x ∈ D   ⇔  g ( x ) = − f ( x ) ⇒  x ∈ D 1.2.2/ Biểu diễn toán quy hoạch. .. bm Lúc toán quy hoạch tuyến tính phát biểu Tìm x = ( x1, x2, …, xn) cho f(x) = CT x → (max) thỏa mãn: A.X  B ≥ X≥0 ;  ≤ = 1.2.3/ Các dạng toán quy hoạch tuyến tính quy tắc biến đổi 1.2.3.1: Dạng

Ngày đăng: 06/12/2015, 23:32

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan