我想利用matlab的最小二乘法求解目标函数
这是目标函数,我想用最小二乘法求它等于0时的解,其根本目的是求这个方程组的解。(这个方程组一共六个式子要求六个未知量)。给指点一下...
这是目标函数,我想用最小二乘法求它等于0时的解,其根本目的是求
这个方程组的解。(这个方程组一共六个式子要求六个未知量)。给指点一下 展开
这个方程组的解。(这个方程组一共六个式子要求六个未知量)。给指点一下 展开
1个回答
展开全部
你是问建立目标函数在理论上的方法还是实际在MATLAB中运用的方法?
理论的方法 就是寻找一个函数f(x)使得他在每一个x点的取值y与给定数据点的y值之差的平方和最小,这样一来,目标函数自然就是假定的f(x)在每一个x点的取值y,与给定的y值之差的平方和。然后再由约束条件,取极值的方法求得目标函数的最小值。
实际运用 我这里有代码 M文件 可以直接在MATLAB引用,输出拟合出的n次函数的系数。
附件上传不了,我直接拷到这里 编辑到M文件里面就可以用。
function c=lspoly(x,y,m)
n=length(x);
b=zeros(1:m+1);
f=zeros(n,m+1);
for k=1:m+1
f(:,k)=x'.^(k-1);
end
a=f'*f;
b=f'*y';
c=a\b;
c=flipud(c);
追问
我知道原理,就是想问matlab中是怎么实现的。现在只有这一个函数。用什么语句实现?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |