欢迎光临散文网 会员登陆 & 注册

基于人工智能算法的无人机运输系统(大创作品)

2023-05-09 23:30 作者:量子程序员Linus  | 我要投稿

作品名称    基于人工智能算法的无人机运输系统

1    作品简介

随着互联网经济的发展,物流行业显得至关重要,然而,使用无人机的对货物的配送由于技术、成本等因素至今依然是一片蓝海。

本项目旨在实现无人机送货系统的一个模拟系统,对现实中容易出现疫情隔离的场景3D建模,并在Unity3D软件中仿真,模拟向疫区人员运输物资的过程,是一套疫情期间疫区送货系统的模拟系统。面向用户实现无人机运输物资的控制、运输等过程的展示。系统所有建模和代码均为小组自主创作,使用了改进的启发式A*算法,无人机可以快速并准确地找到目标地点的最短路径。同时增加多视角、多场景、路径标志、AR 技术等,将整个过程清楚明白地向用户呈现。项目高度模块化,可以在不同的场景中都有很好的表现效果,系统显示简洁明了,操作简单易上手。旨在降低物流成本,助力物流行业发展建设。


2    作品效果图

图1 建模场景图
图2 控制 UI
图3 运行图
图4 自由视角与轨迹现实
图5 目标定位图


3    设计思想
3.1    项目背景
随着互联网经济的发展,物流系统在经济发展中伴随着越来越重要的作用。物流系统的智能化、无人化也是未来物流行业的发展趋势,谁能率先实现物流系统的智能化,就可以降低整个物流系统的成本,在残酷的市场竞争中取得巨大的优势,造就宽广的护城河。这也是各大物流公司、互联网巨头研发投入的重中之重。然而由于成本、技术、社会接受度等因素的限制,目前对物流系统智能化的尝试的大多为传统的路基的无人车、快递柜等,而对利用无人机配送快递的较少。本系统作为一个无人机模拟运输系统,在虚拟环境中对无人机进行模拟,可以在一定程度上降低物流成本、协助真实世界的实验。也可以用作智慧物流的科普宣传,推动物流行业发展。其次,在现今新冠疫情大流行的背景下,少接触成为了社会的主流。疫区物资运输的快速与否,直接关系到老百姓的评价,如何在保证物资运输和少接触之间取得一个微妙的平衡,也就成了一个研究的重点。

3.2    设计构思与创意
在实体实验中存在高实验成本、技术验证复现困难等问题。针对这个痛点,本项目提供了在虚拟建模世界中进行建模测试的方案,在真实测试之前,可以在模拟系统中进行多次测试,以便及时发现问题并给予改正。大大降低了实体研发的成本,便利了实体研发的流程。寻路算法为改进的三维 A*算法,专门针对无人机运输的场景、环境等需求进行了速度、准确度上的优化,较之传统算法有很大优势。为了让流程的展示更加清楚明白,本项目也加入了 AR 功能,辅以多场景、多视角的切换,添加了路径标注、实时追踪等辅助操作功能,降低了用户的学习成本。同时,本项目也可以用作对智慧物流的宣传和演示,增加社会对无人机物流的认识了解和接受程度,助力物流强国建设。
3.3    项目模块与功能
初始化模块:该模块将在模拟系统启动的时候自动加载,实现对整个系统运行的预准备,包括其他模块的加载,光照、昼夜等特效的预载,一些重要数据的读入,是整个系统运行的前提。
控制模块:该模块实现用户对系统的控制,用以接受用户的输入参数并交给系统进行运行,用户可以通过精确的坐标输入操作、直观地点击输入操作等多种输入方式实现对系统的控制。控制方式简洁明了易于用户学习。计算模块:该模式是系统的核心,用以实现对系统运行的计算控制,计算模块主要负责寻路算法、无人机的运转、时间交替等重要功能。
呈现模块:该模块用以实现系统运行过程对用户的呈现,用户可以使用切换多视角、多场景、绘制无人机飞行轨迹、也使用 AR 追踪等功能,引用了大量技术的呈现方式可以让用户对进行无人机的运行有着全方面的观察。
3.4    技术运用与特色
自主建模:项目的建模和代码均为自主创造。对学校、城市的楼房、水池、道路等建筑进行精准的建模,有着昼夜交替、天气、光照等系统,增加了系统的拟真性。真实的场景既可以拉近用户的距离,增强作品的真实感,也贴合无人机运输的实际场景应用——在学校、城市等场景下运输货物。

