%%  清空环境变量
warning off             % 关闭报警信息
close all               % 关闭开启的图窗
clear                   % 清空变量
clc                     % 清空命令行
%% 导入数据
% 训练集—
P_train = xlsread('data','training set','B2:G191')';
T_train= xlsread('data','training set','H2:H191')';
% 测试集——44个样本
P_test=xlsread('data','test set','B2:G45')';
T_test=xlsread('data','test set','H2:H45')';
M = size(P_train,2);
% 测试集—200个
N = size(T_test,2);
outdim=1; %输出的维度
%%  数据归一化
[p_train, ps_input] = mapminmax(P_train, 0, 1);
p_test = mapminmax('apply', P_test, ps_input);

[t_train, ps_output] = mapminmax(T_train, 0, 1);
t_test = mapminmax('apply', T_test, ps_output);

%%  格式转换
for i = 1 : M 
    vp_train{i, 1} = p_train(:, i);
    vt_train{i, 1} = t_train(:, i);
end

for i = 1 : N 
    vp_test{i, 1} = p_test(:, i);
    vt_test{i, 1} = t_test(:, i);
end
%%  创建待优化函数
ObjFcn = @CostFunction;
%% 优化参数设置
SearchAgents = 10; % 种群数量  50
Max_iterations = 5 ; % 迭代次数   10
lowerbound = [1e-4 0.0001 10 ];%三个参数的下限
upperbound = [1e-2 0.02 100 ];%三个参数的上限
dimension = 3;%数量,即要优化的BiLSTM参数个数
%% 优化BiLSTM
[Best_score,Best_pos,curve]=BWO(SearchAgents,Max_iterations,lowerbound,upperbound,dimension,ObjFcn)

智能算法及其模型预测

Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