Perception via sensorisk data i robotar - IDA.LiU.se

Perception via sensorisk data i robotar
Projektarbete
Artificiell intelligens 729G43
Julia Skönvall
[email protected]
Linköpings universitet
2016-01-11
Innehåll
1. Inledning................................................................................................................................. 1
2. Teori och bakgrund ................................................................................................................ 2
2.1 Kognitionens framväxt och betydelse för intelligens ....................................................... 2
2.2.1 Hur kan man implementera perception i ett system? .................................................... 3
2.2.2 Ofullständighet och osäkerhet ....................................................................................... 3
2.2.3 Miljön ............................................................................................................................ 4
3. Roboten Ludwig ..................................................................................................................... 6
3.1 Ludwig och synfärdigheten .............................................................................................. 7
3.2 Logiken i ett top-down informationsflöde ....................................................................... 8
4. Diskussion ............................................................................................................................ 10
5. Referenser............................................................................................................................. 11
729G43
Artificiell intelligens
Projektarbete
2017-01-12
Julia Skönvall - julsk477
HT-16
1. Inledning
Teknikens framväxt går framåt och växer och robotar blir allt mer lika människan. Plötsligt så
kan vi interagera med system via våra röster såsom Siri, vi kan skanna koder med vår kamera
på våra mobiler och en GPS kan visa oss vägen. Robotar och system blir allt mer delaktiga i
våran vardag. Några viktiga aspekter som har gjort så att en robot blir mer likt människan är
att de kan få in någon typ utav perception. Perceptionen kan vara i form av symbolisk
representation, sensorer, top-down information, uppmärksamhet och termer av ofullständighet
(Shanahan, 2005).
Denna rapport är baserad på Murray Shanahans forskning och teori kring hur man kan
implementera en typ utav perception via sensorisk data som blir till meningsfulla
representationer i en robot. Shanahan är en professor inom kognitiva robotar på Cognitive
Robotics Imperial College i London. Syftet med denna rapport är att få en djupare förståelse
för hur ett specifikt system kan fungera inom artificiell intelligens. I detta fall hur ett system
fungerar i en robot med den mänskliga egenskapen perception.
1
729G43
Artificiell intelligens
Projektarbete
2017-01-12
Julia Skönvall - julsk477
HT-16
2. Teori och bakgrund
Forskning inom artificiell intelligens och teori inom beräkning av vårt medvetande som
arbetar med symboliska representationer har svårt att svara på frågan angående vad
representationerna verkligen betyder och vad de har för mening. Detta problem går tillbaka så
sent som år 1874 där Franz Bretano ställde sig frågan angående hur mentala tillstånd förstår
sitt syfte gentemot saker i världen. Inom filosofin har man använt sig av tankeexperimentet
det kinesiska rummet av John Searle samt symbol grounding problemet. System som saknar
ett syfte eller en avsiktlighet är en robot som är kroppslig. Denna robot kan manipulera de
symboler som designern har implementerat i systemet och som har sensomotorisk interaktion
med den fysiska världen. På detta sätt blir systemet mer likt människan. De symboliska
representationer som byggs upp via en sensomotorisk interaktion kallas för grounded och de
tjänar ett syfte tillskillnad mot ett system som är kroppsligt (Shanahan, 2005).
Shanahans experiment och studie kommer att handla om logikbaserad AI där fokus inte
kommer att läggas på att bygga program med explicita logiker av representation och
slutledningar. Snarare är det så att man ska kunna redogöra för en robots perception som är
formulerad i ett teoretiskt språk som kan svara på en del frågor. Metodikens kontext är
robotiken och dess styrkor som har implementerats på ett antal robotplattformer. Studien
innehåller detaljerande svar på många observerade frågor angående ofullständig och osäker
sensorisk data, aktiv perception, top-down informationsflöde, uppmärksamhet och sensor
fusion. Syftet är att man inte vill studera perception, handling och kognition som enskilda i en
robots perception utan man vill se hur de elementen fungerar tillsammans (Shanahan, 2005).
2.1 Kognitionens framväxt och betydelse för intelligens
Kognition var något som var definierat i termer av ett logiskt, intelligent system i den fysiska
formen av en dator i kognitionens framväxt på 40- och 50-talet. Där talade man om att
systemet manipulerade symboler för förstå problem och omgivningen för att anses som ett
intelligent system. Detta system kallades för den fysiska symbolsystemhypotesen. Hutchins
delade inte samma synsätt som Allen Newell och Herbert Simon som grundade den fysiska
symbolsystemhypotesen. Hutchins menar att vi människor inte enbart manipulerar symboler
och att vårt tänkande inte enbart sker i vårt huvud. Kognition var för forskarna något abstrakt,
något som Hutchins inte höll med om. Hutchins ansåg att människors kognition är att man
2
729G43
Artificiell intelligens
Projektarbete
2017-01-12
Julia Skönvall - julsk477
HT-16
kan hämta in interna symboler men inte manipulera dem. Vi behöver någon typ av output och
input både inifrån och utifrån i vår värld (Hutchins, 1995).
2.2.1 Hur kan man implementera perception i ett system?
Det finns en grundläggande formel för hur man kan karaktärisera perception som en abduktiv
uppgift. Om vi har en ström av low-level sensorisk data som representeras av konjunktionen Γ
av en mängd observerade meningar så är själva uppgiften i perceptionen att finna en eller flera
förklaringar av konjunktionen Γ bestående av konsekvent logisk beskrivning ∆ av
lokalisationen och formen av de hypotiserade objekten. Formeln kommer tillslut att se ut
såhär:
Σ∧∆
Γ
där Σ är själva bakgrundsteorin som säger hur en robot ska kunna interagera med världen med
sina sensorer. ∆ kommer i detta fall innehålla en redogörelse som redan är skriven i domänen.
Det finns många ∆ som förklarar ett givet Γ, därför introduceras en preferensrelation för att
ordna dem. När detta sedan sätts in i en robot kommer ett perceptuellt system att anpassa detta
till en teoretisk beskrivning som en perceptuell process. Detta kommer att vävas in i en sluten
kontrolloop där output är en oföränderlig ström av uppsättningar av ∆s i svar till en konstant
ström av inkommande Γ från robotens sensorer. Detta skulle kunna vara alltifrån att roboten
går in i en vägg eller att den använder en stereokamera. Γ kommer bara beskriva sensorisk
data på en ”låg nivå” och inte rådata. Γ kan fungera som en beskrivning av kanter utdragna
från en bild genom att använda en Sobel-Feldman operator. Eller så kan vara en sekvens av
sonara datapunkter som har gått igenom ett Kalmanfilter. Det är den abduktiva processens
ansvar att bestämma hur man ska tolka varje sak i low-level data, om det ska bli accepterat
eller inte, vad den säger angående närvaro, identitet och gestaltningen av objekt i den externa
världen (Shanahan, 2005).
2.2.2 Ofullständighet och osäkerhet
Ofullständighet är en viktig del när man exempelvis programmerar agenter i en specifik miljö.
En agent, i vårt fall en robot, vet aldrig vilket state, tillstånd, den är i eller vart den kommer att
sluta när den inte har några fler handlingar att utföra. För att kunna behandla ofullständighet
måste roboten ha ett belief-state som är en representation av alla möjliga tillstånd som finns
för systemet. Därefter kan den konfigurera en beredskapningsplan som kan hantera alla
möjliga utfall som den får in från sina sensorer. När den får in sensorisk information måste
3
729G43
Artificiell intelligens
Projektarbete
2017-01-12
Julia Skönvall - julsk477
HT-16
den överväga varje möjlig förklaring till dess observationer oavsett om hur det än leder till ett
osannolikt, omöjligt stort och komplext representation av agentens belief-state. Maskinella
system är begränsade av osäkerhet tillskillnad mot människan, där denna begränsning inte
finns (Russel & Norvig, 2014).
2.2.3 Miljön
För att få ett föreställande tillvägagångssätt i perception måste man anta att man behöver
bygga och bibehålla en komplett och passande modell av miljön med hjälp av ramverken som
är beskrivna i sektion 2.2.1. Att miljön är viktig för perception går tillbaks till tidig AIforskning, vi vill bygga robotar som är funktionella i en realistisk miljö. Men detta har också
sina nackdelar som är centrala till att förstå intelligens, nämligen osäkerhet och
ofullständighet. Osäkerhet uppstår på grund utav att det kan finnas störningar i robotens
sensorer. Ofullständighet har två huvudsakliga nackdelar. Den ena nackdelen är att man har
en begränsad syn på världen, då sensorerna är begränsade samt robotens enkla spatiala
lokalisation. Den andra nackdelen är att ofullständighet är en oundviklig konsekvens då varje
robot är unik och har egna specifika mål och förmågor. Därför behöver inte roboten en inre
representation för att försöka fånga varje aspekt som finns i den yttre världen (Shanahan,
2005).
För att kunna uttrycka detta passar matematisk logik bra kombinerat med en exakt semantik.
Man måste designa en tillåten form av ∆ för att dra till nytta av den. Nedan följer ett exempel
på hur man formulerar ett uttryck för ett objekt i robotens arbetsutrymme:
∃c, x, w,v[Boundary(c,x) ∧ FromTo(c,w,v) ∧
Distance(w, (-5,5))<1 ∧ Distance(v,(5,5))<1]
där Boundary(c,x) företräder linjen c som är en del av begränsningen av objektet x.
FromTo(c,w,v) står för linjen c som sträcker ut sig från punkt w till punkt v. Distance(v,w)
betecknar avståndet mellan punkterna v och w. I denna formel uttrycks både ofullständighet
och osäkerhet på grund utav existenskvantifieringen ∃. Ofullständighet uttrycks i detta fall
bara som en del av gränsen till ett enda objekt i formeln. Formeln nämner ingenting om att
andra objekt finns eller inte finns. Osäkerhet uttrycks i denna formel då slutpunkterna av
4
729G43
Artificiell intelligens
Projektarbete
2017-01-12
Julia Skönvall - julsk477
HT-16
gränsen är specifika inom ett visst omfång. Lokalisationen av dessa slutpunkter anses relativa
till robotens egna perspektiv eftersom det inte finns något antagande om ett absolut
koordinatsystem (Shanahan, 2005).
Det är också viktigt att kunna representera och designa en god ontologi för rum och form.
Nedan kommer en formel visas som är implementerat i ett abduktivt system för visuell
perception:
∃ x,a,s,r [Solid(x,a) ∧ Shape(x, Cuboid) ∧ FaceOf(r,x) ∧ SideOf(E0 r)]
där Solid(x,a) representerar ett fast objekt x som introducerar aspekten a till åskådaren.
Shape(x, s) representerar det fasta objektet x som har formen s. FaceOf(r,x) representerar att
den två dimensionella ytan r är ett ”ansikte” av objektet. SideOf(e,r) representerar den synliga
kanten e på dess gräns till ytan r. Termen E0 betecknar en viss typ utav visuell kant vilket är
en viktig representation eftersom det säger att ett visst objekt är synligt och existerar
(Shanahan, 2005).
2.3. Informationsflöde och aktiv perception
Inom kognitiv psykologi har det varit sedan länge varit känt att informationsflödet mellan
perception och kognition är något typiskt mänskligt. Forskare har diskuterat om
informationsflöde som bottom-up och top-down och att high-level kognition har påverkat
low-level kognition. Top-down information, som är informationsflödet som Shanahan
använder sig av i sitt experiment, anpassas genom att dra nytta av förväntning. Att använda
sig av förväntning kan tänka sig vara en form av aktiv perception. Aktiv perception innebär
att alla handlingar leder till förvärv av ny information med hjälp av robotens sensorer som
sträcker sig från en kort tidsperiod där low-level actions justerar tröskeln av en
kantavkänningsrutin. Eller så roteras kameran för att få en annan synvinkel till en längre
tidsperiod och uppnår high-level handlingar såsom att klättra upp på toppen av en kulle för att
se vad som finns på andra sidan. Det finns nedskärningar inom aktiv perception. En av dem är
det som har nämnts ovan såsom low-level, high-level och kort eller lång duration. I den andra
nedskärningen har vi mekanismer som sätter igång den informativa handlingen. Detta kunde
ha satts igång med hjälp av reaktiva tillstånd, handlingsregler vars sidoeffekt är förvärvet av
5
729G43
Artificiell intelligens
Projektarbete
2017-01-12
Julia Skönvall - julsk477
HT-16
kunskap. Denna mekanism kunde ha varit en vana, en avsikt eller en förväntning.
Mekanismen måste kunna maximera den användbara information och minimerar den
informationen som inte är nödvändig (Shanahan, 2005).
2.4 Sensor fusion
Sensor fusion är ett problem eftersom det är svårt att kombinera tänkbar motstridig data från
flera källor som sedan ska sättas i en enda modell som ska vara en aspekt av världen. Formeln
som kommer att presenteras senare kommer bygga på något liknande som sektion 2.1. Γ
presenterar low-level sensorisk data som kan komma ifrån flera olika sensorer eller från
samma sensor men som är processerat i förväg på olika sätt. Om bakgrundsteorin Σ kan fånga
upp hur sammanställningen av objekt i världen ger upphov till varje typ av low-level sensor
data på ett lyckat sätt så kommer den grundläggande abduktiva karaktäriseringen av
perception ta han dom problemen i datafusionen. Bakgrundsteorin måste dock vara säkert
designad så att den verkligen fungerar, speciellt om den stöter på motstridig data, såsom
störningar. Robotens interaktion med objekt i världen är den inkommande sensoriska data. Då
kan Σ ha en formel som kan förklara bort oväntade saker av sensorisk data som störningar.
Formler kan avfärda frånvaron av förväntad data som onormala eller ovanliga. Därför måste ∆
tillåtas att inkludera störningar och onormalitet i sina termer (Shanahan, 2005).
3. Roboten Ludwig
Tidigare experiment innan Ludwig handlade om Rug Warrior och Khepara. Dessa robotar var
ett bevis på att man kan kontrollera robotar via logik. En fråga som förblev observerad var om
robotar kunde ha fler sensorer för att jobba i mer komplexa miljöer. Därför startades projektet
Ludwig igång. Roboten Ludwig har en humanoid överkropp med stereoskopisk syn. Projektet
innefattar idéer från den klassiska AI-tekniken samt andra biologiskt inspirerade robotar.
Roboten har två armar som har tre grader frihet var. Ludwig är enkelt mekaniskt byggd för att
minska ned på low-level motor control problems och låter projektet fokusera på de centrala
frågorna av kognition och perception. Ludwigs huvudsakliga sysselsättning är att leka men
den svåraste utmaningen för roboten är att lära sig om objekten i omgivningen och kunna
fysiskt interagera med dem. Det visuella systemets uppgift är att plocka ut objekt som
systemet är intresserad utav och kunna rikta kameran som Ludwig har på ”huvudet”. Ludwig
kan då använda sin syn till att knuffa objekten. Genom dessa förändringar i orientation och
6
729G43
Artificiell intelligens
Projektarbete
2017-01-12
Julia Skönvall - julsk477
HT-16
lokalisation av objekt som roboten har i sin arbetsyta leder detta till en ny och användbar
information om objektens form, storlek och utseende (Shanahan, 2005).
Projektet fokuserar på människans intelligenta nivå angående kroppsliga kunskaper såsom att
greppa tag i saker eller att knuffa dem. Detta grundar sig i aktiv perception. Ludwigs sätt att
interagera är också likt bakgrunden till klassisk AI, nämligen att nämna deklarativa
representationer i en denotationssemantik. För att nå upp till krav för synförmågan behöver vi
utveckla en mycket mer förfinad abduktiv redogörelse för perception. I kärnan av denna
behandling av visuell perception finns två framsteg på den grundläggande abduktiva skriften.
För det första måste man ha en precis mätning av det förklarande värdet, explanatory values,
av en definerad hypotes som är baserad på sannolikhet. Ju större data vi har desto större blir
det förklarinade värdet (Shanahan, 2005).
3.1 Ludwig och synfärdigheten
Det finns handlingar för att roboten ska kunna bekräfta eller inte bekräfta förväntningarna av
hypoteserna och interagera resultatet i en uppdaterad mätning av det förklarande värdet. Den
abduktiva processen av mängden low-level sensor data presenteras nedan i fyra punkter:
1. Genom att använda sig av s.k. abduction, ska man kunna åstadkomma en mängd hypoteser
som förklarar det sensoriska data
2. Ska välja den bäst lämpade hypotesen beroende på det förklarande värdet
3. För varje vald hypotes kunna bestämma förväntningarna samt återge rådata för att titta på
varje del av dessa förväntningar
4. Ska kunna räkna om det förklarande värdet av varje vald hypotes, ta resultat från Steg 3
och göra om hypotesen.
För att förstå hur detta system fungerar kan man titta på Figur 1. Bilden i mitten visar
resultatet av när man har använt sig av en enkel edge-detection algoritm som är baserad på en
Sobel operator av den vänstra bilden. Tröskelvärdet för denna algoritm är högt för att minska
mängden felaktig data. Bara några delar har plockat ut av algoritmen, man kan exempelvis se
att den vänstra bildens mörka sida inte fångas upp av algoritmen. Detta leder till att man får
två hypoteser som svarar till detta. Enligt Hypotes A, som är felaktig, så tittar roboten Ludwig
7
729G43
Artificiell intelligens
Projektarbete
2017-01-12
Julia Skönvall - julsk477
HT-16
på ett kort block där de svaga kanterna till vänster blir som maskerade. Istället enligt den rätta
Hypotesen B säger den att roboten Ludwig tittar på ett långt block men flera av blockets
kanter saknas. Förväntningarna mellan dessa hypoteser skiljer sig. En konsekvens av den
felaktiga Hypotesen A skulle vara att den vertikala kanten från den övre hörnet på den
vänstra-handen ”finns” i det föreslagna blocket. En nackdel med Hypotes B är att den översta
kanten av blocket skulle förlängas ytterligare till vänster av vad den säger att den gör.
Figur 1. Ett tvetydligt block. Bild tagen från Shanahans rapport.
Man kan testa dessa förväntningar genom att göra denna algoritm mer känslig än originalet
som applicerades här. Förväntningar är inte fullföljande vilket leder till ett minskat värde på
explanatory value på Hypotes A. Tillskillnad mot Hypotes A så ökar Hypotes B explanatory
value samt att förväntningarna fullföljs (Shanahan, 2005).
3.2 Logiken i ett top-down informationsflöde
Man kan även formulera low-level image data precis som i Figur 1 som representeras genom
en mängd predikatlogiska formler. Själva low-level data kan anses vara produkten av
exempelvis vilken bildbehandlingsteknik som helst. Då kan man använda sig av färgbaserad
segmentering eller optisk flöde eller en kombination av dessa. Här fokuserar man som tidigare
på hur man kan upptäcka kanter på ett objekt. Kantdata kan bli representerad genom följande
formel:
Line(1,[238,157],[241,147])
Line(3,[249,157],[253,145])
där Line(w, p1,p1) säger att det finns en kant i bilden som är märkt med w från punkt p1 till
punkt p2. Ett abduktivt system kan vara utformat i flera lagrer. Effekten kommer att bli att för
8
729G43
Artificiell intelligens
Projektarbete
2017-01-12
Julia Skönvall - julsk477
HT-16
varje förklarat ∆ på den n:te lagret så kommer data Γ att bli förklarat på lager n plus första
lagret. Formler som är abduktiva på lagret n kan bli observerade på lagret n + 1. Det är viktigt
att man tar in två lagrer i den abduktiva processen eftersom de olika lagren kan förklara olika
saker på varje dimension. Det första lagret kan förklara kanterna i en en-dimensionell i termer
av synliga två-dimensionella regioner. Det andra lagret har som uppgift att förklara de synliga
regionerna genom att uttrycka sig i termer av spatiala lokaliserade tre-dimensionella objekt.
Precis som många andra formler inom abduktiva processer så säger vi att varje lager i denna
formel har sin specifika bakgrundsteori Σ. Denna bakgrundteori innehåller tre grupper av
logiska formler. Varje grupp spelar olika roller men alla gillar samma anseende från ett och
samma deklarativa system. Detta kommer att återspeglas i implementationen. Det första man
måste göra är att man har en mängd formler som används för att generera en förklarande
hypotes, explanatory hypothesis. För det andra så måste vi ha formler som skildrar
begränsningar på den tillåtna hypotesen. För det tredje så måste vi ha en mängd formler som
beskriver förväntningarna för varje hypotes.
∃p1, p2[Line(w, p1, p2)] ← ∃r[Region(r) ∧ SideOf(w,r)]
∃p1, p2[Line(w, p1, p2)] ← Noise(w)
där varje formel så att Ψ ← Φ, där Ψ är en beskrivning av sensorisk data och Φ är en
beskrivning av villkoren som sker när den sensoriska datan stiger. Formlerna ovan säger att
det finns en synlig kant och är en sida av en region eller att det kanske är en störning.
Predikaten Region, SideOf och Noise sägs vara abduktiva och därmed kan vi förklara en
hypotes. Dessa typer av logiska formler implementeras in i Ludwig för att få information om
förklarande värden och top-down förväntningar. Implementationen kommer då att bli en form
av en logisk programmeringsmetatolk. Systemet har då tagit in visuell data som visas i Figur
1. Nästa steg skulle vara att låta systemet fokusera på Ludwigs kamera för att dra
uppmärksamheten till intressanta objekt.
9
729G43
Artificiell intelligens
Projektarbete
2017-01-12
Julia Skönvall - julsk477
HT-16
4. Diskussion
När man studerar ett sånt komplext system som Shanahan har beskrivit förstår man hur svårt
det har varit för forskare att kunna göra robotar mer mänskliga. Precis som det nämndes i
bakgrunden hade kognitionens framväxt svårt att implementera mänskligt beteende, såsom
perception då man istället startade med något betydligt enklare och som människan kanske
själv mer förstod sig på. Det är avsevärt enklare att implementera in regler i form av
matematiska formler. I Shanahans experiment har han använt sig av den logiken i form av
semantiska logiska uttryck samt satslogik för att förstå hur en robot kan bearbeta intryck från
omvärlden. Detta visar att tekniken verkligen är på framfart då studien visar på att ett system
faktiskt kan ha en typ utav perception även om den inte är lika komplex som människans.
Shanahan tar också upp mycket om hur ett system kan representera objekt, precis som han
nämnde om kantigenkänning. Trots att systemet inte är fullständigt korrekt med tanke på att
systemet inte känner igen precis alla kanter på ett objekt så kan den fortfarande tolka
informationen som finns i omgivningen. Det är någonting forskning kan bygga vidare på.
Först då inser man hur komplext vårt mänskliga öga är, som är en motsvarighet till roboten
Ludwigs kamera och dess visuella perceptuella egenskaper som är implementerat i systemet
Trots att roboten Ludwig är en väldigt enkel robot så ligger det så mycket teori och tanke
bakom honom. Man bygger inte ett system på en dag utan man måste verkligen ta in
information från flera olika domäner och källor för att sätta ihop något till ett dugligt system.
Shanahan ville inte bara fokusera på just det matematiska utan också symbolisk
representation, sensorer, top-down information, uppmärksamhet. Alla dessa element är en stor
del av kognition. Med tanke på studiens uppbyggnad skulle jag kunna säga att det är en
blandning av kognitionsvetenskaplig teori och artificiell intelligens som har samarbetat för att
få fram detta system.
Om man jämför med kognitionen som fördes fram på 50-talet ville man fokusera mycket på
det matematiska och det beräkningsbara. Det är inte förens nu man har nått fram till den
gränsen att man vill lägga fokus på att göra en robot så lik människan som möjligt.
10
729G43
Artificiell intelligens
Projektarbete
2017-01-12
Julia Skönvall - julsk477
HT-16
5. Referenser
Hutchins, E. (1995). Cognition in the wild. Cambridge: MIT Press.
Russel, S., & Norvig, P. (2014). Artificial Intelligence - A Modern Approach, Third Edition .
Pearson Education, Inc.
Shanahan, M. (2005). Perception as Abduction: Turning Sensor Data Into Meningfull
Representation. London: Cognitive Science Society.
11