亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? sm_5_2.m

?? 機器人協同控制流函數matlab程序實現
?? M
字號:
%------------------------------------------------------------------------
%                       SWARM SIMULATION PROGRAM 
%                        DESIGNED BY Jun Lu
%                   Intelligent and Complex Systems Lab
%               HuaZhong University of Science and Technology
%------------------------------------------------------------------------
cla;
clear all;
dimensation=25;
x_min = -dimensation;
y_min = -dimensation;
x_max = dimensation;
y_max = dimensation;
L0= 10.0;  ds = 2*L0/101;
x = -L0:ds:+L0;  y = -L0:ds:+L0;
[xx,yy] = meshgrid(x,y);  

%initial positions of agents
  xini =[     -37.3127   -1.7026
  -35.6539   -4.9508
  -34.8340   -2.3068
  -38.8444   -3.3499
  -36.8089    1.9830
  -35.5775   -1.4473
  -32.1440   -0.5999
  -33.5098    4.1988
  -34.1841    0.6252
  -36.5392    0.7334
  -37.5426   -2.6241
  -31.5493   -3.9901
  -35.5878    1.4199
  -34.0984    5.7537
  -30.9944    2.7939
 ];
%initial parameters of leader
leader=[-30,0];
vl=0.66;
x=[leader
    xini]
xt=x;

%parameters of obstacles
Cord_obs=[-10+i*0;-5-i*5;0+i*3.8;8+i*3];%障礙物圓點
Rad_obs=[4.0;1.5;3;2.5];%障礙物半徑
a=1;b=10;c=2.5;%k1,k2,k3的值,inter-agent effert的參數
lo=[32;4.5;4.5;32;32];% lo的值,表3所示
Ad=[-38 -36 -36 -38 -38];% mo的值,表3所示

%sensor range of agents
sensor_r=16;
safe_r=0.860
%Strength of uniform flow
U0=10;

no_obstacle=length(Rad_obs);%length:數組長度,障礙物的個數
no_robots =length(x);%機器人的個數
Distance_Matrix=zeros(no_robots);%zeros:產生全為0的矩陣 ,計算LOS連接的agent的距離,間接反應LOS的情況,沒有連接,就不用判斷距離

    GC=ones(no_robots);%ones:產生全為1的矩陣 ,產生機器人個數的全1矩陣:用來判斷機器人之間的聯系(get connection)
    for tc=1:no_obstacle %對每個障礙物分別判斷LOS,求&運算,得出agent之間的聯系
        GT=TC(real(Cord_obs(tc)),imag(Cord_obs(tc)),Rad_obs(tc),x);%輸入障礙物的圓點,半徑,x為機器人的初始化坐標,對障礙物分別判斷LOS
        GC=GC & GT;
    end

 for i=1:no_robots  % this part calculate the distance between those robots which have connectivity with each other計算連接的距離
   for j=1:no_robots
        if (GC(i,j)==1)
            Distance_Matrix1(i,j)=sqrt((x(i,1)-x(j,1))^2+(x(i,2)-x(j,2))^2)*GC(i,j);
        end
    end
end
 
for i=1:no_robots  % 計算相連接的x軸距離
  for j=1:no_robots
      if (GC(i,j)==1)
            Distance_Matrix(i,j)=abs(x(i,1)-x(j,1));
        end
    end
end

 PM=TProb(Distance_Matrix,x) %---call function TProb to decide the agent for associating,由x軸距離判斷連接
 
 G2=PM;%x選取了每個agent相連的agent!!!!
 
 %初始化畫圖
    ahua=0;
     
        for nn=1:no_obstacle
    line('color', 'r', 'Marker', '.', 'markersize', Rad_obs(nn)*33, 'erase', 'background', 'xdata', real(Cord_obs(nn)), 'ydata', imag(Cord_obs(nn)));
   end
   line('color', 'b', 'Marker' ,'s', 'markersize', 4.3, 'erase', 'background', 'MarkerFaceColor','b','xdata', x(1, 1), 'ydata', x(1, 2));
     for mm = 2: no_robots
         line('color', 'r', 'Marker' ,'>', 'markersize', 3.5, 'erase', 'background', 'MarkerFaceColor','r','xdata', x(mm, 1), 'ydata', x(mm, 2));
    end   

    axis([x_min x_max y_min y_max]);
    drawnow;
    
nf=1;
 rstep=1; 

endt=0.54;
h=0.010;


