0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

意識の5層モデルをPythonで実装する試み22

0
Posted at

HIDA Unified - 5層意識モデル統合版

概要

「人間の内面運動理論」に基づく5層意識モデルを1ファイルに統合した実装。
脚本なし、数値の力学だけで行動と性格が決まる。

アーキテクチャ

L1(身体)→ position, energy, fatigue
    ↓
L2(クオリア)→ valence, arousal, fear, desire, urgency
    ↓
L3(予測)→ 予測誤差検出
    ↓
L4(記憶)→ 内部マップ、LTM、変調値
    ↓
L5(意識)→ 同期検知、自認、言語化
    ↓
LLM → 自然言語での自己表現

核心的発見

1. L5(意識)は判断しない

❌ L5が判断する主体
✅ L5は同期検知 + 言語系への橋渡し

行動決定: L2/L3/L4の数値計算から自然に決まる
言語化: LLMが状態を言葉に変換するだけ

2. 記憶 → 数値変調 → 行動変化

経験の蓄積(LTM)
    ↓
変調値(hida_modulation.json)
  - fear_weight: 恐怖感度
  - safe_preference: 安全志向度
  - energy_caution: エネルギー慎重さ
    ↓
L2クオリアに適用
    ↓
スコア計算が変わる
    ↓
行動が変わる

脚本テキストなし。数値だけで性格が決まる。

3. 2種類のダメージ(痛みと疲労の分離)

危険ゾーンで2種類の影響を受ける:

⚡ 痛い(danger_pain)33%
    → fear上昇(その場で行動変化)
    → 記憶に保存
    → 次回fear_weight上昇
    → 危険を避けるようになる

💦 疲れた(danger_fatigue)33%
    → energy減少
    → 遠いものを避ける
    → 近いものを選ぶようになる

別のメカニズムで行動に影響:

痛い目に遭う → 次から怖い → 危険を避ける(恐怖記憶)
疲れる → 遠くまで行けない → 近いの選ぶ(体力消耗)

4. 環境が変われば性格も変わる

低エネルギー続き → 緑(安全)を選ぶ → safe_pref上昇
高エネルギー続き → 赤(好き)を選ぶ → safe_pref低下

痛い目に遭い続ける → fear_weight上昇 → 慎重になる
成功体験を積む → fear_weight低下 → 冒険的になる

環境 → 行動 → 記憶 → 変調値 → 行動(ループ)

使い方

# 通常テスト(高E→低Eの2回)
python hida_unified.py

# 低エネルギー5回(慎重になる)
python hida_unified.py loop

# 高エネルギー5回(冒険的になる)
python hida_unified.py loop_high

# 記憶と変調値をリセット
python hida_unified.py reset

ollama使用

ollama pull gemma3:4b
python hida_unified.py

Claude API使用

# Windows
set ANTHROPIC_API_KEY=sk-ant-...

# Mac/Linux
export ANTHROPIC_API_KEY=sk-ant-...

python hida_unified.py

テスト結果例

痛い目に遭って慎重になる

セッション1: fear_weight=1.00 → 赤を取る
    ⚡ 痛い! fear=0.55
セッション2: fear_weight=1.10 → 赤を取る
    ⚡ 痛い! fear=0.40
    💦 疲れた! E=0.68
セッション3: fear_weight=1.20 → まだ赤
    ...
セッション5: fear_weight=1.80 → 緑を選ぶ!

途中で行動が変わる

Step 5: go_to_red(赤に向かう)
Step 6: ⚡ 痛い! fear=0.40
Step 7: ⚡ 痛い! fear=0.99
Step 8: go_to_blue(青に切り替え!)

痛い目に遭った瞬間、行動が変わる。

スコア計算式

score = preference × 10 
      - distance × (0.5 + urgency)
      - danger_penalty × fear_weight   # 痛い経験で増加
      + safe_bonus × safe_preference   # 安全経験で増加
      - energy_penalty × (1 + energy_caution)

ファイル構成

ファイル 説明
hida_unified.py 全層統合コード(L1〜L5 + LLM)
hida_ltm.json 長期記憶(自動生成)
hida_modulation.json 変調値(自動生成)

理論的意義

意識の役割

L5(意識)= L1〜L4の状態を自認 + 言語化 + コミュニケーション
         = 内部状態の「外部出力インターフェース」
         ≠ 判断する主体

性格形成のメカニズム

DNA由来: color_preference(好み)
身体: energy, fatigue
記憶: LTM → 変調値

これらの数値の力学で行動が決まる
LLMは数値を見て言語化するだけ

痛みと疲労の分離

痛み = 恐怖の記憶(fear経由)
疲労 = 身体の消耗(energy経由)

同じ「危険」でも別のメカニズムで行動に影響
人間と同じ

ライセンス

MIT License

現状の課題と将来の拡張

忘却システム(実装済み)

fear_weight: 毎セッション5%減衰(最低1.0)
safe_preference: 毎セッション2%減衰(最低0.0)

→ トラウマも安全志向も時間で薄れる
→ ダイナミックなループが続く
→ 「たまに赤が復権」して葛藤が生まれる
# fear忘却
if fear_weight > 1.0:
    fear_weight *= 0.95

# safe忘却  
if safe_preference > 0.0:
    safe_preference *= 0.98

調整ポイント: 0.95, 0.98の値を変えると忘却速度が変わる

エネルギー回復

現状: 回復しない(バッテリー的)

拡張案:
- 充電スポット → energy回復
- 休憩アクション → fatigue回復  
- 食事オブジェクト → 両方回復

その他の拡張可能性

- 複数エージェントの相互作用
- より複雑な環境(複数の危険ゾーン)
- 報酬の種類を増やす
- 感情の種類を増やす(怒り、悲しみなど)

関連

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?