Hoe ChatGPT robots kan besturen

28 februari 2023 Steve Crowe Microsoft

Onderzoekers van Microsoft bestuurden een robotarm met behulp van ChatGPT (foto: Microsoft)

ChatGPT, het roemruchte taalmodel van OpenAI, kan enigszins coherente antwoorden op verschillende prompts en vragen genereren. Onderzoekers van Microsoft zijn erin geslaagd om met behulp van ChatGPT een robotarm en een drone te besturen.

Op 20 februari heeft Microsoft een technisch artikel uitgebracht dat enkele ontwerpprincipes beschrijft die kunnen worden gebruikt om taalmodellen te begeleiden bij het oplossen van robotica -taken. "Het blijkt dat ChatGPT veel op zichzelf kan doen, maar het heeft nog steeds wat hulp nodig," schrijft Microsoft over de mogelijkheden om robots te programmeren met een taalmodel.

Het gebruik van LLM’s (large language models) voor het besturen van robots kent volgens Microsoft nogal wat uitdagingen, zoals een volledige en nauwkeurige beschrijving van het probleem, het identificeren van de juiste set toegestane functieoproepen en API's en het voorspellen van de antwoordstructuur met speciale argumenten. Om effectief gebruik te maken van ChatGPT voor robotica-toepassingen, hebben de onderzoekers de volgende stappen geformuleerd:

  1. Eerst definiëren ze een robotfunctiebibliotheek op hoog niveau. Deze bibliotheek moet specifiek zijn voor de gewenste toepassing op het robotplatform, maar tegelijk beschrijvend genoeg voor het volgen van het ChatGPT taalmodel.
  2. Vervolgens bouwen ze een prompt voor ChatGPT die het doel beschrijft en tegelijkertijd de set toegestane functies op hoog niveau uit de bibliotheek identificeert. De prompt kan ook informatie bevatten over beperkingen, of hoe ChatGPT zijn antwoorden zou moeten structureren.
  3. De gebruiker blijft in de lus om de code-uitvoer te evalueren, hetzij door middel van directe analyse of via simulatie en geeft feedback aan ChatGPT over de kwaliteit en veiligheid van de uitvoercode.
  4. Na het itereren van de door ChatgPT gegenereerde implementaties, kan de uiteindelijke code op de robot worden toegepast.

Voorbeelden van robotbesturing met ChatGPT

In één voorbeeld gebruikten Microsoft-onderzoekers ChatGPT in een manipulatiescenario met een robotarm. De feedback leert het model hoe de oorspronkelijk verstrekte API's kunnen worden vertaald in meer complexe functies op hoog niveau die ChatGPT zelf gecodeerd. Op basis van deze strategie kan het model de geleerde vaardigheden logisch aan elkaar koppelen om operaties zoals het stapelen van blokken uit te voeren.

Het model slaagde erin om het Microsoft-logo uit houten blokken te bouwen. Het was in staat om het Microsoft-logo op te halen uit zijn interne kennisbasis, het logo te 'tekenen' als SVG-code en vervolgens de aangeleerde vaardigheden te gebruiken om erachter te komen welke bestaande robotacties nodig zijn om het logo in fysieke vorm samen te stellen.

Onderzoekers probeerden ook een drone te besturen met behulp van ChatGPT. Eerst gaven ze ChatGPT een uitgebreide prompt om de computeropdrachten uit te leggen die het kon schrijven om de drone te bedienen. Daarna konden de onderzoekers verzoeken doen om ChatGPT te instrueren om de robot op verschillende manieren te besturen. Dit omvatte het vragen van ChatGPT om de camera van de drone te gebruiken om een drankje te identificeren, zoals kokoswater en een blikje CocaCola. Volgens de onderzoekers was het taalmodel ook in staat om codestructuren te schrijven voor drone-navigatie die uitsluitend op basis van de basis-API's van de prompt is gebaseerd.

"ChatGPT vroeg om opheldering toen de instructies van de gebruiker dubbelzinnig waren en schreef complexe codestructuren voor de drone, zoals een zigzagpatroon om de planken visueel te inspecteren", aldus de onderzoekers.

Microsoft paste deze aanpak ook toe op een gesimuleerd domein toepaste, met behulp van de Microsoft AirSim-simulator. “We hebben de casus onderzocht van een niet-technische gebruiker die het model gebruikt om een drone te besturen en een industrieel inspectiescenario uit te voeren. We hebben vastgesteld dat ChatGPT in staat is om de intentie en geometrische signalen van de gebruikersinvoer effectief te verwerken en de drone nauwkeurig te besturen.”

Hoofdbeperking

De onderzoekers geven toe dat deze aanpak een belangrijke beperking kent: ChatGPT kan alleen de code voor de robot schrijven op basis van een door een mens geformuleerde initiële prompt. Een ingenieur moet ChatGPT grondig uitleggen hoe de applicatieprogrammeerinterface voor een robot werkt, anders zal het model moeite hebben om een bruikbare code te genereren.

“We benadrukken dat deze tools geen volledige controle over de robots mogen krijgen, vooral voor veiligheidskritische toepassingen. Gezien de neiging van LLM’s om uiteindelijk onjuiste antwoorden te genereren, is het belangrijk om de kwaliteit van de oplossing en de veiligheid te waarborgen met menselijk toezicht, voordat deze wordt toegepast door de robot. Er zullen nog verschillende onderzoeken volgen om goede methodes te ontwikkelen voor het ontwerpen van test-, validatie- en verificatieprogramma’s voor de toepassing van een taalmodel in de robotica.”

“De voorbeelden in dit onderzoek laten open perceptie-actielussen zien, waarbij ChatGPT een code genereert om een taak op te lossen zonder daarna feedback aan het model te geven. Gezien het belang van closed loop controls verwachten we veel van het toekomstige onderzoek naar de vraag hoe de vaardigheden van ChatGPT kunnen worden gebruikt om goede (al dan niet tekstuele) taakfeedback te ontvangen.”

Betere communicatie met robots

Microsoft benadrukt dat het doel van dit onderzoek is om na te gaan of ChatGPT verder kan denken dan tekst en redeneringen over de fysieke wereld om te helpen met robotica-taken.

“We willen mensen helpen makkelijker te communiceren met robots, zonder complexe programmeertalen of eerst de details van robotsystemen onder de knie te krijgen. De belangrijkste uitdaging is om ChatGPT te onderwijzen hoe het taalmodel problemen kan oplossen door recht te doen aan de natuurkundewetten en de operationele context. Daarmee wordt duidelijk hoe fysieke acties van de robot de staat van de wereld kunnen veranderen.”

De oorspronkelijke tekst van dit artikel is te vinden op de website The Robot Report.

Altijd op de hoogte blijven?