一种平流层飞艇高度控制方法及系统与流程

文档序号:23653193发布日期:2021-01-15 13:49阅读:145来源:国知局
一种平流层飞艇高度控制方法及系统与流程

本发明涉及飞艇高度控制技术领域,特别是涉及一种平流层飞艇高度控制方法及系统。



背景技术:

平流层飞艇是典型的低速临近空间飞行器,在驻空阶段,能源上依靠太阳能电池与蓄电池相结合构成的昼夜闭环系统,动力上依靠矢量推进装置,目的在于对飞艇水平轨迹和高度进行控制,从而实现月量级的区域长航时驻留,其在对地高分辨率观测、通信中继、侦察监视、环境监测等领域拥有巨大应用潜力,被誉为“平流层卫星”。

可靠的高度调控是实现平流层飞艇区域驻留和长航时驻空的关键技术之一,主要原因在于平流层区域存在随高度分布的风场,风场短周期时空变化特征明显,与此同时,平流层飞艇体积巨大,迎风面积大,能量消耗与风速的三次方成正比,当其处于强风场环境时,会导致飞艇平台产生过多的能源消耗。因此,需要对飞艇高度进行适当调控,使飞艇尽量保持在弱风层飞行,降低能源消耗,延长驻留时间。但飞艇高度控制面临欠驱动、大惯量、长时延、动力学模型参数不确定、非线性特征明显等诸多难题。

平流层飞艇的飞行原理显著区别于飞机等常规飞行器,在高度调控方面,飞艇的爬升与下降主要依靠充气阀门/风机调节,舵面控制与动力矢量推进仅作为短时的辅助手段。国内外学者针对平流层飞艇及类似浮空器的高度控制展开了系列研究,传统控制包括常规的线性pid控制、非线性增益调度控制、反步法控制等,在一定条件下均能实现对高度的有效控制,但在不同程度上均存在选参困难、难以自适应等问题。随着计算机性能的提升和机器学习算法、平台的迅速发展,人工智能决策与控制逐渐深入到各种应用场景中,包括利用高斯过程处理连续状态动作空间的monte-carlo学习方法、基于高斯过程动力学模型的局部可观测贝叶斯学习以及利用cmac神经网络的q-learning方法等,但这些智能控制方法普遍存在随机性大、收敛特性差的特点。

基于此,凾需一种能够提高飞艇高度控制的适应性和稳定性的控制方法及系统。



技术实现要素:

本发明的目的是提供一种平流层飞艇高度控制方法及系统,不再依赖于动力学模型,而基于实际运动状态对飞艇高度进行控制,能够提高控制的适应性、有效性和稳定性。

为实现上述目的,本发明提供了如下方案:

一种平流层飞艇高度控制方法,所述控制方法包括如下步骤:

建立用于飞艇高度控制的马尔可夫决策过程模型;所述马尔可夫决策过程模型包括状态空间、动作空间、回报值空间、状态转移概率以及目标优化函数;

随机确定飞艇初始状态,以所述飞艇初始状态作为当前状态;

基于所述当前状态,根据q-learning算法和所述状态转移概率从所述动作空间中选择多个动作;

对于每一动作,根据所述动作和所述回报值空间确定与所述动作相对应的回报奖励值和下一时刻的状态;

对于每一所述下一时刻的状态,判断所述下一时刻的状态是否为终止状态,得到第一判断结果;

当所述第一判断结果为是时,以所述下一时刻的状态作为所述终止状态,确定从所述飞艇初始状态转移到所述终止状态所选择的所有动作,以所选择的所有动作作为所述终止状态所对应的动作序列;

当所述第一判断结果为否时,以所述下一时刻的状态作为所述当前状态,返回“基于所述当前状态,根据q-learning算法和所述状态转移概率从所述动作空间中选择多个动作”的步骤,直至每一所述下一时刻的状态均为所述终止状态,并确定每一所述终止状态所对应的动作序列;

利用所述目标优化函数,计算每一所述动作序列对应的目标值;选取所有所述动作序列中目标值最大的动作序列作为最优序列;根据所述最优序列控制飞艇运动。

一种平流层飞艇高度控制系统,所述控制系统包括:

马尔可夫决策过程模型获取模块,用于建立用于飞艇高度控制的马尔可夫决策过程模型;所述马尔可夫决策过程模型包括状态空间、动作空间、回报值空间、状态转移概率以及目标优化函数;

飞艇初始状态确定模块,用于随机确定飞艇初始状态,以所述飞艇初始状态作为当前状态;

