1. Trang chủ
  2. » Luận Văn - Báo Cáo

Lập trình mô phỏng một số thuật toán giải quy hoạch tuyến tính hỗ trợ việc giảng dạy bộ môn tối ưu hóa

116 156 0

Đ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

Thông tin cơ bản

Định dạng
Số trang 116
Dung lượng 2,28 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

LỜI CAM ĐOANTên tôi là: NGUYỄN VĂN PHÒNG Sinh ngày: 10/01/1987 Quê quán: Tân Phương – Thanh Thủy – Phú Thọ Nơi công tác: Trường Đại học Công nghiệp Việt Trì Tôi xin cam đoan Luận văn tốt

Trang 1

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM HÀ NỘI 2

NGUYỄN VĂN PHÕNG

LẬP TRÌNH MÔ PHỎNG MỘT SỐ THUẬT TOÁN GIẢI QUY HOẠCH TUYẾN TÍNH HỖ TRỢ VIỆC

GIẢNG DẠY BỘ MÔN TỐI ƯU HÓA

LUẬN VĂN THẠC SĨ MÁY TÍNH

HÀ NỘI, 2017

Trang 2

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI

HỌC SƯ PHẠM HÀ NỘI 2

NGUYỄN VĂN PHÕNG

LẬP TRÌNH MÔ PHỎNG MỘT SỐ THUẬT TOÁN GIẢI QUY HOẠCH TUYẾN TÍNH HỖ TRỢ VIỆC GIẢNG DẠY BỘ

MÔN TỐI ƯU HÓA

Chuyên ngành: Khoa học máy tính

Mã số: 60 48 01 01

LUẬN VĂN THẠC SĨ MÁY TÍNH

Người hướng dẫn khoa học: TS Trần Minh Tước

HÀ NỘI, 2017

Trang 3

LỜI CẢM ƠN

Trong quá trình học tập, nghiên cứu và thực hiện Luận văn Thạc sỹ, tôi

đã nhận được sự giúp đỡ, tạo điều kiện nhiệt tnh và quý báu của nhiều

cá nhân và tập thể

Trước tiên, tôi xin bày tỏ lòng biết ơn sâu sắc tới thầy giáo TS Trần MinhTước đã tận tình hướng dẫn trong suốt thời gian nghiên cứu và hoànthành luận văn này

Tôi xin chân thành cám ơn các thầy cô Khoa đào tạo Sau đại học và cácthầy cô giảng dạy đã hướng dẫn, truyền đạt trong suốt quá trình học tập

và thực hiện luận văn

Tôi cũng xin chân thành cám ơn bạn bè, đồng nghiệp thuộc lớp cao họcK19 Khoa học máy tính đã giúp tôi trong suốt quá trình học tập và hoàn thiệnluận văn này

Mặc dù tôi đã rất cố gắng hoàn thiện luận văn bằng tất cả sự nhiệt tnh

và năng lực của mình, tuy nhiên không thể tránh khỏi những thiếu sót hoặc

có những phần nghiên cứu chưa sâu Rất mong nhận được sự chỉ bảo vàthông

cảm của các Thầy cô

Trang 4

N g u y ễ n V ă n P h ò n g

Trang 5

LỜI CAM ĐOAN

Tên tôi là: NGUYỄN VĂN PHÒNG

Sinh ngày: 10/01/1987

Quê quán: Tân Phương – Thanh Thủy – Phú Thọ

Nơi công tác: Trường Đại học Công nghiệp Việt Trì

Tôi xin cam đoan Luận văn tốt nghiệp cao học ngành Máy tnh với đề tài

: “Lập trình mô phỏng một số thuật toán giải quy hoạch tuyến tính hỗ trợ việc giảng dạy bộ môn tối ưu hóa” là luận văn do cá nhân tôi thực hiện Các

kết quả tính toán, các mô hình không sao chép bất kỳ tài liệu nào khác

Hà Nội, ngày tháng năm 2017

Tác giả luận văn

Nguyễn Văn Phòng

Trang 7

LỜI CẢM ƠN

LỜI CAM ĐOAN

MỤC LỤC

MỤC LỤC

MỞ ĐẦU

1

1 Lý do chọn đề tài 1

2 Mục đích nghiên cứu 2

3 Nhiệm vụ nghiên cứu 2

4 Đối tượng và phạm vi nghiên cứu 2

5 Dự kiến đóng góp 2

6 Phương pháp nghiên cứu

