CN110647042B - 一种基于数据驱动的机器人鲁棒学习预测控制方法 - Google Patents

一种基于数据驱动的机器人鲁棒学习预测控制方法 Download PDF

Info

Publication number
CN110647042B
CN110647042B CN201911095625.XA CN201911095625A CN110647042B CN 110647042 B CN110647042 B CN 110647042B CN 201911095625 A CN201911095625 A CN 201911095625A CN 110647042 B CN110647042 B CN 110647042B
Authority
CN
China
Prior art keywords
state
control
prediction
robot
learning
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201911095625.XA
Other languages
English (en)
Other versions
CN110647042A (zh
Inventor
张兴龙
陆阳
徐昕
刘嘉航
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
National University of Defense Technology
Original Assignee
National University of Defense Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by National University of Defense Technology filed Critical National University of Defense Technology
Priority to CN201911095625.XA priority Critical patent/CN110647042B/zh
Publication of CN110647042A publication Critical patent/CN110647042A/zh
Application granted granted Critical
Publication of CN110647042B publication Critical patent/CN110647042B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B13/00Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
    • G05B13/02Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
    • G05B13/04Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators
    • G05B13/042Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric involving the use of models or simulators in which a parameter or coefficient is automatically adjusted to optimise the performance

Landscapes

  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Feedback Control In General (AREA)
  • Manipulator (AREA)

Abstract

本发明公开了一种基于数据驱动的机器人鲁棒学习预测控制方法,通过数据驱动的方式来对系统的动力学进行辨识,将机器人的非线性特性抽象至高维线性空间,获得机器人系统的全局线性化模型;对机器人系统的原始状态量与控制量的取值范围进行收缩,并将收缩结果作为全局线性化模型的状态量与控制量的取值范围,在存在逼近残差情况下满足原始状态量与控制量的取值范围、并保持闭环控制的鲁棒性;基于全局线性化模型和高维线性空间中的状态变量来进行不断地滚动优化,学习得到机器人系统当前时刻的近似最优预测控制序列。其应用对象是动力学特性未知且不易获取和辨识、存在状态和控制量约束的一类系统为非线性的机器人,能够实现快速高效的闭环控制。

Description

一种基于数据驱动的机器人鲁棒学习预测控制方法
技术领域
本发明涉及一种机器人的鲁棒学习预测控制,尤其是动力学特性未知且不易获取和辨识、存在状态和控制量约束的一类系统为非线性的机器人的有效控制方法。
背景技术
目前在工业领域应用较为广泛的控制方法是模型预测控制(Model PredictiveControl,MPC),由于其理论的发展和在工业对象上的广泛应用而被引起关注。大多数经典的MPC算法都假设给定的模型是先验生成的,在这种情况下,辨识过程可以忽略不计。事实上,由于可能存在噪声数据集,或者采用了不合理的假设结构,精确模型描述的辨识问题,特别是对于未知非线性动力学而言,是比较棘手的。从辨识的角度考虑建模的不确定性,鲁棒MPC或者说是基于tube的MPC也可能会导致控制性能的保守和退化。
近年来,一种基于学习的MPC框架依赖于控制器参数的在线更新,如模型描述和系统约束,其降低保守性和提高控制性能的能力越来越受到人们的关注。很多工作都朝着这个新的方向发展。
强化学习(Reinforcement Learning,RL)和自适应动态规划(Adaptive dynamicprogramming,ADP)作为求解无限或有限时域的最优控制问题的一种替代方法,在过去的几十年也受到了显著的关注。不同于在线求解优化问题,RL和ADP感兴趣的是在不断试错的过程中通过值函数以及策略迭代来找到近似解,这两种方法适用于复杂且很难由最优控制方法(如精确动态规划,由于Hamilton-Jacobi-Bellman方程的非线性和存在状态约束)来进行求解。与MPC类似,对于高维控制问题,RL和ADP可能会面临计算复杂度和学习效率的问题,这也被称之为“维数灾难”。为了解决这一问题,自适应评价器设计(ACD)在很多工作中也都有研究,其中值函数和策略迭代被替换为Actor-Critic网络逼近结构。
现有的与学习控制相关的技术主要集中在各个专用领域的子系统实现,具体如下:与强化学习控制相关的研究内容相近的是发明专利“基于近似策略迭代的自适应巡航控制方法”,描述了一种基于近似策略迭代的自适应巡航控制方法,主要是使用近似策略迭代算法在样本上学习,得到一个近似最优策略,在巡航控制中在线优化PI控制器参数,即采用上述近似最优策略以数据驱动的方式去在线的优化PI控制器的参数,使巡航控制达到期望的性能。专利“一种基于自评价学习的车辆侧向跟踪控制方法”与“基于在线增量式DHP的双车协同自适应巡航控制方法”主要是基于自适应动态规划(ADP)方法中的对偶启发式动态规划(Dual heuristic programming,DHP)来对无人车辆进行控制。专利“基于在线学习模型技术的水下机器人预测控制系统及方法”是基于在线学习的预测模型模块预测输出与实际输出之间的偏差,对当前时刻内的基于在线学习的预测模型模块的预测输出进行修正,从而提高预测精度,便于高效控制,适应特定环境。专利“一种数据驱动的无人船强化学习控制器结构及设计方法”使用未知信息提取模块从收集到的数据信息中提取到无人船的动力学信息,将提取到的无人船未知动力学信息通过预测模型生成模块进行数据信息重构生成预测模型。最后通过滚动时域优化模块与奖励函数模块决策出最佳控制输入量给无人船。
针对实际的非线性动力学控制对象,考虑到建模时的不确定性,现有的经典的MPC控制方法一般采用鲁棒MPC或者基于tube的MPC进行处理,而这会导致在线计算量大以及控制性能的保守和退化。
基于学习的MPC框架依赖于控制器参数的在线更新,如模型描述和系统约束,其降低保守性和提高控制性能的能力越来越受到人们的关注。很多工作都朝着这个新的方向发展。但是也仍然存在计算负担大、妨碍在必须表现出快速闭环动力学的非线性系统中的应用、以及理论性质不完善等问题。
发明内容
针对现有技术中机器人系统动力学系统强非线性不易获取且本身不易辨识等问题,本发明提供一种基于数据驱动的机器人鲁棒学习预测控制方法,其应用对象是动力学特性未知且不易获取和辨识、存在状态和控制量约束的一类非线性系统机器人,跟上述的控制方法相比,能够实现快速高效的闭环控制。
为实现上述目的,本发明提供一种基于数据驱动的机器人鲁棒学习预测控制方法,包括以下步骤:
步骤1,基于数据驱动将机器人系统的非线性特性抽象至高维线性空间,得到机器人系统的全局高维线性化表示,即机器人系统的全局线性化模型;
步骤2,对机器人系统的原始状态量与控制量的取值范围进行收缩,并将收缩结果作为全局线性化模型的状态量与控制量的取值范围,以使得机器人系统在存在逼近残差情况下满足原始状态量与控制量的取值范围、并保持闭环控制的鲁棒性;
步骤3,基于全局线性化模型和高维线性空间中的状态变量来进行不断地滚动优化,学习得到机器人系统当前时刻的近似最优预测控制序列;
步骤4,根据当前时刻的近似最优预测控制序列得到实际控制率;
步骤5,将当前时刻的实际控制率应用于机器人系统以更新机器人系统,得到机器人系统下一时刻的状态量,然后对该状态量进行映射处理以将其更新至高维线性空间中的状态变量后重复步骤3-5。
进一步优选的,步骤2中,对机器人系统的原始状态量与控制量的取值范围进行收缩的具体过程为:
在机器人系统的原始状态量与控制量的取值范围分别减去鲁棒不变集后,将剩余的状态量与控制量的取值范围作为收缩结果。
进一步优选的,步骤3中,在滚动优化过程中,采用对数障碍函数来处理机器人系统的状态量和控制量约束,指导滚动优化中的权值更新。
进一步优选的,步骤3中,采用滚动时域增量式Actor-Critic结构进行滚动优化,所述滚动时域增量式Actor-Critic结构包括Actor网络和Critic网络,其中,Actor网络为执行网络,Critic网络为评价网络,滚动优化的具体过程为:
步骤3.1,初始化
设定每一时刻预测控制中的最大学习轮数为imax、每一时刻预测控制中每一轮学习时的预测时域为τ∈[k,…,k+N-1]、迭代变量为k、i,其中,k表示当前时刻,i表示预测控制中学习轮数;
设定Actor网络的权值为Wa(k)、Critic网络的权值为Wc(k);
步骤3.2,令k=1;
步骤3.3,令i=1、τ=k,即
Figure BDA0002268251550000031
Wa(k)=Wa(τ)、Wc(k)=Wc(τ),其中,s(k)表示机器人在k时刻的高维线性空间中的状态变量;
步骤3.4,Actor网络根据高维线性空间中的状态变量
Figure BDA0002268251550000032
得到机器人在第τ个预测时刻的控制率估计值
Figure BDA0002268251550000033
步骤3.5,根据控制率估计值
Figure BDA0002268251550000034
与高维线性空间中的状态变量
Figure BDA0002268251550000035
得到机器人在τ+1预测时刻的高维线性空间中的状态变量
Figure BDA0002268251550000036
步骤3.6,Critic网络根据高维线性空间中的状态变量
Figure BDA0002268251550000041
得到协状态变量的估计值
Figure BDA0002268251550000042
并进一步得到协状态变量的期望值
Figure BDA0002268251550000043
步骤3.7,根据协状态变量的估计值
Figure BDA0002268251550000044
得到机器人在τ预测时刻的控制率期望值
Figure BDA0002268251550000045
步骤3.8,在对数障碍函数的指导下根据Actor网络在τ预测时刻的权值Wa(τ)与控制率期望值
Figure BDA0002268251550000046
得到Actor网络在τ+1预测时刻的权值Wa(τ+1)、在对数障碍函数的指导下根据Critic网络在τ预测时刻的权值Wc(τ)与协状态变量的期望值
Figure BDA0002268251550000047
得到Critic网络在τ+1预测时刻的权值Wc(τ+1);
步骤3.9,令τ=τ+1后重复步骤3.4-3.9直至τ>k+N-1,得到机器人在完成第k时刻预测中初步控制序列:
Figure BDA0002268251550000048
Actor网络的权值序列Wa(k)~Wa(k+N-1)与Critic网络的权值序列Wc(k)~Wc(k+N-1),并将Actor网络的权值由Wa(k)更新为Wa(k+N-1)、Critic网络的权值由Wc(k)更新为Wc(k+N-1);
步骤3.10,判断i>imax是否成立,若是则输出当前得到的初步控制序列
Figure BDA0002268251550000049
作为机器人在k时刻的近似最优预测控制序列,否则令i=i+1后重复步骤3.4-3.10。
进一步优选的,步骤3.1中,所初始设定的Wa(k)与Wc(k)满足代价函数分别小于期望控制量和协状态变量约束的最大值的条件,即:
Figure BDA00022682515500000410
Figure BDA00022682515500000411
式中,
Figure BDA00022682515500000412
分别是设定的阈值、δa与δc分别表示Actor网络与Critic网络中带控制量约束的代价函数和协状态变量约束的代价函数,即:
Figure BDA00022682515500000413
Figure BDA00022682515500000414
式中,εa(τ)为控制量估计值逼近期望值所产生的残差,残差需要最小化,表示为
Figure BDA00022682515500000415
Qa是一个正定矩阵;εc(τ)为控制量估计值逼近期望值所产生的残差,残差需要最小化,表示为
Figure BDA00022682515500000416
Qc是一个正定矩阵;μ为权重标量值;
Figure BDA00022682515500000417
Figure BDA00022682515500000418
分别表示含有
Figure BDA00022682515500000419
Figure BDA00022682515500000420
的障碍函数。
进一步优选的,
步骤3.4中,得到控制率估计值
Figure BDA00022682515500000421
的过程为:
Figure BDA00022682515500000422
式中,
Figure BDA00022682515500000423
是权值矩阵,h(τ)是一个元素为基函数的向量:
Figure BDA00022682515500000424
式中,
Figure BDA00022682515500000425
表示在τ预测时刻Actor网络的隐含层状态输入。
步骤3.5中,得到高维线性空间中的状态变量的估计值
Figure BDA00022682515500000426
的过程为:
Figure BDA0002268251550000051
进一步优选的,步骤3.6中,
得到协状态变量的估计值
Figure BDA0002268251550000052
的过程为:
Figure BDA0002268251550000053
式中,
Figure BDA0002268251550000054
是权值矩阵,τ∈[k+1,k+N-1],h(τ+1)是一个元素为tanh函数的向量;
Figure BDA0002268251550000055
式中,
Figure BDA0002268251550000056
表示在τ+1预测时刻Critic网络的隐含层状态输入;
得到协状态变量的期望值
Figure BDA0002268251550000057
的过程为:
Figure BDA0002268251550000058
式中,μ是权重标量,
Figure BDA0002268251550000059
Figure BDA00022682515500000510
分别表示含有机器人抽象状态变量、控制量估计值、以及终端约束状态的障碍函数;
步骤3.7中,得到控制率期望值
Figure BDA00022682515500000511
的过程为:
Figure BDA00022682515500000512
式中,R为正定的控制加权矩阵。
进一步优选的,步骤3.8中,
得到Actor网络在τ+1预测时刻的权值Wa(τ+1)的过程为:
Figure BDA00022682515500000513
式中,γτ是Actor网络的学习率;
得到Critic网络在τ+1预测时刻的权值Wc(τ+1)的过程为:
Figure BDA00022682515500000514
式中,βτ是Critic网络的学习率。
进一步优选的,步骤4具体包括:
判断当前时刻是否为第一个时刻的预测控制,若是则剔除该近似最优预测控制序列中的第一个控制率后保存该近似最优预测控制序列,并对该剔除的控制率进行误差反馈补偿以得到当前时刻的实际控制率并输出,否则,
判断当前时刻学习得到的近似最优预测控制序列是否满足递归可行性测试,若是则剔除该近似最优预测控制序列中的第一个控制率后保存该近似最优预测控制序列,并对该剔除的控制率进行误差反馈补偿以得到当前时刻的实际控制率并输出,否则,
在上一次保存的近似最优预测控制序列的尾部增加一个ks控制率,得到新的近似最优预测控制序列,剔除该近似最优预测控制序列中的第一个控制率后保存该近似最优预测控制序列,并对该剔除的控制率进行误差反馈补偿以得到当前时刻的实际控制率并输出。
进一步优选的,步骤4中,近似最优预测控制序列是否满足递归可行性测试的判断过程具体为:判断当前时刻学习得到的近似最优预测控制序列中的各控制率递归应用在全局线性化模型时,所得到的所有高维线性空间中的状态变量是否同时满足各预测时刻对应的状态可行集,其中,机器人系统在k时刻的所有预测时刻的状态可行集的获取过程为:
步骤4.1,获取机器人预测时域τ=k+N-1预测时刻的状态可行集,即终端状态可行集;
步骤4.2,根据τ=k+N-1预测时刻的状态可行集得到τ=k+N-2预测时刻的初步状态可行集,将τ=k+N-2预测时刻的初步状态可行集与总的状态可行集求交集,得到τ=k+N-2预测时刻的实际状态可行集;
步骤4.3,依次求解预测时域内所有预测时刻的初步状态可行集,并得到τ=k:k+N-1所有预测时刻的实际状态约束可行集。
本发明公开一种基于数据驱动的机器人鲁棒学习预测控制方法,通过数据驱动的方式来对系统的动力学进行辨识,将机器人的非线性特性抽象至高维线性空间,获得系统的全局线性化表示,即机器人系统的全局线性化模型;通过对机器人系统的原始状态量与控制量的取值范围进行收缩,并将收缩结果作为全局线性化模型的状态量与控制量的取值范围,以使得机器人系统在存在逼近残差情况下满足原始状态量与控制量的取值范围、并保持闭环控制的鲁棒性,并在全局线性化模型模型基础上提出一种基于滚动时域优化的强化学习算法,实现近似最优策略学习控制。其应用对象是动力学特性未知且不易获取和辨识、存在状态和控制量约束的一类系统为非线性的机器人,能够实现快速高效的闭环控制。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。
图1为本发明实施例中基于数据驱动的机器人鲁棒学习预测控制方法的流程示意图;
图2为本发明实施例中鲁棒学习预测控制框架的结构示意图;
图3为本发明实施例中采用本发明方法与MPC方法的状态和控制量的值的示意图;
图4为本发明实施例中采用本发明方法与DHP方法的状态和控制量的值的示意图;
图5为本发明实施例中采用本发明方法的Jx和Ju变化趋势图;
图6为本发明实施例中本发明方法的改善结果与MPC控制器的输出结果比较示意图。
本发明目的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明,本发明实施例中所有方向性指示(诸如上、下、左、右、前、后……)仅用于解释在某一特定姿态(如附图所示)下各部件之间的相对位置关系、运动情况等,如果该特定姿态发生改变时,则该方向性指示也相应地随之改变。
另外,在本发明中如涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
在本发明中,除非另有明确的规定和限定,术语“连接”、“固定”等应做广义理解,例如,“固定”可以是固定连接,也可以是可拆卸连接,或成一体;可以是机械连接,也可以是电连接,还可以是物理连接或无线通信连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系,除非另有明确的限定。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
另外,本发明各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本发明要求的保护范围之内。
如图1-2所示的一种基于数据驱动的机器人鲁棒学习预测控制方法,包括以下步骤:
步骤1,基于数据驱动将机器人系统的非线性特性抽象至高维线性空间,得到机器人系统的全局高维线性化表示,即机器人系统的全局线性化模型;
步骤2,对机器人系统的原始状态量与控制量的取值范围进行收缩,并将收缩结果作为全局线性化模型的状态量与控制量的取值范围,以使得机器人系统在存在逼近残差情况下满足原始状态量与控制量的取值范围、并保持闭环控制的鲁棒性;
步骤3,基于全局线性化模型和高维线性空间中的状态变量来进行不断地滚动优化,学习得到机器人系统当前时刻的近似最优预测控制序列;
步骤4,根据当前时刻的近似最优预测控制序列得到实际控制率;
步骤5,将当前时刻的实际控制率应用于机器人系统以更新机器人系统,得到机器人系统下一时刻的状态量,然后对该状态量进行映射处理以将其更新至高维线性空间中的状态变量后重复步骤3-5。
步骤1中,基于数据驱动指的是通过采集机器人系统的数据来将机器人系统的非线性特性抽象至高维线性空间。全局线性化模型是基于Koopman算子及其有限逼近获取的,在工业机器人应用领域,有些机器人本身是动力学特性未知且不易获取和辨识、存在状态和控制量约束的,如工业机器人,无人驾驶汽车等。在动力学特性未知时,引入Koopman算子及其有限逼近,从机器人的数据样本集中计算出控制系统的全局线性化模型,建立了全局线性化模型。实际任务中,要求控制方法能够处理机器人系统的状态和控制量约束,本发明的处理方式是在预测控制优化问题的代价函数和Actor-Critic结构中,将状态约束、控制量约束和终端状态约束转化为对数障碍函数的软约束形式,具体表示为连续可微的障碍函数乘以标量加权矩阵。
将机器人系统的非线性特性抽象至高维线性空间具体是:
定义机器人系统原始离散非线性系统为:
x(k+1)=f(x(k),u(k))
式中
Figure BDA0002268251550000081
其中x表示机器人系统的原始状态量,u表示机器人系统的原始控制量,
Figure BDA0002268251550000091
Figure BDA0002268251550000092
是在他们的内部包含原点的凸紧集,也即原始状态量跟控制量的可行集,分别表示原始状态量和控制量的取值范围。f是未知光滑的状态转移函数,在任意初始条件
Figure BDA0002268251550000093
开始,目标是让状态控制对(x(k),u(k))在k趋于无穷的时候能够到达原点。
非线性特性抽象至高维线性空间得到逼近模型:
Figure BDA0002268251550000094
式中
Figure BDA0002268251550000095
其中
Figure BDA0002268251550000096
表示抽象状态量,
Figure BDA0002268251550000097
表示抽象控制量。
Figure BDA0002268251550000098
是鲁棒不变集,Ω是收缩原始状态变量范围使得
Figure BDA0002268251550000099
的稳定反馈策略,
Figure BDA00022682515500000910
Figure BDA00022682515500000911
是终端约束集,通常被选作在稳定反馈策略下最大可容许不变集的一个子集。
全局线性化模型主要是为鲁棒学习预测控制方法提供线性的模型信息,获得在每一个预测时域内的多步预测模型,由Koopman算子及其近似的扩展动态模态分解(EDMD)实现。通过利用一组原始状态的标量观测值来定义一个新的高维状态或特征空间,并利用线性变换矩阵估计其演化。只要所选观测对象的维数足够大,线性映射的近似逼近可以理想地表示原始非线性动力学。在本发明的实际实现过程中,为了操作方便,在样本空间内和逼近误差允许的条件下构造有限维Koopman算子
Figure BDA00022682515500000912
的近似逼近,为预测时域内的每一轮学习控制提供线性的模型信息,全局线性化模型具体为:
Figure BDA00022682515500000913
式中,
Figure BDA00022682515500000914
是高维线性空间中的状态变量,Ns>>n,
Figure BDA00022682515500000915
是线性状态转移矩阵,
Figure BDA00022682515500000916
是输入映射矩阵,
Figure BDA00022682515500000917
是从特征映射到原始状态空间的矩阵,
Figure BDA00022682515500000918
是x的估计值。由于存在逼近误差,所以用于滚动优化中的全局线性化模型被表示为:
Figure BDA00022682515500000919
假定有M个数据集(z,z+),目标是得到有限维矩阵
Figure BDA00022682515500000920
用来逼近Koopman算子
Figure BDA00022682515500000921
其中Nk是产生的标量观测值的数量,也就是Φ的维度,使得
Figure BDA00022682515500000922
而其中δ就是逼近残差。逼近的目标是最小化残差δ,关于残差的处理,由于本实施例是在鲁棒控制的框架下解决的,因此本实施例使用的方法是解一个基于l2正则化的优化问题:
Figure BDA00022682515500000923
这里θ是一个正值,
Figure BDA00022682515500000924
是第j个数据集的样本,且是无穷维的。在实际应用过程中通常选一个Φ的特殊形式:
Figure BDA00022682515500000925
这里Nk=Ns+m,这样就可以解上述优化问题,通过求解到的矩阵K也就是[AB],最终实现对线性系统预测器∑的矩阵A和B的求解。矩阵C的求解是通过解下面的优化问题:
Figure BDA0002268251550000101
最终求得矩阵C。
步骤2中,对机器人系统的原始状态量与控制量的取值范围进行收缩的具体过程为:
在机器人系统的原始状态量与控制量的取值范围分别减去鲁棒不变集后,将剩余的状态量与控制量的取值范围作为收缩结果,过程如下:
Figure BDA0002268251550000102
式中,
Figure BDA0002268251550000103
为状态量的收缩结果,即全局线性化模型的状态量取值范围;
Figure BDA0002268251550000104
为机器人系统的原始状态量;
Figure BDA0002268251550000105
为控制量的收缩结果,即全局线性化模型的控制量取值范围;
Figure BDA0002268251550000106
为机器人系统的原始控制量;
Figure BDA0002268251550000107
为鲁棒不变集,其推导过程可参考文献“Mayne,David Q.,Maria M.Seron,and S.V.
Figure BDA00022682515500001014
″Robust model predictive control of constrained linear systems with boundeddisturbances.″Automatica 41.2(2005):219-224.”,因此本实施例中不做赘述。
步骤3中,采用滚动时域增量式Actor-Critic结构进行滚动优化,在滚动优化过程中采用对数障碍函数处理全局线性化模型的状态量约束和控制量约束,本实施中的约束即取值范围,因此这里全局线性化模型的状态量约束和控制量约束即步骤2中全局线性化模型的状态量取值范围与控制率取值范围;采用对数障碍函数处理状态量约束和控制量约束是把状态量约束和控制量约束转换成包含在代价函数中的对数障碍函数的软约束形式,具体表示为连续可微的障碍函数乘以标量加权矩阵,这样预测控制的优化问题就可以转换成只含模型等式约束问题:
Figure BDA0002268251550000108
式中
Figure BDA0002268251550000109
分别表示含有系统状态、控制量以及终端状态的对数障碍函数;式中
Figure BDA00022682515500001010
其中Q表示对状态的惩罚矩阵;式中R表示对控制量的惩罚矩阵;
Figure BDA00022682515500001011
为终端值函数,终端状态不变集可表示为
Figure BDA00022682515500001012
式中Z为对称正定矩阵,可表示为Z>FτZF,矩阵P是通过计算李雅普诺夫方程得到的:
Figure BDA00022682515500001013
式中K是一个反馈增益矩阵,使得F=A+BK是舒尔稳定的。
而由于加入了非线性障碍函数,常规的手段很难解析地求解出哈密顿-雅可比-贝尔曼(HJB)方程,而这时候就使用基于Actor-Critic强化学习算法的强化学习控制器实现近似最优控制。
滚动时域增量式Actor-Critic结构由Actor网络(执行器)和Critic网络(评价器)两部分组成,在滚动时域内进行近似最优策略学习,减少滚动时域内优化求解的计算量。以及包括基于障碍函数的状态量约束和控制量约束处理,主要是在滚动时域内的Actor-Critic设计结构中使用对数障碍函数来对状态量约束和控制量约束进行软处理,收缩约束的限制规模,减少学习过程中的失败次数。
滚动优化的具体过程为:
步骤3.1,初始化
设定每一时刻预测控制中的最大学习轮数为imax、每一时刻预测控制中每一轮学习时的预测时域为τ∈[k,…,k+N-1]、迭代变量为k、i,其中,k表示当前时刻,i表示预测控制中学习轮数;
设定Actor网络的收敛阈值为ka、Critic网络的收敛阈值为kc、Actor网络的权值为Wa(k)、Critic网络的权值为Wc(k);
其中,初始设定的Wa(k)与Wc(k)满足代价函数小于最大的预设值,即:
Figure BDA0002268251550000111
Figure BDA0002268251550000112
式中,
Figure BDA0002268251550000113
为初始设定的阈值,初始设定的权值Wa(k)与Wc(k)所计算出的代价函数应小于设定的阈值。式中Actor网络的代价函数δa与Critic网络的代价函数δc计算过程如下,即:
Figure BDA0002268251550000114
Figure BDA0002268251550000115
式中,εa(τ)为控制量估计值逼近期望值所产生的残差,残差需要最小化,表示为
Figure BDA0002268251550000116
Qa是一个正定矩阵;εc(τ)为控制量估计值逼近期望值所产生的残差,残差需要最小化,表示为
Figure BDA0002268251550000117
Qc是一个正定矩阵;式中
Figure BDA0002268251550000118
Figure BDA0002268251550000119
分别表示含有
Figure BDA00022682515500001110
Figure BDA00022682515500001111
的障碍函数。
本实施例中,障碍函数的值取决于其含有的变量,具体包括协状态变量、系统控制量与系统状态量。即:
在不考虑系统控制量与协状态变量时,若系统状态量在状态量可行集范围内,则障碍函数的值较小;若系统状态量不在状态量可行集范围内,则障碍函数的值较大;
在不考虑系统状态量与系统控制量时,若学习得到的协状态变量在协状态变量可行集范围内,则障碍函数的值较小;若学习得到的协状态变量不在协状态变量可行集范围内,则障碍函数的值较大;
在不考虑协状态变量与系统状态量时,若系统控制量在控制量可行集范围内,则障碍函数的值较小;若系统控制量不在控制量可行集范围内,则障碍函数的值较大。
其中,控制量可行集即步骤2中机器人系统原始控制量的取值范围;协状态变量可行集的获取步骤为:
步骤3.1.1,获取机器人在k时刻的预测时域内第τ=k+N-1预测时刻的协状态变量可行集;
步骤3.1.2,据τ=k+N-1预测时刻的状态约束集得到τ=k+N-2预测时刻的协状态变量可行集;
步骤3.1.3,依次根据当前预测时刻的协状态变量可行集得到上一预测时刻的协状态变量可行集,直至得到τ=k~τ=k+N-1所有预测时刻的协状态变量可行集;
步骤3.1.1中的终端协状态变量可行集的获取过程为:
Figure BDA0002268251550000121
式中,ΛK+N-1是终端协状态变量可行集,P为终端惩罚矩阵,
Figure BDA0002268251550000122
为终端状态可行集。
步骤3.1.3中,根据当前预测时刻的协状态变量可行集得到上一预测时刻的协状态变量可行集的过程为:
Figure BDA0002268251550000123
障碍函数的特性是在约束不满足的情况下,障碍函数的输出值会越来越大,为一正值,在满足约束条件的情况下,障碍函数的输出值会越来越小,为一负值;同时对数障碍函数梯度中心化处理,让障碍函数的值为0,保证了在原点附近的代价函数的值为0,本实施例中障碍函数的定义根据机器人的初始状态数据具体分为两种情况:
第一种情况中,对于任意变量
Figure BDA0002268251550000124
这里
Figure BDA0002268251550000125
是一个多面体,障碍函数定义为:
Figure BDA0002268251550000126
第二种情况中,对于任意变量
Figure BDA0002268251550000127
这里
Figure BDA0002268251550000128
是一个椭圆形,其中Z是一个对称正定矩阵,障碍函数定义为:
Figure BDA0002268251550000129
障碍函数梯度中心化处理。对障碍函数
Figure BDA00022682515500001210
梯度中心化处理,得到新的障碍函数B(z),
Figure BDA00022682515500001211
对于任意z,B(z)都是凸且可导的,且有B(0)=0。系统状态变量
Figure BDA00022682515500001212
和控制量
Figure BDA00022682515500001213
的障碍函数,状态和控制量的范围是多面体不变集;终端状态的障碍函数
Figure BDA00022682515500001214
终端状态的可行范围是椭圆形不变集。
步骤3.2,令k=1;
步骤3.3,令i=1、τ=k,即
Figure BDA0002268251550000131
Wa(k)=Wa(τ)、Wc(k)=Wc(τ),其中,s(k)表示机器人系统在第k时刻预测控制时,有逼近误差的全局线性化模型中高维线性空间中的状态变量,其中,有逼近误差的全局线性化模型指的是:
Figure BDA0002268251550000132
式中d(k)=δwN,δN是Actor-Critic网络结构学习到的近似最优控制率逼近最优策略的残差,δW是基于EDMD逼近原始非线性机器人系统的残差,vk是求解从观测量映射到原始状态空间的映射矩阵C的过程中的残差;
步骤3.4,Actor网络根据高维线性空间中的状态变量
Figure BDA0002268251550000133
得到机器人第k时刻预测中第i轮学习时在预测时刻τ的控制率估计值
Figure BDA0002268251550000134
得到控制率估计值
Figure BDA0002268251550000135
的过程为:
Figure BDA0002268251550000136
τ∈[k,k+N1]
式中,
Figure BDA0002268251550000137
是权值矩阵,h是一个元素为基函数的向量:
Figure BDA0002268251550000138
步骤3.5,根据控制率估计值
Figure BDA0002268251550000139
与高维线性空间中的状态变量
Figure BDA00022682515500001310
得到机器人第k时刻预测中第i轮学习时在τ+1预测时刻的高维线性空间中的状态变量的估计值
Figure BDA00022682515500001311
得到高维线性空间中的状态变量的估计值
Figure BDA00022682515500001312
的过程为:
Figure BDA00022682515500001313
步骤3.6,Critic网络根据高维线性空间中的状态变量的估计值
Figure BDA00022682515500001314
得到协状态变量的估计值
Figure BDA00022682515500001315
并进一步得到协状态变量的期望值
Figure BDA00022682515500001316
得到协状态变量的估计值
Figure BDA00022682515500001317
的过程为:
Figure BDA00022682515500001318
式中,
Figure BDA00022682515500001319
是权值矩阵,τ∈[k+1,k+N-1],h(τ)为元素是基函数的向量:
Figure BDA00022682515500001320
式中,
Figure BDA00022682515500001321
表示在τ+1时刻Critic网络的隐含层状态输入,得到协状态变量的期望值
Figure BDA00022682515500001322
的过程为:
Figure BDA0002268251550000141
式中,μ是权重标量,
Figure BDA0002268251550000142
Figure BDA0002268251550000143
分别表示含有机器人抽象状态变量、控制量估计值、以及终端约束状态的障碍函数;
步骤3.7,根据协状态变量的期望值
Figure BDA0002268251550000144
得到机器人第k时刻预测中第i轮学习时在τ预测时刻的控制率期望值
Figure BDA0002268251550000145
得到控制率期望值
Figure BDA0002268251550000146
的过程为:
Figure BDA0002268251550000147
式中,R为正定的控制加权矩阵;
步骤3.8,在对数障碍函数的指导下根据Actor网络在τ预测时刻的权值Wa(τ)与控制率期望值
Figure BDA0002268251550000148
得到Actor网络在τ+1预测时刻的权值Wa(τ+1)、在对数障碍函数的指导下根据Critic网络在τ预测时刻的权值Wc(τ)与协状态变量的期望值
Figure BDA0002268251550000149
得到Critic网络在τ+1预测时刻的权值Wc(τ+1);
得到Actor网络在τ+1预测时刻的权值Wa(τ+1)的过程为:
Figure BDA00022682515500001410
式中,γτ是Actor网络的学习率;
得到Critic网络在τ+1预测时刻的权值Wc(τ+1)的过程为:
Figure BDA00022682515500001411
式中,βτ是Critic网络的学习率。
步骤3.9,令τ=τ+1后重复步骤3.4-3.9直至τ>k+N-1,得到机器人在完成第k时刻预测中第i轮学习后的初步控制序列:
Figure BDA00022682515500001412
Actor网络的权值序列Wa(k)~Wa(k+N-1)与Critic网络的权值序列Wc(k)~Wc(k+N-1),并将Actor网络的权值由Wa(k)更新为Wa(k+N-1)、Critic网络的权值由Wc(k)更新为Wc(k+N-1);
步骤3.10,判断i>imax是否成立,若是则输出当前得到的初步控制序列
Figure BDA00022682515500001413
作为机器人在进行第k时刻预测控制后的初步控制序列,否则令i=i+1后重复步骤3.4-3.10。
步骤4具体包括:
判断当前时刻是否为第一个时刻的预测控制,若是则剔除该近似最优预测控制序列中的第一个控制率后保存该近似最优预测控制序列,并对该剔除的控制率进行误差反馈补偿以得到当前时刻的实际控制率并输出,否则,
判断当前时刻学习得到的近似最优预测控制序列是否满足递归可行性测试,若是则剔除该近似最优预测控制序列中的第一个控制率后保存该近似最优预测控制序列,并对该剔除的控制率进行误差反馈补偿以得到当前时刻的实际控制率并输出,否则,
在上一次保存的近似最优预测控制序列的尾部增加一个ks控制率,得到新的近似最优预测控制序列,剔除该近似最优预测控制序列中的第一个控制率后保存该近似最优预测控制序列,并对该剔除的控制率进行误差反馈补偿以得到当前时刻的实际控制率并输出。
其中,在上一次保存的近似最优预测控制序列的尾部增加一个ks控制率即基于tube的鲁棒控制方法在上一次保存的近似最优预测控制序列的尾部加载一个鲁棒控制器的输出控制动作,从而实现保留时域内的近似最优预测控制序列的完备性,即
Figure BDA0002268251550000151
其中,对被剔除的控制率进行误差反馈补偿的过程为:
Figure BDA0002268251550000152
式中s(k)是有逼近误差的线性模型抽象状态变量,
Figure BDA0002268251550000153
是无扰动误差的线性模型抽象状态变量。
步骤4中,近似最优预测控制序列是否满足递归可行性测试的判断过程具体为:判断当前时刻学习得到的近似最优预测控制序列中的各控制率递归应用在全局线性化模型时,所得到的所有高维线性空间中的状态变量是否同时满足各预测时刻对应的状态可行集,其中,机器人系统在k时刻的所有预测时刻的状态可行集的获取过程为:
步骤4.1,获取机器人预测时域τ=k+N-1预测时刻的状态可行集,即终端状态可行集;
步骤4.2,根据τ=k+N-1预测时刻的状态可行集得到τ=k+N-2预测时刻的初步状态可行集,将τ=k+N-2预测时刻的初步状态可行集与总的状态可行集求交集,得到τ=k+N-2预测时刻的实际状态可行集;
步骤4.3,依次求解预测时域内所有预测时刻的初步状态可行集,并得到τ=k:k+N-1所有预测时刻的实际状态约束可行集。
步骤3.1中,机器人在第k时刻中τ=k+N-1预测时刻的终端约束集的获取方式为:椭圆不变集
Figure BDA0002268251550000154
目标函数:
Figure BDA0002268251550000155
根据不变集中的李雅普诺夫稳定性条件,利用舒尔判据,将非线性不等式转化为LMI(线性矩阵不等式),最后求解出最优矩阵Z:具体可以参见论文Farina,Marcello,Xinglong Zhang,and RiccardoScattolini.″A hierarchical multi-rate MPC scheme for interconnected systems.″Automatica 90(2018):38-46。
步骤3.2中,总的状态可行集是根据机器人系统实际可以运行的状态范围预先设定的。
下面结合具体实施例对本发明进行说明
对于一个调节受迫Van der pol振荡器的问题,其连续时间系统模型为:
Figure BDA0002268251550000161
这里x1和x2分别代表位置和速度,u代表受迫输入,其连续时间系统的状态和控制量都是有限制的,即机器人系统的原始状态量与控制量的取值范围:
-2.5m≤x1≤2.5m,-2.5m/s≤x2≤2.5m/s,
-20m2/s≤u≤20m2/s
记x=(x1,x2),控制目标是状态量x回到原点,为了用本实施例所提出的学习预测控制方法对该系统实施控制,为了基于数据驱动,首先对该系统进行采样,采样时间是T=0.025s,离散化得到
Figure BDA0002268251550000162
数据集(z,z+)是采用随机策略,根据上述离散化的方程,采集了M=4·105个样本。在采集的过程中,不满足状态和控制可行集约束条件即不满足状态量约束和控制量约束的样本被去除。采用多项式核函数来构造升维观测状态变量,也就是
Figure BDA0002268251550000163
这里Ns=4。权值标量θ被设置为100。通过数据集(z,z+)计算得到全局线性化模型的线性状态转移矩阵A、系统输入映射矩阵B与从特征映射到原始状态空间的矩阵C,计算结果为:
Figure BDA0002268251550000164
B=[6·10-7 0.025 0.0001 0.052],
Figure BDA0002268251550000165
将状态惩罚矩阵Q和控制量惩罚矩阵R分别设置为Q=I2,R=0.01;障碍函数的惩罚系数μ=0.0001;松弛因子k设置为0.1。从而可以获得H矩阵,根据李雅普诺夫方程,可以计算出终端惩罚矩阵为
Figure BDA0002268251550000166
通过风险评估,统计获得基于EDMD线性逼近非线性系统过程中的逼近残差标量阈值参数ρw=0,离线训练的Actor-Critic结构的输出值与期望值的偏差阈值ρd为0.01,从特征映射到原始状态空间的矩阵C所产生的逼近残差阈值为0.001。
根据鲁棒预测控制框架,可以计算出鲁棒不变集的一个可能的保守选择,然后计算出终端状态约束集
Figure BDA0002268251550000167
Figure BDA0002268251550000168
其中
Figure BDA0002268251550000171
设定预测时域N=10,为了进行比较,设计了一个经典的MPC和一个基于学习预测器的无限时域增量式DHP方法对受迫Van der Pol振荡器的控制。在MPC中,阶段代价rc=xτQx+Ru2,终端惩罚矩阵Pc≥P,使用原始状态和控制量约束计算终端约束。DHP方法也采用了和提出的控制器相同的代价指标。所有三个控制器的初始条件都是x(0)=(0.1,-0.1),同时,权值矩阵Wa和Wc在本发明和DHP当中都是随机设置的,本发明和MPC方法都是在Matlab2019a中借助Yalmip工具箱实现的,计算机的配置:笔记本,英特尔内核i7-8550U CPU@1.8Ghz 1.99Ghz,win10操作系统。
本发明和MPC的控制结果如下图3-4所示,图3中虚线为本发明方法计算出来的值,实线为MPC计算出来的值;图3表明,提出的本发明方法的控制性能与MPC相比,在x1的调节方面有一定的差异,在x2和输入量上略差。图4中虚线为本发明方法计算出来的值,实线为DHP计算出来的值;而图4表明,本发明方法的控制性能要明显优于DHP。此外,调节成本和能量消耗的累计平方误差在表1中被统计,仿真步长Nsim=320。表1表明,本发明方法的调节成本要比MPC要稍微大一点,能量消耗(17.43),比MPC(1.91)要更多一些。然而,MPC在线计算的平均时间为0.1276s,这是要比采样时间更长的,这意味着在采取的环境下是不可用的。从这方面来看本发明方法更有优势,因为计算速度要比MPC快319倍。尽管DHP计算效率很高,但是其控制性能却近乎是灾难性的。此外在表1中还列出了100次实验和两种不同初始条件下学习成功率,两种初始条件下,本发明方法的成功率100%,要比DHP和MPC要高。
Algorithm J<sub>x</sub> J<sub>u</sub> A.c.t S.r.w x(0)=(0.1,-0.1) S.r.w x(0)=(1,-1)
r-LPC 0.55 17.43 0.004s 100/100 100/100
MPC 0.39 1.91 0.1276s - -
DHP 168.1 1434 0.002s 60/100 1/100
表1调节误差与计算误差的比较
(A.C.T代表“平均计算时间”,S.R.W代表“成功率”)
使用本发明方法的控制性能可以通过迭代的方式持续改进,其中在前一个实验的收敛权值Wa和Wc来用于后一个实验的初始化。为了显示持续学习能力,从随机初始化条件开始,在线控制过程重复5次,初始化使用之前收敛的权值,调节成本Jx和控制能量Ju的变化趋势如图5所示。图5结果表明,由于采用了初始化的策略,Jx和Ju的值在第二轮尝试的时候就减少了很多,且在后面轮数的尝试中几乎保持着一个常量,Jx=0.41和Ju=1.88非常接近MPC控制器。这表明,经过少量的训练实验,所提出的本发明方法可以显示出与MPC相比较的控制性能,且大大提高了在线计算效率。将第5次的仿真结果与MPC的控制结果展示在图6,其中虚线表示本实施例的仿真结果,视线表示MPC的仿真结果。结果表明,本发明方法略微超调的控制作用外,两种控制系统的趋势类似。
以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是在本发明的发明构思下,利用本发明说明书及附图内容所作的等效结构变换,或直接/间接运用在其他相关的技术领域均包括在本发明的专利保护范围内。

Claims (8)

1.一种基于数据驱动的机器人鲁棒学习预测控制方法,其特征在于,包括以下步骤:
步骤1,基于数据驱动将机器人系统的非线性特性抽象至高维线性空间,得到机器人系统的全局高维线性化表示,即机器人系统的全局线性化模型,其中,将机器人系统的非线性特性抽象至高维线性空间具体是:
定义机器人系统原始离散非线性系统为:
x(k+1)=f(x(k),u(k))
式中
Figure FDA0003557984700000011
其中x表示机器人系统的原始状态量,u表示机器人系统的原始控制量,
Figure FDA0003557984700000012
Figure FDA0003557984700000013
是在他们的内部包含原点的凸紧集;f是未知光滑的状态转移函数,在任意初始条件
Figure FDA0003557984700000014
开始,目标是让状态控制对(x(k),u(k))在k趋于无穷的时候能够到达原点;
非线性特性抽象至高维线性空间得到逼近模型:
Figure FDA0003557984700000015
式中
Figure FDA0003557984700000016
其中
Figure FDA0003557984700000017
表示抽象状态量,
Figure FDA0003557984700000018
表示抽象控制量,
Figure FDA0003557984700000019
是鲁棒不变集,Ω是收缩原始状态变量范围使得
Figure FDA00035579847000000110
的稳定反馈策略,
Figure FDA00035579847000000111
Figure FDA00035579847000000112
是终端约束集;
在样本空间内和逼近误差允许的条件下构造有限维Koopman算子
Figure FDA00035579847000000113
的近似逼近,为预测时域内的每一轮学习控制提供线性的模型信息,全局线性化模型具体为:
Figure FDA00035579847000000114
式中,
Figure FDA00035579847000000115
是高维线性空间中的状态变量,Ns>>n,
Figure FDA00035579847000000116
是线性状态转移矩阵,
Figure FDA00035579847000000117
是输入映射矩阵,
Figure FDA00035579847000000118
是从特征映射到原始状态空间的矩阵,
Figure FDA00035579847000000119
是x的估计值;由于存在逼近误差,所以用于滚动优化中的全局线性化模型被表示为:
Figure FDA00035579847000000120
假定有M个数据集(z,z+),目标是得到有限维矩阵
Figure FDA00035579847000000121
用来逼近Koopman算子
Figure FDA00035579847000000122
其中Nk是产生的标量观测值的数量,也就是Φ的维度,使得
Figure FDA00035579847000000123
而其中δ就是逼近残差;逼近的目标是最小化残差δ,关于残差的处理是解一个基于l2正则化的优化问题:
Figure FDA00035579847000000124
这里θ是一个正值,
Figure FDA00035579847000000125
是第j个数据集的样本,且是无穷维的;选一个Φ的特殊形式:
Figure FDA0003557984700000021
这里Nk=Ns+m,这样就可以解上述优化问题,通过求解到的有限维矩阵
Figure FDA0003557984700000022
也就是[A B],最终实现对全局线性化模型∑的矩阵A和B的求解;矩阵C的求解是通过解下面的优化问题:
Figure FDA0003557984700000023
最终求得矩阵C;
步骤2,对机器人系统的原始状态量与控制量的取值范围进行收缩,并将收缩结果作为全局线性化模型的状态量与控制量的取值范围;
步骤3,基于全局线性化模型和高维线性空间中的状态变量来不断地进行滚动优化,学习得到机器人系统当前时刻的近似最优预测控制序列;
步骤4,根据当前时刻的近似最优预测控制序列得到实际控制率;
步骤5,将当前时刻的实际控制率应用于机器人系统以更新机器人系统,得到机器人系统下一时刻的状态量,然后对该状态量进行映射处理以将其更新至高维线性空间中的状态变量后重复步骤3-5;
步骤3中,在滚动优化过程中,采用对数障碍函数来处理全局线性化模型的状态量约束和控制量约束,指导滚动优化中的权值更新;
步骤3中,采用滚动时域增量式Actor-Critic结构进行滚动优化,所述滚动时域增量式Actor-Critic结构包括Actor网络和Critic网络,其中,Actor网络为执行网络,Critic网络为评价网络,滚动优化的具体过程为:
步骤3.1,初始化
设定每一时刻预测控制中的最大学习轮数为imax、每一时刻预测控制中每一轮学习时的预测时域为τ∈[k,…,k+N-1]、迭代变量为k、i,其中,k表示当前时刻,i表示预测控制中学习轮数;
设定Actor网络的权值为Wa(k)、Critic网络的权值为Wc(k);
步骤3.2,令k=1;
步骤3.3,令i=1、τ=k,即
Figure FDA0003557984700000024
Wa(k)=Wa(τ)、Wc(k)=Wc(τ),其中,s(k)表示机器人在k时刻的高维线性空间中的状态变量;
步骤3.4,Actor网络根据第τ预测时刻高维线性空间中的状态变量
Figure FDA0003557984700000025
得到机器人在第τ个预测时刻的控制率估计值
Figure FDA0003557984700000026
步骤3.5,根据控制率估计值
Figure FDA0003557984700000027
与第τ预测时刻高维线性空间中的状态变量
Figure FDA0003557984700000028
得到机器人在τ+1预测时刻的高维线性空间中的状态变量
Figure FDA0003557984700000029
步骤3.6,Critic网络根据第τ+1预测时刻高维线性空间中的状态变量
Figure FDA00035579847000000210
得到协状态变量的估计值
Figure FDA00035579847000000211
并进一步得到协状态变量的期望值
Figure FDA00035579847000000212
步骤3.7,根据协状态变量的估计值
Figure FDA0003557984700000031
得到机器人在τ预测时刻的控制率期望值
Figure FDA0003557984700000032
步骤3.8,在对数障碍函数的指导下根据Actor网络在τ预测时刻的权值Wa(τ)与控制率期望值
Figure FDA0003557984700000033
得到Actor网络在τ+1预测时刻的权值Wa(τ+1)、在对数障碍函数的指导下根据Critic网络在τ预测时刻的权值Wc(τ)与协状态变量的期望值
Figure FDA0003557984700000034
得到Critic网络在τ+1预测时刻的权值Wc(τ+1);
步骤3.9,令τ=τ+1后重复步骤3.4-3.9直至τ>k+N-1,得到机器人在完成第k时刻预测中初步控制序列:
Figure FDA0003557984700000035
Actor网络的权值序列Wa(k)~Wa(k+N-1)与Critic网络的权值序列Wc(k)~Wc(k+N-1),并将Actor网络的权值由Wa(k)更新为Wa(k+N-1)、Critic网络的权值由Wc(k)更新为Wc(k+N-1);
步骤3.10,判断i>imax是否成立,若是则输出当前得到的初步控制序列
Figure FDA0003557984700000036
作为机器人在k时刻的近似最优预测控制序列,否则令i=i+1后重复步骤3.4-3.10。
2.根据权利要求1所述基于数据驱动的机器人鲁棒学习预测控制方法,其特征在于,步骤2中,对机器人系统的原始状态量与控制量的取值范围进行收缩的具体过程为:
在机器人系统的原始状态量与控制量的取值范围分别减去鲁棒不变集后,将剩余的状态量与控制量的取值范围作为收缩结果。
3.根据权利要求1所述基于数据驱动的机器人鲁棒学习预测控制方法,其特征在于,步骤3.1中,所初始设定的Wa(k)与Wc(k)满足代价函数分别小于期望控制量和协状态变量约束的最大值的条件,即:
Figure FDA0003557984700000037
Figure FDA0003557984700000038
式中,
Figure FDA0003557984700000039
分别是设定的阈值、δa与δc分别表示Actor网络与Critic网络中带控制量约束的代价函数和协状态变量约束的代价函数,即:
Figure FDA00035579847000000310
Figure FDA00035579847000000311
式中,εa(τ)为控制量估计值逼近期望值所产生的残差,残差需要最小化,表示为
Figure FDA00035579847000000312
Qa是一个正定矩阵;εc(τ)为控制量估计值逼近期望值所产生的残差,残差需要最小化,表示为
Figure FDA00035579847000000313
Qc是一个正定矩阵;μ为权重标量值;
Figure FDA00035579847000000314
Figure FDA00035579847000000315
分别表示含有
Figure FDA00035579847000000316
Figure FDA00035579847000000317
的障碍函数。
4.根据权利要求1所述基于数据驱动的机器人鲁棒学习预测控制方法,其特征在于,
步骤3.4中,得到控制率估计值
Figure FDA00035579847000000318
的过程为:
Figure FDA00035579847000000319
式中,
Figure FDA00035579847000000320
是权值矩阵,h(τ)是一个元素为基函数的向量:
Figure FDA0003557984700000041
式中,
Figure FDA0003557984700000042
表示在τ预测时刻Actor网络的隐含层状态输入;
步骤3.5中,得到第τ+1预测时刻高维线性空间中的状态变量
Figure FDA0003557984700000043
的过程为:
Figure FDA0003557984700000044
5.根据权利要求1所述基于数据驱动的机器人鲁棒学习预测控制方法,其特征在于,步骤3.6中,
得到协状态变量的估计值
Figure FDA0003557984700000045
的过程为:
Figure FDA0003557984700000046
式中,
Figure FDA0003557984700000047
是权值矩阵,τ∈[k+1,k+N-1],h′(τ+1)是一个元素为tanh函数的向量;
Figure FDA0003557984700000048
式中,
Figure FDA0003557984700000049
表示在τ+1预测时刻Critic网络的隐含层状态输入;
得到协状态变量的期望值
Figure FDA00035579847000000410
的过程为:
Figure FDA00035579847000000411
式中,μ是权重标量值,
Figure FDA00035579847000000412
Figure FDA00035579847000000413
分别表示含有机器人抽象状态变量、控制量估计值、以及终端约束状态的障碍函数;
步骤3.7中,得到控制率期望值
Figure FDA00035579847000000414
的过程为:
Figure FDA00035579847000000415
式中,R为正定的控制加权矩阵。
6.根据权利要求3所述基于数据驱动的机器人鲁棒学习预测控制方法,其特征在于,步骤3.8中,
得到Actor网络在τ+1预测时刻的权值Wa(τ+1)的过程为:
Figure FDA00035579847000000416
式中,γτ是Actor网络的学习率;
得到Critic网络在τ+1预测时刻的权值Wc(τ+1)的过程为:
Figure FDA00035579847000000417
式中,βτ是Critic网络的学习率。
7.根据权利要求1至6任一项所述基于数据驱动的机器人鲁棒学习预测控制方法,其特征在于,步骤4具体包括:
判断当前时刻是否为第一个时刻的预测控制,若是则剔除该近似最优预测控制序列中的第一个控制率后保存该近似最优预测控制序列,并对该剔除的控制率进行误差反馈补偿以得到当前时刻的实际控制率并输出,否则,
判断当前时刻学习得到的近似最优预测控制序列是否满足递归可行性测试,若是则剔除该近似最优预测控制序列中的第一个控制率后保存该近似最优预测控制序列,并对该剔除的控制率进行误差反馈补偿以得到当前时刻的实际控制率并输出,否则,
在上一次保存的近似最优预测控制序列的尾部增加一个ks控制率,得到新的近似最优预测控制序列,剔除该近似最优预测控制序列中的第一个控制率后保存该近似最优预测控制序列,并对该剔除的控制率进行误差反馈补偿以得到当前时刻的实际控制率并输出。
8.根据权利要求7所述基于数据驱动的机器人鲁棒学习预测控制方法,其特征在于,步骤4中,近似最优预测控制序列是否满足递归可行性测试的判断过程具体为:判断当前时刻学习得到的近似最优预测控制序列中的各控制率递归应用在全局线性化模型时,所得到的所有高维线性空间中的状态变量是否同时满足各预测时刻对应的状态可行集,其中,机器人系统在k时刻的所有预测时刻的状态可行集的获取过程为:
步骤4.1,获取机器人预测时域τ=k+N-1预测时刻的状态可行集,即终端状态可行集;
步骤4.2,根据τ=k+N-1预测时刻的状态可行集得到τ=k+N-2预测时刻的初步状态可行集,将τ=k+N-2预测时刻的初步状态可行集与总的状态可行集求交集,得到τ=k+N-2预测时刻的实际状态可行集;
步骤4.3,依次求解预测时域内所有预测时刻的初步状态可行集,并得到τ=k:k+N-1所有预测时刻的实际状态约束可行集。
CN201911095625.XA 2019-11-11 2019-11-11 一种基于数据驱动的机器人鲁棒学习预测控制方法 Active CN110647042B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911095625.XA CN110647042B (zh) 2019-11-11 2019-11-11 一种基于数据驱动的机器人鲁棒学习预测控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911095625.XA CN110647042B (zh) 2019-11-11 2019-11-11 一种基于数据驱动的机器人鲁棒学习预测控制方法

Publications (2)

Publication Number Publication Date
CN110647042A CN110647042A (zh) 2020-01-03
CN110647042B true CN110647042B (zh) 2022-04-26

Family

ID=68995780

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911095625.XA Active CN110647042B (zh) 2019-11-11 2019-11-11 一种基于数据驱动的机器人鲁棒学习预测控制方法

Country Status (1)

Country Link
CN (1) CN110647042B (zh)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111638646B (zh) * 2020-05-29 2024-05-28 平安科技(深圳)有限公司 四足机器人行走控制器训练方法、装置、终端及存储介质
CN111665853B (zh) * 2020-07-07 2023-03-31 中国人民解放军国防科技大学 一种面向规划控制联合优化的无人车辆运动规划方法
CN111898199A (zh) * 2020-07-07 2020-11-06 中国人民解放军国防科技大学 一种车辆动力学数据驱动建模方法
CN112016194A (zh) * 2020-08-10 2020-12-01 天津大学 基于Koopman算子的全方位移动机械臂数据驱动模型预测控制方法
CN112508286A (zh) * 2020-12-11 2021-03-16 上海电力大学 一种基于Kmeans-BiLSTM-DMD模型的短期负荷预测方法
CN112987577B (zh) * 2021-04-22 2021-07-30 中国人民解放军国防科技大学 一种无人车数据驱动自适应控制方法和装置
CN113433947B (zh) * 2021-07-15 2022-04-01 天津大学 基于障碍车估计与预测的交叉路口轨迹规划与控制方法
CN113759724B (zh) * 2021-09-17 2023-08-15 中国人民解放军国防科技大学 基于数据驱动的机器人控制方法、装置和计算机设备
CN113534669B (zh) * 2021-09-17 2021-11-30 中国人民解放军国防科技大学 基于数据驱动的无人车控制方法、装置和计算机设备
CN113805483B (zh) * 2021-09-17 2022-07-12 中国人民解放军国防科技大学 基于模型预测的机器人控制方法、装置和计算机设备
CN114986499B (zh) * 2022-05-23 2023-03-28 兰州大学 一种机械臂运动控制方法、系统、设备及可读存储介质
CN114939870B (zh) * 2022-05-30 2023-05-09 兰州大学 模型训练方法和装置、策略优化方法、设备及介质
CN115236988A (zh) * 2022-08-17 2022-10-25 广东工业大学 基于在线数据的压电微驱动器无模型预测控制方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104776446A (zh) * 2015-04-14 2015-07-15 东南大学 一种锅炉燃烧优化控制方法
CN107179689A (zh) * 2017-06-22 2017-09-19 星际(重庆)智能装备技术研究院有限公司 一种基于子空间辨识的工业数据驱动预测控制方法
CN109491247A (zh) * 2018-11-19 2019-03-19 北京理工大学 一种数据驱动预测云控制方法
CN109946972A (zh) * 2019-04-08 2019-06-28 哈尔滨工程大学 基于在线学习模型技术的水下机器人预测控制系统及方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9897984B2 (en) * 2014-08-05 2018-02-20 Mitsubishi Electric Research Laboratories, Inc. Model predictive control with uncertainties

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104776446A (zh) * 2015-04-14 2015-07-15 东南大学 一种锅炉燃烧优化控制方法
CN107179689A (zh) * 2017-06-22 2017-09-19 星际(重庆)智能装备技术研究院有限公司 一种基于子空间辨识的工业数据驱动预测控制方法
CN109491247A (zh) * 2018-11-19 2019-03-19 北京理工大学 一种数据驱动预测云控制方法
CN109946972A (zh) * 2019-04-08 2019-06-28 哈尔滨工程大学 基于在线学习模型技术的水下机器人预测控制系统及方法

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
A Data-Driven Koopman Model Predictive Control Framework for Nonlinear Partial Differential Equations;Hassan Arbabi等;《2018 IEEE Conference on Decision and Control (CDC)》;20190121;第6403-6414页全文 *
Near-Optimal Tracking Control of Mobile Robots Via Receding-Horizon Dual Heuristic Programming;Chuanqiang Lian等;《IEEE Transactions on Cybernetics》;20161130;第46卷(第11期);第2484-2496页全文 *
一种完全数据驱动的子空间辨识与鲁棒预测控制器设计;杨华等;《控制理论与应用》;20071031;第24卷(第05期);第732-736、742页全文 *
基于数据驱动的短期风电出力预估校正预测模型;高亚静等;《中国电机工程学报》;20150605;第35卷(第11期);第2645-2653页全文 *
近似动态规划在双容水箱预测控制中的应用;李琦等;《计算机仿真》;20141231;第31卷(第12期);第308-311页全文 *

Also Published As

Publication number Publication date
CN110647042A (zh) 2020-01-03

Similar Documents

Publication Publication Date Title
CN110647042B (zh) 一种基于数据驱动的机器人鲁棒学习预测控制方法
Avzayesh et al. The smooth variable structure filter: A comprehensive review
Lucia et al. A deep learning-based approach to robust nonlinear model predictive control
Ahn et al. Online tuning fuzzy PID controller using robust extended Kalman filter
CN113722877A (zh) 一种对锂电池放电时温度场分布变化进行在线预测的方法
CN111665853B (zh) 一种面向规划控制联合优化的无人车辆运动规划方法
Kang et al. Neural network-based model predictive tracking control of an uncertain robotic manipulator with input constraints
CN112099345B (zh) 一种基于输入磁滞的模糊跟踪控制方法、系统及介质
CN112231839B (zh) 针对高耗时约束的飞行器追峰采样智能探索方法
CN115407207A (zh) 锂离子电池荷电状态的在线预测方法与系统
Chen et al. Adaptive fuzzy control of switched nonlinear systems with uncertain dead-zone: A mode-dependent fuzzy dead-zone model
Joshi et al. Adaptive control using gaussian-process with model reference generative network
CN113156263A (zh) 电缆状态监测方法及存储介质
CN117055605A (zh) 多无人机姿态控制方法及系统
CN114740710A (zh) 一种随机非线性多智能体的强化学习优化编队控制方法
Ławryńczuk Input convex neural networks in nonlinear predictive control: A multi-model approach
CN114487890A (zh) 一种改进长短期记忆神经网络的锂电池健康状态估计方法
He et al. Adaptive robust control of uncertain euler–lagrange systems using gaussian processes
CN116880184A (zh) 无人船轨迹追踪预测控制方法、系统及存储介质
Fu et al. Adaptive optimal control of unknown nonlinear systems with different time scales
Elloumi et al. An iterative parametric estimation method for Hammerstein large-scale systems: a simulation study of hydraulic process
CN112346342B (zh) 一种非仿射动力学系统的单网络自适应评价设计方法
Xu et al. Dual extreme learning machine based online spatiotemporal modeling with adaptive forgetting factor
CN111176117B (zh) 一种无人直升机的模糊自适应弹性控制方法
CN113485099A (zh) 一种非线性离散时间系统的在线学习控制方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant