自动化安全和性能稳健性的制作方法

文档序号:20919096发布日期:2020-05-29 13:54阅读:245来源:国知局
自动化安全和性能稳健性的制作方法

本公开涉及用于控制自动化系统的系统和方法,并且更具体来说,涉及机器人学中的机器学习和稳健控制系统和方法。



背景技术:

此部分中的陈述仅提供与本公开相关的背景信息,并且可能不构成现有技术。

在自动化系统中已经使用机器学习技术。当用于汽车制造线中时,自动化系统还要求在处置关键使命任务的过程中的性能和安全稳健性。除了人类安全问题之外,突发事故可能会导致生产线上的停机时间,从而导致数千美元的损失。深度神经网络是已经在自动化系统中使用的机器学习技术之一。然而,常规的深度学习技术无法提供任何安全和性能稳健性保证,并且可能会阻止制造商在关键使命自动化任务中采用深度学习技术。

除了性能和安全稳健性问题之外,适应未知的环境变量和它们的对应变化性的能力是新一代自动化工具的另一急需的特性。因此,需要允许以无人监管的方式使用于在机器学习过程中与环境的正常交互期间捕获的信息来提高感知和控制策略。最重要的是,应通过安全的方式实施所述学习过程以避免代价高的突发事故。

在本公开中解决上述问题和相关联的需求。



技术实现要素:

在本公开的一种形式中,用于控制机械臂的控制与学习模块包括至少一个学习模块,所述至少一个学习模块包括至少一个神经网络。所述至少一个神经网络被配置成在初始学习阶段期间接收基于当前状态的测量的状态测量结果和基于观测数据的观测测量结果,并且通过所述状态测量结果和所述观测测量结果进行训练。所述至少一个学习模块还被配置成当机械臂处于正常操作时以及在所述初始学习阶段之后通过经更新的观测数据进行重新调谐,以便在操作与辅助学习阶段期间提高性能。

在其他特征中,所述状态测量结果表示通过传感器获得的实际当前状态。所述至少一个神经网络被表示为贝叶斯神经网络,并且被配置成产生与输出任务相关的输出和与所述输出相关联的方差。所述方差是与所述输出任务的可靠性相关的不确定性的量度。

所述至少一个学习模块包括:状态估计模块,所述状态估计模块被配置成仅基于所述观测测量结果而提供所估计的状态;以及动态建模模块,所述动态建模模块被配置成产生动态模型和动态模型输出方差,所述动态模型输出方差表示所述动态模型的不确定性。所述状态估计模块被配置成输出第一估计当前状态和与所述第一估计当前状态相关联的方差。所述动态建模模块被配置成输出第二估计当前状态。所述状态估计模块和所述动态建模模块各自被配置成接收与所述第一估计当前状态与所述第二估计当前状态之间的差异相关的输入,以在所述操作与辅助学习阶段期间提高性能。

所述所估计的状态可以包括环境中的障碍物和目标对象的所估计的位置和速度,或完全限定机器人的关于所述环境的其他信息(在机器人外部)。所述控制与学习模块还包括控制策略模块、最优控制模块和可达性分析模块。所述控制策略模块被配置成仅在所述操作与辅助学习阶段期间基于来自所述状态估计模块的所估计的当前状态而产生控制策略命令和与所述控制策略命令相关联的控制策略方差。所述最优控制模块被配置成基于来自先验的可用模型的动态模型或由动态建模模块学习的动态模型以及状态测量结果或所估计的状态来产生最优控制命令。当控制策略方差大于与其中控制策略对其所产生的输出不确定的情况相对应的预定义的方差阈值时,所述最优控制模块可以超驰来自控制策略模块的控制策略命令。

可达性分析模块可以从所述动态建模模块接收状态测量结果、动态模型参数和相关联的输出或参数方差,并且确定当前状态是否处于安全状态。当所述可达性分析模块确定当前状态处于不安全状态时,所述可达性分析模块可以产生超驰来自最优控制模块的最优控制命令或所述控制策略(如果有效)的稳健控制命令。

