Application of the multi-agent systems in the context of the multi-commodity market model M 3

Podobne dokumenty
Design and Java implementation of the multi-agent platform for multi-commodity exchange

Weronika Radziszewska IBS PAN

Automatyzacja procesów biznesowych Andrzej Sobecki. ESB Enterprise service bus

SOA Web Services in Java

DSL w środowisku Eclipse. Grzegorz Białek Architekt techniczny, Sygnity S.A.

Komunikacja w systemie wieloagentowym

Java w 21 dni / Rogers Cadenhead. Gliwice, cop Spis treści. O autorze 11. Wprowadzenie 13 TYDZIEŃ I JĘZYK JAVA

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

Dotacje na innowacje. Inwestujemy w waszą przyszłość.

Etapy życia oprogramowania

Dialogowe akty mowy w modelach sztucznej inteligencji

4 Web Forms i ASP.NET Web Forms Programowanie Web Forms Możliwości Web Forms Przetwarzanie Web Forms...152

Instalacja SQL Server Express. Logowanie na stronie Microsoftu

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

Dane Klienta: Staples Polska Sp. z o.o. Bysewska Gdańsk

Komunikacja i wymiana danych

SHAREPOINT SHAREPOINT QM SHAREPOINT DESINGER SHAREPOINT SERWER. Opr. Barbara Gałkowska

HP Service Anywhere Uproszczenie zarządzania usługami IT

WIELOAGENTOWA PLATFORMA HANDLU DLA LOKALNEGO RYNKU ENERGII ELEKTRYCZNEJ *

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

LABORATORIUM WIRTUALNE W DYDAKTYCE I BADANIACH NAUKOWYCH

Serwery LDAP w środowisku produktów w Oracle

Produktywne tworzenie aplikacji webowych z wykorzystaniem Groovy i

Instytut Technik Innowacyjnych Semantyczna integracja danych - metody, technologie, przykłady, wyzwania

ZARZĄDZANIE DOKUMENTACJĄ. Tomasz Jarmuszczak PCC Polska

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

Marek Parfieniuk, Tomasz Łukaszuk, Tomasz Grześ. Symulator zawodnej sieci IP do badania aplikacji multimedialnych i peer-to-peer

MATEMATYCZNE METODY WSPOMAGANIA PROCESÓW DECYZYJNYCH

1 Wprowadzenie do J2EE

Zagadnienia egzaminacyjne INFORMATYKA. Stacjonarne. I-go stopnia. (INT) Inżynieria internetowa STOPIEŃ STUDIÓW TYP STUDIÓW SPECJALNOŚĆ

Tworzenie i obsługa wirtualnego laboratorium komputerowego

Uniwersytet Łódzki Wydział Matematyki i Informatyki, Katedra Analizy Nieliniowej. Wstęp. Programowanie w Javie 2. mgr inż.

Deduplikacja danych. Zarządzanie jakością danych podstawowych

Virtual Grid Resource Management System with Virtualization Technology

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

PomysL... i co dalej?

Dokumentacja projektu QUAIKE Architektura oprogramowania

Wspomaganie pracy w terenie za pomocą technologii BlackBerry MDS. (c) 2008 Grupa SPOT SJ

Oracle Designer. Oracle Designer jest jednym z głównych komponentów pakietu Oracle Developer Suite. Oracle Designer wspiera :

Dodatkowo, w przypadku modułu dotyczącego integracji z systemami partnerów, Wykonawca będzie przeprowadzał testy integracyjne.

Multi-wyszukiwarki. Mediacyjne Systemy Zapytań wprowadzenie. Architektury i technologie integracji danych Systemy Mediacyjne

Zakład Sterowania Systemów

Modelowanie i Programowanie Obiektowe

Podstawy programowania. Wprowadzenie

Wybrane działy Informatyki Stosowanej

Informatyczne fundamenty

Szkolenie: Budowa aplikacji SOA/BPM na platformie Oracle SOA Suite 11g

Temat: Ułatwienia wynikające z zastosowania Frameworku CakePHP podczas budowania stron internetowych

Analiza i projektowanie aplikacji Java

Technologie dla aplikacji klasy enterprise. Wprowadzenie. Marek Wojciechowski

Systemy Informatyki Przemysłowej

15 lat doświadczeń w budowie systemów zbierania i przetwarzania danych kontrolno-pomiarowych

Początki Javy. dr Anna Łazińska, WMiI UŁ Podstawy języka Java 1 / 8

Programowanie równoległe i rozproszone. Praca zbiorowa pod redakcją Andrzeja Karbowskiego i Ewy Niewiadomskiej-Szynkiewicz

Platforma Cognos. Agata Tyma CMMS Department Marketing & Sales Specialist atyma@aiut.com.pl AIUT Sp. z o. o.

Architektura oprogramowania w praktyce. Wydanie II.

Krótka Historia. Co to jest NetBeans? Historia. NetBeans Platform NetBeans IDE NetBeans Mobility Pack Zintegrowane moduły. Paczki do NetBeans.

Plan. Wprowadzenie. Co to jest APEX? Wprowadzenie. Administracja obszarem roboczym

GE Security. Alliance. zaawansowany system zarządzania bezpieczeństwem

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

Programowanie Komponentowe WebAPI

JBoss: MetaMatrix, Mobicents, Seam, Rools, ESB

INŻYNIERIA OPROGRAMOWANIA

Kompleksowe tworzenie aplikacji klasy Desktop z wykorzystaniem SWT i

Zastosowania Robotów Mobilnych

Spis treści. Dzień 1. I Wprowadzenie (wersja 0906) II Dostęp do danych bieżących specyfikacja OPC Data Access (wersja 0906) Kurs OPC S7

ZARZĄDZANIE WYMAGANIAMI ARCHITEKTONICZNYMI

Automatyka i Robotyka studia stacjonarne drugiego stopnia

1 Wprowadzenie do koncepcji Microsoft Office BI 1 Zakres ksiąŝki 2 Cel ksiąŝki 3 Wprowadzenie do tematu 3 Zawartość rozdziałów 4

Spis treści. Przedmowa

XML i nowoczesne technologie zarządzania treścią

Informacja o firmie i oferowanych rozwiązaniach

Projekt - wdrożenie nowego systemu notującego na TGE

Implementacja standardu GML w oprogramowaniu ESRI i GISPartner na przykładzie Geoportalu2

Architektury usług internetowych. Tomasz Boiński Mariusz Matuszek

STRATEG podstawowe informacje

Kurs programowania. Wykład 12. Wojciech Macyna. 7 czerwca 2017

Kurs OPC S7. Spis treści. Dzień 1. I OPC motywacja, zakres zastosowań, podstawowe pojęcia dostępne specyfikacje (wersja 1501)

XQTav - reprezentacja diagramów przepływu prac w formacie SCUFL przy pomocy XQuery

OSGi Agata Hejmej

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

Tworzenie oprogramowania

Katedra Inżynierii Oprogramowania Tematy prac dyplomowych inżynierskich STUDIA NIESTACJONARNE (ZAOCZNE)

System zarządzający grami programistycznymi Meridius

Dokumentacja techniczna. Młodzieżowe Pośrednictwo Pracy

Analiza i częściowa implementacja systemu elektronicznej wymiany danych na przykładzie e-faktury

- Narzędzie Windows Forms. - Przykładowe aplikacje. Wyższa Metody Szkoła programowania Techniczno Ekonomiczna 1 w Świdnicy

EXSO-CORE - specyfikacja

Programowanie obiektowe

CENTRUM PROJEKTÓW INFORMATYCZNYCH MINISTERSTWA SPRAW WEWNĘTRZNYCH I ADMINISTRACJI

Web frameworks do budowy aplikacji zgodnych z J2EE

Hurtownie danych - przegląd technologii

Szkolenie: Testowanie wydajności (Performance Testing)

Tworzenie aplikacji Web Alicja Zwiewka. Page 1

Rozproszone systemy internetowe

Wstęp Budowa Serwlety JSP Podsumowanie. Tomcat. Kotwasiński. 1 grudnia 2008

Systemy Wspomagania Zarządzania Produkcją (MES) ABB Sp. z o.o.

5 Moduył do wyboru II *[zobacz opis poniżej] 4 Projektowanie i konfiguracja sieci komputerowych Z

12 czerwca Piotr Kozłowski Dyrektor ds. Rozwoju Sektora Samorządowego

DOTACJE NA INNOWACJE

Transkrypt:

Application of the multi-agent systems in the context of the multi-commodity market model M 3 1/30 Application of the multi-agent systems in the context of the multi-commodity market model M 3 Piotr Pałka Institute of Control and Computation Engineering Warsaw University of Technology 5 listopada 2010, Warsztaty naukowe grantu M 3 Modele wymiany wielotowarowej: metody wymiany informacji

Application of the multi-agent systems in the context of the multi-commodity market model M 3 2/30 Wprowadzenie Agenda 1 Wprowadzenie 2 Projekt wieloagentowej platformy wymiany wielotowarowej 3 Implementacja Java 4 Implementacja AIMMS

Application of the multi-agent systems in the context of the multi-commodity market model M 3 3/30 Wprowadzenie System wieloagentowy System wieloagentowy System wieloagentowy System złożony z wielu agentów (programów), które komunikują się między sobą; Każdy z agentów posiada własne cele; System wieloagentowy posiada pewne cele nadrzędne powinien funkcjonować zgodnie z intencjami projektanta; Nie realizuje ich bezpośrednio ale poprzez indywidualne działania agentów i ich wzajemne interakcje;

Application of the multi-agent systems in the context of the multi-commodity market model M 3 4/30 Wprowadzenie System wieloagentowy Cechy systemu wieloagentowego Elastyczność, odporność; Rozszerzalność; Zdolność do działania w środowiskach rozproszonych. Agent komponent oprogramowania Podstawowe cechy agenta: Autonomiczność; Komunikatywność; Zdolności społeczne; Zdolność do adaptacji.

Application of the multi-agent systems in the context of the multi-commodity market model M 3 5/30 Wprowadzenie Model M 3 Handel wielotowarowy i model M 3 Handel wielotowarowy Jednoczesny handel wieloma towarami; Uwzględnia ograniczenia, jakie między nimi zachodzą; Model M 3 (ang. Multicommodity Market Model) Otwarty model danych dla wymiany wielotowarowej; Standaryzuje komunikację między podmiotami/segmentami rynkowymi; Wygodny zapis danych rynkowych w formacie M3-XML.

Application of the multi-agent systems in the context of the multi-commodity market model M 3 6/30 Projekt wieloagentowej platformy wymiany wielotowarowej Agenda 1 Wprowadzenie 2 Projekt wieloagentowej platformy wymiany wielotowarowej 3 Implementacja Java 4 Implementacja AIMMS

Application of the multi-agent systems in the context of the multi-commodity market model M 3 7/30 Projekt wieloagentowej platformy wymiany wielotowarowej Projekt systemu Projekt wieloagentowej platformy handlu wielotowarowego Projekt systemu Struktura ról agentów; Środowisko wieloagentowe; Mechanizmy komunikacji; Model ofertowania; Mechanizm rynkowy;

Application of the multi-agent systems in the context of the multi-commodity market model M 3 8/30 Projekt wieloagentowej platformy wymiany wielotowarowej Struktura agentów Struktura agentów rynek scentralizowany Agent handlujący Pośrednik między rzeczywistym decydentem a systemem wieloagentowym; Jego celem jest zawieranie najbardziej korzystnych kontraktów; Składa oferty kupna/sprzedaży zgodnie z: pewną strategią; preferencjami decydenta; Agent operator rynku Zbiera oferty od pozostałych agentów; Dokonuje analizy ofert (zgodnie z ustalonym mechanizmem rynkowym): dzieli je na przyjęte i odrzucone; wyznacza ceny; Rozsyła wyniki do agentów handlujących;

