MODEL ŚRODOWISKA WIELOAGENTOWEGO W NEUROEWOLUCYJNYM STEROWANIU STATKIEM



Podobne dokumenty
TRANSCOMP XIV INTERNATIONAL CONFERENCE COMPUTER SYSTEMS AIDED SCIENCE, INDUSTRY AND TRANSPORT

ZASTOSOWANIE ALGORYTMÓW UCZENIA SIĘ ZE WZMOCNIENIEM WE WSPOMAGANIU PROCESÓW PODEJMOWANIA DECYZJI PODCZAS MANEWROWANIA STATKIEM

PROGRAMOWANIE DYNAMICZNE W ROZMYTYM OTOCZENIU DO STEROWANIA STATKIEM

Algorytm genetyczny (genetic algorithm)-

Algorytmy genetyczne

Tomasz Pawlak. Zastosowania Metod Inteligencji Obliczeniowej

Wprowadzenie do teorii systemów ekspertowych

Optymalizacja optymalizacji

Deep Learning na przykładzie Deep Belief Networks

Algorytm memetyczny w grach wielokryterialnych z odroczoną preferencją celów. Adam Żychowski

IMPLIKACJE ZASTOSOWANIA KODOWANIA OPARTEGO NA LICZBACH CAŁKOWITYCH W ALGORYTMIE GENETYCZNYM

Metody i techniki sztucznej inteligencji / Leszek Rutkowski. wyd. 2, 3 dodr. Warszawa, Spis treści

Wstęp do Sztucznej Inteligencji

Algorytm Genetyczny. zastosowanie do procesów rozmieszczenia stacji raportujących w sieciach komórkowych

SYMULACJA PROGRAMÓW KOMPUTEROWEGO WSPOMAGANIA BEZPIECZEŃSTWA TRANSPORTU MORSKIEGO

Dobór parametrów algorytmu ewolucyjnego

ALGORYTMY GENETYCZNE JAKO NARZĘDZIE OPTYMALIZACYJNE STOSOWANE W SIECIACH NEURONOWYCH

Algorytmy ewolucyjne

Algorytmy sztucznej inteligencji

ALGORYTMY GENETYCZNE (wykład + ćwiczenia)

Wykład organizacyjny

Zastosowanie sztucznej inteligencji w testowaniu oprogramowania

Algorytmy genetyczne. Dariusz Banasiak. Katedra Informatyki Technicznej Wydział Elektroniki


Strategie ewolucyjne (ang. evolution strategies)

Algorytmy ewolucyjne NAZEWNICTWO

Wykład wprowadzający

Algorytmy ewolucyjne 1

SZTUCZNA INTELIGENCJA

SCHEMAT ROZWIĄZANIA ZADANIA OPTYMALIZACJI PRZY POMOCY ALGORYTMU GENETYCZNEGO

Algorytmy genetyczne

Inżynieria danych I stopień Praktyczny Studia stacjonarne Wszystkie specjalności Katedra Inżynierii Produkcji Dr Małgorzata Lucińska

Obliczenia ewolucyjne - plan wykładu

Wojciech Jaśkowski. 6 marca 2014

Sztuczna inteligencja i uczenie maszynowe w robotyce i systemach autonomicznych: AI/ML w robotyce, robotyka w AI/ML

Automatyczny dobór parametrów algorytmu genetycznego

Metody Inteligencji Sztucznej i Obliczeniowej

Prof. Stanisław Jankowski

Generowanie i optymalizacja harmonogramu za pomoca

ALGORYTMY GENETYCZNE ćwiczenia

PRZEWODNIK PO PRZEDMIOCIE

6. Klasyczny algorytm genetyczny. 1

Podejście memetyczne do problemu DCVRP - wstępne wyniki. Adam Żychowski

Równoważność algorytmów optymalizacji

Algorytm wstecznej propagacji błędów dla sieci RBF Michał Bereta

KARTA PRZEDMIOTU. 17. Efekty kształcenia:

