导弹防御系统,如何跟蜻蜓的大脑学习计算?(2)
2024-06-16 来源:飞速影视
模型蜻蜓根据猎物的转动重新定向。较小的黑色圆圈是蜻蜓的头部,保持在其初始位置。黑色实线表示蜻蜓飞行的方向;蓝色虚线是模型蜻蜓眼睛的平面。红星是猎物相对于蜻蜓的位置,红色虚线表示蜻蜓的视线。
我首先想到的是防御上的应用,例如导弹防御,例如,让未来的导弹快速计算拦截轨迹而不影响导弹重量或功耗的机载系统。
当然也可能会有民用应用,例如,控制自动驾驶汽车的算法可能会变得更高效,不再需要大量的计算设备。如果受蜻蜓启发的系统可以执行计算以绘制拦截轨迹,那么自主无人机或许可以使用它来避免碰撞。如果计算机可以制造成与蜻蜓大脑相同的大小(约 6 立方毫米),也许有一天驱虫剂和蚊帐将成为过去,取而代之的是小型杀虫无人机!
开始动手!
为了开始回答这些问题,我创建了一个简单的神经网络来代替蜻蜓的神经系统,并用它来计算蜻蜓捕捉猎物的转弯。我的三层神经网络作为软件模拟存在。最初,我在 Matlab 中工作,因为那是我已经在使用的编码环境。之后,我将该模型移植到 Python 中。
因为蜻蜓必须看到它们的猎物才能捕捉到它,所以我首先模拟了蜻蜓眼睛的简化版本,捕捉了追踪猎物所需的最少细节。虽然蜻蜓有两只眼睛,但人们普遍认为它们不使用立体深度感知来估计与猎物的距离。在我的模型中,我没有对双眼进行建模,也没有尝试蜻蜓的眼睛匹配的分辨率,相反,神经网络的第一层包括 441 个代表眼睛输入的神经元,每个神经元描述视野的一个特定区域——这些区域被平铺以形成一个 21×21 的神经元阵列,覆盖蜻蜓的视野。随着蜻蜓转动,猎物图像在蜻蜓视野中的位置发生变化。蜻蜓计算将猎物的图像与这些“眼睛”神经元中的一个(或几个,如果猎物足够大)对齐所需的轮数。第二组包含441 个神经元,也在网络的第一层,告诉蜻蜓哪些眼睛神经元应该与猎物的图像对齐,即猎物应该在其视野内的哪个位置。
模型蜻蜓与猎物交战。
接收描述物体在视野中运动的输入并将其转化为关于蜻蜓需要转向哪个方向的指令的计算,这类处理能力在我的人工神经网络的第一层和第三层之间进行。在第二层中,我使用了 194,481 (21 4) 神经元,可能比蜻蜓用于此任务的神经元数量大得多。我预先计算了网络中所有神经元之间连接的权重。虽然这些权重可以用足够的时间学习,但通过进化和预编程的神经网络架构“学习”是有优势的。一旦它作为有翼成虫(技术上称为天体)从若虫阶段出来,蜻蜓就没有父母来喂养它或向它展示如何捕猎。蜻蜓需要适应新的身体,同时思考狩猎策略。我设置了网络的权重以允许模型蜻蜓计算正确的转弯以从传入的视觉信息中拦截它的猎物。
本站仅为学习交流之用,所有视频和图片均来自互联网收集而来,版权归原创者所有,本网站只提供web页面服务,并不提供资源存储,也不参与录制、上传
若本站收录的节目无意侵犯了贵司版权,请发邮件(我们会在3个工作日内删除侵权内容,谢谢。)
www.fs94.org-飞速影视 粤ICP备74369512号