当前位置:文档之家› 迭代学习控制

迭代学习控制

迭代学习控制 1、前言
迭代学习控制(Iterative Learning Control ,简称ILC )是指不断重复一个同样的轨迹的控制尝试,并以此修正控制律,以得到非常好的控制效果的控制方法[1]。

迭代学习控制是学习控制的一个重要分支,是一种新型学习控制策略。

它通过反复应用先前试验得到的信息来获得能够产生期望输出轨迹的控制输入,以改善控制质量。

与传统的控制方法不同的是,迭代学习控制能以非常简单的方式处理不确定度相当高的动态系统,且仅需较少的先验知识和计算量,同时适应性强,易于实现;更主要的是,它不依赖于动态系统的精确数学模型,是一种以迭代产生优化输入信号,使系统输出尽可能逼近理想值的算法。

它的研究对那些有着非线性、复杂性、难以建模以及高精度轨迹控制问题有着非常重要的意义。

最初的学习控制-迭代学习控制(ILC ),由日本学者首倡于1978年。

不像其他的的控制方法从线性受控对象起步,迭代学习控制开门见山就把非线性系统作为研究对象,且要在有限区间[0,T]上实现输出完全追踪的控制任务。

这里完全追踪(perfect tracking )指系统的输出自始至终,无论是暂态还是稳态,都和目标轨道保持一致。

显然,迭代学习控制的起点要比其它控制方法高出一截可是,从二十年的发展历程看,起点过高也有不利的一面:发展空间不足以及难以和主流控制方法相融合。

而事实上,只要任务是可重复的,或系统干扰是周期性的,都可用ILC 来解决实际问题。

从迭代学习控制方法的产生至今已有二十多年的历史它已经发展成为智能控制领域的一个新的发展方向,它的研究对那些有着非线性、强耦合、难以建模以及高精度轨迹控制的问题有非常重要的意义。

迭代学习控制适用于具有重复运动性质的被控系统,它的目标是实现有线区间上的完全跟踪任务。

它通过对被控系统进行控制尝试,以输出信号与给定目标的偏差修正不理想的控制信号,使得系统的跟踪性能得以提高。

迭代学习控制的研究对具有较强的非线性耦合、较高的位置重复精度、难以建模和高精度轨迹跟踪控制要求的动力学系统有着非常重要的意义。

