Systemy wieloagentowe(MAS) – nowa generacja systemów...

47
Systemy wieloagentowe (MAS) – nowa generacja systemów informatycznych http://www.MultiAgent.com Autor: Zofia Kruczkiewicz

Transcript of Systemy wieloagentowe(MAS) – nowa generacja systemów...

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 3

Struktura prezentacji� Systemy informatyczne

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 6

System wieloagentowy - 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 21

Techniki tworzenia MAS

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 24

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 27

Rozproszona AP w systemie JADE

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 29

2005-05-25 Systemy wieloagentowe 30

Środowisko graficzne JADE

2005-05-25 Systemy wieloagentowe 31

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 35

Diagramy zadań roli Client

2005-05-25 Systemy wieloagentowe 36

Diagramy zadań roli Seller

2005-05-25 Systemy wieloagentowe 37

Diagram agentów z przydziałem ról systemu jako element projektu

Projekt

2005-05-25 Systemy wieloagentowe 38

2005-05-25 Systemy wieloagentowe 39

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 43

Diagram klas jako efekt inŜynierii odwrotnej dla modelu MASE

2005-05-25 Systemy wieloagentowe 44

Diagram klas jako efekt inŜynierii odwrotnej dla aplikacji JADE

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