Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 36 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
36
Dung lượng
351 KB
Nội dung
Trờng đại học Vinh Khoa ToánBàitoánquyhoạchđamụctiêu Khoá luận tốt nghiệp đại học Ngành cử nhân s phạm toán Giáo viên hớng dẫn: PGS.TS. Trần Xuân Sinh Ngời thực hiện: Lê Thị Thơng Sinh viên lớp 43A 2 - Khoa Toán Vinh - 2006 Lời nói đầu Trong hầu hết các bàitoán tối u, chúng ta thờng mới đề cập đến một mụctiêu duy nhất, mụctiêu này đợc biểu thị bởi một hàm cần làm cực đại hay cực tiểu. Chúng ta đã biết cách giải bàitoánquyhoạch tuyến tính một mục tiêu. Còn đối với những bàitoánquyhoạch nhiều mụctiêu thì sao, liệu có đợc giải quyết tơng tự hay không? Bàitoánquyhoạchđamụctiêu tuyến tính đã và đang đợc nhiều ngời quan tâm và giải quyết bởi tính phức tạp và những ứng dụng quan trọng của nó trong thực tiễn kinh tế kỹ thuật. Vấn đề ở đây không phải là tìm một phơng án để đạt đợc một mụctiêu nào đó mà công việc cần làm là tìm một phơng án làm tối u đồng thời nhiều hàm mục tiêu. Tuy nhiên, các hàm mụctiêu đó thờng xung đột nhau, do đó việc tìm một phơng án nh vậy là rất khó. Chẳng hạn nh trong thực tế các nhà sản xuất kinh doanh phải có phơng án sản xuất nh thế nào để ngoài những mụctiêu nh giảm chi phí, hạ giá thành sản phẩm ngời ta còn quan tâm đến việc duy trì lợi nhuận, ổn định lao động. Để đạt đợc đồng thời các mụctiêu nh vậy quả thực là không dễ. Chính vì cái khó của vấn đề này đã khiến chúng tôi có sự tò mò muốn quan tâm và đi sâu vào tìm hiểu. Do đó chúng tôi đã chọn đề tài Bàitoánquyhoạchđamục tiêu. Trong phạm vi của khoá luận tốt nghiệp, chúng tôi chỉ mới dám nêu mục đích của đề tài đa ra bàitoánquyhoạchđamụctiêu và một số hớng tiếp cận bài toán. Từ đó đa ra một số thuật toán để giải bài toán. Khoá luận đợc chia thành 2 chơng Chơng 1: Trình bày bàitoánquyhoạchđamụctiêu tuyến tính, các hớng tiếp cận bàitoán và nêu một số tính chất quan trọng của bài toán. Mục đích của chơng 1 là cho ngời đọc một cái nhìn tổng quát về bàitoánđamục tiêu. Chơng 2: Đa ra các bớc giải quyết bài toán. Phần đầu trình bày một số phơng pháp giải bàitoán kết hợp với sở thích của ngời nhận lời giải. Phần sau trình bày thuật toán tối u Pareto để giải quyết bài toán. 2 Khoá luận đợc thực hiện và hoàn thành tại trờng Đại học Vinh với sự giúp đỡ, hớng dẫn tận tình chu đáo của thầy giáo PGS.TS. Trần Xuân Sinh và những thầy cô giáo thuộc tổ Điều khiển khoa Toán. Tác giả xin bày tỏ lòng biết ơn chân thành đến thầy hớng dẫn và các thầy cô giáo trong khoa Toánđã tạo điều kiện giúp đỡ trong quá trình học tập và hoàn thành khoá luận này. Do thời gian và khả năng có hạn của tác giả, khoá luận không thể tránh khỏi những thiếu sót, rất mong đợc sự góp ý của ngời đọc. Vinh, 4/2006 Tác giả 3 Chơng 1 quyhoạchĐamụctiêu 1.1. Bàitoán Trong nhiều ứng dụng thuộc các ngành kinh tế - kỹ thuật, điều khiển các hoạt động sản xuất, thực tế thờng gắn liền với việc thiết kế và lập kế hoạch theo nhiều mụctiêu tối u. Chúng ta cũng thờng gặp những bàitoán liên quan đến việc phân tích, lựa chọn quyết định hớng vào nhiều mụctiêu khác nhau. Chẳng hạn trong một đơn vị sản xuất kinh doanh, chúng ta nên lựa chọn quyết định nào sao cho đạt đợc các mụctiêu nh: nhanh, nhiều, tốt, rẻ, v.v Tuy nhiên, các mụctiêu này thờng xung đột với nhau, vì thế, khó có giải pháp đạt tối u đồng thời tất cả các mụctiêu này. Trong những tình huống nh vậy, ta cần có cách đặt bàitoán và cách xử lý thích hợp. Quyhoachđamụctiêu sẽ cung cấp thêm công cụ để giải quyết vấn đề này. Bàitoánquyhoạchđamụctiêu (Multiple objective programming problem - MOP): max (min){f(X) : X D R n }, (1.1) trong đó f(X) = (f 1 (X), ., f k (X)) gọi là vectơ mụctiêu (k 2), f 1 , f 2 , ., f k là các hàm mục tiêu. D , đợc gọi là tập phơng án. X D gọi là phơng án. (Chú ý: Để tiện lợi, từ đây ta ký hiệu tập phơng án là D). Một phơng án X làm cực đại (hay cực tiểu) đồng thời các hàm mụctiêu đợc gọi là phơng án tối u (hoặc là nghiệm) của bài toán. Trong giáo trình này, chúng ta xét bàitoánquyhoạchđamụctiêu tuyến tính (Multiple objective linear programming problem - MOLP), tức là f(X) hàm tuyến tính và tập D đa diện tồi. Ta hãy nêu một ví dụ cụ thể. 1.2. Ví dụ Một nhà máy dự kiến sản xuất 3 loại sản phẩm mới A, B, C (cùng một loại vật liệu). Chi phí về vật liệu, công và lợi nhuận thu đợc cho ở bảng 1.1. 4 Biết nhà máy chỉ dùng đợc vào phần sản xuất này là 165 kg vật liệu và 130 ngày công. Lập mô hình bàitoán thể hiện kế hoạch sản xuất sao cho tổng số tiền lãi và tổng số sản phẩm lớn nhất. Bảng 1.1 Sản phẩm Vật liệu (kg) Công (ngày) Lợi nhuận (triệu đồng) A 20 7 50 B 30 6 35 C 15 3 20 Lập bài toán: Gọi x 1 , x 2 , x 3 lần lợt là số sản phẩm A, B, C. Khi đó, các điều kiện hạn chế về vật liệu và lao động là: 20x 1 + 30x 2 + 15x 3 165 7x 1 + 6x 2 + 3x 3 130 x 1 , x 2 , x 3 0. Tiền lãi thu đợc và tổng số các sản phẩm A, B, C lần lợt đợc biểu diễn là: f 1 (X) = 50x 1 + 35x 2 + 20x 3 f 2 (X) = x 1 + x 2 + x 3 . Cần tìm X = (x 1 , x 2 , x 3 ) thỏa mãn các điều kiện trên sao cho số tiền lãi và tổng số sản phẩm là lớn nhất. Ta có mô hình toán học max {f(X) = (f 1 (X), f 2 (X)) : X D}, trong đó D đợc xác định bởi 20x 1 + 30x 2 + 15x 3 165 7x 1 + 6x 2 + 3x 3 130 x i 0, i = 1, 2, 3. Ta đã biết cách giải bàitoánquyhoạch 1 mục tiêu, để giải quyết bàitoánquyhoachđamục tiêu, ta có nhiều hớng tiếp cận khác nhau. Sau đây là một số hớng tiếp cận giải bàitoánquyhoạchđamục tiêu. 1.3. Các hớng tiếp cận giải bàitoánquyhoạchđamụctiêu 1.3.1. Cách tiếp cận theo mụctiêu Nội dung của cách tiếp cận này là: - Quy định cho mỗi mụctiêu một mức bằng số xác định. 5 - Xác định các hệ số phạt do vi phạm mứcquy định trên. - Tìm phơng án đạt cực tiểu tổng độ lệch của các giá trị mụctiêu so với mứcđãquy định cho từng mục tiêu, tổng đợc tính với trọng số là các hệ số phạt đã xác định. Có 3 dạng mứcmục tiêu: - Cận dới (mức một phía): quy định giới hạn dới cho các giá trị mụctiêu cần đạt đợc. - Mức 2 phía: quy định giá trị mà mụctiêu cần đạt đợc (không hơn, không kém). - Cận trên (mức một phía): quy định giới hạn trên mà giá trị mụctiêu không đ- ợc vợt quá. Theo cách tiếp cận này, các bàitoán nhiều mụctiêu này đợc chia ra 2 loại bài toán: quyhọach nhiều mụctiêu không u tiên và quyhoạch nhiều mụctiêu có u tiên. Sau đây, ta sẽ xét riêng từng loại bài toán. a) Quyhoạch nhiều mụctiêu không u tiên Trong bàitoán này, các mụctiêuđa ra đều có tầm quan trọng nh nhau, không phân biệt cái nào hơn cái nào, để giải bàitoán này ta sử dụng các biến phụ để đabàitoán nhiều mụctiêu về bàitoánquyhoạch tuyến tính đã biết cách giải. Để cho dễ hiểu ta xét ví dụ cụ thể sau: Ví dụ: Một xí nghiệp dự kiến đa vào sản xuất 3 loại sản phẩm mới (kí hiệu là A, B, C) để thay thế cho các mẫu sản phẩm cũ sắp ngừng sản xuất. Chủ xí nghiệp muốn cân nhắc tới 3 mụctiêu chính: lợi nhuận, lao động và vốn đầu t. Cụ thể là: 1) Cần đạt lợi nhuận tối thiểu là 125 triệu đồng từ các sản phẩm mới. 2) Cố gắng duy trì đội ngũ lao động hiện có ở mức 4000 ngời. 3) Giữ mức đầu t không vợt quá 55 triệu đồng. Chủ xí nghiệp thấy rằng không có khả năng đạt đồng thời cả 3 mụctiêu này. Vì thế sau khi bàn bạc, ông quyết định đa ra các hệ số phạt nh sau: 5 trên 1 triệu đồng lợi nhuận đạt thấp hơn mứcquy định; 2 trên 100 lao động sử dụng thêm; 4 trên 100 lao động dôi d và 3 trên 1 triệu đồng vốn đầu t tăng thêm. Giả sử rằng 3 mức lợi nhuận, số lao động và vốn đầu t tỷ lệ thuận với mức sản xuất sản phẩm. Các số liệu định mức đợc cho ở bảng 1.2, cùng với các mứcmụctiêu và các hệ số phạt. 6 Bảng 1.2 Mụctiêu Sản phẩm Mứcmụctiêu Hệ số phạt A B C Lợi nhuận 12 9 15 125 (triệu đồng) 5 Lao động 5 3 4 = 40 (ì 100 lao động 2(+), 4(-) Vốn đầu t 5 7 8 55 (triệu đồng) 3 Trong bàitoán này có đủ 3 dạng mứcmục tiêu: cận dới (lợi nhuận), mức 2 phía (lao động) và cận trên (vốn đầu t). Gọi x 1 , x 2 , x 3 lần lợt là số sản phẩm A, B, C. Các mụctiêu lợi nhuận, lao động và vốn đầu t lần lợt đợc diễn đạt: 12x 1 + 9x 2 + 15x 3 125 5x 1 + 3x 2 + 4x 3 = 40 5x 1 + 3x 2 + 4x 3 55. Kí hiệu Z là lợng phạt do vi phạm các mụctiêu trên với hệ số phạt đã cho thì các mụctiêu tổng thể là tìm x 1 , x 2 , x 3 sao cho làm các cực tiểu lợng phạt này. Để diễn đạt chính xác hơn, ta thêm vào các biến số phụ y 1 , y 2 , y 3 . y 1 = 12x 1 + 9x 2 + 15x 3 125 y 2 = 5x 1 + 3x 2 + 4x 3 - 40 y 3 = 5x 1 + 3x 2 + 4x 3 55. Do mỗi y j có thể nhận giá trị dơng hay âm nên ta thay thế các biến này bởi y j = y j + - y j - , với y j + , y j - 0; j = 1, 2, 3. Mụctiêuđã nêu về mặt toán học có thể diến đạt Z = 5y 1 - + 2y 2 + + 4y 2 - + 3y 3 + min với các điều kiện: 12x 1 + 9x 2 + 15x 3 - (y 1 + - y 1 - ) = 125 5x 1 + 3x 2 + 4x 3 - (y 2 + - y 2 - ) = 40 5x 1 + 7x 2 + 8x 3 - (y 3 + - y 3 - ) = 55 x j 0, y k + 0, y k - 0, với j = 1, 2, 3; k = 1, 2, 3. Đây chính là mô hình bàitoánquyhoạch tuyến tính một mục tiêu. Dùng ph- ơng pháp đơn hình giải bàitoán trên, ta nhận đợc phơng án tối u nh sau: x 1 = 3 25 , x 2 = 0, x 3 = 3 5 y 1 + = 0, y 1 - = 0, y 2 + = 3 25 , y 2 - = 0, y 3 + = 0, y 3 - = 0. 7 Nh vậy, y 1 = 0, y 2 = 3 25 , y 3 = 0, nghĩa là mụctiêu thứ nhất và thứ 3 đợc thỏa mãn, còn mụctiêu về lao động không thỏa mãn, vợt mứcquy định là 3 25 (tức 833 ngời). Lợng phạt do vi phạm mụctiêu về lao động là Z = 16. b) Quyhoạch nhiều mụctiêu có u tiên Trong bàitoán này các mụctiêu đợc phân cấp theo các mức u tiên khác nhau, mụctiêu có mức u tiên cao hơn sẽ đợc chú ý hơn. Vì thế, sự tập trung trớc hết vào việc đạt đợc các mụctiêu này đến mức tối đa có thể, sau đó rồi xét đến các mụctiêu tiếp theo. Khi xét các mụctiêu cùng cấp u tiên, cách làm giống nh phần trên. Có 2 phơng pháp chính để xử lý các bàitoánquyhoạch nhiều mụctiêu có u tiên: - Phơng pháp tuần tự - Phơng pháp trực tiếp. Ta sẽ xét 2 phơng pháp này thông qua ví dụ cụ thể sau: Ví dụ: Không hài lòng với dự án tăng lực lợng lao động của xí nghiệp trên 20% (833/4000) nh đã thấy ở ví dụ trớc, chủ xí nghiệp quyết định xem xét lại cách đặt bàitoán nh đã nêu tóm tắt ở bảng trớc. Việc tăng số lao động sẽ gây cho xí nghiệp nhiều khó khăn, Vì thế, mụctiêu hàng đầu là tránh tăng lao động, hơn nữa, chủ xí nghiệp cũng biết rằng tăng mức đầu t cho sản xuất sản phẩm mới vợt quá 55 triệu đồng cũng là vấn đề nan giải nên tránh đầu t quá mức này cũng là mụctiêu hàng đầu cần đợc tính đến. Từ đó, chủ xí nghiệp quyết định 2 mụctiêu trên có mức u tiên số 1, còn 2 mụctiêu còn lại có mức u tiên 2. Các hệ số phạt đợc cho ở bảng 1.3, trong đó M biểu thị số dơng khá lớn (lớn hơn bất cứ số nào cần so sánh với nó). Bảng 1.3 Mụctiêu Sản phẩm Mứcmụctiêu Hệ số phạt A B C Mức 1 5 5 3 7 4 8 40 (ì100 lao động) 55 (triệu đồng) 2M 3M Mức 2 12 5 9 3 15 4 125 (triệu đồng) 40 (ì100 lao động) 5 4 * Phơng pháp tuần tự 8 Theo phơng pháp này, giải bàitoánquyhoạchđamụctiêu thông qua việc giải một dãy các bàitoánquyhoạch tuyến tính. Tổng quát nh sau: - Giai đoạn đầu ta chỉ dựa vào mô hình quyhoach tuyến tính các mụctiêu có mức u tiên 1 và áp dụng phơng pháp đơn hình để giải nh mô hình đã làm trớc đây. Nếu phơng án tối u là duy nhất thì dừng lại mà không cần xét các mụctiêu còn lại. Nếu có nhiều phơng án tối u với cùng giá trị tối u f * , chuyển sang giai đoạn 2 và đa vào mô hình mụctiêu có mức u tiên 2. - Giai đoạn 2: + Nếu f * = 0 thì mọi biến phụ biểu thị độ lệch giữa giá trị của các mụctiêu có mức u tiên 1 và mứcmụctiêu của chúng phải bằng 0, lúc đó mọi biến phụ có thể loại bỏ khỏi mô hình ở giai đoạn 2. + Nếu f * > 0 thì chỉ thêm vào mô hình đã thiết lập ở giai đoạn 1 những mụctiêu có mức u tiên 2, sau đó cần thêm vào ràng buộc phản ánh giá trị mụctiêu của giai đoạn 1 bằng f * . Sau khi giải theo thuật toán đơn hình, nếu thấy có nhiều lời giải thì tiếp tục lặp lại quá trình trên chocác mụctiêu có mức u tiên thấp hơn. Ví dụ: Xét ví dụ với số liệu cho ở bảng 1.3. ở giai đoạn 1 chỉ có 2 mụctiêu có mức u tiên 1 đợc đa vào mô hình quyhoạch tuyến tính, Vì thế, ta có thể bỏ nhân tử M ở các hệ số phạt. Gọi x 1 , x 2 , x 3 lần lợt là số sản phẩm A, B, C. Tơng tự nh bàitoán nhiều mụctiêu không u tiên, bàitoánquyhoạch tuyến tính tơng ứng có dạng f = 2y 2 + + 3y 3 + min với điều kiện 5x 1 + 3x 2 + 4x 3 - (y 2 + - y 2 - ) = 40 5x 1 + 7x 2 + 8x 3 - (y 3 + - y 3 - ) = 55 x j 0, y k + 0, y k - 0, j = 1, 2, 3; k = 2, 3. (Để dễ so sánh với mô hình mà cả 4 mụctiêu có cùng mức u tiên nh nhau chỉ số d- ới của các biến phụ đợc giữ nguyên nh cũ). Dùng phơng pháp đơn hình giải ra ta đợc lời giải của bàitoán này có y 2 + = y 3 + = 0, với f * = 0, lúc này các biến phụ y 2 + , y 3 + loại bỏ khỏi mô hình. Mô hình bàitoánquyhoạch tuyến tính ở giai đoạn 2 là f = 5y 2 - + 4y 3 - min với các điều kiện: 12x 1 + 9x 2 + 15x 3 - y 1 + + y 1 - = 125 5x 1 + 3x 2 + 4x 3 - y 2 - = 40 9 5x 1 + 3x 2 + 4x 3 - y 3 - = 55 x j 0, y k + 0, y k - 0, j = 1, 2, 3; k = 1, 2, 3. Dùng phơng pháp đơn hình giải bàitoán này ta nhận đợc nghiệm duy nhất là x 1 = 5; x 2 = 0; x 3 = 3,75 y 1 + = 0; y 1 - = 8,75; y 2 - = 0; y 3 - = 0 với f * = 43,75 Do lời giải là duy nhất nên quá trình giải kết thúc, phơng án tối u của bàitoán là X t. = (x 1 , x 2 , x 3 ) = (5; 0; 3,75). Nh vậy, ở mức u tiên 1: cả 2 mụctiêu đều thỏa mãn, còn ở mức u tiên 2 thì chỉ có mụctiêu về lao động đợc thỏa mãn, còn mụctiêu về lợi nhuận gần đạt đợc (thiếu 8,75 triệu đồng). * Phơng pháp trực tiếp Theo phơng pháp này các mụctiêu đợc đa cùng một lúc vào mô hình nhng với các hệ số phạt đợc nhân với các nhân tử khác nhau, mức u tiên càng cao thì nhân tử M càng lớn. Nh vậy, phơng pháp này khác với phơng pháp tuần tự là nó đi tìm lời giải của bàitoán nhiều mụctiêu bằng cách chỉ giải một mô hình quyhoạch tuyến tính. Ví dụ: Để dễ hình dung ta xét tiếp ví dụ với số liệu cho ở bảng 1.3. Từ bảng đó cho thấy: - Các mụctiêu trong mỗi mức u tiên đợc gắn với các hệ số phạt khác nhau. - Các hệ số phạt (2 và 3) của các mụctiêu có mức u tiên 1 đợc nhân với hệ số M khá lớn. Với các hệ số phạt này và tơng tự cách lập bàitoán nh trên, ta đi đến mô hình quyhoach tuyến tính duy nhất Z = 5y 2 - + 2My 2 + + 4y 2 - + 3My 3 + min với điều kiện 12x 1 + 9x 2 + 15x 3 - (y 1 + - y 1 - ) = 125 5x 1 + 3x 2 + 4x 3 - (y 2 + - y 2 - ) = 40 5x 1 + 7x 2 + 8x 3 - (y 3 + - y 3 - ) = 55 x j 0, y k + 0, y k - 0, j = 1, 2, 3; k = 1, 2, 3. 10 . cận để giải bài toán quy hoạch đa mục tiêu. 1.4. Một số tính chất của bài toán quy hoạch đa mục tiêu tuyến tính 1.4.1. Bài toán quy hoạch đa mục tiêu tuyến. hớng tiếp cận giải bài toán quy hoạch đa mục tiêu. 1.3. Các hớng tiếp cận giải bài toán quy hoạch đa mục tiêu 1.3.1. Cách tiếp cận theo mục tiêu Nội dung của