6. Giới thiệu phương phỏp điểm trong giải bài toỏn quy hoạch tuyến tớnh
6.2. Một số thuật toỏn điểm trong
Trước hết chỳng ta xột khỏi niệm phương ỏn ε – tối ưu của BTQHTT. Như đó biết trong chương III, nếu (x, y) là cặp phương ỏn của cặp bài toỏn đối ngẫu thỡ sTx = (c – ATy)Tx = cTx – yTAx = cTx – yTb chớnh là độ lệch giữa giỏ trị mục tiờu của bài toỏn gốc và bài toỏn đối ngẫu, cũn được gọi là lỗ hổng đối ngẫu (duality gap). Theo định lý đối ngẫu mạnh, nếu x và y là cỏc phương ỏn tối ưu của cỏc bài toỏn gốc và bài toỏn đối ngẫu thỡ sTx = 0. Vậy chỳng ta xột định nghĩa sau:
Định nghĩa 13. Cặp phương ỏn (khả thi) của cặp bài toỏn đối ngẫu được gọi là cặp nghiệm gần tối ưu hay ε – tối ưu nếu sTx < ε.
Thuật toỏn tỷ lệ affine gốc bước ngắn Bước khởi tạo.
– Nhập dữ liệu đầu vào của BTQHTT: A, b, c. – Chọn ε và ρ∈ (0, 1].
– Tỡm một điểm trong (điểm trong tương đối) x1 của miền phương ỏn D nếu cú. – Đặt k : = 1.
Cỏc bước lặp (bước lặp thứ k)
Bước 1. Căn cứ điểm trong xk, xỏc định Xk = diag( k k k)
1 2 n
x , x ,...,x là ma trận định lại tỷ lệ affine và tỡm yk = (A(Xk)2AT)–1A(Xk)2c (yk cú thể là một phương ỏn của bài toỏn đối ngẫu nếu nú thoả món thờm một số điều kiện).
Bước 2. Tỡm vộc tơ biến bự sk của bài toỏn đối ngẫu ứng với yk vừa tỡm được theo cụng thức sk = c – ATyk.
Bước 3. Kiểm tra điều kiện ε – tối ưu: Nếu sk ≥ 0 (lỳc này yk đỳng là một phương ỏn bài toỏn đối ngẫu) và (sk)Txk = (xk)Tsk = eTXksk < ε (e là vộc tơ đơn vị n tọa độ) thỡ dừng. Phương ỏn xk hiện cú là phương ỏn ε – tối ưu của bài toỏn gốc, cũn phương ỏn yk là phương ỏn ε – tối ưu của bài toỏn đối ngẫu.
Bước 4. Kiểm tra tớnh khụng giới nội: Nếu –(Xk)2sk≥ 0 thỡ dừng, hàm mục tiờu của bài toỏn gốc khụng bị chặn dưới (do bài toỏn đối ngẫu khụng cú phương ỏn khả thi).
Bước 5. Tỡm phương ỏn tiếp theo xk+1 = xk – ρ(X ) sk 2 kk k
X s , (6.46)
Điều này là do xk+1 = xk – ρX P X ck/ /kk
P X c , trong đú P
/ = (I – XkAT(A(Xk)2AT)–1AXk).
Bước 6. Kiểm tra tớnh tối ưu: Nếu k 1 j
x + =0với một chỉ số j nào đú thỡ dừng. Phương ỏn xk+1 hiện cú là phương ỏn tối ưu của bài toỏn gốc. Nếu trỏi lại, đặt k : = k + 1 và quay về bước 1.
Việc chứng minh một cỏch chớnh xỏc tớnh hội tụ của thuật toỏn trờn (với giả thiết mọi phương ỏn cực biờn của BTQHTT khụng suy biến) đũi hỏi nhiều cố gắng, xin dành cho bạn đọc quan tõm tự tỡm hiểu. Thuật toỏn điểm trong như trỡnh bày trờn đõy được gọi là thuật toỏn tỷ lệ affine bước ngắn, với lý do: Khi ta xõy dựng được cỏc điểm trong khỏ sỏt gần phương ỏn cực biờn tối ưu thỡ ellipsoid xấp xỉ là rất dẹt (cú ớt nhất một bỏn trục rất nhỏ) nờn bước dịch chuyển tiếp theo là rất ngắn.
Để tỡm điểm trong xuất phỏt, cần xột BTQHTT tăng cường (bài toỏn M): Min(cTx + Mxn+1), với cỏc ràng buộc Ax + xn+1(b – Ae)= b và (xT, xn+1) ≥ 0, trong đú M là số dương rất lớn và e là vộc tơ đơn vị n tọa độ. Rừ ràng (xT, xn+1) = (eT, 1) là điểm trong của miền phương ỏn của BTQHTT tăng cường. Cú thể giải được bài toỏn này bằng thuật toỏn tỷ lệ affine gốc bước ngắn. Hơn nữa, cú thể chứng minh được rằng nếu bài toỏn M cú phương ỏn tối ưu (xT, xn+1)T với xn+1 = 0 thỡ x cũng là phương ỏn tối ưu của bài toỏn gốc.
Cỏc thuật toỏn tỷ lệ affine gốc bước dài
Cho vộc tơ u ∈ Rn, xột cỏc ký hiệu sau: ∞ = i
i
u Maxu và γ(u) = Max{ui: ui > 0}. Dễ thấy, γ(u) ≤ u ∞≤ u . Lỳc đú, nếu thay cụng thức (6.46) trong thuật toỏn tỷ lệ affine bước ngắn bằng một trong hai cụng thức (6.47) và (6.48) sau đõy thỡ ta sẽ cú được cỏc thuật toỏn tỷ lệ affine bước dài loại 1 và loại 2:
xk+1 = xk – ρ(X ) sk 2 kk k X s ∞ , (6.47) xk+1 = xk – ρ(X ) sk 2 kk k (X s ) γ . (6.48) Cỏc thuật toỏn bước dài nhỡn chung cú tốc độ hội tụ nhanh hơn thuật toỏn bước ngắn. Hơn nữa, với điều kiện hạn chế ρ∈ (0, 2/3), thuật toỏn bước dài loại 2 hội tụ ngay cả khi điều kiện “tất cả cỏc phương ỏn cực biờn của BTQHTT là khụng suy biến” khụng được thỏa món.
Cần chỳ ý rằng, trong cả ba thuật toỏn điểm trong trờn đõy, hướng cải thiện đều là hướng giảm nhanh nhất của hàm mục tiờu, được xỏc định thụng qua phộp chiếu lờn Ker A. Trong khi ở thuật toỏn bước ngắn chỳng ta dừng lại ở điểm nằm trong ellipsoid xấp xỉ, thỡ ở cỏc thuật toỏn bước dài, để xõy dựng điểm xk+1 chỳng ta vẫn đi tiếp ra ngoài biờn của ellipsoid nhưng vẫn nằm ở phần trong của gúc tọa độ dương.
Bài tập chương VI
Bài 1. Chứng minh cỏc tập hợp sau là tập lồi, sau đú mụ tả bao đúng, miền trong và biờn của chỳng:
a. S = {x = (x1, x2, x3)∈ R3: x1 + x2 = 3, x1 + x2 + x3≤ 6}, b. S = {x = (x1, x2, x3)∈ R3: x12+ x22 + x32≤ 4, x1 + x2=1}. b. S = {x = (x1, x2, x3)∈ R3: x12+ x22 + x32≤ 4, x1 + x2=1}.
Bài 2. Cho S = {x = (x1, x2, x3)∈ R3: x12 + x22 + x32≤ 1, x12 – x2≤ 0} và y = (1, 0, 2)T. Tỡm khoảng cỏch từ y đến S và điểm cực tiểu duy nhất tương ứng x* ∈ S ứng với khoảng cỏch đú. Viết phương trỡnh của một siờu phẳng tỏch.
Bài 3. Cho S1 và S2 là cỏc tập lồi rời nhau trong Rn. Chứng minh rằng tồn tại cỏc vộc tơ p1 và p2 khỏc vộc tơ 0 sao cho p1Tx1 + p2Tx2≥ 0 với mọi x1 ∈ S1 và x2 ∈ S2. Hóy suy ra kết quả tổng quỏt hơn cho trường hợp nhiều tập lồi rời nhau.
Bài 4. Tỡm cỏc điểm cực biờn và hướng cực biờn của cỏc tập lồi đa diện sau:
a. S = {x = (x1, x2, x3)∈ R3: x1 + x2 + x3≤ 10, –x1 + 2x2 = 4, x1, x2, x3≥ 0}. b. S = {x = (x1, x2, x3)∈ R3: x1 + 2x2≥ 2, –x1 + x2 = 4, x1, x2≥ 0}. b. S = {x = (x1, x2, x3)∈ R3: x1 + 2x2≥ 2, –x1 + x2 = 4, x1, x2≥ 0}.
c. S = {x = (x1, x2, x3)∈ R3: –x1 + 2x2≤ 3, x1 + x2≤ 2, x2≤ 1, x1, x2≥ 0}, sau đú biểu thị điểm (1, 1/2) thành tổ hợp lồi của cỏc điểm cực biờn và hướng cực biểu thị điểm (1, 1/2) thành tổ hợp lồi của cỏc điểm cực biờn và hướng cực biờn.
Bài 5. Nếu f: Rn → R là hàm khả vi cấp một thỡ ta gọi xấp xỉ tuyến tớnh của nú là biểu thức T
f (x)+ ∇f (x) (x x)− .Tương tự, nếu f là hàm khả vi cấp hai thỡ ta gọi xấp xỉ toàn phương
của nú là T 1 T
f (x) f (x) f (x) (x x) (x x) H(x)(x x)
2
= + ∇ − + − − .
Cho f(x) = exp(x12 + x22) – 5x1 + 10x2, hóy tỡm cỏc biểu thức xấp xỉ tuyến tớnh và xấp xỉ toàn phương của f(x) và cho biết chỳng là hàm lồi hay hàm lừm hay khụng lồi khụng lừm, tại sao?
Bài 6. Xột bài toỏn tối ưu:
Max f(x) = 3x1 – x2 + x32, với cỏc ràng buộc x1 + x2 + x3≤ 0
– x1 + 2x2 + x32 = 0.