用于控制机器对象的操作的装置和方法以及存储介质与流程

文档序号:26937500发布日期:2021-10-12 11:33阅读:161来源:国知局
用于控制机器对象的操作的装置和方法以及存储介质与流程

1.本发明大体上涉及系统控制,更具体地涉及用于受约束机器的无模型控制的方法和设备。


背景技术:

2.控制系统工程中的控制理论是数学的处理工程过程和机器中连续操作的动态系统的控制的子领域。目标是开发如下的控制策略:以最优方式使用控制动作控制这种系统,而没有延迟或过冲并确保控制稳定性。
3.例如,基于优化的控制和估计技术(诸如,模型预测控制(mpc))允许可以直接考虑系统动力学和约束的基于模型的设计框架。mpc用于许多应用以控制各种复杂的动态系统。这种系统的示例包括生产线、汽车引擎、机器人、数控加工、卫星和发电机。然而,在许多情况下,受控系统的分析模型不可用、难以实时更新或是不准确的。这种情况的示例在机器人、楼宇控制(hvac)、车辆、智能电网、工厂自动化、交通、自调整机器和交通网络中很普遍。
4.在缺乏动态系统的准确模型的情况下,一些控制方法利用这些系统生成的操作数据来构建使系统动态稳定化的反馈控制策略或嵌入可量化的控制相关性能。使用数据来设计控制策略称为数据驱动控制。存在两种数据驱动控制方法:首先构建系统模型然后利用该模型设计控制器的间接方法,或直接从数据构建控制策略而无需中间建模步骤的直接方法。间接方法的一个缺点是在建模阶段可能需要大量的数据。相反,直接方法需要较少的数据。然而,即使是先进的直接控制方法也难以处理对于维持闭环控制系统中的安全操作必要的输入约束和状态。
5.例如,强化学习(rl)是机器学习涉及如何在环境中采取行动以使累积回报的某些概念最大化(或等效地,使累积损失/成本最小化)的领域。强化学习与连续状态输入空间中的最优控制以及用于在没有受控系统和/或环境的数学模型的情况下进行计算的算法密切相关,所述最优控制主要与最优控制策略的存在和表征有关。
6.然而,当前rl方法不适合受约束系统的数据驱动控制。这是因为传统的rl方法不考虑连续状态

动作空间中的状态和输入约束满足;也就是说,传统的rl不能保证在整个操作过程中利用控制输入操作的受控系统状态满足状态和输入约束。传统的rl的一个问题是在探索阶段rl用不同的输入扰乱系统,以学习与控制输入对应的状态。此外,为了更好地学习系统,使用接近可能约束的物理边界的控制输入是有益的。因为没有模型,所以不能保证任意选择的控制输入和/或具有边界值的控制输入不会将系统状态引导到指定状态约束集之外的区域,从而导致违反状态约束。
7.因此,需要一种用于受连续空间中定义的状态约束和控制输入约束的系统的无模型/数据驱动控制的系统和方法。


技术实现要素:

