西尔维斯特方程(Sylvester equation)一般求解方法
在求解模型中遇到 AX + XB = C 这样一个方程的求解,看到一篇论文中有优化求解方法,可惜看不懂。先把一般求解方法记录一下吧,至于有唯一解的条件、优化等内容看懂了再说吧。
对于Sylvester方程:
可以化为:
其中:
对于变形后的矩阵方程可以很容易得到解:
上述 vec 是对矩阵列的拼接,X = [X1,X2, ……,Xn], 则 vecX = [X1,X2, ……,Xn]T = np.reshape((d*n,1),order = “F”)。d为X行数,n为X列数。
为克罗内克积。
克罗内克积是两个任意大小矩阵间的运算,表示为 A x B。如果A是一个 m x n 的矩阵,而B是一个 p x q 的矩阵,克罗内克积则是一个 mp x nq 的矩阵。
(上图来自[2])
参考:
[1].https://math.stackexchange.com/questions/353329/solution-of-a-sylvester-equat
[2].https://baike.baidu.com/item/%E5%85%8B%E7%BD%97%E5%86%85%E5%85%8B%E7%A7%AF/6282573?fr=aladdin