2 NỘI DUNG

3 CHƯƠNG 1: CƠ SỞ LÝ THUYẾT 3

1.1 Bài toán quy hoạch tuyến tnh 3

1.1.1 Bài toán quy hoạch tuyến tnh 3

1.1.1.1 Một số mô hình thực tế

3 1.1.1.2 Bài toán quy hoạch tuyến tính tổng quát

6 1.1.1.3 Dạng chính tắc của bài toán quy hoạch tuyến tnh

6 1.1.1.4 Đưa bài toán quy hoạch tuyến tính về dạng chính tắc

7 1.1.2 Phương án cơ sở chấp nhận được

8 1.1.3 Tiêu chuẩn tối ưu 9

1.2 Thuật toán đơn hình giải bài toán quy hoạch tuyến tính

10 1.2.1 Thuật toán 10

1.2.1.1 Tư tưởng của phương pháp đơn hình

10 1.2.1.2 Biểu diễn qua cơ sở Dấu hiệu tối ưu 11

1.2.1.3 Công thức biến đổi, bảng đơn hình

13 1.2.2 Thuật toán đơn hình dạng bảng

14 1.2.1.1 Bảng đơn hình 14

Trang 8

1.2.2.2.Thuật toán đơn hình dạng bảng

14 1.3 Thuật toán đơn hình hai pha

16 1.4 Thuật toán đánh thuế

18 1.5 Tối ưu hóa rời rạc 21

1.5.1 Bài toán tối ưu rời rạc 21

1.5.2 Bài toán cái túi 22

1.5.3 Bài toán cái túi dạng 0 -1 23

Trang 9

1.5.4 Đưa bài toán quy hoạch tuyến tính nguyên về bài toán cái túi

24 1.5.4.1 Định lý 1.6 24

1.5.4.2 Đinh lý 1.7 25

CHƯƠNG 2: LẬP TRÌNH MÔ PHỎNG PHƯƠNG PHÁP ĐƠN HÌNH

27 2.1 Mô tả dữ liệu 27

2.1.1 Dữ liệu nhập 27

2.1.2 Đưa bài toán về dạng chính tắc 29

2.2 Lập trình mô phỏng thuật toán đơn hình gốc

31 2.2.1 Khởi tạo bài toán 31

2.2.2 Đưa bài toán về dạng chuẩn 33

2.2.3 Xây dựng bảng đơn hình 33

2.3 Lập trình mô phỏng thuật toán đơn hình hai pha

45 2.3.1 Khởi tạo bài toán 45

2.3.2 Xây dựng bài toán phụ (P) 46

2.3.3 Xây dựng bảng đơn hình ứng với pha 1 49

2.3.3 Giải bài toán pha 2 50

2.4 Lập trình mô phỏng thuật toán đơn hình đánh thuế

52 2.4.1 Khởi tạo bài toán 52

2.4.2 Xây dựng bài toán (M) 53

2.4.3 Giải bài toán (M) 55

CHƯƠNG 3: LẬP TRÌNH MÔ PHỎNG GIẢI QUY HOẠCH TUYẾN TÍNH NGUYÊN 58

3.1 Lập trình mô phỏng đưa bài toán quy hoạch tuyến tnh nguyên với các hệ số dương về bài toán cái túi

58 3.1.1 Mô tả dữ liệu 58

3.1.1.1 Dữ liệu nhập 58

3.1.1.2 Xử lý dữ liệu 59

3.1.2 Lập trình mô phỏng 62

3.1.2.1 Khởi tạo bài toán 62

3.1.2.2 Đưa bài toán về dạng chính tắc 63

3.1.2.3 Hợp nhất các ràng buộc 64

Trang 10

3.2 Lập trình mô phỏng thuật toán giải bài toán cái túi 67

3.2.1 Mô tả dữ liệu 673.2.1.1 Dữ liệu nhập 67

Trang 11

3.1.1.2 Xử lý dữ liệu 68

3.2.2 Lập trình mô phỏng thuật toán

70 3.2.2.1 Khởi tạo bài toán 70

3.2.2.2 Hiển thị mô hình bài toán cái túi 71

3.2.2.3 Giải bài toán cái túi theo từng bước

71 3.3 Lập trình mô phỏng giải bài toán cái túi 0 - 1 73

3.3.1 Mô tả dữ liệu 73

3.3.1.1 Dữ liệu nhập 73

