群体智能机器人是一种国际前沿的人工智能研究项目,由多个小型机器人组成的集群式解决系统,灵感源于蚂蚁、蜜蜂、鱼等群体生物,在没有统一领导的情况下,也能合作执行大量复杂的任务,比如组建一个图形,再在此基础上一步叠加复杂的任务,最终实现整个人工智能的突破,无限接近、甚至超越人类。群体智能机器人的运用前景非常广泛,包括智慧城市、智慧医疗、智能制造等方面,甚至在军事战略中也发挥巨大作用。
高频定位系统通过采用E-puck2.0桌面型群体智能机器人,在小型实验场地内通过高频光电投影定位技术实现机器人位置感知和数据通讯,实现“多智能体自主协同-群体智能”的研究目标。该套系统能够为项目研究算法提供较为充足的研究条件及软、硬件环境支撑,可以实现涵盖单体智能控制、多体协同控制、网络通讯、协同算法等领域的相关技术内容,以及验证多智能体协同系统控制理论和关键技术解决方案,为现实生活中大规模活动与个体之间关系提供实验模型和理论验证。
系统支持多研究方向
在动态不可预测多智能体环境中,重点可以研究以下课题:
智能机器人自主感知、组网算法、多机器人目标协同定位算法、多机器人自主动态决策与路径规划算法、多机器人区域覆盖算法、智能蚁群算法、粒子群算法、蚁群优化算法、蚁群聚类算法、单片机微机原理和编程语言、信号调理电路和控制电路、各种通信协议和通信方式、电机和传感器等硬件资源的应用
拓展应用:
科学研究、群体智能算法、多机器人智能协同、智能群体模拟演练、消防演练(地震、火灾、逃生、救灾)、人员自然流动(疫情传播模拟) 、体育运动模拟(接力赛、足球赛:基于跟随)、智能交通、物流分配模拟、模拟建模、自然群体(蚁群,鱼群,鸟群,细菌)、分子扩散(有害气体模型)、消息传播模型、游戏娱乐、迷宫地图、棋子类游戏(跳棋等)。
系统架构与功能
本系统分为E-puck2.0机器人系统、高频投影定位系统、无线通讯控制系统、群体智能决策软件系统四大部分。机器人是实验控制对象,是算法实现的载体;高频投影仪系统是机器人位置感知与定位的主要系统,通过高频光谱采集机器人位置、朝向、速度等数据信息;无线通讯控制系统负责上位机和机器人之间的通讯,连接数据的采集和数据的发送,使整个系统成为一个闭环。群体智能决策软件系统相当于整个系统的大脑,综合收集到的信息控制机器人之间的运动关系,经过决策后发出机器人执行的指令。
 
