2021年10月2日 星期六

魷魚遊戲必勝大法


Netflix推出的《魷魚遊戲》最近熱爆全球。劇集講述一個神秘的組織邀請了456位負債累累的失敗人士在六天內玩六個遊戲,遊戲都是大家兒時玩的簡單遊戲。勝出這六個遊戲的玩家可以獲得456億韓圓,輸掉的話就會被殺。

劇集一推出便立即引起了網民的熱烈討論,不少網民都提出了破解這些遊戲的策略。史丹福也想到了第四個遊戲的必勝策略,當中牽涉到一些組合數學(combinatorics)的理論。 (以下含有劇透,還未看《魷魚遊戲》而又想保持神秘感的朋友可以留待看完劇集才看史丹福的文章。)

第四個遊戲是波子遊戲,兩位玩家為一組,大家在起初各有10粒波子,玩家必須在30分鐘內贏得對方的10粒波子。至於規則則是由玩家自行決定,兩者同意便可。

因此,如果你的對手並不熟悉數學的話,你大可以提出一些有必勝策略的遊戲。研究有必勝策略的遊戲,本來就是組合數學中的重要範疇。

根據遊戲設定,雙方共有20粒波子。其中一個可以玩的遊戲如下。


簡單的取波子遊戲

開局共有20粒波子,玩家們輪流拿波子,每次最少拿1粒,最多拿3粒,可以拿到最後一粒波子的就是贏家。這是一個史丹福在兒時常玩的遊戲(當然,對方並不知道有必勝策略,所以史丹福是必勝的),因此也很符合《魷魚遊戲》的精神。

讓我們分析一下這遊戲。遊戲的目標是拿取第20粒波子。但其實如果我們能拿到第16粒波子,就必定可以拿到第20粒波子。因為你取得第16粒波子後,如果對方取1粒,你就取3粒;如果對方取2粒,你就取2粒;如果對方取3粒,你就取1粒,這就確保你必然可以拿到第20粒波子。同樣地,只要你拿到第12粒波子,就必定拿到第16粒波子。繼續推下去,只要拿到第4粒波子,就可以拿到第8粒,就可以拿到第12粒,就可以拿到第16粒,就可以拿到第20粒。因此,後行的一方有必勝的策略,只要對方每次取1粒,你就取3粒;對方取2粒,你就取2粒;對方取3粒,你就取1粒,這就確保你可以拿到剛才提及的關鍵波子。

讓我們改一點遊戲規則,如果玩家每次最少拿1粒,最多拿4粒,那又如何呢?這時後行的一方依然有必勝的策略。這次關鍵的波子是第5101520粒。策略是只要對方每次取1粒,你就取4粒;對方取2粒,你就取3粒;對方取3粒,你就取2粒;對方取4粒,你就取1粒。這就必然可以取得關鍵波子,嬴得遊戲。

如果玩家每次最少拿1粒,最多拿2粒,那又如何呢?這次關鍵的波子是第25811141720粒。因此這次有必勝策略的是先行的一方。你先取2粒,之後如果對方取2粒,你就取1粒;如果對方取1粒,你就取2粒,這樣就可以必勝。


尼姆遊戲

不過,這個遊戲其實非常簡單,玩家只需要細心思考,即使未曾受過組合數學的訓練都可以想到必勝策略。因此,史丹福想再介紹一個更可怕的遊戲--尼姆遊戲(Nim game)。在《魷魚遊戲》中,主腦曾說過「魷魚遊戲」是所有兒時遊戲中最暴力的一個,但史丹福覺得尼姆遊戲相較起要暴力得多。尼姆遊戲的暴力是一種制度上的暴力,因為懂得必勝策略的人可以在制度上完全壓到對方,但對方如果未受過相關的數學訓練,恐怕是想爆頭都不會想得出遊戲的必勝玩法,甚至會以為這是個公正的遊戲,不知就理地被騙得團團轉。

尼姆遊戲的玩法同樣很簡單。開局時有3組波子。兩名玩家輪流取波子,他們每次都必須選取一組波子,並最少從該組中取一粒,最多可以全取,取得最後一粒波子的人勝出遊戲。

