学习日志-2021.10.04
学习日志-2021.10.04
博弈论与多智能体强化学习(续)
文献阅读:
学习自动机强化方案
-
学习自动机是相对简单的策略迭代器,在动作集a上保持向量动作概率p。这些概率根据从环境接收到的反馈进行更新。
-
这种方案最初的研究主要集中在n-臂赌博机(n-armed bandit)环境中的单个自动机。
-
最常用的自动学习机更新方案称为线性奖-惩(Linear Reward-Penalty),其更新行动概率如下:
\(p_i (t+1) = p_i (t) + \lambda_1 r(t) (1-p_i(t)) - \lambda_2 (1-r(t)) p_i (t)\) , \(if\) \(a(t) = a_i\) ;
\(p_j (t+1) = p_j (t) - \lambda_1 r(t) p_j (t) + \lambda_2 (1-r(t))(\frac{1}{K-1} - p_j (t))\) , \(if\) \(a_j ≠ a_i\) .
第一个公式存在错误 \(b(t)\) ,现已修正为 \(r(t)\) 。
-
\(r(t)\) 是在时间t处接收到的反馈;
-
\(K\) 表示自动机的动作数量;
-
\(\lambda_1\) 和 \(\lambda_2\) 为常数,分别代表奖励因子和惩罚因子。根据这两个参数的变化,有3种不同的算法
-
当 \(\lambda_1 = \lambda_2\) 时,该算法为线性奖-惩( \(Linear\) \(Rewaed-Penalty,L_{R-P}\) );
-
当 \(\lambda_1 >> \lambda_2\) 时,该算法为线性奖- \(\epsilon\) 惩( \(Linear\) \(Rewaed-\epsilon Penalty,L_{R-\epsilon P}\) );
-
当 \(\lambda_2 = 0\) 时,该算法为线性奖励无效(\(Linear\) \(Rewaed-Inaction,L_{R-I}\) ),此时 \(\lambda_1\) 可以被称为学习率:
\(p_i (t+1) = p_i (t) + \lambda_1 r(t) (1-p_i (t))\) , \(if\) \(a(t)=a_i\) ,
\(p_j (t+1) = p_j (t) - \lambda_1 r(t) p_j (t)\) , \(if\) \(a_j ≠ a_i\).
这些算法虽然都来自相同的通用方案,但它们会表现出不同的学习行为。在不需要其他玩家的任何信息(动作、奖励、策略)的情况下,这些学习方案在游戏环境中也能表现良好。在两人零和博弈中,当纯策略存在时,\(L_{R-I}\) 方案收敛到纳什均衡,而 \(L_{R- \epsilon P}\) 方案能够近似混合均衡。在n个玩家的公共物品博弈中,奖励无效方案也会收敛到纯粹的纳什均衡。
Sastry等人在1994年的研究中,探讨了一般和博弈中奖励行为的状态,通过常微分方程组近似自动机博弈中的更新。发现以下属性适用于 \(L_{R-I}\) 动力学:
- 所有的纳什均衡是固定点;
- 所有严格的纳什均衡都是渐近稳定的;
- 所有的非纳什均衡的静止点都是不稳定的。
-
-
基于学习自动机的方案能在智能体异步行动和有奖励延迟的环境下达到收敛。
-
另外一种梯度技术是无穷小梯度上升( \(Infinitestesimal\) $ Gradient$ \(Ascent\) ,IGA )算法。
序贯博弈
传统的博弈论框架虽然强调了多智能体环境中的学习所带来的一些重要问题,但并未充分体现多智能体强化学习的复杂性。强化学习问题的一个重要部分是在具有状态转换的环境中做出顺序决策,不能用标准博弈来描述,因为标准博弈只允许静态的、可能随机的、完全依赖于玩家行为的奖励函数。
在标准博弈中,没有状态转换系统的概念这是马尔可夫决策过程概念的核心问题。因此,我们要考虑一个包括重复博弈和MDPs的丰富框架。将多个智能体引入MDP模型会使学习智能体面临的问题显得复杂化。现在让环境中的奖励和状态转变都取决于系统中所有智能体的行为,因此智能体需要在联合行动空间学习。此外,由于每个智能体可以具有不同的目标,因此可能不存在同时最大化所有智能体奖励的最佳解决方案。
-
马尔可夫博弈
马尔可夫博弈可以定义单智能体马尔可夫决策过程(MDP)到多智能体情况的扩展。在马尔可夫博弈中,联合动作是多个智能体独立选择动作的结果。
多智能体试图优化他们未来预期奖励的策略,通常情况下,他们会尝试最大限度地提高未来的折扣奖励或平均奖励。与单智能体的主要区别在于,现在策略的选择还取决于其他智能体的策略。参考公式
-
马尔可夫博弈中的强化学习
在标准博弈中,强化学习者面临的挑战主要来自智能体之间的互动,在马尔可夫博弈中,他们还面临着状态转换环境。
-
值迭代法
已经有许多将成功的Q-learning算法扩展到多智能体系统的方法,为了在多智能体环境中取得成功,这些算法必须首先处理一些关键问题。
- 第一个问题:当前的奖励和状态转移概率取决于所有智能体的行为。因此多智能体Q-learning方法中,智能体不只是学习评估每个状态-动作,而是评估状态-动作集,为在状态s中采取联合动作 a = \(a_1,...,a_n\) ,给出预期的未来奖励。即智能体在状态s采取的行动将获得的未来奖励不是单一的,而是一个评估向量,根据其他智能体的联合行动 \(a_{-k}\) 得出行动 \(a_k\) 的未来奖励。在学习过程中,智能体选择一个动作,然后需要观察其他智能体采取的动作,以便更新适当的Q(s,a)值。
- 第二个问题:引导更新中使用的状态值。在单智能体Q-learning的更新规则中,智能体在下一个状态 \(s'\) 中使用其超过其他行为的最大值。这是贪心策略下状态 \(s'\) 值的当前评估。但在多智能体情况下,智能体不能预测下一状态采取行动的值,因为这个值也取决于其他智能体的行动。为了解决这个问题,许多研究者提出了许多不同的方法,通过考虑其他智能体来计算 \(s'\) 的值。
-