演化博弈模型简介

news2024/9/21 20:47:04

演化博弈模型简介

文章目录

  • 演化博弈模型简介
    • @[toc]
    • 1 演化博弈思想
    • 2 演化博弈关注的问题
    • 3 复制动态中的博弈

1 演化博弈思想

传统博弈苛刻假设:

  • 完全理性
  • 完全信息

演化博弈论:演化博弈论(Evolutionary Game Theory)把博弈理论分析和动态演化过程分析结合起来的一种理论。在方法论上,它不同于博弈论将重点放在静态均衡和比较静态均衡上,强调的是一种动态的均衡。演化博弈理论源于生物进化论。

为什么将演化思想引入到博弈论中?

  • 博弈论对生物学的影响。博弈论的策略对应生物学中的基因,博弈论的收益对应生物学中的适应度。在生物学中应用的博弈论与经济学中的传统博弈论最大区别就是非完全理性的选择。
  • 演化化思想对社会科学的影响。例如,在市场竞争中,我们不必要去理性的想那个策略才是最优的,最后能够在市场存活下来的企业,一定是适应能力最强的公司。

在演化博弈理论中,**演化稳定策略(Evolutionary StableStrategy, ESS)复制动态(Replication Dynamics)**是两个核心概念。

  • 演化稳定策略是指在博弈的过程中,博弈双方由于有限理性,博弈方不可能一开始就找到最优策略以及最优均衡点。于是,博弈方在博弈的过程中需要不断进行学习,有过策略失误会逐渐改正,并不断模仿和改进过去自己和别人的最有利策略。经过一段时间的模仿和改错,所有的博弈方都会趋于某个稳定的策略。
  • 复制动态实际上是描述某一特定策略在一个种群中被采用的频数或频度的动态微分方程,可以用下式表示:

d x i d t = x i [ ( u s i , x ) − u ( x , x ) ] \frac{d_{x_i}}{d_t} = x_i[(u_{s_i},x)-u(x,x)] dtdxi=xi[(usi,x)u(x,x)]

其中 x i x_i xi为群中采用纯策略 s i s_i si比例或概率, ( u s i , x ) (u_{s_i},x) (usi,x)表示采用纯策略时的适应度, u ( x , x ) u(x,x) u(x,x)表示平均适应度。


2 演化博弈关注的问题

当时间趋于无穷大时,博弈参与方策略选择行为是怎样的?

这就是演化博弈稳定性问题,一个稳定状态必须对微小扰动具有稳健性才能称为演化稳定策略。也就是说,如果我们假定为演化稳定策略的稳定点,则该点除了本身必须是均衡状态以外,还必须具有这样的性质:如果某些博弈方由于偶然的错误偏离了它们,复制动态仍然会使x回复到 x ∗ x^* x。数学上,这相当于要求:当干扰使x低于时 x ∗ x^{*} x ,dx/dt必须大于0;当干扰使得x出现高于时x, dx/dt必须小于0,这就要求这些稳定状态处于的导数必须小于0


3 复制动态中的博弈

考虑如下博弈支付矩阵

策略1策略2
策略1(2,2)(1,3)
策略2(3,1)(0,0)

考虑一种雄性之间争夺配偶形式的,遗传策略与变异策略之间的进化竞争博弈。设策略1是上代遗传的基因特征(温和行为);策略2是变异来的基因特征(强悍行为)。基因特征会影响它们竞争配偶的能力,从而决定它们各自后代期望数增量表示的达尔文适应度(fitness)。如果两个体(个体1左,个体2右)都是策略1,双方都有2单位适应度;双方都为策略2(两败俱伤),则都有0单位适应度;一方策略1、另一方策略2,则前者1单位后者3单位适应度。

尽管博弈用静态博弈矩阵展现,但与一般静态博弈存在本质区别:

  • 形式上博弈方为生物个体,但本质为两种基因的对抗竞争;其得益是基因的适应度,而非生物个体的适应度;
  • 生物个体不能主动选择策略,而是由先天基因决定
  • 博弈存在一个混合纳什均衡与两个纯策略纳什均衡,但一次静态博弈毫无意义。纳什均衡失去预测作用。

设基因策略1的群体比例为 x 1 ∈ [ 0 , 1 ] x_1\in [0,1] x1[0,1],策略2的群体比例为 x 2 = 1 − x 1 x_2 = 1-x_1 x2=1x1,设 t t t时刻种群规模总数为 P ( t ) P(t) P(t)。种群采用策略1的规模为 P 1 ( t ) P_1(t) P1(t),则采用策略1的群体比例为
x 1 ( t ) = P 1 ( t ) P ( t ) x_1(t) =\frac{P_1(t)}{P(t)} x1(t)=P(t)P1(t)
假设雄性之间两两相争,策略1的个体期望收益为
u 1 = 2 x 1 + x 2 = x 1 + 1 u_1 = 2x_1+x_2 = x_1+1 u1=2x1+x2=x1+1
策略2的个体期望收益为
u 2 = 3 x 2 u_2 = 3x_2 u2=3x2
种群平均期望收益
u ˉ = x 1 u 1 + x 2 u 2 = 4 x 1 − 2 x 1 2 \bar u = x_1u_1+x_2u_2 = 4x_1-2x_1^2 uˉ=x1u1+x2u2=4x12x12
另外假定存在与策略无关,只与环境有关的自然适应度 β \beta β与自然死亡率 δ \delta δ,因此,种群中所有策略1个体的总和适应度,也就是下一时刻带基因策略1的个体增量总和为
d P 1 ( t ) d t = ( β + μ 1 − δ ) P 1 ( t ) \frac{dP_1(t)}{dt} = (\beta+\mu_1-\delta)P_1(t) dtdP1(t)=(β+μ1δ)P1(t)
这与马尔萨斯人口增长模型极为相似。如果群体带有两种基因策略所有个体的种群总和适应度,也就是下一时刻整个种群所有个体增量总和为
d P ( t ) d t = ( β + μ ˉ − δ ) P ( t ) \frac{dP(t)}{dt} = (\beta+\bar{\mu}-\delta)P(t) dtdP(t)=(β+μˉδ)P(t)
注意 P 1 ( t ) = P ( t ) x 1 ( t ) P_{1}(t)=P(t) x_{1}(t) P1(t)=P(t)x1(t),两边对时间求导
d P 1 ( t ) d t = d P ( t ) d t x 1 ( t ) + P ( t ) d x 1 ( t ) d t \frac{\mathrm{d} P_{1}(t)}{\mathrm{d} t}=\frac{\mathrm{d} P(t)}{\mathrm{d} t} x_{1}(t)+P(t) \frac{\mathrm{d} x_{1}(t)}{\mathrm{d} t} dtdP1(t)=dtdP(t)x1(t)+P(t)dtdx1(t)
于是
P ( t ) d x 1 ( t ) d t = d P 1 ( t ) d t − d P ( t ) d t x 1 ( t ) = ( β + u 1 − δ ) P 1 ( t ) − ( β + u ˉ − δ ) P ( t ) x 1 ( t ) \begin{aligned} P(t) \frac{\mathrm{d} x_{1}(t)}{\mathrm{d} t} &=\frac{\mathrm{d} P_{1}(t)}{\mathrm{d} t}-\frac{\mathrm{d} P(t)}{\mathrm{d} t} x_{1}(t) \\ \\ &=\left(\beta+u_{1}-\delta\right) P_{1}(t)-(\beta+\bar{u}-\delta) P(t) x_{1}(t) \end{aligned} P(t)dtdx1(t)=dtdP1(t)dtdP(t)x1(t)=(β+u1δ)P1(t)(β+uˉδ)P(t)x1(t)
整理并除以 P ( t ) P(t) P(t)得到
d x 1 ( t ) d t = ( u 1 − u ˉ ) x 1 ( t ) \frac{\mathrm{d} x_{1}(t)}{\mathrm{d} t}=\left(u_{1}-\bar{u}\right) x_{1}(t) dtdx1(t)=(u1uˉ)x1(t)
该方程一阶常微分方程,即长期中策略1在种群中比例的动态变化规律,称为策略1的“复制动态”。该方程正是生物进化发展的根本内在机制,也是生物进化博弈分析的核心内容。为了复制动态的内涵,两边除以 x 1 ( t ) x_1(t) x1(t)
d x 1 ( t ) d t / x 1 ( t ) = u 1 − u ˉ \frac{\mathrm{d} x_{1}(t)}{\mathrm{d} t} / x_{1}(t)=u_{1}-\bar{u} dtdx1(t)/x1(t)=u1uˉ
意义:策略1种群比例的增长率等于该策略得益与种群平均得益之差。差值大于0该策略占比趋向于增长,小于0趋向于衰减。这种复制动态反映了特定生物基因种群比例发展变化的基本规律。生物的产生、发展和灭绝,以及生物多样性等背后都有这种内在机制在起作用。只要正确建立基因策略博弈的适应度得益函数,就可以根据上述复制动态方程计算特定基因的增长率,判断种群频数变化趋势。


将前文争配偶权的 u 1 = x 1 + 1 u_1 =x_1+1 u1=x1+1, u ˉ = 4 x 1 − 2 x 1 2 \bar u = 4x_1-2x_1^2 uˉ=4x12x12代入复制动态方程
d x 1 ( t ) d t = ( u 1 − u ˉ ) x 1 ( t ) = ( x 1 + 1 − 4 x 1 + 2 x 1 2 ) x 1 = ( 1 − 3 x 1 + 2 x 1 2 ) x 1 = ( 1 − 2 x 1 ) ( 1 − x 1 ) x 1 \begin{aligned} \frac{\mathrm{d} x_{1}(t)}{\mathrm{d} t} &=\left(u_{1}-\bar{u}\right) x_{1}(t)=\left(x_{1}+1-4 x_{1}+2 x_{1}^{2}\right) x_{1} \\ &=\left(1-3 x_{1}+2 x_{1}^{2}\right) x_{1}=\left(1-2 x_{1}\right)\left(1-x_{1}\right) x_{1} \end{aligned} dtdx1(t)=(u1uˉ)x1(t)=(x1+14x1+2x12)x1=(13x1+2x12)x1=(12x1)(1x1)x1
该复制动态微分方程非线性,可以通过等式右边函数的正负性分析变化趋势。右边函数等于0意味着 x 1 x_1 x1不变,也称为动态系统“不动点”或“稳态”,记为 x ∗ x^{*} x。基因种群比例达到稳态或初始处于稳态,均会维持不变。特别地,

  • x ∗ = 0 x^{*} =0 x=0表明基因策略1消失
  • x ∗ = 1 x^{*} =1 x=1表明基因策略1统治
  • x ∗ ∈ ( 0 , 1 ) x^{*} \in(0,1) x(0,1)表明两种基因共存

当初始比例 x 1 x_1 x1不是稳态,则 x 1 x_1 x1随时间变化而变化。要使 x 1 x_1 x1趋于稳态,必须满足:

  • 当干扰使 x 1 x_1 x1低于时 x ∗ x^{*} x , d x / d t dx/dt dx/dt必须大于0;
  • 当干扰使 x 1 x_1 x1大于时 x ∗ x^{*} x , d x / d t dx/dt dx/dt必须小于0;

上文已求出基因策略1复制动态方程
d x 1 ( t ) d t = ( 1 − 2 x 1 ) ( 1 − x 1 ) x 1 \frac{\mathrm{d} x_{1}(t)}{\mathrm{d} t} =\left(1-2 x_{1}\right)\left(1-x_{1}\right) x_{1} dtdx1(t)=(12x1)(1x1)x1
令方程右边为0,得到稳态解 x 1 = 0 , 1 , 0.5 x_1 =0,1,0.5 x1=0,1,0.5。当 x 1 = 0.5 x_1=0.5 x1=0.5时策略基因1的比例收敛为0.5。原因是:

  • x 1 x_1 x1的初始值低于0.5, d x 1 / d t > 0 dx_1/dt>0 dx1/dt>0,故 x 1 x_1 x1增加;
  • x 1 x_1 x1的初始值高于0.5, d x 1 / d t < 0 dx_1/dt<0 dx1/dt<0,故 x 1 x_1 x1减少;
    在这里插入图片描述

-END-

参考文献

[1]Smith J M, Price G R. The logic of Animal Conflict [J]. Nature, 1973, 246: 15-8.
[2]Smith J M. The Theory of Games and the Evolution of Animal Conflicts [J]. J Theor Biol, 1974, 47: 209-21.
[3]D.Taylor P, Jonker L B. Evolutionarily Stable Strategies and Game Dynamics [J]. Math Biosci, 1978, 40: 145-56.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/511984.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【python】Pandas库用法详解!

