Tic Tac Toe

三目並べ

三目並べ(○×ゲーム)をブラウザで無料プレイ。CPU対戦(かんたん〜最強AIミニマックス法)・2人対戦・最強AIへの挑戦に対応。勝敗・連勝スコアをLocalStorageで保存。スマホタップでも快適に遊べます。

勝ち
0
負け
0
引分
0
連勝
0
最高連勝
0
勝率
0%
ゲーム開始ボタンを押してください

関連ツール

使い方

  1. モード(CPU対戦・2人対戦・最強AIに挑戦)と難易度・先攻を選んで「ゲーム開始」ボタンをクリックします。
  2. 盤面のマスをクリック(タップ)して○または×を置きます。
  3. 縦・横・斜めのいずれかに指定数(3×3なら3個)並べると勝ちです。
  4. 「一手戻す」ボタンで直前の手を取り消せます(CPU対戦は自分の手も含め2手分戻ります)。
  5. 勝敗・連勝スコアはブラウザに自動保存されます。
  6. 「最強AIに挑戦」モードでは絶対に負けないミニマックスAIと対戦します。引き分けを目指しましょう。
  7. 「ヒント」をONにすると、次に置くおすすめのマスが点線で表示されます。

難易度の違い

  • かんたん完全ランダムに置きます。初めての方や子供向け。
  • ふつう勝てる時だけ勝ちます。相手のリーチを半分の確率でブロックします。
  • むずかしい勝ちを狙い、相手のリーチを必ずブロック。中央・角を優先します。
  • 最強ミニマックス法+αβ枝刈りで最善手を選ぶ絶対に負けないAIです。
必勝のコツ:最初に中央を取ると有利。次に角を取りましょう。ダブルリーチ(2方向同時にリーチ)を作ると相手は防げません。先攻なら中央→角→角の順が基本戦略です。

三目並べ(○×ゲーム)とは・必勝法

三目並べ(○×ゲーム・Tic Tac Toe)は、3×3のマス目に交互に○と×を置き、先に縦・横・斜めのいずれかに3つ並べた方が勝ちになる2人用ゲームです。シンプルながら、お互いが最善手を打ち続けると必ず引き分けになる「完全情報ゲーム」として数学的に証明されています。

① 中央を取るべき理由

3×3の盤面で中央マス(5番)は縦・横・斜め合わせて4ラインに関与します。角は3ライン、辺は2ラインにしか関与しません。先攻1手目で中央を取ることで、最も多くの勝ちパターンを同時に狙える状態になります。中央を持っている側が攻撃の主導権を握りやすく、ダブルリーチを作りやすくなります。

② 角を取るべき理由

角マス(1・3・7・9番)はそれぞれ3ラインに関与します。また、対角線の角を2つ押さえると、2方向同時にリーチが発生しやすくなります。中央を取った後は角を狙い、相手に辺(2・4・6・8番)を取らせるのが基本です。辺は2ラインにしか関与せず、攻撃力が最も低いマスです。

③ リーチを防ぐ方法

相手が2マス揃えてリーチ(あと1つで勝ち)になったら、必ずそのマスを塞いでください。ただしダブルリーチ(フォーク)を作られると、2か所同時にリーチになり1手では防ぎきれません。そのためリーチを防ぐより先に、相手がダブルリーチを作る前に阻止することが重要です。相手が中央+角を取り始めたら、対角線の角を奪うか辺に置いてルートを分断しましょう。

④ ダブルリーチ(フォーク)の作り方

ダブルリーチとは、1手で2か所同時にリーチを作ることです。相手はどちらか一方しか防げないため、次の手で必ず勝てます。最も簡単な作り方は「中央→角→対角の角」の順に置くことです。2つの角と中央が揃うと、斜め2方向と横・縦がリーチになり防ぎきれません。また「中央→角→隣の角(L字)」も有効で、L字の頂点がダブルリーチの起点になります。

⑤ 先攻が負けない打ち方

先攻(○)は正しく打てば絶対に負けません。基本手順は以下の通りです。

  1. 1手目:中央を取る。
  2. 2手目:角を取る(どの角でもよい)。
  3. 3手目:勝てるなら勝ちに行く。相手がリーチなら防ぐ。それ以外はダブルリーチになる角を取る。

相手が辺に置き続ける場合、対角線の角2つを取ればほぼ確実にダブルリーチが完成します。相手が角を取ってきた場合は、辺に置いて対角線ルートを崩すことが重要です。

⑥ 後攻が引き分けに持ち込む方法

後攻(×)は最善手を打っても引き分けが限界です。先攻に中央を取られた場合の守り方を覚えましょう。

  • 先攻が中央→後攻の対応:辺に置くのは危険。必ず角を取ること。
  • 先攻が中央→角→対角の角と来た場合:辺に置いてダブルリーチのルートを断ち切る。
  • 先攻が角から始めた場合:後攻は中央を取るのが最善。以後は常にリーチを防ぎながら自分のリーチも作る。
  • 絶対に油断しない:1手でも最善でない手を打つと、相手にダブルリーチを作られます。常に「相手が次どこに置けば勝てるか」を確認してから手を打ちましょう。

⑦ 最強AIが負けない理由(ミニマックス法)

このゲームの最強AIはミニマックス法+αβ枝刈りというアルゴリズムで動いています。ミニマックス法とは、ゲームツリー(すべての手の組み合わせ)を全探索し、自分のスコアを最大化・相手のスコアを最小化するように最善手を選ぶ手法です。

3×3の三目並べは盤面パターンが最大9! = 362,880通りしかなく、コンピュータは一瞬で全パターンを読み切れます。そのため「勝てる手があれば必ず勝ち、引き分けが最善なら引き分けを選び、絶対に負けない」選択を毎回行います。人間がどんな手を打っても、最強AIに勝つことは数学的に不可能です。「引き分け」が人間にとっての最高の結果です。

注意事項

このゲームは無料でご利用いただけます。スコア・連勝記録はブラウザのLocalStorageに保存されます。ブラウザのデータを削除すると記録もリセットされます。

※このプログラムはPHP8.2.22にて作成、動作確認を行っております。
※ご利用下さっている皆様のご意見・ご要望(改善要望)をお寄せください。