利用N-BEATS集合预测自动制导车辆偏差

小编:小编发布日期:2024-04-29浏览量:81

摘要

最近提出了一种新的AGV(自动导引车)控制架构,其中AGV由虚拟可编程逻辑控制器(PLC)远程控制,该控制器部署在多接入边缘计算(MEC)平台上,并通过5G网络中的无线电链路连接到AGV。在这种情况下,我们利用基于N-BEATS(最先进的时间序列预测)集成的先进深度学习技术来构建预测模型,即使在网络扰动出现时也可以预测AGV轨迹的偏差。因此,纠正操作,如停止AGV,可以提前执行,以避免潜在的有害情况。这项工作的主要贡献是N-BEATS架构的创新应用,用于使用序列到序列建模进行AGV偏差预测。这种新颖的方法可以灵活地适应AGV操作员当前的需求,而无需对模型进行再培训或牺牲性能。作为第二个贡献,我们扩展了N-BEATS架构,将来自外生变量和内生变量的相关信息合并在一起。这种联合考虑可以实现更准确的预测并增强模型的整性能。该解决方案通过具有5G连接的真实工厂环境中的现实场景进行了全面评估,并与深度学习架构(LSTM)、机器学习技术(随机森林)和用于时间序列预测的统计方法(ARIMA)的主要代表进行了比较。我们证明,通过使用我们扩展的N-BEATS架构的集成可以有效地检测agv的偏差,这明显优于其他方法。最后,对我们的解决方案的实时部署进行了仔细的分析,包括可能由数据漂移问题的出现触发的再训练场景。

1 介绍

自动导向车辆(agv)是一种在计算机系统指挥下运行的运输车辆。agv广泛用于物料运输应用,如工业制造和汽车装配厂,以及商业环境,如仓库和医院[1,2]。agv的一个关键因素是它们可以远程控制,从而在作业现场提供更大的灵活性和效率[3]。5G是远程控制agv的关键推动者,因为它提供了高速、低延迟和可靠的连接,这些车辆需要实时安全高效地运行。

利用5G功能,在[4]中,我们为支持5G的agv提出了一种新的控制方案,该方案涉及将其远程控制部署为运行在5G MEC(移动边缘计算)基础设施中的虚拟化可编程逻辑控制器(PLC)。通过将控制器迁移到MEC, AGV可以降低其硬件要求,因为控制器可以共享MEC的资源,这可以为AGV制造商节省大量成本。此外,使用这种方案,AGV可以利用虚拟化基础设施的灵活性、可扩展性和容错性,使AGV能够更快地适应不断变化的需求和要求,并确保它仍然可用来执行其任务。此外,由于控制器不再在AGV内部,这种方案也导致AGV的重量减少,这也允许减少功耗。

在上述方案中,控制器使用放置在AGV上的传感器的信息来决定其轨迹。特别是,控制器可以使用来自引导传感器的信息来测量当前偏离轨迹的电流。这些信息存储在AGV变量中,这些变量定期从AGV传输到PLC。控制器处理这些信息,生成纠正动作,并将其发送回AGV,使其回到所需的轨迹,或者在偏差过大时发出警报。对于在PLC中实现的逻辑来引导AGV,重要的是要考虑到AGV,由于其质量的惯性,可能无法立即响应控制器的命令。为了解决这一问题,可以使用预测模型对AGV的响应时间进行补偿。根据当前偏离轨道路径的情况,可以提前检测到AGV故障,从而采取适当的纠正措施,确保AGV保持在轨道上或使其完全停止,以防止事故发生,从而确保工作安全并减少运行停机时间。该问题可以建模为时间序列预测问题,其目标是根据AGV的过去状态和当前与期望轨迹的偏差来预测其位置的未来状态。在AGV应用中,轨迹偏差通常被称为“导引误差”或“导引误差”,因此在本文的剩余部分中,我们将使用“导引误差”一词来指代轨迹偏差。注意,这个术语不应该与AGV的故障混淆,因为引导误差是AGV在运动时出现的轨迹的自然偏差。

在这项工作中,我们提出了基于增强型N-BEATS架构的创新序列到序列方法,以提高提前预测AGV与期望轨迹偏差的准确性。本研究涉及的研究问题有:

  • RQ-1:对于这种AGV场景,是否值得部署最先进的神经网络架构(N-BEATS),它比传统的机器学习(随机森林)、统计(ARIMA)和深度学习(LSTM)模型消耗更多的资源?(在这种情况下,我们的目标是在有限的CPU/GPU资源可用时最大化预测性能/准确性)。

  • RQ-2:预测AGV故障最合适的预测变量是什么?

  • RQ-3:对于这种AGV场景,是否存在DL/ML模型、时间窗和输入特征的最佳组合,以最大限度地提高预测性能?

  • RQ-4:这些因素是如何影响预报准确性的?

  • RQ-5:如何有效解决实时部署场景中出现的数据漂移问题?

为了解决研究问题RQ-1,与之前的工作[4]形成强烈对比,本研究旨在采用现代序列到序列的时间序列预测模型,包括最近最先进的技术,如N-BEATS和其他先进的方法,如集成学习,来评估是否有可能(i)进一步提高AGV偏差预测的准确性,生成未来的预测序列,而不是未来的单点;(ii)实现更好的预报稳定性和更长的预报范围,从而更可靠地预测AGV故障。

在这种情况下,我们提出了一种新的序列到序列预测在AGV场景中的应用,它与传统的预测单一值代表AGV在特定时间范围内的预期偏差的方法有根本的不同,因为它在选择最大预测范围方面具有更大的灵活性。这一改进为作业者提供了评估一系列预测范围的能力,并根据部署AGV的特定作业环境动态选择最优预测范围,使预测精度最大化。

此外,在这项工作中选择N-BEATS是因为它被认为是单变量时间序列预测的最先进方法。作为一种创新,我们修改了原来的N-BEATS架构,在其输入中添加了外生变量。我们将改进的N-BEATS架构的预测性能与各种具有代表性的时间序列预测DL、ML和统计方法进行了比较。此外,我们还应用模型集成技术进一步提高了单个模型的最终预测精度。虽然N-BEATS作为时间序列预测中最先进的模型,预计在拟议的AGV场景中表现优于其他模型,但应该注意的是,在性能的提高和该模型消耗的额外资源之间存在权衡。

为了解决第二个研究问题(RQ-2),提出了几个预测变量。由于AGV运动时的惯性,最坏情况下停止AGV大约需要10 s的时间,我们将10 ~ 20 s的周期作为预测AGV偏差的有用范围。为了推断AGV的轨迹问题,考虑了制导误差和制导振荡两个变量的提前预测。前者存储AGV的引导传感器与地板上胶带的偏差,后者存储引导传感器从左到右穿过胶带的次数,反之亦然。直观地说,这两个变量的高值表明AGV难以维持其轨迹。

为了解决研究问题RQ-3,我们进行了几个实验来评估模型、时间窗和输入特征集的最佳组合,以获得最佳的预测性能。为了训练模型,我们使用了实际数据,这些数据是通过ASTI移动机器人公司提供的工业级AGV和虚拟PLC进行大量实验收集的,这些实验连接到5G实验开放实验室5TONIC部署的5G网络中。在不同强度的实验中再现了真实的网络误差(如延迟和抖动)。因此,所提出的预测模型可以在不同程度的网络干扰下预测AGV故障。

训练完成后,我们比较了不同模型的性能,以便了解每个选择的特征集的重要性,时间窗口分割的重要性,并最终了解每个提出的体系结构的能力。我们的实验结果表明,所提出的N-BEATS集合在整个预测范围内提供了一致的稳健预测,即使在网络条件显著退化的情况下也能产生高度准确的长期预测。

最后,为了解决RQ-4研究问题,对我们的解决方案的实时部署进行了仔细的分析,包括可能由数据漂移问题的出现触发的再训练场景。我们应用迁移学习技术,使用先前在5TonIC实验室收集的数据,以在线方式对所提出的模型进行再训练的现实实验分析。结果表明,与从头开始训练模型相比,重新训练模型所需的时间显著减少。

1.1 贡献

这项工作的主要贡献可以强调如下。

  • 在AGV文献中首次提出了一种以序列到序列的方式预测AGV偏差的创新方法。现有方法依赖于每次预测单个时间步长并应用滚动机制来获得未来值序列,与此不同,该方法依赖于应用于N-BEATS和LSTM架构的高级序列到序列模型,根据未来时间步长与过去偏差窗口之间的时间相关性来学习预测未来AGV偏差序列。重要的是,我们的方法不会导致滚动策略产生的错误累积,因为它不依赖于基于迭代的算法来生成所需的预测序列,这可能导致预测误差的急剧增加。相反,使用单一学习模型和历史数据窗口,我们的方法能够提供未来预测的完整时间序列,其中所有要预测的时间步长都包含在相同的输出向量中。通过这种方式,多个视界被约束在同一模型结构中,为AGV操作员提供了一种灵活的方法,可以根据当前应用的需求选择最合适的视界来预测未来的偏差序列,而无需对模型进行再训练,也不会损失性能。

  • 作为一种新颖的方法,我们扩展了N-BEATS的架构,以考虑外生变量作为输入。包含外生特征的动机是需要为模型提供额外的背景,至少部分地解释预测的结果。我们特别关注AGV-PLC连接统计数据,因为它们直接受到网络条件退化的影响。AGV- plc连接质量的下降将导致AGV轨迹控制不佳,最终会给AGV带来困难,这将反映在AGV与其轨迹偏差的增加上。据我们所知,这是N-BEATS中首次将与目标序列域不直接相关的外生特征作为多变量时间序列预测任务的输入。通过将AGV- plc连接参数作为外源变量纳入到N-BEATS模型中,我们在预测AGV轨迹偏差方面获得了最佳的整体结果,这表明将显著特征输入到N-BEATS模型中可以显着提高该架构可实现的整体预测性能。

  • 我们提出了一种基于AGV导引振荡分析的AGV故障预测新方法,这是一个衍生变量,我们使用PLC-AGV连接数据包中存在的一些AGV变量计算。该导出变量在提高预测性能方面具有很大的潜力,为AGV运动建模文献开辟了一条新的研究方向。据我们所知,所提出的方法是文献中第一个对测量的AGV导轨振荡进行多变量分析的方法,允许将这个新变量与其他传统测量相结合,例如导轨误差和网络相关统计。我们的实证结果证实,使用AGV振荡作为额外的外源输入可以作为AGV故障的有用指标,正如LSTM和随机森林模型在使用该变量训练时取得的显着更好的性能所证实的那样。这一结果使我们能够突出在AGV控制系统中使用导向振荡变量的潜力。

  • 我们观察到,在某些情况下,N-BEATS和Random Forest的训练可以生成在预测指标(例如MAE或MSE)中获得良好分数的模型,但倾向于预测接近目标变量平均值的值。换句话说,预测的分布高度集中在Guide Error变量的均值周围,这导致在目标变量的极值和高波动区域的预测非常不准确。我们将这种特殊现象称为“懒惰行为”,因为模型在几乎每次预测中都试图保持安全,避免极值以最大限度地减少做出高度错误预测的可能性。据我们所知,这是文献中第一次报道这种不良影响。这种异常行为阻止了这种惰性模型在现实场景中的部署,因为这些模型将无法提前预测AGV遇到的困难,因为这些困难与突然出现的大引导误差值直接相关,而这些值往往无法被惰性模型预测。值得注意的是,我们发现这个问题在LSTM中不存在,这表明这个体系结构似乎对这种异常是健壮的。此外,我们建议使用手动启发式方法来检测和丢弃懒惰模型,但应该进行具体的研究,作为未来的工作来避免或减轻这种有害行为。此外,另一个重要的任务是探索哪些ML/DL算法是脆弱的,哪些算法对这种现象是稳健的。

  • 我们对模型的实时部署进行了模拟,并进行了广泛的分析(a) N-BEATS和LSTM模型在生产环境中部署的可行性,用于实时控制agv车队;(b)应用迁移学习技术时,数据漂移场景下的模型再训练时间。

1.2 论文结构

全文组织如下:第二节论述了相关工作。在第3节中,我们描述了用例架构和我们用来模拟不同网络条件的设置过程,并解释了数据收集和处理步骤。第4.1节确定了我们选择进行实验的ML和DL模型,并提供了为什么在其他类似技术中选择它们的理由。在第4节中,我们定义了用于数据处理、模型训练和性能评估的实验框架。第5节给出了实验结果。本节详细介绍了各种深度学习模型(N-BEATS和LSTM)、机器学习算法(随机森林)和统计方法(ARIMA)的训练和测试,这些模型使用了内源性和外源性特征和集成的不同组合。此外,本节还详细介绍了在发生数据漂移时可能出现的实际部署和重新训练问题。在第6节中,我们总结了从获得的结果中得出的主要发现,并提出了有趣的未来工作来探索。最后,附录A包含了导振荡变量的初步分析(第6节)、实验结果的细节(第1节)、反映我们在一些模型中观察到的懒惰行为的附加图(第3节)和集合实验的细节(第4节)。

2 相关工作

现代agv可以按照动态轨迹运行,在许多应用中具有更大的灵活性和效率[1,5]。在真正的智能工厂中,agv必须与其他自动化系统和人共存并相互作用[2]。必须妥善管理这些相互作用,以避免中断,保持效率,并确保安全运行[6]。在实际情况下,agv不能在环境中自由移动,否则必须提前绘制工厂车间,这是不切实际且昂贵的。相反,许多研究建议使用指南线来建立一个预定义的电路来解决这个问题。这条引导线可以是物理的(例如,在地板上物理嵌入的磁带[7])或虚拟的(例如,记忆路径[8])。引导线限制了AGV的运动,并为AGV在工厂地板上定位提供了一种方法。利用先进的深度学习技术进行时间序列预测,提前预测AGV轨迹偏离指导方针,以避免意外车辆碰撞和提前识别系统故障,目前还缺乏已发表的研究。

工业部门正受益于采用时间序列分析来提高其运营效率[9,10,11]。虽然一些统计和机器学习(ML)技术已经应用于时间序列预测,如自回归综合移动平均(ARIMA)模型或线性回归,但近年来,由于深度学习(DL)模型能够自动学习数据中的复杂模式,因此人们对应用深度学习(DL)模型来执行这项任务越来越感兴趣[12,13]。特别是,深度学习架构在预测具有长期依赖关系的时间序列数据方面取得了成功[14,15],这与许多工业4.0应用(如预测性维护和故障检测)高度相关。最近,Oreshkin等人推出了“用于可解释时间序列预测的神经基础展开分析”(N-BEATS)[16],这是一种基于dl的架构,它使用由几个通过残差链路连接的完全连接层组成的深度堆叠块序列。所提出的体系结构展示了几个令人满意的特性:它无需修改即可适用于广泛的目标领域,训练速度快,并且可以产生可解释的结果。此外,该体系结构已被广泛应用于预测问题,其应用领域包括能源[17]、医疗保健[18,19]和电信[20]。

一些研究对遥控agv的路径跟踪控制算法进行了研究。其中一项研究[21]提出了一种无线AGV路径跟踪控制算法,该算法考虑了无线网络引起的不同网络延迟。所提出的方法包括一个最优延迟估计器,该估计器调整接收到的AGV位置以考虑无线网络延迟。该延迟估计器利用卡尔曼滤波器和无线延迟动力学的简单随机模型来产生最优延迟估计。然后使用估计的延迟来推断AGV的实际位置,并利用该位置来计算适当的控制命令。通过测量不同路径和网络交通条件下车辆的路径偏差和总行程时间,仿真评价了该方法的有效性。

另一项研究[22]提出了时变无线信道动态工厂环境下遥控agv面向目标的无线通信解决方案。作者强调了这种系统的数据速率和控制精度之间的内在依赖关系。为了解决这个问题,他们提出了一个可以动态调整传输数据速率以优化AGV轨迹的模型。该问题被表述为一个半马尔可夫决策过程,其中信道相关性随着时间的推移被评估以解决衰落问题。交叉轨迹误差(XTE)被用作度量与规划路径的距离偏差的度量。所提出的方法优于固定数据速率策略以及仅基于信息年龄(Age-of-Information, AoI)的最先进解决方案,实现了更高的系统轨迹精度的目标。

然而,很少有文章考虑5G网络用于AGV控制。5G网络提供了更高的数据速率、低延迟和可靠性,这对于AGV在工业环境中可靠和确定的运行至关重要。据我们所知,文献中只有两项研究解决了使用5G网络远程控制AGV的情况。

