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
.
参考文献
劳森,C. L.和R. J.汉森。求解最小二乘问题.新泽西州上马鞍河:普伦蒂斯大厅,1974年。第23章,第161页。
扩展功能
版本历史
R2006a之前介绍