前言

博弈论的内容在数学建模中比较少见,但2020年国赛B题确实考到了这一部分,因此掌握一些基本的原理方法还是有所必要。并且,博弈论本身和模糊综合评价类型比较类似,都是难度不高,不太依赖编程的方法,掌握一下性价比很高。

1.博弈概述

1.1博弈的定义:

博弈是指在一定的游戏规则约束下,基于直接相互作用的环境条件,各参与人依据所掌握的信息,选择各自的策略 (行动),以实现利益最大化的过程。

所谓利益最大化,就是纯粹用理性思维,做一个“精致的利己主义者”,摒弃感性思维。
(当然,这是为了分析问题的方便,生活中还是需要理性和感性结合地考虑问题)

1.2博弈的分类:


下面主要记录的内容是非合作博弈中的静态博弈

2.囚徒困境


在这种情形下,如何分析张三和李四的决策?

可以这样分析,纵向看:
1)若李四选择揭发,则张三要利益最大化,则会选择判刑更少的3年,即选择揭发。
2)若李四选择沉默,则张三要利益最大化,则会选择直接释放,即选择揭发。
由于该表是对称的,因此换作李四选择也是一样。
因此,两个人最大概率的选择是互相揭发

这时候就会发现,互相揭发,两个人都判刑3年,但两个人同时沉默,则两个人只需0.5年。
虽然两个人自身实现利益最大化,但集体的利益却没有最大化。
这就是囚徒困境——个人理性与集体非理性

推广到一般情况,将具体的数值抽象化,可以得到囚徒困境下面的条件:



再进一步推广,这就是囚徒困境的情形:

3.纳什均衡

3.1纳什均衡的定义

纳什均衡指的是:在博弈中,若每个参与者在已知其他参与者的策略的情况下,采用最优策略来应对,那么就达到了一个纳什均衡,或者找到了一个纳什均衡解。同时也意味着没有人能通过改变自己的策略,获得更好的结果。

简单来说,就是在纳什均衡的情况下,已经找到最优解,再改变策略,结果会更差。

3.2小鸡游戏引例

用一个例子可以说明地更加清楚:

如何找到纳什均衡解——用画线法 。

在图中,假定甲先进行选择。
1)若甲选择鹰,则乙必定选择鸡,在1下面画线(图中右上角蓝色)
2)若甲选择鸡,则乙必定选择鹰,在5下面画线(图中左下角蓝色)
反之,假定乙先进行选择。
两种情况在数字下划红线。
现在,红线和蓝线同时划出数字若在同一个格子,那这个格子就是纳什均衡解。
比如,图中有右上、左下两个纳什均衡解。

如何理解“再改变策略,结果会更差”?
以左下角纳什均衡解为例:
1)甲不变(纵向不动),乙改变,从5变到4,效果变差。
2)乙不变(横向不动),甲改变,从1变到0,效果变差。

3.3纯策略纳什均衡

一句话理解:纯策略即单一策略,比如只能选“鸡”或“鹰”。

3.4混合策略纳什均衡

混合策略:σ 是以某种概率选择策略集合中的不同的策略。


纯策略即选择概率为1,因此纯策略是混合策略的特例。

3.5求解小鸡问题的混合策略纳什均衡

将之前的小鸡问题进行策略上的修改:





这道例题比较清晰地展示了如何求解该类问题,方法大体可用下面的公式提炼:
u(A)=P(A)*s(A)+P(B)*s(A)
u(B)=P(A)*s(B)+P(B)*s(B)
纳什均衡:u(A)=u(B)

4.真题实战:2020年国赛B题:穿越沙漠

题目:

考虑如下的小游戏:玩家凭借一张地图,利用初始资金购买一定数量的水和食物(包括食品和其他日常用品),从起点出发,在沙漠中行走。途中会遇到不同的天气,也可在矿山、村庄补充资金或资源,目标是在规定时间内到达终点,并保留尽可能多的资金。
游戏的基本规则如下:
(1)以天为基本时间单位,游戏的开始时间为第0天,玩家位于起点。玩家必须在截止日期或之前到达终点,到达终点后该玩家的游戏结束。
(2)穿越沙漠需水和食物两种资源,它们的最小计量单位均为箱。每天玩家拥有的水和食物质量之和不能超过负重上限。若未到达终点而水或食物已耗尽,视为游戏失败。
(3)每天的天气为“晴朗”、“高温”、“沙暴”三种状况之一,沙漠中所有区域的天气相同。
(4)每天玩家可从地图中的某个区域到达与之相邻的另一个区域,也可在原地停留。沙暴日必须在原地停留。
(5)玩家在原地停留一天消耗的资源数量称为基础消耗量,行走一天消耗的资源数量为基础消耗量的倍。
(6)玩家第0天可在起点处用初始资金以基准价格购买水和食物。玩家可在起点停留或回到起点,但不能多次在起点购买资源。玩家到达终点后可退回剩余的水和食物,每箱退回价格为基准价格的一半。
(7)玩家在矿山停留时,可通过挖矿获得资金,挖矿一天获得的资金量称为基础收益。如果挖矿,消耗的资源数量为基础消耗量的倍;如果不挖矿,消耗的资源数量为基础消耗量。到达矿山当天不能挖矿。沙暴日也可挖矿。
(8)玩家经过或在村庄停留时可用剩余的初始资金或挖矿获得的资金随时购买水和食物,每箱价格为基准价格的2倍。
请根据游戏的不同设定,建立数学模型,解决以下问题。
1.假设只有一名玩家,在整个游戏时段内每天天气状况事先全部已知,试给出一般情况下玩家的最优策略。求解附件中的“第一关”和“第二关”,并将相应结果分别填入Result.xlsx。
2.假设只有一名玩家,玩家仅知道当天的天气状况,可据此决定当天的行动方案,试给出一般情况下玩家的最佳策略,并对附件中的“第三关”和“第四关”进行具体讨论。
3.现有名玩家,他们有相同的初始资金,且同时从起点出发。若某天其中的任意名玩家均从区域A行走到区域B(),则他们中的任一位消耗的资源数量均为基础消耗量的倍;若某天其中的任意名玩家在同一矿山挖矿,则他们中的任一位消耗的资源数量均为基础消耗量的倍,且每名玩家一天可通过挖矿获得的资金是基础收益的;若某天其中的任意名玩家在同一村庄购买资源,每箱价格均为基准价格的倍。其他情况下消耗资源数量与资源价格与单人游戏相同。
(1)假设在整个游戏时段内每天天气状况事先全部已知,每名玩家的行动方案需在第天确定且此后不能更改。试给出一般情况下玩家应采取的策略,并对附件中的“第五关”进行具体讨论。
(2)假设所有玩家仅知道当天的天气状况,从第天起,每名玩家在当天行动结束后均知道其余玩家当天的行动方案和剩余的资源数量,随后确定各自第二天的行动方案。试给出一般情况下玩家应采取的策略,并对附件中的“第六关”进行具体讨论。

第三问就可以用到静态博弈的模型,具体解答可以看相关优秀论文。
https://pan.baidu.com/s/1a9taH1TfN45c3rC9aawTiQ?pwd=8888

