Title: F
1Föreläsning om Agenter
- Lisa Brouwers
- lisa_at_dsv.su.se
2Innehåll
- Varför prata om agenter?
- Agent-definition
- Intelligenta agenter?
- Singel vs. MAS
- Design av en agent (R-N)
- Perceptorer och Effektorer
- Rationalitet
- Mått
- Autonomi
- Agentstruktur (P.A.G.E)
3Innehåll (forts.)
- Olika arkitekturer för Agenter
- Reflex Agent (Reaktiv)
- Agent med State
- Goal-Based Agent
- Utility-Based Agent
- andra arkitekturer (BDI t ex)
4Varför prata om agenter?
- Traditionella program är begränsade
- Behöver system som kan fatta beslut själva
- Föränderliga och oförutsägbara domäner kräver
Intelligenta eller Autonoma agenter
5Agent-definition Vad är en agent?
- Ett program
- En process
- Ett aktivt objekt
- En mobil robot
- En social varelse som interagerar
- En entitet med ett mentalt state
6Russel - Norvig (def. 1)
- En entitet som uppfattar (percepts) sin omgivning
via sensorer - och som handlar (acts) i omgivningen genom
effektorer
7(No Transcript)
8Singel-agent
- NetBots
- Mail Filter
- Personliga Digitala Assistenter (PDA)
- Robotar
- Mobila processer
- Termostater ?
- Xbiff ?
9Intelligenta agenter
- Woolridge, Jennings
- situerade i en omgivning
- handlar flexibelt och autonomt i omgivningen
- strävar efter att uppnå designmålen.
10Flexibilitet
- Reaktiv
- Pro-aktiv
- Inneha social förmåga
11Multi-Agent System
- Multi-diciplinärt
- Datavetenskap
- Psykologi
- Sociologi
- Filosofi
- Etnologi
- Ekonomi
- Delområden inom datavetenskap
- Distribuerade system
- Robotik
- Koncept. Modellering
- ML
- NN
- Parallella processer
- Kunskapsrepresentation
12Tillämpningsområden för MAS
- Matchningssystem på WWW
- Nätverk av PDIs
- Elektroniska marknadsplatser
- Robotfotboll
- Parallella processer
- Samtidiga processer
13Rationalitet (R-N, informell def.)
- En rationell agent är en som utför rätt handling
- Rätt handling är den handling som gör agenten
mest framgångsrik
14Begränsad rationalitet
15Performance Measure
- Objektivt
- Förbestämda kriterier
- Hur kriterierna mäts
- När kriterierna mäts
- Exempel Dammsugar-Agent
- Kriterium 1
- Suga upp mycket smuts
- Mått Vikt (volym?)
- Kriterium 2
- Arbeta snabbt
- Mått Tid
- Kriterium 3
- Förbruka lite el
- Mått kW
- Kriterium 4 ?
16Rationalitet (formell def. R-N)
- Vad som är rationellt vid en viss tidpunkt
bestäms av följande - vilket Performance Measure som valts
- Percept Sequence (vad agenten upplevt hittills)
- agentens kunskap om omgivningen
- mängden handlingar agenten kan utföra
17Idealisk Rationell Agent
- För varje möjlig 'percept sequence' skall
agenten utföra den handling som förväntas
maximera dess Performance Measure, utifrån
information i dess 'percept sequence' och annan
inbyggd kunskap agenten innehar. - En agent är autonom om dess handlingar bestäms
(åtminstone delvis) av dess egna erfarenheter. - OBS. Implicerar krav på Adaptivitet
18Mapping
- Percept-sekvens
- Action
- Tabell?
- praktiskt omöjligt
- Metoder/Funktioner
- Begränsning bakåt i percept-sekvensen
19Agent-struktur
- Arkitektur
- datorn som agenten körs på
- mjukvaran som behövs för att agenten skall
fungera (röra sig, uppfatta bilder t ex) - agentplattform som hjälper till med infrastruktur
och nödvändig basfunktonalitet.
- Agent (ett program)
- Kropp ej nödvändig, mjukvaruagenter SoftBots
- Agenten kan köras på Internet eller på en lokal
dator (eller i princip varsomhelst, i en
glödlampa, på kylskåpsdörren eller i våra kläder.
)
20Design av en agent (P.A.G.E)
- Percepts
- vilken typ av Input (bilder, ljud, data, ?)
- Actions
- vilken typ av handlingar kan agenten utföra, dvs
Output (röra sig, sparka en boll, skicka ett
meddelande, svänga)
- Goals
- vilka mål skall agenten ha, dammsuga rent?, köra
snabbt och säkert?, hitta bästa priset på en
vara. - Environment
- vilken omgivning kommer agenten verka i?
Internet, stadstrafik, en fotbollsplan t ex.
21 Abstrakt Agent-program
- Action SkelettAgent(percept )
- Static memory
- -------------------------------
- memory UpdateMemory(memory, percept)
- action ChooseBestAction(memory)
- memory UpdateMemory(memory, action)
- return (action)
-
22Tabell-agent
- Action TabellAgent(percept )
- Static percept-sekvens, tabell
- ----------------------------------------
- percept-sekven AppendPercept(percept)
- action TittaITabellen(percept, tabell)
- return (action)
-
23Det duger inte med en tabell...
- storlek på tabell
- tidsåtgång för att skapa tabell
- agenten saknar autonomi
- lärande omöjligt i praktiken
24Varför kan resonerande löna sig?
- Taxi-agent
- Percepts kameror, GPS, mikrofon, högtalare.
- Actions Styra, gasa, bromsa, prata med
passagerare. - Goals Säkert, snabbt, lagligt, maximera
vinsten. - Environment vägar, annan trafik, fotgängare,
kunder
25Vilken typ av agent skall vi välja?
- Olika arkitekturer för Agenter
- Reflex Agent (Reaktiv)
- Agent med State
- Goal Based Agent
- Utility Based Agent
26Reflex-agent
- Med produktionsregler (If - then)
Sensorer
Omgivning
Hur världen ser ut nu
Vilken handling bör jag välja
Effektorer
If-Then-regler
27Reflex-agent (program)
- Action ReflexAgent(percept )
- Static regler (if-then)
- ----------------------------------------
- state TolkaInput(percept)
- regel MatchaRegel(state, regel)
- action TriggaRegel(regel)
- return (action)
-
28Agent med State
Agent med State
State Hur världen utvecklas Hur mina handl.
påverkar
Sensorer
Omgivning
Hur världen ser ut nu
Vilken handling bör jag välja
Effektorer
If-Then-regler
29Agent med State (program)
- Action AgentmedState(percept)
- Static state (current), regler
- --------------------
- state UppdateraState(state, percept)
- regel regelMatchning(state,regel)
- action RegelAction(regel)
- state UppdateraState(state, percept)
- return(action)
-
30Goal Based Agent
Sensorer
State Hur världen utvecklas Vad mina handl.
medför
Omgivning
Hur världen ser ut nu
Vad händer om jag utför handling A?
Vilken handling ska jag välja?
Mål
Effektor
31Utility Based Agent
- Agent med nyttofunktion (utilitetsfunktion)
Sensorer
State Hur världen utvecklas Vad mina handl.
medför
Omgivning
Hur världen ser ut nu
Vad händer om jag utför handling A?
Vilken nytta ger det mig ?
Nytto-funktion
Vilken handling ska jag välja?
Effektor
32Hur ser omgivningen ut?
- Tillgänglig/Icke tillgänglig
- Deterministisk/Icke deterministisk
- Episodisk/ Icke episodisk
- Statisk/ Dynamisk
- Diskret/ Kontinuerlig
33Agent eller Objekt?
- Objects do it for free, agents do it for money
- Agenter kontrollerar sina handlingar
- Agenter är flexibla
- reaktiva, pro-aktiva sociala
- Varje agent egen tråd
34Sammanfattning
- Agent-konceptet
- Singel/Multiagentsystem
- Idealisk Rationell agent
- Agent arkitektur
- Design av en agent
- Omgivningen
35Då var det slut.
- Bra agentsida på nätet
- http//www.sics.se/isl/abc/survey.html
- Sverker Jansson (SICS)