1. Historia 2. Podstawy neurobiologii 3. Definicje i inne kłamstwa 4. Sztuczny neuron i zasady działania SSN. Agenda

Algorytmy genetyczne. Materiały do laboratorium PSI. Studia niestacjonarne

Metoda ewolucyjnego doboru współczynników funkcji oceniającej w antywarcabach

METODY INTELIGENCJI OBLICZENIOWEJ. ZASTOSOWANIE SIECI NEURONOWYCH W PROGNOZOWANIU

ID1SII4. Informatyka I stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny) stacjonarne (stacjonarne / niestacjonarne)

MAGICIAN. czyli General Game Playing w praktyce. General Game Playing

Sztuczna Inteligencja Tematy projektów Sieci Neuronowe

ZASTOSOWANIE WIELOPOPULACYJNEGO ALGORYTMU EWOLUCYJNEGO DO PROBLEMU WYZNACZANIA ŚCIEŻKI PRZEJŚCIA

LABORATORIUM 4: Algorytmy ewolucyjne cz. 2 wpływ operatorów krzyżowania i mutacji na skuteczność poszukiwań AE

Algorytmy stochastyczne, wykład 01 Podstawowy algorytm genetyczny

SZTUCZNA INTELIGENCJA

KARTA MODUŁU KSZTAŁCENIA

Plan. Zakres badań teorii optymalizacji. Teoria optymalizacji. Teoria optymalizacji a badania operacyjne. Badania operacyjne i teoria optymalizacji

LABORATORIUM 3: Wpływ operatorów krzyżowania na skuteczność poszukiwań AE

Konstrukcja modeli decyzyjnych dla krótkoterminowych inwestycji walutowych przy zastosowaniu systemu neuroagentowego

Zastosowanie sieci neuronowych w problemie klasyfikacji wielokategorialnej. Adam Żychowski

ZACHODNIOPOMORSKI UNIWERSYTET TECHNOLOGICZNY W SZCZECINIE

PRZEWODNIK PO PRZEDMIOCIE

Zastosowania sieci neuronowych

Sztuczne sieci neuronowe w zastosowaniu do modelowania fazy wznoszenia samolotu

Zastosowanie sztucznych sieci neuronowych w prognozowaniu szeregów czasowych (prezentacja 2)

Elementy kognitywistyki III: Modele i architektury poznawcze

PRZEWODNIK PO PRZEDMIOCIE

Stefan Sokołowski SZTUCZNAINTELIGENCJA. Inst. Informatyki UG, Gdańsk, 2009/2010

Aproksymacja funkcji a regresja symboliczna

MODYFIKACJA WARIANTÓW SUKCESJI W EWOLUCYJNEJ METODZIE PLANOWANIA ŚCIEŻKI PRZEJŚCIA

Zadania laboratoryjne i projektowe - wersja β

Metody Rozmyte i Algorytmy Ewolucyjne

KONCEPCJA WYKORZYSTANIA SZTUCZNYCH SIECI NEURONOWYCH W DIAGNOSTYCE PRZEKŁADNI ZĘBATYCH

Sztuczna inteligencja

MATLAB Neural Network Toolbox przegląd

ZASTOSOWANIE ROBOTÓW MOBILNYCH W SYMULACYJNYM BADANIU CZASU EWAKUACJI

Katedra Informatyki Stosowanej. Algorytmy ewolucyjne. Inteligencja obliczeniowa

Zadanie 5 - Algorytmy genetyczne (optymalizacja)

Inżynieria Ruchu Morskiego wykład 01. Dr inż. Maciej Gucma Pok. 343 Tel //wykłady tu//

Spis treści. Przedmowa... 11

PLANOWANIE I WIZUALIZACJA BEZPIECZNYCH MANEWRÓW STATKÓW OPARTE NA ZMODYFIKOWANYM DIAGRAMIE COCKCROFTA

PLAN WYKŁADU OPTYMALIZACJA GLOBALNA OPERATOR KRZYŻOWANIA ETAPY KRZYŻOWANIA

