背景技术:
rogerfrigola、yutianchan和carle.rasmussen所著《variationalgaussianprocessstate-spacemodels》(变分高斯过程状态空间模型,arxivpreprintarxiv:1406.4905v2,2014)揭示一种借助稀疏高斯过程(英语:sparsegaussianprocesses)来变分贝叶斯学习非线性状态空间模型(英语:state-spacemodel)的方法。
thomasf.w.nicholson、marcpeterdeisenroth和jameshensman所著《identificationofgaussianprocessstatespacemodels》(高斯过程状态空间模型的识别,arxivpreprintarxiv:1705.10888v2,2017)以及andreassvensson和thomasb.
本发明的优点
与此相比,具有独立权利要求1的特征的方法的优点在于:一种特别有效且可靠的方法,即使在高维潜在状态空间下也能学习非线性状态空间模型。
有利改进方案参阅独立权利要求。
技术实现要素:
在第一方面中,本发明涉及一种求得可被致动器调节的被测变量y的时间曲线的方法,其中对该致动器施加某个控制变量u的时间曲线。
借助高斯过程状态模型(英语:gaussianprocessstatespacemodel,简称gp-ssm)来求得,该高斯过程状态模型描述致动器的特性。根据可参数化的函数族q(x1:t,f2:t,z)来求得致动器的控制变量。
状态空间模型,也称状态模型,是在过渡模型f和过程噪声(英语:processnoise)εx下借助潜在变量x来描述系统的特性。根据潜在变量x,借助具有测量噪声εy的观察函数g来求得被测变量y借助下标“t”通常就能描述时间变化,在此情况下,状态空间模型通过以下方式而产生,
用高斯过程就能通过函数来展示分布。从而将关于系统特性的先验假设考虑在内。针对一组观察x=[x1,...,xn],将对应的函数值f=[f(x1),...,f(xn)]作为共同高斯分布,亦即
其中均值矢量mx为项mi=m(xi),协方差矩阵kx,x为要素kij=k(xi,xj)。
在观察x的函数值f给出的情况下,新观察点x*的相关概率分布就能被写成
其中
通过缩写
有利地,描述性高斯过程可以实现为稀疏高斯过程。为此,可以在可预设的伪输入点(英语:pseudoinputpoints)ζ=[ζ1,...,ζp]上设置诱导高斯过程目标状态(英语:inducinggaussianprocesstargets)z=[z1,...,zp]。此举特别是在训练数据组较大的情况下会降低高斯过程的参数的调整计算量。
既可以针对过渡模型f又可以针对观察函数g来选择高斯过程。但为了识别表征高斯过程的参数,优选选择已知的参数化观察模型,例如
其中对角协方差矩阵
g(xt)=cxt,(5)
其中如此地选择矩阵c,使其选择潜在变量xt的dy第一项,即
这样就能将gp-ssm的变量的共同分布函数写成
其中
可以将过程噪声选为具有对角协方差
类似于等式(3)地选择。诱导目标状态zd的后验概率分布p(zd)也可以正态分布地用适宜的参数mζ、kζ,ζ来选择:
用来求得等式(6)所给出的模型的对数似然或后验概率分布的积分极难求解。这样就产生了使用变异函数的方法。
césarlincolnc.mattos、zhenwendai、andreasdamianou、jeremyforth、guilhermea.barreto、neild.lawrence所著《recurrentgaussianprocesses》(递归高斯过程,arxivpreprintarxiv:1511.06644.v6,2016)例如揭示过:将所谓的平均场近似应用于潜在状态x1:t。该案用下式的因子分解的近似函数族q来对等式(6)所给出的模型的后验概率分布p(x1:t,f2:t,z|y1:t)
进行近似计算。通过改变将这个族参数化的参数,就能尝试尽可能对实际的后验概率分布进行近似计算。
为了更好地保持模型(6)中各状态间的时间关系,作为前述方案的替代方案,可以如此地选择可参数化的函数族q(x1:t,f2:t,z),使得致动器的相继的潜在状态x的时间关联保持不变。亦即,该致动器的下一潜在状态xt(其例如用过渡函数求得)与该致动器的此前,特别是前一潜在状态x以及与该致动器的此前,特别是前一控制变量u的关联,应等于该高斯过程状态模型的相应关联,特别是对应于等式(6)。亦即,项
特定而言,可参数化的函数族q(x1:t,f2:t,z)被配置成,针对所测训练数据组ymess尽可能对后验概率分布p(x1:t,f2:t,z|y1:t)进行近似计算。
优选通过以下方式来求得训练数据组ymess:用可预设的控制变量u的可预设的训练曲线u1:n来控制致动器并且求得被测变量y的所产生的时间训练曲线y1:n。这样就能通过(y1;n,u1:n)来产生训练数据组ymess。
有利地,可参数化的函数族q(x1:t,f2:t,z)与致动器的初始潜在状态x1的关联由与这个初始潜在状态相关(特别是仅与该状态相关)的因子给出,其中这个因子由可参数化的变异函数q(x1),特别是由正态分布
作为替代或补充方案,可参数化的函数族q(x1:t,f2:t,z)与高斯过程目标状态zd的关联可以由第二因子给出,其中这个第二因子为可参数化的第二变异函数q(zd),其作为自变量而具有相应的高斯过程目标状态zd。
其中,该可参数化的第二变异函数q(zd)可以由正态分布函数
在此情况下,该可参数化的函数族具有下式
在此情况下,用来将这个可参数化的函数族参数化的参数由以下给出:
-过程噪声
-传感器噪声
-针对诱导高斯过程目标状态的变异参数
-可预设的伪输入点
-核-超参数。
采用该可参数化的函数族后,便能通过以下方式来求得致动器的潜在状态
这样就能像实施例所详细阐述的那样简单地求得证据下界,即elbo。
通过潜在状态x的马可夫结构和稀疏高斯过程近似计算,在某个时间点t,q(xt)上的潜在状态的(边缘化)近似分布,在前一时间点t-1的分布给出的情况下,与此前的时步无关。这样就能实施前述的递归操作。
但需要规定初始的潜在状态
但也可以根据可参数化的变异函数q(x1)通过初始状态x1的分布函数以给出所测训练数据组q(x1|y1:n,u1:n)的方式来求得初始潜在状态
在另一方面中,本发明涉及一种方法,其中根据被测变量y的借助前述方法中的一个所测得的曲线来求得用来控制致动器的最佳控制变量uopt。这样就能非常简单地对致动器进行最佳控制。
在另一方面中,本发明涉及一种学习控制策略的方法,也称“policyleaming”。其中,求得至少一个最佳参数ξopt。这个最佳参数ξopt表征致动器控制系统的控制策略。该致动器控制系统被配置成根据该控制策略来用控制变量u控制致动器。亦即,可以根据控制策略并且根据最佳参数ξopt来求得控制变量u。借助前述方法中的一个来求得被测变量y的应用该控制策略时所产生的时间曲线,并且根据被测变量y的该所测曲线来求得该至少一个最佳参数ξopt。
在另一方面中,本发明涉及一种训练致动器控制系统的方法,该致动器控制系统被配置成实施前述方法中的一个,其中对表征可参数化的函数族q(x1:t,f2:t,z)的参数和/或确定性模型参数进行调整,使其针对所测训练数据组尽可能至少对所述致动器的至少潜在状态x1:t和所述过渡函数f2:t的时间曲线的后验概率分布p(x1:t,f2:t,z|y1:t),以给出所述致动器的被测变量y1:t的时间曲线的方式,进行近似计算。
下面参照所附图式对本发明的实施方式进行详细说明,图中:
图1为本发明的实施方式的结构的示意图;
图2为本发明的其他实施方式的结构的示意图;
图3为本发明的一个方面中的方法的流程的流程图;
图4为本发明的另一方面中的方法的流程的流程图;
图5为本发明的又一方面中的方法的流程的流程图。
具体实施方式
图1示出本发明的实施方式的结构。图1在一个实施方式中示出在环境20中与致动器控制系统40相互作用的致动器10。下文也将致动器10和环境20共同称为致动器系统。例如定期地用传感器30检测致动器系统的状态,该传感器也可以由多个传感器构成。将传感器30的每个传感器信号s传输至致动器控制系统40。据此,致动器控制系统40接收一个序列的传感器信号s。致动器控制系统40由此而求得一个序列的控制信号a,致动器10接收该控制信号。
致动器10例如可以指(半)自主机器人,如(半)自主汽车,或指对田地里的某类杂草进行处理(如加以拔除或喷洒相应的化学品)的机器人。
传感器30例如可以指一或多个视频传感器以及/或者一或多个雷达传感器以及/或者一或多个超声波传感器以及/或者一或多个位置传感器(如gps)。作为替代或补充方案,传感器30也可以包括求得关于致动器系统的状态的信息的信息系统,如求得环境20中的当前或未来的天气状态的天气信息系统。
在另一实施例中,致动器10可以指制造机器人,在此情况下,传感器30例如可以指检测制造机器人的制造产品的特性的光学传感器。
在另一实施例中,致动器10可以指用来释放或不释放某个设备的活动的释放系统。传感器30例如可以指用来进行脸部检测的光学传感器(例如用于检测图像或视频数据)。致动器10根据控制信号a的序列来求得释放信号,其作用在于:根据该释放信号的值来释放设备。该设备例如可以指物理或逻辑上的访问控制。如此便能根据控制信号a的值来设置访问控制,从而允许或者不允许进行访问。
在另一实施例中,致动器10例如可以指楼宇控制的一部分,如暖气的控制器。
致动器控制系统40在可选的接收单元50中接收传感器的传感器信号s的序列,该接收单元将传感器信号s的序列转换成被测变量y的序列(作为替代方案,也可以分别将传感器信号s直接用作被测变量y)。被测变量y例如可以为传感器信号s的片段或后续处理。将被测变量y输送至机器学习系统60,该学习系统的工作方式参阅图4。
机器学习系统60从被测变量y求得控制变量u。根据存储在参数存储器p中的参数φ来求得控制变量。这些参数φ特别是可以包括参数ξopt,其对致动器控制系统40的控制策略进行表征。参数存储器p可以整合在致动器控制系统40中,但该参数存储器也可以与致动器控制系统40空间分离且例如通过网络连接而与致动器控制系统40连接。将控制变量u输送至可选的转换单元80,其从中求得控制信号a,该控制信号被输送至致动器10。
在其他实施方式中,致动器控制系统40包括致动器10。
在其他优选实施方式中,致动器控制系统40包括一或多个处理器45和至少一个用来存储指令的机器可读的存储介质46,当在处理器45上执行这些指令时,这些指令使得致动器控制系统40实施用于控制致动器10的方法。
图2示出用来训练致动器控制系统40的机器学习系统60的机器训练系统140。
测量值装置150求得训练数据组ymess,其既包括控制变量u又包括对应的被测变量y。这些变量例如可以通过借助控制变量u来控制致动器10以及求得所产生的被测变量y来求得,并且存储在数据载体(未予绘示)上,该数据载体可以是测量值装置150的一部分。为了求得训练数据组ymess,测量值装置150可以从数据载体读取。
将训练数据组ymess输送至训练块190,其根据存储在参数存储器p中的参数φ借助图3所示方法来求得经优化的参数φ',其在参数存储器p中取代所存储的参数φ。
作为替代或补充方案,可以借助图5所示方法来求得经优化的参数ξopt,其可以是经优化的参数φ'的一部分并同样被存储在参数存储器p中。
在其他优选实施方式中,训练系统140包括一或多个处理器200和至少一个用来存储指令的机器可读的存储介质210,当在处理器200上执行这些指令时,这些指令使得训练系统140实施用于训练该机器学习系统60的方法。
图3示出训练机器学习系统60的方法的一种实施方式。首先(1000)将参数φ初始化并提供具有控制变量u和被测变量y的时间曲线的训练数据组。相应的时间曲线用u1:t或y1:t表示。
随后(1100)可选地将这些时间曲线分解成规定长度的子曲线tsub。
而后针对该曲线或者针对多个子曲线中的一或多个而分别求得预测一或多个相应轨迹的潜在变量
在此情况下,从分布函数q(xt)中获得样本
而获得。其中
随后对参数φ进行调整,从而将kullback-leibler散度kl(q(x1:t,f2:t,z)||p(x1:t,f2:t,z|y1:t))最小化,其中在分成若干子曲线的情况下,长度t当然被tsub取代。通过通常的证据下界(英语:evidencelowerbound,简称:elbo),
这个kl散度的最小化与elbo的最大化等效,其由下式给出:
这样就能(1200)根据等式(13)来估算elbo。为此,借助潜在变量x的预测时间曲线并依据
来估算等式(13)中的右边第一项,其中n表示潜在变量x的在步骤1100中产生的预测时间曲线。
基于对elbo的这种随机求得来求得函数
随后(1400)检验是否达到某项散度标准。如果是(1500),则新的参数φ'取代存储在参数存储器p中的参数φ,该方法结束。否则,返回步骤1150。
图4示出用于控制致动器10的方法的一种实施方式。可选地,首先(2000)实施图3所示训练方法。随后(2010-2050)在控制变量u上针对可预设的预测水平线tpred实施模型预测控制。
为此,首先(2010)产生控制变量u的时间曲线。随后(2020)求得(如随机选择或者选择等于0)初始潜在状态
而后(2030)根据被测变量y1:tpred的所测曲线来求得成本函数。
随后(2040)检验是否达到成本函数的散度标准。如果是(2050),则将控制变量u的当前所测曲线用作最佳控制变量uopt,并且根据该最佳控制变量uopt的曲线来控制致动器10。
如果否(2060),则改变控制变量u的曲线。例如可以采用梯度下降法,其中例如可以用类似于步骤(2020)的评价步骤来数值求得梯度或者解析预设梯度。而后,随着控制变量u的经改变的曲线而返回步骤2020。
图5示出用于求得参数ξopt的方法的一种实施方式。可选地,首先(3000)实施图3所示训练方法。
随后(3010)产生控制变量u的初始值和参数ξopt的初始值。同样,以类似于步骤(2020)的方式求得潜在状态x的初始值。随后(3020)借助等式(5)和(11)以及参数ξopt所表征的当前控制策略,来求得潜在状态u、被测变量y和控制变量u的时间曲线。而后(4030)根据被测变量的所测曲线来求得成本函数。
随后(3040)检验是否达到成本函数的散度标准。如果是(3050),则将当前所测参数ξopt用作最佳参数ξopt。
如果否(3060),则改变参数ξopt。例如可以采用梯度下降法。而后,随着参数ξopt的经改变的曲线而返回步骤3020。
所有方法当然既可以在软件中实施,也可以在硬件中实施,或者在由硬件与软件构成的混合形式中实施。