Spis treści

# Opcje algorytmów Solvera

## Algorytm ewolucyjny DEPS

DEPS składa się z dwóch niezależnych algorytmów: Ewolucja różnicowa i Optymalizacja roju cząstek. Obydwa nadają się szczególnie do rozwiązywania problemów numerycznych, takich jak optymalizacja nieliniowa, i uzupełniają się nawzajem, wyrównując swoje niedociągnięcia.

Ustawienia | Opis
--- | ---
Wskaźnik przełączania agenta | Określa prawdopodobieństwo, że jednostka wybierze strategię ewolucji różnicowej.
Przyjmij, że zmienne są liczbami nieujemnymi | Zaznacz, aby wymusić, że wartości zmiennych mogą być tylko dodatnie.
DE: Prawdopodobieństwo podziału | Określa prawdopodobieństwo, że jednostka połączy się z globalnym najlepszym punktem. Jeśli podział nie jest używany, punkt zostanie złożony z pamięci własnej jednostki.
DE: Współczynnik skalowania | W trakcie podziału, współczynnik podziału decyduje o “szybkości” przesunięcia.
Cykle uczenia się | Określa liczbę iteracji, jakie powinien wykonać algorytm. W każdej iteracji, wszystkie jednostki szacują najlepsze rozwiązanie i udostępniają swoją wiedzę.
PS: Stała poznawcza | Ustawia znaczenia własnej pamięci (w szczególności najlepszy dotychczas osiągnięty punkt).
PS: Współczynnik zawężania | Określą szybkość, z jaką cząsteczki/jednostki zbliżają się do siebie.
PS: Prawdopodobieństwo mutacji | Określa prawdopodobieństwo, że zamiast przeniesienia składnika cząsteczki w stronę najlepszego punktu, wybierze on losową nową wartość z poprawnego zakresu tej zmiennej.
PS: Stała społeczna | Ustawia znaczenie globalnego najlepszego punktu pomiędzy wszystkimi cząsteczkami/jednostkami.
Wyświetl rozszerzony status Solvera | Jeśli włączone, wyświetlane będzie dodatkowe okno w trakcie procesu rozwiązywania problemu, wyświetlające informacje o postępie, stopniu stagnacji, aktualnym najlepszym rozwiązaniu, oraz umożliwiające wstrzymanie i wznowienie solvera.
Wielkość roju | Określa liczbę jednostek biorących udział w procesie uczenia. Każda jednostka szuka rozwiązania samej siebie i uzupełnia ogólny stan wiedzy.
Granica stagnacji | Jeśli ta liczba jednostek odnajdzie rozwiązanie w zamkniętym zakresie, iteracja zostanie zatrzymana i najlepsza z wartości zostanie wybrana jako optymalna.
Tolerancja stagnacji | Określa, w jakim zakresie rozwiązania są uważane za „podobne”.

Użyj komparatora ACR

Jeśli wyłączono (domyślnie), używany jest komparator BCH. Porównuje dwie jednostki, najpierw poszukując naruszeń ich ograniczeń, a dopiero gdy te są równe, dokonuje pomiaru aktualnego rozwiązania.

Jeśli włączono, używany jest komparator ACR. Porównuje dwie jednostki zależne od aktualnej iteracji i dokonuje pomiaru ich zgodności, korzystając z bibliotek najgorszych znanych rozwiązań (w odniesieniu do naruszeń ich ograniczeń).

Użyj losowego punktu początkowego | Jeśli włączono, biblioteka jest zwyczajnie wypełniana losowymi punktami. Jeśli wyłączono, aktualne wartości (podane przez użytkownika) są wstawiane do biblioteki jako punkt odniesienia.
Szacowanie zmiennych granic | Jeśli włączono (domyślnie), algorytm podejmie próbę odnalezienia zmiennych granic, zaczynając od wartości początkowych.
Próg zmiennych granic | Próg ten określa, w jaki sposób wartości początkowe są przesuwane podczas szacowania zmiennych granic. Zobacz podręcznik na stronach wiki, aby zobaczyć przykład sposobu obliczania tych wartości.

## Algorytm ewolucyjny SCO

Społeczna optymalizacja poznawcza uwzględnia ludzkie zachowania polegające na uczeniu się i dzieleniu się informacjami. Każda jednostka ma dostęp do wspólnej biblioteki, w której wiedza jest dzielona pomiędzy wszystkimi osobami.

