#include <Derivative.h>
Diagram dziedziczenia dla Derivative
Metoda pochodnej jest prostą metodą rozwiązywania problemów jednowymiarowych wykorzystującą wartość pochodnej funkcji w punkcie.
Do algorytmu wprowadzono usprawnienie dzięki któremu niemożliwe jest zapętlenie się procesu poszukiwań.
Oznaczenia:
- punkt w k-tej iteracji
- kandydat na punkt w następnej iteracji
- współczynnik wpływu wartości pochodnej w punkcie na przesunięcie punktu roboczego w k-tej iteracji
Dane potrzebne do obliczeń:
- minimalizowana funkcja jednej zmiennej
- punkt poczatkowy
- wymagana dokładność rozwiązania
- początkowa wartość w każdej iteracji (może się zmniejszać gdy wykonywane kroki są za długie).
- współczynnik zmniejszania współczynnika w przypadku, gdy wykonanie kroku dałoby gorszy wynik
Krok 1:
Podstawić oraz .
Krok 2:
Podstawić oraz .
Krok 3:
Obliczyć .
Jeśli , podstawić i przejść do kroku 5. W przeciwnym wypadku przejść do kroku 4.
Krok 4:
Zmniejszyć zgodnie ze wzorem: , a następnie przejsć do kroku 3.
Krok 5:
Jeśli spełniony jest warunek zbieżności, zakoczyć działanie algorytmu i zwrócić jako wynik. W przeciwnym wypadku przejść do kroku 2.
Algorytm zaimplementowano na podstawie pracy dyplomowej:
Grabowski J.: Numeryczne metody optymalizacji, miejsce i data obrony: Politechnika Wrocławska, TODO