发明内容
为解决上述技术问题,本申请提供一种火箭子级回收轨迹规划方法、设备及存储介质,能够综合利用全局搜索和局部优化的能力,充分探索解空间,并通过迭代优化过程逐步改善规划结果,提高了轨迹规划的准确性。
一种火箭子级回收轨迹规划方法,包括:
建立火箭子级回收轨迹规划模型,并明确定义规划的目标;
通过鲸鱼算法搜索火箭子级回收轨迹规划模型中相关参数和变量的最优解;
将鲸鱼算法输出的最优解作为蚁群算法的输入,在解空间中寻找更优解;
将鲸鱼算法和蚁群算法的搜索结果进行融合和交叉,在融合优化的解空间中,应用多目标优化和权衡选择机制,筛选出最终的最优解集合;
利用筛选出的最终最优解集合,对火箭子级回收轨迹进行验证和优化;
其中,所述规划的目标包括最小燃料消耗量、最小载荷损失量和最大安全性。
优选的,所述建立火箭子级回收轨迹规划模型包括:
将火箭子级回收轨迹规划过程中涉及的相关参数和变量进行建模和表示;
对火箭子级回收轨迹规划过程中可以采取的操作和控制动作进行定义;
定义状态转移函数描述火箭子级在不同状态下执行特定动作后的状态转移规律;
根据目标任务和优化目标,定义一个评估子级回收行为的奖励函数;
定义用于确定子级回收过程结束的终止条件。
优选的,所述通过鲸鱼算法搜索火箭子级回收轨迹规划模型中相关参数和变量的最优解包括:
初始化鲸鱼种群中每个鲸鱼的位置和速度;
计算初始解集合的适应度值;
初始化最优解和最优适应度值;
根据当前位置和速度计算新的位置和速度,计算随机系数,并迭代更新鲸鱼位置和速度;
对超出解空间边界的维度进行修正;
计算新位置的适应度值;
更新最优解和最优适应度值;
满足终止条件后,返回最终的最优解和最优适应度值。
优选的,所述将鲸鱼算法输出的最优解作为蚁群算法的输入,在解空间中寻找更优解包括:
初始化所有路径上的信息素浓度;
将每只蚂蚁的起始位置设置为鲸鱼算法的最优解,路径初始化为空;
蚂蚁进行路径选择;
根据蚂蚁的路径选择和信息素更新策略更新信息素浓度;
将鲸鱼算法的最优解根据蚂蚁的路径选择情况进行更新;
选择具有最佳路径的蚂蚁作为最终解。
优选的,所述蚂蚁进行路径选择包括:
根据信息素浓度和启发式信息计算路径选择的概率;
根据概率选择下一个节点;
更新蚂蚁的路径和长度。
优选的,所述将鲸鱼算法和蚁群算法的搜索结果进行融合和交叉,包括:
将鲸鱼算法的最优解设置为初始最优解;
将蚁群算法的最优路径长度与鲸鱼算法的最优解对应的路径长度进行比较;
选择路径长度更短的结果作为融合后的最优解,并将融合后的最优解作为最终结果,以实现火箭子级回收轨迹的规划优化。
优选的,所述在融合优化的解空间中,应用多目标优化和权衡选择机制,筛选出最终的最优解集合包括:
对于每个目标,确定其相对重要性和权重;
使用适当的多目标优化算法,并根据权重进行优化,得到一组非劣解;
根据权衡选择机制,从非劣解集合中选择最终的最优解集合。
优选的,所述利用筛选出的最终最优解集合,对火箭子级回收轨迹进行验证和优化包括:动力学模拟验证、轨迹安全性分析、性能评估与优化、轨迹约束优化以及交互式调整和优化中的一种或几种。
根据本申请的另一方面,还提供一种计算设备包括:处理器、存储有计算机程序的存储器,所述计算机程序被处理器运行时,执行所述的火箭子级回收轨迹规划方法。
根据本申请的另一方面,还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机指令,当所述指令在计算机上运行时,使得计算机执行所述的火箭子级回收轨迹规划方法。
与现有技术相比,本申请至少具有以下有益效果:
1、本发明通过引入鲸鱼-蚁群混合优化算法,能够综合利用全局搜索和局部优化的能力,充分探索解空间,并通过迭代优化过程逐步改善规划结果,提高了轨迹规划的准确性。
2、本发明能够根据具体问题的约束条件和需求进行调整和优化,提供定制化的解决方案,使轨迹规划更加适应不同情境的要求。
3、本发明的方法利用鲸鱼-蚁群混合优化算法的特点,能够加快规划过程,减少计算时间。全局搜索阶段的鲸鱼算法能够快速探索解空间,提供潜在的最优解,而蚁群算法的局部优化阶段进一步改善路径质量。这种协同作用加速了规划过程,提高了规划的效率和实时性。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
如图1所示,一种火箭子级回收轨迹规划方法,包括以下步骤:
步骤S1、建立火箭子级回收轨迹规划模型,并明确定义规划的目标。
其中,所述规划的目标包括最小燃料消耗量、最小载荷损失量和最大安全性。
建立火箭子级回收轨迹规划模型具体包括:
定义状态空间(State Space):将火箭子级回收轨迹规划过程中涉及的关键参数和变量进行建模和表示。这些参数可以包括子级位置、速度、姿态、燃料消耗、环境条件等。
定义动作空间(Action Space):火箭子级回收轨迹规划过程中可以采取的操作和控制动作,例如推力控制、姿态调整等。动作空间应该包括可以离散或连续选择的具体动作。
定义状态转移函数(State Transition Function):描述火箭子级在不同状态下执行特定动作后的状态转移规律。这个函数可以是物理模型或者基于经验的规则,用于模拟子级在环境中的运动和变化。
定义奖励函数(Reward Function):根据目标任务和优化目标,定义一个评估子级回收行为的奖励函数。奖励函数可以鼓励子级实现精准着陆、节约燃料等目标,并惩罚违反安全性和性能要求的行为。
定义终止条件(Termination Criteria):确定何时判定子级回收过程结束的条件,例如达到目标着陆区域、超过最大尝试次数等。
通过以上模型的表达,我们可以将火箭子级回收问题转化为一个强化学习或优化问题,以寻找最佳策略或设计方案来实现精准的回收着陆。
步骤S2、通过鲸鱼算法搜索火箭子级回收轨迹规划模型中相关参数和变量的最优解。
鲸鱼算法根据鲸鱼群体的行为原理,在解空间中随机生成一组初始解,并计算它们的适应度值。适应度值用于评估解的优劣程度,形成初始的解空间。
首先,定义以下输入参数:
N:鲸鱼种群的数量;
D:解空间的维度;
X:解空间中的一个解,表示为X=(x1,x2,...,xd),其中xi表示解空间的第i个维度的取值;
L:解空间中每个维度的上限值;
U:解空间中每个维度的下限值;
F:鲸鱼的适应度函数,表示为F(X)=f1(X)+f2(X)+f3(X),其中f1(X)表示燃料消耗的函数,f2(X)表示载荷损失的函数,f3(X)表示安全性的函数;
X_init:鲸鱼算法的初始解集合,表示为X_init={X1,X2,...,XN};
F_init:初始解集合中每个解的适应度值,表示为F_init={F(X1),F(X2),...,F(XN)};
X_best:当前迭代中最优解,表示为X_best=(x1_best,x2_best,...,xd_best);
F_best:当前迭代中最优解的适应度值,表示为F_best=F(X_best);
a:鲸鱼算法的算法参数,用于调节全局搜索的程度;
A:鲸鱼算法的动态搜索范围参数,用于调节解的搜索范围;
C:鲸鱼算法的聚合参数,用于调节鲸鱼的聚合行为;
b:鲸鱼算法的算法参数,用于调节局部搜索的程度;
r:鲸鱼算法的搜索半径参数,用于控制局部搜索的范围。
以下是具体的计算步骤:
步骤S21、初始化鲸鱼种群中每个鲸鱼的位置和速度。
对于每个鲸鱼i=1to N:
初始化位置:X[i]=(x1[i],x2[i],...,xd[i]),
其中xi[i]∈[L,U],i为自然数集,且i=1,2,...,D。
初始化速度:V[i]=(v1[i],v2[i],...,vd[i]),其中vi[i]∈[V_min,V_max],i为自然数集,i=1,2,...,D。
步骤S22、计算初始解集合的适应度值。
对于每个鲸鱼i=1 to N:
计算适应度值:F_init[i]=F(X[i])=f1(X[i])+f2(X[i])+f3(X[i]),其中f1(X[i])表示燃料消耗的函数,f2(X[i])表示载荷损失的函数,f3(X[i])表示安全性的函数。
步骤S23、初始化最优解和最优适应度值。
找到初始解集合中适应度值最小的鲸鱼:
idx_best=argmin(F_init);
X_best=X[idx_best],F_best=F_init[idx_best]。
步骤S24、根据当前位置和速度计算新的位置和速度,计算随机系数,并迭代更新鲸鱼位置和速度。
计算随机系数r1和r2,其中r1,r2∈[0,1]。
更新鲸鱼速度:VN[i][j]=w*V[i][j]+c1*r1*(X_best[j]-X[i][j])+c2*r2*(X[i][j]-X[j][j]);
其中,w是惯性权重,c1和c2是学习因子,V[i][j]为更新前的鲸鱼速度,VN[i][j]为更新后的鲸鱼速度。
更新鲸鱼位置:XN[i][j]=X[i][j]+VN[i][j];
其中,X[i][j]为更新前的鲸鱼位置,XN[i][j]为更新后的鲸鱼位置。
步骤S25、对超出解空间边界的维度进行修正。
具体采用以下过程:
for j=1to D:
如果X[i][j]>U[j],则X[i][j]=U[j]。
如果X[i][j]<L[j],则X[i][j]=L[j]。
步骤S26、计算新位置的适应度值。
采用以下计算公式:
F_new[i]=F(X[i])=f1(X[i])+f2(X[i])+f3(X[i]);
其中,F_new[i]为新位置的适应度值。
步骤S27、更新最优解和最优适应度值。
如果F_new[i]<F_best,则更新最优解和最优适应度值:X_best=X[i],F_best=F_new[i]。
否则,返回d。即迭代更新鲸鱼位置和速度。
步骤S28、满足终止条件后,返回最终的最优解和最优适应度值。
其中,最终的最优解为X_best,最优适应度值为F_best。
通过优化鲸鱼的位置和速度,找到在火箭子级回收轨迹规划中燃料消耗最小、载荷损失最小、安全性最高的最优解。通过迭代更新,鲸鱼算法可以搜索解空间中的潜在解,并逐渐收敛于最优解。
步骤S3、将鲸鱼算法输出的最优解作为蚁群算法的输入,在解空间中寻找更优解。
蚁群算法模拟蚂蚁在搜索食物过程中的行为,通过信息素的更新和蚁群的协作,在解空间中寻找更优的解。算法根据问题的特征和目标定义,进行迭代搜索,逐步优化解的质量。
具体的,包括以下过程:
首先,定义以下输入参数:
初始蚁群数量(Ants):N_a;
蚁群迭代次数(Iterations):N_i;
信息素衰减因子(Evaporation Rate):ρ;
信息素增强因子(Pheromone Deposit):δ;
启发式信息的权重(Heuristic Information Weight):α;
蚂蚁的感知范围(Visibility):R;
信息素初始浓度(Initial Pheromone Level):τ_0;
鲸鱼算法的最优解(Best Solution from Whale Algorithm):X_best;
启发式信息的计算方法(Heuristic Information Calculation):h(x);
信息素更新策略(Pheromone Update Strategy):Δτ。
以下是具体的计算步骤:
步骤S21、初始化所有路径上的信息素浓度为初始值τ0:
迭代搜索过程如下:
步骤S22、将每只蚂蚁的起始位置设置为鲸鱼算法的最优解,路径初始化为空。
将每只蚂蚁的起始位置设置为鲸鱼算法的最优解x_best,路径初始化为空:
步骤S23、蚂蚁进行路径选择。
具体的,对于每只蚂蚁i∈{1,2,...,Na}。
步骤S231、根据信息素浓度和启发式信息计算路径选择的概率。
步骤S232、根据概率选择下一个节点。
根据概率P(i,j)选择下一个节点j:j=argmax[P(i,j)],j∈Ni。
步骤S233、更新蚂蚁的路径和长度。
更新蚂蚁的路径和长度:L(i)=L(i)∪j。
步骤S24、根据蚂蚁的路径选择和信息素更新策略更新信息素浓度。
根据蚂蚁的路径选择和信息素更新策略更新信息素浓度:
步骤S25、将鲸鱼算法的最优解根据蚂蚁的路径选择情况进行更新。
将蚂蚁的起始位置设置为鲸鱼算法的最优解x_best:
步骤S26、选择具有最佳路径的蚂蚁作为最终解。
选择具有最佳路径的蚂蚁作为最终解:i_best=argmax[L(i)],最优路径为L(i_best)。
步骤S4、将鲸鱼算法和蚁群算法的搜索结果进行融合和交叉,在融合优化的解空间中,应用多目标优化和权衡选择机制,筛选出最终的最优解集合。
在鲸鱼算法和蚁群算法各自完成预设迭代次数后,将两个算法的搜索结果进行融合和交叉。这些迭代次数是根据实验和经验设定的,并且可以根据问题的复杂性和计算资源的限制进行调整。
在具体的应用中,设定迭代次数的依据可能包括以下考虑因素:收敛性、性能要求和计算资源限制中的一种或几种。
从收敛性来看,经过实验或理论分析,观察算法的收敛性并确定迭代次数。当算法逐渐趋于稳定或目标函数值不再显著变化时,可以认为算法已经收敛。
从性能要求来看,根据问题的性质和目标,设定迭代次数以满足预期的性能要求。例如,要求算法在有限的迭代次数内找到近似最优解或达到某个预先设定的目标。
从计算资源限制来看,考虑计算资源的可用性和限制,确定合理的迭代次数。避免过多的计算时间和资源消耗,同时保证算法在给定资源条件下能够达到合理的优化效果。
具体来看,将鲸鱼算法和蚁群算法的搜索结果进行融合和交叉包括以下步骤:
步骤S41、将鲸鱼算法的最优解设置为初始最优解。
步骤S42、将蚁群算法的最优路径长度与鲸鱼算法的最优解对应的路径长度进行比较。
步骤S43、选择路径长度更短的结果作为融合后的最优解,并将融合后的最优解作为最终结果,以实现火箭子级回收轨迹的规划优化。
多目标优化是针对具有多个冲突目标的优化问题,在解空间中寻找一组最优解,这些解在不同目标上都是最优的,而不是仅仅追求单一的最优解。在火箭子级回收轨迹规划中,可能涉及到多个目标,例如最小燃料消耗、最小载荷损失和最大安全性等。多目标优化的目标是找到一组解,其中每个解在不同的目标上都具有良好的性能。
权衡选择机制是在多目标优化中进行决策的过程,用于选择最终的最优解集合。在权衡选择过程中,需要考虑各个目标之间的权重和重要性,以确定最终解集合中的解。
本实施例中的权衡选择方法可以选用帕累托(Pareto)前沿方法、加权和方法、优先级规划中的一种。
帕累托(Pareto)前沿方法为根据帕累托前沿原理,从所有非劣解中选择最优解集合。帕累托前沿是指在解空间中无法通过改进一个目标而不损害其他目标的解集合。
加权和方法包括:给定每个目标的权重,将多个目标函数加权求和,将问题转化为单目标优化问题。然后使用单目标优化算法来寻找加权和最优的解。
优先级规划包括:根据目标的优先级顺序,逐个优化目标函数,将优化后的解作为下一个目标函数的约束条件。通过逐层优化的方式得到最终解。
具体的,在融合优化的解空间中,应用多目标优化和权衡选择机制,筛选出最终的最优解集合具体包括以下步骤:
步骤S44、对于每个目标,确定其相对重要性和权重。
步骤S45、使用适当的多目标优化算法,并根据权重进行优化,得到一组非劣解。
步骤S46、根据权衡选择机制,从非劣解集合中选择最终的最优解集合。
综上,多目标优化和权衡选择机制帮助在解空间中找到一组最优解,并在多个目标之间进行平衡和权衡,以满足火箭子级回收轨迹规划的要求。
步骤S5、利用筛选出的最终最优解集合,对火箭子级回收轨迹进行验证和优化。
具体的,对火箭子级回收轨迹进行验证和优化包括:动力学模拟验证、轨迹安全性分析、性能评估与优化、轨迹约束优化以及交互式调整和优化中的一种或几种。
其中,动力学模拟验证为使用火箭动力学模拟工具,对最优解中的轨迹进行模拟和验证。通过考虑火箭的动力学特性、质量变化、推力变化等因素,验证轨迹的可行性和合理性。
轨迹安全性分析为对最优解中的轨迹进行安全性分析,评估其在不同阶段的飞行过程中是否满足安全要求。考虑飞行器的结构强度、温度、速度、姿态控制等因素,确保轨迹不会导致飞行器受损或威胁到飞行安全。
性能评估与优化为对最优解中的轨迹进行性能评估,包括燃料消耗、载荷损失、飞行时间等指标。根据实际需求,进行轨迹优化,尝试改进轨迹性能,使其在多个指标上达到更好的效果。
轨迹约束优化为在轨迹验证的基础上,进行轨迹约束优化,以满足特定的约束条件。例如,考虑飞行器的动力学限制、空域限制、航路规定等因素,调整轨迹以符合约束要求。
交互式调整和优化为通过与领域专家、操作人员或系统模拟进行交互,对轨迹进行调整和优化。根据实际情况和反馈,对轨迹进行微调和改进,以使其更符合实际需求和操作要求。
这些方式可以结合使用,根据具体的火箭子级回收轨迹规划问题和目标,选择适当的验证和优化方法。轨迹验证和优化的目标是确保轨迹的可行性、安全性和性能,并根据实际需求对轨迹进行调整和优化,以实现最佳的轨迹规划结果。
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、工作、器件、组件和/或它们的组合。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施方式能够以除了在这里图示或描述的那些以外的顺序实施。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。