非線性系統

在物理科學中，如果描述某個系統的方程其輸入（自變數）與輸出（應變數）不成正比，則稱為非線性系統。由於自然界中大部分的系統本質上都是非線性的，因此許多工程師、物理學家、數學家和其他科學家對於非線性問題的研究都極感興趣。非線性系統和線性系統最大的差別在於，非線性系統可能會導致混沌、不可預測，或是不直觀的結果。

一般來說，非線性系統的行為可以用一組非線性聯立方程來描述。非線性方程裡含有由未知數構成的非線性函數；換句話說，一個非線性方程並不能寫成其未知數的線性組合。非線性微分方程，則是指方程裡含有未知函數及其導函數的乘冪不等於一的項。在判定一個方程是線性或非線性時，只需考慮未知數（或未知函數）的部分，不需要檢查方程中是否有已知的非線性項。例如在微分方程中，若所有的未知函數、未知導函數皆為一次，即使出現由某個已知變數所構成的非線性函數，仍稱它是線性微分方程。

由於非線性方程非常難解，因此常常需要以線性方程來近似一個非線性系統（線性近似）。這種近似對某範圍內的輸入值（自變數）是很準確的，但線性近似之後反而會無法解釋許多有趣的現象，例如孤波、混沌和奇點。這些奇特的現象，也常常讓非線性系統的行為看起來違反直覺、不可預測，或甚至混沌。雖然「混沌的行為」和「隨機的行為」感覺很相似，但兩者絕對不能混為一談；也就是說，一個混沌系統的行為絕對不是隨機的。

舉例來說，許多天氣系統就是混沌的，微小的擾動即可導致整個系統產生各種不同的複雜結果。就目前的科技而言，這種天氣的非線性特性即成了長期天氣預報的絆腳石。

某些書的作者以非線性科學來代指非線性系統的研究，但也有人不以為然：

「在科學領域裡使用『非線性科學』這個詞，就如同把動物學裡大部分的研究對象稱作『非大象動物』一樣可笑。」

## 定義

在數學上，一個線性函數（映射）$f(x)$ 擁有以下兩個性質：

- 疊加性：$\textstyle f(x + y)\ = f(x)\ + f(y)$。
- 齊次：$\textstyle f(\alpha x)\ = \alpha f(x)$。

在 α 是有理數的情況下，一個可疊加函數必定是齊次函數（在討論線性與否時，齊次函數專指一次齊次函數）；若 $f(x)$ 是連續函數，則只要 α 是任意實數，就可以從疊加性推出齊次。然而在推廣至任意複數 α 時，疊加性便再也無法導出齊次了。也就是說，在複數的世界裡存在一種反線性映射，它滿足疊加性，但卻非齊次。疊加性和齊次這兩個條件常會被合併在一起，稱之為疊加原理：

$f(\alpha x + \beta y) = \alpha f(x) + \beta f(y) \,$。

對於一個表示為

$$f(x) = C\,$$

方程，如果 $f(x)$ 是一個線性映射，則稱為線性方程，反之則稱為非線性方程。另外，如果 $C = 0$，則稱此方程齊次（齊次在函數和方程上的定義不同，齊次方程指方程內沒有和 x 無關的項 C，即任何項皆和 x 有關）。

這裡 $f(x) = C$ 的定義是很一般性的，$x$ 可為任何數字、向量、函數等，而 $f(x)$ 可以指任意映射，例如有條件限制（給定初始值或邊界值）的微分或積分運算。如果 $f(x)$ 內含有對 $x$ 的微分運算，此方程即是一個微分方程。

## 非線性代數方程

代數方程又稱為多項式方程。令某多項式等於零可得一個多項式方程，例如：

$x^2 + x - 1 = 0\,$。

利用勘根法可以找出某個代數方程的解；但若是代數方程組則較為複雜，有時候甚至很難確定一個代數方程組是否具有複數解（見希爾伯特零點定理）。即使如此，對於一些具有有限個複數解的多項式方程組而言，我們已經找到解的方法，並且也已充分了解這種系統的行為。代數方程組的研究是代數幾何裡重要的一環，而代數幾何正是現代數學裡的其中一個分枝。

