⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 forecast.m

📁 平时练习时的一些仿真程序
💻 M
字号:
%  本程序是基于人工免疫原理的天气预报系统的MATLAB实现程序
%  实现了对4、5月份的气象预报
%  具体算法请参考该文献 
%  易世华2006年3月15日
clc
clear
load data1 
load data2
result=zeros(n,6);
result(:,1:3)=ag(:,13:15);
for i=1:n                             %第i个抗原     
    for c=1:8
        for j=1:nm(c)
            M(j,16,c)=1-sqrt((M(j,1:12,c)-agnor(i,:))*(M(j,1:12,c)-agnor(i,:))');
        end        
    end 
    [Mmax num]=max(M(:,16,:));      %找出刺激值最大的记忆细胞
    [Mmax num2]=max(Mmax(1,1,:));
    M(num(1,1,num2),16,num2)=0;
     
    [Mmax num]=max(M(:,16,:));
    [Mmax num4]=max(Mmax(1,1,:));
    M(num(1,1,num4),16,num4)=0;
   
    [Mmax num]=max(M(:,16,:));
    [Mmax num6]=max(Mmax(1,1,:));
    M(num(1,1,num6),16,num6)=0;
    
    fore1=zeros(1,8);
    fore1(num2)=0.45;
    
    fore2=zeros(1,8);    
    fore2(num4)=0.35;
    
    fore3=zeros(1,8);
    fore3(num6)=0.2;
    
    fore=fore1+fore2+fore3;          %3个刺激值最大的记忆细胞投票决定天气情况的预报值        
    [Mmax num]=max(fore);    
    switch num
         case 1
              result(i,4:6)=[0 0 0];                 
         case 2
              result(i,4:6)=[0 0 1];  
         case 3
              result(i,4:6)=[0 1 0];
         case 4
              result(i,4:6)=[0 1 1];    
         case 5
              result(i,4:6)=[1 0 0];    
         case 6
              result(i,4:6)=[1 0 1];    
         case 7
              result(i,4:6)=[1 1 0];    
         case 8
              result(i,4:6)=[1 1 1];        
    end 
end
today=(n-sum(bitxor(result(:,1),result(:,4))))/n
tomorrow=(n-sum(bitxor(result(:,2),result(:,5))))/n
tomorrow2=(n-sum(bitxor(result(:,3),result(:,6))))/n    

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -