Meie blogis kunagi tÔstatatud teema jÀtkuks RÀÀgime sellest, kuidas masinÔpe sellele rakendatav on ja mis kujul. Teie kogemus ja selle pÔhjal valitud lahendused Apex Game Toolsi tehisintellekti ekspert Jakob Rasmussen.

Viimastel aastatel on palju rÀÀgitud sellest, kuidas masinÔpe mÀngutööstust kardinaalselt muudab, sest see tehnoloogia on saanud juba lÀbimurdeks paljudes teistes digirakendustes. Kuid Àrge unustage, et mÀngud on palju keerukamad kui autosÔidu simulaator, droonijuhtimisprogramm vÔi pildil olevad nÀotuvastusalgoritmid.
Praegu on mĂ€ngutööstuses endiselt tavaline kasutada traditsioonilisi tehisintellekti meetodeid, nagu lĂ”pliku oleku masina meetod, kĂ€itumispuud ja ĂŒha enam utiliidipĂ”hised AI (utiliidipĂ”hised sĂŒsteemid). Selliseid AI-sid nimetatakse ka disainipĂ”histeks (tehisintellektiks) vĂ”i ekspertsĂŒsteemideks. Kuid muutub ĂŒha selgemaks â ja eriti mĂ€ngijatele â, et need sĂŒsteemid on ĂŒha vĂ€hem sobivad tĂ”eliselt arenenud vastaste loomiseks, kes suudavad mĂ€ngija kĂ€itumist jĂ€ljendada. See kehtib eriti loominguliste lahenduste kohta. Seda vĂ”ib seletada sellega, et tehisintellekti arendajad ei suuda kĂ”iki vĂ”imalikke taktikaid ja kĂ€itumisstrateegiaid arvesse vĂ”tta ning neid traditsioonilistes tehisintellektisĂŒsteemides edukalt rakendada. MĂ€ngijate jaoks pĂ”hjustab see sageli igava ja etteaimatava mĂ€ngimise vastase vastu, kelle kĂ€itumist on lihtne meelde jĂ€tta.
Sellel tulemusel on palju pĂ”hjuseid, kuid ĂŒks peamisi on AI vĂ”imetus Ă”ppida. SeetĂ”ttu tuleb vaenlase tehisintellekti luues loomulikult meelde otsus minna ĂŒle masinĂ”ppele, mis on end tĂ”estanud paljudes teistes rakendustes. Kuid on mitmeid nĂŒansse, mida tasub kaaluda. Seega peab mĂ€ngu tehisintellekt olema vĂ”imeline kohanema iga olukorraga ja kasutama eeliseid, mida see talle annab, samuti kohanema vastaste â live-mĂ€ngijate ja teiste tehisintellektide â erinevate mĂ€ngustiilidega.
Kuidas nĂŒĂŒd lood on?
Ăhendkuningriigis asuv tehisintellektiettevĂ”te DeepMind nĂ€itas hiljuti, kuidas AI-d saavad Ă”ppida iseseisvalt mĂ€nge mĂ€ngima, reegleid arvesse vĂ”tma ja leida viise mĂ€ngu ĂŒletamiseks vĂ”i vĂ”itmiseks â kuigi seni on kasutatud ainult lihtsaid mĂ€nge, nagu varasemad mĂ€ngud. - nĂ€iteks male ja Jaapani loogikamĂ€ng Go. Nende kohta saadud tulemused nĂ€itavad, et tehisintellekt suudab kujundada adekvaatse hinnangu vĂ€ljakul toimuvale. Kui rÀÀgime AI kohandamisest vastase erinevate mĂ€ngustiilidega, pole tulemused siiani nii muljetavaldavad.
TĂ€napĂ€eval on nĂ€rvivĂ”rgud juba Ă”ppinud pilte Ă€ra tundma ja autosid juhtima. Kuid neid funktsioone saab rakendada suhteliselt lihtsate arhitektuuride abil, isegi kui need osutuvad seetĂ”ttu ĂŒsna sĂŒgavateks ja mahukateks. Seega on Facebooki pildituvastuse tehisintellekti sĂŒgavus umbes 100 kihti, mistĂ”ttu see sarnaneb bioloogilise ajuga - ĂŒhe suure vĂ”rgu moodustavate neuronite vaheliste suhete arvu ja keerukuse poolest.
MĂ€ngu AI
Seoses masinĂ”ppe rakendamisega mĂ€ngutööstuses on mitmeid piiranguid, mille tĂ”ttu ei ole seda tĂŒĂŒpi arhitektuuri alati vĂ”imalik kasutada. Nende hulka kuuluvad sĂŒsteeminĂ”uded, eriti need, mis on seotud protsessoriga, mis mÀÀravad arvuti vĂ”ime kĂ€sitleda keerulist mĂ€ngustruktuuri ning selle sobivust mĂ€ngude loo jutustamiseks ja mĂ€ngimiseks.
Nii selgub, et paljudes mĂ€ngudes pole keeruka tehisintellektisĂŒsteemi rakendamiseks vĂ”imalik organiseerida vajalikku riistvara, veel vĂ€hem serveriklastrit, mis eksisteerib nĂ€iteks Facebookis pildituvastusvĂ”rkude jaoks. MĂ”nikord peab korraga töötama mitu AI-d â ja mitte ainult arvutites, vaid ka mobiilseadmetes ja muudel vĂ€hem tootlikel platvormidel. KĂ”ik see seab piirangud masinĂ”ppe arhitektuuri suurusele ja keerukusele, sest kĂ”ik arvutused tuleb teha ka umbes 1 vĂ”i 2 millisekundilise kaadri kestusega. Loomulikult saate kasutada erinevaid optimeerimistehnoloogiaid ja jaotada koormust kaadrite vahel, kuid te ei saa ikkagi neist piirangutest tĂ€ielikult vabaneda.
MĂ€ngu keerukus vĂ”ib tehisintellektile tĂ”siseid probleeme tekitada. TĂ”epoolest, sellistes mĂ€ngudes nagu StarCraft II on mĂ€ngumehaanika kordades keerulisem kui Atari mĂ€ngudel. SeetĂ”ttu ei tohiks te eeldada, et antud kaadrisageduse ja teadaolevate sĂŒsteeminĂ”uete juures suudab masinĂ”pe tingimata uurida kogu mĂ€ngu olekut ja sellega suhelda. Nii nagu mĂ€ngijat juhib mĂ€ngu algfaasis sageli intuitsioon, peab AI Ă”ppima mĂ€ngu olekut algselt töötlema, et selle edasist lĂ€bimist lihtsustada. NĂ€iteks ĂŒhes viimastest kaardid kuvavad ainult seda teavet, mida arendajad pidasid oluliseks: ĂŒhel juhul kasutas AI kogu kaardiala vĂ€ljasuumitud vaadet, teisel juhul sai see sarnaselt mĂ€ngijaga liigutada kaamerat ja seejĂ€rel selle taju piirdus ekraanil oleva teabega.

AlphaStar AI ja mÀngija StarSraft II visualiseerimine: ekraanipilt nÀitab töötlemata vaatlusi, nÀrvivÔrgu aktiivsust, mÔningaid selle vÔimalikke toiminguid ja koordinaate ning matƥi eeldatavat tulemust
See on eriti oluline aspekt mĂ€ngude puhul. Sageli ei ole ĂŒldtunnustatud masinĂ”ppeprobleemide lahendamise meetodid mĂ€ngude tehisintellekti jaoks rakendatavad. NĂ€iteks ei pea ta tavaliselt vĂ”itma ega tegema kĂ”ike, mida selleks vaja on, nagu see oli Atari mĂ€ngude puhul. Enamasti on AI roll muuta mĂ€ng pĂ”nevamaks. Temalt vĂ”idakse nĂ”uda rolli mĂ€ngimist ja kĂ€itumist viisil, mis on kooskĂ”las tegelasega, kelle eest ta vastutab. Seega on mĂ€ngu AI-d rohkem seotud mĂ€ngukujunduse ja jutuvestmisega ning neil peavad olema vajalikud tööriistad, et kontrollida oma kĂ€itumist, et saavutada eesmĂ€rk. MasinĂ”pe puhtal kujul selleks alati ei sobi, mis tĂ€hendab, et tuleb otsida midagi muud.
MasinÔppe praktilised probleemid
Need probleemid on kerkinud esile masinĂ”ppel pĂ”hineva tehisintellekti arendamisel , kus AI peaks kĂ€ituma nagu tavalised mĂ€ngijad â st olema sama paindlik ja leidlik.
Nagu Starcraft II, on ka Unleashed palju keerulisem kui Atari male ja Go. MĂ€ng on intuitiivne ja hĂ”lpsasti Ă”pitav, kuid selle tĂ”eliseks Ă”nnestumiseks on vaja mĂ”ningaid metahaldusoskusi. MĂ€ngija peab kogu mĂ€ngu jooksul ehitama labĂŒrinte, seadma vaenlastele koletisi ja mĂ”tlema lĂ€bi oma strateegia majanduses, rĂŒndes ja struktuuride kaitses. Selleks peab ta eelnevalt bluffima ja teiste kĂ€ike arvutama, samuti psĂŒhholoogilist metat juhtima â just see teeb pokkerist midagi enamat kui lihtsalt statistikamĂ€ng.

Ekraanipilt rakendusest Unleashed
Nendel eesmĂ€rkidel sobivaima arhitektuuri otsimisel kasutatakse selliseid tehnoloogiaid nagu ja sĂŒgav Ă”ppimine ning testiti, kuidas nad vaenlase tehisintellektina toores vormis toimiksid.
See oli kohutav.
Kiiresti sai selgeks, et Unleashedil oli vaja lahendada palju globaalseid probleeme, millega masinÔpet oli raske kohandada.
Ăks neist on tĂ”husa labĂŒrindi ehitamine. Nagu paljudes mĂ€ngudes, kus eesmĂ€rk on torni kaitsta, peavad mĂ€ngijad selle ĂŒmber ehitama labĂŒrindi, millest koletised lĂ€bi tungivad. Need tuleb omakorda likvideerida, kasutades kogu labĂŒrinti paigutatud relvi. Ideaalis peaks labĂŒrint olema vĂ”imalikult pikk, et koletistele piisavalt kahju teha ja nende tornini jĂ”udmist takistada. Koletised on mĂ”nede relvade suhtes haavatavamad kui teised, seega tuleks nad tĂ”husama toimimise huvides asetada labĂŒrinti kĂ”igist teistest ette. Unleashi eripĂ€ra seisneb selles, et ideaalset labĂŒrinti pole olemas: mĂ€ngus on nii palju koletisi, et ĂŒhel vĂ”i teisel viisil pÀÀseb ĂŒks neist kergesti lĂ€bi ĂŒkskĂ”ik millise labĂŒrindi osa. Iga labĂŒrint tuleb kohandada teiste mĂ€ngijate kĂ€ivitatud uute koletistega. Seega oli vaja mitte ainult Ă”petada tehisintellekti labĂŒrinti ehitama, vaid oli vaja Ă”petada looma tĂ”husaid labĂŒrinte erinevate stsenaariumide jaoks, mida vĂ”ib kohata nii mĂ€ngu varases kui ka hilises versioonis.
Tehisintellekt pidi ka Ă”ppima arvutama, millised koletised labĂŒrinti ilmuvad. See on labĂŒrindi ehitamisele vastupidine probleem. Nagu paljudes teistes mĂ€ngudes, ei piisa ka Unleashis lihtsalt armee moodustamisest ja vaenlase laagrisse saatmisest: peate ka luurama vaenlase kaitset ja struktureerima armee nii, et see tabaks vaenlase nĂ”rku kohti. vĂ”imalikult tĂ”husalt. Koletiste armee peab ĂŒksteisega suhtlema nii, et kĂ”ige edukamalt labĂŒrindist lĂ€bi murda. MĂ”nikord on vaja ka koletisi vabastada teatud jĂ€rjekorras, sĂ”ltuvalt nende funktsioonidest ja rollidest. See suurendab ka erinevate kombinatsioonide arvu.
LĂ”puks, kuna mĂ€ngija peab looma labĂŒrinte ja koguma koletiste armee, peab AI ka Ă”ppima, kuidas tasakaalustada rĂŒnnakut ja kaitset. Samuti tasub arvestada, et mida rohkem mĂ€ngija koletiste armeed ĂŒles ehitab ja labĂŒrinti, seda rohkem ressursse ta selleks vajab. SeetĂ”ttu on Ă”ige rĂŒndestrateegia ĂŒlimalt oluline nii mĂ€nguaegse majanduse kui ka selles vĂ”idu nimel. Ja selleks, et olla konkurentsivĂ”imeline, peab tehisintellekt suutma ressursse koondada, et luua vĂ”imas koletiste armee ilma labĂŒrindi vĂ”imsust kahjustamata. Koletistesse vĂ”imalikult palju investeerimine vĂ”ib olla kulutĂ”hus, kuid see suurendab ohtu, et vaenlase koletised vĂ”tavad labĂŒrindi ĂŒle. Kui loodate labĂŒrindi kaitse tugevdamisele, vĂ”ib see teie majandust halvata. Ăkski neist stsenaariumidest ei vii vĂ”iduni. Seega osutub Unleashedi optimeerimise probleem suuremaks kui male vĂ”i Starcrafti puhul ning sisaldab vajadust midagi ohverdada ja oma kasu mitu sammu ette arvutada.
Tehisintellekti treenides ilmnevad paljud varem tĂ€helepanuta jÀÀnud probleemid. Seega jĂ”udis tehisintellekt algul sageli teatud arengutasemele, kus ta hakkas mĂ”istma mĂ€ngu teatud aspekte - nĂ€iteks millised relvad labĂŒrindis on tĂ”husad teatud tĂŒĂŒpi koletiste vastu vĂ”i millised koletised on kĂ”ige paremad. labĂŒrindi teatud lĂ”ikude lĂ€bimine. Kuid Ă”ppimine oli aeglane ja viis monotoonsete strateegiate vĂ€ljatöötamiseni.
Vajadus paralleelsete lÀhenemisviiside jÀrele
Kuigi masinĂ”ppel pĂ”hinev tehisintellektiĂ”pe on olnud aeglane ja mitte eriti edukas, on testimise ja arendamise teistes etappides muutunud vajalikuks parem tehisintellekt ja tugevam konkureeriv AI. Nende rakendamiseks kasutati Utility arhitektuuri, millega saab luua spetsiaalset AI-d mĂ€ngu kvaliteedi testimiseks ja kontrollimiseks, mĂ€ngusiseseid teste ja relvade ja koletiste tasakaalustamist ning konkreetsete labĂŒrintide ja koletiste loomist. Kuid Unleashi arendamise kĂ€igus lihvisid loojad ise oma oskusi selle valmimisel ning otsustasid saadud teadmisi seejĂ€rel kasutada keerukama Utility AI loomisel. Nii sai selgeks, et paljusid masinĂ”ppel pĂ”hinevates tehisintellektisĂŒsteemides tekkivaid probleeme saab hĂ”lpsasti lahendada Utility sĂŒsteemide abil, mis kasutavad neisse pĂ”imitud teadmisi ja vastupidi.
NĂ€iteks on parem ehitada tĂ”husamaid labĂŒrindid Utility AI abil, tuginedes sisetestide tulemustest koostatud teadmistebaasidele. LabĂŒrindi konstrueerimise ja sinna relvade paigutamise algoritmi saab lihtsalt kirjeldada ja programmeerida nii, et elaval mĂ€ngijal oleks lihtsam torni konkreetsete koletiste eest kaitsta. Kuid vaenlase baasi teadmiste pĂ”hjal koletiste armee loomine oli sellise AI jaoks keeruline ĂŒlesanne, kuna erinevate tingimuste ja kombinatsioonide arv, millega tuleb arvestada, oli hĂ€mmastav. Sellise AI-arhitektuuri puhul vĂ”taks sobivate koletiste komplektide leidmine lĂ”putult palju aega. Siis, arvestades antud piiranguid, oleks sĂŒvaĂ”pe selle probleemi jaoks ideaalne lahendus.
HĂŒbriid-AI loomine
Seega otsustati need kaks lĂ€henemisviisi ĂŒhendada ja luua nii masinĂ”ppel ja utiliidil pĂ”hinev tehisintellekti hĂŒbriidsĂŒsteem. Idee seisnes selles, et seal, kus oli vaja töödelda tohutul hulgal kombinatsioone ja mĂ€nguolekuid vĂ”i kus oli vaja midagi Ă”petada, kasutati masinĂ”pet. Muude ĂŒlesannete puhul, kus on parem tugineda arendajate isiklikule kogemusele, kasutati utiliitsĂŒsteeme. Selle lĂ€henemisviisi eeliseks on see, et vajadusel saab tehisintellekti kĂ€itumist paremini kontrollida, et tagada selle tĂ€psem jĂ€rgimine etteantud eesmĂ€rgil. NĂ€iteks saate Utility AI-ga rĂŒnde ja kaitse tasakaalustamiseks kasutada erinevat agressioonitaset vĂ”i luua erinevatele tehisintellektidele erinevaid labĂŒrindi konfiguratsioone, et luua neile individuaalseid mĂ€ngustiile. Samuti saate mÀÀrata nĂ€rvivĂ”rkudele teatud vÀÀrtussĂŒsteemid, et kujundada Ă”hu- vĂ”i maakoletiste vĂ€rbamisel erinevaid eelistusi ja seelĂ€bi lisada individuaalsele tehisintellektile individuaalsust. Disainiotsuste elluviimiseks on palju rohkem vĂ”imalusi, mis kĂ”ik tĂ”stavad esile teatud tĂŒĂŒpi tehisintellekti arhitektuuri tugevad kĂŒljed.
HĂŒbriidne lĂ€henemine vastas ka teisele kĂŒsimusele, millega meeskond silmitsi seisis Unleashi tehisintellekti vĂ€ljatöötamisel: kas peaksime kasutama ĂŒht masinĂ”ppel pĂ”hinevat globaalset sĂŒgavat nĂ€rvivĂ”rku, et vĂ”tta arvesse kĂ”iki sisendeid ja vĂ€ljundeid vĂ”i on parem AI kujundada hierarhilise struktuuriga?

