发现一个问题,一旦牛顿法的一维搜索失败,函数不降反升。需要修改代码,从避免被吸引到Hessian非正定的局部极值点。同时发现昨天做的模型模拟的时候有限差商导数步长设太小了,提高导数步长之后(设成0.05),牛顿法收敛速度明显加快(往往第一次迭代把梯度长度从几十万降到1k左右,第二次迭代进一步降到几十...
分类:
其他好文 时间:
2015-02-15 10:42:09
阅读次数:
146
一、线性最小二乘法 1、基本思路 令,其r(x)是事先选定的一组线性无关的函数。ak是待定系数。然后拟合的准则就是使得yi与f(xi)的距离的平方和最小,称之为最小二乘准则 2、系数的确定 ,要使距离的平方和最小,那只要取得,使得取到极值,就可以解除待定系数ak,记 然后线性方程组为,所以当R列满秩...
分类:
编程语言 时间:
2015-02-05 01:57:22
阅读次数:
375
今天把蒙皮模拟算法实现了。具体方法是加载此前算出的权重矩阵,每个内部点都是表面点的加权平均。于是求解的时候唯一的未知数就是参数p了。这次牛顿法能够模拟,但是同之前不带权重的模拟算法一样,模拟过程中无法收敛到全局极值点。出问题的是这根棒。控制这根棒的参数有两个,一个是弯曲大小,另一个是弯曲方向。当强制...
分类:
其他好文 时间:
2015-02-04 20:09:53
阅读次数:
192
4)极大值和极小值5)最大值,最小值 先求极值,再求最值...
分类:
其他好文 时间:
2015-02-03 21:24:27
阅读次数:
130
题目链接:http://poj.org/problem?id=3264思路分析:典型的区间统计问题,要求求出某段区间中的极值,可以使用线段树求解。在线段树结点中存储区间中的最小值与最大值;查询时使用线段树的查询方法并稍加修改即可进行查询区间中最大与最小值的功能。代码:#include #includ...
分类:
其他好文 时间:
2015-02-03 20:55:22
阅读次数:
160
1)求函数f(x)的所有驻点和不可导点;f(x)的一阶导等于0 的点和不可导的点;2)如果f(x)的二阶导,在驻点处大于0,则为极小值,如果小于0为极大值,等于0则需要根据驻点附近的一阶导符号转换来确定极大值,极小值,或者不是极值;3)一阶导可以确定函数的单调性,一阶导大于0,单调递增,一阶导小于0则为单调递减;4)二阶导可以确定函数的图形形状,二阶导小于0为凸形,二阶导大于0为凹型;...
分类:
其他好文 时间:
2015-02-03 09:33:00
阅读次数:
188
看最优化的文章时总能看到牛顿法和梯度下降法等基础算法,这里对牛顿法做个总结。
牛顿法一般的用途有:1、求方程的根;2、求极值
求方程的根
并不是所有的方程都有求根公式,或者求根公式很复杂,导致求解困难。利用牛顿法,可以迭代求解。
原理是利用泰勒公式,在x0处展开,且展开到一阶,即f(x) = f(x0)+(x-x0)f'(x0)
求解方程f(x)=0,即f(x0)+(x-x0)*f'(x...
分类:
其他好文 时间:
2015-02-02 00:47:18
阅读次数:
232
原题地址很有意思的一道题,二分搜索求极值。题目中已经说明num[i] != num[i+1],即相邻元素不可能相等,所以相邻元素间的大小关系要么是大于,要么是小于,这就是二分搜索的判断条件。假设左边界是l,右边界是r,中点m=(l+r)/2如果num[m]比左右两边都大,那么num[m]就已经是极值...
分类:
其他好文 时间:
2015-01-25 15:12:03
阅读次数:
183
1)费马引理: 证明的关键:如果在x0处可导,则在x0处的左导数等于右导数等于导数。 意义:显然(x0,f(x0))是f(x)在x0邻域内的一个极值点,推广:f(x)的极值点(驻点),满足f'(x)=0.给出了求驻点的方法。2)罗尔定理 证明要点:连续区间存在最大值和最小值,费马引理; 几何意义:连续区间[a,b],如果在开区间可导,且f(a)=f(b),则区...
分类:
其他好文 时间:
2015-01-25 12:35:01
阅读次数:
527
利用图分割算法对图片进行分割是目前比较流行的算法之一。利用这种方法对图片进行分割时需要对相应的能量函数进行最小值搜索,当能量函数在定义域中属于凸函数时利用梯度下降法、EM等经典算法可以得到唯一的极值解,该解便是全局最小解。但是对于能量函数在定义域中不是凸函数,利用上面的经典算法很容易陷入局部极小值问题,从而很难得到理想效果。虽然采用模拟退火方法可以减轻陷入局部极小值可能性,但是这并不是最优的解法。...
分类:
编程语言 时间:
2015-01-19 19:14:47
阅读次数:
817