目的 AIが「なぜ捨てたのか」「なぜ保留したのか」「なぜ採用したのか」を 人間に説明できることを体験できる、1ファイル完結のデモです。 学習・モデルなしで動作し、AIの透明な思考過程を可視化します。
index.html
をブラウザで開くだけで実行できます(オフライン動作)。- または
standalone.html
で1枚完結デモを体験できます。
explainable-ai-demos/
├── LICENSE
├── README.md
├── README_EN.md
└── reversi/
├── index.html
├── style.css
├── js/
│ ├── reversi-engine.js
│ ├── ai-logic.js
│ └── ui-renderer.js
└── standalone.html
- 学習・サーバ通信なし(完全ローカル)
- 候補手を DROP / HOLD / REVIVE に分類し、自然文で理由を表示
- WHYログを
.jsonl
形式で保存可能 - 対局終了後に 採用WHY × 勝敗相関レポート を自動生成
- Balanced探索(深さ3〜4 / 250ms)で軽量かつちょっと賢いAI
- 研究・教育・講義用素材として利用可能
このデモは「フレーム問題の実装的回避」をテーマに設計されています。 AIが「全てを見ず、関連性の高いものだけを見る」仕組みを リバーシというシンプルな環境で体験できるようにしました。
- DROP:現在の文脈では無関係と判断
- HOLD:確証が得られず保留
- REVIVE:再評価により重要と判断して採用
要素 | 係数 | 意図 |
---|---|---|
myCorners |
+2.2 | 角の支配は終盤で決定的に有利。絶対的な価値を持つため最も重く設定。 |
stEdges |
+1.2 | 安定辺は序中盤の局地戦を左右するため中程度の加点。 |
myMob |
+0.4 | 可動性(打てる手の多さ)は短期的な柔軟性を示すため軽く評価。 |
oppMob |
-0.5 | 相手の可動性を減らすことは有利要素。負号を付けて抑制。 |
xRisk |
-1.6 | Xスクエア(角隣)の危険は致命的。角を相手に渡す可能性が高いため強く減点。 |
この重みは「学習ではなく設計原理」に基づくものであり、 人間の戦略的知見を透明な形でコード化したものです。
本デモは Balanced
モード(探索深さ3〜4・1手あたり250ms)で動作します。
これは JavaScript 環境での負荷を抑えるだけでなく、
「限られた資源で最も関連の高い部分だけを見る」というフレーム問題の回避思想を、
実行速度の設計レベルで実証するための意図的な制限です。
深さを上げることは可能ですが、 「全探索」ではなく「焦点化による知的省略」を体感するために あえて軽量設計にしています。
- XAI(説明可能AI)教育教材
- フレーム問題・関連性推論の概念理解
- 研究プレゼンの実演素材
- 「AIがAIを説明する」デモとして
MIT License 自由に改変・利用可能です(著作権表示とライセンス文を残してください)。
本デモは、以下の公開成果物を基盤としています。
- Proof Pack v0.1.1 — フレーム問題の最小実装解 DOI: 10.5281/zenodo.17218954
- Final Pack v1.0.2 — 実世界(PiCar)での回避デモ・再現性検証 DOI: 10.5281/zenodo.17218964
WHY Reversi Demo は、これらのコア実装を教育・研究向けに再構成し、 フレーム問題の「実装的回避」を可視化するデモとして設計されています。