8.一些实施方式的目的是提供一种用于受到状态约束和控制输入约束的机器的无
模型数据驱动控制的系统和方法。另外地或另选地,一些实施方式的目的是提供这样一种方法,该方法扩展强化学习(rl)的一些原理以保证满足系统的连续状态空间中的状态约束和/或保证满足连续控制输入空间中的控制输入约束。
9.一些实施方式是基于以下认识的:用于控制受到机器的连续状态空间中的状态约束并且受到机器的连续控制输入空间中的控制输入约束的机器的操作的控制问题可以被表述为具有在机器的状态中的满足状态约束的约束容许不变集(cais)内的状态的机器的控制问题。cais与相应的控制策略有关或关联,该相应的控制策略保证当机器处于cais并根据该控制策略进行控制时,机器的状态利用cais保持,因此,这样的控制总是满足约束。然而,cais通常是基于机器的模型来确定的,并且基于我们的知识,没有任何方法可以基于通过观察机器操作在线获得的数据来确定cais。
10.一些实施方式是基于以下认识的:如果机器的状态处于与任何任意次优控制策略相关联的任何任意次优cais中,并且该任意次优cais满足状态约束,则在没有违反约束的危险的情况下利用该次优控制策略控制机器是安全的。一些实施方式是基于在这种次优控制期间收集的数据可以用于改进次优cais和次优控制策略的认识的。此外,一些实施方式是基于由实验和数学证明支持的认识的:使用一些rl原理迭代更新这种次优但安全的控制将渐近地收敛到用于控制受约束机器的最优控制策略,而不违反机器的约束并且无需了解机器的动力学模型。
11.具体地,一些实施方式是基于这样的认识:对线性机器的rl方法的值函数和控制策略更新包括经由策略和/或值迭代方法的迭代求解。这种求解可以用于更新值函数估计并使用在机器控制期间收集的数据改进控制策略。另外,一些实施方式是基于以下认识的:可以基于对受控机器的约束来修改这样的策略迭代以要求求解与机器的受控性能相关的优化问题以满足对状态和控制输入的约束。受到约束的策略迭代在此被称为受约束策略迭代。该受约束策略迭代也可以使用在利用与次优cais相关联的次优控制策略的安全控制期间收集的数据迭代求解,并且该受约束策略迭代的求解也可以用于改进次优cais和次优控制策略。改进的控制策略和改进的cais可以进一步用于机器的安全控制,并且从该改进的控制收集的数据可以进一步改进控制策略和cais。因此,利用与次优cais相关联的次优控制策略对机器进行迭代控制以及基于所收集的数据通过求解受约束策略迭代来更新次优控制策略和次优cais最终以保证安全的方式产生最优控制策略和最优cais。
12.为此,从次优cais和控制策略开始的一些实施方式联合控制机器并更新cais和控制策略。例如,为了执行联合控制和更新,一些实施方式使用控制策略来控制机器以收集包括使用控制策略生成的一系列控制输入和与该系列控制输入相对应的cais内的机器的一系列状态的数据,并使用所收集的数据通过求解受约束策略迭代来更新cais、值函数和控制策略。策略迭代的约束是状态约束和控制输入约束的函数。
13.一个实施方式被配置为重复联合控制和更新直到满足终止条件为止。终止条件的示例可以是控制的结束。另外地或另选地,一个实施方式在达到终止条件时产生最优控制策略,并且然后使用最优控制策略控制机器。
14.因此,一个实施方式公开了一种用于控制受到系统的连续状态空间中的状态约束并且受到所述系统的连续控制输入空间中的控制输入约束的机器的操作的装置,所述装置包括:存储器,所述存储器被配置为存储系统状态中的满足所述状态约束的约束容许不变
集cais和将所述cais内的系统状态映射到满足所述控制输入约束的控制输入的相应的控制策略,其中,具有所述cais内的状态的系统的根据所述相应的控制策略的控制保持所述cais内的系统状态;输入接口,该输入接口用于接受指示所述系统状态的数据;以及处理器,所述处理器被配置为联合控制所述机器并更新所述cais和所述控制策略,其中,对于执行联合控制和更新,所述处理器被配置为:使用所述控制策略控制所述系统收集包括使用所述控制策略生成的一系列控制输入以及所述cais内的与所述一系列控制输入相对应的一系列系统状态的数据;并且使用所收集的数据执行受约束策略迭代以更新所述cais和所述相应的控制策略,其中,为了执行所述受约束策略迭代,所述处理器被配置为:执行受约束策略评估以产生更新后的cais和相应的系统状态的更新后的值函数,其中,所述更新后的值函数改进所述机器的操作的成本函数,并且所述更新后的cais强制满足所述状态约束和所述控制输入约束;并且执行受约束策略改进以产生更新后的控制策略,所述更新后的控制策略根据所述更新后的cais和相应的更新后的值函数改进了操作的成本函数。
15.另一实施方式公开了一种用于控制受到系统的连续状态空间中的状态约束并受到所述系统的连续控制输入空间中的控制输入约束的机器的操作的方法,其中,所述方法使用联接到存储器的处理器,所述存储器存储有系统状态中的满足所述状态约束的约束容许不变集cais和将所述cais内的系统状态映射到满足所述控制输入约束的控制输入的相应的控制策略,其中,具有所述cais内的状态的系统根据所述相应的控制策略的控制保持所述cais内的系统状态,其中,所述处理器与所存储的实现所述方法的指令结合,其中,当由所述处理器执行所述指令时,执行所述方法的至少一些步骤,所述步骤包括:接受指示所述系统状态的数据;以及使用所述控制策略控制所述系统收集包括使用所述控制策略生成的一系列控制输入以及所述cais内的与所述一系列控制输入相对应的一系列系统状态的数据;以及使用所收集的数据执行受约束策略迭代以更新所述cais和所述相应的控制策略,其中,所述受约束策略迭代包括:执行受约束策略评估以产生更新后的cais和相应的所述系统状态的更新后的值函数,其中,所述更新后的值函数改进了所述机器的操作的成本函数,并且所述更新后的cais强制满足所述状态约束和所述控制输入约束;以及执行受约束策略改进以产生更新后的控制策略,所述更新后的控制策略根据所述更新后的cais和相应的更新后的值函数改进了操作的成本函数。
16.又一实施方式公开了一种非暂时性计算机可读存储介质,在所述非暂时性计算机可读存储介质上包含有能够由处理器执行的用于执行方法的程序,其中,所述介质存储系统状态中的满足状态约束的约束容许不变集cais和将所述cais内的系统状态映射到满足控制输入约束的控制输入的相应的控制策略,其中,具有所述cais内的状态的系统根据所述相应的控制策略的控制保持所述cais内的系统状态,所述方法包括:接受指示所述系统状态的数据;以及使用所述控制策略控制所述系统以收集包括使用所述控制策略生成的一系列控制输入以及与所述一系列控制输入相对应的所述cais内的一系列系统状态的数据;以及使用所收集的数据执行受约束策略迭代以更新所述cais和所述相应的控制策略,其中,所述受约束策略迭代包括:执行受约束策略评估以产生更新后的cais和相应的所述系统状态的更新后的值函数,其中,所述更新后的值函数改进了所述机器的操作的成本函数,并且所述更新后的cais强制满足所述状态约束和所述控制输入约束;以及执行受约束策略改进以产生更新后的控制策略,所述更新后的控制策略根据所述更新后的cais和相应的更
新后的值函数改进了操作的成本函数。
附图说明
17.[图1]
[0018]
图1是根据本发明的一些实施方式的数据驱动受约束控制器和反馈系统的框图。
[0019]
[图2a]
[0020]
图2a是根据一些实施方式的使用cpu处理器和存储器实现的数据驱动控制器以及反馈系统的框图。
[0021]
[图2b]
[0022]
图2b是根据一些实施方式的为机器定义的状态约束和控制输入约束以及这些约束的数学描述的示意图。
[0023]
[图3]
[0024]
图3是描述根据一些实施方式如何使用旧数据获得与初始可行控制策略相对应的初始约束容许不变集(cais)的示意图。
[0025]
[图4a]
[0026]
图4a是例示了根据一些实施方式的使用cais的约束容许性的示意图。
[0027]
[图4b]
[0028]
图4b是例示了根据一些实施方式的使用cais的约束容许性的示意图。
[0029]
[图5a]
[0030]
图5a是例示了根据一些实施方式的在受约束策略迭代算法中涉及的高级步骤的流程图。
[0031]
[图5b]
[0032]
图5b是详细说明根据一些实施方式的使用数据以顺序方式更新cais和控制策略的关键步骤的流程图。
[0033]
[图5c]
[0034]
图5c是详细说明根据一些实施方式的使用数据以并行方式更新cais和控制策略的关键步骤的流程图。
[0035]
[图6]
[0036]
图6是根据一个实施方式的用于经由扰动信号发生器添加探索噪声的框图。
[0037]
[图7]
[0038]
图7是根据一些实施方式的利用基于模型的方法和数据驱动方法的比较经由半定规划更新cais的约束策略评估步骤的描述。
[0039]
[图8]
[0040]
图8是根据一个实施方式的描述经由具有回溯的递归最小二乘法的迭代策略改进的伪码。
[0041]
[图9]
[0042]
图9是根据一些实施方式的数据驱动约束策略迭代的伪码。
[0043]
[图10a]
[0044]
图10a是展示根据一些实施方式的受约束策略迭代中的递归约束实施和经典策略
迭代中的约束违反的示意图。
[0045]
[图10b]
[0046]
图10b是根据一些实施方式的受约束策略迭代如何能够导致作为原始cais的收缩、扩展和/或旋转的更新后的cais的图示。
[0047]
[图11a]
[0048]
图11a是根据一些实施方式的如何能够使用不同的优化框架来解决受约束策略迭代的图示。
[0049]
[图11b]
[0050]
图11b是根据一些实施方式的如何能够使用递归或以滑动窗口方法进行用于受约束策略评估的数据收集的示意图。
[0051]
[图12a]
[0052]
图12a是包括采用一些实施方式的原理的数据驱动控制器的车辆的示意图。
[0053]
[图12b]
[0054]
图12b是采用一些实施方式的原理的数据驱动控制器与根据一些实施方式的车辆1201的控制器之间的交互的示意图。
[0055]
[图13]
[0056]
图13是使用采用一些实施方式的原理的数据驱动控制器来控制机电马达的马达驱动器的框图。
具体实施方式
[0057]
一些实施方式的目的是提供一种使用数据驱动状态反馈最优控制器来控制机器的操作的系统和方法。一些实施方式的另一个目的是提供一种适合于控制受到约束的机器的控制器。这种数据驱动最优控制器的示例使用受约束近似动态规划(adp)来基于受控机器运行期间获得的数据确定受约束控制策略。基于adp的自适应控制迭代地执行。为简明起见,本公开讨论了一次迭代中的方法,只要控制应用需要,就可以重复该方法。
[0058]
图1示出了根据一些实施方式的由数据驱动控制器110控制的受控机器(诸如,机器120)的示例。在一些实现方案中,数据驱动控制器使用强化学习方法,该强化学习方法根据在机器120的操作期间获得的数据102执行近似动态规划。控制器包括输入接口以接受指示机器状态的数据102。输入接口的示例包括被配置为接受通过有线或无线通信信道传输的数据的网络控制接口。数据102可以包括在先前和当前控制策略的情况下的先前和当前约束容许不变集(cais)以及在当前时间获得或从先前时间存储的状态121、输出103和/或控制输入111。
[0059]
状态121可以包括测量结果103以及由状态估计器130执行的测量结果的变换。状态估计器的示例包括:当完全状态反馈可用时系统中的恒等函数i(x)=x或者具有低通滤波器的近似微分器,以估计输出的导数,根据该输出的导数可以针对状态是输出的倒数的导数获得状态估计;例如,考虑系统位置的输出,其中,状态是位置、速度和加速度(位置的导数)。
[0060]
机器和控制系统被设计成满足由安全考虑、物理限制和/或规范引起的约束104,这限制了输出、输入以及还可能的允许操作的机器状态的范围。在连续空间中定义约束
104。例如,状态约束在机器的连续状态空间中定义,控制输入约束在连续控制输入空间中定义。
[0061]
在操作期间,控制器接收指示机器的期望行为的命令101。该命令可以包括例如由机器产生的期望扭矩的值。响应于接收到命令101,控制器生成控制信号111,该控制信号111用作机器120的控制输入。响应于输入111,机器更新机器的输出103。基于机器的输出103的测量结果,估计器130更新机器的估计状态121。机器的估计的状态121向控制器110提供状态反馈。
[0062]
如本文所用,机器120是可以由输入信号(输入)控制的任何装置。输入信号可以与物理量(诸如,电压、压力、力等)相关联。机器产生输出信号(输出)。输出可以表示机器的运动,并且可以与其他物理量(诸如,电流、流量、速度、位置)相关联。通常,输出与部分或全部先前输出信号有关,以及与部分或全部先前和当前输入信号有关。然而,由于机器在其操作期间的约束,所输出的机器的运动可能无法实现。输入和输出由控制器处理。
[0063]
机器120的操作可以通过一组方程进行建模,这些方程表示作为当前和先前输入以及先前输出的函数的输出随时间的变化。在操作期间中,可以通过机器状态来定义机器。机器状态是任何一组信息,通常是随时间变化的,与模型和未来输入一起可以定义未来的运动。例如,机器状态可以包括当前和过去输入和输出的适当子集。
[0064]
控制器110可以以硬件或作为在处理器(例如,微处理器)中执行的软件程序来实现,该处理器以固定或可变的控制周期采样间隔接收估计的机器120的状态121和期望的运动命令101,并使用该信息确定用于操作机器的输入(例如,控制信号111)。估计器130可以以硬件或作为在处理器(与控制器110相同或不同的处理器)中执行的软件程序来实现,该处理器以固定或可变的控制周期采样间隔接收机器的输出103,并使用新的和先前的输出测量结果确定所估计的机器的状态121。
[0065]
图2a示出了根据一些实施方式的控制器的框图。控制器110致动机器120,使得所估计的机器120的状态121和输出103遵循命令101。控制器110包括计算机或由计算机操作,例如,以连接到用于存储关于机器的操作的数据215和约束213的存储器211的单个中央处理单元(cpu)或多个cpu处理器201的形式。该存储器211还被配置为存储机器状态中的满足状态约束的约束217容许不变集(cais)和将cais内的机器状态映射到满足控制输入约束的控制输入的相应的控制策略,使得具有cais内状态的机器根据相应的控制策略的控制维持cais内的机器状态。
[0066]
一些实施方式考虑动力学机器
[0067]
x
t+1
=ax
t
+bu
t

ꢀꢀꢀ
(1)
[0068]
其中,是时间索引,是机器状态,是控制输入,以及是已知的机器初始状态。在一些实施方式中,约束集和是凸的、紧凑的并且在它们的内部包含原点。矩阵a表示受控机器的状态矩阵,而矩阵b表示致动/输入矩阵。状态矩阵只将状态更新与当前状态相关联,并且输入矩阵只将状态更新与当前控制输入相关联;同时,他们描述了整个机器,如等式(1)。矩阵a是未知的,而b是已知的。例如,在马达驱动机器中,马达动力学模型a可能是未知的,而通过电压通道b进行控制的知识是已知的。
[0069]
adp的目标是计算最优控制策略k

,使得状态反馈控制器u=k

x稳定部分已知机器(1),同时最小化成本函数
[0070][0071]
其中,q≥0和r>0是用户定义的对称矩阵,其中,对(a,q
1/2
)是可观察的。最优控制理论指出,最小化由给出的值函数会为每个时刻t≥t0产生最优控制动作,并且对于离散时间线性机器(诸如,上述(1)),这等效于找到一个正定对称矩阵p

,从而求解离散时间代数黎卡提方程(algebraic riccati equation)(dare)
[0072]
a
t
p

a

p

+q

a
t
p

b(r+b
t
p

b)
‑1b
t
p

