多元最佳化

無約束最佳化(unconstrained optimization)

想像一片由山丘和谷地構成的地貌,每一點 (x, y) 處的高度由函數 f 給出。無約束最佳化就是要找出這片曲面的最高峰和最低谷,而你可以自由地站在任何地方——沒有圍欄,沒有必須沿著走的曲線,也沒有必須遵守的預算。變數可以在整個空間(或某個開區域)裡遊走,你只需問 f 在哪裡最大、在哪裡最小。

關鍵工具是梯度,即偏導數構成的向量 (df/dx, df/dy, ...)。在光滑的內部峰或谷處,曲面局部是平的,於是每個偏導數都為零:梯度消失。求解 grad f = 0 找出候選點,稱為駐點或臨界點。要進一步判斷某候選點是極大、極小還是兩者皆非,就看匯集二階導數的黑塞矩陣,檢驗它的定性——這正是一元二階導數判別法的多元版本。

這種最佳化支撐著曲線擬合、統計中的極大似然估計、物理與化學中的能量最小化,以及機器學習模型的訓練。一個誠實的提醒:grad f = 0 只能定位內部駐點。真正的全域最優可能落在區域的邊界上,或跑向無窮,或者當 f 無界時根本不存在。令梯度為零是內部最優的必要條件,但並不足以保證最優存在。

求 f(x, y) = x^2 + y^2 - 2x - 4y 的極小。梯度為 (2x - 2, 2y - 4);令其為零得 x = 1, y = 2。黑塞矩陣是常數矩陣 [2, 0; 0, 2],正定,故 (1, 2) 是唯一的極小點,f = -5。

兩步走:令梯度為零找出候選點,再讀黑塞矩陣來分類。

梯度為零並不意味著找到了最優——它可能是鞍點,曲面在一個方向上升、在另一個方向下降。要確定,總得做二階判別。

又稱
free optimization无约束极值無約束極值