Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

GOOL – GLOBAL OPTIMIZATION OBJECT-ORIENTED LIBRARY

Podobne prezentacje


Prezentacja na temat: "GOOL – GLOBAL OPTIMIZATION OBJECT-ORIENTED LIBRARY"— Zapis prezentacji:

1 GOOL – GLOBAL OPTIMIZATION OBJECT-ORIENTED LIBRARY
Marek Publicewicz Ewa Niewiadomska-Szynkiewicz Naukowa i Akademicka Sieć Komputerowa (NASK) Instytut Automatyki i Informatyki Stosowanej, Politechnika Warszawska KAEOG 2003

2 Plan Prezentacji Wprowadzenie
Biblioteka GOOL (Global Optimization Object-oriented Library) - założenia funkcjonalne - opis działania systemu GOOL/CON - opis działania systemu GOOL/GUI Część wizualizacyjna (GUI) interakcyjna definicja zadań + analizator wyrażeń prezentacja graficzna optymalizowanych funkcji prezentacja graficzna wyników obliczeń Metody numeryczne w GOOL - biblioteka generatorów losowych (GOOL/RG) - biblioteka metod optymalizacji (GOOL/OM) Eksperymenty numeryczne

3 Część numeryczna jest zrealizowana w C/C++
Biblioteka GOOL Biblioteka GOOL łącznie z częścią wizualizacyjną stanowi narzędzie do badania metod optymalizacji dla różnych zadań testowych: wprowadzanych w postaci analitycznej (korzystając z interfejsu lub z pliku tekstowego) wprowadzonych w postaci symulatora Część numeryczna jest zrealizowana w C/C++ Interfejs graficzny w języku skryptowym Tcl / Tk

4 Wersje biblioteki GOOL
Dwie wersje biblioteki: GOOL / GUI GOOL / CON GOOL / GUI Wersja działająca w środowisku graficznym (przeznaczona do celów edukacyjnych) GOOL / CON Wersja działająca w trybie tekstowym (przeznaczona do prac naukowo-badawczych)

5 Elementy składowe biblioteki GOOL
GOOL / GUI Interfejs graficzny Definiowanie zadań, ustalanie wartości parametrów metod, prezentacja wyników GOOL / RG Biblioteka generatorów losowych Różne generatory liczb pseudolosowych i sekwencji losowych GOOL / OM Biblioteka metod optymalizacji Metody optymalizacji wypukłej i niewypukłej

6 Funkcjonalność systemu GOOL
Zarządzanie zadaniami postać analityczna funkcji celu funkcje proceduralne - osobne pliki wykonywalne autorski podsystem zarządzania strukturą zadania (symboliczny) zarządzanie symbolami i ograniczeniami Wizualizacja zadań wykresy funkcji jednej zmiennej wykresy poziomicowe, skalowanie obszaru, dopuszczalność wykres trójwymiarowy dla zadań dwuwymiarowych Metody optymalizacji uporządkowanie metod w hierarchię drzewiastą nadawanie wartości parametrom metod możliwość wyboru metod lokalnych oraz minimalizacji w kierunku definiowanie wielkości charakterystycznych dla danej metody

7 Założenia implementacyjne
przenośność (docelowe systemy: Linux, Windows) połączenie języka skryptowego (Tcl/Tk - GUI) z językiem C++ (selekcja w doborze mechanizmów) wykorzystanie podczas budowy wzorców projektowych wyodrębnienie podsystemu obliczania wartości i operowania na wyrażeniach symbolicznych - C

8 Schemat fragmentu hierarchii klas biblioteki GOOL

9 Działanie systemu GOOL/CON
Uruchomienie programu GOOL/CON gool_con task_file task_file – nazwa pliku zawierającego zadanie optymalizacji RAPORT Parametry zadania (dokładność obliczeń, postać funkcji kary, użyte generatory losowe) Znalezione rozwiązanie zadania Numer iteracji, w której znaleziono rozwiązanie Wartości ograniczeń w rozwiązaniu Liczba uderzeń w ograniczenia Całkowita liczba iteracji Liczba obliczeń funkcji celu Czas trwania obliczeń Kryterium zatrzymania metody

