💥💥💥💥💥💥💥💥💞💞💞💞💞💞💞💞💞Matlab武动乾坤博客之家💞💞💞💞💞💞💞💞💞💥💥💥💥💥💥💥💥
🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀🚤🚤🚤🚤🚤🚤🚤🚤🚤🚤🚤🚤🚤🚤🚤🚤🚤🚤🚤🚤🚀🚀🚀🚀🚀🚀🚀🚀🚀🚀
🔊博主简介:985研究生,Matlab领域科研开发者;
🚅座右铭:行百里者,半于九十。
🏆代码获取方式:
优快云 Matlab武动乾坤—代码获取方式
更多Matlab优化求解仿真内容点击👇
①Matlab优化求解(进阶版)
⛳️关注优快云 Matlab武动乾坤,更多资源等你来!!
⛄一、Tent映射的混合灰狼优化算法简介
1Tent 混沌映射
GWO算法在解决函数优化问题中,通常利用随机产生的数据作为初始种群信息,这将难以保留种群的多样性,会造成算法的寻优结果较差. 然而,混沌运动具有随机性、规律性、以及遍历性的特征,在求解函数优化问题时这些特性能够使算法容易逃离局部最优解,从而可以维持种群的多样性,同时提高全局搜索能力. 现有的混沌映射有Tent 映 射、 Logistic 映射等. 但是,不同的混沌映射对于提高函数优化能力不同. 目前文献中大多数采用 Logistic 映射,但是该映射在[0, 0.1]和[0.9, 1]两个区域内有较高的取值率. 因而,Logistic 映射遍历不均匀性会导致算法的收敛速度较慢,从而导致算法的效率降低. 单梁[15]等证明Tent 映射比 Logistic 映射的遍历均匀性更好以及能够提高算法的寻优速度,与此同时能够在[0, 1]之间产生分布较均匀的初始值. 因此,本文将利用 Tent 映射初始化种群. Tent 映射表达式:
当 u = 1 / 2 时,Tent 映射具有最典型的形式,此时所得的序列具有均匀的分布,对不同的参数有近似一致的分布密度. 因而,本文引用的 Tent 混沌映射的公式为
即 xt+1 = (2xt)mod1 Tent 混沌映射产生序列值的具体步骤如下所示:Step1: 随机产生初始值 x0(在[0,1] 之间且避免 x0 落在 (0.2,0.4,0.6,0.8)), 记 入 标 记 组, 即 y(1) =x0 ,i = 1,j = 1; Step2: 按式(14) 迭代产生一个x 序列,i = i + 1;
Step3:If 达到最大迭代次数,则转向 Step4;Else if xi = {0,0.25,0.5,0.75} 或者 xi = xi - k,k = {0,1,2, 3,4},则按式 x(i) = y(j + 1) = y(j) + c 改变迭代初值,c是随机数,j=j + 1; Else 返回 Step2; Step4:运行停止,保留x序列.
⛄二、部分源代码
% PSO
% GWO
% IGWO
% PSO_GWO
%% 清空环境变量
clear
clc
%% 基本参数
N = 30; % 种群规模
maxgen = 500; % 最大迭代次数
%% 获取函数名
Function_name = ‘F4’; % 从F1到F23的测试函数的名称(本文中的表1、2、3)
[lb, ub, dim, fobj] = Get_Functions_details(Function_name);
%% 初始化种群位置
X = initialization(N, dim, ub, lb);
for i = 1:N
fitness(i) = fobj(X(i, 😃);
end
cnt_max = 30;
curve_pso = zeros(1, maxgen);
curve_gwo = zeros(1, maxgen);
curve_igwo = zeros(1, maxgen);
curve_pso_gwo = zeros(1, maxgen);
for cnt = 1:cnt_max
%% 传入函数变量
[bestvalue_PSO, gbest_PSO, Curve_PSO] = PSO(N, maxgen, X, fitness, lb, ub, dim, fobj);
[bestvalue_GWO, gbest_GWO, Curve_GWO] = GWO(N, maxgen, X, fitness, lb, ub, dim, fobj);
[bestvalue_IGWO, gbest_IGWO, Curve_IGWO] = IGWO(N, maxgen, X, fitness, lb, ub, dim, fobj);
[bestvalue_PSO_GWO, gbest_PSO_GWO, Curve_PSO_GWO] = PSO_GWO(N, maxgen, X, fitness, lb, ub, dim, fobj);
%%
curve_pso = curve_pso + Curve_PSO;
curve_gwo = curve_gwo + Curve_GWO;
curve_igwo = curve_igwo + Curve_IGWO;
curve_pso_gwo = curve_pso_gwo + Curve_PSO_GWO;
end
%% 绘图比较
figure;
t = 1:maxgen;
semilogy(t, curve_pso/cnt_max, ‘bo-’, t, curve_gwo/cnt_max, ‘k*-’, t, curve_igwo/cnt_max, ‘mx-’,…
t, curve_pso_gwo/cnt_max, ‘rd-’, ‘linewidth’, 2, ‘linewidth’, 1.5, ‘MarkerSize’,7, ‘MarkerIndices’, 1:50:maxgen);
legend(‘PSO’, ‘GWO’, ‘IGWO’, ‘PSO_GWO’);
title(‘F3’);
xlabel ‘迭代次数’;
ylabel ‘目标函数值’;
⛄三、运行结果
⛄四、matlab版本及参考文献
1 matlab版本
2014a
2 参考文献
[1] 包子阳,余继周,杨杉.智能优化算法及其MATLAB实例(第2版)[M].电子工业出版社,2016.
[2]张岩,吴水根.MATLAB优化算法源代码[M].清华大学出版社,2017.
3 备注
简介此部分摘自互联网,仅供参考,若侵权,联系删除
🍅 仿真咨询
1 各类智能优化算法改进及应用
生产调度、经济调度、装配线调度、充电优化、车间调度、发车优化、水库调度、三维装箱、物流选址、货位优化、公交排班优化、充电桩布局优化、车间布局优化、集装箱船配载优化、水泵组合优化、解医疗资源分配优化、设施布局优化、可视域基站和无人机选址优化
2 机器学习和深度学习方面
卷积神经网络(CNN)、LSTM、支持向量机(SVM)、最小二乘支持向量机(LSSVM)、极限学习机(ELM)、核极限学习机(KELM)、BP、RBF、宽度学习、DBN、RF、RBF、DELM、XGBOOST、TCN实现风电预测、光伏预测、电池寿命预测、辐射源识别、交通流预测、负荷预测、股价预测、PM2.5浓度预测、电池健康状态预测、水体光学参数反演、NLOS信号识别、地铁停车精准预测、变压器故障诊断
3 图像处理方面
图像识别、图像分割、图像检测、图像隐藏、图像配准、图像拼接、图像融合、图像增强、图像压缩感知
4 路径规划方面
旅行商问题(TSP)、车辆路径问题(VRP、MVRP、CVRP、VRPTW等)、无人机三维路径规划、无人机协同、无人机编队、机器人路径规划、栅格地图路径规划、多式联运运输问题、车辆协同无人机路径规划、天线线性阵列分布优化、车间布局优化
5 无人机应用方面
无人机路径规划、无人机控制、无人机编队、无人机协同、无人机任务分配
6 无线传感器定位及布局方面
传感器部署优化、通信协议优化、路由优化、目标定位优化、Dv-Hop定位优化、Leach协议优化、WSN覆盖优化、组播优化、RSSI定位优化
7 信号处理方面
信号识别、信号加密、信号去噪、信号增强、雷达信号处理、信号水印嵌入提取、肌电信号、脑电信号、信号配时优化
8 电力系统方面
微电网优化、无功优化、配电网重构、储能配置
9 元胞自动机方面
交通流 人群疏散 病毒扩散 晶体生长
10 雷达方面
卡尔曼滤波跟踪、航迹关联、航迹融合