53
Avtomatsko modeliranje Avtomatsko modeliranje ve ve čagentnih sistemov čagentnih sistemov mag. Andraž Bežek mentor: akad. prof. dr. Ivan Bratko somentor: prof. dr. Matjaž Gams Fakulteta za računalništvo in informatiko Univerza v Ljubljani Ljubljana, 3. januar 2007

Avtomatsko modeliranje ve čagentnih sistemov

  • Upload
    marvel

  • View
    55

  • Download
    0

Embed Size (px)

DESCRIPTION

Fakulteta za računalništvo in informatiko Univerza v Ljubljani. Avtomatsko modeliranje ve čagentnih sistemov. mag. Andraž Bežek mentor: akad. prof. dr. Ivan Bratko somentor: prof. dr. Matjaž Gams. Ljubljana, 3. januar 2007. Vsebina. Večagentno modeliranje - PowerPoint PPT Presentation

Citation preview

Page 1: Avtomatsko modeliranje ve čagentnih sistemov

Avtomatsko modeliranje Avtomatsko modeliranje vevečagentnih sistemovčagentnih sistemov

mag. Andraž Bežek

mentor: akad. prof. dr. Ivan Bratko

somentor: prof. dr. Matjaž Gams

Fakulteta za računalništvo in informatikoUniverza v Ljubljani

Ljubljana, 3. januar 2007

Page 2: Avtomatsko modeliranje ve čagentnih sistemov

VsebinaVsebina

Večagentno modeliranje Sistem za strateško modeliranje - MASDS Algoritem za strateško modeliranje - MASDA Aplikacija in ovrednotenje na

domeni RoboCup domeni 3vs2 Keepaway

Prispevki znanosti Zaključek

Page 3: Avtomatsko modeliranje ve čagentnih sistemov

Večagentno modeliranje:Večagentno modeliranje:ProblemProblem Iz sledenja nizkonivojskega obnašanja skupine agentov

in zgolj osnovnega domenskega znanja ugotoviti, kakšno skupno strategijo izvajajo.

Naloga je zahtevna iz dveh ključnih razlogov: Agenti so samostojne entitete, ki skušajo v nenehni interakciji

s soigralci, nasprotniki in okoljem skladno izvajati vnaprej dogovorjeno strategijo. Iz nizkonivojskega opisa delovanja posameznih agentov je zato težko izluščiti visokonivojsko strategijo skupine agentov.

Pri učenju ima sistem poleg opazovanja nizkonivojskega obnašanja na voljo le osnovno domensko znanje. Tako osnovno domensko znanje je običajno na voljo, naloga pa zahteva odkrivanje poglobljenega znanja, kakršnega imajo na voljo domenski strokovnjaki.

Naloga je primer modernega problema umetne inteligence[1]

[1] Cohen, P.R., If Not Turing’s Test, Then What? AI Magazine, 2005. 26(4): str. 61-67.

Page 4: Avtomatsko modeliranje ve čagentnih sistemov

Večagentno modeliranje: Večagentno modeliranje: Domena RoboCupDomena RoboCup

Page 5: Avtomatsko modeliranje ve čagentnih sistemov

Večagentno modeliranje: Večagentno modeliranje: PredpostavkaPredpostavka Načrtovano izvajanje strategije

večagentnega sistema se v podobnih situacijah kaže v podobnih zaporedjih akcij, lokalno odzivanje agentov na "šumne" spremembe okolja pa v spremenljivih zaporedjih akcij.

Page 6: Avtomatsko modeliranje ve čagentnih sistemov

Večagentno modeliranje: Večagentno modeliranje: Cilj disertacijeCilj disertacije Razviti domensko neodvisen postopek, ki

iz zaporedja osnovnih akcij večagentnega sistema in z uporabo osnovnega domenskega znanja zgradi model delovanja večagentnega sistema, ki: opisuje zaporedja agentnih akcij, ki so del

večagentne strategije, je človeku razumljiv ter primeren za analizo in

interpretacijo modela, je primeren za avtomatsko klasifikacijo.

Page 7: Avtomatsko modeliranje ve čagentnih sistemov

Večagentno modeliranje:Večagentno modeliranje:Definicija problemaDefinicija problema Modeliranje strategije večagentnega sistemaModeliranje strategije večagentnega sistema

MAS<AG, Abasic, Sbasic, Fbasic, h, A, R, S, F, G, G'basic> je iskanje približka strategije G na osnovi sledi delovanja MAS trace. Pri tem je podano: sled delovanja MAS trace, množica agentov AG, množica agentnih vlog R, množica agentnih akcij A in množica osnovnih agentnih akcij Abasic.

Naloga je poiskati: množice zaporedij pogosto odigranih akcij

Z={z1, z2, ..., zm}, kjer je zx=ax,1, ax,2, ..., ax,c; ai,j A čim boljši približek višjenivojskih odločitvenih funkcij G v obliki

Γ={γ1, γ2, ..., γn}, kjer je γi približek gi G

