Shakey

De allereerste autonome bewegende robot

Shakey was niet veel meer dan een karretje met wat apparatuur, een beweegbare camera en een radioantenne, maar hij was wel de allereerste robot die zelf de hele Sense–Plan–Act-cyclus kon uitvoeren. Tussen 1966 en 1972 werkten onderzoekers aan de Universiteit van Stanford aan Shakey, die overigens zo heette omdat hij nogal wiebelde tijdens het rondrijden. Shakey was gemaakt om rond te rijden op een verdieping van een van de universiteitsgebouwen, waar in de verschillende kamers grote blokken neergelegd waren die dienden als obstakel en referentiepunt. Hij kon zijn route plannen omdat hij een wereldbeeld van die verdieping in zijn robotbrein had zitten, met daarin de kamers, gangen, objecten, deuren en lichtknopjes waar hij mee te maken had.

Lichtknopjes ja, want Shakey kon niet alleen rondrijden, maar ook het licht aan- en uitdoen, deuren openen en sluiten en tegen beweegbare blokken aan duwen. Hij observeerde de wereld om zich heen op verschillende manieren: met sonar-afstandsmeters, een camera en botsingsdetectoren. Op basis van camerabeelden detecteerde hij lijnen, zoals de scheidslijn tussen een wit vlak en een rood vlak. Die lijnen maakten vormen, die hij matchte met een aantal voorgeprogrammeerde objecten, zoals deuren en blokken. Op basis van wielrotaties kon hij inschatten hoeveel afstand hij ongeveer had afgelegd, en dat vermoeden kon hij bevestigen door op zijn camerabeelden markeerpunten te detecteren, zoals deuren en hoeken van de kamer. Zo bepaalde hij zijn locatie.

Shakey moest om te navigeren dus veel berekeningen uitvoeren. Tegenwoordig zou dat makkelijk op een smartphone kunnen, maar in de jaren zestig vulden computers nog makkelijk meerdere kamers. Shakey kon dus maar een klein deel van zijn eigen brein met zich mee dragen. Het grootste deel van zijn robotbrein bevond zich in een groot datacentrum, waar hij zijn sensordata via een radioverbinding naar toe stuurde. Via een terminal gaf een menselijke operator commando’s aan de robot, die zijn externe brein omzette in concrete acties zoals rijden, deuren openen en objecten oppakken.

In dat omzetten van commando’s naar acties zat meteen een groot deel van de intelligentie van Shakey. De operator kon hem vertellen om bijvoorbeeld naar kamer C te rijden en daar het grote blok op te pakken, zonder dat hij de robot daarbij een specifieke route hoefde te vertellen of gedetailleerde acties hoefde te programmeren. Shakey kon dat commando zelf, op basis van zijn positie en zijn wereldbeeld van alle kamers en routes, omzetten naar een routeplanning. En dat alles dynamisch: als hij een obstakel tegenkwam, of als een object op een andere plek bleek te staan dan verwacht, kon de robot daar eigenhandig op inspelen.

Shakey leerde zelfs van zijn eigen ervaringen. Als hij een commando succesvol had voltooid door een reeks acties uit te voeren, sloeg hij die reeks acties op om daar de volgende keer bij een gelijksoortig commando weer inspiratie uit te halen, zodat hij niet de hele berekening nog een keer zou hoeven doen. Omdat computers in de jaren zestig nog zo langzaam waren, betekende dat dat Shakey wel drie keer zo snel zijn acties kon plannen voor opdrachten die hij al een keer eerder had uitgevoerd.

Onze huidige stofzuigrobots kunnen al meer dan Shakey in de jaren zestig kon. Toch leverde Shakey in zijn tijd een buitengewoon vernieuwende prestatie: een machine die zelf, zonder tussenkomst van een menselijke bestuurder, een route kon plannen. En niet alleen dat, maar hij kon ook zijn route aanpassen op basis van observaties, en leren van zijn ervaringen. Shakey was een ware pionier in de wereld van de robotica.