一种基于gap的自均衡多模型分解方法及系统

文档序号:1598342 发布日期:2020-01-07 浏览:11次 >En<

阅读说明:本技术 一种基于gap的自均衡多模型分解方法及系统 ([db:专利名称-en]) 是由 杜静静 陈俊风 李建 姜学平 贾静 于 2019-10-18 设计创作,主要内容包括:本发明公开了一种基于gap的自均衡多模型分解方法及系统,获取近似非线性系统的线性模型集。先获取一轮分解的子操作区间个数;新一轮分解的阈值在前一轮分解的阈值基础上减少步长λ,在新的阈值下,得到在新一轮分解的阈值下的子操作区间个数m&lt;Sub&gt;c&lt;/Sub&gt;;比较新一轮分解得到的子操作区间个数m&lt;Sub&gt;c&lt;/Sub&gt;与前一轮得到的子操作区间个数m&lt;Sub&gt;c-1&lt;/Sub&gt;,若m&lt;Sub&gt;c&lt;/Sub&gt;&gt;m&lt;Sub&gt;c-1&lt;/Sub&gt;,则分解结束,系统最终被分解为m&lt;Sub&gt;c-1&lt;/Sub&gt;个均衡的子操作区间。反之,重复以上步骤。优点:本发明减少了多模型分解对先验知识的依赖,同时建立了明确的分解标准,并且减少繁琐的调试带来的工作量,提高分解效率,简化控制器结构,对提高多模型控制器的闭环性能大有裨益。([db:摘要-en])

一种基于gap的自均衡多模型分解方法及系统

技术领域

本发明涉及基于gap的自均衡多模型分解方法及系统,属于非线性系统多模型控制技术领域。

背景技术

近年来,多模型控制方法在非线性控制领域越来越受欢迎。多模型控制方法在处理具有操作范围比较广、干扰信号比较大的非线性系统的控制问题方面具有天然的优势。基于分解-合成原则的多模型控制方法能够有效的将复杂的非线性控制问题通过分解转化为一系列简单的线性控制问题;然后通过求解这一系列线性控制问题实现对非线性控制问题的解决。多模型控制方法这种化繁为简的特点,使其在非线性控制领域有着广泛的应用。

多模型控制方法主要包含了多模型分解、局部控制设计、以及多模型合成三个关键步骤。传统的多模型分解方法有:按照系统的物理组成单元进行分解;按照系统内在的物理、化学规律分解;按照系统数学模型的展开式进行分解;按照系统的控制目标进行分解;按照系统的工况进行分解。此类分解方法往往特别依赖系统的定性知识、操作经验等先验知识,或者需要从系统的输入-输出数据中获取信息。需要具体问题具体分析,缺少系统的指导原则,属于经验分解法。后来,学者们提出了基于gap metric的多模型分解算法,可以减少对先验知识的过分依赖,然而分解阈值的选择需要一定的先验知识,在实际操作中,一般需要反复调试多次。而且,分解结果也没有标准进行衡量,基本靠经验去判定。或者需要设计控制器,根据闭环响应去判定,这样又太繁琐。

发明内容

本发明所要解决的技术问题是为了克服多模型分解算法对于先验知识的过分依赖,减少参数调整带来的麻烦,得到均衡的多模型分解结果,简化多模型控制器的结构,进而提高闭环控制效果,提供一种基于gap的自均衡多模型分解方法及系统。

为解决上述技术问题,本发明提供一种基于gap的自均衡多模型分解方法,包括如下步骤:

步骤一:对非线性系统的操作空间进行网格化,得到ng个网格点,对非线性系统在各个网格点线性化得到ng个线性化模型;

步骤二:以第一个线性化模型为起点,增加一个线性化模型到模型集队列中;

步骤三:利用min-max原则计算标称模型,并计算标称模型的最大gap距离δmax,比较δmax和阈值γ的大小,若δmax≤γ,则增加一个新的线性化模型到队列里。然后利用min-max原则更新标称模型,并计算其最大gap距离,此时,若δmax≤γ,则再增加一个新的线性化模型到队列里,反之若δmax>γ时,则将新增加的线性化模型踢出队列,并停止增加新的模型到队列里,此时队列记为一个子操作区间;

