57、集体行为控制器的渐进式设计与模块化强化学习技术

集体行为控制器的渐进式设计与模块化强化学习技术

在机器人技术的发展中,实现多机器人的集体行为控制是一个重要的研究方向。本文将探讨两种不同但相关的方法:一种是改进的基于否决的模块化强化学习技术,另一种是基于进化的神经网络多级行为架构的渐进式设计方法。

改进的模块化强化学习技术

这种技术是对现有模块化强化学习技术的改进,适用于处理链接多组件机器人系统(L - MCRS),并应用于多机器人软管运输问题。

  • 技术特点

    • 约束模块训练与否决系统结合 :将单独的约束模块训练和否决系统结合使用,能带来良好的学习率和成功率。
    • 可扩展性研究 :虽然增加代理数量会略微降低学习算法的性能,但结果仍令人满意。
  • 局限性

    • 运动限制 :为避免协调问题,机器人只能轮流移动。
    • 确定性约束假设 :假设约束是确定性的。
基于进化的神经网络多级行为架构设计方法

该方法旨在为执行集体行为的机器人集合自动获取行为,使机器人能够重用先前获得的行为,更渐进、轻松地产生更复杂的行为。

架构和过程描述
  • 行为分层获取

    • 低级行为 :在非常简化的环境中,通过进化过程单独识别和获取最简单的行为(低级行为),用单个ANN实现行为并控制效应器。
    • 高级行为 :高级控制器不直接控制效应器,而是通过进化过程,结合低级控制器,在特定环境中获取,以修改低级控制器的行为。
  • 模块类型及作用

    • 祖先与后代关系 :若存在从X到Y的路径,X是Y的祖先;反之,X是Y的后代。
    • 根节点(R) :没有祖先的节点。
    • 执行器节点(A) :输出为执行器设定值的节点。
    • 执行器调制节点(AM) :输出通过乘以0到2之间的值修改其后代执行器节点的输出。
    • 传感器调制节点(SM) :输出通过乘以0到2之间的值修改其后代节点的输入。
    • 选择器节点(S) :输出选择一个直接后代作为分支,短路其他分支。
    • 连续选择器节点(CS) :节点输出用给定值调制一个后代,用其互补值调制其他后代。

以下是这些模块关系的mermaid流程图:

graph LR
    classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px;

    R(Root Node):::process --> A1(Actuator Node 1):::process
    R --> A2(Actuator Node 2):::process
    AM(Actuator Modulating Node):::process --> A1
    AM --> A2
    SM(Sensor Modulating Node):::process --> R
    S(Selector Node):::process --> A1
    CS(Continuous Selector Node):::process --> A2
集体供应示例

以模拟机器人为冲突地区的村庄提供人道主义援助为例,说明该架构的应用。

  • 场景设定

    • 资源与危险等级 :每个村庄有资源等级,代表基本生活物资的稀缺程度;整个区域有危险等级,代表访问村庄提供援助的风险。
    • 机器人能力 :机器人有传感器感知村庄资源等级和区域危险等级,能看到周围其他机器人并检测村庄的准确位置。
  • 控制器构建

    • 低级行为
      • 到达对象 :输入为到对象质心的距离和角度,输出为到达目标的线性和角速度。
      • 逃离对象 :输入输出与到达对象相同,但输出应使机器人远离目标。
    • 高级行为
      • 连续选择器节点(CS) :根据危险等级,控制机器人是单独行动还是集体行动。
      • 执行器调制节点(AM) :根据村庄资源等级,控制机器人接近或逃离村庄的行为。

以下是该示例中控制器构建的步骤列表:
1. 识别并获取低级行为,如到达或逃离对象。
2. 根据危险等级,进化连续选择器节点(CS),控制机器人的行动方式。
3. 根据村庄资源等级,进化执行器调制节点(AM),控制机器人对村庄的行为。

通过以上两种方法,我们可以看到在多机器人集体行为控制方面的不同思路和技术实现。改进的模块化强化学习技术在特定问题上有良好的表现,而基于进化的神经网络多级行为架构设计方法则提供了一种渐进式构建复杂行为的有效途径。这些方法为未来多机器人系统的发展提供了重要的参考和方向。

集体行为控制器的渐进式设计与模块化强化学习技术

技术细节分析
低级行为控制器的实现

低级行为控制器对于整个多机器人系统的基础行为起着关键作用。在集体供应示例中,涉及到到达对象和逃离对象这两种低级行为。这些控制器采用基于延迟的人工神经网络(ANN)构建,具有特定的特征。

控制器类型 输入 隐藏层 输出
到达对象 到对象质心的距离和角度 1个隐藏层,4个神经元 线性和角速度
逃离对象 到对象质心的距离和角度 1个隐藏层,4个神经元 使机器人远离目标的输出

这些控制器在进化过程中,使用规范的遗传算法,种群数量为240个个体。适应度的计算通过为每个动作添加特定的效用值来实现,在100个步骤(100个动作应用)中,针对10种不同的初始条件(初始位置)进行计算。例如,到达行为的适应度计算公式为:

