一种面向组件的飞行器总体双循环优化方法及系统与流程

文档序号:17131324发布日期:2019-03-16 01:16阅读:304来源:国知局
一种面向组件的飞行器总体双循环优化方法及系统与流程

本发明涉及一种面向组件的飞行器总体双循环优化设计方法及系统,属于飞行器总体方案设计与优化领域。



背景技术:

随着模块化组件化设计思想的提出,飞行器总体也逐渐采用基于组件的设计模式。组件化的思想是将飞行器按照总体组成进行划分,如头部、壳体、发动机等,每个组成部分单独进行设计或者使用已有型号的设计形成组件库,如头部1、头部2、头部3、壳体1、壳体2、发动机1、发动机2、发动机3等。以组件库为基础开展飞行器总体设计时,首先根据飞行器用户需求,将不同类型的组件快速组合优化,从而形成满足用户需求的飞行器总体可行方案,如头部2、壳体1、发动机3的组合,然后以飞行器性能、重量、成本等为目标,对飞行器总体可行方案进行优化设计,最终获得最优的飞行器总体方案。

群智能算法是一种仿生优化算法,通过模拟自然界优胜劣汰,逐步更新迭代种群群体,最终获得最优解。群智能算法由于具有天然的并行性,且寻优速度块,搜寻范围广,不易陷入局部最优的特点。因此,在很多领域都得到了广泛的应用。

目前,传统的优化方法,往往针对优化问题采用群智能优化算法,定义变量、约束条件,依靠算法本身的搜索性能,忽略组件化策略,直接进行优化。从而,优化问题庞大,搜索效率低。



技术实现要素:

本发明的技术解决问题是:克服现有技术的不足,利用飞行器总体组件,提出一种面向组件的飞行器总体双循环优化方法及系统,快速完成飞行器总体方案优化设计,填补现有技术的不足。

本发明采用的技术方案为:

一种面向组件的飞行器总体双循环优化方法,步骤如下:

(1)初始化:确定外循环优化的群智能优化算法的初始条件;

(2)进行外循环优化;

(3)从外循环优化中选择最优解进入内循环优化;

(4)初始化:确定内循环优化的群智能优化算法的初始条件;

(5)进行内循环优化;

(6)从内循环优化中选择最优解进入内循环优化目标函数值队列;

(7)输出本次优化的最优解。

所述步骤(1)确定外循环群智能优化算法的初始条件具体为:

令t=1,s=1,初始化外循环群智能优化算法的种群,即在设计变量定义域内,随机生成变量xijt,i=1,…,n,j=1,…,d;其中,t为外循环迭代次数,s为内循环优化目标函数值队列的个数,n为种群数,d为设计空间的维度。

所述步骤(2)进行外循环优化,具体为:

根据目标函数值,调用外循环群智能优化算法h,更新设计变量的值,生成新的设计变量xijt+1=h(xijt)。

所述步骤(3)从外循环中选择最优解进入内循环,具体为:

(3.1)从外循环目标函数值fi=f(xijt),i=1,…,n,j=1,…,d中选择最小值fnewt=min{fi(i=1,…,n)}作为当前群体的最好解xnewt

比较fnewt和fnewt-1的大小,若fnewt>fnewt-1,则不对xnewt开展内循环优化;若fnewt≤fnewt-1,则令s的数量加1,内循环目标函数值fins=fnewt,将xnewt的值赋值给xins,进入步骤(3.2);

(3.2)若s>s,s为内循环优化队列的数量上限,则不对xins开展内循环优化,否则进入步骤(3.3);

(3.3)比较fins和fink的大小,k=1,..,s-1,若fink>fins,则停止对xink的寻优,否则对fink进行内循环优化。

所述步骤(4)确定内循环优化的群智能优化算法的初始条件,具体为:令t=1,初始化内循环群智能优化算法的种群,即在设计变量定义域内,随机生成变量xijt,i=1,…,n,j=1,…,d;其中,t为内循环迭代次数,n为种群数,d为设计空间的维度。

步骤(5)进行内循环优化,具体为:

