Videospel fortsätter att ge en utmaning för miljarder spelare runt om i världen. Du kanske inte vet det ännu, men maskininlärningsalgoritmer har också börjat anta utmaningen.
Det finns för närvarande en betydande mängd forskning inom området AI för att se om maskininlärningsmetoder kan tillämpas på videospel. Betydande framsteg på detta område visar det maskininlärning agenter kan användas för att efterlikna eller till och med ersätta den mänskliga spelaren.
Vad betyder detta för framtiden videospel?
Är dessa projekt bara för skojs skull, eller finns det djupare anledningar till att så många forskare fokuserar på spel?
Den här artikeln kommer kortfattat att utforska historien om AI i videospel. Efteråt ger vi dig en snabb översikt över några maskininlärningstekniker som vi kan använda för att lära dig hur man slår spel. Vi kommer sedan att titta på några framgångsrika ansökningar av neurala nät att lära sig och bemästra specifika videospel.
Kort historia om AI i spel
Innan vi går in på varför neurala nät har blivit den idealiska algoritmen för att lösa videospel, låt oss kort titta på hur datavetare har använt videospel för att främja sin forskning inom AI.
Du kan hävda att videospel från starten har varit ett hett forskningsområde för forskare som är intresserade av AI.
Även om det inte bara är ett videospel i ursprung, har schack varit ett stort fokus under AI:s tidiga dagar. 1951 skrev Dr Dietrich Prinz ett schackspelsprogram med hjälp av Ferranti Mark 1 digitala dator. Detta var långt tillbaka på den tiden då dessa skrymmande datorer var tvungna att läsa program från pappersband.
Programmet i sig var inte en komplett schack-AI. På grund av datorns begränsningar kunde Prinz bara skapa ett program som löste schackproblem med partner i två. I genomsnitt tog programmet 15-20 minuter att beräkna alla möjliga drag för de vita och svarta spelarna.
Arbetet med att förbättra schack och schack AI har förbättrats stadigt under decennierna. Framstegen nådde sin klimax 1997 när IBMs Deep Blue besegrade den ryske schackstormästaren Garry Kasparov i ett par matcher med sex matcher. Nuförtiden kan schackmotorer du kan hitta på din mobiltelefon besegra Deep Blue.
AI-motståndare började bli populära under arkadspelens guldålder. 1978-talets Space Invaders och 1980-talets Pac-Man är några av branschens pionjärer när det gäller att skapa AI som tillräckligt kan utmana även de mest veteraner av arkadspelare.
Pac-Man, i synnerhet, var ett populärt spel för AI-forskare att experimentera med. Olika tävlingar för Ms. Pac-Man har organiserats för att avgöra vilket lag som kan komma med den bästa AI:n för att slå spelet.
Spel-AI och heuristiska algoritmer fortsatte att utvecklas när behovet av smartare motståndare uppstod. Till exempel ökade combat AI i popularitet när genrer som first-person shooters blev mer mainstream.
Maskininlärning i videospel
När maskininlärningstekniker snabbt ökade i popularitet försökte olika forskningsprojekt använda dessa nya tekniker för att spela videospel.
Spel som Dota 2, StarCraft och Doom kan fungera som problem för dessa maskininlärningsalgoritmer att lösa. Algoritmer för djupinlärning, i synnerhet kunde uppnå och till och med överträffa prestanda på mänsklig nivå.
Smakämnen Arcade inlärningsmiljö eller ALE gav forskare ett gränssnitt för över hundra Atari 2600-spel. Plattformen med öppen källkod gjorde det möjligt för forskare att jämföra prestandan för maskininlärningstekniker på klassiska Atari-videospel. Google publicerade till och med sina egna papper med sju spel från ALE
Under tiden projekt som VizDoom gav AI-forskare möjlighet att träna maskininlärningsalgoritmer för att spela förstapersonsskjutare i 3D.
Hur fungerar det: Några nyckelbegrepp
Neurala nätverk
De flesta metoder för att lösa videospel med maskininlärning involverar en typ av algoritm som kallas ett neuralt nätverk.
Du kan tänka på ett neuralt nät som ett program som försöker efterlikna hur en hjärna kan fungera. I likhet med hur vår hjärna är sammansatt av neuroner som överför en signal, innehåller ett neuralt nät också artificiella neuroner.
Dessa artificiella neuroner överför också signaler till varandra, där varje signal är ett verkligt tal. Ett neuralt nät innehåller flera lager mellan ingångs- och utgångsskikten, kallat ett djupt neuralt nätverk.
Förstärkningslärande
En annan vanlig maskininlärningsteknik som är relevant för att lära sig videospel är idén om förstärkningsinlärning.
Denna teknik är processen att träna en agent med hjälp av belöningar eller straff. Med detta tillvägagångssätt bör agenten kunna komma med en lösning på ett problem genom försök och fel.
Låt oss säga att vi vill ha en AI för att ta reda på hur man spelar spelet Snake. Spelets mål är enkelt: få så många poäng som möjligt genom att konsumera föremål och undvika din växande svans.
Med förstärkningsinlärning kan vi definiera en belöningsfunktion R. Funktionen lägger till poäng när en orm förbrukar ett föremål och drar av poäng när ormen träffar ett hinder. Med tanke på den nuvarande miljön och en uppsättning möjliga åtgärder, kommer vår modell för förstärkningsinlärning att försöka beräkna den optimala "policyn" som maximerar vår belöningsfunktion.
Neuroevolution
Med tanke på att vara inspirerad av naturen har forskare också funnit framgång i att tillämpa ML på videospel genom en teknik som kallas neuroevolution.
Istället för att använda lutning nedstigning för att uppdatera neuroner i ett nätverk kan vi använda evolutionära algoritmer för att uppnå bättre resultat.
Evolutionära algoritmer börjar vanligtvis med att generera en initial population av slumpmässiga individer. Vi utvärderar sedan dessa individer med hjälp av vissa kriterier. De bästa individerna väljs ut som "föräldrar" och föds upp tillsammans för att bilda en ny generation av individer. Dessa individer kommer då att ersätta de minst lämpade individerna i befolkningen.
Dessa algoritmer introducerar vanligtvis också någon form av mutationsoperation under korsningen eller "uppfödningssteget" för att upprätthålla genetisk mångfald.
Exempel på forskning om maskininlärning i videospel
OpenAI Five
OpenAI Five är ett datorprogram från OpenAI som syftar till att spela DOTA 2, ett populärt multiplayer mobile battle arena-spel (MOBA).
Programmet utnyttjade befintliga förstärkningsinlärningstekniker, skalade för att lära sig från miljontals bilder per sekund. Tack vare ett distribuerat träningssystem kunde OpenAI spela 180 års spel varje dag.
Efter träningsperioden kunde OpenAI Five uppnå prestanda på expertnivå och demonstrera samarbete med mänskliga spelare. 2019 kunde OpenAI five besegra 99.4 % av spelarna i offentliga matcher.
Varför bestämde OpenAI sig för detta spel? Enligt forskarna hade DOTA 2 komplex mekanik som låg utanför räckhåll för existerande djup förstärkning lärande algoritmer.
Super Mario Bros
En annan intressant tillämpning av neurala nät i videospel är användningen av neuroevolution för att spela plattformsspel som Super Mario Bros.
Till exempel, detta hackathon inträde börjar med att inte ha någon kunskap om spelet och bygger sakta en grund för vad som behövs för att gå vidare genom en nivå.
Det självutvecklande neurala nätet tar in spelets nuvarande tillstånd som ett rutnät av brickor. Till en början har det neurala nätet ingen förståelse för vad varje bricka betyder, bara att "luft"-brickorna skiljer sig från "markplattor" och "fiendebrickor."
Hackathonprojektets implementering av en neuroevolution använde den genetiska algoritmen NEAT för att selektivt föda fram olika neurala nät.
Betydelse
Nu när du har sett några exempel på neurala nät som spelar videospel, kanske du undrar vad poängen med allt detta är.
Eftersom videospel involverar komplexa interaktioner mellan agenter och deras miljöer, är det den perfekta testplatsen för att skapa AI. Virtuella miljöer är säkra och kontrollerbara och ger ett oändligt utbud av data.
Forskning inom detta område har gett forskare insikt i hur neurala nät kan optimeras för att lära sig att lösa problem i den verkliga världen.
Neurala nätverk inspireras av hur hjärnor fungerar i den naturliga världen. Genom att studera hur artificiella neuroner beter sig när vi lär oss hur man spelar ett tv-spel kan vi också få insikt i hur mänsklig hjärna fungerar.
Slutsats
Likheter mellan neurala nätverk och hjärnan har lett till insikter inom båda områdena. Den fortsatta forskningen om hur neurala nät kan lösa problem kan en dag leda till mer avancerade former av artificiell intelligens.
Föreställ dig att du använder en AI som är skräddarsydd efter dina specifikationer som kan spela ett helt videospel innan du köper det för att låta dig veta om det är värt din tid. Skulle tv-spelsföretag använda neurala nät för att förbättra speldesignen, tweaknivån och motståndarens svårighetsgrad?
Vad tror du kommer att hända när neurala nät blir de ultimata spelarna?
Kommentera uppropet