博弈论SG函数

【博弈论】势博弈(potential game)、EPG以及最佳响应、Nash均衡和帕累托(pareto)最优的理解 文章目录前言一、Potential game二、Nash均衡和Pareto-optimal(帕累托最优)1.Nash 均衡2.Pareto最优三、Best response(最佳响应)四、Exact potential game(EPG)1.合作-傀儡博弈2.合作博弈3.傀儡博弈4.自激博弈5.双边对称交互博弈使用理解 前言 本文主要详细讲解potential game的概念以及Exact potential game 的定义和分类,以及这么博弈方法是如何在论文中引入并使用的,本文仅是对自己在该模块 阅读详情

参考:
http://www.cnblogs.com/ECJTUACM-873284962/p/6398385.html
http://www.cnblogs.com/ECJTUACM-873284962/p/6921829.html

巴什博奕

只有一堆石子,每个人可以从里面取1~m个石子,先取光者胜。

当 n = m + 1 n = m+1 n=m+1先手必败,因为先手无论选什么,都会使其个数小于m。

因此可以推出更一般的情况:
n = k ∗ ( m + 1 ) n = k*(m+1) n=k∗(m+1)先手必败,因为后手总能构造出 n = t ∗ ( m + 1 )   t &lt; k n = t*(m+1) \ t &lt; k n=t∗(m+1) t<k的情况。

总结: 只要能构造出两个可以相互转换的状态便可得出答案。(必胜态,必败态)。

尼姆博弈

有n推石子,每堆有$m_i$个石子,每次可以取在一堆中取任意个石子。

学着巴什博奕做,构造两个可以相互转换的状态。

把每堆石子的总个数用二进制的形式相加。每位都不进位。
例如:
1 2 3
001
010
011

= 022

因为每次都只能在一堆石子上操作,所以对于每一位,每次只能减1或者不变。可以观察出,当所有位都为偶数的时候(偶状态),先手必败,当有一位为奇数(奇状态)的时候先手必胜。

因为总能从一个奇状态转变为一个偶状态。反之,也能从一个偶状态转变为奇状态。 但无法保持当前状态不变。

考虑异或,当一位出现偶数个时,其贡献为0,否则为1。
所以可以将每一堆的个数都异或起来,如果异或和!=0,则先手胜,否则先手败。

有n推石子,每堆石子的个数分别为1,2,3,4,....,n,每次可以取在一堆中取任意个石子。n特别大。

因为n特别的大,所以没法直接对其异或。 但是连续正整数的异或是有规律的。
f[l,r]: [ l , r ] [l,r] [l,r]的异或和
推论1: f [ 0 , 2 k − 1 ] = 0 , 2 ≤ k f[0,2^k-1]=0, 2 \leq k f[0,2k−1]=0,2≤k
XJB证明: 二进制的每一位上都有 2 k − 1 2^{k-1} 2k−1个1。

