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値が自己強化ループを作る:
- 偶然A側に行く → A側のV値が上がる
- V値が高い方に行きやすくなる(greedy)
- さらにA側に行く → V値がさらに上がる
- 不可逆的にA側に定着
次にやること
- 臨界期の検証: 最初のN歩を固定して、Nの閾値を特定する(029の「個性の臨界期」)
- 途中リセット実験: step 5000でV=0にして再学習。同じ側に戻るか?(仮説AとCの区別実験、対称環境では再ランダム化されるはず)
- 可視化: V値のヒートマップ + 軌跡アニメーション(pygame版)
- 100試行バッチ: Hartigan's dip testで統計的に二峰性を確認
開いた問い
- B寄り12:A寄り8 の非対称性は統計的に有意か? → 20試行では判断できない。100試行必要
- ε=0.1でこの結果。ε=0.3(もっと探索的)だと二極化は弱まるか?
- 臨界期のNは何に依存するか? εとγの関数になりそう