Phương pháp hàm phạt điểm trong và ngoài Xét bài toán tối ưu có ràng buộc

Một phần của tài liệu bài toán quy hoạch tuyến tính và thuật toán đơn hình (Trang 121 - 123)

- Xét tọa độ

3.6.1Phương pháp hàm phạt điểm trong và ngoài Xét bài toán tối ưu có ràng buộc

Xét bài toán tối ưu có ràng buộc

f(x) → min, x ∈ D (3.59)

D = {fi(x) ≤ 0, i= 1, . . . , m,} (3.60) Mục đích của phương pháp hàm phạt là thay cho hàm nục tiêu f, ta sẽ giải bài toán tối ưu không ràng buộc với hàm mục tiêuf+p, trong đó p(x)

là lượng phạt khi x vi phạm các ràng buộc. Các phương pháp hàm phạt được chia thành hai nhóm sau:

(a) Phương pháp hàm phạt điểm trong. (b) Phương pháp hàm phạt điểm ngoài.

- Với phương pháp hàm phạt điểm trong, hàm mục tiêu mới thường được xây dựng có dạng:

φ(x, α) := f(x) +α[p(f1(x)) +· · ·+p(fm(x))],

trong đó α > 0 là tham số phạt, p(y) là hàm một biến, đơn điệu thỏa mãn p(y) → +∞ khi y → −0 và p(y) > 0 với mọi y < 0. Chẳng hạn

p= −1/fi(x) hay p = −ln(−fi(x)). Nội dung phương pháp được thể hiện qua các bước sau

B1: Xuất phát từ điểm chấp nhận được x(1) ∈ D. Chọn tham số αi > 0.

Đặt chỉ số bước lặp k = 1.

B2: Tìm cực tiểu hàm không ràng buộc: φ(x, αk) = f(x) −αPm i=1

1

fi(x)

(dùng kỹ thuật tìm cực tiểu không ràng buộc) và nhận được nghiệm cực tiểu x(k).

B3: Kiểm tra x(k) có phải là nghiệm tối ưu của bài toán gốc hay không, nếu đúng dừng, nếu không chuyển bước sau.

B4: Đặt tham số phạt mới αk+1 = µαk với µ < 1 (chẳng hạn, µ = 10−1). Đặt k:=k+1 và chuyển về B2.

Định lý 3.6.32. Phương pháp giải nêu trên có tính chất sau:

(a) φ(x, α) ≥ f(x) với mọi α >0, x ∈ D.

(b) fi(x(k)) < 0, i = 1, . . . , m.

(c) {φ(x(k), αk)} hội tụ về giá trị tối ưu của bài toán (2.2.26) khi {αk} dần tới 0.

- Với phương pháp hàm phạt điểm ngoài hàm phạt được chọn là:

p= max{0, fi(x)} hoặc p = max{0,−fi(x)}.

Ví dụ 3.6.34.

f(x) = 1

3(x1 + 1)

Với các ràng buộc: f1(x) =−x1 + 1 ≤0 f2(x) = −x2 ≤0 φ(x, α) := 1 3(x1 + 1) 3 +x2 −α( 1 −x1 + 1 − 1 x2 ) →min Áp dụng điều kiện cần ta có: ∂φ ∂x1 = (x1 + 1) 2 − α (1−x1)2 = 0 ∂φ ∂x2 = (1− α x2 2 ) = 0

Từ các phương trình này ta nhận được:

x1(α) = (α1/2 + 1)21;x2(α) = α1/2

Φmin(α) = 1 3[(α

1/2 + 1)1/2 + 1]3 + 2α1/2 − 1 (adsbygoogle = window.adsbygoogle || []).push({});

(1/α)−(1/α3/2 + 1/α2)1/2

Khi α → 0 thì Φmin(α) → fmin;x1(α) = x∗1;x2(α) = x∗2. Chọn dãy α dần đến 0 ta tính được các giá trị tương ứng. x∗1 = 1, x∗2 = 0, fmin = 8/3.

Một phần của tài liệu bài toán quy hoạch tuyến tính và thuật toán đơn hình (Trang 121 - 123)