文章目录的定义、说明、联系和区别、分类的简单说明。找同一个研究方向、创新点在哪里? 就业前景如何? 科学研究前景如何?
定义说明
本文从经典的优化函数出发,引出智能优化算法。 下图为二维Schwefel函数的3-D曲面图,其中x和y范围均为[500; 500 ),且只取整数。 从图中可以看出,右下角的全局最优解(421; 421 )此外,Schwefel函数存在很多局部最优解。 图中示出了三组局部最优解的实例,每个(204; 500 (,) 421; 303 )和) 421; 204 )。
要得到上述优化问题的全局最优解,蒙特卡罗方法(Monte昏迷之秋)很简单。 蒙特卡罗方法是指在搜索空间内持续生成随机试验解直到得到全局最优解。 该方法具有较好的全局搜索性能(Global exploration ),因为采用随机方法可以有效避免优化过程陷入某些局部最优解。 其主要缺点是得到全局最优解需要一定的“运气”,或者明显增加计算量,增加产生随机解的数量。
为了减少计算量,更直观的策略是增加问题本身的信息来指导算法的求解过程。 此处的信息通常是局部的、有限的或不完整的,这样的方法被称为启发式方法(Heuristics )。 其中,最具代表性的启发式算法是贪婪算法,在求解优化问题的过程中,只在最有利于提高当前目标函数优越性的方向进行搜索,因此具有很好的局部开发能力(Local exploitation ) 梯度类优化算法中的梯度和hxdc矩阵都可以称为不同层次的启发式信息。 通常,优化问题并获取启发式信息的成本(通常是计算时间或存储空间)越大,解决特定问题的效率越高,但适用的问题类型也越小。 例如,kddbl方法可以通过利用hxdc矩阵的启发式信息在局部范围求解优化问题来实现二阶收敛速度; 相反,算法所使用的启发式信息的代价越小,在求解优化问题时效率通常越低,但贪婪算法等适用的问题类型越广。 但是,无论是贪婪算法还是梯度系统算法,对于Schwefel函数,启发式信息都有一个优化过程,使其趋向局部最优解,因此这种方法很难直接得到全局最优解。
元启发式方法,即本文所述的智能优化算法应运而生。 这些可以看作是具有随机性的基于群体的启发式方法。 蒙特卡罗方法既保持全局搜索性能好的特点,又具有启发式方法局部开发能力强的优点。
关联和区分的分类简单从形成原理来说,元启发式方法可以分为基于进化机制(Evolutionary )、基于物理原理(PhySIcs )、基于集体智能(Swarm Intelligence,si )三类下表介绍了一些智能优化算法及其基本分类。
作为同一大算法,不同的智能优化算法之间通常有三个相同的地方:
)都有摆脱局部最优解的能力。 这是这类算法的基本要求,以增加随机函数为主要方式。
)2)均有超参数,需要人为设置。 不同算法的超参数数量有一定的差异。 大多数情况下,基于进化机制和物理原理的智能优化算法具有较少的超参数。
)3)都需要全球探索和局部开发的折中。 无限制的全局搜索是算法不收敛,只集中于局部开发会使算法陷入局部最优解,需要在两者之间进行折中的步骤。
寻找不同类型智能优化算法的差异是物流优化技术面接的常见问题。 目前,标准答案不多见,但博主提出了三个想法:
)1)算法的第一个来源不同。 根据名字基本上可以判断各算法的来源,所以这里省略说明。
)2)平衡全球探索与局部开发的战略存在一定差异。 举个例子,模拟退火算法主要通过调整一个超参数来平衡两者,蚁群算法需要同时调整很多参数,而经典的差分进化算法在核心差分向量上具有平衡能力
)3)从优化的角度分析,他们也互不相同。 对优化来说,本质是两件事。 一个是迭代方向,另一个是迭代步骤。 举个例子,在差分进化算法中,迭代方向由差分向量确定,并且迭代步骤通过定标因子来控制; 在粒子群算法中,方向和步长由粒子的原始速度、粒子局部最佳方向和粒子全局最佳方向决定; 在遗传算法中,方向仅由部分维度确定,步长被认为是1。
研究方向智能优化算法的设计和改进,是目前许多硕士或博士的研究内容和研究方向。 在最终的硕士论文和博士论文中,甚至是其中心的创新点。 博主本人也沉浸了很多年,但以自己的经验来看,BB :
创新点在哪里? 最大的创新点是自己提出新的智能优化算法。 当然,这不是最难的。 通过随意学习某些动物的生活和捕食习惯,也许可以提出新的算法。 那个哪里最难? 如何证明自己提出的算法优于目前许多智能优化算法很难。 否则,新算法很容易失去意义,创新性也会大幅降低。
下一个创新点是改进现有的智能优化算法。 很多智能优化算法已经提出了很多年,但还没有达到优化能力的上限。 一种思路是融合不同的智能优化算法。 No free launch的概率是自己擅长根据算法求解的优化问题,所以只要努力将它们融合在一起,自然就有机会获得性能更好的算法。 另一种思路是对某算法进行改进设计。 针对算法中的某个算子,或者针对算法中的某个参数设计方法进行问题自适应设计是一个热门的研究方向。
最低的创新点是,
是应用智能优化算法去解决某些特定的问题。如果问题足够新颖,或者你运气确实比较好,恰好没有别人尝试过,那可以定义为,应用创新。不幸的是,想要这种运气,真的需要些运气。特别说明,以上分类的标准,仅以原创性的程度来区分,不表示看得起或者看不起哪个。
就业前景如何?从当前的就业经历来看,除了部分龙头企业外,大部分公司更加注重对优化问题的认识和求解。从这个角度来看,针对算法本身的创新研究,用处并不是很大。相反,如果能有各类优化算法的实践经历,可能会对找工作和入职后的进一步发展,更有帮助。
此外,智能优化算法为了得到较好的解,往往需要占据很大的计算机时间和空间资源。然而,工业应用中,对全局性要求并没有想象中的那么高,在最优性和优化效率上,也更倾向于优化效率。举个简单的例子,美团外卖的订单分配系统,需要秒级输出分配结果。这类需求,智能优化算法基本可以直接被放弃。
科研前景如何?科研追求的是极致体验。智能优化算法,目标在于高效搜索全局最优解。一个“最”字,足以表达智能优化算法和科研的契合度。在算法选择上,可以选择(1)主流的成熟的智能优化算法。举个例子,连续优化问题选择差分进化算法、组合优化算法问题选择蚁群算法或变邻域搜索算法等;这些算法已经通过别人的经验证明了算法本身卓越的优化能力,自身起点高。(2)最新提出的智能优化算法,这些算法研究的少,有机会让你一夜暴富,前提是你能找到其中比较有潜力的。
想在智能优化算法方面做科研的话,以下三个期刊不容错过:
(1)IEEE Transactions on Evolutionary Computation。虽然近年来,国人投的比较多,但是影响因子放在那里,还是很有影响力的。
(2)Swarm and Evolutionary Computation。成立时间不算久,但是论文质量还不错,当前处在上升阶段。
(2)EVOLUTIONARY COMPUTATION等。
同时,标准测试算例数据集也是需要的。针对连续优化问题,可以参见之前的文章:IEEE CEC benchmarks概述;至于离散优化问题,可以参见网址:http://people.brunel.ac.uk/~mastjjb/jeb/info.html。