数学建模暑期集训14:博弈论与纳什均衡相关推荐

  1. 数学建模暑期集训6:用SPSS对数据进行多元线性回归分析

    在本专栏的第六篇数学建模学习笔记(六)多元回归分析算法(matlab)博文中,记录了如何用matlab进行多元回归分析.本篇则将使用spss软件达到同样的效果,且使用起来比matlab更为方便. 空谈 ...

  2. 数学建模暑期集训26:遗传算法

    遗传算法是优化类问题的经典智能算法.本篇将介绍遗传算法的基本概念以及利用遗传算法来求解单目标规划模型. 达尔文进化论的基本思想 遗传算法的设计是受到达尔文进化论的启发.先看下面这张图的几个基本概念. ...

  3. 数学建模暑期集训21:主成分分析(PCA)

    当遇到指标众多的场景时,以前通常的处理方法基本采用逐步回归的思想.即判断各指标之间的相关程度,保留几个重要的指标, 剔除其它不重要的指标.相关方法有:三大相关系数计算法.多元线性回归法.随机森林法.灰 ...

  4. 数学建模暑期集训15:matlab求解多目标规划模型

    多目标规划模型的求解方法 1.传统优化算法 1.1主要目标法 1.2分层序列法 1.3加权法 1.4理想点法 2.智能优化算法 遗传算法等- 例题实战:MATLAB中多目标遗传算法求解法 通用形式 例 ...

  5. 数学建模暑期集训17:蒙特卡洛法

    定义 蒙特卡罗⽅法⼜称统计模拟法,是⼀种随机模拟⽅法,将所求解的问题同⼀定的概率模型相联系,⽤电⼦计算机实现统计模拟或抽样,以获得问题的近似解.为象征性地表明这⼀⽅法的概率统计特征,故借⽤赌城蒙特卡罗 ...

  6. matlab篮球队需要五名队员,2016年数学建模暑期训练题目

    2016年武汉理工大学数学建模暑期培训练习题 1.编写MATLAB 和lingo 程序求解下列方程(组) (1)4 x sin x cos x += (2) x x 24-= (3)求方程 ()074 ...

  7. 数学建模常用模型14 :因子分析

    给大家安利一款朋友开发的自研国产数据分析基础工具,一键式自动分析,自动生成分析模板,5分钟掌握主流61个统计类数学模型(几乎涵盖SPSS绝大部分功能),以及23个有监督机器学习(包括随机森林,SVM, ...

  8. 【数学建模暑期培训】Matlab数据分析 数据处理 数据挖掘

    文章目录 数据预处理任务 数据集成 数据变换 数据清洗 数据规约 主要处理函数 数据预处理任务 数据清洗:去掉数据中的噪声,纠正不一致 数据集成:将多个数据源合并成一致的数据存储,构成一个完整的数据集 ...

  9. 【数学建模暑期培训】Matlab之求代数方程的符号解和数值解

    文章目录 符号运算 1.1 符号对象的创建 1.2 代数方程的符号解 代数方程的数值解 线性方程组的数值解 非线性方程的数值解 符号运算 符号运算又称计算机代数,通俗地讲就是用计算机推导数学公式,如对 ...

最新文章

  1. python语言有什么用-为什么现在很多人都使用Python语言有什么优势
  2. python精要(72)-VMDK操作(2)
  3. rar 文件头crc版本_php实现rar文件的读取和解压
  4. 异常详细信息: System.Runtime.InteropServices.COMException: 无效的类别字符串
  5. 江苏自学考试计算机网络专业,速看,江苏自考本科计算机网络专业介绍
  6. java swing获得焦点_Java Swing TextArea 滚动条并获取焦点
  7. win10简单方法安装杜比v4音效!win10 1909适用!
  8. RestTemplate请求oauth获取token报401错误
  9. 自然语言处理3 -- 词性标注
  10. 基于DPCA的线性监督分类的故障诊断方法-T2和SPE统计量的计算
  11. 2020 ICPC 济南 A Matrix Equation (高斯消元)
  12. python读取txt提取信息
  13. stm32 F40x CCM数据区的使用
  14. 锂电池电量百分比计算_手机电池容量的百分比显示跟电池的电量“格子”的比例计算...
  15. Number Game(数字游戏)
  16. 输入一个大写英文字母,输出小写英文字母;输入一个小写英文字母输出一个大写英文字母
  17. 可自建中继服务器的远程桌面软件: RustDesk
  18. 云计算的云是指什么?最简单的解释是什么?
  19. matlab中som结果,som 运行结果怎么看啊
  20. ssd nvme sata_NVMe SSD与传统SATA SSD

热门文章

  1. 【集训DAY4】Forging【期望DP】
  2. Linux内存映射mmp机制详解
  3. 《大话设计模式》之--第17章 在NBA我需要翻译----适配器模式
  4. 【input 标签的 type 属性详解】
  5. 从程序员打人事件谈一谈“产品经理”
  6. 【转载】C#窗体热键与全局热键设置
  7. 静态html如何设置搜索框,html搜索框怎么设置?html搜索框input标签的使用方法实例...
  8. C#平均值计算器具体实现
  9. 再观《离开雷锋的日子》
  10. 《泰晤士报》百本新经典童书推荐-0-3岁宝宝阅读