有趣的数学 博弈论初探

news2024/11/16 9:23:04

1、简述

        博弈论是数学的一个分支,专注于分析此类博弈。博弈论可以分为两个主要分支学科:经典博弈论和组合博弈论。经典博弈论研究玩家同时移动、下注或制定策略的游戏。

        从数学意义上讲,游戏是指玩家根据定义的规则做出理性决策,试图获得某种回报的情况。博弈论是数学的一个分支,主要研究这类博弈的分析。博弈论可以分为两个主要的子学科:经典博弈论和组合博弈论。

        经典博弈论研究玩家同时移动、下注或制定策略的游戏。因此,玩家经常发现自己对游戏的某些方面一无所知。由于缺乏信息,这些游戏的玩家更有可能依赖预测和机会。例子包括扑克或石头、纸、剪刀。

        另一方面,组合博弈论是对两人游戏的研究,其中每个玩家在整个游戏过程中对游戏的各个方面都有完整的了解。这些游戏通常是轮流进行的,通常不涉及偶然因素。例子包括国际象棋或跳棋。此外,如果所有玩家从每个位置都有相同的可能动作,那么组合游戏就被认为是公正的。否则,这场比赛就被称为有偏向的。

        博弈论可以帮助我们找到竞争情况下的最佳决策,或合作情况下最公平的决定。每个参与者的结果取决于他们的决定和其他玩家的决定。 它在商业、军事、体育、金融、个人生活、游戏等方面都很有用。 让我们看一个例子,看看博弈论如何帮助我们找到最佳决策。

2、纳什均衡

        纳什均衡是美国数学家约翰·纳什(1928-2015)最早提出的一个概念。如果没有玩家在考虑所有其他玩家的策略后有动机改变其个人游戏策略,则称非合作游戏处于纳什均衡。囚徒困境是纳什均衡的一个经典例子。提醒一下,囚犯困境是指两名囚犯被判为共犯的情况。囚犯们被单独监禁,因此他们之间没有交流的方法。然后向他们每人提交以下建议:

i.如果两人都供认不讳,他们将各自入狱8年。

ii。如果其中只有一人认罪,他将被释放,而另一人将在监狱中度过10年。

iii.如果两人都不认罪,他们将各自入狱一年。

        当两个犯人都认罪时,这个游戏处于纳什均衡。为什么?因为在这种情况下,两名囚犯都不会因为改变策略而获益。如果囚犯1改变策略,保持沉默,那么他将被判处比认罪更长的监禁,而囚犯2将能够逍遥法外。囚犯2也应该按照同样的逻辑来维持他的策略。尽管对整个群体来说,最好的策略是双方都保持沉默,但囚犯个人最好认罪,因为他们事先无法知道另一名囚犯的策略,而在其他囚犯认罪时保持沉默将导致10年监禁。

        纳什均衡可以应用于各种现实生活中的情况。例如,它解释了我们过度捕捞海洋的原因:尽管过度捕捞显然对整个生态系统不利,但对单个公司来说,停止捕捞是不好的,因为这样一来,该公司将停止盈利,而其他公司将继续捕鱼,从而继续盈利。纳什均衡也可以应用于经济、战争、政治和无数其他领域。

3、囚徒困境

        除了上述两种分类之外,游戏还可以用多种方式进行分类。其中最明显的是根据玩家数量对游戏进行分类。通常将游戏描述为n人游戏,其中n是大于或等于1的整数,表示参与特定游戏所需的玩家数量。

        玩家移动(或不移动)的顺序是对游戏进行分类的另一种简单方法。在同时进行的游戏中,所有玩家都在同一时间移动。相反,在顺序游戏中,在任何给定时间只有一名玩家可以移动。有些游戏可能不一定属于这两类。

        游戏也可以根据可能的总奖金进行分类。常和游戏或零和游戏是指无论玩家采取什么行动,总可能奖金的总和都保持不变的游戏;也就是说,一些玩家获得的奖金之和必须等于其他玩家的损失之和。例如,在扑克中,玩家为了一笔固定的钱而竞争。每个玩家的决定不会影响可用的奖金。然而,在可变金额游戏中,可用的总奖金可能会根据支付者的行为而变化。

        变和对策可以进一步分为以下子群:合作对策和非合作对策。合作游戏的玩家可以订立具有约束力的协议,如可执行的合同,而非合作游戏的参与者不得订立任何具有约束力的安排。例如,假设有两个人,一个卖家和一个买家,希望完成一笔商业交易。当他们试图协商价格时,这些人正在参与一场非合作游戏。如果买方签署了一份合同,同意支付特定的价格,那么这就变成了一场合作游戏。

        囚犯的困境是一个可变和游戏的例子。

        凯西和达纳因入室盗窃被捕。他们分在不同的房间,无法串供。

        凯西被告知:

        如果你们都不说话,你们都会因非法侵入罪被监禁1 个月。

        如果你指控 Dana:你无罪释放,Dana 会被判 10 个月。

        如果 Dana 指控你:你被判10 个月,Dana 无罪释放 。

        如果你们都互相指责,你们都会被判6 个月的刑期。

        你建议凯西做什么?

        所以也许凯西和达纳都应该保持沉默?这样他们每人只有1个月的监禁。

        但这种结果是不可控的。 因为任何一方都可以做出“我自由,你监禁10 个月”的决定。 那么该怎么办?

        我们可以从下表中看到,可能的矩阵。


 
