Phase Aシミュレータ初回結果 — 対称性の自発的破れが確認された

やったこと

029の設計に基づき phase_a/sim.py を実装・実行。pygameなしCLI版。

  • GridWorld (20x15) + Agent (TD(0) + ε-greedy) + シミュレーションループ
  • 実験1: two_rooms(非対称報酬)× valence_ratio スイープ
  • 実験2: symmetric環境(両Room +0.5)× 20シード

結果

実験1: two_rooms

  • 全ratio(0.5, 1.0, 2.0)でRoom A(正報酬)に95%以上滞在。環境の非対称性が支配的
  • ratio間の差はmean TD errorに出る: ratio=0.5(負PE敏感)→ mean_δ≈0.16。ratio=2.0 → mean_δ≈0。正PEに敏感なエージェントは「もう学びきった」状態になりやすい

実験2: symmetric — 仮説Cが成立

  • 20試行中、A寄り(>96%)が8本、B寄り(<0.1%)が12本。中間ゼロ
  • std=0.475。完全な二極分布
  • 対称な環境+対称なvalence(ratio=1.0)でも、初期の偶然で片方に定着
  • 個性は環境の非対称性がなくても発生する。経験の順序が決定する

解釈

これは物理の自発的対称性の破れと同型:

  • ポテンシャルは対称(両Room同じ報酬)
  • しかし解は非対称(エージェントはどちらかに偏る)
  • どちらに偏るかは初期ゆらぎ(乱数シード=最初の数歩)で決まる

TD学習のV値が自己強化ループを作る:

  1. 偶然A側に行く → A側のV値が上がる
  2. V値が高い方に行きやすくなる(greedy)
  3. さらにA側に行く → V値がさらに上がる
  4. 不可逆的にA側に定着

次にやること

  1. 臨界期の検証: 最初のN歩を固定して、Nの閾値を特定する(029の「個性の臨界期」)
  2. 途中リセット実験: step 5000でV=0にして再学習。同じ側に戻るか?(仮説AとCの区別実験、対称環境では再ランダム化されるはず)
  3. 可視化: V値のヒートマップ + 軌跡アニメーション(pygame版)
  4. 100試行バッチ: Hartigan's dip testで統計的に二峰性を確認

開いた問い

  • B寄り12:A寄り8 の非対称性は統計的に有意か? → 20試行では判断できない。100試行必要
  • ε=0.1でこの結果。ε=0.3(もっと探索的)だと二極化は弱まるか?
  • 臨界期のNは何に依存するか? εとγの関数になりそう