Uniwersytet Zielonogórski Wydział Elektrotechniki, Informatyki i Telekomunikacji Instytut Sterowania i Systemów Informatycznych

Metody przeszukiwania

Wstęp do teorii sztucznej inteligencji Wykład II. Uczenie sztucznych neuronów.

METODY STEROWANIA INTELIGENTNEGO W OPROGRAMOWANIU LABVIEW METHODS OF INTELLIGENT CONTROL IN LABVIEW PROGRAMMING

FOLIA POMERANAE UNIVERSITATIS TECHNOLOGIAE STETINENSIS Folia Pomer. Univ. Technol. Stetin. 2009, Oeconomica 275 (57), 53 58

Odkrywanie algorytmów kwantowych za pomocą programowania genetycznego

Sieci neuronowe i algorytmy uczenia Czyli co i jak andrzej.rusiecki.staff.iiar.pwr.wroc.pl s.

ĆWICZENIE 5: Sztuczne sieci neuronowe

Uczenie sieci typu MLP

MANEWR OSTATNIEJ CHWILI OCENA I ANALIZA DLA MASOWCA W ZALEŻNOŚCI OD ODLEGŁOŚCI ROZPOCZĘCIA MANEWRU I KĄTA KURSOWEGO

Ewolucja Ró»nicowa - Wprowadzenie

Algorytmy genetyczne (AG)

w analizie wyników badań eksperymentalnych, w problemach modelowania zjawisk fizycznych, w analizie obserwacji statystycznych.

WYKORZYSTANIE SIECI NEURONOWEJ DO BADANIA WPŁYWU WYDOBYCIA NA SEJSMICZNOŚĆ W KOPALNIACH WĘGLA KAMIENNEGO. Stanisław Kowalik (Poland, Gliwice)

Systemy agentowe. Uwagi organizacyjne i wprowadzenie. Jędrzej Potoniec

Algorytmy ewolucyjne - algorytmy genetyczne. I. Karcz-Dulęba

Transkrypt:

Mirosław Łącki Akademia Morska w Gdyni MODEL ŚRODOWISKA WIELOAGENTOWEGO W NEUROEWOLUCYJNYM STEROWANIU STATKIEM W artykule tym przedstawiono propozycję użycia neuroewolucyjnego systemu wieloagentowego do wspomagania decyzji manewrowych sternika statku płynącego na ograniczonym obszarze wodnym. W środowisku tym sternik jest osobnikiem określonej populacji, która za pomocą algorytmów ewolucyjnych oraz metod uczenia ze wzmocnieniem dostosowuje się do wyznaczonego zadania, jakim jest bezpieczne przepłynięcie danego obszaru przez wyznaczone jednostki pływające. WSTĘP Jednym z zadań sztucznej inteligencji jest utworzenie autonomicznych jednostek obliczeniowych, zwanych agentami, zdolnych do szybkiego dostosowania się do zmian zachodzących w złożonych, dynamicznych środowiskach. Dodatkowo agent taki, jeśli znajduje się w środowisku wieloagentowym, musi wykazywać się umiejętnością komunikacji z innymi agentami oraz zdolnością do postrzegania i reagowania na zmiany zachodzące w środowisku. Środowisko Wartość przystosowana Sygnały wejściowe Agent Akcja Rys. 1. Interakcja agenta ze środowiskiem W wyniku interakcji ze środowiskiem (rys. 1) modyfikacji podlega punktowa wartość przystosowania agenta do bieżącej sytuacji. Oddziaływanie agenta na środowisko w przypadku sterowania statkiem polega na wybraniu przez niego jednej

