算法中的最优化算法方法与实现(第10课 全局优化)

一、学习目标

1.了解全局优化(global optimization)的内容

2.学习几种经典的全局优化算法:网格法、随机搜索法、多起点局部优化法

3.掌握模拟退火法和遗传算法。

二、全局优化

在全局优化中,优化问题就不会再有约束函数,只是求解目标函数的最小值。而之所以无法使用之前的梯度下降法之类的方法,主要愿意在于:这个目标函数具有多个局部最优解,最好的办法是遍历所有点,才能找到问题最优。

主要要解决的问题:避免算法迭代到局部最优就停止了。

希望算法能够跳出局部最优解。

三、经典算法

1.网格法(Grid search)

对变量x每个维度做一个网格化操作(网格间距小于0.1),计算在各个网格节点的目标函数值,找到最小的点作为问题最优解。相当于是穷举法。

问题:算法计算量非常大,例如在上面的example中,n是x的维度,我们计算总量是10的200次方,计算时间是当前宇宙存在时间的10倍。

2.随机搜索(Random search)

思想:在变量空间中,随机取点(要求均匀分布且覆盖可行域),计算这些点的目标函数值并选择最小的作为最优解。

3.多起点局部最优法(Multi-start local minimization)

思想:在变量空间中,随机取点(要求均匀分布且覆盖可行域),使用梯度下降之类的方法求解出这些能达到的局部最优解。选择最小的局部最优解为问题的最优解。

显然,最后这种方法具有更好的效能,只要保证取点合理,找到全局最优解是几乎可以的。

四、模拟退火法

之所以叫模拟退火法,是因为它确实就是模拟退火的过程。哈。在铸铁时,我们先加热铁使其成为铁水,浇筑到模具中缓慢降温,使其成型。模拟退火法的关键就是“加温”和“降温”。

整体思想:第一步先随机设置一系列点,然后让这些点随机移动一次,计算移动后函数值是否下降了,如果下降了,就替换原来的点(一步步迭代下去就会达到局部最优);如果上升了,也有概率进行替换(为了跳出局部最优),一开始温度高,这个概率设置比较大,后面缓慢降温(cooling),使这个概率减小。从而最后每个点都达到局部最优解。选择最小的作为原问题的最优解。基本算法过程如下:

而关于是否保留点往外跳的概率,还有一点小设置:如果你跳的幅度δ太大,我就不保留,小幅度向外跳的,我就保留。整体总结如下:

五、遗传算法(Genetic algorithm)

对遗传算法的评价:

遗传算法的构成:

首先先说个遗传算法的一个缺点:遗传算法只能作用于整数的离散约束的问题中(就是x取值只能是1、2、3这种,而无法取到小数点,不能连续)原因来自于其有一个编码操作。整体的算法流程如下:

由于其遗传和变异都是基于二进制串的,这是符合基因遗传的生物原理的,这也是其优秀所在。在对种族(即点的集合)的优胜劣汰中,其决定标准就是f(x)函数值,函数值越大,越有概率繁殖下一代,否则就被淘汰掉。例如:

在下一轮的父辈选择中,b2和b6被选择了两次,b3和b4就被淘汰了。

至此,一个优化问题被我们转变成了种族进化的问题,将数据变换成二进制串和适应性度量f是二者之间的唯一联系。通过种族进化本身的规则和优点来迭代计算出原问题的最优解,是一个十分天才的想法。

当然,遗传算法的限制性决定了它的使用场景很少,使用的地方有:

六、本章小结

教学目的要求 最优化方法属于专业普及程,是从所有可能方案选择最合理的方案以达到最优目标的学科,是随着计算机的普遍应用而发展起来的,它已广泛应用于各个领域。随着最优化方法理论的完善及计算机技术各种算法的发展,最优化方法也广泛被应用于计算机算法的设计和优化。本门程旨在讲授最优化的基本理论和方法,要求通过本程的学习,具有应用最优化方法解决一些实际问题的初步技能,并为以后的学习和工作做必要的准备。 本程的任务是讨论求解线性规划、无约束非线性规划、约束非线性规划、多目标规划、整数规划的基本原理与一般方法,并学习MATLAB等工具软件的应用,使学生掌握最优化方法的基本概念、基本原理和基本方法,初步学会应用最优化方法解决简单的实际优化问题,培养解决实际问题的能力。 预修程 微积分、线性代数 教材 教材: 《最优化理论与方法》,作者袁亚湘、孙文瑜,科学出版社,1997; 程资料。 主要内容 第一章 最优化方法的由来及其基本原理 . 最优化方法的产生与发展,最优化方法的基本原理 第二章 线性规划 .线性规划问题,单纯形法 第三章 二次规划 . 二次规划算法及应用 第四章 无约束非线性规划 . 牛顿、拟牛顿方法,下降方向及线性搜索 第五章 有约束非线性规划 . 有约束非线性规划算法,等式约束和不等式约束的处理 第六章 凸优化 . 凸问题,凸约束,凸优化算法及实例 第七章 全局优化 . 局部与全局最优解,多起始点、模拟退火、遗传算法 第八章 MATLAB优化工具箱 . MATLAB优化工具软件的使用 第九章 多目标优化 . Pareto最优性,多目标优化算法 第十章 整数规划 . 混合整数规划算法概述,整数规划复杂性,搜索 第十一章 最优化方法在计算机算法的应用 . 最优化方法在机器学习等领域的应用。 基本要求: 1、掌握最优化方法的基本概念、相关的优化原理和最常用的算法,注意方法处理的技巧及其与计算机的结合,提高计算机应用能力; 2、通过例子,学习使用各种优化方法解决实际遇到的简单优化问题,提高分析、解决实际问题的能力; 参考文献 主要参考书: 《最优化理论与方法》,作者陈宝林,清华大学出版社,1989; Nonlinear Programming (Second Edition),Dimitri P. Bertsekas, Athena Scientific Belmont, 1999.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值