2 Một số phương pháp giải bài toán tối ưu phi tuyến có ràng
2.2 Phương pháp hàm phạt điểm ngoài
Các bài toán tối ưu không ràng buộc thường đơn giản hơn các bài toán tối ưu có ràng buộc. Phương pháp hàm phạt hướng đến việc biến đổi một bài toán tối ưu có ràng buộc thành một dãy các bài toán có ràng buộc đơn giản hoặc bài toán tối ưu không ràng buộc bằng hàm phạt.
2.2.1 Phương pháp hàm phạt điểm ngoài
Xét Bài toán (1.1), hàm phạt điểm ngoài được xác định như sau
p(x) = m X i=1 φ(gi(x)) + r X i=1 ψ(hi(x)), (2.9)
với φ, ψ là các hàm liên tục trên R thỏa
φ(y) = 0,∀y ≤0 φ(y) > 0,∀y > 0
ψ(y) = 0,∀y = 0 ψ(y) > 0,∀y 6= 0. (2.10)
Một ví dụ cho các hàm φ, ψ thỏa mãn các điều kiện trên là
φ(y) = (max{0, y})q, ψ(y) = |y|q,
với q là một hằng số dương.
Bài toán (1.1) được đơn giản các ràng buộc thành bài toán sau
supθ(µ)
µ ≥ 0,
với θ(µ) = inf{f(x) +µp(x), x ∈ S}, p xác định bởi (2.9) và thỏa điều kiện (2.10).
Bổ đề 2.2.1 ([6]). Giả sử f, g, h là các hàm liên tục trên Rn, S ⊂Rn, S 6=
∅. Cho hàm p xác định bởi (2.9), liên tục trên Rn và giả sử ∀µ,∃xµ ∈ S thỏa
θ(µ) = f(xµ) +µp(xµ). Khi đó, các mệnh đề sau luôn đúng
1. inf{f(x) : x ∈ S, g(x)≥ 0, h(x) = 0} ≥ sup µ≥0
θ(µ).
2. f(xµ), θ(µ) là hàm không giảm với mọi µ ≥ 0, p(xµ) là hàm không tăng với mọi µ ≥0.
Chứng minh. Ta sẽ chứng minh lần lượt từng mệnh đề
1. ∀x ∈ S thỏa g(x) ≤0, h(x) = 0, p(x) = 0. Xét µ ≥ 0 ta có
f(x) = f(x) +µp(x) ≥ inf{f(y) +µp(y), y ∈ S} =θ(µ), do vậy mệnh đề 1 đúng.
2. Xét 0 ≤λ ≤µ ta có f(xµ) +λp(xµ) ≥ f(xλ) +λp(xλ) (2.11) f(xλ) +µp(xλ) ≥ f(xµ) +µp(xµ). (2.12) Cộng theo vế của (2.11) và (2.12) ta có (µ−λ)[p(xλ)−p(xµ)]≥ 0 ⇒p(xλ) ≥ p(xµ) Từ (2.11) ta có f(xµ) ≥f(xλ). Từ (2.11) ta có f(xµ) +µp(xµ) + (λ−µ)p(xµ) ≥θ(λ), vì µ > λ và p(xµ) ≥ 0 nên θ(µ) ≥θ(λ). 2
Định lí 2.2.1 ([6]). Xét Bài toán (1.1), hàm p cho bởi (2.9), thỏa mãn điều kiện (2.10). Hơn nữa, giả sử ∀µ ≥ 0, tồn tại nghiệm của bài toán
min (f(x) +µp(x)) và dãy {xµ}µ≥0 chứa trong một tập con compact của S. Khi đó inf{f(x) :x ∈ S, g(x) ≥ 0, h(x) = 0} = sup µ≥0 θ(µ) = lim µ→∞θ(µ), trong đó θ(µ) = inf{f(x) +µp(x), x ∈ S}= f(xµ) +µp(xµ).
Hơn nữa, x = limxµ là một nghiệm tối ưu của Bài toán (1.1) và µp(xµ) →0 khi µ →+∞.
Chứng minh. Theo mệnh đề 2 của Bổ đề 2.1.1, θ(µ) là hàm đơn điệu nên
sup µ≥0
θ(µ) = lim µ≥0θ(µ). Ta sẽ chứng minh p(xµ) → 0 khi µ→ +∞.
Thật vậy, cho y ∈ S và > 0. Giả sử x1 là một nghiệm tối ưu của bài toán min{f(x) +µp(x), x ∈ S}.
µ ≥ 1
|f(y)−f(x1)|+ 2, theo mệnh đề 2 của Bổ đề 2.1.1 ta có f(xµ) ≥ f(x1).
Giả sử p(xµ) > , theo mệnh đề 1 của Bổ đề 2.1.1 ta có
inf{f(x) : x ∈ S, g(x) ≥0, h(x) = 0} ≥ θ(µ)
= f(xµ) +µp(xµ)
≥ f(x1) +µp(xµ)
> f(x1) +|f(y)−f(x1)|+ 2 > f(y).
Điều này là vô lý, nên p(xµ) ≤ . Vì > 0 lấy tùy ý nên ta có
lim
µ→∞p(xµ) = 0.
Xét {xµk} là một dãy con của dãy {xµ}, do {xµ} chứa trong một tập compact nên tồn tại x ∈ S là giới hạn của dãy con {xµk}. Ta có
sup µ≥0 θ(µ)≥ θ(µk) = f(xµk) +µkp(xµk) ≥f(xµk), ta có xµk → x và f liên tục nên sup µ≥0 θ(µ)≥ f(x). (2.13)
Vì p(xµ) → 0 khi µ → 0 nên p(x) = 0, có nghĩa x là một phương án khả thi của bài toán (1.1). Từ (2.13) và mệnh đề 1 của Bổ đề 2.1.1 ta có x là một nghiệm tối ưu của Bài toán (1.1) và
sup µ≥0 θ(µ) = f(x). Ta có µp(xµ) = θ(µ)−f(xµ) và lim µ→∞θ(µ) = lim µ→∞f(xµ) = f(x)
nên
lim
µ→+∞µp(xµ) = 0.
2
Hệ quả 2.2.1 ([6]). ∀µ ≥ 0 mà p(xµ) = 0 thì xµ là nghiệm tối ưu của Bài toán (1.1).
Chứng minh. ∀µ ≥ 0 mà p(xµ) = 0 thì xµ là phương án khả thi của Bài toán (1.1). Ta có
inf{f(x) : x ∈ S, g(x) ≥ 0, h(x) = 0} ≥ θ(µ) = f(xµ) +µp(xµ) = f(xµ), vậy xµ là nghiệm tối ưu của Bài toán (1.1).
2
Tóm tắt các bước giải Bài toán (1.1) theo phương pháp hàm phạt điểm ngoài:
- Bước khởi tạo: Cho > 0, tham số phạt µ1 > 0, hằng số β > 0, cho k = 1, chuyển sang bước chính.
- Bước chính:
1. Giải bài toán
min [f(x) +µkp(x)],
gọi xk là một nghiệm của bài toán trên, chuyển sang bước 2.
2. Nếu µkp(xk) < , dừng. Ngược lại, cho k := k + 1, µk+1 := βµk, quay lại bước 1.
2.2.2 Bài tập ứng dụng
Bài tập 2.2.1. Giải bài toán tối ưu phi tuyến sau
minf(x) = (x1 −6)2 + (x2 −7)2 g1(x) = −3x1 −2x2 + 6 ≤ 0 g2(x) = −x1 +x2 −3 ≤ 0 g3(x) = x1 +x2 −7 ≤0 .
Giải: Ta xây dựng hàm phạt của bài toán trên như sau
p(x) = (max{0, g1(x)})2 + (max{0, g2(x)})2 + (max{0, g3(x)})2. Để đơn giản hóa hàm phạt, ta có thể chọn điểm bắt đầu x0 = (6,7). Với điểm bắt đầu này ta thấy rằng chỉ có điều kiện g3(x) ≤ 0 là không thỏa mãn, do vậy ta xét hàm
F(x, λ) =f(x) +λ(max{0, g3(x)})2
Điểm dừng của F là nghiệm của hệ phương trình
2x1 −12 + 2λ(x1 +x2 −7) = 0 2x2 −14 + 2λ(x1 +x2 −7) = 0 ⇔ x1 = 6(1 +λ) 1 + 2λ x2 = 7− 6λ 1 + 2λ .
Cho λ −→ +∞ ta có (x1, x2) −→ (3,4). Đó chính là nghiệm của bài toán đã cho và fmin = 18.
Bài tập 2.2.2. Giải bài toán sau
min(x1 −2)4 + (x1 −2x2)2
x21 −x2 = 0
Giải: ∀k ∈ N, tham số phạt µk > 0, ta giải nghiệm tối ưu của bài toán
min(x1 −2)4 + (x1 −2x2)2 +µk(x21 −x2)2.
Quá trình giải được tóm tắt bởi bảng 2.1, với x1 = (2,1);µ1 = 0,1;β = 10.
k µk xµk =xk+1 f(xk+1) p(xµk) θ(µk) µkp(xµk) 1 0,1 (1,4539; 0,0135 1,83075 0,2766 0,1831 0,7608) 2 1 (1,1687; 0,5753 0,3908 0,9661 0,3908 0,7407) 3 10 (0,9906; 0,15203 0,01926 1,7129 0,1926 0,8425) 4 100 (0,9507; 1,8917 0,000267 1,9184 0,0267 0,8875) 5 1000 (0,9461094; 1,9405 0,0000028 1,9433 0,0028 0,8934414)
Bảng 2.1: Tóm tắt quá trình giải bằng phương pháp hàm phạt
Bài tập tham khảo: Áp dụng phương pháp hàm phạt điểm ngoài để giải các bài toán sau
Bài tập 2.2.3. Tìm giá trị nhỏ nhất của hàm số
f(x) = (x1 −2)4 + (x1 −2x2)2
trong các trường hợp sau
1. (x1, x2) thỏa mãn các điều kiện
x1 + 2x2 −3 ≤ 0,
3x1 + 4x2 −1 ≤ 0.
2. (x1, x2) thỏa điều kiện
−x1 +x22 + 4 ≤ 0.
Bài tập 2.2.4. Giải bài toán
( min 1 2(x 2 1 + 1 3x 2 2) x1 +x2 = 1. Bài tập 2.2.5. Giải bài toán sau
min 2ex1 + 3x21 + 2x1x2 + 4x22
3x1 + 2x2 −6 = 0
bằng phương pháp hàm phạt điểm ngoài với tham số µ= 10.
Bài tập 2.2.6. Cho bài toán
min 2x21 −3x1x2 +x22 x21 −x2 + 3 ≤0 3x1 + 2x2 −6 ≤0 −x1 ≤0 −x2 ≤0.
Giải bài toán trên theo phương pháp hàm phạt điểm ngoài.