精华内容
下载资源
问答
  • 非线性最小二乘法Matlab实现

    热门讨论 2009-12-28 21:59:39
    非线性最小二乘法Matlab实现 f=x(1)*K^x(2)*L^x(3)-b; Cobb-Douglas生产函数
  • MATLAB程序分享求解非线性最小二乘法拟合问题源程序-MATLAB求解非线性最小二乘法拟合问题 源程序代码.rar 程序代码见附件,拿资料请顺便顶个贴~~ 如果下载有问题,请加我 qq 1530497909,给你在线传
  • MatlabRobustNonlinLsq:健壮的非线性最小二乘法MATLAB函数
  • MATLAB求解非线性最小二乘法拟合问题 部分源码 clear;clc;close all A0=[1 1]; A=lsqnonlin('jscs',A0); disp('配偶参数A:') disp(A)
  • 此函数使用使用非线性最小二乘优化的迭代重新加权最小二乘 (IRLS)。
  • MATLAB求解非线性最小二乘法拟合问题 源程序代码
  • 非线性最小二乘法拟合断层面参数及其MatLab实现.pdf
  • matlab非线性最小二乘法拟合问题的matlab代码对于matlab的学习很有帮助
  • Graph的用于非线性最小二乘法优化的matlab代码包。 组织 数据:存储要处理的数据 因素:边缘和节点 g2o_files:核心,提供非线性最小二乘法的主要框架 数学:提供数学运算,例如so3_exp,... 辅助:其他 几何:对...
  • 4.2非线性最小二乘法:NLS

    千次阅读 2019-12-23 22:03:16
    当退化模型的参数是模型参数的非线性结构时,这回归过程被称为非线性最小二乘法。换句话说,与模型参数或系数有关的退化模型的偏导数是模型参数的函数时就为非线性最小二乘法。式4.2关于参数b的偏导数是 此处偏导数...

    当退化模型可以写成未知参数的线性结合的形式时,去找到未知参数的回归过程就被称为是线性最小二乘法;当退化模型的参数是模型参数的非线性结构时,这回归过程被称为非线性最小二乘法。换句话说,与模型参数或系数有关的退化模型的偏导数是模型参数的函数时就为非线性最小二乘法。式4.2关于参数b的偏导数是在这里插入图片描述
    此处偏导数任然与b相关。例如,在线性模型中,式2.9的偏导数为
    在这里插入图片描述
    它们关于参数的偏导数只与输入t相关。
    NLS发现模型参数的方法和最小二乘法相同,就是通过最小化误差平方和SSe,但是加权的误差平方和被认为是一种普遍的逼近方法针对非线性二乘法。
    式子4.3
    上式为4.3,式中wk2 是在测量点yk处的权重,W 是对角矩阵,是对角元素为1/wk2的对角矩阵的逆矩阵。zk是针对退化模型的仿真输出。当针对所有的测量值,所有的权重都相同时,W能被认为是一个常数,而且能被忽略,因为在最小化寻找参数的过程没有任何影响。对于这种情况,式4.3与式2.6的形式相同。在本节内容中,我们假设wk2是个常数,可以通过式2.8中的估计的数据的噪声方差确定。
    在非线性最小二乘法的例子中,
    在这里插入图片描述
    式2.6是形式为上的二次方程。并且能够找到全局最优解。比如对于一个参数情况下的抛物线,则全局最优解在梯度为零的地方。零-导数的条件变成了含未知参数线性方程组。因此,通过解决该线性方程组可以得到最优参数解。之后,式2.8就是全局最优解的一般形式。
    另一方面,对于非线性最小二乘法,在式4.3中的z不再是未知参数的线性组合,并且零导条件在这里插入图片描述
    也不能用线性方程组来表示,如式2.7.
    对于这样的情况,参数不得不利用优化方法的迭代过程来决定。这里有几个算法,L-M算法结合了梯度下降法和高斯牛顿法是常用的方法,在本章将会用到这个方法。优化方法具体的细节不在本章中介绍,我们用matlab的函数lsqnonlin来代替。在下一字节中,使用L-M方法的matlab函数的参数估计过程将会介绍。
    一般来说,优化过程是确定,这意味着该过程产生一组参数的值以来最小化误差平方和。然而,优化参数依赖于测量数据,这包含着测量的可变性。因此,如果不同的数据集被使用,优化参数就会被改变。这就是估计参数有不确定性。在非线性最小二乘法中,参数估计的不确定性能被估计,通过下式给出的方差。
    式4.4
    在该式中,J是雅可比矩阵,和在式2.5(针对线性问题)中的设计矩阵一样扮演着同样的角色。雅可比矩阵
    ny是测量数据的数量,np是参数的数量。
    为了让接下来计算更加简单,假设各测量点误差的大小都相同。之后,wk2变成了常数,并且和式2.18中的测量数据的噪音方差相同。换而言之,在这里插入图片描述
    最终,式4.4能被写成
    式4.6
    推导过程即注意取逆的公式即可
    一旦模型参数和它的方差被获得了,基于多元 t-random参数的分布同样的能获得(见2.4节的2.6例能了解得更多)。对于雅可比矩阵,当没有解析表达式的时,通过数值逼近来获得计算。在本书中,我们利用lsqonlin函数的提供的雅可比矩阵。基于估计参数的例子来 预测退化和RUL(在2.3和2.4节详细说明了)。

    展开全文
  • 此示例使用非线性最小二乘法解决涉及参数池化和分层的复杂曲线拟合问题。 此示例还利用了 MATLAB 7 的一些新语言功能。 * 匿名函数*嵌套函数
  • 机体看作一个房室,室内血药浓度均匀——一室模型 模型建立 在此,d=300mg,t及c(t)在某些点处的值见前表,需经拟合求出参数k、v 用线性最小二乘拟合c(t) MATLAB(lihe1) 计算结果: d=300; t=[0.25 0.5 1 ...

    3.血液容积v, t=0注射剂量d, 血药浓度立即为d/v. 2.药物排除速率与血药浓度成正比,比例系数 k(>0) 模型假设 1. 机体看作一个房室,室内血药浓度均匀——一室模型 模型建立 在此,d=300mg,t及c(t)在某些点处的值见前表,需经拟合求出参数k、v 用线性最小二乘拟合c(t) MATLAB(lihe1) 计算结果: d=300; t=[0.25 0.5 1 1.5 2 3 4 6 8]; c=[19.21 18.15 15.36 14.10 12.89 9.32 7.45 5.24 3.01]; y=log(c); a=polyfit(t,y,1) k=-a(1) v=d/exp(a(2)) 程序: 用非线性最小二乘拟合c(t) 给药方案 设计 c c2 c1 0 ? t 设每次注射剂量D, 间隔时间? 血药浓度c(t) 应c1? c(t) ? c2 初次剂量D0 应加大 给药方案记为: 2、 1、 计算结果: 给药方案: c1=10,c2=25 k=0.2347 v=15.02 * 故可制定给药方案: 即: 首次注射375mg, 其余每次注射225mg, 注射的间隔时间为4小时。 * 估计水塔的流量 2、解题思路 3、算法设计与编程 1、问题 * 某居民区有一供居民用水的园柱形水塔,一般可以通过测量其水位来估计水的流量,但面临的困难是,当水塔水位下降到设定的最低水位时,水泵自动启动向水塔供水,到设定的最高水位时停止供水,这段时间无法测量水塔的水位和水泵的供水量.通常水泵每天供水一两次,每次约两小时. 水塔是一个高12.2米,直径17.4米的正园柱.按照设计,水塔水位降至约8.2米时,水泵自动启动,水位升到约10.8米时水泵停止工作. 表1 是某一天的水位测量记录,试估计任何时刻(包括水泵正供水时)从水塔流出的水流量,及一天的总用水量. * * 流量估计的解题思路 拟合水位~时间函数 确定流量~时间函数 估计一天总用水量 * 拟合水位~时间函数 测量记录看,一天有两个供水时段(以下称第1供水时段和第2供水时段),和3个水泵不工作时段(以下称第1时段t=0到t=8.97,第2次时段t=10.95到t=20.84和第3时段t=23以后).对第1、2时段的测量数据直接分别作多项式拟合,得到水位函数.为使拟合曲线比较光滑,多项式次数不要太高,一般在3~6.由于第3时段只有3个测量记录,无法对这一时段的水位作出较好的拟合. * 2、确定流量~时间函数 对于第1、2时段只需将水位函数求导数即可,对于两个供水时段的流量,则用供水时段前后(水泵不工作时段)的流量拟合得到,并且将拟合得到的第2供水时段流量外推,将第3时段流量包含在第2供水时段内. * 3、一天总用水量的估计 总用水量等于两个水泵不工作时段和两个供水时段用水量之和,它们都可以由流量对时间的积分得到。 * 算法设计与编程 1、拟合第1、2时段的水位,并导出流量 2、拟合供水时段的流量 3、估计一天总用水量 4、流量及总用水量的检验 * 1、拟合第1时段的水位,并导出流量 设t,h为已输入的时刻和水位测量记录(水泵启动的4个时刻不输入),第1时段各时刻的流量可如下得: 1) c1=polyfit(t(1:10),h(1:10),3); %用3次多项式拟合第1时段水位,c1输出3次多项式的系数 2)a1=polyder(c1); % a1输出多项式(系数为c1)导数的系数 3)tp1=0:0.1:9; x1=-polyval(a1,tp1); % x1输出多项式(系数为a1)在tp1点的函数值(取负后边为正值),即tp1时刻的流量 MATLAB(llgj1) 4)流量函数为: * 2、拟合第2时段的水位,并导出流量 设t,h为已输入的时刻和水位测量记录(水泵启动的4个时刻不输入),第2时段各时刻的流量可如下得: 1) c2=polyfit(t(10.9:21),h(10.9:21),3); %用3次多项式拟合第2时段水位,c2输出3次多项式的系数 2) a2=polyder(c2); % a2输出多项式(系数为c2)导数的系数 3)tp2=10.9:0.1:21; x2=-polyval(a2,tp2); % x2输出多项式(系数为a2)在tp2点的函数值(取负后边为正值),即tp2时刻的

    展开全文
  • 非线性最小二乘法矩阵处理

    千次阅读 2017-12-10 20:27:39
    非线性转化为线性,再求解。在制定公差标准时,必须掌握加工的极限误差随工件尺寸变化的规律。例如,对用普通车床切削外圆进行了大量实验,得到加工极限误差t与工作直径D的统计资料...再根据一元回归最小二乘法计算:

    把非线性转化为线性,再求解。

    在制定公差标准时,必须掌握加工的极限误差随工件尺寸变化的规律。例如,对用普通车床切削外圆进行了大量实验,得到加工极限误差t与工作直径D的统计资料如下:
    数据2

    将数据画成折线图:
    图1
    可以很清楚的观察出数据是非线性的。

    假设这条曲线的方程是公式1
    将其两边取对数,得到公式2
    公式3,得到y=c+bx
    再根据一元回归最小二乘法计算:
    公式4
    得到:

    b = 0.3394
    c = 1.5801

    所以y = 0.3394 x +1.5801

    a=e^c=4.8556

    综上所述,结果

    MATLAB代码:

    clear
    clc
    shuju=xlsread('D:\CSDN\MATLAB\shuju2.xlsx');
    d=shuju(:,1);  %工作直径
    t=shuju(:,2);  %加工极限误差
    plot(d,t)
    grid on
    xlabel('工作直径 D/mm')
    ylabel('加工极限误差 t/um')
    x=log(d);  %lnD转化为一元函数中的x
    y=log(t);  %lnt转化为一元函数中的y
    C=[x,ones(10,1)]'*[x,ones(10,1)];  %计算C
    K=(C^-1)*[x,ones(10,1)]'*y;  %计算K
    b=K(1,1)  %取出b
    c=K(2,1)  %取出c
    a=exp(c)  %c转换回a

    结果:

    b = 0.3394
    c = 1.5801
    a = 4.8556

    展开全文
  • 详细的讲解非线性最小二乘法的运算过程,可以将其直接用来计算
  • 递推最小二乘法与广义最小二乘法matlab源程序,仅供大家编程学习参考!
  • matlab改变代码颜色极化形状:非线性最小二乘法 这是Matlab实现的论文“极化形状:非线性最小二乘法”。 如果您使用我们的代码,请引用以下文章: @INPROCEEDINGS{yu2017shape, author={Y. {Yu} and D. {Zhu} and W....
  • lsqnonlin()中@FUN指的是y-(ax+b),不是单纯的y lsqnonlin()中x0指的是参数的初始值,返回的x也是指的是参数的值 残差:实际值与拟合值之间差
    1. lsqnonlin()中@FUN指的是y-(ax+b),不是单纯的y
    2. lsqnonlin()中x0指的是参数的初始值,返回的x也是指的是参数的值
    3. 残差:实际值与拟合值之间差
    展开全文
  • 最小二乘法matlab代码一元非线性 **教程,示例,集合以及所有其他类别的内容:模式分类,机器学习和数据挖掘。** 栏目 此流程图的[]。 机器学习和模式分类简介 [] 预测建模,监督式机器学习和模式分类-大图[] 入口点...
  • 最小二乘法matlab代码一元非线性 **教程,示例,集合以及所有其他类别的内容:模式分类,机器学习和数据挖掘。** 栏目 此流程图的[]。 机器学习和模式分类简介 [] 预测建模,监督式机器学习和模式分类-大图[] 入口点...
  • 在本节中,将解释matlab代码的用法。代码被分为三个部分。(1)用户具体问题的定义。(2)使用matlab预测(3)对展示结果的后处理。不同的算法可以代替第二个部分,这将在后一章解释。只有问题的定义部分才需要针对...
  • 最小化几何误差是一个非线性最小二乘问题。 fitcircle 允许您进行计算 - 它使用代数拟合作为几何误差最小化的初始猜测。 例如x = randn(2, 10); % 线性最小二乘拟合[z, r] = fitcircle(x, '线性') % 真正的最佳...
  • 函数 LMFnlsq.m 用于在最小二乘意义上找到非线性方程组的超定系统的最优解。 标准的Levenberg-Marquardt算法已由Fletcher修改,并在多年前用FORTRAN进行了编码(请参见参考资料)。 该版本的LMFnlsq是其完整的MATLAB...
  • 非线性最小二乘法原理

    千次阅读 2020-03-29 14:58:44
    最小二乘问题的两种解的形式 闭式解(closed-form solution) 能够直接给出优化问题解的解析形式,如下面要说的线性最小二乘。 迭代解(iterative solution) 没有解析形式,只能从一个初始值 x0x_0x0​开始,一步步迭代...
  • 最小二乘法matlab代码一元非线性 **教程,示例,集合以及所有其他类别的内容:模式分类,机器学习和数据挖掘。** 栏目 此流程图的[]。 机器学习和模式分类简介 [] 预测建模,监督式机器学习和模式分类-大图[] 入口点...
  • 3. 血液容积 v, t=0 注射剂量 d, 血药浓度立即为 d/v. 2. 药物排除速率与血药浓度成正比比例系数 k>0) 模型假设 1. 机体看作一个房室室内血药浓度均匀 一室模型 模型建立 ? d/ c(0) 3 ? 得 由假设 -kc dt dc 2 ?...
  • 曲线拟合的最小二乘法matlab举例,介绍了如何用MATLAB对实验所得数据,运用最小二乘法画出曲线,并计算线性度、非线性误差。
  • 线性最小二乘法(附MATLAB代码)

    千次阅读 2021-01-23 16:34:00
    本文部分转载自优化算法交流地的文字,转载仅作学习使用。...本文主要从如何使用MATLAB实现最小二乘法,首先给出今天重点使用的两个函数。 p=polyfit(x,y,n):最小二乘法计算拟合多项式系数。x,y为拟合数据向量...
  • 最小二乘法matlab实现

    2020-11-30 08:44:59
    最小二乘法 1 polyfit多阶拟合 2 lsqnonlin非线性拟合 最小二乘法是一种在误差估计、不确定度、系统辨识及预测、预报等数据处理诸多学科领域得到广泛应用的数学工具。 ...
  • 这是非线性最小二乘估计与多视图姿势图SLAM之间的可靠混合。 此实现方式适用于立体和单眼设置。 如果您打算使用此实现,请引用我们的论文: T. Abuhashim和L. Natale, “结实的图SLAM”, 2016年第19届国际信息融合...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,314
精华内容 925
关键字:

非线性最小二乘法matlab

matlab 订阅