Upload
others
View
0
Download
0
Embed Size (px)
Citation preview
11. Úvod do multi-agentních systémů a agentních technologií
Gerstnerova Laboratoř
A g e n t T e c h n o l o g y G r o u p
Gerstnerova Laboratořh t t p : / / a g e n t s . f e l k . c v u t . c z /
Agent
∴Agent je „zapouzdřený výpočetní systém“ v nějakém prostředí, který je:
− Autonomní− Flexibilní
∴Má možnost částečně ovlivňovat prostředí – je nedeterministický
A g e n t T e c h n o l o g y G r o u p
environment
sensor input
action output
Prostředí
∴Přístupnost vs. Nepřístupnost
∴Dynamické vs. Statické
∴Deterministické vs. Nedeterministické
∴Diskrétní vs. Spojité
∴Obecné prostředí je nepřístupné, dynamické, nedeterministické a spojité
A g e n t T e c h n o l o g y G r o u p
∴Obecné prostředí je nepřístupné, dynamické, nedeterministické a spojité
Důvody pro použití agentních technologií
∴ Agentní technologie jsou vhodné v zvláště v případech, kdy:
1. Je potřeba řešit velmi složité problémy nebo řídit složité systémy2. Informace potřebné k řešení problému nejsou centrálně k dispozici protože
− Jsou přirozeně geograficky distribuovány− Agenti nejsou ochotni je sdílet
3. V doménách s dynamicky se měnícím prostředí a specifikací problému4. Je potřeba integrovat různé části software za běhu nebo v průběhu designu5. Simulace distribuovaných nebo vysoce autonomních systémů
A g e n t T e c h n o l o g y G r o u p
5. Simulace distribuovaných nebo vysoce autonomních systémů 6. Geograficky distribuované, heterogenní systémy operují v dynamickém
komplexním prostředí
Možné aplikační oblasti
∴Výrobní procesy: plánování složitých výrobních procesů; řízení dynamických, těžko predikovatelných a nestabilních procesů; diagnostika, zotavení, rekonfigurace a přeplánování.
∴Virtuální podniky: formování obchodních aliancí; budování krátkodobých i dlouhodobých dohod; řízení dodavatelských řetězců.
∴Agenti pro Internet: zejména pro inteligentní nakupování a obchodování; získávání informací; vzdálený přístup k informacím a systémům.
A g e n t T e c h n o l o g y G r o u p
∴Logistika: doprava a tok materiálu; plánování a rozvrhování (zejména dopravních systémů), veřejná doprava; ale také mírové operace, vojenské manévry, atd.
∴Bitevní operace: koordinace akcí různých vojenských jednotek a vojáků na bojišti; plánování koalic a jejich operací; inteligentní integrace různého vybavení, atd.
∴Veřejné sítě: energetické rozvodné sítě, mobilní komunikační sítě, kabelové sítě – simulace a predikce nouzových situací, prevence přetížení a výpadků, detekce napadení a poruch.
Vlastnosti Agenta
∴Autonomní (autonomous) – agenti jsou proaktivní, sledují své cíle, jednají nezávisle bez zásahu uživatele, mohou podvádět, ocházet nebo přicházet do komunity
∴Reaktivní (reactive) – jednají na základě nějaké události nebo vnějšího podnětu, jsou schopni vnímat a jednat
∴Proaktivní (proactive) – jednají na základě vlastní úvahy
A g e n t T e c h n o l o g y G r o u p
∴Intencionální (intentional) – jednají v dlouhodobém zájmu, mění chování za účelem dosažení cílů, používají komunikaci, sestavují plány a uvažují o sobě
∴Sociální (social) – spolupracují s ostatními agenty v komunitě na dosažení společného cíle, uvažují o ostatních agentech, mohou se sdružovat do koalic a formovat týmy
Vlastnosti Agenta
∴Adaptivní (adaptive) – dynamicky se adaptuje na změnu podmínek v prostředí, mohou měnit a zlepšivat svoji sociální pozici
∴Kooperativní (cooperative) – agenti koordinují a vyjednávají o dosažení společného cíle, mohou organizovat a delegovat.
∴Mobilní (mobile) – pohybují se v prostředí, sledují nějakou trasu
A g e n t T e c h n o l o g y G r o u p
∴Interaktivní (interactive) – agenti spolupracují s lidmi, dalšími agenty, systémy a zdroji informací
∴„Osobnostní“ (personal) – mají vlastnosti jako např. emoce
∴„Rozumný“ (rational) agent je – autonomní, reaktivní, proaktivní a sociální
Obdobné koncepty
∴Objekty – výpočetní entita se zapouzdřeným stavem, možnost vykonávat metody na svém stavu a komunikovat s ostatními objekty pomocí předávání zpráv
− Menší stupeň autonomie – možnost volání public metod− Společný cíl je tvořen ve fázi návrhu− Multi-agentní systém je z podstaty vícevláknový
A g e n t T e c h n o l o g y G r o u p
∴Expertní systémy – jedna z nejdůležitějších technologií 80-tých let
− Expertní systémy jsou „odosobněny“ od prostředí− Nemají reaktivní ani proaktivní chování− Nejsou vybaveny žadnýmy možnostmi sociálního chování
Abstraktní architektura
see
state
next
action
A g e n t T e c h n o l o g y G r o u p
environment
sensor input
action output
Belief-Desire-Intention Model
“… Framework for reasoning about formal abstract models of mental states (based on Theory of Practical Reasoning …”
∴Obsahuje popisy (jako objekty, datové struktury, atd...):
− beliefs, reprezentují znalost o vnitřním stavu a prostředí, − desires, určují motivaci - o co se snaží atd. − intentions, rozhodnutí o tom, jak jednat, aby došlo k naplnění cílů
A g e n t T e c h n o l o g y G r o u p
− intentions, rozhodnutí o tom, jak jednat, aby došlo k naplnění cílů
if φ ∈ Lagent then φ, (Bel A φ), (Goal A φ), (Int A φ) ∈ Lbdi
BDI příklady
(Bel john (sunny melbourne))
∃ A (Bel A (sunny melbourne))
∀ A: (english-person A) ⇒ (Bel A (sunny melbourne))
∀ x: (australian-city x) ⇒ (Bel john (sunny x))
∀ x: (Bel john x) ⇒ (Bel jim x)
A g e n t T e c h n o l o g y G r o u p
(Int author (write book))
(Des author (∀ A: (Int A (buy book)))
(Des A (AF (win A))) ∧ (Int A (EF (buy-ticket A))) ∧ ¬(Bel A (AF (win
A)))
∀ A,B: (motherof A B) ⇒ (Bel B (wonderfull A))
(Des janine ∀ A: (Bel A (dangerous ozonehole)))
(Bel Tony ∀ B: (Bel B (Int Tony ¬(prime-minister Tony))))
Vlastnosti uvažujícího (rational) agenta
∴satisfiability – (Int A φ) ⇒ EFφ
∴intention-belief-inconsistency – (Int A φ) ∧ (Bel A ¬EFφ) – irrational
∴intention-belief-incompleteness – (Int A φ) ∧ (¬Bel A EFφ) – rational
∴time consistency – (Int A φ) ∧ (Int A ψ) ⇒ (Int A (Fφ ∧ F ψ))
∴inevitables:
− (Int A AGφ) ⇒ (Des A AGφ)
A g e n t T e c h n o l o g y G r o u p
− (Int A AGφ) ⇒ (Des A AGφ)
− (Des A AGφ) ⇒ (Int A AGφ)
− (Bel A AGφ) ⇒ (Des A AGφ)
∴options:
− (Int A EFφ) ⇒ (Des A EFφ)
− (Des A EFφ) ⇒ (Bel A EFφ)
− (Int A EFφ) ⇒ (Bel A EFφ)
BDI inferenční mechanismus
∴Belief revision: ℘(belief) × percept →℘(belief)
∴Deliberating: ℘(belief) × ℘(desires) →℘(intention)
− options generation: ℘(belief) × ℘(desires) →℘(intentions)
− options filtering: ℘(belief) × ℘(desires) × ℘(intentions)
→℘(intentions)
A g e n t T e c h n o l o g y G r o u p
∴Planning: ℘(belief) × ℘(intention) → ℘(action)
Bel ← Bel0
percept ← get-percept()
Bel ← belief-revision(Bel)
Int ← deliberate(Bel,Des)
π ← plan(Bel,Int)
execute(π)
BDI uvažování a závazky
∴Závazky
− blind (slepé - fanatické) commitment – agent věří že ho musí dosáhnout
− single minded commitment – agent věří v dosažení nebo alespoň v možnost dosažení
− open minded commitment – trvá dokud je možné ho dosáhnout
A g e n t T e c h n o l o g y G r o u p
− open minded commitment – trvá dokud je možné ho dosáhnout
Interoperability - introduction to FIPA
∴Foundation for Intelligent (Interoperable) Physical Agents (www.fipa.org), = souhrn standardů umožňujících interoperabilitu agentních systémů – poskytuje abstraktní architekturu
A g e n t T e c h n o l o g y G r o u p
FIPA Agent Management
∴Agentní platforma
− Poskytuje infrastrukturu pro běh agentů
∴Povinné komponenty
− Agent Management System (AMS) – řídí činnost jednotlivých agentů− Agent Communication Channel (ACC) – umožňuje agentům komunikovat
∴Volitelné komponenty
− Directory Facilitator (DF) – pro vyhledávání agentů (žluté stránky)
A g e n t T e c h n o l o g y G r o u p
Agent Agent AMS DF ACC…………
Message Transport System
Agent Platform (AP)
Agent Communication
∴Agenti komunikují pomocí posílání zpráv
∴FIPA Agent Communication Language− Definuje strukturu zpráv (parametry)
(requestrequestrequestrequest
:sendersendersendersender operator@mas0:1099/JADE
:receiverreceiverreceiverreceiver (set workshop@mas0:1099/JADE)
:languagelanguagelanguagelanguage XML
:ontologyontologyontologyontology plan-task-ontology
:protocolprotocolprotocolprotocol fipa-request
A g e n t T e c h n o l o g y G r o u p
:protocolprotocolprotocolprotocol fipa-request
:contentcontentcontentcontent
(<?xml version="1.0" encoding="UTF-8"?>
<plan-task>
<task-id>Z_211-0242</task-id>
<time>10</time>
<day-load>8</day-load>
<priority>1</priority>
<start-day>20011026T000000000</start-day>
<dead-line>20011120T000000000</dead-line>
<strategy>F</strategy>
</plan-task >)
:conversationconversationconversationconversation----id id id id 123465
)
Parametry zpráv
Parametr Význam
− performative typ komunikačního aktu
− sender odesílatel zprávy− receiver příjemce zprávy− reply-to příjemce odpovědi
− content obsah zprávy
− language jazyk obsahu zprávy
A g e n t T e c h n o l o g y G r o u p
− language jazyk obsahu zprávy− encoding kódování obsahu zprávy− ontology ontologie obsahu zprávy
− protocol komunikační protokol
− conversation-id identifikace konverzace− reply-with identifikace odpovědi− in-reply-to identifikace předešlé komunikace− reply-by životnost konverzace
Speech-acts
∴Definuje význam zprávy
∴Kompletní seznam viz. http://www.fipa.org
∴Nejčastěji používané akty:
− inform: odesílatel informuje příjemce o kladném vyřízení požadavku− request: odesílatel žádá příjemce o provedení nějaké akce− agree: souhlas s provedením nějaké akce− refuse: nesouhlas s provedením dané akce s vysvětlením důvodu odmítnutí− call for proposal: výzva k zaslání nabídek k provedení dané akce
A g e n t T e c h n o l o g y G r o u p
− call for proposal: výzva k zaslání nabídek k provedení dané akce− propose: zaslání nabídky k provedení nějaké akce− accept proposal: odsouhlasení dříve zaslané nabídky k provedení akce− cancel: agent informuje ostatní, že již více nebude pokračovat v provádění nějaké akce− failure: informuje, že akce byla provedena avšak neúspěšně− subscribe: žádost o pravidelné informování o změně stavu agenta nebo jeho okolí
Interaction Protocols
∴Protokoly určené k interakci dvou, či více agentů; specifikují tok zpráv během konverzace
∴Podporované protokoly:
− FIPA Request Interaction Protocol− FIPA Subscribe Interaction Protocol− FIPA Query Interaction Protocol− FIPA Request When Interaction Protocol− FIPA Contract Net Interaction Protocol
A g e n t T e c h n o l o g y G r o u p
− FIPA Contract Net Interaction Protocol− FIPA Iterated Contract Net Interaction Protocol− FIPA English Auction Interaction Protocol− FIPA Dutch Auction Interaction Protocol− FIPA Brokering Interaction Protocol− FIPA Recruiting Interaction Protocol− FIPA Propose Interaction Protocol
FIPA Request
A g e n t T e c h n o l o g y G r o u p
FIPA Query
A g e n t T e c h n o l o g y G r o u p
FIPA Subscribe
A g e n t T e c h n o l o g y G r o u p
FIPA Contract-Net-Protocol
A g e n t T e c h n o l o g y G r o u p
Content Languages
∴Jako jazyk pro popis obsahu zprávy může být jakýkoli, s jakým je odesílatel i příjemce schopen pracovat.
∴FIPA podporuje:
− SL0 – minimální podmnožina sémantického jazyka (reprezentace akcí, jejich efektu/ukončení, jednoduché binární propozice)
− SL1 – SL0 + logicke spojky− SL2 – zahrnuje predikátovou logiku prvního řádu, modální logiku (BDI)− Ale také např. XML, RDF, CCL, KIF
A g e n t T e c h n o l o g y G r o u p
Příklady agentních platforem
∴JADE – plně FIPA compliant platforma,
− Hojně používána pro vývoj vědeckých prototypů− Lze stáhnout přes http://jade.tilab.com/− 100% Java − open source− LEAP - JADE pro J2ME
∴A-Globe – lehká, rychlá, ACL-FIPA compliant platforma
A g e n t T e c h n o l o g y G r o u p
∴A-Globe – lehká, rychlá, ACL-FIPA compliant platforma
− podporuje mobilitu a komunikační nedostupnost− 100% Java, open source− Lze stáhnout přes http://agents.felk.cvut.cz/aglobe− Vyvinuta na FEL ČVUT− Velmi efektivní pro agentní simulace – lze použít silnou simulační nadstavbu