Multi-Agent Actor-Critic for Mixed Cooperative-Competitive Environments

2017-10-25  16:38:23  

 【Project Pagehttps://blog.openai.com/learning-to-cooperate-compete-and-communicate/ 

   4. Method

  4.1 Multi-Agent Actor Critic

  

  该网络框架有如下假设条件: 

  (1) the learned policies can only use local information (i.e. their own observations) at execution time,

  (2) we do not assume a differentiable model of the environment dynamics, unlike in [24], 

  (3) we do not assume any particular structure on the communication method between agents (that is, we don’t assume a differentiable communication channel).  

  ================>>>

  1. 学习到的策略在执行时,仅仅是利用局部的信息

  2. 我们不假设环境动态的可微分模型

  3. 我们不假设 agents 之间任何通信模型上的特定结构

  本文的模型是以 centralized training with decentralized execution framework 为基础进行的,而这个框架的意思是:以全局的信息进行训练,而实际测试的时候是分散执行的

  更具体的来说,我们考虑有 N 个 agent 的游戏,所以,每个 agent i 的期望汇报可以记为:

  

  此处的 Q 函数 是一个中心化的动作值函数(centralized action-value function),将所有 agent 的动作作为输入,除了某些状态信息 X,然后输出是 the Q-value for agent i

  在最简单的情况下,x 可以包含所有 agent 的观测,x = (o1, ... , oN),但是我们也可以包含额外的状态信息。由于每一个 Q 都是分别学习的,agent 可以拥有任意的奖励结构,包括在竞争设定下的冲突奖励。

  

  我们可以将上述 idea 拓展到 deterministic policies。如果我们考虑到 N 个连续的策略,那么梯度可以写作:

  

  此处,经验回放池 D 包括 the tuples (x, x', a1, ... , aN, r1, ... , rN),记录所有 agents 的经验。中心化的动作值函数 Q可以通过如下的方程,进行更新:

  

  

  4.2 Inferring Policies of Other Agents

  为了移除假设:knowing other agents' policies, 就像公式(6)中所要求的那样。每一个 agent i 可以估计 agent j 的真实策略。这个估计的策略可以通过最大化 agent 选择动作的 log 概率,且加上一个 entropy regularizer:

  

  其中,H 是策略分布的熵。有了估计的策略,公式(6)中的 y 可以用估计的值 y^ 来进行计算:

  

  其中,\mu’ 代表用来估计策略的 target network。注意到,公式(7)可以完全在线的执行,before updating $Q_i^{\mu}$, the centralized Q function, 我们采取每一个 agent j 的最新的样本,from the replay buffer to perform a single gradient step to update $\phi^j_i$。另外,在上述公式中,我们直接将每个 agent 的动作 log 概率输入到 Q,而不是 sampling。

  4.3 Agents with Policy Ensembles

  

  


论文笔记:Multi-Agent Actor-Critic for Mixed Cooperative-Competitive Environments的更多相关文章

  1. 深度增强学习--Actor Critic

    Actor Critic value-based和policy-based的结合 实例代码 import sys import gym import pylab import numpy as np ...

  2. 【论文笔记系列】AutoML:A Survey of State-of-the-art (下)

    [论文笔记系列]AutoML:A Survey of State-of-the-art (上) 上一篇文章介绍了Data preparation,Feature Engineering,Model S ...

  3. 深度学习论文笔记:Fast R-CNN

    知识点 mAP:detection quality. Abstract 本文提出一种基于快速区域的卷积网络方法(快速R-CNN)用于对象检测. 快速R-CNN采用多项创新技术来提高训练和测试速度,同时 ...

  4. Deep Learning论文笔记之(四)CNN卷积神经网络推导和实现(转)

    Deep Learning论文笔记之(四)CNN卷积神经网络推导和实现 zouxy09@qq.com http://blog.csdn.net/zouxy09          自己平时看了一些论文, ...

  5. 论文笔记之:Visual Tracking with Fully Convolutional Networks

    论文笔记之:Visual Tracking with Fully Convolutional Networks ICCV 2015  CUHK 本文利用 FCN 来做跟踪问题,但开篇就提到并非将其看做 ...

  6. Deep Learning论文笔记之(八)Deep Learning最新综述

    Deep Learning论文笔记之(八)Deep Learning最新综述 zouxy09@qq.com http://blog.csdn.net/zouxy09 自己平时看了一些论文,但老感觉看完 ...

  7. Twitter 新一代流处理利器——Heron 论文笔记之Heron架构

    Twitter 新一代流处理利器--Heron 论文笔记之Heron架构 标签(空格分隔): Streaming-process realtime-process Heron Architecture ...

  8. Deep Learning论文笔记之(六)Multi-Stage多级架构分析

    Deep Learning论文笔记之(六)Multi-Stage多级架构分析 zouxy09@qq.com http://blog.csdn.net/zouxy09          自己平时看了一些 ...

  9. Multimodal —— 看图说话(Image Caption)任务的论文笔记(一)评价指标和NIC模型

    看图说话(Image Caption)任务是结合CV和NLP两个领域的一种比较综合的任务,Image Caption模型的输入是一幅图像,输出是对该幅图像进行描述的一段文字.这项任务要求模型可以识别图 ...

随机推荐

  1. JavaScript <script>标签的位置、延迟脚本(defer属性)与 异步脚本(async属性)

    一.<script>标签的位置 传统的做法是将<script>元素放在<head>元素中,例如: <!DOCTYPE html><html > ...

  2. 每天记命令:lscpu 和 cat /proc/cpuinfo

    [1]lscpu lscpu命令,查看cpu相关的统计信息. socket 就是主板上插cpu的槽的数目,也就是可以插入的物理CPU的个数(比如上例,可以插入1个CPU). core 就是我们平时说的 ...

  3. arm cortex-m0plus源码学习(一)整体框架

    Cortex-M0 分别是系统.电源管理.时钟.复位 由于.cm0p_ik_defs.v里 `define  ARM_CM0PIK_IOP 0,这里的gpio是ahb接口的,画叉的部分没有例化. ah ...

  4. OpenVPN 服务端(pritunl)的一些运维经验

    1.当服务端部署在docker中,重启机器之后,docker服务会启动,pritunl的docker容器也会跟着自动启动.但此时,一些系统服务还未完全启动成功,导致会有一些pritunl server ...

  5. mybatis源码解析1--前言

    在开始分析mybatis源码之前,需要定一个目标,也就是我们不是为了读源码而去读,一定是带着问题去读,在读的时候去寻找到答案,然后再读码的同时整理总结,学习一些高级的编码方式和技巧. 首先我们知道my ...

  6. [转载]WebService使用的一些总结

    什么是WebService: 这个不用我在这里废话,网上的资料一搜一大把,如果你没有接触过这方面的知识,你可以先去网上查一下.这里我只想说一下我印象比较深刻的几点: WebService是基于soap ...

  7. 软件工程 #02# Entity Relationship Diagram VS. 用 UML 中的类图表示 E-R 图

    不同的老师叫我们画 E-R 图居然是不一样的,于是我仔细研究了一番.. 通常所说的 E-R 图(外文全称 Entity Relationship Diagram,简称 ERD)长这个样子: 而有时候它 ...

  8. GUID生成函数

    /** * GUID生成函数 * @return string */function create_guid() { $charid = strtoupper(md5(uniqid(mt_rand() ...

  9. python selenium chrome有界面与无界面模式

    from selenium.webdriver.chrome.options import Options from selenium import webdriver # 无界面模式 def Chr ...

  10. kivy __init__() got an unexpected keyword argument '__no_builder' Kivy

    from kivy.lang.builder import Builder from kivy.app import App, runTouchApp from kivy.uix.boxlayout ...