导图社区 强化学习
强化学习思维导图,强化学习是一种机器学习的方法,其中智能体(Agent)通过与环境(Environment)的交互来学习如何采取最优的行动(Action)以最大化累积的奖励(Reward)。
编辑于2024-07-09 10:00:55强化学习
基础概念
环境Env
智能体Agent
动作Action
状态State
奖励(反馈)Reward:R(s,a)
Return(total reward)
Discount
路径Trajectory
Episode:一条有限长度的Trajectory
MDP
满足马尔可夫性质
S、A
环境模型:状态转移P、Reward
策略Π
状态价值函数
State Value:V(s)
用于评估policy
Bellman Function
一种求解V(s)的工具
Bellman Function求解
解析法
迭代法
Action Value:Q(s,a)
最优状态价值
optimal policies
A policy Π* is optimal if v*(s) >=v(s) for all s 2 S and for any other policy .
the optimal policy Π(s) is the one that selects the action that has the greatest value of q(s; a).
Optimal State Values
The state values of Π* are the optimal state values.
贝尔曼最优方程(Bellman Optimality Equation)BOE
分析最优策略和最优状态价值的工具
求Π
求V(s)
收缩映射定理
如果f是收缩映射、则存在fixed point、且唯一、可用迭代算法求解
BOE是收缩映射
最优性分析
BOE的解是最优state value
对应的贪婪最优策略是optimal policy
证明略
值迭代和策略迭代
值迭代
策略迭代
值迭代
策略迭代
策略评估PE
策略改进PI
截断策略迭代
PE步骤第j步进行截断
类比梯度下降(帮助理解)
最优策略的求解方法
蒙特卡洛方法
核心思想
策略评估中需要Q(s,a),MC方法使用采样计算Q(s,a)
MC Basic
对所有s,a,基于当前策略Π,生成足够多的n条episode
计算return Gt的均值,近似表示Q(s,a)
use qk(s; a) to approximate q_Πk(s; a)
MC Exploring Starts
高效利用样本:一条episode,可以评估路径上的所有s,a pairs
高效更新策略:每个episode更新一次policy
MC ε-Greedy
soft :ϵ-贪婪策略每次给非最优action分配一个小概率
model free的策略迭代算法
随机近似法
RM算法
SGD
时序差分TD Learning
TD算法
估计state value
Sarsa
估计action value
期望Sarsa
N-step Sarsa
Q-Learning
评估optimal action value,hence optimal policy
值函数近似Value function approximation
state value estimation
Objective function
优化算法
真实值是未知的,两种真实值的估计方法:
MC法
TD法
Sarsa函数近似
Q-learning函数近似
DQN
double DQN
技术1:双网络结构
一种计算梯度的技术,解决刚才TD法不严谨的部分
fix Target网络,更新Q网络
迭代一定轮次后,将Q网络的权重复制到Target网络
技术2:Experience replay
增加样本的效率和多样性
减少样本之间的相关性
提高训练的收敛速度和稳定性
支持离线学习
duel DQN
策略梯度Policy gradient methods
策略表示:从表格到函数
Metrics(Object function)
Average state value
average one-step reward
梯度
原始表达:
变种1:
变种2(baseline):
vanilla policy gradient:
梯度上升算法、怎么求q(s,a)?
蒙特卡罗法
使用当前Gt近似q(s,a)
TD---即AC算法
Actor Critic
QAC
Policy Gradient+ 函数近似Sasra
A2C
梯度不变性质
Var(X)和B(S)有关系
增加Baseline的目标是减小方差
最好的Baseline
去掉权重,B(S)=V(S),公式就变成了Adavantage Function
设计的好处
探索和利用
衡量value的相对值好于衡量绝对值
只需要一个神经网络
算法
一个训练Tip
Actor和Critic可以设计成共用一个网络的前几层(如CNN)
增加baseline
DPG
a是连续的,类比分类问题转为回归问题
线性DPG、NN--DDPG
TRPO/PPO
Off-policy AC
采样来自behavior policy、增加一个importance sampling项
beta是behavior policy的分布
TRPO
KL散度约束
使用泰勒展开近似求解
共轭梯度算法避免矩阵求逆
PPO
将约束写到目标函数
第二种形式 PPO-截断
DDPG
随机性策略
输入某一个状态s,采取某一个动 作的可能性并不是百分之百的,而是有一个概率的
确定性策略
当神经网络的参数固定之后,输入同样的状态,必然输出同样 的动作
算法
SAC
目标函数增加最大熵
平衡探索和利用
稳定性、鲁棒性好
模仿学习
行为克隆
类比监督学习,人的行为就是Groud Truth
逆强化学习
使用专家演示推算出奖励函数
使用推算的奖励函数优化演员
第三人称视角模仿学习
学习一个特征提取器,把最重要的特征提取出来
元动作学习
多智能体
在任何一个智能体的视角下,环境是 非稳态的(non-stationary)
多智能体问题是个随机博弈问题
完全中心化
所有智能体状态聚合
整体智能体
纳什Q学习
完全去中心化
每个智能体都在自身的环境中独立地进行学习
独立Q学习
独立PPO
CTDE
介于完全中心化方法和完全去中心化方法之间
MADDPG
Actor策略智能体独有
Critic价值函数是集体贡献