既然現實世界是非線性的,那麼線性方程和線性規劃能解決的問題豈非太少?
剛註冊知乎不久,第一次被邀請誒。。。謝謝邀請人。(不好意思,我不好意思說「謝邀」)
———————————————————————————————————————————
首先,我們在數學上常說的線性方程、線性系統和非線性系統與「線性規劃」一詞中所說的「線性」並不是一回事,非線性的複雜系統更不是簡單系統放在一起就能解決了(也即,在這裡,複雜的問題並不是簡單問題的和。或許把它稱為是 簡單問題經過複雜的規則耦合在一起的問題 才更合適,不管從什麼角度看,始終擺脫不了複雜的屬性)。線性規劃能解決的問題確實非常少,但是我們又不是只會用線性規劃解決問題。同理對於線性系統也是如此,我們並不是完全不能解決非線性問題啊。我下面主要針對非線性領域通常所指的線性系統和非線性系統來討論。
廣義的說,「線性系統」指的是其解滿足線性疊加原理的系統,即:
這個F不能簡單地理解為只是一個可以寫成顯式的函數形式,而應該看做一個映射。簡而言之,線性系統對應的也就是線性映射。
而在針對常微分方程動力系統的非線性的研究領域裡所指的線性系統的形式則往往是:
其中,而A是一個常數矩陣,則這是一個線性的常微分動力系統。
與之相區別的非線性系統則是無法寫成以上形式的方程組所表徵的系統,比如有些是二階、三階、更高階的系統,或者說形式上矩陣A中的項跟X的各項有關。當然,非線性系統也包含偏微分方程中的非線性系統,比如可以形成Turing Pattern的帶有擴散項的系統。
之所以要專門區分線性系統和非線性系統,是因為線性系統都是可以用通法求出解析解的,而非線性系統則只有極少的一部分能夠通過特殊的處理手段求出所有的解析解,而且就算能找到一部分解析解,也往往不能找到完全解。典型的例子比如:N體問題在的情況下的完全解析解就是無法求出的。
這個「無法求出」指的並不是目前的數學研究水平還沒達到一定高度因而無法完全求出,它指的是在經典牛頓力學的前提下,由牛頓萬有引力定律、N個點質量、初始位置、初始速度 這些條件,在理論上來講已被證明無法給出完全的解析解。對於尚無相關背景知識的人,請注意,「無法給出完全解析解」並不等於「無法給出解析解」,更不等於「無法給出它的解」,更加不等於「完全混亂,不可預知其演化情況」。
也許是目前科普書主要講的東西都是一些建立的早、已經相對成熟,且不算太抽象的理論,比如量子力學、相對論等,並沒有對非線性領域給予很多關注,也許是因為沒有數學背景很難完全理解相空間、分岔等概念,因此導致了許多人理解的關於蝴蝶效應等詞語的意思和實際的意思相去甚遠。混沌(chaos)是非線性現象的其中一種,其實它並沒有大眾心中所想的那麼神秘莫測以至於引發了一些人關於不可知論的探討。把chaos翻譯為混沌個人認為也是一種不太恰當的翻譯,因為在文學性的語言里「混沌」指的是混亂的狀態,即隨機性的現象,但其實chaos與隨機的現象是根本上不一樣的,雖然看起來不那麼好預測,但這是因為我們的數學能力不夠強、計算機不夠好,計算的不夠精確,而不是因為chaotic system自己具有根本上不可預測的特點。它指的只是兩個相鄰的軌道在相空間中隨著時間發展會很快速的互相遠離的現象。與之相比,對於一般的非線性體系而言,軌道往往會被其鄰近的吸引子」吸」過去或「排斥」走,因而在吸引子周邊的一塊相空間的區域內出發的相鄰的相點,它們的行為趨勢是一致的。這是chaos與一般的非線性系統相比的基本區別。但是不代表一般的非線性系統就不會出現那種 某個東西變了一點點,最後的結果就大相徑庭 的現象。一般的非線性系統在不同的吸引子的吸引域的臨界附近,把相空間中的點稍微挪一點點,也是會跑到完全不同的吸引子去的。而且,非常簡單的系統也是有相對敏感與不敏感的區別,也有些系統是在一定的參數範圍內不敏感,在參數空間的其他位置則可能非常敏感,敏感參數會隨著處於參數空間的不同位置而變化,敏感的方向也不一定永遠一致。另外,非常普通的二維非線性系統也具有分岔行為,即系統的某個參數在分岔點附近變了一點點,就根本上改變了系統整體的動力學結構,從而導致了與原來相比截然不同的結果。要說最為奇特的根本區別,其實在於奇異吸引子的分形結構的存在。另一個比較好玩的就是比如Lorentz吸引子繞著兩塊區域轉了一圈又一圈,每一圈都與之前離得很近但卻是非周期的,另一方面即便是非周期的,它的行為也是確定的而非隨機的。
在計算機還未如此普及的年代,數學家們對於非線性系統是感到非常無能為力的。有一個笑話就是:有一天一個數學家走進另一個數學家的辦公室,隨後發生了如下的對話:A:Can you solve these equations?
B:No I can"t, because they are nonlinear.
A: So what can I do?
B:You can get out of my office.
但是在現代計算機已經挺強大的情況下,想知道一個非線性系統(包括Chaotic System)在給定初值和演化規則之後 在一定時間以內的變化情況,只要進行精度足夠、方法合適的模擬,求得近似解就足以滿足我們的許多需求了。
在學術領域,對於比較傳統的理論物理(比如粒子物理等)而言,研究的往往是參與相互作用的物質並不算太多,提供的條件也相對單純、理想,比如經常是在真空中,比較有限的粒子之間的基本相互作用。但是對於當前的凝聚態理論、軟凝聚態理論(即生物物理理論)等領域,卻經常是要處理許多種物質通過多種相互作用在一起相互影響而形成的極為複雜的多體系統的,單純知道基本的相互作用是怎麼一回事在這樣的話題上就是遠遠不夠的了。當然我不是在說粒子物理等理論領域更簡單,事實上都非常複雜,只不過研究的側重點不同而已。
甚至,以現在的數學領域的發展情況,還完全無法做到 給出一個生命系統的初態 然後寫出方程就能預測它的行為,甚至還不能建立一套足夠好的用於描述這樣的複雜體系的數學模型。往往只能在現在的基於理論物理的處理方法進行簡化、抽象的手段所建立的粗糙的數學模型之下給出一些已經被研究的比較清楚的生物現象的動力學解釋,或是通過定量的數學證明和計算機模擬,預測出一個複雜體系在定性上的一些規律。需要指出的是,這些計算的時間複雜度往往也都挺高的。
儘管如此無能為力,甚至讓人懷疑身體這麼複雜的非線性體系,是如何能夠在千變萬化的自然界健康的存活那麼久的?甚至人在那麼多可能的基因突變之下,從一個受精卵到長成一個人形,能被媽媽生出來也已經似乎是不可思議的事情了。這是因為大自然是個神奇的造物主,自然中的複雜生命系統經過漫長的演化後,形成了一套極其優化的系統,使得這個體系具有相當的適應性、穩定性和robustness(我不想翻譯為」魯棒性「或者」健壯性「)。放在動力系統中去考慮,就是一個相空間中的流場即便在通常情況下經受很多擾動,但是如果不是特別大的擾動,總也能回到正常狀態的吸引子附近的位置上,或即便吸引子的位置隨著參數的擾動而有些許移動,在定性上仍然能完成它應有的功能,比如 穩態下A和B的比例大致是A多B少 之類。即便缺了某些原本應該參與反應、發揮功能的基因以及相關的蛋白質,或是某些物質之間的聯繫被切斷了(對應於動力系統的某些參數發生了極大的變化),籠統的來講整個系統的功能並沒有喪失或者至少是沒有完全喪失,而這都取決於自然界在」設計「生命的時候在抽象的相互作用網路的拓撲結構上堪稱完美的「考慮」(漫長的演化)。
對於我們人通常所處理的事情,比如如何安排時間、如何談戀愛、如何說服老闆接受自己的觀點等等,其實都是在處理非線性問題,我們的大腦實際上通常是夠用的,即便不能給出一個事物在相空間中對應的具體運行軌跡,也能大致通過一些經驗和估計給出一個合適的初態和適當的參數擾動來讓它達到目的。這些過程中大腦是夠用的,但其運算過程往往是不被察覺的,所以被人們籠統的稱為「憑感覺」了。
另一方面,即便在理論上來講,也存在一定的條件和範圍,使得相當一部分非線性系統在不動點等吸引子周圍的行為在定性上是可以和與它近似的線性系統趨於一致的(但不是所有的系統都如此)。因此,即便對於非線性系統,在一定範圍內通常也並不必要求出精確的解,當然另一方面精確求解往往也無法做到。
於是相比於精確求解,數學家們對非線性的系統往往更為關註定性上的特點。比如:在一個給定的相空間的某個區域內是否有吸引子?如果有吸引子的話,是否有不動點、極限環、環面吸引子或奇異吸引子?有幾個不動點、幾個極限環?它們是穩定的么?在一個吸引子周圍的流場是指向外還是指向內、是否有旋轉、是有無窮個閉軌(center) 還是孤立閉軌(limit cycle)、在不同方向上的流場指向是否有不同(比如saddle)?當然,此類問題即便在二維繫統中,也已經足夠讓全世界的眾多數學家頭疼了(比如希爾伯特第十六問題就是一個二維的多項式系統的問題,據我所知到現在還只在一些改版的類似問題之下給出些許結論)。
理論上來講,世界上的任何系統都是非線性的,在上述的討論中所指的情況是其中可以被部分的解決的那部分,通常也差不多能用。但那些 某個參數變了一點點, 或初始位置變了一點點 結果就差之千里的情況其實也是隨處可見的,比如說你去玩那種小球從上往下掉,掉到哪個坑裡得哪個獎的賭博遊戲就是這樣的情況。而我們的一些戲劇化的人生經歷也正是非線性效應的體現。
怎麼辦呢?接受事實啊。意識到並承認人類的無知無能,進而接受這個對於我們的理解能力來講仍舊變幻莫測的世界。然後感嘆一下人海茫茫(有那麼多和你相互作用的人,可能導致很多種不同的人生境遇,對應到相空間中就是複雜系統中的許多不同的吸引子)中能遇到某個人,也許是命中注定(你倆在一起的狀態在相空間里是個global attractor),也許只是因為一念之差使得某個敏感參數稍微變了那麼一下,於是你的整個世界都變了(bifurcation,或因為擾動而進入了另一個吸引域,或是ultrasensitivity);有的人原本是可憐的灰姑娘,突然受了點正面刺激就飛黃騰達了(excitable system);有的人的生活可能會過著過著就陷入了永恆的悲劇(limit cycle);原本大家以為能一直富裕的家族到某一代起就衰落了(unstable limit cycle) ;還有原本看起來是悲劇的看不到頭的狀態,不知道熬了多久終於跳出來了,從此以後過著幸福平和的日常生活(transient chaos)。。。種種境遇,都只是自然界的常態啊。確實如問題中所說,線性的數學工具所能解決的問題只佔現實世界中問題的一小部分。但是由於非線性問題的複雜性,能解決的只是非常小的一部分。所以對於人類所能解決的問題來說,線性的佔大部分。
目前以混沌和分形為代表的非線性科學是一個研究熱點,這些非線性現象在很多領域都存在。非線性現象是和相對論、量子理論並稱的二十世紀三大科學發現。非線性現象的研究目前只有幾十年的時間,所以未來會如何並不確定。
對於用線性工具研究非線性問題,這是目前採用的比較多的手段。但是值得指出的是:非線性問題有很多用線性工具無法解釋的地方,因此不能用線性工具代替非線性工具。
可以採用線性工具研究非線性問題的原因在於對於某些問題可以做局部的線性化,對於某些非線性因素很弱的問題可以用線性工具去做漸進分析。個人認為這些都是不得已而為之的。
非線性問題通常直接解決起來很麻煩,像在數學裡,很多方法都是用線性方法去逼近非線性問題,然後使誤差達到最低!
對計算數學來說,一切的問題都是線性問題,注意,是一切,沒有例外,而真正的科學計算中使用的數據幾乎都來自計算機,所以我們不談現實,只談誤差!
計算機只能解決有限的線性的問題毫無疑問。比如我們的CG動畫裡面就涉及大量的非線性方程的求解問題,最簡單的牛頓運動方程,就是一個二階微分方程,但是你說你現在看到的動畫,比你覺得他真實嗎?那些粒子的運動,光線的渲染算真實嗎?我覺得是比較真實的,原因就是線性逼近這種非線性問題只要演算法合適,問題適定,誤差絕對能夠控制到你想在小數點後多少位就可以是多少位,更別提只需要糊弄一下你的眼睛,那誤差隨隨便便取就夠用了。再者,實際應用中,數據的採集和計算,在現代的科技幾乎都是基於計算機的,不可能真實無誤差,計算機隨隨便便來個系統誤差可能都比我們線性近似求得的解的誤差大,所以線性方法在現代科學領域幾乎是唯一的方法,所以線性方法才是王道啊!
Finally, we make some remarks on why linear systems are so important. The answer is simple: because we can solve them! So most of the time we solve linear problems. Second (and most important), it turns out that the fundamental laws of physics are often linear. The Maxwell equations for the laws of electricity are linear, for example. The great laws of quantum mechanics turn out, so far as we know, to be linear equations.That is why we spend so much time on linear equations: because if we understand linear equations, we are ready, in principle, to understand a lot of things.
We mention another situation where linear equations are found. When displacements are small, many functions can be approximated linearly. For example, if we have a simple pendulum, the correct equation for its motion is
This equation can be solved by elliptic functions, but the easiest way to solve it is numerically, as was shown in Chapter 9 on Newton』s Laws of Motion. A nonlinear equation cannot be solved, ordinarily, any other way but numerically. Now for small , is practically equal to , and we have a linear equation. It turns out that there are many circumstances where small effects are linear: for the example here the swing of a pendulum through small arcs. As another example, if we pull a little bit on a spring, the force is proportional to the extension. If we pull hard, we break the spring, and the force is a completely different function of the distance! Linear equations are important. In fact they are so important that perhaps fifty percent of the time we are solving linear equations in physics and in engineering.- Richard Feynman, The Feynman Lectures on Physics Vol. I Ch. 25: Linear Systems and Review
局部上可以解決問題
這是分析的精髓嘛~局部上丟掉高階無窮小第一個回答已經說的很好了O(∩_∩)O~
我這裡也主要說下動力系統中的非線性系統~~
我們知道動力系統可以用來描述物理現象隨時間演變的動力學行為~
舉幾個例子吧~~
1.生物學:Hodgkin-Huxley 系統
Hodgkin和Huxley提出的一種用以研究巨型烏賊的神經衝動模型,就是用一個四維的微分方程來描述神經信號沿細胞膜的電氣化學傳輸(他們也因此獲得了諾貝爾獎),這個系統很難處理的一個重要原因就是方程具有很高的非線性~
2.化學:Belousov-Zhabotinsky反應
BZ反應是化學反應歷史上一個重要轉折點,在發現這個振蕩的化學反應之前,化學家們一直相信所有的化學反應都是單調地趨於平衡,而我們現在知道許多反應都會振蕩,有些甚至會出現混沌現象。給出一個簡單的可以近似描述二氧化氯-碘-丙二酸相互反應時其中兩個反應物濃度的數學模型:
可以看出該系統也是非線性的;
3.物理學:Newton-Lorentz方程
寫一個簡單的哈密頓系統下單粒子在電磁場中運動的模型:
該系統也是非線性的。
(前兩個例子源於Differential Equations, Dynamical Systems, and an
Introduction to Chaos)
還有很多其他系統,像種間競爭模型、增長模型、電路里的Van der Pol方程等都是非線性系統,可以看出,非線性確實是自然界和工程問題中最普遍的現象。然而對於非線性系統,很少能夠像線性系統那樣找到任一初值問題的顯式解,對於高維繫統,即使知道了顯式解,但由於可能產生混沌行為,對於理解系統的整體行為沒有什麼實質性的幫助。
雖然線性系統刻畫的實際問題很少,但這不代表對線性系統的研究沒有意義。
考慮一個自治系統
我們從兩個角度考慮對該系統的研究
1.求解:最理想的情況是能得到該系統的解析解,退而求其次即得到近似解析解,當然數值解也越來越廣泛被使用。
對於近似解析解,數學上常用的手段是採用微分方程群論的方法,通過找使方程形式不變的單參數變換群求得近似表達式;
有的問題可以通過線性化得到相應的線性系統,從而對該線性系統進行研究;
還有的非線性問題實際上可化為分段線性問題,雖然整個模型是非線性的,但在其狀態空間的不同區域內可以通過線性分析預測系統特性,即各個區域是線性模型,區域和區域之間只是係數發生改變。
2.解的性質:在一些實際問題中可能非常關心系統穩定性而非解本身,這個時候我們就想能否通過方程本身得到解的性質。
奇點(對應於的點)是動力系統中比較重要的一個概念,根據相空間軌線的不同可分為中心,鞍點,吸引子等類型。
對於非線性系統,即是的非線性函數,對它的穩定性分析一個常用的方法就是在奇點附近將其線性化得到線性系統
其中為的雅可比矩陣,為n階常數矩陣。
對於線性系統穩定性分析的理論已經比較完善,所以可以通過線性系統近似的方法來研究分非線性系統解的穩定性。當然這樣近似是有依據的,即當奇點是雙曲型奇點時,非線性系統的結構從拓撲結構上等價於線性系統。即存在連續的一一映射,將奇點附近鄰域中的非線性方程的軌線映射為包含原點的開集中的線性方程的軌線。所以,這種情況下,非線性系統的局部性態和線性系統是相同的。
線性方程和線性規劃理論很完美,非線性偏微分方程和非線性泛函的問題有些要藉助線性的理論來解決,具體問題具體分析。
有好多非線性問題藉助於仿生學思想的演算法來解決,比如,神經網路和遺傳演算法。
人解決問題的思路是這樣的:
現實世界中的問題→用人類的方法描述(多半最後轉化為數學語言)→用人類的方法分析(數學計算)→計算結果→在結果的指導下解決問題
也就是說:一共有兩個世界,一個是真實世界,一個是人類所認識的世界。人類認識世界的方式是將世界用自己的方法描述,即人類認識的世界永遠不能和真實世界完全等價,人類認識的世界只是真實世界的一部分。
解決問題,是建立在人類認識的世界的基礎上的。是抽象化的世界,不是真實世界。
人類靠什麼描述人類認識的世界呢?是數學。因此,人類描述和研究世界以數學理論為基礎。在人類的數學理論框架下,線性計算比非線性計算擁有更多的優勢,因此人類傾向於用線性計算分析這個世界。
換句話說,世界本沒有線性不線性的區別,線性或者非線性的概念都是建立在人類的認識上。從根本上說,世界不是線性的,也不是非線性的,世界是什麼樣子的我們不能完全地描述。人類喜歡用線性描述問題,最終取決於人類描述這個世界的方式,即數學及其理論。是人類建立的數學理論保證了這一點。
如果幾千年前祖先發展出了一套完全不同的數學理論,對世界的分析方法也就很可能不是這樣的了。我上學那會兒聽到過一個很有意思的說法,問:世界上哪些系統是非線性的?答:在一定的範圍內,所有的系統都是線性的,在足夠大的範圍上,一切系統都是非線性的。微積分的作用是把非線性的東西在局部上做線性的近似,近似完之後的事情就交給線性代數了。
所以老師告訴我們一定要學好這2門課。
數學上的非線性問題,很難用線性問題解決。
但實際的問題,很多可以用線性問題解決。
有了軟體的大規模解線性系統的方法,很多非線性問題可以通過降維來用線性系統解決。
如同圓可以用多邊形逼近,模擬信號可以用數字信號逼近。
現實問題在逼近演算法中不需要太高的精度,可以用柵格化演算法來逼近實現,如同數碼管上的像素點是有限的,但可以顯示出弧形的圖像。
很多演算法都是降低了維度,降低了精度,來實現用於現實情況的解。
反過來說,要那麼高的精度也沒有必要,如同物質小到分子,原子了,再小下去沒有什麼意義,數學理論中數可以一直小下去,但現實應用中精確到幾位小數點就可以了。
線性系統可以逼近非線性系統,是計算機軟體發展的產物,是一種演算法,是一種追求性價比的折中,是一種以小的代價實現目標的方式,所以線性系統的用處還是非常大的。
線性思想解決問題是一種先進思想,以計算機演算法為代表,很多都是轉換成線性系統方便運算,如圖像的矩陣表示,如非線性傅立葉變換是一種非線性理論,實際用途很少,但用離散傅里葉變換DFT後,該演算法用途就廣泛了,再到快速傅里葉變換FFT,就可以很方便做成演算法庫用於多種領域。
你能看到的任何曲線,都可以用一個矩陣來逼近表示,不同的表示方法只是精度不同,這一點在數碼相機時代就可以感受到,所以存儲卡代替了膠片,手機代替了大哥大。
由於計算機計算線性數學問題的速度非常快,如矩陣表示的視頻流計算,所以演算法領域用得特別廣。
把非線性變換成線性問題,是解決很多問題的關鍵。湊合著用吧!湊合著用吧!湊合著用吧!
非線性有時候是因為割裂的看待事物,結果線性的東西就變的非線性了,活該找不到北,所以還是湊合著用吧!
現實生活和科學技術大多數領域裡用線性逼近,就夠用啦。
在高精尖科學領域裡才涉及到非線性,比如航天材料分析 ,航天軌道計算,探礦分析 。
再說,所謂的非線性問題的求解的主要方法是用線性方法逼近,任何時候線性方法都是主要方法。
從工程角度簡單補充下。
線性規劃(以下用優化代替,更加一般的術語)能解決的問題確實非常有限。
但隨著這些年計算技術的發展,藉助計算機,人們現在已經可以非常好地解決凸(凹)優化問題,即問題描述可以是滿足凸(凹)性的非線性方程。形象地說在凸函數上任何一點求切線(面),函數的其它值都落在切線(面)的同一側。見Convex function。 這是一個非常重要的擴展。
但目前人們對於更加一般的優化問題的解決能力確實有限,一般尋求轉換為上述兩種問題的形式然後求解。僅從工程角度而言,很多時候找到個不錯的近似解就足夠了,大部分你可能會碰到的目前無法找到最優解的問題都會有各種各樣的近似解法。
既然現實世界是形而下的,那麼形而上能解決的問題豈非太少?
在工程師腦袋裡 思路都是將非線性問題離散化 輔以實驗數據和經驗方程 得出近似解
應對一般工程問題綽綽有餘
現實世界是一個複雜系統,動態時變,事物相互之間的關係可以認為是一個關於時間t的函數(實際上更加複雜)。當我們面臨要解決一些實際問題的時候是不能不忽略這種非線性變化的,但是對於一些問題我們需要控制變數,標定一些參數來達到某種理想狀態(也許是線性的),從而使問題得到理論上的解決,並對解決現實問題提供理論基礎。順便說一點,不是線性方程什麼的解決的問題太少,是我們太無能罷了,哎。。。@崔酷依
報告後的討論環節,Harold Hotelling站起身來,只說了一句話:「可我們都知道世界不是線性的。」無論從學術水平還是身材上看,他都算是重量級人物。面對這麼狠的批評,Dantzig一下子無言以對。
突然聽眾中又有一人舉起了手,那是馮·諾依曼。他說:「主席,主席,如果報告者不介意的話,我願意替他回答。」我當然求之不得。他接著說:「報告者把題目定為『線性規劃』,陳述原理的時候也很謹慎。你的應用要是滿足他的原理,那就用他的模型;要是不滿足,那就不用唄。」
這儘管是個複雜的世界,但是很幸運,線性模型確實可以詳盡描述多數複雜之處。據Dantzig在斯坦福大學的同事表示,他的辦公室外面掛了一幅漫畫,生動的總結了Dantzig、Hotelling和馮·諾依曼的這段往事。漫畫主角是《花生漫畫》(Peanuts)人物Linus(萊納斯),他攥著小毯子,吮吸著大拇指,擺出他的經典造型。配圖文字寫道:「幸福就是假設世界是線性的。」——《迷茫的旅行商》
就是在回歸模型裡面,如果一個非線性回歸的準確度比線性回歸高一點點,但是複雜度高很多,我們仍然選擇後者。原因無他,第一是總的代價低,第二是容易解釋,第三是容易使用。
邏輯應該是這樣:
線性能夠解決問題——使用線性——線性規劃被廣泛使用;
線性不能解決問題——嘗試以二次函數建模——二次函數能夠解決問題——使用二次函數——二次函數用於規劃的方法成為主流。
推薦閱讀:
※夢裡有沒有顏色?
※物理算玄學嗎?
※以下九張圖分別是什麼?我知道有的是水晶,有的是碧璽,怎麼區分呢?
※人以外的其他動物有自尊嗎?
※除了靈長類以外,還有哪些高智商動物?