2005-05-25 Systemy wieloagentowe 1
Systemy wieloagentowe (MAS) –nowa generacja systemów informatycznychhttp://www.MultiAgent.com
Autor:Zofia Kruczkiewicz
2005-05-25 Systemy wieloagentowe 2
Struktura prezentacji
� Zastosowanie techniki MASE do wykonania modeli analizy i projektowania przykładowego MAS� Zastosowanie techniki JADE do implementacji przykładowego MAS� Zastosowanie inŜynierii odwrotnej do wykazania spójności modeli projektowego i implementacji
� Charakterystyka techniki JADE
� Zakończenie
� Wprowadzenie do MAS� Systemy informatyczne� Charakterystyka MASE
2005-05-25 Systemy wieloagentowe 4
System informatyczny – przetwarza informację� Sprzętkomputery,urządzenia• do przechowywania informacji • do komunikacji między sprzętowymi elementami systemu • do komunikacji między ludźmi a komputerami • do odbierania informacji ze świata zewnętrznego - nie od ludzi (na przykład czujniki elektroniczne, kamery, skanery)• do wpływania systemów informatycznych na świat zewnętrzny - elmenty wykonawcze (na przykład silniki sterowane komputerowo, roboty, sterowniki urządzeń mechanicznych)� Oprogramowanie� Zasoby osobowe – ludzie� Elementy organizacyjne - procedury organizacyjne, instrukcje robocze � Elementy informacyjne; bazy wiedzy – ontologie dziedziny/dziedzin, w której uŜywany jest system informatyczny - na przykład podręcznik księgowania w wypadku systemu finansowo-księgowego
2005-05-25 Systemy wieloagentowe 5
Struktura prezentacji� Systemy informatyczne� Wprowadzenie do MAS
2005-05-25 Systemy wieloagentowe 7
Sposób myślenia o MAS i jegozbiorowych właściwościachSystem (science)� jądro (fizyka)� Atom (fizyka)� molekuła (chemia)� narząd (mikrobiologia)� komórka (biologia)� wielokomórkowy
organizm (biologia)� grupa społeczna (biologia)� ekosystem (ekologia)
Typowy mechanizm� kwarki� protony, neutrony, electrony� wiązania, � enzymy, membrany, transport� mitoza, genetyczne operatory� morfogeneza, reprodukcja� społeczne relacje� symbioza,
2005-05-25 Systemy wieloagentowe 8
Jakie są agenty ?� Autonomous - autonomiczne� Interactive - interaktywne� Adaptive – przystosowujące się� Sociable – zdolne do zachowań społecznych� Mobile - mobilne� Proxy – mogą wystąpić jako pełnomocnicy w róŜnych zadaniach� Proactive – zorientowane na cel� Rational – zdolne do racjonalnego działania� Unpredictable - nieprzewidywalne� Temporally continuous – zdolne do ciągłej realizacji procesu� Transparent and accountable - zrozumiałe i odpowiedzialne� Coordinative – skoordynowane planem, mechanizmami zarządzania� Cooperative - współpracujące� Competitive – rywalizujące bez wyrządzania szkody innym agentom� Rugged – zdolne do zarządzania danymi obarczonymi błędami i danymi niepewnymi� Trustworthy – godne zaufania
2005-05-25 Systemy wieloagentowe 9
SzczegółyAutonomia� dynamiczna (reaktywna, proaktywna) – wynika z wewnętrznej struktury agenta� nieprzewidywalna,przewidywalna – wynika z zewnętrznych warunków
Adaptacja� Reakcja� Wnioskowanie� Uczenie� Ewolucja
Interakcja� Komunikacja� Koordynacja� Kooperacja� Współzawodnictwo
2005-05-25 Systemy wieloagentowe 10
Typy agentów� Software agents� Autonomous agents� Interactive agents� Adaptive agents� Mobile agents� Coordinative agents� Intelligent agents� Wrapper agents� Inne agenty: typu broker, manager
2005-05-25 Systemy wieloagentowe 11
Systemy agentowe czy MAS ?� Pojedynczy agent jest ”tłustym agentem”, co pogarsza: niezawodność, pielęgnowalność, szybkość, obciąŜa sieć. Rozdzielając te same zadania między agentów MAS otrzymuje się system: niezawodny, elastyczny, modularny, łatwy do modyfikacji i rozwoju� Wiedza jednego agenta nie zapewnia dostępu do wiedzy specjalistycznej, jaką dostarczają agenty zintegrowane w MAS� Technologie MAS lepiej wspierają pracę w środowisku rozproszonym
2005-05-25 Systemy wieloagentowe 12
RóŜnice definicji środowiska systemu agentowego i MAS� Zamknięte, statyczne, deterministyczne, dyskretne, dostępne (wg Russell S., Norvig P.)
2005-05-25 Systemy wieloagentowe 13
� Dostępne, otwarte, niedeterministyczne, dynamiczne, ciągłe (wg J.Ferber)
2005-05-25 Systemy wieloagentowe 14
Historia się powtarza...� Technologie wieloagentowe nie są nowymi technologiami, lecz raczej integracją istniejących technologii� Aplikacje MAS nie są nowymi aplikacjami, lecz dodaje się nowe moŜliwości do istniejących aplikacji� Aplikacje wieloagentowe jeszcze nie integruje się z systemem operacyjnym� MAS bez integracji z systemem operacyjnym nie są zdolne zachować swoje właściwości� MAS wzmacniają interakcje człowiek – komputer
2005-05-25 Systemy wieloagentowe 15
Stan obecny technologii wieloagentowych� Prowadzi się intensywne badania nad MAS� Działają wyizolowane pionierskie aplikacje MAS� DuŜa liczba wymaganych technologii nie istnieje� Technologie MAS (w zakresie wytwarzania i działania MAS) nie są zintegrowane� Brak wiedzy, jak wspierać agentów MAS przez system operacyjny� Technologie wieloagentowe nie są powszechnie znane� Istnieje wąskie grono twórców i uŜytkowników MAS
2005-05-25 Systemy wieloagentowe 16
Dziedziny zastosowań MAS� Sieci i zarządzanie systemami� Wspieranie decyzji i logistyki� Badanie zaleŜności rynkowych� Asystent uŜytkownika� Organizacje
2005-05-25 Systemy wieloagentowe 17
Technologie agentowe� SQL� Rules� Web� Repository-baseddevelopment� Internet and Web� 4GLs� Relational databases� Object-oriented languages(Java)� Conventional programming� Object-oriented databases� Inference engines� Graphic languages� Genetic algorithms
� Data warehouses� CORBA Business� re-engineering� Parallel computing� Virtual reality� Neural networks� Client-server� Distributed computing� Logic-based languages � Fuzzy logic� Complex systems� Visual programming� Structured techniques� Knowledge bases
2005-05-25 Systemy wieloagentowe 18
Standardy wieloagentowe� OMG Agents Working Group OMG's Object Management Architecture (OMA).(www.omg.org)� FIPA (Federated Intelligent Physical Agents) –standaryzacja interakcji, infrastruktura (www.fipa.org)� US DARPA (Defense Advanced Research Projects Agency): Control of Agent-based Systems, Advanced Logistics Project, DARPA Agent Markup Language� KQML (Knowledge Query and Manipulation Language): język i protokół do wymiany informacji i wiedzy (www.cs.umbc.edu/kqml/)
� AgentLink is Europe's ESPRIT-funded Network of Excellence for agent-based computing:przemysł, wyszukiwanie informacji, uczenie i trenowanie, infrastruktura i zarządzanie (www.agentlink.org )� CLIMATE (Cluster for Intelligent Mobile Agents forTelecommunication Environments): sterowanie usługami w sieciach mobilnych, zarządzanie w telekomunikacji, handel elektroniczny i multimedia(www.fokus.gmd.de/research/cc/ecco/climate/climate.htm)
2005-05-25 Systemy wieloagentowe 19
Typy aplikacji MAS� Zarządzanie przedsiębiorstwami, zarządzanie dokumentami� Systemy biznesowe� Systemy sterujące� Agenci uŜytkownika� Przemieszczające się aplikacje w sieci� Zarządzanie informacją:wyszukiwanie,filtrowanie, mediacje, monitorowanie, interfejsy, asystenci uŜytkownika
2005-05-25 Systemy wieloagentowe 20
Przykłady narzędzi do tworzenia MAS� AgentBuilder®� AgenTalk� AgentTool� Agent Building Environment� Agent Development Environment� Agentx� Aglets� Concordia� DirectIA SDK� Gossip� Grasshopper� Infosleuth
� iGEN� Intelligent Agent Factory� Intelligent Agent Library� JACK Intelligent Agents� JADE� Jumping Beans Engineering� Kafka� LiveAgent� Microsoft Agent� Swarm� Versatile Intelligent Agents (VIA)� Voyager
2005-05-25 Systemy wieloagentowe 22
Struktura prezentacji
� Charakterystyka techniki MASE� Wprowadzenie do MAS� Systemy informatyczne
2005-05-25 Systemy wieloagentowe 23
Początkowy kontekst systemuHierarchia celów Przypadki uŜycia(Use Cases)Diagramy sekwencjiZadania współbieŜne RoleKlasy agentówKonwersacje ArchitekturaagentówDiagramywdroŜenia
Określenia celówOkreślenia przypadków uŜyciaKonstruowanie konwersacjiGrupowanie klas agentówProjektowaniesystemu
Tworzenie klas agentówUdoskonalanie rólProjektAnaliza
2005-05-25 Systemy wieloagentowe 25
Struktura prezentacji
� Charakterystyka techniki MASE� Charakterystyka techniki JADE
�Wprowadzenie do MAS� Systemy informatyczne
2005-05-25 Systemy wieloagentowe 26
Infrastruktura fizyczna MAS –System JADE oparty na specyfikacji FIPASystem ZarządzaniaAgentami (AMS)
Katalog Usług(DF)
Platforma Agenta (AP)
System transportu wiadomości (MTS)
Agent
System transportu wiadomości (MTS)Platforma Agenta (AP)
IIOP, HTPP
RMI
2005-05-25 Systemy wieloagentowe 28
MAS – mobilny (3 komputery)
MySQLServerContainer 1Searcher 1Container 2Host 2
MySQLServerContainer 3Host 3Container 4Searcher 2
AMS DFHost 1doMove()doMove()
ManagerMain ContainerAgentPlatform
2005-05-25 Systemy wieloagentowe 32
Struktura prezentacji
� Charakterystyka techniki MASE� Charakterystyka techniki JADE� Zastosowanie techniki MASE do wykonania modeli analizy i projektowania przykładowego MAS
� Wprowadzenie do MAS � Systemy informatyczne
2005-05-25 Systemy wieloagentowe 33
Diagram celów Diagram ról aplikacji Client-Seller
MASE- aplikacja Client-SellerAnaliza
2005-05-25 Systemy wieloagentowe 34
a a) b ) a) Diagram use case
b) diagram sekwencji jako jego scenariusz
2005-05-25 Systemy wieloagentowe 37
Diagram agentów z przydziałem ról systemu jako element projektu
Projekt
2005-05-25 Systemy wieloagentowe 40
Struktura prezentacji
� Charakterystyka techniki MASE� Charakterystyka techniki JADE � Zastosowanie techniki MASE do wykonania modeli analizy i projektowania przykładu MAS
�Wprowadzenie do MAS
� Zastosowanie techniki JADE do implementacji przykładowego MAS
� Systemy informatyczne
2005-05-25 Systemy wieloagentowe 41
Q uerry_ref
Info rm
C lient1: C lientAgent
Seller1 :SellerAgent
Diagram protokołu interakcji (PD)client_seller-net typu user-defined w JADE
2005-05-25 Systemy wieloagentowe 42
Struktura prezentacji
� Charakterystyka MASE� Charakterystyka techniki JADE � Zastosowanie techniki MASE do wykonania modeli analizy i projektowania przykładu MAS
� Systemy informatyczne
� Zastosowanie inŜynierii odwrotnej do wykazania spójności modeli projektowego i implementacji
� Zastosowanie techniki JADE do implementacji przykładu MAS
�Wprowadzenie do MAS
2005-05-25 Systemy wieloagentowe 45
Struktura prezentacji
� Charakterystyka techniki MASE� Charakterystyka techniki JADE � Zastosowanie techniki MASE do wykonania modeli analizy i projektowania przykładu MAS
�Wprowadzenie do MAS
� Zakończenie
� Zastosowanie techniki JADE do implementacji przykładu MAS� Zastosowanie inŜynierii odwrotnej do wykazania spójności modelu projektowego i implementacji
� Systemy informatyczne
2005-05-25 Systemy wieloagentowe 46
Podsumowanie � Podano zarys MAS � Przedstawiono elementy inŜynierii oprogramowania zorientowanego agentowo -Agent-Oriented Software Engineering (AOSE)� Podano charakterystyki techniki MASE oraz JADE� Przedstawiono projekt przykładowego MAS wykonanego w technice MASE i oprogramowanego w JADE� Zastosowano inŜynierię odwrotną do określenia równowaŜności modeli i moŜliwości łączenia produktów obu technik: MASE i JADE
2005-05-25 Systemy wieloagentowe 47
Przyszłość MAS wg J. Odell� Agents are host based and standalone. They search the Web/Internet using fetch processing. 1994–2005� Agents are host based and capable of negotiating with computers and other agents, involving many business (and personal) functions. 1997–2005� Agents are mobile and highly personalized, but standalone.
1998–2010� Agents are mobile and capable of negotiating withcomputers and other agents. 1999–2010� Agents will also employ subagents. 2000–2020� Agents can activate and inhabit real-world robotics and pursue goals beyond software. 2001–2050� Agents are self-replicating and can design agents to specific needs. They are independent and selfmotivating. 2005–2050