BÀI GIẢNG QUY HOẠCH TUYẾN TÍNH

53 582 4
BÀI GIẢNG 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

Một nhà máy muốn sản xuất ra n loại sản phẩm từ m loại nguyên liệu. Biết: là lượng nguyên liệu loại i cần để sản xuất ra một đơn vị sản phẩm loại j; là lượng nguyên liệu loại i hiện có của nhà máy; là tiền lãi từ việc bán một đơn vị sản phẩm loại j;

BỘ CÔNG THƯƠNG TRƯỜNG CAO ĐẲNG CÔNG NGHIỆP TUY HÒA KHOA GIÁO DỤC ĐẠI CƯƠNG  BÀI GIẢNG QUY HOẠCH TUYẾN TÍNH (DÀNH CHO HỆ TÍN CHỈ) Giáo viên thực hiện: Nguyễn Thị Mộng Tuyền 1 CHƯƠNG I: BÀI TOÁN QUI HOẠCH TUYẾN TÍNH 1.1 Bài toán quy hoạch tổng quát Giả sử ( ) ( ) 1 1 2 , , ; , , : 1, , 1, n n n i j x x x f g h i m j m= ∈ → = =¡ ¡ ¡ là những hàm n biến. Giả sử n X ⊂ ¡ . Bài toán quy hoạch tổng quát có dạng: Tìm vectơ ( ) 1 , , t n x x x= sao cho ( ) minf x → (hoặc max ) (1) với các điều kiện: Bài toán (1)-(4) được kí hiệu là (P). Hàm f(x) được gọi là hàm mục tiêu (objective function ), các hàm , i j g h gọi là các hàm ràng buộc (constraint function ), tập các vectơ n x X∈ ⊂¡ thỏa mãn các ràng buộc (2),(3) gọi là tập phương án hay miền chấp nhận được của bài toán trên. Phương án 0 x thỏa mãn ( ) ( ) 0 f x f x≤ với mọi n x X∈ ⊂¡ đối với bài toán min ( ( ) ( ) 0 f x f x≥ với mọi n x X∈ ⊂¡ đối với bài toán max)là phương án tối ưu hay lời giải của bài toán, khi đó ( ) 0 f x là giá trị tối ưu. Nếu hàm mục tiêu f và các ràng buộc , i j g h đều là các hàm tuyến tính thì (P) được gọi là bài toán quy hoạch tuyến tính (QHTT). 1.2. Một số ví dụ dẫn đến bài toán QHTT 1.2.1 Bài toán lập kế hoạch sản xuất Một nhà máy muốn sản xuất ra n loại sản phẩm từ m loại nguyên liệu. Biết: ij a là lượng nguyên liệu loại i cần để sản xuất ra một đơn vị sản phẩm loại j; i b là lượng nguyên liệu loại i hiện có của nhà máy; j c là tiền lãi từ việc bán một đơn vị sản phẩm loại j; Giáo viên thực hiện: Nguyễn Thị Mộng Tuyền 2 1 2 ( ) 0, 1,2, , (2) ( ) 0, 1,2, , (3) (4) i j n g x i m h x j m x X  ≤ =  = =   ∈ ⊂  ¡ ( 1 ,1i m j n≤ ≤ ≤ ≤ ). Hãy xây dựng kế hoạch sản xuất cho nhà máy đem lại tổng lợi nhuận lớn nhất. Gọi j x là lượng sản phẩm loại j mà nhà máy cần sản xuất ( 0, 1, j x j n≥ = ). Kế hoạch sản xuất của nhà máy là vectơ ( ) 1 , , n x x x= . ij 1 n j j a x = ∑ - tổng nguyên liệu loại i theo kế hoạch sản xuất x ; 1 n j j j c x = ∑ - tổng lợi nhuận thu được theo kế hoạch sản xuất x . Khi đó mô hình toán học của bài toán trên là: Tìm ( ) 1 , , n x x x= sao cho: ( ) 1 ax n j j j f x c x m = = → ∑ và thỏa mãn điều kiện ij 1 , 1, 0, 1, n j i j j a x b i m x j n =  ≤ =    ≥ =  ∑ 1.2.2 Bài toán lập thực đơn Có n loại thực phẩm j T ( nj ,1= ), biết rằng mỗi đơn vị j T chứa ij a đơn vị chất i ( mi ,1= ) và có giá thành là j c đơn vị tiền. Hãy lập thực đơn sao cho bữa ăn phải bảo đảm có ít nhất b i đơn vị chất i ( mi ,1= ) mà có giá thành rẻ nhất. Lập bài toán: Gọi j x là số đơn vị thực phẩm j T ( nj ,1= ) sử dụng cho bữa ăn ( ) 0 j x ≥ và tổng số đơn vị chất i có trong bữa ăn là ),1( 1 nibx ij a i m j j =≥ ∑ = . Giá thành của bữa ăn là ∑ = n j jj xc 1 . Bài toán đặt ra là tìm ( ) 1 , , n x x x= sao cho ( ) 1 min n j j j f x c x = = → ∑ và thỏa mãn điều kiện Giáo viên thực hiện: Nguyễn Thị Mộng Tuyền 3 1 , 1, 0, 1, m ij j i j j a x b i m x j n =  ≥ =    ≥ =  ∑ 1.2.3 Bài toán vận tải Có m kho hàng kí hiệu 1 , , m A A (điểm phát) cung cấp cùng một mặt hàng nào đó với khối lượng có khả năng cung cấp tương ứng là 1 , , m a a và n cửa hàng (nơi tiêu thụ) kí hiệu 1 , , n B B có nhu cầu tiêu thụ lượng hàng tương ứng 1 , , n b b . Để thỏa mãn nhu cầu các điểm thu thì tổng số lượng các điểm phát ít nhất phải bằng hay lớn hơn tổng yếu cầu các điểm thu: ∑∑ == ≥ n j j m i i ba 11 . Biết rằng cước phí vận chuyển một đơn vị hàng (tấn, cái…) từ nơi phát i A tới nơi nhận j B là ij c đơn vị tiền. Ma trận ( ) ij m n C c × = gọi là ma trận cước phí. Hãy lập phương án vận chuyển sao cho các điểm thu đều nhận đủ hàng và chi phí vận chuyển là ít nhất. Xây dựng bài toán: Gọi ij x là lượng hàng chuyển từ kho i A tới điểm thu j B . Tất nhiên ta phải có ij 0x ≥ ( 1, , 1,i m j n= = ). Tổng lượng hàng chuyển từ điểm phát i A tới mọi điểm nhận j B là ( ) 1 1, n ij j x i m = = ∑ . Tổng lượng hàng nhận tại điểm j B từ các điểm phát i A là ( ) 1 1, m i j i x j n = = ∑ . Tổng cước phí phải trả là ∑∑ = = m i n j jiji xc 1 1 . Bài toán đặt ra là: Tìm ( ) ij x x= ( ) 1, , 1,i n j m= = sao cho ( ) 1 1 min m n i j i j i j f x c x = = = → ∑∑ và thỏa mãn các điều kiện Giáo viên thực hiện: Nguyễn Thị Mộng Tuyền 4 ( ) ( ) ( ) n ij j=1 m ij i=1 ij 1, 1, 0 1, ; 1, i j x a i m x b j n x i m j n  ≤ =     = =    ≥ = =    ∑ ∑ 1.3. Bài toán QHTT tổng quát 1.3.1. Các dạng của bài toán quy hoạch tuyến tính Bài toán QHTT có ba dạng là dạng tổng quát, dạng chuẩn tắc và dạng chính tắc. a. Dạng tổng quát (GP) Tìm vectơ ( ) 1 , , t n x x x= sao cho ( ) ( ) 1 min max n j j j f x c x = = → ∑ với các điều kiện 1 1 1 2 1 2 1 ( 1, , ) ( 1, , ) ( 1, , ) n ij j i j n ij j i j n ij j i j a x b i m a x b i m m a x b i m m = = =  ≥ =     ≤ = +    = = +    ∑ ∑ ∑ và các ràng buộc về dấu ( ) ( ) ( ) 1 1 2 2 0 1, 0 1, 1, j j j x j n x j n n x j n n  ≥ =   ≤ = +    ∈ = +  ¡ b. Dạng chuẩn tắc (NP) Tìm vectơ ( ) 1 , , t n x x x= sao cho ( ) 1 min n j j j f x c x = = → ∑ với các điều kiện Giáo viên thực hiện: Nguyễn Thị Mộng Tuyền 5      =≥ =≤ ∑ = ),1(0 ),1( 1 njx mibxa j n j ijij Chú ý: Mọi ràng buộc là bất đẳng thức cùng chiều. c. Dạng chính tắc (CP) Tìm vectơ ( ) 1 , , t n x x x= sao cho ( ) 1 min n j j j f x c x = = → ∑ với các điều kiện ( ) ( ) 1 , 1, 0 0 ( 1, ) n ij j i i j j a x b i m b x j n =  = = ≥    ≥ =  ∑ 1.3.2. Biến đổi bài toán QHTT về dạng chuẩn hoặc dạng chính tắc Mọi bài toán QHTT tổng quát có thể biến đổi một cách tương đương về bài toán dạng chuẩn tắc hoặc dạng chính tắc. Do vậy, không mất tính tổng quát ta chỉ cần xem xét bài toán dạng chuẩn tắc hoặc dạng chính tắc. Cách chuyển bài toán tổng quát về bài toán chính tắc: a. Đưa bài toán cực đại về bài toán cực tiểu Vì ( ) { } ( ) { } max : min :f x x D f x x D∈ = − − ∈ nên bài toán ( ) { } max :f x x D∈ có thể thay bằng bài toán tương đương sau ( ) { } min :f x x D− ∈ . Khi đó 0 x là phương án tối ưu của bài toán min thì 0 x cũng là phương án tối ưu của bài toán max và min max f g= − . b. Chuyển ràng buộc bất đẳng thức về ràng buộc đẳng thức • 1 1 ; 0 n n ij j i ij j n i i n i j j a x b a x x b x + + = = ≤ ⇒ + = ≥ ∑ ∑ • 1 1 ; 0 n n ij j i ij j n i i n i j j a x b a x x b x + + = = ≥ ⇒ − = ≥ ∑ ∑ (các biến n i x + được gọi là các biến bù) c. Chuyển ràng buộc về dấu Giáo viên thực hiện: Nguyễn Thị Mộng Tuyền 6 • j j 0 ; 0 j j x x x x ′ ′ ≤ ⇒ = − ≥ • ; 0; 0 j j j n j j n j x x x x x x + + ′ ′ ′ ′ ∈ ⇒ = − ≥ ≥¡ . Ví dụ. Đưa bài toán sau về dạng chính tắc: Tìm ( ) 1 2 3 , ,x x x x= sao cho ( ) 1 2 2 minf x x x= − → với các điều kiện 1 2 3 1 2 3 1 2 3 2 3 2 5 2 2 3 4 0, 0 x x x x x x x x x x x − + ≤   − − ≥   + + =   ≥ ≥  Thay 1 4 5 x x x= − , với 4 5 0, 0x x≥ ≥ và thêm 2 biến phụ 6 7 , 0x x ≥ , bài toán trên tương đương với bài toán dạng chính tắc tìm ( ) 2 3 4 5 6 7 , , , , ,x x x x x x x= sao cho ( ) ( ) 2 4 5 2 minf x x x x= − + − → với các điều kiện 2 3 4 5 6 2 3 4 5 7 2 3 4 5 2 2 2 2 2 3 4 0, 1,7 j x x x x x x x x x x x x x x x j − + + − + =   − − + − − =   + + − =   ≥ =  Ví dụ. Đưa bài toán sau về dạng chính tắc Tìm ( ) 1 2 3 , ,x x x x= sao cho 1 2 3 2 axx x x m+ − → với các điều kiện 1 2 3 1 2 1 2 3 2 5 1 0, 0, x x x x x x x x + − ≤   − ≥   ≥ ≥ ∈  ¡ Dạng chính tắc của bài toán trên là: ( ) 1 2 4 5 2 ming x x x x x= − − + − → với các điều kiện Giáo viên thực hiện: Nguyễn Thị Mộng Tuyền 7 1 2 4 5 6 1 2 7 1 2 4 5 6 7 2 5 1 , , , , , 0 x x x x x x x x x x x x x x + − + + =   − − =   ≥  1.4. Một số khái niệm trong giải tích lồi Định nghĩa. Đoạn thẳng với 2 đầu mút , n a b∈¡ được kí hiệu và xác định như sau: [ ] ( ) { } , : 1 0 1a b a b λ λ λ = + − ≤ ≤ . Định nghĩa. Tập hợp n C ⊂ ¡ được gọi là tập hợp lồi nếu lấy 2 điểm bất kì ,a b C∈ thì [ ] ,a b C⊂ . Định nghĩa. Cho tập lồi n C ⊂ ¡ . Điểm x C ∈ được gọi là điểm cực biên (đỉnh) của tập lồi C nếu x không là điểm trong của bất kì đoạn thẳng nào có 2 đầu mút trong C . Định nghĩa. Một tập hợp n P ⊂ ¡ được gọi là một tập lồi đa diện nếu nó là giao của một số hữu hạn các nửa không gian. Nói cách khác một tập lồi đa diện là tập nghiệm của một hệ hữu hạn các bất đẳng thức tuyến tính 11 1 12 2 1 1 21 1 22 2 2 2 1 1 2 2 n n n n m m mn n m a x a x a x b a x a x a x b a x a x a x b + + + ≤   + + + ≤     + + + ≤  L L M Tập lồi đa diện bị chặn thì gọi là đa diện lồi. 1.5. Các tính chất của bài toán QHTT Quy hoạch tuyến tính là một trong những lớp bài toán tối ưu quan trọng và được ứng dụng rộng rãi nhất trong thực tiễn. Quy hoạch tuyến tính bắt nguồn từ những nghiên cứu của nhà toán học người Nga Kantorovich L.V. trong các công trình về bài toán kế hoạch hóa sản xuất Công bố năm 1939. Năm 1947 nhà toán học người mỹ G. Dantzig đã đưa ra phương pháp đơn hình đã được chạy trên máy tính điện tử ở Mỹ. Ngày nay có nhiều phần mềm dùng để giải quyết các bài toán quy hoạch tuyến tính như Maple, Matlab,… Trong phần này chúng tôi chỉ trình bày một số tính chất cơ bản của bài toán QHTT để từ đó chuẩn bị cơ sở cho việc trình bày phương pháp đơn hình ở bài sau. 1.5.1. Bài toán QHTT dạng tổng quát Giáo viên thực hiện: Nguyễn Thị Mộng Tuyền 8 Ta có các tính chất sau: a. Tập các phương án của bài toán là một tập lồi đóng. b. Tập các phương án tối ưu của bài toán là một tập lồi (có thể bằng rỗng). c. Nếu tập các phương án là bị chặn khác rỗng (tức nó là đa diện) thì bài toán có phương án tối ưu. 1.5.2. Bài toán QHTT dạng chính tắc Kí hiệu ( ) ( ) 1 1 1 ij , , , , , n m n m n b x c c c b A a x b x ×      ÷  ÷ = = = =  ÷  ÷  ÷  ÷     M M Bài toán được viết lại như sau: Tìm vectơ ( ) 1 , , t n x x x= sao cho ( ) , minf x c x= → với các điều kiện 0 A x b x =   ≥  Giả thiết ,m n RankA m≤ = . Kí hiệu 1 , 1, j j mj a A j n a    ÷ = =  ÷  ÷   M . Định nghĩa. Phương án cực biên là phương án mà là điểm cực biên. Định lý. Giả sử ( ) 1 , , n x x x= là phương án của bài toán (CP). Đặt { } { } 1,2, , 0 x j J J j n x= = ∈ > . Khi đó x là một phương án cực biên khi và chỉ khi các vectơ cột của A ứng với các thành phần dương của x { } j A j J∈ là độc lập tuyến tính. Ví dụ. Cho bài toán QHTT dạng chính tắc với các điều kiện Giáo viên thực hiện: Nguyễn Thị Mộng Tuyền 9 1 2 3 1 2 4 0 0, 1,2,3 i x x x x x x i + + =   − =   ≥ =  Hãy cho biết các vecto ( ) ( ) ( ) 1 2 3 2,2,0 ; 0,0,4 ; 1,1,2x x x= = = có phải là các phương án cực biên không? Hướng dẫn. Kiểm tra trực tiếp, ta thấy các vecto trên thỏa mãn điều kiện của bài toán nên là các phương án của bài toán. Ta có thể kiểm tra với ba hệ { } { } { } 1 2 3 1 2 3 , ; ; , ,A A A A A A trong đó 1 2 1 1 1 1 ; ; 1 1 0 A A A       = = =       −       , chỉ có hai hệ { } { } 1 2 3 , ;A A A là độc lập tuyến tính. Do đó 1 2 ,x x là phương án cực biên. Chú ý. Nếu ma trận A có chứa ma trận đơn vị cấp k thì ta có ngay phương án cực biên 0 x của bài toán. Từ định lý trên ta có các hệ quả sau: Hệ quả . Số các thành phần dương của một phương án cực biên tối đa là bằng m, trong trường hợp số thành phần dương của phương án cực biên là m thì phương án cực biên đó gọi là không suy biến, ngược lại là phương án cực biên suy biến. Hệ quả . Tập các phương án cực biên là hữu hạn (có thể bằng rỗng). Ví dụ. Tìm phương án cực biên không suy biến của bài toán QHTT với các ràng buộc sau 1 2 3 1 2 3 3 2 3 6 2 4 0, 1,2,3 i x x x x x x x i − + =   − + − =   ≥ =  Giải. Vì bài toán chỉ có hai ràng buộc chính biến nên số thành phần dương của một phương án cực biên nhiều nhất chỉ là 2. Thay 1 0x = vào hệ trên và giải hệ, ta được 2 3 9 , 5 2 x x= = . Thay 2 0x = vào hệ trên và giải hệ thì hệ vô nghiệm. Thay 3 0x = vào hệ trên và giải hệ, ta được 1 2 9 5, 2 x x= = . Giáo viên thực hiện: Nguyễn Thị Mộng Tuyền 10 [...]... phương án cực biên đã có ở bài toán qui hoạch tuyến tính, mà bài toán vận tải cũng là một bài toán qui hoạch tuyến tính nên cũng có phương án cực biên của nó, trong bài toán quy họach tuyến tính như đã biết trước khi giải ta phải có ở dạng chính tắc và ma trận A phải có ma trận đơn vị chỉ để bảo đảm có m cột độc lập tuyến tính, thực chất chỉ cần ma trận A có m cột độc lập tuyến tính là đủ không cần phải... Đối ngẫu của bài toán đối ngẫu chính là bài toán gốc 3.2 Các định lý đối ngẫu 3.2.1 Định lý đối ngẫu yếu Định lý Xét bài toán QHTT (P) và bài toán đối ngẫu (D) của nó Nếu x, y lần lượt là phương án bất kỳ của bài toán QHTT gốc và đối ngẫu thì g ( y) ≤ f ( x) Hệ quả a Nếu bài toán gốc (P) có hàm mục tiêu không bị chặn dưới thì bài toán đối ngẫu (D) không có phương án b Ngược lại, nếu bài toán đối ngẫu... về việc giải bài toán M -lớn mà bài toán này có ngay phương án cực biên xuất phát là ( 0, b ) với cơ sở đơn vị Có các trường hợp sau xảy ra: • Khi bài toán M -lớn có phương án tối ưu ( x*, 0 ) thì x * là lời giải cho bài toán gốc (CP) • Khi bài toán M -lớn có phương án tối ưu ( x*, t *) với t* ≠ 0 bài toán gốc (CP) không có phương án • Khi bài toán M -lớn không có phương án tối ưu thì bài toán gốc... với các điều kiện  x1 + x2 + x3 ≤ 7  2 x + 3 x + 3 x ≤ 12  1 2 3  3x1 + 6 x2 + 5 x3 ≤ 24  x1,2,3 ≥ 0  Giáo viên thực hiện: Nguyễn Thị Mộng Tuyền 25 CHƯƠNG III: BÀI TOÁN QUY HOẠCH TUYẾN TÍNH ĐỐI NGẪU 3.1 Bài toán đối ngẫu Cho các bài toán QHTT:  f ( x ) = c1 x1 + c2 x2 + + cn xn → min    a x + a x + + a x ≥ b ( i ∈ I ) i1 i 1   i1 1 i1 1  ai1 x1 + ai1 x1 + + ai1 x = bi ( i ∈ I 2 )... ∈ J  mj m i ( 3)   1 j 1 2 j 2  y ≥ 0 i∈I ( 1)  i   y ∈ ¡ ( i ∈ I ) 2  i   yi ≤ 0 ( i ∈ I 3 )  Người ta gọi bài toán (P) là bài toán gốc và (D) là bài toán đối ngẫu của bài toán (P) Qui tắc lập bài toán đối ngẫu: Bài toán gốc n f ( x) = ∑ c j x j → min j =1 • • • Bài toán đối ngẫu m g ( y ) = ∑ bi y i → max Ràng buộc thứ i ≥ bi Ràng buộc thứ i = bi Ràng buộc thứ i ≤ bi • Dấu x j ≥ 0 •... M -lớn Định lý (quan hệ giữa bài toán gốc và bài toán M -lớn) • Nếu bài toán gốc (CP) có phương án thì mọi phương án cực biên tối ưu ( x, t ) của bài toán M -lớn phải có t = 0 Giáo viên thực hiện: Nguyễn Thị Mộng Tuyền 21 • Bài toán (CP) có phương án tối ưu x khi và chỉ khi bài toán M -lớn có phương án tối ưu ( x, 0 ) Nhận xét 1 Định lý trên cho phép ta đưa việc giải bài toán gốc (chưa biết phương... trên thì bài toán gốc (P) không có phương án c Nếu x, y lần lượt là hai phương án chấp nhận được của bài toán QHTT gốc và đối ngẫu và g ( y ) = f ( x ) thì x, y lần lượt là phương án tối ưu của bài toán (P) và (D) Giáo viên thực hiện: Nguyễn Thị Mộng Tuyền 27 3.2.2 Định lý đối ngẫu mạnh Định lý Cho bài toán gốc (P) và bài toán đối ngẫu (D) của nó Khi đó, nếu bài toán này có phương án tối ưu thì bài toán... thuyết thuật toán đơn hình ở phần sau Tóm lại: Đối với bài toán QHTT thì có các khả năng sau có thể xảy ra TH1 Bài toán không có phương án TH2 Bài toán có phương án nhưng hàm mục tiêu không bị chặn dưới (không có phương án tối ưu) TH3 Bài toán có phương án và hàm mục tiêu bị chặn dưới khi và chỉ khi bài toán có phương án tối ưu Bài tập chương 1 Bài 1 Một xí nghiệp dệt dự định sản xuất 3 loại vải A,... j , j = 1, n được tính ngay trên bảng đơn hình Sau khi tính các ước lượng ta tiến hành kiểm tra tính tối ưu, tính không bị chặn của hàm mục tiêu Nếu thỏa một trong hai tính trên thì thuật toán kết thúc, còn không ta xây dựng một phương án cực biên mới ứng với bảng đơn hình mới Để xây dựng bảng đơn hình tiếp theo ta lần lượt làm các việc sau: • Tìm cột xoay: Nếu phương án chưa thỏa tính tối ưu thì cột... lập bài toán (M – lớn) Xét bài toán QHTT dạng chính tắc (CP): f ( x ) = c, x → min với các điều kiện  Ax = b  x ≥ 0 giả thiết b ≥ 0 Với M > 0 , ta xét bài toán sau (gọi là bài toán ( M -lớn)): m g ( x, t ) = c, x + M ∑ ti → min i =1 với các điều kiện  Ax + t = b   ( x, t ) ≥ 0  trong đó ti , i = 1, m được gọi là các biến giả, M là số dương rất lớn 2.5.2 Mối liên hệ giữa bài toán gốc và bài

Ngày đăng: 20/01/2015, 10:24

Từ khóa liên quan

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

Tài liệu liên quan