Skip to content

Program oblicza minimum lokalne zadanej różniczkowalnej funkcji matematycznej korzystając z algorytmu najszybszego spadku

Notifications You must be signed in to change notification settings

KrystianKjjk/Algorytm-najszybszego-spadku-

Repository files navigation

Algorytm-najszybszego-spadku-

Program oblicza minimum lokalne zadanej różniczkowalnej funkcji matematycznej korzystając z algorytmu najszybszego spadku

Omówienie działania programu

Aplikacja została napisana w języku C# z wykorzystaniem platformy .NET framework 4.6.1. Interfejs użytkownika został napisany w środowisku WPF. Interfejs pozwala na wprowadzenie danych określonych w założeniach projektowych. Program w celu prowadzenia obliczeń na zadanej funkcji wykorzystuje mXPrarser[1].

Wprowadzanie danych

Po uruchomieniu programu wszystkie pola mają wpisane odpowiednie wartości domyślne, które użytkownik może w swobody sposób zmieniać. Podczas wpisywania funkcji należy podać ilość parametrów wejściowych po lewej stronie równania oraz treść równania po prawej stronie np. „f(x1,x2) = x1+x2” a następnie wcisnąć przycisk „zapisz” (użytkownik zostanie poinformowany jeśli zapisana składnia będzie nieprawidłowa). Następnie należy wpisać parametry wejściowe algorytmu: punkt startowy, tau, beta oraz epsilon1-3 lub pozostawć wartości domyślne. Po wybraniu przycisku „Oblicz’ program oblicza minimum funkcji oraz pozwala na wyświetlenie warstwicy pod warunkiem, że funkcja posiada dwie zmienne wejściowe.

Wyświetlanie wyników

  • Po zakończeniu obliczania wyświetlony zostaje odpowiedni komunikat o znalezionym punkcie wraz z informacją czy jest to minimum lokalne funkcji czy jest program utknął nie potrafiąc znaleźć ekstremum.
  • W tabeli zostaną wyświetlane wszystkie obliczone punkty, wraz z ich argumentami oraz wartością funkcji.
  • Jeśli funkcja posiada dwie zmienne to istnieje możliwość narysowania warstwicy poprzez wciśnięcie przycisku „warstwica” ( o zadanej wielkości). Warstwica prezentowana jest poprzez odpowiednie kolory (niebieski dla małych wartości, czerwony dla wysokich wartości, zielony dla środkowych wartości). W oknie warstwicy można narysować nową warstwicę o innych parametrach niż domyślne (należy pamiętać, że im dokładniejsza warstwica, tym dłużej trwa jej rysowanie). Na warstwice nałożone są kolejne obliczone punkty przez algorytm połączone prostą linią.
W celu prowadzenia obliczeń na funkcji zadanej przez użytkownika użyty został mXparser
(http://mathparser.org/) (http://mathparser.org/mxparser-license/)

About

Program oblicza minimum lokalne zadanej różniczkowalnej funkcji matematycznej korzystając z algorytmu najszybszego spadku

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages