METODYKI BUDOWY HYBRYDOWYCH SYSTEMÓW WIELOAGENTOWYCH



Podobne dokumenty
Zakres wykładu. Podstawy InŜynierii Oprogramowania

O-MaSE Organization-based Multiagent System Engineering. MiASI2, TWO2,

Projektowanie systemów informatycznych. wykład 6

JAK OPTYMALNIE DOBRAĆ ODPOWIEDNIE TECHNOLOGIE INFORMATYCZNE?

Błędy procesu tworzenia oprogramowania (Badania firmy Rational Software Corporation)

Modele bezpieczeństwa logicznego i ich implementacje w systemach informatycznych / Aneta Poniszewska-Marańda. Warszawa, 2013.

PRZEWODNIK PO PRZEDMIOCIE

Opis efektów kształcenia dla modułu zajęć

tel. (+48 81) /22 fax (+48 81) Wykład Ćwiczenia Laboratorium Projekt

Co to jest jest oprogramowanie? 8. Co to jest inżynieria oprogramowania? 9. Jaka jest różnica pomiędzy inżynierią oprogramowania a informatyką?

Spis treści. Analiza i modelowanie_nowicki, Chomiak_Księga1.indb :03:08

SVN. 10 października Instalacja. Wchodzimy na stronę i pobieramy aplikację. Rysunek 1: Instalacja - krok 1

Nazwa przedmiotu: MODELOWANIE I ANALIZA SYSTEMÓW INFORMATYCZNYCH. Modeling and analysis of computer systems Forma studiów: Stacjonarne

TECHNOLOGIE INTERNETOWE W ZARZĄDZANIU I BIZNESIE TIZIB 05 ZOFIA KRUCZKIEWICZ PROJEKTOWANIE SYSTEMÓW WIELOAGENTOWYCH MULTIAGENT SYSTEM PROJECT

Wprowadzenie do metodologii modelowania systemów informacyjnych. Strategia (1) Strategia (2) Etapy Ŝycia systemu informacyjnego

Etapy życia oprogramowania

Etapy życia oprogramowania. Modele cyklu życia projektu. Etapy życia oprogramowania. Etapy życia oprogramowania

Tematy prac magisterskich Rok akademicki 2013/2014

Oceny z prezentacji INKU011S. Zofia Kruczkiewicz

Kryzys oprogramowania. Wprowadzenie do modelowania. Metodyka projektowania. Próby walki z kryzysem. zastosowanie odpowiedniej metodyki projektowania

Narzędzia CASE dla.net. Łukasz Popiel

Tematy seminariów wg Roger S. Pressman, Praktyczne podejście do oprogramowania, WNT, Zofia Kruczkiewicz

Tematy seminariów wg Roger S. Pressman, Praktyczne podejście do oprogramowania, WNT, Zofia Kruczkiewicz

PRZEWODNIK PO PRZEDMIOCIE

INŻYNIERIA OPROGRAMOWANIA

Egzamin / zaliczenie na ocenę*

WPROWADZENIE DO UML-a

Zagadnienia (1/3) Data-flow diagramy przepływów danych ERD diagramy związków encji Diagramy obiektowe w UML (ang. Unified Modeling Language)

KOMPUTEROWE WSPOMAGANIE ZARZĄDZANIA PROJEKTAMI W PRZEDSIĘBIORSTWIE

Feature Driven Development

METODYCZNE ASPEKTY MODELOWANIA ZAUFANIA I REPUTACJI W SPOŁECZNOŚCIACH AGENTÓW PROGRAMOWYCH DLA POTRZEB WSPOMAGANIA PROCESÓW BIZNESOWYCH ORGANIZACJI

PRZEWODNIK PO PRZEDMIOCIE

Wykład 7 Metodyki wytwarzania oprogramowania internetowego (2) Wykładowca: dr inż. Mariusz Trzaska

Karta opisu przedmiotu Zaawansowane techniki analizy systemowej oparte o modelowanie warsztaty

Wytwórstwo oprogramowania. michał możdżonek

Podstawy modelowania programów Kod przedmiotu

KARTA MODUŁU KSZTAŁCENIA

Systemy Informatyki Przemysłowej

Formułowanie i zastosowanie pryncypiów architektury korporacyjnej w organizacjach publicznych

Modelowanie i analiza systemów informatycznych

1. WYMAGANIA WSTĘPNE W ZAKRESIE WIEDZY, UMIEJĘTNOŚCI I INNYCH KOMPETENCJI

Projekt: Współpraca i Rozwój wzrost potencjału firm klastra INTERIZON

Uniwersytet w Białymstoku Wydział Ekonomiczno-Informatyczny w Wilnie SYLLABUS na rok akademicki 2012/2013

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 1 Wprowadzenie do narzędzia CASE. Materiały dla nauczyciela

REALIZACJA AGENTÓW OPROGRAMOWANIA Z WYKORZYSTANIEM ŚRODOWISKA JAVA

Analiza i projektowanie obiektowe w UML Kod przedmiotu

Obiekty graniczne pomiędzy technikami inżynierii oprogramowania a technikami użyteczności i Kansei

Architektura Systemu. Architektura systemu umożliwia kontrolowanie iteracyjnego i przyrostowego procesu tworzenia systemu.

Inżynieria oprogramowania. Jan Magott

Jolanta Łukowska Małgorzata Pakowska Stanisław Stanek Mariusz ytniewski

ZARZĄDZANIE WYMAGANIAMI ARCHITEKTONICZNYMI

Analiza i projekt systemu pracy grupowej z zastosowaniem metodyki SCRUM w technologii SharePoint Karolina Konstantynowicz

UML w Visual Studio. Michał Ciećwierz

Spis treúci. 1. Wprowadzenie... 13

Przedsięwzięcia Informatyczne w Zarządzaniu

Warsztaty FRAME. Sygnatura warsztatu: W1 (W3) Czas trwania: 3 dni

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 3 Ćwiczenia w narzędziu CASE diagram sekwencji. Materiały dla nauczyciela

Cykle życia systemu informatycznego

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 5 Ćwiczenia w narzędziu CASE diagram przypadków uŝycia. Materiały dla nauczyciela

Konfiguracja modelowania w procesie wytwarzania oprogramowania

STUDIA NIESTACJONARNE I STOPNIA Przedmioty kierunkowe

Wykorzystanie standardów serii ISO oraz OGC dla potrzeb budowy infrastruktury danych przestrzennych

Projekt Kompetencyjny - założenia

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 4 Ćwiczenia w narzędziu CASE diagram czynności. Materiały dla studenta

MODELOWANIE SYSTEMU INFORMATYCZNEGO WSPOMAGAJĄCEGO DZIAŁALNOŚĆ USŁUGOWĄ W ŚRODOWISKU OBIEKTOWO ZORIENTOWANYM.

Model referencyjny doboru narzędzi Open Source dla zarządzania wymaganiami

Wprowadzenie do UML, przykład użycia kolizja

Cel wykładu. Literatura. Wyższa Szkoła Menedżerska w Legnicy. Modelowanie wymagań Wykład 2

ANALIZA EKONOMICZNO-FINANSOWA

MODELE CYKLU śycia OPROGRAMOWANIA

WSPOMAGANIE ZARZĄDZANIA W ORGANIZACJI WIRTUALNEJ Z WYKORZYSTANIEM TECHNOLOGII TYPU MULTI-AGENT SYSTEMS

Inżynieria Oprogramowania w Praktyce

Komputerowe Systemy Przemysłowe: Modelowanie - UML. Arkadiusz Banasik arkadiusz.banasik@polsl.pl

Inżynieria oprogramowania (Software Engineering)

Język UML w modelowaniu systemów informatycznych

Biorąc udział w projekcie, możesz wybrać jedną z 8 bezpłatnych ścieżek egzaminacyjnych:

Dobre wdrożenia IT cz. I Business Case.

Projekt systemu informatycznego

Wytwarzanie oprogramowania

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 1 Wprowadzenie do narzędzia CASE. Materiały dla studenta

Diagramy UML, przykład problemu kolizji

Inżynieria oprogramowania

Hurtownie danych i business intelligence. Plan na dziś : Wprowadzenie do przedmiotu

Metodyki i Narzędzia Wytwarzania Oprogramowania (propozycj

Autor Jerzy Roszkowski. Management Systems Consulting. Data utworzenia Data modyfikacji Wersja 4.0

WZORCE LOGIKI APLIKACJI Reużywalne składniki wymagań

Podstawy programowania III WYKŁAD 4

Cele oraz techniki tworzenia prototypów systemów infromatycznych. Inżynieria Oprogramowania

Inżynieria Programowania - Wstęp

In ż ynieria oprogramowania wykład II Modele i fazy cyklu życia oprogramowania

STUDIA I MONOGRAFIE NR

InŜynieria Rolnicza 14/2005. Streszczenie

SYSTEMY INFORMATYCZNE ćwiczenia praktyczne

Informatyka II stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny) kierunkowy (podstawowy / kierunkowy / inny HES)

PRZEWODNIK PO PRZEDMIOCIE

Wykład 1 Inżynieria Oprogramowania

Tematy seminariów wg Roger S. Pressman, Praktyczne podejście do oprogramowania, WNT, Zofia Kruczkiewicz

Projekty BPM z perspektywy analityka biznesowego. Wrocław, 20 stycznia 2011

Inżynieria Programowania - Wstęp

Technologia programowania

Transkrypt:

METODYKI BUDOWY HYBRYDOWYCH SYSTEMÓW WIELOAGENTOWYCH Mariusz śytniewski Wprowadzenie Systemy wieloagentowe, a w szczególności hybrydowe systemy wieloagentowe ze względu na swoją zróŝnicowaną i złoŝoną architekturę wymagają kompleksowego podejścia do procesu projektowania systemu. W literaturze przedmiotu odnaleźć moŝna wiele metodyk budowy systemów wieloagentowych, pozwalających w róŝnym stopniu określać architekturę samego agenta oprogramowania oraz systemu wieloagentowego, których rozwój ukazuje rysunek 1. Pierwotnym nurtem rozwoju metodyk systemów wieloagentowych jest projektowanie zorientowane obiektowo (ang. Object Orientation) [HeGo02]. Oprócz tego autorzy [SBPL04] wskazują na metodyki powstałe na podstawie inŝynierii wiedzy (ang. Knowledge Engineering - KE) oraz inŝynierii wymagań (ang. Requirements Engineering RE).

Rys. 1. Diagram rozwoju metodyk systemów wieloagentowych Źródło: Opracowane na podstawie [SBPL04] Metodyki te w róŝnym stopniu definiują załoŝenia dotyczące modelowania struktury systemu, architektury poszczególnych agentów oraz interakcji między nimi. Podstawowym problemem, na który jednak napotykają badacze tej dziedziny jest duŝa liczba dostępnych metodyk oraz problem z doborem odpowiedniej metodyki do rozwiązania danego problemu [XiDaLi06]. Celem niniejszego opracowania jest prezentacja wybranych metodyk wspomagających proces tworzenia systemów wieloagentowych, ze szczególnym uwzględnieniem języka AML (ang. Agent Modeling Language) w projektowaniu hybrydowych systemów wieloagentowych.

Nazwametodyki / WyróŜnione fazy cyklu Ŝycia Specyfikacja wymagań Analiza wymagań Porównanie metodyk budowy systemów wieloagentowych W pracy [CCZ05] badacze dokonują analizy dostępnych metodyk budowy systemów wieloagentowych pod kątem ich dopasowania do znanych modeli cyklu Ŝycia systemów informatycznych oraz podejmują próbę odpowiedzenia na pytania: czy wybór danego modelu procesu tworzenia oprogramowania wpłynie na tworzenie oprogramowania zorientowanego agentowo, które metodyki budowy systemów agentowych mogą być zastosowane dla wspomagania określonego cyklu Ŝycia systemu informatycznego. Zestawienie zbiorcze tej analizy prezentuje tabela 1. Projektowanie Kodowanie i implementacja Weryfikacja i testowanie WdroŜenie Kaskadowe Gaja X X Roadmap X(częściowo) X X Prometheus X(częściowo) X X X X MaSE X(częściowo) X X X X(częściowo) AOR X(częściowo) X X X Ewolucyjne i inkrementacyjne OPM/ MAS X X X X MASSIVE X X X X Igenias X X X Tropos X X X X PASSI i Agile PASSI X X X X X Formalnych transformacji DESIRE X X X X X(częściowo) Spiralny MASS-CommonKADs X X X X X(częściowo) Tab. 1. Zestawienie faz cyklu Ŝycia systemu w ujęciu metodyk budowy systemów wieloagentowych Źródło: Opracowane na podstawie [CCZ05]

Prezentowane badania wykazują duŝą róŝnorodność metodyk budowy systemów wieloagentowych. Wybór określonej architektury spowodować moŝe brak wsparcia dla niektórych faz cyklu Ŝycia systemu, a tym samym trudność w pełnej specyfikacji modelu. Jednym z rozwiązań zapewniającym moŝliwość zastosowania najlepszych cech określonych metodyk jest ich łączenie. Przykładem takiego podejścia jest metodyka oparta o Gaja i MaSE prezentowana w pracy [XiDaLi06]. Twórcy wskazują, iŝ metodyka Gaja, dobrze odwzorowuje zaleŝności między agentami w danej organizacji lub społeczności agentów oraz pozwala na definiowanie ich ról w systemie. Jednak problemy z jej wykorzystaniem mogą pojawić się na etapie specyfikacji agentów oprogramowania oraz implementacji systemu. Jako rozwiązanie tego problemu proponują zastosowanie metodyki MaSE (rysunek 2). Rys. 2. Proponowany sposób połączenia metodyk MaSE oraz GAJA Źródło: Opracowane na podstawie [XiDaLi06]

Bardziej zaawansowanym podejściem, jest określenie zaleŝności miedzy metamodelami róŝnych metodyk [BCGTS04]. W podejściu tym twórcy przeanalizowali metamodel metodyk PASSI, GAJA, ADELFE, a następnie podjęli próbę określenia zalet kaŝdej z nich. Na tej podstawie zbudowali nowy metamodel metodyki, który mimo wysokiej funkcjonalności charakteryzuje się duŝą złoŝonością, mogącą utrudnić jej wykorzystanie w praktyce. Kolejnym problemem związanym z zastosowaniem danej metodyki dla wspomagania procesu budowy systemu wieloagentowego, a w szczególności hybrydowego systemu wieloagentowego, jest róŝnorodność architektur agentów oprogramowania oraz ukierunkowanie określonych metodyk na wspomaganie procesu budowy systemu, właśnie w oparciu na określoną budowę agenta. Przykładem jest metodyka Prometheus ukierunkowana na agentów o architekturze BDI (ang. believe, desire, intention). Rozwiązaniem tak postawionego problemu moŝe być zastosowanie języka AML, w procesie specyfikacji architektury systemu. Projektowanie hybrydowych systemów wieloagentowych z wykorzystaniem języka AML Realizacja hybrydowego systemu wieloagentowgo, w którym oprócz agentów reaktywnych lub proaktywnych definiowanych według słabego podejścia (ang. weak notion) [LAI04] istnieliby agenci racjonalni/rozwaŝni tworzeni według załoŝeń mocnego lub intencjonalnego podejścia (ang. strong lub intentional notion ), nastręcza wielu problemów dotyczących wyboru określonej metodyki do których zaliczyć moŝna:

wspomaganie jedynie wybranych etapów cyklu Ŝycia systemu przez wybraną metodykę, ukierunkowanie na określoną architekturę agenta, ukierunkowanie na określoną platformę wieloagentową, brak zdefiniowania metamodelu metodyki, skutkujący, niejednoznacznością interpretacji prezentowanych przez nią konceptów, brak odniesienia do niektórych aspektów budowy systemu (standardy komunikacji, ontologie), róŝnorodność notacji diagramów tworzonych przy zastosowaniu okresowej metodyki, brak narzędzi typu CASE do budowy i walidacji projektu systemu. Jednym z rozwiązań prezentowanych problemów jest zastosowanie języka AML (ang. Agent Modeling Language), dla specyfikacji architektury hybrydowego systemu wieloagentowego. Jak podają autorzy język ten zapewnia [CRC04],[CeRe07]: moŝliwość tworzenia modeli zorientowanych agentowo, gdzie autonomiczne jednostki działając w warunkach konkurencji oddziaływają na siebie asynchronicznie, definiowanie encji oddziałujących na otoczenie i potrafiących je obserwować, tworzenie modeli o skomplikowanych interakcjach między elementami modelu, definiowanie elementów mentalnych agentów. Prezentowany język zbudowany został w oparciu o wybrane (najlepsze według autorów) cechy prezentowych na rysunku 1 metodyk

[CRC04],[CeRe07] przez co zapewnia on moŝliwość modelowania takich elementów systemu jak: ontologie wykorzystywane w systemie, encje (agentów, otoczenia, zasobów), społeczności (społeczności agentów, zaleŝności, które w nich występują, role jakie mogą pełnić agenci), definiowanie interakcji w postaci komunikatów między agentami oraz usług, jakie zapewniają elementy systemu, definiowanie wewnętrznej architektury agentów oprogramowania według słabego oraz mocnego podejścia. Przykład budowy agenta reaktywnego w notacji AML prezentuje rysunek 3, ukazujący diagram budowy robota poruszającego się po pokoju, wyposaŝonego w detektor kolizji. Rys. 3. Przykład architektury robota w notacji AML Źródło: Opracowane na podstawie [CeRe07] Przykładem uŝycia diagramu w notacji UML, w procesie specyfikacji struktury systemu wieloagentowego jest rysunek 4.

Rys. 4. Fragment diagramu przypadków uŝycia systemu wieloagentowego dla celów wspomagania obsługi mieszkańca Źródło: Opracowanie własne Rysunek 4 reprezentujący fragment diagramu przypadków uŝycia, ukazuje ponadto moŝliwość zastosowania stereotypu agenta w procesie definiowania zakresu zadań poszczególnych jednostek wchodzących w skład systemu wieloagentowego. Podsumowanie Prezentowane w niniejszej pracy zagadnienia dotyczące metodyk budowy systemów wieloagentowych, a w szczególności hybrydowych systemów wieloagentowych, wskazują na duŝą heterogeniczność prezentowanych w literaturze rozwiązań. RóŜnorodność metodyk powoduje, iŝ nieprawidłowy wybór metodyki budowy systemu wieloagentowego, doprowadzić moŝe do niemoŝności specyfikacji kluczowych elementów systemu lub niejednoznaczności późniejszej interpretacji modelu. Roz-

wiązaniem prezentowych problemów jest zastosowanie załoŝonych metodyk powstających z połączenia róŝnych rozwiązań lub zastosowanie określonego języka specyfikacji modelu systemu wieloagentowego. Literatura [SBPL04] Sudeikat J., Braubach L., Pokahr A., Lamersdorf W.: Evaluation of Agent Oriented Software Methodologies Examination of the Gap Between Modeling and Platform Agent-Oriented Software Engineering V, Fifth International Workshop AOSE 2004: 126-141 [XiDaLi06] Xiao X., Dan D., Lizhi X.: A Framework for blending agent oriented methodology. [w:] Li Y., Looi M., Zhong N., (red.) Frontiers in Artificial Intelligence and Applications: Advances in Intelligent IT, Active Media Technology 2006: 196-204 [HeGo02] Henderson-Sellers B., Gorton I.: Agent-based Software Development Methodologies. International Conference on Object-Oriented Programming, Systems, Languages and Applications, OOPSLA 2002. Seattle USA 2002 [CCZ05] Cernuzzi L., Cossentino M., Zambonelli F.: Process models for agent-based development, International Journal on Engineering Applications of Artificial Intelligence (EAAI). 2005: 205-222 [BCGTZ04] Bernon C, Cossentino M, Gleizes M-P, Turci P, Zambonelli F. A study of some multi-agent metamodels

[LAI04] [CRC04] [CeRe07] Agent-Oriented Software Engineering Workshop (AOSE'04), New York (USA) 2004: 62-77 Luck M., Ashri R., d'inverno M.: Agent-Based Software Deve-lopment (Agent-Oriented Systems), Artech House Publishers 2004. Cervenka R., Trencansky I., Calisti M., Greenwood D.: AML: Agent Modeling Language. Toward Industry-Grade Agent-Based Mode-ling, Agent-Oriented Software Engineering V: 5th International Workshop, AOSE 2004 Cervenka R., Trencansky I.: The Agent Modeling Language - AML. A Comprehensive Approach to Modeling Multi-Agent Systems, Birkhäuser Book 2007. Informacje o autorze: mgr Mariusz śytniewski Katedra Informatyki Akademia Ekonomiczna ul. Bogucicka 3 40-226 Katowice Polska Numer telefonu (fax) +48/32/2577277 e-mail: zyto@ae.katowice.pl