E-puck2.0嵌入式机器人系统
E-puck2.0为高端桌面型嵌入式机器人,可以在有限的空间内融入大数量的智能机器人进行群体协作实验,凭着其在任务适用性、经济性、稳定性、可拓展性、软件开放性强等有极大的优越性,可在已知环境下的任务动态分配和再分配研究,任务预测与任务分解研究,以及异构大规模系统和复杂任务分配研究等具有巨大优势。E-PUCK 2虽然体积小,但配有多种先进的传感器,例如:彩色摄像头、WiFi、蓝牙、红外传感器、USB数据口、IMU、麦克风、扬声器、LED灯等,内置标准的Linux运行系统,提供标准C/C++语言开发环境。
 
 
高频投影定位系统
高频投影仪系统包含两个子系统,光引擎系统和驱动系统,以及散热器和风扇等设备。高频投影仪系统可用于三维重建、三维测量、平面定位等。三维重建和测量主要是通过高频投影仪将结构光投影至被测物体上,并通过摄像机进行拍摄,并根据三维坐标和二维坐标的转换得到其深度。平面定位是一套定位毫米级的定位系统。
 
 
无线通讯控制系统
群体智能无线通讯控制系统含单体智能无线接收模块和USB中继接收模块,具有多点通信、调频通信、功耗低等诸多优点。
单体智能无线接收模块是自主定位和通信组网模块,通过串口通讯加装在ROBO-MAS微型移动机器人上,来实现微型机器人的定位和通信组网。它内含光电接收传感器、STM32F0C8T6处理器、NRF24L01+通信芯片、板载2.4GHZ天线、电源管理芯片等。
USB中继接收模块是一款通信中间件模块,它与PC端采用USB接口连接方式,PC端软件通过该模块能够查询或设置ROBO-MAS机器人,中继接收模块能够实时管理查询多个微型移动机器人。
群体智能决策软件系统
群体智能决策软件系统是多智能体自主协作仿真以及实物验证的软件平台系统,用于多机器人群体行为决策的仿真、机器人路径规划、机器人状态显示等,实现对多个微型移动机器人间通讯管理和信息交互。
群体智能决策软件系统分为应用层、仿真层、服务层、通信层四部分。应用层提供二种协作案例(图形模式、手绘模式)和底层二次开发模式,仿真层含机器人节点的新增、删除,机器人的路径规划,机器人目标点设置等。服务层包含软件系统获取机器人本体的位置和状态。通讯层包含软件系统与中继接收模块之间的通信。
实验场景
为方便用户快速熟悉群体智能协作平台,直观展示群体智能的运用与开发内容,我们提供两种协作模式,以及复杂算法的二次开发底层代码:
1、图形模式:在上位机软件上选择如圆形、五角星形、正方形、数字等图形,机器人自动根据配置数量排列出对应形状
2、手绘模式:在上位机显示的窗口内画图或写字,系统会自动分析、识别图形,根据机器人的数量自动排列出对应图案
3、二次开发:提供底层通讯协议和API接口,以及相关demo。
(1)提供机器人端与群体智能协作系统的通信协议。
(2)提供机器人模块目标速度控制接口
(3)提供机器人模块目标角度控制接口
(4)提供机器人单体避障算法与demo
(5)提供机器人群体队列保持算法demo
(6)提供机器人跟随算法demo
(7)提供高频定位系统平面坐标输出接口demo
(8)图形模式算法demo(自主路径规划)
(9)画图模式算法demo(自主路径规划)
(10)实时手势控制算法demo。
(11)环境感知:协同感知算法demo
视频观看:https://www.bilibili.com/video/BV1Cv411y7uL
 
 
实验室效果图

基于E-PUCK 2.0多智能体自主协同 高频投影定位系统的更多相关文章

  1. 基于ROBO-MAS多智能体自主协同 高频投影定位系统

  2. 伯克利推出「看视频学动作」的AI智能体

    伯克利曾经提出 DeepMimic框架,让智能体模仿参考动作片段来学习高难度技能.但这些参考片段都是经过动作捕捉合成的高度结构化数据,数据本身的获取需要很高的成本.而近日,他们又更进一步,提出了可以直 ...

  3. TensorFlow利用A3C算法训练智能体玩CartPole游戏

    本教程讲解如何使用深度强化学习训练一个可以在 CartPole 游戏中获胜的模型.研究人员使用 tf.keras.OpenAI 训练了一个使用「异步优势动作评价」(Asynchronous Advan ...

  4. DRL 教程 | 如何保持运动小车上的旗杆屹立不倒?TensorFlow利用A3C算法训练智能体玩CartPole游戏

    本教程讲解如何使用深度强化学习训练一个可以在 CartPole 游戏中获胜的模型.研究人员使用 tf.keras.OpenAI 训练了一个使用「异步优势动作评价」(Asynchronous Advan ...

  5. STM32W108无线传感器网络节点自组织与移动智能体导航技术

    使用STM32W108无线开发板及节点完毕大规模网络的自组建,网络模型选择树型,网络组建完毕之后,使用基于接收信号强度指示RSSI(ReceivedSignal Strength Indication ...

  6. NVIDIA DeepStream 5.0构建智能视频分析应用程序

    NVIDIA DeepStream 5.0构建智能视频分析应用程序 无论是要平衡产品分配和优化流量的仓库,工厂流水线检查还是医院管理,要确保员工和护理人员在照顾病人的同时使用个人保护设备(PPE),就 ...

  7. 基于STM32+华为云IOT设计智能称重系统

    摘要:选择部署多个重量传感器和必要的算法.通过WiFi 通信模块.GPS定位模块,采集车辆称重数据一地理位置信息,并通过网络发送至云平台,设计图形化UI界面展示称重.地图位置等重要信息,实现对称重系统 ...

  8. 基于Visual C++6.0的DLL编程实现

    整理自基于Visual C++6.0的DLL编程实现 本文通过通俗易懂的方式,全面介绍了动态链接库的概念.动态链接库的创建和动态链接库的链接,并给出个简单明了的例子,相信读者看了本文后,能够创建自己的 ...

  9. iKcamp出品|微信小程序|工具安装+目录说明|基于最新版1.0开发者工具初中级教程分享

    iKcamp官网:http://www.ikcamp.com 访问官网更快阅读全部免费分享课程:<iKcamp出品|全网最新|微信小程序|基于最新版1.0开发者工具之初中级培训教程分享>. ...

随机推荐

  1. Python中使用eval执行下面函数的结果怎么是字符串'10020'?

    定义了函数: def add(a,b): s='a+b' c=compile(s,'','eval') gArea,lArea = {},{} gArea['a']=str(a10) gArea['b ...

  2. Python中import模块时报SyntaxError: (unicode error)utf-8 codec can not decode 错误的解决办法

    老猿有个通过UE编辑(其他文本编辑器一样有类似问题)的bmi.py文件,在Python Idle环境打开文件执行时没有问题,但import时报错: SyntaxError: (unicode erro ...

  3. PyQt学习随笔:Model/View设计中支持View中展示数据的排序

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 在model/view架构中,有两种方法可以实现排序,选择哪种方法依赖于底层Model.如果mode ...

  4. 抖音CK备份上号原理

    抖音CK备份和上号是点赞跳频繁上号的最好方式,不会的可以访问网站:rz3w.com,下面介绍备份还原的原理:public void run() { MainActivity.a(this.c); ne ...

  5. 一种不错的 BFF Microservice GraphQL/REST API 层的开发方式

    云原生(Cloud Native)Node JS Express Reactive 微服务模板 (REST/GraphQL) 这个项目提供了完整的基于 Node JS / Typescript 的微服 ...

  6. tornado 网页提交内容 展示内容作业

    s2.py import tornado.ioloop import tornado.web text_list=[] class MainHandler(tornado.web.RequestHan ...

  7. 容器编排系统之Kubectl工具的基础使用

    前文我们了解了k8s的架构和基本的工作过程以及测试环境的k8s集群部署,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/14126750.html:今天我们主要来 ...

  8. 【UV统计】海量数据统计的前世今生

    转载请注明出处 背景 在互联网公司中,每个项目都需要数据统计.分析,便于项目组利用详细数据研究项目的整体情况,进行下一步的调整.在数据统计中,UV统计是最常见的,也是最普遍的.有的场景要求实时性很高, ...

  9. 【Jmeter Linux环境下运行方法】

    Jmeter 运行 1.cd  jmeter/apache-jmeter-4.0/bin 2.执行 ./jmeter -n -t jmx脚本文件 -l 测结果.jtl文件 -e -o html文件路径 ...

  10. jsp+servlet实现美妆店铺开发

    一般的商城都有用户端和商城端两个部分,用户端就是给普通用户使用的,像我们在淘宝购物,我们就是使用的用户端:然而淘宝还分了很多个店铺,每个店铺的商品都是店老板安排人员去管理,那店老板管理自己的店铺用到的 ...