ZIPA星算法matlab代码 2.2KB

m0_69611489需要积分:4(1积分=1元)

资源文件列表:

A星算法.zip 大约有5个文件
  1. A星算法/
  2. A星算法/cal.m 71B
  3. A星算法/Change.m 194B
  4. A星算法/eg.m 2.34KB
  5. A星算法/judge.m 220B

资源介绍:

A星算法matlab代码
clc clear close all %% 设置地图 map=[0 0 0 0 0;0 0 1 1 0;1 0 0 1 0;0 1 0 1 0;0 0 0 1 0;0 0 0 0 0];%地图 S=[0.5 0.5]; %起点 E=[4.5 5.5]; %终点 G=inf*ones(size(map));%实际代价 P=cell(size(map)); %根节点 B=zeros(size(map)); %关闭 K=zeros(size(map)); %开放 Limit=cal(map); %% 处理起点 J_S=Change(map,S,1); K(J_S(1),J_S(2))=1; G(J_S(1),J_S(2))=0; %% 循环寻路 while 1 [chx,chy]=find(K==1); if isempty(chx) disp('未找到路径') break end W=[]; for i=1:size(chx,1) W=[W,G(chx(i),chy(i))]; end [~,index]=min(W); index=index(1); chW=[chx(index),chy(index)]; J_chW=Change(map,chW,-1); DK=[J_chW(1)-1,J_chW(2); J_chW(1)-1,J_chW(2)-1; J_chW(1)-1,J_chW(2)+1; J_chW(1)+1,J_chW(2); J_chW(1)+1,J_chW(2)-1; J_chW(1)+1,J_chW(2)+1; J_chW(1),J_chW(2)-1; J_chW(1),J_chW(2)+1]; Ju=zeros(1,size(DK,1)); for i=1:size(DK,1) if judge(DK(i,:),Limit,map,B)==1 Ju(i)=1; J_DK=Change(map,DK(i,:),1); K(J_DK(1),J_DK(2))=1; if norm(chW-DK(i,:))+G(chW(1),chW(2))<G(J_DK(1),J_DK(2)) G(J_DK(1),J_DK(2))=norm(chW-DK(i,:))+G(chW(1),chW(2)); P(J_DK(1),J_DK(2))={chW}; end end end B(chW(1),chW(2))=1; K(chW(1),chW(2))=0; G(chW(1),chW(2))=inf; if sum(Ju)~=0 DK=DK(Ju==1,:); Jp=DK-repmat(E,size(DK,1),1); SJP=sum(Jp'); end if sum(SJP==0)>0 break end end %% 倒推路径 Pe=Change(map,E,1); Ps=Change(map,S,1); Pn=Pe; Path=E; while sum(abs(Pn-Ps))~=0 CH_p=P{Pn(1),Pn(2)}; Path=[Path;Change(map,CH_p,-1)]; Pn=CH_p; end Path=flipud(Path); %% 画图 [m,n]=size(map); for i=0:m plot([0 n],[i i],'-k'); hold on end for j=0:n plot([j j],[0 m],'-k'); hold on end for i=1:m for j=1:n if map(i,j)==1 fill([j-0.5-0.5 j-0.5+0.5 j-0.5+0.5 j-0.5-0.5],[m-i+0.5-0.5 m-i+0.5-0.5 m-i+0.5+0.5 m-i+0.5+0.5],'k') hold on end end end plot(S(1),S(2),'.g','MarkerSize',20) hold on text(S(1),S(2),'起点') hold on plot(E(1),E(2),'.m','MarkerSize',20) hold on text(E(1),E(2),'终点') hold on plot(Path(:,1),Path(:,2),'-r','LineWidth',2)
100+评论
captcha
    类型标题大小时间
    ZIPuafhaoafwoieajksdja38.74MB7月前
    ZIPsqlmap安装包 sqlmap资源包7.34MB7月前
    ZIPpygame-1.9.1release-py2.6-macosx10.5.zip10.28MB7月前
    ZIP英特尔IA-32架构软件开发者手册3卷本2001年版7.88MB7月前
    ZIPCSP-J考试真题压缩(2024年真题,附答案)340.87KB7月前
    ZIPLinux学习笔记13-GPIO 中断实验例程355.63KB7月前
    ZIP中文版VC++6.0.zip30.34MB7月前
    ZIP影刀RPA-社区版创业版-应用一键迁移部署工具6.89MB7月前