向外搜索以增加种群多样性的优化算法(Matlab代码实现)

简介: 向外搜索以增加种群多样性的优化算法(Matlab代码实现)

💥1 概述

向外搜索(OS)是一种新方案,旨在为改进进化算法的收敛性提供多种形式。OS不是使用新功能,而是使用进化算法的微分向量方程执行。本研究推荐了三种操作系统方案,以获得提高进化算法性能的解决方案。第一个使用算法的原始方程来生成操作系统解决方案或候选解决方案。第二种利用原始方程为一个人同时生成OS解决方案和候选解决方案。最后一种使用另一种算法的方程为所研究的算法创建操作系统解决方案。使用CEC2015基准测试套件检查了三种生物启发算法,以比较所提出的OS方案的各自性能。比较结果表明,从当前区域向外搜索区域优于检查通过基于对立的学习获得的对立位置。


📚2 运行结果

部分代码:

clc;
clear;
close all;
ZZZ=1;
inidown=-10;
iniup=10;
down=-10;
up=10;
op=0;
goal=0;
D = 10;
N = 20;
func_num=1;
switch (func_num)
    case (1)
        CostFunction=@Ackley
    case (2)
        CostFunction=@Rastrigin
    case (3)
        CostFunction=@Rosenbrock
    case (4)
        CostFunction=@Sphere
end
for iz=1:ZZZ
    options.iterations = 30000;
        options.space = [down up];
        options.inispace = [inidown iniup];
        nvars=D;
        options.population = N;    
        options.Goal = goal;
        options.op = op;
        % search space
        if size(options.space,1) == 1
            for i=1:nvars
                space(i,:)=options.space;
            end
        end
        options.space=space;
        % initial space
        if size(options.inispace,1) == 1
            for i=1:nvars
                inispace(i,:)=options.inispace;
            end
        end
        options.inispace=inispace;
        %%%%  please find Table 9 in An outward search (OS) to increase population diversity for optimization algorithms
        [WP, FVAL, OUTPUT] = PSO_sub(CostFunction, nvars, options);  % original PSO
        pause
        [WP, FVAL, OUTPUT] = PSO_sub_OS3(CostFunction, nvars, options); %PSO(OS3) refers to Algorithm 3
        pause
        [WP, FVAL, OUTPUT] = PSO_sub_OBL(CostFunction, nvars, options); %PSO(OBL) refers to OBL
    end %iz
clc;
clear;
close all;
ZZZ=1;
inidown=-10;
iniup=10;
down=-10;
up=10;
op=0;
goal=0;
D = 10;
N = 20;
func_num=1;
switch (func_num)
    case (1)
        CostFunction=@Ackley
    case (2)
        CostFunction=@Rastrigin
    case (3)
        CostFunction=@Rosenbrock
    case (4)
        CostFunction=@Sphere
end
for iz=1:ZZZ
    options.iterations = 30000;
        options.space = [down up];
        options.inispace = [inidown iniup];
        nvars=D;
        options.population = N;    
        options.Goal = goal;
        options.op = op;
        % search space
        if size(options.space,1) == 1
            for i=1:nvars
                space(i,:)=options.space;
            end
        end
        options.space=space;
        % initial space
        if size(options.inispace,1) == 1
            for i=1:nvars
                inispace(i,:)=options.inispace;
            end
        end
        options.inispace=inispace;
        %%%%  please find Table 9 in An outward search (OS) to increase population diversity for optimization algorithms
        [WP, FVAL, OUTPUT] = PSO_sub(CostFunction, nvars, options);  % original PSO
        pause
        [WP, FVAL, OUTPUT] = PSO_sub_OS3(CostFunction, nvars, options); %PSO(OS3) refers to Algorithm 3
        pause
        [WP, FVAL, OUTPUT] = PSO_sub_OBL(CostFunction, nvars, options); %PSO(OBL) refers to OBL
    end %iz

🌈3 Matlab代码实现

🎉4 参考文献

部分理论来源于网络,如有侵权请联系删除。


[1]Hsing-Chih Tsai (2022) An outward search to increase population diversity for optimization algorithms


