跳轉到

1696 最速降線問題:Johann Bernoulli 的公開挑戰與變分法的誕生#

案發現場#

1696 年 6 月,Johann Bernoulli 在《Acta Eruditorum》上發表了一篇挑战全歐洲數學家的公開信。他在信中提出了後世稱為最速降線(brachistochrone)問題的難題:

設有兩個不在同一鉛直線上的定點 A 與 B,一顆珠子在重力作用下從 A 沿某曲線滑到 B(不計摩擦)。問:沿什麼樣的曲線滑下,所需時間最短?

注意這問題的狡猾之處:直線是兩點間距離最短的路徑,但距離最短不等於時間最短——如果曲線先陡降以快速累積速度,再平緩滑行,總時間可能更短。直覺在這裡失效了,必須靠數學。

Johann 的挑戰書本身就充滿火藥味:他點名了當時歐洲最傑出的數學家——Leibniz、牛頓(Newton)、他自己的哥哥 Jacob Bernoulli、法國的 l'Hôpital——並宣稱「少數能解此題者將享有盛名」。當時牛頓已年過半百、退出數學前沿多年,在鑄幣局任職。這道題不僅是數學難題,更是一場新舊勢力的對決:以 Leibniz-Bernoulli 為首的大陸微積分學派,能否擊敗隱居多年的微積分發明人?

這個問題為何重要?因為它不是「求函數的極值」,而是「求曲線(即函數本身)的極值」——極值的對象從數字升級為函數。這是一個全新的數學門類的入場券:變分法(calculus of variations)。

偵查過程#

第一步:把滑落時間寫成泛函#

設曲線為 \(y(x)\) ,A 點為原點 \((0, 0)\) ,B 點為 \((x_B, y_B)\) ( \(y\) 向下為正)。由能量守恆,珠子滑到高度 \(y\) 時的速度為:

\[ v = \sqrt{2gy} \]

