早点关注我,精彩不错过!
在Mathemagician创刊之初,曾经发表过一个七篇长文系列《关于洗牌的研究(七)——从数学到魔术之鸽尾洗牌》(现在看来也不算长了),这也是逐渐形成“先数学,后魔术”的数学魔术系列文章结构风格的关键一作,以前则更加混乱些。文章主要在对洗牌机理的分析基础上,对其混乱度的计算进行了深入讨论;而重点谈论的具体操作对象包括印度洗牌、完美洗牌和鸽尾洗牌,并都给出了相应魔术案例。
其中完美洗牌部分在上一破纪录的长篇系列《完美洗牌的秘密(二十一)——milk shuffle的应用三(天天四条龙等)》中已经非常系统性地拓展完善了;而印度洗牌作为等效的多张的reverse操作(不能从中间抽),机理很清楚,作为魔术也都是一些很直白辅助的应用,这些年过去,暂时没有进一步数学深入和魔术应用的素材拓展。
而最后一种鸽尾洗牌,它既有很好的一般性,不像完美洗牌是一种非常规操作;也比印度洗牌具有更强的混乱度和迷惑性,实际数学结构也更加深入和精彩;甚至还能和一些其他数学魔术主题有紧密的联系,可谓是内容丰富。
本文是近5年来零零散散收集来的和鸽尾洗牌有关的魔术的一个大合集,也是这部分学习历程的阶段总结。经过初期《关于洗牌的研究(二)——你的扑克洗乱了吗?》的概率模型,后来在准备相关课程时首次用到循环子序列的概念建模,接着在Gilbreath的讲座中突然意识到其中洗牌部分的结果空间的本质性质描述方法。如今我终于鼓起勇气,趁着去年CATO系列中的牌叠元组模型在脑海里还热乎,继完美洗牌沿用后,鸽尾洗牌也赶紧落实成文章,聊以留存和纪念吧。
前情回顾
在《关于洗牌的研究(二)——你的扑克洗乱了吗?》中,我们对鸽尾洗牌这一随机过程作了逐步的分析拆解,分为随机切牌和洗牌两步。前者是用正比于正态分布概率密度值的分类分布来建模切牌位置,后者则拆解为每次分别从左或右边的牌叠选择最底下一张(或若干张)落下,直到落完所有的牌以形成新的牌叠。当时对后面这个随机过程的机理分析相当精彩,有过程的漂亮的分析拆解,以及去思考到底一边落下的概率和什么有关,最后写出和剩余张数对比、洗牌水平参数等符合直觉却又完成恰到好处的量化的相关概率机理表达式的优雅过程描述。这些都是概率模型机理分析比经典款所独有的魅力,结果是随机的,但分布的参数却有简单优雅的表达式表达。
概率分布的清楚更多地可以帮助确定一次甚至多次洗牌完成以后,牌叠排列的分布情况。但是,一方面,既然是分布,那就无法确定是否发生,理论上范围内所有解都有可能,哪怕概率很小但只要范围里有就得想好应对策略,这对要变魔术而言是很不利的;另外,虽然我们可以根据分布所限定的牌张排列结果形成的机理推导出一次洗牌所有可能的洗牌结果,也能算出总数来(2 ^ m - m),但对于形成的牌叠结果的集合,它到底有没有什么等价性质,能简明地描述出这个结果来,并无从得知。就好像我获得了所有的一袋苹果,却没法总结出这一袋水果它区分于其他的特点来,只能用列举法一一编号数过去才能确定。又比如一个集合{1, 3, 5, 7, ......},只要不写出通项公式{a_n = 2n - 1 | n in N+}来,既不能严谨地确定这个集合的内容,也更不能说掌握了这个集合了。
当然这种数学式子意义上的性质简明表达不是所有结构中都有的,比如人类自然语言就极其混乱,根本没有所谓的通用法则,都是规则中打着补丁,补丁中藏着规则。因此严格文法式的语言建模总是遇到困难,反而只能用更通用的神经网络来用数据驱动着学习,去尝试拟合人类这堆积起来没啥道理可言的犄角旮旯的语言习惯。在网络参数和结构中的根本看不懂参数含义的内容里去记录和模拟语言,却永远也没法精确判定,甚至都没有标准答案说“一句什么话,是人话”。
但好在扑克牌魔术的这些操作还是很干净的,大多还真有背后的神奇的数学结构和一个司空见惯的物理操作相对应,鸽尾洗牌自然也不例外。而且,随着后面魔术内容的引入,你会发现这个性质的总结真是一针见血,瞬间把一个定律式感觉很对但又说不出怎么对的规律,变成了可以从很简单的定义和定律(在数学里都是公理)出发的逻辑推理过程,也就是能变成纯数学的结论。
那接下来我们先介绍鸽尾洗牌的操作定义。
操作释义(术语定义)
鸽尾洗牌(Riffle Shuffle):将牌叠切牌分为两叠,依次切牌若干张并取其底叠和新牌叠(作为底叠,最开始为空)完成切牌更新该牌叠,直到两叠都最后一次切完所有牌形成唯一新牌叠。
顶叠(TD:top deck):鸽尾洗牌第一步切牌中切出的牌叠0:(c - 1)。
底叠(BD:bottom deck):鸽尾洗牌第一步切牌中剩余的牌叠c:(n - 1)。
其中c为顶叠张数或切牌相邻位置关系的位置(从1开始数)。
注:
1. 鸽尾洗牌的操作描述和完美洗牌(详见《完美洗牌的秘密(一)——(反)完美洗牌定理》)高度一致,其区别在于完美洗牌是确定的排列操作每次就切1张,而鸽尾洗牌是有随机性的,前者是后者众多可能中的一个特例;
2. 在描述鸽尾洗牌过程的时候依照一般习惯,是从底叠开始逐渐堆叠形成新牌叠的。而这和完美洗牌从顶部开始以此碰撞交叉正好相反,从顶部开始也是完美洗牌手中持牌的默认习惯。不过和完美洗牌一样,任何结果分布等效(这里实际可以用操作的结合律证明等价,其他可能有比如对称不变操作的消解等也能构造等效结果,比如切牌和完成切牌n次和1次的分布范围是相同的,切牌后又反向完成切牌等于没变的假切可以嵌入任何操作中等等)的不同的结合顺序、操作过程都算作鸽尾洗牌(的等效变体);
3. 理论上也存在反鸽尾洗牌,即鸽尾洗牌的逆过程。但因为其本身的随机性,它只能和原特定的鸽尾洗牌中的一个特定的结果形成逆过程,因此研究价值不像反完美洗牌那样好,但不妨碍结合一些魔术策略也能构造出不错的效果应用;
好了,今天回顾了鸽尾洗牌的背景以及重新给出了操作的数学定义。就先介绍到这里,下期我们来看相关的定理和定律。
精彩抢先看!
视频1 3叠洗牌找牌
视频2 正反洗牌找牌
视频3 半叠洗牌找牌
我们是谁:
MatheMagician,中文“数学魔术师”,原指用数学设计魔术的魔术师和数学家。既取其用数学来变魔术的本义,也取像魔术一样玩数学的意思。文章内容涵盖互联网,计算机,统计,算法,NLP等前沿的数学及应用领域;也包括魔术思想,流程鉴赏等魔术内容;以及结合二者的数学魔术分享,还有一些思辨性的谈天说地的随笔。希望你能和我一起,既能感性思考又保持理性思维,享受人生乐趣。欢迎扫码关注和在文末或公众号留言与我交流!
扫描二维码
关注更多精彩
明明有bug的扑克魔术怎么还能骗到人?(五) ——大效果前,小瑕疵后
2024阿里巴巴全球数学竞赛决赛中的深度学习背景题解析(二)——应用与计算数学部分第6题
完美洗牌的秘密(二十一)——milk shuffle的应用三(天天四条龙等)
2024阿里巴巴全球数学竞赛决赛中的数列题解析(分析与方程方向第4题)
点击阅读原文,往期精彩不错过!