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

📄 prey.m

📁 人工鱼群算法解决旅行商问题,这是在当前互联网上唯一的一个,这个是我自己编的,保证通过
💻 M
字号:
function [Xii,flag]=prey(X,CityNum,i,Visual,trynumber,edge)%本程序用来使第i条人工鱼觅食,假如觅食成功,则flag 为1,X中为i鱼觅食后的状态,否则flag为0
Xii=[];
flag=0;%默认它追尾失败
for j=1:trynumber                   %虽然增加了许多while循环,但是并没用多少时间,为的是首尾兼顾
    while(1)
        DJ=floor(rand*Visual)+1;    %不相同的字段数
        if(DJ>0&DJ<=Visual)         %在视野范围内
            break;
        end
    end
    while(1)
         S(1)=floor(rand*CityNum)+1;
         if(S(1)>1&S(1)<=CityNum)  %在所有城市里
            break;
         end
    end
    p=1;
    while(p<DJ)
       t=floor(rand*CityNum)+1;
       if(t>1&t<=CityNum&sum(S==t)==0)
           p=p+1;
           S(p)=t;
       end
   end
   Xi=X(i,:);
   t=Xi(S(1));
   for k=1:DJ-1
       Xi(S(k))=Xi(S(k+1));
   end
   Xi(S(DJ))=t;
   if(evaluate(Xi,edge)<evaluate(X(i,:),edge))
       Xii=Xi;
       flag=1;
       return;
   end
end
Xii=Xi;
       
   
        
        

⌨️ 快捷键说明

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