在[23]中,作者提出了一种使用部署在客户端设备上的5G设备进行远程操作的AGV。在这种情况下,作者提出了一种基于MEC平台的AGV控制方案,为AGV的运动预测提供端到端的解决方案。在这种情况下,AGV由5G基站根据附着在AGV上的摄像头收集的视觉信息,通过5G RAN链路传输到远程MEC平台,自动控制AGV。然而,正如作者所认为的那样,控制算法是基于简单的运动学方法,而不使用任何ML或DL技术来提前预测AGV轨迹。与此形成鲜明对比的是,我们提出了一个用例,在这个用例中,提前预测AGV的轨迹偏差对于避免由于制导控制错误而导致AGV偏离轨迹时可能出现的有害情况至关重要。与我们的研究相比,[23]中提出的工作的另一个局限性是,它的方法没有在真实工厂环境中的各种现实条件下进行测试(例如,没有在网络干扰效应、不同的流量负载等情况下进行评估),这些因素会显著影响所提出的解决方案在真实环境中的性能和有效性。相比之下,我们的工作探索了深度学习模型在现实设置中的性能,其中在AGV操作期间以编程方式引入了广泛的网络干扰(例如延迟,抖动)。此外,他们的工作并没有像我们的那样提出一个现实的工业4.0设置,其中工业级组件(PLC和AGV)在实验中使用。最后,他们的工作没有像我们在工作中那样分析控制算法在不同流量负载和网络条件下的响应时间。

以前的研究主要集中在使用无线网络改善远程控制agv的导航。然而,预测和规划纠正机动,以响应网络干扰引起的偏差是一个未开发的研究领域。为了填补这一空白,确保agv的安全运行,防止碰撞,并最大限度地减少工厂工作流程中的中断,我们的研究建立在[4]提出的初步工作的基础上。在初步工作中,提出的解决方案主要集中在工业级环境中,通过专门分析AGV-PLC连接,可以预测AGV故障,而无需在最终用户设备(AGV和PLC)中部署任何仪表。然而,当将我们的工作与[4]进行比较时,出现了几个重要的差异:

  1. (i)

    首先,[4]的方法依赖于使用典型回归策略预测单个瞬时值(提前10到15秒之间的平均值)。与此形成鲜明对比的是,我们提出的解决方案使用一种基于预测200个未来值序列的方法(从即时时间提前1到20秒,以100毫秒的步骤),使用强大的序列到序列DL模型来解决这个问题。使用这种新方法,多个视界包含在同一个模型结构中,为AGV操作员提供了一种灵活的方法,可以根据当前应用需求选择最合适的视界来预测未来的偏差序列,而无需对模型进行再训练,也不会损失性能。

  2. (2)

    此外,我们的工作将之前的预测视界(15秒)大大延长到20秒,从而有更大的安全裕度来应用适当的机动来防止AGV与周围障碍物碰撞,从而提高工作区域的安全性。

  3. (3)

    [4]的一个重要限制是只使用了传统的深度学习算法(LSTM和1D-CNN),并且训练和测试的模型组合数量非常有限。与此形成鲜明对比的是,我们的工作对N-BEATS的扩展版本(最先进的时间序列预测架构)与传统的ML/DL和统计模型进行了深入的比较。在这种比较中,选择了一组丰富的超参数,并评估了大量的模型组合。事实上,我们的研究结果表明,N-BEATS模型在能够满足实时操作的严格要求的同时,能够实现比传统方法更好的预测性能。此外,我们分析了使用模型集成时的结果性能,证明N-BEATS集成优于单个模型。

  4. (iv)

    先前工作的另一个重要限制是使用固定的时间窗口大小(60秒)。相反,我们的研究探索了更广泛的时间窗口范围,特别是4、7.5、15和30秒,并证明最佳窗口大小是一个必须为每个模型单独调整的超参数。我们的研究结果表明,增加时间窗口主要导致性能的提高。

  5. (v)

    [4]对实时部署进行了一个非常简单的研究。相比之下,我们的工作彻底分析了实时部署的可行性,考虑到CPU或GPU的可用性,单个模型管理单个AGV或AGV组,以及当模型过时时应用或不应用迁移学习的再训练时间。

  6. (vi)

    最后,前面的工作仅使用Guide Error变量作为AGV状态的代表。相反,我们的工作还考虑了一个基于AGV导向振荡的新变量。我们的研究结果表明,使用AGV振荡作为额外的外源输入可以成功地作为AGV故障的有用指标,正如一些模型取得的显着更好的性能所证实的那样。

表1对本研究的主要发现和贡献与其他密切相关的文章进行了全面的比较分析。这一比较的目的是对本文所讨论的主题进行的研究提供一个全面的概述,突出我们的研究对现有文献的独特贡献。

表1主要研究结果及结果的综合比较分析与本研究密切相关的研究贡献

目录

摘要 1 介绍 2 相关工作 3.用例 4 实验 5 实验结果 6 结论 数据和材料的可用性 参考文献 作者信息 道德声明 附录A 搜索 导航 #####

3.用例

在本节中,我们将描述我们打算在这项工作中解决的用例。在这项研究中,我们的目的是利用复杂的深度学习技术来建立预测模型,预测通过远程PLC控制的AGV的偏差。

所有AGV都配备了一个传感器,用于测量AGV的一个点与要遵循的轨迹之间的距离。为此,可以根据物理参考的性质使用不同的传感器:磁性(地板上的磁带和AGV中的磁性天线),电磁(埋在地下的电线和AGV中的天线),光学(地板上画的线和AGV中的摄像机)。后来的agv配备了SLAM导航系统,该系统使用自然地标创建地图并在地图中定位机器人。通常,这些设备存储要遵循的虚拟轨迹,并提供到该虚拟线的距离,但本质上它们是相同的概念。

在我们的案例中,AGV在牵引单元中配备了磁性天线,该天线提供了单元中心与磁带所描述的电路之间的距离。在AGV领域中,通常将此距离称为“导向误差”,因此我们遵循此惯例。引导误差不是严格的欧几里得距离,但它有一个标志来指示AGV是位于电路的左边还是右边。通过这种方式,AGV根据引导误差的信号调整角速度,使其更接近所需的轨迹。

图1显示了AGV和导引误差的示意图。可以观察到,这种AGV类似于三轮车机器人,但前轮被差动牵引单元取代。这样,牵引单元的行为类似于差动机器人,但整个AGV的运动受到三轮车的运动学约束的限制。磁传感器安装在牵引单元上,并提供引导误差信息,以正确地遵循磁带在地板上绘制的路径。这种AGV配置在汽车工业中非常常见。

假设车轮不存在打滑,则AGV的运动可以用(1)、(2)、(3)、(4)来描述。

(1) (2) (3) (4)

其中,位于后桥中心的坐标系的位置和方位用[m, m, rad]表示;位于牵引单元中心的坐标系的位置和方位用[m, m, rad]表示;为后桥与牵引单元中心之间的距离[m];为牵引单元车轮间距离[m];[m/s, m/s]分别为左牵引轮和右牵引轮的纵向速度。

图1
figure 1

AGV和导轨误差表示

我们的主要目标是利用这些信息来预测AGV的运动,使其在潜在危险情况发生之前停止,例如与迫在眉睫的障碍物碰撞或突然偏离电路,甚至在AGV和PLC连接之间网络性能下降的情况下。

3.1 用例架构

如前所述,agv由可编程逻辑控制器(PLC)控制。该PLC是一种专门设计和编程的设备,用于控制AGV将执行的操作顺序。PLC通过有线或无线通信网络与AGV连接。AGV有几个传感器,允许它检测它的环境和它在工厂的位置。PLC利用这些信息来控制AGV的运动。为了做到这一点,AGV还配备了执行器,使其能够在所需的方向上移动。在我们的案例中,PLC被虚拟化并部署在MEC基础设施的5G网络边缘。PLC的虚拟化允许通过减少数量的PLC同时控制大量agv,从而节省成本,同时为系统提供更大的可扩展性和灵活性。此外,远程位置的PLC虚拟化可以节省空间,减少agv的重量和功耗。此外,将PLC放置在AGV附近大大减少了通信延迟,这是满足AGV运行严格的实时性要求的关键因素。在这种情况下,URLLC(超可靠低延迟通信)是远程AGV操作的关键促成因素。URLLC是5G的一项功能,旨在提供工业环境所需的低延迟和可靠通信。在上述场景中,AGV与PLC之间的通信过程如下:

  1. 1.

    AGV将位置数据发送给PLC(即与当前路径的偏差)。

  2. 2.

    PLC使用位置数据来纠正AGV的轨迹,并向AGV发送更新的命令。

  3. 3.

    AGV执行命令并向PLC发送状态更新。

图2
figure 2

代表AGV、5G RAN、5G MEC、5G CORE和ML模块的用例架构

所提用例的5G网络架构如图2所示。如图所示,该架构包括一个5G无线接入网(5G RAN),为AGV提供无线通信功能。验证和传递IP连接的信令由5G核心内的信令流量管理。通过引入连接AGV和PLC的5G链路,可以将传统上安装在AGV上的内部PLC模块替换为更轻量、更节能的5G调制解调器芯片组。为了满足通过远程PLC有效运行AGV的低延迟要求,需要使用承载远程PLC的虚拟机(VM)的MEC平台。MEC平台还包含多个计算资源,包括一个组件,该组件为不同的服务需求提供对用户数据平面的访问。这些计算资源采用虚拟化技术部署,包括一个管理程序和多个虚拟机。其中一个vm是主PLC,负责控制多个agv。机器学习引擎代表在MEC平台上运行的基于机器学习的预测模型。机器学习引擎利用AGV与PLC之间的连接实时捕获的信息,提前预测AGV故障的发生。

提供给ML引擎的输入变量是从AGV通过网络连接发送给PLC的网络数据包中获得的。从这些网络数据包中提取和处理两组不同的变量,用作预测模型的输入:(i) NET变量:可以从数据包头中提取和汇总的连接统计数据,可以确定和量化网络退化问题。连接统计数据可以作为ML/DL模型的输入,根据模型识别的网络退化问题预测目标变量。此外,这些特征的使用使我们能够训练更可靠的模型,这些模型在现实世界场景中对这些情况的发生保持健壮性。(ii) AGV变量:导向误差的电流值,可以进一步处理以提取变量导向振荡,测量AGV穿过工厂地板上跟踪电路的磁带的次数。

在进行的实验中,首先对这两组变量(AGV和NET)进行单独测试,然后将其组合起来,以确定哪种组合最能预测AGV故障。证明仅使用连接统计数据(NET变量)就可以预测AGV故障,这将是非常有益的,因为它允许在不需要网络操作员干预工厂的非公共网络(NPN)的情况下操作AGV,从而使AGV能够从公共网络进行控制,其中传输的有效载荷可以加密,并且只有网络统计数据可用。相反,仅使用AGV变量集来预测AGV故障将证明PLC-AGV操作员可以消除测量和收集网络参数的需要,这可能需要在工厂安装专用设备接入专用网络来收集PLC-AGV连接的网络数据包。但是,这种安装在某些上下文中可能是不可行的。

此外,如图2所示,我们的架构包括一个网络退化模拟器(NDE),这是一个组件,在无线接入网和MEC平台之间的连接中作为中间人放置。NDE被设计用来模拟网络退化对这两个实体之间通信的各种影响,比如丢包、延迟和抖动。通过引入这些网络退化效应,NDE允许评估不同网络条件对MEC应用程序性能的影响,例如弱信号、噪声、网络拥塞和高延迟。这些条件在真实环境中通常不存在或断断续续,因此很难捕获足够数量的数据来充分训练ML/DL模型。这些异常网络条件的模拟对于生成足够的数据来开发稳健的模型至关重要,即使在困难和不可预测的网络条件下,也可以准确预测agv的行为,这是工业环境中的关键要求。

该用例建议使用部署在MEC平台上并基于欧洲工业数据空间可信连接器(IDSTC)技术的两个软件连接器。这些连接器被添加到MEC应用程序中,最终目标是巩固MEC基础设施,使其成为5G网络中工业4.0垂直行业的有效资源。IDSTC是一个开放的物联网边缘网关平台,提供与外部组件通信的标准化方式。IDSTC是工业数据空间参考架构中可信连接器的实现,遵循开放标准DIN Spec 27070和ISO 62443-3。IDSTC可用于使用各种协议适配器连接传感器、云服务和其他连接器。在我们的用例中,左侧IDS连接器允许将引导误差变量的ML预测导出到外部操作支持系统,在该系统中,人工操作员或全自动物流过程控制将处理预测,以便在需要时通过右侧IDS连接器对AGV应用一些纠正操作。

在此架构中提出的预测模型试图提前检测AGV的轨迹偏差,以补偿AGV的响应时间,因为由于其质量的惯性,它可能无法立即响应PLC的命令。通过预测轨道路径的显著偏差,可以预测AGV故障,并采取适当的纠正措施,使AGV保持在轨道上或使其完全停止。

在正常情况下,AGV的偏差可以由PLC利用磁天线检测到的瞬时制导误差来纠正,并通知AGV它是位于轨迹的右侧还是左侧。如果误差为正,则AGV由PLC指示增加转向角度以接近路径。相反,如果它是负的,PLC指示AGV减少其转向角度。最后,如果误差为零,则意味着AGV正确地位于路径的中间,并且保持了方向。这种控制策略使AGV能够实时地遵循期望的路径。

此外,预测这些误差可以为未来的导航质量提供有价值的信息。如果这个质量不好,AGV将有问题跟随轨迹,因为它会振荡太多,甚至可能离开路径。为了提前避免这些情况,物流过程控制可以使用预测误差来执行特定的动作,例如调整纵向速度参考。这样,当预测误差增大时,减小纵向速度参考以保持导航水平。这种严厉的行动可能会暂时降低生产率,但避免生产线停工。在极端情况下,物流过程控制可以决定完全停止AGV,以防止对物体或人员造成损害。

3.2 用例设置

第3.1小节中描述的用例是在5TONIC建立和执行的,5TONIC是一个由Telefónica和IMDEA Networks共同创建的开放实验室,为部署利用5G网络功能作为核心技术的实验提供了一个可控但现实的环境。在5TONIC上,我们准备了不同的AGV实验场景,包括模拟各种网络退化效应,以重现网络损伤的现实场景。首先,我们在房间的地板上建立了一个由磁带指示的参考电路,其中包括AGV的电池充电点。接下来,创建一个MEC平台来托管虚拟化PLC和提供预期功能所需的其他服务(数据收集器、数据包聚合器、ML引擎和IDS连接器)。虚拟化的PLC、机器学习引擎和其他服务部署在几个虚拟机上。为了获取用于训练和测试ML/DL模型的数据,机器学习虚拟机使用Unix命令行工具“tcpdump”捕获从AGV传输到虚拟PLC的网络数据包,并以标准“pcap”文件格式存储。在实验过程中,对AGV和虚拟PLC之间的连接施加了几种退化效应,以确保预测模型在实际环境中运行时的鲁棒性。为了在AGV和PLC之间的链路中产生这些网络扰动(延迟、抖动、丢包和损坏),在MEC平台上运行Unix“流量控制”命令行工具。下面的小节详细介绍了生成数据的过程,然后对数据进行预处理,以便将它们转换为适合训练和测试ML/DL模型的格式。这个过程的工作流程的总结可以在图3中看到。

图3
figure 3

总结了数据收集、预处理和DL/ML模型训练的工作流程

3.3 网络数据生成场景

由于我们计划以监督的方式训练ML/DL预测模型,我们需要收集代表真实AGV操作场景的标记数据。为此,我们还执行了多个网络数据捕获,其中我们模拟了AGV和PLC之间通信的网络退化效应。网络数据捕获包含AGV-PLC连接中传输的数据包。我们将一次数据捕获引用到具有相同网络配置的AGV的一次运行。在每次数据捕获中,AGV最初被放置在数字8电路中的固定位置,然后PLC被命令在电路中移动AGV至少五次。我们引入延迟和抖动作为网络退化效应。延迟是指在网络数据包中增加一个固定的延迟。抖动是指网络数据包中随机增加的延迟。延迟值从正态Pareto分布中随机抽样,平均值在50到300微秒之间,标准差在10到50微秒之间。这些值是通过相当长时间仔细分析真实AGV生产线的网络流量而选择的。值得注意的是,对于同一个实验,延迟和抖动并不是同时引入的。原因是我们想要独立地评估每个网络退化效应的影响。在对网络流量进行彻底检查后,我们得出结论,这两种效果同时存在的场景并不能代表真正的AGV操作场景,并且会使ML/DL训练变得更加困难。数据捕获分为三种不同类型:

  1. 1.

    干净:在这种类型的数据捕获中没有引入延迟或抖动。在没有网络退化效应(即正常情况)的情况下,这些数据捕获被用作AGV控制系统性能的正式验证。

  2. 2.

    静态:在这种类型的数据捕获中,延迟和抖动作为恒定的网络退化效应被引入,并且AGV在这些条件下工作。此数据捕获的目的是评估网络退化对AGV性能的影响。我们应该注意到,在数据捕获的前30秒和最后30秒以及中间30秒期间,没有引入退化效应。通过这种方式,还可以捕获从干净网络到降级网络的转换,反之亦然。这是为了评估网络退化对AGV性能的影响,当这些影响只是暂时引入时。这可以帮助训练出符合预期的模型,即使在AGV运行期间网络退化效应突然出现和消失的情况下也是如此。

  3. 3.

    斜坡:在这种类型的数据捕获中,延迟和抖动作为网络退化效应引入,随着时间的推移逐渐增加。这种类型的数据捕获允许在AGV最初处于控制之下时评估网络退化对AGV性能的影响,但是随着时间的推移,网络退化的影响变得更加严重,导致AGV离开电路。