尼姆遊戲必勝策略是在上世紀初由哈佛大學數學系副教授查理士.理昂納德.包頓 (Chales Leonard Bouton) 所提出的。不少人都視包頓的結論為組合博弈論(combinatorial game theory)的開端。如果大家有玩過奧林匹克數學的話,大概對這個遊戲的必勝策略相當熟悉,因為這遊戲是奧林匹克組合數學中的重要課題。

包頓提出的策略如下:首先,將各列波子的數量化成二進制數字,相加,但不進位,然後再看和的各個位數。如果和的各個位數都是偶數,則表示玩家有必勝策略;否則,如果有一位是奇數,則為對方有必勝策略。而必勝策略就每次都取波子去使得二進制數字相加位數的和全是偶數。值得留意的是,在這情況下,不論對方如何取波子,那一組的波子數量所對應的二進制數字中,必有某一位或數位由 0 變成 1 或者由 1 變成 0 其相加的和也相對的有某一位或數位由偶數變成奇數。因此,無論對方如何取,當不會離得開那個對他而言必敗的局面。

上述的策略聽起來很複雜,大家也許不易理解,我們不如直接看一個例子吧。 如果開局時20粒波子被分成三組,每組分別有578粒波子,化成二進制數字後情況如下:

 

 

二進制數字

第一組:5

 

1

0

1

第二組:7

 

1

1

1

第三組:8

1

0

0

0

二進制數字相加位數的和

1

2

1

2

 

這時你應先取波子去使得二進制數字相加位數的和全是偶數。這可以如何做到呢?你可以從第3組波子中取6粒,令第3組的波子數量變成2粒。最新的情況如下:

 

 

二進制數字

第一組:5

 

1

0

1

第二組:7

 

1

1

1

第三組:2

 

 

1

0

二進制數字相加位數的和

 

2

2

2

 

這時候,對方無論怎樣取,都必定會令到二進制數字相加位數的和有奇數,也就是說對手又回到一個必敗的情況。我們假設他從第2組中取了4粒波子,令該組波子只剩3粒。情況變成:

 

 

二進制數字

第一組:5

 

1

0

1

第二組:3

 

 

1

1

第三組:2

 

 

1

0

二進制數字相加位數的和

 

1

2

2

 

這時你應從第1組中取了4粒波子,令該組波子只剩1粒。二進制數字相加位數的和又再次變成全為偶數。情況變成:

 

 

二進制數字

第一組:1

 

 

 

1

第二組:3

 

 

1

1

第三組:2

 

 

1

0

二進制數字相加位數的和

 

 

2

2

 

之後的玩法已經變得相當簡單,史丹福就不多作說明了。簡單地來說,只要你一值順著這策略,最终應可做到只剩2組波子,各有1粒。明顯地,你必定拿到最後一粒,成為勝出者。

對於一般未受過組合數學訓練的人,應該不可能想到運用二進制數字作分析的數學方法吧?因此,不要以為數學是沒有用的學問。在某些時候(如玩《魷魚遊戲》中的遊戲時),數學是可以助你活命的。

在《魷魚遊戲》劇集中,尚佑騙去了阿里的所有波子。其實這只不過是利用阿里的同情心而作的卑鄙手段而已,算不上甚麼聰明才智。這手法也配不起他在劇集設定中的天才高材生的身份。如果他提出要與阿里玩尼姆遊戲,這才是真正的高智能天才策略啊,史丹福會非常尊敬與欣賞他。




2021年9月26日 星期日

現代血液學可以救助腹腔動脈瘤破裂的愛因斯坦嗎?


 

阿爾伯特‧愛因斯坦(Albert Einstein)向來是天才的象徵,他的名氣不僅深入科學界,根本上每個平民百性都聽過他的大名。愛因斯坦在1905年,他26歲時發表了五篇里程碑式的論文,這五篇論文的內容覆蓋了光電效應、布朗運動與狹義相對論等幾個重要的物理學領域。很多科學家窮一生之力都未必可以發表到一篇震撼物理學界的文章,愛因斯坦卻在一年內發表了五篇,實在是強得可怕。有人因此就把1905年稱為「奇迹年」。十年後,愛因斯坦又提出了更顛覆常人想像的廣義相對論,並完全扭轉了我們對重力、時間與空間的理解。

