De lerende robot: machine learning als evolutiefactor in robotica

Al decennia nemen robots repetitieve taken van mensen over. Dankzij recente vooruitgang in artificial intelligence, en specifiek machine learning, neemt het aantal mogelijke applicaties voor robots sterk toe. Wat is er juist veranderd?

Jan Calliauw is businessdevelopmentmanager services – product innovation bij Verhaert. Jochem Grietens is coördinator van Verhaerts AI Lab.

19 maart 2021

Tot voor kort voerden robots enkel repetitieve en voorspelbare taken uit in een strikt gecontroleerde omgeving zoals een productiehal. Kwam er toch verandering in zijn taken, dan liep het mis: een autochassis raakte beschadigd of chocopasta belandde naast de pot.

Vandaag voeren stofzuigers en grasmaaiers autonoom taken uit in onze ongecontroleerde en onvoorspelbare wereld. Hierbij is de kans groot dat een robot wordt gehinderd bij zijn taak en daarop moet reageren. Een volledig gazon goed maaien is een uitdaging. Dat doen naast een zwembad met spelende kinderen, hun speelgoed en huisdieren is uiteraard moeilijker.

Functioneren in onze ongecontroleerde wereld vereist intelligentie. In het geval van robots is dat uiteraard artificiële intelligentie. Bij Verhaert onderscheiden we ai in meerdere niveaus, specifiek voor toepassingen bij robots: perceptie, planning en navigatie, en robotcontrole.

Perceptie

Bij perceptie gaat het erom een begrip te extraheren uit data die door sensoren wordt opgevangen. Een robot heeft dus in de eerste plaats sensoren nodig om data te verzamelen over zijn omgeving en vervolgens algoritmes die de ruwe sensordata interpreteren en vertalen naar een begrip van (veranderingen in) de omgeving.

Hoewel je zou verwachten dat een rgb-camera een uitstekende kandidaat-sensor is, bleek dit vóór de opkomst van deep learning niet erg voor de hand liggend. De interpretatie van beelden vereiste toen uitgebreide manuele programmering. Een eenvoudige taak als beeldclassificatie (denk aan de ‘not hotdog’-sketch uit de serie ‘Silicon Valley’) bleef een heel grote uitdaging. Daardoor waren rgb-camera’s tot voor kort ongeschikt voor de meeste roboticataken. Met de komst van neurale netwerken en het algemene gebied van machine learning is dat veranderd.

Samen met Verhaert ontwikkelt Westray slimme veiligheidsoplossingen voor de scheepvaart. Beeld: Verhaert

Beeldclassificatie werd als eerste computervisieprobleem aangepakt met behulp van geannoteerde voorbeeldafbeeldingen. Op basis van deze voorbeelden kan het neurale netwerk automatisch en met een verbazingwekkende nauwkeurigheid nieuwe beelden klasseren.

De Belgische startup Westray, klant bij Verhaert, ontwikkelt slimme veiligheidsoplossingen voor de scheepvaart. Hun multicamerasysteem voor autonome schepen wordt aangedreven door artificial intelligence om gevaren te detecteren en te voorkomen. Krachtige algoritmes definiëren wat er wordt waargenomen op zee rond een schip: een containerschip, vissersboot, boei, piratenboot. En ook belangrijk: is het object op ramkoers en vereist het aandacht? Klassieke connectiviteit is niet voldoende; het algoritme dient aan boord van het schip te draaien.

Het allergrootste voordeel van neurale netwerken zit in de herbruikbaarheid naar andere applicaties. Een algoritme dat kankerweefsel vaststelt in medische beelden op basis van geannoteerde voorbeelden kan met een andere geannoteerde dataset heel snel worden ingezet om bijvoorbeeld rotte aardbeien op te sporen.

Al snel werden deze algoritmes uitgerold in andere toepassingen met objectherkenning, objectsegmentatie, objecttracking en anomaliedetectie. Zelfs decennia oude algoritmes voor keypointdetectie, optical flow-berekeningen en stereo/mono-diepteschatting worden, vanwege hun verbeterde performantie en eenvoudige ontwikkelproces, (gedeeltelijk) vervangen door lerende alternatieven met ‘betekenisvolle compressie’ en ‘feature extraction’.

Nadien zette deze deep learning-revolutie zich verder op andere sensoren die compressie en informatie-extractie vereisen zoals radar, lidar en sonar. Zo maakten we bij Verhaert grote vooruitgang in trillingsanalyse, audio- en 3d-perceptie en touchless user interfaces.

Deep learning uniformiseert dus gestaag hoe we perceptieproblemen aanpakken. Die kruisbestuiving versnelde het leerproces en maakte de stap naar sensorfusie, waarbij neurale netwerken gelijktijdig worden getraind op verschillende soorten sensoren.

Kortom, wat perceptie betreft, verlegt machine learning de uitdaging van eindeloze regels opstellen naar relevante data verzamelen en annoteren.

Navigatie en planning

Een robot is nu dus in staat om zijn omgeving waar te nemen, in kaart te brengen en te definiëren. Dit is helaas slechts zelden een doel op zich. Meestal dient de robot taken uit te voeren: eten bezorgen aan huis, onderhoudstaken uitvoeren in een riool of medicatie injecteren in de oogbol van een patiënt. Nadat de robot zijn taak heeft ontvangen, werkt hij een plan uit om die taak uit te voeren.