## 非線性遞迴關係

若將一個序列前項和後項之間的關係定義成某個非線性映射，則稱為非線性遞迴關係，例如單峰映射和。由非線性遞迴關係構成的非線性離散模型，在實際應用中包括 NARMAX（Nonlinear AutoRegressive Moving Average with eXogenous inputs，外部輸入非線性自迴歸移動平均）模型、非線性系統辨識和分析程序等。這些方法可以用來分析時域、頻域和時空域（spatio-temporal domains）裡複雜的非線性行為。

## 非線性微分方程

若描述一個系統的微分方程是非線性的，則稱此系統為非線性系統。含有非線性微分方程的問題，系統彼此間的表現差異極大，而每個問題的解法或是分析方法也都不一樣。非線性微分方程的例子如流體力學的納維-斯托克斯方程，以及生物學的洛特卡－沃爾泰拉方程。

解非線性問題最大的難處在於找出未知的解：一般來說，我們無法用已知的解來拼湊出其他滿足微分方程的未知解；而在線性的系統裡，卻可以利用一組線性獨立的解，透過疊加原理組合出此系統的通解。例如滿足狄利克雷邊界條件的一維熱傳導問題，其解（時間的函數）可以寫成許多不同頻率之正弦函數的線性組合，而這也讓它的解很彈性、具有很大的變化空間。通常我們可以找到非線性微分方程的特解，但由於此時疊加原理並不適用，故無法利用這些特解來建構出其他新的解。

### 常微分方程

一階常微分方程常常可以利用分離變數法來解，特別是自守方程

$\frac{d u}{d x} = f(u)\,$。

例如

$$\frac{d u}{d x} = -u^2\,$$

這個方程式的通解為 $u=\frac{1}{x+C}$，特解為 u = 0（即通解在 C 趨近於無限大時的極限）。此方程是非線性的，因為它可以被改寫為

$\frac{du}{d x} + u^2=0\,$。

而等號左邊並不是 u 的線性映射。若把此式的 u2 換成 u，則會變成線性方程（指數衰減）。

二階和高階非線性常微分方程組的解幾乎無法表示成解析解，反而較常表為隱函數或非初等函數積分的形式。

分析常微分方程常用的方法包括：

- 檢查是否有任何守恆量（特別是在處理哈密頓系統的時候）。
- 檢查有沒有類似守恆量的耗散量（見李亞普諾夫函數）。
- 利用泰勒展開式作線性近似。
- 利用變數變換法，改寫成較易分析的方程。
- 分岔理論。
- 微擾法（也可應用在代數方程上）。

### 偏微分方程

研究非線性偏微分方程最常見也最基礎的方法就是變數變換，變換以後的方程會較簡單，甚至有可能會變成線性方程。有時候，變數變換後的方程可能會變成一個或兩個以上的常微分方程（如同用分離變數法解偏微分方程），不管這些常微分方程可不可解，都能幫助我們了解這個系統的行為。

另一個流體力學和熱力學裡常用的方法（但數學性較低），是利用尺度分析來簡化一個較一般性的方程，使它僅適用在某個特定的邊界條件上。例如，在描述一個圓管內一維層流的暫態時，我們可以把非線性的納維-斯托克斯方程簡化成一個線性偏微分方程；這時候尺度分析提供了兩個特定的邊界條件：一維和層流。

其他分析非線性偏微分方程的方法還有特徵線法，以及上述分析常微分方程時常用的方法。

### 單擺

非線性問題的一個典型的例子，就是重力作用之下單擺的運動。單擺的運動可由以下的方程來描述（用拉格朗日力學可以證明）：

$\frac{d^2 \theta}{d t^2} + \sin(\theta) = 0\,$。

這是一個非線性且無因次的方程，$\theta$ 是單擺和它靜止位置所夾的角度，如動畫所示。此方程的一個解法是將 $\frac{d\theta}{dt}$ 視為積分因子，積分以後得

