Кіріспе

Есептеу күрделілігі теориясында, жалпыланған география — PSPACE-толық проблема.

Кіріспе

География – балалар ойыны, онда ойыншылар әлемнің кез келген жеріндегі қалаларды атау кезекпен жүзеге асырылады. Әрбір таңдалған қаланың атауы, алдыңғы қала атын аяқтаған әріппен басталуы тиіс. Атауларды қайталауға болмайды. Ойын кездейсоқ таңдалған қаламен басталады және ойыншы жалғастыра алмай қалғанда аяқталады.

Графикалық модель

Ойынды көру үшін, түйіндері әлемнің әр қаласы болатын бағытталған граф құруға болады. Егер N2 қаласының атауы N1 қаласының атауының соңғы әрпімен басталатын болса ғана, N1 түйінінен N2 түйініне жебе қосылады. Яғни, егер ойын ережелері бойынша бірінші қала екінші қалаға алып келсе, біз бір қаладан екінші қалаға жебе саламыз. Бағытталған графтың әрбір кезектесетін қабырғасы екі ойыншылық ойын үшін әр ойыншыға сәйкес келеді. Жолды ұзарта алмайтын бірінші ойыншы ұтылады. Ойынның мысалы (Мичиган штатының бірнеше қалаларын қамтиды) төмендегі суретте көрсетілген. Жалпыланған география (GG) ойынында қала аттарының графы кез келген бағытталған графқа ауыстырылады. Төмендегі граф жалпыланған география ойынының мысалы болып табылады.

Ойын ойнау

P1-ді бірінші қозғалатын ойыншы, ал P2-ні екінші қозғалатын ойыншы деп анықтаймыз және түйіндерді N1-ден Nn-ге дейін атаймыз. Жоғарыдағы суретте P1 жеңіске жететін стратегиясы былай: N1 тек N2 және N3 түйіндеріне нұсқайды. Осылайша, P1-дің бірінші қозғалысы осы екі таңдаудың бірі болуы тиіс. P1 N2-ні таңдайды (егер P1 N3-ні таңса, онда P2 N9-ды таңдайды, себебі ол жалғыз нұсқа және P1 жеңіледі). Содан кейін P2 N4-ті таңдайды, өйткені ол қалған жалғыз таңдау. P1 енді N5-ті таңдайды, ал P2 кейін N3 немесе N7-ні таңдайды. P2-нің таңдауына қарамастан, P1 N9-ды таңдайды, ал P2-нің таңдауға мүмкіндігі қалмайды және ойынды ұтылады.

Есептеу күрделілігі

Жалпы географиялық ойында қай ойыншының жеңіс стратегиясы барын анықтау мәселесі PSPACE-толық.

Жалпыланған географиялық PSPACE-қатаң

Келесі дәлелдеу Дэвид Лихтенштейн мен Майкл Сипсерге тиесілі. GG-нің PSPACE қиындығын көрсету үшін біз FORMULA GAME мәселесін (PSPACE қиындығы белгілі) полиномиал уақытта (P) GG-ге келтіре аламыз. Айта кетейік, FORMULA GAME мәселесінің бір мысалы – сандық Буль формуласы φ = ∃x1 ∀x2 ∃x3 … Qxk(ψ), мұнда Q – ∃ немесе ∀. Ойын екі ойыншы, Pa және Pe, кезекпен xi-нің мәндерін таңдайды. Егер ψ формуласы дұрыс болса, Pe жеңеді, ал егер ψ жалған болса, Pa жеңеді. ψ формуласы конъюнктивті нормалық формада деп есептеледі. Бұл дәлелдеуде, қарапайымдық үшін, сандық тізімнің басталуы мен соңы экзистенциалдық квантормен (∃) басталады деп есептейміз. Кез келген өрнекті ψ-де пайда болмайтын фиктивті айнымалыларды қосу арқылы осы формаға келтіруге болады. Жоғарыда көрсетілгендей G графигін құрастыру арқылы FORMULA GAME мәселесінің кез келген мысалын Жалпыланған География мәселесінің мысалына келтіруге болады, онда P1 үшін оңтайлы стратегия Pe стратегиясына, ал P2 үшін оңтайлы стратегия Pa стратегиясына тең. Сол жақ тік тізбектегі түйіндер FORMULA GAME-дегі айнымалылардың мәндерін таңдау процедурасын имитациялауға арналған. Әрбір ромб тәрізді құрылым сандық айнымалыға сәйкес келеді. Ойыншылар әрбір тармақталу нүктесінде кезекпен жолды таңдайды. Бірінші квантор экзистенциалдық деп есептегендіктен, P1 бірінші болып x1 дұрыс болса сол жақ түйінді, ал x1 жалған болса оң жақ түйінді таңдайды. Әр ойыншы міндетті түрде өз кезегін жасағаннан кейін, P2 x2 үшін мәнді таңдайды. Бұл кезектесіп мән беру сол жақта жалғасады. Екі ойыншы да барлық ромбтардан өткеннен кейін, бұл тағы да P1 кезегі, өйткені соңғы квантор экзистенциалдық деп есептедік. P1 графиктің оң жағына қарай жол таңдаудан басқа амалсыз. Содан кейін P2 кезегі келеді. Ойын графиктің оң жағына жеткенде, ол формула ойынының соңына ұқсас. Еске салайық, формула ойынында Pe ψ дұрыс болса жеңеді, ал Pa ψ жалған болса жеңеді. Графиктің оң жағы P1 жеңсе, Pe жеңсе, P2 жеңсе, Pa жеңсе ғана P1 жеңетініне кепілдік береді. Біріншіден, P2 әрқашан Pa жеңгенде жеңетінін көрсетейік. Егер Pa жеңсе, ψ жалған. Егер ψ жалған болса, қанағаттандырмайтын клауза бар. P2 жеңіске жету үшін қанағаттандырмайтын клаузаны таңдайды. Содан кейін P1 кезегі келгенде ол P2 таңдаған клаузадағы литералды таңдауы керек. Клаузадағы барлық литералдар жалған болғандықтан, олар сол жақ тік тізбектегі бұрынғы түйіндерге қосылмайды. Бұл P2 сол тізбектегі ромбтағы сәйкес түйінге байланысты жалғауға және оны таңдауға мүмкіндік береді. Алайда, P1 енді көрші түйіндерді таңдай алмайды және жеңіледі. Енді Pe жеңгенде P1 әрқашан жеңетінін көрсетейік. Егер Pe жеңсе, ψ дұрыс. Егер ψ дұрыс болса, графтың оң жағындағы әрбір клаузада дұрыс литерал болады. P2 кез келген клаузаны таңдай алады. Содан кейін P1 дұрыс литералды таңдайды. Ол дұрыс болғандықтан, оның сол жақ тік тізбектегі көрші түйіні бұрыннан таңдалған, сондықтан P2 амалсыз және жеңіледі.

Жеткілікті жалпыланған география PSPACE-толық

Жалпыланған география ПСПАС-толық, тіпті жазық графтарда ойналғанда да. Бұл дәлел 3-теоремадан алынған.

Бағытталмаған география

Сондай-ақ, географиялық ойынды бағытталмаған графтарда ойнау мүмкіндігін қарастыруға болады (яғни, қабырғаларды екі бағытта да жүріп өтуге болады). Френкель, Шейнерман және Ульман бағытталмаған төбелік географияны полиномиалдық уақытта шешуге болатынын көрсетсе, бағытталмаған қабырғалық география PSPACE-толық екенін дәлелдейді, тіпті максималды дәрежесі 3-ке тең жазық графтар үшін де. Егер граф екі бөлікті болса, онда бағытталмаған қабырғалық география полиномиалдық уақытта шешіледі.

Салдарлар

GG PSPACE толық болғандықтан, P = PSPACE болмаса, GG-де ең жақсы ойнау үшін полиномиалдық уақытта жұмыс істейтін алгоритм жоқ. Дегенмен, басқа ойындардың күрделілігін дәлелдеу оңайырақ болмауы мүмкін, себебі кейбір ойындарда (шахмат сияқты) ойын позицияларының саны шектеулі – бұл оларды PSPACE толық проблемасына байланыстыруды қиындатады (немесе мүмкін емес етеді). Бұған қарамастан, кейбір ойындардың күрделілігін жалпылау арқылы талдауға болады (мысалы, n × n тақтаға көшу арқылы). GG толықтығының дәлелінен туындайтын қорытынды ретінде, жалпыланған Го үшін дәлелдерге сілтемелерді қараңыз.