达纳
保持沉默责怪凯西
凯西保持沉默-1 , -1-10 , 0
责备达纳0 , -10-6 , -6

        凯西若保持沉默,就有可能被判入狱10个月, 所以比较可能的是他们每人被判处6个月的刑期。

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

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

相关文章

js小案例-省市级联

运行效果&#xff1a; 代码演示&#xff1a; <!DOCTYPE html> <html><head><meta charset"utf-8" /><title>省市级联</title><style type"text/css">.regist_bg {width: 100%;height: 600px;padding-top: 40px…

四元数(Quaternion)的一些性质

四元数(Quaternion)是用于三维旋转和定向的四部分组成的超复数&#xff0c;超复数简单理解就是比abi这样的复数更复杂的复数&#xff0c;其中abi这样的复数我们也可以叫做二元数&#xff0c;表示复平面的一点&#xff0c;对于熟悉欧拉公式的朋友就知道&#xff0c;也可以看成是…

请编程输出无向无权图各个顶点的度 ← 邻接矩阵存图

【题目描述】 请编程输出无向无权图各个顶点的度。【测试样例示意图】【算法代码】 #include <bits/stdc.h> using namespace std; const int maxn100; int mp[maxn][maxn]; //无向无权图的邻接矩阵 int V,E; //顶点数、边数 int sx,ex; //起点编号、终点编号int main()…

通过Electron打包前端项目为exe

&#x1f9d1;‍&#x1f393; 个人主页&#xff1a;爱蹦跶的大A阿 &#x1f525;当前正在更新专栏&#xff1a;《JavaScript保姆级教程》、《VUE》、《Krpano》 ✨ 正文 1、 拉取electron官网上的demo&#xff0c;拉下来之后安装依赖&#xff0c;项目跑起来之后&#xff0c;就…

Python并发编程:非阻塞IO

非阻塞IO&#xff08;non-blocking IO&#xff09; Linux下&#xff0c;可以通过设置socket使其变为non-blocking&#xff0c;当对一个non-blocking socket执行读操作时&#xff0c;流程是这个样子 从图中可以看出&#xff0c;当用户进程发出read操作时&#xff0c;如果kernel…

2024超声波清洗机测评推荐、希亦、苏泊尔、德国综合对比哪个牌子好

清洁眼镜的重要性不言而喻&#xff0c;干净的眼镜不仅可以提供清晰的视野&#xff0c;还可以保护眼睛免受有害物质的侵害。并且现在有非常多的盆骨都是离不开眼镜的&#xff0c;像近视的朋友需要经常佩戴眼镜来配合自己看远处实现&#xff0c;经常爬山的朋友需要墨镜来协助我们…

基于SpringBoot+Vue+ElementUI+Mybatis前后端分离管理系统超详细教程(五)——多条件搜索并分页展示

前后端数据交互 书接上文&#xff0c;我们上节课通过前后端数据交互实现了分页查询和单条件搜索分页查询的功能&#xff0c;最后留了个小尾巴&#xff0c;就是把其他两个搜索条件&#xff08;email,address&#xff09;也加进来&#xff0c;实现多条件搜索并分页展示。这节课我…

OWASP Top 10 网络安全10大漏洞——A03:2021-注入

10大Web应用程序安全风险 2021年top10中有三个新类别、四个类别的命名和范围变化&#xff0c;以及一些合并。 A03:2021-注入 Injection从第一的位置滑落至第三位置。94% 的应用程序针对某种形式的注入进行了测试&#xff0c;最大发生率为 19%&#xff0c;平均发生率为 3%&a…

Mint_21.3 drawing-area和goocanvas的FB笔记(五)

FreeBASIC SDL图形功能 SDL - Simple DirectMedia Layer 是完整的跨平台系统&#xff0c;有自己的窗口、直接捕获键盘、鼠标和游戏操纵杆的事件&#xff0c;直接操作音频和CDROM&#xff0c;在其surface上可使用gfx, openGL和direct3D绘图。Window3.0时代&#xff0c;各种应用…

11.Node.js入门

一.什么是 Node.js Node.js 是一个独立的 JavaScript 运行环境&#xff0c;能独立执行 JS 代码&#xff0c;因为这个特点&#xff0c;它可以用来编写服务器后端的应用程序 Node.js 作用除了编写后端应用程序&#xff0c;也可以对前端代码进行压缩&#xff0c;转译&#xff0c;…

win11中微软商店如何使用微信支付?microsoft store支付教程

Microsoft Store是由微软公司提供的一个数字分发平台&#xff0c;用于购买和下载Windows操作系统及其相关应用、游戏、音乐、电影、电视节目和其他数字内容。该平台最初是作为Windows 8的一部分引入的&#xff0c;后来也适用于Windows 10和其他Microsoft平台。 以下是Microsof…

ROS——用VirtualBox虚拟一台计算机

打开软件后会出现这个界面&#xff0c;点击新建 然后出现这个界面 名称可以自己任取 &#xff0c;点击文件夹后边的箭头会出现这个界面&#xff0c;点其他可以自己选择虚拟机位置&#xff0c;默认C盘 版本和类型因为我们需要的是 Ubuntu&#xff0c;所以类型选择Linux&#xf…

Neo4j 新手教程 环境安装 基础增删改查 python链接 常用操作 纯新手向

Neo4j安装教程&#x1f680; 目前在学习知识图谱的相关内容&#xff0c;在图数据库中最有名的就是Neo4j,为了降低入门难度&#xff0c;不被网上很多华丽呼哨的Cypher命令吓退&#xff0c;故分享出该文档&#xff0c;为自己手动总结&#xff0c;包括安装环境&#xff0c;增删改查…

LeetCode146题:LRU缓存(python3)

代码思路&#xff1a; Python 默认是用 dict 存储属性的&#xff0c;每次用 . 访问属性都需要查字典。如果声明 slots 就不会创建字典&#xff0c;而是改用指针偏移量直接拿到属性对象。所以即节省了内存&#xff08;没有字典&#xff09;又节省了时间&#xff08;省去查字典的…

k8s-生产级的k8s高可用(1) 24

高可用集群 实验至少需要三个master&#xff08;控制节点&#xff09;&#xff0c;一个可以使外部可以访问到master的load balancer&#xff08;负载均衡&#xff09;以及一个或多个外部节点worker&#xff08;也要部署高可用&#xff09;。 再克隆三台主机 清理并重启 配置两…

Vue 项目性能优化指南:提升应用速度与效率

&#x1f90d; 前端开发工程师、技术日更博主、已过CET6 &#x1f368; 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 &#x1f560; 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 &#x1f35a; 蓝桥云课签约作者、上架课程《Vue.js 和 E…

Pinctrl子系统_04_Pinctrl子系统主要数据结构

引言 本节说明Pinctrl子系统中主要的数据结构&#xff0c;对这些数据结构有所了解&#xff0c;也就是对Pinctrl子系统有所了解了。 前面说过&#xff0c;要使用Pinctrl子系统&#xff0c;就需要去配置设备树。 以内核面向对象的思想&#xff0c;设备树可以分为两部分&#x…

7. 镜面网格

E . 镜面网格 E.镜面网格 E.镜面网格 每次测试时限&#xff1a; 2 秒 每次测试时限&#xff1a;2 秒 每次测试时限&#xff1a;2秒 每次测试的内存限制&#xff1a; 256 兆字节 每次测试的内存限制&#xff1a;256 兆字节 每次测试的内存限制&#xff1a;256兆字节 题目描述 给…

深度学习与人类的智能交互:迈向自然与高效的人机新纪元

引言 随着科技的飞速发展&#xff0c;深度学习作为人工智能领域的一颗璀璨明珠&#xff0c;正日益展现出其在模拟人类认知和感知过程中的强大能力。本文旨在探讨深度学习如何日益逼近人类智能的边界&#xff0c;并通过模拟人类的感知系统&#xff0c;使机器能更深入地理解和解…

每日OJ题_牛客HJ86 求最大连续bit数(IO型OJ)

目录 牛客HJ86 求最大连续bit数 解法代码 牛客HJ86 求最大连续bit数 求最大连续bit数_牛客题霸_牛客网 解法代码 #include <iostream> using namespace std; int main() {int n 0, cnt 0, ret 0;cin >> n;for (int i 0; i < 32; i){if (n & (1 <…