$\int{\frac{d \theta}{\sqrt{C_0 + 2 \cos(\theta)}}} = t + C_1\,$。

上述的解是隱解的形式，同時也包含了橢圓積分。這個解通常沒有什麼用，因為非初等函數積分（即使 $C_0 = 0$ 仍然是非初等函數）把解的各種特性隱藏了起來，使我們不易看出單擺系統的行為。

另一個解法是把這個非線性方程作線性近似：利用泰勒展開式將非線性的 sine 函數線性化，並在某些特定的點附近討論解的情形。例如，若在 $\theta = 0$ 的點附近作線性近似（又稱小角度近似），$\theta \approx 0$ 時，$\sin(\theta) \approx \theta$，故原方程可以改寫為

$\frac{d^2 \theta}{d t^2} + \theta = 0\,$。

近似後的方程變成了簡諧振盪，因此當單擺運動到底部附近時，可以對應到一個簡諧振子。而若在 $\theta = \pi$（即當單擺運動到圓弧的最高點時）附近作線性近似，$\sin(\theta) = \sin(\pi - \theta) \approx \pi - \theta$，故原方程可以改寫為

$\frac{d^2 \theta}{d t^2} + \pi - \theta = 0\,$。

這個方程的解含有雙曲正弦函數，因此和小角度近似不同，這個近似是不穩定的，也就是說 $|\theta|$ 會無限制地增加（但此近似方程的解也可能是有界的）。當我們把解對應回單擺系統後，就可以了解為什麼單擺在圓弧的最高點時不能達到穩定平衡，也就是說，單擺在最高點時是不穩定的狀態。

另一個有趣的線性近似是在 $\theta = \frac{\pi}{2}$ 附近，此時 $\sin(\theta) \approx 1$，故原方程可以改寫為

$\frac{d^2 \theta}{d t^2} + 1 = 0\,$。

這個近似後的方程可以對應到自由落體。

若把以上線性近似的結果合在一起看，就能大致了解單擺的運動情形。利用其他解非線性微分方程的方法，可以進一步幫助我們找到更精確的相圖，或是估算單擺的週期。

## 非線性表現（列舉）

- 古典混沌（和量子混沌相對）—— 指系統裡無法預測的行為。
- 多穩態 —— 指系統在兩個或多個互斥的狀態之間切換。
- 非周期振盪 —— 指一個函數在任何周期上都不會固定重複其函數值（也稱作混沌振盪）。
- —— 指系統內的某振盪因系統的自回饋或受其他系統影響而停止的現象。
- 孤波 —— 指行進中能自我增強而不消散的孤立波。

## 非線性方程（列舉）

- 代數黎卡提方程
- 最佳策略的貝爾曼方程
- 波茲曼方程
- 廣義相對論
- 金茲堡－朗道方程
- 流體力學的納維－斯托克斯方程
- KdV 方程
- 非線性光學
- 未飽和層水流的
- Sine-Gordon 方程
- 朗道-利夫希茲-吉爾伯特方程
- 范德波爾方程

## 分析非線性系統

- interalg —— OpenOpt 和 FuncDesigner 架構下的求解器，可用來檢查一個非線性代數方程系統是否有任何解，或甚至找出其所有解。
- 非線性模型及其模擬展示（連結至蒙納許大學的虛擬實驗室）
- FyDiK —— 可模擬非線性動態系統的軟體。

## 外部連結

- 命令與控制研究計畫（Command and Control Research Program, CCRP）
- 新英格蘭複雜系統研究所 —— 複雜系統的概念（Concepts: Linear and Nonlinear）
- 麻省理工開放式課程 —— 非線性動力學一：混沌（Nonlinear Dynamics I: Chaos）
- 非線性模型 —— 物理系統的非線性模型資料庫（MATLAB）
- 洛斯阿拉莫斯國家實驗室的 非線性研究中心（The Center for Nonlinear Studies）