动作选取模块,用于基于所述当前状态,根据q-learning算法和所述状态转移概率从所述动作空间中选择多个动作;

回报奖励值确定模块,用于对于每一动作,根据所述动作和所述回报值空间确定与所述动作相对应的回报奖励值和下一时刻的状态;

判断模块,用于对于每一所述下一时刻的状态,判断所述下一时刻的状态是否为终止状态,得到第一判断结果;

动作序列获取模块,用于当所述第一判断结果为是时,以所述下一时刻的状态作为所述终止状态,确定从所述飞艇初始状态转移到所述终止状态所选择的所有动作,以所选择的所有动作作为所述终止状态所对应的动作序列;

返回模块,用于当所述第一判断结果为否时,以所述下一时刻的状态作为所述当前状态,返回“基于所述当前状态,根据q-learning算法和所述状态转移概率从所述动作空间中选择多个动作”的步骤,直至每一所述下一时刻的状态均为所述终止状态,并确定每一所述终止状态所对应的动作序列;

最优序列确定模块,用于利用所述目标优化函数,计算每一所述动作序列对应的目标值;选取所有所述动作序列中目标值最大的动作序列作为最优序列;根据所述最优序列控制飞艇运动。

根据本发明提供的具体实施例,本发明公开了以下技术效果:

本发明所提供的一种平流层飞艇高度控制方法及系统,先建立用于飞艇高度控制的马尔可夫决策过程模型,并基于当前状态,根据q-learning算法和状态转移概率从动作空间中选择多个动作,对于每一动作,根据动作和回报值空间确定与动作相对应的回报奖励值和下一时刻的状态,直至每一下一时刻的状态均为终止状态时,以下一时刻的状态作为终止状态,确定从飞艇初始状态转移到终止状态所选择的所有动作,以所选择的所有动作作为终止状态所对应的动作序列,最后利用目标优化函数,计算每一动作序列对应的目标值,选取所有动作序列中目标值最大的动作序列作为最优序列,并根据最优序列控制飞艇运动,进而不再需要获取平流层飞艇相关动力学模型参数,而是基于平流层飞艇的实时状态和所设定的参考状态作为控制系统的控制输入,简化控制回路。同时,采用q-learning算法的不确定概率策略与速度分布决定的状态转移概率这一确定性概率策略共同决定动作的选择,确定性概率有效避免强化学习过程收敛特性差,不确定性概率有效解决“探索-利用”困境,增强控制器的适应性。此外,根据一定人为干预下的mdp模型进行q-learning控制器设计,通过预先的初始概率分布以及基于期望高度变化曲线的回报值空间,考虑平流层飞艇的实时状态、运动可实现性,结合静态与动态的动作选择策略,进行实时控制,具有较强的自主性和稳定性。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例1提供的飞艇高度控制方法的方法流程图。

图2为本发明实施例1提供的基于q-learning算法的飞艇高度控制器的结构图。

图3为本发明实施例1提供的基于q-learning算法选取最优序列的流程框图。

图4为本发明实施例1提供的生成回报值空间的流程框图。

图5为本发明实施例1提供的不同分布策略下的q-learning算法跟踪结果示意图。

图6为本发明实施例1提供的同一分布策略下的q-learning算法与sarsa算法跟踪结果示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明的目的是提供一种平流层飞艇高度控制方法及系统,不再依赖于动力学模型,而基于实际运动状态对飞艇高度进行控制,能够提高控制的适应性、有效性和稳定性。

为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。

实施例1:

本实施例针对平流层飞艇高度控制问题,提出由基于飞艇速度分布决定状态转移概率和基于避障思想的回报值空间构成的马尔可夫决策过程模型,采用q-learning算法的高度智能控制方法,将速度分布作为q-learning学习过程中动作概率选择依据是算法的关键要素之一,为实现外部环境与智能体之间的交互,需要对速度进行反馈修正,利用实时高度差作为上升速度分布更新的依据,保证状态转移概率的合理有效性。基于避障思想的回报值空间是判断最优动作序列的主要依据,通过期望高度变化曲线,对每一个状态的动作进行优劣判断,与此同时,对各个动作序列进行筛选,最终确定动作策略,完成对平流层飞艇高度的控制。该方法是不依赖于动力学模型的学习训练控制过程,将训练与控制一体化,利用平流层飞艇是一个运动缓慢,稳定性好,具有高容错性的受控对象,因此,早期错误的动作指令不会对飞艇运动产生显著的影响,能够实现对飞艇高度的在线控制,在训练过程中对飞艇状态进行实时控制,采用该方法得到的控制策略在得到状态反馈后,调整动作决定速度变化,从而达到对飞艇高度的稳定实时控制。在实际应用中,控制系统的输入为飞艇当前高度、上升速度,输出为充放气阀门的开关程度,通过调整阀门开关进而实现平流层飞艇对参考高度跟踪控制的目的。

本实施例用于提供一种平流层飞艇高度控制方法,如图1、图2和图3所示,所述控制方法包括如下步骤:

步骤101:建立用于飞艇高度控制的马尔可夫决策过程模型;所述马尔可夫决策过程模型包括状态空间、动作空间、回报值空间、状态转移概率以及目标优化函数;

针对q-learning算法中的马尔可夫决策过程模型(mdp)中的五个元素,将其对应到飞艇对象上。具体元素如下:

1)状态空间s

将飞艇高度控制的状态空间元素表征为每个时刻飞艇高度和上升速度的集合,即状态空间包括每一时刻的飞艇状态。st=[ht,vt];其中,st为第t时刻的飞艇状态;ht为第t时刻的飞艇高度;vt为第t时刻的飞艇速度,并将表征飞艇状态的高度、上升速度作为q-learning算法的输入。

2)动作空间a

通过分析平流层飞艇高度调整的有效机构,将飞艇高度控制的动作空间表征为每个高度状态下充放气阀门开启程度的集合,即动作空间的动作是飞艇充气阀门或放气阀门的开启程度。在仿真中,将阀门状态设置成9个状态,则动作空间a=[a1,a2,a3,a4,a5,a6,a7,a8,a9];其中,前四个动作为充气阀的开启程度,后四个动作为放气阀的开启程度,第五个动作代表充放气阀门均处于关闭状态。

3)回报值空间

如图4所示,对已规划好的期望高度变化曲线的周围空间进行一定精度的栅格化,并在每一时刻的状态处依据所设计的可实现动作进行所有可能性的状态转移,根据转移后的状态与期望状态之间的欧氏距离大小进行回报奖励值的确定。赋予回报奖励值的方法是基于避障思想,即根据在当前状态下,选择某一动作后得到的状态与期望状态之间的误差,以距离期望状态由近及远,回报奖励值逐渐递减的方式形成回报值空间。即若误差为小量,回报奖励值为较大值,若误差为大量,则回报奖励值为较小值。针对所有状态进行所有动作的选择之后得到回报值空间,为最优动作策略生成奠定了基础。

具体的,所述回报值空间的设计过程包括:获取预先规划的期望高度变化曲线;对所述期望高度变化曲线的周围空间进行栅格化,得到栅格空间;对于所述状态空间中的每一个状态,选取所述动作空间中的一个动作;基于所述动作对所述状态进行状态转移,得到与所述动作相对应的下一时刻的状态;计算所述下一时刻的状态与下一时刻对应的期望状态之间的欧氏距离;根据所述欧式距离,得到与所述动作对应的回报奖励值;所述欧式距离越大,所述回报奖励值越小;判断所述动作空间内的动作是否均已被选取;若否,则选取所述动作空间中一个未被选取的动作,返回“基于所述动作对所述状态进行状态转移,得到与所述动作相对应的下一时刻的状态”的步骤,直至所述动作空间内的动作均已被选取,得到与所述动作空间内每一动作相对应的回报奖励值,确定所述状态的回报奖励值集合;依据每一个状态的回报奖励值集合,对所述栅格空间进行赋值,得到回报值空间。

4)状态转移概率p

基于概率动力学思想,将速度的概率分布作为q-learning算法中动作的选择依据或状态的转移依据。设计理想速度分布,得到初始状态转移概率,并根据实际高度差修正速度分布和状态转移概率,完成一定人为干预下的马尔可夫决策过程模型设计。针对规划好的期望高度变化曲线,在已知高度差和初末速度的情况下,进行匀加速匀减速运动,基于这一理想设计,获得初始的飞艇速度分布。然后根据实际飞行运动过程中所产生的高度差,对所设计的速度分布进行反馈修正,进而保证速度的有效性、正确性,并更新状态转移概率,以保证每个动作或状态转移的合理性。

状态转移概率的公式为:

式1中,p(st,at)代表t时刻状态为st时选用动作at的概率;代表当前速度vt所处速度区间被选取次数的数量大小,代表所有速度区间被选取次数的数量大小。

具体的,所述状态转移概率的设计过程包括:根据预先规划的期望高度变化曲线,确定速度变化区间和高度变化值;根据所述高度变化值和始末速度,进行匀加速匀减速运动设计,得到初始飞艇速度分布;根据飞行运动过程中的实际高度差,对所述初始飞艇速度分布进行修正,得到每一时刻的飞艇速度;将所述速度变化区间划分为多个速度变化子区间;根据每一时刻的飞艇速度和所述多个速度变化子区间计算飞艇的状态转移概率。

为使本领域技术人员更加清楚的理解状态转移概率的设计过程,在此举一个实例对其进行具体说明。先设计期望高度变化曲线,以高度变化曲线20000-20010-20020-20010-20000为例,其高度变化值为10m,假定始末速度均为零,视速度正值为上升速度,负值为下降速度。考虑理想情况,以20000到20010为例,为实现在最短时间内完成,进行匀加速匀减速运动设计,具体速度分配为以1.25m/s2的加速度加速至2.5m/s,而后又以-1.25m/s2的加速度下降至零,基于这一思路,对上升速度进行理想设计,得到初始飞艇速度分布。鉴于所设计的期望高度变化曲线的高度差变化在10m范围内,故而在速度设计阶段,设计速度变化区间为[-5,5]m/s,并将速度变化区间划分为9个子区间,速度变化子区间的数量与动作空间中动作的数量相同,且区间大小随着速度近零而逐渐减小,以提高速度修正精度,进而提高控制精度。速度区间和高度变化、动作值之间的对应关系如表1所示。

表1

鉴于在实际情况下,由于气动力、环境干扰等不确定因素将导致飞艇速度分布与理想的初始飞艇速度分布有所偏差。因此,需要对所设计的初始飞艇速度分布进行反馈修正,采用实际的高度差进行速度调整,确保由速度分布决定的状态转移概率的有效性。将高度差划分为7个子区间,如表2所示。

表2

5)目标优化函数j

根据每一次状态转移获得的回报奖励值,在一定的动作策略下概率性的选择动作,将其实际对应的动作序列的回报奖励值进行加权求和,优化目标在于令该和值最大,最大的和值则对应最优动作序列。

所述目标优化函数为:

式2中,j为目标值;n为所述动作序列中动作的个数;γt为第t时刻的折扣因子;p(st,at)为状态为st时选用动作at的概率;r(hc(t+1)-hd(t+1))为下一时刻的状态与下一时刻对应的期望状态之间的欧式距离;hc(t+1)为下一时刻的状态;hd(t+1)为下一时刻对应的期望状态。

进而通过上述5个元素的设计,得到用于飞艇高度控制的马尔可夫决策过程模型,并基于该模型,对高度控制过程中的动作策略进行规划。

步骤102:随机确定飞艇初始状态,以所述飞艇初始状态作为当前状态;

步骤103:基于所述当前状态,根据q-learning算法和所述状态转移概率从所述动作空间中选择多个动作;

具体的,所述基于所述当前状态,根据q-learning算法和所述状态转移概率从所述动作空间中选择多个动作具体包括:基于所述当前状态,随机生成一个随机数;判断所述随机数是否小于预设值;若是,则根据所述状态转移概率从所述动作空间中选择多个动作;若否,则根据q-learning算法从所述动作空间中选择多个动作。

步骤104:对于每一动作,根据所述动作和所述回报值空间确定与所述动作相对应的回报奖励值和下一时刻的状态;

步骤105:对于每一所述下一时刻的状态,判断所述下一时刻的状态是否为终止状态,得到第一判断结果;

步骤106:当所述第一判断结果为是时,以所述下一时刻的状态作为所述终止状态,确定从所述飞艇初始状态转移到所述终止状态所选择的所有动作,以所选择的所有动作作为所述终止状态所对应的动作序列;

步骤107:当所述第一判断结果为否时,以所述下一时刻的状态作为所述当前状态,返回“基于所述当前状态,根据q-learning算法和所述状态转移概率从所述动作空间中选择多个动作”的步骤,直至每一所述下一时刻的状态均为所述终止状态,并确定每一所述终止状态所对应的动作序列;

步骤108:利用所述目标优化函数,计算每一所述动作序列对应的目标值;选取所有所述动作序列中目标值最大的动作序列作为最优序列;根据所述最优序列控制飞艇运动。

本实施例充分利用了平流层飞艇实时的高度、速度状态,将高度差作为理想速度的反馈修正项,并将q-learning算法中的状态转移概率由传统的随机概率分布替换为速度概率分布,使得状态转移更加贴合实际的上升运动过程,借助速度的大小分布决定平流层飞艇执行机构动作的抉择,增强控制器的有效性和鲁棒性。

利用本实施例提供的飞艇高度控制方法进行仿真跟踪高度,基于同一高度变化曲线,对比不同概率分布下的q-learning控制器跟踪控制效果,即基于bolzmann分布的概率和基于上升速度分布概率,二者的跟踪结果如图5所示,采用同样的速度概率分布对不同的算法进行对比,即q-learning控制器和sarsa控制器的跟踪结果对比,如图6所示。仿真结果表明,根据上升速度分布的转移概率和基于避障思想的回报值空间所设计的q-learning控制器,能够实现对期望高度变化曲线跟踪控制,有效解决由于模型参数摄动带来的控制器失效,避免bolzmann随机概率分布导致的振荡特性明显,改善sarsa算法收敛速度慢的缺陷。从仿真结果对比可以知道本实施例拥有良好的跟踪效果,具有优越的有效性、稳定性、鲁棒性以及智能自主性等。

实施例2:

本实施例用于提供一种平流层飞艇高度控制系统,利用如实施例1所述的飞艇高度控制方法进行工作,所述控制系统包括:

马尔可夫决策过程模型获取模块,用于建立用于飞艇高度控制的马尔可夫决策过程模型;所述马尔可夫决策过程模型包括状态空间、动作空间、回报值空间、状态转移概率以及目标优化函数;

所述马尔可夫决策过程模型获取模块包括回报值空间设计子模块;所述回报值空间设计子模块包括:

栅格空间获取单元,用于获取预先规划的期望高度变化曲线;对所述期望高度变化曲线的周围空间进行栅格化,得到栅格空间;

回报奖励值计算单元,用于对于所述状态空间中的每一个状态,选取所述动作空间中的一个动作;基于所述动作对所述状态进行状态转移,得到与所述动作相对应的下一时刻的状态;计算所述下一时刻的状态与下一时刻对应的期望状态之间的欧氏距离;根据所述欧式距离,得到与所述动作对应的回报奖励值;所述欧式距离越大,所述回报奖励值越小;

第一判断单元,用于判断所述动作空间内的动作是否均已被选取;

回报奖励值集合计算单元,用于若否,则选取所述动作空间中一个未被选取的动作,返回“基于所述动作对所述状态进行状态转移,得到与所述动作相对应的下一时刻的状态”的步骤,直至所述动作空间内的动作均已被选取,得到与所述动作空间内每一动作相对应的回报奖励值,确定所述状态的回报奖励值集合;

回报值空间获取单元,用于依据每一个状态的回报奖励值集合,对所述栅格空间进行赋值,得到回报值空间。

飞艇初始状态确定模块,用于随机确定飞艇初始状态,以所述飞艇初始状态作为当前状态;

动作选取模块,用于基于所述当前状态,根据q-learning算法和所述状态转移概率从所述动作空间中选择多个动作;

所述动作选取模块具体包括:

随机数生成单元,用于基于所述当前状态,随机生成一个随机数;

第二判断单元,用于判断所述随机数是否小于预设值;

第一选择单元,用于若是,则根据所述状态转移概率从所述动作空间中选择多个动作;

第二选择单元,用于若否,则根据q-learning算法从所述动作空间中选择多个动作。

回报奖励值确定模块,用于对于每一动作,根据所述动作和所述回报值空间确定与所述动作相对应的回报奖励值和下一时刻的状态;

判断模块,用于对于每一所述下一时刻的状态,判断所述下一时刻的状态是否为终止状态,得到第一判断结果;

动作序列获取模块,用于当所述第一判断结果为是时,以所述下一时刻的状态作为所述终止状态,确定从所述飞艇初始状态转移到所述终止状态所选择的所有动作,以所选择的所有动作作为所述终止状态所对应的动作序列;

返回模块,用于当所述第一判断结果为否时,以所述下一时刻的状态作为所述当前状态,返回“基于所述当前状态,根据q-learning算法和所述状态转移概率从所述动作空间中选择多个动作”的步骤,直至每一所述下一时刻的状态均为所述终止状态,并确定每一所述终止状态所对应的动作序列;

最优序列确定模块,用于利用所述目标优化函数,计算每一所述动作序列对应的目标值;选取所有所述动作序列中目标值最大的动作序列作为最优序列;根据所述最优序列控制飞艇运动。

本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1