Unleashis kasutatakse kahte arhitektuuri: vasakul on suur sĂŒgav nĂ€rvivĂ”rk oma ĂŒhtse arhitektuuriga, paremal on hierarhiline sĂŒsteem, milles igal vĂ”rgul on oma ĂŒlesanne
Ja ometi tahaksin luua ĂŒldise lĂ€henemise tehisintellekti sĂŒsteemile, mille arhitektuuri arendajad oma kogemusi ei kasutaks. Mida rohkem aga mĂ€ngu sissekandeid tehti, seda rohkem nĂ€rvivĂ”rk kasvas. Samal ajal oli vĂ”imatu eraldada tehisintellekti vĂ€ljaĂ”pet ja Ă”petada neile ĂŒht: kas kaitset vĂ”i rĂŒnnakut. Ja oli mure, et ĂŒldisem lĂ€henemine toob kaasa arvutuste arvu olulise suurenemise.
Siin tekkiski idee luua hierarhiline arhitektuur, kus iga konkreetset ĂŒlesannet tĂ€idaks spetsiaalne nĂ€rvivĂ”rk. Selle idee kohaselt tuleb tehisintellektil esmalt otsustada ressursside jaotamine rĂŒnnakuks (koletiste armee suurendamine) ja kaitseks (labĂŒrindi ehitamine). Kui ta seda teeb, liigub ta vastavalt oma valikule jĂ€rgmisele kihile ja pÀÀseb juurde mĂ€ngu oleku vajalikule osale, misjĂ€rel teeb ta ĂŒksikasjalikud otsused, milliseid koletisi valida ja milliseid relvi labĂŒrinti paigaldada.
JÀreldus ja jÀrgmised sammud
Utility hĂŒbriidses lĂ€henemisviisis sarnaneb tehisintellekt koos masinĂ”ppepĂ”histe vĂ”rkudega hierarhilise arhitektuuriga. Ja see omakorda sarnaneb bioloogilise ajuga, milles erinevad nĂ€rvikeskused vastutavad igaĂŒks oma ĂŒlesande eest.
Praegu on Unleashi vaenlase AI-st vĂ€ga raske vĂ”ita: nad suudavad kohaneda iga mĂ€nguolukorraga, kuid samal ajal saavad arendajad oma seadeid oma Ă€ranĂ€gemise jĂ€rgi muuta. Artikli autori sĂ”nul peaks aja jooksul hĂŒbriidkĂ€sitlus ĂŒha laiemalt levima ja ilmuma ka paljudes teistes mĂ€ngudes. VĂ”ib-olla on kunagi vĂ”imalik masinĂ”ppel pĂ”hinevat tehisintellekti mĂ€ngus puhtal kujul kasutusele vĂ”tta. Kuid ilmselgelt vĂ”tab see veel aega. Praegu on eesmĂ€rk leida arhitektuur, mis kohaneks eesseisvate ĂŒlesannetega ja leida nende lahendamiseks optimaalsed viisid.
Allikas: www.habr.com