M. Łącki, Model środowiska wieloagentowego w neuroewolucyjnym sterowaniu statkiem 31 z założonych w projekcie wartości kąta wychylenia steru statku. Statek jest elementem środowiska, na którego parametry (tj. kurs, prędkość kątową itp.) ma wpływ ciąg decyzji podejmowanych przez agenta. W elemencie ewolucyjnym systemu taki agent jest jednym z osobników populacji rywalizującym z innymi osobnikami o jak najlepszą pozycję w rankingu. Proces uczenia się agenta w środowiskach o niewielkiej dynamice zmian może być realizowany klasycznymi metodami jak uczenie się ze wzmocnieniem (ang. reinforcement learning) [12] lub przy użyciu sztucznych sieci neuronowych ze stałą topologią sieci. Uczenie się ze wzmocnieniem było rozpatrywane w poprzednich badaniach autora dotyczących wspomagania podejmowania decyzji podczas manewrowania statkiem [8]. Problem dużej przestrzeni stanów w takim podejściu można częściowo rozwiązać za pomocą kodowania zgrubnego stanów [11, 13]. Taka metoda obniża dokładność symulowanego modelu, ale poprawia zdolność uczenia się agenta w danym środowisku. W przypadku środowisk dynamicznych z dużą przestrzenią stanów klasyczne podejście nie jest tak wydajne jak metody neuroewolucyjne [5, 7]. 1. EWOLUCYJNE SIECI NEURONOWE W neuroewolucji sztuczna sieć neuronowa jest traktowana jako osobnik w populacji wielu sieci neuronowych. Najlepiej przystosowane osobniki stają się w wyniku selekcji i krzyżowania rodzicami nowego pokolenia, które dziedziczy cechy przodków. Nowe osobniki poddawane są procesowi mutacji, dzięki czemu w populacji mogą się pojawić osobniki o lepszym przystosowaniu. W wyniku mutacji mogą zostać zmienione nie tylko wartości wag, ale także liczba warstw lub liczba neuronów w warstwie. Podejście neuroewolucyjne nasuwa kilka istotnych pytań dotyczących efektywności rozwoju sztucznych sieci neuronowych poprzez ewolucję: Jak powinien wyglądać genotyp osobnika odwzorowujący strukturę sieci neuronowej? Jak przeprowadzać krzyżowanie osobników, by nie utracić istotnych informacji z poprzednich pokoleń? Jak uchronić nowe rozwiązania przed zbyt wczesną eliminacją z populacji? Na wszystkie te pytania można znaleźć odpowiedź, używając rozwiązań zastosowanych w sieciach NEAT [9]. W sieciach NEAT (ang. NeuroEvolution of Augmenting Topologies) za pomocą algorytmów ewolucyjnych poszukiwane są wartości wag połączeń między neuronami oraz rozwijana jest topologia sieci od najprostszej struktury początkowej do wyspecjalizowanej złożonej struktury przystosowanej do rozwiązywanego problemu [14]. Metoda NEAT zawiera rozwiązania dla trzech głównych wyzwań ewolucyjnego udoskonalania sieci neuronowych: Zacznij od prostej struktury neuronowej i rozwijaj ją, dodając nowe połączenia i neurony, tak by wyewoluować najefektywniejsze rozwiązanie zadanego problemu [2].

32 ZESZYTY NAUKOWE AKADEMII MORSKIEJ W GDYNI, nr 67, grudzień 2010 Podczas krzyżowania łącz ze sobą tylko geny historycznie zgodne, tak by umożliwić przekazywanie istotnych informacji potomkom danego pokolenia pomimo różnic w strukturze sieci neuronowych rodziców [1, 4]. Chroń innowacyjne rozwiązania przed zdominowaniem przez doświadczone osobniki poprzez podział gatunkowy populacji [9]. Aby skutecznie realizować operacje genetyczne, potrzebna jest odpowiednia reprezentacja genetyczna struktury sieci neuronowej [6]. 2. SYGNAŁY WEJŚCIOWE SZTUCZNEJ SIECI NEURONOWEJ W symulowanym środowisku sygnały wejściowe o charakterze ciągłym zostały zakodowane do postaci binarnej. System umożliwia też wykorzystanie informacji o charakterze rozmytym lub wielokryterialnym [3]. W wersji podstawowej opracowanego przez autora systemu rozpatrywane były następujące sygnały wejściowe (rys. 2): aktualny kurs statku ψ, prędkość kątowa r, czy kurs jest kolizyjny (wartość binarna), odległość do celu d, kąt do celu Φ, czy niebezpieczeństwo wzrosło (wartość binarna), czy niebezpieczeństwo zmalało (wartość binarna), statek zbliża się do celu (wartość binarna), cel jest widoczny (wartość binarna), kąt wychylenia steru δ. N d 1 Goal δ Ψ d 0 Φ r Rys. 2. Podstawowe sygnały wejściowe sieci neuronowej W udoskonalonym modelu symulacji do podstawowych sygnałów wejściowych dodano także sygnały związane z punktami trasy (rys. 3), tj. odległość i kąt do najbliższego oraz następnego punktu trasy. Dodanie algorytmu wyznaczania pomocniczych punktów trasy do podstawowego systemu było skutkiem obserwacji wyników symulacji złożonych sytuacji manewrowych, tj. tras przejścia o dużej złożoności wymagającej często ostrych zwrotów statku.

