An Algorithm for Distributed Reinforement Learning in Cooperative Multi-Agent Systems

本文探讨了多智能体强化学习(Multi-Agent Reinforcement Learning, MAMDP)在确定性和随机性环境下的应用,特别是在合作型游戏中的策略优化。文章对比了cooperative MAMDP与SAMDP的区别,提出了在没有额外信息交换的条件下,如何让多个智能体达成最优策略的挑战与解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这篇文章是2000年发在ICML上的(如果我没记错的话),本篇博客主要是记录读后的总结,因为信息量比较大,只是混杂。

区分两个概念:deterministic enviroment and  stochastic enviroment:

摘一段原文:

随即环境下的区别是没有成熟的转移函数,所有的状态转移全都是互相独立运行的。

在deterministic enviroment下:Q表的更新公式如下:

在stochastic enviroment下:Q表的更新公式如下:

这里我们看到固定环境下,有函数,也就是能转移到下一个状态,直接拿着下一个状态的最大的Q值就可以。而下面的公式因为没有成熟的转移函数,也就是不知道当前状态下,采用这个动作集合,不能确定转移的状态,那么就需要将能转移到的所有可能的状态全部考虑进去,来代表下一个状态的值。

此论文讨论的是一些游戏的特殊情况,一种是zero-sum的游戏,两个agent互相竞争,Reward函数完全相反。另一种是合作形的游戏,使用的是相同的reward函数。此论文主要讨论后者。

再次再次区分一下general MAMDP和cooperative MAMDP这两种,general主要是每个agent都有一个自己的reward函数,它的特点是,没有办法找到最优解,相反需要寻找一个平衡点,也就是(如果其他agent的策略已经固定,那么此agent无法再得到更好的reward)。相反cooperative对所有的agents使用相同的reward函数,在这种框架下,可以找到平衡点,也可以找到最优点(maximal discounted reward)。

 

文章解释了为什么不能把cooperative MAMDP堪称SAMDP(一个agent代表全队),cooperative MAMDP是所有的agent的同时做出决策,而SAMDP只有一个agent可以决定最后的policy

文章提出了两种情况:第一种是:每个agent的action互相都知道,另一种是:每个agent只知道他们自己的action,前者被叫做joint action learners(JAR),第二种是independent learners。本文假设在这两种情况下,所有的agent都知道当前的state以及不同转移的reward

本文主要阐述的是在agents之间没有附加信息或者通信的cooperative MAMDP ,这里主要有两个难点 , 一是:agent必须学会哪个策略是最优的,二是,如果多个最优策略摆在面前,agent需要同意意见得到一个policy用于整个team

相关工作:

Littman 1994年发明了一个算法用于解决zero—sum的游戏,用于找到平衡点,之后Wellman 1998年改进了该算法,但都需要指导JAR的所有信息(all information  of  joint action learners)。不能用于independent learners

1998年Claus和Boutilier尝试使用基本的Q-learning算法作用于independent learners,但是没保证能一定得到平衡点以及最优策略

1999年Wolpert ,Wheeler,Tumer尝试为每个agent建立一个独立的reward function,但是这个方法加大了复杂性,同时也增加了运算代价

之前也有过很多相关的分布式的研究,但是都没有做任何adaption对于其他agent。

问题定义:

提供一个转移规则以及一个reward函数,为了简化,我们使用了一个deterministic enviroment,也就是转移规则是固定的:

目标是:发现一个最优策略(状态到动作set的转移)来maximizes转移规则下进行。

这里多agent的与单agent唯一不同,每个agent都要有决策

一种方式是在分布式MDP中,先看做单个agent,计算policy以及值迭代,之后再将policy分解成多个组件策略,也就是每个agent的policy

在确定环境下,Q-learning的迭代规则为:(第一式子)

但是这个算法需要一个中央控制,而我们希望分布式组件的学习,每个agent通过当前state,agent自身的选择以及通过转移获得reward应该展示的像是一个independent agent

basic idea of this paper

首先需要简历一个center Q表

当知道当前的state,以及action set时,通过一下公式更新每个agent的q表

通过一系列推到:如下:

我们最后得到的结论就是

这里我们都采用的是贪心的想法,假设其他都表现最好。如下图例子:

大概可以看出,这种测略也可以被叫做optimiistic assumption:

每个agent都假设其他的agent表现的最好,也就是nash 平衡,

这样组合起来,也就出现了最优的team policy,这也是这里采用的。

另一种without any adaption to the multi-agent-model individual q(j)-table的方法使用的是如下策略:

但是实验证明这种方法多依赖于项目本身,不能保证收敛于最优或者次优状态。

Agent之间的协调:

举一个特例:

因此需要一个另外的协调才能保证最后获得最终的team policy

这里我们提出了一种方法,这里前提是每次得到value都是正的,也就可以得到每次Q值都应该是单调的。

这里我们提出了

的策略更新方法。也就是如果对应的q(j)表没有更新,那么就不去更新对应的策略。

下面是证明,主要用到的是Q的单调性,从而可以在第二个例子得到最佳的结果。

下面又将内容扩展到了Stochastic的环境中。

Q表更新公式就从变为

明显这是上式的泛化,同理q表也发生了改变:

在stochastic环境中的决定成功的关键是:其他agent的动作(转移函数不确定,也就无法确定其他agent的动作了),stochastic环境的随机影响

在2000年时,解决这个问题仍然很困难。

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值