所述状态估计模块、所述动态建模模块和所述控制策略模块各自包括在初始学习阶段以及操作与辅助学习阶段两者中接受训练的神经网络,并且各自输出表示所述状态估计模块、所述动态建模模块和所述控制策略模块中的每一者的不确定性的方差。所述动态建模模块包括初步动态模型和补充动态模型,所述初步动态模型是预先确定的,并且基于关于机械臂的系统动态的现有知识来提供状态预测。所述补充动态模型可以产生用于校正由所述初步动态模型提供的所述状态预测的校正参数,以及与所述校正参数相关联的动态模型方差。

应注意,在以下描述中单独地陈述的特征可以通过任何技术上有利的方式彼此组合,并且陈述本公开的其他变化。所述描述另外尤其结合附图表征和指定本公开。

通过本文提供的描述,其他适用领域将变得显而易见。应理解,描述和特定示例旨在仅用于说明目的,而非旨在限制本公开的范围。

附图说明

为了可以更好地理解本公开,现在将参考附图以示例的方式描述本公开的各种形式,附图中:

图1是根据本公开的教导而构建的包括控制与学习模块的自动化系统的示意图;

图2是根据本公开的教导而构建的控制与学习模块的初始学习阶段的流程图;以及

图3是根据本公开的教导而构建的控制与学习模块的操作与辅助学习阶段的流程图。

本文描述的图式仅用于说明目的,而绝非旨在限制本公开的范围。

具体实施方式

以下描述本质上仅仅是示例性的,而非旨在限制本公开、应用或用途。应理解,在所有图式中,对应参考数字指示相同或对应的部分和特征。

在包括以下定义的本申请中,术语“模块”或术语“控制器”可以被术语“电路”取代。术语“模块”可以指以下各者、是以下各者的部分,或包括以下各者:专用集成电路(asic);数字电路、模拟电路,或混合模拟/数字分立电路;数字集成电路、模拟集成电路,或混合模拟/数字集成电路;组合逻辑电路;现场可编程门阵列(fpga);执行代码的处理器电路(共享、专用或组);存储由所述处理器电路执行的代码的存储器电路(共享、专用或组);提供所描述的功能性的其他合适的硬件部件;或以上各者中的一些或全部的组合,例如处于系统芯片中。

所述模块可以包括一个或多个接口电路。在一些示例中,所述接口电路可以包括连接到局域网(lan)、互联网、广域网(wan)或其组合的有线或无线接口。本公开的任何给定模块的功能性可以分布在经由接口电路连接的多个模块之间。举例来说,多个模块可以允许负荷平衡。在另一示例中,服务器(还称为远程或云)模块可以实现代表客户端模块的某一功能性。

参看图1,根据本公开的教导而构建的自动化系统10包括机械臂12、观测系统14、测量装置16,和用于控制机械臂12以实现安全和有效操作的控制与学习模块18。控制与学习模块18使得机械臂12能够执行关键使命任务,例如生产线上的组装任务、操纵任务或检查任务。

观测系统14可以包括用于向控制与学习模块18提供例如呈相机图像或视觉数据的形式的观测测量结果的相机。在另一形式中,观测系统14可以包括lidar或radar。观测系统14表示可以直接提供或可以不直接提供系统状态的通用观测单元。如果不可以直接访问状态值,那么需要进一步处理和分析由观测系统14提供的观测测量结果以提供所估计的状态值。测量装置16可以包括多个辅助传感器以直接捕获和测量状态值。因此,测量装置16提供表示当前状态的实际值的状态测量结果。

控制与学习模块18包括状态估计模块20、动态建模模块22、控制策略模块24和控制产生模块26。状态估计模块20被配置成仅基于来自观测系统14的观测测量结果来提供所估计的当前状态,例如环境中的所有障碍物和目标对象的所估计的位置。动态建模模块22被配置成产生用于控制机械臂12的动态模型。动态建模模块22包括初步动态模型k和补充动态模型d。基于关于机械臂12的系统动态的所有可用的信息(即,现有的知识)来孤立地创建初步动态模型k,即,与环境没有交互。补充动态模型d被配置成在初始学习阶段期间学习初步动态模型k的未知部分。

控制策略模块24被配置成通过使用深度学习能力来学习稳健和最优控制策略,以便在需要时命令各种致动器,例如机器人伺服系统,从而以令人满意的方式完成任务。

状态估计模块20、动态建模模块22、控制策略模块24各自包括深度学习网络。在一种形式中,所述深度学习网络可以是贝叶斯神经网络,所述贝叶斯神经网络是使用贝叶斯推理进行概率计算的一种类型的概率图形模型。可以通过与常见的正则化技术(比如dropout)类似的方式来实施贝叶斯神经网络假想,并且预期不会显著增加此类网络的计算复杂性。在这里,与常规的dropout的差异在于在推断期间以及在训练中完成对不同参数的随机零陷。

控制与学习模块18经受两个学习阶段:初始学习阶段以及操作与辅助学习阶段。在初始学习阶段期间,向控制与学习模块18提供关于机械臂动态(包括其与环境中的对象的交互)的一些和不完整的信息。假设通过测量装置16向控制与学习模块18提供正确的当前状态。举例来说,所述正确的当前状态可以是关于车身上的门组装任务的门铰链的准确位置,这可以通过测量装置16的直接测量获得。由于实际和财务的限制,在机械臂12的正常操作期间可能不可使用测量装置16和由测量装置16获得的信息,但可以在针对初始训练而设计的单个实验设置中考虑到所述测量装置和所述信息。在初始学习阶段和机械臂12的正常操作期间都可以使用观测系统14的观测测量结果。在初始学习阶段期间,状态估计模块20、动态建模模块22和控制策略模块24的所有三个深度学习网络都使用可用的信息进行训练。然而,控制策略模块24在初始学习阶段中不实现与环境的任何交互。在初始学习阶段中,通过常规的稳健和最优控制技术并且基于状态测量结果来产生机械控制。

控制产生模块26被配置成产生对机械臂12的稳健控制。在初始学习阶段中,控制产生模块26依赖于动态建模模块20的结果以及来自测量装置16的可用的直接的状态测量结果。在初始学习阶段中,控制策略模块24不影响机器人操作而是仅学习。然而,在操作与辅助学习阶段中,控制产生模块26基于来自状态估计模块20、动态建模模块22和控制策略模块24的所有三个深度学习网络的学习结果而运作。控制产生模块26包括用于执行当前状态的安全评估的可达性分析模块28,和用于产生最优控制命令的最优控制模块30。

在操作与辅助学习阶段期间,机械臂12处于正常操作并且由控制与学习模块18基于在初始阶段期间学习和产生的动态模型来控制。同时,控制与学习模块18基于由动态建模模块22提供的所估计的状态与由状态估计模块20提供的所估计的当前状态之间的差异来修改动态建模模块或状态估计模块,以确保机械臂12的安全和提高的性能。

参看图2,示出了控制与学习模块18以及其与观测系统14、测量装置16和机械臂12的交互的初始学习阶段的流程图。在所述初始学习阶段期间,所有状态估计模块20、动态建模模块22和控制策略模块24接收它们的训练以使控制与学习模块18达到相对安全的功能水平。通过由a、b和c指示的虚线箭头示意性地演示三个深度神经网络模块的学习过程。

在所述初始学习阶段期间,在此阶段处的唯一可用的信息是动态建模模块22中的初步动态模型k,所述初步动态模型k在没有与环境的交互的情况下孤立地包括关于机械臂的系统动态的所有可用的信息。所述初步动态模型k提供当前状态的预测,并且是孤立地基于机械臂12的系统动态的现有知识而创建。在初步动态模型k中未知机械臂12的末端执行器与环境中的各种对象交互的方式。环境的其他方面,例如各种有效负载的确切重量,也是未知的。

