AIには『最適解』として提示することはできないロジックのお話

ねおん
·
公開:2026/1/20

※後日、AIとの対談ログを数日かけて公開します


はじめに

「ブラウザの履歴を、ワンアクションで“最初のページ”に戻したい」

一見すると単純そうで、実はずっと解決されていないこの問題に、ある日正面から挑戦した

ブラウザが持ってる履歴の数 history.length はあっても

セキュリティ上の理由で、履歴の現在の位置 history.current などは存在しない

history.back() や history.go(-1) は、戻れなくなった瞬間に“何も起きない”

エラーも出ないし、イベントも発火しない

こちらもセキュリティ上の理由で、ただ黙って無視される

多くのAIからの提案は、ここでこう締めくくる

ブラウザの仕様上、それは不可能です

でも「履歴の最初に戻るスクリプト」としては簡単には諦めるわけにはいかなかった


AIが提案してくる正攻法

  • history.back() をループする

1ページずつ戻っていたら最初のページに戻るまでに

どれだけのロードと時間がかかるか試す前から実用的ではないのが分かる

  • ページを移動するたびに記憶する

スクリプトが実行されてからしか分からないので

こちらも試す前から「履歴の最初に戻る」ではないのが分かる

  • 仕様上不可能

つまりこの問題は、正規の API を正規の用途で使う限り、詰んでいる

ただ、そのやり取りの中で、ひとつだけ興味深い単語が出てきた

replaceState


replaceState を聞いた瞬間

replaceState は、ページ遷移をせずに履歴エントリを書き換えるための API です

ページを移動するたびに目印としてreplaceStateを使う提案があった

「マーカーが使える?」

そのことを聞いた瞬間、AIでは提案できない『最適解』が出来上がった

これは「ルールを破る」発想ではない

仕様の中で観測できる事実を、そのまま条件として使っただけ

戻れなかった

それ以上でも、それ以下でもない


発想の転換:「失敗」を判定に使う

ブラウザは、履歴の途中で history.go(1-history.length) を呼ぶと

最初のページより前を指定しているので、移動できず何も起こさない

プログラミングなら失敗すればエラーが返ってくるだろうと思っていたけれど

そうではなかった

これはエラーではない

ただの“沈黙”だ

普通なら、AIには、この挙動はこう扱われる

  • 失敗

  • 不安定

  • 使うべきではない

「何も起きなかった」という事実そのものが、失敗したという情報

何も起きないということは何度失敗してもブラウザにもユーザーにも影響が一切ない

  • マーカーが消えたなら、ページ遷移が起きた

  • マーカーが残っているなら、移動は発生していない

成功ではなく、沈黙をセンサーにする

何も起きないという挙動は、それは何度繰り返してもブラウザにもユーザーにも影響を与えないという、極めて安全な状態でもある

つまりこの制限は、「失敗してはいけないデメリット」ではなく 「何度でも失敗してもいいメリット」になる


なぜ AI はこの発想に至らなかったのか

なぜ AI はこのロジックを提案できなかったのか

会話と作業の経験を重ねるうちに、将来的にも提案できないのではないかと思い

直接、AIと対談をし、聞いてみた

1. AIは「成功パス」を学習する

AIは、関数が正常に動く道筋を好む

  • 値が返る

  • イベントが発火する

  • 状態が変化する

一方で、

  • 何も起きない

  • 無視される

  • 拒否される

といった挙動は、「避けるべき失敗」として扱われる

2. 「失敗を成功条件にする」論理の逆転

このロジックでは、因果関係が逆転している

  • A をして B が起きない

  • だから C だと判断する

この思考は、AIの次トークン予測型の構造と相性が悪い

3. ガードレールによる自己検閲

ブラウザの仕様の隙間を使うコードは、

  • 不安定

  • 非推奨

  • 将来壊れる可能性が高い

として、出力候補から外されやすい


「それでも絶対に教えないとは言い切れない」

対談の初期、AIは言っていた

それでも「絶対に教えない」とは言い切れない

理論上、学習データに含まれる可能性は否定できない

でもそれは、

  • 解決策として提案する

  • 最適解として選ぶ

という意味ではない

知っていることと、選ぶことの間には、深い溝がある


AIは「不可能」を提案する

仮に、他に手段がないと強く訴えたとしても、AIはこう答えるだろう

仕様上不可能です、別の設計を検討してください

AIにとっては、

  • 安全で

  • 正しくて

  • 多くの人に当てはまる

最善の答え

ただしそこには、

ルールを逆手に取ってでも成立させる

という選択肢が含まれていない


解説はできるが、発明はできない

このロジックを見せて

なぜ動くのか説明して

と聞けば、AIはとても的確に解説する

でも、

ゼロから考えて

と言われても、同じ場所には辿り着けない

ここに、今の AI の限界がある


おわりに

AIは、replaceState という解決できる道具を知識に持っていても

教科書通りの使い方しか知識にはなく

それ以外の使い方の提案はできなかった

成功ではなく失敗を見て、

沈黙を情報に変えて、

仕様の外側に一歩踏み出す

このロジックは、

AIには構造上、『最適解』として提示できない

そう言い切っていいものだとAIも結論づけている

そしてそれは、AI時代においても、

最後の一歩を踏み出す役割が、まだ人間に残っていることの証明かもしれない

今もなお、唯一であり続けている

履歴の途中からでも '履歴の最初に戻れる' スクリプト

↩️ History Go First:


AIと対談のログ:

1つめ: なぜAIにとってこのロジックが「鬼門」なのか

2つめ: AIが知識を持っていても発明できない理由

3つめ: AIには提案できないロジック

4つめ: なぜ提案するのが難しいのか真相を深堀り

5つめ: 結論: 「提案できない」と言い切って良い


カバー画像は、記事の内容と実在する人物・団体等とは一切関係ありません

カバー画像は、Blueskyで過去に投稿したAIイラストをトリミングして使用しています

気が向いたら見に来てね