Application of the multi-agent systems in the context of the multi-commodity market model M 3 9/30 Projekt wieloagentowej platformy wymiany wielotowarowej Struktura agentów Struktura agentów rynek rozproszony Agent negocjator Pośrednik między rzeczywistym decydentem a systemem wieloagentowym; Jego celem jest zawieranie najbardziej korzystnych kontraktów; Zawarcie kontraktu poprzedzone jest negocjacjami; Agent Morris Column (słup ogłoszeniowy) Udostępnia możliwość wieszania/przeglądania ogłoszeń ; Możliwość istnienia wielu takich agentów;

Application of the multi-agent systems in the context of the multi-commodity market model M 3 10/30 Projekt wieloagentowej platformy wymiany wielotowarowej Struktura agentów Agenty agregujące Agenty agregujące Agregator; Pośrednik; Odsprzedawca;

Application of the multi-agent systems in the context of the multi-commodity market model M 3 11/30 Projekt wieloagentowej platformy wymiany wielotowarowej Środowisko wieloagentowe Środowisko wieloagentowe Agenty, aby mogły się komunikować, muszą być osadzone w pewnym środowisku wieloagentowym.

Application of the multi-agent systems in the context of the multi-commodity market model M 3 12/30 Projekt wieloagentowej platformy wymiany wielotowarowej Język komunikacji agentów Język komunikacji agentów Schematy wymiany komunikatów Zmodyfikowane schematy wymiany komunikatów: Contract Net Interaction Protocol Iterated Contract Net Interaction Protocol Zestaw aktów komunikacyjnych Zestaw aktów komunikacyjnych (performatyw) zaproponowanych przez organizację FIPA; Język treści komunikatów Języki treści komunikatów: FIPA-SL, M3XML, XPath, XQuery;

Application of the multi-agent systems in the context of the multi-commodity market model M 3 13/30 Projekt wieloagentowej platformy wymiany wielotowarowej Model ofertowania Model ofertowania Wymagania: Agenty powinny mieć możliwość elastycznego wyrażania swoich preferencji poprzez pewne sparametryzowane oferty; Oferty mogą przyjmować różną postać; Postać ofert ewoluuje wraz z rozwojem rynku, rozwiązań oraz świadomości i wymagań uczestników; System powinien mieć możliwość wyrażania szerokiego spektrum możliwych form ofert; Rozwiązanie model ofert M 3 (zapis ofert w języku M3XML) Oferty elementarne; Oferty zintegrowane; Oferty grupujące;

Application of the multi-agent systems in the context of the multi-commodity market model M 3 14/30 Projekt wieloagentowej platformy wymiany wielotowarowej Mechanizm rynkowy Mechanizm rynkowy Mechanizm rynkowy M Określa w jaki sposób rozdzielić oferty uczestników (sygnały Θ) na przyjęte i odrzucone x a także jakie ceny π przypisać poszczególnym towarom (reguła alokacji ξ i wyceny η); Model M 3 ułatwia implementację i porównanie własności różnych mechanizmów rynkowych;

Application of the multi-agent systems in the context of the multi-commodity market model M 3 15/30 Implementacja Java Agenda 1 Wprowadzenie 2 Projekt wieloagentowej platformy wymiany wielotowarowej 3 Implementacja Java 4 Implementacja AIMMS

Application of the multi-agent systems in the context of the multi-commodity market model M 3 16/30 Implementacja Java Implementacja wieloagentowej platformy wymiany wielotowarowej w środowisku Java Wykorzystuje ona: model danych M 3, aplikację SolveM3, standardy komunikacji FIPA, frameworki Javy: JAXB oraz JADE