根据目标函数值,调用内循环群智能优化算法h,更新设计变量的值,生成新的设计变量xijt+1=h(xijt)。

所述步骤(6)从内循环优化中选择最优解进入内循环优化目标函数值队列,具体为:

比较目标函数值fi=f(xijt)的大小,i=1,…,n,j=1,…,d,选取最小者作为最优解fin,进入内循环优化目标函数值队列。

输出本次优化的最优解具体为:比较内循环目标函数值fink的大小,k=1,..,s-1,其中最小值即为本次优化的最优解。

所述外循环群智能优化算法h以及内循环群智能优化算法h采用遗传算法、粒子群优化算法或者蚁群算法实现。

一种基于所述面向组件的飞行器总体双循环优化方法实现的优化系统,包括:

外循环初始化模块:用于确定外循环优化的群智能优化算法的初始条件;

外循环优化模块:进行外循环优化;

选取内循环优化解模块:用于从外循环优化中选择最优解进入内循环优化;

内循环初始化模块:用于确定内循环优化的群智能优化算法的初始条件;

内循环优化模块:进行内循环优化;

队列生成模块:从内循环优化中选择最优解进入内循环优化目标函数值队列;

最优解确定模块:输出本次优化的最优解。

外循环初始化模块确定外循环优化的群智能优化算法的初始条件,具体为:令t=1,s=1,初始化外循环群智能优化算法的种群,即在设计变量定义域内,随机生成变量xijt,i=1,…,n,j=1,…,d;其中,t为外循环迭代次数,s为内循环优化目标函数值队列的个数,n为种群数,d为设计空间的维度;

外循环优化模块进行外循环优化,具体为:

根据目标函数值,调用外循环群智能优化算法h,更新设计变量的值,生成新的设计变量xijt+1=h(xijt);

选取内循环优化解模块从外循环中选择最优解进入内循环,具体为:

(3.1)从外循环目标函数值fi=f(xijt),i=1,…,n,j=1,…,d中选择最小值fnewt=min{fi(i=1,…,n)}作为当前群体的最好解xnewt

比较fnewt和fnewt-1的大小,若fnewt>fnewt-1,则不对xnewt开展内循环优化;若fnewt≤fnewt-1,则令s的数量加1,内循环目标函数值fins=fnewt,将xnewt的值赋值给xins,进入步骤(3.2);

(3.2)若s>s,s为内循环优化队列的数量上限,则不对xins开展内循环优化,否则进入步骤(3.3);

(3.3)比较fins和fink的大小,k=1,..,s-1,若fink>fins,则停止对xink的寻优,否则对fink进行内循环优化;

内循环初始化模块确定内循环优化的群智能优化算法的初始条件,具体为:令t=1,初始化内循环群智能优化算法的种群,即在设计变量定义域内,随机生成变量xijt,i=1,…,n,j=1,…,d;其中,t为内循环迭代次数,n为种群数,d为设计空间的维度;

内循环优化模块进行内循环优化,具体为:

根据目标函数值,调用内循环群智能优化算法h,更新设计变量的值,生成新的设计变量xijt+1=h(xijt);

队列生成模块从内循环优化中选择最优解进入内循环优化目标函数值队列,具体为:

比较目标函数值fi=f(xijt)的大小,i=1,…,n,j=1,…,d,选取最小者作为最优解fin,进入内循环优化目标函数值队列;

最优解生成模块输出本次优化的最优解,具体为:比较内循环目标函数值fink的大小,k=1,..,s-1,其中最小值即为本次优化的最优解。

本发明与现有技术相比的优点在于:

本发明解决了基于组件化模块化思想的飞行器总体优化问题,相比于传统优化方法,通过内外循环双层优化,飞行器快速选型的基础上,进一步提高飞行器总体性能,实现了内外循环并行执行,提高了飞行器设计效率。

附图说明

图1为本发明方法流程图。

具体实施方式

下面结合附图对本发明的运行方式做进一步说明:

如图1所示,本发明提出了一种面向组件的飞行器总体双循环优化方法,步骤如下:

(1)初始化:确定外循环优化的群智能优化算法的初始条件;

具体为:

