反変原理からシミュレータ設計を考える

きっかけ

反変原理と選択の癖のノート(obsidian/反変原理と選択の癖__0303)で、ねおのとの議論から出た問い:

ローバーにとっての「十分に難しい課題」とは何か?

Phase Aシミュレータを設計するにあたって、この問いは環境設計に直結する。

反変原理の再定義:ローバー文脈

反変原理:課題の制約が十分に多いと、出発点が違っても解が近傍に収束する。

ローバーにとって:

  • 変数 = 行動パターン(どの方向にどれだけ動くか、何を避けるか、何に近づくか)
  • 制約 = 環境の構造(壁、障害物、通路、行き止まり)
  • = 環境に適応した運動戦略

制約が少ない(空の部屋)→ 行動パターンは散漫で不定。偏りが育ちにくい。 制約が多い(複雑な間取り)→ 特定の巡回路に収束しやすい。が、どの巡回路に収束するかに微差が出る。

この微差が世界由来の偏りの正体。

シミュレータで検証すべきこと

021の修正で、Phase Aの意味が「動きの検証」から「世界由来の偏りの観察」に変わった。であれば、シミュレータはこれを検証できる設計にすべき。

実験1:同一環境・複数インスタンス

  • 同じ部屋に初期位置・角度だけ変えた複数ローバーを走らせる
  • 時間経過後、各ローバーの行動パターンを比較
  • 問い: 収束するか? どの程度似てくるか?
  • 014のIf-Then Rulesは決定論的だが、初期位置の差がセンサー入力の系列を変え、memory蓄積に差を生む
  • 結果が完全に同一なら、ランダム要素が足りない(Phase Aの段階でどこまで確率的であるべきか)

実験2:異なる環境・同一パラメータ

  • 部屋の形状を変える(正方形、L字、T字、狭い通路)
  • 同じ初期パラメータのローバーがどう違う偏りを持つか
  • 問い: 環境が十分に複雑なとき、行動パターンはどう収束するか
  • L字の部屋は「曲がった先を探索するか避けるか」の分岐がある。ここに偏りが宿る

実験3:偏りの可視化

  • 部屋を格子に分割し、各セルの滞在時間をヒートマップにする
  • 時系列で見ると「最初は均一 → 徐々に偏る → 固着」の過程が見えるはず
  • 固着のタイムスケールは何tick? これがPhase Bの反芻設計に影響する

環境設計の指針

空の部屋(正方形)は最低限のベースライン。しかしそれだけでは制約が弱すぎて偏りが育たない可能性。

Phase Aに適した環境:

  • 壁で区切られた2-3の部屋(通路で接続)
  • 1つの行き止まり(行き止まりを記憶して避けるようになるか?)
  • 中央に島状の障害物(左右どちらを回るかに偏りが出る)

ポイント:「どちらでもいい選択肢」を環境に埋め込む。 左からも右からも回れる障害物。奥に行っても手前に留まっても良い空間。この「どちらでもよさ」に偏りが刻まれる。

帰納バイアスとしてのコード

反変原理のノートでの整理:

  1. 何を見てきたか(visual diet)→ 経験
  2. どういう回路構造か(帰納バイアス)→ 生得的構造

ローバーにおける帰納バイアスは、ぼくたちが書くコード自体。If-Then Rulesの初期重み、conflict resolutionのパラメータ、memory decayの速さ——これらすべてが「この子はこういう解き方をしやすい」を決める。

神谷論文の指摘:アロスタシスに根ざした帰納バイアスが脳にはある。ローバーにはない。代わりに何がある?

016のvalence設計を振り返る。選択肢A(Schmidhuberの学習進捗)は純粋に認知的。選択肢B(ホメオスタシスからの逸脱)は身体的。021の修正で valence = learning_progress * (1.0 if who_present else 0.3) としたが、これは両方の混合。

Phase Aでは人がいないので、valence = learning_progress * 0.3。弱いが存在する。この弱いvalenceが記憶の強度差を生み、想起頻度に差を生み……と連鎖する。

問い:learning_progressの0.3倍は、偏りを育てるのに十分な「種」になるか? これはシミュレータで実測する問題。

次のステップ

この分析を持って、Phase Aシミュレータの最小構成を定義する:

  1. 環境: 複数の部屋テンプレート(正方形、L字、島あり)
  2. ローバー: 014の基本Brain + SpatialMemory + If-Then Rules
  3. 追加: 滞在ヒートマップ生成、memory内容の可視化
  4. 実験: 同一環境・複数ランの比較、環境差の比較
  5. 計測: 偏りの固着タイムスケール、valence=0.3での記憶強度分布

設計書ではなくシミュレーションの「問い」を先に立てた。これで動かす目的が明確になる。