3.3.1.2 Xử lý dữ liệu 74

3.3.2 Lập trình mô phỏng thuật toán

76 3.3.2.1 Khởi tạo bài toán 76

3.3.2.2 Hiển thị mô hình bài toán cái túi 77

3.3.2.3 Giải bài toán cái túi theo từng bước

77 KẾT LUẬN

80 DANH MỤC TÀI LIỆU THAM KHẢO 81

Trang 12

1

Trang 13

1 Lý do chọn đề tài

MỞ ĐẦU

Tối ưu hóa là một lĩnh vực toán học nghiên cứu lý thuyết về thuật toángiải các bài toán cực trị Nó là một phần kiến thức không thể thiếu được chonhững người làm việc trong các lĩnh vực ứng dụng khoa học và kỹ thuật.Trong lý thuyết tối ưu, một trong những lớp bài toán đầu tiên đượcnghiên cứu trọn vẹn cả về phương diện lý thuyết lẫn giải pháp là bài toán quyhoạch tuyến tính Ngay từ khi ra đời, quy hoạch tuyến tnh đã chiếm vị trí hếtsức quan trọng, nó là môn toán ứng dụng rất cần thiết đối với sinh viênthuộc nhiều ngành khoa học khác nhau Các thuật toán giải bài toán quyhoạch tuyến tính không những giúp giải quyết những bài toán quy hoạchtuyến tính tổng quát cỡ lớn mà nó còn là điểm xuất phát quan trọng trongnghiên cứu lý thuyết giải các các bài toán tối ưu tổng quát

Khi số lượng biến trong bài toán quy hoạc tuyến tính tăng lên thì việcgiải bài toán quy hoạch tuyến tính thủ công hiện nay mất rất nhiều thờigian và rất dễ nhầm lẫn Để phục vụ cho việc giảng dạy và học tập bộ môn tối

ưu hóa thì phần mềm giải bài toán quy hoạch tuyến tính là sự trợ giúp cầnthiết cho cả người dạy lẫn người học

Với mong muốn đạt được mục têu nói trên, tôi chọn "Lập trình mô phỏng một số thuật toán giải quy hoạch tuyến tính hỗ trợ việc giảng dạy bộ môn tối ưu hóa" làm đề tài nghiên cứu.

Trang 14

2 Mục đích nghiên cứu

Hệ thống lại một cách chi tiết các vấn đề lý thuyết về bài toán quyhoạch tuyến tính; xây dựng chương trình mô phỏng các phương pháp giải bàitoán quy hoạch tuyến tính

3 Nhiệm vụ nghiên cứu

 Nghiên cứu các kiến thức liên quan đến bài toán quy hoạch tuyến tính

 Nghiên cứu một số thuật toán giải bài toán quy hoạch tuyến tnh

 Lập trình mô phỏng một số thuật toán giải bài toán quy hoạch tuyến tnh

4 Đối tượng và phạm vi nghiên cứu

Đối tượng nghiên cứu: Lý thuyết tối ưu hóa

Phạm vi nghiên cứu: Các thuật toán giải bài toán quy hoạch tuyến tính

5 Dự kiến đóng góp

Sản phẩm khoa học: Hệ thống lại một số kiến thức của lý thuyết tối ưutuyến tính, giới thiệu một số thuật toán giải bài toán quy hoạch tuyến tính

Mô hình hệ thống mô phỏng thuật toán giải quy hoạch tuyến tính

Sản phẩm thực tễn: Phần mềm mô phỏng một số thuật toán giải bàitoán quy hoạch tuyến tính

6 Phương pháp nghiên cứu

 Phương pháp nghiên cứu lý luận: Đọc tài liệu về môn quy hoạch tuyến tính, các tài liệu liên quan đến tối ưu hóa, các khóa luận, luận văn tốt nghiệp

về quy hoạch tuyến tính

 Phương pháp lấy ý kiến chuyên gia: Tham khảo ý kiến của giảng viên hướng dẫn và các giảng viên dạy tối ưu hóa

 Phương pháp tổng kết kinh nghiệm: Tổng kết kinh nghiệm của bản thân qua quá trình xây dựng phần mềm giải bài toán quy hoạch tuyến tính Kinh

nghiệm của các giảng viên, sinh viên tham gia giảng dạy và học tập tối ưuhóa

Trang 15

NỘI DUNG CHƯƠNG 1: CƠ SỞ LÝ THUYẾT