Application of the multi-agent systems in the context of the multi-commodity market model M 3 17/30 Implementacja Java Środowisko wieloagentowe JADE Jade - Java Agent DEvelopment Framework Implementuje standardy komunikacji wieloagentowej zaproponowane przez FIPA (ang. Foundation of Inteligent Physical Agents); Dostarcza środowiska wieloagentowego zgodnego z propozycjami FIPA.

Application of the multi-agent systems in the context of the multi-commodity market model M 3 18/30 Implementacja Java Integracja modelu M 3 z Java Integracja modelu M 3 z Java Ułatwienia dla agentów handlujących i negocjatorów JAXB Framework JAXB Java Architecture for XML Binding; Realizuje mapowanie klas Java na reprezentację XML i odwrotnie; Uzyskujemy realizację modelu M 3 jako klasy Javy;

Application of the multi-agent systems in the context of the multi-commodity market model M 3 19/30 Implementacja Java Integracja modelu M 3 z Java Integracja modelu M 3 z Java Ułatwienie dla agentów operatorów SolveM3 Narzędzie SolveM3 umożliwia rozwiązywanie reguł alokacji i wyceny dla danych zapisanych w języku M3XML; Wybór odpowiednich reguł alokacji i wyceny poprzez zastosowanie transformat XSLT/XQuery;

Application of the multi-agent systems in the context of the multi-commodity market model M 3 20/30 Implementacja Java Napotkane problemy Problemy napotkane podczas implementacji problem pożądane rozwiązanie Implementacja instancja agent Directory agenta Morris Facilitator Column Zmodyfikowane protokoły rozszerzenie klasy interakcji jade.proto ostateczne rozwiązanie rozszerzenie zwykłego agenta własna implementacja grafy zachowań

Application of the multi-agent systems in the context of the multi-commodity market model M 3 21/30 Implementacja Java Właściwości techniczne Badanie szybkości przekazywania komunikatów Rysunek: Konfiguracja eksperymentu Testy Czas przesłania pojedynczego aktu komunikacyjnego (propose); Czas trwania negocjacji (protokołu interakcji Iterated Contract Net Interaction Protocol); Badania dla różnych ilości agentów uruchomionych na 10 maszynach.

Application of the multi-agent systems in the context of the multi-commodity market model M 3 22/30 Implementacja Java Właściwości techniczne Czas przesłania pojedynczego aktu komunikacyjnego (propose) no. of agents avg. time std. dev. min time max time [ms] [ms] [ms] [ms] 100 1.14 0.38 0.17 1.87 500 7.74 1.77 2.19 10.78 1 000 18.48 7.17 5.38 31.72 Czas trwania negocjacji protokół interakcji Iterated Contract Net Interaction Protocol no. of agents avg. time std. dev. min time max time [ms] [ms] [ms] [ms] 100 103.23 102.35 20 387 500 56.59 49.57 7 293 1 000 71.06 70.39 7 493 5 000 189.69 237.71 12 1 486 10 000 167.57 290.18 9 3 658

Application of the multi-agent systems in the context of the multi-commodity market model M 3 23/30 Implementacja Java Implementacja Java podsumowanie Implementacja Java podsumowanie Zaimplemenowano wieloagentową platformę wymiany wielotowarowej w środowisku Java, wykorzystując model danych M 3, standardy komunikacji FIPA oraz frameworki Javy: JAXB oraz JADE. Możliwości wieloagentowej platformy wymiany towarów: Szybka wymiana komunikatów; Szkielet do implementacji specjalizowanych rozwiązań, np. do handlu pozwoleniami na emisję CO2; Możliwość implementacji dowolnego mechanizmu rynkowego: opis problemu modelowany w M 3 ; zapis danych rynkowych w M3XML; implementacja mechanizmu w aplikacji SolveM3;