2、迭代学习控制的原理
设被控对象的动态过程为: )),(),(()(.t t u t x f t x =,)),(),(()(t t u t x g t y = (1) 式中,Y m n R u R y R x ∈∈∈,,分别为系统的状态,输出和输入变量,()()⋅⋅g f ,为适当维数的向量函数,其结构与参数均未知。

若期望控制()t u d 存在,则迭代学习控制的目标为:给定期望输出()t y d 和每次运行的初始状态()0k x ,要求在给定时间[]T t ,0∈内,按照一定的学习控制算法通过多次的重复运行,使控制输入()()t u t u d k →,而系统输出()()t y t y d k →第k 次运行时,式(1)表示为: )),(),(()(.t t u t x f t x k k k =,)),(),(()(t t u t x g t y k k k = (2)
跟踪误差为:
()()()t y t y t e k d k -= (3)
迭代学习控制可分为开环学习和闭环学习。

开环学习控制的方法是:第k+1次的控制等于第k 次控制再加上第k 次输出误差的校正项,即
()()()t e t u L t u k k k ,)(1=+ (4)
闭环学习策略是:取第K+1次运行的误差作为学习的修正项,即
()()()t e t u L t u k k k 11,)(++= (5)
式中,L 为线性或非线性算子。

迭代学习控制的基本结构如图(1)所示
()t k u ()t y k ()t y d
()t e k
()t u k 1+
图1、迭代学习控制系统模型
图1中,系统输入为()t u 、输出为()t y ,系统的期望输入()t y d ,下标k 表示迭代运算的次数,即使得在时间[]T t ,0∈内,系统控制输入()()t u t u d k →,系统的输出()()t y t y d k →。

所得的误差()t e k 经过迭代学习律得出下次的控制输入()t u k 1+并存入控制存储记忆单元,到下次控制时再调用。

在每次迭代运算后,需要检验停止条件。

若停止条件满足,则停止迭代计算[2]。

3、迭代学习控制算法
Arimoto 等首先给出了线性时变连续系统的D 型迭代学习控制律 ()()()t e t u t u k k k .1Γ+=+ (6) 式中,Γ为常数增益矩阵。

在D 型算法的基础上,相继出现了P 型、PI 型、PO 型迭代学习控制律。

从一般意义上来看它们都是PID 型迭代学习控制律的特殊形式。

PID 迭代学习控制律表示为 ()()()()()dt t e t e t e t u t u k k k k k ⎰+Φ+Γ+=+10.1ψ (7) 式中,ψ,,ΦΓ为学习增益矩阵。

算法中的误差信息使用称为开环迭代学习控制,如果使用则称为闭环迭代学习控制,如果同时使用则称为开闭环迭代学习控制。

此外,还有高阶迭代学习控制算法、最优迭代学习控制算法、遗忘因子迭代学习控制算法和反馈-前馈迭代学习控制算法等。

4、迭代学习控制的关键技术
4.1 迭代学习控制的稳定性和收敛性
稳定性与收敛性问题是研究当学习律与被控系统满足什么条件时,迭代学习控制过程才是稳定收敛的。

算法的稳定性保证了随着学习次数的增加,控制系统控制输入 被控系统 期望输出 迭代学习
控制器
不发散,但是,对于学习控制系统而言,仅仅稳定是没有实际意义的,只有使学习过程收敛到真值,才能保证得到的控制为某种意义下最优的控制。

收敛是对学习控制的最基本的要求,多数学者在提出新的学习律的同时,基于被控对象的一些假设,给出了收敛的条件。

例如,Arimoto在最初提出PID型学习控制律时,仅针对线性系统在D型学习律下的稳定性和收敛条件作了证明。

4.2 迭代学习控制的初值问题
迭代学习控制的初值问题是迭代学习系统的基本问题之一。

在设计迭代学习系统时,为保证系统收敛性,往往要求每次迭代开始时刻的迭代初值与期望初值一致。

然而,在实际场合,在迭代时难免存在着迭代初值与期望初值不一致的现象。

因此,研究任意初值条件下迭代学习系统设计方法是十分重要的[3]。

目前关于初值问题的研究成果集中于压缩映射方法,常用的方法有:基于PD学习律,在固定初态下,这种根轨迹能够保证极限轨迹沿时间轴趋于零;含平均算子的学习律;带初值脉冲作用的学习律,其中脉冲作用可以克服任意初值误差,实现从零时刻开始的完全跟踪;以及初值修正作用,提出的学习律实现从预先指定时刻起的完全跟踪,初始修正作用的值是有限的,因而克服了初值脉冲作用的缺陷。

目前已提出的迭代学习控制算法大多数要求被控系统每次运行时的初始状态在期望轨迹对应的初始状态上,当系统的初始状态不在期望轨迹上,而在期望轨迹的某一很小的邻域内时,通常把这类问题归结为学习控制的鲁棒性问题研究。

4.3 迭代学习控制的鲁棒性问题
由于开环迭代学习控制算法只利用了系统前次运行的信息,所以对不可重复的干扰不具有鲁棒性,对被控对象无镇定作用,在学习过程中即使学习律满足收敛条件也有可能产生很大的跟踪误差;而闭环迭代学习控制算法只利用了系统当前运行的信息,反馈增益必须大,才能精确的跟踪期望轨迹,但实现中由于执行器饱和等因素,使得高增益反馈失去意义[1]。

所以从控制信息的使用方面看,两者都存在一些缺陷[1]。

为了增强迭代学习控制系统的鲁棒性,常用的方法有:在开环PID型迭代学习器的基础上引入一PID反馈控制器,构成反馈-前馈迭代学习控制系统。

4.4 迭代学习控制的速度问题
在迭代学习算法研究中,其收敛条件基本上都是在学习次数∞
k下给出

的。

而在实际应用场合,学习次数∞
k显然是没有任何实际意义的。

因此,

如何使迭代学习过程更快地收敛于期望值是迭代学习控制研究中的另一个重要问题。

迭代学习控制本质上是一种前馈控制技术,大部分学习律尽管证明了学习收敛的充分条件,但收敛速度还是很慢。

可利用多次学习过程中得到的知识来改进后续学习过程的速度,例如,采用高阶迭代控制算法、带遗忘因子的学习律、利用当前项或反馈配置等方法来构造学习律,可使收敛速度大大加快。

5、总结
由于迭代学习控制模拟了人脑学习和自我调节的功能,因而是一种典型的智能控制方法。

经历了三十多年的发展,迭代学习控制已成为智能控制中具有严格数学描述的一个分支。

目前,迭代学习控制在学习算法、收敛性、鲁棒性、学习速度及工程应用研究上取得了很大的进展。

但是,由于系统类型和控制形式的多样性,造成所设计学习控制算法具有很大的局限性。

迭代学习控制理论还处于发展和完善阶段,存在诸多问题待解决,这也是研究的目标和方向。

相关主题