Обобщенная география
В сложности вычислений теории обобщенная география является хорошо известной PSPACE-полной задачей.
Введение
[ редактировать ]География — детская игра , в которой игроки по очереди называют города из любой точки мира. Каждый выбранный город должен начинаться с той же буквы, которой заканчивалось предыдущее название города. Повтор не допускается. Игра начинается с произвольного стартового города и заканчивается, когда игрок проигрывает, потому что не может продолжить.
Графовая модель
[ редактировать ]Для визуализации игры можно построить ориентированный граф , узлами которого являются все города мира. Стрелка добавляется от узла N 1 к узлу N 2 тогда и только тогда, когда маркировка города N 2 начинается с буквы, оканчивающей имя узла маркировки города N 1 . Другими словами, мы рисуем стрелку от одного города к другому, если первый по правилам игры может вести ко второму. Каждое альтернативное ребро ориентированного графа соответствует каждому игроку (для игры с двумя игроками). Проигрывает тот игрок, который первым не сможет продлить путь. Иллюстрация игры (содержащая некоторые города Мичигана) показана на рисунке ниже.
В игре по обобщенной географии (ОГ) мы заменяем граф названий городов произвольным ориентированным графом. Следующий график представляет собой пример обобщенной географической игры.
Игра в игру
[ редактировать ]Мы определяем P 1 как игрока, двигающегося первым, и P 2 как игрока, двигающегося вторым, и называем узлы от N 1 до N n . приведенном выше рисунке P1 На следующую выигрышную стратегию: N1 указывает на узлы N2 имеет и N3 только . Таким образом, P1 первый ход игрока должен быть одним из этих двух вариантов. P1 поскольку выбирает N2 P1 (если выбирает и N3 , то P2 выберет это N9 , P1 единственный вариант, проиграет ) . Следующий P 2 выбирает N 4 , потому что это единственный оставшийся выбор. P 1 теперь выбирает N 5 , а P 2 впоследствии выбирает N 3 или N 7 . Независимо от игрока 2 не остается выбора , выбора , игрок 1 выбирает номер 9 , а у игрока 2 и он проигрывает игру.
Вычислительная сложность
[ редактировать ]Задача определения того, какой игрок имеет выигрышную стратегию в игре с обобщенной географией, является PSPACE-полной .
Обобщенная география находится в PSPACE.
[ редактировать ]Пусть GG знак равно { ⟨ G , б ⟩ | P 1 имеет выигрышную стратегию для игры в обобщенную географию, в которую играют на графе G, начиная с узла b }; Чтобы показать, что GG ∈ PSPACE , мы представляем рекурсивный алгоритм в полиномиальном пространстве, определяющий, какой игрок имеет выигрышную стратегию. Учитывая экземпляр GG, ⟨ G , n start ⟩, где G — ориентированный граф, а n start — назначенный начальный узел, алгоритм M действует следующим образом:
На M (⟨ G , n старт ⟩):
- Измерьте степень выхода узла n start . Если эта степень равна 0, то верните отклонить , поскольку для первого игрока нет доступных ходов.
- Создайте список всех узлов, достижимых из n, начиная с одного ребра: n 1 , n 2 , ..., n i .
- Удалите n start и все соединенные с ним ребра из G, чтобы образовать G 1 .
- Для каждого узла n j в списке n 1 , ..., n i вызовите M (⟨ G 1 , n j ⟩).
- Если все эти вызовы возвращают Accept , то независимо от того, какое решение примет P 1 , у P 2 есть стратегия победы, поэтому верните Reject . противном случае (если один из вызовов возвращает отказ ) P1 у есть выбор, который отклонит любые успешные стратегии для P2 В , поэтому верните Accept .
Алгоритм М явно решает ГГ. Это PSPACE , потому что единственное неочевидное полиномиальное рабочее пространство находится в стеке рекурсии. Пространство, занимаемое стеком рекурсии, является полиномиальным, поскольку каждый уровень рекурсии добавляет в стек один узел, и существует не более n уровней, где n — количество узлов в G . По сути, это эквивалентно поиску в глубину .
Обобщенная география сложна для PSPACE.
[ редактировать ]Следующее доказательство принадлежит Дэвиду Лихтенштейну и Майклу Сипсеру. [1]
Чтобы установить PSPACE-трудность GG, мы можем свести задачу FORMULA-GAME (которая, как известно, PSPACE-трудна ) к GG за полиномиальное время ( P ). Короче говоря, пример задачи ФОРМУЛА-ИГРА состоит из количественной булевой формулы φ = ∃ x 1 ∀ x 2 ∃ x 3 ... Qx k (ψ), где Q равно либо ∃, либо ∀. игре участвуют два игрока, и В Pe , которые поочередно выбирают значения для последовательных xi . Pa P e выигрывает игру, если формула ψ оказывается истинной , а P a выигрывает, если ψ оказывается ложной . Предполагается, что формула ψ находится в конъюнктивной нормальной форме .
В этом доказательстве мы предполагаем, что список кванторов начинается и заканчивается экзистенциальным квалификатором ∃ для простоты. Обратите внимание, что любое выражение можно преобразовать в эту форму, добавив фиктивные переменные, которых нет в ψ.
Построив граф G, подобный показанному выше, мы покажем, что любой пример ФОРМУЛЫ-ИГРЫ можно свести к экземпляру Обобщенной географии, где оптимальная стратегия для P 1 эквивалентна стратегии P e , а оптимальная стратегия для P 2 эквивалентен P a .
Левая вертикальная цепочка узлов предназначена для имитации процедуры выбора значений переменных в ФОРМУЛЕ-ИГРЕ. Каждая ромбовидная структура соответствует количественной переменной. Игроки по очереди выбирают пути в каждом узле ветвления. что первый квантор будет экзистенциальным, P 1 идет первым, выбирая левый узел, если x 1 истинно Поскольку мы предполагали , , и правый узел, x 1 ложно если . Затем каждый игрок должен совершить вынужденный ход, а затем P 2 выбирает значение x 2 . Эти чередующиеся задания продолжаются с левой стороны. После того, как оба игрока переберут все ромбы, снова наступает очередь P 1 , поскольку мы предположили, что последний квантор является экзистенциальным. У P 1 нет другого выбора, кроме как следовать по пути к правой части графа. Затем наступает P2 очередь игрока сделать ход.
Когда ход игры достигает правой части графика, это похоже на конец игры в игре по формуле. Напомним, что в игре по формуле P e выигрывает, если ψ истинно , а P a выигрывает, если ψ ложно . Правая часть графика гарантирует, что выиграет P1 тогда и только тогда, когда Pe выиграет , и что P2 когда выиграет тогда и только тогда, Pa выиграет .
Сначала мы покажем, что P 2 всегда выигрывает, когда выигрывает P a . Если P a выигрывает, ψ ложно . Если ψ ложно , существует неудовлетворительное условие. P 2 выберет неудовлетворительное предложение для победы. Затем, когда наступит очередь P1 , он должен выбрать литерал в предложении, P2 выбранном . Поскольку все литералы в предложении имеют значение false , они не соединяются с ранее посещенными узлами в левой вертикальной цепочке. Это позволяет P 2 проследить соединение с соответствующим узлом в ромбе левой цепи и выбрать его. Однако P1 . теперь не может выбрать ни один соседний узел и проигрывает
Теперь мы покажем, что P 1 всегда выигрывает, когда выигрывает P e . Если P e выигрывает , ψ истинно . Если ψ истинно , каждое предложение в правой части графика содержит истинный литерал. P 2 может выбрать любое предложение. Затем P1 . литерал верный выбирает А поскольку это правда , соседний с ним узел в левом вертикальном узле уже выбран, поэтому P2 игроку нечего делать и он проигрывает.
Плоская обобщенная география является PSPACE-полной.
[ редактировать ]Обобщенная география является PSPACE-полной, даже если воспроизводить ее на плоских графах . Следующее доказательство взято из теоремы 3. [1]
Поскольку планарный GG является частным случаем GG, а GG находится в PSPACE, то планарный GG находится в PSPACE. Осталось показать, что планарная GG PSPACE-трудна. Это можно доказать, показав, как преобразовать произвольный граф в планарный граф так, чтобы игра GG, сыгранная на этом графе, имела тот же результат, что и на исходном графе.
Для этого необходимо лишь исключить все пересечения ребер исходного графа. Мы рисуем граф так, чтобы никакие три ребра не пересекались в одной точке и ни одна пара пересекающихся ребер не могла использоваться одновременно в одной и той же игре. В общем случае это невозможно, но всегда возможно для графа, построенного на основе экземпляра FORMULA-GAME; например, мы могли бы иметь только ребра вершин предложения, участвующие в пересечениях. Теперь заменим каждое пересечение такой конструкцией:
Результатом является плоский граф, и тот же игрок может добиться победы, как и в исходном графе: если игрок решает двигаться «вверх» от V в преобразованной игре, то оба игрока должны продолжать двигаться «вверх» к W, иначе они проиграют. немедленно. Таким образом, движение «вверх» от V в преобразованной игре имитирует ход V → W в исходной игре. Если V→W — выигрышный ход, то движение «вверх» от V в преобразованной игре также является выигрышным ходом, и наоборот.
Таким образом, игра ГГ на преобразованном графе будет иметь тот же результат, что и на исходном графе. Это преобразование требует времени, кратного числу пересечений ребер в исходном графе, поэтому оно занимает полиномиальное время.
Таким образом, планарная GG является PSPACE-полной.
Плоский двудольный граф с максимальной степенью 3
[ редактировать ]Игра GG на плоских двудольных графах с максимальной степенью 3 по-прежнему остается PSPACE-полной за счет замены вершин степени выше 3 цепочкой вершин степени не выше 3. Доказательство имеется. [1] и использует следующую конструкцию:
Если один игрок использует любой из входов в это сооружение, другой игрок выбирает, какой выход будет использоваться. Кроме того, конструкцию можно пройти только один раз, поскольку центральная вершина посещается всегда. Следовательно, эта конструкция эквивалентна исходной вершине.
Краевая география
[ редактировать ]Вариант ГГ называется географией края , где после каждого хода край, который прошел игрок, стирается. В этом отличие от оригинальной GG, где после каждого хода вершина, на которой раньше находился игрок, стирается. С этой точки зрения исходную GG можно назвать Vertex Geography .
География границ является PSPACE-полной. Это можно доказать, используя ту же конструкцию, которая использовалась для географии вершин. [2]
Неориентированная география
[ редактировать ]Можно также рассмотреть возможность сыграть в любую географическую игру на неориентированном графе (то есть, ребра можно проходить в обоих направлениях). Френкель, Шайнерман и Ульман [3] покажите, что неориентированная география вершин может быть решена за полиномиальное время, тогда как неориентированная география ребер является PSPACE-полной даже для планарных графов с максимальной степенью 3. Если граф двудольный, то ненаправленная география ребер разрешима за полиномиальное время.
Последствия
[ редактировать ]Учитывая, что GG является PSPACE-полным , не существует алгоритма с полиномиальным временем для оптимальной игры в GG, если только P = PSPACE . Однако доказать сложность других игр может оказаться не так просто, поскольку некоторые игры (например, шахматы ) содержат конечное число игровых позиций, что затрудняет (или делает невозможным) формулирование отображения для PSPACE-полной задачи. Несмотря на это, сложность некоторых игр все же можно проанализировать путем обобщения (например, для доски n × n ). См. ссылки на доказательство обобщенного Go как следствие доказательства полноты GG.
Ссылки
[ редактировать ]- ^ Перейти обратно: а б с Лихтенштейн, Дэвид; Сипсер, Майкл (апрель 1980 г.). «Go — это сложно в полиномиальном пространстве» (PDF) . Журнал АКМ . 27 (2): 393–401. дои : 10.1145/322186.322201 .
- ^ Шефер, Томас Дж. (1978). «О сложности некоторых игр двух лиц с совершенной информацией». Журнал компьютерных и системных наук . 16 (2): 185–225. дои : 10.1016/0022-0000(78)90045-4 .
- ^ Френкель, Авиезри; Шайнерман, Эдвард; Ульман, Дэниел (1993). «Ненаправленная география края». Теоретическая информатика . 112 (2): 371–381. дои : 10.1016/0304-3975(93)90026-п .
- Майкл Сипсер, Введение в теорию вычислений , PWS, 1997.