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

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

?? sm_5_1.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 =[   -32.9424   -1.8790
  -30.6324    40.4508
  -29.3685    2.7159
  -33.2824   -3.1072
  -31.3073    1.2731
  -30.9159   -1.7452
  -27.5456   -0.1344
  -28.5582    4.2324
  -29.6467    0.8049
  -31.8464    0.9084
  -32.3244   -2.7681
  -26.3008   -3.7607
  -30.2725    1.0498
  -29.5216    3.0784
  -25.4452    2.6408
 ];

%initial parameters of leader
leader=[-25,0];
vl=0.70;
x=[leader
    xini]
xt=x;
agent=xini;

%parameters of obstacles
Cord_obs=[-6-i*0];%障礙物圓點
Rad_obs=[4.0];%障礙物半徑
a=1;b=10;c=2.5;%k1,k2,k3的值,inter-agent effert的參數
lo=[32;4.5;4.5;32;32];% lo的值,表3所示
Ad=[-28 -25 -25 -28 -28];% 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=2.01;
h=0.01;


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一区二区三区免费野_久草精品视频
精品动漫一区二区三区在线观看| 在线日韩一区二区| 国产性做久久久久久| 国产在线视频一区二区| 欧美高清一级片在线观看| 成人精品亚洲人成在线| 亚洲欧美色一区| 欧美日韩免费在线视频| 五月激情丁香一区二区三区| 日韩欧美国产综合一区 | 欧美在线观看视频在线| 午夜一区二区三区在线观看| 日韩小视频在线观看专区| 国产成人在线免费观看| 亚洲精品日韩专区silk| 宅男噜噜噜66一区二区66| 激情六月婷婷久久| 成人欧美一区二区三区| 欧美日韩成人综合天天影院| 麻豆精品精品国产自在97香蕉| 久久综合九色综合欧美亚洲| 91影院在线观看| 美女网站色91| 国产精品国产三级国产三级人妇| 欧美亚洲综合一区| 国产麻豆精品久久一二三| 玉足女爽爽91| 精品国产乱码久久久久久浪潮| 99精品国产热久久91蜜凸| 奇米一区二区三区| 日韩一区日韩二区| 精品裸体舞一区二区三区| 菠萝蜜视频在线观看一区| 午夜久久电影网| 中文字幕在线不卡国产视频| 日韩午夜激情电影| 色综合久久六月婷婷中文字幕| 蜜桃精品在线观看| 亚洲韩国精品一区| 国产精品久线观看视频| 日韩精品在线网站| 欧美视频在线播放| 粉嫩高潮美女一区二区三区| 日本亚洲天堂网| **性色生活片久久毛片| 久久综合九色综合久久久精品综合| 欧美性猛交xxxxxxxx| 成人综合婷婷国产精品久久蜜臀| 视频一区在线播放| 一区二区高清免费观看影视大全| 国产亚洲一区二区三区在线观看 | 一区二区三区四区不卡在线| 久久久蜜臀国产一区二区| 日韩亚洲欧美一区| 在线播放一区二区三区| 91福利在线免费观看| 成人高清免费在线播放| 国产成人一区二区精品非洲| 蜜桃视频第一区免费观看| 亚洲午夜视频在线| 一区二区三区四区不卡在线| 亚洲视频一区二区免费在线观看 | 亚洲欧洲在线观看av| 国产日韩精品一区二区三区| 精品国产一区二区在线观看| 欧美一区欧美二区| 欧美精三区欧美精三区| 欧美日韩五月天| 欧美日韩国产a| 欧美日韩精品系列| 99久久综合狠狠综合久久| 成人一区二区在线观看| 国产激情偷乱视频一区二区三区| 老司机午夜精品99久久| 蜜桃久久av一区| 激情深爱一区二区| 国产精品一区二区果冻传媒| 国产精品99久久久久久有的能看| 六月丁香婷婷久久| 极品尤物av久久免费看| 精品一区免费av| 国产酒店精品激情| 成人国产一区二区三区精品| eeuss国产一区二区三区| www.激情成人| 色婷婷一区二区| 在线视频综合导航| 宅男噜噜噜66一区二区66| 日韩精品一区二区三区中文不卡 | 麻豆中文一区二区| 久久国内精品视频| 国产精品综合视频| 99久久国产综合精品色伊| 色婷婷精品大在线视频| 欧美羞羞免费网站| 日韩欧美亚洲国产精品字幕久久久| 欧美成人官网二区| 国产精品久久久一本精品 | 欧美电视剧在线观看完整版| 欧美videos大乳护士334| www成人在线观看| 国产精品欧美久久久久一区二区| 国产精品久久久久久久久久免费看| 亚洲精品免费视频| 蜜桃视频一区二区三区在线观看| 国产成人免费av在线| 欧美系列一区二区| 久久婷婷国产综合国色天香| 国产精品美女久久久久aⅴ| 一个色综合网站| 麻豆高清免费国产一区| 成人爱爱电影网址| 欧美美女网站色| 中文一区二区在线观看| 亚洲一区二区三区四区在线观看| 麻豆精品蜜桃视频网站| 色婷婷亚洲综合| 久久久三级国产网站| 亚洲国产精品一区二区www在线| 黄色小说综合网站| 欧美在线色视频| 国产丝袜欧美中文另类| 午夜久久久久久久久久一区二区| 国产一区二区三区电影在线观看| 色猫猫国产区一区二在线视频| 日韩精品一区二区三区在线播放 | 成人黄色在线看| 欧美日韩国产天堂| 国产精品女同互慰在线看| 免费精品视频最新在线| 91色视频在线| 国产视频在线观看一区二区三区 | 成人久久视频在线观看| 欧美一区二区三级| 亚洲精品中文在线| 国产一区二区影院| 欧美一区二区三区白人| 亚洲综合色成人| 95精品视频在线| 久久久噜噜噜久久人人看 | 欧美日韩精品一区二区| 国产精品美女久久久久久| 精品在线一区二区| 91麻豆精品久久久久蜜臀| 亚洲美女屁股眼交3| 一本大道久久a久久综合婷婷| 久久九九国产精品| 久久99精品国产.久久久久久| 欧美在线免费播放| 亚洲狠狠丁香婷婷综合久久久| 国产91高潮流白浆在线麻豆| 精品欧美久久久| 五月天亚洲精品| 欧美日韩你懂得| 亚洲第一av色| 欧美日韩一区二区在线观看视频 | 国产传媒欧美日韩成人| 欧美成人高清电影在线| 日日骚欧美日韩| 欧美私模裸体表演在线观看| 亚洲猫色日本管| 91蜜桃网址入口| 亚洲精品亚洲人成人网| 91免费版pro下载短视频| 亚洲丝袜精品丝袜在线| eeuss国产一区二区三区| 中文字幕一区二区三区不卡| 成人小视频在线观看| 中文字幕精品综合| 国产成人啪免费观看软件 | 成人黄页在线观看| 国产精品久久毛片av大全日韩| 丰满白嫩尤物一区二区| 日韩美女啊v在线免费观看| 99久久精品国产导航| 最新日韩在线视频| 色8久久人人97超碰香蕉987| 一区二区三区免费观看| 欧美主播一区二区三区| 天天操天天色综合| 日韩免费视频线观看| 韩国午夜理伦三级不卡影院| 久久久精品tv| 91免费观看在线| 午夜激情综合网| 精品久久久久久综合日本欧美| 国精产品一区一区三区mba桃花 | 欧美成人一级视频| 国产美女在线精品| 亚洲日本在线看| 欧美美女网站色| 经典三级一区二区| 亚洲视频图片小说| 555www色欧美视频| 国产一区二区三区久久悠悠色av| 中文久久乱码一区二区| 色呦呦国产精品| 另类人妖一区二区av| 国产精品国产a| 91精品国产免费久久综合|