愛因斯坦的誤診

愛因斯坦在物理學界赫赫有名,但原來他的名字亦在醫學界中留有一席位。愛因斯坦早在過身七年前已被發現有腹腔動脈瘤(abdominal aortic aneurysm)。腹腔動脈瘤是血管壁的病變,受影響的部分較為薄弱,因而可能像氣球般脹起,假若破裂會出現嚴重的內出血及休克,不及時做手術的話死亡率接近百分之百。即使及時做手術,死亡率也是非常之高。一個法國團隊在2015進行的研究顯示,腹腔動脈瘤破裂的患者進行開腹手術修補及血管內動脈瘤修補(endovascular aneurysm repair)後,30天死亡率分別是25.0%18.0%

一般的腹腔動脈瘤破裂病人會出現腹痛、背痛或肚脹的病徵。愛因斯坦在臨終前卻出現類似急性膽炎(acute cholecystitis)上右腹部絞痛。主診醫生發現他右上腹有按壓疼痛,這情況在深呼吸時特別明顯,這是膽囊炎典型的臨床表徵。醫生於是懷疑愛因斯坦患上急性膽囊炎。醫生本來建議愛因斯坦進行開腹手術,但愛因斯坦卻拒絕了醫生的建議,不願意做手術。愛因斯坦過身後,醫生為他解剖,發現他有個巨大的腹腔動脈瘤,但他的膽囊卻是正常的,原來他上右腹部絞痛的症狀是由腹腔動脈瘤而不是急性膽囊炎所引起的。自此,醫學界便把這種模仿急性膽管炎的腹腔主動脈瘤破裂症狀稱為愛因斯坦體徵(Einstein sign)。

大量出血的處

雖然腹腔動脈瘤破裂的患者必須要接受手術修補,但單獨利用外科手術的手段並不能為病人帶來最理想的效果。事實是,在治療病人因腹腔動脈瘤破裂而嚴重出血的病人時,輸血等支援性的治療同樣是必不可少的。

近年,醫學界對「大量出血」(massive blood loss)這概念有了更深入的了解,並認識到怎樣可以透過輸血及利用血液學的手段去改善大量出血病人的存活率。

英國血液學標準委員會(British Committee for Standards in Haematology,簡稱BCSH)的指引把大量出血定義為24小時內失去一個血容量(blood volume,即體內血液的總容量),3小時內失去50%的血容量或失血超過150毫升每小時。

一但出現大量出血,情況很容易變得一發不可收拾,止血變得非常困難。這是因為身體在止血的過程中會消耗大量的血小板及凝血因子,令病人體內血小板和凝血因子的缺乏。這會干擾病人的止血系統,令出血的情況百上加斤。

為了應付大量出血的情況,不少醫院都會制定了一個「大量輸血方案」(massive transfusion protocol)。這方案把輸血使用的血液成份數量、種類及比例都標準化,確保了病人可以在第一時間領取到固定比例的血液成份(一般是紅血球:血小板:血漿為1:1:1的比例),令領血的過程變得一氣呵成,臨床醫生可以更無後顧之憂地專注處理病人的出血。

根據英國血液學標準委員會的指引,醫生應持續地監察病人的血小板數量、凝血指數(凝血酶原時間(prothrombin time,簡稱PT)及活化部分凝血酶原時間(activated partial thromboplastin time,簡稱APTT))及凝維蛋白原(fibrinogen)量,並以血小板、血漿及冷凍沉澱品(cryoprecipitate)等的血液成分去維持血小板高於於50x109/LPTAPTT低於正常的1.5倍及凝維蛋白原量高於1.5 g/L。近年更出現了一種名為黏彈性止血檢測(viscoelastic haemastatic assay)的新型檢查,可以更快及更全面地量度病人的止血情況,有不少醫生都會把這種檢查用於監察大量失血的病人。

另外,紅血球以冷凍的方式保存,大量輸血可令病人出現低溫。血液成分又常利用檸檬酸鹽(citrate)儲存,大量輸血可令病人出現檸檬酸鹽中毒,並引起低血鈣(hypocalcaemia)。低溫及低血鈣都可進一步加劇凝血的問題,令出血情況雪上加霜。因此,利用血液保暖器(blood warmer)為病人輸血及為病人適當地補充鈣質都是處理大量出血時必不可少的一環。

最後,氨甲環酸(tranaxemic acid)可以抑制纖維蛋白溶解(fibrinolysis),幫助止血,所以這藥物也常被用於處理大量失血的病人。

愛因斯坦是其中一位人類史上最偉大的科學家,如果當年他的腹腔動脈瘤破裂時可以及早進行手術去修復血管,並配以現代的血液學技術去應付大量失血,其存活機會一定會大大提升,說不定他可以在晚年再度提出突破性的物理理論,促進物理學大幅向前邁進。

 

資料來源:

Desgranges P, Kobeiter H, Katsahian S, et al. Editor's Choice - ECAR (Endovasculaire ou Chirurgie dans les Anévrysmes aorto-iliaques Rompus): A French Randomized Controlled Trial of Endovascular Versus Open Surgical Repair of Ruptured Aorto-iliac Aneurysms. Eur J Vasc Endovasc Surg. 2015;50(3):303-10.

Stainsby D, MacLennan S, Thomas D, et al; British Committee for Standards in Haematology. Guidelines on the management of massive blood loss. Br J Haematol. 2006;135(5):634-41.

Hunt BJ, Allard S, Keeling D, Norfolk D, et al; British Committee for Standards in Haematology. A practical guideline for the haematological management of major haemorrhage. Br J Haematol. 2015;170(6):788-803.

2021年9月18日 星期六

磁力王逃獄記


醫學及生理學知識是很重要的,它除了可以用於拯救病人性命外,更可以讓我們了解有甚麼臨床情況會提升人體中的鐵含量,從而協助磁力王逃離塑膠監獄。

在《漫威電影宇宙》還未流行前,《變種特攻》(X-men)系列曾是最受歡迎的超級英雄電影系列。其中《變種特攻2》有一幕非常經典,到現在仍為人所準準樂道。話說磁力王可以隨意控制金屬,他被人囚禁在一所塑膠監獄中。他的手下妖后為了幫助他逃脫,就把鐵質注射到獄警體內。磁力王之後用異能從獄警的體內提取鐵質,再用這些鐵質逃離監獄,過程非常瀟灑有型。



這時候史丹福不禁想到一個有趣科學的問題,究竟人體有沒有可能儲存到如此多的鐵質呢?除了直接注射鐵質外,還有甚麼情況會令鐵質上升呢?

其實,正常人體的總鐵質儲存量約為3.5克,其中2.3克儲存在紅血球的血紅蛋白內。一般成年人每日的飲食中約有1015毫克的鐵質,但當中只有大約510%會被吸收,也就是每日吸收約1毫克的鐵質。人體每日正好流失約1毫克的鐵質,於是身體的鐵質可以維持在一個理想的平衡中。人體體內亦有一個巧妙的機制,利用鐵調素(hepcidin)這種賀爾蒙去調節鐵質,保持鐵質含量穩定。

但有幾個情況下,這個機制會失效,令病人體內的鐵質上升。

其中一個常見的情況就是長期接受輸血的病人,例如重型地中海貧血症患者。一包紅血球內有200250毫克的鐵質。如果病人每個月輸兩包血,屈指一算,單是輸一年的血已經有約56克的鐵質,但人體並沒有有效的機制去排走鐵質,所以這些鐵會全累積在體內。如果病人輸血的數量再多一點的話,體內的鐵質很輕易就會超過10克。

10克的鐵有多少呢?史丹福並非化學專家,但翻查網上的圖片,下圖是一個10克的鐵砝碼。




再參考《變種特攻2》的片段,這份量的鐵似乎已經足夠磁力王逃獄了。也就是說,妖后大可不必大費周張地把鐵質注射到獄警體內。她只需把一名長期接受輸血的重型地中海貧血症患者送到監獄,一樣可以做到如此效果。

除此之外,還有其他病人有可能被妖后用來幫磁力王逃獄。西方人有一個常見遺傳性疾病--遺傳性血鐵沉積症(hereditary haemochromatosis),一樣可以令病人血液中的鐵質升高。這疾病由基因突變引起,最常見的是HFE C282Y基因突變,這突變會影響鐵質的新陳代謝,令身體大量吸收鐵質,做成鐵質過多。

另外,非洲人喜歡喝自家釀製的啤酒。但他們利用鐵鍋或鐵桶去製造啤酒,令酒中的鐵含量很高。一般工業釀製啤酒的鐵含量約為0.5 mg/l,而非洲自家釀製啤酒的鐵含量則高達46-82 mg/l。經常喝這種啤酒有可能令體內的鐵質上升,這情況叫做非洲鐵質沉積負荷症(African iron overload)的情況。不過因為身體有鐵調素的機制去阻止太多的鐵質經腸胃吸收,因此理論上這疾病的患者的鐵質過量情況並不會如長期接受輸血或遺傳性血鐵沉積症的病人般嚴重。

從醫學角度來說,鐵質過量會積聚在身體不同的器官內,毒害這些器官,例如積聚在心臟中,引起心臟衰竭;積聚在肝臟中,引起肝衰竭;積聚在胰中,引起糖尿病。長期接受輸血的病人往往需要使用除鐵藥去降低體內的鐵質,遺傳性血鐵沉積症患者更會接受放血療法,放走紅血球,從而減少鐵質,這是因為身體中大部份的鐵質都在紅血球內。當然,這些都並不是磁力王及妖后的考慮。如果他們純粹是想找一個體內鐵質很高的人,就應找一個沒有使用除鐵藥及放血療法的病人。

當然,如果妖后想維持原有的計劃去使用注射鐵質的方法,其實亦是可以的。近年,醫學界逐漸流行用靜脈注射鐵質去治療缺鐵性貧血,因為這方法可以快速地提高病人的鐵質,同時可以免去輸血的風險。常用的配方包括monofervenofer。理論上只要為獄警注射比正常劑量高很多倍的藥物,應該就可以做到電影裡的效果,助磁力王逃獄。

2021年7月31日 星期六

真正的奧運運動精神──被切掉脾臟的滑浪風帆運動員陳晞文



最近看了前體育記者伍家謙的文章,才知道代表香港出戰滑浪風帆的運動員陳晞文原來在2012年備戰倫敦奧運時意外被船撞到,斷了幾根肋骨,最後要切除整個脾臟。但她之後仍全力備戰,取得了第12名的成績。今屆奧運中,她繼續挑戰自己,憑著努力和堅持,得到了第8名的佳績。陳晞文的努力不懈體現了真正的奧運運動精神,令史丹福非常感動。史丹福想再一次感謝及支持運動員的付出,並順道介紹一下有關脾臟的醫學知識。

脾臟是一個血管非常豐富的器官,因此很容易在腹部創傷中受損甚至破裂,造成大量出血。這時候醫生就必須要考慮利用外科手術方法把脾臟切除,以保存病人性命。

那究竟脾臟是一個怎樣的器官呢?它位於腹部的左上方,是一個重要的免疫器官。脾臟裡有很多單核吞噬細胞系統(mononuclear phagocyte system),又稱網狀內皮系統(reticuloendothelial system)的細胞。這些細胞負責吞掉入侵身體的細菌、真菌與寄生蟲等病原體。另一方面,脾臟內亦有豐富的淋巴細胞,負責製造抗體。

脾臟也是一個負責血液代謝的器官。它負責儲存血細胞,也負責移除老掉的血細球,及一些紅血球內的包涵體(inclusions)。 脾臟並非一個必不可少的維生器官,因此即使移除脾臟,病人仍能生存,不過免疫力就會大幅下降。病人特別容易受到荚膜細菌(encapsulated bacteria),如肺炎鏈球菌(Streptococcus pneumoniae)、腦膜炎雙球菌(Neisseria meningitidis)及流感嗜血桿菌(Haemophilus influenzae)等的感染。因此病人需要長期服食抗生素及注射疫苗去預防感染。

另一方面,切除脾臟後,病人的血液亦會有所改變,如白血球數量增高及血小板數量增高。這是因為脾臟本來儲存血細胞及移除老掉的血細球,當沒有了脾臟後,就有更多的血細胞可以保留在血液中。在切除脾臟病人的周邊血液抹片中,我們更可以見到紅血球中出現被稱為豪威爾喬利體(Howell Jolly bodies)的微細的紫藍色小點,那是由殘餘DNA組成的包涵體。血液科的醫生有時候會「反其道而行」,利用切除脾臟去治療重型地中海貧血症、自身免疫性溶血性貧血(autoimmune haemolytic anaemia)及免疫性血小板减少性紫癜(immune thrombocytopenia purpura,簡稱ITP)等的血液疾病,去提升因疾病而減低的血細胞數量。

同一個奧運,我們見到了人性的光輝與黑暗。有運動員不斷堅持與努力,面對困難仍不放棄,突破自己。有人則因運動員球衣的顏色而強烈讉責運動員,引發批鬥。不過史丹福相信,人性的光輝必會戰勝黑暗,讓我們繼續為運動員打氣,支持他們再創佳績。

運動相關血液疾病

 


近日奧運進行得如火如荼,除了某政黨有人強烈譴責強烈譴責一位香港運動員,該黨主席又表示這種關注合情合理」外,港人普遍都上下一心全力支持香港運動員參賽。史丹福就想藉此機會為大家介紹一個與運動相關的血液疾病--步行性血紅蛋白尿(march haemoglobinuria)及運動性貧血(sports anaemia)。

步行性血紅蛋白尿最先於1881年被描述,首個案例是位年輕的德國士兵。他在長時間步操後出現尿液變紅的情況。後來又有其他的案例報告顯示,運動員在長時間進行高強度的運動後亦會出現這情況,例如馬拉松的選手。醫學界相信這情況是由於在進行運動時,腳掌長期與地面碰撞,在過程中破壞了紅血球,引起溶血。紅血球被破壞後釋出血紅蛋白,血紅蛋白經尿液排出,引起尿液變紅。尿液變紅的症狀雖然嚇人,但其實每次病發時平均只有640mL的紅血球被破壞,失去的紅血球大約只等如被抽了幾支血的份量,因此對運動員的影響其實微乎其微。病徵亦會在約數星期後消失。步行性血紅蛋白尿似乎與跑步時脊柱前凸(lordotic)的姿勢有關。用鞋墊可以減少腳掌與地面的碰撞,並減低出現步行性血紅蛋白尿的機會。

除了腳掌外,有案例報告亦顯示手掌長時間與硬物碰撞都可以引起步行性血紅蛋白尿,例如空手道運動及用手打鼓。

當運動員持續地進行高強度的運動,就有機會長期出現溶血,並引起貧血,這種情況叫做運動性貧血。有趣的是,就算運動員沒有出現貧血,他們的骨髓亦會因為溶血而增加製造紅血球的速度作補償。由於新製造的紅血球體積較大,跑手常有平均紅血球體積(mean corpuscular volume,簡稱MCV)較高的情況。

圖文不乎:圖中的運動員是代表香港出戰三項鐵人項目的21歲運動員奧斯卡(Oscar Coggins),他以1小時4855秒完成賽事,在51名選手中排行第33位,創下香港選手在三鐵項目的歷來最佳奧運成績。他並沒有步行性血紅蛋白尿,史丹福只是想貼張香港運動員的相片支持香港運動員,而且三項鐵人運動的確是容易引起此狀況的運動。