Reverse原理背后的数学和魔幻艺术
第一次變用這個原理的魔術已經(jīng)有十幾年了,看起來就是拿起一疊牌發(fā)來發(fā)去,最后總能發(fā)出一些規(guī)律來,比如每一疊頂部都是Ace,在說上一些應景的話語,形成一個寓意美好的ending。Reverse這個名字是我自己取的,取自python中的list翻轉(zhuǎn)函數(shù)(當然不同語言中都有類似的操作啦),這可以看作是一個純self-working的魔術原理了,聯(lián)想了一些大師作品和自己的創(chuàng)作,發(fā)現(xiàn)這個品類實乃奇妙的數(shù)學和美麗的魔術結合的又一瑰寶。
數(shù)學原理
這再簡單不過了,我們知道如果f(x)?=?f?^?-?1(x),或者ff(x)?=?x,即一個函數(shù)存在反函數(shù)且和原函數(shù)相等時,那么在坐標軸上看起來應該是沿著y?=?x方向?qū)ΨQ的,函數(shù)的方程表達式上看則應該是x,y在表達式上的地位應該相當,比如xy?=?1的反函數(shù)和?x?^?2?+?y?^?2?=?1的圓。(所謂相當就是互相替換以后式子含義等價,這個等價一般來源于乘法加法的交換律哦~再想想,乘法和加法的交換律,分配率的原理又是什么?文末留言答對有獎哈~)
圖1?反函數(shù)等于原函數(shù)的例子:反比例函數(shù)和1?/?4圓
這些是初中數(shù)學的知識點了,我們再抽象一點,把f看作是對象(不一定是數(shù))上的一個操作(operation),這個操作同樣有定義域和值域,以及對應關系,這個對應(x,?y)的全體構成的集合也就定義了這個操作了。那么同實數(shù)上的函數(shù),這個操作的性質(zhì)則為:該操作和反操作的效果完全相同,或者,兩個同樣的操作以后會恢復原狀!注意哦,這是可以早就兩種完全不同魔術效果的原理哦,一個是“相同”,構造coincidence,還有一個是,還原(哈哈,這里不是撕牌還原的restoration啦,不要想偏了)!
巧了,上面描述的這個事情在數(shù)學上早就有名字了,他們統(tǒng)一叫做對稱關系,即對任意關系集A,若(a,?b)屬于A則(b,?a)也屬于A,按理說這種元素倒轉(zhuǎn)后形成的新元祖所在集合可以是A’,當且僅當A?=?A’(這種樣子的表達式是不是經(jīng)常見到,那個矩陣的逆和自身相等則為單位陣的結論是不是長的差不多?)時候,這個關系稱之為對稱關系。當然對稱關系只是等價關系的條件之一,后面有機會再分析其他兩個(傳遞性,自反性)。當關系滿足一一對應的時候我們稱之為函數(shù)關系,這里即對稱函數(shù),在不同領域有不同名字,比如實數(shù)上的函數(shù)叫沿y?=?x對稱,空間上我們稱之為鏡像關系(mirror),而在撲克牌這里,我取名reverse操作,它是對稱關系在序列空間上的具體形式,與鏡像這些概念構成counterpart關系,當然,counterpart關系也是對稱關系了。
于是,撲克牌手法中的普通的一張一張發(fā)牌(dealing),恰好等價于對撲克牌頂部的一部分牌執(zhí)行reverse操作,嗯嗯,在程序員看來就是這樣的:
#!?/usr/bin/env?python
#?-*-?coding:utf8?-*-
import?numpy?as?np
import?random
poker_list?=?range(54)
np.random.shuffle(poker_list)#?shuffle?the?deck
n?=?random.randint(1,?54)#?choose?a?position?randomly
result_list?=?poker_list[:n]#?get?the?pack?from?the?top
result_list.reverse()#?reverse?it
?
我們可以看到,無論n為多少(這個選擇其實很有限哦,信息量僅為54種可能而已,看起來自由其實束縛很大,一個隱形的限制就是,是從頭開始的n張,前面若干張總是在你選擇范圍內(nèi)。),其原來的頂牌在經(jīng)過了兩次reverse以后,依然會恢復到頂牌位置,而對于觀眾來說,如果表演得當,這些牌已經(jīng)經(jīng)過了充分的混亂和隨機了,任何效果看起來都是那么不可思議!而做到這些效果,只需要想方設法,讓這一操作的執(zhí)行過程變得合理而有趣,這些就是魔術設計的藝術啦。
說了這么多,最后總結一下:撲克牌上的dealing手法等價于選序列頭部進行reverse?操作,reverse是一個對稱變換,反操作效果等價于原操作,操作兩次可恢復原自變量值,而魔術效果也產(chǎn)生于這一性質(zhì)。
嗯嗯,嚴謹?shù)臄?shù)學終于講完了,下面是美妙的魔幻藝術。
不說廢話,上表演!
?
魔術部分
第一個流程我印象很深刻,源于傅琰東老師在走進科學的一次訪談,嗯嗯,那時候我應該還是個10歲左右的翩翩少年。
視頻1.?4Ace聚首
原理講解:Reverse部分的變種之一,即,在執(zhí)行時候發(fā)成二疊甚至更多,這樣在每一疊頂部的牌恰為原來頂部若干張,注意哦,由于張數(shù)不一樣,那些牌的排列是起點可能不相同的循環(huán)隊列哦,隊列長度是牌疊數(shù)量m,起始位置取決與發(fā)出張數(shù)n模m的值。當然這些都不重要啦,最后的效果是4張一樣的Ace的組合,組合!誰會在這美妙的時刻去考慮他們的排列?(排列和組合是兩種魔術效果,往往后者已經(jīng)足夠驚艷,而忘卻了其實他們已經(jīng)排列得很混亂了,以后的文章中還會有一系列效果用到了這個現(xiàn)象。)
表演關鍵:兩個關鍵點,注意臺詞“一半多一點”讓你有理由去放回2張,但是后面的表演已經(jīng)要讓這個不得不做的dirty?work被讓觀眾看起來更重要的流程蓋掉乃至遺忘;另外,第一次發(fā)牌讓觀眾停的時候,一定要發(fā)出去兩張以后再說(當然如果只發(fā)了一張,那么發(fā)出的一疊和剩余頂牌就是Ace,那可能也是一個好結局吧)。
?
第二個流程也是來自我很小時候在一本厚厚的用照片拼成的魔術書上的,抱歉已經(jīng)忘了書名和作者了,回家要是翻到了一定補上,致歉!
還真回憶起來的,此流程來自于張德金先生的《圖說魔術入門》
圖2?張德金先生的《圖說魔術入門》封面
這本書至今應該還收藏在我老家爸媽的床底下,應該早就布滿了灰塵吧。里面東西也沒太大難度和深度,但至今我都視為至寶之一(嘿嘿,還有好幾個寶貝呢~),因為她曾經(jīng)是我童年的希望。
視頻2.?表里如一(4Ace聚首2)
原理講解:經(jīng)過后來的學習才領悟到,這里用到了Dai?Vernon?的?The?trick?that?cannot?be?explained里面的一個經(jīng)典思想,因為沒有人知道我要做什么,所以只要看起來也還合理,還不太可能發(fā)生,甚至寓意還挺美好,那就是好魔術。像magician’s?choice?和一些心靈類魔術也都由此原理而來。因此,一開始桌上5張牌,如果選了前4個Ace中的一個,沒問題,如果選了最后一個,嗯嗯,會讓他一直選到只剩下一張為止。現(xiàn)在桌上是Ace頂部3張Ace,一切就緒,執(zhí)行reverse操作就可以了(第二次發(fā)成3疊)。
魔術對數(shù)學的畫龍點睛,如此美妙!
?
最后還有一個流程,是最近看的一個shin?lim的一個表演,讓我久違地感嘆魔術對原理改造以后的美的極致追求。就不再附上講解啦,相信聰明的小伙伴們一定能夠解析其中奧秘,獲取理性和感性藝術的雙重體驗。
視頻3.All?you?have?chosen
怎么樣,數(shù)學的原理多么簡單而純粹,魔術的展現(xiàn)多么挑戰(zhàn)而美麗,他們合二為一的時候何不是天作之合呢!我仿佛在接受上帝賞給人類的文明和智慧一般地在接受洗禮,聰明的你,感受到了嗎?
最后感謝騰訊的幾位小伙伴幫忙拍攝和當托~
作者簡介
magic2728,現(xiàn)就職于騰訊。自幼以數(shù)學和魔術為最大愛好,從參加建模比賽到培訓到一線互聯(lián)網(wǎng)從業(yè)者,其建模經(jīng)驗遍歷金融,生物,互聯(lián)網(wǎng);魔術表演從學校走向比賽和商演,又回歸撲克牌魔術理論的研究。他通過建模來思考,參與和改造這個世界,也希望能同步把這些精彩分享給感興趣的朋友們!
長按識別二維碼,關注mathemagician!
算法數(shù)學之美微信公眾號歡迎賜稿
稿件涉及數(shù)學、物理、算法、計算機、編程等相關領域,經(jīng)采用我們將奉上稿酬。
投稿郵箱:math_alg@163.com
總結
以上是生活随笔為你收集整理的Reverse原理背后的数学和魔幻艺术的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 12位故去的国家最高科技奖得主:科学寰宇
- 下一篇: 还有哪些类似0.99999…=1有趣的事