news 2026/5/9 16:47:48

多智能体一致性仿真:直观展示状态轨迹与控制输入,简易程序带注释,适合初学者入门

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
多智能体一致性仿真:直观展示状态轨迹与控制输入,简易程序带注释,适合初学者入门

多智能体一致性仿真 简单的多智能体一致性性仿真图,包含状态轨迹图和控制输入图。 程序简单,所以便宜,但是有注释,都能看懂,适合初学者。

最近在折腾多智能体系统,发现一致性控制这个方向挺有意思——四个小车怎么统一速度,一群无人机咋保持队形,背后都可能用到了这玩意儿。今天咱们直接上代码,用20行左右的程序实现个基础版,顺便画个状态轨迹和控制器变化图。

先上数学模型:假设每个智能体都是"没脑子"的质点,运动规则就是跟着邻居调整自己的状态。数学表达贼简单:dxi/dt = ui,其中控制输入ui = -Σ(xi - x_j),j是邻居节点。这公式翻译成人话就是:每个智能体时刻在比较自己和邻居的位置差,然后反向调整。

% 多智能体一致性仿真 clear all; n = 4; % 智能体数量 tspan = 0:0.01:5; % 时间跨度 L = [2 -1 0 -1; % 环形拓扑的拉普拉斯矩阵 -1 2 -1 0; 0 -1 2 -1; -1 0 -1 2]; x0 = [0.5; 2.3; 4.1; 3.7]; % 初始状态 u = @(t,x) -L*x; % 控制律 [~,x] = ode45(@(t,x) u(t,x), tspan, x0); % 数值解算 % 画状态轨迹 subplot(2,1,1); plot(tspan, x); xlabel('时间'); ylabel('状态值'); legend('Agent1','Agent2','Agent3','Agent4'); % 画控制输入 subplot(2,1,2); control_inputs = -x*L'; % 计算控制量 plot(tspan, control_inputs); xlabel('时间'); ylabel('控制输入');

代码里有个关键点:拉普拉斯矩阵L。这里用的是环形拓扑,每个智能体只和左右邻居连接。矩阵对角线是连接数,非对角线如果是邻居就标-1。比如第一行表示Agent1连着Agent2和Agent4,所以对角线是2,第2、4列是-1。

多智能体一致性仿真 简单的多智能体一致性性仿真图,包含状态轨迹图和控制输入图。 程序简单,所以便宜,但是有注释,都能看懂,适合初学者。

跑出来的图会显示四个智能体的状态值逐渐趋同(上图),控制输入逐渐归零(下图)。有意思的是最终收敛的值其实是初始状态的平均值——把四个初始值(0.5+2.3+4.1+3.7)/4刚好是2.65,图上显示的收敛位置也确实是这个数。

想改着玩的话,有几个方向:

  1. 改L矩阵的拓扑结构,比如改成全连接(对角线3,其他-1),收敛速度会更快
  2. 调整初始状态x0,观察收敛值是否总是平均值
  3. 在控制输入里加个系数,比如u = -0.5Lx,看看响应速度变化

这个demo虽然简陋,但五脏俱全。实际工程中要考虑通讯延迟、噪声干扰,甚至有的智能体突然宕机,但那些都属于高端玩法了。对于刚入门的朋友,先把基础逻辑吃透,知道“邻居信息差驱动状态调整”这个核心思想就够了。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/7 19:28:49

Thymeleaf,现代化的Java服务器端模板引擎!

Thymeleaf在现代Web开发中的革命性意义在当今的企业级Web应用开发中,Thymeleaf已经彻底改变了Java服务器端模板渲染的传统范式。想象一下您每天使用的银行网银系统:当您查看账户交易明细时,Thymeleaf正在动态渲染包含复杂数据表格和分页的HTM…

作者头像 李华
网站建设 2026/5/8 8:35:42

Flutter 与 OpenHarmony 通信:Flutter Channel 使用指南

Flutter 与 OpenHarmony 通信:Flutter Channel 使用指南 欢迎大家加入跨平台社区 本文介绍在 Flutter OpenHarmony 化工程中,如何利用 Flutter Channel 实现 Dart 代码与 OpenHarmony 原生端(ETS)之间的通信。Flutter Channel 提…

作者头像 李华
网站建设 2026/5/1 5:02:59

HoRain云--优化SSH连接速度:CentOS服务器实战指南

🎬 HoRain云小助手:个人主页 🔥 个人专栏: 《Linux 系列教程》《c语言教程》 ⛺️生活的理想,就是为了理想的生活! ⛳️ 推荐 前些天发现了一个超棒的服务器购买网站,性价比超高,大内存超划算!…

作者头像 李华
网站建设 2026/5/3 13:53:38

深度测评!学生热捧的一键生成论文工具 —— 千笔ai写作

你是否曾为论文选题发愁,反复修改却总对结果不满意?面对文献检索的繁琐、格式排版的复杂、查重率的焦虑,你是否感到力不从心?论文写作不仅是学术能力的考验,更是时间与精力的挑战。而如今,一款专为学生打造…

作者头像 李华
网站建设 2026/5/8 1:28:38

leetcode 922. Sort Array By Parity II 按奇偶排序数组 II-耗时100

Problem: 922. Sort Array By Parity II 按奇偶排序数组 II 耗时100%,一个指针就行了,若满足题意则l,r l1,若满足题意或者nums[l]和nums[r]奇偶性相同则r,此时一定满足nums[l]和nums[r]不符合题意且奇偶性不同&#x…

作者头像 李华
网站建设 2026/5/3 11:49:05

自动化工具Drissonpage 保姆级教程(含xpath语法)

自动化工具Drissonpage 保姆级教程(含xpath语法) 说明:本指南仅供技术研究与学习使用,请严格遵守相关法律法规,仅将自动化技术应用于合法合规的场景,如:公开数据的采集与分析、企业内部系统的自动化测试、个人工作效率…

作者头像 李华