具有单位向量约束的非线性优化

Non-linear optimization with unit vector constraint

本文关键字:非线性 优化 约束 向量 单位      更新时间:2023-10-16

我有一个 3x3 矩阵 E,我正在尝试解决这个优化问题:

|| E * t || = minimum

其中 t 是我正在寻找的解决方案,它必须是一个单位向量(表示为 3x1 矩阵)。 || x || 表示 x 的欧几里得距离。

有没有可以帮助我解决这个问题的库?我在各种库中找到了几个求解函数,但我似乎找不到一个可以让我施加额外约束的函数,即 t 必须是单位向量。那么我可以在没有库的情况下以编程方式解决这个问题吗?

对我来说

看起来像一个特征向量类型的问题——你的minimum应该是E的特征值中最小的绝对值。

对矩阵 E 进行奇异值分解 (SVD)(此操作应作为任何好的线性代数库的一部分提供)。 这将给你一个 E 的因式分解为:

E =  U diag V*

其中diag是具有非负对角线值的对角矩阵,UV是正交矩阵。

diag的最小对角线元素;对应的V*行(或V列)是t的解。

t的此值将是单位向量,因为V是正交的,并且生成的向量E t最小,因为UV保留向量长度。