补充动态模型d被配置成学习机械臂12的动态的未通过初步动态模型k建模的未知部分,尤其是与机械臂12和环境的交互。通过将关于所述系统动态的现有知识并入到所述初步动态模型k中,可以从所述补充动态模型d移除一些学习负荷,从而使得初始学习阶段更高效。因此,应理解,可以在不脱离本公开的教导的情况下消除所述初步动态模型k。所述补充动态模型d包括贝叶斯神经网络,其中所述模型的参数是随机变量。所述补充动态模型d输出补充初步动态模型k的输出的校正参数。除了此校正参数之外,所述补充动态模型d产生方差,所述方差反映动态模型准确度在状态空间的各个部分上的可靠性和准确度。

更具体来说,补充动态模型d产生三个输出:校正参数δd、动态模型方差σd和动态模型参数向量ad。所述校正参数δd用于提高由初步动态模型k提供的状态预测。所述动态模型方差σd与所述校正参数δd相关联,并且表示补充动态模型d在状态空间中的点x(n)附近的建模不确定性。在单独的步骤中完成补充动态模型d的参数的初始化,其中对此模型进行调谐以在所述状态空间的其中在初步动态模型k中具有高置信度的多个部分中产生近零输出。

将作为建模不确定性的量度的动态模型方差σd发送到可达性分析模块30进行可达性分析,以确保未知环境中的机械臂12的安全性能。可达性分析模块28确定当前状态是安全还是不安全,并且产生对应的信号来相应地控制节点处的选择器开关,如箭头x所指示。如果可达性分析模块28确定当前状态不安全,那么可达性分析模块28向机器人伺服马达产生稳健的控制命令以便维持安全性能。如果可达性分析模块28确定当前状态是安全的,那么最优控制模块30向机器人伺服马达产生最优控制命令以便采取措施完成指派给机械臂12的任务。

当前状态是安全还是不安全是基于存储在可达性分析模块28中的预定安全目标/准则。举例来说,可以依据给定任务,例如当机器人末端执行器的距离太接近环境中的最近的人类操作者时,来制定危险状态。在此示例中,可以将危险情况制定为d<c,其中d是末端执行器与最近的人类操作者的距离,并且c是由安全要求确定的阈值。通过可达性分析所确定的危险状态是属于与d<c相对应的所有状态的后向可达组的危险状态。因此,可达性分析模块28确定当前状态是否驻留在危险状态或非期望状态的后向可达组内。

最优控制模块28被配置成从动态建模模块22的补充动态模型d接收动态模型参数向量ad,并且从测量装置16接收状态测量结果x(n)。所述状态测量结果表示由测量装置16对实际当前状态的测量。最优控制模块28已经可以使用来自初步动态模型k的参数。因此,最优控制模块28基于最新的动态模型(k+d)和状态测量结果x(n)而向机械臂12的伺服系统产生最优控制命令u(n)。

为了确保机械臂12尽管在建模不确定性的情况下安全地操作,可达性分析模块30与最优控制模块28并行地工作,并且可以在需要时超驰由最优控制模块28产生的最优控制命令u(n)。可达性分析模块30被配置成从测量装置16接收状态测量结果x(n)并且从动态建模模块22接收动态模型方差σd,并且确定当前状态是否处于一些不合意(或不安全)的状态的后向可达组的边界上。如早先阐释,可以通过数学公式的形式,例如不等式d<c,来界定给定任务的危险状态,从而确保机器人末端执行器与各种对象之间的特定最小距离c。可达性分析确保尽管在最坏情况动态模型的情况下机器人始终能够导航远离危险状态。在当前状态处于后向可达组的边界上时,这意味着在给定最差情况动态(通过由动态模型方差量化的建模不确定性提供)和尽管任何可用的控制工作的情况下,机器人仍然有可能在给定示例中触及危险状态的边界(即,d=c)。当满足此条件时,由可达性分析模块30产生的稳健控制命令超驰由最优控制模块28产生的最优控制命令u(n),并且使用来自可达性分析模块30的稳健控制命令来控制机械臂的操作。当未满足此条件时,稳健控制命令不超驰最优控制命令u(n),并且所述最优控制命令与状态测量结果x(n)配对,从而形成用于控制策略模块24的额外的训练数据。

