引言
日本語のタイトルを書いても、この文章は主に日本語の内容ではありません。時間があれば追加かもしれません
题目一:本文
题目二:
https://blog.yexca.net/archives/187
题目三:
https://blog.yexca.net/archives/188
最近几年总是会觉得自己在学习上没有任何的收获,尽管自己可能确实听了课程。于是我便想着尝试去做题目 (是的,学习却不做题这种可能不是特别正常的现象会让当时的我觉得很正常,应该是太懒了),结果这一做题目,怎么说呢,做我是不会,搜怎么做我倒是有上过相关课程的印象,于是我几乎是重新学了一遍的同时解完了该题
同时,因为没有参考答案,前三题我用 Python 可以计算出来,答案应该是正确的,但最后两题是证明题,不保证证明是对的
题目
Source:
https://www.i.u-tokyo.ac.jp/edu/entra/examarchive.shtml
题目版权属于东京大学所有,仅为了方便观看而引用,无盈利行为
正方行列 A,B を
A=(120 212 021),B=(0−3231 320−32 −31320)
とする。また、行列 I は単位行列とする。実正方行列 X に対して、exp(X) を
exp(X)=k=0∑∞(k!1Xk)=I+X+2!1X2+3!1X3+⋯
と定義するとき、以下の問いに答えよ。
(1)A の全ての固有値と、それらに対応する固有ベクトルを求めよ。ただし、固有ベクトルとして、ノルムは 1 かつ第一要素は非負実数であるものを選べ。
(2)非負整数 n に対して、An を求めよ。
(3)exp(A) を求めよ。
(4)α を実数とするとき、exp(αB) が次式のように表せることを示せ。
exp(αB)=I+(sinα)B+(1−cos(α))B2
ただし、ケーリー・ハミルトンの定理を用いてもよい。
(5)3 次元実ベクトル a が与えられたとき、3 次元実ベクトル x に関する関数 f を
f(x)=k=1∑nexp(n2πkB)a−x2
とおく。ただし、n≥2 とする。このとき、x=(I+B2)a において f が最小になることを示せ。
第一问
题目: 求出 A 的特征值与特征向量 (特征向量的模为1且第一元素为非负)
根据特征方程 det(A−λI)=0 构造矩阵并计算其行列式。特征方程为
det(A−λI)=1−λ20 21−λ2 021−λ=0
按第一行展开,得
(1−λ)[(1−λ)2−2]−2[2(1−λ)]=0
求解,得
λ1=1,λ2=−1,λ3=3
接下来求每个特征值对应的特征向量,对于 λ1=1
(A−λ1I)=(020 202 020)
解方程 (A−λ1I)v1=0 ,得到特征向量
v1=(1 0 −1)
对于 λ2=−1
(A−λ2I)=(220 222 022)
解方程 (A−λ2I)v2=0 ,得到特征向量
v2=(1 −2 1)
对于 λ3=3
(A−λ3I)=(−220 2−22 02−2)
解方程 (A−λ3I)v3=0 ,得到特征向量
v3=(1 2 1)
对特征值进行归一化,总结
$$
\begin{align*}
特征值&: \lambda_{1}=1, \lambda_{2}=-1, \lambda_{3}=3 \
特征向量&: \mathbf{v}{1}=\frac{1}{\sqrt{2}} \begin{pmatrix}
1 \
0 \
-1
\end{pmatrix},
\mathbf{v}{2}=\frac{1}{2} \begin{pmatrix}
1 \
-\sqrt{2} \
1
\end{pmatrix},
\mathbf{v}_{3}=\frac{1}{2} \begin{pmatrix}
1 \
\sqrt{2} \
1
\end{pmatrix}
\end{align*}
$$
Python 代码
通过 sympy 验算结果
import sympy as sp
# 定义矩阵 A
A = sp.Matrix([[1, sp.sqrt(2), 0],
[sp.sqrt(2), 1, sp.sqrt(2)],
[0, sp.sqrt(2), 1]])
# 计算特征值和特征向量
eigenvals = A.eigenvals() # 特征值
eigenvects = A.eigenvects() # 特征向量
print(f"A 的特征值为")
sp.pprint(eigenvals)
print(f"A 的特征向量为")
sp.pprint(eigenvects)
输出结果如下

第二问
题目: 求 An (n 为非负整数)
根据对角化理论,矩阵 A 可以分解为 A=S−1DS 由第一问可得
$$
S=\begin{pmatrix}
1 & 1 & 1 \
0 & -\sqrt[]{2} & \sqrt[]{2} \
-1 & 1 & 1
\end{pmatrix},
D=\begin{pmatrix}
1 & 0 & 0 \
0 & -1 & 0 \
0 & 0 & 3
\end{pmatrix}
$$
计算 S 的逆矩阵,得
S−1=(210−21 41−4241 414241)
计算 Dn 得
Dn=(1n00 0(−1)n0 003n)
An=S−1DnS ,解得
An=(21+(−1)n41+43n(−1)n+142+423n−21+(−1)n41+43n (−1)n+142+423n(−1)n21+213n(−1)n+142+423n −21+(−1)n41+43n(−1)n+142+423n21+(−1)n41+43n)
Python 代码
通过 sympy 验算结果
import sympy as sp
# 定义 sqrt(2)
sqrt_2 = sp.sqrt(2)
# 定义矩阵 S 和 S^{-1}
S = sp.Matrix([[1, 1, 1],
[0, -sqrt_2, sqrt_2],
[-1, 1, 1]])
S_inv = sp.Matrix([
[sp.Rational(1, 2), 0, -sp.Rational(1, 2)],
[sp.Rational(1, 4), -sqrt_2 / 4, sp.Rational(1, 4)],
[sp.Rational(1, 4), sqrt_2 / 4, sp.Rational(1, 4)]
])
# 定义对角矩阵 D
lambda_1 = 1
lambda_2 = -1
lambda_3 = 3
D = sp.diag(lambda_1, lambda_2, lambda_3)
# 定义 n
n = sp.symbols('n')
# 计算 D^n
D_n = D**n
# 计算 A^n = S D^n S^{-1}
A_n = S * D_n * S_inv
# 打印结果
print(f"A^n = S D^n S^{-1} =")
sp.pprint(A_n)
输出结果如下

其他解法
第四问提到了 ケーリー・ハミルトンの定理 (哈密尔顿–凯莱定理),此定理可以用于解矩阵的幂运算
第一问求出特征值后,令
λn=f(λ)g(λ)+aλ2+bλ+c
代入特征值,又因为 f(λ1)=f(λ2)=f(λ3)=0 可得出方程组
$$
\left{\begin{matrix}
1 =a+b+c \
(-1)^{n} =a-b+c \
3^{n} =9a+3b+c
\end{matrix}\right.
$$
解方程组得
$$
\left{\begin{matrix}
a=\frac{(-1)^{n}+3^{n}-2}{8} \
b=1-\frac{1+(-1)^{n}}{2} \
c=\frac{1+(-1)^{n}}{2}-\frac{(-1)^{n}+3^{n}-2}{8}
\end{matrix}\right.
$$
代入公式 An=f(A)g(A)+aA2+bA+cI ,因为 f(A)=0 所以 An=aA2+bA+cI
An=(21+(−1)n41+43n(−1)n+142+423n−21+(−1)n41+43n (−1)n+142+423n(−1)n21+213n(−1)n+142+423n −21+(−1)n41+43n(−1)n+142+423n21+(−1)n41+43n)
第三问
题目: 求 exp(A)
由第二问可知 A 可以对角化,所以
exp(A)=exp(SDS−1) =I+SDS−1+2!1(SDS−1)2+3!1(SDS−1)3+⋯ =I+SDS−1+2!1SD2S−1+3!1SD3S−1+⋯
提取 S 和 S−1 得
exp(SDS−1)=S(I+D+2!1D2+3!1D3+⋯)S−1 =Sexp(D)S−1
而 D 为对角矩阵,所以
exp(D)=(e00 0e−10 00e3)
求 exp(A)=Sexp(D)S−1 得
exp(A)=(21e+41e−1+41e3−42e−1+42e3−21e+41e−1+41e3 −42e−1+42e321e−1+21e3−42e−1+42e3 −21e+41e−1+41e3−42e−1+42e321e+41e−1+41e3)
Python 代码
通过 sympy 验算结果
import sympy as sp
# 定义矩阵 A
A = sp.Matrix([[1, sp.sqrt(2), 0],
[sp.sqrt(2), 1, sp.sqrt(2)],
[0, sp.sqrt(2), 1]])
# 计算 exp(A)
exp_A = A.exp()
# 打印结果
print("exp(A) =")
sp.pprint(exp_A)
输出结果如下

第四问
题目: 当 α 是实数的时候,证明等式。(允许使用凯莱-哈密顿定理进行证明)
对矩阵 B 求特征方程
det(B−λI)=(−λ−3231 32−λ−32 −3132−λ)=−λ3−λ
由凯莱-哈密顿定理知
P(B)=−B3−B=0
所以
B3=−B
从而可以求出
B4=B3B=−B2 B5=B4B=−B3=B
代入到 exp(αB)
exp(αB)=I+αB+2!1(αB)2+3!1(αB)3+4!1(αB)4+5!1(αB)5+⋯ =I+αB+2!1α2B2−3!1α3B−4!1α4B2+5!1α5B+⋯ =I+(α−31α3+5!1α5−⋯)B+(2!1α2−4!1α4+⋯)B2
观察上式 B 的系数为 sin(α) 的泰勒展开,而 B2 的系数为 1−cos(α) 的泰勒展开,所以
exp(αB)=I+(sinα)B+(1−cos(α))B2
第五问
题目: 给定三维实向量 a ,定义三维实向量 x 的函数 f 如下 (公式略)。其中 n≥2 ,证明当 x=(I+B2)a 时,函数 f 取最小值。
由第四问可知 exp(αB) ,将 α=n2πk 代入得
exp(n2πkB)=I+(sin(n2πk))B+(1−cos(n2πk))B2
将 x=(I+B2)a 代入 f 得
f(x)=k=1∑n[I+(sin(n2πk))B+(1−cos(n2πk))B2]a−(I+B2)a2 =k=1∑n[I+(sin(n2πk))B+(1−cos(n2πk))B2−I−B2]a2 =k=1∑n[(sin(n2πk))B−(cos(n2πk)B2]a2
因为 f(x) 是欧几里得范数得平方,即距离值,所以 f(x)≥0
又因为 sinx 和 cosx 周期是 2π ,在 k 从 1 到 n 的过程是对其周期进行等分,又因为周期内对称数值相加和为 0,所以
k=1∑n(sin(n2πk))=k=1∑n(cos(n2πk))=0
从而当 x=(I+B2)a 时,f(x)=0 ,又因为 f(x)≥0,所以原命题成立
参考资料
MIT - 线性代数
由妈咪说制作的 LaTeX 公式编辑器
《线性代数》教学视频 宋浩老师
WikiPedia - 哈密尔顿–凯莱定理
屠龙大法:利用哈密顿–凯莱定理直接斩杀矩阵的高次幂,如有砍瓜切菜一般
Wrote with ChatGPT