4 免模型预测
1. 模型与免模型:
-
有模型(Model-based):指状态转移概率已知的情况,如动态规划算法。它试图先学习一个环境模型,包括环境的动态和奖励,然后使用它来计划最佳行动策略。
-
免模型(Model-free):环境未知的情况,直接学习特定状态下执行特定动作的价值或优化策略,不需要建立预测环境动态的模型。大多数基础强化学习算法都是免模型的。
2. 预测与控制:
- 预测:估计或计算环境中的某种期望值,如状态价值函数或动作价值函数。
- 控制:找到最优策略以最大化期望回报。涉及策略评估和策略改进两个步骤。
3 蒙特卡洛方法
-
基本概念:蒙特卡洛方法是一种统计模拟方法,用于免模型预测价值函数。它通过模拟大量的轨迹来近似状态的价值。
-
实现方式:
- 首次访问蒙特卡洛(FVMC):在一个完整轨迹中,仅当状态第一次出现时,才计算其回报并更新价值。
- 每次访问蒙特卡洛(EVMC):考虑轨迹中状态每一次出现的回报,进行更新。
-
更新公式:价值函数的更新不是简单的直接赋值,而是以一种递进方式进行,通过逐步调整学习率(α)来控制更新速度。
4 时序差分
-
基本概念:时序差分(TD)方法结合了蒙特卡洛方法和动态规划的思想。它使用当前奖励和后继状态的估计来更新现有状态的值函数。
-
单步时序差分(TD(0)):这是最简单的时序差分方法,仅向前自举一步来更新状态的价值。
-
特点:
- 可以在线学习,即每走一步就可以进行更新。
- 适用于连续的环境(没有终止状态)。
- 在实现时,对于终止状态进行特殊处理,将其未来状态的估计值设置为0。
5 n步时序差分
-
基本概念:n步时序差分方法是时序差分方法的拓展,它调整向前自举的步数(n),以平衡蒙特卡洛方法和时序差分方法的特点。
-
实现方式:
- 通过调整n的值,可以实现从纯时序差分(n=1)到纯蒙特卡洛方法(n=∞)的过渡。
- 通常用λ(TD(λ))表示,涉及网格搜索、随机搜索等方法来确定最佳的λ值。
-
选择λ值:选择合适的λ值是一个实验过程,需要根据具体问题进行调整。可以结合多种方法来找到最佳的λ值,以获得更好的性能。
5 免模型控制
1 免模型控制概述:
免模型控制指的是不需要知道环境的状态转移概率的控制算法。这些算法可以直接从与环境的交互中学习最优策略。
2 Q-learning算法
-
Q表格:使用一个表格来存储每个状态和动作对应的Q值。例如,在一个网格环境中,表格的每行代表一个状态,每列代表一个可能的动作。
-
探索策略:
- ε-greedy策略:智能体有概率ε随机选择动作,有概率1-ε选择当前最佳动作(即Q值最大的动作)。
- 策略衰减:ε的值通常随着时间递减,从而使智能体逐渐减少随机探索,增加利用已知信息的比例。
-
动作价值函数更新:Q-learning更新公式基于当前奖励和下一个状态的最大Q值来更新当前状态动作对的Q值。
3 Sarsa算法
-
算法特点:与Q-learning相似,但在更新Q值时使用的是下一个实际采取的动作的Q值,而非最大Q值。
-
更新公式:Q(s,a)←Q(s,a)+α[r+γQ(s′,a′)−Q(s,a)]Q(s,a)←Q(s,a)+α[r+γQ(s′,a′)−Q(s,a)]。
-
同策略(On-policy):Sarsa是一个同策略算法,意味着策略评估和策略改进过程基于相同的策略。
4 同策略与异策略
- 同策略:例如Sarsa,训练过程中的策略用于生成数据样本,并在其基础上进行更新。
- 异策略:例如Q-learning,从其他策略中获取样本后,利用它们来更新目标策略。
5 实战应用
- 训练模式:迭代多个回合,在每个回合中,智能体根据状态选择动作,环境反馈下一个状态和奖励,智能体更新策略,直至回合结束。
- 参数设置:折扣因子(γ)、学习率(α)等超参数需要人工调整。例如,折扣因子通常设置在0.9到0.999之间。