Trợ giúp quyết định giữa nội suy bậc hai và bậc hai trong tìm kiếm dòng


9

Tôi đang thực hiện tìm kiếm dòng như là một phần của thuật toán BFGS gần như Newton. Trong một bước tìm kiếm dòng tôi sử dụng phép nội suy bậc ba để tiến gần hơn đến trình thu nhỏ cục bộ.

Hãy là chức năng quan tâm. Tôi muốn tìm một x *f ' ( x * ) 0 .f:RR,fC1xf(x)0

Hãy để , f ' ( x k ) , f ( x k + 1 )f ' ( x k + 1 ) được biết đến. Đồng thời giả sử 0 x k < x < x k + 1 . Tôi phù hợp với một đa thức bậc ba Q ( x ) = a x 3 + b x 2 +f(xk)f(xk)f(xk+1)f(xk+1)0xk<x<xk+1 sao cho Q ( 0 ) = f ( x k ) , Q ' ( 0 ) = f ' ( x k ) , Q ( x k + 1 - x k ) = f ( x k + 1 ) Q ( X k + 1 - x k ) =Q(x)=ax3+bx2+cx+dQ(0)=f(xk)Q(0)=f(xk)Q(xk+1xk)=f(xk+1) .Q(xk+1xk)=f(xk+1)

Tôi giải phương trình bậc hai: cho tìm kiếm của tôi x * sử dụng giải pháp hình thức đóng cửa.(1):Q(xxk)=0x

Ở trên hoạt động tốt trong hầu hết các trường hợp, ngoại trừ khi là giải pháp dạng đóng cho ( 1 ) chia cho a trở nên rất gần hoặc chính xác 0 .f(x)=O(x2)(1)a0

Giải pháp của tôi là xem xét và nếu nó "quá nhỏ" chỉ cần lấy giải pháp dạng đóng cho bộ giảm thiểu của đa thức bậc hai Q 2 ( x ) = b x 2 + c x + d mà tôi đã có các hệ số b , c , d từ phù hợp trước đó đến Q ( x ) .aQ2(x)=bx2+cx+db,c,dQ(x)

Câu hỏi của tôi là: Làm thế nào để tôi đưa ra một bài kiểm tra tốt khi nào thực hiện phép nội suy bậc hai trên khối? Cách tiếp cận ngây thơ để thử nghiệm cho là xấu vì lý do số vì vậy tôi nhìn vào | một | < Ε τ nơi ε là máy chính xác, nhưng tôi không thể quyết định một tốt τ đó là quy mô bất biến của f .a0|a|<ϵτϵτf

Câu hỏi về phần thưởng: Có bất kỳ vấn đề số nào khi sử dụng các hệ số, , từ khối phù hợp không thành công hay tôi nên thực hiện một phép tính bậc hai mới với cách tính hệ số phù hợp?b,c,d

Chỉnh sửa để làm rõ: Trong câu hỏi của tôi là thực sự những gì thường được gọi là φ ( α ) = f ( ˉ x k + α ¯ p k ) trong văn học. Tôi chỉ đơn giản hóa việc xây dựng câu hỏi. Vấn đề tối ưu hóa tôi đang giải quyết là phi tuyến tính trong 6 chiều. Và tôi cũng nhận thức được rằng điều kiện Wolfe là đủ cho dòng BFGS tìm kiếm do đó nói rằng tôi đang quan tâm đến f ' ( x * ) 0fϕ(α)=f(x¯k+αpk¯)f(x)0; Tôi đang tìm kiếm thứ gì đó sẽ thỏa mãn điều kiện Wolfe mạnh mẽ và thực hiện tối thiểu hóa xấp xỉ khối là một bước tốt trên đường đi.

Câu hỏi không phải là về BFGS, mà là làm thế nào để xác định khi nào hệ số khối đủ nhỏ để một phép tính gần đúng bậc hai là phù hợp hơn.

Chỉnh sửa 2: Cập nhật ký hiệu, phương trình không thay đổi.

Câu trả lời:


4

Hmm ... phép nội suy bậc ba không phải là chưa từng thấy đối với tìm kiếm dòng, nhưng thường là quá mức cần thiết.

x

Có một số thuật toán tìm kiếm dòng cho BFGS. Đối với các ứng dụng của riêng tôi, sử dụng bộ nhớ BFGS (L-BFGS) giới hạn bộ nhớ, công cụ tìm kiếm này hoạt động rất tốt. Hãy nhớ rằng bạn chỉ cần thỏa mãn các điều kiện của Wolfe và có khả năng bạn sẽ không đạt được nhiều bằng cách tìm ra công cụ thu nhỏ chính xác.

Dù sao, để thực sự trả lời câu hỏi của bạn: Tôi sẽ xem xét đơn giản là chuyển sang đa thức bậc hai nếu giải được khối một mang lại các giá trị "xấu" như NaN hoặc Inf (như được thực hiện ở đây ).

b,c,d

f(xk1)f(x0)xkxk1x0

Hi vọng điêu nay co ich.


b,c,dQ(x)=ax3+bx2+cx+da0Q(x)=bx2+cx+db,c,dthu được cho sự phù hợp này là hợp lý để sử dụng để thực hiện phép nội suy hoặc nếu tôi nên tính lại các hệ số mới cho sự phù hợp bậc hai điển hình.
Emily L.

À, đúng rồi, dĩ nhiên. Tôi không thấy bất kỳ vấn đề nào trong việc sử dụng các hệ số theo quan điểm số. Điểm duy nhất mà tôi nghĩ nó sẽ quan trọng, rất gần với giải pháp mà bạn sẽ chấm dứt bằng mọi cách.
LKlevin

a<<ba0

a0b,cd

4

Có một bài viết của Moré, được thực hiện bởi Nocedal, về điều đó:

Jorge J. Moré và David J. Thuente. 1994. Các thuật toán tìm kiếm dòng với mức giảm đủ đảm bảo. ACM Trans. Môn Toán. Mềm mại. 20, 3 (tháng 9 năm 1994), 286-307. DOI http://dx.doi.org/10.1145/192115.192132 ( in sẵn ).


Chào mừng bạn đến với SciComp.SE! Tôi định dạng bài viết của bạn để dễ dàng tìm thấy bài báo hơn. Nếu bạn có thể tìm thấy một liên kết đến việc triển khai của Nocedal, điều đó sẽ hữu ích.
Christian Clason
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.