弧長微元 \(ds = \sqrt{1 + (y')^2}\, dx\) ,故總滑落時間為:

\[ T[y] = \int_0^{x_B} \frac{\sqrt{1 + (y')^2}}{\sqrt{2gy}}\, dx \]

這不是普通的積分——被積函數依賴於整個函數 \(y(x)\) 及其導數 \(y'(x)\) 。這樣的對象今日稱為泛函(functional)。問題是:在所有連接 A、B 的曲線中,哪一條使 \(T[y]\) 最小?

第二步:Johann 的關鍵靈感——光學類比#

Johann Bernoulli 的靈感來自一個看似無關的領域:幾何光學。Fermat 原理說:光線在介質中傳播時走時間最短的路徑。若光在速度為 \(v(y) = \sqrt{2gy}\) 的分層介質中傳播,其路徑就應該是最速降線!這個類比一口氣把力學問題翻譯成了光學問題,揭示了「時間極小化」是跨越物理領域的普適原理。

由 Snell 定律(折射定律的推廣形式),分層介質中的光線滿足:

\[ \frac{\sin\alpha}{v} = \text{常數} \]

其中 \(\alpha\) 是路徑切線與鉛直線的夾角。代入 \(v = \sqrt{2gy}\) :

\[ \frac{\sin\alpha}{\sqrt{2gy}} = \frac{1}{c} \quad\Rightarrow\quad y\, c^2 = 2g\, \sin^2\alpha \cdot \frac{c^2}{2g}\,(\cdots) \quad\Rightarrow\quad \frac{\sin^2\alpha}{y} = k \]

第三步:解微分方程——擺線現身#

設 \(\sin^2\alpha = \frac{1}{1 + (dx/dy)^2} \cdot \left(\frac{ds}{dy}\right)^2 /(\cdots)\) 。由幾何關係 \(\sin\alpha = dx/ds\) ,故:

\[ \frac{(dx/ds)^2}{y} = k \quad\Rightarrow\quad \left(\frac{dx}{ds}\right)^2 = ky \]

利用 \(\left(\frac{dx}{ds}\right)^2 + \left(\frac{dy}{ds}\right)^2 = 1\) ,得 \(\left(\frac{dy}{ds}\right)^2 = 1 - ky\) 。設 \(y = \frac{\sin^2\theta}{k}\) (參數代換),則 \(dy = \frac{2\sin\theta\cos\theta}{k}d\theta\) ,於是:

\[ ds = \frac{dy}{\sqrt{1-ky}} = \frac{2\sin\theta\cos\theta/k}{\cos\theta}\, d\theta = \frac{2\sin\theta}{k}\, d\theta \]

再積分求 \(x\) :

\[ dx = \sqrt{ds^2 - dy^2} = \frac{2\sin^2\theta}{k}\, d\theta \quad\Rightarrow\quad x = \frac{\theta - \sin\theta\cos\theta}{k} + C = \frac{2\theta - \sin 2\theta}{2k} + C \]

令 \(a = \frac{1}{2k}\) ,得到:

\[ x = a(2\theta - \sin 2\theta) + C, \qquad y = a(1 - \cos 2\theta) \]

這正是擺線的參數式!與哥哥 Jacob 在等時曲線中發現的曲線(見 1690-JacobBernoulli等時曲線.md)是同一條——最速降線就是擺線,這條曲線身兼兩個驚人性質。

第四步:牛頓的匿名解答#

1697 年 1 月 29 日,牛頓收到朋友的信轉交的挑戰書。據傳他在一個晚上之內解出了問題,第二天以匿名方式寄出解答。Johann Bernoulli 收到後一眼認出作者,留下了那句著名的話:

「從爪子的印跡,我認出了那頭獅子。」(tanquam ex ungue leonem)

牛頓的解法用的是純幾何與古典方法,未發表;而 Johann 與 Jacob 的解法則公開且以微積分為基礎。最終《Acta Eruditorum》於 1697 年 5 月刊出了五位解答:牛頓、Leibniz、Johann、Jacob 與 l'Hôpital。

第五步:Jacob 的解法與 Euler-Lagrange 方程之源#

Johann 的光學類比雖然優美,卻有依賴「猜出答案再驗證」之嫌。Jacob 的解法更具系統性:他把曲線分為無窮多小段,考慮對相鄰小段的變動對總時間的影響,透過「一階變動為零」的條件推導出曲線必須滿足的微分方程。這種「對函數做虛擬變動、令一階變動為零」的思想,正是變分法的核心。

半世紀後,Euler 將 Jacob 的思路徹底系統化,於 1744 年出版《Methodus inveniendi lineas curvas》,給出泛函極值的必要條件——對一般泛函

\[ J[y] = \int_a^b F(x, y, y')\, dx \]

極值曲線必須滿足:

\[ \frac{\partial F}{\partial y} - \frac{d}{dx}\frac{\partial F}{\partial y'} = 0 \]

這就是Euler-Lagrange 方程。以本題驗證: \(F = \sqrt{1+(y')^2}/\sqrt{2gy}\) 不顯含 \(x\) ,由 Beltrami 恆等式(Euler-Lagrange 方程的首次積分):

\[ F - y'\frac{\partial F}{\partial y'} = \text{常數} \quad\Rightarrow\quad \frac{1}{\sqrt{2gy}\sqrt{1+(y')^2}} = \text{常數} \quad\Rightarrow\quad \frac{1 + (y')^2}{y} = \text{常數} \]

這與 Johann 由光學類比推出的微分方程完全一致!兩條獨立的路徑匯於同一方程、同一擺線。

結案報告#

謎題就此告破:最速降線是擺線,且全歐洲最頂尖的數學家(含隱居的牛頓)都獨立得到了同一答案。

此案的遺產是五篇之中最豐厚的:

  1. 變分法誕生。從 Jacob 的「相鄰變動」思路到 Euler 的系統化、再到 Lagrange 於 1755 年(年僅 19 歲)給出的純分析形式( \(\delta\) 運算),變分法在半世紀內成形,成為處理「函數極值」問題的普适工具。等時曲線(1690-JacobBernoulli等時曲線.md)、懸鏈線、測地線等問題從此有了統一框架。
  2. Euler-Lagrange 方程成為數學物理的基石。Lagrange 於 1788 年的《Mécanique analytique》將整個力學建立在變分原理之上;二十世紀的量子場論、廣義相對論(測地線方程、Einstein-Hilbert 作用量)皆以此為語言。
  3. 牛頓時代的落幕與大陸學派的崛起。牛頓的匿名解答證明寶刀未老,但也宣告這是他最後一次重返數學前沿。此後歐陸微積分學派(Bernoulli、Euler、Lagrange)主導了十八世紀。
  4. 公開挑戰文化的巔峰。從 Jacob 的文末挑戰、Leibniz 與 Jacob 的書信競爭(1695-Bernoulli方程.md)到 Johann 的全歐挑戰,「以公開難題推動進步」的模式達到頂峰,二十世紀的 Hilbert 23 問題、千禧年大獎難題皆其苗裔。

最速降線與等時曲線同為擺線,這個巧合讓擺線贏得了「幾何學中的海倫」(Helen of geometry)之稱——一條引發無數紛爭、卻也催生變分法的曲線。

證據與工具#

以下 Python 程式比較珠子沿直線與擺線滑落的時間:

import numpy as np
from scipy.integrate import quad

g = 9.8
A = (0.0, 0.0)                 # 出發點
B = (2.0, 1.0)                 # 終點

# 直線滑落時間
def line_time():
    x0, y0 = A; x1, y1 = B
    L = np.hypot(x1-x0, y1-y0)
    # v 隨滑行距離線性增加:v = sqrt(2g*y) = sqrt(2g*s*sinθ)
    th = np.arctan2(y1-y0, x1-x0)
    f = lambda s: 1/np.sqrt(2*g*s*np.sin(th)+1e-15)
    T, _ = quad(f, 1e-12, L)
    return T

# 擺線滑落時間:找參數 a 與相位使擺線過 A、B
# x = a(2θ - sin2θ), y = a(1 - cos2θ)(y 向下為正)
from scipy.optimize import brentq

def cycloid_params():
    # 由 y_B/x_B 比值找終點的 θ 值(方程 (2θ-sin2θ)/(1-cos2θ) = x_B/y_B)
    r = B[0]/B[1]
    f = lambda th: (2*th - np.sin(2*th))/(1 - np.cos(2*th)) - r
    thB = brentq(f, 1e-6, np.pi - 1e-6)
    a = B[1]/(1 - np.cos(2*thB))
    return a, thB

def cycloid_time():
    a, thB = cycloid_params()
    # 弧長微元 ds = 2a sin(θ)dθ,v = sqrt(2g y) = sqrt(2ga(1-cos2θ)) = sqrt(4ga sin²θ)
    # 故 dt = 2a sinθ dθ / (2 sqrt(ga) sinθ) = sqrt(a/g) dθ  ← 常數!
    T = np.sqrt(a/g) * thB
    return T

t_line = line_time()
t_cyc  = cycloid_time()
print(f"直線滑落時間: {t_line:.6f} 秒")
print(f"擺線滑落時間: {t_cyc:.6f} 秒")
print(f"擺線比直線快: {t_line - t_cyc:.6f} 秒(約 {(1-t_cyc/t_line)*100:.1f}%)")

a, thB = cycloid_params()
print(f"擺線參數 a = {a:.4f},終點相位 θ = {thB:.4f}")
# 觀察:擺線確實比直線快 → 最速降線是擺線,Johann Bernoulli 的答案是對的

執行後可見:沿擺線滑下的時間明顯短於直線——這就是 Johann Bernoulli 於 1696 年向全歐洲揭曉、牛頓於一夕之間破解的謎底。