
启发式算法
文章平均质量分 79
启发式算法
神奇冉冉
求道问术
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
MMO/NSGAII
过程非支配解简单讲:最小化问题,任意目标函数我都比你小;任意目标函数我都不比你大,某个目标函数我还比你更小最大化问题,任意目标函数我都比你小;任意目标函数我都不比你小,某个目标函数我还比你更大类比:比烂,所有方面我都比你更烂;所有方面我都不比你更好,某些方面还比你更烂比优秀,所有方面我都比你优秀;所有方面我都不比你差,某些方面还比你更优秀非支配排序f1,f2f_1, f_2f1,f2是两个目标函数根据解被其他解支配的次数从低到高排序,最低是0被0个解支配的解组成第1前沿原创 2022-05-01 21:43:39 · 415 阅读 · 0 评论 -
启发式算法/总结
总结算法名称启发原理特点SA模拟退火算法高温金属退火过程中分子的随机扰动范围随温度的降低而减少1.如何逃离局部最优到达全局最优,在局部最优点一步走多远2.解的变化范围随温度的降低而减少+使用metropolis principle采纳不好的解GA遗传算法生物进化过程中染色体的选择(适者生存),交叉复制(交配)和变异(基因变异)的过程0. 考虑了种群最优解,在种群最优解基础之上进行操作,期待产生更好的解1. 选择:适应能力强的个体被选择的概率大-适应度大的染色体被选择原创 2022-03-25 20:43:50 · 1035 阅读 · 0 评论 -
启发式算法/人工鱼群算法
原理人工鱼群算法模拟的鱼群在觅食时的行为寻找:在视野范围内随机游动寻找更好的食物追尾:往视野范围内食物更好的鱼游去聚集:往视野范围内鱼群中心靠近(认为,鱼越多的地方食物越好)移动:在视野范围内随机移动代码步骤:初始化种群开始觅食寻找:在视野范围内寻找更好的食物+避免拥挤追尾:向视野范围内食物更好的鱼游去+避免拥挤聚集:向视野范围内小鱼群中心游去+避免拥挤移动:视野范围内随机移动+避免拥挤达到截止条件(迭代次数,截止适应度)退出代码:import numpy as npi原创 2022-03-20 19:55:29 · 546 阅读 · 0 评论 -
启发式算法/人工蜂群算法
原理介绍:limit:采蜜蜂蜜源被跟随蜂选择一定次数后蜜源质量仍然低于跟随蜂蜜源把这些采蜜蜂变成工蜂num:固定保留+随机保留采蜜蜂之后剩余的采蜜蜂数量分工:工蜂负责采蜜侦查蜂负责在田野里寻找蜜源(全局搜索)采蜜蜂负责保留蜜源信息和招募跟随蜂跟随蜂负责在它选择的采蜜蜂周围寻找新蜜源(局部搜索)过程开始大家都是工蜂派出一部分工蜂作为侦查蜂,在田野里寻找蜜源蜜源平均质量以上的侦查蜂变采蜜蜂,平均质量一下的侦查蜂变工蜂采蜜蜂跳舞招募跟随蜂(从工蜂中派出一部分工蜂作为跟随蜂)在原创 2022-03-19 09:43:23 · 1125 阅读 · 0 评论 -
启发式算法/蚁群优化算法
原理总述环境:蚁群,信息素,食物,障碍物觅食规则(方向选择):能见度方向寻找食物;往信息素浓度高的方向寻找食物;往没有障碍物的方向移动能见度能见度η\etaη:与城市距离成反比ηa,b(t)=1da,b\eta_{a,b}(t)=\frac{1}{d_{a,b}}ηa,b(t)=da,b1a,ba,ba,b:city_a,city_bddd:distancettt:第t次迭代信息素信息素相关公式:信息素更新:τa,b(t+1)=(1−ρ)τa,b(t)+Δτa,b(t)原创 2022-03-13 17:01:36 · 839 阅读 · 0 评论 -
启发式算法/模拟退火
原理简介爬山算法:总是将当前位置高度和前后位置高度对比,如果当前位置高度比前后位置都高,那么就认为到达了最优位置,然而他山更比此山高,这个位置很可能只是局部最优(一座小山)好比你来到了世界上最矮的山-静山之巅,左右四顾已经没有比静山之巅更高的地方静山位于山东寿光市西南8公里,孙家集街道云马家庄之间,海拔高度0.6米进一步:如果你站在静山之巅能够随性远行,离开局部最优,你会发现山东还有泰山,中国还有珠穆朗玛峰模拟退火算法内部就含有这种随机性,在某一温度下的迭代过程中,分子的能量可能比上原创 2022-03-12 12:28:22 · 4165 阅读 · 0 评论 -
启发式算法/遗传算法
原理简介选择根据适应度,选择染色体,作为交叉复制步骤的输入轮盘赌算法:介绍:计算个体概率:p(xi)=fitness(xi)∑j=1Nfitness(xj)p(x_i)=\frac{fitness(x_i)}{\sum\limits_{j=1}^Nfitness(x_j)}p(xi)=j=1∑Nfitness(xj)fitness(xi)计算累计概率:qi=∑j=1ip(xj)q_i=\sum\limits_{j=1}^ip(x_j)qi=j=1∑ip(xj)原创 2022-03-10 17:04:41 · 577 阅读 · 0 评论 -
启发式算法/差分进化算法
原理介绍介绍种群初始化:初代染色体,[x_min,x_max)之间的符合均匀分布的随机数变异:染色体(解向量)做差分运算;使用种群中三条不同的染色体结合变异因子做差分运算,形成变异染色体;考虑了种群染色体信息交叉:变异染色体和原染色体交叉;使用交叉因子交叉染色体中的基因,形成交叉染色体;考虑了种群所有基因信息选择:比较交叉染色体和原染色体选择适应度高的染色体作为下代染色体建模变异:vm(g+1)=xr1(g)+F⋅(xr2(g)−xr3(g))s.t. m≠r1≠r2≠r3原创 2022-03-06 19:07:54 · 542 阅读 · 0 评论 -
启发式算法/粒子群优化算法
原理介绍鸟群在区域内随机搜索食物,每只鸟都不知道食物在什么位置。因此,每只鸟朝着距离食物最近的鸟的周围飞去搜索食物建模粒子:鸟当做粒子速度:粒子在空间中以一定速度飞行位置:根据粒子的速度和之前位置得到下一个位置适应度:个体最佳适应度,群体最佳适应度粒子的当前位置:xi(k)=positioni(k)=[x1i x2i ... xni]T粒子最佳适应度位置:pi(k)=best_positioni(k)=[p1i p2i ... pn原创 2022-03-05 22:03:27 · 340 阅读 · 0 评论 -
启发式算法/灰狼优化算法
原理代码import randomimport numpyclass GreyWolfOptimizer(object): """ 灰狼优化器 """ def __init__(self, lb, ub, dim, grey_wolf_num, iter_num): """ 初始化函数 构建解空间和求解者 :param lb: 解空间下界 :param ub: 解空间上界 :para原创 2022-03-04 12:04:24 · 1506 阅读 · 0 评论