Er is natuurlijk een rijke geschiedenis aan algoritmes voor planning. Desalniettemin zien we machine learning hier opnieuw (delen van) de planningroutine vervangen. Ook hier kan het algoritme leren van voorbeelden en geannoteerde data.

Verhaert werkt aan een ai-gestuurd roboticaplatform voor neurochirurgie. Beeld: Verhaert

Trajectbepaling op basis voorgeprogrammeerde regels of search/sample-gebaseerde methodes leidde vaak tot ‘houterig’ gedrag. Het gepaste gedrag is te complex om handmatig te modelleren. Daarom werden ook hiervoor steeds vaker lerende modellen gebruikt.

Naast leren uit voorbeelden kan een algoritme ook leren door zelf nieuwigheden te proberen: reinforcement learning heet dat. Meestal wordt hier niet mee gestart omdat een robot het volledige spectrum aan mogelijke bewegingen en snelheden gaat verkennen. Een robotarm vliegt dan een tijd van hier naar daar en kan mogelijk schade veroorzaken. Daarom worden vaak de basisbewegingen aangeleerd op basis van voorbeelden om nadien de robot zelf die bewegingen te laten verfijnen.

Omwille van de grote voordelen van reinforcement learning wordt steeds vaker gekozen voor ontwikkeling in een gesimuleerde omgeving. Op die manier kan een robot in alle vrijheid proberen en leren. Dat is niet alleen veiliger, het is ook vaak goedkoper. Parameters in een bestaand model aanpassen vraagt immers meestal minder tijd en budget dan de fysieke robot en testomgeving aan te passen. Nadien kunnen de algoritmes en het design van de robot een-op-een worden omgezet naar een echte robot.

Ongeacht de leermethode zijn er meerdere keuzemogelijkheden voor vrijwel elke uitdaging waarmee een robot wordt geconfronteerd. De mogelijke keuzes worden opgelijst en op basis van door mensen bepaalde parameters onderling afgewogen om de beste optie te selecteren. De vereisten op vlak van snelheid, connectiviteit, autonomie et cetera voor dergelijke algoritmes hangen sterk af van de toepassing. Wanneer snelheid en veiligheid essentieel zijn, voorkom je best afhankelijkheid van een cloudgebaseerd algoritme om beslissingen te nemen. Verbindingsproblemen zouden immers tot ongelukken leiden.

Edge ai – ai die draait in de robot zelf, niet in cloud – biedt uiteraard voordelen op vlak van snelheid, maar brengt ook specifieke uitdagingen rond energiebeheer en rekenkracht met zich mee. Het is immers geen eenvoudige klus om de signalen van alle sensoren te synchroniseren, comprimeren en combineren tot een formaat dat kan worden gebruikt door besturings- en besluitvormingsalgoritmes.

Controle

Om tegemoet te komen aan de toegenomen variëteit en complexiteit in taken, wordt enerzijds de kinematica aangepast en anderzijds de aansturing daarvan. Hoe onderdelen van een robot kunnen bewegen ten opzichte van elkaar bepaalt het aantal vrijheidsgraden van de robotarm. De kinematische keten van robots, zoals antropomorfische grijpers, multi-jointrobots of zwermrobots, kan leiden tot duizenden vrijheidsgraden. Meer vrijheidsgraden betekenen meer flexibiliteit, maar maken het ook moeilijker om de exacte staat van de robot te bepalen en de robot te besturen.

Ook in dit geval bieden lerende algoritmes een oplossing. Opnieuw is er de keuze tussen leren uit voorbeelden en al doende leren. In beide gevallen is veel rekenkracht nodig, zeker omwille van de hoge verwachte reactiesnelheid in veel roboticatoepassingen. Lerende algoritmes zijn daarvoor perfect, omdat ze in staat zijn hoogdimensionale, non-lineaire systemen voor te stellen en vele berekeningen in parallel kunnen uitvoeren.

Droomproject

Uiteraard liggen niet alle uitdagingen achter ons en is verder onderzoek nodig. Zo werkt Verhaert vandaag aan een ai-gestuurd roboticaplatform voor neurochirurgie. Het platform maakt gebruik van algoritmes ontwikkeld door deep learning van hogeprecisiebeelden als lageprecisiebeelden. Door middel van convolutionele neurale netwerken combineert de nieuwe toepassing preoperatieve high-res 3d mri-beelden met low-res ct-beelden van de patiënt in zijn fysieke ligpositie tijdens de operatie. Het algoritme houdt ook rekening met de verplaatsing en vervorming van de wervelkolom tijdens de operatie door de ademhaling, spierbewegingen, hartslag en manipulaties van de chirurg en operatierobot.

We zitten midden in een technologische revolutie dankzij de mogelijkheden die lerende algoritmes bieden. Die snelle vooruitgang is te danken aan vier aspecten: gemakkelijk hergebruiken van algoritmes in andere applicaties, snel leren uit voorbeelddata, eigen nieuwe oplossingen bedenken via reinforcement learning en kostenefficiënte ontwikkeling in gesimuleerde omgeving.

Vervolgens passen we die principes toe op drie kernprincipes: perceptie, planning en navigatie, en robotcontrole. Veel uitdagingen, zoals de touchless gebruikersinterface, zijn in het verleden al verkend en inefficiënt bevonden. Het is zeker de moeite waard om droomprojecten uit het verleden opnieuw vast te pakken en de haalbaarheid te toetsen met behulp van de nieuwe machine-learningtechnieken.