求 f [ 0 , n ] f[0,n] f[0,n]。

  1. n为奇数
    f [ 0 , n ] = f [ 0 , 2 t − 1 ] ⊕ f [ 2 t , n ] = f [ 2 t , n ] f[0,n] = f[0,2^{t}-1] \oplus f[2^t,n] =f[2^t,n] f[0,n]=f[0,2t−1]⊕f[2t,n]=f[2t,n]。
    这个区间有 m = n − 2 t + 1 m = n-2^t+1 m=n−2t+1个数,m为偶数,所以对于二进制第t位1的个数和一定为偶数,可以不用考虑。转变为:
    f [ 2 t , n ] = f [ 0 , n − 2 t ] f[2^t,n] = f[0,n-2^t] f[2t,n]=f[0,n−2t]
    因为n为奇数, 2 t 2^t 2t一定为偶数。所以 n − 2 t n-2^t n−2t是一个奇数,所以可以不断缩小n。
    f [ 0 , n ] = f [ 0 , n − 2 t ] = f [ 0 , n − 2 t − k 1 ∗ 2 t − 1 − k 2 ∗ 2 t − 2 ⋯ − k i ∗ 2 ] ( 2 ≤ t ) 。 = f [ 0 , p ] ( p ≤ 3 ) f[0,n] = f[0,n-2^t] = f[0,n-2^t-k_1*2^{t-1}-k_2*2^{t-2} \dots -k_i*2](2 \leq t)。= f[0,p](p\leq3) f[0,n]=f[0,n−2t]=f[0,n−2t−k1​∗2t−1−k2​∗2t−2⋯−ki​∗2](2≤t)。=f[0,p](p≤3), k i k_i ki​代表这一位是否有值。
    因为t要大于等于2,所以只要单独考虑最后两位的情况。
    n&3 = 1 (01) 时, f [ 0 , n ] = f [ 0 , 1 ] = 1 f[0,n]=f[0,1] = 1 f[0,n]=f[0,1]=1 先手胜
    n&3 = 3 (11) 时, f [ 0 , n ] = f [ 0 , 3 ] = 0 f[0,n]=f[0,3] = 0 f[0,n]=f[0,3]=0 先手败

  2. n为偶数
    f [ 0 , n ] = f [ 0 , 2 t − 1 ] ⊕ f [ 2 t , n ] = f [ 2 t , n ] f[0,n] = f[0,2^t-1] \oplus f[2^t,n]=f[2^t,n] f[0,n]=f[0,2t−1]⊕f[2t,n]=f[2t,n]
    m = n − 2 t + 1 m=n-2^t+1 m=n−2t+1为奇数, f [ 2 t , n ] = f [ 0 , n − 2 t ] ⊕ 2 t f[2^t,n]=f[0,n-2^t]\oplus2^t f[2t,n]=f[0,n−2t]⊕2t。
    n − 2 t n-2^t n−2t还是偶数,依旧可以缩小n
    f [ 0 , n ] = f [ 0 , n − 2 t − k 1 ∗ 2 t − 1 − ⋯ − k i ∗ 2 ] ⊕ 2 t ⊕ k 1 ∗ 2 t − 1 ⋯ ⊕ k i ∗ 2 f[0,n] = f[0,n-2^t-k_1*2^{t-1}-\dots-k_i*2]\oplus2^t\oplus k_1*2^{t-1}\dots \oplus k_i*2 f[0,n]=f[0,n−2t−k1​∗2t−1−⋯−ki​∗2]⊕2t⊕k1​∗2t−1⋯⊕ki​∗2
    后面的常数项异或和就是n,
    n&3 只有2或者0
    n&3 = 2(10)时, f [ 0 , n ] = n + f [ 0 , 2 ] = n + 1 f[0,n]=n+f[0,2] = n+1 f[0,n]=n+f[0,2]=n+1
    n&3 = 0(00)时, f [ 0 , n ] n + f [ 0 , 0 ] = n f[0,n]n+f[0,0] = n f[0,n]n+f[0,0]=n

SG函数

定义mex{S}运算: 不在集合S中最小的非负整数。
例如: mex{0,2,3,4}=1,mex{1,2,3,4}=0。

对于任意状态x, S G ( x ) = m e x { S } SG(x) = mex\{S\} SG(x)=mex{S},S是x后继状态SG函数值的集合。
若x的后继三个SG函数值为 S G ( a ) , S G ( b ) , S G ( c ) SG(a),SG(b),SG(c) SG(a),SG(b),SG(c),那么 S G ( x ) = m e x { S G ( a ) , S G ( b ) , S G ( c ) } SG(x) = mex\{ SG(a), SG(b), SG(c) \} SG(x)=mex{SG(a),SG(b),SG(c)}。

当x时终态时,后继状态为空, S G ( x ) = 0 SG(x) = 0 SG(x)=0,即为必败态。

有1堆n个的石子,每次只能取{ 1, 3, 4 }个石子,先取完石子者胜利,
那么各个数的SG值为多少?

SG(0) = 0, f[ ] = {1,3,4}

x = 1时,可取1个,剩余0个,SG(1) = mex{ SG(0) } = 1。
x = 2时,可取1个,剩余1个,SG(2) = mex{ SG(1) } = 0。
x = 3时,可取1个或3个,剩余2个或0个,SG(3) = mex{ SG(2), SG(0) } = 1。
x = 4时,可取1,3,4,剩余3,1,0,SG(4) = mex{ SG(3), SG(1), SG(0) } = 2。

可以发现,SG函数可以从小到大递推而来。

由上述实例我们就可以得到SG函数值求解步骤,那么计算1~n的SG函数值步骤如下:

  1. 使用 数组f 将 可改变当前状态 的方式记录下来。

  2. 然后我们使用 另一个数组 将当前状态x 的后继状态标记。

  3. 最后模拟mex运算,也就是我们在标记值中 搜索 未被标记值 的最小值,将其赋值给SG(x)。

  4. 我们不断的重复 2 - 3 的步骤,就完成了 计算1~n 的函数值。

