1.鲍威尔基本算法的运算流程

1.采用坐标轮转法顺次沿n个坐标轴方向[e1,e2,...,en]进行一维搜索。然后以初始点X(0)和终点Xn(1)构成一个新的方向S(1),并以此方向为搜索方向在做一维搜索得到极小值点X(n+1)(1)。
2.去初始点X0(2)=X(n+1)(1),并去掉元搜索方向组中的第一个方向S1(1)=e1,而将第一轮构成的新搜索方向S(1)作为最末一个方向[e2,e3,...,en,S(1)],以此组成第二轮迭代的n个方向。
3.依此进行下去,直到获得满足迭代收敛精度要求的近似最小点为止。
评价:
Powell基本算法仅仅具有理论的意义,不要说对于多维的复杂函数,就是对于二次函数,他也可能失效。因为基本算法中,没有衡量过n个搜索方向是否会变成线性相关?一旦搜索方向存在相关关系,就不能形成共轭方向,从而长不成n维空间。导致随后的迭代搜索在降维空间(退化空间)中进行,求不到极值点。

2.鲍威尔修订算法

1.核心

在每一轮产生新的搜索方向S(k)后,首先判断原搜索方向组是否可以直接用于下一轮迭代的搜索方向组,如果可以,就仍然用它,否则进一步判断原搜索方向组中哪个方向上函数值下降量最大,或者贡献最大,然后再用新搜索方向替换这个贡献最大的搜索方向,以保证逐次生成共轭方向,确保n维搜索方向始终线性无关。

对于第K轮迭代:搜索方向组[S1(k),S2(k),...,Sm(k),...,Sn(k)]
记:f(0)=f(X0(k))  , f(1)=f(Xn(k)) 。映射点:f(2)=f(2*Xn(k)-X0(k))
△m(k)={f( X(i)(k) )- f( X(i-1)(k) ),i=1,2,...,n}  记:Sm(k)为与△m(k)相对应的搜索方向.
S(k)=Xn(k)-X0(k)(???我们要判断这个新方向是否值得一用???)

2.Powell条件

1.f2<f0;
2.(f0-2f1+f2)(f0-f1-△m(k))<0.5△m(k)(f0-f3)^2
若两个条件可以同时成立,则用S(k)代替Sm(k);否则仍用原来的方向组

3.Powell修订算法流程设计

注:Xm(k)代表第k轮搜索第m个方向后得值。(m<n)
1.任选初始点X(0)=X0(1),给定迭代收敛精度Err1,Err2。取初始基本方向组为单位坐标向量系,即
S(m)(1)=e(m).(i=1,2,...,n),并置迭代轮次k=1。
2.从X0(k)出发,依次沿S(m)(k)(m=1,2,...,n)做一维搜索,得n个极小点X(m)(k);构造新的搜索方向S(k)=X(n(k))-X(0)(k)。并沿此方向进行一维搜索的极小点X(n+1)(k)。
3.判断迭代终止条件。A:||X(n+1)(k)-X0(k)||≤Err1???  或B:|f(X(n+1)(k))-f(X0(k))|≤Err2|f(X(n+1)(k))|。若满足两者其中的一个,则终止迭代并输出最优解:X* = X(n+1)(k)  和 最优值 f* = f(X*)。否则,继续下面的迭代工作。
4.计算f(X(m)(k)),m=1,2,3,...,n,并求沿各个搜索方向上的下降的差值,选择下降最大者。
△m(k) = max{X(m-1)(k) - X(m)(k),m=1,2,...,n}=f(m-1)-f(m),及与之对应的两个点X(m-1)(k)、X(m)(k),那么第k轮迭代中贡献最大的方向为:S(m)(k)=X(m)(k)-X(m-1)(k)。
5.确定用映射点X(k)=2*X(n)(k)-X(0)(k),并计算f(X(k))。记f(0) = f(X(0)(k));f(1) = f(X(n)(k))及f(2) = f(X(k))。
验证Powell条件, 1.f2<f0;  2.(f0-2f1+f2)(f0-f1-△m(k))<0.5△m(k)(f0-f2)^2。若满足转到第(6),若不满足,转到(7)步。
6.设置第k+1轮迭代的出发点和搜索方向组。
初始点:X(0)(k+1) = X(n+1)(k) 
搜索方向:[S(1)(k),...,S(m-1)(k),S(k),S( m+1 )(k),...,S(n)(k)]
设置k=k+1,返回(2).
7.设置第k+1轮迭代的出发点和搜索方向组。
若f1<f2,X(0)(k+1)=X(n)(k);
否则 X(0)(k+1) = X(K);
搜索方向:S(m)(k+1)=S(m)(k);
设置k=k+1,返回(2).

3.Powell算法流程图

