Behavioral_RL 中文导航¶
原文: Behavioral Reinforcement Learning
分类: 行为经济学 + 强化学习
大小: 297 MB
语言: Python
📚 仓库简介¶
Behavioral_RL 是一个将人类行为偏差整合到强化学习中的研究项目。它探索了如何将行为经济学中的认知偏差 (如损失厌恶、过度自信、时间折扣等) 融入 RL 算法,使 AI agent 的行为更接近人类决策模式。
GitHub: https://github.com/affaan-m/Behavioral_RL
🔧 核心功能¶
| 功能 | 描述 | 行为偏差 |
|---|---|---|
| 损失厌恶 RL | 在奖励函数中模拟损失厌恶 | 前景理论 |
| 时间折扣 RL | 双曲线折扣而非指数折扣 | 跨期选择 |
| 过度自信 RL | agent 高估自身能力 | 过度自信偏差 |
| 锚定 RL | 初始值影响学习 | 锚定效应 |
| 框架效应 RL | 不同框架下的不同选择 | 框架效应 |
📁 目录结构¶
Behavioral_RL/
├── src/ # 源代码
│ ├── agents/ # RL agent 实现
│ │ ├── qlearning.py
│ │ ├── dqn.py
│ │ └── ppo.py
│ ├── behaviors/ # 行为偏差模块
│ │ ├── loss_aversion.py
│ │ ├── time_discount.py
│ │ └── overconfidence.py
│ ├── environments/ # 测试环境
│ │ ├── gridworld.py
│ │ └── bandit.py
│ └── utils/ # 工具函数
├── experiments/ # 实验代码
│ ├── experiment_1/ # 损失厌恶实验
│ └── experiment_2/ # 时间折扣实验
├── results/ # 实验结果
├── notebooks/ # Jupyter 笔记
├── requirements.txt # 依赖
└── README.md # 主文档
🚀 快速开始¶
安装¶
# 克隆仓库
cd /workspace/code-examples/Behavioral_RL
# 安装依赖
pip install -r requirements.txt
# 主要依赖:
# - torch (PyTorch)
# - gym (强化学习环境)
# - numpy, pandas, matplotlib
第一个实验:损失厌恶 Q-Learning¶
import gym
from src.agents.qlearning import QLearningAgent
from src.behaviors.loss_aversion import LossAversionWrapper
# 创建环境
env = gym.make('CartPole-v1')
# 创建标准 Q-learning agent
agent = QLearningAgent(
state_dim=env.observation_space.shape[0],
action_dim=env.action_space.n,
learning_rate=0.1,
gamma=0.99
)
# 添加损失厌恶行为偏差
lambda_param = 2.0 # 损失厌恶系数 (λ>1 表示损失厌恶)
biased_agent = LossAversionWrapper(agent, lambda_param)
# 训练
for episode in range(1000):
state = env.reset()
total_reward = 0
for t in range(200):
action = biased_agent.act(state)
next_state, reward, done, _ = env.step(action)
# 损失厌恶 agent 会将损失放大λ倍
biased_agent.learn(state, action, reward, next_state, done)
state = next_state
total_reward += reward
if done:
break
if episode % 100 == 0:
print(f"Episode {episode}, Total Reward: {total_reward}")
时间折扣实验¶
from src.behaviors.time_discount import HyperbolicDiscountAgent
# 双曲线折扣 agent (更符合人类行为)
agent = HyperbolicDiscountAgent(
state_dim=env.observation_space.shape[0],
action_dim=env.action_space.n,
k=0.1, # 双曲线折扣参数
beta=0.5 # 现时偏差参数
)
# 比较标准指数折扣 vs 双曲线折扣
# 双曲线折扣 agent 会表现出自我控制问题和冲动行为
运行实验¶
# 损失厌恶实验
python experiments/experiment_1/run.py
# 时间折扣实验
python experiments/experiment_2/run.py
# 查看结果
cd results/
📖 关键文档¶
| 文档 | 说明 |
|---|---|
README.md |
项目介绍和安装指南 |
notebooks/ |
Jupyter 笔记,交互式学习 |
experiments/ |
实验配置和结果 |
src/behaviors/ |
行为偏差实现细节 |
💡 行为偏差实现¶
1. 损失厌恶 (Loss Aversion)¶
# 前景理论中的价值函数
def value_function(x, lambda_param=2.0, alpha=0.88):
"""
损失厌恶价值函数
λ > 1: 损失比收益更令人痛苦
"""
if x >= 0:
return x ** alpha
else:
return -lambda_param * (-x) ** alpha
2. 双曲线时间折扣 (Hyperbolic Discounting)¶
# 人类倾向于对近期奖励过度加权
def hyperbolic_discount(reward, delay, k=0.1):
"""
双曲线折扣函数
比指数折扣更符合人类行为
"""
return reward / (1 + k * delay)
3. 过度自信 (Overconfidence)¶
# agent 高估自身能力
class OverconfidentAgent:
def estimate_value(self, state):
# 过度高估价值
true_value = self._true_value(state)
confidence_bias = 1.2 # 高估 20%
return true_value * confidence_bias
🎯 研究应用¶
1. 行为金融¶
2. 人机交互¶
3. 行为公共政策¶
🔗 相关资源¶
- llm-cooperation - LLM 合作行为研究
- BehaviouralEconomics - 行为经济学课程
- 决策科学资源大全
📚 理论基础¶
行为经济学核心概念¶
| 概念 | 提出者 | 年份 | 说明 |
|---|---|---|---|
| 前景理论 | Kahneman & Tversky | 1979 | 风险决策理论 |
| 损失厌恶 | Kahneman & Tversky | 1992 | 损失比收益更强烈 |
| 双曲线折扣 | Ainslie | 1975 | 时间偏好模型 |
| 锚定效应 | Tversky & Kahneman | 1974 | 初始值影响判断 |
强化学习基础¶
| 算法 | 说明 | 适用场景 |
|---|---|---|
| Q-Learning | 值迭代方法 | 离散动作空间 |
| DQN | 深度 Q 网络 | 高维状态空间 |
| PPO | 近端策略优化 | 连续动作空间 |
🛠️ 扩展实验建议¶
1. 添加新的行为偏差¶
# 示例:添加锚定效应
class AnchoredAgent:
def __init__(self, anchor_value):
self.anchor = anchor_value
def estimate(self, value):
# 向锚定值偏倚
return 0.7 * value + 0.3 * self.anchor
2. 多偏差整合¶
# 同时整合多种行为偏差
agent = MultiBiasAgent(
loss_aversion=2.0,
time_discount='hyperbolic',
overconfidence=1.2,
anchoring=0.3
)
3. 实证验证¶
本地路径: /workspace/code-examples/Behavioral_RL/
创建时间: 2026-06-01
难度: ⭐⭐⭐⭐ (研究级)
**Behavioral_RL 中文导航 | 行为经济学 × 强化学习**
[返回代码索引](../../README_UPDATED.md) | [决策科学资源大全](../../docs/resources/decision-science-comprehensive-resources.md)