- Xét tọa độ
3.5. CÁC PHƯƠNG PHÁP GIẢI BÀI TOÁN QUY HOẠCH PHI TUYẾN CÓ RÀNG BUỘC
PHI TUYẾN CÓ RÀNG BUỘC
Trong mục này ta nghiên cứu bài toán (3.56), tức là bài toán quy hoạch phi tuyến bị ràng buộc sau:
f(x) → min, x ∈ D,
D = {x ∈ IRn | fi(x) ≤0, hj(x) = 0, i = 1, . . . m, j = 1, . . . , p},
trong đó ít nhất một trong các hàm f, fi, hj là phi tuyến.
Một trong những phương pháp giải các bài toán quy hoạch phi tuyến có ràng buộc là đưa về bài toán quy hoạch phi tuyến không có ràng buộc, do đó hàm Lagrange vẫn được sử dụng ở đây. Hàm Lagrange trong trường hợp này có dạng: L(x, λ, β) = f(x) + m X i=1 λifi(x) + p X j=1 βjhj(x), trong đó λ := (λ1, λ2, . . . , λp), β := (β1, . . . , λp).
Nhắc lại và bổ sung điều kiện cần: (Định lý Kuhn-Tucker) 1. f, fi, hj khả vi
2. x∗ là điểm cực tiểu địa phương Khi đó tồn tại λ∗, β∗ thỏa mãn:
1. ∇f(x∗) +Pm i=1λi∇fi(x∗) +Pp j=1βjhj(x∗) = 0 2. λifi(x∗) = 0, i = 1, . . . , m 3. λi ≥0, i = 1, . . . , m Ví dụ 3.5.33. f(x) = x21 +x22 +x23 + 40x1 + 20x2 →min Các ràng buộc: x1 −50 ≥ 0 x1 +x2 −100 ≥ 0 x1 +x2 +x3 −150 ≥ 0.
Đây là ví dụ về bài toán phi tuyến song do các hàm f, fi, hj tồn tại đạo hàm liên tục nên ta có thể sử dụng định lý Tuhn-Tuker. Chỉ khác ở đây do fi(c) ≥0 nên λi ≤ 0. Ta có hệ các phương trình sau:
2x1 + 40 + λ1 +λ2 +λ3 = 0 2x2 + 20 +λ2 +λ3 = 0 2x3 +λ3 = 0 λ1(x1 −50) = 0 λ2(x1 +x2 −100) = 0 λ3(x1 + x2 +x3 −150) = 0 f1(x) = (x1 −50) ≥ 0 f2(x) = (x1 +x2 −100) ≥ 0 f3(x) = (x1 +x2 +x3 −150) ≥ 0
λ1 ≤ 0
λ2 ≤ 0
λ3 ≤ 0
Hệ phương trình trên có thể giải bằng phương pháp số để tìm điều kiện cần tối ưu. Ta cũng có thể biện luận để tìm lời giải bằng suy luận toán học. Cụ thể: 1. Nếu λ1 = 0 trong trường hợp này không tìm được các giá trị còn lại λ2, λ3, x1, x2, x3 thỏa mãn hệ phương trình.
2. Khi x1 = 50 ta làn lượt giải các trường hợp còn lại và tìm được giá trị thỏa mãn là:
λ1 = −20;λ2 = −20;λ3 = −100, x∗1 = x∗2 = x∗3 = 50.
3.5.1 Phương pháp nhân tử Lagrange tăng cường Xét bài toán: f(x) →min Với các ràng buộc: hj(x) = 0;j = 1,2. . . , m;m < n. Hàm Lagrange sẽ là: L(x, λ) := f(x) + m X j=1 λjhj(x),
vớiλj, j = 1,2, . . . , mlà hằng số Lagrange. Xây dựng hàm mới:L(x, λk, rk) =
f(x) + Pm
j=1λjhj(x) +rkPm
j=1λjh2j(x). Thuật toán tìm phương án tối ưu của bài toán trên gồm các bước sau:
B1: Lấy giá trị đầu: x(1), λ(1), r1, c > 1, rmax, B2: Đặt k = 1,
B4: Kiểm tra tính hội tụ của λ(k) và x∗(k), nếu đúng dừng x∗ = x∗(k), nếu không chuyển bước 5,
B5. Đặt λ(k+1) = λ(k)+ 2rkhj(x∗(k)), j = 1,2, . . . , m,
B6: Đặt rk+1 = crk,
B7: Nếu rk+1 > rmax, đặt rk+1 = rmax,
B8: Đặt k = k + 1, quay lại bước 2.
3.5.2 Phương pháp nhân tử Lagrange tăng cường cho bài toán ràng buộc bất đẳng thức
Bài toán được xét đến là:
f(x) →min
Với các ràng buộc:
gj(x) ≤ 0;j = 1,2. . . , m.
Để sử dụng phương pháp nhân tử Lagrange tăng cường ta đưa thêm biến phụ để đưa về dạng đẳng thức:
gj(x) +yj2 = 0, j = 1,2, . . . , m.
Hàm Lagrange tăng cường sẽ là: L(x, λk, rk) = f(x) +Pm
j=1λj[gj(x) +yj2] +
rkPm
j=1[gj(x) +yj2]2(x).Thuật toán tìm phương án tối ưu của bài toán trên gồm các bước sau:
B1: Lấy giá trị đầu: x(1), λ(1), r1, c > 1, rmax, B2: Đặt k = 1,
B3: Cực tiểu hàm : L(x, λ(k), rk) với điều kiện đầu x(k) và tìm x∗(k),
B4: Kiểm tra tính hội tụ của λ(k) và x∗(k), nếu đúng dừng x∗ = x∗(k), nếu không chuyển bước 5,
B5: Đặt λ(k+1) = λ(k)+ 2rkhj(x∗(k)), j = 1,2, . . . , m,
B6: Đặt rk+1 = crk,
B7: Nếu rk+1 > rmax, đặt rk+1 = rmax,
B8: Đặt k = k + 1, quay lại bước 2.