a=0
ꢀꢀꢀ
(3)
[0073]
在求解p

时,最优无约束离散时间最优控制策略由下式给出
[0074]
k



(r+b
t
p

b)
‑1b
t
p

a。
ꢀꢀꢀ
(4)
[0075]
由于a是未知的,直接从(3)和(4)计算p

或k

是不切实际的。相反,adp可以用于使用在线数据在无需了解机器的完整模型的情况下迭代地学习最优策略。adp技术包括策略迭代(pi)和价值迭代(vi)。在第t次迭代时,无约束pi方法迭代地使用值函数矩阵p
t
和当前控制策略k
t
以求解策略评估步骤
[0076][0077]
和策略改进步骤
[0078]
k
t+1


(r+b
t
p
t+1
b)
‑1b
t
p
t+1
a。
ꢀꢀꢀ
(6)
[0079]
以生成一系列控制策略所述一系列控制策略在没有约束的情况下渐近地收敛到真正的最优控制策略k

。由于pi与值迭代(vi)之间的相似性,本公开集中于pi方法,但是本领域技术人员将容易地认识到在没有约束的情况下一些实施方式对vi方法的扩展。本领域技术人员还能够容易地以数据驱动的方式实施无约束策略迭代步骤(5)和(6)。然而,与无约束策略迭代相比,在连续状态和控制输入空间中将约束实施到pi方法中是众所周知的困难,并且是本公开的主题。
[0080]
为此,一些实施方式使用受约束策略迭代方法,该受约束策略迭代方法在当前和未来时间步骤实施状态和输入约束。受约束策略迭代是受约束策略评估和受约束策略改进的组合。受约束策略评估包括在满足状态约束和控制输入约束同时,仅使用在先前时间步骤中获得的测量数据,更新值函数(例如,通过在当前时间t优化值函数矩阵p
t
)。
[0081]
一些实施方式执行受约束策略评估以产生相应的机器状态的更新后的值函数和更新后的cais,其中,更新后的值函数改进机器的操作的成本函数,并且更新后的cais强制满足状态约束和控制输入约束。与无约束策略评估相比,受约束策略评估旨在满足约束,并且还旨在确定和/或改进cais,使得随后的受约束策略改进可以考虑更新后的cais来改进控制策略。
[0082]
一些实施方式是基于如下认识的:虽然可以从机器的操作成本的角度来判断值函数的改进,但可以从cais的大小的角度来判断cais的改进。换句话说,一些实施方式旨在迭代地增加cais的大小。
[0083]
为此,在一些实施方式中,受约束策略评估执行多目标优化以使机器操作的成本函数最小化并且使更新后的cais的大小度量最大化,以产生更新后的cais和相应的更新后的值函数。以这种方式,改进的(例如,增加的)cais在控制其状态在cais内的机器以保证满足约束的同时允许增加控制策略向最优控制的收敛。
[0084]
另外,受约束策略改进包括获得约束容许控制策略,该约束容许策略优化在受约束策略评估步骤中获得的更新后的值函数。一些实施方式执行受约束策略改进以产生更新后的控制策略,该更新后的控制策略根据更新后的cais和相应的更新后的值函数改进了操作的成本函数。例如,一些实施方式确保更新后的控制策略是线性的并且满足取决于更新后的cais的矩阵不等式。
[0085]
图2b示出了根据一些实施方式的由控制器实施的约束213的示意图。约束213包括在机器120的状态的连续空间中定义的状态约束和在机器120的控制输入的连续空间中定义的控制输入约束示例性约束213可以由多面体集222表示。在任何固定线性控制策略u=kx的情况下,多面体约束集222使用紧凑表示232来表示。在表示222和232中,设置c
i
=0暗示了第i个约束仅是对控制输入的约束,而设置d
i
=0暗示了第i个约束仅是对机器状态的约束。在一个示例性实施方式中,约束213包括状态约束和控制输入约束二者。
[0086]
图3示出了根据一些实施方式的用于控制机器的控制器300的框图,该机器受到机器的连续状态空间中的状态约束并且受到机器的连续控制输入空间中的控制输入约束。控制器300可以具有将机器300与其他机器和设备连接的多个接口。网络接口控制器350适于通过总线306将控制器300连接到连接控制器300与受控机器120的网络390。为此,控制器包括输出接口(例如,控制接口370),该输出接口被配置为通过网络390将一系列控制输入375提交给机器120,并且包括输入接口(例如,网络接口控制器(nic)350),该输入接口被配置为通过网络390接受指示机器120的状态的数据395。控制器300还可以包括其他类型的输入和输出接口。例如,控制器300可以包括人机界面310。人机界面310可以将控制器300连接到键盘311和指示设备312,其中,指示设备312可以包括鼠标、轨迹球、触摸板、操纵杆、指示杆、铁笔或触摸屏等。
[0087]
控制器300包括被配置为执行所存储的指令的处理器320以及存储可由处理器执行的指令的存储器340。处理器320可以是单核处理器、多核处理器、计算集群或任何数量的其他配置。存储器340可以包括随机存取存储器(ram)、只读存储器(rom)、闪存或任何其他合适的存储器机器。处理器320可以通过总线306连接到一个或更多个输入和输出设备。
[0088]
处理器320可操作地连接到存储指令以及由指令使用的处理数据的存储器存储装置330。存储装置330可以形成存储器340的一部分或可操作地连接到存储器340。例如,存储器存储装置可以存储机器120的状态约束和输入约束。另外地或另选地,存储器存储装置被配置为存储机器状态的满足状态约束的cais以及将cais内的机器的状态映射到满足控制输入约束331的控制输入的相应的控制策略。如本文所使用的,根据相应的控制策略对具有cais内的状态的机器的控制维持cais内的机器状态。
[0089]
处理器320被配置为联合控制机器并更新cais和控制策略。为此,为了执行联合控制和更新,处理器被配置为:执行控制生成器332以使用控制策略331控制机器以收集包括使用控制策略331生成的一系列控制输入375和与该一系列控制输入相对应的cais内的机器的一系列状态395的数据;并且执行受约束策略迭代求解器333以更新受到状态约束和输入约束的cais和控制策略。
[0090]
一些实施方式是基于以下认识的:如果机器的状态处于与任何任意次优控制策略相关联的任何任意次优cais中,并且该任意且次优cais满足状态约束,则在没有违反约束的危险的情况下利用该次优控制策略控制机器是安全的。一些实施方式是基于在这种次优
控制期间收集的数据可以用于改进次优cais和次优控制策略的认识的。此外,一些实施方式是基于由实验和数学证明支持的实现的,所述实验和数学证明使用一些rl原理的这种次优但安全的控制的迭代更新将渐近地收敛到用于控制受约束机器的最优控制策略,而不违反机器的约束并且无需了解机器的动力学模型。
[0091]
具体地,一些实施方式是基于对使用策略迭代的线性系统的rl方法的策略更新包括代数黎卡提方程(are)的迭代求解的认识的。这种求解可以用于改进控制策略,并且可以从机器控制期间收集的数据中找到。此外,一些实施方式是于如下认识的:可以基于对受控机器的约束来修改这样的are,以需要受到与状态和输入约束相关的约束的are的求解。受到约束的are在本文中称为受约束are,并且使用受约束are的策略迭代方法称为受约束策略迭代。该受约束are也可以使用在利用与次优cais相关联的次优控制策略的安全控制332期间收集的数据来迭代地求解333。并且受约束are的求解也可以用于改进次优cais和次优控制策略。改进的控制策略和改进的cais 331可以进一步用于机器的安全控制,并且从该改进的控制收集的数据可以进一步改进控制策略和cais。因此,利用与次优cais相关联的次优控制策略对机器进行迭代控制以及基于所收集的数据通过求解受约束are来更新次优控制策略和次优cais最终以保证安全的方式产生最优控制策略和最优cais。
[0092]
为此,从次优cais和控制策略开始的一些实施方式联合控制机器并更新cais和控制策略。例如,为了执行联合控制和更新,一些实施方式使用控制策略来控制机器以收集包括使用控制策略生成的一系列控制输入和与该一系列控制输入相对应的cais内的机器的一系列状态的数据,并使用所收集的数据通过求解受约束are来更新cais和控制策略。对are的约束是状态约束和控制输入约束的函数。
[0093]
一个实施方式被配置为重复联合控制和更新直到满足终止条件为止。终止条件的示例可以是控制的结束。另外地或另选地,一个实施方式在达到终止条件时产生最优控制策略,并且然后使用最优控制策略控制机器。
[0094]
图4a是示出一些实施方式使用的cais和相应的控制策略的原理的示意图。图4a示出了在由402中的p
t
和ρ
t
参数化的时刻t的容许状态空间411内的cais 401的示例。示例性闭环状态轨迹403包括使用在机器上提供控制输入375u
t
=k
t
x
t
,u
t+1
=k
t
x
t+1


