读书笔记:多智能体机器学习(二)
文章目录
- 双人矩阵博弈学习
- Nash均衡
- 求解Nash均衡
- 线性规划
- 梯度上升算法 Gradient Ascent Algorithm
- WoLF-IGA (win or learn fast-policy) 算法
- the policy hill climbing (PHC) algorithm
- WoLF-PHC算法
- 多人随机博弈
- 极大极小Q学习算法 Minimax-Q Algorithm
- Nash Q学习算法
- Friend-or-Foe Q-Learning
双人矩阵博弈学习
Nash均衡
猜硬币 | 囚徒困境 | 剪刀-石头-布 |
---|---|---|
R1=[1−1−11]R_{1} = \begin{bmatrix} 1 & -1 \\ -1 & 1 \end{bmatrix}R1=[1−1−11] | R1=[50101]R_{1} = \begin{bmatrix} 5 & 0 \\ 10 & 1 \end{bmatrix}R1=[51001] | R1=[0−1110−1−101]R_{1} = \begin{bmatrix} 0 & -1 & 1 \\ 1 & 0 & -1 \\ -1 & 0 & 1 \end{bmatrix}R1=⎣⎡01−1−1001−11⎦⎤ |
– | – | – |
R2=R1R_{2} = R_{1}R2=R1 | R2T=R1R_{2}^{\rm T} = R_{1}R2T=R1 | R2=−R1R_{2} = - R_{1}R2=−R1 |
完全混合策略下的Nash均衡 | 纯策略下的Nash均衡 | 完全混合策略下的Nash均衡 |
矩阵博弈(策略博弈)可用一个元组 (n,A1,⋯,An,R1,⋯,Rn)\left(n, A_{1}, \cdots, A_{n}, R_{1}, \cdots, R_{n}\right)(n,A1,⋯,An,R1,⋯,Rn) 来描述。其中,nnn 为智能体个数,AiA_{i}Ai 是指智能体 iii 有效行为空间,RiR_{i}Ri 是其所获的回报函数。
在矩阵博弈中,智能体的目标是寻找纯策略/混合策略以使得其收益最大化。
- 纯策略:确定性选择行为的策略;
- 混合策略:基于智能体所有可能行为的概率分布来选择行为的策略。
Nash 均衡
矩阵博弈中的Nash均衡是指所有玩家的策略 (π1∗,⋯,πn∗)\left(\pi_{1}^{\ast}, \cdots, \pi_{n}^{\ast}\right)(π1∗,⋯,πn∗) 满足 Vi(π1∗,⋯,πi∗,⋯,πn∗)≥Vi(π1∗,⋯,πi,⋯,πn∗),∀πi∈Πi,i=1,⋯,n.\begin{aligned} V_{i} \left(\pi_{1}^{\ast}, \cdots, \pi_{i}^{\ast}, \cdots, \pi_{n}^{\ast}\right) & \geq V_{i} \left(\pi_{1}^{\ast}, \cdots, \pi_{i}, \cdots, \pi_{n}^{\ast}\right) , \\ \forall \pi_{i} \in \Pi_{i}, & \quad i = 1, \cdots, n. \end{aligned}Vi(π1∗,⋯,πi∗,⋯,πn∗)∀πi∈Πi,≥Vi(π1∗,⋯,πi,⋯,πn∗),i=1,⋯,n.
其中,ViV_{i}Vi 是玩家 iii 的值函数,即给定玩家策略后该玩家的期望回报;πi\pi_{i}πi 是玩家 iii 在策略空间 Πi\Pi_{i}Πi 中选择的任一策略。
- 若上述不等式严格成立,则为严格Nash均衡;
- 如果行为集中所有行为的概率均大于0,则玩家策略称为完全混合策略;
- 如果玩家选择某一行为的概率为1,而其他情形选择概率为0,则玩家策略称为纯策略;
在给定其他玩家行为下,如果每个玩家的均衡行为均优于其他行为,则称为纯策略中的严格Nash均衡。
求解Nash均衡
问题
求解双人零和矩阵博弈中的Nash均衡等价于寻找 maxπi∈PD(Ai)mina−i∈A−i∑ai∈AiRiπi(ai)\max_{\pi_{i} \in \text{PD}(A_{i})} \min_{a_{-i} \in A_{-i}} \sum_{a_{i} \in A_{i}} R_{i} \pi_{i}(a_{i})πi∈PD(Ai)maxa−i∈A−iminai∈Ai∑Riπi(ai) 的最小解。其中,πi(ai)\pi_{i}(a_{i})πi(ai) 是指玩家 iii 的行为 aia_{i}ai 的概率分布;a−ia_{-i}a−i 表示除玩家 iii 以外其他玩家的所有行为;PD(Ai)\text{PD}(A_{i})PD(Ai) 为玩家 iii 的行为集 AiA_{i}Ai 的所有概率分布集合。
线性规划
根据上式,玩家都试图在与对手对抗的最坏情况下,得到最大回报。事实上,可用单纯形法进行求解。
梯度上升算法 Gradient Ascent Algorithm
梯度上升算法(GA)是一个基本算法,与其相关的有无穷小梯度上升算法(IGA)。
考虑双玩家(行玩家与列玩家)的回报矩阵为
Rr=[r11r12r21r22],Rc=[c11c12c21c22].R_{r} = \begin{bmatrix} r_{11} & r_{12} \\ r_{21} & r_{22}\end{bmatrix}, \quad R_{c} = \begin{bmatrix} c_{11} & c_{12} \\ c_{21} & c_{22}\end{bmatrix}.Rr=[r11r21r12r22],Rc=[c11c21c12c22].
假设玩家1选择行为1的概率为 α\alphaα,玩家2选择行为1的概率为 β\betaβ,则该矩阵博弈的策略完全由联合策略 π(α,β)\pi(\alpha, \beta)π(α,β) 确定。定义每个玩家的预期回报为 Vr(α,β)V_{r}(\alpha, \beta)Vr(α,β) 和 Vc(α,β)V_{c}(\alpha, \beta)Vc(α,β),则其可以表示为
Vr(α,β)=αβr11+α(1−β)r12+(1−α)βr21+(1−α)(1−β)r22=urαβ+α(r12−r22)+β(r21−r22)+r22,Vc(α,β)=αβc11+α(1−β)c12+(1−α)βc21+(1−α)(1−β)c22=ucαβ+α(c12−c22)+β(c21−c22)+c22,\begin{aligned} V_{r}(\alpha, \beta) & = \alpha \beta r_{11} + \alpha (1 - \beta) r_{12} + (1 - \alpha) \beta r_{21} +(1 - \alpha) (1 - \beta)r_{22}\\ & = u_{r} \alpha \beta + \alpha (r_{12} -r_{22}) + \beta (r_{21} -r_{22}) + r_{22}, \\ V_{c}(\alpha, \beta) & = \alpha \beta c_{11} + \alpha (1 - \beta) c_{12} + (1 - \alpha) \beta c_{21} +(1 - \alpha) (1 - \beta)c_{22}\\ & = u_{c} \alpha \beta + \alpha (c_{12} - c_{22}) + \beta (c_{21} - c_{22}) + c_{22}, \end{aligned}Vr(α,β)Vc(α,β)=αβr11+α(1−β)r12+(1−α)βr21+(1−α)(1−β)r22=urαβ+α(r12−r22)+β(r21−r22)+r22,=αβc11+α(1−β)c12+(1−α)βc21+(1−α)(1−β)c22=ucαβ+α(c12−c22)+β(c21−c22)+c22, 其中,ur=r11−r12−r21+r22u_{r} = r_{11} - r_{12} - r_{21} + r_{22}ur=r11−r12−r21+r22,uc=c11−c12−c21+c22u_{c} = c_{11} - c_{12} - c_{21} + c_{22}uc=c11−c12−c21+c22。
此时可计算回报函数相对于策略的梯度,进而GA算法为
αk+1=αk+η∂Vr(αk,βk)∂αk,βk+1=βk+η∂Vr(αk,βk)∂βk.\begin{aligned} \alpha_{k+1} & = \alpha_{k} + \eta \frac{\partial V_{r}(\alpha_{k}, \beta_{k})}{\partial \alpha_{k} }, \\ \beta_{k+1} & = \beta_{k} + \eta \frac{\partial V_{r}(\alpha_{k}, \beta_{k})}{\partial \beta_{k} }. \end{aligned}αk+1βk+1=αk+η∂αk∂Vr(αk,βk),=βk+η∂βk∂Vr(αk,βk).
如果玩家双方都执行IGA算法,即η→0\eta \to 0η→0, 则各自的策略将收敛于Nash均衡,或整个过程内的平均回报将收敛于Nash均衡期望回报的极限值。
WoLF-IGA (win or learn fast-policy) 算法
该算法允许玩家根据当前梯度和可变学习速率来更新策略。更新规则如下
αk+1=αk+ηak∂Vr(αk,βk)∂αk,βk+1=βk+ηbk∂Vr(αk,βk)∂βk,ak={amin,if Vr(αk,βk)>Vr(α∗,βk),amax,o.w.,bk={bmin,if Vr(αk,βk)>Vr(αk,β∗),bmax,o.w..\begin{aligned} \alpha_{k+1} & = \alpha_{k} + \eta a_{k} \frac{\partial V_{r}(\alpha_{k}, \beta_{k})}{\partial \alpha_{k} }, \\ \beta_{k+1} & = \beta_{k} + \eta b_{k} \frac{\partial V_{r}(\alpha_{k}, \beta_{k})}{\partial \beta_{k} }, \\ a_{k} & = \begin{cases} a_{\min}, & \text{if } V_{r}(\alpha_{k}, \beta_{k}) > V_{r}(\alpha^{\ast}, \beta_{k}), \\ a_{\max}, & o.w.,\end{cases} \\ b_{k} & = \begin{cases} b_{\min}, & \text{if } V_{r}(\alpha_{k}, \beta_{k}) > V_{r}(\alpha_{k}, \beta^{\ast}), \\ b_{\max}, & o.w..\end{cases} \end{aligned}αk+1βk+1akbk=αk+ηak∂αk∂Vr(αk,βk),=βk+ηbk∂βk∂Vr(αk,βk),={amin,amax,if Vr(αk,βk)>Vr(α∗,βk),o.w.,={bmin,bmax,if Vr(αk,βk)>Vr(αk,β∗),o.w..
the policy hill climbing (PHC) algorithm
(3.49)
Qt+1j(a)=(1−α)Qtj(a)+α(rj+γmaxa′Qtj(a′))πt+1j(a)=πtj(a)+Δa.\begin{aligned} Q_{t+1}^{j} (a) & = (1-\alpha)Q_{t}^{j} (a) + \alpha(r^{j} + \gamma \max_{a^{\prime}}Q_{t}^{j} (a^{\prime})) \\ \pi_{t+1}^{j} (a) & = \pi_{t}^{j} (a) + \Delta_{a}. \end{aligned}Qt+1j(a)πt+1j(a)=(1−α)Qtj(a)+α(rj+γa′maxQtj(a′))=πtj(a)+Δa.
(3.50)
Δa={−δa,if a≠argmaxa′Qtj(a′),∑a′≠aδa′,o.w..\Delta_{a} = \begin{cases}- \delta_{a}, & \text{if } a \neq \arg \max_{a^{\prime}} Q_{t}^{j} (a^{\prime}), \\ \sum_{a^{\prime} \neq a} \delta_{a^{\prime}}, & o.w.. \end{cases}Δa={−δa,∑a′=aδa′,if a=argmaxa′Qtj(a′),o.w..
WoLF-PHC算法
(3.53)
Qt+1j(a)=(1−α)Qtj(a)+α(rj+γmaxa′Qtj(a′))πt+1j(a)=πtj(a)+Δa.\begin{aligned} Q_{t+1}^{j} (a) & = (1-\alpha)Q_{t}^{j} (a) + \alpha(r^{j} + \gamma \max_{a^{\prime}}Q_{t}^{j} (a^{\prime})) \\ \pi_{t+1}^{j} (a) & = \pi_{t}^{j} (a) + \Delta_{a}. \end{aligned}Qt+1j(a)πt+1j(a)=(1−α)Qtj(a)+α(rj+γa′maxQtj(a′))=πtj(a)+Δa.
(3.50)
Δa={−δa,if a≠argmaxa′Qtj(a′),∑a′≠aδa′,o.w..\Delta_{a} = \begin{cases}- \delta_{a}, & \text{if } a \neq \arg \max_{a^{\prime}} Q_{t}^{j} (a^{\prime}), \\ \sum_{a^{\prime} \neq a} \delta_{a^{\prime}}, & o.w.. \end{cases}Δa={−δa,∑a′=aδa′,if a=argmaxa′Qtj(a′),o.w..
其他算法略过。
多人随机博弈
- 马氏决策过程:一个玩家+多个状态;
- 矩阵博弈:多个玩家+一个状态。
- 两者结合即为随机博弈/马氏博弈。
随机博弈可表示为一个元组 (n,S,A1,⋯,An,T,γ,R1,⋯,Rn).(n, S, A_{1}, \cdots, A_{n}, T, \gamma, R_{1}, \cdots, R_{n}).(n,S,A1,⋯,An,T,γ,R1,⋯,Rn). 其中,nnn 是玩家个数,T:S×A1×⋯×An×S→[0,1]T: S \times A_{1} \times \cdots \times A_{n} \times S \to [0, 1]T:S×A1×⋯×An×S→[0,1] 为转移函数,AiA_{i}Ai 是对应的玩家行为集,Ri:S×A1⋯××An×S→RR_{i}: S \times A_{1} \cdots \times \times A_{n} \times S \to \mathbb{R}Ri:S×A1⋯××An×S→R 是对应玩家的回报函数。
随机博弈的Nash均衡策略就是,诶个特定状态矩阵博弈中Nash均衡策略的集合。
极大极小Q学习算法 Minimax-Q Algorithm
(4.7)
Vi∗(s)=maxπi(s,⋅)mina−i∈A−i∑ai∈AiQi∗(s,ai,a−i)πi(s,ai).V_{i}^{\ast} (s) = \max_{\pi_{i}(s,\cdot)} \min_{a_{-i} \in A_{-i}} \sum_{a_{i} \in A_{i}} Q_{i}^{\ast}(s, a_{i}, a_{-i}) \pi_{i} (s, a_{i}).Vi∗(s)=πi(s,⋅)maxa−i∈A−iminai∈Ai∑Qi∗(s,ai,a−i)πi(s,ai).
Nash Q学习算法
可用于非合作多智能体领域。
Friend-or-Foe Q-Learning
读书笔记:多智能体机器学习(二)相关推荐
- 读书笔记 - 多智能体强化学习在城市交通网络信号的综述2018
多智能体强化学习在城市交通网络信号 控制方法中的应用综述 交通信号控制系统在物理位置和控制逻辑上分散于动态变化的网络交通环境, 将每个路口的交通信号控制器看做一个异质的智能体, 非常适合采用无模型.自 ...
- ucl计算机教授汪军,UCL汪军教授:多智能体机器学习
与UCL授课进度同步,每周五更新 人工智能已经在围棋.图像识别和语音识别等领域达到甚至超越了人类专家水平,但智能化的机器离我们仍然很远.要想实现通用智能,AI智能体必须学习如何在共享环境中与「他人」进 ...
- ucl计算机教授汪军,UCL多智能体机器学习课程上线,计算机系教授汪军主讲
来源:机器之心 本文约1500字,建议阅读5分钟 本课程基于伦敦大学学院计算机系2020-2021学年度课程Multi-agent Artificial Intelligence (20/21),主要 ...
- ucl计算机教授汪军,UCL汪军教授开课:带你入坑多智能体机器学习(免费)!
人工智能已经在围棋.图像识别和语音识别等领域达到甚至超越了人类专家水平,但智能化的机器离我们仍然很远.要想实现通用智能,AI智能体必须学习如何在共享环境中与「他人」进行互动,由此产生了人工智能的一个前 ...
- 【徐禾 政治经济学概论】 读书笔记 §1.3劳动的二因素:具体劳动和抽象劳动(上.价值质的规定性)
一.具体劳动 定义1 具体劳动:根据劳动的目的.对象.所用工具.操作方法和劳动成果来区分,生产一种特定品种的产品的劳动. 例:生产木器得用木匠的劳动,生产铁器得用铁匠的劳动,--即便生产的同样是铁器或 ...
- 王树森强化学习笔记——多智能体强化学习
多智能体强化学习 想要了解更多强化学习的内容,推荐观看王树森教授的教学视频 深度强化学习(王树森) 设定 在之前的学习当中,我们讨论的都是单个智能体如何进行决策,然而现实中还存在需要同时控制多个智能体 ...
- 【徐禾 政治经济学概论】 读书笔记 §1.2商品的二因素:使用价值和价值
一.使用价值 定义1 使用价值:物品的有用性,亦即它能满足人们某种需要的这种属性,便是物品的使用价值 一种物品的效用,使它成为一个使用价值--<资本论>.第1卷.p6 物品的使用价值可以满 ...
- 读书笔记-JavaScript面向对象编程(二)
第5章 原型 5.1 原型属性(所有函数拥有一个prototype属性,默认为空对象) 5.1.1 利用原型添加方法和属性 function Gadget(name,color){this.name= ...
- 【徐禾 政治经济学概论】 读书笔记 §1.3劳动的二因素:具体劳动和抽象劳动(下.价值量的规定性)
上回我们着重考察了商品价值质的规定.但正如世间一切事物一样,商品不仅有质的规定,也有量的规定.譬如,对于一件商品,我们不仅说它有价值,还要说明它有多大的价值.因此我们还必须研究商品的价值量.你们价值量 ...
最新文章
- firefox和chrome中 JQuery的ajax组件执行差异
- 单行文字压缩处理(要指定字体)
- linux usb视频开发板,ARM开发板上USB 摄像头图像采集实现
- C++中的继承(三)
- Java面试会问的——数组、声明、初始化、冒泡、多维数组、稀疏数组
- 转:认识cpu、核与线程
- MySQL迁移安装_mysql数据库安装路径迁移
- bert 是单标签还是多标签 的分类_标签感知的文档表示用于多标签文本分类(EMNLP 2019)...
- struts2 OGNL表达式
- 【C#】:浅谈反射机制 【转】
- html登陆部分项目答辩演讲稿,D-POTDR项目答辩讲稿材料
- 【4】axios 获取数据
- HIVE json格式数据的处理
- Spring AOP原理分析(二)--@EnableAspectJAutoProxy功能分析
- Auto CAD:CAD软件之上菜单栏(CAD选项设置、常用工具(样条曲线/多段线/倒角/移动/镜像/偏移/修剪工具/延伸/阵列)、修改工具(拉长/编辑多段线/对齐命令、注释/标注)简介之详细攻略
- 信息学奥赛NOIP/CSP-J初赛知识点汇总
- java 背单词系统_背单词系统
- IDEA误删文件恢复方法
- cipher 加密解密
- 《精通Tableau商业数据分析与可视化》之目录
热门文章
- RedisTemplate报错WRONGTYPE Operation against a key holding the wrong kind of value
- 【图解数据结构与算法】数据结构与算法知识点整理 Data Structures and Algorithms
- 苏州、上海校友聚会(2005年9月10日,周六)
- 额定功率台式计算机,解决方案:计算机电源分类当前的台式计算机电源的额定功率为200-4...
- Android P的音频架构(二)
- 一个简单的集成电路运算放大器的计算和multisim的仿真
- PHP+MySQL 无限级分类的两种实现方案
- ICCV2019语义分割/UDA:ACE: Adapting to Changing Environments for Semantic SegmentationACE:适应变化环境下的语义分割
- 如何写 [文献综述]
- BugKu——你必须让他停下