Page 8: Avtomatsko modeliranje ve čagentnih sistemov

Sistem za strateško modeliranje Sistem za strateško modeliranje

MASDS (angl. Multi-Agent Strategy Discovering System)

Page 9: Avtomatsko modeliranje ve čagentnih sistemov

Prikaz abstrakcije v sistemu za Prikaz abstrakcije v sistemu za strateško modeliranjestrateško modeliranje

Naloga Rezultat Tip objektovŠtevilo

objektov

branjevhoda

sled izvajanjavečagentnega sistema

numerične vrednosti ~3.000.000

P. 1seznam osnovnih

agentnih akcijosnovne agentne akcije ~300.000

P. 2 zaporedje agentnih akcij agentne akcije ~1.000

I. 1 akcijski graf povezave v grafu ~1.000

I. 2 abstrakten akcijski graf povezave v grafu ~500

I. 3 koncepti makroakcij poti v grafu ~200

II. 1karakterni opisi konceptov

makroakcijopisane poti ~200

II. 2 učni primeriučni primeri - instance

akcij~100

II. 3 opisi konceptov makroakcij pravila ~10

Naraščajoča abstrakcija

MA

SD

AP

redprocesiranje

Page 10: Avtomatsko modeliranje ve čagentnih sistemov

MASDS MASDS VVhodhod: : Sled delovanjaSled delovanja Vhod je sled izvajanja

večagentnega sistema Sled izvajanja je

predstavljena kot nabor vrednosti atributov v danem časovnem intervalu

468 atributov

6000+ časovnih korakov

Page 11: Avtomatsko modeliranje ve čagentnih sistemov

MASDS MASDS VVhodhod: : Domensko znanjeDomensko znanje Podano v hierarhični obliki:

Hierarhija agentnih vlog - opis agentnih vlog Hierarhija agentnih akcij - opis agentih akcij Hierarhije značilk - opis domenskega stanja

Page 12: Avtomatsko modeliranje ve čagentnih sistemov

P. 1 Zaznava osnovnih agentnih akcij P. 1 Zaznava osnovnih agentnih akcij P. 2 Zaznava agentnih akcijP. 2 Zaznava agentnih akcij P. 1 Zaznava osnovnih agentnih akcij:

Iz sprememb vrednosti atributov v sledi izvajanja sklepamo na opravljene osnovne agentne akcije.

Rezultat je seznam osnovnih agentnih akcij v vsakem koraku danega časovnega intervala. P. 2 Zaznava agentnih akcij:

Iz sprememb vrednosti atributov v sledi izvajanja in seznama osnovnih agentnih akcij ugotavljamo agentne akcije.

Rezultat je zaporedje agentnih akcij v danem časovnem intervalu. Vsaka zaznana akcija je opisana z: <akcija, tzačetek, ttrajanje, agent, vloga>

t agent1 ... agentN

0 turn turn_neck

1 dash turn_neck

2 kick turn

3 turn dash

4 dash dash

5 turn_neck turn

6 dash kick

7 dash

8 kick

Tmax ... ...

agent1 agentN

<pass_to_player, 2, 3, agent1, C-MF> <attack_support, 2, 3, agentN, L-MF>

... ... <control_dribble, 5, 4, agentN, L-MF>

...

<succ._shoot, 73, 5, agentN, C-FW>

...

Sled izvajanjaSled izvajanja Seznam osnovnih agentnih akcijSeznam osnovnih agentnih akcij Zaporedje agentnih akcijZaporedje agentnih akcij

Page 13: Avtomatsko modeliranje ve čagentnih sistemov

Algoritem za strateško modeliranjeAlgoritem za strateško modeliranje

I.1 Gradnja akcijskega

modela

izhod: akcijski graf

I.2Gradnja abstraktnega

akcijskega modela

izhod: abstrakten akcijski graf

I.3Izbira strateških konceptov

makroakcij

izhod: koncepti makroakcij

II.1Določitev agentnih vlog in akcij

izhod: karakterni opisi konceptov makroakcij

II.2Določitev učnega problema

izhod: učni primeri

II.3 Indukcija pravil

izhod: grafični in simbolni opisi konceptov makroakcij

MASDA I. del: Gradnja grafičnega akcijskega modela

MASDA II. del: Simbolni opis akcijskega modela

Page 14: Avtomatsko modeliranje ve čagentnih sistemov

Algoritem za strateško modeliranje Algoritem za strateško modeliranje I.1 Gradnja akcijskega modelaI.1 Gradnja akcijskega modela Iz zaporedja agentnih akcij zgradimo akcijski graf (AG) Povezave v AG ustrezajo akcijam,

vozlišča pa začetkom in zaključkom akcij Povezava je opisana z:

izvornim in ponornim vozliščem agentno akcijo (iz hierarhije agentnih akcij) imenom agenta njegovo vlogo (iz hierarhije agentnih vlog) trenutkom začetka akcije in njenim trajanjem

