最小二乘最优问题(转)
默认分类 2009-05-21 14:56:33 阅读 62 评论 1 字号:大中小
1.约束线性最小二乘
有约束线性最小二乘的标准形式为
sub.to
其中: C、 A、 Aeq 为矩阵; d、b、beq、lb、ub、x 是向量。
在 MATLAB5.x 中,约束线性最小二乘用函数 conls 求解。
函数 lsqlin
格式 x = lsqlin(C,d,A,b) % 求在约束条件 下,方程 Cx = d 的最小二乘解
x。
x = lsqlin(C,d,A,b,Aeq,beq) %Aeq 、beq 满足等式约束 ,若没有不等式约
束,则设 A=[ ] ,b=[ ] 。
x = lsqlin(C,d,A,b,Aeq,beq,lb,ub) %lb 、ub 满足 ,若没有等式约束,则
Aeq=[ ] ,beq=[ ] 。
x = lsqlin(C,d,A,b,Aeq,beq,lb,ub,x0) % x0 为初始解向量,若 x 没有界,
则 lb=[ ] , ub=[ ] 。
x = lsqlin(C,d,A,b,Aeq,beq,lb,ub,x0,options) % options 为指定优化参
数
[x,resnorm] = lsqlin(...) % resnorm=norm(C*x-d)^2 ,即 2-范数。
[x,resnorm,residual] = lsqlin(...) %residual=C*x-d ,即残差。
[x,resnorm,residual,exitflag] = lsqlin(...) %exitflag 为终止迭代的条
件
[x,resnorm,residual,exitflag,output] = lsqlin(...) % output 表示输出