„Connect Four“ AI – žaiskite prieš Minimax variklį
Žaiskite „Connect Four“ prieš tikrą AI priešininką, kuris tiria žaidimo medį negamax algoritmu su alfa‑beta kirtimu ir tikra centro įvertinimo euristika – pasirinkite spalvą bei sunkumą ir meskite diskus ant animuotos lentos.
🔒 Visiškai apdorojama jūsų naršyklėje – niekas, kurį čia įvedėte, niekada neįkeliama.
Rezultatas
Šis „Connect Four“ AI yra tikras paieška pagrįstas priešininkas, o ne scenarijais aprašytas ar atsitiktinis botas. Rinkitės žaisti raudonais arba geltonais (raudoni visada pradeda, kaip standartiniame „Connect Four“), išsirinkite sunkumą ir pradėkite mesti diskus spustelėdami norimą stulpelį arba rodyklę virš jo. Diskas animuotai nusileidžia iki galutinės eilutės, keturi iš eilės iškart aptinkami visomis kryptimis – horizontaliai, vertikaliai ir abiem įstrižainėmis – o trumpa būsenos eilutė visada praneša, kieno dabar eilė, arba paskelbia laimėtoją.
Variklis po AI yra negamax paieška su alfa‑beta kirtimu – ta pati algoritmų šeima, kurią naudoja klasikinių stalo žaidimų varikliai: jis tiria galimų būsimų ėjimų medį, verčia kiekvieną pusę maksimizuoti savo rezultatą, darydamas prielaidą, kad priešininkas taip pat žaidžia gerai, ir kerta šakas, kurios nebegali pakeisti rezultato, kai geresnė linija jau rasta. Kadangi „Connect Four“ turi tik septynis stulpelius rinktis, ši paieška gali greitai apžvelgti kelis ėjimus į priekį. Ji veikia su iteratyviu gilinimu – paieško vieną lygį, tada du, tris ir taip toliau – per trumpą vienam ėjimui skirtą laiko limitą (maždaug ketvirtis sekundės lengvame lygyje iki maždaug pusantros sekundės sunkiame), todėl naršyklė niekada neužstringa laukdama ėjimo.
Kai paieška negali pasiekti partijos pabaigos per savo gylį, ėjimai vertinami pagal tikrą pozicijos vertinimo euristiką, o ne spėjimą: kiekvienas galimas keturių iš eilės langas lentoje įvertinamas pagal tai, kiek kiekvienos spalvos diskų jame jau yra (tuščias langas nieko nevertas, langas tik su jūsų diskais vertingesnis kuo pilnesnis, abiejų spalvų užblokuotas langas nieko nevertas), o centrinių stulpelių langeliai sveria daugiau, nes dalyvauja daugiau galimų linijų. Lengvas ir Vidutinis lygiai prideda šiek tiek atsitiktinumo tarp beveik vienodai įvertintų ėjimų, kad AI atrodytų žmogiškesnis ir įveikiamas; Sunkus lygis visada atlieka stipriausią rastą ėjimą. Tai nuoširdžiai stiprus minimax priešininkas, sukurtas iš tikros paieškos ir vertinimo – ne pretenzija į nenugalimą ar tobulą žaidimą, ir ne kažko simuliacija: kiekvienas ėjimas yra tikra aukščiau pateikto algoritmo išvestis.