CN107817680A - 直升机显式模型预测控制中基于k‑d树的点定位方法 - Google Patents
直升机显式模型预测控制中基于k‑d树的点定位方法 Download PDFInfo
- Publication number
- CN107817680A CN107817680A CN201710932386.3A CN201710932386A CN107817680A CN 107817680 A CN107817680 A CN 107817680A CN 201710932386 A CN201710932386 A CN 201710932386A CN 107817680 A CN107817680 A CN 107817680A
- Authority
- CN
- China
- Prior art keywords
- hyperplane
- tree
- node
- state
- region
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B13/00—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion
- G05B13/02—Adaptive control systems, i.e. systems automatically adjusting themselves to have a performance which is optimum according to some preassigned criterion electric
- G05B13/04—Adaptive 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/042—Adaptive 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)
Abstract
本发明的直升机显式模型预测控制中基于k‑d树的点定位方法,提出一种基于k‑d树的树型存储结构和相应的控制律在线查找方法。该树型结构结合了搜索二叉树(BST)和k‑d树,“树根”部分由k‑d树构成,“树梢”部分由搜索二叉树(BST)构建而成。主要包含以下步骤:(1)建立Quanser三自由度直升机的状态空间模型和状态空间分区集;(2)离线计算,对状态分区集建立树型存储结构;(3)在线搜索当前状态点所在分区;(4)应用于Quanser三自由度直升机系统。
Description
技术领域
本发明应用于三自由度直升机自动控制领域,为三自由度直升机显式模型预测控制中的点定位问题提供一种基于k-d树的控制律存储结构和相应的在线查找算法。
背景技术及意义
自1907年载人直升机诞生以来,经过100多年的发展,常规直升机技术已经非常成熟。和有固定机翼的飞机不同,直升机能够在小面积场地垂直起降,在空中定点悬停,定点360°回转;直升机能够作任意方向飞行,可以低速贴近地面飞行,还可在机身外部吊挂货物。由于这些特点使得直升机在军用、民用等领域得到了极为广泛的应用。本发明使用加拿大Quanser公司开发的三自由度直升机系统作为研究对象。三自由度直升机系统是一个典型的多输入多输出系统,并且具有强耦合、非线性等特性,是自动控制领域比较棘手的一类被控目标,直升机的控制效果可以分别通过高度轴,俯仰轴和旋转轴三个自由度的控制效果来体现。
对于Quanser三自由度直升机系统,采用显式模型预测控制对其进行实时控制。20世纪60年代初期发展起来并日趋完善的现代控制理论,具有最优的性能指标和系统而精确的理论设计方法,在航天航空、制导等领域中获得了卓越的成就。但是在应用于工业过程控制时却没有收到预期的效果。模型预测控制(Model Predictive Control,简称MPC)正是针对工业过程控制应运而生的控制算法,在石油、化工等过程工业领域获得了广泛应用。由于模型预测控制的反复在线优化计算特点,使得模型预测控制技术只能适用于系统的动态变化较慢的场合(如过程控制系统),难以适用于采样速率较高的系统和动态变化较快的系统如电机系统、电力系统、电力电子系统、机械振动控制、汽车电子控制等。显式模型预测控制(Explicit Model Predictive Control,简称EMPC)的出现减少了模型预测控制的在线计算时间,提高了在线计算速度和扩大了模型预测控制技术适用范围。EMPC分为离线计算和在线查找两个步骤,主要过程如图1所示。即:离线计算时,应用多参数规划(multi-parametric Quadratic Program,mp-QP)理论对系统的状态区域(即参数区域)进行凸划分,并离线计算得到对应每个状态分区上的状态反馈最优控制律;在线计算时,只需通过查找运算确定系统当前的状态点处于其状态空间的哪个分区,并按照该分区上的最优控制律得到当前时刻的最优控制量。判断空间中的某一点处于哪个分区,在计算几何中被称为点定位问题(Point-location Problem),解决这一问题的算法被称为点定位算法。显式模型预测控制实际在线控制过程的主要任务就是解决点定位问题,所采用的点定位算法的性能直接关系到显式模型预测控制的性能。衡量一个点定位算法的好坏,主要取决于在线查找的速度和数据存储中内存的需求量,即时间复杂度和空间复杂度。
发明内容
本发明要克服现有显式模型预测控制技术中的点定位问题,提出一种基于k-d树的树型存储结构和相应的在线查找方法。
该k-d树型结构结合了搜索二叉树(BST)和k-d树,“树根”部分由k-d树构成,“树梢”部分由搜索二叉树(BST)构建而成。为了维持该构造树的平衡性,本发明在构建k-d树部分时,通过计算仿射控制率的数量作为参考超平面(Candidate HP)的选择标准,在树的每一层上,在平行于指定坐标轴的超平面中,选择将分区空间中的仿射控制率数量分为“大致相同”的两部分的超平面作为参考超平面。其中“大致相同”是指通过超平面j的划分后的两部分仿射控制率数量nj|1和nj|2,保证两个控制率数量和最小(即arg minj(sum(nj|1+nj|2))),以及其中最大的那个数量保持最小(即arg minj(max(nj|1+nj|2)))。通过在平行于指定坐标轴的超平面中选择参考超平面方法,可以大大减少超平面计算时间,提高离线计算效率,特别是应用于具有高维状态空间三自由度直升机。在构建构造树型结构的时候,本发明设置一个阈值作为判读当前节点是否需要再次划分的标准,如果当前节点对应的子空间里的仿射控制率数量小于阈值,该节点就作为构造BST的根节点,子空间中的仿射控制率将由BST构造;否则继续以k-d树的结构进行构造树。该方法主体部分通过k-d树进行构造,相对现有的直接查找法、BST树构造法等,大大减少了离线计算时间和在线查找速度。
本发明的直升机显式模型预测控制中基于k-d树的点定位方法,包括如下步骤:
步骤1建立直升机的状态空间模型和状态空间分区集;
在分析直升机系统的受力原理的基础上,得到高度轴、俯仰轴和旋转轴的动力学模型、运动方程以及状态空间模型;
根据得到的状态方程和状态空间模型,通过MPT工具箱,建立状态空间分区集;状态空间划分后得到的分区集合都是多胞形,它们都是欧氏空间中封闭有界的凸集;空间中分区的划分过程中会存在大量的同义分区,即具有相同仿射控制率的相邻的不同分区;为了减少分区数量,首先对这些同义分区进行合并,然而,产生的具有相同仿射控制律的区域往往是非凸的,将非凸的区域进一步分割,最后描述为两个或多个多胞形的集合;
步骤2离线计算,对状态分区集建立树型存储结构;
为了确保建立的树型存储结构能够尽可能保持平衡和最小高度,对状态分区进行划分的参考超平面的选择起到关键作用,算法1描述了基于k-d树的参考超平面选择策略;假设状态分区空间的维数是Nx维的,对应于每个节点,分别对应的一个坐标轴e轴,e=1,2,…,Nx,参考超平面将在平行于e轴的超平面中计算得到;
算法1:计算参考超平面
输入:待划分的多面体区域P,坐标轴序号e,超平面移动步长l;
第S1步:设置起始超平面为平行于e轴的中间超平面,记为jk.;
第S2步:计算被超平面j划分后的两个多面体区域(分别为jk +和jk -)的仿射控制率个数,记为f+和f-,fk表示为两个控制率个数最大值,即fk=max(f+,f-);并且jk=j;
WHILE超平面j在多面体区域P中DO
IF f+>f-THEN
以步长为l移动超平面j到区域jk +中,并计算新的f+和f-;
IF max(f+,f-)<fk THEN fk=max(f+,f-),jk=j;
ELSE退出while循环;
END IF
ELSE
以步长为l移动超平面j到区域jk -中,并计算新的f+和f-;
IF max(f+,f-)<fk THEN fk=max(f+,f-),jk=j;
ELSE退出while循环;
END IF
END IF
END WHILE
第S3步:返回超平面jk.
END
构成树的每一个节点标识为Nk,使用一个链表U保存每个没有被探查过的节点的序号;一个没有被处探查过的非叶子节点由四部分构成{Ik,Jk,ik,jk},其中Jk表示从根节点N1到当前节点Nk用到的所有带符号的参考超平面序号,这些带符号的超平面可以表示一个多面体区域,表示为P(Jk),并且这些参考超平面是使用算法1计算得到的;Ik表示区域P(Jk)中的所有分区编号集合;ik表示与参考超平面平行的坐标轴序号;jk表示当前参考超平面的序号,没有计算前值为0;构造的树型结构由三部分构成,“叶子”,“树梢”部分的BST和“树干”部分的k-d树构成,何时采用BST树进行构造,通过子区域的仿射控制率数量|F|和阈值th的大小关系来判断;当|F|>th,仍以k-d树的形式进行构造,节点信息中的jk表示当前参考超平面的序号;当|F|≤th时,使用BST树形式进行构造,此时参考超平面在分区边界超平面中选择计算得到,节点信息中的jk表示分区边界超平面的序号;对于“叶子”节点,只需包含一个信息,即该分区的仿射控制率Fk;具体构造过程见算法2;
算法2:构造k-d树/BST树混合树型结构;
输入:阈值th,状态空间分区集P={P1,P2,…,PNr},对应的仿射控制率集F={F1,F2,…,FK},状态空间维数Nx;
第T1步:初始化参考超平面列表和其对应的序号列表
第T2步:初始化根节点并且U←{N1};
第T3步:
i.选择Nk∈U且U←U\Nk;
ii.IF|F(Ik)|>th THEN
a.使用算法1,在区域P(Jk)中计算平行于ik轴的分割参考超平面,并且将计算得到的分割参考超平面加入H,并且J←jk,Nk←jk;
b.创建Nk的两个子节点,ik=ik+1,IF ik>Nx THEN ik=1;END IF
N±←(I(Jk∪jk ±),Jk∪jk ±,ik,-1)并且U←N±;
iii.ELSE IF|F(Ik)|≤n并且|F(Ik)|>1THEN
c.ik←0;
d.在区域P(Jk)中的所有分区边界超平面中计算最优的分割参考超平面,并且将计算得到的分割参考超平面加入H,并且J←jk,Nk←jk,Nk←jk;
e.创建Nk的两个子节点N±←(I(Jk∪jk ±),Jk∪jk ±,ik,-1)并且U←N±;
iv.ELSE
通过设置ik←-1,标识节点Nk为叶子节点且N←(F(Ik),ik);
END IF
END WHILE
END
步骤3在线搜索当前状态点所在分区;
步骤3是三自由度直升机显式模型预测中点定位的关键步骤,在线查找状态点所在分区的时间决定了显式模型控制的效率和性能,而在线搜索时间取决于构造的树型结构;给定当前的状态点x=[x1,…,xNx]T,通过算法3在构造好的树型结构中查找,确定所属分区,得到对应的仿射控制率;每次查找均从根节点开始,首先根据节点中ik的值判断该节点位于树型结构的那个部分,树型结构分为三个部分:叶子,树梢和树干,分别对应于叶子节点,BST树和k-d树部分,当ik≠-1时,对应的节点位于BST树或k-d树部分,此时,通过dj(x)=aj Tx-bj的符号,得到下一个节点,直到叶子节点为止,得到该状态点对应的仿射控制律;
算法3:在线遍历查找,得到状态点对应的仿射控制律
输入:状态点x=[x1,…,xNx]T;
第P1步:从根节点开始,令当前节点为根节点,即Nk←N1;
第P2步:WHILE ik≠-1DO
将状态点x代入节点Nk的分割参考超平面方程,即dj(x)=aj Tx-bj,根据dj(x)的符号选择相应的子节点,并令子节点为当前节点;
END WHILE
第P3步:得到对应于节点Nk的仿射控制率u(x);
END;
步骤4,应用于Quanser三自由度直升机系统。
本发明的优点在于:
(1)采用k-d树作为存储结构的主要部分,k-d树是针对k维数据空间的空间划分数据结构,是多维空间查找的有效的存储结构,“树梢”部分采用搜索二叉树(BST)构成。
(2)在构建k-d树过程中,在平行于指定坐标轴的超平面中,通过判断超平面划分得到的两个子空间中仿射控制率数量确定对应于当前节点的参考超平面。
(3)本发明应用于三自由度直升机上,解决了在高复杂度情况下的实时在线计算问题。
附图说明
图1是现有的显式模型预测控制的主要过程的示意图。
图2是三自由度直升机受力分析图。
图3是三自由度直升机实验系统的示意图。
图4是调节实验Simulink结构图。
图5是MPT Controller内部S-Function示意图。
图6是Scopes模块展开图。
图7是3-DOF模块展开图_控制电压。
图8是3-DOF模块展开图_状态变量。
图9是跟踪实验_Simulink结构图。
图10是期望角模块展开图。
具体实施方式
为使本发明的目的、技术方案和优点更加清晰,下面结合附图2-10对本发明的技术方案作进一步描述。
本发明的三自由度直升机显式模型预测控制中基于k-d树的点定位方法的具体步骤如下:
步骤1建立Quanser三自由度直升机的状态空间模型和状态空间分区集
在分析三自由度直升机系统的受力原理的基础上,得到高度轴、俯仰轴和旋转轴的动力学模型,以及高度轴、俯仰轴和旋转轴的运动方程,建立三自由度直升机的状态空间模型。选取高度角ε、俯仰角ρ、旋转角γ,以及它们的微分和为状态变量,则状态矩阵为Quanser三自由度直升机受力图如图2所示。
选取输入和输出向量分别为:uT=[Uf Ub],yT=[ε p λ]得到如下状态空间模型:
计算得到状态方程的系数为:
代入具体的相应参数后得到最终状态方程系数为:
其中ε、p、λ分别为三自由度直升机状态变量的高度角、俯仰角、旋转角,以及它们的微分状态变量,Vf、Vb是输入状态电压,扰动项La为直升机本体到高度轴之间的距离,G为重力加速度,F、H、C为最终状态方程系数。
根据得到的状态方程和状态空间模型,通过MPT工具箱,建立状态空间分区集。状态空间划分后得到的分区集合都是多胞形,它们都是欧氏空间中封闭有界的凸集。空间中分区的划分过程中会存在大量的同义分区(具有相同仿射控制率的相邻的不同分区)。为了减少分区数量,首先对这些同义分区进行合并,然而,产生的具有相同仿射控制率的区域往往是非凸的,将非凸的区域进一步分割,最后描述为两个或多个多胞形的集合。
步骤2离线计算,对状态分区集建立树型存储结构
为了确保建立的树型存储结构能够尽可能保持平衡和最小高度,对状态分区进行划分的参考超平面的选择起到关键作用,算法1描述了基于k-d树的参考超平面选择策略。假设状态分区空间的维数是Nx维的,对应于每个节点,分别对应的一个坐标轴e(e=1,2,…,Nx)轴,参考超平面将在平行于e轴的超平面中计算得到。
算法1:计算参考超平面
输入:待划分的多面体区域P,坐标轴序号e,超平面移动步长l。
第1步:设置起始超平面为平行于e轴的中间超平面,记为jk.。
第2步:计算被超平面j划分后的两个多面体区域(分别为jk +和jk -)的仿射控制率个数,记为f+和f-,fk表示为两个控制率个数最大值,即fk=max(f+,f-)。并且jk=j。
WHILE超平面j在多面体区域P中DO
IF f+>f-THEN
以步长为l移动超平面j到区域jk +中,并计算新的f+和f-。
IF max(f+,f-)<fk THEN fk=max(f+,f-),jk=j。
ELSE退出while循环。
END IF
ELSE
以步长为l移动超平面j到区域jk -中,并计算新的f+和f-。
IF max(f+,f-)<fk THEN fk=max(f+,f-),jk=j。
ELSE退出while循环。
END IF
END IF
END WHILE
第3步:返回超平面jk.
END
构成树的每一个节点标识为Nk,使用一个链表U保存每个没有被探查过的节点的序号。一个没有被处探查过的非叶子节点由四部分构成{Ik,Jk,ik,jk},其中Jk表示从根节点N1到当前节点Nk用到的所有带符号的参考超平面序号(这些带符号的超平面可以表示一个多面体区域,表示为P(Jk),并且这些参考超平面是使用算法1计算得到的);Ik表示区域P(Jk)中的所有分区编号集合;ik表示与参考超平面平行的坐标轴序号;jk表示当前参考超平面的序号(没有计算前值为0)。构造的树型结构由三部分构成,“叶子”,“树梢”部分的BST和“树干”部分的k-d树构成,何时采用BST树进行构造,通过子区域的仿射控制率数量|F|和阈值th的大小关系来判断。当|F|>th,仍以k-d树的形式进行构造,节点信息中的jk表示当前参考超平面的序号;当|F|≤th时,使用BST树形式进行构造,此时参考超平面在分区边界超平面中选择计算得到,节点信息中的jk表示分区边界超平面的序号;对于“叶子”节点,只需包含一个信息,即该分区的仿射控制率Fk。具体构造过程见算法2。
算法2:构造k-d树/BST树混合树型结构
输入:阈值th,状态空间分区集P={P1,P2,…,PNr},对应的仿射控制率集F={F1,F2,…,FK},状态空间维数Nx。
第1步:初始化参考超平面列表和其对应的序号列表
第2步:初始化根节点并且U←{N1}。
第3步:
v.选择Nk∈U且U←U\Nk。
vi.IF|F(Ik)|>th THEN
c.使用算法1,在区域P(Jk)中计算平行于ik轴的分割参考超平面,并且将计算得到的分割参考超平面加入H,并且J←jk,Nk←jk。
d.创建Nk的两个子节点,ik=ik+1,IF ik>Nx THEN ik=1;END IF
N±←(I(Jk∪jk ±),Jk∪jk ±,ik,-1)并且U←N±。
vii.ELSE IF|F(Ik)|≤n并且|F(Ik)|>1THEN
a.ik←0。
b.在区域P(Jk)中的所有分区边界超平面中计算最优的分割参考超平面,并且将计算得到的分割参考超平面加入H,并且J←jk,Nk←jk,Nk←jk。
c.创建Nk的两个子节点N±←(I(Jk∪jk ±),Jk∪jk ±,ik,-1)并且U←N±。
viii.ELSE
通过设置ik←-1,标识节点Nk为叶子节点且N←(F(Ik),ik)。
END IF
END WHILE
END
步骤3在线搜索当前状态点所在分区
步骤3是三自由度直升机显式模型预测中点定位的关键步骤,在线查找状态点所在分区的时间决定了显式模型控制的效率和性能,而在线搜索时间取决于构造的树型结构。给定当前的状态点x=[x1,…,xNx]T,通过算法3在构造好的树型结构中查找,确定所属分区,得到对应的仿射控制率。每次查找均从根节点开始,首先根据节点中ik的值判断该节点位于树型结构的那个部分(树型结构分为三个部分:叶子,树梢和树干,分别对应于叶子节点,BST树和k-d树部分),当ik≠-1时,对应的节点位于BST树或k-d树部分,此时,通过dj(x)=aj Tx-bj的符号,得到下一个节点,直到叶子节点为止,得到该状态点对应的仿射控制率。
算法3:在线遍历查找,得到状态点对应的仿射控制率
输入:状态点x=[x1,…,xNx]T。
第1步:从根节点开始,令当前节点为根节点,即Nk←N1。
第2步:WHILE ik≠-1DO
将状态点x代入节点Nk的分割参考超平面方程,即dj(x)=aj Tx-bj,根据dj(x)的符号选择相应的子节点,并令子节点为当前节点。
END WHILE
第3步:得到对应于节点Nk的仿射控制率u(x)。
END
步骤4应用于三自由度直升机
整个三自由度直升机的实验系统如图3所示。三自由度直升机系统所用的仿真计算机为Acer Aspire M1860,是仿真实验系统的核心部分,机箱内装有数据采集卡QPID的板卡,它和外部的数据采集卡终端相连。使用软件Matlab/Simulink(Quanser公司开发的Quarc内嵌于simulink中)软件进行计算控制。计算机输出的控制信号经接口变换作用到被控对象,接口设备(数据采集卡和功率放大器)同时将实物系统的状态反馈回仿真计算机。数据采集卡用于接收控制信号,经功率放大器放大相应的倍数作用到被控对象,采集回来的数据又经过数据采集卡反馈给仿真计算机用于计算。通过控制三自由度直升机模型的姿态,模拟仿真纵列式双旋翼直升机的飞行状况。直升机三个自由度的角度通过各个轴上的编码器计数并乘以相应的分辨率得到。高度角和俯仰角的编码器分辨率为每转计数4096次,旋转角的编码器分辨率为每转计数8192次。
案例分析
本发明以三自由度直升机为控制对象,提取三自由度直升机的状态模型,得到状态方程,获得状态空间分区集,构造状态分区和仿射控制率的存储结构,并通过三自由度直升机的调节和跟踪试验,同时与采用直接查找法的控制效果相比较,验证本发明的有效性和优越性。
(1)调节实验
调节实验中,当系统调节稳定后,通过人为施加干扰,给旋转角以正向和负向的偏移来验证本发明中基于k-d树的点定位方法在突发情况下的抗干扰能力;此外,三自由度直升机自带干扰系统ADS(Active Disturbance System),通过开启ADS来验证本发明在持续干扰下的抗干扰能力。
图4为调节实验的Simulink结构图,主要包括MPT控制器、三自由度直升机+ADS模块以及示波器模块。MPT控制器和示波器模块的展开图同图5和图6。
三自由度直升机的内部结构图,如图7和图8所示。
三自由度直升机调节的初始值都为x0=[-27.5;0;-13;0;0;0]。基于k-d树的查找法和直接查找法的控制效果汇总在表1中。
表1基于k-d树查找法和直接查找法的调节实验控制效果一览表
基于k-d树的查找法在上升时间、最大偏移量、调节时间和振荡收敛次数上,都明显优于直接查找法。
(2)矩形波跟踪实验
图9为跟踪实验的Simulink结构图。主要结构包括期望角度模块、MPT控制器、三自由度直升机模块和示波器模块。三自由度直升机期望角模块展开如图10所示。
跟踪正弦波时,高度角跟踪频率为0.04HZ,幅值为7.5°的矩形波。旋转角跟踪频率为0.03HZ,幅值为30°的矩形波。其中高度角由于初始值为-27.5°,所以在矩形波的基础上叠加了一个恒定值模块,初始值为-27.5°,可以通过滑块调节到0°后,再进行跟踪实验。基于k-d树查找法和直接查找法的高度角控制效果汇总在表2中,旋转角控制效果汇总在表3中。
表2基于k-d树查找法和直接查找法的高度角调节控制效果一览表
对于高度角的跟踪,基于k-d树查找法在期望信号变化的瞬间,能更快做出反应,具有更好的动态性能,且具有更小最大偏移量,能够更快更平稳得跟踪。在时域上,基于k-d树查找法的延迟比直接查找法要小。
表3基于k-d树查找法和直接查找法的旋转角调节控制效果一览表
直接查找法对旋转角的跟踪效果非常不好,只能跟踪出大概的轮廓,而基于k-d树查找法,具有较快的上升时间,动态响应好。
本发明的优点和独创是:
1、本发明引入k-d树数据结构,在树的每个节点上,采用平行于指定坐标轴的超平面作为空间分割参考超平面,提高了离线计算速度;
2、本发明采用k-d树与BST树结合构造出一种混合树型结构,既提高了离线计算速度,也能有效地保证尽可能产生多余的分区空间,减少了存储需求。
3、本发明应用于三自由度直升机模型之中,在调节时间、最大偏移量等方面上具有较高的性能。
本发明步骤明确结构简单,拥有完善的理论支持。
Claims (1)
1.直升机显式模型预测控制中基于k-d树的点定位方法,包括如下步骤:
步骤1 建立直升机的状态空间模型和状态空间分区集;
在分析直升机系统的受力原理的基础上,得到高度轴、俯仰轴和旋转轴的动力学模型、运动方程以及状态空间模型;
根据得到的状态方程和状态空间模型,通过MPT工具箱,建立状态空间分区集;状态空间划分后得到的分区集合都是多胞形,它们都是欧氏空间中封闭有界的凸集;空间中分区的划分过程中会存在大量的同义分区,即具有相同仿射控制率的相邻的不同分区;为了减少分区数量,首先对这些同义分区进行合并,然而,产生的具有相同仿射控制律的区域往往是非凸的,将非凸的区域进一步分割,最后描述为两个或多个多胞形的集合;
步骤2 离线计算,对状态分区集建立树型存储结构;
为了确保建立的树型存储结构能够尽可能保持平衡和最小高度,对状态分区进行划分的参考超平面的选择起到关键作用,算法1描述了基于k-d树的参考超平面选择策略;假设状态分区空间的维数是Nx维的,对应于每个节点,分别对应的一个坐标轴e轴,e=1,2,…,Nx,参考超平面将在平行于e轴的超平面中计算得到;
算法1:计算参考超平面
输入:待划分的多面体区域P,坐标轴序号e,超平面移动步长l;
第S1步:设置起始超平面为平行于e轴的中间超平面,记为jk.;
第S2步:计算被超平面j划分后的两个多面体区域(分别为jk +和jk -)的仿射控制率个数,记为f+和f-,fk表示为两个控制率个数最大值,即fk=max(f+,f-);并且jk=j;
WHILE超平面j在多面体区域P中DO
IF f+>f-THEN
以步长为l移动超平面j到区域jk +中,并计算新的f+和f-;
IF max(f+,f-)<fk THEN fk=max(f+,f-),jk=j;
ELSE退出while循环;
END IF
ELSE
以步长为l移动超平面j到区域jk -中,并计算新的f+和f-;
IF max(f+,f-)<fk THEN fk=max(f+,f-),jk=j;
ELSE退出while循环;
END IF
END IF
END WHILE
第S3步:返回超平面jk.
END
构成树的每一个节点标识为Nk,使用一个链表U保存每个没有被探查过的节点的序号;一个没有被处探查过的非叶子节点由四部分构成{Ik,Jk,ik,jk},其中Jk表示从根节点N1到当前节点Nk用到的所有带符号的参考超平面序号,这些带符号的超平面可以表示一个多面体区域,表示为P(Jk),并且这些参考超平面是使用算法1计算得到的;Ik表示区域P(Jk)中的所有分区编号集合;ik表示与参考超平面平行的坐标轴序号;jk表示当前参考超平面的序号,没有计算前值为0;构造的树型结构由三部分构成,“叶子”,“树梢”部分的BST和“树干”部分的k-d树构成,何时采用BST树进行构造,通过子区域的仿射控制率数量|F|和阈值th的大小关系来判断;当|F|>th,仍以k-d树的形式进行构造,节点信息中的jk表示当前参考超平面的序号;当|F|≤th时,使用BST树形式进行构造,此时参考超平面在分区边界超平面中选择计算得到,节点信息中的jk表示分区边界超平面的序号;对于“叶子”节点,只需包含一个信息,即该分区的仿射控制率Fk;具体构造过程见算法2;
算法2:构造k-d树/BST树混合树型结构;
输入:阈值th,状态空间分区集P={P1,P2,…,PNr},对应的仿射控制率集F={F1,F2,…,FK},状态空间维数Nx;
第T1步:初始化参考超平面列表和其对应的序号列表
第T2步:初始化根节点并且U←{N1};
第T3步:WHILEDO
i.选择Nk∈U且U←U\Nk;
ii.IF|F(Ik)|>th THEN
a.使用算法1,在区域P(Jk)中计算平行于ik轴的分割参考超平面,并且将计算得到的分割参考超平面加入H,并且J←jk,Nk←jk;
b.创建Nk的两个子节点,ik=ik+1,IF ik>Nx THEN ik=1;END IF
N±←(I(Jk∪jk ±),Jk∪jk ±,ik,-1)并且U←N±;
iii.ELSE IF|F(Ik)|≤n并且|F(Ik)|>1THEN
c.ik←0;
d.在区域P(Jk)中的所有分区边界超平面中计算最优的分割参考超平面,并且将计算得到的分割参考超平面加入H,并且J←jk,Nk←jk,Nk←jk;
e.创建Nk的两个子节点N±←(I(Jk∪jk ±),Jk∪jk ±,ik,-1)并且U←N±;
iv.ELSE
通过设置ik←-1,标识节点Nk为叶子节点且N←(F(Ik),ik);
END IF
END WHILE
END
步骤3 在线搜索当前状态点所在分区;
步骤3是三自由度直升机显式模型预测中点定位的关键步骤,在线查找状态点所在分区的时间决定了显式模型控制的效率和性能,而在线搜索时间取决于构造的树型结构;给定当前的状态点x=[x1,…,xNx]T,通过算法3在构造好的树型结构中查找,确定所属分区,得到对应的仿射控制率;每次查找均从根节点开始,首先根据节点中ik的值判断该节点位于树型结构的那个部分,树型结构分为三个部分:叶子,树梢和树干,分别对应于叶子节点,BST树和k-d树部分,当ik≠-1时,对应的节点位于BST树或k-d树部分,此时,通过dj(x)=aj Tx-bj的符号,得到下一个节点,直到叶子节点为止,得到该状态点对应的仿射控制律;
算法3:在线遍历查找,得到状态点对应的仿射控制律
输入:状态点x=[x1,…,xNx]T;
第P1步:从根节点开始,令当前节点为根节点,即Nk←N1;
第P2步:WHILE ik≠-1DO
将状态点x代入节点Nk的分割参考超平面方程,即dj(x)=aj Tx-bj,根据dj(x)的符号选择相应的子节点,并令子节点为当前节点;
END WHILE
第P3步:得到对应于节点Nk的仿射控制率u(x);
END;
步骤4,应用于Quanser三自由度直升机系统。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710932386.3A CN107817680B (zh) | 2017-10-10 | 2017-10-10 | 直升机显式模型预测控制中基于k-d树的点定位方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710932386.3A CN107817680B (zh) | 2017-10-10 | 2017-10-10 | 直升机显式模型预测控制中基于k-d树的点定位方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107817680A true CN107817680A (zh) | 2018-03-20 |
CN107817680B CN107817680B (zh) | 2020-07-17 |
Family
ID=61607781
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710932386.3A Active CN107817680B (zh) | 2017-10-10 | 2017-10-10 | 直升机显式模型预测控制中基于k-d树的点定位方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107817680B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002097540A1 (en) * | 2001-05-25 | 2002-12-05 | Parametric Optimization Solutions Ltd. | Improved process control |
US20070225835A1 (en) * | 2006-03-23 | 2007-09-27 | Yucai Zhu | Computer method and apparatus for adaptive model predictive control |
CN104503225A (zh) * | 2014-09-23 | 2015-04-08 | 浙江工业大学 | 控制系统中点定位方法 |
CN104570759A (zh) * | 2014-10-28 | 2015-04-29 | 浙江工业大学 | 控制系统中点定位问题的快速二叉树法 |
CN105654187A (zh) * | 2015-12-21 | 2016-06-08 | 浙江工业大学 | 控制系统中点定位方法之网格二叉树法 |
CN105867121A (zh) * | 2016-03-28 | 2016-08-17 | 南京航空航天大学 | 用于自旋恢复的直升机非线性预测控制方法及装置 |
US9715514B2 (en) * | 2012-06-15 | 2017-07-25 | University Of Calcutta | K-ary tree to binary tree conversion through complete height balanced technique |
CN107065897A (zh) * | 2016-06-20 | 2017-08-18 | 浙江工业大学 | 三自由度直升机显式模型预测控制方法 |
-
2017
- 2017-10-10 CN CN201710932386.3A patent/CN107817680B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002097540A1 (en) * | 2001-05-25 | 2002-12-05 | Parametric Optimization Solutions Ltd. | Improved process control |
US20070225835A1 (en) * | 2006-03-23 | 2007-09-27 | Yucai Zhu | Computer method and apparatus for adaptive model predictive control |
US9715514B2 (en) * | 2012-06-15 | 2017-07-25 | University Of Calcutta | K-ary tree to binary tree conversion through complete height balanced technique |
CN104503225A (zh) * | 2014-09-23 | 2015-04-08 | 浙江工业大学 | 控制系统中点定位方法 |
CN104570759A (zh) * | 2014-10-28 | 2015-04-29 | 浙江工业大学 | 控制系统中点定位问题的快速二叉树法 |
CN105654187A (zh) * | 2015-12-21 | 2016-06-08 | 浙江工业大学 | 控制系统中点定位方法之网格二叉树法 |
CN105867121A (zh) * | 2016-03-28 | 2016-08-17 | 南京航空航天大学 | 用于自旋恢复的直升机非线性预测控制方法及装置 |
CN107065897A (zh) * | 2016-06-20 | 2017-08-18 | 浙江工业大学 | 三自由度直升机显式模型预测控制方法 |
Non-Patent Citations (5)
Title |
---|
ALEXANDER FUCHS,ECT.: "Optimized decision trees for point location in polytopic data sets - application to explicit MPC", 《ADVANCES IN COMPUTING AND COMMUNICATIONS》 * |
JU ZHANG,ECT.: "Using a Two-Level Structure to Manage the Point Location Problem in Explicit Model Predictive Control", 《ASIAN JOURNAL OF CONTROL》 * |
YI DING,ECT.: "Fast Model Predictive Control Combining Offline Method and Online Optimization with K-D Tree", 《MATHEMATICAL PROBLEMS IN ENGINEERING》 * |
张聚等: "快速在线模型预测及在三自由度直升机中的应用", 《系统科学与数学》 * |
张聚等: "显式模型预测控制的可达分区点定位算法", 《系统科学与数学》 * |
Also Published As
Publication number | Publication date |
---|---|
CN107817680B (zh) | 2020-07-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Budiyono et al. | Optimal tracking controller design for a small scale helicopter | |
Molinari et al. | Aero-structural optimization of three-dimensional adaptive wings with embedded smart actuators | |
Karimi et al. | Optimal maneuver-based motion planning over terrain and threats using a dynamic hybrid PSO algorithm | |
CN108170162B (zh) | 多尺度风扰分析无人机机群协调控制系统性能评估方法 | |
CN110989626A (zh) | 一种基于控制参数化的无人机路径规划方法 | |
CN109507890A (zh) | 一种基于eso的无人机动态逆广义预测控制器 | |
CN112631316A (zh) | 变负载四旋翼无人机的有限时间控制方法 | |
Santoso et al. | A self-learning TS-fuzzy system based on the C-means clustering technique for controlling the altitude of a hexacopter unmanned aerial vehicle | |
Chauhan et al. | Application of neural networks based method for estimation of aerodynamic derivatives | |
CN107608214A (zh) | 三自由度直升机显式模型预测控制中的多级网格点定位方法 | |
Naik et al. | Pareto optimal and dual-objective geometric and structural design of an underwater kite for closed-loop flight performance | |
Velagić et al. | Design of LQR controller for 3D trajectory tracking of octocopter unmanned aerial vehicle | |
Lee et al. | Multi-objective/multidisciplinary design optimisation of blended wing body UAV via advanced evolutionary algorithms | |
CN117519257A (zh) | 一种基于反步法的超声速巡航高度控制方法 | |
Han et al. | Hybrid Algorithm-Based Full Coverage Search Approach With Multiple AUVs to Unknown Environments in Internet of Underwater Things | |
Ruland et al. | Black-box online aerodynamic performance optimization for a seamless wing with distributed morphing | |
Murman et al. | Automated parameter studies using a Cartesian method | |
Blumel et al. | Fuzzy autopilot design using a multiobjective evolutionary algorithm | |
CN107817680A (zh) | 直升机显式模型预测控制中基于k‑d树的点定位方法 | |
Naik et al. | Combined plant and controller optimization of an underwater energy harvesting kite system | |
Monfared et al. | Robust H∞ control for path tracking of a quadrotor through estimation of system parameters | |
Akhtar et al. | Path following for a class of underactuated systems using global parameterization | |
Li et al. | Incremental dual heuristic dynamic programming based hybrid approach for multi-channel control of unstable tailless aircraft | |
CN114924591A (zh) | 一种无人飞行集群分组跟踪控制一体化方法 | |
Al-sudany et al. | Extended Linear Regression and Interior Point Optimization for Identification of Model Parameters of Fixed Wing UAVs |
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 |