matlab复杂网络上的博弈演化,科学网—复杂网络上的演化博弈研究 - 汪秉宏的博文...

复杂网络上的演化博弈研究

杨涵新1,汪秉宏2

1,福州大学,物理系,福州350002;

2.中国科学技术大学,近代物理系, 合肥230026

摘要:在自然界和人类社会中,合作行为是普遍存在的。如何理解自私个体之间合作行为的产生和维持吸引了来自各领域科学家的注意。目前,演化博弈理论被认为是研究合作行为的一个最有力的手段。随着复杂网络理论的迅速发展,复杂网络上的演化博弈受到广泛的关注。本文拟就复杂网络上的演化博弈研究做一综述,并对未来的研究提出展望。

关键词:复杂网络;演化博弈;合作

A review about the evolutionary games on complex networks

Han-Xin Yang1,Bing-Hong Wang2

(1.Department of Physics, Fuzhou University, Fuzhou 350002, China; 2. Department of Modern Physics, University of Science and Technology of China, Hefei 230026, China)

Abstract:Cooperation is widely existent in nature and human society. Understanding the emergence and persistence of cooperation among selfish individuals remains a fascinating challenge for researchers in different fields. So far, evolutionary game theory has provided a powerful framework to address cooperation.Spurred by the rapid development of complex networktheory, the evolutionary games on complex networks have received much attention in the past few years. In this paper, we attempt to review previous investigations about the evolutionary games on complex networks and look into the future research.

Key words:Complex networks; evolutionary games; cooperation

作者简介:

杨涵新,男,讲师,研究方向:复杂网络,E-mail: yanghanxin001@163.com

汪秉宏,男,教授,研究方向:统计物理、非线性科学、复杂系统理论,E-mail: bhwang@ustc.edu.cn

博弈论,又称对策论,主要研究具有形式激励结构的个体之间的相互作用。博弈论作为应用数学的一个分支,目前广泛应用生物学、经济学、计算机科学、政治学、军事战略等诸多学科[1,2]。1944年,匈牙利数学家Neumann和经济学家Morgenstern合作出版了划时代巨著《博弈论与经济行为》[3],奠定了博弈论的基础和理论体系。20世纪50年代,美国数学家Nash提出了著名的纳什均衡[4],它是指自私个体在相互作用过程中达到的一种均衡状态,这种状态下没有个体可以通过单方面改变自己的策略而增加收益。纳什均衡的提出极大地推动了博弈论的研究和发展。

通常博弈由以下四个部分组成:(1)至少有两位博弈个体,(2)每个博弈个体都有自己的博弈策略,(3)当博弈个体选择好策略后,按照一定的博弈规则进行博弈并根据相应的收益函数获得收益,(4)在博弈过程中,博弈个体遵循自身收益最大化的最终目标,进行策略上的调整。

经典博弈理论认为个体具有完全的理性,他们根据对收益函数的分析,一步到位地选择符合纳什均衡的最佳策略。但是在现实复杂环境中,人的理性是有局限的,即使再聪明的人也会犯错误。同时,在生物的成长与漫长的进化过程中,个体通常无法清晰了解环境,它们只有通过不断地试错来适应环境,也就是说,均衡状态不是一蹴而就达到的。因此,生物学家将生物进化论中的自然选择和遗传变异机制引入博弈论中,提出了演化博弈理论[5],力图解释上述经典博弈论无法解答的问题。演化博弈理论着重研究有限理性的个体如何随着时间的推移在不断的重复博弈过程中去实现收益最大化。

在自然界和人类社会中,合作行为是普遍存在的,如狮群协作捕猎、人类社会大规模的生产活动等等。从大的方面来看,世界的和平与发展、地球的环境保护都离不开各国之间的相互协作。但是我们注意到,在一个群体中,并不是所有的个体都会采取合作的行为。由于个体存在一定的自私心理,有些人会采取不合作(背叛)的行为。如何理解自私个体之间合作行为的产生和维持受到了各领域科学家的广泛关注[6-8]。目前,演化博弈理论被认为是研究合作行为的一个最有力的手段[9]。常见的研究合作行为的演化博弈模型有囚徒困境博弈[10]、铲雪博弈[11]和公共品博弈[12]等。

长期以来,在演化博弈理论中通常假设个体以均匀混合的方式进行联系,即所有个体全部相互接触或者个体随机接触。然而,现实生活中个体之间的联系并非是全耦合或者完全随机的,而是具有特定的联系方式。1992年,Nowak和May研究了二维方格上的囚徒困境博弈[13],开创了网络演化博弈研究的先河。最近十年来,随着复杂网络的兴起[14,15],复杂网络上的演化博弈研究受到了广泛的关注,取得了许多重要的进展[16,17]。本文将对前人这方面的工作做一综述,以期对未来的研究有所启迪。

1.复杂网

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Matlab中进行复杂网络博弈可以使用Graph Theory Toolbox和Game Theory Toolbox这两个工具箱来实现。首先,你需要将网络结构表示为图,然后定义每个节点的策略和游戏规则。以下是一个简单的示例: ```matlab % 创建一个随机网络结构 N = 50; % 节点数量 p = 0.2; % 连接概率 A = rand(N) < p; % 随机生成邻接矩阵 % 将邻接矩阵转换为图对象 G = graph(A); % 定义每个节点的策略(例如:合作或者背叛) strategies = randi([0, 1], N, 1); % 0表示背叛,1表示合作 % 定义博弈规则(例如:囚徒困境) payoff_matrix = [3, 0; 5, 1]; % 背叛-背叛(3分),背叛-合作(0分),合作-背叛(5分),合作-合作(1分) % 定义更新策略的函数(例如:按照邻居节点的平均策略更新) update_strategy = @(x) mean(strategies(G.neighbors(x))); % 定义博弈演化的迭代次数 iterations = 100; % 进行博弈演化 for i = 1:iterations new_strategies = strategies; for j = 1:N neighbors = G.neighbors(j); neighbor_strategies = strategies(neighbors); payoff = sum(payoff_matrix(strategies(j)+1, neighbor_strategies+1)); if rand < 1 / (1 + exp(-(payoff - mean(payoff_matrix(:))))) % 根据收益差异决定是否更新策略 new_strategies(j) = update_strategy(j); end end strategies = new_strategies; end % 绘制网络结构(节点颜色表示策略) figure; p = plot(G); p.NodeCData = strategies; colorbar; ``` 这只是一个简单的示例,你可以根据自己的需求进行修改和扩展。希望对你有所帮助!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值