Snabbstart: Balansera en boll med AI (Moab)


  • Total tid att slutföra: 20 minuter
  • Aktiv tid: 5 minuter
  • Maskinträningstid: 15 minuter

Lär en AI att balansera en boll i mitten av en tallrik med Bonsai, en fördefinierad simulator och exempelkod.

Innan du börjar

För att slutföra den här demonstrationen måste du ha ett giltigt Microsoft- eller Azure-konto och en giltig Bonsai arbetsyta etablerad i Azure. Om du behöver ett konto eller en Utvärderingsversion av Azure följer du anvisningarna i Microsoft-kontokonfigurationen för Bonsai.

Steg 1: Ladda Moab hjärnan

Bonsai innehåller en förpaketerad simulator och exempelkod för bollbalanseringsproblemet (Moab). Så här bygger du hjärnan:

  1. Logga in på Bonsai Användargränssnitt.
  2. Välj Moab i listan över demohjärnor i dialogrutan Komma igång.
  3. Ge den nya hjärnan namnet (till exempel "Moab Demo").
  4. Klicka på Skapa hjärna för att läsa in exempelhjärnan och simulatorn.

'Create Brain' screen

Partiell skärmbild av skärmen "Skapa hjärna" med Moab-exempelhjärnan markerad.

Steg 2: Inspektera läroplanen

Bonsai öppnar undervisningsgränssnittet när din demohjärna läses in. Undervisningsgränssnittet innehåller en kodningspanel och en grafpanel. Kodningspanelen visar vår undervisningskod (läroplanen) skriven på ett upphovsrättsskyddat språk som heter Inkling. Diagrammet i grafpanelen representerar den iterativa inlärningsprocessen som definieras av Inkling-koden.

Bonsai Teaching UI

Kommenterad skärmbild av användargränssnittet Bonsai för undervisning indelat i tre vågräta paneler (vänster, mitten och höger). Den vänstra panelen visar tillgängliga hjärnor och simulatorer. Mittpanelen är kommenterad med "Kodningspanel" och visar exempelkoden Inkling. Den högra panelen kommenteras med "Graphing Panel" och visar ett undervisningsdiagram. Undervisningsdiagrammet har tre noder ordnade lodrätt (överkant, mitten, nederkant). Den översta noden är märkt "ObservableState". Den mellersta noden är märkt "Concept MoveToCenter". Den nedre noden är märkt "SimAction".

Om du klickar på de olika noderna i undervisningsdiagrammet visas relevant avsnitt i exempelkoden:

  • Tillståndsnod: kapslar in den information som är tillgänglig för hjärnan när simuleringen körs (de observerbara sensortillstånden). För Moab är de observerbara sensortillstånden bollens aktuella position och hastighet.
  • Konceptnod: kapslar in det koncept som du vill att hjärnan ska lära sig enligt dina träningsmål. För Moab flyttar konceptet en boll till ett specifikt mål. Motsvarande Inkling mål kör bollen till mitten av plattan och hålla den där (drive Center Of Plate), och undvika kanten av plattan (avoid Fall Off Plate).
  • Åtgärdsnod: kapslar in uppsättningen giltiga åtgärder som hjärnan kan vidta som svar på det observerade tillståndet. För Moab justerar de tillgängliga åtgärderna plattans lutning och lutning.

Steg 3: Träna hjärnan

Viktigt

När du kör simuleringar används Azure-resurser. Om du följer snabbstarten som den är skriven debiteras din Azure-prenumeration cirka 0,50 USD. Upprepad träning eller körning av träningen längre än rekommenderat resulterar i ytterligare kostnader.

Öppna träningsgränssnittet och börja träna hjärnan genom att klicka på den gröna knappen Träna i grafpanelen.

Träningsgränssnittet ersätter kodningspanelen med en tom datapanel och visar en uppdaterad undervisningsgraf. När du börjar träna Bonsai startar automatiskt en flotta med simulatorinstanser. Flottan visas i den uppdaterade grafen som en ny simulatornod .

Simulatornoden visar dig:

  • simulatorns namn, "MoveToCenterSimulator".
  • det totala antalet simulatorinstanser i flottan.
  • den totala hastigheten för flottan i iterationer per sekund.

Bonsai Training UI

Skärmbild av användargränssnittet för Bonsai träning. Datapanelen i användargränssnittet visar ett exempel på ett prestandadiagram som trendar uppåt. Diagrampanelen i användargränssnittet visar en uppdaterad undervisningsgraf. Undervisningsdiagrammet innehåller nu en simulatornod till vänster om de tidigare noderna. Simulatornoden är ansluten till noden ObservableState och SimAction-noden. Den nya noden är märkt "Simulator MoabSim" och delas in i två avsnitt. I det vänstra avsnittet visas antalet anslutna simulatorinstanser (15) och det högra avsnittet visar den aktuella nivån av målnöjdhet (90,8 %).

Med varje iteration tjänar din hjärna en prestandapoäng baserat på hur väl den löste problemet. Bonsai rapporterar träningsframställning för hjärnan i datapanelen som ett målnöjdhetsdiagram . Värden för individuella målnöjdhet anger hur nära hjärnan kom att uppnå det relaterade målet för en viss iteration. Det senaste värdet för övergripande målnöjdhet rapporteras också i begreppsnoden i undervisningsdiagrammet.

Nöjdhetsritningarna bör trenda uppåt när din hjärna blir bättre på att balansera bollen i mitten av plattan.

Steg 4: Se hjärnan i aktion

Moab-simulatorn innehåller en visualiserare så att du kan se din hjärna i praktiken. som det fungerar genom en viss simulering. Om du vill se visualiseringen bläddrar du nedåt i datapanelen.

Visualiseraren återger en 3D-modell av Moab-maskinvaran och en boll. Visualiseringen visar också:

  • bollens beräknade bana (en blå pil som projiceras på plattan).
  • den uppskattade skuggan av bollen (en blå cirkel projiceras på plattan under bollen).
  • ett realtidsdiagram över ändrade tillståndsvariabler.

Simulation visualization

Skärmbild av användargränssnittet för Bonsai träning. Datapanelen rullas ned för att visa en 3D-återgivning av Moab-enheten som balanserar en liten orange boll. Moab-enheten har en cirkulär kropp med aktuatorarmar ovanpå. En tydlig balansplatta sitter ovanpå armarna.

Prova att ball_x klicka på värdena och ball_y . De två linjerna bör konvergera i mitten av grafen (0,00) när bollen flyttas till mitten av plattan.

Steg 5: Stoppa träningen

Bonsai stoppar automatiskt träningen när något av följande inträffar:

  • det totala målnöjdhetsvärdet når 100 %
  • graflinjerna blir vågräta linjer för ett fördefinierat antal träningsavsnitt.

Ett 100% nöjdhetsvärde innebär att din hjärna har lärt sig den nuvarande läroplanen fullt ut. En vågrät ritlinje innebär att hjärnan inte längre förbättras. När en hjärna misslyckas med att förbättra efter ett visst antal episoder (enligt definitionen av NoProgressIterationLimit), Bonsai avslutar träningen för att undvika att slösa beräkningsresurser.

Tips

Moab-demohjärnan uppnår vanligtvis optimal prestanda inom 200 000 iterationer.

Om du vill avbryta träningen tidigt klickar du på den röda knappen Stoppa träning överst på grafpanelen.

Nästa steg

Grattis! Du har tränat en hjärna att balansera en boll i mitten av plattan.

Nu när du förstår grunderna i Moab-hjärnan kan du prova att anpassa Inkling-koden för att ändra dina träningsmål.