Open-World Task and Motion Planning via Vision-Language Model Genereated Constraints

Deze paper introduceert OWL-TAMP, een methode die Vision-Language Models integreert in Task and Motion Planning-systemen door automatisch discrete en continue constraints te genereren, waardoor robots complexe, op natuurlijke taal gebaseerde manipulatieopdrachten in open werelden succesvol kunnen uitvoeren.

Nishanth Kumar, William Shen, Fabio Ramos, Dieter Fox, Tomás Lozano-Pérez, Leslie Pack Kaelbling, Caelan Reed Garrett

Gepubliceerd Wed, 11 Ma
📖 5 min leestijd🧠 Diepgaand

Each language version is independently generated for its own context, not a direct translation.

Stel je voor dat je een robot hebt die heel slim is in het begrijpen van wat je zegt en wat hij ziet, maar een beetje 'dwaas' als het gaat om het uitvoeren van complexe taken. Of stel je voor dat je een robot hebt die een perfecte planner is, maar die alleen maar taken kan uitvoeren die je hem van tevoren hebt ingeprent, en die niet begrijpt wat je bedoelt als je iets nieuws vraagt.

Deze paper introduceert OWL-TAMP, een systeem dat deze twee robots samenvoegt tot één super-robot. Hier is hoe het werkt, vertaald naar alledaagse taal:

De Twee Helden

  1. De Vision-Language Model (VLM) - De "Dromer":
    Denk aan deze robot als een creatieve kunstenaar of een dromer. Hij kijkt naar een foto en hoort wat je zegt (bijvoorbeeld: "Zet de banaan bij de andere fruitsoorten"). Hij begrijpt perfect wat "bij" betekent en heeft een goed gevoel voor de wereld. Maar als je hem vraagt om precies te berekenen hoe hij zijn grijper moet bewegen zonder ergens tegenaan te stoten, raakt hij in de war. Hij is goed in het idee, maar slecht in de details.

  2. Het TAMP-systeem - De "Strakke Planner":
    Dit is de robot die een strakke, wiskundige planner is. Hij denkt in stappen: "Eerst grijpen, dan bewegen, dan neerzetten." Hij is fantastisch in het berekenen van botsingen en het vinden van de perfecte route. Maar hij is een beetje stijf. Als je hem vraagt om iets "in de buurt van" iets anders te zetten, en hij heeft dat woord "in de buurt" niet in zijn woordenboek, dan faalt hij. Hij kan alleen doen wat hij al kent.

Het Probleem: De "Banaan in de Weg"

Stel je de taak voor uit de paper: "Zet de banaan neer bij de andere vruchten."

  • De Dromer (VLM) zegt: "Goed idee! Pak de banaan en zet hem bij de appel en peer." Maar hij vergeet dat er een melkdoos voor de banaan staat. Als de robot probeert de banaan te pakken, botst hij tegen de melkdoos aan.
  • De Strakke Planner (TAMP) ziet de melkdoos en zegt: "Ik kan de banaan niet pakken, er staat iets in de weg." Maar als je vraagt "waar moet ik de banaan dan neerzetten?", zegt hij: "Ik weet niet wat 'bij' betekent, dus ik kan het niet doen."

De Oplossing: OWL-TAMP (De "Vertaler")

OWL-TAMP is de slimme tussenpersoon die deze twee helpt samenwerken. Het werkt in drie stappen, alsof je een bouwplaat maakt:

  1. De Schets (De Dromer tekent):
    Eerst vraagt OWL-TAMP aan de Dromer: "Hoe zou je dit doen?" De Dromer geeft een ruwe schets: "Pak de banaan, zet hem neer bij de appel." Maar hij maakt ook een belangrijke toevoeging: hij schrijft een regels op in een speciale code. Bijvoorbeeld: "De banaan moet binnen 5 centimeter van de appel en peer staan."

  2. De Regels (De Dromer schrijft de wetten):
    Dit is het magische deel. De Dromer vertaalt zijn vaag idee ("bij de appel") naar een Python-code (een computerprogramma). Deze code is als een meetlat of een controlelijst. Hij zegt: "Als de robot een plek kiest om de banaan neer te zetten, moet deze code controleren of die plek echt 'bij' de appel is."

  3. De Bouw (De Planner bouwt):
    Nu geeft OWL-TAMP deze schets en de nieuwe regels aan de Strakke Planner.

    • De Planner zegt: "Oké, ik moet de banaan pakken en neerzetten."
    • Hij probeert eerst direct te pakken, maar ziet de melkdoos. "Botsing!"
    • Hij denkt na: "Ik moet eerst de melkdoos verplaatsen."
    • Hij zoekt een plek om de banaan neer te zetten. Hij probeert een plek, maar de code-regel (die door de Dromer is gemaakt) zegt: "Nee, daar is het te ver van de appel."
    • De Planner probeert een andere plek. De code zegt: "Ja! Dat is dichtbij genoeg."

Waarom is dit zo cool?

Vroeger moesten mensen robots handmatig programmeren met duizenden regels voor elk woord dat je kunt gebruiken (zoals "links van", "op", "onder", "bij"). Als je een nieuw woord bedacht, moest je de robot opnieuw leren.

Met OWL-TAMP hoeft dat niet meer.

  • Je kunt tegen de robot zeggen: "Zet de banaan in de buurt van de appel."
  • Of: "Zorg dat de bestek recht staat."
  • Of: "Weeg het kortste object."

De robot (de Dromer) begrijpt wat die woorden betekenen, schrijft de code-regels voor je, en de Planner zorgt dat het fysiek gebeurt zonder te crashen.

Het Resultaat

In de experimenten hielp dit systeem de robot om taken te doen die eerder onmogelijk leken, zoals het verplaatsen van obstakels om bij een fruitje te komen, of het stapelen van blokken op een specifieke manier, puur op basis van een natuurlijke taalzin.

Kortom: OWL-TAMP geeft de robot een creatieve geest (om te begrijpen wat je wilt) en een strakke verstand (om het veilig en correct uit te voeren), zodat hij niet meer vastloopt in de wereld van "als je het niet hebt ingeprent, kan je het niet doen". Het is alsof je een robot hebt die niet alleen luistert, maar ook echt begrijpt wat je bedoelt.