所有数据捕获至少收集三次,以确保每个场景的数据可靠性。在每次捕获期间,我们收集通过AGV和PLC之间的UDP协议传输的所有数据包。5G网络中其他与AGV和PLC通信无关的报文被丢弃。处理步骤一旦数据被捕获,它就被存储为原始PCAP文件,总计将近100GB。数据捕获包含大约434,000个AGV-PLC连接的快照,这些快照在用于训练和测试的数据集中生成了大致相同数量的示例。

3.4 数据特征提取

在AGV与其虚拟PLC的连接之间捕获的网络数据在输入到ML组件之前经历了特征提取过程。选择了两种类型的特征:(i) AGV- plc连接数据包的有效载荷中包含的AGV变量,以及(ii) AGV- plc连接的统计数据。使用AGV专有工具解码AGV- plc连接的控制有效载荷,并使用Tstat工具(一种广泛使用的网络分析工具(http://tstat.polito.it/))从连接中提取网络统计信息。值得注意的是,由于本工作中提出的ML模型试图预测由虚拟PLC控制的AGV在网络连接退化下的未来偏差,因此将网络特征作为外生变量添加到模型中以检测网络退化并补充正在预测的AGV变量被认为是重要的。

表2用于ML/DL模型训练的特征

从AGV-PLC连接有效载荷中提取的100多个变量中,仅选择其中两个变量进行本研究:瞬时导向误差和停止标志。其他包含AGV状态数据的变量,如轮速和电池状态,被丢弃。使用有限的AGV特征集来最大限度地减少对AGV系统提供商的依赖,并使训练后的模型能够轻松适应未来不同提供商的其他AGV。停止标志变量仅在预处理阶段使用,以排除AGV停止的情况(例如,在给电池充电时),因为在这些时期预测不相关。引导误差变量由磁性天线检测,该天线通知AGV其在磁条的右侧(正值)或左侧(负值)的位置(以厘米为单位)。

导流振荡是本研究中考虑的另一个AGV特征,它来源于预处理阶段的导流误差变量,因为它不存在于连接有效载荷中。导轨振荡特征表示导轨误差变量的值在预定义的间隔内改变符号的次数。我们推测AGV振荡值相对于轨迹的增量可以提醒我们AGV发生故障。当两个AGV变量是预测的对象时,它们被认为是内生的;当它们帮助预测另一个AGV变量时,它们被认为是外生的。

从Tstat工具生成的一组8个变量中选择了三个AGV-PLC连接统计信息(数据包时间戳、发送的数据包数量和自连接开始以来接收的数据包数量)。Tstat提供的其他变量被丢弃,因为它们在整个连接过程中是恒定的,这不会向ML模型提供信息。在这些被丢弃的变量中有数据包大小,由于AGV和PLC之间的通信协议的特点,它的长度为80字节。应该注意的是,Tstat可以根据网络连接计算这些统计信息,而不需要使用有效负载信息,这意味着即使连接是加密的,它也可以这样做。

对选择的三个特征进行处理,生成一组7个外生变量,如表2 (NET特征集)所示。之所以会进行扩展,是因为这些新的变量已经在之前的研究工作中得到了成功的应用,如[24]和[25]。其中,[24]提出了客户端间到达时间(Inter-arrival Time)和服务器间到达时间(Inter-arrival Time)两个特征,[25]给出了客户端总包数、服务器总包数、客户端每秒总包数、服务器每秒总包数以及客户端总包数与服务器总包数之比五个特征。在初步阶段,也考虑了[4]中使用的一组连接统计,但在观察到除了前面提到的七个变量外,建议的变量并没有为模型添加任何重要信息后,决定将它们排除在外,只使用前面的七个。

最后,将所有处理过的数据编译成一个数据集文件,其中包括表示表2中特征的前9列,以及用于时间戳和实验标识符的另外两列。数据集的行数与Tstat在AGV-PLC连接的生命周期内计算统计信息的次数相同。通常,除非有大量的数据包,Tstat会在每次数据包到达时重新计算统计信息。当突发报文到达时,考虑到整个突发报文,统计信息只重新计算一次。由于本文提出的模型解决了时间序列的预测问题,因此需要时间戳来保持文件中的数据包序列。同样,实验标识符保证了不同实验的数据在构建时间序列分析的时间窗时不会被混合。生成的文件以Apache Parquet格式保存,该格式压缩了信息并将其大小减少到大约20 MB。值得注意的是,PCAP格式的初始捕获占用了大约100 GB的存储空间。

3.5 提出的解决方案的优点和缺点

本节中提出的解决方案提供了一系列必须仔细考虑的优点和局限性。该解决方案的主要优势在于,它可以通过5G MEC和工业级AGV的实际部署实现实时场景。这有助于在更实际的行业环境中对拟议系统进行评估,从而准确评估其性能。与上述相关,所提出的系统能够真实地模拟和收集5G网络中可能自然出现的各种干扰模式的数据,这是一个显著的优势。这允许系统在各种实际条件下进行准确可靠的测试和评估,使其在实际场景中部署时更加健壮和可靠。此外,使用虚拟化的PLC系统提供了成本节约、冗余、可扩展性优势和更容易的可升级性。这些特点使系统更加灵活,适应不同的需求,提高了系统的整体效率。

此外,正如将在5.4节中讨论的那样,使用强大而强大的深度学习技术,能够在通用硬件上运行,促进了多达64台agv的实时并行执行。与传统的预测方法(如ARIMA)相比,这种方法大大减少了总执行时间。此外,深度学习算法的使用使系统可以毫不费力地扩展以适应更多数量的agv,使其成为需求不断增长的公司的理想解决方案。此外,我们的解决方案基于多水平预测模型,使系统操作员或技术人员能够根据AGV工作负载、网络稳定性和所需精度等因素动态选择最合适的预测步骤。与传统方法不同,传统方法需要对不同预测范围的大量模型进行训练和验证,而这种方法不需要这些繁琐的程序。此外,面对AGV网络的意外中断,这种方法代表了一个强大的解决方案,这可能导致AGV和PLC失去连接。这一特性在工业环境中尤为重要,因为在工业环境中,操作可靠性至关重要,因为它可以确保系统在出现中断或故障的情况下继续运行,从而提高其整体可靠性。

缺点是,系统对强大的深度学习算法的依赖是一个必须考虑的潜在缺点。尽管我们已经证明,深度学习模型可以成功地实时控制多达64辆agv并行工作的车队,但如果agv的数量显著增加,系统可能会变得计算密集。另一个限制是,系统中使用的干扰是合成产生的,尽管已经做出了很大的努力来模拟现实环境,但不可能完全复制现实世界的条件。因此,在实际情况下,系统的性能可能略有不同。此外,在一个工厂中选择的电路可能是不同的,并且模型必须针对不同的工厂进行重新培训。最后,系统中使用的模型是针对特定类型的AGV进行训练的,这意味着如果使用不同的AGV,采用不同的制导机制,则需要训练新的模型。

要考虑的解决方案的另一个限制是,建议的预测模型是在特定条件下训练、验证和评估的,可能不具备推广到不同情景的能力。特别是,这些模型的设计是为了针对特定的电路布局和AGV类型进行优化。因此,如果使用不同类型的AGV,或者如果电路布局或工厂环境发生重大变化,那么模型将需要在这个新环境中收集数据进行微调过程,以确保最佳性能。

4 实验

这项工作中所描述的研究是以一系列实验的形式进行的。两个AGV变量,导引误差(Guide Error)和导引振荡(Guide Oscillations),最初被认为是需要提前预测的有趣变量,因为它们的较大值表明与AGV困难直接相关(第4.2节)。最后,由于没有发现与AGV困难直接相关,因此丢弃了Guide Oscillations变量(附录小节A.1)。因此,在我们的实验中,只使用Guide Error变量来提前预测。

这些实验依次包含三种不同的变化:

  • 首先,我们训练了两个不同的深度学习模型(N-BEATS和LSTM),随机森林和ARIMA,只使用引导误差作为模型的输入特征。

  • 其次,我们添加了一组固定的网络变量,由AGV和PLC之间建立的UDP连接的七种不同统计数据组成,因为它们可以提供网络退化情况的及时信息。

  • 第三,我们尝试将所有之前的特征与Guide Oscillations变量结合起来,该变量表示AGV沿着地板上的线所产生的振荡,这条线标志着AGV必须遵循的路径。这些振荡不是由AGV传感器直接产生的,而是我们从导向误差测量中计算出来的手工制作的特征。更精确地说,我们将振荡计算为导向误差符号的变化,这可以解释为AGV越过线。请注意,此特征值的出现可能表明AGV正在努力保持其轨迹,因此它对于检测AGV何时即将离开轨道特别有用。

利用这三组输入特征,对AGV的导引误差进行预测。我们的目标是在未来为我们用来提供模型的所有时间序列预测200个时间步长(20秒)。表3显示了我们提出的三种实验变体以及它们的相关编码,我们将在本文中引用它们。

表3实验GE(导轨误差)定义

请注意,ARIMA仅在第一个变量中使用,因为与更复杂的模型(如DL)相比,只有单变量ARIMA在文献中得到了良好的表现。

4.1 时间序列预测技术选择优化选择

在这项工作中,我们的目标是评估N-BEATS模型,作为时间序列预测最先进的序列到序列模型的代表,是否能够在提出的问题中优于传统的深度学习架构、ML模型和统计方法。

我们选择N-BEATS作为深度学习架构的动机是它在几个著名的预测竞赛中的最先进表现[16]。N-BEATS是一种专门为时间序列预测设计的深度学习模型,在处理单变量时间序列数据方面表现出色,同时提供了其他深度学习架构所缺乏的模型可解释性能力[16]。

N-BEATS体系结构展示了许多非常理想的属性,例如直接适用于广泛的问题类型,而不需要大量的特征工程,比其他深度学习体系结构(如LSTM)训练速度更快,更具可扩展性,并且具有可解释性的附加好处,这在一些实际场景中非常有价值。此外,N-BEATS架构在特定源时间序列数据集上训练并应用于不同目标数据集时,表现出比其他深度学习模型更好的泛化能力[16,18,19,20,26]。

为了开展我们的研究,我们提出了对原始N-BEATS架构的修改[16],以增强该架构对我们的多元序列预测问题建模的能力。在4.1.1节中,对这种新颖的体系结构进行了更详细的解释,重点介绍了其关键组件和机制。

此外,第4.1.2节介绍了选择其他时间序列预测技术的基本原理,这些技术将用作与N-BEATS模型进行比较的基准。我们概述了用于选择这些替代方法的标准,其中包括一系列传统的深度学习架构,机器学习模型和统计方法。通过包括这些不同的技术,我们可以执行全面的比较分析,检查与所提出的问题相关的每种方法的优点和缺点。

以下4.4.1N-BEATS架构及修改建议

N-BEATS的发展是基于创建一种仅使用纯深度学习架构预测单变量时间序列的方法的动机,同时保持统计模型解释预测的能力[16]。

N-BEATS是一个深度堆叠的前馈网络的集合,这些前馈网络以块的形式组织起来,并通过剩余连接相互连接。N-BEATS利用了一种新的残余网络拓扑结构,促进了模型的可解释性,并实现了更平滑的梯度流。N-BEATS架构的残差连接允许每个后续块直接学习前一个块的残差,减轻了训练难度,加快了收敛速度。然后通过线性组合网络中所有块的预测来获得目标预测,从而获得更好的可解释性。此外,在N-BEATS体系结构中,可以施加特定的约束来强制模型将预测的时间序列分解为其季节性和趋势组件,从而提供有关数据的附加信息。

N-BEATS的架构是使用基本构建块构建的,如图4左侧所示。每个区块有四个完全连接的层,有512个神经元和ReLU激活功能。最后一层的输出分为两个分支,一个用于未来预测,称为forecast,另一个用于预测过去数据,称为backast。预测是块对预测其作为输入接收的过去值窗口之后的未来值序列的贡献,而反向是部分近似其接收的输入的结果。这两种预测都是通过获得膨胀系数来实现的,膨胀系数是一个数值向量,它允许使用基向量从线性变换重建时间序列,该基向量由连接块的每个分支的下一层的权重集定义。更准确地说,另一层,也没有激活函数,将计算支路的膨胀系数和基向量之间的点积,根据支路的不同,得到预测或反向的输出。至于这一层的权重,这些可以与网络的其他权重一起学习,或者相反,它们可以手动指定,以考虑要解决的问题的某些方面,塑造输出的结构,以便以后根据其在趋势和季节性成分中的分解来分析预测。

图4
figure 4

N-BEATS架构示意图

将上述固定数量的块插入任意数量的堆栈中,如图4所示。这些堆栈中的每一个都使用基于其他知名架构(如DenseNet[27])的剩余块的新拓扑进行连接。该拓扑基于连接的引入,该连接允许每个堆栈接收前一个堆栈的输出作为输入,该输出对应于其内部块的反向分支,从前一个堆栈的输入中减去。通过这种方式,下一个堆栈的输入将不包含前一个堆栈已经预测的模型输入部分,允许它专注于它尚未学会预测的内容。上述规则的唯一例外是第一个堆栈,它只接收用于馈送模型的数据作为输入(即过去观察到的值序列)。另一方面,每个堆栈的输出将与其内部块的预测相对应。将这些输出加在一起,就得到了模型的最终未来预测,如图4所示。所提议的体系结构的另一个聪明的细节是,它允许人们观察部分预测和反向转换的值,允许人们清楚地确定每个堆栈的贡献,这是实现产生可解释结果的模型的基本需求。

虽然N-BEATS最初被认为是一个单变量模型,但我们提出了一个新颖的重新设计,以提供具有建模多变量系列的能力的架构,甚至允许根据它们与自变量(内生或外生)的关系的性质来考虑变量。为了达到这个目的,我们包含了一个连接层,它将多个输入组合成一个一维输入层。通过这种方法,外生特征可以被纳入模型学习,而不会干扰模型优化。也就是说,由于外生变量仅用作模型学习的支持,而不是预测的目标,因此模型优化仅用于模拟内生变量的动态。我们的方法允许模型功能完全专注于内生动态建模,而不是整个多变量上下文。

4.1.2 Selec泰德预测技术的比较

为了将N-BEATS的性能与其他成熟的机器和深度学习模型进行比较,我们回顾了最近关于时间序列预测的文献,以确定最相关的模型进行比较。基于这一综述,我们选择LSTM神经网络架构作为时间序列预测的深度学习架构的主要代表,因为它在多元时间序列预测中表现出优异的学习时间依赖性[28,29,30],并在文献中得到了广泛的应用。作为传统ML回归量的代表,我们选择了Random Forest,它在几个时间序列预测应用中表现出很高的鲁棒性和性能[31],从而与DL模型进行了公平的比较。对于统计方法,我们选择了ARIMA,这是一种广泛使用和完善的通用时间序列预测方法,因为它被认为是评估预测模型性能的标准基准[32]。此外,为了建立基线进行比较,我们使用了基于每个时间序列最后已知值预测的朴素基线,这是时间序列预测中常用的方法[32]。最后,我们还使用模型集成技术来提高单个模型作为基本回归量的整体预测性能。与其他知名技术相比,所选模型的优势的进一步细节在第6小节中给出。此外,对所选技术的详细概述将在稍后的小节1和小节2中介绍。

4.2 预测目标变量

为了解决拟议的用例,我们的目标之一是预测AGV在地板上建立的电路上运行的磁带的未来偏差,以便安全地计划纠正操作。我们将用于量化AGV传感器在两个方向上检测到的磁带偏差量的变量称为导向误差。此外,由于这项工作的主要目的是检测AGV何时可能偏离电路,我们还提出了第二个预测变量,称为“导向振荡”。这个变量被量化为AGV越过磁带中心线的次数。我们已经确定这个变量与AGV的偏转密切相关。具体来说,大量振荡是AGV运行不稳定的明确指标,因此很有可能开始偏离电路。

由于高速移动的AGV所呈现的惯性,一旦它开始偏离磁带,纠正它的轨迹需要相当长的时间。在实际部署中,已经观察到需要10秒才能停止满载AGV的运动。通过进行几次实验,我们得出的结论是,预留10到15秒的余量已被证明是足够的,以便为AGV操作员提供必要的修正时间,以保持AGV在轨道上。在我们的案例中,为了给AGV操作员提供更大的安全裕度,我们将预测的时间范围提前了(20秒)。

此外,当AGV和PLC之间的通信开始下降时,它会导致Guide Error变量从正值到负值的高波动。事实上,在初步实验中,我们观察到模型倾向于预测平均值(零)。为了解决这个问题,我们决定忽略值的符号,而预测导振荡变量的绝对值。我们没有发现任何证据表明该标志提供了AGV偏差的相关信息,也就是说,AGV故障与向两个特定侧面之一的偏差之间似乎没有任何相关性。因此,通过省略这些信息,我们避免了这个问题,从而得到更准确的预测。

根据指导误差变量的相同推理,通过预测变量的绝对值,我们更加强调在磁带两侧(正负)短时间内发生的偏差强度,这显然是AGV异常行为的关键指标。

我们还决定在接下来的20秒内预测导向误差和振荡变量的绝对值的平均值,而不是预测实际值。这个决定的原因是,小偏差的AGV可能会发生自然当它通过某些曲线的电路。关于电路中特定位置的平均值的波动是一个强有力的指标,表明AGV没有按预期运行,因此应该采取纠正措施。

在训练任何模型之前对Guide Oscillation变量进行的初步分析中,我们没有观察到该变量与电路的AGV偏差之间有任何显著的相关性,这导致我们放弃了Guide Oscillation变量作为AGV故障的预测因子。该分析的细节可在附录A.1小节中找到。然而,值得注意的是,尽管我们在实验中放弃了Guide Oscillations变量作为预测变量,但我们将该变量用作输入变量,以使模型有机会从中提取一些有用的信息。

4.3 数据处理

为了了解有监督学习任务中导向误差和导向振荡变量的时间关系,首先将数据转换为一组滞后观测值。通过这种方式,可以训练模型来从两个变量的过去值窗口预测导向误差和导向振荡的后续200个时间步长。在接下来的小节中,我们详细介绍了我们对收集到的数据进行处理的过程,包括训练集和测试集的数据分割,预测变量的颗粒化、聚集和标准化,最后是时间序列开窗过程。

4.3.1 数据粒度化、聚合和标准化

对采集到的所有数据进行处理,得到固定时间间隔的颗粒化时间序列。我们决定预测时间聚合值,而不是瞬时值,因为我们观察到这个变量对这种方法的预测有太多的噪声。事实上,要获得比基于随机猜测的模型更好的结果,我们面临着相当大的困难。这些值的聚合可以被解释为一个额外的特征工程步骤,它极大地促进了DL模型统计模式的识别,大大加快了训练时间并平滑了收敛过程。

基于试错过程和使用各种定量指标(MAE和MSE)评估验证数据的预测质量,我们得出结论,100 ms是最好和最合乎逻辑的权衡,可以减少测量中噪声的存在,同时最大限度地减少数据丢失。为此,我们使用平均绝对值作为Guide Error变量的聚合方法,以100 ms的间隔组合这些值。我们在这个集合中使用绝对值来防止模型过拟合到零。

为了完成这个聚合过程,我们决定使用大小为100毫秒的滑动窗口执行移动平均。我们选择了移动平均而不是其他聚合方法,以获得不影响其分布的数据的线性聚合,并且只允许减少噪声,而不会在测量值的时间相关性上引入偏差。移动平均线包括将时间序列划分为给定大小的连续窗口,并计算每个窗口值的平均值。结果是一个新的时间序列,其中每个值都是给定时间段内原始时间序列值的平均值。例如,假设我们有一个包含10个值的时间序列,我们想要计算大小为5、间隔为1的滑动窗口上的平均值。这将产生一个具有10个值的新时间序列,其中这些值是计算原始时间序列中5个连续值的平均值的结果,每次步进一个值。当没有足够的可用值来填充窗口时,计算可用值的平均值。这个聚合过程没有对AGV标志(障碍物检测、电池警告等)执行,因为这些值不表示与目标变量预测相关的任何类型的时间行为,因此,聚合是不必要的,因为它们不用作ML/DL模型的输入。因此,只保留AGV标志每隔100毫秒间隔的最后一个值。此外,缺失值用同一变量的最后一次观测值(即非缺失值)填充。

最后,对处理后的数据进行标准化处理。标准化是深度学习中常用的预处理步骤,用于变换以获得零均值和单位方差。这种归一化过程对于确保所有输入特征都以相同的尺度表示至关重要,从而使模型训练更容易。标准化数据的方法有很多种,但最简单有效的方法是Z-score方法,它通过单独减去每个特征的平均值并除以其标准差来变换每个特征。

4.3.2 时间序列窗口

为了构建样本,我们用来训练我们的模型,我们对每个实验应用了一个单位窗口大小的滑动窗口,以创建每个值的窗口大小K()的滞后观测的时间序列数据集。应该注意的是,这个移动窗口是单独应用于每个实验的,以确保窗口中滞后值捕获的相互依赖性是在单个实验的值之间,并且不会被包含与不同网络场景相关的其他实验的值所稀释,因此具有不同的初始条件。由于窗口大小K的最佳选择非常依赖于问题,我们定义了四种不同的时间窗口大小:40时间步长(4秒),75时间步长(7.5秒),150时间步长(15秒)和300时间步长(30秒)。对于这个过程,我们决定不应用填充,因为我们决定不包括关于不同实验条件下未来值的任何信息。同样,使用空值作为填充也被丢弃,因为这会在数据中引入人工相关性,可能会使神经网络学习过程产生偏差。

最后,去除AGV完全静止的样品。由于在数据收集过程中没有明确收集这些信息,因此我们使用AGV标志来识别这些样本。特别是,我们发现至少一个AGV标志的激活与AGV失速密切相关。此外,每次数据捕获的前10秒和最后10秒也被删除,因为它们表现出从完全停止状态过渡到运行模式或反之亦然所造成的巨大波动。

4.3.3 创建数据集

在ML和DL中,通常将数据分为训练数据集和测试数据集。训练数据集用于训练模型,测试集用于评估模型的性能。根据我们之前的工作经验[33],我们没有采用将训练和测试数据集中所有可用数据随机分离的常用方法,而是采用了不同的分离方法,在测试后获得更保守和鲁棒的结果:在我们的数据回忆过程中,第一个实验用于构建测试数据集,另外两个实验保留为训练数据。

一旦训练和测试中的数据分离完成,训练数据集被随机分成两个分离的集:训练集()和验证集()。随后,验证集也随机分为两组,一组用于超参数验证(),另一组用于监控训练过程,以防止过拟合()。

4.4 模型训练程序

对于输入特征和时间窗大小的每种组合,我们使用树结构Parzen Estimator (TPE)算法[34]训练了30种不同的LSTM和N-BEATS模型,这些模型带有超参数采样,这是一种成熟的深度学习优化技术,利用树结构建模超参数的概率密度函数,能够以高效的方式同时优化多个超参数。在这30个变量中,我们选择了在验证期间为200个预测时间步长中的每一个获得的平均绝对误差的平均值最大的变量。在这个计算中,由于我们的样本是使用聚合方法组成的,我们省略了前10个时间步,以避免在预测中泄露当前的信息。所有的模型都采用提前停止的方法进行训练,两个实验的固定耐心为100次。采用早期停止技术,训练持续时间不确定,直到错误率停止提高,这有助于找到更好的局部最小值,而不是预先设置固定的epoch数。此外,提前停止有助于避免过拟合,因为一旦使用验证数据计算的误差在预先指定的epoch数量(在我们的示例中为100)上没有减少,它就会终止训练过程。我们设置了较高的耐心,以补偿在使用较大批处理大小时执行的较低的权重更新次数。作为优化算法,我们使用学习率为的Adam来缓解初步实验中出现的过拟合问题。另一方面,从数据分析的角度来看,由于我们打算预测连续值(AGV的Guide Error变量),我们打算解决的问题可以归类为回归类型。出于这个原因,我们使用均方误差(MSE)作为损失函数对平均绝对误差(MAE)的不可微性质。此外,当预测值与实际值相差较大时,MSE是一个单调递增的函数,比MAE提供了更多的信息值。此外,导轨误差变量受异常值的影响很大,其值在理论上是无界的(导轨误差受传感器范围和磁带的物理可见性的限制)。基于上述原因,我们认为MSE作为损失函数比MAE更适合用于解决手头的问题。

在这种情况下,我们将重点关注N-BEATS的通用变体,因此,在任何实验中都不会考虑可解释版本。此外,为了更可靠的比较,我们选择依赖N-BEATS的行为作为多步超前预测的多输入多输出方法(关于这种类型的预测和多输入多输出方法的详细回顾可以在7.2节中找到)。因此,我们将LSTM模型训练为序列到序列的模型,而不是以自回归的方式,也就是说,我们迫使解码器返回200个未来时间步长的完整序列,而不是通过递归地将过去的预测输入到未来的输入中来一次获得一个预测。下一小节将更详细地描述这种方法。

表4搜索LSTM、N-BEATS、Random Forest和ARIMA

两个实验的LSTM和N-BEATS模型的每个超参数的搜索范围如表4所示,在实验GE中评估了每组输入特征的最优值,如表9、10和11所示。上表显示了四个不同模型的搜索类型、要调优的超参数及其搜索范围:LSTM、N-BEATS、Random Forest和ARIMA。超参数是可调整的参数,它决定了机器学习模型在训练期间的行为,并可能对模型的性能产生重大影响。

对于LSTM,搜索中包含的超参数包括LSTM层的数量、LSTM单元的数量、批处理归一化的使用、LSTM层的L2正则化、完全连接(FC)层的数量、每个FC层的单元数量、FC层的批处理归一化的使用、FC层的L2正则化以及辍学率。对于N-BEATS,搜索中包含的超参数包括堆栈数、每个堆栈的块数、theta维数、每个块的每个非线性FC层的单元数、每个块的非线性FC层数、每个堆栈中是否共享权重,以及与堆栈数、每个堆栈的块数和theta维数相同的超参数。

对于随机森林,包含在搜索中的超参数是树的数量和树的最大深度。对于ARIMA,搜索中包含的超参数是自回归项(p)、移动平均项(q)和积分项(d)。每个超参数的搜索范围由最小值和最大值定义。对于表4中列出的每个超参数的功能和效果的更详细描述,我们建议参考4.1节。本节提供了表中所示的模型体系结构的详细解释,以及塑造模型行为所涉及的各种超参数。

此外,我们还使用随机森林模型作为ML回归量,每个模型由100个估计器(决策树)和无限树深度组成,并使用ARIMA作为统计方法的代表。我们为随机森林模型选择这些超参数的原因是,当使用无限树深度时,已经证明100个估计器足以提供良好的泛化和计算效率。此外,在一些初步实验中,我们证实了这些超参数在所有情况下都提供了最佳的模型性能。在测试阶段,我们使用一个朴素模型作为基线,该模型基于在时间t上预测每个时间序列的最后一个已知值(即in中的值)。

为了比较ARIMA相对于其他模型的有效性,我们使用了一种类似于[35]中提出的方法来预测Guide Error变量。我们在算法1中描述了这种方法。最初,该方法使用pmdarima库[36]中的Auto ARIMA启发式方法识别带有默认参数的ARIMA超参数和训练数据集。然后使用最佳超参数再次训练ARIMA模型,但使用statmodels库[37]来存储优化后的权重。这一步总结为从arima_initial_model(算法1的第6行)中获取权重。从这里开始,在本文算法中迭代执行以下步骤:(1)在训练数据集中增加一个测试数据集的新元素(按时间顺序);(2)利用初始训练模型的权重(arima_initial_weights)、初始超参数(arima_hyperparameters)和增强训练数据集(l_history_val)训练新的ARIMA模型;(3)使用最后训练的ARIMA模型(arima_model)提前200步(20秒)进行预测。与[35]中使用的方法不同,模型的再训练总是从初始权值开始(由训练数据训练得到),每一步进行,这加快了模型的训练速度(相对于使用默认初始权值而言),并将训练数据获得的权值推广到测试数据。在每次迭代中,预测结果被累积并存储,以便以后与其他ML模型的结果进行比较。

算法1
figure g

ARIMA样本外预测

根据算法1中提出的算法,用ARIMA模型得到的结果可以用测试数据来评估其有效性,尽管这是一个通常不使用ARIMA的问题。该方法存在反复的再训练和在实验连接点处失去有效性等问题。

应该注意的是,由于随机森林和ARIMA的超参数是固定的,因为它们在初步实验中被手动微调以达到最佳拟合,因此在验证过程中没有考虑它们。因此,对每一个特征集和时间窗的组合都训练一个随机森林模型,总共得到12个模型。在ARIMA的情况下,只训练了一个模型,因为如前所述,该模型只考虑AGV特征集作为输入,并且在该模型的输入处理过程中不需要分割时间窗口。

最后,我们选择在验证和测试阶段通过逐步计算预测值的平均绝对误差和中位数绝对误差来评估模型的性能。

4.5 Multi-step-ahead预测

超前一步预测是最基本的预测类型。它包括根据过去发生的事情来预测下一个时期会发生什么。这种类型的预测用于预测短期趋势,当过去和未来数据之间有很强的相关性时最有效。相比之下,在多步预测中,目标是产生一个时间序列作为预测,而不是一次预测一个时间步。这种方法通常用于被预测的时间序列高度非线性和数据中有多个噪声源的情况。在这种情况下,单步预测可能非常不准确。通过对整个时间序列进行预测,数据中的噪声被平均掉,从而可以做出更稳健的预测。值得注意的是,虽然由于平均而牺牲了一些准确性,但预测可靠性的提高通常是值得的。此外,在某些情况下,准确性的损失并不像鲁棒性的增加那么重要,例如当目标是对近期而不是特定时间点进行预测时,就像AGV预测的情况一样。有两种主要的多步超前策略:单输出预测和多输出预测。[38]对这两种方法进行了完整的综述。在这种情况下,我们将重点关注多输出预测,更准确地说,是多输入多输出方法(MIMO)。

该方法基于在同一步预测所有时间步,考虑到时间序列特征的依赖相互关系,同时避免了直接预测策略所做的独立性假设,以及递归策略可能出现的误差积累。该策略已成功应用于多个多步提前时间序列预测任务[17,38]。

尽管有上述优点,但这种策略也有缺点,其中最重要的是它的灵活性较低,因为只有一个模型来预测所有的视界,如果在某个时候需要调整视界,就不可避免地要从头开始重新训练整个模型。然而,在我们的案例中,因为我们想要使用非常长期的连续预测模型来验证我们的方法的有效性,这个理论上的缺点对于我们提出的目标来说不会是一个问题。

从正式的角度来看,我们可以这样定义这个策略。设我是给定时间序列数据集中唯一的样本集。集合i的每个样本i在每个时间步长与一个标量输入和目标相关联。

上式中,为r阶跃预测相对于时间步长t的预测序列,f为预测模型。在时间序列分析中,内生变量和外生变量之间有一个根本的区别。内生变量是由所研究的系统决定的变量,而外生变量是由能够影响内生变量的外部因素决定的变量。在时间序列预测中,内生变量是被预测的数据点(y),而外生变量是未被预测但也可以作为模型输入以提高预测精度的数据点。我们将在大小为k的有限回看窗口内与时间步长相对应的所有过去值提供给模型。在我们的例子中,我们选择r始终为200,而k可以为40、75、150或300,这取决于为实验选择的窗口大小。

4.6 实验装置

为了确保我们的发现的可复制性和可比性,下面提供了用于进行本节中定义的实验的实验设置的全面描述。我们在一台运行Ubuntu 21.04操作系统的服务器上进行了实验,使用英特尔至强银4210R CPU,基频为2.40 GHz,内存为192gb, NVIDIA GeForce RTX 3090。我们使用Python 3.8.12作为编程语言,并使用以下库:

  • NumPy(版本1.19.5)用于数值计算。

  • 用于数据操作的Pandas(版本1.3.4)。

  • Scikit-learn(版本0.23.2)用于实现机器学习算法。

  • TensorFlow(2.5.0版本),用于实现深度学习模型。

下载原文档:https://link.springer.com/content/pdf/10.1007/s10489-023-04820-0.pdf

文章链接:https://www.480520.com/news/show/106973/
文章来源:https://www.480520.com/    
 
 
更多>同类资讯