1.1 Bài toán quy hoạch tuyến tính

1.1.1 Bài toán quy hoạch tuyến tnh

Nguyên liệuSản phẩm

Khi đó ta cần tìm sao cho đạt lãi lớn nhất

với điều kiện nguyên liệu:

Tức là cần giải bài toán:

( )

Trang 16

Với điều kiện:

cho trong bảng dưới đây:

Lao độngCông việc

Gọi xij là số lao động loại j làm công việc (

) Khi đó, năng suất lao động của công việc đào đất sẽ là:

Trang 17

Với điều kiện:

(Nguồn Internet)

C Bà i t o á n k hẩ u p hầ n th ứ c ă n:

Một khẩu phần thức ăn có khối lượng P, có thể cấu tạo từ n loại thức

ăn Gía mua một đơn vị thức ăn loại j là cj Để đảm bảo cơ thể phát triển

bình thường thì khẩu phần cần m loại chất dinh dưỡng Chất dinh dưỡng thứ i cần tối thiểu cho khẩu phần là b i và có trong một đơn vị thức

Trang 18

Với điều kiện:

∑ ̅̅̅̅̅̅

Trang 19

(Nguồn Internet)

Ta thấy rằng ba bài toán trên đều thuộc bài toán tổng quát

1.1.1.2 Bài toán quy hoạch tuyến tính tổng quát

Bài toán tổng quát của QHTT có dạng:

1.1.1.3 Dạng chính tắc của bài toán quy hoạch tuyến tính

Người ta thường xét bài toán QHTT dưới dạng sau:

Trang 21

Với điều kiện: ∑ ̅̅̅̅̅̅ (1.2)

và bài toán ở dạng vé c tơ như sau:

( )Với điều kiện:

1.1.1.4 Đưa bài toán quy hoạch tuyến tính về dạng chính tắc

P hương p h á p: Ta có thể đưa bài toán tuyến tính tổng quát về bài

toán tuyến tính dạng chính tắc tương đương nhờ các quy tắc sau:

 Nếu có ( ) thì đổi thành * ( )+

 Nếu có bất đẳng thức ∑ hoặc ∑

thì ta đưa thêm ẩn phụ , với hệ số hàm mục têu để có:

Trang 22

∑ hoặc ∑

 Nếu có ẩn chưa ràng buộc về dấu, thì ta có thể thay nó bởi haibiến mới và không âm, theo công thức:

 Nếu có ẩn ta đặt ( )

1.1.2 Phương án cơ sở chấp nhận được

Xét bài toán QHTT dạng chính tắc (1.1) – (1.3) , giả thiết rằng hạngcủa ma trận A là m, tức là ràng buộc cơ bản gồm m phương trìnhđộc lập tuyến tnh

Định nghĩa 1.1: Ta gọi cơ sở của ma trận A là một bộ m vectơ cột

độc lập tuyến tính { } của nó (Nguyễn Đức Nghĩa, 1996)

Giả sử ( ), trong đó * là một cơ sở của matrận Khi đó vectơ ( ) thỏa mãn:

Khi đó:

Các biến được gọi là các biến cơ sở (các biến có giá trịkhác 0)

Các biến - các biến phi cơ sở (các biến có giá trị bằng 0)

Như vậy, nếu ký hiệu ( ) ( ) thì phương án cơ sở x

tương ứng với cơ sở có thể xác định nhờ thủ tục sau:

1 Chọn một cơ sở của ma trận

2 Đặt .

3 Xác định từ hệ phương trình :

Trang 23

Định nghĩa 1.2 Phương án cơ sở được gọi là phương án cơ sở chấp nhận được (lời giải cơ sở chấp nhận được) nếu như nó là phương án chấp

nhận được (Nguyễn Đức Nghĩa, 1996)

Mệnh đề 1.1 Giả sử x là phương án cơ sở chấp nhận được của

bài toán tối ưu tuyến tính tương ứng với cơ sở B Khi đó tìm được vectơ csao cho x là phương án tối ưu duy nhất của bài toán

* +

(Nguyễn Đức Nghĩa, 1996)

Sự tồn tại phương án cơ sở chấp nhận được

Mệnh đề 1.2 Phương án chấp nhận được x là phương án cơ sở chấp

nhận được khi và chỉ khi tập vectơ cột của ma trận A ứng với các thành phần khác không của nó tạo thành một hệ vectơ độc lập tuyến tnh (Nguyễn Đức Nghĩa, 1996)

Định lý 1.1 Giả sử bài toán QHTT dạng chính tắc (1.1) – (1.3) có

phương án chấp nhận được Khi đó có ít nhất một phương án cơ sở chấp nhận được (Nguyễn Đức Nghĩa, 1996)

1.1.3 Tiêu chuẩn tối ưu

Định nghĩa 1.3 Phương án cơ sở chấp nhận được x được gọi là không

suy biến nếu như tất cả các thành phần cơ sở của nó là khác không (Nguyễn Đức Nghĩa, 1996)

Định lý 1.2 (Tiêu chuẩn tối ưu) Bất đẳng thức:

Là điều kiện đủ, và trong trường hợp không suy biến cũng là điều kiện cần để phương án cơ sở chấp nhận được x là tối ưu (Nguyễn Đức Nghĩa, 1996)

Trang 24

Định lý 1.3 (Điều kiện đủ để hàm mục tiêu không bị chặn dưới) Nếu

trong số các ước lượng của phương án cơ sở chấp nhận được x có ước lượng dương (∆ jo >0) mà ứng với nó là các thành phần của vectơ B -1 A jo là không dương thì hàm mục têu của bài toán là không bị chặn dưới (Nguyễn Đức Nghĩa, 1996)

1.2 Thuật toán đơn hình giải bài toán quy hoạch tuyến tính

1.2.1 Thuật toán

1.2.1.1 Tư tưởng của phương pháp đơn hình

Xét bài toán quy hoạch tuyến tnh dạng chính tắc

( ) ∑

∑ ̅̅̅̅̅̅

Trang 25

