[发明专利]航天器多优先级任务执行序列自动生成方法有效
申请号: | 202010212626.4 | 申请日: | 2020-03-24 |
公开(公告)号: | CN111338783B | 公开(公告)日: | 2022-09-06 |
发明(设计)人: | 徐瑞;赵宇庭;崔平远;朱圣英;梁子璇 | 申请(专利权)人: | 北京理工大学 |
主分类号: | G06F9/48 | 分类号: | G06F9/48 |
代理公司: | 北京正阳理工知识产权代理事务所(普通合伙) 11639 | 代理人: | 邬晓楠 |
地址: | 100081 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 航天器 优先级 任务 执行 序列 自动 生成 方法 | ||
1.航天器多优先级任务执行序列自动生成方法,其特征在于:包括如下步骤,
步骤一、获取规划器规划得到动作序列及其相应的时间约束网络,判断动作的性质并进行标记,依据动作效果判断动作性质,所述动作效果为目标状态的动作,判断该动作性质为任务动作,其他动作为辅助动作;
步骤二、根据步骤一标记的动作性质,为每个动作计算执行时间保留比例Ki;
步骤三、在规划器生成的时间约束网络的基础上对规划结果中的动作进行升序排序生成动作队列Qact,排序的依据是动作的最早可能开始时刻,开始时刻较早的动作排序靠前,排序靠前的动作在步骤四中优先处理,模拟执行过程中动作依次确定时刻的过程;动作i开始点sti,最早可能开始时刻为边Osti的权值的负数,即-e[sti][O];
步骤四、根据步骤二得到的各动作的时间保留比例Ki,采用增量式时间约束传播对步骤三得到动作顺序逐个确定规划结果中动作的开始结束时刻;对于动作序列中的每个动作,动作的开始时刻确定为最早可能开始时刻,然后对动作的开始时刻确定带来的时间约束变化在时间约束网络中进行增量式前向时间约束传播,在时间约束传播后的时间约束网络中根据时间保留比例Ki确定动作的结束时刻,然后对动作结束时刻确定带来的约束变化进行增量式前向时间约束传播和增量式后向时间约束传播;
步骤五、根据步骤四中确定的开始结束时刻,输出动作序列的调度结果,即实现航天器多优先级任务执行序列自动生成。
2.如权利要求1所述的航天器多优先级任务执行序列自动生成方法,其特征在于:还步骤六:航天器多优先级任务执行序列自动生成采用增量式时间约束传播,实现快速准确生成任务执行序列,节省人力物力;在保证满足时间约束的基础上,考虑任务中子任务优先级及动作的性质确定动作执行时刻,有利于提高任务的可靠性及动作时间分配的合理性。
3.如权利要求1或2所述的航天器多优先级任务执行序列自动生成方法,其特征在于:步骤一的实现方法为,
由于航天器的资源有限,有时难以满足所有的任务目标,因此为任务设置优先级,在资源不足的时候优先级满足高优先级的任务;对于动作时间确定问题,规划器前期的规划已经找到了满足时间约束的动作序列,对无法满足的任务已经进行了取舍;此时优先级为动作时间分配的依据,优先级高的任务持续时间越长任务整体收益越高;为了统一任务动作i的执行时间保留比例Ki的计算,所有辅助动作的优先级设为0,通过公式(1)计算执行时间保留比例Ki:
式中Pi为动作i对应的动作优先级,Pmax为最大任务优先级。
4.如权利要求3所述的航天器多优先级任务执行序列自动生成方法,其特征在于:步骤四的实现方法为,
步骤4.1:取步骤三动作队列Qact中的第一个动作;
步骤4.2:确定步骤4.1中所取动作的开始时刻,动作的开始时刻STi取其最早可能值,即动作开始时刻STi=-e[sti][O],sti为时间约束网络中代表动作i开始时刻的点,e[sti][O]为边stiO上的值;相应的,在时间约束网络中,修改边Osti和stiO值,使边Osti和stiO值代表的含义为动作开始时刻固定为ts,通过公式(2)计算边Osti的值e[O][sti],通过公式(3)计算边stiO的值e[sti][O]:
e[O][sti]=-e[sti][O] (2)
e[sti][O]=e[sti][O] (3)
步骤4.3:在步骤4.2修改后的时间约束网络中,进行增量式时间约束前向传播,从sti开始沿点的出边传播时间约束,减少时间约束处理计算量,提高求解效率;
步骤4.3.1:建立待处理节点队列Qnote,将节点sti从后方加入Qnote;
步骤4.3.2:从Qnote中取第一个点n,计算与点n的出边相连的点m的边e[O][m]通过公式(4)实现:
e[O][m]=min(e[O][m],e[O][n]+e[n][m]) (4)
如果点m的e[O][m]边值发生改变且点m不在Qnote中,将点m从后方加入Qnote;
步骤4.3.3:重复4.3.2直到Qnote中没有待处理节点;
步骤4.4:在步骤4.3处理过的时间约束网络中动作i的结束时刻ETi∈[-e[eti][O],e[O][eti]],eti为在时间约束网络中代表动作i的结束时刻的点,根据步骤二得到的各动作的时间保留比例Ki为ETi取值确定动作结束时刻,有利于提高任务的可靠性及动作时间分配的合理性;通过公式(5)计算ETi的值,通过公式(6)计算动作i的结束时刻确定后边Oeti的值e[O][eti],通过公式(7)计算动作i的结束时刻确定后边etiO的值e[eti][O]:
ETi=-e[eti][O]+Ki·(e[O][eti]+e[eti][O]) (5)
e[O][eti]=ETi (6)
e[eti][O]=-ETi (7)
步骤4.5:在步骤4.4修改后的时间约束网络中,进行增量式时间约束前向传播;建立待处理节点队列Qnote,将节点eti从后方加入Qnote,进行前向传播,前向传播方法与步骤4.3相同;
步骤4.6:在步骤4.5修改后的网络中,进行增量式时间约束后向传播,从当前点eti开始沿点的入边传播时间约束;
步骤4.6.1:建立待处理节点队列Qnote,将节点eti从后方加入Qnote;
步骤4.6.2:从Qnote中取第一个点n,计算与点n的入边相连的点m的边e[m][O]通过公式(8)实现:
e[m][O]=min(e[m][O],e[m][n]+e[n][O]) (8)
如果点m的e[m][O]边值发生改变且点m不在Qnote中,就将其从后方加入Qnote;
步骤4.6.3:重复4.3.2直到Qnote中没有待处理节点;
步骤4.7:检查步骤三中定义的动作队列Qact中是否有剩余动作;如果没有剩余动作,动作时间确定结束,转入步骤五;如果有剩余动作,返回步骤4.1。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京理工大学,未经北京理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010212626.4/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种基于迂回式飞行的垂直攻击制导方法
- 下一篇:一种涤纶膨体长丝及其制备方法