65Phương pháp vượt khe hướng phân giác giải bài toán quy hoạch phi tuyến có ràng buộc

7 0 0
65Phương pháp vượt khe hướng phân giác giải bài toán quy hoạch phi tuyến có ràng buộc

Đang tải... (xem toàn văn)

Thông tin tài liệu

241 TẠP CHÍ KHOA HỌC, ðại học Huế, Số 65, 2011 PHƯƠNG PHÁP VƯỢT KHE HƯỚNG PHÂN GIÁC GIẢI BÀI TOÁN QUY HOẠCH PHI TUYẾN CÓ RÀNG BUỘC Bùi Minh Trí, Trường ðại học Bách khoa Hà Nội Nguyễn Vũ Tiến, ðại học[.]

TẠP CHÍ KHOA HỌC, ðại học Huế, Số 65, 2011 PHƯƠNG PHÁP VƯỢT KHE HƯỚNG PHÂN GIÁC GIẢI BÀI TOÁN QUY HOẠCH PHI TUYẾN CĨ RÀNG BUỘC Bùi Minh Trí, Trường ðại học Bách khoa Hà Nội Nguyễn Vũ Tiến, ðại học Huế TÓM TẮT Trong báo này, dựa sở nguyên lý vượt khe xây dựng thuật toán giải toán Quy hoạch phi tuyến có ràng buộc: Thuật tốn vượt khe hướng phân giác ðịnh lý hội tụ ñược nêu chứng minh Các ví dụ minh họa trình bày Ngun lý tối ưu hóa vượt khe hướng tìm kiếm 1.1 Nguyên lý tối ưu hóa vượt khe [3] Xét tốn cực tiểu hóa có ràng buộc: min{J(x)│ gi(x) ≤ 0; i = 1, … ,m ; x ∈ Rn} (1.1) đó: J(x) hàm mục tiêu bị chặn thỏa mãn ñiều kiện: lim J ( x ) = ∞ (1.2) x →∞ hàm gi (x) hàm lồi Thuật tốn tối ưu hóa phi tuyến giải tốn (1.1) có phương trình lặp sau: xk+1 = xk + αk+1 Sk , k = 0, 1,… (1.3) đó: xk, xk+1 điểm ñầu ñiểm cuối bước lặp thứ k+1; αk+1 ñộ dài bước; Sk vecto hướng thay ñổi biến không gian Rn Nếu αk+1 ñược xác định theo ngun lý vượt khe gọi bước vượt khe, cịn phương trình (1.3) gọi thuật toán vượt khe [3] Nguyên lý vượt khe phát biểu ñiểm ñầu ñiểm cuối bước lặp tối ưu hóa ln ln nằm hai phía ñiểm cực tiểu hàm mục tiêu xét dọc theo hướng chuyển động bước Nói cách khác, ñiểm ñầu hàm mục tiêu thay ñổi theo chiều giảm, đến điểm cuối phải có xu hướng tăng Quỹ đạo tìm kiếm tối ưu theo ngun lý vượt khe tạo tranh hình học, tựa ñiểm tìm kiếm lần lặp ñều bước vượt qua lòng khe hàm mục tiêu ðể cụ thể hóa nguyên lý vượt khe, ta xét hàm biến sau ñối với bước lặp k+1: 241 h(α) = J(xk + αsk) (1.4) Giả sử sk hướng giảm hàm mục tiêu ñiểm xk Theo ñiều kiện (1.2) tồn giá trị α* > bé cho h(α) ñạt cực tiểu: α* = arg h(α ) (1.5) α >0 Nếu h(α) khả vi liên tục, ta có định nghĩa bước vượt khe sau: h ' (α ) α =α v > 0, h (α v ) ≤ h ( ) (1.6) ñó, αv bước vượt quá, tức bước vượt khe ðồ thị biến thiên hàm h(α), quỹ ñạo tìm kiếm ñiểm tối ưu thay ñổi tử ñiểm ñầu x ñến ñiểm cuối xk+1 thể hình Ta thấy rằng, giá trị α tăng dần từ vượt qua ñiểm cực tiểu α* h(α) tới giá trị αv, quỹ đạo tối ưu hóa tương ứng tiến dọc theo hướng sk theo quan hệ xk+1 = xk + αsk, thực ñộ dài bước α = αv ≥ α* ðồ thị rằng, xét theo hướng chuyển động, hàm mục tiêu thay đổi theo chiều giảm từ điểm xk, cịn đạt tới điểm xk+1 chuyển sang xu hướng tăng Trước ñây, người ta dùng phổ biến bước xác định theo điều kiện (1.5), nên điểm tìm kiếm thường bị rơi vào lòng khe thuật tốn tối ưu hóa tương ứng bị tắc lại Cịn đây, q trình tối ưu hố theo điều kiện (1.6) khơng cho phép điểm tìm kiếm rơi vào lịng khe trước đạt lời giải tối ưu, đồng thời vẽ quy đạo ln ln vượt lịng khe ðể q trình lặp có hiệu hội tụ cao ổn ñịnh, ñiều kiện (1.6) ñược thay bởi: k αv > α* = arg h(α ) , h(αv) – h* ≤ λ[h0 – h*] α >0 (1.7) đó, < λ < gọi hệ số vượt; h* = h(α*); h0 = h(α0) h0 h (αv) h* α* αv α Hình Xác ñịnh bước vượt khe αv; h(α) = J(xk + αsk) Nếu thay h* (1.7) ước lượng h ≈ h*, h > h* ta nhận bước vượt khe theo định nghĩa Vì vậy, để đơn giản hóa việc lập trình nên lấy giá trị bé 242 tính h cách đơn giản bước lặp tương ứng, mà không cần xác định xác h* ðiều đồng thời làm giảm đáng kể số lần tính giá trị hàm mục tiêu Thuật tốn xác định bước vượt khe α (xem[3]) Input: điểm x, hướng tìm kiếm s Output: độ dài bước vượt khe α Các tham số: a = 0.5, ñộ xác ε Bước 1: Giả sử β = a, tính h(β) = h(x + βs) Nếu h(β) ≥ h(0) α = 0, β = a, chuyển sang bước Nếu khơng lặp α = β, β = 1.5β cho ñến h(α) ≤ h(β), chuyển sang bước Bước2: Nếu |β – α| ≤ ε, ε > 0, chuyển sang bước Nếu khơng, ñặt θ = α + γ (β – α), ñó tham số γ ñặt 0,1 Nếu h (θ) ≤ h (α) đặt α = θ quay lại bước Nếu khơng đặt β = θ quay lại bước Bước 3: Gán bước vượt khe β 1.2 Hướng tìm kiếm Hướng tìm kiếm gọi cải tiến chuyển dịch theo hướng với độ dài định dẫn đến giảm giá trị hàm mục tiêu cần cực tiểu hóa (hay tăng hàm mục tiêu cần cực đại hóa) Hầu hết thuật tốn tối ưu hóa hàm trơn xây dựng sở ñiều kiện này, nghĩa trình chuyển dịch ln thỏa mãn điều kiện đơn điệu trình tìm kiếm tối ưu Khi || ∇ J(x)|| ≠ 0, véc tơ s ∈ Rn thoả mãn điều kiện đơn điệu bất đẳng thức sau ñược nghiệm ñúng: s , ∇J ( x ) < (1.8) ðiều kiện âm tích vơ hướng (1.8) hai véc tơ chuyển ñộng s gradien hàm mục tiêu cho thấy góc tạo chúng góc tù (>900) hay nói cách khác, véc tơ hướng tìm kiếm ln tạo với đối gradient (anti-gradient) góc nhọn xét tốn cực tiểu hóa Mặt khác ta biết véc tơ gradient hàm trơn điểm khơng gian biến số ln ln vng góc với bề mặt mức điểm Vì vậy, hướng cải tiến ln ln hướng vào phía mặt mức ðó hướng bước lặp cực tiểu hóa mà điểm tìm kiếm trượt theo Sau ñây ta xét hướng chuyển ñộng ñược sử dụng thuật toán vượt khe 243 Hướng phân giác: hai véc tơ a b hướng véc tơ d cho công thức: d= a b + a b (1.9) ñó, a b ñộ dài véc tơ a, b Nhận xét: Nếu a, b không phương véc tơ d tạo với a, b góc nhọn Do thay a, b véc tơ đối gradient hàm mục tiêu cực tiểu hóa véc tơ d ln ln hướng cải tiến ñược Trên sở khái niệm hướng ta xây dựng thuật tốn cực tiểu hóa đơn giản, gọi thuật toán phân giác vượt khe Thuật tốn đặc biệt thích hợp hàm mục tiêu có dạng lịng khe dài Trong nhiều trường hợp nhanh hẳn thuật toán gradient kiểu hạ nhanh Phương pháp vượt khe giải toán tối ưu phi tuyến có ràng buộc Sau trình bày biến thể phương pháp vượt khe [1, 2] để giải tốn tối ưu phi tuyến có ràng buộc { J ( x ) | gi ( x ) ≤ 0; i = 1,…, m; x ∈ Rn } , J(x) hàm mục tiêu bị chặn thoả mãn ñiều kiện: lim J ( x) = ∞ x →∞ hàm gi ( x ) hàm lồi 2.1 Sơ ñồ phương pháp vượt khe cho tốn tối ưu có ràng buộc Sự kết hợp qui tắc ñiều chỉnh bước theo nguyên lý vượt khe với hướng di chuyển phù hợp với đặc trưng hàm mục tiêu dạng lịng khe tạo thành phương pháp tối ưu hóa vượt khe Trong trường hợp có ràng buộc, bước lặp bước vượt khe khỏi miền ràng buộc ta ñiều chỉnh lại bước di chuyển cho phương án khơng vượt ngồi miền ràng buộc gọi bước vượt khe hiệu chỉnh Sự kết hợp quy tắc ñiều chỉnh bước theo nguyên lý vượt khe hiệu chỉnh hướng di chuyển phù hợp với hàm có dạng lịng khe tạo thành phương pháp vượt khe giải tốn tối ưu có ràng buộc Với thông số khởi tạo sau: γ = 0,1, a = 0,5 Bước lặp thứ 1: S0 = − ∇ J ( x0 ) Xác ñịnh bước vượt khe λ0 theo hướng di chuyển S0 Quá trình tối ưu lặp theo phương pháp vượt khe bước thứ k+1 gồm giai đoạn chính: Giai đoạn Tính gradient ∇ J (xk) xác ñịnh hướng cải tiến ñược Sk (theo 244 hướng hàm mục tiêu cực tiểu hóa giảm ) Ở có hai khả năng: + Nếu xk điểm miền ràng buộc ta di chuyển theo hướng phân giác; + Nếu xk ñiểm nằm biên miền ràng buộc điều kiện Karush - Kuhn - Tucker khơng ñược thỏa mãn nên hệ sau chắn có nghiệm:  ∇J ( x k ) , S k 〈   k k k  ∇g i ( x ) , S 〈0, i ∈ I ( x ) ∈ { 1,…, m }| gi I ( xk ) = { i ( xk ) = } (xem [3, 4]) Bằng việc giải hệ ta có hướng di chuyển cải tiến Sk Giai đoạn Thực di chuyển điểm tìm kiếm theo hướng Sk cho ñến ñạt tới sườn dốc lên khe Khi độ dài bước thoả mãn điều kiện (1.5) (1.6) Nếu ñộ dài bước vượt khe vượt khỏi miền ràng buộc điều chỉnh ñiểm biên miền ràng buộc với bước di chuyển ñiều chỉnh αk+1 Kết thúc bước lặp k+1 ta nhận ñược phương án mới: xk+1 = xk + αk+1Sk Q trình lặp tiếp diễn thoả mãn ñiều kiện dừng ñã ñịnh trước Với hàm mục tiêu ta dùng ñiều kiện sau ñây: ðiều kiện Karush - Kuhn - Tucker: ∇J ( x k ) ≤ ε , x k +n − xk ≤ ε , J ( xk +n ) − J ( xk ) ≤ ε Cần nhấn mạnh chiến lược tìm kiếm tối ưu theo nguyên lý vượt khe tạo khả lớn cho phương pháp vượt khe nghiên cứu tính chất hàm mục tiêu vùng khe Thuật tốn tương ứng có khả thích nghi xác ñịnh chiến lược hiệu tiến nhanh ñến ñiểm tối ưu mà không bị rơi vào khe bước trung gian Qui tắc tìm bước vượt khe theo ñiều kiện (1.8) ñơn giản mặt thực hiện, chí tính tay cho phép dễ dàng áp dụng cho trình tối ưu hóa tự động hệ thống thời gian thực 2.2 Thuật toán vượt khe hướng phân giác tiêu chuẩn hội tụ 2.2.1 Thuật toán Gọi C = { x | gi ( x ) ≤ }, int C ≠ ∅ Giả sử ñã chọn ñược ñiểm x0 ∈ C, dãy điểm cực tiểu hóa xây dựng theo thuật tốn vượt khe phân giác có dạng: xk+1 = xk + αk+1Sk, k = 0,1,… Trong đó, αk+1 bước vượt khe có điều chỉnh, Sk véc tơ hướng chuyển động điểm tìm kiếm bước thứ k + Hướng ñược xác ñịnh theo qui tắc sau: 245 Bắt ñầu x0 ∈ C , J ( x0 ), k = Kiểm tra ñiều kiện tối ưu Thỏa mãn Xác ñịnh hướng di chuyển Sk Hướng cải tiến ñược Xác ñịnh bước vượt khe α k −1 = α vk Kiểm tra ràng buộc Thỏa mãn Vi phạm ðiều chỉnh bước di chuyển ñạt tới biên miền ràng buộc Chuyển tới phương án α k +1 = α k + α k +1S k Hình Sơ đồ phương pháp vượt khe có ràng buộc 246 Dừng + Nếu xk+1 điểm C, thì: S k +1 = −∇J ( x k +1 ) + β k +1S k   k k +1 0 k ∈ I1 ∨ S = γ∇J ( x ) ; γ >   ∇J ( x k +1 )  β k +1 =  k k ∈ I2 ∧ ∇J ( x k +1 ) , S k ≤ S    ∇J ( x k +1 )  k ∈ I2 ∧ ∇J ( x k +1 ) , S k k +1 k 〈∇ J x , S 〉 ( )  ) ( ( ) ( (2.1) > ) ñó, I1 tập số k = 0, r, 2r,…, với r số nguyên dương cho trước, gọi chu kỳ khôi phục; I2 = { 0, 1, 2,…} \ I1 + Nếu xk ñiểm biên C, Sk xác định từ hệ thức: ∇J ( x k ) , S k < ∇g i ( x k ) , S k < 0, i ∈ I ( x k ) (2.2) { } I ( x k ) = i ∈ {1, , m} g i ( x k ) = Vì xk chưa điểm tối ưu nên theo ñiều kiện Karush – Kuhn – Tucker hệ có nghiệm ðể tăng độ bám khe hàm mục tiêu, qua chu kì định hướng chuyển động ñược khởi tạo lại cách cho hệ số lái βk = 2.2.2 Tiêu chuẩn hội tụ thuật tốn Bổ đề (Hướng giảm) Giả sử ∇ J Sk > (x ) k > ñó ta có: ∇J ( x k ) , S k < Chứng minh: ( ) k Nếu xk ∈ int C, giả sử ∇J x ≠ , ta cần chứng minh Sk ≠ Ta nhận thấy: ( ) ( ) k k +1 k k a Nếu k ∈ I1 , S = γ∇J x S = −∇J x Khi đó: S k , S k = ∇J ( x k ) 〉 Vậy Sk ≠ 247 ... hẳn thuật toán gradient kiểu hạ nhanh Phương pháp vượt khe giải toán tối ưu phi tuyến có ràng buộc Sau trình bày biến thể phương pháp vượt khe [1, 2] để giải tốn tối ưu phi tuyến có ràng buộc {... tối ưu hóa vượt khe Trong trường hợp có ràng buộc, bước lặp bước vượt khe khỏi miền ràng buộc ta điều chỉnh lại bước di chuyển cho phương án khơng vượt ngồi miền ràng buộc gọi bước vượt khe hiệu... chỉnh Sự kết hợp quy tắc ñiều chỉnh bước theo nguyên lý vượt khe hiệu chỉnh hướng di chuyển phù hợp với hàm có dạng lịng khe tạo thành phương pháp vượt khe giải tốn tối ưu có ràng buộc Với thông

Ngày đăng: 21/11/2022, 15:28

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan