如何用數學破解迷宮?

(圖片來源:iStock) Image copyright iStock

從HBO連續劇《西部世界》(Westworld)到重新回歸熒屏的英國類型連續劇《迷宮傳奇》(The Crystal Maze),迷宮已經成了時下流行的影視劇主題元素。最早的迷宮出現在1000多年前,裏面住著人身牛頭怪(Minotaur)的魔幻迷宮在古希臘神話中是一個非常重要的所在。

迷宮(maze)和魔幻迷宮(labyrinth)之間的區別在哪裏?有些人認為兩個詞指的是同一件事物,但實際上魔幻迷宮裏只有一條蜿蜒曲折的路線,沿著這條直徑越來越小的螺旋線一直走就能返回起點;而迷宮則有多條路線,在給探險者多個選擇的同時也會讓你徹底迷失方向。

儘管迷宮可以人工設計,但是計算機科學家和數學家們卻一直對自動迷宮設計算法情有獨鍾。算法分為兩類:其中一類算法從單一而受限的空間開始,然後用牆(和門)將其分隔,形成尺寸更小的亞空間。另一類算法則首先建立由大量互不連通的房間組成的空間,然後拆掉牆壁,在房間之間形成路線/通道。

大逃脫

逃脫迷宮有技巧可循,但是首先你必須搞清楚要從中逃脫的是哪一類迷宮。大多數逃脫術都只針對"簡單"的迷宮——指那些不能通過橋或"通道環路"(能夠返回迷宮起點的環形通道)抄近路的迷宮。

對於簡單迷宮,很多人都知道的逃脫方法是"沿牆走"。你只需沿著左手或右手方向一直順牆走而不調換方向,手一直保持扶著牆,最終你就會逃脫迷宮。其中的原理在於:假設把迷宮內的牆拉直而消除所有拐角,最終都會形成環形結構,環形的一部分必定是迷宮的最外側邊緣。然而,如果迷宮的起點和終點都位於迷宮中心位置的話,這種逃脫術就無法奏效了。

Image copyright iStock

某些迷宮則故意提高了逃脫的難度,例如位於德文郡Escot花園的海濱迷宮就建有不少於5座橋,因此它根本不屬於"簡單迷宮"之列。

Trémaux算法是逃脫迷宮的另一個方法。這種算法可應用於所有類型的迷宮。

現在,假想你就像格林童話《糖果屋》中的韓塞爾(Hansel)與葛雷特(Gretel)一樣在迷宮中探索出口,同時在身後撒上麵包屑痕跡作為標記。必須記住以下規則:如果到達一個以前從未到過的路口(這裏前方路上沒有麵包屑),就隨機選擇一個方向。沿著這個方向到達另一個路口,其中一條路線你曾經走過,而另一條路你沒走過,就選擇沒走過的路線。如果在走過兩次和走過一次的兩條路線中間選擇,就選只走過一次的路線,然後在身後留下第二條麵包屑痕跡。最重要的一條規則是:絶對不要走留有兩條麵包屑痕跡的路線。這個方法可以保證你最終一定能走出任何迷宮。

生活中的迷宮

研究迷宮逃脫問題有什麼用?顯然,建築學家和城市設計規劃家都不希望設計出讓像迷宮一樣讓人迷惑的路網。走迷宮很有趣,但我們顯然不希望在日常生活中碰到它。

1980年代,建築理論學家比爾·西里爾(Bill Hillier)發現,大多數存在社會問題的住宅看上去都有著迷宮般的平面結構。這就提出了一個理論問題:如何衡量一個地方是否具有"迷宮性"呢?

Image copyright iStock
Image caption 我們逃脫迷宮、還原魔方的方法有助於保持老年人大腦健康(圖片來源:iStock)

為了解答這個問題,西里爾開發了"可理解性"這一測量概念。"可理解性"是指,從迷宮/住宅/小區其中的一點能看到的景物,以及從該地區其他地點抵達改點難度之間的關係。"可理解性"的分值從0到1:得到高分(高於0.5分)的環境具有較高的可理解性,易於讓人了解並定位方向,並且讓人樂於住在這裏——例如倫敦市內的Barnsbury。

與之相反,可理解性差的地方會讓人陷入迷惑、難以定位方向、像進入迷宮一樣無所適從——例如倫敦的巴比肯(Barbican Estate)。儘管巴比肯在建築設計上有值得稱道之處,但這裏卻空間層次混亂。來訪者如果不沿著路上的黃線行走,很容易迷失方向。

手機遊戲《航海英雄》(SeaHeroQuest)在設計過程中採用了"可理解性"概念確定遊戲不同關卡的難度。這款遊戲用於判斷人們的方向定位能力,從而推動對癡呆症的研究進展。

我們反向應用了可理解性這一概念,設計出"迷宮性"更強或更弱的遊戲關卡,從而挑戰不同玩家的遊戲技巧。由此,迷宮設計中的數學原理被成功應用於當代用於防治癡呆症的手機App,古希臘神話中的情節變成了現實。

請訪問 BBC Future 閲讀 英文原文

更多有關此項報導的內容