Vozlišče je opisano z: agentno akcijo (iz hierarhije agentnih akcij) imenom agenta njegovo vlogo (iz hierarhije agentnih vlog) trenutkom začetka/konca akcije in domensko pozicijo agenta v trenutku začetka/konca akcije

Page 15: Avtomatsko modeliranje ve čagentnih sistemov

I.1 Gradnja akcijskega modela I.1 Gradnja akcijskega modela Primer akcijskega grafaPrimer akcijskega grafa

10 iger moštva STEP iz RoboCup 200510 iger moštva STEP iz RoboCup 2005

Page 16: Avtomatsko modeliranje ve čagentnih sistemov

Algoritem za strateško modeliranje Algoritem za strateško modeliranje I.2 Gradnja abstraktnega akcijskega modelaI.2 Gradnja abstraktnega akcijskega modela

Iz izhodiščnega akcijskega grafa zgradimo abstrakten akcijski graf (AAG)

Določimo funkcijo razdalje dist(a, b), ki meri konceptualno razdaljo med vozlišči a in b iz AAG. Funkcija upošteva razdaljo med opisi: agentnih akcij agentnih vlog domenskih pozicij agentov

Proces abstrakcije: iterativno združevanje najbližjih vozlišč Ustavitveni pogoj: najmanjša razdalja med poljubnima

vozliščema je večja od parametra abstrakcije abs Rezultat je AAGabs, ki je model abstraktnega večagentnega

obnašanja: vozlišče predstavlja koncept začetka/konca akcije povezava predstavlja celoten akcijski koncept

ki jih opisujeta vozlišči a in b

Page 17: Avtomatsko modeliranje ve čagentnih sistemov

I.2 Gradnja abstraktnega akcijskega modelaI.2 Gradnja abstraktnega akcijskega modelaPrimer procesa abstrakcijePrimer procesa abstrakcije

16141210

86420

Parameter abstrakcije

abs

Page 18: Avtomatsko modeliranje ve čagentnih sistemov

Algoritem za strateško modeliranje Algoritem za strateško modeliranje I.3 Izbira strateških konceptov makroakcijI.3 Izbira strateških konceptov makroakcij

Šibka povezanost poti path v AAG je minimalno število primerov, ki so opisani v povezavah v poti path

Močna povezanost poti path v AAG je število poti iste dolžine iz izhodiščnega AG, ki so v celoti vsebovane v poti path

Izberemo tiste poti v AAG, ki imajo dovolj visoko močno povezanost

Taka pot predstavlja eno makroakcijo (zaporedje akcij) večagentnega sistema, ki je posledica skupne agentne strategije

Page 19: Avtomatsko modeliranje ve čagentnih sistemov

I.3 Izbira strateških konceptov makroakcijI.3 Izbira strateških konceptov makroakcijPrimer strateških konceptov makroakcijPrimer strateških konceptov makroakcij

AAG8AAG8

Vse poti dolžine = 1s šibko povezanostjo ≥ 2

Vse poti dolžine = 1s šibko povezanostjo ≥ 2

Vse poti dolžine = 1s šibko povezanostjo ≥ 3

Vse poti dolžine = 1s šibko povezanostjo ≥ 3

Vse poti dolžine = 3z močno povezanostjo ≥ 3

Vse poti dolžine = 3z močno povezanostjo ≥ 3

Page 20: Avtomatsko modeliranje ve čagentnih sistemov

I.3 Izbira strateških konceptov makroakcijI.3 Izbira strateških konceptov makroakcijPrimer strateškega koncepta makroakcijePrimer strateškega koncepta makroakcije

Page 21: Avtomatsko modeliranje ve čagentnih sistemov

I.3 Izbira strateških konceptov makroakcijI.3 Izbira strateških konceptov makroakcijPrimer strateškega koncepta makroakcijePrimer strateškega koncepta makroakcije

Pot dolžine = 3z močno povezanostjo = 3in šibko povezanostjo = 7

Pot dolžine = 3z močno povezanostjo = 3in šibko povezanostjo = 7

Page 22: Avtomatsko modeliranje ve čagentnih sistemov

Algoritem za strateško modeliranje Algoritem za strateško modeliranje II.1 Določitev agentnih vlog in akcijII.1 Določitev agentnih vlog in akcij Za dano pot v AAG:

Vsakemu vozlišču in povezavi določimo najmanj splošno agentno vlogo in akcijo, ki še odgovarja vsem opisom vlog in akcij v odgovarjajočih vozliščih oz. povezavah izhodiščnega AG

Zgradimo karakterni opis makroakcije, ki je sestavljen iz zaporedja: vloge agenta akcijskega koncepta domenske pozicije agenta

Page 23: Avtomatsko modeliranje ve čagentnih sistemov

II.1 Določitev agentnih vlog in akcijII.1 Določitev agentnih vlog in akcijPrimer karakternega opisa makroakcijePrimer karakternega opisa makroakcije

C-FW:Successful-shootC-FW:Successful-shoot

L-FW:To-playerL-FW:To-playerL-FW:Long-dribbleL-FW:Long-dribble

Vloga agenta

L-FW L-FW C-FW C-FW

Akcijski konceptZačetek akcijeLong-dribble

Začetek akcijeTo-player

Začetek akcijeSuccessful-shoot

konec akcije Successful-shoot

Domenska pozicija agenta

(x: 0,20,y: -13,27)

(x: 37,25, y: -8,95)

(x: 40,70, y: -1,69)

(x: 53,31, y: 4,72)

Page 24: Avtomatsko modeliranje ve čagentnih sistemov

Algoritem za strateško modeliranje Algoritem za strateško modeliranje II.2 Določitev učnega problemaII.2 Določitev učnega problema Proces učenja koncepta makroakcije razdelimo na

učenje posameznih akcijskih konceptov, ki jih predstavljajo vozlišča v poti, določeno z makroakcijo.

Za vsako vozlišče v poti definiramo dvorazredni učni problem: pozitivni razred sestavljajo primeri akcij,

ki so vsebovani v danem vozlišču negativni razred so ostali primeri

Izrazito neuravnotežena porazdelitev učnih primerov Vzorčenje negativnih primerov glede na njihovo

oddaljenost od pozitivnih

Page 25: Avtomatsko modeliranje ve čagentnih sistemov

II.2 Določitev učnega problemaII.2 Določitev učnega problemaDoločitev učnih primerovDoločitev učnih primerov

Page 26: Avtomatsko modeliranje ve čagentnih sistemov

Algoritem za strateško modeliranje Algoritem za strateško modeliranje II.3 Indukcija pravilII.3 Indukcija pravil Binarni atributi, ki odgovarjajo parom "agent:značilka" oz. "okolje:značilka" Atribut "a:z" resničen, če je značilka z resnična za agenta a:

Npr: agent1:speed_fast = true, agent2:speed_fast = false, ball:speed_fast = true Število atributov je odvisno od števila agentov: n*N+M

n = št. agentov, N = št. značilk za agentne lastnosti, M = št. značilk okolja Namesto imen agentov uporabimo agentne vloge (agent:značilka vloga:značilka):

Npr: C-FW:speed_fast = true, C-FW:speed_fast = false, ball:speed_fast = true Problemi:

če ima več agentov isto vlogo, si vrednosti za par vloga:značilka lahko nasprotujejo če agenti dinamično spreminjajo vloge, potem vrednosti atributov vloga:značilka niso nujo

določeni za vse časovne točke Binarne atribute pretvorimo v atribute, katerih vrednosti so množice. Atributi

predstavljajo značilke, elementi množice pa vloge, za katere je par "vloga:značilka" resničen. Npr: speed_fast = {C-FW, ball}

Zmanjšanje števila atributov (ni več odvisno od števila agentov): n*N+M N+M Induciramo pravila, ki klasificirajo primere v pozitivni razred.

Page 27: Avtomatsko modeliranje ve čagentnih sistemov

II.3 Indukcija pravilII.3 Indukcija pravilPrimer pravilPrimer pravil

C-FW:Incoming L-FW:Immediate R-MF:Incoming RTeam.GK:Incoming L-

MF:Back RTeam.C-FW:Very-far R-MF:Center-of-the-field

C-FW:Incoming L-FW:Immediate R-MF:Incoming RTeam.GK:Incoming L-

MF:Back RTeam.C-FW:Very-far R-MF:Center-of-the-field

C-MF:Moving-away L-FW:Medium-distance C-FW:Attacking-half.Attacking-third.Danger-zone C-

MF:Medium-distance L-FB:Moving-away L-MF:Medium-distance RC-FB:Moving-away-slow

C-MF:Moving-away L-FW:Medium-distance C-FW:Attacking-half.Attacking-third.Danger-zone C-

MF:Medium-distance L-FB:Moving-away L-MF:Medium-distance RC-FB:Moving-away-slow

C-FW:Successful-shootC-FW:Successful-shoot

L-FW:To-playerL-FW:To-playerL-FW:Long-dribbleL-FW:Long-dribble

RTeam.LC-FB:Center-circle RTeam.L-FB:Right-wing

L-MF:Medium-distance R-FW:Faster RTeam.R-FW:Moving L-MF:Defending-half L-FW:Moving RTeam.LC-FB:Right-half

R-FB:Very-far

RTeam.LC-FB:Center-circle RTeam.L-FB:Right-wing

L-MF:Medium-distance R-FW:Faster RTeam.R-FW:Moving L-MF:Defending-half L-FW:Moving RTeam.LC-FB:Right-half

R-FB:Very-far

Page 28: Avtomatsko modeliranje ve čagentnih sistemov

Primeri strateških makroakcijPrimeri strateških makroakcij

Page 29: Avtomatsko modeliranje ve čagentnih sistemov

Domena RoboCupDomena RoboCupEkspertna analizaEkspertna analiza Ekspertna analiza 29 pogojev v modelu