当机械臂12与环境交互时,补充动态模型d接收关于状态空间的看不见的部分的更多训练数据。因此,表示动态建模模块22的补充动态模块d的建模不确定性的动态模型方差σd随着补充动态模型d接收使用经更新的训练数据的更多训练而逐渐减小,直到建模不确定性缩小为止。因此,来自可达性分析模块30的稳健控制命令不常超驰来自最优控制模块28的最优控制命令。因此,可以基于来自最优控制模块30的最优控制命令来操作机械臂12,并且所述机械臂在控制策略模块24逐步演进的同时逐渐扩展其探测空间。

在初始学习阶段中,基于状态测量结果x(n)来训练状态估计模块20。在初始学习阶段期间产生的轨迹取决于选定的初始状态x(0)。为了此阶段中的足够的训练,需要产生多个轨迹,每个轨迹开始于不同的初始点以与训练数据一样多地暴露状态估计模块20、动态建模模块22和控制策略模块24的三个深度神经网络。对这些初始状态值的适当选择在学习性能方面起到重要的作用。举例来说,可以在随包括动态建模不确定性的多个变量而变的选择概率下随机地选择初始状态。目标是将机械臂12暴露于与更不确定的动态模型相对应的状态空间的部分。

在初始学习阶段期间,控制策略模块24仅经受训练并且不参与机械臂12的控制。通过来自最优控制模块30的最优控制命令(例如,模型预测性控制)和来自可达性分析模块30的稳健控制命令的混合体来控制机械臂12。

总之,状态估计模块20、动态建模模块22和控制策略模块24全部都表示为贝叶斯网络。此选择有助于量化状态空间的不同部分中的每个模块的不确定性。如稍后阐释,在辅助学习阶段期间,状态估计模块20可以提供所估计的状态x′(n)和相关联的方差σx。举例来说,可以将状态估计模块20表示为具有加性噪声方差σx的传感器。动态建模模块22的补充动态模型d产生关于初步模型k的当前状态的校正参数δd,以及相关联的方差参数σd。举例来说,σd表示对系统的干扰输入的方差或反映建模不确定性。此信息对于用于确定不安全状态的可达性分析是有用的。最后,控制策略模块24产生控制u′(n)以及相关联的不确定性量度σu,可以将所述不确定性量度解译为控制策略在所产生的命令中的置信度。

参看图3,示出了控制与学习模块18的操作与辅助学习阶段的流程图。在初始学习阶段之后,机械臂12开始其正常操作以参加其指派的任务,例如生产线上的组装任务或输送任务,而控制与学习模块18在机械臂12的正常操作期间继续学习和修改机械控制,以确保自动化系统10满足特定安全和性能稳健性准则。此正常操作阶段还称为操作与辅助学习阶段,因为此阶段的操作方面和辅助学习方面是同时实施的。

在操作与辅助学习阶段中,使用初始学习阶段中的所有不确定性值来确保机械臂12的安全和可接受的性能,同时提供使得能够重新调谐状态估计模块20、动态建模模块22和控制策略模块24的所有三个深度学习网络以提高机械控制的可靠平台。

状态估计模块20、动态建模模块22和控制策略模块24中的所述三个深度神经网络在初始训练阶段期间被训练到可接受的性能水平,使得当来自测量装置16的直接状态测量结果不再可用时,它们可以在操作与辅助学习阶段中合理地操作。在操作与辅助学习阶段中,测量装置16可以停止提供状态测量结果,并且可以使用仅正常系统仪器,例如观测系统16,来提供观测测量结果。状态测量结果在辅助学习阶段中不起作用。可以间接从观测测量结果提取状态信息。虽然整个状态信息在操作与辅助学习阶段中不可用,但控制与学习模块18可以基于可用的观测测量结果(例如,来自相机图像的视觉数据或lidar数据)或常规上产生的最优/稳健控制来提高状态估计模块20、动态建模模块22和控制策略模块24中的所有三个深度学习网络。

如先前陈述,状态估计模块20、动态建模模块22和控制策略模块24的所有深度学习网络被建模为贝叶斯神经网络。因此,除了它们的预期输出之外,所述三个神经网络还提供可以用作网络不确定性的量度的输出方差。

