Talaan ng nilalaman[Tago][Ipakita]
Ang mga video game ay patuloy na nagbibigay ng hamon sa bilyun-bilyong manlalaro sa buong mundo. Maaaring hindi mo pa ito alam, ngunit ang mga algorithm sa pag-aaral ng machine ay nagsimula na ring humarap sa hamon.
Sa kasalukuyan ay may malaking halaga ng pananaliksik sa larangan ng AI upang makita kung ang mga pamamaraan ng machine learning ay maaaring ilapat sa mga video game. Ang malaking pag-unlad sa larangang ito ay nagpapakita na machine learning ang mga ahente ay maaaring gamitin upang tularan o palitan ang tao na manlalaro.
Ano ang ibig sabihin nito para sa kinabukasan ng video laro?
Katuwaan lang ba ang mga proyektong ito, o may mas malalim na dahilan kung bakit maraming mananaliksik ang tumutuon sa mga laro?
Ang artikulong ito ay maikling tuklasin ang kasaysayan ng AI sa mga video game. Pagkatapos, bibigyan ka namin ng mabilis na pangkalahatang-ideya ng ilang mga diskarte sa machine learning na magagamit namin upang matutunan kung paano talunin ang mga laro. Pagkatapos ay titingnan natin ang ilang matagumpay na aplikasyon ng neural nets upang matuto at makabisado ng mga partikular na video game.
Maikling Kasaysayan ng AI sa Gaming
Bago natin talakayin kung bakit naging perpektong algorithm ang mga neural net upang malutas ang mga video game, tingnan natin sandali kung paano ginamit ng mga computer scientist ang mga video game upang isulong ang kanilang pananaliksik sa AI.
Maaari kang magtaltalan na, mula sa pagsisimula nito, ang mga video game ay naging isang mainit na lugar ng pananaliksik para sa mga mananaliksik na interesado sa AI.
Bagama't hindi lamang isang video game ang pinagmulan, ang chess ay naging isang malaking pokus sa mga unang araw ng AI. Noong 1951, sumulat si Dr. Dietrich Prinz ng isang chess-playing program gamit ang Ferranti Mark 1 digital computer. Ito ay pabalik sa panahon kung kailan ang mga malalaking computer na ito ay kailangang magbasa ng mga programa mula sa papel na tape.
Ang programa mismo ay hindi isang kumpletong chess AI. Dahil sa mga limitasyon ng computer, makakagawa lang si Prinz ng isang program na lumutas ng mga problema sa mate-in-two chess. Sa karaniwan, ang programa ay tumagal ng 15-20 minuto upang kalkulahin ang bawat posibleng galaw para sa mga manlalarong Puti at Itim.
Magtrabaho sa pagpapabuti ng chess at checkers Ang AI ay patuloy na bumuti sa mga dekada. Ang pag-unlad ay umabot sa kasukdulan nito noong 1997 nang talunin ng Deep Blue ng IBM ang Russian chess grandmaster na si Garry Kasparov sa isang pares ng anim na larong laban. Sa panahon ngayon, kayang talunin ng mga chess engine na mahahanap mo sa iyong mobile phone ang Deep Blue.
Nagsimulang sumikat ang mga kalaban ng AI sa panahon ng ginintuang panahon ng mga video arcade game. Ang 1978's Space Invaders at 1980s Pac-Man ay ilan sa mga pioneer ng industriya sa paglikha ng AI na sapat na kayang hamunin kahit ang pinakabeterano ng mga arcade gamer.
Ang Pac-Man, sa partikular, ay isang tanyag na laro para sa mga mananaliksik ng AI upang mag-eksperimento. Iba-iba kumpetisyon para kay Ms. Pac-Man ay inayos upang matukoy kung aling koponan ang maaaring makabuo ng pinakamahusay na AI upang talunin ang laro.
Ang AI at heuristic algorithm ng laro ay patuloy na umusbong habang ang pangangailangan para sa mas matalinong mga kalaban ay lumitaw. Halimbawa, sumikat ang combat AI dahil naging mas mainstream ang mga genre gaya ng first-person shooter.
Machine Learning sa Mga Video Game
Habang mabilis na sumikat ang mga diskarte sa machine learning, sinubukan ng iba't ibang proyekto sa pananaliksik na gamitin ang mga bagong diskarteng ito para maglaro ng mga video game.
Ang mga laro tulad ng Dota 2, StarCraft, at Doom ay maaaring gumanap bilang mga problema para sa mga ito algorithm ng pag-aaral ng machine upang malutas. Mga algorithm ng malalim na pag-aaral, sa partikular, ay nakamit at nalampasan pa ang pagganap sa antas ng tao.
Ang Kapaligiran sa Pag-aaral ng Arcade o ALE ay nagbigay sa mga mananaliksik ng isang interface para sa higit sa isang daang Atari 2600 laro. Ang open-source na platform ay nagbigay-daan sa mga mananaliksik na i-benchmark ang pagganap ng mga diskarte sa machine learning sa mga klasikong Atari video game. Nag-publish pa ang Google ng sarili nilang mga ito papel gamit ang pitong laro mula sa ALE
Samantala, ang mga proyekto tulad ng VizDoom nagbigay ng pagkakataon sa AI researchers na sanayin ang mga machine learning algorithm para maglaro ng 3D first-person shooter.
Paano Ito Gumagana: Ilang Pangunahing Konsepto
Mga Neural Network
Karamihan sa mga diskarte sa paglutas ng mga video game na may machine learning ay nagsasangkot ng isang uri ng algorithm na kilala bilang isang neural network.
Maaari mong isipin ang isang neural net bilang isang programa na sumusubok na gayahin kung paano maaaring gumana ang isang utak. Katulad ng kung paano binubuo ang ating utak ng mga neuron na nagpapadala ng signal, ang neural net ay naglalaman din ng mga artipisyal na neuron.
Ang mga artipisyal na neuron na ito ay naglilipat din ng mga signal sa isa't isa, na ang bawat signal ay isang aktwal na numero. Ang neural net ay naglalaman ng maraming layer sa pagitan ng input at output layer, na tinatawag na deep neural network.
Pag-aaral ng pagpapalakas
Ang isa pang karaniwang machine learning technique na nauugnay sa pag-aaral ng mga video game ay ang ideya ng reinforcement learning.
Ang pamamaraan na ito ay ang proseso ng pagsasanay sa isang ahente gamit ang mga gantimpala o parusa. Sa pamamaraang ito, ang ahente ay dapat na makabuo ng solusyon sa isang problema sa pamamagitan ng pagsubok at pagkakamali.
Sabihin nating gusto namin ng AI na malaman kung paano laruin ang larong Snake. Ang layunin ng laro ay simple: makakuha ng maraming puntos hangga't maaari sa pamamagitan ng pagkonsumo ng mga item at pag-iwas sa iyong lumalaking buntot.
Sa pamamagitan ng reinforcement learning, maaari nating tukuyin ang isang reward function R. Ang function ay nagdaragdag ng mga puntos kapag ang isang Snake ay kumonsumo ng isang item at nagbabawas ng mga puntos kapag ang Snake ay tumama sa isang balakid. Dahil sa kasalukuyang kapaligiran at isang hanay ng mga posibleng aksyon, susubukan ng aming modelo sa pag-aaral ng reinforcement na kalkulahin ang pinakamainam na 'patakaran' na nagma-maximize sa aming function ng reward.
Neuroevolution
Pananatili sa tema ng pagiging inspirasyon ng kalikasan, ang mga mananaliksik ay nakahanap din ng tagumpay sa paglalapat ng ML sa mga video game sa pamamagitan ng isang pamamaraan na kilala bilang neuroevolution.
Sa halip na gamitin gradient descent para i-update ang mga neuron sa isang network, maaari tayong gumamit ng mga evolutionary algorithm para makamit ang mas magagandang resulta.
Ang mga evolutionary algorithm ay karaniwang nagsisimula sa pamamagitan ng pagbuo ng isang paunang populasyon ng mga random na indibidwal. Pagkatapos ay sinusuri namin ang mga indibidwal na ito gamit ang ilang pamantayan. Ang pinakamahusay na mga indibidwal ay pinili bilang "mga magulang" at pinagsama-sama upang bumuo ng isang bagong henerasyon ng mga indibidwal. Papalitan ng mga indibidwal na ito ang mga hindi gaanong kasya sa populasyon.
Karaniwan ding ipinakikilala ng mga algorithm na ito ang ilang uri ng operasyon ng mutation sa panahon ng crossover o hakbang na "pag-aanak" upang mapanatili ang pagkakaiba-iba ng genetic.
Sample na Pananaliksik sa Machine Learning sa Mga Video Game
OpenAI Five
OpenAI Five ay isang computer program ng OpenAI na naglalayong maglaro ng DOTA 2, isang sikat na multiplayer mobile battle arena (MOBA) na laro.
Ginamit ng programa ang mga umiiral nang reinforcement learning techniques, na na-scale para matuto mula sa milyun-milyong frame kada segundo. Salamat sa isang distributed training system, ang OpenAI ay nakapaglalaro ng 180 taong halaga ng mga laro bawat araw.
Pagkatapos ng panahon ng pagsasanay, nagawa ng OpenAI Five na makamit ang pagganap sa antas ng eksperto at nagpakita ng pakikipagtulungan sa mga manlalaro ng tao. Noong 2019, nagawa ng OpenAI five talunin 99.4% ng mga manlalaro sa mga pampublikong laban.
Bakit nagpasya ang OpenAI sa larong ito? Ayon sa mga mananaliksik, ang DOTA 2 ay may mga kumplikadong mekanika na hindi naaabot ng umiiral na malalim reinforcement learning algorithm.
Super Mario Bros
Ang isa pang kawili-wiling aplikasyon ng neural nets sa mga video game ay ang paggamit ng neuroevolution upang maglaro ng mga platformer tulad ng Super Mario Bros.
Halimbawa, ito pagpasok ng hackathon nagsisimula sa walang kaalaman sa laro at dahan-dahang bumubuo ng pundasyon ng kung ano ang kinakailangan upang umunlad sa isang antas.
Ang self-evolving neural net ay tumatagal sa kasalukuyang estado ng laro bilang isang grid ng mga tile. Sa una, ang neural net ay walang pag-unawa sa kung ano ang ibig sabihin ng bawat tile, ngunit ang "hangin" na mga tile ay iba sa "mga tile sa lupa" at "mga tile ng kaaway."
Ang pagpapatupad ng proyekto ng hackathon ng isang neuroevolution ay gumamit ng NEAT genetic algorithm upang mag-breed ng iba't ibang neural nets nang pili.
Kahalagahan
Ngayong nakakita ka na ng ilang halimbawa ng mga neural net na naglalaro ng mga video game, maaaring nagtataka ka kung ano ang punto ng lahat ng ito.
Dahil ang mga video game ay nagsasangkot ng mga kumplikadong pakikipag-ugnayan sa pagitan ng mga ahente at kanilang mga kapaligiran, ito ang perpektong lugar ng pagsubok para sa paggawa ng AI. Ang mga virtual na kapaligiran ay ligtas at nakokontrol at nagbibigay ng walang katapusang supply ng data.
Ang pananaliksik na ginawa sa larangang ito ay nagbigay sa mga mananaliksik ng insight sa kung paano ma-optimize ang mga neural net upang matutunan kung paano lutasin ang mga problema sa totoong mundo.
Neural network ay inspirasyon ng kung paano gumagana ang mga utak sa natural na mundo. Sa pamamagitan ng pag-aaral kung paano kumikilos ang mga artificial neuron kapag natututo kung paano maglaro ng video game, maaari din tayong magkaroon ng insight sa kung paano ang utak ng tao gawa.
Konklusyon
Ang mga pagkakatulad sa pagitan ng mga neural network at ng utak ay humantong sa mga pananaw sa parehong larangan. Ang patuloy na pananaliksik sa kung paano malulutas ng mga neural net ang mga problema ay maaaring humantong sa mga mas advanced na anyo ng artificial intelligence.
Isipin ang paggamit ng AI na iniayon sa iyong mga detalye na maaaring maglaro ng buong video game bago mo ito bilhin upang ipaalam sa iyo kung sulit ang iyong oras. Ang mga kumpanya ba ng video game ay gagamit ng mga neural net para pahusayin ang disenyo ng laro, antas ng pag-tweak, at kahirapan ng kalaban?
Ano sa palagay mo ang mangyayari kapag ang mga neural net ay naging pinakahuling mga manlalaro?
Mag-iwan ng Sagot