Application of the multi-agent systems in the context of the multi-commodity market model M 3 24/30 Implementacja AIMMS Agenda 1 Wprowadzenie 2 Projekt wieloagentowej platformy wymiany wielotowarowej 3 Implementacja Java 4 Implementacja AIMMS

Application of the multi-agent systems in the context of the multi-commodity market model M 3 25/30 Implementacja AIMMS System AIMMS AIMMS AIMMS (ang. Advanced Integrated Multidimensional Modeling Software) Zaawansowane środowisko do budowy aplikacji opartych o matematyczne modele optymalizacyjne; W tym mechanizmów bilansowania dla różnych segmentów rynkowych; Możliwości systemu AIMMS Narzędzia optymalizacyjne; Obiektowy język programowania, operujący na elementach i danych problemów optymalizacji; Narzędzia do tworzenia interfejsu użytkownika; Narzędzia ułatwiające import i eksport danych zapisanych w języku XML (współpraca z modelem M 3 przez język M3-XML); Wsparcie dla budowy środowisk wieloagentowych;

Application of the multi-agent systems in the context of the multi-commodity market model M 3 26/30 Implementacja AIMMS Środowisko wieloagentowe Środowisko wieloagentowe AIMMS Agenty, aby mogły się komunikować, muszą być osadzone w pewnym środowisku wieloagentowym. Środowisko wieloagentowe AIMMS Kolejka komunikatów AIMMS: Kierowane są do niej komunikaty wysyłane przez agentów; Realizuje przesyłanie komunikatów do adresatów; Struktura agentów role agentów w AIMMS; Możliwość utworzenia interfejsu WSDL i dostęp do systemu wieloagentowego poprzez web services.

Application of the multi-agent systems in the context of the multi-commodity market model M 3 27/30 Implementacja AIMMS Integracja modelu M 3 w AIMMS Integracja modelu M 3 w AIMMS Integracja modelu M 3 w AIMMS Przygotowano procedury obsługujące dokumenty M3-XML (zapis i odczyt); Wykorzystano narzędzie AIMMSa AXM (AIMMS XML Mapping file); Konieczne było poprawienie plików AXM wykorzystano do tego transformaty XSLT.

Application of the multi-agent systems in the context of the multi-commodity market model M 3 28/30 Implementacja AIMMS Możliwości środowiska wieloagentowego AIMMS Zalety Łatwość implementacji strategii agentów; Komunikacja przez interfejs WSDL; Wady Ograniczone możliwości rozszerzania systemu: dodawanie nowych ról agentów, nowych komunikatów, zmiana zawartości komunikatów. Złagodzone gdy założymy że treść jest w formacie XML; Brak obsługi schematów wymiany komunikatów.

Application of the multi-agent systems in the context of the multi-commodity market model M 3 29/30 Implementacja AIMMS Ocena wieloagentowej platformy wymiany towarów Dwa zasadnicze moduły platformy: System wieloagentowy; + Szereg mechanizmów rynkowych, rozwijanych w aktualnym, światowym nurcie prac badawczych. Uzyskaliśmy kompromis między: Dużą elastycznością modelowania mechanizmów i procesów rynkowych, a nieco gorszą implementacją systemu wieloagentowego. Jest dobrym rozwiązaniem Do prowadzenia prac badawczych; Na potrzeby budowy prototypu systemu; Raczej nie nadaje się do komercyjnych zastosowań.

Application of the multi-agent systems in the context of the multi-commodity market model M 3 30/30 Implementacja AIMMS Implementacja AIMMS podsumowanie Implementacja AIMMS podsumowanie Platforma może służyć do symulacji procesów rynkowych; Łatwe jest tworzenie wykresów, tabel przestawnych oraz predefiniowanych okien użytkownika; Platforma ta może służyć do badania właściwości, porównywania oraz do projektowania nowych mechanizmów rynkowych; Agenty dążąc do spełnienia własnych celów, dążą także do wyniku pożądanego przez projektanta rynku (czyli do stabilnego punktu równowagi rynkowej);