for t=0:h:endt
    ts =0.015;%時間間隔,每隔ts秒就更新機器人的位置
    %計算作用力
    for j=2:no_robots
              %-----------------------calculate the fluid effect----------------------------------------
            temp = [0 0];
                 for k=1:no_obstacle
                    rr2p(k)=(x(j,1)-real(Cord_obs(k)))^2 + (x(j,2)-imag(Cord_obs(k)))^2;%agent與障礙物圓點的距離的平方
                    rr2n(k)=(x(j,1)-real(Cord_obs(k)))^2 - (x(j,2)-imag(Cord_obs(k)))^2;
                    rr2m(k)=2*(x(j,1)-real(Cord_obs(k)))*(x(j,2)-imag(Cord_obs(k)));
                  
                        if rr2p(k)<=400%距離太遠不考慮 流函數
                            Fadd1(k)=(Rad_obs(k)^2)*rr2n(k)/(rr2p(k))^2;
                            Fadd2(k)=(Rad_obs(k)^2)*rr2m(k)/(rr2p(k))^2;
                         else
                            Fadd1(k)=0;
                            Fadd2(k)=0;
                        end
                  end
                        temp(1)=-U0*(sum(Fadd1)-1);
                        temp(2)=-U0*(sum(Fadd2));
                        xt(j,1) = xt(j,1) + ts*temp(1);
                        xt(j,2) = xt(j,2) + ts*temp(2);
                     
          %-----------------------calculate the swarm force----------------------------------------
               for q=1:no_robots
                     distance_nab(q) = sqrt((x(j,1)-x(q,1))^2 + (x(j,2)-x(q,2))^2);%agent之間的距離,用來判斷是否處于sensor的探測范圍內
                        if distance_nab(q)<sensor_r
                            naber_factor=1;
                        else
                             naber_factor=0;
                        end
                        for ni=1:2
                            temp(ni) = -(x(j,ni)-x(q,ni))*(a-b*exp(-distance_nab(q)^2/c))*naber_factor*G2(j,q);
                            xt(j,ni)=xt(j,ni)+ts*temp(ni);
                        end  
               end
             %-----------------------歸隊作用力---------------------------------------- 
               m=0;   
               for p=1:no_robots
                   distance_nab(p) = sqrt((x(j,1)-x(p,1))^2 + (x(j,2)-x(p,2))^2);                
                   if naber_factor*G2(j,p)==0%如果對于agent j,沒有agent和它相連(G2(j,q))或者不處于相連agent探測范圍內,則受到leader的作用
                       m=m+1;
                   end
               end
               if m==no_robots;
                   if GC(1,j)==1%如果處于leader的LOS范圍內
                       for ni=1:2
                           temp(ni) = -(x(j,ni)-x(1,ni))*(a-b*exp(-distance_nab(1)^2/c));
                           xt(j,ni)=xt(j,ni)+ts*temp(ni);
                       end
                   end
               end
               %-------------------------靠近排斥作用力---------------------------
              for n=1:no_robots
                 distance_nab(n) = sqrt((x(j,1)-x(n,1))^2 + (x(j,2)-x(n,2))^2);%agent之間的距離,用來判斷是否處于sensor的探測范圍內
                  if distance_nab(n)<safe_r
                      naber_factor=1;
                  else
                      naber_factor=0;
                  end                   
                   for ni=1:2
                      temp(ni) = -naber_factor*(x(j,ni)-x(n,ni))*(a-b*exp(-distance_nab(n)^2/c));;                         
                       xt(j,ni)=xt(j,ni)+ts*temp(ni);
                   end
               end
                
             
          %-----------------------------APF forces of obstacle----------------------
            for k=1:no_obstacle
                         dq(k)=sqrt((x(j,1)-real(Cord_obs(k)))^2 + (x(j,2)-imag(Cord_obs(k)))^2);
                         if dq(k)<1.5*Rad_obs(k)%當agent與障礙物的距離小于1.5倍的障礙物半徑時,考慮障礙物的斥力
                             temp_obs(1)=-Ad(k)*(x(j,1)-real(Cord_obs(k)))*exp(-dq(k)^2/lo(k))/lo(k) ;
                             temp_obs(2)=-Ad(k)*(x(j,2)-imag(Cord_obs(k)))*exp(-dq(k)^2/lo(k))/lo(k) ;
                         else
                             temp_obs(1)=0 ;
                             temp_obs(2)=0 ;
                         end
                         xt(j,1)=xt(j,1)+ts*temp_obs(1);
                         xt(j,2)=xt(j,2)+ts*temp_obs(2);
            end   
          %-----------------------------APF forces of obstacle----------------------
       xt(1,1)=xt(1,1)+ts*vl;
       xt(1,2)=xt(1,2);
          
      end
      
      
   %----------------------------------    
       x=xt;
       GC=ones(no_robots);
       Distance_Matrix=zeros(no_robots);
        for tc=1:no_obstacle
            GT=TC(real(Cord_obs(tc)),imag(Cord_obs(tc)),Rad_obs(tc),x);
            GC=GC & GT;
        end
        GC;
       for i=1:no_robots  % this part calculate the distance between those robots which have connectivity with each other
            for j=1:no_robots
                if (GC(i,j)==1)
                     Distance_Matrix1(i,j)=sqrt((x(i,1)-x(j,1))^2+(x(i,2)-x(j,2))^2);
                 end
             end
         end
