掌桥专利:专业的专利平台
掌桥专利
首页

用于验证或核实技术系统的方法

文献发布时间:2024-04-18 20:01:23


用于验证或核实技术系统的方法

技术领域

本发明涉及一种用于验证或核实技术系统的计算机实现的方法、一种计算机程序以及一种机器可读存储介质。

现有技术

Shalev-Shwartz等人在2018年的“On a Formal Model of Safe and ScalableSelf-driving Cars”(https://arxiv.org/pdf/1708.06374.pdf)公开了一种用于安全性保证的数学模型。

Danquah等人在2021年的“Statistical Validation Framework for AutomotiveVehicle Simulations Using Uncertainty Learning”(https://doi.org/10.3390/app11051983)公开了一种用于具有改变的参数配置的动态系统的统计性验证框架。

Jiang等人在2021年的“Assessing Generalization of SGD via Disagreement”(发布于ICLR 2022,https://arxiv.org/abs/2106.13799)经验性地表明:深度网络的测试误差可以通过简单地在相同训练集上但是利用随机梯度下降的不同运行训练相同架构来估计。

背景技术

技术系统包括组件,其中该系统可以被理解为定义组件之间的交互和/或相互关系。例如,诸如自主车辆之类的机器人的控制系统通常包括用于感测机器人的环境、用于计划机器人在这种环境中的动作、以及用于确定去往机器人的致动器的控制信号以执行所计划的动作的组件。

现代技术系统通常包含相当大量的组件,这进而可能使预测这种系统的行为非常困难。给定前述示例,用于感测环境的组件可能在感测过程中出错,例如,错过环境中的对象,计划组件可能面对如下感测环境,针对所述感测环境,在计划组件中没有已知的合适动作,或者在所计划的动作与机器人实际实行的动作之间可能存在差别。

一般来说,核实和/或验证技术系统在其环境中展现出期望行为是非常困难的,更不用说保证这种期望行为了。这一点的主要原因是该系统所包括的组件本身可能展现出未知的和/或随机的行为和/或可能如此复杂以至于它们只能够被视为黑盒。例如,机器人的现代环境感知组件通常依赖于来自机器学习领域的方法、特别是深度学习方法,以便感测环境。这种方法本质上是统计性的,并且它们的复杂性通常不允许用于确定感知系统的确切行为的直截了当的方法。

甚至除此之外,系统的组件本身可以是系统,即,该系统实际上可以是系统中的系统。在这种系统中的系统中,复杂性增长得相当快,这进而使得非常难以准确地预测这种系统中的系统的行为,即,核实和/或验证该系统如所要求或所期望的那样表现。

有利地,所提出的本发明允许核实和/或验证技术系统,即使该技术系统是复杂的,例如,即使该技术系统包括错综复杂地链接在一起的多个组件。

发明内容

在第一方面,本发明涉及一种用于核实和/或验证技术系统是否满足期望准则的方法,其中技术系统基于供应给技术系统的输入信号来发出输出信号,其中该方法包括以下步骤:

·获得技术系统所包括的多个组件的模型,其中所获得模型之间的连接表征哪个组件将哪个信号传递给哪个其他组件;

·获得多个验证测量,其中验证测量包括测量输入和测量输出,其中如果测量输入被提供给组件,则测量输出是针对测量输入从技术系统的组件获得的;

·针对每个组件,训练机器学习模型以基于相应组件的输入来预测相应组件的输出,其中验证测量的至少部分被用作训练数据集,并且其中机器学习模型对应于针对所述组件获得的模型;

·基于测试输入从最后一个模型获得第一测试输出,其中第一测试输出是通过经由模型的连接传播测试输入而获得的;

·从对应于最后一个模型的机器学习模型并且基于模型的测试输入来确定第二测试输出,其中第二测试输出是通过经由机器学习模型的连接传播测试输入而获得的,其中机器学习模型的连接根据相应机器学习模型所对应的模型的连接;

·确定偏差,其中所述偏差表征从最后一个模型确定的第一测试输出与由对应于最后一个模型的机器学习模型确定的第二测试输出之间的差异;

·核实和/或验证技术系统是否满足准则,其中核实和/或验证的特征在于确定第一测试输出的满足偏移准则的小部分(fraction),其中所述偏移准则是通过使所述准则偏移所确定的偏差来确定的。

一般来说,用于核实和/或验证技术系统的方法的目的可以理解为帮助该方法的用户确定技术系统满足期望准则的概率。然后,可以将所确定的概率与概率阈值进行比较,并且如果满足期望准则的概率等于或高于概率阈值,则可以认为该技术系统关于该准则被核实和/或验证。如果所确定的概率没有达到或超过概率阈值,则可以认为该准则不能够被核实或不能够被验证。例如,技术系统可以是移动机器人,并且该准则可以表述为“如果机器人偏离期望路径不超过50cm,则机器人没有偏离期望路径”。然后,该方法将允许统计性地评估满足准则的概率。

替代地,该方法也可以用于确定违反期望准则的概率。在这种情况下,如果所确定的概率等于或低于概率阈值,则可以认为该准则被核实和/或验证。

在一些实施例中,期望准则可以是关于一些规范(例如,设计规范或法律规范)的一个要求或多个要求。例如,它可以是针对如下各项的要求:包括内燃机引擎的车辆的动力系(即,技术系统)在预定义的操作时间内仅产生指定量的排放颗粒(例如,NOx颗粒的数量必须低于预定义阈值)。在该特定情况下,该方法可以帮助验证工程师确定动力系实际根据指定的排放量操作的概率。

概率阈值可以根据该系统的规范来选择。替代地,概率阈值也可以由法律规定给出或从法律规定中导出。

一般来说,该方法可以用于包括组件或子系统的任何系统。对于所有这种系统,该方法允许引导过程。由于核实和/或验证通常是关于发布开发中的系统的整体构建块,例如,如果核实和/或验证该准则被满足,则该系统可以被发布。替代地,该方法可以用于核实和/或验证多个准则,并且如果核实和/或验证所有准则都被满足,则该系统可以被发布。替代地,该方法可以是用于评估该系统是否可以发布的更大测试策略的一部分。在上面讨论的所有实施例中,如果一个准则或多个准则不能够被核实和/或验证,则该系统可以例如不被发布。在这种情况下,可以改进技术系统的组件,并且该方法可以在组件改进之后再次运行,以便关于一个准则或多个准则来核实和/或验证该改进的系统。例如,在来自上文的实施例中,引擎可以在其功率方面被限制以便减少排放颗粒的量,和/或动力系的组件可以被更换为在排放颗粒方面更高效的组件。

换句话说,该方法可以被理解为人机引导的过程,以用于评估当在真实世界中使用该系统时某个准则是否可以预期被满足。

技术系统借助于基于输入信号确定输出信号来与真实世界交互。在来自上文的示例性实施例中,动力系可以例如被配备有用于测量动力系的环境温度的传感器,并且可以相应地控制引擎和/或废气后处理的部分,例如催化剂。然而,去往该系统的输入信号不一定需要借助于传感器或通信设备被输入到技术系统中。输入信号例如也可以表征技术系统的环境条件,这些环境条件对技术系统的操作具有影响。例如,内燃机引擎所产生的排放量通常取决于内燃机引擎的环境温度。在这种实施例中,温度可以被认为是技术系统的输入信号,即使引擎没有借助于传感器或通信设备接收到温度信息。换句话说,在引擎没有测量温度的情况下,温度对引擎具有物理影响。因此,输入信号也可以理解为输入激励。

因此,技术系统的不同组件可以借助于信息通过例如信号(例如测量数据、控制信号)的交换和/或借助于物理交互(例如废气处理)被连接。

一般地,本发明中所描述的技术系统可能相当复杂,例如,在技术系统的组件彼此交互的方式中是相当复杂的,和/或在技术系统的个体组件方面是复杂的,这可能使得非常难以准确地评估技术系统关于不同环境情形以及技术系统的这种不同输入信号的行为。利用已知的方法,评估这种技术系统的行为的唯一方式通常是将该技术系统视为关于其输入-输出行为的黑盒,在真实世界中运行该技术系统以收集关于输入-输出行为的数据,并且使用统计性方法来推断关于输入-输出行为的信息。这也可以理解为聚集数据以预测技术系统的输入-输出行为。然而,这种方法的主要缺点是:通常需要收集大量的数据,以便准确地评估输入-输出行为。尤其是对于安全性关键系统和/或技术系统——它们受限于关于其输入-输出行为的某种形式的法律规定(例如,在某个操作时间内仅允许排放颗粒的最大数量),收集这种数据以准确地预测输入-输出行为需要过度的测试或验证活动,由于有必要收集巨量的数据,这通常时候是不可行的。

有利地,所提出的方法允许极大地减少需要收集的真实世界数据的实际量,同时仍然能够准确地评估技术系统的输入-输出行为。特别地,该方法允许对技术系统的核实和/或验证,而不需要端到端数据(黑盒),而是仅需要组件级数据;因此,核实和/或验证可以在技术系统的设计期间执行,甚至在完整的技术系统已经被组装之前。

还可以有可能使用所提出的方法来决定技术系统的组件。例如,可能存在不同类型的组件,这些组件似乎可以被用在技术系统中(例如,在动力系的示例中的不同类型的催化剂)。对于每个这种组件,可以使用专用模型,并且可以针对所有这种可能和可行的组件组合来评测准则的满足。然后,例如,得到最佳概率的组件的配置可以被用作用于构建技术系统的设计规范。

从抽象的视角来看,该方法可以被理解到如下程度:借助于通过不同的模型以及机器学习模型对技术系统的不同组件进行建模来构造技术系统的模型,并且然后能够借助于该模型来模拟技术系统的行为。有利地,技术系统的行为可以借助于所述模型以及机器学习模型来模拟。发明人发现,输出之间的差异、即从所述模型确定的第一输出与从机器学习模型确定的第二输出之间的差异可以有利地用于启发式地确定技术系统满足准则的概率。

在下文中,参考所述模型以及机器学习模型。在这种情况下,术语“模型”指代组件的模型,优选地是物理模型,然而,当指代模型时,也可以合理地使用组件的统计性模型。术语“机器学习系统”指代统计性模型,该统计性模型优选地借助于使用组件的输入和输出数据作为训练数据的监督训练来确定。在该方法中,可能的是,如果模型是统计性模型,则其对应的机器学习模型可以是相同的统计性模型。如果对应于该模型的组件是统计性模型,则可能尤其是这种情况。例如,技术系统可以是使用感知管道(perceptionpipeline)来确定其周围环境的机器人,其中神经网络用于确定机器人附近的对象。神经网络可以被理解为技术系统的组件,其中神经网络本身也可以用作模型以及机器学习模型。

在第一步骤中,获得技术系统的组件的模型。模型可以是物理模型。在来自上文的示例中,动力系的引擎(动力系是技术系统,引擎是技术系统的组件)可以通过引擎的物理模型来建模。替代地,模型可以通过组件本身给出(参见来自上文的神经网络示例)。

有利地,建模粒度可以由用户自行决定选择。也就是说,模型的细节(以及因此机器学习模型的细节)可以由用户自行决定选择。例如,用户可以确定是将引擎的组件建模为单个模型还是应用细粒度的建模,例如,通过对燃料喷射行为、燃烧行为和/或引擎部件(诸如活塞、阀和曲轴)的机械性质进行建模。

换句话说,该方法对于组件的建模级别(粗粒度、细粒度、或其间的任何粒度)是不可知的。

在第二步骤中,针对技术系统的组件获得验证测量。在该方法的上下文中,验证测量被理解为测量输入和测量输出对,其中如果向组件提供了测量输入,则获得测量输出。换句话说,测量输出被链接到确定相应输出的组件。第一组件的测量输出可以作为测量输入被提供给第二组件。技术系统的输入也可以用作去往技术系统的一个或多个组件的测量输入。有利地,针对技术系统的每个组件的验证测量可以通过例如在测试台上单独运行和测量相应组件来获得。如果整个技术系统已经被组装和/或可用于运行,那么也可以通过在真实世界中运行技术系统的一个或多个测试运行(有时也称为验证运行)并测量每个组件的相应输入测量和输出测量来获得验证测量。

在第三步骤中,使用验证测量来训练机器学习模型。为此,可以使用每个组件的测量输入和测量输出来训练机器学习模型。这可以理解为监督训练,其中组件的测量输入用作自变量,并且组件的测量输出用作因变量。

在优选实施例中,机器学习模型中的至少一个是或者包括高斯过程。如果机器学习模型包括高斯过程,则机器学习模型可以包括用于确定机器学习模型的输出的其他元件,例如预处理或后处理元件。机器学习模型可以尤其被配置用于高斯过程回归或高斯过程分类,这取决于组件输出的数据的类型。如果组件具有作为输入和输出的时间序列,那么也可以通过高斯过程的合适组合(例如,GP-NARX)来构造这种时间序列模型。

在第四和第五步骤中,然后使用所述模型来确定第一测试输出,并且使用机器学习模型来确定第二测试输出。这是借助于分别通过模型的连接和机器学习模型的连接传播信息来实现的。相应的连接是从技术系统的组件导出的。技术系统中的组件基于哪个组件向哪个其他组件提供输入而被(逻辑地)连接。该连接可以表征组件之间传递的实际信号以及组件之间传递的激励。由于模型以及机器学习模型借助于一对一关系对应于单个组件,因此组件的连接也可以用作模型之间的连接以及机器学习模型之间的连接。因此,所述模型形成链,该链定义从该链的第一个模型到最后一个模型的信息流。该信息流对如将发生在技术系统本身中的信息流进行建模。同样,机器学习模型形成链,其中该链定义技术系统中的信息流的不同模型。因此,测试输入可以分别通过模型链和机器学习模型链而传播,以便预测相应的结果,就像如果测试输入被提供给技术系统本身(或者作为针对技术系统的激励而出现)将会有的结果一样。

第一测试输出是从模型链的最后一个模型获得的。同样,第二测试输出是从对应于最后一个模型的机器学习模型获得的。限定词“第一”和“第二”简单地标示与最后一个模型(第一)或对应于最后一个模型的机器学习模型(第二)的对应关系。

在该方法中,所述模型和机器学习模型优选地被提供有多个测试输入,以确定多个第一测试输出和多个第二测试输出。测试输入可以优选地通过合成期望的数据来获得。例如,验证测量可以用于训练生成式机器学习模型,诸如生成式对抗网络、归一化流、或扩散模型。然后,可以从经训练的模型进行采样,以确定测试输入。这样,用于核实和/或验证技术系统的数据量可以容易地被改进,而不需要聚集真实世界中的数据。然而,真实世界数据也可以用作测试输入,要么与合成数据结合使用,要么单独使用。

测试输入和测试输出对可以被认为是对测量输入和测量输出的对应物。在测量输入和测量输出被链接到技术系统的组件的情况下,测试输入和测试输出被链接到所述模型或机器学习模型。

当通过机器学习模型转发数据时,每个模型或机器学习模型可以针对给定测试输入预测多个输出,其中该多个输出然后被提供给另一个机器学习模型。这样,数据量进一步增加,并且核实和/或验证结果甚至更加可靠。

在第六步骤中,确定来自最后一个模型的第一测试输出与来自对应于该模型的机器学习模型的第二测试输出之间的差异。这可以理解为确定所述模型的预测与机器学习模型的预测有多一致。为了确定差异,相同的测试输入可以通过所述模型而传播,并且通过机器学习模型而传播。因此,针对该测试输入,可以确定第一测试输出和第二测试输出。还有可能确定多个第一测试输出和/或第二测试输出。如果是这种情况,则可以借助于对多个第一测试输出进行求平均来将多个第一测试输出聚合成单个第一测试输出。同样,可以借助于对多个第二测试输出进行求平均来将多个第二测试输出聚合成单个第二测试输出。

最终,针对测试输入,存在单个第一测试输出和单个第二测试输出。然后,可以从第二测试输出中减去第一测试输出,以针对给定测试输入确定所述模型与机器学习模型之间的差异。优选地,针对多个测试输入重复该过程,从而导致所述模型与机器学习模型之间的多个差异。将所述模型与机器学习模型之间的差异视为随机变量,然后可以通过确定所确定的差异值的预定义分位数来评估所述模型与机器学习模型之间的典型偏差。虽然要使用的确切分位数可以被视为该方法的可以用已知超参数优化方法来调谐的超参数,但是发明人发现95%的分位数对于该方法是足够的。

在第七步骤中,然后核实和/或验证技术系统是否满足偏移准则,其中偏移准则是通过使该准则偏移所确定的偏差来确定的。这可以通过确定第一测试输出的满足偏移准则的小部分来实现。该小部分等于满足该准则的概率。

令人惊讶的是,作者发现该偏差可以用作关于第一测试输出多么准确地预测技术系统的行为的不确定性度量或安全性裕度。如果第一测试输出的小部分超出(overcome)该安全性裕度,则相应的小部分可以被容易地用于评估满足该准则的概率。

如果该准则是在数字方面定义的,则该偏差可以例如从该数字中被减去、或者被加到该数字以用于确定偏移,这取决于该准则是声明该数字是应被超过还是不应被超过。替代地,如果该准则不是在数字方面定义的,则偏差可以从每个第一测试输出中被减去,并且该准则可以关于偏移第一测试输出来评估。

因此,偏差可以被理解为一安全性裕度,第一测试输出必须超出(以期望概率)该安全性裕度,以便将该准则评估为被满足的。

未能够核实和/或验证该准则可能是依赖于在该方法中使用的模型太不准确,以至于不允许在对输出组件建模的模型的输出上有足够紧的界限。宽松的界限可能导致未能满足该准则,其中未能满足该准则可能源于一个或多个模型关于它们相应的组件的不准确性,这可能导致对输出上的界限过于悲观。因此,可以有利地改进一个或多个模型,即,它们可以被适配成更准确地反映它们相应组件的行为。这可以通过使用偏差作为损失函数并优化一个或多个模型使得偏差被减小来实现。如果模型是可微分的,则这可以借助于梯度下降算法来实现。替代地,或者对于不可微分的模型,可以使用演化算法来进行优化。

有利地,模型的改进可以导致对应于输出组件的模型的更紧的界限,并且因此导致对准则的更准确的评估。评估该改进应当优选地使用没有被用于改进所述模型的测量数据(即,测量输入和测量输出)来完成,因为否则这可能导致过拟合和/或信息泄漏。

在前述实施例的任一个中,进一步可能的是,如果准则不能够被核实和/或验证,则改进技术系统的组件。

这可以理解为确定技术系统不能够或可能不能够满足期望准则,并且因此必须被改进以便满足期望准则。使用来自动力系的示例,对组件的改进可以例如包括减小引擎的功率以消耗更少的燃料并且因此排放更少的颗粒,和/或更换动力系的催化剂以便过滤掉更多的排放颗粒。

附图说明

将参考以下各图更详细地讨论本发明的实施例。各图示出了:

图1控制系统;

图2控制至少部分自主的机器人的控制系统;

图3控制制造机器的控制系统。

具体实施方式

图1示例性地示出了包括多个组件(S

控制系统(40)包括输入组件(S

控制系统(40)被配置成基于输入测量来确定输出或动作。为此,输入测量通过组件被转发。因此,每个组件接收基于输入测量但是已经由控制系统(40)的组件处理的输入(除非该组件是输入组件)。例如,输入组件(S

控制系统(40)的最后一个组件(S

针对控制系统(40)确定的多个输入测量可以被认为是概率分布(p

当分别向模型链和机器学习系统链提供测试输入时,每个模型和每个机器学习系统确定相应的输出。如果针对多个测试输入重复这点,则相应的模型和机器学习模型的输出可以被认为是关于相应输出的分布(q

从最后一个模型(M

这里应当注意,测试输入和测量输入共享相同的结构(例如,相同维数的向量)以及语义相似性(例如,测试输入和测量输入均表征图像)。

在该方法中,第一测试输出和对应的第二测试输出(即,针对与用于获得第一测试输出相同的测试输入所获得的测试输出)可以用于确定所述模型的输出与机器学习模型的输出之间的典型不一致性。优选地,这是通过确定对应的第一测试输出与第二测试输出之间的差异的分位数、优选地高于90%的分位数来实现的。在该实施例中,使用了95%的分位数。发明人发现分位数可以用作经验安全性裕度。如果安全性裕度被加到准则(或者被减去,这取决于期望准则),则可以关于该裕度来评估最后一个模型(M

如果所确定的概率等于或超过预定义概率,则该准则可以被理解为被核实和/或验证。

图2示出了一实施例,其中控制系统(40)用于控制至少部分自主的机器人,例如至少部分自主的车辆(100)。

车辆(100)的传感器(30)可以包括一个或多个视频传感器和/或一个或多个雷达传感器和/或一个或多个超声传感器和/或一个或多个激光雷达传感器。这些传感器中的一些或全部优选地但不是必须地集成在车辆(100)中。控制系统可以例如被配置成自动地将车辆(100)保持在与车辆(100)的环境中的其他对象的预定义距离以上,或者使车辆不将与环境中的车辆碰撞的时间减少到预定义阈值以下。要验证的期望准则例如可以是车辆(100)逼近比预定义距离更近的另一个车辆的概率低于预定义百分比阈值。

控制系统(40)可以优选地包括图像分类器作为组件,例如作为输入组件(S

优选集成在车辆(100)中的致动器(10)可以通过车辆(100)的制动器、推进系统、引擎、动力系或转向装置来给出。

在进一步的实施例中,至少部分自主的机器人可以通过另一个移动机器人(未示出)给出,该移动机器人可以例如通过飞行、游泳、潜水或步行来移动。该移动机器人尤其可以是至少部分自主的割草机,或至少部分自主的清洁机器人。在所有上述实施例中,控制信号可以被确定为使得移动机器人的推进单元和/或转向装置和/或制动器被控制,使得移动机器人可以避免与所述所标识的对象碰撞。

在进一步的实施例中,至少部分自主的机器人可以通过园艺机器人(未示出)给出,该园艺机器人使用传感器(30)、优选地是光学传感器来确定环境(20)中的植物的状态。致动器(10)可以控制用于喷洒液体的喷嘴和/或切割设备(例如刀片)。取决于植物的所标识品种和/或所标识状态,可以确定控制信号以使得致动器(10)向植物喷洒合适量的合适液体和/或对植物进行切割。

在更进一步的实施例中,至少部分自主的机器人可以通过家用电器(未示出)给出,该家用电器如例如洗衣机、炉子、烤箱、微波炉或洗碗机。传感器(30)(例如,光学传感器)可以检测将经历由家居电器进行处理的对象的状态。例如,在家用电器是洗衣机的情况下,传感器(30)可以检测洗衣机内部的衣物的状态。然后,可以取决于检测到的衣物材料来确定控制信号。

图3示出了一实施例,其中控制系统(40)用于控制制造系统(200)的制造机器(11),例如冲压切割器、切割器、枪钻、焊接机器人或夹具,例如作为生产线的一部分。制造机器(11)可以包括运输设备(例如传送带或装配线),该运输设备移动所制造的产品(12)。控制系统(40)控制致动器(10),致动器(10)又控制制造机器(11)。

用于向控制系统(40)提供输入测量的传感器(30)可以通过捕获例如所制造的产品(12)的性质的光学传感器来给出。控制系统(40)可以包括图像分类器作为输入组件(S

图像分类器可以确定所制造的产品(12)关于运输设备的位置。然后,可以取决于所制造的产品(12)的所确定位置来控制致动器(10),以用于所制造的产品(12)的后续制造步骤。例如,致动器(10)可以被控制以沿着所制造的产品(12)上的特定路径来切割或焊接所制造的产品。在这些实施例中,路径可以由控制系统(40)的组件来确定,其中控制系统(40)的另一个组件然后确定针对制造机器(11)的致动器(10)的控制信号。期望准则可以是切割或焊接不偏离所计划路径多于预定义阈值。

替代地,可以设想的是,图像分类器对所制造的产品是否破损或展现出缺陷进行分类。然后,可以控制致动器(10)以从运输设备中移除所制造的产品(12)。在这种情况下,期望准则可以是被错误地拣选的所制造的产品(12)(例如,实际上没有破损或展现出缺陷但是仍然被拣选的产品)的量低于预定义阈值。

相关技术
  • 引导电子设备系统开机的方法,电子设备,可读存储介质
  • 图像显示方法、显示系统以及计算机可读存储介质
  • 控制方法、控制装置、计算机可读存储介质和电子设备
  • 控制视频播放的方法、装置、可读存储介质及电子设备
  • 开关控制方法、装置、电子设备及计算机可读存储介质
  • 图像显示控制方法、系统、可读存储介质及电子设备
  • 仪表面板图像显示装置、仪表面板图像变更方法、车辆、服务器、仪表面板图像变更系统、仪表面板图像显示程序、存储有仪表面板图像显示程序的计算机可读取的存储介质
技术分类

06120116552598