pandas 是基于NumPy 的一种工具&#xff0c;该工具是为解决数据分析任务而创建的。Pandas 纳入了大量库和一些标准的数据模型&#xff0c;提供了高效地操作大型数据集所需的工具。pandas提供了大量能使我们快速便捷地处理数据的函数和方法。你很快就会发现&#xff0c;它是使Py…

Android系统启动流程(三)——属性服务

1 属性服务 属性服务的启动在init进程中&#xff0c;init进程初始化的第二阶段初始化中启动了属性服务。 system/core/init/init.cpp int SecondStageMain(int argc, char** argv) {...PropertyInit();...StartPropertyService(&property_fd);...2 启动属性服务 system/…

Win系统软件闪屏/Edge闪屏/Office闪屏 - 解决方案

Win系统软件闪屏/Edge闪屏/Office闪屏 - 解决方案 前言原因解决方案方案1&#xff08;推荐&#xff09;&#xff1a;重新安装核显驱动方案2&#xff1a;软件使用独显方案3&#xff1a;软件关闭硬件加速 前言 使用Win10及以上系统时&#xff0c;可能会出现频繁闪现黑屏的状态&a…

【jupyter】mac os系统下的jupyter的实用技巧

Jupyter notebook是一个开源的web应用&#xff0c;可以让你创建和分享包含代码、公式、可视化和叙述文本的文档。它可以用于数据清洗和转换、数值模拟、统计建模、数据可视化、机器学习等多种用途。 在mac os系统下&#xff0c;有多种方法可以安装jupyter notebook&#xff0c…

十大生产力神器,包括5大jupyter插件和五个提升python研发生产力的神器

JupyterLab&#xff1a;一款下一代的笔记本界面&#xff0c;支持多种编程语言&#xff0c;包括python。它具有灵活的界面&#xff0c;可以配置和安排数据科学、科学计算、计算新闻和机器学习等领域的工作流程。 Voil&#xff1a;一款可以将笔记本转换为安全、独立的web应用程序…

将字符串数组转换为字符串类型

大家好&#xff0c;我是三叔&#xff0c;很高兴这期又和大家见面了&#xff0c;一个奋斗在互联网的打工人。 当你在Java编程中需要将一个字符数组转换为字符串类型时&#xff0c;你可以使用Java内置的String类提供的方法。在本文中&#xff0c;笔者将介绍两种将字符数组转换为…

RabbitMQ详解(二):消息模式 Simple(简单)模式

消息模式 Simple(简单)模式 前提&#xff0c;开放5672:RabbitMQ的通讯端口&#xff0c;及查看创建用户的权限 构建maven工程 导入依赖 依赖下载地址: https://mvnrepository.com/artifact/com.rabbitmq/amqp-client <dependency><groupId>com.rabbitmq</group…

协议:HTTP基础内容掌握

一、简单理解 HTTP HTTP 协议一般指 HTTP&#xff08;超文本传输协议 Hyper Text Transfer Protocol&#xff09;。 HTTP是一个简单的请求/响应协议&#xff0c;它运行在TCP之上。 HTTP是一个基于TCP/IP通信协议来传递数据&#xff08;HTML 文件, 图片文件, 查询结果等&#x…

活动预告 Flutter 之夜 | Flutter Night Beijing

Flutter 是一个开源、可移植的 UI 框架&#xff0c;它为开发人员提供了超能力&#xff0c;可以从单个代码库为任何平台构建美观、高质量的应用程序。它将统一代码库和快速迭代开发的生产力与本机编译和硬件加速渲染的性能和功能相结合。Flutter 今天支持的平台包括安卓&#xf…

简单随机微分方程数值解

1.随机微分方程求解&#xff1a;dX(t) − αXtdt σdWt 法一&#xff1a;Euler-Maruyama %% %O-U过程 %dX(t)-alpha*Xt*dtsigma*dWt,X|t0X0 %alpha2,sigma1,X01 % 设置初始参数 T 1; % 时间区间长度 N 1000; % 离散化的时间步数 dt T/N; …

[医学分割比赛] ISBI2023 APIS多模态医学分割比赛总结 + top3解决方案

