【奖励分配】反事实多智能体策略梯度

293 阅读2分钟

反事实多智能体策略梯度

Counterfactual Multi-Agent Policy Gradients


反事实counterfactual是对已有结果进行假设,再推理,估计其中一项影响因素的发生概率

  • 提出了一种新的多智能体actor-critic方法:反事实多智能体(COMA)策略梯度。

做什么?

  • 单智能体的强化学习方法在多智能体上表现不好,智能体的联合动作空间随着智能体的数量呈指数增长 -> 使用分散策略 ->用新的强化学习方法来学习分散策略
  • 多智能体信用分配问题:多智能体的联合动作奖励分配存在挑战 -> 提出COMA来解决
    • COMA:1、使用集中评论 2、使用反事实作为基线->差别奖励 3、使用评论家表示,可以有效地计算反事实基线->所有agent的Q值可以在单个前向传播的batch中计算出来

比他人特别的?

  • 虽然大规模地减少了每个agent的视野,移除大量动作(macro-actions),但在信息缺失的情况下COMA可以与拥有完整信息的集中控制(centralised controllers)媲美
  • 前人做的只是在集中训练过程中传递代理之间的梯度和共享参数,未解决多智能体信用分配问题,或者说只是手工操作(人工指定cac^a

具体实现

  • Independent Actor-Critic:缺乏信息时很难学到协调策略,也难以评估单个agent action在整体中的奖励

    • 在agent之间共享参数:只学习一个演员和一个评论家,它们被所有agent使用

    • 每个agent评论家基于TD误差估计V(τa)V(τ^a)及对应的梯度,和下面一样

      • Vπ(st)=Est+1:,ut:[Rtst]V^π(s_t)=E_{s_{t+1}:∞,\pmb{u}_t:∞}[R_t|s_t]

      • image-20230708104815354

      RtR_t被替换为TD误差:=rt+γV(st+1)V(s)=r_t+γV (s_{t+1})−V (s),是A(st,ut)A(s_t, u_t)的无偏估计;Aπ(st,ut)=Qπ(st,ut)Vπ(st)A^π(s_t, \pmb{u}_t)=Q^π(s_t, \pmb{u}_t) − V ^π(s_t)为优势函数;Qπ(st,ut)=Est+1:,ut+1:[Rtst,ut]Q^π(s_t, \pmb{u}_t)=E_{s_{t+1}:∞,\pmb{u}_{t+1}:∞}[R_t|s_t,\pmb{u}_t]τaτ^a为agent a的历史观察

    • 每个agent评论家基于优势函数估计Q(τa,ua)Q(τ^a, u^a)及对应的梯度,优势函数A(τa,ua)=Q(τa,ua)V(τa)A(τ^a, u^a) = Q(τ^a, u^a)−V (τ^a),其中V(τa)=uaπ(uaτa)Q(τa,ua)V(τ^a) = \sum_{u^a}π(u^a|τ^a)Q(τ^a,u^a)

  • Counterfactual Multi-Agent Policy Gradients

    image-20230710110230365

    • 主要思想:每个agent从一个变形奖励Da=r(s,u)r(s(ua,ca))D^a=r(s,\pmb{u}) - r(s,(\pmb{u} ^{- a}, c^a))学习,将全局奖励与agent a的默认动作(cac^a)执行时的奖励相比较。任何一个agent的改进会提高整体奖励DaD^a,并且agent的动作不依赖于默认动作。

    • COMA学习集中评论家Q(s,u)Q(s,\pmb{u}),它基于中心状态ss来估计联合动作u\pmb{u}的Q值;此外,计算每个agent的优势函数:将Q值与反事实基线(πa(uaτa)Q(s,(ua,ua))\sumπ^a(u'^a|τ^a)Q(s,(\pmb{u}^{-a},u'^a)))进行比较以此边缘化uau^a ,当a的动作发生变化时直接从经验中学习

      image-20230708114032444

详细讲解:blog.csdn.net/qq_38638132…