Magnus Nordin är technical director och pratar om hur SEED ("Search for Extraordinary Experiences Division") – en grupp på EA som utforskar framtiden för interaktiv underhållning – skapade en AI som lärde sig själv att spela flerspelarläget i Battlefield 1 från grunden.
Börja med att berätta lite om dig själv. Vad har du för bakgrund och vad exakt är SEED?
Jag började på EA för sex år sedan efter att ha jobbat som datavetare i två decennier. Mitt första jobb på EA var hos DICE och senare gick jag över till SEED när det grundades för två år sedan.
På SEED utforskar vi hur interaktiv underhållning kommer att se ut på sikt. Vi gör en del akademisk forskning, men vi är inte en renodlad forskargrupp. Det kan bli lite abstrakt när man försöker gissa vad som ska hända i framtiden. Så vi försöker vara så praktiska som möjligt och hålla vårt perspektiv till teknik som vi tror kommer att påverka interaktiv underhållning om ungefär tre till fem år.
Vårt tillvägagångssätt är att bygga funktionella prototyper och skapa verkliga kreativa upplevelser med framväxande teknik, till exempel artificiell intelligens, maskininlärning, virtuell och förstärkt verklighet och storskaliga dynamiska virtuella världar.
Ett av våra senaste projekt är att träna en självlärande agent att spela flerspelarläget i Battlefield 1. Hur uppstod det projektet?
Jag tyckte det var helt enastående när jag hörde att en AI som skapats av DeepMind hade lärt sig själv att spela gamla Atari-spel. Det här var under 2015 och det fick mig att tänka på hur mycket det skulle krävas för att få en självlärande agent att lära sig spela ett modernt och mer komplext stort spel som Battlefield. Så när jag gick med i SEED skapade jag en grupp som ägnade sig åt djup inlärning för datorer och började rekrytera folk med det projektet i åtanke.
Först listade vi ut grunderna och byggde ett totalt avskalat tredimensionellt FPS-spel för att pröva våra algoritmer och träna nätverket. När vi hade fått en del bra resultat i vårt eget enkla spel jobbade vi med ett gäng på DICE för att integrera agenten i Battlefield-miljön.
Hur tycker du att den självlärande agenten står sig mot en mänsklig Battlefield-spelare?
Vi har gjort speltester där AI-agenter har fått möta mänskliga spelare i ett förenklat spelläge som är begränsat till handeldvapen. De mänskliga spelarna presterade bättre än AI-agenterna, men det var verkligen inte någon utklassning.
Agenten är ganska bra på den grundläggande spelmekaniken i Battlefield och har lärt sig att ändra sitt beteende baserat på vissa faktorer, till exempel att den har lite ammunition eller låg hälsa. Men Battlefield handlar om så mycket mer än att besegra sina fiender. Det är mycket strategi inblandat, lagsamarbete, kunskap om banorna och förståelse för olika klasser och utrustning. Vi måste utöka agentens förmåga mer för att AI:n ska kunna knäcka de nötterna.
Men efter speltesterna bad några av deltagarna oss att tydligt markera vilka agenterna var, så att de var lätta att identifiera, vilket vi tog som ett tecken på att agenterna presterade väl och betedde sig realistiskt.
Men det hände också att AI-botarna såg ut att tramsa och bara sprang runt i cirklar. Vad hände där?
För tillfället är inte agenterna särskilt duktiga på att planera framåt. Om en agent ser ett mål, till exempel en fientlig spelare, så kommer den att agera. Men om den inte har något i sikte så kommer den till slut att börja snurra runt för att leta efter något att göra. En bättre strategi vore att gå och leta efter motståndare på andra sidan banan eller att hitta ett gömställe, men agenter är inte riktig där än. Jag är säker på att de kommer att bli mindre tramsiga i framtiden när de blir smartare.
Hur länge övade den självlärande agenten?
Det går inte att spela Battlefield genom att trycka på en knapp i taget. Det krävs att spelaren gör flera saker samtidigt. Så för att hjälpa den självlärande agenten att komma igång med grundläggande kombinationer lät vi den betrakta 30 minuter av människor som spelade, en process som kallas imitationsinlärning, innan vi lät den träna på egen hand.
De agenter vi visar i vår demo har sedan tränat i sex dagar på flera maskiner parallellt, mot versioner av sig själva och några enkla gammaldags botar. Totalt motsvarar det ungefär 300 dagars spelande. De förbättras ständigt, men de lär sig inte särskilt snabbt.
Agenten har samma synfält som mänskliga spelare och har hjälp av en minikarta. Men vi upptäckte snabbt att Battlefield är för visuellt komplext för att agenten ska förstå det, vilket gjorde att vi fick förenkla vad den ser.
Vi har sett självlärande agenter som lärt sig själva att spela gamla arkadspel, första Doom och brädspelet go. Hur skiljer sig ert arbete från de här exemplen?
Så vitt jag vet är det här den första implementeringen av djup inlärning i ett komplext och stort spel i första person. Dessutom körs den i Battlefield, ett spel som är känt för sin mångbottnade spelmekanik.
Vad är den praktiska tillämpningen av den här tekniken just nu?
Vårt kortsiktiga mål med det här projektet har varit att hjälpa DICE att utöka sin testning och kvalitetssäkring så att de kan samla in fler kraschrapporter och hitta fler buggar.
I framtida spel, när djup inlärning har mognat, så räknar jag med att självlärande agenter är en del av spelen med intelligenta karaktärer som kan hantera olika uppgifter, anpassa sig och utvecklas när de får mer erfarenhet genom att interagera med mänskliga spelare.
När tror du att självlärande AI blir en standardteknik i spel?
Jag tvivlar inte det minsta på att neurala nätverk gradvis kommer att ta sig in i spel under de kommande åren. Och självlärande agenter är inte bara en bra ersättning för gamla hederliga botar. Man kan använda maskininlärning på många olika områden, till exempel för taligenkänning eller att automatiskt generera banor, animationer och röster.
Kommer självlärande agenter någonsin att slå professionella FPS-spelare? Och i så fall när?
Med risk för att komma med en vild spekulation så tror jag det är rimligt att förvänta sig att AI-agenter om några år kommer att kunna besegra mänskliga spelare i begränsade spellägen med mindre banor, fokuserade lag och tydliga mål. Men på SEED är det inte nödvändigtvis vårt mål att bygga AI som kan besegra mänskliga spelare. Vår ambition är att skapa nya upplevelser som förbättrar spel och gör dem roligare. Att bli krossad av en överlägsen AI är inte nödvändigtvis roligt för spelare i längden.
______________________
SEED är ett tvärvetenskapligt team inom EA Worldwide Studios. Deras uppdrag är att utforska, bygga upp och hjälpa till att definiera framtiden för interaktiv underhållning. Om du vill läsa mer om SEED kan du gå till https://www.ea.com/seed.
Häng med i allt som rör EA: Läs vår blogg, följ oss på Twitter och Instagram gilla oss på Facebook.