一个游戏可以分解成两个子游戏a,b,那么即后继的状态为SG[a]^SG[b]的值

博弈论 sg函数 对于一个给定的组合游戏,其sg函数G(n)是一个非负整数,用于表示游戏位置n的"输赢状态";两个游戏位置的sg函数值相同,意味着从这两个位置开始,对于任何一个玩家来说,都存在相同的赢或输的策略。 阅读详情

相关推荐

博弈论 随记(SG函数)

博弈论 随记 博弈论 1. 简单博弈     正推/反推。纸上画画直观图(ven图,条形图等),找必胜区间和必败区间。一般此类问题都有同余的必胜点。 HDU4764 /**/ 2. Nim游戏     有若干堆石子,每堆石子的数量ai都是有限的,合法的移动是“选择一堆石子并拿走若干颗(不能不拿)”,如果轮到某个人时所有的石子堆都已经被拿空了,则判负(因为他此

Strangedbly 5877

【博弈论】博弈论入门笔记(四类基础博弈+SG函数)

『博弈论定义』 博弈论又被称为对策论(Game Theory):是二人或多人在平等的对局中各自利用对方的策略变换自己的对抗策略,达到取胜目标的理论。博弈论是研究互动决策的理论。博弈可以分析自己与对手的利弊关系,从而确立自己在博弈中的优势,因此有不少博弈理论,可以帮助对弈者分析局势,从而采取相应策略,最终达到取胜的目的。 --------------------- 资料参考来自:http://...

Miserable_ccf的博客 4213

HDU 1848 浅谈组合游戏博弈论及SG函数MEX推导SG定理

世界真的很大 今天考试考了博弈论,发现对于博弈论除了原版的nim游戏之外就什么都不会了 对于作为其基础的SG函数及定理也是完全不了解,这样是不得行的 要通过不断地刷题,总结,得出一套博弈论的题的做题思路才好 看题先:description:任何一个大学生对菲波那契数列(Fibonacci numbers)应该都不会陌生,它是这样定义的: F(1)=1; F(2)=2; F(n)=F(n

BerryKanry的博客 2169

博弈-sg函数的原理和优化(hdu-1536)

sg函数:sg函数是博弈中的确定一个position性质的一个函数,全称是sprague-grundy。 性质1:对于所有的p-position,都有sg = 0;对于所有的n-position都有sg != 0; 性质2:某点a的sg函数的值由它的后继的sg函数的值来决定,设后继为b, c, d, e……则sg(a) = mex(sg(a), sg(b), sg(c), sg(d), sg(

shuimu12345678的专栏 2830

博弈论 | 详解搞定组合博弈问题的SG函数

本文始发于个人公众号:TechFlow,原创不易,求个关注 今天这篇是算法与数据结构专题的第27篇文章,我们继续深入博弈论问题。今天我们要介绍博弈论当中非常重要的一个定理和函数,通过它我们可以解决许多看起来杂乱无章的博弈问题,使得我们可以轻松地解决一大类博弈问题。 有了SG函数和SG定理,我们不再是单纯地通过构思、分析和找规律去解决问题了。并且我们之前学过的巴什博奕、威佐夫博弈以及Nim博弈都可以使用SG函数来解决,相当于我们找到了这一大类问题的通解。下面,我们来看几个基本定理和基本概念。 基本定理

TechFlow的博客 847

带隙基准电路实战:温度补偿与流片调优全解析

带隙基准(BGR)是模拟芯片中实现高精度、低温漂电压参考的核心电路,其本质是利用硅材料禁带宽度的物理稳定性,通过PTAT(正温度系数)与CTAT(负温度系数)电压的加权叠加抵消温度影响。原理上需兼顾一阶线性补偿与二阶曲率校正,技术价值在于支撑ADC/DAC/LDO等关键模块的精度与可靠性。典型应用场景涵盖车规级MCU、工业传感器和高精度电源管理芯片。工程落地难点集中于工艺偏差、运放失调、寄生效应及版图热电耦合——这正是‘带隙基准设计’与‘带隙基准调优’的根本分野。本文聚焦真实流片经验,深入拆解Widlar架

weixin_42628280的博客 254

博弈论学习笔记

巴氏博弈eg:hdu2149,2156描述:只有一堆n个石子,每次能取1到m个物品,A先手,问谁能先取完石子思路:这种问题的关键就在于能否取到关键点,比如,这里只能能取到倒数m+2个石子,留下m+1个石子,则后者就必败。结论:如果初始石子是(m+1)的倍数,则先手必败,否则先手必胜。威佐夫博弈eg:hdu2177,hdu5754描述:有两堆物品,每堆都有若干物品。每次可以从一堆中取任意物品,也可以从

lyc1635566ty的博客 508

Transformer在量化交易中的应用:从时序预测到策略生成

Transformer模型凭借其强大的自注意力机制,在自然语言处理领域取得了革命性突破。其核心原理是通过并行计算和动态权重分配,有效捕捉序列数据中的长距离依赖关系。这一特性使其在金融时间序列分析中展现出巨大技术价值,能够处理市场数据中的复杂非线性模式和长期关联。在量化交易场景下,Transformer可将价格、成交量等连续数据通过离散化分桶处理,转化为类似文本的序列,进而进行预测或直接生成交易信号。本文以QuantGPT项目为例,探讨了如何将这一前沿AI架构迁移应用于金融领域,涵盖了从数据作为“语言”的编码

weixin_26757949的博客 363

博弈论术语

博弈论四种博弈类型 完全信息情况下的静态博弈, 完全信息情况下的动态博弈, 不完全信息静态博弈, 不完全信息动态博弈 那什均衡 一套策略,每个玩家一个,没有玩家可以通过单方面改变策略来提高收益 子博弈 混合策略 在完全信息博弈中,如果在每个给定信息下,只能选择一种特定策略,这个策略为纯策略(pure strategy)。如果在每个给定信息下只以某种概率选择不同策略,称为混合策略(mixed s...

qq_37941474的博客 4813

ubuntu18.04 升级Ubuntu 20.04

Ubuntu 18.04升级20.04指南:首先备份重要数据,更新当前系统并检查新版本可用性(sudo do-release-upgrade -c)。确认升级后执行sudo do-release-upgrade,按提示完成操作。升级过程需耐心等待,完成后重启系统。注意:升级前务必备份数据,确保系统为最新版本,以降低风险。升级后即可使用Ubuntu 20.04系统。

https://ophome.blog.youkuaiyun.com,在IT行业有多年的工作经验,尤其是在Python、Linux、负载均衡、Nginx和服务器运维等领域。 1058

STM32实战:5分钟搞定CanFestival协议栈下的CANopen心跳报文配置(附避坑指南)

本文详细介绍了如何在STM32平台上使用CanFestival协议栈快速配置CANopen心跳报文,包括硬件准备、协议栈移植、心跳报文配置及常见问题解决方案。通过实战步骤和避坑指南,帮助开发者高效实现节点状态监控,提升工业控制系统的可靠性。

win55的博客 745

2.18博弈论SG函数

总结来说,SG为0表示当前局面是一个必败态,而非0的SG值表示当前局面是一个必胜态。这是根据博弈论中SG函数的定义和理论推导得出的。自己走的是SG不为0的点,那么对手就必须从这个点开始往下继续走了,而不能重复了必败态的后继状态要么没有,即最底层,要么就是必胜态,因为不能连续走两步,必胜的后面必然是必败;同理,必胜的后面至少得有一个必败态,如果后面都是必胜态的话,那么此时为必败态就是底层叶子结点表示结尾,一定是必败态,往上紧邻的一定是必胜态。

m0_73553411的博客 2712

Cadence SPB16. 6 安装流程

1.首先下载CadenceAllegroSPBorCAD16.6安装包 下载之后运行其中的setup.exe,然后先安装第一项LicenseManager 一直按next或install, 直到被询问license时,单击cancel,然后选是和finish。 2,安装Product Installtion 直接点next跳过这一步 安装完成后,点Exit退出 3.按ctrl+alt+delete打开任务管...

wangjie36的博客 5148

博弈论-SG函数和SG定理

1.SG函数和SG定理是一个十分神奇的东西,有了它,绝大部分的博弈都可以被统一到这个上面,都可以使用SG函数解决。是一种解决博弈问题的十分方便的手段。 2.首先给出一些基本的定义:mex运算,这个是作用在集合上的运算,具体的含义就是:找出不属于当前集合最小的非负整数,可能你有点晕,我们看几个例子。mex{1,2,3}=0;为什么?因为自然数从0开始,不属于这个集合最小的非负整数就是0了,再例如m...

YG爱木木 3568

手把手教你学Simulink——基于核能发电系统的场景实例:核电站汽轮机与发电机协调控制仿真

在核电机组中,汽轮机-发电机系统是将核能最终转化为电能的关键环节。与火电机组不同,核反应堆的热惯性大、功率调节慢,因此汽轮机的控制策略需与反应堆特性相匹配,实现安全、稳定、高效的能量转换。维持发电机输出功率/频率稳定(响应电网调度)调节汽轮机进汽压力(匹配一回路蒸汽供应)实现“堆-机协调控制”保障机组在启停、变负荷、甩负荷等工况下的安全性本教程将带你使用构建一个核电站汽轮机与发电机协调控制系统汽轮机调速系统(调门控制)建模发电机与电网接口建模(同步机)

MHD0815的博客 212

18、探索隐私工程技术的前沿:从理论到实践

本文深入探讨了隐私工程技术的核心概念、关键技术及其应用场景,分析了加密技术、访问控制和用户界面设计等在隐私保护中的作用,并结合数据库保护、物联网设备等实际场景进行阐述。同时,文章还讨论了隐私工程技术面临的挑战与未来发展趋势,提出了数据最小化原则、差分隐私、隐私增强技术等优化策略以及隐私设计、隐私影响评估等最佳实践,最后展望了新兴技术对隐私保护的影响及法规推动下的发展方向。

weixin_35307279的博客 373

博弈论之SG函数

下面的所有知识均属博弈论范畴。 SG⁡\operatorname{SG}SG 函数 Nim⁡\operatorname{Nim}Nim 博弈 在介绍 SG⁡\operatorname{SG}SG 函数前,我们先介绍一种经典的博弈——Nim⁡\operatorname{Nim}Nim 博弈,并从中获得一定的启发。 问题:有 nnn 堆石子,第 iii 堆石子里面有 AiA_iAi​ 枚石子,每人每次可从任意且至多一堆石子里取出任意多枚石子扔掉,可以取完,不能不取,最后无石子可取的人判负。假如甲是先手,且

Recalling_Clouds的博客 1207

使用 MATLAB/Simulink 对一个开关磁阻电机进行建模

*开关磁阻电机(Switched Reluctance Motor, SRM)**是一种新型的无刷电机,以其简单的机械结构、宽广的调速范围和较高的效率在工业应用中得到了广泛关注。SRM的独特之处在于其定子和转子均为凸极结构,并且通过改变绕组电流的方向来实现转矩的产生和控制。本教程将详细介绍如何使用对一个开关磁阻电机进行建模,并探讨其基本控制策略,特别是针对双凸极结构的SRM。本文介绍了如何使用构建一个开关磁阻电机的双凸极结构模型,并探讨了其基本控制策略。

amy_mhd的博客 203

博弈论——SG函数

有向图游戏,SG函数,SG定理

m0_73693552的博客 503

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

博弈论详解 2(SG函数 和 SG定理)

博弈论详解后续,对通用的必胜策略和必胜条件进行分析,深入了解博弈论

2401_84512298的博客 2574

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

博弈论之sg函数

对于双堆的Nim游戏,设sg(n,m)表示剩余石子数分别为n和m的状态的sg值,则sg(0,0)=0,并且sg(n,0)=sg(0,n)=n。我们发现sg(1,1)=0,而sg(1,2)=sg(2,1)=1,sg(2,2)=0……继续探索可以猜测,当n=m时,sg(n,m)=0,否则sg(n,m)≠0。设sg(m)表示剩余石子数为m的状态的sg值,则显然sg(0)=0,那么sg(1)=1,sg(2)=2……归纳可证sg(n)=n。

imlsp12356的博客 1156

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

博弈论-SG函数

学习博弈论不得不提一哈SG函数 关于SG函数的一些概念就不多说了 说下我自己的理解 SG函数记录为0的是P状态 不为0记录的是N状态 也是相当于有个周期再循环 P N状态轮番出现 SG模板 #include<iostream> #include<cstring> #include<algorithm> #define maxn 1000 using nam...

Stydwn的博客 641

博弈论与SG函数

巴什博奕: 两个顶尖聪明的人在玩游戏,有n个石子,每人可以随便拿1−m个石子,不能拿的人为败者,问谁会胜利 结论: 设当前的石子数为\(n=k∗(m+1)\)即\(n%(m+1)==0\)时先手一定失败 HDU1846 #include<iostream> using namespace std; int main() { int C,N,M; scanf("...

agtvo48266的专栏 182

sg函数(博弈论)

sg函数

m0_50597984的博客 703
上一篇: 扩展欧几里得算法求解不定方程||中国剩余定理
下一篇: 【2019 南昌邀请赛 Match Stick Game】 火柴dp
Link_Ray
博客等级 码龄9年 44粉丝 156原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值