步骤四:以上述被踢出队列的线性化模型为新的起点,增加一个新的线性化模型到模型集队列中;

步骤五:重复步骤三和步骤四的过程直至所有线性化模型都进入队列里,统计在阈值γ下的这一轮分解的子操作区间个数;

步骤六:阈值减少步长λ,得到新的阈值,在新的阈值下,重复步骤二到步骤五的过程,得到在新一轮分解的子操作区间个数;

步骤七:比较新一轮分解得到的子操作区间个数mc与前一轮得到的子操作区间个数mc-1,若mc>mc-1,则分解结束,系统最终被分解为mc-1个均衡的子操作区间,阈值最终为γ=γ+λ;;反之重复步骤六。

进一步的,利用基于gap metric的二分法网格化算法对非线性系统的操作空间进行网格化。能够根据系统的非线性程度进行网格化,非线性程度高的地方网格点多;有效减少网格点的数量。

进一步的,利用min-max原则计算标称模型的过程为:

计算线性化模型两两之间的gap距离,如下式:

其中Pi表示第i个线性化模型,Pj表示第j个线性化模型,M1、N1是Pi的规范化互质分解因子,M2、N2是Pj的规范化互质分解因子,Q是H空间的有理数,inf表示下确界;

根据min-max原则利用获得的gap距离得到标称模型,如下式:

P*:={Ph:mini≤h≤j(maxi≤l≤j(δ(Ph,Pl)))} (2)

h和l是i到j之间的一个自然数,Ph表示第h个线性化子模型,Pl表示第l个线性化子模型;maxi≤l≤j(·)表示在h不变的情况下,当l从i变化到j时,求解和线性化模型Ph的gapmetric距离最大的那个线性化模型及其距离;mini≤h≤j(·)表示在l不变的情况下,当h从i变化到j时,求解和线性化模型Pl的gap metric距离最小的那个线性化模型及其距离。(a)建立了比较客观的标称模型选取方法,(b)得到min-max意义下的最优标称模型。

进一步的,通过下式计算所述标称模型的最大gap距离:

δmax:=maxi≤h≤j(δ(P*,Ph)),

maxi≤h≤j(δ(P*,Ph))表示i到j之间的线性化模型与P*距离最大的gap metric距离的值,将δmax定义为非线性系统在此范围内的非线性程度。(a)获取gap意义下最大的子操作区间范围,(b)有利于减少子操作区间的个数。

一种基于gap的自均衡多模型分解系统,包括线性化模型的获取模块、子操作区间及其个数的获取模块以及分解循环模块;

所述线性化模型的获取模块用于对非线性系统的操作空间进行网格化,得到ng个网格点,对非线性系统在各个网格点线性化得到ng个线性化模型;

所述子操作区间及其个数的获取模块用于以第一个线性化模型为起点,增加一个线性化模型到模型集队列中;利用min-max原则计算标称模型,并计算标称模型的最大gap距离δmax,比较δmax和阈值γ的大小,若δmax≤γ,则增加一个新的线性化模型到队列里然后利用min-max原则更新标称模型,并计算其最大gap距离,此时,若δmax≤γ,则再增加一个新的线性化模型到队列里,反之若δmax>γ时,则将新增加的线性化模型踢出队列,并停止增加新的模型到队列里,此时队列记为一个子操作区间;以上述被踢出队列的线性化模型为新的起点,增加一个新的线性化模型到模型集队列中;重复线性化模型增加至队列和踢出队列的过程直至所有线性化模型都进入队列里,统计在阈值γ下的这一轮分解的子操作区间个数;

所述分解循环模块用于将阈值减少步长λ,得到新的阈值。在新的阈值下,通过子操作区间及其个数的获取模块得到在新一轮分解的子操作区间个数;比较新一轮分解得到的子操作区间个数mc与前一轮得到的子操作区间个数mc-1,若mc>mc-1,则分解结束,系统最终被分解为mc-1个均衡的子操作区间;反之将阈值减少步长λ,将最新一轮分解的子操作区间个数与前一轮的子操作区间个数进行比较,直至分解结束。

进一步的,所述线性化模型的获取模块包括网格化处理模块,用于利用基于gapmetric的二分法网格化算法对非线性系统的操作空间进行网格化。

进一步的,所述子操作区间个数获取模块包括计算标称模型处理模块,用于计算线性化模型两两之间的gap距离,如下式:

其中Pi表示第i个线性化模型,Pj表示第j个线性化模型,M1、N1是Pi的规范化互质分解因子,M2、N2是Pj的规范化互质分解因子,Q是H空间的有理数,inf表示下确界;

利用获得的gap距离得到标称模型,如下式:

P*:={Ph:mini≤h≤j(maxi≤l≤j(δ(Ph,Pl)))} (2)

h和l是i到j之间的一个自然数,Ph表示第h个线性化子模型,Pl表示第l个线性化子模型;maxi≤l≤j(·)表示在h不变的情况下,当l从i变化到j时,求解和线性化模型Ph的gapmetric距离最大的那个线性化模型及其距离;mini≤h≤j(·)表示在l不变的情况下,当h从i变化到j时,求解和线性化模型Pl的gap metric距离最小的那个线性化模型及其距离。

进一步的,所述子操作区间个数获取模块包括最大gap距离计算模块,用于通过下式计算所述标称模型的最大gap距离:

δmax:=maxi≤h≤j(δ(P*,Ph)) (3),

maxi≤h≤j(δ(P*,Ph))表示i到j之间的线性化模型与P*距离最大的gap metric距离的值,将δmax定义为非线性系统在此范围内的非线性程度(MoN,Measurement ofNonlinearity)。

本发明所达到的有益效果:

本发明减少了多模型分解对先验知识的依赖的同时,又建立了明确的分解标准,并且减少繁琐的调试带来的工作量,提高分解效率,简化控制器结构,以及提高多模型控制器的闭环性能大有裨益。

附图说明

图1是基于gap metric的自均衡多模型分解方法的流程示意图;

图2是CSTR在基于gap metric自均衡多模型分解的多模型控制器下的参考输入ref和闭环输出y的跟踪响应曲线;

图3是CSTR在基于gap metric自均衡多模型分解的多模型控制器下的控制输入u的跟踪响应曲线

具体实施方式

为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

下面结合附图并通过具体实施方式来进一步说明本发明的技术方案。

实施例1:

下面举实例对上述基于PID的一体化多模型控制方法进行说明,针对一个连续搅拌反应釜系统(CSTR)进行仿真并加以分析。

Figure BDA0002239092950000061

其中CA(mol/l)是反应浓度,输入变量是u(min-1)。方程中的CAi(1.0mol/l)是进料浓度,k=0.028min-1是速率常数。此系统非线性程度很强,单个线性控制器无法满足要求。

采用本发明的自均衡多模型分解算法对CSTR系统进行多模型分解及控制,具体步骤入下:

S0.利用基于gap metric的二分法对CSTR系统进行网格化得到19个网格点。并计算线性化模型,利用gap metric的计算公式(1)计算线性化模型两两之间的gap距离;

S1.选择阈值初始值γ0=0.5,及步长λ=0.01;

S2.令阈值γ=γ0,循环次数c=1;

S3.令i=1,mc=0;

S4.如果i≤ng,令j=i,mc=mc+1,并跳转到S5。否则跳转到S12;

S5.根据公式(2)选择标称模型;

S6.根据公式(3)计算标称模型的最大gap;

S7.如果δmax≤γ且j<ng,则令j=j+1并返回S5.反之,若δmax>γ,令Set j=j–1,进入S8;

S8.更新标称模型,即根据公式(2)重新从第i到第j个线性化模型中选取标称模型;

S9.标称模型P*记为Gmc,其对应的网格点记为OPmc.将Gmc放入队列pQc,并将OPmc放入队列oQc

S10.令i=j+1,并返回S4;

S11.如果c>1且mc>mc-1,则进入S13.反之,进入S12;

S12.令γ=γ–λ,c=c+1,并返回S3;

S13.结束。

在γ≤0.46时,系统都被分成2个子操作区间,而当阈值γ逐步减小到γ=0.45时,系统被分成了3个子操作区间。因此系统最终的分解结果为:当γ=0.46时,系统被分成了2个子系统。对应的操作点分别是第5个网格点和第14个网格点。分解结果详见表1.

表1.CSTR系统自均衡分解的结果(γ=0.46)

Figure BDA0002239092950000071

