优化算法概要

 一、算法起源和发展

  优化是指在一定的约束条件下寻找最优方案或参数值以使得我们要求的一个或多个指标达到最优。有点类似于我们高中所学的线性规划和高等数学的拉格朗日乘数法。应用到实际对于提高效率,降低能耗,合理地利用资源起着重要的作用。应用到学术上,从知网搜索一下机会发现优化算法的改进和优化算法应用在不同的场景都是研究的热点,以至于有着专门的团队研究该方向。

  受到自然规律的启发,人们利用此规律来进行优化算法的实现:以遗传算法为代表的进化类算法,以粒子群优化算法为代表的群体优化算法等。

1.1进化类算法

    首当其冲的代表遗传算法大家都已不陌生了,其就是把适者生存这个原则用代码的逻辑表现出来,最后的适者就是我们求得的最优点,其对于使用者来说其最关键的如何把我们的问题进行编码,为此这方面也会在后续的文章做重点叙述。当然,还有着差分进化、免疫算法等,其也是利用进化这种思路,在后续的文章会展开。

1.2群智能算法

  通过阅读设计对群智能给出的定义是“无智能的主体通过合作表现出智能行为的特性”,这话说的比较学术,通过相关的学习,我的理解是对于一个粒子群优化算法来说,其最初的思想是鸟类的觅食行为,一群鸟去找食物,找到的东西的食物是不一致的,还存在着没被开发的食物,为此对找到的食物最好的为全局最优点,当然还存在着局部最优点,那么局部最优点存在的意义是什么,都往全局最优点不好吗;其实仔细想一想,其可能导致局部最优点的出现,为此需要局部最优点来造成一定的干扰,可以理解为遗传算法的变异,当然如果你还觉得干扰不够,可以直接把遗传变异搬过来,但是其概率不要太大,不然就收敛不了了。

  值得考虑的是,可以看出一种算法的思想也可以应用于另一种算法上,同时算法的参数也不是固定的,这也给我们的改进留下了改进的空间。

1.3模拟退火算法

  它是模拟物质的退火过程与一般组合优化的结合,该算法能够克服一些传统算法容易陷入局部最优值和对初值的依赖性(在点神经网络)。虽然看起来其搜索比较盲目,但是其有着明确的搜索方向。

1.4禁忌搜索算法

  其能够灵活的利用存储结构和禁忌准则来避免冗余的搜索,保证搜索过程中值的多元化和有效性,最终实现全局优化。

1.5神经网络

  这个就是利用神经元兴奋的传递机制来对数据特征进行学习,由于其激活函数和结构的原因其具有着:非线性映射,数学依赖性低,有着并行运算等优势;以BP神经网络为代表,当然随着深度学习的大火该算法已经广为人知了,但是其局部最优是其一个需要解决的问题,其可解释性差是其一个有待解决的问题。

你可能感兴趣的:(算法)