Q-learning是一种无模型的强化学习算法,它训练智能体根据当前状态为其可能采取的动作分配价值,而无需环境模型。它可以处理具有随机转移和奖励的问题,而无需进行调整。对于任何有限的马尔可夫决策过程,在无限探索时间和部分随机策略的条件下,Q-learning能够找到一种最优策略,即从当前状态开始,在所有连续步骤中最大化总奖励的期望值。“Q”指的是该算法计算的函数:在给定状态下采取某个动作的预期奖励,即其质量。
在一个简单示例中,一个网格迷宫智能体学习到达价值10分的出口。在分岔口,如果向右比向左能更快到达出口,Q-learning可能会为向右移动分配比向左更高的价值,并通过随时间尝试两个方向来改进这一选择。这说明了该算法如何通过迭代更新在即时奖励与长期结果之间取得平衡。
强化学习背景
强化学习涉及一个智能体、一组状态\(\mathcal{S}\),以及每个状态下的一组动作\(\mathcal{A}\)。通过执行动作\(a \in \mathcal{A}\),智能体从一种状态转移到另一种状态。在特定状态下执行动作会为智能体提供奖励,即一个数值分数。智能体的目标是通过将未来状态可获得的最大奖励与实现当前状态的奖励相加,来最大化其总奖励,从而有效地通过潜在未来奖励影响当前动作。这种潜在奖励是从当前状态开始所有未来步骤奖励期望值的加权和。
例如,考虑乘坐火车,其中奖励以总乘车时间的负值来衡量。一种策略是门一打开就进入火车,以最小化初始等待时间。然而,如果火车拥挤,由于下车的乘客争相离开,进入会很慢。总乘车时间则为0秒等待加15秒争抢时间。第二天,由于随机机会(探索),智能体等待并让其他人先下车,导致等待时间更长但争抢时间更少。总体而言,这条路径具有更高的奖励,因为总乘车时间是5秒等待加0秒争抢时间。通过探索,尽管初始耐心行动比强行策略产生更大成本,但总体成本更低,揭示了一种更有回报的策略。
算法机制
在\(\Delta t\)步之后,智能体将决定下一步。此步骤的权重计算为\(\gamma^{\Delta t}\),其中\(\gamma\)(折扣因子)是介于0和1之间的数字。假设\(\gamma < 1\),它比后期奖励更重视早期获得的奖励,反映了良好开端的价值。\(\gamma\)也可以解释为每一步\(\Delta t\)成功或生存的概率。
该算法有一个函数来计算状态-动作组合的质量:\(Q: \mathcal{S} \times \mathcal{A} \to \mathbb{R}\)。在学习开始之前,\(Q\)被初始化为程序员选择的可能任意固定值。在每个时间\(t\),智能体选择动作\(A_t\),观察奖励\(R_{t+1}\),进入新状态\(S_{t+1}\)(该状态可能取决于先前状态\(S_t\)和所选动作),并更新\(Q\)。核心更新是一个贝尔曼方程,作为简单的值迭代更新,使用当前值和新信息的加权平均:
\(Q_{new}(S_t, A_t) \leftarrow (1 - \alpha) \cdot Q(S_t, A_t) + \alpha \cdot [R_{t+1} + \gamma \max_a Q(S_{t+1}, a)]\)
其中\(\alpha\)是学习率,控制新信息覆盖旧信息的程度。
探索与利用
该算法依赖于探索(尝试新动作以发现其奖励)与利用(选择已知能产生高奖励的动作)之间的平衡。部分随机策略,如epsilon-greedy,大多数时候选择已知最佳动作,但偶尔选择随机动作进行探索。这确保智能体能够随时间改进其估计,如火车乘坐示例所示,随机探索揭示了更好的策略。
收敛性与最优性
对于任何有限的马尔可夫决策过程,在无限探索时间和适当学习率调度的条件下,Q-learning收敛到一种最优策略,该策略从任何起始状态最大化预期总奖励。该算法不需要环境转移动态的模型,使其适用于此类模型未知或复杂的问题。这种无模型特性将其与需要显式转移概率的基于模型的方法区分开来。
应用与扩展
Q-learning已应用于机器人技术、游戏玩法和自主系统。其表格形式适用于小状态空间,但对于大或连续空间,深度Q网络等扩展将Q-learning与深度学习和神经网络函数逼近器相结合。这些进展已在诸如人工智能游戏智能体和机器学习控制任务等领域取得成功。该算法的原理也支撑了强化学习的现代研究,例如在伯克利人工智能研究和麻省理工学院计算机科学与人工智能实验室等机构。