ISBI2023 APIS多模态医学分割比赛总结 top3解决方案 0.比赛背景1.比赛任务及结果2.第三名方案 - 龙盈智达&#xff08;北京&#xff09;科技有限公司(0) Data Preprocessing(1) Data Augmentation(2) Approach&#xff08;Model&#xff09;(3) Approach(Data Sampling)(4) Ap…

【QT】学习课-pushButton的使用(1)!

Qt 是一个1991年由Qt Company开发的跨平台C图形用户界面应用程序开发框架。它既可以开发GUI程序&#xff0c;也可用于开发非GUI程序&#xff0c;比如控制台工具和服务器。Qt是面向对象的框架&#xff0c;使用特殊的代码生成扩展&#xff08;称为元对象编译器(Meta Object Compi…

《WebGIS快速开发教程》写好啦

告诉大家一个好消息&#xff0c;经过我没日没夜&#xff0c;呕心沥血的创作&#xff0c;这本叫做《WebGIS快速开发教程》的书籍终于写好了。这本书适用于还未毕业的学生、以及正在从事传统前后端开发但是想转到WebGIS开发的人。 这本书的特点突出一个“快”和“轻”&#xff0c…

三子棋小游戏---(C语言)

目录 前言&#xff1a; 1.菜单的打印 2.三子棋构思 3.实现三子棋 3.1使用宏的方式定义数组 3.2打印棋盘 3.3玩家下棋 3.4电脑随机下棋 3.5判断结局 ❤博主CSDN:啊苏要学习 ▶专栏分类&#xff1a;C语言◀ C语言的学习&#xff0c;是为我们今后学习其它语言打好基础&am…

Kyligence Zen产品体验——一站式指标平台泰酷辣~

文章目录 一、前言二、为什么需要指标化平台三、什么是Kyligence Zen四、Kyligence Zen新特性五、Kyligence Zen注册篇六、Kyligence Zen体验篇七、Kyligence Zen实战篇7.1 导入数据7.2 创建指标7.3 指标分析 八、Kyligence Zen总结篇九、参考资料 一、前言 随着互联网和物联网…

tomcat集群下的session共享和负载均衡(redis实现)

环境 操作系统&#xff1a;windows tomcat1&#xff1a;Apache Tomcat/7.0.52&#xff08;8085&#xff09; tomcat2&#xff1a;Apache Tomcat/7.0.52&#xff08;8086&#xff09; jre&#xff1a;1.7.0_80 nginx&#xff1a;nginx-1.20.1&#xff08;8070&#xff09; redis…

基于 SpringBoot+WebSocket 无DB实现在线聊天室(附源码)

文章目录 基于 SpringBootWebSocket 无DB实现在线聊天室0 项目说明0.1 样例展示0.2 源码地址 1 WebSocket 简介1.1 HTTP1.2 WebSocket1.2.1 WebSocket 协议1.2.2 WebSocket 交互 2 使用教程2.1 客户端&#xff08;浏览器&#xff09;2.1.1 WebSocket 对象2.1.2 WebSocket 事件2…

重装系统后,qt5.11.3升级到qt5.12.6所遇到的问题

前提&#xff1a;重装了系统&#xff1a; c/qt windows10 语音模块TTS异常&#xff0c;数据库缺少驱动 一&#xff1a;语音模块不能播放 qt使用语音模块时&#xff0c;在初始化时出现异常&#xff1a; onecore\com\combase\dcomrem\resolver.cxx(2299)\combase.dll!00007FF8…

Oracle存储过程~封神之路

简介 Oracle 存储过程是 Oracle 数据库中的一种数据处理对象&#xff0c;它可以在数据库中定义一组预定义的 SQL 语句&#xff0c;用于完成特定的数据库操作。存储过程可以被授权的用户调用&#xff0c;并且可以执行多个语句&#xff0c;这些语句可以被视为一个单独的操作&…

“深圳首届十大金口碑人物”优必选科技创始人兼CEO周剑获此殊荣

深圳晚报社联合深圳市诚商信用评级有限公司、深圳市诚信营商促进会和中国善网&#xff0c;共同举办了首届“金口碑”评选活动。活动涵盖多个领域&#xff0c;历经多个环节的评定和实地走访&#xff0c;最终有10名个人、20家企业和70家商户成功获得“深圳首届十大金口碑人物”、…