Main Content

线性最小二乘

求解具有边界或线性约束的线性最小二乘问题

在开始求解优化问题之前,您必须选择合适的方法:基于问题或基于求解器。有关详细信息,请参阅首先选择基于问题或基于求解器的方法

线性最小二乘求解 min||C*x - d||2,可能有边界或线性约束。

对于基于问题的方法,请创建问题变量,然后用这些符号变量表示目标函数和约束。有关基于问题的求解步骤,请参阅基于问题的优化工作流。要求解生成的问题,请使用 solve

有关基于求解器的求解步骤,包括定义目标函数和约束,以及选择合适的求解器,请参阅基于求解器的优化问题设置。要求解生成的问题,请使用 lsqlin;或者,对于非负最小二乘,也可以使用 lsqnonneg

函数

全部展开

evaluate计算优化表达式
infeasibility一个点处的约束违反值
optimproblem创建优化问题
optimvar创建优化变量
solve求解优化问题或方程问题
lsqlin求解约束线性最小二乘问题
lsqnonneg求解非负线性最小二乘问题
optim.coder.infboundInfinite bound support for code generation (自 R2022b 起)
mldivide, \求解关于 x 的线性方程组 Ax = B
optimwarmstartCreate warm start object (自 R2021a 起)

实时编辑器任务

优化在实时编辑器中优化或求解方程 (自 R2020b 起)

主题

基于问题的线性最小二乘

基于求解器的线性最小二乘

代码生成

基于问题的算法

算法和选项