头脑风暴优化
优化的任务通常是为某些特定问题确定最佳解决方案。 Rn 中的优化问题或简单的优化问题是
,其中 Rn 和 Rm 分别代表决策空间和目标空间。目标区域中的适应度值或适应度值向量连接到决策领域的每个解决方案。
你可以看到一个最小优化问题如下:
分钟
约束
其中 f() 是目标函数, 是要优化的变量向量, 和是约束条件。优化中的评估函数f(x) 将决策变量映射到目标向量。根据 m 的值,优化问题有两种类型:单目标 (m=1) 和多目标 (m>1)。
许多研究人员已经建立了许多元启发式来解决困难和未解决的优化问题。示例:基于教学的优化、粒子群优化、灰狼优化。
本文旨在介绍一种称为脑风暴优化 (BSO) 的新技术元启发式优化技术。
背景:
基于种群的优化算法已被广泛接受并成功用于许多优化问题。基于种群的优化算法是多个点(种群)。与传统的单点基算法(如山计数算法)相比,解决方案是交换信息以相互合作和/或竞争。最近,已经开发了更多基于人口的算法,通常称为自然启发的优化算法,而不是基于开发的算法。大多数自然优化算法被认为是群体智能算法。大多数自然优化算法被认为是群体智能算法。群体中的每个实体代表群体智能算法中的一个简单对象,例如蚂蚁、鸟、鱼等。Brain Storming Optimization 是2011年提出的一种群体智能算法,它模仿基于群体的头脑风暴诊断问题解决方案。人类是宇宙中最聪明的社会物种和动物。因此,受人类启发的优化算法可以被视为一种很好的算法。
头脑风暴过程的步骤:
上图展示了头脑风暴过程的步骤。这个过程的第一步是提出粗略的想法并将它们组合在一起。当一个人有了原始的想法之后,就会有把这些想法澄清和浓缩成一堆合理的、精炼的想法的过程。这两个步骤都属于创意类别。在第三步中,决定对改进后的想法进行评估并进行必要的更改。头脑风暴过程的最后一步是根据合理的、经过评估的想法创造一个可能的解决方案。此过程的结论可能是解决方案有效,也可能无效。后者再次触发相同的过程。
奥斯本为头脑风暴过程中的创意产生提供了规则:
- 暂停判断:判断所提出的概念是好是坏是不明智的。
- 随心所欲:在头脑风暴过程中出现的任何想法都是值得分享和记录的想法。
- 交叉施肥(Piggyback):任何产生的想法都可以而且应该表明应该如何产生更多的想法。
- 追求数量:产生尽可能多的想法。
根据表2中的规则产生想法的目的是产生尽可能多样化的想法,使头脑风暴组的人尽可能地思想开放。
算法:
- 初始化:生成 n 个随机个体(可能的解决方案),并评估那些 n
个人; - 聚类:使用k-means聚类算法将n个个体聚类成m个簇;
- 根据个体的排名,将每组中最好的个体列为聚类中心。
- 随机生成范围 [0, 1) 内的值 r 1 ;
- 让我们假设 p1(预定概率)
- 如果r 1 < p 61那么
随机选择一个集群并用随机挑选的个体替换它; - 随机生成范围 [0, 1) 内的值 r 2 ;
- 如果r 2 < p 71那么
随机选择概率为 p 711 的簇;
随机生成范围 [0, 1) 内的值 r 3 ;- 如果r 3 < p 7111 (p 7111是预定概率)那么
将随机值添加到选定的聚类中心以生成新的个体; - 别的
从这个簇中随机选取一个个体,给个体加上一个随机值,生成新的个体;
- 如果r 3 < p 7111 (p 7111是预定概率)那么
- 别的
随机选择两个簇生成新个体
随机生成范围 [0, 1) 内的值 r 4 ;- 如果r 4 < p 72 (p 72是预定概率)那么
组合聚类中心并添加随机值以生成新个体 - 别的
选择两个随机个体加入随机值生成新个体
将新生成的个体与现有个体进行比较
- 如果r 4 < p 72 (p 72是预定概率)那么
- 如果更好然后保留
其他已删除
- 如果r 2 < p 71那么
- 如果生成了 n 个个体,则进入下一步;
否则转到7 - 如果达到最大迭代则结束
否则转到2
步骤 2、3 和 7.1 激发了新的想法,模仿由先前产生的想法启发产生的新想法。 7.2 模仿产生新的想法,灵感来自于来自两个不同集群中心的先前产生的两个想法。
注意:集群中心比任何集群都更有可能产生新的想法
许多实际应用程序可以建模为优化问题。作为一种优秀的群体智能算法,头脑风暴优化已被广泛用于解决大量的现实世界问题。