Hạn chế của xấp xỉ Newton-Raphson với đạo hàm số gần đúng


17

Giả sử tôi có một số chức năng f và tôi muốn tìm x sao cho f(x)0 . Tôi có thể sử dụng phương pháp Newton-Raphson. Nhưng điều này đòi hỏi tôi phải biết hàm đạo hàm f(x) . Một biểu thức phân tích cho f có thể không có sẵn. Ví dụ, f có thể được xác định bởi một đoạn mã máy tính phức tạp liên quan đến cơ sở dữ liệu của các giá trị thử nghiệm.

Nhưng ngay cả khi rất phức tạp, tôi có thể xấp xỉ f ' ( một ) đối với bất kỳ đặc biệt một bằng cách chọn một số ít ε và calculting f ' ( một ) f ( một + ε ) - f ( một )ff(a)aϵ .f(a)f(a+ϵ)f(a)ϵ

Tôi đã nghe nói rằng có những nhược điểm khác biệt đối với phương pháp này, nhưng tôi không biết chúng là gì. Wikipedia gợi ý rằng "Sử dụng phép tính gần đúng này sẽ dẫn đến kết quả giống như phương thức secant có tốc độ hội tụ chậm hơn so với phương pháp của Newton."

Ai đó có thể vui lòng giải thích về điều này, và cung cấp một tài liệu tham khảo đặc biệt thảo luận về các vấn đề với kỹ thuật này?


5
Phương pháp secant là một phương pháp thay thế tuyệt vời khi công cụ phái sinh đắt tiền để tính toán. Ba bước secant thường tương đương với hai bước Newton và các bước rẻ hơn.

1
Bất cứ khi nào bạn tính toán một đạo hàm bằng số chênh lệch hữu hạn (như bạn đang đề xuất), bất kỳ nhiễu nào trong hàm đều được khuếch đại, vì vậy bạn phải chọn epsilon của mình một cách cẩn thận. Một khả năng là, khi bạn đến gần với giải pháp, hãy chuyển sang phương pháp phân chia nhị phân, điều đó được đảm bảo để hội tụ miễn là f là đơn điệu cục bộ.
Mike Dunlavey

2
Như André đã đề cập, các đạo hàm số hai điểm, như bạn đề xuất, tương đương với một phương thức Secant được khởi động lại . Tuy nhiên, để hội tụ nhanh hơn, tôi sẽ đề xuất thuật toán được gọi là thuật toán Illinois , là họ hàng gần của phương pháp Secant và sẽ chỉ sử dụng một điểm trên mỗi bước, trái với hai điểm trong trường hợp của bạn và sẽ không bị kẹt như Phương pháp vị trí sai.
Pedro

x

Câu trả lời:


12

f:RnRn

Df(x)J(x)(f(x))Tn

Df(x)ei=limε0f(x+εei)f(x)ε

với mỗi , giả sử bạn không thực hiện bất kỳ loại "phân biệt hữu hạn thông minh" nào (như Curtis-Powell-Reid) vì bạn biết (hoặc có thể phát hiện) mô hình thưa thớt của . Nếu lớn, đó có thể là rất nhiều đánh giá chức năng. Nếu bạn có biểu thức phân tích cho , thì việc tính toán nó có thể rẻ hơn. Các phương pháp phân biệt tự động (còn được gọi là thuật toán) cũng có thể được sử dụng trong một số trường hợp để tính toán với chi phí gấp khoảng 3 đến 5 lần so với đánh giá hàm.i=1,,nDfnDfDf

Cũng có những lo ngại về số lượng. Rõ ràng, trên máy tính, chúng ta không thể lấy giới hạn của vô hướng khi nó về 0, vì vậy khi chúng ta ước tính , chúng ta thực sự chọn là "nhỏ" và tính toánDfε

Df(x)eif(x+εei)f(x)ε,

trong đó có nghĩa là nó gần đúng và chúng tôi hy vọng đó là một xấp xỉ thực sự tốt. Tính toán xấp xỉ này trong số học dấu phẩy động là khó khăn vì nếu bạn chọn quá lớn, thì xấp xỉ của bạn có thể xấu, nhưng nếu bạn chọn quá nhỏ, có thể có lỗi làm tròn đáng kể. Những hiệu ứng này được đề cập trong bài viết Wikipedia về sự khác biệt về số lượng một cách chi tiết; tài liệu tham khảo chi tiết hơn có thể được tìm thấy trong bài viết.εε

Nếu lỗi trong ma trận Jacobian không quá lớn, các phép lặp Newton-Raphson sẽ hội tụ. Để biết phân tích lý thuyết chi tiết, xem Chương 25 về Độ chính xác và Tính ổn định của Thuật toán số của Nick Higham , hoặc bài báo của Françoir Tisseur dựa trên đó.Df

Các thư viện thường chăm sóc các chi tiết thuật toán này cho bạn và thông thường, việc triển khai thư viện của thuật toán Newton-Raphson (hoặc các biến thể của chúng) sẽ hội tụ khá độc đáo, nhưng thường thì sẽ có một vấn đề gây ra một số rắc rối do những hạn chế ở trên. Trong trường hợp vô hướng , tôi sẽ sử dụng phương pháp của Brent , nhờ vào tính mạnh mẽ và tốc độ hội tụ tốt trong thực tế.(n=1)

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.