控制系统中点定位方法

文档序号:6307838阅读:304来源:国知局
控制系统中点定位方法
【专利摘要】控制系统中点定位方法。二级网格法分为两个主要的阶段——离线预处理阶段和在线计算阶段。离线预处理阶段引入了多参数二次规划理论,计算机能自行将控制系统的状态空间划分为一个个凸的分区并计算得到每个分区对应的控制率,然后在状态空间上构造哈希表网格区域,对每一个网格区域作不同的处理。在线计算阶段就是通过哈希函数确定系统当前的状态点所处的哈希表网格区域,进一步查找状态点分区,并得到该分区对应的控制率,通过简单线性运算得到系统的控制输出量。
【专利说明】控制系统中点定位方法

【技术领域】
[0001] 本发明是针对显式模型预测控制中点定位方法的优化,该二级网格法不仅能大大 提高点定位的在线查找效率,而且使得离线预处理过程更为简单快捷,一定程度上也降低 了数据存储空间的需求。

【背景技术】
[0002] 在传统的模型预测控制中存在反复的在线优化计算,它造成了控制器负荷过重并 且效率低下。为了解决该些问题,在2002年前后Man化ed Morari和AAedo Bemporad等 学者引入了多参数二次规划理论,建立了显式模型预测控制方法体系。它主要是利用模型 预测控制系统内在的分段仿射规律,根据控制对象的模型、约束、性能要求等信息,通过多 参数二次规划(multi-parametric Qua化atic Program, mp-QP)将系统状态空间划分为一 个个凸的分区并预先计算出各个分区上对应的最优控制率。该意味着传统的模型预测控制 中复杂费时的在线优化过程被提前到控制系统实际运行前完成,而在线控制时只需确定系 统当前状态点所处分区,即可得到相应的最优控制率。该种查找运算的效率远高于反复在 线优化计算,控制系统的实时性能得到大幅度提高,同时也降低了对控制系统软硬件的要 求。
[0003] 根据上面的介绍可W知道显式模型预测控制在线控制阶段的主要任务就是解决 点定位问题。顾名思义,点定位问题指的就是判断空间中的状态点处于哪一个分区。该里 的分区是指通过多参数二次规划(mp-Q巧将状态空间划分为的一个个凸分区,确定点所处 的分区目的即取得该分区最优控制率,经过简单换算实现系统最优控制。我们采用的点定 位方法的性能直接关系到显式模型预测控制系统的性能,该里点定位方法的性能指的是数 据所占存储空间、离线计算时间和在线计算时间=个方面。
[0004] 传统的点定位方法有直接查找法、可达分区法、哈希表法等等,详细介绍该些方法 的公开文献已有许多,该里就不再寶述。虽然它们也能实际有效地解决点定位问题,但是在 性能方面已经不能满足我们的控制需求。比如直接查找法,虽然它不需要离线计算,但是 它的在线查找效率十分低下,而且在数据所占存储空间上也不占优势。可达分区法的在线 查找效率据控制系统特性而定,虽然在该个方面有提高,但是离线预处理过程却显得尤为 漫长,数据所占存储空间也大大增加。与可达分区法类似,哈希表法需要额外存储哈希表数 据,提高了对空间存储的需求,它的预处理时间比较短,但是在线查找效率的提升却十分有 限。


【发明内容】

[0005] 本发明要客服传统点定位方法的的上述缺点,提供了一种二级网格法,它不仅使 离线预处理过程更为简单,降低数据存储空间需求,同时也能大大提高在线查找效率。
[0006] 点定位的实质就是在确定空间中某一点所处分区,然后取得此分区控制率实现控 制效果。针对现有的传统点定位方法中哈希表法的不足,本发明提供了一种新的点定位思 路。传统的哈希表法虽然拥有较短的在线查找时间,但它却是w牺牲空间性能与预处理时 间来达到目的。当划分参数增加时,方法所需的预处理时间和存储空间需求会快速上化而 且划分参数增加到一定程度后,效率的提升就越来越不明显。而本发明提供的二级网格法 能够进一步简化离线预处理过程,降低所需的存储空间并且提高在线查找效率。
[0007] 二级网格法分为两个主要的阶段一-离线预处理阶段和在线计算阶段。离线预处 理阶段引入了多参数二次规划理论,计算机能自行将控制系统的状态空间划分为一个个凸 的分区并计算得到每个分区对应的控制率,然后在状态空间上构造哈希表网格区域,对每 一个网格区域作不同的处理。在线计算阶段就是通过哈希函数确定系统当前的状态点所处 的哈希表网格区域,进一步查找状态点分区,并得到该分区对应的控制率,通过简单线性运 算得到系统的控制输出量。
[000引本发明所述的控制系统中点定位问题的二级网格法,具体包括W下步骤:
[0009] 步骤1.二级网格法离线预处理过程
[0010] 1.1,在控制系统中引入多参数二次规划,将系统状态空间划分为一个个凸的分 区,并计算得到每个分区对应的控制率,保存在FG数组中。
[0011] 1. 2,计算同义分区。空间中分区的划分是依据特征值一一同一分区中的所有点具 有相同的特征值。我们将特征值相等的分区称为同义分区。显式模型预测控制中分区特征 值(在该里即显式模型预测控制的控制率)被称为FG矩阵。例如某个显式模型预测控制 输出维度为1的二维状态空间分区P的FG矩阵为:
[001引 FGi= [fii gi] (1)
[001引相邻另一个分区Q的FG矩阵为:
[0014] FG2= [f2i f22 拓] 似
[0015] 若满足;
[0016] 成1寸21) 2+成2寸22) 2+姑-旨2) 5 做
[0017] 其中f和g是组成特征值矩阵的元素,我们需要的控制输出是由特征值和状态向 量计算得到。当5是一个极小的正数,则认为P和Q是同义的,它们互为同义分区。
[0018] 1.3,根据划分参数构造一级哈希表网格区域多胞形。该时可W看到,不同的网格 区域内特征值分布呈现5种不同的状况:
[0019] a.整个网格区域在空间内部,且内部只有1种特征值。
[0020] b.整个网格区域在空间内部,且分布着2种W上不同的特征值。
[0021] C.部分网格区域在空间外部,且分布着2种W上不同的特征值。
[002引 d.部分网格区域在空间外部,且内部只有1种特征值。
[0023] e.整个网格均在空间外部。
[0024] 1.4,在划分好的一级哈希表网格区域基础上,依次选择一个网格区域进行一级网 格处理。若该网格区域属于a类网格区域,假设其特征值编号为nfg,将化sh数组中对应的 记录记为-nfg。化sh数组是一个一维化的哈希表,在确定点所处的网格区域后,查找该网 格区域在Hash数组上对应的值能够快速知道点是否在对象空间,或者快速指向该点所在 区域特征值。若该网格区域属于d类,根据第二步计算的同义分区将各子分区取并(取并 的过程包括了对非凸区域的凸化剖分),该里原先的分区被新的分区所覆盖,所从新分区的 编号要记录在化sh数组对应的位置,同时也要更新新分区在HK描述矩阵中的值。HK描述 矩阵的作用就是判断状态点是否在该分区中。若该网格区域属于e类网格区域,则直接在 化sh数组相应位置记录0,表示该点完全处于对象空间外部。该S类网格区域的处理方法 和哈希表法一致。
[0025] 若该网格区域属于b、C两类,该里就需要我们引入一个阀值概念。当该一级哈希 表网格区域内分区数量高于该个阀值,我们需要在该个网格区域内进行二级网格划分,与 一级网格划分类似,二级划分的不同在于对象空间只有一个一级网格区域那么大。如果分 区数不足W进行二级划分,该类网格处理方法与d类一致,并跳至第6步。若是分区数目高 于阀值,跳至下一步。
[0026] 1. 5,对该类网格区域进行二级划分,化sh数组的值在原有基础上加上0. 5,该样 通过整数与非整数的判断我们就可W知道在线阶段是否需要跳至二级哈希表处理。在二级 网格区域中,特征值的分布同样存在上述5种情况。遍历所有二级网格区域,它们的处理方 法与所有类别的一级网格区域相同,唯一的区别在于,不需要引入阀值在构建新的网格区 域。
[0027] 1.6,处理完一个一级网格区域后,依次选取下一个网格区域,作第4步的处理,直 到所有一级网格区域处理完成,离线预处理阶段结束。
[0028] 步骤2.二级网格法在线计算过程
[0029] 2. 1,读取目标点坐标,根据哈希函数快速定位所处的一级网格区域。哈希函数如 下式:
[0030] A乂)二,化wr((乂-。)、^-) (4) b - a
[003U 该里的N代表划分参数,a和b是某个维度上的边界坐标。
[003引2. 2,取该网格区域对应的化sh数组值。若值为0,说明点不在对象空间内,退出在 线查找过程。若值为负数,说明该网格区域属于a类网格区域,可直接映射到FG矩阵上取 得特征值,退出在线查找过程。若该值为正整数,则需要采用直接查找法,取得该个网格区 域内所有分区的描述矩阵,依次判断该点是否在分区内,若找到对应分区,通过映射取得对 应特征值并退出,若找不到满足条件的分区,说明该点不在对象空间内,退出在线过程。否 贝1J,执行下一步。
[0033] 2. 3,如果一级化sh数组的值不为负数、0或者整数,说明它是非整数,需要我们跳 至第二级哈希表。同理,首先通过哈希函数确定状态点所处的二级哈希表网格区域,并取得 相应的二级化sh数组值。若该值等于0,直接断定该状态点不在对象空间内,跳出查找过 程;若该值小于0,说明直接可W取到特征值,退出查找过程;否则需要采用直接查找法,取 得该个网格区域内所有分区的描述矩阵,依次判断该点是否在分区内,若找到对应分区,通 过映射取得对应特征值并退出,若找不到满足条件的分区,说明该点不在对象空间内,退 出在线过程。
[0034] 本发明的优点是;在传统的点定位哈希表法基础上,一定程度减小了存储空间需 求,同时大大缩短了点定位在线计算阶段所需时间,在预处理时间上也有着不小的提升。

【专利附图】

【附图说明】
[0035] 图1是本发明的状态空间分区示意图
[0036] 图2是本发明引入二级哈希表网格划分后效果图
[0037] 图3是本发明在第一级网格区域进行第二级网格划分示意图 [003引图4是本发明的离线预处理流程图
[0039] 图5是本发明的在线计算阶段流程图
[0040] 表1是本发明的二级网格法性能表现
[0041] 表2是本发明的二级网格法同经典点定位方法性能对比

【具体实施方式】
[0042] 下面结合附图,进一步说明本发明的二级网格法步骤。参照附图1-5,表1-2.
[0043] 本发明所述的二级网格法,具体步骤如下:
[0044] 步骤1.二级网格法的离线预处理过程,流程图详见图4
[0045] 1. 1,在控制系统中引入多参数二次规划,将系统状态空间划分为一个个凸的分 区,状态空间示意图如图4所示,并计算得到每个分区对应的控制率,保存在FG数组中。
[0046] 1.2,计算同义分区。不同分区如果特征值相同,那么分区颜色也是一样的,如图2 所示。
[0047] 1.3,构造一级哈希表网格区域多胞形。
[0048] 1. 4,进行一级网格处理,若网格满足二级划分条件,跳至下一步,若不满足,跳至 第6步。
[0049] 1.5,对一级哈希表网格区域进行二级网格划分,划分效果如图3所示,并且进行 二级网格处理。
[0化0] 1.6,依次选取一级网格区域,作第4步处理,直到遍历所有一级网格区域,退出离 线预处理过程。
[0化1] 步骤2.二级网格法的在线计算过程,流程图详见图5
[0052] 2. 1,读取目标点坐标,根据哈希函数快速定位所处的一级网格区域。
[0化引 2. 2,取该网格区域对应的化sh数组值。若值为0,说明点不在对象空间内,退出在 线查找过程。若值为负数,说明该网格区域属于a类网格区域,可直接映射到FG矩阵上取 得特征值,退出在线查找过程。若该值为正整数,则需要采用直接查找法,取得该个网格区 域内所有分区的描述矩阵,依次判断该点是否在分区内,若找到对应分区,通过映射取得对 应特征值并退出,若找不到满足条件的分区,说明该点不在对象空间内,退出在线过程。否 贝Ij,执行下一步。
[0化4] 2. 3,如果一级化sh数组的值不为负数、0或者整数,说明它是非整数,需要我们跳 至第二级哈希表。同理,首先通过哈希函数确定状态点所处的二级哈希表网格区域,并取得 相应的二级化sh数组值。若该值等于0,直接断定该状态点不在对象空间内,跳出查找过 程;若该值小于0,说明直接可W取到特征值,退出查找过程;否则需要采用直接查找法,取 得该个网格区域内所有分区的描述矩阵,依次判断该点是否在分区内,若找到对应分区,通 过映射取得对应特征值并退出,若找不到满足条件的分区,说明该点不在对象空间内,退出 在线过程。
[005引案例分析
[0化6] 本发明通过一个二阶实例展现了二级网格法在存储空间需求、离线预处理时间、 在线计算时间=个方面的表现,同时也通过该样一个二阶实例对比了本发明所述的二阶网 格法与经典点定位方法的性能,展示同义去冗余网格算法的优越性。
[0057] 表1二级网格法性能表现 [005引

【权利要求】
1.控制系统中点定位方法,包括如下步骤: 步骤1.二级网格法离线预处理过程 1.1,在控制系统中引入多参数二次规划,将系统状态空间划分为一个个凸的分区,并 计算得到每个分区对应的控制率,保存在FG数组中; 1.2, 计算同义分区;空间中分区的划分是依据特征值一一同一分区中的所有点具有 相同的特征值;我们将特征值相等的分区称为同义分区;显式模型预测控制中分区特征值 (在这里即显式模型预测控制的控制率)被称为FG矩阵;例如某个显式模型预测控制输出 维度为1的二维状态空间分区P的FG矩阵为,P是分区的代号: FG1=[fnf12gj (I) 相邻另一个分区Q的FG矩阵为,同理Q也是分区的一个代号: FG2=[f21f22g2] (2) 若满足: (fl「f2i)2+(fl2_f22)2+(gl _g2)2彡5⑶ 其中f?和g是组成特征值矩阵的元素,我们需要的控制输出是由特征值和状态向量计 算得到;当S是一个极小的正数,则认为P和Q是同义的,它们互为同义分区; 1.3, 根据划分参数构造一级哈希表网格区域多胞形;这时可以看到,不同的网格区域 内特征值分布呈现5种不同的状况: a. 整个网格区域在空间内部,且内部只有1种特征值; b. 整个网格区域在空间内部,且分布着2种以上不同的特征值; c. 部分网格区域在空间外部,且分布着2种以上不同的特征值; d. 部分网格区域在空间外部,且内部只有1种特征值; e. 整个网格均在空间外部; 1.4, 在划分好的一级哈希表网格区域基础上,依次选择一个网格区域进行一级网格处 理;若该网格区域属于a类网格区域,假设其特征值编号为nfg,将Hash数组中对应的记录 记为-nfg;Hash数组是一个一维化的哈希表,在确定点所处的网格区域后,查找该网格区 域在Hash数组上对应的值能够快速知道点是否在对象空间,或者快速指向该点所在区域 特征值;若该网格区域属于d类,根据第二步计算的同义分区将各子分区取并(取并的过程 包括了对非凸区域的凸化剖分),这里原先的分区被新的分区所覆盖,所以新分区的编号要 记录在Hash数组对应的位置,同时也要更新新分区在HK描述矩阵中的值;HK描述矩阵的 作用就是判断状态点是否在该分区中;若该网格区域属于e类网格区域,则直接在Hash数 组相应位置记录0,表示该点完全处于对象空间外部;这三类网格区域的处理方法和哈希 表法一致; 若该网格区域属于b、c两类,这里就需要我们引入一个阀值概念;当这一级哈希表网 格区域内分区数量高于这个阀值,我们需要在这个网格区域内进行二级网格划分,与一级 网格划分类似,二级划分的不同在于对象空间只有一个一级网格区域那么大;如果分区数 不足以进行二级划分,这类网格处理方法与d类一致,并跳至第6步;若是分区数目高于阀 值,跳至下一步; 1. 5,对这类网格区域进行二级划分,Hash数组的值在原有基础上加上0. 5,这样通过 整数与非整数的判断我们就可以知道在线阶段是否需要跳至二级哈希表处理;在二级网格 区域中,特征值的分布同样存在上述5种情况;遍历所有二级网格区域,它们的处理方法与 所有类别的一级网格区域相同,唯一的区别在于,不需要引入阀值在构建新的网格区域; 1. 6,处理完一个一级网格区域后,依次选取下一个网格区域,作第4步的处理,直到所 有一级网格区域处理完成,离线预处理阶段结束; 步骤2.二级网格法在线计算过程 2. 1,读取目标点坐标,根据哈希函数快速定位所处的一级网格区域;哈希函数如下 式:
这里的N代表划分参数,a和b是某个维度上的边界坐标,X则代表空间维度坐标; 2. 2,取该网格区域对应的Hash数组值;若值为0,说明点不在对象空间内,退出在线查 找过程;若值为负数,说明该网格区域属于a类网格区域,可直接映射到FG矩阵上取得特征 值,退出在线查找过程;若该值为正整数,则需要采用直接查找法,取得这个网格区域内所 有分区的描述矩阵,依次判断该点是否在分区内,若找到对应分区,通过映射取得对应特征 值并退出,若找不到满足条件的分区,说明该点不在对象空间内,退出在线过程;否则,执行 下一步; 2. 3,如果一级Hash数组的值不为负数、0或者整数,说明它是非整数,需要我们跳至第 二级哈希表;同理,首先通过哈希函数确定状态点所处的二级哈希表网格区域,并取得相应 的二级Hash数组值;若该值等于0,直接断定该状态点不在对象空间内,跳出查找过程;若 该值小于〇,说明直接可以取到特征值,退出查找过程;否则需要采用直接查找法,取得这 个网格区域内所有分区的描述矩阵,依次判断该点是否在分区内,若找到对应分区,通过映 射取得对应特征值并退出,若找不到满足条件的分区,说明该点不在对象空间内,退出在线 过程。
【文档编号】G05B13/04GK104503225SQ201410489482
【公开日】2015年4月8日 申请日期:2014年9月23日 优先权日:2014年9月23日
【发明者】张聚, 胡标标, 谢作樟, 修晓杰, 崔文强 申请人:浙江工业大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1