Giáo trình Lý thuyết cơ bản về quy hoạch tuyến tính - Chương 1: Lý thuyết cơ bản về quy hoạch tuyến tính
Người ta cần có một lượng (tối thiểu) chất dinh dưỡng i=1,2,.,m do các thức
ăn j=1,2,.,n cung cấp. Giả sử :
aij là số lượng chất dinh dưỡng loại i có trong 1 đơn vị thức ăn loại j
(i=1,2,.,m) và (j=1,2,., n)
bi là nhu cầu tối thiểu về loại dinh dưỡng i
cj là giá mua một đơn vị thức ăn loại j
Vấn đề đặt ra là phải mua các loại thức ăn như thế nào để tổng chi phí bỏ ra ít
nhất mà vẫn đáp ứng được yêu cầu về dinh dưỡng. Vấn đề được giải quyết theo mô
hình sau đây :
Gọi xj ≥ 0 (j= 1,2,.,n) là số lượng thức ăn thứ j cần mua .
Bạn đang xem 20 trang mẫu của tài liệu "Giáo trình Lý thuyết cơ bản về quy hoạch tuyến tính - Chương 1: Lý thuyết cơ bản về quy hoạch tuyến tính", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
Tóm tắt nội dung tài liệu: Giáo trình Lý thuyết cơ bản về quy hoạch tuyến tính - Chương 1: Lý thuyết cơ bản về quy hoạch tuyến tính
LÝ THUYẾT CƠ BẢN VỀ QUY HOẠCH TUYẾN TÍNH 5 CHƯƠNG I LÝ THUYẾT CƠ BẢN VỀ QUY HOẠCH TUYẾN TÍNH Chương này trình bày cách xây dựng mô hình quy hoạch tuyến tính của những bài toán dạng đơn giản. Đây là những kiến thức quan trọng để xây dựng mô hình cho những bài toán phức tạp hơn trong thực tế sau này. Các khái niệm về ‘’ lồi’’ đuợc trình bày để làm cơ sở cho phương pháp hình học giải quy hoạch tuyến tính. Một ví dụ mở đầu được trình bày một cách trực quan để làm rõ khái niệm về phương án tối ưu của quy hoạch tuyến tính. Nội dung chi tiết của chương bao gồm : I- GIỚI THIỆU BÀI TOÁN QUY HOẠCH TUYẾN TÍNH 1- Bài toán vốn đầu tư 2- Bài toán lập kế hoạch sản xuất 3- Bài toán vận tải II- QUY HOẠCH TUYẾN TÍNH TỔNG QUÁT VÀ CHÍNH TẮC 1- Quy hoạch tuyến tính tổng quát 2- Quy hoạch tuyến tính dạng chính tắc 3- Phương án III- ĐẶC ĐIỂM CỦA TẬP HỢP CÁC PHƯƠNG ÁN 1- Khái niệm lồi và tính chất 2- Đặc điểm của tập các phương án 3- Phương pháp hình học IV- MỘT VÍ DỤ MỞ ĐẦU V- DẤU HIỆU TỐI ƯU 1- Ma trận cơ sở - Phương án cơ sở - Suy biến 2- Dấu hiệu tối ưu LÝ THUYẾT CƠ BẢN VỀ QUY HOẠCH TUYẾN TÍNH 6 CHƯƠNG I LÝ THUYẾT CƠ BẢN VỀ QUY HOẠCH TUYẾN TÍNH I- GIỚI THIỆU BÀI TOÁN QUY HOẠCH TUYẾN TÍNH Có thể tạm định nghĩa quy hoạch tuyến tính là lĩnh vực toán học nghiên cứu các bài toán tối ưu mà hàm mục tiêu (vấn đề được quan tâm) và các ràng buộc (điều kiện của bài toán) đều là hàm và các phương trình hoặc bất phương trình tuyến tính. Đây chỉ là một định nghĩa mơ hồ, bài toán quy hoạch tuyến tính sẽ được xác định rõ ràng hơn thông qua các ví dụ . Các bước nghiên cứu và ứng dụng một bài toán quy hoạch tuyến tính điển hình là như sau : a- Xác định vấn đề cần giải quyết, thu thập dữ liệu. b- Lập mô hình toán học. c- Xây dựng các thuật toán để giải bài toán đã mô hình hoá bằng ngôn ngữ thuận lợi cho việc lập trình cho máy tính. d- Tính toán thử và điều chỉnh mô hình nếu cần. e- Áp dụng giải các bài toán thực tế. 1- Bài toán vốn đầu tư Người ta cần có một lượng (tối thiểu) chất dinh dưỡng i=1,2,..,m do các thức ăn j=1,2,...,n cung cấp. Giả sử : aij là số lượng chất dinh dưỡng loại i có trong 1 đơn vị thức ăn loại j (i=1,2,...,m) và (j=1,2,..., n) bi là nhu cầu tối thiểu về loại dinh dưỡng i cj là giá mua một đơn vị thức ăn loại j Vấn đề đặt ra là phải mua các loại thức ăn như thế nào để tổng chi phí bỏ ra ít nhất mà vẫn đáp ứng được yêu cầu về dinh dưỡng. Vấn đề được giải quyết theo mô hình sau đây : Gọi xj ≥ 0 (j= 1,2,...,n) là số lượng thức ăn thứ j cần mua . Tổng chi phí cho việc mua thức ăn là : LÝ THUYẾT CƠ BẢN VỀ QUY HOẠCH TUYẾN TÍNH 7 nn2211 n 1j jj xc......xcxc xcz +++== ∑ = Vì chi phí bỏ ra để mua thức ăn phải là thấp nhất nên yêu cầu cần được thỏa mãn là : nn2211 n 1j jj xc......xcxc xcz min +++== ∑ = Lượng dinh dưỡng i thu được từ thức ăn 1 là : ai1x1 (i=1→m) Lượng dinh dưỡng i thu được từ thức ăn 2 là : ai2x2 ......................................................... Lượng dinh dưỡng i thu được từ thức ăn n là : ainxn Vậy lượng dinh dưỡng thứ i thu được từ các loại thức ăn là : ai1x1+ai2x2+...+ainxn (i=1→m) Vì lượng dinh dưỡng thứ i thu được phải thỏa yêu cầu bi về dinh dưỡng loại đó nên ta có ràng buộc sau : ai1x1+ai2x2+...+ainxn ≥ bi (i=1→m) Khi đó theo yêu cầu của bài toán ta có mô hình toán sau đây : nn2211 n 1j jj xc......xcxc xcz min +++== ∑ = ⎪⎪ ⎪⎪ ⎩ ⎪⎪ ⎪⎪ ⎨ ⎧ =≥ ≥+++ ≥+++ ≥+++ n)1,2,...,(j 0x bxa...xaxa .......................................... bxa...xaxa bxa...xaxa j mnmn2m21m1 2n2n222121 1n1n212111 2- Bài toán lập kế hoạch sản xuất Từ m loại nguyên liệu hiện có người ta muốn sản xuất n loại sản phẩm Giả sử : aij là lượng nguyên liệu loại i dùng để sản xuất 1 sản phẩm loại j (i=1,2,...,m) và (j=1,2,..., n) bi là số lượng nguyên liệu loại i hiện có cj là lợi nhuận thu được từ việc bán một đơn vị sản phẩm loại j LÝ THUYẾT CƠ BẢN VỀ QUY HOẠCH TUYẾN TÍNH 8 Vấn đề đặt ra là phải sản xuất mỗi loại sản phẩm là bao nhiêu sao cho tổng lợi nhuận thu được từ việc bán các sản phẩm lớn nhất trong điều kiện nguyên liệu hiện có. Gọi xj ≥ 0 là số lượng sản phẩm thứ j sẽ sản xuất (j=1,2,...,n) Tổng lợi nhuận thu được từ việc bán các sản phẩm là : nn2211 n 1j jj xc......xcxc xcz +++== ∑ = Vì yêu cầu lợi nhuận thu được cao nhất nên ta cần có : nn2211 n 1j jj xc......xcxc xczmax +++== ∑ = Lượng nguyên liệu thứ i=1→m dùng để sản xuất sản phẩm thứ 1 là ai1x1 Lượng nguyên liệu thứ i=1→m dùng để sản xuất sản phẩm thứ 2 là ai2x2 ............................................... Lượng nguyên liệu thứ i=1→m dùng để sản xuất sản phẩm thứ n là ainxn Vậy lượng nguyên liệu thứ i dùng để sản xuất là các sản phẩm là ai1x1+ai2x2+...+ainxn Vì lượng nguyên liệu thứ i=1→m dùng để sản xuất các loại sản phẩm không thể vượt quá lượng được cung cấp là bi nên : ai1x1+ai2x2+...+ainxn ≤ bi (i=1,2,...,m) Vậy theo yêu cầu của bài toán ta có mô hình sau đây : nn2211 n 1j jj xc......xcxc xczmax +++== ∑ = ⎪⎪ ⎪⎪ ⎩ ⎪⎪ ⎪⎪ ⎨ ⎧ =≥ ≤+++ ≤+++ ≤+++ n)1,2,...,(j 0x bxa...xaxa .......................................... bxa...xaxa bxa...xaxa j mnmn22m11m 2nn2222121 1nn1212111 3- Bài toán vận tải Người ta cần vận chuyển hàng hoá từ m kho đến n cửa hàng bán lẻ. Lượng hàng hoá ở kho i là si (i=1,2,...,m) và nhu cầu hàng hoá của cửa hàng j là dj LÝ THUYẾT CƠ BẢN VỀ QUY HOẠCH TUYẾN TÍNH 9 (j=1,2,...,n). Cước vận chuyển một đơn vị hàng hoá từ kho i đến của hàng j là cij ≥ 0 đồng. Giả sử rằng tổng hàng hoá có ở các kho và tổng nhu cầu hàng hoá ở các cửa hàng là bằng nhau, tức là : ∑∑ == = n 1j j m 1i i ds Bài toán đặt ra là lập kế hoạch vận chuyển để tiền cước là nhỏ nhất, với điều kiện là mỗi cửa hàng đều nhận đủ hàng và mỗi kho đều trao hết hàng. Gọi xij ≥ 0 là lượng hàng hoá phải vận chuyển từ kho i đến cửa hàng j. Cước vận chuyển chuyển hàng hoá i đến tất cả các kho j là : ∑ = n 1j ijijxc Cước vận chuyển tất cả hàng hoá đến tất cả kho sẽ là : ∑∑ = = = m 1i n 1j ijijxcz Theo yêu cầu của bài toán ta có mô hình toán sau đây : ⎪⎩ ⎪⎨ ⎧ ==≥ == = ∑ ∑∑ = = = n)1,1,...,(j m)1,2,...,(i 0x n)1,2,...,(j dx xcz min ij m 1i jij m 1i n 1j ijij II- QUY HOẠCH TUYẾN TÍNH TỔNG QUÁT VÀ CHÍNH TẮC 1- Quy hoạch tuyến tính tổng quát Tổng quát những bài toán quy hoạch tuyến tính cụ thể trên, một bài toán quy hoạch tuyến tính là một mô hình toán tìm cực tiểu (min) hoặc cực đại (max) của hàm mục tiêu tuyến tính với các ràng buộc là bất đẳng thức và đẳng thức tuyến tính. Dạng tổng quát của một bài toán quy hoạch tuyến tính là : LÝ THUYẾT CƠ BẢN VỀ QUY HOẠCH TUYẾN TÍNH 10 ( ) ( ) ( )⎪ ⎪⎪ ⎪⎪ ⎪ ⎩ ⎪⎪ ⎪⎪ ⎪⎪ ⎨ ⎧ ⎪⎩ ⎪⎨ ⎧ ∈ ∈≤ ∈≥ ⎪⎪ ⎪⎪ ⎩ ⎪⎪ ⎪⎪ ⎨ ⎧ ∈≥ ∈≤ ∈= = ∑ ∑ ∑ ∑ = = = = 3j 2j 1j 3i n 1j jij 2i n 1j jij 1i n 1j jij n 1j jj Jj tùy ý x (III) Jj 0x Jj 0x )I(i bxa (II) )I(i bxa )I(i bxa (I) xcz maxmin/ Trong đó : • (I) Hàm mục tiêu Là một tổ hợp tuyến tính của các biến số, biểu thị một đại lượng nào đó mà ta cần phải quan tâm của bài toán. • (II) Các ràng buộc của bài toán Là các phương trình hoặc bất phương trình tuyến tính n biến số, sinh ra từ điều kiện của bài toán. • (III) Các các hạn chế về dấu của các biến số Người ta cũng thường trình bày bài toán quy hoạch tuyến tính dưới dạng ma trận như sau : [ ] ⎥⎥ ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎢⎢ ⎣ ⎡ == mnm21m 2n2221 1n1211 ij a ... a a ...................... a ... a a a ... a a aA ⎥⎥ ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎢⎢ ⎣ ⎡ = ⎥⎥ ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎢⎢ ⎣ ⎡ = ⎥⎥ ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎢⎢ ⎣ ⎡ = m 2 1 n 2 1 n 2 1 b ... b b b c ... c c c x ... x x x Gọi ai (i=1→m) là dòng thứ i của ma trận A, ta có : LÝ THUYẾT CƠ BẢN VỀ QUY HOẠCH TUYẾN TÍNH 11 ( ) ( ) ( )⎪⎪ ⎪⎪ ⎩ ⎪⎪ ⎪⎪ ⎨ ⎧ ⎪⎩ ⎪⎨ ⎧ ∈ ∈≤ ∈≥ ⎪⎩ ⎪⎨ ⎧ ∈≥ ∈≤ ∈= = 3j 2j 1j 3ii 2ii 1ii T Jj tùy ý x (III) Jj 0x Jj 0x )I(i bxa (II) )I(i bxa )I(i bxa (I) xc)x(zin/max m Người ta gọi : - A là ma trận hệ số các ràng buộc. - c là vectơ chi phí (cT là chuyển vị của c) - b là vectơ giới hạn các ràng buộc. 2- Quy hoạch tuyến tính dạng chính tắc Bài toán quy hoạch tuyến tính chính tắc là bài toán quy hoạch tuyến tính mà trong đó các ràng buộc chỉ có dấu = và các biến số đều không âm. ⎪⎪⎩ ⎪⎪⎨ ⎧ =≥ == = ∑ ∑ = = (III) n)1,2,...,(j 0x (II) )m1,2,...,(i bxa (I) xczmin/max j i n 1j jij n 1j jj ( m≤ n ) rang(A)=m ⎪⎩ ⎪⎨ ⎧ ≥ = = (III) 0x (II) bAx (I) xc)x(z min/max T Người ta có thể biến đổi bài toán quy hoạch tuyến tính dạng tổng quát thành bài toán quy hoạch tuyến tính dạng chính tắc nhờ các quy tắc sau đây : - Nếu gặp ràng buộc i có dạng ≤ thì người ta cộng thêm vào vế trái của ràng buộc một biến phụ xn+i ≥ 0 để được dấu = . LÝ THUYẾT CƠ BẢN VỀ QUY HOẠCH TUYẾN TÍNH 12 - Nếu gặp ràng buộc i có dạng ≥ thì người ta trừ vào vế trái của ràng buộc một biến phụ xn+i ≥ 0 để được dấu = . Các biến phụ chỉ là những đại lượng giúp ta biến các ràng buộc dạng bất đẳng thức thành đẳng thức, nó phải không ảnh hưởng gì đến hàm mục tiêu nên không xuất hiện trong hàm mục tiêu. - Nếu biến xj ≤ 0 thì ta đặt xj = -x’j với x’j ≥ 0 rồi thay vào bài toán. - Nếu biến xj là tuỳ ý thì ta đặt jjj xxx ′′−′= với jj x , x ′′′ đều ≥ 0 rồi thay vào bài toán. - Trong trường hợp trong số các ràng buộc có dòng mà vế phải của dòng đó là giá trị âm thì đổi dấu cả hai vế để được vế phải là một giá trị không âm. Dựa vào các phép biến đổi trên mà người ta có thể nói rằng bài toán quy hoạch tuyến tính chính tắc là bài toán quy hoạch tuyến tính mà trong đó các ràng buộc chỉ có dấu = , vế phải và các biến số đều không âm. Ví dụ : Biến đổi bài toán quy hoạch tuyến tính sau đây về dạng chính tắc : ⎪⎪ ⎪⎪ ⎪⎪ ⎩ ⎪⎪ ⎪⎪ ⎪⎪ ⎨ ⎧ ⎪⎪⎩ ⎪⎪⎨ ⎧ ≤ ≥ ⎪⎪ ⎪ ⎩ ⎪⎪ ⎪ ⎨ ⎧ =+−+ ≥++ −≥++ ≤+++− −++−= tùy ý x , x 0x 0x , x 20xx2xx 10x3xx2 1xx2x 7xx2xx2x x2xx2xx2)x(z min 32 4 51 4321 543 432 54321 54321 Bằng các thay thế : )0x,x( xxx )0x,x( xxx )0x( xx 33333 22222 444 ≥′′′′′−′= ≥′′′′′−′= ≥′′−= ta được : LÝ THUYẾT CƠ BẢN VỀ QUY HOẠCH TUYẾN TÍNH 13 0x,x, x, x, x, x, x, x, x , x 20x)xx(2)xx(x 10xx3x)xx(2 1xx)xx(2)xx( 7xxx2)xx()xx(2x x2x)xx(2)xx(x2)x(z min 4332287651 433221 85433 743322 65433221 5433221 ≥′′′′′′′ ⎪⎪⎩ ⎪⎪⎨ ⎧ =′−′′−′−′′−′+ =−+′−′′−′ −=−+′′−′+′′−′ =++′−′′−′+′′−′− −′−′′−′+′′−′−= hay : 0x,x, x, x, x, x, x, x, x, x 20x)xx(2)xx(x 10xx3x)xx(2 1xx)xx(2)xx( 7xxx2)xx()xx(2x x2x)xx(2)xx(x2)x(z min 4332287651 433221 85433 743322 65433221 5433221 ≥′′′′′′′ ⎪⎪⎩ ⎪⎪⎨ ⎧ =′−′′−′−′′−′+ =−+′−′′−′ =+−′′−′−′′−′− =++′−′′−′+′′−′− −′−′′−′+′′−′−= 3- Phương án Xét bài toán quy hoạch tuyến tính chính tắc : (P) ⎩⎨ ⎧ ≥ = = 0x bAx xc)x(z min/max T • x=[x1 x2 ... xn] T là một phương án của (P) khi và chỉ khi Ax = b. • x=[x1 x2 ... xn] T là một phương án khả thi của (P) khi và chỉ khi Ax = b và x ≥ 0 . • Một phương án tối ưu của (P) là một phương án khả thi của (P) mà giá trị của hàm mục tiêu tương ứng đạt min/max. LÝ THUYẾT CƠ BẢN VỀ QUY HOẠCH TUYẾN TÍNH 14 III- ĐẶC ĐIỂM CỦA TẬP HỢP CÁC PHƯƠNG ÁN 1- Khái niệm lồi và các tính chất a- Tổ hợp lồi - Cho m điểm xi trong không gian Rn . Điểm x được gọi là tổ hợp lồi của các điểm xi nếu : 1.... 0,....,, x...xx xx n21n21 m m 2 2 1 1 m 1i i i =α++α+α≥ααα α++α+α=α= ∑ = - Khi x là tổ hợp lồi của hai điểm x1, x2 người ta thường viết : x=λx1+(1-λ)x2 (0≤λ≤1) Nếu 0<λ<1 thì x được gọi là tổ hợp lồi thật sự. - Ðoạn thẳng Tập hợp tất cả các tổ tổ hợp lồi của 2 điểm bất kỳ A, B∈ Rn được gọi là đoạn thẳng nối A và B . Ký hiệu : δAB= {x = λA + (1-λ)B với λ∈[0,1] } Định lý Tổ hợp lồ có tính chất bắc cầu. b- Tập hợp lồi Tập con S của Rn được gọi là tập hợp lồi khi S chứa toàn bộ đoạn thẳng nối hai điểmbất kỳ của S. λx + (1-λ)y ∈ S ∀x,y∈,λ∈[0,1] Tập hợp rỗng và tập hợp chỉ có một phần tử được xem là tập hợp lồi. Định lý Giao của một số bất kỳ các tập hợp lồi là một tập hợp lồi. Định lý Nếu S là một tập hợp lồi thì S chứa mọi tổ hợp lồi của một họ điểm bất kỳ trong S. LÝ THUYẾT CƠ BẢN VỀ QUY HOẠCH TUYẾN TÍNH 15 c- Ðiểm cực biên của một tập hợp lồi Ðiểm x trong tập lồi S ⊂ Rn được gọi là điểm cực biên nếu không thể biểu diễn được x dưới dạng tổ hợp lồi thật sự của hai điểm phân biệt của S. x d- Ða diện lồi và tập lồi đa diện Đa diện lồi Tập hợp S tất cả các tổ hợp của các điểm x1, x2,....,xm cho trước được gọi là đa diện lồi sinh ra bởi các điểm đó. Đa diện lồi là một tập hợp lồi. Trong đa diện lồi người ta có thể loại bỏ dần các điểm là tổ hợp của các điểm còn lại. Khi đó người ta thu được một hệ các điểm, giả sử là y1, y2,...,yp (p≤m) . Các điểm này chính là các điểm cực biên của đa diện lồi, chúng sinh ra đa diện lồi đó. Số điểm cực biên của đa diện lồi là hữu hạn. Siêu phẳng - Nửa không gian A=[aij]m.n là ma trận cấp m.n Ai (i=1,2,...,m) là hàng thứ i của A Siêu phẳng trong Rn là tập các điểm x=[x1,x2,.....,xn]T thỏa Ai x = bi Nửa không gian trong Rn là tập các điểm x=[x1,x2,.....,xn]T thỏa Ai x ≥ bi Siêu phẳng và nửa không gian đều là các tập hợp lồi. Tập lồi đa diện Giao của một số hữu hạn các nửa không gian trong Rn được gọi là tập lồi đa diện. LÝ THUYẾT CƠ BẢN VỀ QUY HOẠCH TUYẾN TÍNH 16 ] Tập lồi đa diện là một tập hợp lồi. Nếu tập lồi đa diện không rỗng và giới nội thì đó là một đa diện lồi 2- Đặc điểm của tập hợp các phương án Ðịnh lý Tập hợp các phương án của một quy hoạch tuyến tính là một tập lồi đa diện. Nếu tập hợp lồi đa diện này không rỗng và giới nội thì đó là một đa diện lồi, số điểm cực biên của nó là hữu hạn. Ðịnh lý Tập hợp các phương án tối ưu của một quy hoạch tuyến tính là một tập lồi. Xét quy hoạch tuyến tính chính tắc ⎪⎩ ⎪⎨ ⎧ ≥ = = (III) 0x (II) bAx (I) xc)x(z min/max T Giả sử A=[aij]m.n có cấp m.n, m ≤ n, rang(A)=m . Gọi Aj (j=1,2,...,n) cột thứ j của ma trận A, quy hoạch tuyến tính chính tắc trên có thể viết : ⎩⎨ ⎧ ≥ =+++ +++= 0x bAx...AxAx xc...xcxcz(x) maxmin/ n n 2 2 1 1 nn2211 Gọi S={x=[x1,x2,...,xn]T ≥ 0 / x1A1+ x2A2+...+ xnAn=b} là tập các phương án của bài toán. [ ∈ S là một phương án khác 0. T0n02010 x,...,x,xx = Định lý Điều kiện cần và đủ để x0 là phương án cực biên ( điểm cực biên của S) là các cột Aj ứng với >0 là độc lập tuyến tính. 0jx Hệ quả Số phương án cực biên của một quy hoạch tuyến tính chính tắc là hữu hạn. Số thành phần > 0 của một phương án cực biên tối đa là bằng m. Khi số thành phần > 0 của một phương án cực biên bằng đúng m thì phương án đó được gọi là một phương án cơ sở. LÝ THUYẾT CƠ BẢN VỀ QUY HOẠCH TUYẾN TÍNH 17 Định lý Nếu tập các phương án của một quy hoạch tuyến tính chính tắc không rỗng thì quy hoạch tuyến tính đó có ít nhất một phương án cực biên. Bổ đề Nếu x là một phương án tối ưu của quy hoạch tuyến tính. x1, x2 là các phương án của quy hoạch tuyến tính. x là tổ hợp lồi thực sự của x1, x2 thì x1, x2 cũng là phương án tối ưu của ... 2 và w1 bằng 0 thì giá trị của hàm của hàm mục tiêu sẽ giảm xuống. Khi đó các biến ở vế trái của bài toán (II) sẽ bị thay đổi theo nhưng phải thoả ≥ 0 . Ta được : 1 x 1x 5x 0x 2 1 2 1 w 01w 0x 2 1 2 5 x 3 3 3 33 2 31 ≤⇒ ⎩⎨ ⎧ ≤ ≤⇒ ⎪⎪⎩ ⎪⎪⎨ ⎧ ≥−= ≥= ≥−= ( dòng 3 được chọn ) Khi đó người ta chọn x3=1 nên thu được một phương án tốt hơn được xác định như sau : LÝ THUYẾT CƠ BẢN VỀ QUY HOẠCH TUYẾN TÍNH 21 1w 1 x2x 0wwx 231 312 === === Giá trị tương ứng của hàm mục tiêu là z(x)=-13 Bước tiếp theo là biến đổi bài toán (II) thành một bài toán tương đương bằng cách từ dòng 3 ( dòng đựợc chọn ) tính x3 theo các biến còn lại và thế giá trị nhận được vào các dòng còn lại, ta được : 0w,w,w,x,x,x x52w1w wx22w-2x wx3w-13z(x) min 321321 212 3211 321 ≥ ⎪⎩ ⎪⎨ ⎧ −++= ++= +−= +++= 3213 2wx3w1x (III) Đến đây vì không có hệ số nào của hàm mục tiêu là âm nên không thể làm giảm giá trị của hàm mục tiêu theo cách như trên nữa. Phương án thu được ở bước sau cùng chính là phương án tối ưu của bài toán. Đối với bài toán max, thay cho việc làm tăng biến có hệ số âm trong hàm mục tiêu người ta làm tăng biến có hệ số dương cho đến khi các hệ số trong hàm mục tiêu hoàn toàn âm. V- DẤU HIỆU TỐI ƯU 1- Ma trận cơ sở - Phương án cơ sở - Suy biến Xét bài toán quy hoạch tuyến tính chính tắc (P) ⎩⎨ ⎧ ≥ = = 0x bAx xc)x(z min/max T a- Ma trận cơ sở Người ta gọi cơ sở của bài toán quy hoạch tuyến tính chính tắc (P) là mọi ma trận B không suy biến (có ma trận nghịch đảo) mxm trích ra từ m cột của ma trận ràng buộc A. Các cột còn lại được gọi là ma trận ngoài cơ sở, ký hiệu là N . b- Phương án cơ sở - Phương án cơ sở khả thi B là một cơ sở của bài toán (P). Khi đó, bằng cách hoán vị các cột của A người ta có thể luôn luôn đặt A dưới dạng : LÝ THUYẾT CƠ BẢN VỀ QUY HOẠCH TUYẾN TÍNH 22 A = [ B N ] Do đó, người ta cũng phân hoạch x và c như sau : xT = [ xB xN ] cT = [ cB cN ] Một phương án x của bài toán (P) thoả : [ ] bNxBx b x x N B bAx NB N B =+⇔=⎥⎦ ⎤⎢⎣ ⎡⇔= Phương án cơ sở Người ta gọi một phương án cơ sở tương ứng với cơ sở B là một phương án đặc biệt, nhận được bằng cách cho : xN = 0 Khi đó xB được xác định một cách duy nhất bằng cách giải hệ phương trình tuyến tính bằng phương pháp Cramer : BxB = b ⇔ xB = B-1b Phương án cơ sở khả thi Một phương án cơ sở là phương án cơ sở khả thi nếu : xB = B-1b ≥ 0 Cơ sở tương ứng với một phương án khả thi được gọi là cơ sở khả thi . Ví dụ : xét bài toán quy hoạch tuyến tính dạng chính tắc : 1,2,...,6)(j 0 x 28x3xx2x 10xx4x4x3 20xx2x2 xxxxxx)x(z maxmin/ j 4321 6421 541 654321 =≥ ⎪⎪⎩ ⎪⎪⎨ ⎧ =+++ =+−+− =++ ++−+−= Ma trận ràng buộc là ⎥⎥ ⎥⎥ ⎦ ⎤ ⎢⎢ ⎢⎢ ⎣ ⎡ = 0 0 3 1 2 1 1 0 4- 0 4 3- 0 1 2 0 0 2 A x x x x xx 6 54321 Có thể chọn ba cột bất kỳ và kiểm chứng xem đó có thể là cơ sở không. Một cơ sở được chọn và sắp xếp lại là LÝ THUYẾT CƠ BẢN VỀ QUY HOẠCH TUYẾN TÍNH 23 ⎥⎥ ⎥ ⎦ ⎤ ⎢⎢ ⎢ ⎣ ⎡ 2 1 3 4 3- 4- 0 2 2 x x x 214 1 0 0 0 1 0 0 0 1 x x x 365 Các cột x5 x6 x3 tạo thành một ma trận cơ sở . Các biến tương ứng được gọi là các biến (trong) cơ sở . Các cột x1 x2 x4 tạo thành một ma trận ngoài cơ sở. Các biến tương ứng được gọi là các biến ngoài cơ sở. Một phương án cơ sở khả thi của bài toán là : x1 x2 x3 x4 x5 x6 0 0 28 0 20 10 c- Suy biến Một phương án cơ sở khả thi được gọi là suy biến nếu xB = B-1b ≥ 0 có những thành phần bằng 0. Sự suy biến là một hiện tượng thường xảy ra trong một số bài toán như bài toán vận tải, dòng dữ liệu, đường đi ngắn nhất....... Đây là hiện tượng khá phức tạp (có nhiều cách giải quyết sẽ được xét sau). Vì vậy trong những phần tiếp theo ta giả sử rằng phương án cơ sở khả thi là không suy biến, tức là xB = B-1b > 0 ( dương thực sự ) . 2- Dấu hiệu tối ưu Theo trên, khi một bài toán quy hoạch tuyến tính có phương án tối ưu thì tồn tại một cơ sở khả thi (tối ưu) B* , tức là phương án cơ sở x* tương ứng với B* là phương án tối ưu. Vấn đề bây giờ là xác định một thủ tục để tìm B*. Chúng ta sẽ thấy rằng thủ tục đó được suy ra một cách trực tiếp từ việc chứng minh dấu hiệu tối ưu sau đây. Ðịnh lý 4 (dấu hiệu tối ưu) Xét bài toán quy hoạch tuyến tính chính tắc ⎩⎨ ⎧ ≥ = = 0x bAx xc)x(zmin/max T Điều kiện cần và đủ để một phương án cơ sở khả thi x có dạng : ⎥⎥⎦ ⎤ ⎢⎢⎣ ⎡ = ≥== − 0x 0bBx x N 1 B LÝ THUYẾT CƠ BẢN VỀ QUY HOẠCH TUYẾN TÍNH 24 của bài toán là phương án tối ưu là : 0 NBccc 1TB T N T N ≤−= − đối với bài toán max 0 NBccc 1TB T N T N ≥−= − đối với bài toán min Với : A = [ B | N ] cT= [ cB | cN ] Người ta thường gọi : cN là chi phí ngoài cơ sở cB là chi phí cơ sở T Nc là chi phí trượt giảm NBc 1TB − là lượng gia giảm chi phí Chứng minh (cho bài toán max) Ðiều kiện đủ Giả sử x* là một phương án cơ sở khả thi với ma trận cơ sở B và thoả 0NBcc 1TB T N ≤−= −TNc thì cần chứng minh x* là phương án tối ưu, nghĩa là chứng minh rằng với mọi phương án bất kỳ của bài toán ta luôn có : z(x) ≤ z(x*) Xét một phương án khả thi x bất kỳ , x thoả : ⎩⎨ ⎧ ≥ = 0x bAx [ ] ⎪⎪⎩ ⎪⎪⎨ ⎧ ≥≥ =⎥⎦ ⎤⎢⎣ ⎡ ⇒ 0x0x b x x NB NB N B B là ma trận cơ sở của phương án cơ sở khả thi x* B có ma trận nghịch đảo là B-1 ⇒ ⎪⎩ ⎪⎨ ⎧ ≥≥ =+ 0 x0x bNxBx NB NB ⇒ ⎪⎩ ⎪⎨ ⎧ ≥≥ ==+ 0 x0x I)B(B bBNxBBxB NB -1-1 N -1 B -1 LÝ THUYẾT CƠ BẢN VỀ QUY HOẠCH TUYẾN TÍNH 25 ⇒ ⎪⎩ ⎪⎨ ⎧ ≥≥ =+ 0 x0x .bBNxBx NB -1 N -1 B ⇒ ⎪⎩ ⎪⎨ ⎧ ≥≥ = 0 x0x NxB-bBx NB N -1-1 B Tính giá trị hàm mục tiêu đối với phương án x ta được : z(x) = cTx = [ ] NTNBTB N BT N T B xcxcx x cc +=⎥⎦ ⎤⎢⎣ ⎡ = ( ) NTNN11TB xcNxBbB c +− −− = N T NN 1T B 1T B xcNxBcbBc +− −− = (1) N 1T B T N 1T B N)xBc-(cbBc −− + Vì x* là phương án cơ sở khả thi tương ứng với ma trận cơ sở B nên ⎪⎩ ⎪⎨ ⎧ = ≥= − 0x 0bBx * N 1* B Tính giá trị hàm mục tiêu đối vơi phương án cơ bản x* ta được : z(x*) = cTx* = [ ] *NTN*BTB* N * BT N T B xcxcx x cc +=⎥⎦ ⎤⎢⎣ ⎡ = ( vì ) (2) bBcxc 1TB * B T B −= 0x*N = Từ (1) và (2) ta có : z(x) ≤ z(x*) vì 0 NBcc 1TBN ≤− − Vậy x* là phương án tối ưu. Ðiều kiện cần Giả sử là phương án tối ưu với ma trận cơ sở B, cần chứng minh rằng : ⎥⎥⎦ ⎤ ⎢⎢⎣ ⎡ = ≥== − 0x 0bBx *x * N 1* B 0 NBccc 1TB T N T N ≤−= − . ( Nc là vectơ có n-m thành phần) Ta sẽ chứng minh điều này bằng phản chứng. LÝ THUYẾT CƠ BẢN VỀ QUY HOẠCH TUYẾN TÍNH 26 Giả sử rằng tồn tại một thành phần cs của Nc mà cs > 0. Dựa vào cs người ta xây dựng một vectơ x như sau : ⎥⎦ ⎤⎢⎣ ⎡ ≥= −== − 0θIx NxBxx x sN N 1* BB Trong đó θ>0 và Is là một vectơ có (n-m) thành phần bằng 0, trừ thành phần thứ s bằng 1 . Vậy (*) ⎥⎦ ⎤⎢⎣ ⎡ −=−= ≥== −−− s 11 s 1* BB sN NBbBINBxx 0x x θIθ θI Do B-1b ≥ 0 nên người ta có thể chọn θ>0 đủ nhỏ để xB > 0 Vậy x được chọn như trên sẽ thoả : x ≥ 0 (3) Ta kiểm chứng x thỏa ràng buộc của bài toán bằng cách tính : Ax = [ ] NB N B NxBx x x NB +=⎥⎦ ⎤⎢⎣ ⎡ = ( ) ss1*B NNBxB θIθI +− − = ( ) ss11 NNBbB B θIθI +− −− = ss 11 NINBBbBB θIθ +− −− = ss NNb θIθI +− = b (4) Từ (3) và (4) cho thấy x là một phương án khả thi của bài toán Bây giờ ta chỉ ra mâu thuẩn bằng so sánh giá trị hàm mục tiêu tại x và x* . Ta có : z(x) = cTx = [ ] NTNBTB N BT N T B xcxcx x cc +=⎥⎦ ⎤⎢⎣ ⎡ = ( ) NTNN1*BTB xcNxBxc +− − = N T NN 1T B * B T B xcNxBcxc +− − = )0xc (vì xcNxBcxcxc *N T NN T NN 1T B * N T N * B T B =+−+ − = [ ] ( ) N1TBTN* N * BT N T B xNBccx x c c −−+⎥⎦ ⎤⎢⎣ ⎡ = ( ) s1TBTN*T θI NBccxc −−+ LÝ THUYẾT CƠ BẢN VỀ QUY HOẠCH TUYẾN TÍNH 27 = s T N *T θIcxc + = θIcxc sTN*T + = z(x*) + θsc > z(x*) ( vì 0c s >θ ) Vậy x* không phải là phương án tối ưu nên mâu thuẩn với giả thiết . Chú ý Qua việc chứng minh định lý dấu hiệu tối ưu ta thấy rằng từ một phương án cơ sở khả thi chưa tối ưu có thể tìm được các phương án khả thi càng lúc càng tốt hơn nhờ lặp lại nhiều lần công thức (*). Vấn đề được đặt là đại lượng θ được chọn như thế nào để nhanh chóng nhận được phương án tối ưu. Bổ đề Xét bài toán quy hoạch tuyến tính chính tắc ⎩⎨ ⎧ ≥ = = 0x bAx xc)x(zmax T với B là một cơ sở khả thi nào đó và x0 là phương án cơ sở tương ứng, tức là và ⎥⎥⎦ ⎤ ⎢⎢⎣ ⎡ = ≥== − 0x 0bBx x 0 N 10 B0 bBc)z(x 1TB 0 −= Xét NBccc 1TB T N T N −−= . Nếu tồn tại một biến ngoài cơ sở xs sao cho sc >0 với sc là thành phần thứ s của Nc thì : a- Hoặc là người ta có thể làm tăng một cách vô hạn giá trị của xs mà không đi ra khỏi tập hợp các phương án khả thi, và trong trường hợp này phương án tối ưu của bài toán không giới nội. b- Hoặc là người ta có thể xác định một cơ sở khả thi khác là có phương án cơ sở khả thi tương ứng với nó là tốt hơn , tức là : ∧ B ∧ x z(x0) < z( ) ∧ x Chứng minh Trong quá trình chứng minh định lý dấu hiệu tối ưu ta có phương án mới được xác định như sau : ⎥⎦ ⎤⎢⎣ ⎡ −=−= ≥== −−− s 11 s 1* BB sN NBbBINBxx 0x x θIθ θI LÝ THUYẾT CƠ BẢN VỀ QUY HOẠCH TUYẾN TÍNH 28 Ký hiệu : NBN 1−= sN là cột s của N bBb 1−= Như vậy ta có : ⎥⎥⎦ ⎤ ⎢⎢⎣ ⎡ θ= θ−== sN sB Ix N bx x Hai trường hợp có thể xảy ra như sau : a- Trường hợp 0Ns ≤ Trong trường hợp này xs có thể nhận một giá trị θ lớn tuỳ mà vẫn đảm bảo xB ≥ 0, nghĩa là x luôn luôn thoả ≥ 0 . Khi đó như đã biết giá trị hàm mục tiêu tương ứng là z(x) = [ ] NTNBTB N BT N T B xcxcx x c c +=⎥⎦ ⎤⎢⎣ ⎡ = ( ) sTNs11TB IθcIθNBbBc +− −− = s T Ns 1T B 1T B IθcIθNBcbBc +− −− = ( ) s1TBTN0 IθNBcc)x(z −−+ = s T N 0 Iθc)x(z + = z(x0) + θcs với θcs có thể lớn vô hạn thì giá trị của hàm mục tiêu là không giới nội. b- Trường hợp tồn tại i=1→m sao cho 0Nis > ( 0Nis > là thành phần thứ i của sN ) Trong trường hợp này giá trị của θ>0 mà xs có thể nhận không thể tăng vô hạn vì phải đảm bảo xB>0. Giá trị lớn nhất của θ mà x ∧ θ s có thể nhận được xác định như sau : m)1i( N b 0N , N b min rs r is is i →=∀ = ⎭⎬ ⎫ ⎩⎨ ⎧ >=θ∧ Phương án cơ sở khả thi mới có các thành phần như sau : ⎥⎥ ⎥ ⎦ ⎤ ⎢⎢ ⎢ ⎣ ⎡ = −== ∧∧ ∧∧ ∧ sN sB Iθx N θbx x LÝ THUYẾT CƠ BẢN VỀ QUY HOẠCH TUYẾN TÍNH 29 và giá trị hàm mục tiêu tương ứng là : )x(zcθ)x(z)x(z 0s0 >+= ∧∧ Ghi chú : Trong trường hợp bài toán không suy biến, nếu được xác định một cách duy nhất thì phương án mới có đúng m thành phần khác 0. Thật vậy : ∧ θ ∧ x - Biến xs đang bằng 0 trong phương án x0 trở thành dương thật sự vì θˆx s = - Biến xr đang dương thật sự bây giờ nhận giá trị : 0bbN N b bNθbx rrrs rs r rrsrr =−=−=−= ∧∧ Vậy phương án mới là một phương án cơ sở. Nó tương ứng với cơ sở ở được suy ra từ B bằng cách thay thế cột r bằng cột s. ∧ x ∧ B Người ta nói rằng hai cơ sở B và là kề nhau, chung tương ứng với những điểm cực biên kề nhau trong tập hợp lồi S các phương án khả thi của bài toán. ∧ B CÂU HỎI CHƯƠNG 1 1- Trình bày các bước nghiên cứu một quy hoạch tuyến tính. 2- Định nghĩa quy hoạch tuyến tính chính tắc. 3- Trình bày khái niệm về phương án của một quy hoạch tuyến tính. 4- Trình bày cơ sở lý thuyết của phương pháp hình học giải một quy hoạch tuyến tính hai biến. LÝ THUYẾT CƠ BẢN VỀ QUY HOẠCH TUYẾN TÍNH 30 BÀI TẬP CHƯƠNG 1 xuất hai loại sản phẩm : thép tấm và thép cuộn. bao nhiêu trong - Có 3 người cùng phải đi một quảng đường dài 10km mà chỉ có một chiếc xe đạp hời gian người cuối cùng đến đích là ngắn nhất. - Một nhà máy sản xuất ba loại thịt : bò, lợn và cừu với lượng sản xuất mỗi ngày là 1- Một nhà máy cán thép có thể sản Nếu chỉ sản xuất một loại sản phẩm thì nhà máy chỉ có thể sản xuất 200 tấn thép tấm hoặc 140 tấn thép cuộn trong một giờ . Lợi nhuận thu được khi bán một tấn thép tấm là 25USD, một tấn thép cuộn là 30USD. Nhà máy làm việc 40 giờ trong một tuần và thị trường tiêu thụ tối đa là 6000 tấn thép tấm và 4000 tấn thép cuộn . Vấn đề đặt ra là nhà máy cần sản xuất mỗi loại sản phẩm là một tuần để đạt lợi nhuận cao nhất. Hãy trình bày bài toán quy hoạch tuyến tính cho vấn đề trên. 2 một chổ ngồi. Tốc độ đi bộ của người thứ nhất là 4km/h, người thứ hai là 2km/h, người thứ ba là 2km/h. Tốc độ đi xe đạp của người thứ nhất là 16km/h, người thứ hai là 12km/h, người thứ ba là 12km/h. Vấn đề đặt ra là làm sao để t Hãy trình bày bài toán quy hoạch tuyến tính cho vấn đề trên. 3 480 tấn thịt bò, 400 tấn thịt lợn, 230 tấn thịt cừu. Mỗi loại đều có thể bán được ở dạng tươi hoặc nấu chín. Tổng lượng các loại thịt có thể nấu chín để bán là 420 tấn trong LÝ THUYẾT CƠ BẢN VỀ QUY HOẠCH TUYẾN TÍNH 31 Nấu chín trong giờ Nấu chín ngoài giờ giờ và 250 tấn ngoài giờ. Lợi nhuận thu được từ việc bán một tấn mỗi loại thịt được cho trong bảng sau đây : Tươi Bò 8 14 11 Lợn 4 12 7 Cừu 4 13 9 h bày bài toán quy hoạch tuyến tính để nhà máy sản xuất đạt lợi nhuận cao nhấ Một xưởng mộc làm bàn và ghế. Một công nhân làm xong một cái bàn phải mất 2 - Một nhà máy sản xuất hai kiểu mũ. Thời gian để làm ra một cái mũ kiểu thứ nhất - Trong hai tuần một con gà mái đẻ được 12 trứng hoặc ấp được 4 trứng nở ra gà - Giải những bài toán quy hoạch tuyến tính sau đây bằng phương pháp hình học : Hãy trìn t. 4- giờ, một cái ghế phải mất 30 phút. Khách hàng thường mua nhiều nhất là 4 ghế kèm theo 1 bàn do đó tỷ lệ sản xuất giữa ghế và bàn nhiều nhất là 4:1. Giá bán một cái bàn là 135USD, một cái ghế là 50USD. Hãy trình bày bài toán quy hoạch tuyến tính để xưởng mộc sản xuất đạt doanh thu cao nhất, biết rằng xưởng có 4 công nhân đều làm việc 8 giờ mỗi ngày. 5 nhiều gấp 2 lần thời gian làm ra một cái kiểu thứ hai. Nếu sản xuất toàn kiểu mũ thứ hai thì nhà máy làm được 500 cái mỗi ngày. Hàng ngày, thị trường tiêu thụ nhiều nhất là 150 cái mũ kiểu thứ nhất và 200 cái kiểu thứ hai. Tiền lãi khi bán một cái mũ kiểu thứ nhất là 8USD, một cái mũ thứ hai là 5USD. Hãy trình bày bài toán quy hoạch tuyến tính để nhà máy sản xuất đạt lợi nhuận cao nhất. 6 con. Sau 8 tuần thì bán tất cả gà con và trứng với giá 0,6USD một gà và 0,1USD một trứng. Hãy trình bày bài toán quy hoạch tuyến tính bố trí 100 gà mái đẻ trứng hoặc ấp trứng sao cho doanh thu là nhiều nhất. 7 LÝ THUYẾT CƠ BẢN VỀ QUY HOẠCH TUYẾN TÍNH 32 a)- b)- ⎪⎪ ⎪⎪ ⎩ ⎪⎪ ⎪⎪ ⎨ ⎧ ≤ ≤ ≤− ≥+ ≥+ −= 5x 5x 1xx 4x2x 3xx3 xxz max 2 1 21 21 21 21 ⎪⎪⎩ ⎪⎪⎨ ⎧ ≤ ≤+− ≤− ≤−− +−= 0x,x 1xx 4x2x 6x2x xxw min 21 21 21 21 21 c)- d)- ⎪⎩ ⎪⎨ ⎧ ≥+− ≥− += tuy ý xx 21, 2x3x2 2x2x x65xz max 21 21 21 ⎪⎪⎩ ⎪⎪⎨ ⎧ ≥ ≥− ≤+ −= 0x,x 3xx 6x2x x-2xw min 21 21 21 21 e)- f)- ⎪⎪⎩ ⎪⎪⎨ ⎧ ≥ ≥+ ≤+ += 0x,x 1x43x 2x2x x23xz max 21 21 21 21 ⎪⎪ ⎪ ⎩ ⎪⎪ ⎪ ⎨ ⎧ ≥ ≤ ≤ ≤+ −≥− −= 0x,x 6x 6x 14xx2 4xx x43xz max 21 1 2 21 21 21 g)- 0x,x 4x2x 9x4x 14x3x 24x32x 12x32x x3x4z(x) maxmin/ 21 21 21 21 21 21 21 ≥ ⎪⎪ ⎪ ⎩ ⎪⎪ ⎪ ⎨ ⎧ ≥+ ≥+ ≤− ≤+ −≥− +=
File đính kèm:
- giao_trinh_ly_thuyet_co_ban_ve_quy_hoach_tuyen_tinh_chuong_1.pdf