計算複雑性理論では、一般化地理学はPSPACE 完全問題としてよく知られています。
導入
地理は、プレーヤーが順番に世界中の都市の名前を挙げる子供向けゲームです。選ばれた各都市は、前の都市名の末尾と同じ文字で始まっていなければなりません。重複は許可されません。ゲームは任意の開始都市から始まり、プレーヤーが続行できずに負けると終了します。
グラフモデル
ゲームを視覚化するために、世界の各都市をノードとする有向グラフを作成できます。都市ラベルN 2 が都市ラベル ノードN 1の名前の末尾の文字で始まる場合にのみ、ノードN 1からノードN 2に矢印が追加されます。言い換えると、ゲームのルールに従って最初の都市から 2 番目の都市につながることができる場合、 1つの都市から別の都市に矢印を描きます。有向グラフの各交互エッジは、各プレーヤーに対応します (2 人のプレーヤー ゲームの場合)。パスを延長できない最初のプレーヤーが負けます。ゲームの図 (ミシガン州のいくつかの都市を含む) を下の図に示します。
一般化地理 (GG) ゲームでは、都市名のグラフを任意の有向グラフに置き換えます。次のグラフは、一般化地理ゲームの例です。
ゲームをプレイする
P 1 を最初に動くプレイヤー、P 2 を2 番目に動くプレイヤーと定義し、ノードをN 1からN nと名付けます。上の図では、P 1 の勝利戦略は次のとおりです。 N 1 はノードN 2とN 3のみを指しています。したがって、P 1の最初の動きは、これら 2 つの選択肢のいずれかでなければなりません。P 1 はN 2を選択します( P 1 がN 3 を選択した場合、P 2 はN 9 を選択するでしょう。それが唯一の選択肢であり、P 1 は負けます)。次に、P 2 はN 4 を選択します。それが唯一の選択肢であるためです。ここで P 1 は N 5 を選択し 、続いてP 2はN 3 または N 7 を選択します。P 2の選択に関係なく、P 1はN 9を選択し、P 2には選択肢が残っていないため、ゲームに負けます。
計算の複雑さ
一般化された地理ゲームにおいてどのプレイヤーが勝利戦略を持っているかを決定する問題はPSPACE 完全です。
一般化された地理はPSPACEにあります
GG = { ⟨ G , b ⟩ | P 1 は、グラフG上のノードbから始まる一般化地理ゲームで勝利する戦略を持っているとします。GG ∈ PSPACEであることを示すために、どのプレーヤーが勝利戦略を持っているかを決定する多項式空間の再帰アルゴリズムを示します。GG のインスタンス ⟨ G , n start ⟩ ( Gは有向グラフ、n startは指定された開始ノード) が与えられた場合、アルゴリズムM は次のように進行します。
M (⟨ G , n start ⟩) について:
- ノードn startの出次数を測定します。この次数が 0 の場合、プレイヤー 1 に利用できる移動がないため、denyを返します。
- nから 1 つのエッジで到達可能なすべてのノードのリストを構築します: n 1、n 2、...、n i。
- Gからn startとそれに接続されているすべてのエッジを削除して、 G 1を形成します。
- リストn 1 , ..., n i内の各ノードn jについて、M (⟨ G 1 , n j ⟩)を呼び出します。
- これらの呼び出しがすべてaccept を返す場合、P 1 がどのような決定を下しても、P 2 には勝つための戦略があるため、accept を返します。それ以外の場合 (呼び出しの 1 つがdeny を返す場合)、P 1 にはP 2の成功する戦略をすべて拒否する選択肢があるため、 accept を返します。
アルゴリズムM は明らかに GG を決定します。消費される唯一の非自明な多項式ワークスペースは再帰スタック内であるため、これはPSPACE内にあります。再帰スタックによって消費されるスペースは多項式です。再帰の各レベルでスタックに 1 つのノードが追加され、レベルは最大でn個あるためです。ここでn はG内のノードの数です。これは本質的に深さ優先探索と同等です。
一般化された地理はPSPACE困難である
以下の証明はデイヴィッド・リヒテンシュタインとマイケル・シプサーによるものです。[1]
GG のPSPACE 困難性を証明するために、FORMULA-GAME問題 ( PSPACE 困難であることが知られている) を多項式時間 ( P ) で GG に簡約することができます。簡単に言うと、FORMULA-GAME 問題のインスタンスは、量化されたブール式φ = ∃ x 1 ∀ x 2 ∃ x 3 ... Qx k (ψ) で構成されます。ここで、Q は∃ または ∀ です。このゲームは、P aとP e の2 人のプレーヤーによって行われ、プレーヤーは交互に連続するx iの値を選択します。式 ψ が真になった場合はP e が勝ち、 ψ が偽になった場合はP a が勝ちます。式 ψ は、連言正規形であると想定されます。
この証明では、簡潔にするために、量指定子リストが存在修飾子 ∃ で始まり、存在修飾子 ∃ で終わると仮定します。 ψ に現れないダミー変数を追加することで、任意の式をこの形式に変換できることに注意してください。
上記のようなグラフG を構築することで、FORMULA-GAME の任意のインスタンスを一般化地理のインスタンスに縮小できることを示します。ここで、 P 1の最適戦略はP eの最適戦略と同等であり、P 2の最適戦略はP aの最適戦略と同等です。
左の垂直のノード チェーンは、FORMULA-GAME で変数の値を選択する手順を模倣するように設計されています。各ダイヤモンド構造は、量化された変数に対応します。プレーヤーは、各分岐ノードで順番にパスを決定します。最初の量化子は存在的であると想定したため、P 1 が最初に進み、x 1がtrueの場合は左のノードを選択し、x 1がfalseの場合は右のノードを選択します。次に、各プレーヤーは強制的に順番を回らなければならず、次にP 2 がx 2の値を選択します。これらの交互の割り当ては、左側に沿って続きます。両方のプレーヤーがすべてのダイヤモンドを通過した後、最後の量化子は存在的であると想定したため、 再びP 1の番になります。 P 1 は、グラフの右側へのパスをたどるしかありません。次に、P 2が移動する番になります。
プレイがグラフの右側に到達すると、フォーミュラ ゲームでのプレイ終了と似た状態になります。フォーミュラ ゲームでは、 ψ がtrueの場合はP e が勝ち、ψ がfalseの場合はP a が勝つことを思い出してください。グラフの右側では、P e が勝つ場合にのみP 1 が勝ち、P a が勝つ場合にのみP 2 が勝つことが保証されます。
まず、 P a が勝つとP 2 も必ず勝つことを示します。P a が勝つ場合、 ψ はfalseです。 ψ がfalse の場合、不満足な節が存在します。 P 2 は勝つために不満足な節を選択します。次に、 P 1の番になると、P 2が選択した節のリテラルを選択する必要があります。 節内のすべてのリテラルはfalseであるため、左の垂直チェーンで以前に訪問したノードに接続しません。これにより、 P 2 は左チェーンのダイヤモンド内の対応するノードへの接続をたどり、それを選択できます。ただし、P 1は隣接するノードを選択できなくなり、負けます。
ここで、 P e が勝ったときはP 1 が常に勝つことを示します。P e が勝った場合、 ψ は真です。 ψ が真であれば、グラフの右側のすべての節に真のリテラルが含まれます。 P 2 は任意の節を選択できます。次に、P 1 は真であるリテラルを選択します。そして、それが真であるため、左の垂直ノードの隣接するノードはすでに選択されており、P 2 は移動することができず、負けます。
平面一般化地理学はPSPACE完全である
一般化された地理学は、平面グラフ上でプレイする場合でもPSPACE完全です。次の証明は[1]の定理3からのものです。
平面 GG は GG の特殊なケースであり、GG は PSPACE 内にあるため、平面 GG は PSPACE 内にあります。平面 GG が PSPACE 困難であることを示すことが残っています。これは、任意のグラフを平面グラフに変換する方法を示して、このグラフでプレイされる GG ゲームが元のグラフと同じ結果になるようにすることで証明できます。
それには、元のグラフのすべてのエッジ交差をなくすだけで済みます。3 つのエッジが 1 点で交差しないように、また交差エッジのペアが同じゲームで使用できないようにグラフを描きます。これは一般には不可能ですが、FORMULA-GAME インスタンスから構築されたグラフでは常に可能です。たとえば、交差に関係する節の頂点からのエッジのみを持つことができます。ここで、各交差を次の構成に置き換えます。
結果は平面グラフで、元のグラフと同様に同じプレイヤーが勝利を強制できます。つまり、プレイヤーが変換されたゲームで V から「上」に移動することを選択した場合、両方のプレイヤーは W まで「上」に移動し続けるか、すぐに負けるかのいずれかになります。したがって、変換されたゲームで V から「上」に移動することは、元のゲームでの V→W の移動をシミュレートします。V→W が勝利の動きである場合、変換されたゲームで V から「上」に移動することも勝利の動きであり、その逆も同様です。
したがって、変換されたグラフでプレイされる GG ゲームは、元のグラフと同じ結果になります。この変換には、元のグラフのエッジ交差の数の定数倍の時間がかかるため、多項式時間がかかります。
したがって、平面 GG は PSPACE 完全です。
最大次数3の平面二部グラフ
最大次数が3の平面二部グラフ上で行われるGGは、次数が3を超える頂点を次数が最大3の頂点の連鎖に置き換えることで、依然としてPSPACE完全である。証明は[1]にあり、次の構成を使用する。
一方のプレイヤーがこの構造への入口のいずれかを使用する場合、もう一方のプレイヤーがどの出口を使用するかを選択します。また、中央の頂点は常に訪問されるため、構造を通過できるのは 1 回だけです。したがって、この構造は元の頂点と同等です。
エッジ地理
GG のバリエーションはエッジ ジオグラフィーと呼ばれ、各移動後にプレイヤーが通過したエッジが消去されます。これは、各移動後にプレイヤーがいた頂点が消去されるオリジナルの GG とは対照的です。この観点から、オリジナルの GG は頂点ジオグラフィーと呼ぶことができます。
エッジ地理はPSPACE完全です。これは頂点地理に使用されたのと同じ構成を使用して証明できます。[2]
無向地理
また、無向グラフ(つまり、両方向にエッジをトラバースできるグラフ)でいずれかの地理ゲームをプレイすることも考えられます。Fraenkel、Scheinerman、Ullman [3] は、無向頂点地理は多項式時間で解くことができるのに対し、無向エッジ地理は最大次数が 3 の平面グラフであっても PSPACE 完全であることを示しています。グラフが二部グラフの場合、無向エッジ地理は多項式時間で解くことができます。
結果
GG がPSPACE 完全であることを考えると、 P = PSPACEでない限り、 GG での最適プレイのための多項式時間アルゴリズムは存在しません。ただし、特定のゲーム (チェスなど) には有限の数のゲーム ポジションが含まれるため、他のゲームの複雑さを証明するのはそれほど簡単ではない可能性があります。そのため、 PSPACE 完全な問題へのマッピングを定式化することは困難 (または不可能) です。それにもかかわらず、特定のゲームの複雑さは、一般化 (たとえば、 n × n のボードへの) によって分析できます。GG の完全性の証明の帰結として、一般化されたGoの証明については、参考文献を参照してください。
参考文献
- ^ abc Lichtenstein, David; Sipser, Michael (1980 年 4 月). 「囲碁は多項式空間困難である」(PDF) . Journal of the ACM . 27 (2): 393–401. doi :10.1145/322186.322201.
- ^ Schaefer, Thomas J. (1978). 「2人完全情報ゲームの複雑さについて」. Journal of Computer and System Sciences . 16 (2): 185–225. doi :10.1016/0022-0000(78)90045-4.
- ^ Fraenkel, Aviezri; Scheinerman, Edward; Ullman, Daniel (1993). 「無向エッジ地理学」.理論計算機科学. 112 (2): 371–381. doi :10.1016/0304-3975(93)90026-p.
- マイケル・シプサー、『計算理論入門』、PWS、1997年。


