控制系统中点定位方法之网格二叉树法技术方案

技术编号:15080507 阅读:219 留言:0更新日期:2017-04-07 12:37
网格二叉树法分为两个主要的阶段——离线预处理阶段和在线计算阶段。离线预处理阶段引入了多参数二次规划理论,计算机能自行将控制系统的状态空间划分为一个个凸的分区并计算得到每个分区对应的控制率,然后我们根据划分参数构建哈希表网格区域多胞形,在存在冲突的网格区域构建二叉树。在线计算阶段首先根据状态点坐标快速确定所在网格区域,经过建立的二叉树筛选或者直接获得状态点控制率,通过简单线性运算得到系统的控制输出量。

【技术实现步骤摘要】

本专利技术是针对显式模型预测控制中点定位方法的优化,该网格二叉树法相对于传统的二叉树法,只需面对更少的多胞形分区规模,降低了预处理的复杂度,大大减少了预处理时间。同时它也解决了哈希表法中存在的冲突问题,改进了哈希表法在线计算时间。在存储空间需求这一性能方面,也满足了我们对控制系统的要求。
技术介绍
在传统的模型预测控制中存在反复的在线优化计算,它造成了控制器负荷过重并且效率低下。为了解决这些问题,在2002年前后ManfredMorari和AlbertoBemporad等学者引入了多参数二次规划理论,建立了显式模型预测控制方法体系。它主要是利用模型预测控制系统内在的分段仿射规律,根据控制对象的模型、约束、性能要求等信息,通过多参数二次规划(multi-parametricQuadraticProgram,mp-QP)将系统状态空间划分为一个个凸的分区并预先计算出各个分区上对应的最优控制率。这意味着传统的模型预测控制中复杂费时的在线优化过程被提前到控制系统实际运行前完成,而在线控制时只需确定系统当前状态点所处分区,即可得到相应的最优控制率。这种查找运算的效率远高于反复在线优化计算,控制系统的实时性能得到大幅度提高,同时也降低了对控制系统软硬件的要求。根据上面的介绍可以知道显式模型预测控制在线控制阶段的主要任务就是解决点定位问题。顾名思义,点定位问题指的就是判断空间中的状态点处于哪一个分区。这里的分区是指通过多参数二次规划(mp-QP)将状态空间划分为的一个个凸分区,确定点所处的分区目的即取得该分区最优控制率,经过简单换算实现系统最优控制。我们采用的点定位方法的性能直接关系到显式模型预测控制系统的性能,这里点定位方法的性能指的是数据所占存储空间、离线计算时间和在线计算时间三个方面。传统的点定位方法有直接查找法、可达分区法、哈希表法、二叉树法等等,详细介绍这些方法的公开文献已有许多,这里就不再赘述。虽然它们也能实际有效地解决点定位问题,但是在性能方面已经不能满足我们的控制需求。传统的二叉树方法与其他的点定位方法相比,它在存储空间需求和在线查找效率上有着无法匹敌的优势,但是它的预处理时间却不能满足我们控制系统的要求,传统的哈希表法所展现的在线效率也使我们不敢恭维。这里我们就希望能提出一种新的点定位方法,它需要保留传统二叉树法和哈希表法的优点,同时也要在存储空间需求上有着不俗的表现。
技术实现思路
本专利技术要客服传统点定位方法的的上述缺点,提供了一种网格二叉树法。它不仅完整保留了传统二叉树法和哈希表法所展现的低预处理时间和高在线效率,同时它也多少继承了二叉树法在存储空间需求方面的优势。点定位的实质就是在确定空间中某一点所处分区,然后取得此分区控制率实现控制效果。二叉树法的预处理过程中最为复杂耗时的操作是从大量的分区边界超平面中挑选出一组最合适的组合来建立二叉树,这个过程要求在建立二叉树的每个节点时都要执行反复的计算和对比,计算量随着分区的维度和数量成指数增长。而哈希表法中最费时的步骤当属在线阶段时通过直接查找确定状态点所在分区。于是这里我们就结合两个方法,取其精华,去其糟粕,提出了网格二叉树法。网格二叉树法分为两个主要的阶段——离线预处理阶段和在线计算阶段。离线预处理阶段引入了多参数二次规划理论,计算机能自行将控制系统的状态空间划分为一个个凸的分区并计算得到每个分区对应的控制率,然后我们根据划分参数构建哈希表网格区域多胞形,在存在冲突的网格区域构建二叉树。在线计算阶段首先根据状态点坐标快速确定所在网格区域,经过建立的二叉树筛选或者直接获得状态点控制率,通过简单线性运算得到系统的控制输出量。本专利技术所述的控制系统中点定位问题的网格二叉树法,具体包括以下步骤:步骤1.网格二叉树法离线预处理过程1.1,在控制系统中引入多参数二次规划,将系统状态空间划分为一个个凸的分区,并计算得到每个分区对应的控制率,保存在FG数组中。1.2,由确定同义分区的式子计算得到同义分区并分组,每一组同义分区仅保留一个特征值数据,这样就消除了特征值数组FG中的冗余数据。空间中分区的划分是依据特征值——同一分区中的所有点具有相同的特征值。我们将特征值相等的分区称为同义分区。显式模型预测控制中分区特征值(在这里即显式模型预测控制的控制率)被称为FG矩阵。例如某个显式模型预测控制输出维度为1的二维状态空间分区P的FG矩阵为:FG1=[f11f12g1](1)相邻另一个分区Q的FG矩阵为:FG2=[f21f22g2](2)若满足:(f11-f21)2+(f12-f22)2+(g1-g2)2≤δ(3)其中(3)式即为确定同义分区的式子,f和g是组成特征值矩阵的元素,我们需要的控制输出是由特征值和状态向量计算得到。当δ是一个极小的正数,则认为P和Q是同义的,它们互为同义分区。1.3,根据划分参数计算哈希函数,将得到的数据记录于一个数组中,我们把数组命名为Fhash。哈希函数如下式:f(X)=floor((X-a)×Nb-a)---(4)]]>这里的N代表划分参数,a和b是某个维度上的边界坐标,我们需要记录在数组中的数据为-a和在线计算阶段时就可以通过状态点坐标X快速确定所处哈希表网格区域。1.4,根据划分参数构造哈希表网格区域多胞形,按照顺序选取第一个网格区域与分区求交,统计在这个网格区域中的特征值数量。1.5,判断该网格区域是否存在冲突。网格区域中特征值数量大于1即为存在冲突。若存在冲突,跳转至1.7,开始在网格区域中建立二叉树,若不存在冲突,进入下一步。1.6,判断该网格区域是否完全处在对象空间外。若网格区域不与任意一个分区相交,则直接在Hash数组中相应位置记录为0。若网格区域中只存在一种特征值,则直接在Hash数组中相应位置记录特征值编号。完成这步后跳转至1.19。1.7,首先在Hash数组中填入二叉树根节点地址,并标记为负值。接着移除网格区域中线性相关的超平面和对象空间的外部边界,不选择它们作为待选超平面。在这里对象空间中的一个个分区都是由超平面划分而成,二叉树法的原理就是在一个个节点处判断点与超平面的位置关系,确定状态点处于超平面的哪一侧,排除近一半的分区后进入下一个节点继续判断,最后得到状态点所处分区。因此用对象空间的外部边界作为节本文档来自技高网
...

【技术保护点】
控制系统中点定位问题的网格二叉树法,具体包括以下步骤:步骤1.网格二叉树法离线预处理;1.1,在控制系统中引入多参数二次规划,将系统状态空间划分为一个个凸的分区,并计算得到每个分区对应的控制率,保存在FG数组中;1.2,由确定同义分区的式子计算得到同义分区并分组,每一组同义分区仅保留一个特征值数据,这样就消除了特征值数组FG中的冗余数据;空间中分区的划分是依据特征值——同一分区中的所有点具有相同的特征值;我们将特征值相等的分区称为同义分区;显式模型预测控制中分区特征值(在这里即显式模型预测控制的控制率)被称为FG矩阵;例如某个显式模型预测控制输出维度为1的二维状态空间分区P的FG矩阵为:FG1=[f11 f12 g1]           (1)相邻另一个分区Q的FG矩阵为:FG2=[f21 f22 g2]            (2)若满足:(f11‑f21)2+(f12‑f22)2+(g1‑g2)2≤δ    (3)其中(3)式即为确定同义分区的式子,fij和gi(i,j=1,2)是组成特征值矩阵的元素,我们需要的控制输出是由特征值和状态向量计算得到;定义δ为一个极小正数,则认为P和Q是同义的,它们互为同义分区;1.3,根据划分参数计算哈希函数,将得到的数据记录于一个数组中,我们把数组命名为Fhash;哈希函数如下式:f(X)=floor((X-a)×Nb-a)---(4)]]>这里的N代表划分参数,a和b是某个维度上的边界坐标,我们需要记录在数组中的数据为‑a和在线计算阶段时就可以通过状态点坐标X快速确定所处哈希表网格区域;1.4,根据划分参数构造哈希表网格区域多胞形,按照顺序选取第一个网格区域与分区求交,统计在这个网格区域中的特征值数量;1.5,判断该网格区域是否存在冲突;网格区域中特征值数量大于1即为存在冲突;若存在冲突,跳转至1.7,开始在网格区域中建立二叉树,若不存在冲突,进入下一步;1.6,判断该网格区域是否完全处在对象空间外;若网格区域不与任意一个分区相交,则直接在Hash数组中相应位置记录为0;若网格区域中只存在一种特征值,则直接在Hash数组中相应位置记录特征值编号;完成这步后跳转至1.19;1.7,首先在Hash数组中填入二叉树根节点地址,并标记为负值;接着移除网格区域中线性相关的超平面和对象空间的外部边界,不选择它们作为待选超平面;在这里对象空间中的一个个分区都是由超平面划分而成,二叉树法的原理就是在一个个节点处判断点与超平面的位置关系,确定状态点处于超平面的哪一侧,排除近一半的分区后进入下一个节点继续判断,最后得到状态点所处分区;因此用对象空间的外部边界作为节点判断依据是多余的,它的一侧还是整个对象空间,起不到排除作用;1.8,将分区按特征值(这里的特征值即为控制率)分组,特征值相同的分区为一组,将相同的特征值合为一个数据;1.9,计算每一组分区中的极点坐标,并消除每一组极点坐标中的重复坐标,进入根节点;1.10,从当前节点待选超平面中抽取第一个超平面;1.11,统计超平面两侧的特征值数量;这个统计的方法是建立二叉树重要的一步,它无需判断所有的分区极点即可统计超平面两侧的特征值数量,大大缩短预处理时间;主要步骤如下:a,载入按特征值相等的特性分组的分区极点数据;b,载入待判断超平面,抽取第一组第一个极点坐标,将超平面两侧分别定义为Hp‑和Hp+,两侧的特征值数量分别为m和n个,先令m和n均为0.c,将Lf和Rf作为极点是否处于Hp‑和Hp+的标记,值为0代表假,值为1代表真;先令Lf和Rf均为0;d,判断极点与超平面的位置关系;对于超平面Hp={x|hx=k},如果点x满足hx≤k,则认为点x位于Hp‑,否则位于Hp+;其中h和k为超平面表达式参数,x为待判断状态点坐标;e,若极点位于Hp‑,令Lf=1,跳转至g,否则进行下一步;f,判断极点是否位于Hp+,若为真,令Rf=1;否则跳转至h;g,判断Rf=1与Lf=1是否同时成立,若为假,进行下一步,若为真,跳转至i;h,判断是否是本组最后一个极点,若为假,抽取本组下一个极点坐标,并跳转至d;若为真,如果Lf=1,m的值加1,如果Rf=1,n的值加1;i,判断这一组是否为最后一组极点数据,若为假,抽取下一组第一个极点坐标,并跳转至c,否则超平面两侧特征值数量统计完成;1.12,判断这是否是最后一个待选超平面,若为假,抽取下一个待选超平面,跳转至1.11统计超平面两侧特征值数量,若为真,进入下一步;1.13,根据指标确定参考超平面;希望建立的二叉树深度地且节点少,不可能尝试所有的组合建立所有可能的二叉树,再选取最好的一棵;只需考虑节点两侧(即超平面两侧)特征值数量大致相同,则认为该超平面比较适合作为参考超平面;描述指标如下:J=(m+n)2...

