基于Matlab绘制演化博弈主体的演化轨迹

背景:本文起源于我的硕士毕业论文,主要研究新能源汽车供应链主体之间的博弈问题,其中一个关键内容是制造商和经销商之间的演化博弈。具体来说,是两个博弈成员,每位成员有两个策略,是典型的非对称博弈。

因此,写下这篇文章的目标是:1、整理演化博弈的研究思路 2、熟悉Matlab的使用 3、简介演化博弈代码包

一、演化博弈的介绍

1.1 演化博弈与传统博弈的区别

演化博弈区别于传统博弈的地方是,关于博弈主体的假设条件不同

a)演化博弈:博弈主体是有限理性的,需要在博弈的过程中学习/模仿不断调整策略,最后达到均衡。

b)传统博弈:博弈主体是完全理性的,在博弈过程中能一次性做出最佳决策,即达到均衡。

因此,演化博弈在分析实际问题时,具备更强的解释性,也更加贴近现实情况。

1.2 演化博弈的基本内容

根据学习群体的大小和学习速率的不同,主要将演化博弈分为了两种:

a) 基于最佳反应动态(Best Response Dynamics)的演化博弈

b) 基于复制动态(Replicator Dynamics)的演化博弈。

由于我的研究问题涉及的是大群体间的博弈问题,因此我使用的是第二种基于复制动态的演化博弈模型(以下简称RD),对实际问题进行刻画,通过复制动态方程描述采取不同策略的群体比例的变化。

1.3 基于复制动态的演化博弈模型的例子

下面以对称博弈为例,简述RD。

通常,有两个因素影响博弈方的学习进化速度:1)模仿对象的数量,即博弈方对应的比例情况;2)模仿对象的策略收益超过平均收益的大小。上述两点分别决定了进化的难易程度和模仿的激励大小。

假设在一个足够大的群体间进行博弈,采用策略1的群体比例为x,采用策略2的群体比例为1-x。采用两种策略博弈方的期望收益和群体平均收益分别是:

因此复制动态方程可以用下面的动态微分方程表示:

接下来研究的问题是关于非对称博弈问题,因此,涉及两个复制动态方程,会稍微复杂一点,但演化博弈的基本原理相同。

二、Matlab的基本使用

我对于Matlab的接触是从大四开始的,但是研究生阶段基本没有使用Matlab这个强大的工具。现重新捡起来发现,这个软件的功能确实强大。因此,对Matlab编程并不熟练的同学,也可以直接使用第三部分的演化博弈代码。

这个演化博弈的工具是一个名为PDToolbox_matlab-master的程序套组,大致包含这些文件:

第一步:下载PDToolbox_matlab-master压缩包,并解压到你的熟悉的位置。

第二步:打开Matlab,将上述压缩包添加到路径。如图

至此,关于Matlab的操作就算告一段落了。

三、演化博弈工具包PDToolbox_matlab-master的使用

据上,我研究的是双主体双策略的博弈问题,对应使用test2.m文件。下面是关于test.2中的一些代码解读:

上述红框中的代码是演化博弈中的关键参数,X0是一个2*2的矩阵,是演化博弈群体的初始比例。

关于支付矩阵的设置,如上代码是使用的fitness2.m文件。

对应使用RD之后的演化轨迹如下:

       

上述图像的意思是博弈双方随演化的进行,未能达到均衡状态,采取策略的群体比例会一直呈现规律波动。

使用bnn dynamics(Brown-von Neumann-Nash Dynamics )之后的演化轨迹如下:

       

说明两博弈群体由最初的0.1和0.2的比例,逐步收敛于0.5和0.5,最终达到均衡。

结束!

matlab代码:基于matlab的多方演化博弈.zip-物流文档类资源-CSDN下载

  • 0
    点赞
  • 210
    收藏
    觉得还不错? 一键收藏
  • 29
    评论
MATLAB绘制演化博弈,可以使用一些绘制函数和工具箱来实现。其中,可以使用MATLAB的plot函数来绘制三元,即重心。重心是一种用于表示三个变量之间比例关系的形。在MATLAB中,可以使用plot3函数来绘制三维形,其中的三个坐标轴分别代表三个变量。另外,还可以使用fill函数来填充形的颜色,以区分不同的区域。 在绘制演化博弈时,可以根据具体的博弈模型和参数设置,计算出不同策略组合下的演化结果,并将结果以三元的形式展示出来。可以使用MATLAB的循环结构和条件语句来进行计算和判断,然后使用plot3函数来绘制相应的点和线条。 需要注意的是,绘制演化博弈需要对数据进行处理和分析,可以使用MATLAB像分析工具箱或自定义的像分析脚本来进行处理。可以根据实际情况,使用不同的方法和算法来计算和分析数据,例如拟合圆形、计算面积和半径等。 总之,通过使用MATLAB的绘函数和工具箱,结合适当的数据处理和分析方法,可以实现演化博弈绘制。具体的实现方式和细节可以根据具体的需求和问题进行调整和优化。 #### 引用[.reference_title] - *1* *3* [三元相怎么看怎么(附R代码示例)](https://blog.csdn.net/weixin_39877050/article/details/114906356)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [Nature:空间扩展生境定殖的进化稳定性策略](https://blog.csdn.net/woodcorpse/article/details/111351261)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论 29
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值