napada[1, 2]: 10 pogojev zelo primernih (34,5 %) 10 pogojev smiselnih (34,5 %) 9 pogojev neprimernih (31,0 %)

Pravila nakazujejo na glavne prednosti oz. pomanjkljivosti situacij

[1] Pocrnjič, M., Osebni pogovori. 2005: Ljubljana. Profesor nogometa na Fakulteti za šport. [2] Resnik, J., Osebni pogovori. 2006: Kranj. Igralec NK Triglav.

Page 30: Avtomatsko modeliranje ve čagentnih sistemov

Razlaga akcijskega konceptaRazlaga akcijskega konceptaL-FW:Long-dribbleL-FW:Long-dribble

Situacija predstavlja napačno postavitev branilcev desnega moštva RTeam.LC-FB in RTeam.L-FB. Omenjena branilca sta predaleč stran od napadalcev levega moštva C-FW in L-FW, namesto da bi bila pred njima, zato tudi ne moreta preprečiti neizogibnega prodora napadalnih igralcev levega moštva. Značilnost pozicije so tudi napačne postavitve sredinskih igralcev levega moštva L-MF, C-MF in R-MF, ki se zadržujejo preveč v obrambnih položajih. Njihova vloga v dani situaciji bi morala biti striktno napadalna.

RTeam.LC-FB:Center-circle RTeam.L-FB:Right-wing L-MF:Medium-distance R-FW:Faster

RTeam.R-FW:Moving L-MF:Defending-half L-FW:Moving RTeam.LC-FB:Right-half R-FB:Very-far

RTeam.LC-FB:Center-circle RTeam.L-FB:Right-wing L-MF:Medium-distance R-FW:Faster

RTeam.R-FW:Moving L-MF:Defending-half L-FW:Moving RTeam.LC-FB:Right-half R-FB:Very-far

Page 31: Avtomatsko modeliranje ve čagentnih sistemov

Razlaga akcijskega konceptaRazlaga akcijskega konceptaL-FW:To-playerL-FW:To-player

Drugi akcijski koncept predstavlja nevarno situacijo za desno moštvo, saj ima napadalno moštvo kar tri napadalce pred nasprotnikovimi branilci, kar daje igralcu z žogo več možnosti: L-FW lahko sam preigra vratarja, lahko poda C-FW ali pa R-FW. Obrambni igralci desnega moštva so "zamudili" pri obrambi in so glavni krivci za nastalo situacijo. RTeam.GK gre pravilno na žogo, vendar ga L-FW prehiti in poda C-FW, ki ima prosto za strel na gol.

C-FW:Incoming L-FW:Immediate R-MF:Incoming RTeam.GK:Incoming

L-MF:Back RTeam.C-FW:Very-far R-MF:Center-of-the-field

C-FW:Incoming L-FW:Immediate R-MF:Incoming RTeam.GK:Incoming

L-MF:Back RTeam.C-FW:Very-far R-MF:Center-of-the-field

Page 32: Avtomatsko modeliranje ve čagentnih sistemov

Razlaga akcijskega konceptaRazlaga akcijskega konceptaC-FW:Successful-shootC-FW:Successful-shoot

Tretji akcijski koncept predstavlja brezizhodno situaciji za desno moštvo, saj ima C-FW prosto za nemoten strel na gol. Krivdo za to nosijo predvsem obrambni igralci desnega moštva, ki se niso uspeli postaviti med napadalce in gol.

C-MF:Moving-away L-FW:Medium-distance C-FW:Attacking-half.Attacking-third.Danger-zone C-MF:Medium-distance L-FB:Moving-away

L-MF:Medium-distance RC-FB:Moving-away-slow

C-MF:Moving-away L-FW:Medium-distance C-FW:Attacking-half.Attacking-third.Danger-zone C-MF:Medium-distance L-FB:Moving-away

L-MF:Medium-distance RC-FB:Moving-away-slow

Page 33: Avtomatsko modeliranje ve čagentnih sistemov

Domena RoboCupDomena RoboCupOpis izvedbe meritevOpis izvedbe meritev 10 iger moštva STEP iz RoboCup 2005 proti 8 različnim nasprotnikom:

skupaj 99 golov (STEP 96, nasprotniki 3) skupna dolžina 66.216 korakov > 3.000.000 osnovnih agentnih akcij 10.000 agentnih akcij

Primere smo označili na podlagi zgrajene makroakcije iz 10 iger 10 kratno prečno preverjanje:

9 iger za učenje modela 1 igra za preverjanje modela

Testni primeri izbrani v okolici makroakcije Klasificiranje na podlagi:

karakternega opisa pravil karakternega opisa in pravil večinskega klasifikatorja

Page 34: Avtomatsko modeliranje ve čagentnih sistemov

Domena RoboCupDomena RoboCupMeritveMeritve klasifikacijske točnostiklasifikacijske točnosti

Page 35: Avtomatsko modeliranje ve čagentnih sistemov