for i=1:no_robots  % 計算相連接的x軸距離
  for j=1:no_robots
      if (GC(i,j)==1)
            Distance_Matrix(i,j)=abs(x(i,1)-x(j,1));
        end
    end
end

     PM=TProb(Distance_Matrix,x)%---call function test_probability.m---------------------------------
    G2=PM;
    cla;
       
    
     
     for nn=1:no_obstacle
    line('color', 'r', 'Marker', '.', 'markersize', Rad_obs(nn)*33, 'erase', 'background', 'xdata', real(Cord_obs(nn)), 'ydata', imag(Cord_obs(nn)));
   end
   line('color', 'b', 'Marker' ,'s', 'markersize', 4.3, 'erase', 'background', 'MarkerFaceColor','b','xdata', x(1, 1), 'ydata', x(1, 2));
     for mm = 2: no_robots
         line('color', 'r', 'Marker' ,'>', 'markersize',3.5, 'erase', 'background', 'MarkerFaceColor','r','xdata', x(mm, 1), 'ydata', x(mm, 2));
    end   
        %plot the inter-agent lines
        for grax=1:no_robots
                for gray=1:no_robots
                     if Distance_Matrix1(grax,gray)<=sensor_r
                        if GC(grax,gray)==1
                            if G2(grax,gray)==1
                                AA=[x(grax,1),x(gray,1)];
                                BB=[x(grax,2),x(gray,2)];
                                line(AA,BB,'Color','g','LineWidth',0.5);
                            else
                                AA=[x(grax,1),x(gray,1)];
                                BB=[x(grax,2),x(gray,2)];
                            end
                        end
                    end
                 end
        end    
        stepn=t/h;
        rob4x=x(1,1);
        xlabel(stepn);% x軸卷標描述更新的次數
        title(mean(x(:,1)));%標題描述x軸坐標的均值
        
        RFX(rstep)=rob4x;
        rstep=rstep+1;
        nf=nf+1;
        pause(0.0168); %this can be adjust to control the simulation speed
  end

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人在线视频一区二区| 国产精品国产三级国产普通话三级| 成人丝袜视频网| 激情综合色综合久久| 久久精品国产77777蜜臀| 日韩激情av在线| 日本视频一区二区三区| 美国十次综合导航| 国产麻豆日韩欧美久久| 国产精品99久久久久| 风间由美中文字幕在线看视频国产欧美| 国产一区二区在线免费观看| 国产精品一区二区视频| 国产福利不卡视频| 91在线免费播放| 欧美色网站导航| 日韩一级免费一区| 国产农村妇女精品| 亚洲精品视频免费看| 日韩精品亚洲专区| 国产在线精品一区二区| 99免费精品视频| 欧美精品777| 久久精品在线观看| 亚洲六月丁香色婷婷综合久久| 亚洲综合一二三区| 毛片av中文字幕一区二区| 国产乱码精品一区二区三区五月婷| 成人性视频免费网站| 91黄色免费版| 久久综合久色欧美综合狠狠| 亚洲色欲色欲www| 裸体歌舞表演一区二区| 成人黄色综合网站| 日韩欧美的一区| 亚洲欧洲三级电影| 精品制服美女丁香| 色婷婷久久99综合精品jk白丝| 欧美一级免费大片| 亚洲欧美在线高清| 国产在线精品免费| 欧美精品自拍偷拍| **欧美大码日韩| 韩国精品一区二区| 欧美日韩国产中文| 亚洲欧美日韩在线不卡| 精品在线一区二区| 欧美精品 日韩| 亚洲男女一区二区三区| 国产麻豆91精品| 欧美日韩国产天堂| 樱花影视一区二区| 成人福利视频网站| 久久这里只有精品6| 日本一不卡视频| 91亚洲男人天堂| 国产日产欧美一区二区视频| 精品一区二区三区不卡| 欧美精品第1页| 亚洲成av人综合在线观看| 色呦呦国产精品| 国产精品国产三级国产三级人妇| 韩国一区二区在线观看| 欧美一级国产精品| 亚洲一区二区三区视频在线播放 | 亚洲精品在线观看视频| 亚洲午夜av在线| 欧美视频一区二区在线观看| 亚洲精品日韩专区silk| 91美女片黄在线观看91美女| 国产精品成人一区二区艾草| 国产成人精品影视| 国产婷婷色一区二区三区四区| 久久99久国产精品黄毛片色诱| 欧美日韩国产一级片| 亚洲国产成人高清精品| 欧美三级韩国三级日本三斤| 一区二区激情小说| 欧美精品自拍偷拍动漫精品| 日韩电影在线一区| 欧美成人国产一区二区| 国产真实乱偷精品视频免| 欧美精品一区二区不卡 | 一区二区三区四区不卡在线 | 欧美日韩一区三区四区| 亚洲综合在线五月| 在线观看亚洲a| 亚洲国产精品一区二区www| 欧美片在线播放| 久久99国产精品成人| 久久久精品免费观看| 国产精品资源在线| 最新中文字幕一区二区三区| 精品视频在线视频| 美女网站在线免费欧美精品| 久久精品视频一区二区三区| 成人短视频下载| 亚洲1区2区3区4区| 欧美精品一区二区三区在线| 成人av影院在线| 亚洲18色成人| 国产欧美日韩激情| 欧美三级乱人伦电影| 国产一区视频网站| 亚洲线精品一区二区三区| 精品久久久久久久一区二区蜜臀| 成人激情免费电影网址| 视频一区视频二区中文| 国产精品午夜在线观看| 欧美日韩色一区| 国产高清久久久久| 午夜视频在线观看一区| 国产日韩欧美高清| 欧美精选一区二区| 91日韩在线专区| 国产美女一区二区| 午夜精品123| 国产精品久久久久久福利一牛影视| 欧美色视频一区| 97久久久精品综合88久久| 日韩av一区二区三区四区| 中文字幕精品一区| 欧美一级二级三级蜜桃| 99久久精品国产毛片| 国内精品第一页| 蜜桃av噜噜一区| 亚洲福中文字幕伊人影院| 国产精品免费视频观看| 日韩一区国产二区欧美三区| 欧洲中文字幕精品| 91啪亚洲精品| 99久久精品国产麻豆演员表| 韩国一区二区视频| 男人的j进女人的j一区| 亚洲老妇xxxxxx| 国产精品久线在线观看| 久久综合久久久久88| 日韩亚洲欧美一区| 欧美二区三区91| 欧美日韩一区二区在线观看| 91在线播放网址| 成人app网站| 成人av在线电影| 成人黄色综合网站| 成人丝袜18视频在线观看| 国产成人丝袜美腿| 国产乱人伦偷精品视频免下载| 麻豆免费看一区二区三区| 日韩精品一级二级| 蜜桃视频免费观看一区| 看片网站欧美日韩| 男人的j进女人的j一区| 久久99热国产| 极品少妇xxxx精品少妇偷拍 | 亚洲人精品一区| 亚洲视频一区在线| 怡红院av一区二区三区| 亚洲福利视频一区二区| 首页亚洲欧美制服丝腿| 蜜桃视频在线一区| 国产一区二区在线免费观看| 国产成人三级在线观看| 波多野结衣91| 欧美性大战久久久| 在线成人小视频| 久久综合资源网| 国产精品久久久久aaaa樱花| 亚洲精品国产无天堂网2021| 亚洲一卡二卡三卡四卡无卡久久 | 26uuu亚洲婷婷狠狠天堂| 久久午夜电影网| 成人欧美一区二区三区1314| 亚洲黄网站在线观看| 欧美aaaaaa午夜精品| 成人综合激情网| 在线观看亚洲a| 精品国产欧美一区二区| 欧美激情综合五月色丁香| 亚洲美女视频在线| 免费成人在线播放| 99久久综合精品| 欧美丰满嫩嫩电影| 中文av一区特黄| 日韩高清在线不卡| 国产精品一区二区在线观看网站| 91碰在线视频| 久久久久国产免费免费| 亚洲国产综合色| 国产99久久久国产精品| 精品婷婷伊人一区三区三| 国产丝袜欧美中文另类| 无吗不卡中文字幕| 粉嫩av一区二区三区粉嫩| 欧美精品一卡二卡| 国产精品乱子久久久久| 日韩av不卡在线观看| 91免费观看在线| 国产日韩欧美麻豆| 麻豆91在线播放免费| 一本大道久久精品懂色aⅴ|