可以看出MoN1=0.4536,MoN2=0.4439都比较接近阈值0.46,这个分解结果在MoN(Measurement of Nonlinearity)意义上是均衡的。基于此分解结果设计多模型H∞控制器,闭环控制效果如图1所示。

结合附图2和3,各个阶段输出y都可以快速、准确的跟踪设定值ref的变化,且控制输入信号在允许范围内变化;显然,基于本发明得到的分解结果而设计的多模型控制器可以在整个操作范围很好的控制系统的输出y,即y能够快速且准确的跟随设定值ref的变化而变化。

非线性系统最终被分成了mc-1个子区间,阈值的最终值为γ=γ+λ,子模型集为pQc-1,对应的操作点oQc-1.每个子空间的MON值都相近,即得到了均衡的分解结果。均衡的,也即在才阈值水平下,各个子系统的非线性程度都是相近的,不需要更多的子模型来近似非线性系统了。有效避免了模型冗余,进而简化了多模型控制器的结构。

一种基于gap的自均衡多模型分解系统,包括线性化模型的获取模块、子操作区间及其个数的获取模块以及分解循环模块;

所述线性化模型的获取模块用于对非线性系统的操作空间进行网格化,得到ng个网格点,对非线性系统在各个网格点线性化得到ng个线性化模型;

所述子操作区间及其个数的获取模块用于以第一个线性化模型为起点,增加一个线性化模型到模型集队列中;利用min-max原则计算标称模型,并计算标称模型的最大gap距离δmax,比较δmax和阈值γ的大小,若δmax≤γ,则增加一个新的线性化模型到队列里然后利用min-max原则更新标称模型,并计算其最大gap距离,此时,若δmax≤γ,则再增加一个新的线性化模型到队列里,反之若δmax>γ时,则将新增加的线性化模型踢出队列,并停止增加新的模型到队列里,此时队列记为一个子操作区间;以上述被踢出队列的线性化模型为新的起点,增加一个新的线性化模型到模型集队列中;重复线性化模型增加至队列和踢出队列的过程直至所有线性化模型都进入队列里,统计在阈值γ下的这一轮分解的子操作区间个数;

所述分解循环模块用于将阈值减少步长λ,得到新的阈值。在新的阈值下,通过子操作区间及其个数的获取模块得到在新一轮分解的子操作区间个数;比较新一轮分解得到的子操作区间个数mc与前一轮得到的子操作区间个数mc-1,若mc>mc-1,则分解结束,系统最终被分解为mc-1个均衡的子操作区间;反之将阈值减少步长λ,将最新一轮分解的子操作区间个数与前一轮的子操作区间个数进行比较,直至分解结束。

本实施例中,所述线性化模型的获取模块包括网格化处理模块,用于利用基于gapmetric的二分法网格化算法对非线性系统的操作空间进行网格化。

本实施例中,所述子操作区间个数获取模块包括计算标称模型处理模块,用于计算线性化模型两两之间的gap距离,如下式:

其中Pi表示第i个线性化模型,Pj表示第j个线性化模型,M1、N1是Pi的规范化互质分解因子,M2、N2是Pj的规范化互质分解因子,Q是H空间的有理数,inf表示下确界;

利用获得的gap距离得到标称模型,如下式:

P*:={Ph:mini≤h≤j(maxi≤l≤j(δ(Ph,Pl)))} (2)

h和l是i到j之间的一个自然数,Ph表示第h个线性化子模型,Pl表示第l个线性化子模型;maxi≤l≤j(·)表示在h不变的情况下,当l从i变化到j时,求解和线性化模型Ph的gapmetric距离最大的那个线性化模型及其距离;mini≤h≤j(·)表示在l不变的情况下,当h从i变化到j时,求解和线性化模型Pl的gap metric距离最小的那个线性化模型及其距离。

本实施例中,所述子操作区间个数获取模块包括最大gap距离计算模块,用于通过下式计算所述标称模型的最大gap距离:

δmax:=maxi≤h≤j(δ(P*,Ph)) (3),

maxi≤h≤j(δ(P*,Ph))表示i到j之间的线性化模型与P*距离最大的gap metric距离的值,将δmax定义为非线性系统在此范围内的非线性程度(MoN,Measurement ofNonlinearity)。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

12页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种被动式力加载的自适应驱动控制方法和系统

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!