在第二学习阶段期间,状态估计模块20基于来自观测系统14的观测测量结果而产生第一估计当前状态和与所述第一估计当前状态相关联的方差可以将此方差解译为第一估计当前状态的测量噪声。将对机械臂12的控制输入的样本延迟版本u(n-1)以及样本延迟的所估计的状态发送到动态建模模块22。包括初步动态模型k和补充动态模型d(共同通过图3中的k’表示)的动态建模模块22产生第二估计当前状态和作为建模不确定性的相关联的方差第一估计当前状态与第二估计当前状态之间的误差被传播回以便返回状态估计模块20和动态建模模块22的神经网络,从而在自动化系统10的正常操作期间提高它们的功能。

可达性分析模块30被配置成评估安全性,并且在需要时向机械臂12施加稳健控制命令以确保安全性能得以维持。可达性分析模块28接收:(1)第一估计当前状态(2)相关联的方差(被解译为传感器噪声);(3)最新的动态模型参数向量以及(4)第二估计当前状态的方差(作为建模不确定性或干扰的量度)。如果观测到当前状态处于不安全目的地状态的后向可达组的边界上,那么可达性分析模块30产生稳健控制命令。通过控制了节点处的选择器开关的可达性分析模块28的布尔输出(由输出箭头y指示)来示意性地演示此功能。当控制与学习模块18被视为处于不安全边界状态时,向机械臂12施加稳健控制命令ur(t)。当观测到控制与学习模块18是安全时,向机械臂12施加实时计算的最优控制器的输出uo(n)或控制策略网络的输出up(n)。将在下文更详细地论述关于这两个控制之间的选择的过程。

还将第一估计当前状态发送到控制策略模块24,所述控制策略模块产生控制策略命令up(n),和与所述控制策略命令相关联的控制策略方差σp(n)。所述控制策略方差σp(n)用于量化控制策略模块24在所产生的控制策略命令中的置信度。举例来说,可以将控制策略方差σp(n)与阈值进行比较以决定所产生的控制策略在机械臂12上执行是否可靠。虽然可达性分析模块30旨在提供安全稳健性,但其未考虑到性能要求。因此,不确定的控制策略可能暗示系统在完成给定任务方面的较差性能。此外,可达性分析假设根据给定系统模型来实施控制。因此,通过采用不确定的控制策略,还可能会损害安全性,因为这可能会导致以意外的方式命令机器人的控制策略的不合理的行为。当控制策略模块24在所产生的控制策略命令中不确信(或没有预定义的置信度阈值确信)时,最优控制模块28可以接管。这在图3中经由“确信策略?”框和布尔箭头z示意性地演示,所述布尔箭头充当在控制输入选项up(n)和uo(n)与节点之间进行选择的开关。

最优控制模块28接收最新的动态模型参数向量第一估计当前状态以及与所述第一估计当前状态相关联的方差(作为传感器噪声方差),并且解出最优控制动作uo(n)。实时地解出此类最优控制问题可能不可行。因此,可以更慢速地停止或操作机械臂12以适应最优控制模块28所需的时间。此行为是直观的,因为预期任何智能系统在不熟悉的区域停止或减慢以进一步评估条件并且优化性能。

在机械臂12与环境交互以完成其指派的任务时,控制与学习模块18还通过辅助学习提高其性能。在向机械臂12施加新的最优控制命令uo(n)之后,所述最优控制命令与第一估计当前状态配对以形成用于控制策略模块24的额外的训练数据。状态估计模块20的网络和动态建模模块22的网络的额外的训练相耦合,且因此更复杂。

在给出最后的所估计的状态和最后的控制输入u(n-1)的情况下,动态建模模块22提供第二估计当前状态可以将所述第二估计当前状态与基于观测测量结果而计算的所述第一估计当前状态进行比较。误差:

被传播回以调谐状态估计模块20和动态建模模块22的网络的参数。然而,将此误差传播回以同时调谐状态估计模块20和动态建模模块22中的网络会有一些潜在的问题。