的相应控制策略生成的状态x
t
,x
t+1
,x
t+2


395。当轨迹403的初始状态405在cais 401中时,状态轨迹403总是限于cais 401。
[0095]
图4b示出了根据一些实施方式的用于定义要在受约束策略迭代中使用的初始cais和初始可行控制策略k0的方法的框图。在一些实现方案中,从机器获得的传统状态和控制输入数据420与数据驱动不变集估计430一起使用,以便构建初始cais如本文所定义的,cais是在控制策略k
0 442下机器(1)的容许状态约束空间内的非空集,使得当且仅当对于每个初始条件所有后续时刻t≥t0的所有后续控制输入和所有后续状态而言,控制输入为u=k0x。传统数据的示例包括经由对开环或闭环设置中的机器的先前实验获得的来自机器的测量数据。先前实验的示例包括让人工操作员以小随机扰动测试机器并且手动实施约束、在脉冲/阶跃响应测试后仅使用信号的输出测量结果设计pid控制、或基于机器的低质量模型(例如,非线性系统的线性近
似)求解一组矩阵不等式。
[0096]
图5a是一些实施方式使用以更新cais并找到相应的约束容许控制策略的受约束策略迭代方法的框图。该方法依赖于利用cais 441和可行控制策略442的初始化501,并且因此在利用初始和随后更新的cais 441中的初始和随后更新的控制策略442以及初始状态和随后改变的状态(例如,状态405)控制机器期间收集数据511。在一个实施方式中,初始状态可以是机器的平衡状态或稳态,并且所收集的数据是机器的状态序列和相应的控制输入序列。在收集数据时,在受约束策略评估521中更新cais,并且控制策略在受约束策略改进541中被更新并被存储在存储器330中。这两个步骤一起构成了受约束策略迭代581。迭代地执行这些步骤直到满足学习收敛和/或终止条件551为止。对于每个后续迭代,从利用存储在存储器中的更新后的控制策略331控制的机器收集511数据。终止条件的示例包括机器控制的结束和最优控制策略的收敛。如果受约束策略迭代581收敛于最优控制策略,则在收敛后,利用最优控制策略561控制机器。
[0097]
图5b例示了根据一些实施方式的在第t个时刻的单个学习迭代。假设可行的cais和当前控制策略512已在先前迭代中计算出来;对于第一次迭代,它将是初始cais 441和初始控制策略442。通过利用当前控制策略512激励513机器来收集514数据。该数据用于求解515受约束策略评估问题,以更新当前控制策略可行但不是最优的cais。例如,受约束策略评估执行多目标优化,其中,多目标优化使受控机器的操作的成本函数、受控机器的稳定性和更新后的cais的大小度量中的一个或组合优化。
[0098]
因此,使用受约束策略改进迭代地更新516当前控制策略,以获得满足控制输入约束并收敛于在515中获得的更新后的cais的最优控制策略的一系列控制策略。控制策略更新包括收集机器测量数据514和回溯以找到可行的控制策略517。
[0099]
例如,一些实施方式是基于这样的认识的:可以基于在确保满足状态约束和控制输入约束的同时找到代数黎卡提方程的解来执行策略评估和/或策略改进。例如,一个实施方式执行策略评估以使代数黎卡提方程的关于受到状态约束和输入约束的值函数的违反最小化。另外地或另选地,一个实施方式执行约束策略改进以使用代数黎卡提方程的关于受到状态约束和输入约束的控制策略的违反的递归最小二乘最小化来更新控制策略。另外地或另选地,一些实施方式联合执行策略评估和改进以增加到最优控制策略的收敛。
[0100]
图5c示出了例示根据一些实施方式在第t个时刻的单个学习迭代的框图,其中,执行cais和控制策略582的联合更新。在联合更新中,受约束策略评估和策略改进步骤被合并,并且cais更新和控制策略更新可以通过求解单个约束优化问题而同时发生。如本文所使用的,执行联合更新以找到同时改进多个目标的解。这种联合更新可以与一个目标首先得到改进,而第二个目标针对固定的第一个目标而得到改进的多个目标的二选一或顺序更新形成对比。
[0101]
图6示出了根据一个实施方式的用于扰动控制信号的方法的示意图。该实施方式使用探索噪声来确保激励的持续性。例如,该实施方式对于状态为的机器经由当前控制策略611生成控制动作由扰动信号发生器641产生随机生成的小的探索噪声ν
t 651,该探索噪声被添加到控制输入621以构建实际控制信号给定方程(1)中的离散时间机器动力学,这些量之间的关系由下式给出:
[0102][0103]
因此,一些实施方式定义了
[0104]
以及
[0105]
使得
[0106][0107]
这里,小的探索噪声是由产生随机噪声的信号发生器641产生的,该随机噪声的分布具有有限支持,其中,该随机噪声的幅度不超过控制输入值扰动噪声的优点是确保机器的模式被持续地激发以改进学习。
[0108]
图7示出了通过一些实施方式解决的数据驱动受约束策略评估的示意图。实施方式求解了用于更新cais(对于一些正标量α1和α2)的数据驱动受约束策略评估问题以及准“基于模型”意义上的相应的等式/不等式,就好像机器的正确矩阵a和b是已知的一样,而实际上矩阵a是未知的。
[0109]
实施方式在离散时刻t
i
执行策略迭代,其中
[0110][0111]
表示所有策略迭代次数的集合。在策略迭代[t
i
,t
i+1
]之间获得的数据点的最小数量由下式给出:
[0112][0113]
也就是说,n表示任何学习周期中包含的数据点的最小数量。对于每个学习时刻实施方式将离散时间are重写为:
[0114][0115]
对于每个t∈{t
i
+1,t
i
+2,...,t
i+1
},p
+
表示更新后的值函数矩阵,该值函数矩阵使值函数参数化。有了相应的状态和控制输入数据以及已知矩阵q和r,本实施方式可以将上述等式改写为:
[0116][0117]
其中,
[0118][0119]
并且表示克罗内克积(kronecker product)。
[0120]
在一些实施方式中,受约束策略评估联合生成更新后的cais和相应的更新后的值函数,允许更新后的cais是当前cais的几何变换,其中,几何变换包括当前cais的扩展、收
缩和旋转中的一个或组合。受约束策略评估被配置为使用正则化器更新cais的形状和大小,该正则化器促进更新后的cais和相应的值函数的唯一性。
[0121]
例如,在持久激励条件下,实施方式可以在不知道a或b的情况下对上述作为受到p
+
>0以获得p
+
的约束的(正则化的)最小二乘问题进行求解。对于发生学习的时刻,新的值函数矩阵p
t+1
被设置为通过求解正则化最小二乘问题获得的p
+
。对于学习时刻之间的其他时刻,利用在前一学习周期中获得的值函数矩阵。
[0122]
在一个实施方式中,受约束策略评估701的正则化的成本函数等价于基于模型的成本函数702,其利用正则化方法促进优化器的唯一性。该正则化方法的一个实施方式包括通过经由ρ703选择cais的最佳水平集来优化cais的形状和大小。在约束711、721、731、741、751、761下使成本701最小化导致更新后的价值矩阵和由参数化的cais。成本函数以代数黎卡提方程(are)751展开,该are 751是基于模型的离散are 752以及条件741的左手侧的数据驱动的类似物,该条件741确保了p为正定的。找到使成本最小化的意味着对接近最优值函数矩阵p