Domena RoboCupDomena RoboCupMeritve priklicaMeritve priklica

Page 36: Avtomatsko modeliranje ve čagentnih sistemov

Domena RoboCupDomena RoboCupMeritve natančnostiMeritve natančnosti

Page 37: Avtomatsko modeliranje ve čagentnih sistemov

Domena 3vs2 KeepawayDomena 3vs2 Keepaway

Želeli smo preveriti naslednje hipoteze: Domenska neodvisnost:

je MASDA res domensko neodvisen algoritem? Popolnost modelov:

ali lahko MASDA generira model celotne strategije in ne samo njenih delov?

Uporabnost modelov: ali je možno uporabiti dobljeni model strategije neposredno za nadzor izvajanja agentov?

Kvaliteta modeliranja: kakšna je kvaliteta modeliranja oz. v kakšni meri so dobljeni modeli podobni originalnim strategijam?

Page 38: Avtomatsko modeliranje ve čagentnih sistemov

Domena 3vs2 KeepawayDomena 3vs2 Keepaway

Page 39: Avtomatsko modeliranje ve čagentnih sistemov

Domena 3vs2 KeepawayDomena 3vs2 KeepawayOpis prostoraOpis prostora Domenski prostor opisan s 13 spremenljivkami:

dist(K1, C), dist(K2, C), dist(K3, C), dist(T1, C), dist(T2, C), dist(K1, K2), dist(K1, K3), dist(K1, T1), dist(K1, T2), min(dist(K2, T1), dist(K2, T2)), min(dist(K3, T1), dist(K3, T2)), min(ang(K2, K1, T1), ang(K2, K1, T2)), min(ang(K3, K1, T1), ang(K3, K1, T2)).

Page 40: Avtomatsko modeliranje ve čagentnih sistemov

Domena 3vs2 KeepawayDomena 3vs2 KeepawayPostopek primerjavePostopek primerjave

Igra z referenčno Igra z referenčno strategijostrategijo

MASDA MASDA modeliranjemodeliranje

Igra z naučeno Igra z naučeno strategijostrategijo

Naučena pravila Naučena pravila vnesemo v programvnesemo v program

Primerjava Primerjava strategijstrategij

Page 41: Avtomatsko modeliranje ve čagentnih sistemov

Domena 3vs2 KeepawayDomena 3vs2 KeepawayMerjenje trajanja povprečne epizodeMerjenje trajanja povprečne epizode

Page 42: Avtomatsko modeliranje ve čagentnih sistemov

Domena 3vs2 KeepawayDomena 3vs2 KeepawayStatistična signifikantnostStatistična signifikantnost

Page 43: Avtomatsko modeliranje ve čagentnih sistemov

Domena 3vs2 KeepawayDomena 3vs2 KeepawayMeritve ujemanja akcijMeritve ujemanja akcij

Page 44: Avtomatsko modeliranje ve čagentnih sistemov

Domena 3vs2 KeepawayDomena 3vs2 KeepawayUjemanje modela z referenčno strategijoUjemanje modela z referenčno strategijo

Analiza modela strategije hand3-6-9, kjer smo določili različno strategijo za posameznega branilca

