1. 多智能体的常见设定:
  1. 合作关系。比如工业机器人
  2. 竞争关系。比如拳击比赛
  3. 合作-竞争混合。比如机器人足球比赛
  4. 利己主义。比如股票自动交易系统
  1. 多智能体系统的术语:
  1. 有n个智能体;
  2. \(S\)为状态;
  3. \(A^i\)表示第\(i\)个智能体的动作;
  4. 状态转移:
    多智能体强化学习信度分配 多智能体定义_多智能体强化学习信度分配
    下一个状态受到所有agent的影响。
  5. \(R^i\)是第\(i\)个智能体获得的奖励,\(R^i_t\)是第\(i\)个智能体在时间\(t\)获得的奖励。
  6. 回报\(U^i_t = R_t^i + R_{t+1}^i + ... + R_{\tau}^i\),折扣回报\(U^i_t = R_t^i + \lambda R_{t+1}^i + ... + \lambda^{\tau - t} R_{\tau}^i\)。
  7. 策略网络\(\pi(a^i | s;\theta^i)\),每个智能体都有自己的策略网络。
  8. 状态价值函数:\(V^i(s_t;\theta^1,...,\theta^n) = \mathbb{E}[U_t^i|S_t = s_t]\),第\(i\)个agent的状态价值函数受所有其他策略网络的影响。
  1. 多智能体系统的收敛问题(无法通过改变策略来获得更大的期望回报)
  1. 多个智能体达到收敛的标准是纳什均衡。即所有agent都不能通过改变自身策略来获得更高回报。
  1. 单智能体策略梯度
  1. 系统中某一个智能体的状态价值受其他智能体的影响,将其他智能体的参数固定,对第\(i\)个智能体的状态价值关于状态取期望(状态具有随机性),得到目标函数:
    多智能体强化学习信度分配 多智能体定义_多智能体强化学习信度分配_02
  2. 第\(i\)个网络的目标就是使用梯度上升最大化\(J^i(\theta^1,...,\theta^n)\)。
  3. 这种每个agent只更新自己的参数的方式可能永远也无法收敛。
  1. 多智能体训练三种常见方法:
  1. 完全去中心化,就是上面所提的单智能体策略梯度,各个智能体只管优化自己的参数,不和其他智能体共享信息。
  2. 完全中心化,智能体本身不做决策,而是完全交由一个中央控制器负责训练和决策,agent执行来自中央控制器的动作指令。
  1. agent没有策略网络。
  2. 训练时每个agent将自己的观测\(o^i\)和奖励\(r^i\)告诉给中央控制器,由中央控制器告诉agent动作。
  3. 中央控制器的策略网络结构只有一个\(\pi(a^i|o^1,...,o^n;\theta^i)\),但每个agent有对应的一套参数\(\theta^i\)。
  4. 做决策时策略网络要用到所有agent的观测。使用不同的网络参数给不同的agent动作指令。
  5. 中央控制器有n个策略网络和n个动作价值网络(actor-critic),价值网络输入是所有agent的观测和动作。
  • 完全中心化的缺点:训练和使用阶段都要和中央控制器通信和同步,导致反应速度慢。
  1. 中心化训练+去中心化执行。使用中央控制器来训练,等训练结束后舍弃之,决策交由agent来做。
  1. 每个agent都有一个自己的策略网络。
  2. 训练时有一个中央控制器帮助agent训练策略网络,执行阶段每个agent根据自己的局部观测做出决策。
  3. 中央控制器上有n个动作价值网络\(q(o,a;w^i)\);
  1. 局部观测
  1. 多智能体系统中某一个agent可能不能完全观察到当前的状态state;
  2. 令\(o^i\)表示第\(i\)个agent的观测,\(o^i \ne s\)。