close all;
clear all;
m=10;Alpha=1;Beta=5;Rho=0.1;NC_max=200;Q=100;
C=[ 1304 2312;
3639 1315;
4177 2244;
3712 1399;
3488 1535;
3326 1556;
3238 1229;
4196 1004;
4312 790;
4386 570;
3007 1970;
2562 1756;
2788 1491;
2381 1676;
1332 695;
3715 1678;
3918 2179;
4061 2370;
3780 2212;
3676 2578;
4029 2838;
4263 2931;
3429 1908;
3507 2367;
3394 2643;
3439 3201;
2935 3240;
3140 3550;
2545 2357;
2778 2826;
2370 2975 ];
%%=========================================================================
%% ACATSP.m
%% Ant Colony Algorithm for Traveling Salesman Problem
%% ChengAihua,PLA Information Engineering University,ZhengZhou,China
%% Email:aihuacheng@gmail.com
%% All rights reserved
%%-------------------------------------------------------------------------
%% 主要符号说明
%% C n个城市的坐标,n×2的矩阵
%% NC_max 最大迭代次数
%% m 蚂蚁个数
%% Alpha 表征信息素重要程度的参数
%% Beta 表征启发式因子重要程度的参数
%% Rho 信息素蒸发系数
%% Q 信息素增加强度系数
%% R_best 各代最佳路线
%% L_best 各代最佳路线的长度
%%=========================================================================
%%第一步:变量初始化
n=size(C,1);%C表示问题的规模(城市个数)
%%D=zeros(n,n);%D表示完全图的赋权邻接矩阵
%%for i=1:n
%% for j=1:n
%% if i~=j
%% D(i,j)=((C(i,1)-C(j,1))^2+(C(i,2)-C(j,2))^2)^0.5;
%% else
%% D(i,j)=eps;
%% end
%% D(j,i)=D(i,j);
%% end
%%end
%Eta=1./D;%Eta为启发因子,这里设为距离的倒数
Tau=ones(n,n);%Tau为信息素矩阵
Tabu=zeros(m,n);%存储并记录路径的生成
NC=1;%迭代计数器
R_best=zeros(NC_max,n);%各代最佳路线
L_best=inf.*ones(NC_max,1);%各代最佳路线的长度
L_ave=zeros(NC_max,1);%各代路线的平均长度
while NC<=NC_max%停止条件之一:达到最大迭代次数
%%第二步:将m只蚂蚁放到n个城市上
Randpos=[];
for i=1:(ceil(m/n))
Randpos=[Randpos,randperm(n)];
end
Tabu(:,1)=(Randpos(1,1:m))';
%%第三步:m只蚂蚁按概率函数选择下一座城市,完成各自的周游
for j=2:n
for i=1:m
visited=Tabu(i,1:(j-1));%已访问的城市
J=zeros(1,(n-j+1));%待访问的城市
P=J;%待访问城市的选择概率分布
Jc=1;
for k=1:n
if length(find(visited==k))==0
J(Jc)=k;
Jc=Jc+1;
end
end
%下面计算待选城市的概率分布
for k=1:length(J)
% P(k)=(Tau(visited(end),J(k))^Alpha)*(Eta(visited(end),J(k))^Beta);
P(k)=(Tau(visited(end),J(k))^Alpha)
end
P=P/(sum(P));
%按概率原则选取下一个城市
Pcum=cumsum(P);
Select=find(Pcum>=rand);
to_visit=J(Select(1));
Tabu(i,j)=to_visit;
end
end
if NC>=2
Tabu(1,:)=R_best(NC-1,:);
end
%%第四步:记录本次迭代最佳路线
%L=zeros(m,1);
%for i=1:m
% R=Tabu(i,:);
% for j=1:(n-1)
% L(i)=L(i)+D(R(j),R(j+1));
% end
% L(i)=L(i)+D(R(1),R(n));
%end
%L_best(NC)=min(L);
%pos=find(L==L_best(NC));
%R_best(NC,:)=Tabu(pos(1),:);
%L_ave(NC)=mean(L);
%NC=NC+1;
A=zero(1,3);
C=zero(1,3);
for i=1:m
xh(1,:)=Tabu(i,1:4);
xh(2,:)=Tabu(i,5:8);
xh(3,:)=Tabu(i,9:12);
for ll=1:3
for nn=1:3
A(1,ll)=exp(j*(xh(ll,nn)-xh(ll,nn+1)))+A(1,ll);
end
A(1,ll)=(1/4)*A(1,ll);
end
for nn=1:3
C(1,1)=exp(j*(xh(1,nn)-xh(2,nn+1)))+C(1,1);
C(1,2)=exp(j*(xh(1,nn)-xh(3,nn+1)))+C(1,2);
C(1,3)=exp(j*(xh(2,nn)-xh(3,nn+1)))+C(1,3);
end
for ll=1:3
C(1,ll)=(1/4)*C(1,ll);
end
AA=max(abs(A(1,1)),abs(A(1,2)),abs(A(1,3)))
BB=max(abs(C(1,1)),abs(C(1,2)),abs(C(1,3)))
CC=(abs(A(1,1)))^2+(abs(A(1,2)))^2+(abs(A(1,3)))^2
DD=(abs(C(1,1)))^2+(abs(C(1,2)))^2+(abs(C(1,3)))^2
E(i)=AA+BB+CC+DD;
end
L_best(NC)=min(E);
pos=find(E==L_best(NC));
R_best(NC,:)=Tabu(pos(1),:);
L_ave(NC)=mean(E);
NC=NC+1;
%%第五步:更新信息素
Delta_Tau=zeros(n,n);
for i=1:m
for j=1:(n-1)
Delta_Tau(Tabu(i,j),Tabu(i,j+1))=Delta_Tau(Tabu(i,j),Tabu(i,j+1))+Q/L(i);
end
Delta_Tau(Tabu(i,n),Tabu(i,1))=Delta_Tau(Tabu(i,n),Tabu(i,1))+Q/L(i);
end
Tau=(1-Rho).*Tau+Delta_Tau;
%%第六步:禁忌表清零
Tabu=zeros(m,n);
end
%%第七步:输出结果
Pos=find(L_best==min(L_best));
Shortest_Route=R_best(Pos(1),:);
Shortest_Length=L_best(Pos(1));
%subplot(1,2,1)
%DrawRoute(C,Shortest_Route)
%subplot(1,2,2)
%plot(L_best)
%hold on
%plot(L_ave)
没有合适的资源?快使用搜索试试~ 我知道了~
matlab_传统的相控阵雷达,发射信号完全相关_正交波束
共4个文件
m:4个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
5星 · 超过95%的资源 1 下载量 199 浏览量
2022-07-03
12:38:08
上传
评论 2
收藏 5KB ZIP 举报
温馨提示
传统的相控阵雷达,发射信号完全相关,通过对每个阵元加不同相移就可以改变波束的发射方向。以这种方式形成的波束通常主瓣较窄,信噪比比较高,若用于跟踪方向先验已知目标或只对空间某一窄的领域进行搜索时非常有利。本代码可以实现正交波束的形成.
资源推荐
资源详情
资源评论
收起资源包目录
传统的相控阵雷达,发射信号完全相关.zip (4个子文件)
传统的相控阵雷达,发射信号完全相关
ANTORTH.m 5KB
ACATSP.m 3KB
draft.m 542B
DrawRoute.m 573B
共 4 条
- 1
资源评论
- uvuva2023-11-16资源有一定的参考价值,与资源描述一致,很实用,能够借鉴的部分挺多的,值得下载。
wouderw
- 粉丝: 276
- 资源: 2959
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功