Et eksempel på, hvordan robotarmen bruger undersøgelsesspørgsmål til at bestemme præferencerne for den person, der bruger den. I dette tilfælde, personen foretrækker bane #1 (T1) frem for bane #2. Kredit:Andy Palan og Gleb Shevchuk
Bedt om at optimere til hastighed, mens du kører ned ad en bane i et computerspil, en bil skubber pedalen til metal ... og fortsætter med at snurre i en snæver lille cirkel. Intet i instruktionerne sagde, at bilen skulle køre ligeud, og så improviserede det.
Dette eksempel - sjovt i et computerspil, men ikke så meget i livet - er blandt dem, der motiverede Stanford University-forskere til at bygge en bedre måde at sætte mål for autonome systemer.
Dorsa Sadigh, assisterende professor i datalogi og elektroteknik, og hendes laboratorium har kombineret to forskellige måder at sætte mål for robotter i en enkelt proces, som klarede sig bedre end nogen af dens dele alene i både simuleringer og eksperimenter i den virkelige verden. Forskerne præsenterede arbejdet den 24. juni kl Robotik:Videnskab og systemer konference.
"I fremtiden, Jeg forventer fuldt ud, at der er flere autonome systemer i verden, og de får brug for et koncept om, hvad der er godt og hvad der er dårligt, " sagde Andy Palan, kandidatstuderende i datalogi og medforfatter på papiret. "Det er afgørende, hvis vi ønsker at implementere disse autonome systemer i fremtiden, at vi får det rigtige."
Holdets nye system til at give instruktion til robotter – kendt som belønningsfunktioner – kombinerer demonstrationer, hvor mennesker viser robotten, hvad den skal gøre, og brugerpræferenceundersøgelser, hvor folk svarer på spørgsmål om, hvordan de ønsker, at robotten skal opføre sig.
"Demonstrationer er informative, men de kan være støjende. På den anden side, præferencer giver, højst, en smule information, men er meget mere præcise, " sagde Sadigh. "Vores mål er at få det bedste fra begge verdener, og kombinere data fra begge disse kilder mere intelligent for bedre at lære om menneskers foretrukne belønningsfunktion."
Demonstrationer og undersøgelser
I tidligere arbejde, Sadigh havde alene fokuseret på præferenceundersøgelser. Disse beder folk om at sammenligne scenarier, såsom to baner for en autonom bil. Denne metode er effektiv, men det kunne tage så meget som tre minutter at generere det næste spørgsmål, som stadig er langsom til at lave instruktioner til komplekse systemer som en bil.
For at fremskynde det, gruppen udviklede senere en måde at fremstille flere spørgsmål på én gang, som kunne besvares hurtigt efter hinanden af én person eller fordeles på flere personer. Denne opdatering fremskyndede processen 15 til 50 gange sammenlignet med at lave spørgsmål enkeltvis.
Det nye kombinationssystem begynder med, at en person demonstrerer en adfærd over for robotten. Det kan give autonome robotter en masse information, men robotten kæmper ofte med at afgøre, hvilke dele af demonstrationen der er vigtige. Folk ønsker heller ikke altid, at en robot skal opføre sig ligesom det menneske, der trænede den.
"Vi kan ikke altid give demonstrationer, og selv når vi kan, vi kan ofte ikke stole på den information, folk giver, " sagde Erdem Biyik, en kandidatstuderende i elektroteknik, der ledede arbejdet med at udvikle flerspørgsmålsundersøgelserne. "For eksempel, Tidligere undersøgelser har vist, at folk ønsker, at autonome biler skal køre mindre aggressivt, end de selv gør."
Det er her undersøgelserne kommer ind, giver robotten en måde at spørge, for eksempel, om brugeren foretrækker, at den bevæger armen lavt til jorden eller op mod loftet. Til denne undersøgelse, gruppen brugte den langsommere enkeltspørgsmålsmetode, men de planlægger at integrere undersøgelser med flere spørgsmål i senere arbejde.
I test, holdet fandt ud af, at det var hurtigere at kombinere demonstrationer og undersøgelser end blot at angive præferencer og, sammenlignet med demonstrationer alene, omkring 80 procent af mennesker foretrak, hvordan robotten opførte sig, når den blev trænet med det kombinerede system.
"Dette er et skridt i bedre forståelse af, hvad folk ønsker eller forventer af en robot, " sagde Sadigh. "Vores arbejde gør det nemmere og mere effektivt for mennesker at interagere og undervise robotter, og jeg er spændt på at tage dette arbejde videre, især i at studere, hvordan robotter og mennesker kan lære af hinanden."
Bedre, hurtigere, smartere
Folk, der brugte den kombinerede metode, rapporterede, at de havde svært ved at forstå, hvad systemet gik ud på med nogle af dets spørgsmål, som nogle gange bad dem om at vælge mellem to scenarier, der virkede ens eller virkede irrelevante for opgaven - et almindeligt problem i præferencebaseret læring. Forskerne håber at løse denne mangel med lettere undersøgelser, der også fungerer hurtigere.
"Når vi ser på fremtiden, det er ikke 100 procent indlysende for mig, hvad den rigtige måde at lave belønningsfunktioner på er, men realistisk vil du have en slags kombination, der kan løse komplekse situationer med menneskelig input, " sagde Palan. "At være i stand til at designe belønningsfunktioner til autonome systemer er en stor, vigtigt problem, som ikke har fået den opmærksomhed i den akademiske verden, som det fortjener."
Holdet er også interesseret i en variation af deres system, som ville give folk mulighed for samtidigt at skabe belønningsfunktioner til forskellige scenarier. For eksempel, en person ønsker måske, at deres bil kører mere konservativt i langsom trafik og mere aggressivt, når trafikken er let.
Når demoer mislykkes
Nogle gange formår demonstrationer alene ikke at formidle pointen med en opgave. For eksempel, en demonstration i denne undersøgelse fik folk til at lære robotarmen at bevæge sig, indtil den pegede på et bestemt sted på jorden, og at gøre det, mens man undgår en forhindring og uden at bevæge sig over en vis højde.
Efter at et menneske havde kørt robotten gennem sine trin i 30 minutter, robotten forsøgte at udføre opgaven selvstændigt. Det pegede simpelthen lige op. Det var så fokuseret på at lære ikke at ramme forhindringen, den savnede fuldstændig opgavens egentlige mål – at pege på stedet – og præferencen for at forblive lav.
Håndkodning og belønningshacking
En anden måde at lære en robot på er at skrive kode, der fungerer som instruktioner. Udfordringen er at forklare præcis, hvad du vil have en robot til at gøre, især hvis opgaven er kompleks. Et almindeligt problem er kendt som "belønningshacking, "hvor robotten finder ud af en nemmere måde at nå de specificerede mål på - såsom at bilen snurrer i cirkler for at nå målet om at køre hurtigt.
Biyik oplevede belønningshacking, da han programmerede en robotarm til at gribe en cylinder og holde den i luften.
"Jeg sagde, at hånden skulle være lukket, objektet skal have en højde højere end X, og hånden skal være i samme højde, " beskrev Biyik. "Roboten rullede cylinderobjektet til kanten af bordet, slog den opad og lavede så en knytnæve ved siden af den i luften."