$$
fitness_{reach} = \sum_{i = 0}^{n} \left[ (d_{prev}^i - d_{post}^i) + 10 \cdot e^{-4 \cdot \frac{d_{post}^i}{d_{max}^i}} \right]
$$

其中,$n$ 是步骤数,$d_{prev}$ 是执行动作前到目标的距离,$d_{post}$ 是应用动作后到目标的距离,$d_{max}$ 是到目标的最大距离。

以下是低级行为控制器进化过程的mermaid流程图:

graph LR
    classDef process fill:#E5F6FF,stroke:#73A6FF,stroke-width:2px;

    A(初始化种群):::process --> B(计算适应度):::process
    B --> C(选择操作):::process
    C --> D(交叉操作):::process
    D --> E(变异操作):::process
    E --> F{是否满足终止条件}:::process
    F -- 否 --> B
    F -- 是 --> G(输出最优解):::process
高级行为控制器的实现

高级行为控制器基于低级行为控制器进行构建,通过不同的调制节点实现更复杂的行为控制。

  • 连续选择器节点(CS) :根据危险等级控制机器人的行动方式。它由一个多层感知器ANN表示,具有一个输入(危险等级)、一个包含两个神经元的隐藏层和一个输出,该输出选择使用低级控制器的比例(标准化在0到1之间)。在进化过程中,使用种群数量为80个个体的遗传算法,输入有两个极端值0和10。

  • 执行器调制节点(AM) :根据村庄资源等级控制机器人对村庄的行为。它由一个多层感知器ANN实现,具有一个输入(资源需求等级)、两个各有3个神经元的隐藏层和3个输出。第一个输出调制接近村庄的控制器,第二个输出调制逃离村庄的控制器,第三个输出调制中级CS控制器的输出。在进化过程中,使用种群数量为130个个体的遗传算法,输入有两个极端值,分别对应最大资源需求和最小资源需求。

总结与展望

通过上述对改进的模块化强化学习技术和基于进化的神经网络多级行为架构设计方法的研究,我们在多机器人集体行为控制领域取得了一定的成果。

  • 成果总结

    • 改进的模块化强化学习技术在多机器人软管运输问题中,通过结合单独的约束模块训练和否决系统,实现了良好的学习率和成功率,尽管在可扩展性方面存在一定的性能下降,但结果仍然令人满意。
    • 基于进化的神经网络多级行为架构设计方法,通过分层获取行为,利用不同类型的模块进行调制,能够为机器人集体行为的控制提供一种渐进式、可重用的解决方案。在集体供应示例中,通过低级行为和高级行为的逐步构建,成功实现了机器人在不同资源和危险等级下的合理行为。
  • 未来展望

    • 对于改进的模块化强化学习技术,未来可以解决机器人只能轮流移动的限制,实现机器人的同时移动,以提高系统的效率。同时,考虑完全随机的环境,使技术更加适应现实场景。
    • 对于基于进化的神经网络多级行为架构设计方法,可以进一步研究如何更好地利用已有的低级行为,减少不必要的进化过程。此外,将该方法应用于更复杂的任务和场景,如工业生产中的多机器人协作、纳米技术中的纳米机器人控制等,具有很大的潜力。

总之,多机器人集体行为控制是一个充满挑战和机遇的领域,这些方法的不断发展和完善将为未来的机器人应用带来更多的可能性。

课程设计报告:总体方案设计说明 一、软件开发环境配置 本系统采用C++作为核心编程语言,结合Qt 5.12.7框架进行图形用户界面开发。数据库管理系统选用MySQL,用于存储用户数据小精灵信息。集成开发环境为Qt Creator,操作系统平台为Windows 10。 二、窗口界面架构设计 系统界面由多个功能模块构成,各模块职责明确,具体如下: 1. 起始界面模块(Widget) 作为应用程序的入口界面,提供初始导航功能。 2. 身份验证模块(Login) 负责处理用户登录账户注册流程,实现身份认证机制。 3. 游戏主大厅模块(Lobby) 作为用户登录后的核心交互区域,集成各项功能入口。 4. 资源管理模块(BagWidget) 展示用户持有的全部小精灵资产,提供可视化资源管理界面。 5. 精灵详情模块(SpiritInfo) 呈现选定小精灵的完整属性数据状态信息。 6. 用户名录模块(UserList) 系统内所有注册用户的基本信息列表展示界面。 7. 个人资料模块(UserInfo) 显示当前用户的详细账户资料历史数据统计。 8. 服务器精灵选择模块(Choose) 对战准备阶段,从服务器可用精灵池中选取参战单位的专用界面。 9. 玩家精灵选择模块(Choose2) 对战准备阶段,从玩家自有精灵库中筛选参战单位的操作界面。 10. 对战演算模块(FightWidget) 实时模拟精灵对战过程,动态呈现战斗动画状态变化。 11. 对战结算模块(ResultWidget) 对战结束后,系统生成并展示战斗结果报告数据统计。 各模块通过统一的事件驱动机制实现数据通信状态同步,确保系统功能的连贯性数据一致性。界面布局遵循模块化设计原则,采用响应式视觉方案适配不同显示环境。 资源来源于网络分享,仅用于学习交流使用,请勿用于商业,如有侵权请联系我删除!
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值