在此情形下出现的问题是所述两个模块中的哪个负责所观测到的误差“e”?想象其中动态建模模块的网络当前驻留在全局最佳状态下并且不需要任何额外的重新调谐的极端情况。在此情况下,观测到的误差“e”完全根植于状态估计模块20的网络中。因此,应使动态建模网络参数保持不变,而应仅将误差e传播回到状态估计模块20进行额外的调谐。否则,迫使动态建模网络补偿状态估计模块20的限制并且随后将动态建模网络推离其正确的参数设定。所述两个网络一起的组合的额外自由度进一步导致过度拟合并损害系统泛化性能。此外,各种模块之间的功能边界随时间消失,从而迫使整个系统充当单个单元,其中不向所述模块中的任一者指派清楚的任务。此现象使得早先界定的算法步骤的适用性无效。

举例来说,状态估计模块20的输出可能不再被解译为所估计的当前状态,因为此模块可能部分接管了其他模块的功能性。模块化结构可能有益于系统性能并且具有以下优势:

首先,模块化网络结构更容易进行故障排除和调试,因为可以孤立地测试各个模块并且可以独立地监测它们的性能。在检测到有缺陷的模块之后,模块网络结构或训练数据方面的改善可以帮助缓解问题。

第二,在模块化框架下并且在可以使用特定于模块的新的训练数据之后,可以提高那个模块。对于一些任务,例如对象/地标检测,在机器学习社区内共享许多此类训练数据集,并且所述训练数据集的大小快速地增长。举例来说,在可以将额外的训练数据用于组装任务中的门铰链检测或齿轮齿检测时,可以进一步训练/精细调谐相关模块以实现更可靠的性能。

第三,模块化设计的另一益处是适应已经演进多年并且已经证明在各种应用中高效和可靠的常规技术的灵活性。最优或稳健控制是此类技术的示例。通过模块化结构来实现在这里提出并且在图3中演示的方法。

控制与学习模块18的另一方面涉及在整个辅助学习阶段中保留图3的模块化结构。使用由每个模块提供的不确定性信息来实现此目标。为了阐明这一点,考虑到其中动态建模网络在从动态建模模块输出的第二估计当前状态中完全确信的极限情况。在此情况下,唯一合乎逻辑的是使此网络在整个辅助训练中不变并且仅通过状态估计模块20传播回误差在这里针对其中两个单元在所产生的输出中不确定但处于不同水平的情况应用此方法的泛化。对于此一般情况,提出使每个模块的参数的梯度下降步长大小随对应的不确定性水平而变。

考虑到m={m1,m2},其中m1和m2分别是与状态估计和动态模型相关联的参数向量。还考虑到由等式1给出的随误差“e”而变的成本c(e)。将相对于参数向量m的c(e)的梯度给出为:

假设梯度下降更新,将状态估计和动态模型的参数调谐写为:

其中c是常数。步长大小α1和α2是与状态估计和动态模型网络相关联的不确定性值的函数,即,

其中ρ1和ρ2是所述不确定性值,假设随对应的贝叶斯网络输出方差而变,即,

在一个实施例中,可以将函数g界定为如下给出的归一化步骤:

其中β1和β2分别是到目前使用的训练状态估计和动态建模网络的训练数据输出的方差。

此外,可以将函数f界定为归一化的方差的softmax函数,即,

αj=2σ(ρ)j等式(6)

其中σ()j是softmax函数并且ρ可以采取归一化的方差的两个值中的任一者。当两个归一化的方差ρ1和ρ2相等时,步长大小α1=α2=1,其中所述方法就像正常的梯度下降方案。在任何其他情况下,所述两个模块中的一者将经历较大的步长大小。如直观地预期,在其中与模块相关联的不确定性非常小的极端情况下,对应的重新调谐步长大小接近零,并且因此,仅具有相对大的不确定性的模块经历重新调谐。

在另一实施例中,可以将函数f表示为可以独立地训练的单独网络。此网络可以在其输入端处接收任务网络输出方差并且在输出端处产生步长大小值。