相关文章
|
2天前
|
算法 数据挖掘 数据安全/隐私保护
基于FCM模糊聚类算法的图像分割matlab仿真
本项目展示了基于模糊C均值(FCM)算法的图像分割技术。算法运行效果良好,无水印。使用MATLAB 2022a开发,提供完整代码及中文注释,附带操作步骤视频。FCM算法通过隶属度矩阵和聚类中心矩阵实现图像分割,适用于灰度和彩色图像,广泛应用于医学影像、遥感图像等领域。
|
3天前
|
算法 调度
基于遗传模拟退火混合优化算法的车间作业最优调度matlab仿真,输出甘特图
车间作业调度问题(JSSP)通过遗传算法(GA)和模拟退火算法(SA)优化多个作业在并行工作中心上的加工顺序和时间,以最小化总完成时间和机器闲置时间。MATLAB2022a版本运行测试,展示了有效性和可行性。核心程序采用作业列表表示法,结合遗传操作和模拟退火过程,提高算法性能。
|
4天前
|
存储 算法 决策智能
基于免疫算法的TSP问题求解matlab仿真
旅行商问题(TSP)是一个经典的组合优化问题,目标是寻找经过每个城市恰好一次并返回起点的最短回路。本文介绍了一种基于免疫算法(IA)的解决方案,该算法模拟生物免疫系统的运作机制,通过克隆选择、变异和免疫记忆等步骤,有效解决了TSP问题。程序使用MATLAB 2022a版本运行,展示了良好的优化效果。
|
3天前
|
机器学习/深度学习 算法 芯片
基于GSP工具箱的NILM算法matlab仿真
基于GSP工具箱的NILM算法Matlab仿真,利用图信号处理技术解析家庭或建筑内各电器的独立功耗。GSPBox通过图的节点、边和权重矩阵表示电气系统,实现对未知数据的有效分类。系统使用MATLAB2022a版本,通过滤波或分解技术从全局能耗信号中提取子设备的功耗信息。
|
3天前
|
机器学习/深度学习 算法 5G
基于MIMO系统的SDR-AltMin混合预编码算法matlab性能仿真
基于MIMO系统的SDR-AltMin混合预编码算法通过结合半定松弛和交替最小化技术,优化大规模MIMO系统的预编码矩阵,提高信号质量。Matlab 2022a仿真结果显示,该算法能有效提升系统性能并降低计算复杂度。核心程序包括预编码和接收矩阵的设计,以及不同信噪比下的性能评估。
18 3
|
4天前
|
人工智能 算法 大数据
Linux内核中的调度算法演变:从O(1)到CFS的优化之旅###
本文深入探讨了Linux操作系统内核中进程调度算法的发展历程,聚焦于O(1)调度器向完全公平调度器(CFS)的转变。不同于传统摘要对研究背景、方法、结果和结论的概述,本文创新性地采用“技术演进时间线”的形式,简明扼要地勾勒出这一转变背后的关键技术里程碑,旨在为读者提供一个清晰的历史脉络,引领其深入了解Linux调度机制的革新之路。 ###
|
8天前
|
机器学习/深度学习 算法 调度
基于ACO蚁群优化的VRPSD问题求解matlab仿真,输出规划路径结果和满载率
基于ACO蚁群优化的VRPSD问题求解MATLAB仿真,输出ACO优化的收敛曲线、规划路径结果及每条路径的满载率。在MATLAB2022a版本中运行,展示了优化过程和最终路径规划结果。核心程序通过迭代搜索最优路径,更新信息素矩阵,确保找到满足客户需求且总行程成本最小的车辆调度方案。
|
14天前
|
人工智能 算法 数据安全/隐私保护
基于遗传优化的SVD水印嵌入提取算法matlab仿真
该算法基于遗传优化的SVD水印嵌入与提取技术,通过遗传算法优化水印嵌入参数,提高水印的鲁棒性和隐蔽性。在MATLAB2022a环境下测试,展示了优化前后的性能对比及不同干扰下的水印提取效果。核心程序实现了SVD分解、遗传算法流程及其参数优化,有效提升了水印技术的应用价值。
|
13天前
|
存储 缓存 算法
优化轮询算法以提高资源分配的效率
【10月更文挑战第13天】通过以上这些优化措施,可以在一定程度上提高轮询算法的资源分配效率,使其更好地适应不同的应用场景和需求。但需要注意的是,优化策略的选择和实施需要根据具体情况进行详细的分析和评估,以确保优化效果的最大化。
|
14天前
|
并行计算 算法 IDE
【灵码助力Cuda算法分析】分析共享内存的矩阵乘法优化
本文介绍了如何利用通义灵码在Visual Studio 2022中对基于CUDA的共享内存矩阵乘法优化代码进行深入分析。文章从整体程序结构入手,逐步深入到线程调度、矩阵分块、循环展开等关键细节,最后通过带入具体值的方式进一步解析复杂循环逻辑,展示了通义灵码在辅助理解和优化CUDA编程中的强大功能。
下一篇
无影云桌面