Giải bài toán quy hoạch tuyến tính dạng chính tắc bằng thuật toán đơn hình hai pha

MỤC LỤC

Thuật toán đơn hình giải bài toán QHTT Xét bài toán chính tắc

Bước 1: Tìm phương án cực biên không thoái hóa x, tìm cơ sở xuất phát B và tìm chỉ số của cơ sở xuất phát. Khi giải bài toán QHTT, nếu bài toán ban đầu chưa có một phương án cực biên xuất phát hay trong ma trận hệ số A chưa có m cột vectơ đơn vị nên chưa thể giải bằng phương pháp đơn hình. Để giải bài toán trên ta có 2 phương pháp cơ bản để tìm phương án cực biên xuất phát đó là: phương pháp bài toán M và phương pháp hai pha.

Phương pháp M được học kĩ trong học phần quy hoạch tuyến tính nên trong khóa luận này tôi trình bày phương pháp hai pha. Phương pháp hai pha (hay là thuật toán đơn hình hai pha ) là phương pháp để giải bài toán chính phân ra hai giai đoạn (hay hai pha). Pha thứ hai nhằm giải bài toán chính xuất phát từ phương án cực biên (nếu có) đã tìm được ở pha thứ nhất.

Thuật toán đơn hình dùng để giải bài toán QHTT dạng chính tắc ở dạng bài toán chuẩn, tuy nhiên trong thực tế hầu như không gặp bài toán chuẩn như vậy. Sau đây ta sẽ trình bày phương pháp hai pha để giải bài toán QHTT dạng chính tắc, dạng tổng quát. Điều kiện b0 luôn có thể thực hiện được vì bi 0 thì chỉ cần nhân hai vế của phương trình tương ứng -1 và ma trận ràng buộc A có cỡ (m,n) và có một cơ sở đơn vị.

Vì bài toán phụ là bài toán chuẩn nên có thể tiến hành giải nó bằng thuật toán đơn hình, sau một số hữu hạn bước thì dấu hiệu tối ưu xuất hiện và ta thu được phương án cực biên tối ưu là (x,xnj)(x1,x2,..,xnm). Vì (x,0) là phương án cực biên của bài toán phụ nên x là phương án cực biên của bài toán chính. Tình huống 1: Nếu mọi vectơ trong cơ sở của (x,0) gồm toàn các vectơ cột của ma trận A thì ta xóa bỏ các cột trong bảng đơn hình cuối cùng kể từ xn1 đến cột xnm, nghĩa là xóa bỏ các cột ứng với ẩn giả.

Đồng thời phải thay đổi dòng trên cùng, hệ số của hàm mục tiêu trong bài toán phụ trở thành hệ số của hàm mục tiêu trong bài chính và cột cB cũng phải thay đổi theo cho phù hợp, sau đó tính lại các ước lượng để kiểm tra x. Tình huống 2: Nếu trong cơ sở của (x,0)vẫn còn p vectơ giả (p1) thì ta xóa bỏ ngay các cột ứng với các ẩn giả còn lại, điều chỉnh các hệ số của hàm mục tiêu ghi ở dòng trên cùng và cột ở cB sao cho phù hợp. Lưu ý rằng, hệ số của ẩn giả trong hàm mục tiêu ứng với p ẩn giả nói trên ta cho bằng 0, sau đó tính lại các ước lượng để kiểm tra x. Tiếp tục dùng thuật toán đơn hình để giải bài toán chính xuất phát từ phương án cực biên x, trong bảng đơn hình cuối cùng sẽ xuất hiện p vectơ giả. + Nếu trong ma trận A ở bài toán chính đã có sẵn một vài vectơ cột là các vectơ đơn vị khác nhau thì ta chỉ cần đưa vào bài toán phụ một số ẩn giả vừa đủ để có đúng m vectơ đơn vị. + Nếu ở một bước nào đó một vectơ giả bị loại khỏi cơ sở thì thì các bước sau ta xóa bỏ cột tương ứng. Ví dụ 6: Giải bài toán sau bằng phương pháp hai pha:. Ta có bảng đơn hình:. Phương án xB. Ở bước thứ 3, dấu hiệu tối ưu xuất hiện và phương án tối ưu của bài toán là ). Chú ý: Ở bước thứ 2 đã xuất hiện bài toán phụ, nhưng trong cơ sở của phương án tối ưu ấy có một vectơ giả là A7.

Bảng đơn hình:
Bảng đơn hình:

Ý nghĩa hình học và ý nghĩa trực quan của thuật toán đơn hình Xét bài toán QHTT

Ý nghĩa hình học

Bước 2: Tính tọa độ các đỉnh của D (hay là tìm các phương án cực biên) Bước 3: Thay tọa độ các đỉnh của D vào hàm mục tiêu và chọn đỉnh có ).

MỘT SỐ VẤN ĐỀ HẬU TỐI ƯU CỦA THUẬT TOÁN ĐƠN HÌNH Trong chương 1, ta đề cập đến thuật toán và mối liên hệ giữa hai thuật toán

Tính hữu hạn của thuật toán đơn hình 1. Hiện tƣợng thoái hóa và cách khắc phục

Thuật toán đơn hình là việc biến đổi từ điểm cực biên x này sang điểm cực biên x' khác mà thực chất là đi từ cơ sở B này sang cơ sở B' khác không xấu hơn. Nếu bài toán không thoái hóa và không gặp phải hiện tượng xoay vòng thì chúng ta không bao giờ gặp lại một cơ sở đã đi qua. Vì vậy thuật toán đơn hình sẽ kết thúc sau một số hữu hạn bước.

Tìm tập phương án tối ưu của bài toán QHTT

    Điều kiện cần: Giả sử x là phương án tối ưu duy nhất của bài toán QHTT. X2  , vì các thành phần còn lại của mỗi phương án x đều được xác định bằng hệ Cramer . j Với mọi xjlà ẩn tự do  bài toán có duy nhất phương án tối ưu.

    j Với mọi xjlà ẩn tự do  bài toán có duy nhất phương án tối ưu. Nếu không tồn tại r(do tất cả các phần tử trên cột k đều 0 ) thì ta có vectơ chỉ phương của cạnh vô hạn tối ưu. Từ đó, tập phương án tối ưu của bài toán dạng chính tắc tương ứng là tập.

    Điều đó chứng tỏ hàm mục tiêu có thể nhận giá trị nhỏ tùy ý trên tập phương án, tức là hàm mục tiêu không bị chặn. - Nếu xuất hiện dấu hiệu hàm mục tiêu không bị chặn ( tồn tại j sao cho. Bổ đề: Nếu Ai:iJ là một hệ m vectơ độc lập tuyến tính trong Rm và.