Jocurile video continuă să ofere o provocare pentru miliarde de jucători din întreaga lume. Poate că nu știți încă, dar algoritmii de învățare automată au început să facă față provocării.
În prezent, există o cantitate semnificativă de cercetări în domeniul AI pentru a vedea dacă metodele de învățare automată pot fi aplicate la jocurile video. Progrese substanțiale în acest domeniu arată că masina de învățare agenții pot fi folosiți pentru a emula sau chiar înlocui jucătorul uman.
Ce înseamnă acest lucru pentru viitorul jocuri video?
Sunt aceste proiecte pur și simplu pentru distracție sau există motive mai profunde pentru care atât de mulți cercetători se concentrează pe jocuri?
Acest articol va explora pe scurt istoria AI în jocurile video. După aceea, vă vom oferi o privire de ansamblu rapidă asupra unor tehnici de învățare automată pe care le putem folosi pentru a învăța cum să învingeți jocurile. Vom analiza apoi câteva aplicații de succes ale rețele neuronale să învețe și să stăpânească jocuri video specifice.
Scurt istoric al AI în jocuri
Înainte de a înțelege de ce rețelele neuronale au devenit algoritmul ideal pentru a rezolva jocurile video, să analizăm pe scurt modul în care oamenii de știință în computer au folosit jocurile video pentru a-și avansa cercetările în IA.
Puteți argumenta că, de la începuturile sale, jocurile video au fost un domeniu fierbinte de cercetare pentru cercetătorii interesați de IA.
Deși la origine nu este strict un joc video, șahul a fost un accent mare în primele zile ale AI. În 1951, Dr. Dietrich Prinz a scris un program de joc de șah folosind computerul digital Ferranti Mark 1. Acest lucru a fost în epoca în care aceste computere voluminoase trebuiau să citească programe de pe bandă de hârtie.
Programul în sine nu a fost un IA complet de șah. Din cauza limitărilor computerului, Prinz a putut crea doar un program care să rezolve problemele de șah mate-in-two. În medie, programul a durat 15-20 de minute pentru a calcula fiecare mișcare posibilă pentru jucătorii alb și negru.
Lucrările privind îmbunătățirea IA pentru șah și dame s-au îmbunătățit constant de-a lungul deceniilor. Progresul a atins punctul culminant în 1997, când Deep Blue de la IBM l-a învins pe marele maestru rus de șah Garry Kasparov într-o pereche de meciuri de șase jocuri. În zilele noastre, motoarele de șah pe care le puteți găsi pe telefonul mobil pot învinge Deep Blue.
Oponenții AI au început să câștige popularitate în timpul epocii de aur a jocurilor video arcade. Space Invaders din 1978 și Pac-Man din anii 1980 sunt unii dintre pionierii industriei în crearea AI care poate provoca suficient chiar și pe cei mai veterani dintre jucătorii de arcade.
Pac-Man, în special, a fost un joc popular pe care cercetătorii AI să experimenteze. Variat concursuri pentru doamna Pac-Man au fost organizate pentru a determina care echipă ar putea veni cu cel mai bun AI pentru a învinge jocul.
AI jocului și algoritmii euristici au continuat să evolueze pe măsură ce a apărut nevoia de adversari mai inteligenți. De exemplu, IA de luptă a crescut în popularitate pe măsură ce genuri precum împușcăturile la persoana întâi au devenit mai populare.
Învățare automată în jocurile video
Pe măsură ce tehnicile de învățare automată au crescut rapid în popularitate, diverse proiecte de cercetare au încercat să folosească aceste noi tehnici pentru a juca jocuri video.
Jocuri precum Dota 2, StarCraft și Doom pot acționa ca probleme pentru acestea algoritmi de învățare automată a rezolva. Algoritmi de învățare profundă, în special, au reușit să atingă și chiar să depășească performanța la nivel uman.
Mediul de învățare Arcade sau ALE le-a oferit cercetătorilor o interfață pentru peste o sută de jocuri Atari 2600. Platforma open-source a permis cercetătorilor să evalueze performanța tehnicilor de învățare automată pe jocurile video clasice Atari. Google și-a publicat chiar și propriile lor hârtie folosind șapte jocuri de la ALE
Între timp, proiecte precum VizDoom a oferit cercetătorilor AI posibilitatea de a antrena algoritmi de învățare automată pentru a juca împușcături 3D la persoana întâi.
Cum funcționează: câteva concepte cheie
Rețele neuronale
Cele mai multe abordări de rezolvare a jocurilor video cu învățare automată implică un tip de algoritm cunoscut sub numele de rețea neuronală.
Vă puteți gândi la o rețea neuronală ca la un program care încearcă să imite modul în care ar putea funcționa un creier. Similar cu modul în care creierul nostru este compus din neuroni care transmit un semnal, o rețea neuronală conține și neuroni artificiali.
Acești neuroni artificiali transferă semnale unul altuia, fiecare semnal fiind un număr real. O rețea neuronală conține mai multe straturi între straturile de intrare și de ieșire, numite rețea neuronală profundă.
Consolidarea învățării
O altă tehnică comună de învățare automată relevantă pentru învățarea jocurilor video este ideea de învățare prin întărire.
Această tehnică este procesul de instruire a unui agent folosind recompense sau pedepse. Cu această abordare, agentul ar trebui să fie capabil să vină cu o soluție la o problemă prin încercare și eroare.
Să presupunem că vrem o IA pentru a afla cum să joci jocul Snake. Obiectivul jocului este simplu: obțineți cât mai multe puncte consumând articole și evitând coada în creștere.
Cu învățarea prin întărire, putem defini o funcție de recompensă R. Funcția adaugă puncte atunci când un șarpe consumă un articol și scade puncte atunci când șarpele lovește un obstacol. Având în vedere mediul actual și un set de acțiuni posibile, modelul nostru de învățare prin consolidare va încerca să calculeze „politica” optimă care maximizează funcția noastră de recompensă.
Neuroevoluție
Păstrând tema de a fi inspirați din natură, cercetătorii au găsit, de asemenea, succes în aplicarea ML la jocurile video printr-o tehnică cunoscută sub numele de neuroevoluție.
În loc de a folosi coborâre în gradient pentru a actualiza neuronii dintr-o rețea, putem folosi algoritmi evolutivi pentru a obține rezultate mai bune.
Algoritmii evolutivi încep de obicei prin a genera o populație inițială de indivizi aleatori. Apoi evaluăm acești indivizi folosind anumite criterii. Cei mai buni indivizi sunt aleși ca „părinți” și sunt crescuți împreună pentru a forma o nouă generație de indivizi. Acești indivizi îi vor înlocui apoi pe cei mai puțin potriviți din populație.
Acești algoritmi introduc de obicei o anumită formă de operație de mutație în timpul pasului de încrucișare sau de „înmulțire” pentru a menține diversitatea genetică.
Exemplu de cercetare privind învățarea automată în jocurile video
OpenAI Cinci
OpenAI Cinci este un program de calculator de la OpenAI care își propune să joace DOTA 2, un joc popular multiplayer mobile battle arena (MOBA).
Programul a folosit tehnicile existente de învățare prin întărire, scalate pentru a învăța din milioane de cadre pe secundă. Datorită unui sistem de antrenament distribuit, OpenAI a putut juca 180 de ani de jocuri în fiecare zi.
După perioada de pregătire, OpenAI Five a reușit să obțină performanțe la nivel de expert și să demonstreze cooperarea cu jucătorii umani. În 2019, OpenAI five a reușit învinge 99.4% dintre jucători în meciurile publice.
De ce s-a decis OpenAI asupra acestui joc? Potrivit cercetătorilor, DOTA 2 avea mecanici complexe, care nu erau la îndemâna adâncimii existente Consolidarea învățării algoritmi.
Super Mario Bros
O altă aplicație interesantă a rețelelor neuronale în jocurile video este utilizarea neuroevoluției pentru a juca platforme precum Super Mario Bros.
De exemplu, aceasta intrare hackathon începe prin a nu avea cunoștințe despre joc și construiește încet o bază pentru ceea ce este necesar pentru a progresa printr-un nivel.
Rețeaua neuronală auto-evolutivă preia starea actuală a jocului ca o rețea de plăci. La început, rețeaua neuronală nu înțelege ce înseamnă fiecare țiglă, doar că plăcile „aer” sunt diferite de „plăcile de pământ” și „plăcile inamice”.
Implementarea proiectului hackathon a unei neuroevoluții a folosit algoritmul genetic NEAT pentru a reproduce diferite rețele neuronale în mod selectiv.
Importanță
Acum că ați văzut câteva exemple de rețele neuronale care joacă jocuri video, s-ar putea să vă întrebați ce rost au toate acestea.
Deoarece jocurile video implică interacțiuni complexe între agenți și mediile lor, este terenul de testare perfect pentru realizarea AI. Mediile virtuale sunt sigure și controlabile și oferă o sursă infinită de date.
Cercetările făcute în acest domeniu au oferit cercetătorilor o perspectivă asupra modului în care rețelele neuronale pot fi optimizate pentru a învăța cum să rezolve problemele din lumea reală.
Rețele neuronale sunt inspirate de modul în care funcționează creierul în lumea naturală. Studiind modul în care se comportă neuronii artificiali atunci când învață cum să joace un joc video, putem, de asemenea, obține o perspectivă asupra modului în care creier uman funcționează.
Concluzie
Asemănările dintre rețelele neuronale și creier au condus la perspective în ambele domenii. Cercetările continue asupra modului în care rețelele neuronale pot rezolva problemele poate duce într-o zi la forme mai avansate de inteligență artificială.
Imaginați-vă că utilizați un AI adaptat specificațiilor dvs. care poate juca un întreg joc video înainte de a-l cumpăra pentru a vă anunța dacă merită timpul dvs. Ar folosi companiile de jocuri video rețele neuronale pentru a îmbunătăți designul jocului, nivelul de ajustare și dificultatea adversarului?
Ce crezi că se va întâmpla când rețelele neuronale vor deveni cei mai buni jucători?
Lasă un comentariu