攤煎餅演算法
① 攤煎餅的數學原理是什麼
有態度 有溫度 全網青年都在關注
每一張形狀正圓、厚薄均勻、沒有破洞的煎餅,都凝聚了製作者對麵糊流體力學的深入理解。最近,兩位物理學家通過數學建模,找到了攤出一張好煎餅的方法,並將這些發現寫進了論文中。
煎餅果子是許多中國人喜愛的點心,法國人也對「法式煎餅」可麗餅愛得深沉。人們熱衷於按自己的口味給煎餅加上各種豐富的配料,但是好吃的煎餅一定有一個共同的特點:厚薄均勻、火候恰到好處、沒有破洞。
說起來容易做起來難。別看樓下賣早餐的大媽兩分鍾攤一張漂亮的餅,如果自己上手做,多半會發現——咦怎麼不是圓的?怎麼這里這么厚?怎麼翻個面就破了?
為了做出完美的煎餅,法國巴黎綜合理工學院(cole Polytechnique)的愛德華·布卓(Edouard Boujo)和紐西蘭坎特伯雷大學(University of Canterbury)的馬修·塞利爾(Mathieu Sellier)研究了一番,終於找到了其中的奧義,順手在 Physical Review Fluids 發了篇論文。
01
把煎餅攤勻有多難?
攤煎餅方法可以簡畢裂單分為兩大流派:用推子之類的工具把麵糊快速推開,或轉動平底鍋讓麵糊自己攤開。或許是想讓大多數非專業人士做起來更簡單,兩位物理學家把目光聚焦在了第二種方法上。
用推子攤煎餅,這種方法常見於街頭小攤。圖片來源:Pixabay
無論是可麗餅還是中式煎餅,加熱過程中都會發生一個重要的變化:水分隨加熱流失,導致麵糊的黏度逐漸增加。許多人可能已經發現,如果在麵糊剛剛下鍋的時候沒有及時把它攤平,它就會很快凝固,再也攤不平了;但是動作太快也不行,容易把餅弄破。
要攤一張厚薄均勻的圓形煎餅,難道只能「憑感覺」嗎?
02
如何科學地攤一張餅
圖片來源:Pixabay
作為流體力學領域的科學家,亂數皮塞利爾和班卓決心從這一物理特性入手,利用數學建模計算,模擬了已成型的煎餅與還在流動的殘余麵糊在受熱容器中的相互作用。這可是一項復雜而繁瑣的工作,但也比親手上鍋做實驗省時省力多了。更為關鍵的是,這樣做可以嚴格監控每一個變數和細節。
他們嘗試了兩種方法,第一種是將麵糊表面運動採用參數化的諧波方程描述,並採用蒙特卡洛方法「暴力求解」,找出最優的參數組合。這里要考慮的參數就有十個,包括麵糊黏度、密度、鍋的傾斜角、半徑、麵糊初始厚度等等。
對煎餅的數學建模嘩差。如圖,從上到下,從左到右,從 t=0 到 t=7t 之間麵糊發生的變化,t = 4.29 s。右側顏色梯度代表麵糊厚度,深藍色的部分麵糊最薄,淺藍色至紅色部分麵糊越來越厚。圖中箭頭方向代表每個瞬間的重力方向。圖片來源:Boujo and Sellier, Phys. Rev. Fluids, 2019
計算機在設定的參數范圍內進行了大量計算,攤了無數個虛擬煎餅,終於找到了改善麵糊均勻性的方法。相比不控制參數的情況(可能指的是他們在現實中製作的早餐),這種方法能將煎餅的均勻性提升大約 40%。考慮到背後的海量計算工作,這種方法性價比確實不高。
於是,他們又嘗試了另一種方法。這是一種叫做伴隨優化的數學演算法:將麵糊最終形態作為目標函數,對麵糊施加作用力而導致的運動被描述為一系列偏微分方程,以提供約束條件,在此基礎上對目標函數進行優化,尋找使麵糊均勻平坦的最優路徑和方法。
在這個案例中,伴隨優化演算法完勝蒙特卡洛方法,它用更少的計算量實現了更大的性能提升。在該演算法的幫助下,塞利爾和班卓獲得了黏度變化的麵糊在移動容器中的流動及成形特徵。經過多次的調整和模擬,他們終於找到了製作可麗餅的最佳方法,能讓餅的均勻程度提升 83%。
如圖,圖 (a) 為不加控制的對照組,圖 (b) 為諧波優化-蒙特卡洛方法得到的結果,圖 (c) 和 (d) 為用伴隨優化演算法得到的結果,其中力度控制參數不同。從圖 (a) 到圖 (d),煎餅越來越均勻。圖片來源:Boujo and Sellier, Phys. Rev. Fluids, 2019
03
攤煎餅的終極奧義
總而言之,在充分比較了非控制組、協調方程-蒙特卡洛解法以及伴隨優化求解法的最終結果後,研究人員找到了一個實用的攤煎餅方法:
將攤一張餅所需的麵糊一次性倒入平底鍋,然後迅速將鍋傾斜一個角度;麵糊會流向鍋的邊緣,接著順時針或逆時針將鍋轉動一到兩圈,使未凝固的麵糊自然流動、成形。
根據伴隨優化演算法,隨著麵糊逐漸受熱凝固,平底鍋的傾角應該逐漸減小,轉動速度也要放慢。在理想情況下,當傾角減小到零,也就是鍋處於水平位置的時候,麵糊剛好完全覆蓋鍋底。
需要注意的是,一定要始終沿著同一個方向轉動鍋,切忌在轉動過程中變換方向。
這種方法有個酷炫的名字:重力驅動液態膜的最優控制。這一技術不僅能用來做早餐,還能應用到巧克力製造、塗層工藝和彈性薄殼製造等領域,而彈性薄殼在航空航天、船舶製造等方面都有重要應用。誰能想到,對美好早餐的追求也能推動工程技術的小小進步呢?
② 小學生日記
我的「孤獨」假日 大年三十,在爺爺家呆了一整天,吃得很累,睡得也很累,爸爸媽媽都在干自己的事情,根本顧不上我。 大家都說過年好,可是我覺得過年一點意思也沒有。爸爸是獨生子,媽媽是獨生女,我也是家裡的惟一的孩子,每年大年三十我就跟爸爸媽媽在爺爺奶奶家看電視,大年初一又跟他們去姥姥姥爺家看他們打麻將。接下來的幾天,不是爸爸媽媽去他們朋友家,就是他們來我們家裡玩,可是他們總是忘記我。每到這時,我就呆在茶幾旁吃水果和零食。他們玩的東西我都不懂,我就想看動畫片,想打游戲,想和同學說話聊天。 今年又一樣,到了姥姥姥爺家,給過我壓歲錢,他們就壘起了「長城」。於是,我就安心地一個人出門了,反正他們是不會發現我的「失蹤」的。 姥爺家街區里的人很少,也很安靜,偶爾有劃拳聲傳出。出了街區門,我開始留心街邊的小店,幾乎都是「鐵將軍把門」。到了超市,我問能不能買到鞭炮,可別人很乾脆地回答我「沒有」。小學生寒假日記範文大全 一陣垂頭喪氣後,我想春祥打電話和幾個「」聊聊,可不是沒人接,就是接通了一片嘈雜,聽不清楚他們在說什麼。我想一個人去玩,可又不知道該去哪,酒吧不讓去,網吧不讓進,少年宮又不知道在哪裡?唉,我的年怎麼就高興不起來呢? 最後,我終於買到了幾個「小摔炮」,扔到下水井口裡,倒也聲音挺大,我高興了好一陣。成功財富網[NextPage] 我與電視為伴 「滴嗒、滴嗒」,該死的鬧鍾,煩死了!每天早晨都是它把我從夢中吵醒,它倒是任勞任怨,堅守崗位,但是我就慘了,昨天晚上看電視到夜裡一兩點鍾,哪有精神大清早爬起來呢?幸好昨天晚上我留了一手,把鬧鍾定在了9點,9點有一場我很喜歡的NBA比賽,為了這個,我就只好少睡一會了。 起來第一件事顧不上洗臉,先把電視打開。媽媽又在喊著刷牙、吃飯,但是因為今天是大年初二,我知道這兩天她也不會動用「武力」,所以我基本上不用考慮媽媽的「心情」,只顧干我的事就行了。我從衛生間跑到客廳,一邊刷牙一邊看比賽,不管媽媽在嘮叨什麼。 精彩的比賽結束了,正好給我留下了10分鍾的吃飯時間。趕緊把中午飯吃了,接下來看電視劇《倚天屠龍記》,才放了幾集,天就黑了。在媽媽的「高壓」下,我用幾分鍾時間吃完晚飯
好不容易下了一場大大滴雪,不把玩雪滴經歷寫出來,怎麼能對得起鄉親父老呢?那我就寫吧……上午11點30分……我還在夢境里吃著好東東,口水流到床上偶都不知道=。=‖「丁玲玲」電話鈴聲響了,我終於起來了。起來吧起來吧,伸個懶腰,到陽台上呼吸空氣。「哇!」下雪了!我尖叫。真的下雪了耶!大家注意,偶不系米見過雪,只是偶們這里不系經常下雪啊,大概一年下一次吧。趕快趕快,我迅速穿好衣服去吃中飯,完了,我帶上皮手套就上路了……我先去喊了幾個「小弟」,下來了2個。沒想到他們劈頭就說,打雪仗吧!馬上,我們先熱了熱身。我們3個人打雪仗。當然,他們2個人都沒打過我啊——誰叫我有皮手套,不怕冰凍,嘿嘿。熱過身了,我們開始堆雪人,我來做雪人身子,其他2個人負責做雪人頭和用掃帚掃雪。堆啊堆,堆啊堆,堆啊堆啊堆啊堆……(在此省去20000字)終於堆好了。(感覺有點白痴)然後呢,我用個掃帚做雪人的手,只可惜只有一把掃帚,偶們滴雪人只能是個獨臂人了。最使偶們發愁滴是雪人滴眼睛,鼻子,和嘴。我一不做,二不休去超市阿姨家尋「寶」。果然找到了好東東:一個胡蘿卜!哈,可以做雪人滴鼻子了,真是太好了!可是嘴用什麼做呢?忽然間,我們看到了樹枝,頓時想到了好注意,把樹枝折下來當做雪人嘴!哈,頂的住!又一道難題攻破了御森搜。可是眼睛用什麼呢?想了又想,想了又想,最後我盯上了小弟手中的炮仗,於是我獰笑著使用暴力手段把他滴炮仗搶出來8根,4跟組成一個眼睛。哈哈,天生我才必有用!雪人終於完工!唉,只可惜啊,這次沒有照相機,所以呢就沒有拍出來——好倒霉哦。偶第一次堆個大雪人……
月20日 星期六 天氣晴 太陽還未睜開惺忪的睡眼,晨霧尚未揭開春的面紗,我們和著春風,踩著露珠,跟隨媽媽鎮歷去綠色的原野擁抱春天。 一路上,我們像小鳥一樣快樂。腳下的泥土像棕黃色的地毯,空氣濕潤而新鮮。路旁的柳樹上,幾只小鳥唧唧喳喳,好象在歡迎我們的到來。一陣風吹來,樹下的一朵朵花兒向我們點頭微笑。而小草呢,好象倦意未盡,還沒有充分舒展開自己小小的身體。田野里的油菜花卻盡情地開了,黃燦燦的一片。 不知不覺,我們走進了一片桃園。深紅的、粉紅的桃花竟相開放,讓你如醉花海。這時,飛來幾只蝴蝶,在花叢中翩翩起舞。仔細一看,已有好多小蜜蜂在花間采蜜呢。我情不自禁伸手去摘桃花,媽媽說:「春天有了它們才會更美。」我聽了,連忙把手縮了回去。 我們小心翼翼地走著,生怕濺落盛開的桃花,踏倒嫩綠的小草。 看著藍藍的天,綠綠的草,紅紅的花,勤勞的小蜜蜂,我真想融化在春天中┄┄ 2004年6月14日 星期一 晴 有些大人總是羨慕小孩無憂無慮,其實當小孩也不容易。 大人可以做自己想做的事,做錯了小孩又不能批評他。我們小孩就不一樣了,只是因為我還有幾篇日記沒有寫,就每天只給我玩一個小時。而他卻天天泡在電腦里。真不公平。誰讓我是孩子呢? 小孩在大人心中永遠不懂事,大人說話時小孩不能插嘴。只要一插嘴,他們就會說:「去去去,一邊玩去。」其實小孩懂的東西大人還不一定懂呢!孩子在學校要考高分,回家除了做老師布置的作業,還要做爸爸媽媽布置的作業。 說實話,大人真自由,當一個小孩還真是不容易。 今天,我和爸爸玩了一場別開生面的象棋賽。 我和爸爸抽簽決定先後。我抽到了先,爸爸抽到了後。我先給了爸爸一個「當頭炮」,爸爸來了個「馬來跳」,擋我的路。我很生氣,調「車、馬、炮」去攻他的「馬」。誰知爸爸的「馬」跑得太快,吃不著,一氣之下,吃了爸爸的四個「兵」。爸爸用他的兩個「炮」把我的兩個「兵」幹掉了。然後,我接二連三地「將軍」,可是爸爸把老將調來調去,我就是吃不著。爸爸又派他的「大軍」來干我的「小部隊」。我的「車、馬、炮」接連犧牲。我又派另外全部武力部隊進攻,好不容易幹掉了爸爸的「車、馬、炮」。可是我的軍隊也已經快崩潰了。 最後,我還是輸了。但我下一次一定要勝過爸爸。 今天是星期日,吃完午飯爺爺給我講了兩個故事,名叫金鳥 和晚奴南北。從前有一個國家的國王非常喜歡越國的一隻金鳥, 千方百計都要把這只金鳥買回家,可那個賣主就是不賣,還說: 「這只金鳥又會說話,又會唱歌,又會說話,是天下最神奇的鳥 了」那個國王買不到金鳥急得飯也不吃,便請別人幫他買,金鳥 買回家後,國王就把它放在籠子里,讓金鳥唱歌,跳舞。可金鳥 一動也不動,就像木頭人一樣。國王就把金鳥放走了。金鳥又飛 回越國,給自己國家的人唱歌,跳舞。第二個故事是晚奴南北, 從前有一戶人家養了兩匹金馬,一匹叫南北,據說,只要得到這 兩匹金馬,就會發才。人們聽說這個消息後都到他家去買,有一 位老爺爺買下了其中的一匹叫晚馬。買回家後,它一天不吃飯, 二天不吃飯,三天不吃飯直到第七天,晚馬向北邊叫了一聲就死 了。我聽了這兩個故事後覺得很有意思,動物也認識自己的國家。 今天,我做完作業,就去找我的好朋友一起玩。 走到半路,一隻大母雞攔住了我的去路。我朝母雞做了個鬼臉,表示讓開道路的意思。誰知道,那母雞跟本不睬我,而且受到了誰的氣一樣,扎煞著毛向我來。嘿,想跟我玩精彩的斗雞表演嗎?那就來吧! 我左一閃,右一躲,母雞還是不肯放我。於是我撿起地上的大石子想向母雞扔過去。可是母雞又扇動著翅膀向我的手飛來。我見母雞「飛」起來了,就趕緊把手縮回來,我抓了抓手;「呀,只有一粒小石子,真是倒霉啊!」我火冒三丈地說。說著把石子重重地打在了母雞的頭上,母雞跟我一樣勃然大怒。這下可糟糕了,母雞兇狠地向我沖來,我左一腳不行,右一腳也不行。接著,母雞大發雷霆,向我的左腿上一啄,我疼得直叫:「哎喲,哎喲!」還算好,不是啄在肉上,只是啄在了褲子上。最後,我終於擺平了這只兇狠的大母雞! 在回家的路上,我可沒有再敢走這條「險路」。
前天下雪了。鵝毛大雪飛啊飛啊,我看著窗外的景色,頓時感到好興奮——「我又可以玩雪了!」我想這種心情與想法一定會在每個小孩的心中產生。可是我又想想,又發出了另一種感慨……雨和雪都是水變成的,可是為什麼大多數人們總是更喜歡雪呢?我想雪與水象徵2個事物,雖然它們的類型相同,但是它們的立場與角度不同,所以導致人對只不同的感受與感情。比如雨和雪都是一句希望別人上進的話,雨呢,而是一句批評的話,雪呢,而是一句贊揚的話。這2句話都可以使人上進,但是人們願意接納贊揚的話,不太喜歡批評的話。這就是之間的差異。下面我們就用雨和雪本身來說明。雨呢大多人都討厭,因為它可以使熱鬧渾身濕透,雖然雪也可以,但是雪用了另一中方法:變成的固體。這就是雪的巧妙之處,當然,這也是它們之間存在差異的原因。
又下來幾位「小弟」,然後呢,我們就用雪搭東西,我做了一個雪板凳,而他們在各自滾自己滴雪球。後來雪球越滾越大,在後來呢我就幫助他們滾一個比較大的,滾啊滾啊,就這么往下滾。一開始呢還好,我一個就可以推動雪球了,我推著雪球到處「觀光游覽」,大概過了10分鍾,我就堅持不住了,我再也推不動了,我叫來2個「小弟」一起推啊,大家一起加油。眼看那個雪球越滾越大……大概又過了10分鍾,只見有3個小孩倒在了地上——那就是我們啊!唉,看來還要叫人——我又喊了2個小弟,這下5個人一起推就好多了。加油啊加油,滾啊滾啊……(省去20000字)在大家都倒下的時候是在10分鍾後。天啊!怎麼這么多10分鍾啊!算了,就滾到這為止吧。來看看有多大了。恩,直徑差不多有2米了!真大哦!偶太高興了!與上次一樣沒有照相機,但是這次有個新鮮的——偶在雪堆里發現了一盒完好無損滴炮仗!(注意,是大的那種炮)我們點燃了那盒炮,讓炮打到雪球底部,只聽到「嗖嗖」的聲音,炮穿到雪球里,然後發生爆炸,「轟轟」,炸了後,我們去看雪球,哇塞!雪球被底部被炸出一個大窟窿!可真好玩!
星期天,我閑著沒事做,發現廚房裡還有一些青菜還沒洗。我靈機一動,心想要是我把這些青菜洗了,媽媽不就不用洗菜了嗎? 我說干就干,拿著菜籃子放到水池邊,把青菜放到水池裡。我捲起袖子,擰開水龍頭,學著媽媽的樣子開始仔仔細細地洗起菜來。 我先用雙手搓青菜,然後一片一片地洗菜葉,連一點臟東西也不放過。洗著洗著,我觸到一個軟綿綿、毛茸茸的東西。我的手像被電擊一樣縮了回去。呀!不看不知道,一看嚇一跳,原來是一條大青蟲趴在菜葉上享受「洗澡」帶來的樂趣。嚇得我把那片菜葉扔得老遠。看著扔掉的菜葉,我心想:媽媽長年累月地洗青菜,不知遇到多少條大青蟲,可是媽媽總是不慌不忙地撿起大青蟲把它扔掉,繼續洗菜。而我活像一個膽小鬼。我壯起膽子,鼓起勇氣,拾起扔掉的菜葉,把大青蟲扔掉,一腳踩死。這時,我雖然渾身雞皮疙瘩,但我真像打了勝仗一樣高興。我哼著小曲繼續洗菜。 看著水靈靈的青菜躺在籃子里,我高興得又蹦又跳,終於能幫爸爸媽媽干一點力所能及的事了。
③ 煎餅問題的公式
#!/usr/bin/env python3
#我剛好輔導孩子昌鄭迅到這個問題,想了幾個小時,發現規律用python實現如下
def jianbing(bs=0,fz=0,sj=0):
# bs餅數,fz每次煎幾叢笑個,sj每一面煎多長時間
print("煎"+str(bs)+"個餅,每次同時可煎"+str(fz)+"個,每一面煎"+str(sj)+"分鍾")
if(bs<=fz):
return(sj*2)
qz=int(bs/fz)
ys=bs%fz
return(qz*sj*2+ys*sj)
print("耐此總共用時"+str(jianbing(3,2,5))+"分鍾")
演算法解釋:如果餅的個數小於或等於每組個數,則時間等於單鍋時間x2,否則時間等於煎餅的總數除以每組個數之商x單鍋時間x2+余數x單鍋時間。