• 大小: 1.55MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-11-20
  • 语言: Matlab
  • 标签: tag  

资源简介

最新智能算法matlab,具有较好的效果方便学习交流,具有很好的价值

资源截图

代码片段和文件信息

tic % 计时器
%% 清空环境变量
close all
clear
clc
format compact
%% 数据提取
% 载入测试数据wine其中包含的数据为classnumber = 3wine:178*13的矩阵wine_labes:178*1的列向量
load wine.mat
% 选定训练集和测试集
% 将第一类的1-30第二类的60-95第三类的131-153做为训练集
train_wine = [wine(1:30:);wine(60:95:);wine(131:153:)];
% 相应的训练集的标签也要分离出来
train_wine_labels = [wine_labels(1:30);wine_labels(60:95);wine_labels(131:153)];
% 将第一类的31-59第二类的96-130第三类的154-178做为测试集
test_wine = [wine(31:59:);wine(96:130:);wine(154:178:)];
% 相应的测试集的标签也要分离出来
test_wine_labels = [wine_labels(31:59);wine_labels(96:130);wine_labels(154:178)];
%% 数据预处理
% 数据预处理将训练集和测试集归一化到[01]区间
[mtrainntrain] = size(train_wine);
[mtestntest] = size(test_wine);

dataset = [train_wine;test_wine];
% mapminmax为MATLAB自带的归一化函数
[dataset_scaleps] = mapminmax(dataset‘01);
dataset_scale = dataset_scale‘;

train_wine = dataset_scale(1:mtrain:);
test_wine = dataset_scale( (mtrain+1):(mtrain+mtest): );
%% 利用灰狼算法选择最佳的SVM参数c和g
SearchAgents_no=10; % 狼群数量,Number of search agents
Max_iteration=10; % 最大迭代次数,Maximum numbef of iterations
dim=2; % 此例需要优化两个参数c和g,number of your variables
lb=[0.010.01]; % 参数取值下界
ub=[100100]; % 参数取值上界
% v = 5; % SVM Cross Validation参数默认为5

% initialize alpha beta and delta_pos
Alpha_pos=zeros(1dim); % 初始化Alpha狼的位置
Alpha_score=inf; % 初始化Alpha狼的目标函数值,change this to -inf for maximization problems

Beta_pos=zeros(1dim); % 初始化Beta狼的位置
Beta_score=inf; % 初始化Beta狼的目标函数值,change this to -inf for maximization problems

Delta_pos=zeros(1dim); % 初始化Delta狼的位置
Delta_score=inf; % 初始化Delta狼的目标函数值,change this to -inf for maximization problems

%Initialize the positions of search agents
Positions=initialization(SearchAgents_nodimublb);

Convergence_curve=zeros(1Max_iteration);

l=0; % Loop counter循环计数器

% Main loop主循环
while l    for i=1:size(Positions1)  % 遍历每个狼
        
       % Return back the search agents that go beyond the boundaries of the search space
       % 若搜索位置超过了搜索空间,需要重新回到搜索空间
        Flag4ub=Positions(i:)>ub;
        Flag4lb=Positions(i:)        % 若狼的位置在最大值和最小值之间,则位置不需要调整,若超出最大值,最回到最大值边界;
        % 若超出最小值,最回答最小值边界
        Positions(i:)=(Positions(i:).*(~(Flag4ub+Flag4lb)))+ub.*Flag4ub+lb.*Flag4lb; % ~表示取反           
     
      % 计算适应度函数值
       cmd = [‘ -c ‘num2str(Positions(i1))‘ -g ‘num2str(Positions(i2))];
       model=svmtrain(train_wine_labelstrain_winecmd); % SVM模型训练
       [~fitness]=svmpredict(test_wine_labelstest_winemodel); % SVM模型预测及其精度
       fitness=100-fitness(1); % 以错误率最小化为目标
    
        % Update Alpha Beta and Delta
        if fitness            Alpha_score=fitness; % 则将Alpha狼的目标函数值更新为最优目标函数值,Update alpha
            Alpha_pos=Positions(i:); % 同时将Alpha狼的位置更新为最优位置
        end
        
        if fitness>Alpha_score && fitness            Beta_score=fitness; % 则将Beta狼的目标函数值更新为最优目标函数值,Update beta
          

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件    1753133  2016-09-08 10:07  GWO\myself\GWO_finalVersion.pdf

     文件       6625  2016-10-23 00:24  GWO\myself\GWO_SVM_exmp.m

     文件       5780  2016-09-08 10:07  GWO\myself\GWO_SVR_exmp.m

     文件       1845  2016-09-08 10:04  GWO\myself\initialization.m

     文件         70  2016-09-08 10:04  GWO\myself\mymae.m

     文件         85  2016-09-08 10:04  GWO\myself\mymape.m

     文件         74  2016-09-08 10:04  GWO\myself\mymse.m

     文件      20168  2016-09-08 10:08  GWO\myself\wine.mat

     文件        447  2016-09-08 10:04  GWO\myself\wndspd.mat

     文件      18039  2016-10-25 12:48  GWO\xuejies\cec09.m

     文件        422  2016-10-25 12:48  GWO\xuejies\CreateEmptyParticle.m

     文件        529  2016-10-25 12:48  GWO\xuejies\CreateHypercubes.m

     文件        652  2016-10-25 12:48  GWO\xuejies\DeleteFromRep.m

     文件        450  2016-10-25 12:48  GWO\xuejies\DetermineDomination.m

     文件        172  2016-10-25 12:49  GWO\xuejies\Dominates.m

     文件        107  2016-10-25 12:49  GWO\xuejies\GetCosts.m

     文件       3644  2015-12-15 21:05  GWO\xuejies\GetGridIndex.m

     文件        107  2016-10-25 12:49  GWO\xuejies\GetNonDominatedParticles.m

     文件        352  2016-10-25 12:50  GWO\xuejies\GetOccupiedCells.m

     文件       5623  2016-10-25 13:16  GWO\xuejies\MOGWO.asv

     文件       5625  2016-10-24 23:39  GWO\xuejies\MOGWO.m

     文件      88018  2016-10-25 12:56  GWO\xuejies\results.mat

     文件        105  2016-10-25 12:48  GWO\xuejies\RouletteWheelSelection.m

     文件        577  2016-10-25 12:50  GWO\xuejies\SelectLeader.m

     文件        790  2016-10-25 12:50  GWO\xuejies\xboundary.m

     目录          0  2016-10-23 22:55  GWO\myself

     目录          0  2016-10-25 12:51  GWO\xuejies

     目录          0  2016-10-24 23:03  GWO

----------- ---------  ---------- -----  ----

              1913439                    28

............此处省略1个文件信息

评论

共有 条评论