M. Łącki, Model środowiska wieloagentowego w neuroewolucyjnym sterowaniu statkiem 33 Rys. 3. Środowisko symulacyjne manewrowania statkiem na ograniczonym obszarze z wyznaczonymi trzema punktami trasy Symulacje bez pomocniczych punktów trasy wykazały duży rozrzut czasowy oczekiwania na uzyskanie efektywnego rozwiązania wynikający z dużej przestrzeni stanów, którą sieć neuronowa eksploruje podczas poszukiwania wartościowych rozwiązań. 3. SYGNAŁY WYJŚCIOWE W uproszczonym modelowanym systemie wspomagania decyzji opartym na sieci neuronowej ważne jest określenie liczby wyjść sieci, czyli liczby kątów wychylenia steru. Większa liczba wyjść sieci oznacza większą złożoność sieci, ale też lepsze odwzorowanie symulowanego modelu. Zbyt duża liczba wyjść może jednak znacznie zmniejszyć szybkość uczenia się sternika i obniżyć jego zdolność przystosowywania się do nowych sytuacji nawigacyjnych. Zakładając przedział kąta wychylenia steru od 35 do +35 w symulacji zastosowano 11 sygnałów wyjściowych o skoku wychylenia steru co 7 : 35, 28, 21, 14, 7, 0, 7, 14, 21, 28, 35. 4. ŚRODOWISKO WIELOAGENTOWE Środowiska wieloagentowe służące do wspomagania decyzji manewrowych na ograniczonym obszarze wodnym można podzielić na dwie kategorie: system wieloagentowy dla pojedynczego statku, system wieloagentowy dla wielu statków.

34 ZESZYTY NAUKOWE AKADEMII MORSKIEJ W GDYNI, nr 67, grudzień 2010 Model pierwszy dotyczy sytuacji, w której chcemy wytrenować sternika zdolnego bezpiecznie przeprowadzić dany model statku przez ograniczony obszar wodny od pozycji startowej do wyznaczonego celu (rys. 4). Pozostałe jednostki na danym obszarze poruszają się po wstępnie wyznaczonych trasach i jednym z zadań populacji trenowanych agentów sterujących pojedynczym statkiem jest dostosowanie swego zachowania do sytuacji na danym obszarze. W tym modelu trenowanie agentów jest symultaniczne, tzn. agenci nie komunikują się między sobą. Rys. 4. Przykład środowiska wieloagentowego populacji sterników pojedynczego statku. W danym momencie czasowym z badanej populacji (białe jednostki) można wyodrębnić najlepszego sternika W drugim przypadku populacje agentów sterują kilkoma różnymi jednostkami pływającymi, z których każda ma inną pozycję startową oraz inny wyznaczony cel (rys. 5). Ten model wymaga komunikacji agentów między sobą w celu uniknięcia kolizji. Rys. 5. Przykład środowiska wieloagentowego trenującego sterników kilku statków. W tym przykładzie czterej agenci mają odrębne zadania bezpiecznego przejścia czterech statków na tym samym ograniczonym obszarze

M. Łącki, Model środowiska wieloagentowego w neuroewolucyjnym sterowaniu statkiem 35 WNIOSKI Metody neuroewolucyjne zastosowane w rozwiązywaniu zadań w środowiskach wieloagentowych wykazują dużą efektywność nawet w złożonych sytuacjach manewrowych. Dzięki temu model środowiska symulującego bezpieczne przejście pojedynczego statku lub grupy statków przez ograniczony obszar wodny może być bardziej złożony, czyli dokładniej odwzorowywać sytuację rzeczywistą. Dodatkową zaletą neuroewolucyjnego systemu wieloagentowego jest zdolność do uczenia agentów podejmowania decyzji na różnych jednostkach pływających oraz dla różnych sytuacji manewrowych. LITERATURA 1. Beyer H.G., Schwefel P.H., Evolution strategies A comprehensive introduction, Natural Computing, 2002, 1(1). 2. Braun H., Weisbrod J., Evolving feed-forward neural networks, Proceedings of ANNGA 93, International Conference on Artiffcial Neural Networks and Genetic Algorithms, Springer, Berlin 1993. 3. Filipowicz W., Łącki M., Szłapczyńska J., Multicriteria decision support for vessels routing, Proceedings of ESREL05 Conference, Gdańsk 2005. 4. Kenneth O.S., Miikkulainen R., Effcient Evolution of Neural Network Topologies, Proceedings of the 2002 Congress on Evolutionary Computation, Piscataway, 2002. 5. Kenneth O.S., Miikkulainen R., Effcient reinforcement learning through evolving neural network topologies, Proceedings of the Genetic and Evolutionary Computation Conference (GECCO- 2002), CA, Morgan Kaufmann, San Francisco 2002. 6. Kenneth O.S., Miikkulainen R., Real-Time Neuroevolution in the NERO Video Game, Proceedings of the IEEE 2005 Symposium on Computational Intelligence and Games, Piscataway, 2005 7. Łącki M., Ewolucyjne sieci NEAT w sterowaniu statkiem, Inżynieria Wiedzy i Systemy Ekspertowe, Akademicka Oficyna Wydawnicza EXIT, Warszawa 2009. 8. Łącki M., Machine Learning Algorithms in Decision Making Support in Ship Handling, Proceedings of TST Conference, WKL, Katowice Ustroń 2007. 9. Łącki M., Neuroevolutionary approach towards ship handling, Proceedings of TST Conference, WKL, Katowice Ustroń 2008. 10. Łącki M., Speciation of population in neuroevolutionary ship handling, [w:] Marine Navigation and Safety of Sea Transportation, red. A. Weintrit, CRC Press/Balkema, Taylor&Francis Group, Boca Raton London New York Leiden, 2009. 11. Sutton R., Generalization in Reinforcement Learning: Successful Examples Using Sparse Coarse Coding, Neural Information Processing Systems, 1996, 8. 12. Sutton R., Barto A., Reinforcement Learning: An Introduction, MIT Press, 1998. 13. Tesauro G., Temporal Difference Learning and TD-Gammon, Communications of the Association for Computing Machinery, 1995, vol. 38, no. 3. 14. Touretzky D., Mozer M., Hasselmo M., Neural Information Processing Systems, MIT Press, 1996.

36 ZESZYTY NAUKOWE AKADEMII MORSKIEJ W GDYNI, nr 67, grudzień 2010 MULTI-AGENT ENVIRONMENT FOR NEUROEVOLUTIONARY SHIP HANDLING Summary This paper presents the proposal of multi-agent environment to simulate and demonstrate learning behavior of helmsmen in ship maneuvering. Simulated helmsmen are treated as individuals in population, which through environmental sensing learn themselves to navigate in restricted waters selecting an optimum trajectory of a vessel. Learning phase of the task is to observe current situation and choose the best action. Neuroevolutionary algorithms are used to solve this task. The best fitted individuals from each population become parents for the next generation of helmsmen in simulated multi-agent navigational situation.