Phương pháp điểm trong và ứng dụng
Trang 1CHƯƠNG II
THUẬT TOÁN ĐIỂM TRONG 'THEO ĐƯỜNG TRUNG TÂM GỐC-ĐỐI NGẪU
2.1 Các khái niệm và kết quả cơ bản của thuật toán
Định nghĩa 2.1
Cho cặp bài toán đối ngẫu (LP) và (LD) Cặp điểm (x, y,s) được gọi là thoả
mãn điều kiện điểm trong, néu (x, y, s) thoả mãn điều kiện sau đây
Ax=b,x>0, Afy+s=c,s>0
Từ định lý đối ngẫu mạnh và định lý về độ lệch bù, ta thấy rằng việc tìm nghiệm
tối ưu của cặp bài toán (LP) và (LD) là tương đương với việc giải hệ phương trình
Ax=b,x>0, (1)
ở đây x=(x,3x; ,.x„)”, s=j,s; ,3„) , th x5 = (2451, 2 Sp 50005 XS)”
Ý tưởng cơ bẩn của thuật toán điểm trong gốc-đối ngẫu là thay thế phương trình (3) trong hệ (2.1) bằng phương trình tham số xs = với >0 và e=(1, ,1)” Do đó chúng ta có hệ sau
Ax=b,
Xs = pe,
x>0,s>0
Ta ký hiệu nghiệm của hệ (2.2) là (x(), y(/, s()) Định lý sau đây cho ta
thấy rằng hệ (2.2) luôn có nghiệm duy nhất
Trang 2Định lý 2.1 ({13])
Giảsử (x2), y2), s(4))thoả mãn điều kiện điểm trong Với mỗi />0 thì (x02, y2), s()) là nghiệm duy nhất của hệ (2.2)
Định nghĩa 2.2
Giả sử (x(), y(), s(2)) là nghiệm duy nhất của hệ (2.2) Khi đó x() được gọi
là nghiệm /-trung tâm của bài toán gốc (LP) và (y(),s()) là nghiệm trung tâm của bài toán đối ngẫu (LD) Tập {xứ :u>0 Hà đường trung tâm
gốc Tập {y0), sứ): > 0} là đường trung tâm đối ngẫu (với là tham số
đường trung tâm)
Mối liên hệ giữa giá trị hàm mục tiêu gốc, giá trị hàm mục tiêu đối ngẫu
và lỗ hổng đối ngẫu sẽ được phát biểu ở mệnh để sau
Mệnh để 2.1 ([19])
Giả sử ¿ đơn điệu giảm về 0 Khi đó theo đường trung tâm gốc thì giá trị hàm
mục tiêu gốc c”x() sẽ đơn điệu giảm đến giá trị hàm mục tiêu tối ưu Theo
đường trung tâm đối ngẫu, giá trị hàm mục tiêu đối ngẫu »”y(/) đơn điệu tăng đến giá trị hàm mục tiêu tối ưu, và lỗ hổng c’x(w)—b" y(w) đơn điệu giảm về 0
Nhận xét 2.2.1
Nếu một trong hai bài toán (LP) va (LD) là không chấp nhận được, thì điều kiện
điểm trong không thoả mãn, dẫn đến đường trung tâm không tổn tại
Định lý sau đây sẽ cho ta thấy điều kiện tổn tại của đường trung tâm
Định lý 2.2 ([19])
Đường trung tâm gốc và đối ngẫu tổn tại nếu và chỉ nếu cả hai bài toán (LP) va(LD) là chấp nhận được, thoả mãn điều kiện điểm trong và hạng của ma trận
A bằngm
Trang 3Dinh nghĩa 2.3 (Tâm giải tích)
Tâm giải tích của tập ' được xác định bởi
(x",s")= argmax TIz; H Sj
(9)€Ẽ - jeB; ` jeNg
Chúng ta thấy rằng một tính chất rất đẹp của đường trung tâm là nó bắt đầu đi từ tâm giải tích của tập chấp nhận được và kết thúc ở tâm giải tích của tập
tối ưu
Định lý 2.3 ([19])
Đường trung tâm hội tụ đến tâm giải tích của tập tối ưu khi >0
2.2 Thuật toán theo đường trung tâm gốc-đối ngẫu
Ý tưởng cơ bản của thuật toán theo đường trung tâm gốc-đối ngẫu là bám theo đường trung tâm xấp xỉ bằng phương pháp lặp Chúng ta sẽ dùng phương pháp Newton để nhận được hướng dò tìm ở mỗi bước lặp
Với mỗi ¿ >0, thì việc giải xấp xỉ hệ (2.1) để tìm được nghiệm duy nhất
của hệ là không dễ Do đó chúng ta dùng đoạn Newton để tìm nghiệm gần đúng
Cho cặp (x, y, s) thoả mãn điều kiện điểm trong, khi đó với mỗi / >0, giải hệ (2.3) sau đây chúng ta sẽ nhận được hướng Newton (hướng dò tìm) (Ax, Ay, As) tương ứng với (x, y, s)
A(x+Ax)=b, AT(y+Ay)+(+As) =e, (23)
(x+ Ax)(s + As) = pe
Hệ này tương đương với hệ sau
AAx=0,
sAx+xAs = Uue— Xs.
Trang 4Định ly 2.4 ([19])
Giả sử x >0, s>0 và hạng của ma trận A bằng m, thì hệ (2.4) có nghiệm duy
nhất:
Ay=(4XS"'AT)Y'(b— uAs”),
As=-AfAy,
Ax = us! —x—xs"'As
Trong đó X = diag (x), S = diag(s), S™' là ma trận nghịch đảo của S và ký hiệu
Chứng minh
Chia phương trình thứ 3 trong hệ (2.4) cho véc tơ s, ta có
Ax+ xs" As = ys -x
Nhân bai vế của phương trình vừa thu được với ma trận A ta được
AAx + AXS"'As = wAs' — Ax
Ti (2.4) tac6 AAx=0 va Ax=b nén suy ra
AXS ‘As = wAs™' — Ax = wAs™' —b
Từ phương trình 2 trong hệ (2.4) ta có As =—47Ay Từ đó
AXS”'AAy=b— uAs”1
Do A là ma trận xø, có hạng là m nên ma trận 4XS”!4Ïcó cỡ mx mlà không
suy biến, vì vậy
Ay=(AXS"'AT)'(b— uAs””), As=-ATAy,
Trong quá trình lặp của thuật toán, chúng ta cần phải điều khiển được
khoảng cách từ bước lặp hiện tại đến ¿-trung tâm hiện tại, hay nói cách khác
Trang 5-10-
chúng ta cần đo được khoảng cách từ véctơ xs tới véctơ He bing mot ham do,
ta gọi đó là hàm đo độ gần (hàm đo độ gần của diém x, tdi x(4.) ching hạn) Trước khi mô tả hàm đo độ gần, chúng ta sẽ giới thiệu khái niệm đặc biệt
sau: Cho (x,s) là cặp nghiệm gốc-đối ngẫu chấp nhận được chặt, và với >0,
-f, wee,
ở đây (| ” và |# 1a cée véctơ mà thành phân thứ ¡ của nó là |5: và (4,
tương ứng Từ khái niệm này chúng ta viết lại điều kiện đường trung tâm là
ta xác định
phương trình của y Theo phương trình (3) của hệ (2.2): xs = ,e Vậy
XS = le © VÌ =đ€Œ>v=e
Tiếp theo, chúng ta sẽ giới thiệu hai hàm đo độ gần được sử dụng nhiều trong thuật toán điểm trong gốc-đối ngẫu [16,19 ]:
(35,4) = #0)
_2's sin n wae
ở đây
t)= 2" — — -loBí
Nhận xét 2.2.1
Hai hàm độ đo gần trình bày trong (2.5) và (2.6) triệt tiêu nếu y=e và bằng œ nếu v tiến đến biên của phần không âm # ={y:y>0} Hàm ® là hàm chắn logarit gốc-đối ngẫu, với tham số chắn / Giả sử W(x,s,/) là hàm đo độ gần
Trang 6-ll-
Thuật toán theo đường trung tâm gốc-đối ngẫu phát biểu như sau
Đầu vào:
7: tham số cho hàm đo độ gần ¥ ;
£ >0: là độ nới lỏng cho tính tối ưu ;
0: (0<Ø <1) là hệ số cập nhật cho tham số đường trung tâm /
Giả sử (x,,sạ) >0, yạ và /ạ =1 sao cho \(xạ,sạ,/ạ) <£
Begin
While nu>e do
Begin
=q-9)u;
While W(x,s,)>z do
Begin
-Giải hệ (2.4) để tìm Ax, Ay, As;
-Xác định độ dài bước lặp ø ;
-Cập nhật nghiệm xấp xỉ mới:
x=x+a dx;
s=s+aAs;
y=y†ữAy;
end;
end;
end;
Trang 721D
Chúng ta sẽ mô tả sơ bộ thuật toán theo đường trung tâm gốc-đối ngẫu như sau
Đầu tiên chúng ta giới thiệu khái niệm lân cận của đường trung tâm:
NŒ, 4) ={(x,5) >0:Ax=b, Aly+s=e, WŒ, s, 0) <rÌ,
ỡ đây z >0 là bán kính của lân cận và nó xác định cỡ lân cận, W{(z,s,/) là hàm
đo độ gần (đo khoảng cách từ điểm (x,s) đến (x(), y())), nó được xác định
theo công thức (2.5) và (2.6)
Ta minh họa lân cận của đường trung tâm trong không gian v như sau:
Đường trung tâm
Lân cận
Vv,
Hình 2.1: Lân cận của đường trung tâm
Trong thuật toán này, việc chọn tham số 7z, không mấy khó khăn, ví dụ ta có
thể chọn z=2,£=10%, Một tham số khác của thuật toán làØ Tham số Ø
thường không cố định, do đó ta có thể chọn Ø trong đoạn [0,1] Nếu Ø là hằng
số độc lập với số chiều n của bài toán, ví dụ Ø = thì ta gọi thuật toán là thuật 3n Bi Ä 3H: ấn en Gis oR sii Bis ẽ Tố ae toán bước dài, nếu Ø phụ thuộc vào số chiều của bài toán, ví dụ Ø=—— thì ta
avn
có thuật toán bước ngắn
Trang 8afte
Bằng việc giải hệ Newton (2.4), chúng ta sẽ nhận được hướng dò tìm (Ax, As, Ay) Sau đó dọc theo hướng dò tìm, để đi đến được điểm mới, ta sẽ phải tính thêm cỡ bước ø theo một quy tắc nào đó, và cập nhật điểm mới (x, y,s) như sau:
x=xt+a Ax;
s=s+aAs;
yaytady;
Trong thuật toán điểm trong việc tính cỡ bước ø là rất quan trọng, để nó đảm bảo rằng, điểm mới nhận được sau mỗi bước lặp là chấp nhận được chặt, cùng lúc đó phải giảm lỗ hổng đối ngẫu nhiễu nhất có thể được Chúng ta có thể chọn
ø theo quy tắc sau ([16,19]): Đầu tiên chúng ta tính toán cỡ bước lớn nhất:
Dlg arg max {(x,7,5,4) +a(Ax, Az, As, Ak) > 0}
Sau đó chúng ta giảm cỡ bước @ bằng công thức ø = Qa, max 9 thường người ta
chọn ø, = 0.99995, để đảm bảo rằng điểm mới nhận được là dương chặt
Tham sO yc sé cap nhật qua công thức =(1—Ø)¿¿ ở mỗi bước lặp trong vòng lặp ngoài của thuật toán, sau đó giải hệ (2.4) ở vòng lặp trong và w thay đổi như là tham số độc lập Công thức cập nhật /, chúng ta gặp trong hầu hết
thuật toán điểm trong ở ([19]) Ngoài ra yz còn có thể được cập nhật theo quy tắc
z
khác, ví dụ như ¿¿ được cập nhật tỷ lệ với lỗ hổng đối ngẫu, nghĩa là ; = 2S,
n Sau khi cập nhật tham số /, chúng ta phải kiểm tra xem điểm mới nhận
được ở bước lặp hiện tại có thuộc về lân cận X(z,/) của đường trung tâm mới
(x(),s(), y2) )hay không, nếu câu trả lời là có, ta sẽ thoát ra vòng lặp bên
ngoài và cập nhật tham số ¿ Quá trình xử lý này cứ tiếp tục cho đến khi nhận được nghiệm của bài toán thoả: _m¿<£
Trang 9-14-
Phần cuối cùng trong chương này, chúng ta sé quan tâm là: thuật toán
điểm trong kết thúc khi nào Thuật toán điểm trong kết thúc khi lỗ hổng đối ngẫu đủ nhỏ, và nghiệm hiện tại là chấp nhận được cho bài toán gốc và bài toán đối ngẫu, hoặc khi miễn chấp nhận được là đủ nhỏ Trong thực hành thì điều
kiện dừng của thuật toán như sau ([16,19]):
|4x-?| 108
_.M
im:
|4 y4 <10°®
!*|t|
le"x—B" | <103
1+|b y| —