Piotr J.

Piotr J. Młodszy analityk

Temat: Różniczkowanie numeryczne - szybki algorytm

Cześć, czy znacie może jakieś szybkie algorytmy różniczkowania funkcji wielu zmiennych? Mam pewien algorytm optymalizacyjny do którego wrzucam 15 zmiennych i wszystko wlecze się strasznie. Można tam podmieniać moduł do różniczkowania napisany w C więc wziąłem podręcznik do metod numerycznych i próbowałem je tam podpinać ale mam kiepskie wyniki i dostaję paskudnie duże błędy z każdą kolejną pochodną. Macie jakieś doświadczenia w tym zakresie? Prosze o szybką odp. bo mam bardzo mało czasu i przeroslo mnie to. Dzięki

Piotr

Temat: Różniczkowanie numeryczne - szybki algorytm

Obawiam się, że skoro implementujesz metody z podręcznika metod numerycznych, to są to klasyczne metody różniczkowanie numerycznego, które bywają powolne, a wynik obarczony jest skumulowanymi błędami zaokrągleń. W XXI wieku warto zainteresować się już czymś nowocześniejszym - różniczkowaniem algorytmicznym, które jest wybitnie niedoceniane (i nie mam pojęcia dlaczego).

Tutaj masz bezbolesne wprowadzenie do metody, a tutaj nieco materiałów. W Google szukaj pod "różniczkowanie algorytmiczne" albo "różniczkowanie automatyczne".

konto usunięte

Temat: Różniczkowanie numeryczne - szybki algorytm

Jeżeli potrzebujesz algorytmicznie różniczkować w Java bądź Clojure, to polecam Ci narzędzie mojego autorstwa, Deriva. Jego opis jest tutaj http://developers.opengamma.com/blog/2013/10/28/deriva... a pobrać można z https://github.com/lambder/Deriva . Jest to oprogramowanie open-source, z licencją business friendly.

Następna dyskusja:

Szybki algorytm wyszukiwani...




Wyślij zaproszenie do