他從沒想過,自己會讓一個幾天前還素未謀面的陌生人坐進研究室,和他一起討論災難模擬。
更沒想過,這個陌生人竟然會成為他的「唯一人手」。
語婕進來後,第一件事不是問問題,而是觀察——那種不動聲色、彷彿已經設好一套流程的觀察。她沒亂動東西,卻默默記下檔案路徑與螢幕切換邏輯。祐誠一邊操作模型介面,一邊餘光瞄她,發現她正拿著紙筆默寫那些他幾乎不曾對外展示的變數名。
她的背景是心理學。但她的反應,比很多理工科的研究生還有組織。
當他把GCETA模型的部分輸出資料攤開時,語婕並沒有急著問這是什麼。她只說:
「這些結果……在兩週前的東亞低壓報告中,有七成對得上。」
她說的輕描淡寫,卻讓祐誠頓了一下。
他原本以為語婕是那種「直覺派」——會用模糊不清的情緒與隱晦的說法逼你相信她知道未來。但她不是。她從不說「我知道什麼」,只說「這個圖像的變化在某資料中也有出現」,然後給出來源連結、時間、交叉對照欄位。
她在用她的方式證明:她不是信仰災難,而是以「知道它可能來臨」為前提,尋找真實證據。
合作的第一週,祐誠沒有讓她碰核心代碼,只給她一份觀測數據與模型邊界條件的介面。他要觀察她會不會亂動、會不會問不該問的東西,會不會試圖進一步滲透他的信任邊界。
結果語婕什麼都沒碰。
她把這些數據匯出、分析、畫圖,做了幾個簡化版的「資料擾動區段圖」,上面標出「極端點分布異常」的幾處交界區域,然後交還給祐誠,只說:
「這邊有斷層。你的模擬圖不夠深,應該還缺了一塊上游資料來源。」
祐誠花了半天時間驗證,最後驚訝地發現,她指出的那幾個異常區段,正好是模型本身在「誤差調整模組」裡自動降權的幾處——她沒看過核心程式,卻猜出了結果偏差來源。
祐誠第一次對她說:「你確定你是心理學出身?」
語婕笑了:「心理學也可以做結構分析啊。你們叫它數學,我們叫它認知行為邏輯。」
—
在第二週的會議中,祐誠第一次把「災難持續時間」拉長到180天測試模型穩定性。
結果模型圖像開始紊亂——熱場變形、降雨範圍擴張失序、風壓邊界過早崩潰。整個系統顯示出「邊界崩壞」的警告。
他沉默地盯著螢幕。語婕從背後走過來,沒問發生什麼事,只看著圖像,靜靜說道:
「模型算到這裡就斷了,對吧?」
祐誠點頭。
「這模型不是完整的。也不是全預測型。它只是一套區段演算系統,而且……有些東西,應該是林教授刻意隱藏沒給我的。」
這是祐誠第一次在語婕面前承認:他所依賴的核心工具,其實不夠完整。
他本想再補一句「但我有其他辦法」,語婕卻先一步開口:「那我們就用行為推演法,補完缺口。」
祐誠轉頭,看她認真的表情。
語婕繼續說:「你有模型,我有觀察人類反應的經驗。只要把已知天災轉換成預測反應——例如人口外流、電網崩潰、社會秩序混亂的時間節點——就可以用人為反應反推環境極限。這種方法不精準,但夠用來設計一個基本的避難週期。」
「多少天?」
「先抓兩百四十天。是我前一世活到的最長極限。」
這句話她說得很自然,但祐誠聽了卻微微皺眉。他沒有問「前一世」是什麼意思,只記住了那個數字。
「那我們就照240天去推設計。」
「對。」
—
這天下午,祐誠在白板上寫下第一版避難所設計的構想草圖。
三人規模、封閉空間、自主能源、氣密模組、水源再生系統。
每一筆線條都劃得乾淨而堅定。
語婕站在他身後,看著那道逐漸浮現的藍圖。
這還不是黎明谷,但她知道,這就是起點。
第一個避難所,代號:V0。
三天後。
避難所的設計進展得比祐誠預想的慢。
他原本以為,只要決定規模、封閉時間與能源來源,其餘的就是技術細節——然而當他開始畫立體結構與功能分層配置時,才發現自己根本畫不出一個能站得住腳的封閉建築。
語婕幫忙從心理適應與行為空間動線的角度提供建議,卻越討論越覺得問題不是在空間配置,而是根本缺乏完整的建築結構邏輯。
「我們可以列出需求、容積、強度,但這不等於設計。」祐誠皺眉,「我們只是在亂堆樂高。」
他們曾經考慮去找建築系的教授,但一想到必須解釋整個模型與計畫的合理性,就陷入了沉默——他們還沒有做好準備說服別人。
「要不我們先找學生?」語婕試著轉個方向思考:「比我們還懂設計、但可能願意冒險的人……」
祐誠沒反對,但也沒多說。他打開筆電,輸入「T大 建築設計」幾個字試著尋找建築系的教授或是有發表過設計圖的學生。
結果第一筆跳出來的,並不是研究論文,而是一篇三年前的新聞,標題非常吸睛:
【12歲天才建築設計少女——黃曉彤,跳級考上T大】
新聞底下附了一張照片,是個臉色冷淡、眼神銳利的黑髮女孩,站在模型展示台前,一雙手插在白袍口袋裡,跟在場所有笑臉合照的大人們形成極大反差。
「……那她現在才十五歲?」語婕有些驚訝。
「十二歲進T大,現在十五歲應該在大二了,還是跳級進度的話。」祐誠查了查課表,補充道。
他們又往下滑,看見一則被壓在角落的延伸報導,是曉彤十歲那年在某場開放創客競賽上展示「建築自動化模組設計原型」的影片。畫質不佳,但能清楚看到一群大人圍著一個小女孩的作品,邊驚嘆邊瘋狂拍照。
那模組乍看之下像是一組摺疊式的立體機構,透過遙控指令展開支架、連結骨架、模擬建牆與封頂——速度雖慢,但概念已具備自主建築流程雛型。
「這是……無人機建築系統?」祐誠挑眉,語氣裡多了些專業上的敬意。
—
兩人隔天查到了建築系當學期的必修課《模組結構與動態空間》。週三下午三點到五點,上人數不多,而曉彤的名字赫然在列。
於是,他們提早半小時,守在教室外的階梯走廊處。
這回不需要碰運氣。他們看見一個綁著高馬尾、單肩背筆電包的纖瘦女孩走來,一手插口袋、一手拿著飲料,身邊沒人,目光筆直,像是與這個世界保持著默契的距離。
祐誠輕聲說:「是她。」
語婕立刻迎上前,這次語氣調整得更像校內學長姐打招呼的方式:
「嗨,黃曉彤對吧?不好意思打擾一下——我們有看過你之前那個模組建築的報導,很有意思,最近剛好在做一個空間實驗的計畫,想請教妳一些設計相關的想法……」
曉彤停下腳步,看著他們,語氣毫不掩飾的冷:
「不用繞圈子,你們要找人幫忙設計東西對吧?」
語婕乾脆點頭:「對。但不是一般的案子。我們想做一個……獨立封閉空間,用於模擬極端環境存活測試。設計稿我們有,只是畫得很爛。」
「我不是建築工人,也不是幫人填空的。」曉彤轉身準備走進教室,但停了幾秒又補了一句:「不過你們可以寄給我看看。」
祐誠立刻問:「你mail是……?」
「T大信箱,姓氏拼音加編號,你自己查得出來吧。」
語畢,她頭也不回地走進教室,連飲料都沒停下來吸一口。
—
後來的兩週,他們陸續寄了三版設計草圖。
第一版被退回來,附註寫:「你們的空間設計完全不考慮結構負載?想直接活埋?」
第二版,回覆是:「氣密模組設計不合理,連空氣流場都不懂,學什麼避難所。」
第三版,她只回了一句話:「地面系統沒救,重畫空間模組之前,先告訴我這建築的最終使用條件。」
那一晚,祐誠和語婕坐在實驗室熬夜討論到凌晨兩點。他們把模型中所預測的極端情況依序列出:熱浪、暴雨、電力失效、通訊中斷、強風與淹水,並根據240日需求建立一份完整的使用場景與故障模式表。
隔天中午,他們把這份文件整理成PDF寄出。
這一次,曉彤的回信只有四個字:
「我來試試。」
黃曉彤來得比預期早。
那天是星期一下午三點,實驗室外頭還下著雨。祐誠剛在備用白板上畫完一個模組交界草圖,正準備擦掉重來,門就被敲了三下。
不是輕敲,是那種節奏明快、毫不猶豫的敲門聲。
門一打開,他差點沒認出來眼前這個穿著厚外套、頭髮微濕、身高大概只有自己胸口高的小個子女孩。直到她抬起眼,說出那句:「你們這地方比我想像的窄多了。」
他才反應過來——是曉彤。
她沒有自我介紹,也沒有寒暄,只從背包裡抽出一卷A3圖紙啪地放在桌上,說:「我畫了兩版初稿,但前提是你們得接受幾個事實。」
祐誠與語婕對看一眼,語婕輕輕點頭示意「讓她說」。
曉彤一邊攤開圖,一邊用幾乎是上課的語氣開講:
「第一,你們的V0設計是災難級的垃圾。三層氣密結構沒有核心壓力釋放、沒有濾氣緩衝,堆得再厚也只是密封棺材。」
「第二,240天是什麼概念你們有想清楚嗎?你們設計的那種單向垂直空間動線,在兩週內就會產生壓抑感導致行為失控。」
「第三,我不知道你們為什麼堅持用現成材料堆出封閉空間,但我要先告訴你們,這樣蓋不完、撐不久,也運不動。」
祐誠想開口,語婕拉了他一下,低聲說:「讓她講完。」
曉彤語速快,語氣冷,但眼神從未閃爍。她不像在辯論,更像在審問這整個計畫的合理性。等她終於講完一輪,祐誠總算開口:「那妳的方案是什麼?」
曉彤在白板上看了一會,沒有點頭,也沒有批評。
她只是拿起筆,畫了一條簡單的對角線,接著說:「我有一個構想,但不會現在給你們。」
語婕問:「為什麼?」
她的語氣仍然平靜,卻帶著絕對的判斷:「因為你們連要面對什麼災難都還搞不清楚。」
祐誠皺眉:「我們不是有模型——」
「那只是預測熱浪和暴雨的版本吧?我問的不是接下來幾個月的天氣,而是五年、十年內的地殼變化、氣流型態崩潰、水循環失衡、甚至磁場異常。你們有嗎?」
這番話讓整個房間沉了幾秒。
曉彤放下筆,繼續說:「我不是缺設計,我缺的是輸入條件。如果你們拿不出足夠完整的模型,我就不會浪費腦細胞。」
她背起包,朝門口走去。
走出門前,她只留下最後一句:
「如果你們想讓我真的加入,就去搞清楚你們會死在哪一場災難裡。」
祐誠在實驗室的門口站了一會,最後還是下定決心撥通了那通電話。
他打給的是楊品安,林浩宇教授的博士生。
對方語氣不算冷淡,但明顯帶著敷衍的防備:「……你說的是GCETA模型?我知道啊,那個教授在研究後期做的東西。你要做什麼?」
祐誠沒有說得太細,只提到教授曾在一次私下會面中給了他一份beta版本,最近發現模型預測異常準確,想確認是否有完整版資料。
楊品安在電話那頭沉默了一會兒。
「那玩意兒說真的……準是準,但有什麼用?你要說它能救世界,我是沒這種幻想啦。」
「所以你有備份嗎?」
「有啊,教授臨走前傳給我一套資料庫,我也沒動過。你要用就拿去吧,我丟到雲端連結給你,記得加密。」
祐誠接到備份的那一刻,幾乎有種不真實的感覺。楊品安給得乾脆,沒有測試、沒有條件、甚至連備註都沒寫,只是像丟掉一個他無法理解的重擔一樣把它推了出去。
也許他真的是半信半疑。也許……他根本不想知道模型是對的。
—
新的模型版本比祐誠原本那份精細了將近三倍,內部多了多項地形參數與環流疊加模組。他用過去一年的全球氣象數據倒推三個月的天氣演變,再跑出模型預測結果,與現實資料一一比對。
吻合率,99%。
再把模擬時間延長到20年後,更不可置信的發現天災並非止於暴雨。
語婕看著螢幕上新的預測曲線一段段浮現,臉色一點一點沉下去。不是什麼戲劇化的驚呼,也沒有癱坐或崩潰。她只是靜靜地盯著那串資料,像是在讀一份關於整個地球壽命的診斷書。
高溫、暴雨、颱風——他們以為那就是末日的全部。但新的模型告訴他們:那只是開始。
接著是連鎖性火山爆發、板塊活動異常、持續數年的火山冬天、全球平均氣溫崩跌、冰河期全面展開……末日不是一場災難,而是一連串把文明一層層剝乾淨的機制性崩壞。
祐誠沒說話。他坐在椅子上,雙手交握,額頭抵著指節,像是在壓制某種洶湧的東西。他以為自己已經夠冷靜、夠理智,也真的提前建了避難所,以為能撐過那場大雨。但現在,他清楚自己錯得離譜。
「我們……根本太膚淺了。」語婕終於開口,聲音很輕,像是懺悔,「一直以為只要蓋個倉庫、存點水糧,就能撐過去。」
祐誠緩緩抬頭,眼神沒有憤怒,只有深深的自責。
「我們那根本不是在準備末日。」他說,「只是……在準備一次大停電而已。」
討論室裡,冷氣機運轉聲規律地響著,但兩人心裡卻像被打開了某種裂口。他們不是失去希望,而是終於明白這場災難的真正規模——人類不是對抗天災,而是在對抗整個地球接下來的數十年變化。
祐誠聲音很輕:「我也是現在才知道。曉彤是對的,要看見天災的全貌才能動工。我們之前設計的避難所根本不夠用。」
兩人沉默了許久,誰也沒動。
他們把這份資料備份,在一次黃曉彤短暫現身的會議中交給她:「我知道妳不信這種東西。這是模型的完整版本,我們剛取得不久,妳可以自己跑跑看。」
曉彤接過U盤時語氣淡淡:「我先說喔,我不會因為它『現在準』就相信它『以後會準』。模擬最容易掉的坑就是過擬合——它跟你說天氣會變好,結果是因為你只丟進了好天氣。」
祐誠沒多說,只說:「妳試試就知道。」
—
三天後,曉彤回了簡訊:
模型結構沒問題,但我還是不能信它。
你今天模擬成功不代表下週會準確,
再說,就算它真的準,你也無法證明是它準,不是剛好猜對。
祐誠回:「那要怎樣你才會相信?」
曉彤沒有立刻回覆。
—
這天晚上,三人照例在實驗室碰面。語婕一邊翻資料一邊說:「我覺得我們也不用太逼她,她這人只是腦子太快,不代表她不信。她只是還在等某個關鍵。」
曉彤坐在角落,翻著他們的新結構配置圖,語氣照舊冷:「你們講得好像我會被什麼說服一樣。」
語婕這時突然合上筆電,抬起頭,語氣平靜卻堅決地說:「那我講個連我自己都不相信的理由。」
祐誠抬起頭。
曉彤微蹙眉:「嗯?」
語婕眼神掃過兩人,緩緩地說出來:
「我不是在亂猜。我會知道這個模型是真的,是因為我死過一次。」
整間實驗室頓時安靜下來。
語婕語氣穩定得不像是在開玩笑:「我在前一世,是死在暴雨末日第二個月的地下庇護所裡,餓死的。在那之前我看到報紙裡有樂透開獎號碼,這一世我照著去買了——因此有了一些建設資金,稅後大概一點二億多。」
她從文件夾裡抽出一疊銀行文件與匯款記錄,隨手丟到桌上:「這些錢我還沒花完,大部分拿來準備計畫資金。」
曉彤張著嘴,像是想反駁什麼,卻一時說不出來。
語婕補了一句,語氣平靜卻透著一絲無奈的笑意:「不然你以為我為什麼會找上林祐誠?我又不認識他、也不是他系上的。你們都以為是巧合,其實我只是……不想再死一次。」
祐誠聽到這句,才終於反應過來她整段行動的真相。
那個第一次見面時口氣柔和、態度謙和的女生,原來早就知道模型是真的,早就知道他是關鍵,早就……決定好這一世該走的路。
曉彤沒再開口,她坐回椅子裡,低頭翻著模型資料,一頁一頁,翻得很慢。
誰都沒說話。
但那一刻起,她已不再只是旁觀者。
六小時候。凌晨一點十五分,曉彤房間燈光昏黃,兩台筆電同時開著。
一台顯示的是她最新版本的 Shelter V0 模型,另一台,則是她正在同步編修的「災變對應矩陣」。
修改後的Shelter V0 配置本身沒錯——
氣密層符合標準,空氣循環與廢水處理模組在壓力模擬下維持穩定,能源配置三源備援,甚至冷凍儲藏與糧倉空間都還多保留了 15% 彈性。
但就算如此,她的眉頭仍未放鬆。
她已經將模型重構了七次。每一次,都試圖補齊「極端災變」的環節:
高溫持續期延長至 300 天?加裝額外通風與地下熱導散熱。
暴雨模式改為非週期性不斷線?新增屋頂防水傘與排洪系統。
社會失序導致人為攻擊?加掛三層安全門與隱藏式偽裝罩體。
但每解決一項問題,另一項就會浮現。
凌晨 2:03,她將滑鼠移至備註欄紅框上:「設施封閉期預估:1000 日」的文字閃爍著橘紅色警告標記。
她打開標籤註記欄,輸入五個字:
「仍無法確保。」
她不是在懷疑模型,而是在懷疑整座城市——
模型沒錯,錯的是城市本身。
混合天災週期難以預測、地處斷層帶、核電風險……這不是設計能解決的,是根本性區位錯誤。
這不是避難設計的問題,這是地理的問題,是區位錯誤。
這時,她才打開第三台筆電,一份封存許久的資料夾緩緩展開。
【黎明谷:模組化避難所設計預備構想】
—
翌日上午,祐誠、語婕與曉彤三人再次聚在討論室。牆上白板密密麻麻,資料散落。語婕正在將模型模擬結果重新依天災類型整理,祐誠則試圖依照現有資金,重新估算備料清單。
曉彤坐得很安靜,掛著兩個深深的黑眼圈,一言不發。但她的平板一直沒關。
直到他們討論到 V0 避難所建構的可行性時,曉彤開口了:
「不行。」
語婕轉頭:「……妳說什麼?」
「V0 避難所,怎麼改都不行。」她語氣平穩,眼神卻比平常更堅定。「除非我們能飛上天,否則它撐不過來。」
祐誠沉聲問:「所以呢?我們放棄?」
曉彤沒馬上回答,而是將平板畫面投影至牆上,一張地形三視圖浮現,配有地質報告與模組化設計剖面圖。
「這是我一直沒給你們看的東西。」
她的手指指向最下方標題:
【黎明谷】——模組化長期封閉避難所構想基地
「這不是現在要蓋的東西。但如果我們真的要活到最後,這裡,是唯一的解法。」
語婕湊近一看,是一處偏遠山谷,標註名稱:「黎明谷(代號區段G3-M)」。座標旁還有一行註記:「某建設公司曾規劃地下建築模組,已中止開發」。
祐誠看著圖問:「這地方你怎麼找到的?」
「我之前幫建築公司做模組設計,有看過這個案子的殘留資料。原本是拿來做高階度假型抗災建築,地基挖到一半就因為經費問題停工了。條件還不錯,有地下水源、谷底穩定、有地熱資源。」
語婕問:「那你之前為什麼不早說?」
曉彤沒抬頭:「因為你們太嫩。」
兩人同時一愣。
「你們之前那個避難所,我改到第七版都蓋不下去。不是設備不夠,是位置不行。」
「這種東西不是拿來蓋來玩的,一旦動工就是押身家。」
祐誠沒說話。他知道曉彤這句話不是比喻,是字面上的事實。
語婕小聲地補了一句:「所以現在呢?」
曉彤靠回椅背,手指敲著桌面:
「如果你們真的打算撐到最後,那就不要在錯的地方浪費力氣。那個地方本來就是拿來蓋避難所的,差的是人跟錢。」
她停了一下,語氣低了點:
「我不是幫你們,是我要蓋給我自己活下來的。你們要一起就一起,不想也沒差。」
祐誠點了點頭,沒多話,只轉身去把白板清空。
他寫下三個字:黎明谷。
這個名字,從此不再是備案。