大家好,又见面了,我是你们的朋友全栈君。
Matlab仿真含时滞多智体一致性分析,附代码
Matlab仿真含时滞多智体一致性分析,附代码
Matlab仿真含时滞多智体一致性分析,附代码
系统结构如下图所示:
clear;
clc;
% 2014_多智能体网络的一致性问题研究_纪良浩
% 此为Paper中的示例代码
% 例2.1:
A = [0, 0, 0.1, 0, 0;
0.1, 0, 0, 0, 0;
0, 0.15, 0, 0, 0;
0, 0.25, 0, 0, 0;
0.2, 0, 0, 0, 0;];
D = [0, 0, 0, 0, 0;
0, 0, 0, 0, 0;
0, 0, 0, 0, 0;
0, 0, 0, 0, 0;
0, 0, 0, 0, 0;];
% 各节点间的通信时滞如下
T13 = 1.0;
T21 = 0.75;
T32 = 1.8;
T42 = 2.0;
T51 = 0.8;
% 输入时滞如下
T = 0.3;
% 各节点的随机初始状态如下
X = [2, 3.5, 2.5, 3, 5;]’;
U = [0, 0, 0, 0, 0;]’;
%% 更改时滞格式
% 各节点间的通信时滞如下
T13 = 10;
T21 = 7;
T32 = 18;
T42 = 20;
T51 = 8;
% 输入时滞如下
T = 3;
% 为了防止开始收敛前无状态,特扩充收敛前的状态
t = 0;
for i = 1:20
X(:, i 1) = X(:, i);
U(:, i 1) = U(:, i);
t(:, i 1) = t(:, i) 0.1;
i = i 1;
end
%%
% 仿真相关参数如下
tBegin = 0;
tEnd = 60;
dt = 0.1;
times = (tEnd – tBegin)/dt;
time = 1;
% 计算过程如下
while (time <= times)
% 时间记录
t(1, time 20) = tBegin dt * time 19*0.1;
% 控制输入分别为
j = X(3, time 20-T13);
i = X(1, time 20-T);
a = A(1,3);
U(1, time 20) = sum( a * (j-i) );
U(2, time 20) = sum( A(2,1) * (X(1, time 20-T21)-X(2, time 20-T)) );
U(3, time 20) = sum( A(3,2) * (X(2, time 20-T32)-X(3, time 20-T)) );
U(4, time 20) = sum( A(4,2) * (X(2, time 20-T42)-X(4, time 20-T)) );
U(5, time 20) = sum( A(5,1) * (X(2, time 20-T51)-X(5, time 20-T)) );
% 状态更新为
X(1, time 21) = X(1, time 20) U(1, time 20) * dt;
X(2, time 21) = X(2, time 20) U(2, time 20) * dt;
X(3, time 21) = X(3, time 20) U(3, time 20) * dt;
X(4, time 21) = X(4, time 20) U(4, time 20) * dt;
X(5, time 21) = X(5, time 20) U(5, time 20) * dt;
time = time 1;
end
%% 绘制结果图
subplot(2,1,1);
plot(t,X(1,1:620), t,X(2,1:620), t,X(3,1:620), t,X(4,1:620), t,X(5,1:620), “linewidth”,2);
legend(“x_1”, “x_2”, “x_3”, “x_4”, “x_5”);
subplot(2,1,2);
plot(t,U(1,:), t,U(2,:), t,U(3,:), t,U(4,:), t,U(5,:), “linewidth”,2);
legend(“u_1”, “u_2”, “u_3”, “u_4”, “u_5”);
下图为默认输入时滞T=0.3s的收敛情况:
下图为输入时滞T=2.0s的收敛情况:
Matlab仿真含时滞多智体一致性分析,附代码相关教程
MATLAB计算信号短时平均过零率
MATLAB计算信号短时平均过零率 一、原理: 短时平均过零率表示一帧语音中语音信号波形穿过横轴的次数 二、计算过零率代码 clear all; clc; close all;filedir=[]; % 设置路径filename=’bluesky3.wav’; % 设置文件名fle=[filedir filename]; % 构成完整的路径
【Matlab】定义顺序增加的字符串数组(A1,A2 … An)并写到Exce
【Matlab】定义顺序增加的字符串数组(A1,A2 … An)并写到Excel的第一行 话说在很久很久以前,有一位魔法师,找到了一种快速生成顺序数组的方法。没有错,就是在下,哈哈哈。但是如果想生成A1,A2 … A9这样带字符串的顺序增加数组,并且写进Excel的第一行
光学干涉实验模拟
光学干涉实验模拟 光的干涉实验仿真模拟首先是依据光干涉的光强分布的理论公式及实验参数建立光强数据矩阵,然后运用Matlab的Image命令绘制干涉图像,运用Plot命令绘制光强分布曲线.本虚拟实验室主要模拟杨氏双缝干涉,牛顿环和迈克尔逊干涉仪的等倾干涉.
matlab图像处理:边界跟踪
matlab图像处理:边界跟踪 设一幅二值图像中,只有一个白色区域,试给出求该区域外围轮廓线的方法(要求按顺时针的顺序给出各点的坐标,即行/列号) 上面是题目的要求,提取图像的外边界轮廓和内边界轮廓,相对比较简单,但是困难的是这个按照顺时针或者逆时
MATLAB求解接地金属槽内电位分布
MATLAB求解接地金属槽内电位分布 基于MATLAB有限差分法中的迭代法求解接地金属槽内电位分布 要求 有限差分法 MATLAB编写 运行结果 全部代码 运用MATLAB求解接地金属槽内点位分布, 精度、行数M、列数N自己定义。 有限差分法是基于差分原理的一种数值计算法。
【语音控制ROS】仿真环境的搭建<二>
【语音控制ROS】仿真环境的搭建<二> Turtlebot Simulators 【语音控制ROS】虚拟机安装Ubuntu14.04 ROS-indigo<一> stage 首先安装仿真 sudo apt-get install ros-indigo-turtlebot-simulator 测试下 roslaunch turtlebot_stage turtlebot_in_stage.launch
matlab函数详解——preview(实现gui界面显示摄像头采集内容)
matlab函数详解——preview(实现gui界面显示摄像头采集内容) 最近需要使用matlab读取摄像头,并显示图像在gui上面,好像没有现成可以用的,这里试试。 matlab的preview函数中的例程:调用摄像头,并显示 obj = videoinput(‘winvideo’,1,’MJPG_160x120′);% s
【Matlab】你想知道在图表标题中显示变量的一切
【Matlab】你想知道在图表标题中显示变量的一切 有时在利用Matlab输出结果时,会通过作图(Figure),和做表(Excel)来完成。并且经常需要在标题中显示一些变量,比如下图,那么这是怎么实现的呢?能不能显示数组呢? 不难发现,所谓标题其实是一个 字符串
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/186984.html原文链接:https://javaforall.cn