【学术小白成长之路】02三方演化博弈(基于复制动态方程)期望与复制动态方程

2024-06-10 21:36

本文主要是介绍【学术小白成长之路】02三方演化博弈(基于复制动态方程)期望与复制动态方程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

从本专栏开始,笔者正式研究演化博弈分析,其中涉及到双方演化博弈分析,三方演化博弈分析,复杂网络博弈分析等等。
先阅读了大量相关的博弈分析的文献,总结了现有的研究常用的研究流程,针对每个流程进行拆解。具体学习每个步骤中的步骤的实现方法和流程。基础性文章,希望对您有帮助,如果存在错误或不足之处,还请海涵。且看且珍惜!

在这里插入图片描述

文章目录

  • 1. 期望计算
  • 2. 复制动态方程构建
  • 3. MATLAB计算期望与复制动态方程

1. 期望计算

在计算期望收益之前,需要先计算出每个参与主体的收益,如下表1所示。
在这里插入图片描述
采取应对策略的概率:
在这里插入图片描述

首先,一般需要构建每个主体在采取,和不采取策略的期望收益,以及平均从期望收益,通常是构建三个期望收益等式。

企业的收益期望如下所示:
在这里插入图片描述

分别计算出采取和不采取的策略下的收益值与对应策略其他主体之间应对策略的概率之和:

计算出来的结果如下所示,具体的计算结果根据公式对应进去计算就可以
在这里插入图片描述
同理,可以根据以上的算式,算出其他主体的期望收益:
在这里插入图片描述
在这里插入图片描述

2. 复制动态方程构建

复制动态 和 演化稳定策略 是演化博弈理 论的两个核心范畴。“复制动态”是对有限理性的 参与主体策略调整过程的动态描述和分析

需要分别构造企业、政府和环境 NGO 行为策略的复制动态方程

其中复制动态方程=dx/dt=采取概率(采取期望收益 - 平均期望收益)
这个复制动态方程的构建,通常学者都是这么计算,只需要将上文的计算机过套入,并对式子进行化简处理。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

通过以上的方程,就可以构建出每个主体之间的动态方程。

构建动态方程后,就可以进行博弈分析中最重要的均衡点分析。

3. MATLAB计算期望与复制动态方程

每个主体的期望,可以通过我们手动进行构建

构建出每个主体的期望后,我们需要计算出平均期望和复制动态方程。我们只需要将方程对应的等式带入就可以,但是在文章中需要展现的是经过你自己整理后,最简的方程式。

因此,需要有一个手动计算的过程,手动计算容易出错,因此可以借助MatLAB实现一个化简的功能。

主要借助的就是simplify函数。

如下所示

%定义相应的参数
syms x y z e1 e2 e3 c1 c2 c3 c4 c5 s1 s2 s3 g1 g2;
%计算出第一个主体的期望
v11=(e1-c1+s1)*y*z+(e1-c1-s1)*y*(1-z)+(e1-c1)*(1-y)*z+(e1-c1)*(1-y)*(1-z);
v12=(e2-c2-g1-g2)*y*z+(e2-c2-g1)*y*(1-z)+(e2-c2-g2)*(1-y)*z;
%化简平均期望
v1=simplify(x*v11+(1-x)*v12)
%化简复制动态方程
fx=simplify(x*(v11-v1))

通过以上的原理,可以计算出每个主体的期望与复制动态方程的值

当用simplify函数实现化简后,如果未达到最简可以自己手动再进行一次化简。

这篇关于【学术小白成长之路】02三方演化博弈(基于复制动态方程)期望与复制动态方程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1049331

相关文章

MySQL中动态生成SQL语句去掉所有字段的空格的操作方法

《MySQL中动态生成SQL语句去掉所有字段的空格的操作方法》在数据库管理过程中,我们常常会遇到需要对表中字段进行清洗和整理的情况,本文将详细介绍如何在MySQL中动态生成SQL语句来去掉所有字段的空... 目录在mysql中动态生成SQL语句去掉所有字段的空格准备工作原理分析动态生成SQL语句在MySQL

Java调用C++动态库超详细步骤讲解(附源码)

《Java调用C++动态库超详细步骤讲解(附源码)》C语言因其高效和接近硬件的特性,时常会被用在性能要求较高或者需要直接操作硬件的场合,:本文主要介绍Java调用C++动态库的相关资料,文中通过代... 目录一、直接调用C++库第一步:动态库生成(vs2017+qt5.12.10)第二步:Java调用C++

C#如何动态创建Label,及动态label事件

《C#如何动态创建Label,及动态label事件》:本文主要介绍C#如何动态创建Label,及动态label事件,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录C#如何动态创建Label,及动态label事件第一点:switch中的生成我们的label事件接着,

SpringCloud动态配置注解@RefreshScope与@Component的深度解析

《SpringCloud动态配置注解@RefreshScope与@Component的深度解析》在现代微服务架构中,动态配置管理是一个关键需求,本文将为大家介绍SpringCloud中相关的注解@Re... 目录引言1. @RefreshScope 的作用与原理1.1 什么是 @RefreshScope1.

MyBatis 动态 SQL 优化之标签的实战与技巧(常见用法)

《MyBatis动态SQL优化之标签的实战与技巧(常见用法)》本文通过详细的示例和实际应用场景,介绍了如何有效利用这些标签来优化MyBatis配置,提升开发效率,确保SQL的高效执行和安全性,感... 目录动态SQL详解一、动态SQL的核心概念1.1 什么是动态SQL?1.2 动态SQL的优点1.3 动态S

mybatis-plus 实现查询表名动态修改的示例代码

《mybatis-plus实现查询表名动态修改的示例代码》通过MyBatis-Plus实现表名的动态替换,根据配置或入参选择不同的表,本文主要介绍了mybatis-plus实现查询表名动态修改的示... 目录实现数据库初始化依赖包配置读取类设置 myBATis-plus 插件测试通过 mybatis-plu

基于Canvas的Html5多时区动态时钟实战代码

《基于Canvas的Html5多时区动态时钟实战代码》:本文主要介绍了如何使用Canvas在HTML5上实现一个多时区动态时钟的web展示,通过Canvas的API,可以绘制出6个不同城市的时钟,并且这些时钟可以动态转动,每个时钟上都会标注出对应的24小时制时间,详细内容请阅读本文,希望能对你有所帮助...

通过Python脚本批量复制并规范命名视频文件

《通过Python脚本批量复制并规范命名视频文件》本文介绍了如何通过Python脚本批量复制并规范命名视频文件,实现自动补齐数字编号、保留原始文件、智能识别有效文件等功能,听过代码示例介绍的非常详细,... 目录一、问题场景:杂乱的视频文件名二、完整解决方案三、关键技术解析1. 智能路径处理2. 精准文件名

Vue中动态权限到按钮的完整实现方案详解

《Vue中动态权限到按钮的完整实现方案详解》这篇文章主要为大家详细介绍了Vue如何在现有方案的基础上加入对路由的增、删、改、查权限控制,感兴趣的小伙伴可以跟随小编一起学习一下... 目录一、数据库设计扩展1.1 修改路由表(routes)1.2 修改角色与路由权限表(role_routes)二、后端接口设计

linux如何复制文件夹并重命名

《linux如何复制文件夹并重命名》在Linux系统中,复制文件夹并重命名可以通过使用“cp”和“mv”命令来实现,使用“cp-r”命令可以递归复制整个文件夹及其子文件夹和文件,而使用“mv”命令可以... 目录linux复制文件夹并重命名我们需要使用“cp”命令来复制文件夹我们还可以结合使用“mv”命令总