Huishoudrobots die zichzelf corrigeren

Fri Nov 22 2024

11 22

Huishoudrobots die zichzelf corrigeren

25/03/2024

Door Ad Spijkers

Met behulp van een groot taalmodel zullen robots zichzelf kunnen corrigeren na misstappen en doorgaan met hun taken.


     

Van het opruimen van gemorste vloeistoffen tot het serveren van voedsel: robots leren steeds ingewikkelder huishoudelijke taken uit te voeren. Veel van zulke thuishulpen leren door middel van imitatie. Ze zijn geprogrammeerd om de bewegingen te kopiëren waar een mens ze fysiek doorheen leidt. Ingenieurs kunnen ze ook zo programmeren dat ze zich aan elke mogelijke hobbel en duwtje aanpassen. Robots weten namelijk niet noodzakelijkerwijs hoe ze met deze situaties moeten omgaan, behalve dat ze hun taak opnieuw beginnen.

Ingenieurs aan het Massachusetts Institute of Technology in Cambridge (bij Boston) hebben een methode ontwikkeld die bewegingsgegevens van robots verbindt met de ‘gezond verstandkennis’ van grote taalmodellen (large language models oftewel LLM’s). Door hun aanpak kan een robot op logische wijze veel gegeven huishoudelijke taken in subtaken verdelen en zich fysiek aanpassen aan verstoringen binnen een subtaak. De robot kan daardoor doorgaan met zijn taak zonder een taak helemaal opnieuw te moeten beginnen. Dit gebeurt zonder dat ingenieurs expliciet hoeven te programmeren voor oplossingen voor elke mogelijke fout onderweg.

Verstoringen

De onderzoekers illustreerden hun nieuwe aanpak met een simpel klusje: knikkers uit de ene kom scheppen en in een andere gieten. Om deze taak te volbrengen, zouden ingenieurs een robot doorgaans in één vloeiend traject door de bewegingen van scheppen en gieten laten bewegen. Ze kunnen dit meerdere keren doen, zodat de robot een aantal menselijke demonstraties kan nabootsen.

Hoewel een mens een enkele taak in één keer kan demonstreren, hangt die taak af van een reeks subtaken of trajecten. Als een robot tijdens een van deze subtaken wordt geduwd om een fout te maken, is de enige mogelijkheid om te stoppen en opnieuw te beginnen vanaf het begin. Maar ingenieurs zouden elke subtaak ook expliciet een label kunnen geven en nieuwe demonstraties programmeren of verzamelen. De robot kan zich dan herstellen van de mislukking; hij kan zichzelf op dat moment corrigeren.

Taalmodellen

Deep learning modellen verwerken grote tekstbibliotheken, die ze gebruiken om verbindingen tussen woorden, zinnen en alinea's tot stand te brengen. Via deze verbindingen kan een taalmodel vervolgens nieuwe zinnen genereren op basis van wat hij heeft geleerd over het soort woord dat waarschijnlijk op het laatste zal volgen.

De onderzoekers ontdekten dat een deel van het herstelwerk ook automatisch door grote taalmodellen kan worden gedaan. Een LLM kan behalve om zinnen en alinea's ook worden gevraagd om een logische lijst van subtaken op te stellen die bij een bepaalde taak betrokken zouden zijn. Zo kan een taalmodel bijvoorbeeld wordt gevraagd om de acties op te sommen die betrokken zijn bij het scheppen van knikkers van de ene kom in de andere. Het kan dan een reeks werkwoorden produceren zoals 'bereiken', 'scheppen', 'transporteren' en 'gieten'.

Knikkers

Voor hun nieuwe aanpak ontwikkelde het team een nieuw algoritme. Hiermee verbinden ze het natuurlijke taallabel voor een bepaalde subtaak automatisch met de positie van een robot in de fysieke ruimte of een afbeelding die de robotstatus codeert. Dit in kaart brengen van de fysieke coördinaten van een robot (of een afbeelding van de robotstatus) aan een label in natuurlijke taal, staat bekend als 'aarden'.

Het nieuwe algoritme is ontworpen om een aardende ‘classifier’ te leren. Het leert automatisch te identificeren in welke semantische subtaak een robot zich bevindt op basis van de fysieke coördinaten of een beeldweergave. De 'grounding classifier' faciliteert deze dialoog tussen wat de robot in de fysieke ruimte doet en wat het taalmodel weet over de subtaken én de beperkingen binnen elke subtaak.

Het team demonstreerde de aanpak in experimenten met een robotarm die ze trainden voor het scheppen van knikkers. Onderzoekers trainden de robot door hem fysiek te begeleiden bij de taak om eerst in een kom te reiken, knikkers op te scheppen, ze over een lege kom te transporteren en ze erin te gieten. Na een paar demonstraties gebruikte het team een voorgetraind groot taalmodel. Ze vroegen het model om de stappen op te sommen die nodig zijn om knikkers van de ene kom naar de andere te scheppen.

De verbinding

De onderzoekers gebruikten vervolgens het nieuwe algoritme om de gedefinieerde subtaken van het taalmodel te verbinden met de bewegingstrajectgegevens van de robot. Het algoritme leerde automatisch de fysieke coördinaten van de robot in de trajecten en de bijbehorende beeldweergave toe te wijzen aan een bepaalde subtaak.

Daarna liet het team de robot de scheptaak zelf uitvoeren, met behulp van de nieuw geleerde aardingsclassificatoren. Terwijl de robot de stappen van de taak bewoog, duwden de onderzoekers de bot van zijn pad en sloegen op verschillende punten knikkers van zijn lepel. In plaats van te stoppen en opnieuw te beginnen, of blindelings door te gaan zonder knikkers op zijn lepel, kon de bot zichzelf corrigeren. Hij kon elke subtaak voltooien voordat hij doorging naar de volgende.

Met deze methode hoeven de onderzoekers mensen niet te vragen om te programmeren als de robot fouten maakt. Ook hoefden ze geen extra demonstraties te geven hoe de robots kunnen herstellen van fouten”, zegt Wang. Nu wordt nog veel moeite wordt gedaan om huishoudelijke robots te trainen met gegevens die zijn verzameld op tele-operatiesystemen. Het algoritme van Stanford University kan de trainingsgegevens nu omzetten in robuust robotgedrag dat ondanks externe verstoringen complexe taken kan uitvoeren.

Foto: Jose-Luis Olivares, MIT. Stills courtesy of the researchers