lsqnonneg
求解非负线性最小二乘问题
语法
描述
例子
输入参数
输出参数
提示
对于以下问题
d
长度大于20,lsqlin
可能比lsqnonneg
.当d
长度在20以下,lsqnonneg
通常效率更高。在求解器之间进行转换
C
行数多于列数(意味着系统是过度确定的);[x,resnorm,residual,exitflag,output,lambda] = lsqnonneg(C,d)
等于
[m,n] = size(C);[x,resnorm,residual,exitflag,output,lambda_lsqlin] =…]lsqlin (C, d,黑眼圈(n, n), 0 (n - 1));
唯一的区别是对应的拉格朗日乘数有相反的符号:
Lambda = -lambda_lsqlin.ineqlin
.
算法
lsqnonneg
中描述的算法[1].该算法从一组可能的基向量开始,计算相关的对偶向量λ
.然后选择与中的最大值相对应的基向量λ
把它从基中换出来以换取另一个可能的候选基。这种情况一直持续到≤0
.
选择功能
应用程序
的优化活动编辑器任务提供了一个可视化界面lsqnonneg
.
参考文献
[1]劳森,C. L.和R. J.汉森。求解最小二乘问题.上马鞍河,新泽西州:普伦蒂斯厅,1974。第23章,第161页。
扩展功能
版本历史
R2006a之前引入