三维A*算法:在无人机的寻路算法中使用了三维的改进的启发式算法 A*,相较于传统的寻路算法,增加了寻路的维度,针对项目优化了计算的过程,可以更快速、更精确地找到起始点与目标点之间的最短路径。

如果只是在二维平面上进行寻路的话,方法会有很多,我们可以选择的寻路算法也非常多,同时对系统的负荷也较小,乃至unity平台自己就带有navi mesh导航系统,navi mesh导航系统为开发者直接提供好了接口,开发者只要对navi mesh系统进行调用,就可以直接在二维平台上进行寻路操作。然而在三维空间中navi mesh导航系统却并不能用,而且在三维空间中可供我们选择的寻路算法也比较少,而且由于三维比二维多了一个维度,那么算法的时间和空间复杂度都会随着场景的增大而指数级增加。经过我们的权衡和比较,我们决定将二维寻路算法中的a*算法增加一个维度,改为三维的a*算法。作为人工智能算法的一种,a*算法的启发式函数,可以将大量不可能的路径给剪枝掉,给寻路予一个方向上的引导,从而大大提高算法的效率。

在二维的寻路中,我们每前后左右走一次,都需要调用一次评估函数去评价当前的路是否是当前选择下的一个最优。而在三维的寻路中,我们就需要在二维的基础上增加寻路的维度,在前后左右的基础上增加上下左右以及侧角的一个寻路。通过这种方法,我们就可以让二维的a*算法在三维空间中也使用。

然而直接将二维的a型算法修改为三维,也不能直接在用unity中使用。因为a*算法在网格地图中有着很好的表现,而在unity平台中它的地图是连续的,如果每一分每一厘的距离我们都去探测的话,那么显然会大大超过我们的计算能力。针对这个问题,我们经过研究后决定,每隔一定单位就生成一个判定点来解决,每一个判定点将会去探测以它周围的一定范围内是否存在障碍物,如果有的话,那么这该点是不可到达的。左边的图是判定点的示意图,可以看到图中有白色的方块和红色的方块,它们就是判定点,白色的方块意味着可以到达,而红色的方块意味着周围有障碍物,因此该点不可到达。这个判定点在运行的过程中是不可见的。通过对判定点的应用,我们将原来连续的三维地图变成了网格化的三维地图,从而可以使用我们改进后的三维a*算法。通过这种方法,我们大大降低了判断节点的数量,从而优化了算法的一个复杂度。

得益于我们对a*算法的改进,这使得系统的运行是建立在判定点设定的基础上,而非具体的地图结构上。同时在代码编写的时候,我们在源代码中一些比较重要的数据结构,比如判定点的数量、间距等,都留下了修改的空间。因此我们只需要简单修改这些预留的参数,就可以让系统在不同的场景,哪怕是我们从来没有见过的场景中也可以有很好的表现效果。通过这样的设计使得程序有着高内聚低耦合的特点,有着很好的可升值性和可移植性,也实现了整个系统结构上的一个模块化。

系统设置了多操作方式、多场景、多视角、轨迹标注、追踪、AR 等功能,可以让用户实时地参与到系统的操作与运转中,力图简洁明了、清楚明白地让无人机运货整个过程对使用者有着很好的呈现。


4    后续工作

·增加更多场景

    工厂、乡村等。扩大作品的适用范围。

·功能添加

    同时运行多个飞行器,多个目的地的选择与判断。

·算法优化

    降低程序的时间空间复杂度,减小资源消耗。

·硬件验证

    在硬件机器上测试验证,推广程序。

后注:本项目已于2023年1月审批通过并取得软件著作权,上传仅为留档

基于人工智能算法的无人机运输系统(大创作品)的评论 (共 条)

分享到微博请遵守国家法律