【技术特征摘要】
1.控制系统中点定位问题的网格二叉树法,具体包括以下步骤:
步骤1.网格二叉树法离线预处理;
1.1,在控制系统中引入多参数二次规划,将系统状态空间划分为
一个个凸的分区,并计算得到每个分区对应的控制率,保存在FG数组
中;
1.2,由确定同义分区的式子计算得到同义分区并分组,每一组同
义分区仅保留一个特征值数据,这样就消除了特征值数组FG中的冗余
数据;
空间中分区的划分是依据特征值——同一分区中的所有点具有相
同的特征值;我们将特征值相等的分区称为同义分区;显式模型预测
控制中分区特征值(在这里即显式模型预测控制的控制率)被称为FG
矩阵;例如某个显式模型预测控制输出维度为1的二维状态空间分区P
的FG矩阵为:
FG1=[f11f12g1](1)
相邻另一个分区Q的FG矩阵为:
FG2=[f21f22g2](2)
若满足:
(f11-f21)2+(f12-f22)2+(g1-g2)2≤δ(3)
其中(3)式即为确定同义分区的式子,fij和gi(i,j=1,2)是组成特征
值矩阵的元素,我们需要的控制输出是由特征值和状态向量计算得到;
定义δ为一个极小正数,则认为P和Q是同义的,它们互为同义分区;
1.3,根据划分参数计算哈希函数,将得到的数据记录于一个数组
中,我们把数组命名为Fhash;哈希函数如下式:
f(X)=floor((X-a)×Nb-a)---(4)]]>这里的N代表划分参数,a和b是某个维度上的边界坐标,我们需要记
录在数组中的数据为-a和在线计算阶段时就可以通过状态点坐
标X快速确定所处哈希表网格区域;
1.4,根据划分参数构造哈希表网格区域多胞形,按照顺序选取
第一个网格区域与分区求交,统计在这个网格区域中的特征值数
量;
1.5,判断该网格区域是否存在冲突;网格区域中特征值数量大
于1即为存在...

【专利技术属性】
技术研发人员:张聚刘敏超胡标标林广阔
申请(专利权)人:浙江工业大学
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1