if (playerNum == 1) { // branilec številka 1 if (DistK1T1 > 3) return Hold}else if (playerNum == 2) { // branilec številka 2 if (DistK1T1 > 6) return Hold}else { // branilec številka 3 if (DistK1T1 > 9) return Hold}// sicer podaj najbolj odprtemu branilcuif (MinAngK2K1T1T2 > MinAngK3K1T1T2) return PassK2else return PassK3

if (playerNum == 1) { // branilec številka 1 if (DistK1T1 > 3) return Hold}else if (playerNum == 2) { // branilec številka 2 if (DistK1T1 > 6) return Hold}else { // branilec številka 3 if (DistK1T1 > 9) return Hold}// sicer podaj najbolj odprtemu branilcuif (MinAngK2K1T1T2 > MinAngK3K1T1T2) return PassK2else return PassK3

LTeam.1:Pass-K2MinAngK2K1T1T2.30-350 DistK1T1.0-4

MinDistK2T1T2.3-20 DistK3C.4-15 DistT2C.0-10 MinAngK3K1T1T2.0-90 DistK1T2.1-10

LTeam.2:HoldDistK1T1.7-50 MinAngK2K1T1T2.0-20

MinAngK3K1T1T2.5-350 DistK1K2.6-20 DistK3C.4-15

LTeam.2:Pass-K3DistK1T1.3-6 MinAngK3K1T1T2.30-350

MinAngK2K1T1T2.0-60 DistK1T2.0-7 DistK1C.2-9 DistT1C.1-20 DistK3C.4-15 DistK2C.1-10

LTeam.3:HoldDistK1T1.9-20 MinAngK2K1T1T2.0-30 DistT1C.3-7 DistK2C.2-15 DistK1K3.8-50

Page 45: Avtomatsko modeliranje ve čagentnih sistemov

Domena 3vs2 KeepawayDomena 3vs2 KeepawayVizualna primerjava z referenčno strategijoVizualna primerjava z referenčno strategijo

Referenčna hand strategija Naučena hand strategija

Referenčna rand strategija Naučena rand strategija

Page 46: Avtomatsko modeliranje ve čagentnih sistemov

Prispevki k znanostiPrispevki k znanosti Nov, domensko neodvisen algoritem za modeliranje

večagentnih sistemov, ki iz opazovanja obnašanja večagentnega sistema ob le osnovnem predznanju zgradi človeku razumljivo delno ali celotno strategijo skupine agentov.

Prispevki k znanosti so: Ob uporabi le osnovnega predznanja algoritem uspešno odkriva

visokonivojsko znanje neodvisno od domene V algoritmu je razvit nov postopek abstrakcije, ki omogoča

gradnjo poljubno abstraktnih opisov strategije večagentnega sodelovanja.

Zgrajeni model opisuje sodelovanje agentov, ki je predstavljeno v grafični in simbolni obliki.

Uspešnost algoritma je izkazana na dveh večagentnih domenah.

Page 47: Avtomatsko modeliranje ve čagentnih sistemov

ZaključekZaključek

Izpolnili smo cilje - razvili smo domensko neodvisen postopek MASDA, ki iz zaporedja osnovnih akcij večagentnega sistema in z uporabo osnovnega domenskega znanja zgradi model delovanja večagentnega sistema, ki: opisuje zaporedja agentnih akcij, ki so del večagentne strategije, je človeku razumljiv ter primeren za analizo in interpretacijo

modela, je primeren za avtomatsko klasifikacijo.

Page 48: Avtomatsko modeliranje ve čagentnih sistemov

ZaključekZaključek Domensko neodvisnost smo potrdili z implementacijo na dveh večagentnih

domenah RoboCup in 3vs2 Keepaway, kjer smo za vsako domeno podali zgolj osnovno domensko znanje v obliki hierarhij agentnih akcij, vlog in domenskih značilk

Model strategije večagentnega sistema na domeni RoboCup ekspert potrdil, da je predstavljena makroakcija del

nogometne strategije na domeni 3vs2 Keepaway uspešno modelirali celotno strategijo

Človeško razumljivost smo potrdili: z ekspertno analizo koncepta makroakcije na domeni RoboCup s primerjavo implementacije strategije in generiranih pravil referenčne hand in

hand3-6-9 strategije na domeni 3vs2Keepaway. Primernost za avtomatsko klasifikacijo:

strojno ovrednotenje na domeni RoboCup z meritvami klasifikacijske točnosti, priklica in natančnosti

na domeni 3vs2 Keepaway ovrednotenje z igranjem igre z agenti, ki imajo implementiran model naučene referenčne strategije agentov

Relevantnost prispevkov disertacije smo pokazali s primerjavo s sorodnimi deli

Page 49: Avtomatsko modeliranje ve čagentnih sistemov

VprašanjaVprašanja

?

Page 50: Avtomatsko modeliranje ve čagentnih sistemov

Primeri napadov na golPrimeri napadov na gol

R-fwd:pass to player →Fwd:control dribble → Fwd:shoot

R-fwd:dribble →R-fwd:pass to player → Fwd:shoot

Fwd:pass to player →L-fwd:control dribble → L-fwd:shoot

L-fwd:speed dribble →L-fwd:pass → Fwd:shoot

L-fwd:pass to player →Fwd:dribble → Fwd:shoot

C-fwd:speed dribble → C-fwd:pass → Fwd:dribble → Fwd:shoot

Page 51: Avtomatsko modeliranje ve čagentnih sistemov

Značilka Značilka ((anglangl. . featurefeature))

A feature is the specification of an attribute and its value. For example, color is an attribute. ``Color is blue'' is a feature of an example. Many transformations to the attribute set leave the feature set unchanged (for example, regrouping attribute values or transforming multi-valued attributes to binary attributes). Some authors use feature as a synonym for attribute (e.g., in feature-subset selection). [1]

[1] Kohavi, Ron in Foster Provost, Glossary of Terms - Special Issue on Applications of Machine Learning and the Knowledge Discovery Process. Machine Learning, 1998. 30: str. 271-274.

Page 52: Avtomatsko modeliranje ve čagentnih sistemov

BibliografijaBibliografija 1.01 Izvirni znanstveni članek

BEŽEK, Andraž, GAMS, Matjaž. An agent that understands job description. Informatica, 2001, 25 (1), str. 99-105 BEŽEK, Andraž, GAMS, Matjaž. Increasing fault-tolerance of multi-agent systems. Informatica, 2003, 27 (4), str. 417-424. BEŽEK, Andraž, GAMS, Matjaž. From basic agent behavior to strategic patterns in a robotic soccer. Informatica, 2005, 29 (4), str.

461-468. BEŽEK, Andraž, GAMS, Matjaž. Comparing a traditional and multi-agent load-balancing system. Comput. inform., 2006, (25), str.

17-42. 1.08 Objavljeni znanstveni prispevek na konferenci

BEŽEK, Andraž. Agenti in KQML v gručnem strežniku Cluster Server 7. V: BAVEC, Cene (ur.) in ostali. Zbornik IS '01, Ljubljana: Institut Jožef Stefan, 2001, str. 25-28.

BEŽEK, Andraž. Agentno orientiran pristop pri načrtovanju porazdeljenih agentnih sistemovf. V: BOHANEC, Marko (ur.) in ostali. Zbornik IS'2002, Ljubljana: Institut "Jožef Stefan", 2002, str. 74-77.

BEŽEK, Andraž, GAMS, Matjaž. Agent-oriented software engineering : a comparison of agent and non-agent version of a cluster server. V: AAMAS-2003 : proceedings of the Second International joint Conference on Autonomous Agents and Multi Systems, Melbourne, Australia. New York: ACM Press, 2003, str. 930-931.

BEŽEK, Andraž, GAMS, Matjaž. An agent version of a cluster server. V: CCGrid2003, 3rd IEEE/ACM International Symposium on Cluster Computing and the Grid, Tokyo, Japan. Proceedings. Los Alamitos [etc.]: IEEE Computer Society, cop. 2003, str. 641-644.

BEŽEK, Andraž. Agentno-usmerjeno načrtovanje kompleksnih programskih sistemov. V: RAJKOVIČ, Vladislav (ur) in ostali. Zbornik IS 2003, Ljubljana: Institut "Jožef Stefan", 2003, str. 17-20.

BEŽEK, Andraž. Modeling multiagent games using action graphs. V: Modeling other agents from observations : a fully-day workshop at AAMAS 2004, [the Third International joint Conference on Autonomous Agents & Multi Agent Systems], July 19-[23], 2004, New York [USA]. [S.l.: s.n.], 2004, str. 101-104.

BEŽEK, Andraž. Discovering strategic multi-agent behavior in a robotic soccer domain. V: Proceedings of the the Fourth International Joint Conference on Autonomous Agents and Multiagent Systems [AAMAS 05] : Utrecht, The Netherlands, July 25 to 29, 2005. New York: ACM, 2005, str. 1177-1178.

BEŽEK, Andraž, GAMS, Matjaž. Discovering strategic multi-agent behavior in a robotic soccer domain. V: MARKIČ, Olga (ur.) in ostali. Zbornik IS 2005, Ljubljana: Institut "Jožef Stefan", 2005, str. 341-344.

BEŽEK, Andraž, GAMS, Matjaž, BRATKO, Ivan. Multi-agent strategic modeling in a robotic soccer domain. V: STONE, Peter (ur.), WEISS, Gerhard (ur.). AAMAS'06 : proceedings of the Fifth International Joint Conference on Autonomous Agents and Multiagent Systems Hakodate, Japan, May 8-12, 2006. New York: ACM, 2006, str. 457-464.

BEŽEK, Andraž, GAMS, Matjaž, BRATKO, Ivan. Posnemanje opazovanega večagentnega sistema z uporabo MASDA v domeni 3VS2 Keepway. V: BOHANEC, Marko (ur.) in ostali. Zbornik IS 2006. Ljubljana: Institut "Jožef Stefan", 2006, str. 106-109.

Page 53: Avtomatsko modeliranje ve čagentnih sistemov

SSLIPPERLIPPER Sistem za indukcijo pravil SLIPPER [1]

(angl. Simple Learner with Iterative Pruning to Produce Error Reduction) Generira množice pravil s požrešnim algoritmom za generiranje pravil, ki jih

nato ocenjuje s confidence-rated boosting metodo, (različica metode AdaBoost [2]

Implementacija sistema je osnovana na učnemu sistemu RIPPER [3] istega avtorja; podobno kot RIPPER je SLIPPER hiter, robusten in preprost za uporabo

Eksperimentalno pokazana [1] časovna kompleksnost algoritma O(n log n), kjer je n število učnih primerov

Za opis učnih podatkov uporablja SLIPPER tudi atribute, katerih vrednosti so množice, kar zadosti pogoju, ki ga pri algoritmu za indukcijo pravil postavlja MASDA

Za opis posameznega akcijskega koncepta uporabimo le prvo (najbolje ocenjeno) pravilo iz množice generiranih

[1] Cohen, W.W. in Y. Singer. A Simple, Fast, and Effectove Rule Learner. V zborniku Sixteenth National Conference on Artificial Intelligence and Elevenths Innovative Applications of Artificial Intelligence Conference . 1999: AAAI. [2] Schapire, R.E. in Y. Singer, Improved boosting algorithms using confidence-rated predictions. Machine Learning 1999. 37(3): str. 297-336. [3] Cohen, W.W. Fast Effective Rule Induction. V zborniku The 12th International Conference on Machine Learning. 1995: Morgan Kaufmann.