本公开的控制与学习模块具有全部以系统方式解决的性能和安全稳健性以及学习方面的完整自动化框架。本文呈现的技术本质上是通用的,并且可以由任何自动化系统采用,只不过本文是关于具有生产线上的操纵或组装任务的机械臂的示例描述了所有概念。

本公开的描述在本质上仅仅是示例性的,并且因此不背离本公开的实质的变化旨在处于本公开的范围内。不要把此类变化视为背离本公开的精神和范围。

根据本发明,提供一种用于控制机械臂的控制与学习模块,所述控制与学习模块具有至少一个学习模块,所述至少一个学习模块包括至少一个神经网络,其中所述至少一个神经网络被配置成在初始学习阶段期间接收基于当前状态的测量的状态测量结果以及基于观测数据的观测测量结果两者并且通过所述状态测量结果和所述观测测量结果进行训练,并且被配置成当机械臂处于正常操作时以及在所述初始学习阶段之后通过经更新的观测数据进行重新调谐以在操作与辅助学习阶段期间提高性能。

根据实施例,所述状态测量结果是通过传感器获得并且表示实际当前状态。

根据实施例,所述至少一个神经网络被表示为贝叶斯神经网络。

根据实施例,所述至少一个神经网络被配置成产生与输出任务相关的输出和与所述输出相关联的方差,所述方差是与所述输出任务的可靠性相关的不确定性的量度。

根据实施例,所述至少一个学习模块包括:状态估计模块,所述状态估计模块被配置成仅基于所述观测测量结果而提供所估计的当前状态;以及动态建模模块,所述动态建模模块被配置成产生动态模型和动态模型输出方差,所述动态模型输出方差表示所述动态模型的不确定性。

根据实施例,所述状态估计模块被配置成输出第一估计当前状态和与所述第一估计当前状态相关联的方差。

根据实施例,所述动态建模模块被配置成输出第二估计当前状态。

根据实施例,所述状态估计模块和所述动态建模模块各自被配置成接收与所述第一估计当前状态与所述第二估计当前状态之间的差异相关的输入,以在所述操作与辅助学习阶段期间提高性能。

根据实施例,所述所估计的状态包括环境中的障碍物和目标对象的所估计的位置。

根据实施例,本发明的特征还在于控制策略模块,所述控制策略模块被配置成基于来自状态估计模块的所估计的当前状态而产生控制策略命令和与所述控制策略命令相关联的控制策略方差。

根据实施例,本发明的特征还在于,所述控制策略模块被配置成仅在所述操作与辅助学习阶段期间产生所述控制策略命令和所述控制策略方差。

根据实施例,本发明的特征还在于最优控制模块,所述最优控制模块被配置成基于来自所述动态建模模块的所述动态模型以及所述状态测量结果和所述所估计的状态中的一者而产生最优控制命令。

根据实施例,所述最优控制模块被配置成当所述控制策略方差大于预定义的方差阈值时超驰来自所述控制策略模块的所述控制策略命令。

根据实施例,本发明的特征还在于可达性分析模块,所述可达性分析模块被配置成接收所述状态测量结果、来自所述动态建模模块的所述动态模型参数和相关联的输出方差,并且确定所述当前状态是否处于安全状态。

根据实施例,所述可达性分析模块被配置成在所述可达性分析模块确定所述当前状态处于不安全状态时产生超驰来自所述最优控制模块的所述最优控制命令的稳健控制命令。

根据实施例,所述状态估计模块、所述动态建模模块和所述控制策略模块各自包括在所述初始学习阶段和所述操作与辅助学习阶段两者中接受训练的神经网络。

根据实施例,所述状态估计模块、所述动态建模模块和所述控制策略模块各自输出表示所述状态估计模块、所述动态建模模块和所述控制策略模块的不确定性的方差。

根据实施例,所述动态建模模块包括初步动态模型和补充动态模型,所述初步动态模型是预先确定的,并且基于关于所述机械臂的系统动态的现有知识来提供状态预测。

根据实施例,所述补充动态模型被配置成产生校正参数以校正由所述初步动态模型提供的所述状态预测。

根据实施例,所述补充动态模型被配置成产生与所述校正参数相关联的所述动态模型方差。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1