中位數定理遇上二次函數:絕對值和的最小值問題全解
中位數定理告訴我們 Σ|x-a_i| 在中位數處最小,但混進二次項或二次絕對值後,這個定理還適用嗎?本文從一道例題出發,推廣出完整框架:加權中位數、被二次項修正的中位數,直到必須分段處理的一般情形。
《中位數定理系列》:①絕對值與中位數定理 | ②遇上二次函數
一道看起來要分三段討論的題目
求下面這個函數的最小值:
\[f(x)=\left|x^2+x+1\right|+|x-2|+|x+3|\]如果照標準流程,遇到絕對值就要先找出每一項變號的位置,再分段拆開討論——這題有一個二次項和兩個一次項,聽起來要分成好幾段硬算。但這題其實藏著一個捷徑:如果你讀過上一篇的中位數定理,這題可以幾乎不用分段就秒殺。問題是:中位數定理明明是處理 $\sum\lvert x-a_i\rvert$ 這種純距離和的工具,為什麼可以用在一個混了二次項的式子上?
這篇文章要做的,就是把這個問題想清楚,並且把中位數定理推廣成一套完整的框架。
複習:中位數定理背後的「斜率視角」
上一篇已經完整證明過,給定 $n$ 個定點 $r_1,r_2,\ldots,r_n$,
\[G(x)=\sum_{i=1}^n|x-r_i|\]在這些點的中位數處最小(偶數個資料時,中間整段區間都是最小值)。背後的原理是:$G(x)$ 是一個分段一次函數,每越過一個 $r_i$,斜率就跳動 $2$;用微分語言寫成
\[G'(x)=\#\{r_i<x\}-\#\{r_i>x\}\]中位數定理的本質,就是
\[\boxed{G'(x)=0\quad\Longleftrightarrow\quad\text{左邊點數}=\text{右邊點數}}\]這個「斜率視角」比死記「中位數最小」更有用,因為它可以直接推廣——這篇文章要做的,就是把二次項也接進這套斜率語言裡。
正式推導:從加權中位數到被二次項修正的中位數
加上權重:加權中位數
如果每一項前面多一個正權重,
\[F(x)=\sum_{i=1}^nw_i|x-r_i|\]同樣的論證給出
\[F'(x)=\sum_{x>r_i}w_i-\sum_{x<r_i}w_i\]令它等於零,就是左側總權重等於右側總權重的點——這正是統計學裡的加權中位數,是純中位數定理最自然的第一步推廣。
加上一個凸二次項:中位數被「彈簧」拉走
現在考慮這篇文章真正要處理的類型:
\[F(x)=A(x-h)^2+\sum_{i=1}^nw_i|x-r_i|,\qquad A>0\]$A(x-h)^2$ 這一項不再是距離和,而更像是一根固定在 $x=h$ 的彈簧:只要 $x$ 偏離 $h$,就會產生一個把它拉回 $h$ 的力,力的大小跟偏移量成正比。
對 $F$ 微分(假設 $x$ 落在相鄰兩個斷點 $r_k<x<r_{k+1}$ 之間,這時所有絕對值符號都已固定):
\[F'(x)=2A(x-h)+W_L-W_R\]其中 $W_L=\sum_{i\le k}w_i$、$W_R=\sum_{i>k}w_i$ 分別是左、右兩側的總權重。令 $F’(x)=0$:
\[\boxed{x=h+\frac{W_R-W_L}{2A}}\]只要這個 $x$ 真的落在 $(r_k,r_{k+1})$ 內,它就是全域最小點。這個公式非常漂亮:如果左右權重相等($W_L=W_R$),修正項是零,最小點就精確落在 $h$;否則,二次項這根「彈簧」會把純中位數的答案推向 $h$,推的量正比於左右權重差、反比於彈簧硬度 $A$。
因為 $A(x-h)^2$ 與每一項 $\lvert x-r_i\rvert$ 都是凸函數,$F$ 是嚴格凸函數的和,所以最小點必定存在且唯一——這保證了上面的推導不會漏掉其他候選點。
一個特別漂亮的特殊情形
如果 $h$ 本身恰好就落在 $\{r_i\}$ 的加權中位數範圍內,那麼二次項「想要」的位置和距離和「想要」的位置完全一致,兩邊互不拉扯,答案就直接是 $x=h$。這正是本文開頭那道題目發生的事。
回到原題:兩股力量剛好不衝突
先處理二次項。配方:
\[x^2+x+1=\left(x+\frac12\right)^2+\frac34>0\]由於這個式子恆正,絕對值可以直接拿掉:
\[f(x)=\left(x+\frac12\right)^2+\frac34+|x-2|+|x+3|\]現在 $f(x)$ 剛好符合上一節的形式:$A=1$,$h=-\dfrac12$,兩個距離項的定點是 $r_1=-3,r_2=2$(權重都是 $1$)。
距離和 $\lvert x-2\rvert+\lvert x+3\rvert$ 的「中位數區間」是整個 $[-3,2]$(因為只有兩個點,任何介於中間的 $x$ 都讓距離和等於兩點間距 $5$);而二次項偏好的位置是 $x=-\dfrac12$。檢查一下:
\[-\frac12\in[-3,2]\quad\checkmark\]兩股力量的偏好完全相容,於是答案直接是 $x=-\dfrac12$:
\[f\left(-\frac12\right)=0+\frac34+\left(2+\frac12\right)+\left(3-\frac12\right)=\frac34+\frac52+\frac52=\frac34+5=\frac{23}4\] \[\boxed{\min f(x)=\frac{23}4,\quad\text{在}\ x=-\frac12\ \text{時取得}}\]完全不需要分段討論——這正是中位數定理(推廣版)省下的計算量。
這個推廣有極限:二次項一旦被絕對值包住,凸性就可能消失
前面的推廣有一個隱藏前提:二次項本身沒有被絕對值包住(或者被包住後判別式 $\Delta\le0$,使它恆正,絕對值可以直接拿掉)。一旦二次項也被絕對值包住、而且判別式 $\Delta>0$,故事就完全不同了。
考慮最簡單的例子:
\[|x^2-1|\]因為 $x^2-1$ 在 $x=\pm1$ 變號,展開後是
\[|x^2-1|= \begin{cases} x^2-1,&x\le-1\ \text{或}\ x\ge1\\[4pt] 1-x^2,&-1\le x\le1 \end{cases}\]中間那一段是開口向下的拋物線!所以 $\lvert x^2-1\rvert$ 在 $x=0$ 反而有一個局部最大值 $1$,而不是最小值。這說明:
\[\boxed{|\text{一次函數}|\ \text{恆為凸函數;}\qquad|\text{二次函數}|\ \text{未必是凸函數}}\]中位數定理背後的「凸函數保證存在唯一最小點」這個前提,在這裡不成立了。
一般情形怎麼辦?分段仍然是萬能的
即使凸性保證失效,還是有一個對任意一次、二次函數絕對值和都適用的通解策略。考慮
\[F(x)=\sum_i|a_ix+b_i|+\sum_j|A_jx^2+B_jx+C_j|\]每個一次式最多貢獻一個變號點(斷點),每個二次式最多貢獻兩個。把所有斷點 $c_1<c_2<\cdots<c_m$ 找出來,在任意兩個相鄰斷點之間,所有絕對值裡面的符號都已固定,於是整個 $F(x)$ 在該區間內就是一個普通的二次函數。
因此:
\[\boxed{\text{全域最小值一定出現在「斷點」,或「某個區間內凸二次段的頂點」}}\]例: 求 $F(x)=\lvert x^2-1\rvert+\lvert x-3\rvert$ 的最小值。斷點為 $-1,1,3$,分成四段:
| 區間 | 化簡後 | 頂點 | 頂點落在區間內? |
|---|---|---|---|
| $x<-1$ | $x^2-x+2$(開口向上) | $x=\tfrac12$ | 否 |
| $-1<x<1$ | $4-x-x^2$(開口向下) | — | 無最小值候選 |
| $1<x<3$ | $x^2-x+2$(開口向上) | $x=\tfrac12$ | 否 |
| $x>3$ | $x^2+x-4$(開口向上) | $x=-\tfrac12$ | 否 |
所有頂點都不落在對應區間內,所以只需要比較三個斷點:
\[F(-1)=4,\qquad F(1)=2,\qquad F(3)=8\] \[\boxed{\min F(x)=2,\quad\text{在}\ x=1\ \text{取得}}\]完全不用碰微分,只靠「列出斷點、逐段化簡、比較候選點」就解完了——這正是分段策略的威力:就算凸性不保證,候選點永遠是有限個。
總結:一套四層的框架
| 層級 | 函數形式 | 核心工具 | 保證 |
|---|---|---|---|
| 1. 純距離和 | $\sum|x-r_i|$ | 中位數 | 一定凸,最小點是中位數 |
| 2. 加權距離和 | $\sum w_i|x-r_i|$ | 加權中位數 | 一定凸,左右權重平衡 |
| 3. 凸二次 + 距離和 | $A(x-h)^2+\sum w_i|x-r_i|,\ A>0$ | 「彈簧修正」的中位數:$x=h+\dfrac{W_R-W_L}{2A}$ | 一定凸,最小點唯一 |
| 4. 一般一次、二次絕對值和 | $\sum|a_ix+b_i|+\sum|A_jx^2+B_jx+C_j|$ | 找出所有斷點,逐段化簡比較 | 不保證凸,但候選點恆為有限個 |
中位數定理從來不是一個孤立的小技巧,而是這整套「距離和最佳化」理論裡最簡單的第一層。往上疊加二次項時,只要保持凸性,中位數定理就能優雅地推廣;一旦二次項也被絕對值包住、失去凸性保證,退回最原始的「分段比較」反而是最可靠的路。
給對代數最佳化有興趣的讀者: 純距離和最小化 $\min_x\sum\lvert x-r_i\rvert$ 對應統計學裡的 $L^1$ 損失最小化(中位數正是 $L^1$ 損失下的最佳估計量),而 $\min_x\sum(x-r_i)^2$ 則對應 $L^2$ 損失最小化(答案是平均數)。本文第三層的 $A(x-h)^2+\sum w_i\lvert x-r_i\rvert$,正是 $L^2$ 與 $L^1$ 兩種偏好同時存在的最佳化問題——這正是機器學習中 Lasso 迴歸、Huber loss 等方法背後的數學結構。