Kai šachmatų pasaulio čempionas Garis Kasparovas pralošė žaisdamas šachmatais „Deep Blue“ kompiuteriui 1997-aisias, IBM pažymėjo svarbų dirbtinio intelekto raidos etapą. Dabar „Google“ taip pat užims svarbią vietą istorijos vadovėliuose pranešusi, kad jos bendrovės „DeepMind“ įranga nugalėjo Europos čempioną Azijos žaidime „Go“, skelbiama „Nature“ publikuotame tyrime.
„Go“ žaidžiamas ant lentos juodos ir baltos spalvos figūromis, žaidimo tikslas – pašalinti kuo daugiau oponento figūrų ir atitverti kuo didesnį plotą, kuris žymi taškų skaičių. Jis sudėtingesnis, nei, pavyzdžiui, šachmatai.
„DeepMind“ programinė įranga „AlphaGo“ penkis kartus iš eilės nugalėjo tris kartus Europos „Go“ čempioną Fan Hui, rašo „The Guardian“.
Tai pirmoji tokia kompiuterio programos pergalė ir ji įvyko dešimtmečiu anksčiau, nei tikėtasi – vienas ankstesnės „Go“ dirbtinio intelekto sistemos kūrėjų Rémi Coulomas 2014 m. sakė, kad prireiks dar bent dešimtmečio, kol programa šiame žaidime nugalės aukšto lygio tituluotą profesionalą.
„AlphaGo“ tikslą pasiekė visiškai kitokiu būdu nei ankstesnė programinė įranga.
Kai programa mokoma žaisti žaidimą, paprasčiausias būdas yra jai liepti įvertinti visus įmanomus žaidimo ėjimus nuo geriausio iki blogiausio ir visuomet pasirinkti geriausią.
Tokia strategija puikiai veikia žaidžiant paprastus žaidimus, kaip „kryžiukai – nuliukai“, ir kompiuteris žaisdamas prieš žmogų „kryžiukus nuliukus“ visuomet gali pasiekti bent jau lygiąsias. Tačiau žaidžiant sudėtingesnius žaidimus, kaip šachmatai, ši strategija nėra tokia efektyvi.
Žaidžiant šachmatus vieno ėjimo metu yra maždaug 35 galimi figūrų žingsnių variantai, o vidutinis žaidimas tęsiasi 80 ėjimų. Suskaičiuoti visų įmanomų ėjimų greitai neįmanoma, todėl kompiuteriui reikėjo daug laiko, kol IBM komanda rado būdą, kaip sužaisti su G. Kasparovu.
„Go“ žaidime yra dar daugiau ėjimų galimybių. Žaidimo taisyklės nėra sudėtingos, tačiau išmokti žaisti gerai – sunku.
Iš esmės visą „Go “žaidimą, kuris žaidžiamas 19x19 langelių lentoje, nusako vos dvi pagrindinės taisyklės.
Šachmatuose kaskart egzistuoja vidutiniškai 35 galimi ėjimai figūromis, o „Go“ jų yra maždaug 250. Šachmatuose vieno žaidimo metu padaroma maždaug 80 ėjimų, o „Go“ – 150. Jei „Google“ būtų mėginusi žaisti vadovaudamasi kryžiukų ir nuliukų metodu, reikėtų įvertinti kelis kartus daugiau nei sikstilijoną galimų pozicijų.
Be to, žiūrint į „Go“ žaidimo lentą, sunku matematiškai numatyti, kas laimi – šachmatuose žmogus netekę pagrindinių figūrų laikomas pralaiminčiu, o „Go“ figūros ne taip dažnai nuimamos nuo stalo.
Taigi „AlphaGo“ kūrėjai pasirinko kitokią strategiją – programinė įranga stengėsi sužaisti žaidimą virtualiai daugybę kartų. Programoje yra du neuroniniai tinklai – programinės įrangos, kuri mėgdžioja žmogaus smegenų struktūrą, kanalai.
Vienas jų – „strategijos tinklas“ (policy network) buvo išmokytas stebėti milijonus į archyvą įdėtų „Go“ lentų ėjimų. Naudodamas šiuos stebėjimus kompiuteris sukūrė spėjamąjį modelį ir 57 proc. tikslumu sugebėjo numatyti profesionalo žaidėjo ėjimą (anksčiau ši galimybė siekė 44,4 proc.).
Vėliau šis „stebėjmo mokymasis“ buvo papildytas „sustiprinimo mokymusi“, kurio metu tinklas žaidė prieš save – kasdien po milijoną žaidimų, ir mokėsi iš klaidų ir pergalių.
„Strategijos tinklas“ galėjo nuspėti ėjimus, tačiau sistemai reikėjo ir antrojo filtro, kuris padėtų išsiaiškinti geriausius ėjimus. Todėl į programą buvo integruotas „vertės tinklas“ („value network“) , kuris nuspėja laimintį bet kurioje žaidimo stadijoje.
Dabar „DeepMind“ ruošiasi kitam iššūkiui – nugalėti „Go“ pasaulio čempioną Lee Se-dol.