船舶优化设计是一项综合性技术,该技术涉及多领域技术,技术的历史积淀较长,对创新性的约束条件较多,同时,该技术也是船舶设计的核心环节和基础前提,对船舶的航行性能起着决定性影响。由于我国在船舶设计领域采用传统的设计方法,缺乏创新的手段,和国际先进水平相比较,存在较大差距。因此,对革命性的船舶优化设计理论及方法的研发成为我国船舶建设领域的研究重点。近年来,随着自动化控制、计算机、云计算等技术的快速发展,这些技术逐渐被广泛应用在船舶结构设计领域。
SBD(Simulation Based Design)技术是以CFD数值评估技术为基础,结合几何重构技术和最优化理论而形成的一种新型的船舶结构设计模式。该技术以船舶水动力结构性能作为优化目标,通过CFD技术对目标实施数值评估,同时,在船舶设计空间中,利用几何重构和最优化技术进行搜索寻优,最终在一定的约束条件下求得性能最优方案[1]。在船舶优化设计过程中,由于高精度数值计算而产生的海量数据处理问题,可以利用云计算技术的海量数据存储及高性能并行计算能力。
本文研究了船舶水动力机构性能预报技术和云计算技术,在此基础上,提出了IPSO算法,最后,进行了仿真实验。
1 云计算和性能预报技术 1.1 云计算技术在信息技术快速发展和对大数据处理的需求不断扩大的背景下,云计算技术被提出并逐渐应用于各个领域。云计算技术是一种以互联网为基础的计算模式,该模式根据需求通过网络将软硬件资源及海量信息以服务的形式提供给用户使用,其中,连接所有资源的网络称为“云”。对于使用者而言,“云”中的资源能够无限扩展,并且利用不受时间和地理位置的限制按需使用。
云计算技术融合了分布式计算、网格计算、并行计算、虚拟化等计算机和网络技术,通过网络把大量的低成本计算资源整合成具有强大存储和计算能力的集群系统,并借助SaaS、PaaS、IaaS、MSP等模式将强大的存储和计算能力提供给终端用户[2]。云计算技术通过提升“云”的处理能力来降低终端的处理负荷,为用户提供海量数据处理的能力。
1.2 性能预报技术对船舶水动力的性能预报技术是基于SBD技术的船舶水动力结构优化设计的核心技术之一,该技术的精度将直接影响船舶设计的结果。在船舶水动力结构设计过程中,优化算法根据性能预报的结果对下一步搜索方向进行调整,因此,预报结果是否可靠是保障优化算法搜索方向正确性的关键,也直接决定了优化的成败[3]。一般而言,船舶水动力的性能预报技术遵循以下原则。
1)船舶水动力的性能预报技术应该采用具有较高稳定性及精度的方法。
2)船舶水动力的性能预报技术应该对船体几何变化具有较高敏感度,能够辨识出船体细微几何变化对船舶水动力性能产生的影响。
3)船舶水动力的性能预报技术应该具有较高的处理性能。对于船舶设计空间的搜索,主要对大量的设计方案进行性能预报,所以,预报技术的高性能是应用于实际工程中的先决条件。
2 改进的PSO优化算法 2.1 PSO优化算法PSO优化算法描述如下[4]:假设在D维搜索空间中,存在规模为m的粒子种群,其中,第i个粒子的速度向量为
$ {v_i}\left( {n + 1} \right) \!= \!{v_i}\left( n \right) \!+\! {c_1}{r_1}\left( {{p_i} \!-\! {x_i}\left( n \right)} \right) \!+\! {c_2}{r_2}\left( {{p_g} \!-\! {x_i}\left( n \right)} \right), $ | (1) |
$ {x_i}\left( {n + 1} \right) = {x_i}\left( n \right) + {v_i}\left( n \right)。 $ | (2) |
其中,i=1,2,…,m为不同粒子;c1,c2为学习因子,n为迭代次数。每一维粒子速度vi限制在[-vmax,vmax]间,避免因速度过大导致无法求得最优解,vmax取值通常由实际问题决定。当粒子速度满足条件或迭代步数达到预设值时,输出最优解,算法结束。
由于PSO优化算法存在早熟收敛、易陷入局部最优解或停滞问题,需要对PSO优化算法进行改进,改进策略如下:
1)初始化策略。在对粒子群进行初始化时,利用实验设计选取粒子的速度及位置的初始值,该策略能够通过较少的规模实现对搜索空间的充分探索。
2)权重因子策略。为改善PSO优化算法的收敛性,在速度方程中加入惯性权重w,如式(3)所示:
$ {v_i}\left( {n + 1} \right) \!=\! w{v_i}\left( n \right) \!+\! {c_1}{r_1}\left( {{p_i} \!-\! {x_i}\left( n \right)} \right) \!+\! {c_2}{r_2}\left( {{p_g} \!-\! {x_i}\left( n \right)} \right)。 $ | (3) |
3)自适应权重策略。为了解决算法后期因惯性权重小而使搜索新区域能力丧失的问题,本文采用自适应惯性权重策略。在算法迭代过程中,惯性权重w根据适应值的变化情况进行自主改变,公式如下:
$ \!\!\!\! w \!=\! \left\{ \begin{array}{l} {w_{\min }} \!-\! \frac{{\left( {{w_{\max }} - {w_{\min }}} \right)\left( {f - {f_{\min }}} \right)}}{{\left( {\bar f - {f_{\min }}} \right)}} \!+\! {n^2}\frac{{\left( {{w_{\max }} - {w_{\min }}} \right)}}{{n_{\max }^2}},f \! \leqslant \! \bar f,\\ {w_{\max }},f > \bar f。 \end{array} \right. $ | (4) |
其中,f为当前适应值;
改进PSO优化算法IPSO算法的流程如图 1所示,该算法的具体步骤如下:
1)初始化粒子种群,通过试验设计方法对粒子种群进行初始化,选取初始值对粒子的速度和位置进行赋值。
2)对粒子适应值进行计算,保存每个粒子的最优位置Pbest和最优适应值,选取最优适应值粒子对应的位置作为种群的最优位置Gbest,根据式(4)求得权重因子w。
3)根据式(2)和式(3)对所有粒子的位置及速度进行更新。
4)根据式(4)对权重因子w进行更新。
5)对更新后的所有粒子计算其适应值,并与自身最优位置Pbest进行比较,选择最优值作为该粒子的Pbest。
6)将粒子适应值与种群中粒子最优位置Gbest进行比较,取最优值对Gbest进行更新。
7)对算法结束条件进行判断,如果不满足预设条件,则执行步骤3;反之,则输出最优解,结束算法。
3 仿真实验本文在Matlab平台对IPSO算法进行了对比仿真实验,实验过程中,IPSO算法和标准PSO算法选择相同的数据参数,实验参数设置如表 1所示,其中,IPSO算法采用拉丁方法对种群进行初始化。实验结果如图 2所示。
从仿真实验结果可知,IPSO算法的优化结果要好于标准PSO算法,IPSO算法能够克服早熟问题,且算法在收敛速度和收敛精度方面都高于标准PSO算法。所以,本文提出的IPSO算法能够有效提高寻优的效率,具有较高的实际使用价值。
4 结语在船舶性能要求越来越高的背景下,基于SBD技术的船舶水动力机构云平台在船舶设计和优化等方面发挥着越来越重要的作用,如何利用SBD技术提高船舶水动力结构的性能是本文研究的重点。本文利用SBD技术和IPSO算法对船舶性能方案进行寻优,最后,进行了仿真实验,实验结果达到预期。
[1] | 赵峰, 李胜忠, 杨磊, 等. 基于CFD的船型优化设计研究进展综述[J]. 船舶力学, 2010, 14 (7): 812–820. |
[2] | 郭海强, 朱仁传, 缪国平, 等. 数值波浪水池中船舶水动力系数测试与分析技术[J]. 中国造船, 2008 (1): 58–65. |
[3] | SANTOS C L, HERRERA B M. Fuzzy identification based on a chaotic particle swarm optimization approach applied to a nonlinear yo-yo motion system[J]. IEEE Trans. Ind. Electron, 2007, 54 (6): 3234–3245. DOI: 10.1109/TIE.2007.896500 |
[4] | TAHARA Y, PERI D, CAMPANA E F, et al. Computational fluid dynamics-Based multiobjective optimization of a surface combatant[J]. Marine Science and Technology, 2008, 13 (2): 95–116. DOI: 10.1007/s00773-007-0264-7 |