Matlab实现算术优化算法(The Arithmetic Optimization Algorithm)
Posted 这是一个很随便的名字
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Matlab实现算术优化算法(The Arithmetic Optimization Algorithm)相关的知识,希望对你有一定的参考价值。
- 算术优化算法 (AOA) 利用数学中主要算术运算符的分布行为,包括(乘法 (M)、除法 (D)、减法 (S) 和加法 (A))。AOA 被数学建模和实施以优化范围广泛的问题。
代码:
clear all
clc
Solution_no=20; %Number of search solutions
F_name='F1'; %Name of the test function F1-f23
M_Iter=1000; %Maximum number of iterations
[LB,UB,Dim,F_obj]=Get_F(F_name); %Give details of the underlying benchmark function
[Best_FF,Best_P,Conv_curve]=AOA(Solution_no,M_Iter,LB,UB,Dim,F_obj); % Call the AOA
figure('Position',[454 445 694 297]);
subplot(1,2,1);
func_plot(F_name);
title('Parameter space')
xlabel('x_1');
ylabel('x_2');
zlabel([F_name,'( x_1 , x_2 )'])
subplot(1,2,2);
semilogy(Conv_curve,'Color','r','LineWidth',2)
title('Convergence curve')
xlabel('Iteration#');
ylabel('Best fitness function');
axis tight
legend('AOA')
display(['The best-obtained solution by Math Optimizer is : ', num2str(Best_P)]);
display(['The best optimal value of the objective funciton found by Math Optimizer is : ', num2str(Best_FF)]);
运行结果:
以上是关于Matlab实现算术优化算法(The Arithmetic Optimization Algorithm)的主要内容,如果未能解决你的问题,请参考以下文章
基于GA优化的BP网络算法分析与MATLAB实现matlab优化算法三