首先定义飞行器总体组成部件的集合m={mij,i=1,…,i,j=1,…,j},其中i代表组件大类,如机身、发动机等,j代表发动机种类。对于集合m中的组件每一个组件mij都有参数xk(k=1,…,k)。

对于内外循环优化,定义优化问题。优化目标为飞行器性能函数f,内循环优化设计变量为xk,即组件参数,外循环优化设计变量为x={mij,xk},即组件种类和组件参数,约束条件函数是飞行器设计约束g,则双循环优化问题可定义如下所示

minf(x)

s.t.g(x)<=0

minf(x)(1)

s.t.g(x)<=0

令t=1,s=1,初始化外循环群智能优化算法的种群,即在设计变量定义域内,随机生成变量xijt,i=1,…,n,j=1,…,d;其中,t为外循环迭代次数,s为内循环优化目标函数值队列的个数,n为种群数,d为设计空间的维度。外循环最大迭代次数tmax。

(2)进行外循环优化;

具体为:

根据目标函数值,调用外循环群智能优化算法h,更新设计变量的值,生成新的设计变量xijt+1=h(xijt)。

令t的数量加1,若t>tmax,则停止外循环优化;否则,继续外循环优化。

(3)从外循环优化中选择最优解进入内循环优化;

具体为:

(3.1)从外循环目标函数值fi=f(xijt),i=1,…,n,j=1,…,d中选择最小值fnewt=min{fi(i=1,…,n)}作为当前群体的最好解xnewt

比较fnewt和fnewt-1的大小,若fnewt>fnewt-1,则不对xnewt开展内循环优化;若fnewt≤fnewt-1,则令s的数量加1,内循环目标函数值fins=fnewt,将xnewt的值赋值给xins,进入步骤(3.2);

(3.2)若s>s,s为内循环优化队列的数量上限,则不对xins开展内循环优化,否则进入步骤(3.3);

(3.3)比较fins和fink的大小,k=1,..,s-1,若fink>fins,则停止对xink的寻优,否则对fink进行内循环优化。

(4)初始化:确定内循环优化的群智能优化算法的初始条件;

具体为:令t=1,初始化内循环群智能优化算法的种群,即在设计变量定义域内,随机生成变量xijt,i=1,…,n,j=1,…,d;其中,t为内循环迭代次数,n为种群数,d为设计空间的维度。内循环最大迭代次数tmax。

(5)进行内循环优化;

具体为:

根据目标函数值,调用内循环群智能优化算法h,更新设计变量的值,生成新的设计变量xijt+1=h(xijt)。

令t的数量加1,若t>tmax,则停止内循环优化;否则,继续内循环优化。

(6)从内循环优化中选择最优解进入内循环优化目标函数值队列;

具体为:

比较目标函数值fi=f(xijt)的大小,i=1,…,n,j=1,…,d,选取最小者作为最优解fin,进入内循环优化目标函数值队列。

(7)输出本次优化的最优解:比较内循环目标函数值fink的大小,k=1,..,s-1,其中最小值即为本次优化的最优解。

基于上述优化方法,本发明还提出一种面向组件的飞行器总体双循环优化系统,包括:

外循环初始化模块:用于确定外循环优化的群智能优化算法的初始条件;

外循环优化模块:进行外循环优化;

选取内循环优化解模块:用于从外循环优化中选择最优解进入内循环优化;

内循环初始化模块:用于确定内循环优化的群智能优化算法的初始条件;

内循环优化模块:进行内循环优化;

队列生成模块:从内循环优化中选择最优解进入内循环优化目标函数值队列;

最优解确定模块:输出本次优化的最优解。

本发明中所述外循环群智能优化算法h以及内循环群智能优化算法h采用遗传算法、粒子群优化算法或者蚁群算法实现。

本发明的系统及方法已经成功应用于中国运载火箭技术研究院的某飞行器的预研阶段,证明了本发明方法及系统能够快速、正确实现飞行器优化设计。

同理,该方法及系统能够拓展应用于其他采用模块化组件化思想的产品的优化设计。

本发明未详细描述的部分属于本领域公知技术。

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