• 【智能优化算法】基于凌日算法求解单目标优化问题附matlab代码Transit Search Optimization Algorithm


    💥💥💥💞💞💞欢迎来到本博客❤️❤️❤️💥💥💥

    📝目前更新:🌟🌟🌟智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真。

                             

                                  🎉🎉欢迎您的到来🎉🎉
    
                    ⛅⛅⛅ 📃CSDN主页:Matlab科研室🌈🌈🌈
    
                  📚📚📚📋所有代码目录见微信公众号:天天Matlab👨•💻👨•💻👨•💻

    1 内容介绍

    Transit Search Optimization Algorithm 代码是从一种新颖的天体物理学启发的元启发式优化算法中提取出来的,该算法基于著名的系外行星探索方法,即凌日搜索(TS)。在凌日算法中,通过研究在一定间隔内从恒星接收到的光,检查亮度的变化,如果观察到接收到的光量减少,则表明行星从恒星锋面经过。为了评估该算法的性能,考虑了73个约束和无约束问题,并将结果与13个著名的优化算法进行了比较。这组示例包括各种类型的问题,包括数学函数(28个高维问题和15个低维问题)、CEC函数(10个问题)、约束数学基准问题(G01–G13)以及7个约束工程问题。结果表明,与其他有效算法相比,对于基准问题,该算法的总体平均误差是最低的

    2 仿真代码

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

    % The following code are extracted from the reference below:

    % https://authors.elsevier.com/sd/article/S2666-7207(22)00018-2

    % Please cite this article as:

    %  M. Mirrashid and H. Naderpour, Transit search: An optimization algorithm

    %  based on exoplanet exploration; Results in Control and Optimization

    %  (2022), doi: https://doi.org/10.1016/j.rico.2022.100127.

    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

    clc; clear; close all

    %% Definition of the Cost Function and its variables

    Function_name='branin';   % Define your cost function (here is "Branin", a benchmark function"

    [Vmin,Vmax,nV,Function] = CostFunction(Function_name);

    CostFunction = @(x) Function(x);

    %% Definition of the Algorithm Parameters

    ns = 5;                 % Number of Stars

    SN = 10;                % Signal to Noise Ratio

    % Note: (ns*SN)=Number of population for the TS algorithm

    maxcycle=500;           % max number of iterations

    %% Transit Search Optimization Algorithm

    disp('Transit Search is runing...')

    [Bests] = TransitSearch (CostFunction,Vmin,Vmax,nV,ns,SN,maxcycle);

    Best_Cost = Bests(maxcycle).Cost

    Best_Solution = Bests(maxcycle).Location

    %% Figure

    figure = figure('Color',[1 1 1]);

    G1=subplot(1,1,1,'Parent',figure);

    x=zeros(maxcycle,1);

    y=zeros(maxcycle,1);

    for i = 1:maxcycle

        y(i,1) = Bests(i).Cost;

        x(i,1) = i;

    end

    plot(x,y,'r-','LineWidth',2);

    xlabel('Iterations','FontWeight','bold','FontName','Times');

    ylabel('Costs','FontWeight','bold','FontName','Times');

    title (['Best Cost = ',num2str(Bests(maxcycle).Cost)])

    box on

    xlim ([1 maxcycle]);

    ylim ([Bests(maxcycle).Cost Bests(1).Cost]);

    set(G1,'FontName','Times','FontSize',20,'FontWeight','bold',...

        'XMinorGrid','on','XMinorTick','on','YMinorGrid','on','YMinorTick','on');

    3 运行结果

    4 参考文献

    [1] Mirrashid M ,  Naderpour H . Transit search: An optimization algorithm based on exoplanet exploration[J]. Results in Control and Optimization, 2022.​

    博主简介:擅长智能优化算法、神经网络预测、信号处理、元胞自动机、图像处理、路径规划、无人机等多种领域的Matlab仿真,相关matlab代码问题可私信交流。

    部分理论引用网络文献,若有侵权联系博主删除。

     

  • 相关阅读:
    SPDK NVMe-oF target多路功能介绍
    java boot项目读取yml配置信息
    Android Jetpack之LifeCycle
    Foundation对于模态框以及Subsystems的深入运用的理解心得
    拆解常见的6类爆款标题写作技巧!
    字正腔圆,万国同音,coqui-ai TTS跨语种语音克隆,钢铁侠讲16国语言(Python3.10)
    零基础Linux_4(权限和初识操作系统)具体用户分类+rwx+umask+粘滞位
    【2023最新B站评论爬虫】用python爬取上千条哔哩哔哩评论
    Docker之Docker镜像相关知识和Docker Registry构建私有镜像库完整操作
    如何修复 Windows 11/10上的 0x8007023e Windows 更新错误
  • 原文地址:https://blog.csdn.net/qq_59747472/article/details/126353090