Ustawienia | Opis
--- | ---
Przyjmij, że zmienne są liczbami nieujemnymi | Zaznacz, aby wymusić, że wartości zmiennych mogą być tylko dodatnie.
Cykle uczenia się | Określa liczbę iteracji, jakie powinien wykonać algorytm. W każdej iteracji, wszystkie jednostki szacują najlepsze rozwiązanie i udostępniają swoją wiedzę.
Wyświetl rozszerzony status Solvera | Jeśli włączone, wyświetlane będzie dodatkowe okno w trakcie procesu rozwiązywania problemu, wyświetlające informacje o postępie, stopniu stagnacji, aktualnym najlepszym rozwiązaniu, oraz umożliwiające wstrzymanie i wznowienie solvera.
Wielkość biblioteki | Określa ilość informacji przechowywanych w bibliotece publicznej. Każdy człowiek przechowuje tam wiedzę i prosi o informacje.
Wielkość roju | Określa liczbę jednostek biorących udział w procesie uczenia. Każda jednostka szuka rozwiązania samej siebie i uzupełnia ogólny stan wiedzy.
Granica stagnacji | Jeśli ta liczba jednostek odnajdzie rozwiązanie w zamkniętym zakresie, iteracja zostanie zatrzymana i najlepsza z wartości zostanie wybrana jako optymalna.
Tolerancja stagnacji | Określa, w jakim zakresie rozwiązania są uważane za „podobne”.

Użyj komparatora ACR

Jeśli wyłączono (domyślnie), używany jest komparator BCH. Porównuje dwie jednostki, najpierw poszukując naruszeń ich ograniczeń, a dopiero gdy te są równe, dokonuje pomiaru aktualnego rozwiązania.

Jeśli włączono, używany jest komparator ACR. Porównuje dwie jednostki zależne od aktualnej iteracji i dokonuje pomiaru ich zgodności, korzystając z bibliotek najgorszych znanych rozwiązań (w odniesieniu do naruszeń ich ograniczeń).

Szacowanie zmiennych granic | Jeśli włączono (domyślnie), algorytm podejmie próbę odnalezienia zmiennych granic, zaczynając od wartości początkowych.
Próg zmiennych granic | Próg ten określa, w jaki sposób wartości początkowe są przesuwane podczas szacowania zmiennych granic. Zobacz podręcznik na stronach wiki, aby zobaczyć przykład sposobu obliczania tych wartości.

## Solver liniowy LibreOffice i solver liniowy CoinMP

Ustawienia | Opis
--- | ---
Załóż, że zmienne są liczbami całkowitymi | Zaznacz, aby wymusić, że wartości zmiennych mogą być tylko liczbami całkowitymi.
Przyjmij, że zmienne są liczbami nieujemnymi | Zaznacz, aby wymusić, że wartości zmiennych mogą być tylko dodatnie.
Poziom epsilon | Poziom epsilon. Poprawne wartości mieszczą się w zakresie od 0 (bardzo wąski) do 3 (bardzo luźny). Epsilon to tolerancja zaokrąglania wartości do zera.
Ogranicz głębokość odgałęzienia i powiązania | Określa maksymalną głębokość rozgałęzień i wiązań. Wartość dodatnia oznacza, że głębokość jest bezwzględna. Wartość ujemna oznacza względną granicę głębokości rozgałęzień i wiązań.
Limit czasu Solvera | Ustawia maksymalny czas osiągnięcia przez algorytm zbieżności do rozwiązania.

## Solver nieliniowy z rojem LibreOffice (eksperymentalny)

Ustawienia | Opis
--- | ---
Załóż, że zmienne są liczbami całkowitymi | Zaznacz, aby wymusić, że wartości zmiennych mogą być tylko liczbami całkowitymi.
Przyjmij, że zmienne są liczbami nieujemnymi | Zaznacz, aby wymusić, że wartości zmiennych mogą być tylko dodatnie.
Limit czasu Solvera | Ustawia maksymalny czas osiągnięcia przez algorytm zbieżności do rozwiązania.
Algorytm roju | Ustaw algorytm roju. 0 dla ewolucji różnicowej i 1 dla optymalizacji roju cząstek. Wartość domyślna to 0.

Tematy pokrewne

Opcje Solvera

Solver

Strona wiki w języku angielskim na temat solverów nieliniowych i ich algorytmów

Podręcznik referencyjny solvera lp_solve na sourceforge.net