• 【智能优化算法】基于凌日算法求解单目标优化问题附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代码问题可私信交流。

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

     

  • 相关阅读:
    压缩感知常用的测量矩阵
    UE4 调用声音
    Linux应用开发基础知识——Framebuffer 应用编程(四)
    Python操作自动化
    程序员这是什么代码
    【Linux】第十站:git和gdb的基本使用
    Java刷题面试系列习题(九)
    《LeetCode力扣练习》代码随想录——链表(反转链表---Java)
    Altair:Python数据可视化库的魅力之旅
    配置nginx常用命令
  • 原文地址:https://blog.csdn.net/qq_59747472/article/details/126353090