Modelowanie i analiza syst. informatycznych 2
Materiały do wykładów
Wykłady #2 (13.04.2019)
Wykłady #1 (23.03.2019)
Materiały do laboratoriów
Projekty
Poniżej zamieszczam listę projektów, które będą realizowane na 3 i 4 laboratoriach. Skupiłem się na tematach, które były z powodzeniem realizowane w poprzednich latach, są więc wykonywalne. Własne propozycje sa mile widziane! W przypadku wszystkich projektów wizualizacja graficzna może być prosta i schematyczna, jak najbardziej wskazane jest też wykorzystanie gotowych bibliotek czy komponentów.
Zautomatyzowany system aukcyjny(inspiracja: system Kasbah)- Agenci kupujący i sprzedający obsługujący dowolną liczbę przedmiotów (interakcja z użytkownikiem poprzez GUI)
- Określenie czasu wystawienia przedmiotu do sprzedaży lub poszukiwania przedmiotu do kupienia
- Określenie strategii modyfikacji ceny sprzedaży i zakupu przedmiotu(3 strategie opisane w pracy na temat systemu Kasbah)
- Prosta wizualizacja przebiegu aukcji (wykres przedstawiający zmianę ceny kupna/sprzedaży w czasie), zarówno po stronie agenta kupującego, jak i sprzedającego
- Demonstracja idei agentów reaktywnych (inspiracja: Mars Explorer)
- Realizacja idea agentów reaktywnych, zbierających próbki na nieznanej planecie i zostawiających reaktywne ślady
- Wizualizacja środowiska oraz robotów
- System nadzorujący lądowanie samolotów (inspiracja: system Oasis)
- Agenci kontrolujący poszczególne samoloty, agent odpowiedzialny za ustalanie i kontrolę sekwencji lądowania oraz agent symulujący zmienne warunki pogodowe wokół lotniska (np. wiatr)
- Każdy z agentów-samolotów posiada swój profil opisujący możliwości samolotu (zakres prędkości, przyspieszenie)
- Podczas uruchamiania każdy agent-samolot losuje swoje położenie oraz poziom paliwa (który zmienia się w trakcie symulacji)
- Agent-kontroler ustala sekwencję lądowania i przekazuje ją samolotom -- samoloty starają się ją realizować i i w razie problemów (np. wiatr) proszą kontrolera o zmianę miejsca w kolejce
- Prosta wizualizacja graficzna 2D położenia samolotów, prezentacja ich parametrów oraz sekwencji lądowania
- Proste wyścigi samochodowe
- Wyścig samochodów-agentów po zadanym torze oraz z zadaną liczba okrążeń
- Obserwacja otoczenia przez agenta i unikanie kolizji (wbudowane podstawowe reguły ruchu -- np. pierwszeństwo z prawej strony)
- Schematyczna wizualizacja przebiegu wyścigów
- System wspomagający wykonanie algorytmów klinicznych
- Agenci związani z poszczególnymi osobami z zespołu lekarsko-pielęgniarskiego oraz agent nadzorujący
- Agenci związani z personelem medycznym opisani za pomocą umiejętności/kompetencji
- Synchronizacja działań agentów zgodnie z przyjętym algorytmem postępowania (algorytm może być wbudowany w agenta nadzorującego)
- Prezentacja zadań przydzielonych poszczególnym członkom zespołu na podstawie ich kompetencji oraz umożliwienie ich wykonania (wystarczy potwierdzenie wykonania zalecanej akcji)
- Możliwe wykorzystanie biblioteki WADE (JADE + workflows: http://jade.tilab.com/wadeproject/)
- Komputerowa giełda
- Agenci-gracze oraz agent zarządzający sesją (także agenci pomocniczy -- np. zarządzający historycznymi notowaniami)
- Agenci handlują wybranymi przez użytkownika akcjami (zbiór ograniczony do 4-5 walorów), a ich zadaniem jest maksymalizacja zysku (biorąc pod uwagę horyzont czasowy narzucony przez użytkownika)
- Użytkownik powinien mieć możliwość określenia minimalnego zysku, który chce osiągnąć i maksymalnej straty, jaką dopuszcza
- Agent zarządzający ustala ceny akcji oraz realizuje zlecenia -- można założyć jednolity system ustalania kursów akcji i możliwość jednokrotnego składania zleceń
- Informacje na temat ustalania kursu akcji: https://www.bankier.pl/wiadomosc/Ustalanie-kursow-na-GPW-1710292.html
- System powinien wizualizować (graficznie) przebieg sesji oraz stan posiadania poszczególnych agentów
Wojownicy- Agenci-wojownicy wędrujący po labiryncie w poszukiwaniu skarbów, każdy z wojowników opisany jest wskaźnikami zdrowia, obrażeń, odwagi i prędkości
- Wojownicy mogą ze sobą walczyć i zdobywać w ten sposób skarby zebrane przez konkurencję
- W labiryncie mogą też pojawiać się potwory pilnujące bardziej wartościowych skarbów
- Schematyczna wizualizacja 2D przebiegu gry
Laboratoria #2
- Wprowadzenie do metody O-MaSE (prezentacja, pdf)
- Praca na temat analizy i projektowania MAS CMS (pdf)
- Modele O-MaSE dla prezentowanego systemu (zip)
Laboratoria #1
- Wprowadzenie do JADE (prezentacja, pdf)
- Prosty kurs programowania w JADE (pdf)
- Dokumentacja programistyczna dla JADE (pdf)
- JADE 4.5.0 (jar)
- Kod źródłowy przykładu (zip)
Organizacja zajęć
Celem przedmiotu jest przedstawienie zagadnień związanych z analizą, modelowaniem oraz implementacją systemów wieloagentowych, a także wybranych tematów pokrewnych (np. wykorzystania onotologii w komunikacji między agentami). Wykłady będą poświęcone (przede wszystkim) prezentacji teorii, natomiast na laboratoriach omówione będą narzędzia i metody o charakterze praktycznym (np. środowisko JADE służące do tworzenia i uruchamiania systemów wielo-agentowych). Część zajęć laboratoryjnych będzie poświęcona realizacji mini-projektów (obejmujących zaprojektowanie i zaimplementowanie prostych systemów wieloagentowych).
Szczegółowy opis przedmiotu znajduje się w jego karcie ECTS.