第30章 狀態空間

投票推薦 加入書籤 小說報錯

  線性代數第一頁,是從向量開始的。

  向量這東西,江臨高中學過。

  平面向量,空間向量,無非就是一根從A點指到B點的箭頭。

  放進坐標系裡,就是一對數,或者三個數。

  太熟了。

  可正因為熟,江臨心裡反而警鈴大作。

  從高數一路被毒打過來,他太清楚大學教材的德性了。

  越是面善的熟人,越可能在翻頁後對你露出獠牙。

  高中那點求導和算面積的經驗,在真正的微積分面前只夠站在門外討飯。

  所以,當這根箭頭大搖大擺地出現在第一頁時,江臨沒有急著認親。

  他在墨水手寫板上寫下幾行字。

  【線性代數,第一階段。】

  【先別急著罵。】

  【看看它到底想讓我怎麼重構世界。】

  窗外,廢土的冷季還在苟延殘喘。

  過去六年,高等數學和普通物理幫他在廢土裡站穩了腳跟。

  但他很快撞上了一堵新牆。

  廢土從來不是單變量的考卷。

  石屋冷不冷,不能光看外面多少度。

  太陽能板發多少電,也不全看太陽給不給面子。

  農田的死活,更是土壤,水分,酸雨,種子和氣溫的集體狂歡。

  每一個生存系統背後,都拖著一長串泥濘的變量。

  而線性代數,似乎就是為了這團亂麻而生的。

  第七年春,江臨第一次嘗試把向量拖進現實的泥潭。

  他新建了一個文檔:【狀態向量_第一版】。

  第一行:【S_house】(石屋狀態)。

  順手把冷季某夜的數據填了進去。

  睡眠區6.1℃,室外-4.6℃,風力3級,門縫狀態0,剩餘燃料420克,濕度偏高。

  接著,他又調出保溫改造後的一組數據排在下面。

  兩組數據列在屏幕上,江臨盯了半天,興奮地搓了搓手。

  他懂了,向量不只是箭頭,向量是一組狀態的切片。

  但這股興奮勁只活了不到十分鐘。

  他本來想用教材里的公式,算算這兩天石屋狀態的距離。

  對應坐標相減,平方,求和,開根號。

  他敲著鍵盤,甚至有點小得意。

  回車鍵一敲,屏幕上崩出一個大得離譜的數值。

  江臨腦子嗡地一下。

  他忽略了一個致命問題,燃料是用克算的,動輒大幾百。

  溫度是用度算的,頂多差個幾度。

  在那幾百克的平方碾壓下,溫度和風力的變化連個水花都沒濺起來。

  這就意味著,只要某天他多撿了兩斤爛木頭,哪怕門縫漏著風,爐灶熄著火,他在屋裡凍得嘴唇發紫,這套該死的數學公式也會笑眯眯地判定。

  今天狀態大好。

  「好個屁。」

  江臨暗罵了一聲,靠在石椅上,剛熱起來的心被廢土的冷空氣呲啦一聲澆滅了。

  這就是線性代數給他的第一記悶棍。

  它允許你把世界寫成一組數,但前提是,你得先扒掉它們身上五花八門的物理單位,壓縮成同一尺度的比例。

  否則,溫度和燃料質量永遠像雞同鴨講,根本沒資格在同一個幾何空間裡上桌吃飯。

  後來他才知道,這一步不叫隨便縮小數字。

  叫無量綱化。

  溫度、燃料、風力、濕度,必須先變成可以比較的比例,再根據它們對生存狀態的影響重新加權。

  否則,所謂距離,不過是單位在假裝數學。

  江臨咬著筆頭,在文檔里補了一句。

  【不是隨便抓一組數排隊就能叫向量,沒定義的變量,就是一堆精神分裂的廢話。】

  第七年春末,撞上了矩陣。


  乘法規則簡單得像小學算術,行列相乘再相加。他連續做對了十幾道題,但胃裡卻越來越反酸。

  映射,變換。視頻里的老師說得雲淡風輕,江臨聽得一頭霧水。 他發現自己又在用「戰術上的勤奮」掩蓋「戰略上的大腦宕機」了。就像高中刷卷子,分拿滿了,卻不知道這些字母在現實里能幹嘛。他現在就像個人形算盤,劈里啪啦乘出一堆新矩陣,然後呢?能幫他多種出一顆土豆嗎?

  那天傍晚,他坐在石屋門口吹風,看著乾涸河床的方向發呆。十五平米的石屋不是個均勻的方盒子,爐灶生火時書房熱得快,火滅後儲物區因為挨著門縫涼得最快。它們互相拉扯,互相傳熱。

  江臨猛地站起來,沖回石桌前。

  如果把生活區、書房、儲物區三個溫區的溫度寫成一個狀態向量 T(t),那麼在足夠短的一小段時間Δt里,下一刻的溫度,能不能近似由上一刻的溫度推出?

  江臨沒有急著說能。

  真實情況一定比教材里的例題髒得多。

  可如果只取一個很小的時間步長,把那些劇烈變化先壓進外部輸入項里,那麼至少第一層近似可以寫成。

  T(t+Δt)=A(t)T(t)+b(t)

  當然,這個A不會永遠固定。

  門縫堵沒堵,牆體濕不濕,風向有沒有變,都會改變它。

  b也不是天上掉下來的常數。

  爐火、室外溫度、人體散熱、太陽輻射,甚至牆體白天吸進去的那點熱,都可以被粗暴地塞進這個外部輸入項里。

  這很粗糙。

  可哪怕只是粗糙的一階近似,江臨也第一次看見了狀態如何演化。

  再看那個代表矩陣的A,江臨後背爬上一陣酥麻。

  矩陣不是Excel表格,矩陣是一個動作。

  它是一套殘酷的規則,規定了當前狀態該怎麼變成下一刻的樣子。

  第一行決定生活區,第二行決定書房,第三行決定儲物區。

  對角線上的數,代表每個區域保留了多少自己的舊溫度。

  非對角線上的數,則代表別的區域對它的影響。

  矩陣乘向量,就是在用物理規律,把舊的世界硬生生推向新的世界。

  這口氣一松,後面的路突然寬了。

  他不再急著往後趕進度,而是把廢土的一切都塞進矩陣里盤包漿。

  不是為了把一切都算準。

  而是為了看清一個變量被改變時,震動會沿著哪些通道傳出去。

  擦太陽能板,是在改變灰塵分量。

  灰塵變了,影響功率,功率變了,影響晚上電腦能開多久,電腦時間變了,直接干預學習進度。

  在廢土裡,你動任何一個變量,其他變量都會跟著顫抖。

  現實世界,在人最順手的原始坐標里,從來不是對角矩陣。

  可也正因為如此,線性代數才有意義。

  它要找的不是一張更大的表。

  它要找的是隱藏在耦合背後的那組真正坐標。

  第七年夏天,江臨撞上基。

  教材上說,同一個向量,在不同基下,會有完全不同的坐標表示。

  這句話讓江臨看得眉頭直皺。

  高中教育刻在他骨子裡的本能,是尋找唯一的正確答案。

  同一個東西,憑什麼數字會變?

  變了之後,到底哪個才是真的?

  他帶著這股煩躁走出石屋,看向那塊在風沙里微微發顫的太陽能板。

  風正從西北方向吹來。

  如果站在地圖坐標里,這陣風可以拆成東西向分量和南北向分量。

  可如果站在太陽能板自己的坐標里,它就變成了另一組東西。

  垂直板面的風速分量,和沿著板面的風速分量。

  前者決定它被風正面壓了多少。

  後者決定風沙怎樣貼著板面刮過去。

  江臨深吸了一口廢土乾燥的空氣,快步回到石桌前,在文檔里敲下一行字。


  【不要再問廢土上的正確答案是什麼。】

  【大學數學在逼我承認:先問問你自己,你到底是站在什麼坐標系裡看這個問題?】

  這一刻,江臨產生了一種輕微的眩暈感。

  到了第七年秋天,江臨在整理農田數據時,迎來了第三波精神暴擊。

  滿屏的數據,從表層含水到酸雨次數,洋洋灑灑幾十列。

  乍一看科學得要命,可稍微一盤邏輯,江臨就覺得不對勁。

  他開始一項項檢查。

  表層含水量和十厘米深處含水量有關,但不完全一樣。

  近七日平均溫度和有效光照有關,但也別著勁。

  堆肥成熟度和地塊熟化年限有關,可某些老地塊因為早期操作粗糙,未必比後來精心處理的新地塊好。

  變量之間沒有乾乾淨淨的關係,像一群被關在表格里互相串供的嫌疑犯。

  每一列都在尖叫著我重要,每一列又都和別的列在桌子底下暗中勾結。

  教材里管這叫線性相關。

  緊跟著蹦出來一個冷冰冰的詞:秩。

  視頻老師說,在最粗略的意義上,秩可以理解為有效獨立信息量。

  江臨一下子坐直。

  因為這幾個字像一記耳光,扇散了他這幾年對著一堆厚重數據沾沾自喜的幻覺。

  農田狀態表橫跨了兩個屏幕,不代表它的秩很高。

  變量洋洋灑灑寫了一百列,很可能只是一堆水分和溫度換了十幾種馬甲在反覆橫跳。

  當然,真實數據里還有更噁心的東西。

  噪聲。

  一點測量誤差,就足夠讓一個本該低秩的表格,在計算上變成滿秩。

  所以他真正該看的,不只是冷冰冰的秩,而是哪些方向貢獻了主要變化,哪些方向只是噪聲在抖。

  變量很多不可怕。

  可怕的是,他根本不知道哪些變量在提供信息,哪些變量只是在製造幻覺。

  他以前的人生也是這樣。

  試卷、筆記、錯題本鋪天蓋地,看起來很寬,實際上全在同幾個知識點上原地打轉。

  有效信息量低得可憐。

  江臨拿出紙質時間膠囊。

  【線性代數:秩。】

  【變量很多,不等於信息很多。】

  【筆記很多,不等於理解很多。】

  【真正重要的是獨立方向,是有效信息量。】

  當冬天的第一場冷風颳過時,江臨開始學線性方程組和行列式。

  高中時解方程是天經地義的事,可大學線代冷笑著撕毀了這張保票。

  現實往往是無解的。

  他試圖算石屋的冷卻主因,算土豆增產的關鍵,卻發現數據之間瘋狂互毆。今天的溫度和昨天的記錄對不上,濕重和乾重混在一起。

  這不是他算不出,是數據本身爛透了。

  現實就是個四處漏風的草台班子,它絕對拒絕替你的粗糙記錄背鍋。

  後來他才知道,現實世界的大部分方程組,本來就不給精確解。

  你問它到底是哪一個答案,它只會甩給你一堆互相打架的觀測值。

  真正該問的不是有沒有一個完美答案。

  而是在所有不完美答案里,哪一個讓整體誤差最小。

  那個東西,叫殘差。

  那條路,通向最小二乘。

  江臨紅著眼,沒有把所有記錄都刪掉。

  他先把明顯口徑混亂,單位不明,缺少日期和條件說明的數據,拖進了【廢棄數據】文件夾。

  剩下那些還能救的,則單獨建了一個文件夾。

  【殘差過大,待覆核】。

  沒用就是沒用,自我感動不能當飯吃。

  而行列式更是給了他最後通牒。

  在線性變換里,行列式是體積的縮放因子。

  如果det=0,說明空間被直接壓扁了,維度塌陷,信息丟失。


  這是信息層面的不可逆。

  三維壓成二維,二維壓成一條線。

  你只拿到壓扁後的影子,再也還原不出原來的體積。

  江臨忽然想到,廢土裡也有很多類似的時刻。

  種子捂霉,電池深放,水源污染,身體越過死亡線。

  它們不是真的行列式為零。

  但它們都在提醒他,有些操作一旦丟失關鍵狀態,就再也退不回去了。

  從那以後,江臨學會了區分可控試錯和不可逆試錯。

  別把命押在會壓扁所有退路的操作上。

  第八年夏天,他啃到了最難的骨頭:特徵值與特徵向量。

  方向不變,只做拉伸?

  江臨看著這句繞口令,只覺得腦子發木。

  他最開始還是回到石屋。

  三個溫區,三個溫度,依舊可以寫成一個狀態向量。

  先暫時拿掉爐火和門縫這些外部輸入,只看三個溫區之間的內部傳熱。

  如果生活區,書房,儲物區的溫度完全一樣,那麼下一刻,它們大概率還是一起升,一起降。

  這是一個方向。

  如果書房比生活區熱,儲物區比它們冷,那麼熱量會沿著牆體和門縫流動,溫差會被一點點抹平。

  這又是一個方向。

  原來特徵向量不是玄學。

  它是系統最天然的變化方向。

  特徵值則告訴他,這個方向上的狀態,是被保留、被衰減,還是被放大。

  後來某天狂風大作,太陽能板的木質支架在風中發出咔吱咔吱的慘叫。

  江臨又想起了另一個更危險的詞。

  模態。

  支架不是隨便怎麼晃都一樣。

  有些晃動形狀很快被結構和阻尼吃掉。

  有些晃動形狀,卻像正好踩在系統的骨縫上,只要外界風力的節奏接近它的固有頻率,能量就會一下一下灌進去。

  那不是普通的搖晃。

  那是共振。

  而模態背後,站著的就是特徵值和特徵向量。

  想到這裡,江臨再看廢土,發現很多東西都像有了自己的脾氣。

  如果把努力全砸在錯誤的特徵方向上,比如死記硬背,熬夜假勤奮,系統不但不會變好,反而會加速崩潰。

  第八年冬初,江臨做了一次總整理。

  他把那些充滿誤差的粗糙模型保存下來,命名為【狀態空間_第八年整理版】。

  沒有導師批改,也沒有網絡炫耀,但這套簡陋的體系,是他一個人在黑暗中一磚一瓦敲出來的。

  夜色壓下來,爐膛里的余火苟延殘喘。

  江臨翻開紙質時間膠囊,手腕因為長時間握筆微微發酸。

  【線性代數,第一輪結束。】

  【不精通,但夠用了。】

  【高數教我看變化,物理教我看規律,線代教我看結構。】

  【廢土從來不是一條平滑的曲線,而是一個布滿陷阱的狀態空間。】

  墨跡干透。

  江臨合上文件袋,搓了搓冰涼的指節,滑鼠光標懸停在了下一個未命名文件夾上。

  文件夾里躺著一行更不講理的名字。

  如果說線性代數教他看見結構。

  那麼接下來的東西,就要逼他承認另一件事。

  現實世界給出的每一個數字,都可能在撒謊。

章節目錄