1 内容介绍
在本文中,基于著名的系外行星探测方法,提出了一种新的天体物理学启发式元启发式优化算法,即 Transit Search (TS)。太空望远镜数据库使用凌日技术探测到了 3800 多颗行星。 Transit 是一种比第二种众所周知的成功方法(径向速度)更具潜力的方法,在 2022 年 3 月之前已发现 915 颗行星。由于行星在宇宙尺度上的尺寸很小,因此很难探测到它们。由于过境方法在天体物理学中的高效率及其能力,它已被用于制定本研究的优化技术。在凌日算法中,通过研究每隔一段时间从恒星接收到的光,检查光度的变化,如果观察到接收到的光量减少,则表明有行星从恒星前沿经过。为了评估所提出算法的能力,考虑了 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=100; % 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.