{Dạng véctơ của bài toán:

- Nếu bài toán có phương án thì có phương án cực biên

- Nếu bài toán có phương án tối ưu thì cũng có phương án cực biên tối

ưu Số phương án cực biên là hữu hạn

Trang 26

Do đó, ta có thể tìm một phương án tối ưu(hay một lời giải của bàitoán) trong tập hợp các phương án cực biên Tập hợp này là hữu hạn.

Vì vậy Dantzig đề xuất thuật toán đơn hình như sau:

Xuất phát từ một phương án cực biên x 0 Kiểm tra xem x 0 có là

phương án tối ưu hay chưa Nếu x 0 chưa phải là phương án tối ưu thì

tm cách cải tến nó để được phương pháp khác là x 1 tốt hơn x 0, tức là:

( ) ( )Qúa trình này lặp lại nhiều lần Vì số phương án cực biên là hữu hạnnên sau một số hữu hạn lần lặp ta sẽ tìm thấy phương án cực biên tối ưu

Để thực hiện thuật toán đề ra ở trên, ta cần làm rõ hai vấn đề sau:

1 Làm thế nào để biết một phương án cực biên đã cho là tối ưu hay chưa, tức là cần tm

« dấu hiệu tối ưu »

2 Làm thế nào để từ một phương án cực biên chưa tối ưu tm được một

phương án cực biên tốt hơn nó

(Nguồn Internet)

1.2.1.2 Biểu diễn qua cơ sở Dấu hiệu tối ưu

Giả sử có phương án cực biên với cơ sở (tức là hệ véctơ cột độclập tuyến tnh { } và ) Ta có:

∑ ∑ ( )(vì Với mỗi , ta biểu diễn vé tơ qua véc tơ cơsở

Trang 27

∑ ( ) ( )Khi đó ta có:

( ) ∑ ∑ ∑ ( )Thay (3) vào ta được :

( ) ∑( ∑ ) ∑

∑ ∑ ( ∑ )

Trang 28

Ký hiệu:

∑ ( )gọi là ước lượng của véc tơ cột theo cơ sở J và:

( ) ( ) ∑

do đó ta có dấu hiệu tối ưu sau đây:

(Nguyễn Ngọc Thắng và Nguyễn Đình Hóa, 2004)

1.2.1.3 Công thức biến đổi, bảng đơn hình

Giả sử x0 với cơ sở J là một phương án cực biên nhưng chưa phải làphương án tối ưu, khi đó k  J 0 sao cho ∆k > 0 Giả sử s là một chỉ sốtrong các chỉ số nói trên:

s  J 0 , ∆s > 0

Theo thuật toán trên ta cần cải tiến x0 để nhận được một phương

án cực biên mới tốt hơn Ta sẽ tm một phương án cực biên mới x1 ứng với cơ

sở J1 chỉ khác J một véctơ J 1  (J \ r)  s, tức là ta đưa véc tơ As vào cơ sở thay cho véc tơ Ar bị loại ra khỏi cơ sở J

Vì mọi thành phần ngoài cơ sở của một phương án cực biên đều bằng 0 nên phương án cực biên mới x1 có cơ sở J 1  (J \ r)  s là:

Trang 29

Trong đó  là một số dương sẽ được xác định sau sao cho x1 là một phương án cực biên.

(Nguyễn Ngọc Thắng và Nguyễn Đình Hóa, 2004)

1.2.2 Thuật toán đơn hình dạng bảng

1.2.1.1 Bảng đơn hình

Để thuận tiện cho việc tnh toán, người ta sắp xếp các số liệu thành một bảng gọi là bảng đơn hình như dưới đây:

Trang 30

số

Bảng 1.1 Bảng đơn hình (Nguồn Internet)

Các cột ứng với  sẽ là các véc tơ đơn vị với số 1 trên dòng với chỉ

1.2.2.2.Thuật toán đơn hình dạng bảng

Trang 31

Bước xuất phát: Tìm một phương án cực biên và cơ sở tương

ứng Tìm các hệ số khai triển và các ước lượng

Bước 1: Kiểm tra dấu hiệu tối ưu

- Nếu thì là phương án tối ưu Thuật toán kết thúc

- Nếu  thì chuyển sang bước 2

Bước 2: Kiểm tra dấu hiệu hàm mục tiêu giảm vô hạn:

Với mỗi mà thì kiểm tra các hệ số khai triển của cột tương ứng

a, Nếu có một mà tất cả các thì kết luận hàm mụctêu giảm vô hạn trên miền ràng buộc Bài toán không có lời giải hữuhạn Thuật toán kết thúc

b, mà đều tồn tại ít nhất một hệ số thì chuyểnsang bước 3

Trang 32

Bước 4:Tính các ( ) trong cơ sở mới

J 1  (J 0 \ r)  s theo các công thức trên Ghi nhận các kết quả trong

một bảng mới Quay trở lại bước 1

sau:

- Để nhận được bảng đơn hình mới từ bảng đơn hình cũ ta làm như

Trang 33

+ Thay A r bằng A s , c r bằng c s

+ Chia các phần tử trên hàng xoay ( hàng r) cho phần tử trục z rs ta

được hàng r mới gọi là hàng chuẩn.

+ Mỗi phần tử khác ngoài hàng xoay trừ đi tch của phần tử cùng hàngvới nó trên cột xoay với phần tử cùng cột với nó trên hàng chuẩnđược phần tử cùng vị trí trong bảng đơn

hình mới

(Nguyễn Ngọc Thắng và Nguyễn Đình Hóa, 2004)

1.3 Thuật toán đơn hình hai pha

Xét bài toán quy hoạch tuyến tnh dạng chính tắc

( ) ∑

Trang 34

∑ ̅̅̅̅̅̅

{ ̅̅̅̅̅

Không giảm tnh tổng quát coi b i ≥ 0 (I = 1,2,…, m) Nếu trái lại có

b i < 0, ta nhân hai vế ràng buộc thứ i với -1.

Xét bài toán phụ sau:

( )

Trang 35

∑ (

̅̅̅)

Trang 36

̅̅̅)( ̅̅̅

̅̅̅)

(P)

Các biến un+i , (i=1,2,…,m) gọi là các biến giả Nếu ký hiệu e = (1,1,

…,1)t là vectơ gồm m thành phần đều bằng 1, còn E là ma trận đơn vị cấp

m, thì ma trận của bài toán (P) là:

( )D’: {

(P)Bài toán (P) cũng là một quy hoạch tuyến tính với n + m biến Đối vớibài toán (P) ta có ngay phương án cực biên xuất phát (x,u) = (0,b) tức là

xj=0 (j = 1,2, ,n), un+i = bi (i=1,2,…,m) và cơ sở tương ứng là m cột cuối và

ma trận cơ sở Aj = E Nghĩa là rất thuận lợi để bắt đầu thủ tục đơn hình Bàitoán phụ (P) giúp ta giải quyết vấn đề phương án cực biên và cơ sởxuất phát của bàn toán ban đầu (I)

Đ ị nh l ý 1 4 Bài toán ban đầu (I) có phương án chấp nhận được khi

và chỉ khi bài toán phụ (P) có phương án tối ưu với tất cả các biến giả u n+i

đều bằng 0 (i=1,2,…,m) (Nguyễn Ngọc Thắng và Nguyễn Đình Hóa, 2004)

Quá trình giải bài toán phụ (P) gọi là pha thứ nhất trong phương pháphai pha Giả sử sau pha thứ nhất này ta nhận được phương án tối ưu(x*,u*) của bài toán phụ (P) Có 3 khả năng:

a, Nếu u*  0 thì kết luận bài toán ban đầu (I) không có phương

án

b, Nếu u* = 0 và cơ sở tương ứng gồm toàn các cột ứng với xi, khôngchứa cột nào ứng với các biến giả un+i (i =1,2,…m) Đây chính là phương

Trang 37

án cực biên và cơ sở xuất phát để bắt đầu pha thứ hai, tức là bắt đầu thủ tục đơn hình đối với bài toán ban đầu (I).

c, u* = 0 nhưng cơ sở tương ứng có chứa một số cột ứng với các biếngiả un+i Ta cần xét kỹ hơn trường hợp này Ký hiệu J x là tập các chỉ sốtrong cơ sở ứng với các biến xj, Ju là tập các chỉ số trong cơ sở ứng với các

biến giả u n+i , J = J x +J u

T r ườ n g h ợ p C 1 : Nếu trên còng có chỉ số (n+i) của bảng đơn hình cuối cùng của bài toán (P) ta tìm được một một chỉ số k ngoài cơ sở (1≤ k ≤n) sao cho z n+i,k ≠ 0 thì ta thực hiện phép đổi cơ sở với phần tử trục là z n+i,k để

đưa (n+i) ra và đưa k vào cơ sở, ta sẽ nhận được một cơ sở mới trong đó

đã được bớt đi một cột ứng với biến u Lặp lại cách làm này ta sẽ loại hếtđược các cột ứng với các biến giả u và sẽ nhận được cơ sở xuất phát chobài toán ban đầu (I) gồm toàn các cột của ma trận A

T r ườ n g h ợ pC 2 : Trên dòng chỉ số (n+i) của bảng đơn hình cuối cùng của bài toán (P) không tìm được chỉ số k ngoài cơ sở (1≤ k ≤n) mà z n+i,k ≠ 0 thì

ta kết luận rằng dòng i của ma trận A là tổ hợp tuyến tính của các dòngcòn lại Ta có thể xóa dòng này đi và đồng thời có thể loại bỏ luôn biến giả

un+i

Tóm lại, trong cả hai trường hợp C1 và C2 ta đều loại được các cộtứng với các biến giả u ra khỏi cơ sở để nhận được một cơ sở chỉ gồm toàncột ứng với biến x Đây là cơ sở xuất phát để giải quyết bài toán ban đầu

1.4 Thuật toán đánh thuế

Phương pháp hai pha có nhược điểm là quá trình tính toán không liêntục mà chia thành hai giai đoạn tách biệt Hàm mục têu là khác nhau nênmột số kết quả tnh ra không thể kế thừa được Phương pháp đánhthuế

Trang 38

khắc phục được nhược điểm này bằng cách kết hợp cả hai giai đoạn với việc thay thế bài toán ban đầu bằng bài toán (M) sau đây:

( ) ∑ (∑ )

∑ (

̅̅̅)

Trang 39

DM: { ( ̅̅

̅̅̅)( ̅̅̅

̅̅̅) Phương án tối ưu đó đồng thời

đạt cực tiểu hàm f(x) = c t x = ∑ trên miền D = {x: Ax = b, x ≥ 0} tức

là cho x* là phương án tối ưu của bài toán ban đầu Mặt khác đối với

bài

toán (M) có đầy đủ điều kiện để thực hiện thủ tục đơn hình vì ta có ngay

phương án xuất phát là (0,b) với cơ sở là các vectơ cột đơn vị ứng với các

u n+i (ma trận cơ sở là E).

Trang 40

Vì hàm mục têu của bài toán (M) biểu diễn tuyến tính qua hàm mục têu của bài toán (I) và bài toán (P).

a, Coi ( ) nếu ( ) , hoặc ( )

b, Coi ( ) ( ) nếu ( ) ( ) hoặc ( ) ( )

Cũng vì thế trong bảng đơn hình bài toán (M), dòng cuối cùng ghi các

Ngày đăng: 21/01/2019, 15:07

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w