的解的限制,因为它是are的唯一稳态解。通过满足约束711、721、731使约束满足成为可能。
[0123]
为此,在一些实施方式中,受约束策略评估执行多目标优化以使系统操作的成本函数701最小化并且使更新后的cais的大小度量最大化,以产生更新后的cais和相应的更新后的值函数。例如,多目标优化的一个目标是使代数黎卡提方程751的关于受到状态约束和输入约束的值函数的违反最小化。
[0124]
在一些实施方式中,状态约束和输入约束以与定义更新后的cais、更新后的值函数以及更新后的控制策略的参数有关的矩阵和向量不等式711、721、731、741和/或761中的一个或组合的形式强加在约束策略迭代上。在一些实现方案中,与参数有关的矩阵和向量不等式是所收集的数据的函数并且在迭代之间变化。
[0125]
例如,不等式711确保了值函数是收缩的,并且因此针对每个t≥t0不增加。这是来自基于模型的等价不等式712的证据,如果将基于模型的等价不等式712分别从左侧和右侧乘以和x
t
,则对于任何t,由于0<λ<1,将得到
[0126][0127]
因此,该不等式712是确保更新后的控制策略为闭环系统提供稳定性的要素。给定当前状态,尽管值函数更新,两个不等式711和731强制满足利用的当前策略的状态约束和输入约束。这是因为不等式711和731是不等式722和732的数据驱动的类似物,所述不等式722和732定义了通过强制当前状态位于更新后的cais中来实施状态约束的条件。条件741保证值函数矩阵是正定的,并且正标量ρ允许选择李雅普诺夫函数(lyapunov function)的子集和超级集。不等式761用于通过限制李雅普诺夫函数的收缩率来提供稳定性保证。
[0128]
一些实施方式将控制策略限制为线性,使得找到最优策略就等于找到策略改进优化问题的最小值(minimizer)k
t+1
[0129][0130]
其中,这是k中的二次优化问题,因为x
t
、q、r和p
t+1
都是窗口{t
i
+1,t
i
+2,...,t
i+1
}中的已知量。因此,策略改进步骤(如果有模型知识)将是
[0131][0132]
在一些实施方式中,只有矩阵b是已知的,控制策略更新的数据驱动的类似物需要当前策略,利用该当前策略收集另一批数据新策略是最小二乘问题的优化器
[0133][0134]
图8示出了根据一个实施方式的使用代数黎卡提方程的关于受到状态约束和输入约束的控制策略的违反的递归最小二乘最小化来更新控制策略的示意图。该实施方式的一个实现方案使用实时递归最小二乘(rls)框架求解上述最小二乘问题。根据一些实施方式,数据驱动受约束策略改进中的该步骤在确保约束满足的同时更新控制策略。以海赛矩阵(hessian matrix)ρi(其中,ρ>0)开始以确保非奇异性,海赛更新被示出在801中。相应的梯度更新811以数据驱动的方式执行,并且rls框架821中的控制策略更新涉及步长为β
t
>0(通常选择为1)的牛顿步(newton

step)。注意,递归最小二乘问题是在不了解模型a的情况下使用更新解决的。步长可以减小,即,(例如,基于回溯过程831)可以选择β
t
≤1,以对每个更新后的控制策略实施状态约束和输入约束。注意,801对应于秩

m矩阵更新,其中,m表示控制输入的数量。因此,可以使用sherman

morrison公式高效地更新其逆矩阵(例如,以m个秩

1个更新的形式)。当梯度小于阈值时,可以终止策略改进,例如,对于某些预先选择的阈值ε
g
>0为|g
t
|≤ε
g

[0135]
图9示出了根据一些实施方式的用于线性系统的数据驱动受约束自适应动态规划的方法的伪码。一般过程对应于一系列高级步骤:
[0136]
接受初始控制策略和相应的cais;
[0137]
在机器被持续激励的同时获得一系列至少t
i
+1个数据点,并且通过如图7所示求解约束策略评估问题计算由矩阵和标量ρ
t+1
定义的新椭球集;
[0138]
在每个时间步骤,执行约束策略改进步骤以结合用于实施状态约束和输入约束的回溯过程基于如图8所示的实时递归最小二乘法计算
[0139]
如果策略改进已经基于条件|g
t
|<ε
g
收敛,则返回(ii)。
[0140]
图10a例示了根据一些实施方式的受约束策略迭代的效用。该效用与无约束策略迭代形成对比。给定在允许状态空间内的初始cais 1001,受约束策略迭代1021构建更新后的cais 1002和可行控制策略,使得使用该更新后的控制策略1041的机器的闭环轨迹保持在容许状态空间1011内。相反,即使初始cais 1001是可行的,无约束策略迭代1031也不能确保约束满足,因为更新后的cais 1051能超过容许状态空间1011,从而导致更新后的控制策略1002违反约束的闭环轨迹。
[0141]
图10b示出了由不同实施方式使用的约束容许不变集的不同更新的示例。例如,一个实施方式使得能够进行约束容许不变集的扩展1011、收缩1014和旋转1013,以及它们的组合。这在参考跟踪中是有利的,例如,在状态接近状态约束的边界时需要更积极的控制器的情况下。不同的更新对于将这种方法应用于非线性系统也很有用,其中,(a,b)是全局非线性动力学的局部线性近似。
[0142]
另外地或另选地,一些实施方式允许椭球不变集基于局部矢量场来调整其大小和形状。例如,假设表示与受约束最优控制策略和最优值函数相关联的cais。此外,其关联的被包含在中的初始容许策略k0。然后实施方式生成一系列使得这些cais根据需要扩展、收缩和旋转,直到该一系列不变集收敛于最优cais为止。
[0143]
图11a示出了根据一些实施方式的使用半定规划执行受约束策略迭代的框图。一些实施方式是基于以下认识的:受约束策略迭代/adp 1101可以被提出为半定规划sdp 1111,该半定规划sdp 1111是可以在多项式时间内求解的凸优化问题。为此,一些实施方式使用将更新后的cais确定为当前cais的几何变换的半定规划(sdp)来求解约束策略评估的多目标优化。因此,在求解n
×
n个矩阵变量和o(n4)的存储器复杂度时,关于用于求解具有计算复杂度o(n6)的sdp的ipm的实现方案,可以降低计算复杂度。
[0144]
例如,一个实施方式使用内点方法(ipm)1121来实现sdp 1111。另一实施方式使用一阶优化方法1122(诸如,乘法器的交替方向方法(admm)),以进一步降低迭代复杂度和存储器需求,即使这些方法在实践中通常需要更多的迭代。注意,相反,策略改进步骤在计算上很便宜,因为海赛矩阵的低秩更新技术和矩阵向量乘法都可以以复杂度o(n2m2)执行,该复杂度与策略矩阵k的维度成二次方缩放。另一实施方式可以使用平方和(sos)规划1112来扩展到非线性系统。
[0145]
图11b示出了根据一些实施方式的用于指示受控机器的状态的数据收集的方法。在这些实施方式中,还使用递归最小二乘型实现方案1131或以后退水平/滑动窗口方式1141计算用于策略评估步骤的数据收集1151。在rls公式中,每个数据点导致以在线方式801、811、821更新优化变量。在后退水平/滑动窗口方法中,(取决于所选窗口的长度)与先前数据点结合的每个数据点分批贡献以确保秩条件,使得数据驱动回归问题具有解(参见图7)。然而,考虑到在sdp公式中处理线性矩阵不等式的计算复杂度,对于严格定时要求下的实时可行控制应用,如在一个实施方式中的批类型方法通常将是优选的。
[0146]
图12a示出了包括采用一些实施方式的原理的数据驱动约束控制器1202的车辆1201的示意图。如本文所用,车辆1201可以是任何类型的轮式车辆,诸如,客车、公共汽车或漫游车。另外,车辆1201可以是自主或半自主车辆。例如,一些实施方式控制车辆1201的运动。运动的示例包括由车辆1201的转向系统1203控制的车辆的横向运动。在一个实施方式中,转向系统1203由控制器1202控制。另外地或另选地,转向系统1203可以由车辆1201的驾驶员控制。
[0147]
车辆还可以包括发动机1206,该发动机1206可以由控制器1202或车辆1201的其他部件控制。车辆还可以包括一个或更多个传感器1204以感测周围环境。传感器1204的示例包括测距仪、雷达、激光雷达和相机。车辆1201还可以包括一个或更多个传感器1205以感测其当前运动量和内部状态。传感器1205的示例包括全球定位系统(gps)、加速度计、惯性测
量单元、陀螺仪、轴旋转传感器、扭矩传感器、偏转传感器、压力传感器和流量传感器。传感器向控制器1202提供信息。车辆可以配备有收发器1206,通过有线或无线通信信道启用控制器1202的通信能力。
[0148]
图12b是根据一些实施方式的数据驱动控制器1202与车辆1201的控制器1200之间的交互的示意图。例如,在一些实施方式中,车辆1201的控制器1200是控制车辆1201的旋转和加速度的转向控制器1210和制动/节流控制器1220。在这种情况下,数据驱动控制器1202向控制器1210和1220输出控制输入以控制车辆的状态。控制器1200还可以包括高级控制器,例如,进一步处理预测控制器1202的控制输入的车道保持辅助控制器1230。在这两种情况下,控制器1200映射使用预测控制器1202的输出来控制车辆的至少一个致动器(例如,车辆的方向盘和/或制动器),以便控制车辆的运动。车辆机器的状态x
t
可以包括位置、方向和纵向/横向速度;控制输入u
t
可以包括横向/纵向加速度、转向角和发动机/制动扭矩。对该系统的状态约束可以包括车道保持约束和障碍回避回避约束。控制输入约束可以包括转向角约束和加速度约束。所收集的数据可以包括位置、方向和速度曲线、加速度、扭矩和/或转向角。
[0149]
图13示出了根据一个实施方式的用于控制马达的控制系统的框图。数据驱动控制器1303以初始稳定输出反馈控制策略开始,通过各种实施方式采用的过程获得输出反馈最优控制策略。参考通量和速度1312在1301中生成并被发送到马达控制器1303。马达控制器从存储器1302检索可执行代码并根据使用马达输出1313的估计器1309在每个采样时间确定估计状态;根据通过受约束策略改进获得的控制策略产生控制命令;基于由1306在多个时刻估计的一系列马达状态1307求解受约束策略评估,并迭代以获得最优控制策略。马达控制器向逆变器1305输出控制命令,该控制命令在一个实施方式中代表优选的三相ac电压,该逆变器1305随后向感应马达1306产生三相电压1310。在一个实施方式中,输出1313包括定子绕组中的电流和转子速度。感应马达的状态x
t
可以包括定子磁通(stator flux)、线电流(line current)和转子速度。控制输入u
t
可以包括逆变器激励电压。对输入电压的约束用作输入约束,并且对定子磁通、转子速度和线电流的约束用作状态约束。
[0150]
本发明的上述实施方式可以以多种方式中的任何一种来实现。例如,可以使用硬件、软件或其组合来实现实施方式。当以软件实现时,软件代码可以在任何合适的处理器或处理器集合上执行,无论是在单个计算机中提供还是分布在多台计算机中。这种处理器可以被实现为集成电路,且在集成电路组件中具有一个或更多个处理器。但是,可以使用任何合适格式的电路来实现处理器。
[0151]
另外,本文概述的各种方法或过程可以被编码为可在采用多种操作系统或平台中的任一者的一个或更多个处理器上执行的软件。另外,这种软件可以使用多种合适的编程语言和/或编程或脚本工具中的任何一种来编写,并且还可以被编译为在框架或虚拟机上执行的可执行机器语言代码或中间代码。通常,程序模块的功能可以根据需要在各种实施方式中组合或分布。
[0152]
另外,本发明的实施方式可以被体现为一种方法,已经提供了该方法的示例。作为该方法的一部分执行的动作可以以任何合适的方式进行排序。因此,可以构造实施方式,其中,动作以不同于所示出的顺序执行,这可以还包括即使在示例性实施方式中被示为顺序动作,也可以同时执行一些动作。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1