2021/01/20

【技术】船型优化中如何选择合适的优化策略

在船型优化任务中,考虑到单个算例仿真时间的成本和计算资源成本,工程师往往需要在尽可能少的计算案例中找到更优的设计方案。因此一个合理的优化策略的选择便显得尤其重要。在本文中,笔者以KCS船为例,试图探讨CAESES中不同优化算法的选择,以及南京天洑软件公司自研优化平台AIPOD对于优化效率和效果的影响。需要注意的是,本文所得的结论可能仅适用于该KCS船型。结论是否具有普适性需要进一步的探索与思考。


参数化模型
 

采用CAESES软件的半参数化变形方法,对KCS船进行局部变形,在球鼻艏,船体入流段和去流段采用FFD方法,艉封板采用Delta shift方法,除了局部变形,还通过Lackenby方法对船体其他位置进行变形,组合变形效果如视频所示:


数值仿真计算 


本算例以SHIPFLOW作为仿真工具,计算参数化模型的总阻力系数Ct。

算例网格数为1.74M;计算使用的工作站硬件配置为: CPU: Intel? Core? i7-7700K @ 4.2GHz 4.2GHz;内存: 16GB;单个算例仿真时间约40分钟。

1.png


优化问题



8个设计变量,以总阻力系数较小为优化目标,同时满足排水体积和浮心纵向位置的约束。


CAESES优化算法
 

1.    Sobol

首先采用智能取样算法sobol,在设计变量给定的变化范围内做50次试验设计。计算结果如下:

2.png

表格1.jpg

结论:

①. Sobol只是取样算法,并没有执行优化。

②. “优化”效果有限。“优化”过程未体现出收敛性。

2.    Sobol+Tearch

基于上一步Sobol的优化结果,另执行50个方案的优化计算,采用梯度优化算法Tsearch。计算结果如下:

3.png

表格2.jpg

结论:

①. 基于sobol的结果增加Tsearch的算法可以得到更优的设计方案。

②. Tsearch优化过程体现出收敛性。

3.    遗传算法NSGA-II

采用流行的遗传算法NSGA-II进行进一步探索。考虑到电脑计算性能和时间成本,遗传算法设置为如下:种群规模 (population):12。代数 (Generation):10。共计120个方案。计算结果如下:

4.png

表格3.jpg

结论:

①. 遗传算法NSGA-II体现出一定优化效果,但优化效果不如sobol+Tsearch算法。

②. 120次仿真计算的优化历程未体现明显收敛性。

③. 思考:sobol+NSGA-II的方案能否优于单独的NSGA-II优化或者sobol+Tsearch方案?

4.    Sobol+遗传算法NSGA-II

执行50次sobol计算,以更优方案为基础另执行120次NSGA-II优化。参数设置与前述方案相同。剔除无效设计方案后,结果如下:

5.png

表格4.jpg

结论:

①. 由于NSGA-II算法每一代取值的随机性,Sobol+NSGA-II的优化策略优化效果甚至不如单独NSGA-II策略。

②. 对于小样本优化计算(100次左右),遗传算法NSGA-II并不能发挥其优势。

③. 综合考虑优化效果和优化成本,对于小样本优化计算,更佳优化策略为sobol+Tseach的组合优化。


天洑软件自研优化平台AIPOD
 

优化平台AIPOD核心优化算法SilverBullet算法是天洑针对工业设计领域数值模拟计算成本高的痛点而研发,在计算成本有限的情况下(百量级),以尽可能少的计算代价,获取尽可能高的性能提升。

6.png

SilverBullet算法整合了智能采样技术、耦合优化技术,以及一套核心的参数指标动态协调全局优化和局部探索力度,从而实现在小计算规模下的高效性能优化提升。SilverBullet算法有以下两大特色:

①. 自适应优化场景,零使用门槛

SilverBullet算法具有强大的自适应性,用户仅需提供计算代价,无需任何超参设定,即可一键启动优化流程,很大程度的降低了用户的使用门槛;

②. 智能边界突破(Bound-break)

SilverBullet独有的智能优化探索能够摆脱参数范围不够精确的困扰,对于无法精确给定变量范围的部分变量,在满足不增加搜索成本的前提下,自主决策有选择性地突破设计参数范围边界,获得更好的设计方案。 

1.    AIPOD

采用相同的设计参数与设置,利用SilverBullet算法执行100次优化计算,结果如下:

7.png

表格5.jpg

结论:

①. AIPOD算法在100次样本规模的优化设计中,优化效果好于上述更优的优化策略Sobol+Tsearch。

②. AIPOD算法在100次样本规模的优化设计中,优化结果体现出一定收敛性。

2.    AIPOD (boundbreak 200)

采用相同的设计参数与设置,利用SilverBullet算法开启boundbreak功能,执行200次优化计算,结果如下:

8.png

表格6.jpg

结论:

①. AIPOD算法开启boundbreak功能后,优化结果得到进一步提升。

②. 优化结果体现出一定收敛性。

③. 思考:减少计算成本,降低样本规模到100以下,能否也可以得到较好的优化结果? 

 3.    AIPOD (boundbreak 80)

采用相同的设计参数与设置,利用SilverBullet算法开启boundbreak功能,执行80次优化计算,结果如下:

     

     

     

    9.png

    表格7.jpg

     结论:

    ①. AIPOD算法开启boundbreak功能后,80次优化计算的结果不如200次优化计算的结果。

    ②. AIPOD算法开启boundbreak功能后,80次优化计算结果仍然好于上述较优的Sobol+Tsearch优化策略和AIPOD不开启boundbreak功能算法。

    ③. 优化结果体现出一定收敛性。

    由于开启了boundbreak功能,更优方案对应的个别设计变量最终取值在原始设定的边界外,因此有必要检查最优设计方案的几何光顺性。经检查,更优方案的光顺性良好,船体几何合理,如下图:

    10-1.png

    10-2.png

     优化船型与原始船型对比

    11-1.png

    原始船型

    11-2.png

    优化船型



    结 论
     

    文基于标模KCS船型进行了多种优化策略的尝试,优化设置中同时考虑了优化效果和优化时间。由于工业设计中单个算例需要较为昂贵的仿真成本,因此在实际项目中,工程师能接受的优化样本规模通常在百次左右。基于这一前提,遗传算法无法发挥其优势,得不到较好的优化结果。如果基于CAESES平台进行优化,更优的优化设计策略为sobol+Tsearch的组合。

    在国家倡导的工业软件自主化的大背景下,南京天洑软件公司自研AIPOD优化产品体现出了其功能性与自主性的优势。不仅仅可以帮助客户在有限的时间内得到更优的设计方案,并且给予客户更大的软件自主开发权限。

    AIPOD软件现以面向客户提供试用,如果感兴趣请与我们联系。