10 Foramat pliku task_file
<NAME> nazwa zadania <DESCRIPTION> opis słowny zadania <DIMENSION> wymiar <BOUNDS> ograniczenia kostkowe <SYMBOLS> definicje symboli pomocniczych <OBJECTIVE> wskaźnik jakości <CONSTRAINTS> ograniczenia nierównościowe <PARAMS> parametry zadania <GRADIENTS> postać analityczna gradientu <START_POINTS> punkt początkowy optymalizacji

11 Działanie systemu GOOL/GUI
Główne okno aplikacji Informacje dotyczące zadania: Name – nazwa Objective – funkcja celu Metody optymalizacji z biblioteki Pliki z wynikami optymalizacji

12 Definiowanie zadania optymalizacji
KAEOG 2003

13 Sposoby prezentacji wyników obliczeń
Generatory losowe prezentacja punktów na płaszczyźnie wyświetlanie histogramów Minimalizacja funkcji (GUI): obserwowanie przebiegu działania na wykresach poziomicowych - trzy rodzaje prezentacji: trajektorie zbiory punktów przeszukiwane komórki (GUI): tryb edukacyjny: prezentacja przebiegu minimalizacji w kierunku raportowanie wielkości charakterystycznych danej metody prezentacja zmian istotnych parametrów charakteryzujących algorytm informowanie użytkownika o stanie działania algorytmu (GUI): zapis przebiegu optymalizacji do pliku (CON): szczegółowy raport końcowy

14 Prezentacja wyników obliczeń
KAEOG 2003

15 Prezentacja wyników obliczeń
Metody minimalizacji w kierunku Generatory losowe

16 Tryb edukacyjny Zadania jednowymiarowe Zadania wielowymiarowe

17 Algorytmy optymalizacji w systemie GOOL
Metody optymalizacji globalnej metody deterministyczne podziału i ograniczeń Galperina, Gourdina, Meewella-Mayne trajektorii cząstki Griewanka metody niedeterministyczne poszukiwań losowych symulowanego wyżarzania CRS2, CRS3, CRS6 wykorzystujące grupowanie algorytm Törna (warianty grupowania) algorytmy ewolucyjne kodowanie binarne kodowanie rzeczywistoliczbowe

18 Metody podziału i ograniczeń
Siatka nierównomierna Warunek Lipschitza metod Galperina Funkcja aproksymująca zbiór dopuszczalny środek komórki wybrana komórka dzielona na p komórek metod Gourdina-Hansena-Jaumard Funkcja aproksymująca zbiór dopuszczalny środek komórki wybrana komórka dzielona na p komórek

19 Metody trajektorii cząstki
Griewanka Nowy punkt: Kierunek: Gdzie

20 Metody minimalizacji w kierunku
Algorytmy optymalizacji w systemie GOOL Metody optymalizacji lokalnej sympleks nieliniowy Neldera-Meada metoda Powella BFGS Metody minimalizacji w kierunku aproksymacja funkcji parabolą metoda złotego podziału ekstrapolacja/interpolacja kwadratowa z testem Goldsteina metoda Pijavskiego-Shuberta

21 Biblioteka generatorów losowych
jednostajny trzy generatory liniowe trzy sekwencje pseudolosowe (Haltona, Faure, Sobola) normalny metoda ROU zmodyfikowana metoda odwracania dystrybuanty metoda Box’a - Mullera beta(a,b)

22 Podsumowanie Główne obszary zastosowania programu:
minimalizacja zadań wielowymiarowych z ograniczeniami funkcyjnymi różnymi metodami przedstawianie charakteru zmienności badanych funkcji z uwzględnieniem ograniczeń analiza wpływu parametrów zadania i ograniczeń na postać minimalizowanej funkcji badanie wpływu wartości parametrów na ich skuteczność lepsze zrozumienie sposobu zachowania się najbardziej popularnych algorytmów, poprzez śledzenie ich działania w trybie edukacyjnym Potencjalne kierunki rozbudowy: rozbudowa biblioteki metod uwzględnianie ograniczeń - inne metody wizualizacja przebiegu algorytmów na wykresie przestrzennym rozbudowanie podsystemu zarządzającego wyrażeniami symbolicznymi


Pobierz ppt "GOOL – GLOBAL OPTIMIZATION OBJECT-ORIENTED LIBRARY"

Podobne prezentacje


Reklamy Google