强化学习算法的2大分类。这2个分类的重要差异是:智能体是否能完整了解或学习到所在环境的模型。有模型学习(Model-Based)对环境有提前的认知,可以提前考虑规划,但是缺点是如果模型跟真实世界不一致,那么在实际使用场景下会表现的不好。免模型学习(Model-Free)放弃了模型学习,在效率上不如前者,但是这种方式更加容易实现,也容易在真实场景下调整到很好的状态。所以免模型学习方法更受欢迎,得到更加广泛的开发和测试。

采用时序差分法的强化学习可以分为两类,一类是在线控制(On-policy Learning),即一直使用一个策略来更新价值函数和选择新的动作,代表方法就是Sarsa。而另一类是离线控制(Off-policy Learning),会使用两个控制策略,一个策略用于选择新的动作,另一个策略用于更新价值函数,代表方法就是Q-Learning。
1、Q-Learning
QLearning是强化学习算法中基于价值(value-based)的学习算法。Q即为Q(s,a),就是在某一时刻的s状态下采取动作a动作能够获得收益的期望,环境会根据agent的动作反馈相应的回报reward,所以算法的主要思想就是将State与Action构建成一张Q-table来存储Q值,然后根据Q值来选取能够获得最大的收益的动作。
QLearning的核心是Q-table,Q-table只是一个简单查找表的奇特名称。我们使用Q表来存储每一个状态 state, 和在这个state每个行为action所拥有的Q值,Q-table的行和列分别表示state和action的值(行=状态,列=动作),Q-table的值Q(s,a)衡量当前state采取action到底有多好。每个Q-table的得分将是机器人在该状态下采取该行动时将获得的最大预期未来奖励。这是一个迭代过程,因为我们需要在每次迭代时改进Q-Table。Q-Learning算法可以学习出Q表的每个值。
在实际的训练过程中,通常实验贝尔曼方程来更新Q-table:

Q(s,a)表示成当前状态s采取动作a后的即时奖励r,加上折价γ后的最大reward max(Q(s′,a′)。
Qlearning使用了时间差分法TD(融合了蒙特卡洛和动态规划)能够进行离线学习, 使用bellman方程可以对马尔科夫过程求解最优策略。
QLearning的两个重要术语:状态-state、行为-action。QLearning的目标是达到reward值最大的state。
QLearning算法的转移规则:

其中,(s,a)表示当前的状态和行为,(,
)表示s的下一个状态及行为,学习参数
为0-1之间的常数。这里,
趋向0表示agent主要考虑“眼前奖励”,趋向1表示agent主要考虑“记忆中的奖励”。Q为待构建的矩阵,表示agent已经学到的知识,R是reward矩阵,行表示状态,列表示行为。Q与R矩阵同阶。
将agent的每一次探索称为一个episode,在每一个episode中,agent从任意初始状态到达目标状态,当agent到达目标状态后,一个episode结束,进入下一个episode。
Q-learning算法流程:

A

本文详细介绍了强化学习的定义、基本术语,包括马尔可夫决策过程和贝尔曼方程,并探讨了Q-Learning、Sarsa、DQN等经典强化学习算法。强化学习是机器学习的一种,通过与环境的交互,智能体学习最优策略以获得最大回报。与其他学习方法相比,强化学习的特点在于不需要大量数据,而是通过试错和延迟反馈来优化决策。文章还涵盖了强化学习的基本流程和关键术语,如策略、值函数、奖励等。
5725

被折叠的 条评论
为什么被折叠?



