一个“神来之笔”的换元?
问题:若实数 \(x,y\) 满足 \(x^2+4y^2-2xy=36\),求 \(x^2+3y^2-xy\) 的取值范围。
这个问题比较平凡,使用拉格朗日乘数法可以很机械地解决它。
拉格朗日乘数法
记 \(f(x,y)=x^2+4y^2-2xy-36,g(x,y)=x^2+3y^2-xy\), 我们要求 \(\nabla g\) 是 \(\{\nabla f\}\) 的张成空间的元素,在二元的情况下,即
\[\nabla f\times \nabla g=0 \]这样,我们可以省略乘数带来的未知数,联立 \(f=0\),得到:
\[\begin{cases}x^2+4y^2-2xy-36=0\\(2x-2y)(-x+6y)-(-2x+8y)(2x-y)=0\end{cases} \]这个方程有四组解,分别是
\[\begin{aligned}&\left\{x\to\sqrt {2}\left (\sqrt{3} - 3 \right),y\to\sqrt {6} \right\}, \\&\left\{x\to 2\sqrt {6 - 3\sqrt {3}},y\to - \sqrt {6} \right\}, \\&\left\{x\to - 2\sqrt {3\left (\sqrt {3} + 2 \right)}, y\to - \sqrt {6}\right\}, \\&\left\{x\to 2\sqrt {3\left (\sqrt {3} + 2 \right)}, y\to\sqrt {6} \right\}\end{aligned} \]分别带入 \(g\) 中,得到最小值和最大值分别为 \(36-6 \sqrt3\) 与 \(36+6\sqrt3\)。
但是,可以发现,这个问题使用拉格朗日乘数法涉及到复杂的计算,不借助计算机求解这种非退化的二元二次方程十分痛苦。
我偶然得到了一种更加有趣的做法,它(看似)可以在高中数学的框架下解决这个问题:首先令 \(u=x-y,v=\sqrt3y\),于是
\[x=u+\frac{v}{\sqrt3},y=\frac{v}{\sqrt3} \]代入 \(x^2+4y^2-2xy=36\),即
\[\left(u+\frac{v}{\sqrt3}\right)^2+\left(\frac{v}{\sqrt3}\right)^2-2\left(u+\frac{v}{\sqrt3}\right)\left(\frac{v}{\sqrt3}\right)=36 \]化简得到 \(u^2+v^2=36\),于是进一步换元,则
\[u=6\cos\theta,v=6\sin\theta \]代回所求 \(x^2+3y^2-xy\),得到 \(u^2+v^2+\frac1{\sqrt3}uv\),进一步可得 \(36+12\sqrt3\sin\theta\cos\theta\),考虑到 \(\sin2\theta=2\sin\theta\cos\theta\),故最终可得,所求式子由
\[36+6\sqrt3\sin2\theta \]给出。显然这个式子的取值范围为 \([36-6\sqrt3,36+6\sqrt3]\)。
这个做法中大部分都是十分平凡的,最后的化简看似取巧,其实即使不能简单化为单个 \(\sin2\theta\),也可以对式子关于 \(\theta\) 求导来分析其最值。这个做法最引人注意的是开头那看似“神来之笔”的换元“令 \(u=x-y,v=\sqrt3y\)”,这是如何得到的?
二次型
上面做法的第一次换元的目的,是将 \(xy\) 项消除,并留下系数相同的 \(x^2\) 项和 \(y^2\) 项,以方便进一步换元。
其中的奥妙在于,从几何上来看,原式 \(x^2+4y^2-2xy=36\) 可以看做一个椭圆,而换元的过程,就是将这个椭圆在一个线性变换后,变为一个正圆 \(x^2+y^2=36\)。
我们使用二次型来刻画这一点,记向量 \(\mathbf{v}=[x\quad y]\)(注意粗体的字母表示向量,和上文的斜体表示的值不一样),则
\[\mathbf{v}^{\mathsf{T}}A\mathbf{v}=ax^2+2bxy+cy^2 \]其中矩阵 \(A\) 为
\[A=\left[\begin{matrix} a & b\\ b & c \end{matrix}\right]\]那么,所谓换元,就是记向量 \(\mathbf{u}=[u\quad v]\),满足 \(\mathbf{u}=P\mathbf{v}\),其中可逆矩阵 \(P\) 就是换元的系数。于是
\[\begin{aligned}\mathbf{v}^{\mathsf{T}}A\mathbf{v}&=(P^{-1}\mathbf{u})^{\mathsf{T}}A(P^{-1}\mathbf{u})\\&=\mathbf{u}^{\mathsf{T}}\left(P^{-1}\right)^{\mathsf{T}}AP^{-1}\mathbf{u}\\&=\mathbf{u}^{\mathsf{T}}B\mathbf{u}\end{aligned} \]其中矩阵 \(B=\left(P^{-1}\right)^{\mathsf{T}}AP^{-1}\)。我们希望换元后变成正圆,相当于要求 \(B\) 为单位矩阵的倍数,不妨认为 \(B=\mathrm{I}\)(对于是 \(\mathrm{I}\) 的 \(k\) 倍数的情况,只需将换元矩阵除以 \(\sqrt{k}\) 即可),于是相当于有
\[P^{\mathsf{T}}P=A \]只需求出一个满足条件的 \(P\) 即可,在上面的例子中,有
\[\begin{aligned}A&=\left[\begin{matrix} 1 & -1\\ -1 & 4 \end{matrix}\right]\\ P&=\left[\begin{matrix} 1 & -1\\ 0 & \sqrt3 \end{matrix}\right] \end{aligned}\]可以发现,确实有
\[P^{\mathsf{T}}P=\left[\begin{matrix} 1 & 0\\ -1 & \sqrt3 \end{matrix}\right]\left[\begin{matrix} 1 & -1\\ 0 & \sqrt3 \end{matrix}\right]=\left[\begin{matrix} 1 & -1\\ -1 & 4 \end{matrix}\right]=A\]对称矩阵分解与普定理
我们现在把问题转化为了,对于给定的对称矩阵 \(A\), 我们希望找到一个矩阵 $ P $,使得
\[PP^{\mathsf{T}} = A \]注:考虑到对称性,\(PP^{\mathsf{T}}\) 和 \(P^{\mathsf{T}}P\) 是一样的,这里采取前一种是为了与大多数线性代数书中的习惯做法保持一致。
首先,我们将矩阵 \(A\) 进行特征值分解:由于 \(A\) 是对称矩阵,我们可以利用对称矩阵的特征值分解:
\[A = Q \Lambda Q^{-1} \]其中:
- \(Q\) 是一个正交矩阵(即 \(Q^T Q = \mathrm{I}\)),它的列是 \(A\) 的单位特征向量。
- \(\Lambda\) 是一个对角矩阵,包含了 \(A\) 的特征值。
由于 \(Q^T Q = \mathrm{I}\),上式也即
\[A = Q \Lambda Q^{\mathsf{T}} \]我们所求的矩阵 \(P\) 即满足
\[P P^{\mathsf{T}} = Q \Lambda Q^{\mathsf{T}} \]我们可以考虑 \(P\) 的形式为
\[P = Q \sqrt{\Lambda} \]其中 \(\sqrt{\Lambda}\) 是通过对角矩阵 \(\Lambda\) 的每个对角元素取平方根得到的矩阵。
TODO:特征值为负数该怎么办?这可能吗?
现在,我们可以验证 \(P = Q \sqrt{\Lambda}\) 满足 \(P P^{\mathsf{T}} = A\):
\[P P^{\mathsf{T}} = (Q \sqrt{\Lambda})(Q \sqrt{\Lambda})^{\mathsf{T}} = Q \sqrt{\Lambda} \sqrt{\Lambda} Q^{\mathsf{T}} = Q \Lambda Q^{\mathsf{T}} = A \]用 Mathematica 的话说,就是:
a = {{1, -1}, {-1, 4}};
q = Transpose[Normalize /@ Eigenvectors[a]];
lam = DiagonalMatrix[Sqrt[Eigenvalues[a]]];
p = q . d;
(* 验证 *)
Simplify[p . Transpose[p] == a]
待定系数法
上面方法构造的矩阵 \(P\) 并非前文中所使用的矩阵 \(P\),而是一个十分复杂的结果:
\[P=\left[ \begin{matrix} -\frac{1}{2} \sqrt{2+\frac{7}{\sqrt{13}}} \left(\sqrt{13}-3\right) & \frac{1}{2} \sqrt{2-\frac{7}{\sqrt{13}}} \left(\sqrt{13}+3\right) \\ \sqrt{2+\frac{7}{\sqrt{13}}} & \sqrt{2-\frac{7}{\sqrt{13}}} \\ \end{matrix} \right]\]这是一个正确,但过于复杂的构造,事实上,我们也可以简单使用待定系数法来构造矩阵 \(P\),设\(P=[k_1\quad k_2;k_3\quad k_4]\),则 \(PP^{\mathsf{T}} = A\) 相当于
\[\begin{cases} k_1^2+k_2^2=a\\ k_1k_3+k_2k_4=b\\ k_3^2+k_4^2=c \end{cases}\]四个未知数三个方程,可以任取其中一个未知数的值(注意不要使 \(P\) 不可逆),求解剩下三个,这其实并不困难。
齐次化
对于更一般的,形如 \(ax^2+2bxy+cy^2+2dx+2ey+f=0\) 的式子,我们可以通过齐次化来将其转为二次型,即令 \(\mathbf{v}=[x\quad y\quad 1]\),则
\[\mathbf{v}^{\mathsf{T}}A\mathbf{v}=0 \]其中矩阵 \(A\) 为
\[A=\left[\begin{matrix} a & b & d\\ b & c & e\\ d & e & f \end{matrix}\right]\] 标签:right,mathbf,matrix,二次,sqrt,线性代数,mathsf,元法,left From: https://www.cnblogs.com/szdytom/p/18550608