Powell算法、Powell修正算法_matlab仿真相关推荐

  1. google地图经纬度偏移修正算法完美解决方案

    google地图经纬度偏移修正算法完美解决方案 参考文章: (1)google地图经纬度偏移修正算法完美解决方案 (2)https://www.cnblogs.com/moonvan/archive/ ...

  2. matlab教程蚁群算法,蚁群算法怎样用MATLAB仿真

    蚁群算法采用matlab开发的仿真平台:算法实现,路径显示,人机交互控制等 希望对你有帮助! 是可以运行的 %    the procedure of ant colony algorithm for ...

  3. 系统辨识(六):最小二乘法的修正算法

    最小二乘法的修正算法主要包括: 广义最小二乘法(Generalized Least Squares Method,简称GLS) 辅助变量法(Instrumental Variable Method,简 ...

  4. m基于matlab的wcdma软切换算法的研究分析和仿真

    目录 1.算法概述 2.仿真效果预览 3.MATLAB部分代码预览 4.完整MATLAB程序 1.算法概述 软切换是WCDMA系统的关键技术之一,软切换算法和相关参数的设置直接影响着系统的容量和服务质 ...

  5. matlab三相电源含谐波,谐波电能计量算法的研究及MATLAB仿真-毕业论文(设计).doc...

    毕业设计(论文) 题 目: 谐波电能计量算法的研究及MATLAB 仿真 学 院: 机电工程学院 专 业: 电子信息工程 班 级: 电信 学 号: 姓 名: 指导教师: 教 务 处 制 2011 年 5 ...

  6. 一种基于三维块匹配滤波(BM3D)算法的散斑噪声抑制的仿真与实例分析

    ▒▒本文目录▒▒ 一.引言 二.三维块匹配滤波BM3D去噪原理 2.1 第一阶段 2.1.1 块匹配 2.1.2 协同硬阈值滤波 2.1.3 聚合 2.2 第二阶段 2.2.1 块匹配 2.2.2 协 ...

  7. 自适应稳定快速RLS算法---(SFTRLS算法)

    在上一篇的博客文章中(浅谈自适应滤波器-(快速RLS算法)),我给出了关于RLS的快速算法(简称FTRLS),但是它有一个缺点就是不够稳定,虽然我给出的例子里是稳定的,这主要是Matlab默认的计算精 ...

  8. 人工神经网络算法与机器算法算两种算法吗

    人工神经网络的特点有哪些 人工神经网络的特点和优越性,主要表现在三个方面:第一,具有自学习功能. 例如实现图像识别时,只在先把许多不同的图像样板和对应的应识别的结果输入人工神经网络,网络就会通过自学习 ...

  9. SURF算法与SIFT算法的性能比较——图像特征点检测与提取算法分析

    图像特征点提取算法的算法研究(SURF和SIFT算法) 1. 摘要 计算机视觉中,很大一部分研究集中在图像特征提取和特征生成算法上.对图像的优化,不同于一般数学问题的优化方法,图像的优化是对像素点,在 ...

  10. 最优隐神经元数目 算法 matlab,BP算法的改进在Matlab的实现研究

    BP 算法的改进在M a tlab 的实现研究 姚文俊 (中南民族大学电子信息工程学院 湖北武汉 430074) 摘 要:利用M atlab 中的神经网络工具箱提供的丰富网络学习和训练函数,对BP 网 ...

最新文章

  1. 使用JS/Jquery获得父窗口的几个方法(笔记)
  2. mysql 8.0数据备份恢复_第7章 备份和恢复
  3. java通过JDBC链接SQLServer2012
  4. HDU 1166 敌兵布阵
  5. SAP生产订单预留相关的备忘录
  6. 土地利用结构信息熵_科研成果快报第163期:基于市政用水时序数据的城市混合土地利用感知与分析...
  7. 苹果手机怎样用计算机,苹果手机怎么连接电脑,详细教您怎么使用苹果手机连接电脑...
  8. 2016年5月29日周总结
  9. 通过goole获取手机唯一标识
  10. Dockerfile 指令详解1
  11. R-CNN , Fast R-CNN , Faster R-CNN原理及区别
  12. [python] 之 常用内建函数
  13. 华为云登顶HotpotQA多跳知识推理问答评测
  14. python编程考试_《Python程序设计》试题库
  15. Spring学习总结(29)——Spring异步处理@Async的使用以及原理、源码分析(@EnableAsync)
  16. mysql报错2059
  17. 「leetcode」106.从中序与后序遍历序列构造二叉树 105. 从前序与中序遍历序列构造二叉树 (详解)
  18. 内蒙古自治区赤峰市谷歌高清卫星地图下载(百度网盘离线包下载)
  19. 网上开店,网店系统选择的那些事
  20. 3. 从0开始学ARM-ARM模式、寄存器、流水线

热门文章

  1. 探索设计之路-Photoshop【魔棒和快速选择工具】
  2. java中的圈复杂度计算_[代码质量] 圈复杂度和代码质量优化(附带示例代码纠正代码质量)...
  3. JS - 日期时间比较函数
  4. Python数据标准化处理
  5. 解决docker权限不足问题
  6. 主流微服务注册中心浅析和对比 1
  7. 数据库原理题型 - 综合应用题
  8. hdoj 4544 贪心
  9. 移动新魔百盒M411A_905L3_5621_语音免拆_卡刷固件包
  10. 架构师如何设计架构,架构师的架构思路