Salvo · Chakula cha Mawazo
Chini ya kitendo rahisi cha kubofya seli kuna injini ya kideterministiki (deterministic) inayoiga vikosi vilivyofichwa, hoja zinazopimwa kwa uwezekano, na pambano la kitamaduni la kuficha na kugundua. 3
Imeandikwa na kuhaririwa kwa Kiingereza. Toleo hili la Kiswahili limetayarishwa kwa tafsiri ya mashine; pale usahihi unapohitajika, asili ya Kiingereza ndiyo yenye mamlaka. Soma asili kwa Kiingereza →
Katikati ya mchezo kuna jozi ya vitu vya Board, kimoja kikiwakilisha nafasi yako iliyofichwa na kingine kikiwakilisha nafasi iliyofichwa ya mpinzani. Kila bodi hubeba kikosi cha meli zilizopangwa kwenye gridi yenye mistari, lakini mahali zilipo hubaki pamefichwa kwa upande mwingine. Wewe hufyatua kwenye gridi ya adui huku AI ikifyatua kwenye yako, na kila risasi ama hupiga meli au huangukia kwenye maji matupu. Usanifu huu wa bodi mbili huweka msingi wa kutolingana kwa taarifa katika pambano hili la vikosi vilivyofichwa: kila upande huijua bodi yake mwenyewe kikamilifu, lakini unaweza tu kukisia mpangilio wa upande mwingine kutokana na muundo wa risasi zake. 3
Ulinganifu wa mpangilio huu ndio unaoupa mchezo tabia yake. Hakuna upande unaoona meli za mwenzake moja kwa moja. Badala yake, pande zote mbili lazima zijenge picha ya kiakili ya gridi iliyofichwa kutokana na mrejesho mchache wa mapigo (hit) na makosa (miss). Kila risasi huwa data, kila pigo hupunguza uwezekano, na kila kukosa huondoa eneo kwenye mazingatio. Mratibu wa mchezo wa injini husimamia bodi hizi mbili, akihakikisha kwamba risasi zinarekodiwa, kwamba mapigo yanahusishwa ipasavyo, na kwamba mchezo huisha tu wakati kikosi chote cha upande mmoja kimezamishwa. 3
Kabla mchezo haujaanza, injini huita randomFleet ili kupanga meli za AI kwa namna ya nasibu. Unasibu huu si holela; una mbegu, kumaanisha kwamba thamani fulani ya mbegu daima itatoa mpangilio uleule. Udeterministiki huu wenye mbegu ni chaguo la usanifu linaloufanya mchezo uweze kurudiwa na kujaribiwa. Ukiendesha mchezo kwa mbegu ileile, utapata upangaji uleule wa meli, mfuatano uleule wa maamuzi ya AI, na matokeo yaleyale. Sifa hii ina thamani kwa utatuzi wa hitilafu na kwa kuelewa jinsi AI inavyotenda katika hali tofauti. 3
Kikosi kikishapangwa, sheria zinazoongoza mchezo ni thabiti na za kideterministiki. AI haitupi dadu, na injini haiingizi unasibu katikati ya mchezo. Kila uamuzi AI inaoufanya hufuata kutoka kwenye modeli ya uwezekano inayoitunza, na kila risasi unayofyatua hurekodiwa na kuchambuliwa. Chanzo pekee cha tofauti ni mbegu inayoamua upangaji wa awali wa kikosi. Hii ina maana kwamba mchezo hatimaye ni fumbo: ukizingatia vikwazo vya sheria na mrejesho wa risasi, je, unaweza kubaini mpangilio uliofichwa kabla AI haijabaini wako? 3
Unapofyatua risasi, injini huirekodi kwenye bodi lengwa na kukagua kama risasi imepata au imekosa. Hili hufanywa kupitia kitendakazi fire, ambacho husasisha hali ya bodi na kuamua matokeo. Pigo huweka alama kwenye seli kuwa inakaliwa na meli, huku kukosa kukiiweka alama kuwa maji matupu. Kisha injini hukagua kama meli iliyo na seli hiyo imezamishwa kabisa kwa kuchunguza seli zake zote. Ikiwa seli zote za meli zimepigwa, meli imezama, na taarifa hii huwasilishwa kwa pande zote mbili. 3
Sharti la ushindi ni rahisi lakini lenye matokeo makubwa. Upande hushinda wakati meli zote za mpinzani zimezamishwa. Hili hukaguliwa kupitia kitendakazi allSunk, ambacho huchunguza kama kila meli kwenye bodi ya mpinzani imepigwa kabisa. Mchezo huisha mara moja sharti hili linapotimizwa. Asili hii ya yote-au-sifuri ya sharti la ushindi ina maana kwamba kila risasi ni muhimu, na kwamba shinikizo la kuzamisha meli haraka husawazishwa dhidi ya haja ya kuepuka kufichua mpangilio wako mwenyewe. 3
Mpinzani katika mchezo huu si mfyatuaji wa nasibu tu. Ni AI inayolenga kwa uwezekano, inayopima jinsi kila seli iliyofichwa inavyoweza kuwa na meli. AI hutunza modeli ya uwezekano ya gridi ya adui, ikiisasisha kadiri risasi zinavyofyatuliwa na mrejesho unavyopokelewa. Seli zisizoweza kuwa na meli kutokana na vikwazo vya upangaji wa meli zilizosalia huwekwa alama kuwa zisizowezekana, huku seli ambazo lazima ziwe na meli ili kutosheleza upangaji uliosalia zikiwekwa alama kuwa zinazowezekana. Kisha AI hufyatua kwenye seli yenye uwezekano wa juu zaidi, ikigeuza kubahatisha kwa upofu kuwa utafutaji wenye taarifa. 3
Modeli hii ya uwezekano imejengwa juu ya hisabati ya uwezekano, ambapo matukio huelezwa kwa namba kati ya sifuri na moja 2. Uwezekano wa sifuri humaanisha tukio haliwezi kutokea, huku uwezekano wa moja ukimaanisha lazima litokee. AI hutumia maelezo haya ya kinamba kuongoza risasi zake, ikipendelea seli ambako uwezekano wa kupata meli ni wa juu zaidi. Mbinu hii ndiyo inayoitofautisha AI na mfyatuaji wa nasibu tupu na kuipa tabia yake bainifu ya uwindaji.
Tabia ya AI inaweza kuelezwa kwa awamu mbili: kuwinda (hunt) na kulenga (target). Katika awamu ya kuwinda, AI hutafuta meli kwa kufyatua kwenye seli ambako meli ambazo hazijagunduliwa zina uwezekano mkubwa zaidi wa kukaa. Huu ni utafutaji mpana unaolenga kupata mgusano wa kwanza na meli za adui. Pigo linaposajiliwa, AI huhamia awamu ya kulenga, ambapo hujikita kwenye seli jirani za pigo hilo ili kumaliza kuizamisha meli hiyo. Mbinu hii ya awamu mbili huakisi jinsi wachezaji wa kibinadamu wanavyoukabili mchezo: kwanza tafuta meli, kisha uzizamishe. 3
Mpito kati ya kuwinda na kulenga huamuliwa na kama risasi ya mwisho ilipata au ilikosa. Ikiwa risasi ya mwisho ilikosa, AI hurudi kwenye hali ya kuwinda na kutafuta seli zenye uwezekano wa juu zaidi. Ikiwa risasi ya mwisho ilipata, AI huingia kwenye hali ya kulenga na kufyatua kwenye seli jirani za pigo hilo. Sheria hii rahisi, ikiunganishwa na modeli ya uwezekano, huunda mkakati wenye mshikamano unaosawazisha uchunguzi na utumiaji. AI huchunguza gridi ili kupata meli na kutumia ujuzi wake wa pigo ili kuizamisha meli hiyo kwa ufanisi. 3
AI ina nguvu tatu za ugumu zinazorekebisha tabia yake. Nguvu hizi huathiri jinsi AI inavyopima uwezekano na kufanya maamuzi. Katika nguvu za chini, AI inaweza kufanya makosa zaidi au kuwa na ukali mdogo katika kulenga kwake. Katika nguvu za juu, AI ni thabiti zaidi katika hesabu zake za uwezekano na ni katili zaidi katika kulenga kwake. Aina hii mbalimbali ya nguvu huwaruhusu wachezaji kupata kiwango cha changamoto kinachowafaa, kuanzia mchezo wa kawaida hadi mashindano makali.
Utekelezaji halisi wa nguvu hizi upo katika kijenzi cha AI cha injini, yaani klasi ya SalvoAI. Viwango vya ugumu hubadilisha jinsi AI inavyotafsiri modeli ya uwezekano na jinsi inavyosawazisha uchunguzi dhidi ya utumiaji. Usanifu huu huiruhusu AI kuwa rahisi kufikiwa na wachezaji wa kawaida na yenye changamoto kwa wenye uzoefu, bila kubadilisha mbinu za msingi za mchezo. 3
Juu ya sheria za kitamaduni kuna mabadiliko: mlio wa sonar. Uwezo huu huruhusu upande kufichua usomaji wa 3×3 wa gridi ya adui kwa gharama ya risasi ya zamu hiyo. Mlio wa sonar hufichua kama kila seli katika eneo la 3×3 ina meli au ni maji matupu. Taarifa hii inaweza kuwa ya thamani kubwa kwa kubana mahali meli zilipo, lakini huja kwa bei ya kupoteza risasi yako ya zamu hiyo. 3
Uamuzi wa kutumia mlio wa sonar ni wa kimkakati. Ni lini taarifa inastahili gharama yake? Ikiwa unapambana kupata meli, mlio wa sonar unaweza kutoa mafanikio unayoyahitaji. Ikiwa uko karibu kuzamisha meli, gharama ya kupoteza risasi yako inaweza kuwa kubwa mno. Mlio wa sonar huongeza tabaka la usimamizi wa rasilimali kwenye mchezo, ukiwalazimisha wachezaji kupima thamani ya taarifa dhidi ya thamani ya kitendo. 3
Mabadiliko mengine ya sheria za kitamaduni ni uhamishaji wa mara moja kwa mchezo. Kila upande unaweza kuhamisha moja ya meli zake mara moja wakati wa mchezo. Kukwepa huku kwa kujilinda hakugharimu zamu, kumaanisha unaweza kuhamisha na bado ukafyatua risasi katika zamu yako. Uwezo wa uhamishaji hukuruhusu kuiondoa meli hatarini inapokuwa chini ya tishio, au kuihamishia mahali panapoweza kulindwa zaidi. 3
Uwezo wa uhamishaji ni chaguo la mara moja tu, jambo linaloufanya kuwa wa thamani. Unapaswa kuutumia lini? Ikiwa meli inakaribia kuzamishwa, kuhamisha kunaweza kuiokoa. Ikiwa una uhakika na nafasi yako ya sasa, kuhamisha kunaweza kuwa upotevu. Uamuzi wa kuhamisha ni wa kimkakati unaohitaji kuzingatia kwa makini hali ya sasa ya mchezo na vitendo vinavyowezekana vya mpinzani wako. 3
Msingi wa mbinu hizi zote ni sheria ya kitamaduni ya risasi moja kwa zamu. Kila upande hufyatua risasi moja haswa kwa zamu, wakipokezana. Sheria hii huweka mdundo wa mchezo na kuhakikisha pande zote mbili zina fursa sawa ya kutenda. Sheria ya risasi-moja-kwa-zamu ndiyo inayoufanya mchezo kuwa pambano la akili badala ya mbio za kasi. 3
Sheria hii ya kitamaduni ndiyo inayouweka mchezo katika mapokeo ya Battleship, mchezo wa kubahatisha wa aina ya mkakati kwa wachezaji wawili unaochezwa kwenye gridi zenye mistari ambapo kikosi cha kila mchezaji kimefichwa kwa mpinzani 1. Sheria ya risasi-moja-kwa-zamu ndiyo inayoufanya mchezo kuwa jaribio la ubainishaji na uwezekano badala ya jaribio la mwitikio wa haraka. Ni sheria rahisi, lakini ni sheria inayoupa mchezo tabia yake na changamoto yake.
Injini ni safi na ya kideterministiki yenye mbegu, ikiendeshwa na jenereta yake yenyewe ya namba za nasibu yenye mbegu. Hii ina maana kwamba kila kipengele cha mchezo huamuliwa na thamani ya mbegu inayotolewa mwanzoni. Ikipewa mbegu ileile, mchezo daima utatoa mfuatano uleule wa matukio, kuanzia upangaji wa awali wa kikosi hadi risasi ya mwisho. Sifa hii huufanya mchezo uweze kujaribiwa, kwani hali ileile inaweza kurudiwa na kuchunguzwa. 3
Udeterministiki wenye mbegu pia una athari kwa kuuelewa mchezo. Ukitaka kuelewa jinsi AI inavyotenda katika hali fulani, unaweza kuendesha mchezo kwa mbegu maalum na kutazama matokeo. Ukitaka kujaribu mkakati fulani, unaweza kuendesha mchezo mara nyingi kwa mbegu ileile na kuona jinsi unavyofanya. Urudiaji huu ni kipengele cha thamani kwa wachezaji na pia watengenezaji.
Board with a hidden fleet, the human fires at the enemy fleet and the AI at the human's, one shot per turn (classic rules), fire records a hit or miss, and a side wins when the opponent's ships are all sunk (allSunk); the opponent is a probability-targeting SalvoAI with three difficulty strengths that "hunts" for ships by favouring the cells where an undiscovered ship is most likely to sit and then "targets" the neighbours of a hit to finish it; two twists sit on the classic rules, a sonar ping reveals a 3×3 ship/empty readout but costs that turn's shot, and each side may reposition one of its own ships once per game (a dodge that does not cost the turn); and the engine is pure and seeded-deterministic.