Código fuente de colaboración del proyecto
loc = [0.3663, 0.9076; 0.7459, 0.8713; 0.4521, 0.8465;
0.7624, 0.7459; 0.7228;
0,4224, 0,7129;0,5908, 0,6931;0,3201, 0,6403;
0,5974, 0,6436;0,3630, 0,5908;0,6700, 0,5908;
0,6172, 0,5495;0,6 67,0,5446; 0.1980 , 0.4686;
0.3498, 0.4488;0.2673, 0.4274;0.9439, 0.4208;
0.8218, 0.3795;0.3729, 0.2690;0.6073 0.2640;
0 .415 8, 0,2475;0,5990, 0,2261;0,3927, 0,1947;
0,5347, 0,1898;0,3960, 0,1320;0,6287, 0,0842;
0,5000, 0,0396;0,9802, 8 2;0,6832, 0,8515 ];
% loc=rand(50, 2);
NumCity = longitud (loc);
Para i = 1:NumCity,
Para j = 1:NumCity,
distancia(i,j) = norma(loc(i,)- loc(j,);
Fin
Fin
Distancia = distancia + ojo (NumCity) * eps
%^^^^^^^^^^^^^^^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^<. /p>
%^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^
%^^^^^^^^^ ^^^^^^^ ^^^Inicializar parámetros de CA^^^^^^^^^^^^^
% P:ant α β ρ η Q
% V:31 1 5 0 1 1./distancia 100
ant = 31; a = 1; b = 5; /Distancia; q = 100;
%^^^^^^^^^^^^
t = (núm ciudad); >Tabu=zeros(ant, NumCity); R_best=zeros(Nm, num ciudad
L_ave=zeros(Nm, 1);
*piezas (Nm, 1);
%^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Espasticidad
p>Para Nc=1:Nm
tabu =[];
%^^^^^^^^^^^^^^^^^^ La ciudad donde las hormigas ponen ^^^^^^^^^^^^^
randpos =[];
For i=1:(ceil(ant/NumCity)) , Randpos= [Randpos, rand perm(num ciudad)]; end
Tabu(:, 1)=(Randpos(1, 1:ant))';
%^ ^^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^^ ^^^^^^^^^^^^^^
%^^^^^^^^^^^^Las hormigas eligen la siguiente ciudad según la probabilidad ^^^^^^^ ^^^^^^
Para j=2:NumCity,
Para i=1:ant,
VisitedCity= Tabu(i,1:( j-1));
No visitado=cero(1,(num ciudad-j+1));
p=No visitado;
JC = 1;
Para k=1:NumCity
if longitud(find(ciudad visitada = = k))= = 0
No visitada (Jc) = k;
Jc = Jc+1
Fin
Fin
%^^^ ^^^^^^^ ^^
Para k=1: longitud (no visitado)
P(k)=(t(CiudadVisitada(end),UnVisited(k) ). ^a)...
*(E(Ciudad Visitada(fin),No Visitada(k)).
^b);
Fin
P = P/suma(P);
%^^^^^^^^^^^^ p>
pcum = cumsum(P);
select = buscar(Pcum & gt;= rand);
% Seleccionar = buscar(P = = max(P )
ToVisit = no visitado (Select(1));
Tabu(i, j) = para visitar
Fin
Fin
Si Nc & gt=2, Tabu(1,)=R_best(Nc-1,
%^^^^^^^^^ ^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^ ^^^^^^^^^
%^^^^^^^^^^^Grabar^^^^^^^^^^^^^ Mejor ruta
l=cero(ant,1);
dt=cero(NumCity);
for i=1:ant
R=Tabu(i ,);
Para j=1:(NumCity-1), L(I)= L(I)+distancia (R(j), R(j+ 1));
L(I)= L(I)+distancia(R(1),R(NumCiudad));
Para j=1:(NumCiudad- 1)
dt(Tabú(i,j),Tabú(i,j+1))=dt(Tabú(i,j),Tabú(i,j+1))+q .( L(I));
Fin
dt(Tabu(i, NumCity), Tabu(i, 1))=dt(Tabu(i, NumCity), Tabu(i ,1))+q ./L (I);
Fin
L_mejor(Nc)= min(L);
pos = buscar (L = = L_mejor(Nc)) ;
R_best(Nc,)=Tabu(pos(1),:);
L_ave(Nc)= media (L);
t= (1p). * t+dt;
%^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^ ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
%^^^^^ ^^^^^ ^^·Updetta·^^^^^^^^^^^^^
% dt = cero (NumCity);
% para i =1:ant
Porcentaje de j=1:NumCiudad-1
% dt(Tabu(i,j),Tabu(i,j+1))=dt(Tabu (i,j),Tabu (i,j+1))+q .(L(I));
%End
% dt(Tabu(i,NumCity) ,Tabu(i,1) )=dt(Tabu(i,NumCiudad),Tabu(i,1))+q ./L(I);
%End
%t=(1-p ).
* t+dt;
% Tabu=zeros(ant, NumCity);
Fin
Carbono orgánico total
pos = encontrar (L_mejor = = min(L_mejor));
Ruta_más corta = R_mejor(Pos(1),:);
Longitud_más corta = L_ mejor(Pos(1));
Gráfico de rama (1, 2, 1)
Dibujar ruta (loc, Shortest_Route)
Gráfico de rama (1, 2, 2)
Dibujando (L_best)
Continuar
Dibujando (L_ave)