多学科优化软件对比
本文摘要:(由ai生成)
优化软件如Isight、Optimus等各具特色,但流程框架相似。它们在接口、优化算法、元模型技术、文件管理等方面存在差异。Isight和Optimus支持自定义接口,META软件则擅长结果处理。优化算法涵盖单多目标、局部全局方法,元模型对非线性问题重要。文件管理方面,各软件策略不同。除了核心功能,这些软件还提供参数拟合、稳健性分析等附加功能。优化软件结合AI技术,助力设计。尽管无法完全替代专家经验,但人工智能的发展正在改变社会分工。
常用的优化软件有很多,包括Isight、Optimus、modefrontier、LSOPT、Heeds、OptiSlang、Hyperstudy等。每个软件都有其各自的特点,又有很多相似的特性。这里就针对仅就个人使用情况做个简单的对比,对于没有使用过这些软件的初学者有个大体的认识。其中optislang和hyperstudy相比较其他软件而言,功能上将还是有所欠缺。这里就不做介绍了。
一.优化流程(框架)
大概分为两种流程框架,一种是图形上是开环的,包括optimus、modefrontier、Heeds。另一种是图形上是闭环的,包括Isight、LSOPT。对于初学者而言,图形闭环形式让人更好理解,因为这和优化流程图是一致的。当然,实际的优化过程所有的优化软件都是一致的。
图1 Optimus优化流程图




图5 LSOPT优化流程图
同样一个分析问题,不同的优化软件界面差别很大,Heeds简单明了,设计变量,设计响应,设计目标等等都是在内部进行设置。Modefrontier则流程繁多,设计因素都需要显式设置。

二.软件接口
优化软件内的第三方软件接口,可以方便地对求解文件和结果文件创建设计变量和设计响应。如果优化软件集成了第三方的软件,则在使用该模块时会方便快捷的多。当然,任何一款优化软件都无法集成所有的第三方软件,因此优化软件都有其他的方式来集成第三方软件。主要包含三个内容:1.对求解文件的解析用于创建设计变量;2.软件求解命令的设置,一般就是该软件后台运行或batch运行的命令;3.对结果文件的解析用于创建设计响应。通常第三方软件的结果文件往往都是软件专有的格式,并不方便对结果文件进行解析。如Nastran的op2、ANSYS的rst、ABAQUS的odb、dyna的d3plot等等。这时往往需要通过一些手段来完成。如Nastran的结果可以声明输出到f06中、ABAQUS可以使用Python来解析odb结果并输出结果到ASCII格式的文件中、ANSYS可以用APDL提取结果到ASCII格式的文件中等等。这往往需要工程师具有一定的二次开发能力。 另外一种比较好的选择是通过第三方的后处理软件来读取结果用于生成设计响应。如Hypergraph/Hyperview和META。这里强烈推荐优化工程师要掌握META这个工具软件,其内部集成了用于处理结果文件创建设计响应的模块,同时还支持Python的二次开发,完成几乎所有的结果文件的处理过程,在结合自带的优化后处理模块则可以完成所有的优化设计响应的提取创建。且几乎全部的优化软件都集成了META接口,即使没有集成也可以通过其他方式处理。






当然,这些优化软件一般都可以自己创建第三方软件的接口,如Isight、Optimus等都具有这个功能,只不过这些往往需要工程师具有一定的二次开发能力。三.DOE方法
DOE主要有两个作用:其一是参数识别,用于分析设计变量与设计响应的关系。当然还可以用来做优化筛选,矬子里拔将军。另外一个作用是用于元模型的空间生成。即生成用于创建元模型的试验点。而不同的优化问题,选择不同的DOE方法具有决定性的影响作用。因此优化软件具有丰富的DOE方法,将适用于更多的优化问题。





四.优化算法
数值优化算法分类可以按优化目标数分为单目标优化、多目标优化。按寻优方法可以分局部优化方法和全局优化方法。优化软件集成的算法更丰富,则适用的优化范围更广。







当然,除了自带的优化算法外,可以集成外部优化器进行优化。
五.元模型/代理模型/近似模型
对于一些非线性问题,通过直接优化往往是不现实的,因此需要使用元模型法/代理模型法/近似模型法。同样的分析问题(试验样本数据相同),使用不同的元模型法亦会有不同的元模型精度。因此,优化软件丰富的元模型方法 会有助于优化问题的求解。如Optimus和modefrontier等都已经引入了机器学习的方法来创建代理模型。






六.文件管理
Isight:具有丰富的设置,可以设置运行目录,生成文件夹的位置,是否生成子文件夹等等。可以设置每个模块所需要文件的路径,如绝对路径、相对路径、模型文件路径、运行文件路径等等。看似功能丰富,实则会造成设置的混乱,需要十分熟悉整个设置过程才行。Optimus:所有模块运行均在同一个文件夹下进行Modefrontier:在模型文件夹下生成子文件夹Heeds:在模型文件夹下生成子文件夹,可以设置每个模块所需要文件的路径,如绝对路径、相对路径、模型文件路径、运行文件路径等等。

七.其他功能
包括参数拟合/曲线拟合,稳健性/可靠性分析,分析数据后处理等功能各个软件功能类似。这些内容可以参考公 众 号以往的案例,每个功能都有在不同的优化软件中进行了实现。但Isight可以对优化问题进行优化策略的选择,相比较其他软件有一些优势。另外,如Optimus,modefrontier等都加入了Python的二次开发功能,对于高级用户而言更加方便。

以上对每个优化软件做了简单的对比,其实对于大部分问题,每个优化软件都可以完成优化的任务。只不过在具体的使用感受上有些差异。优化软件的操作一般都很简单。只需要大概了解下基本的功能就可以上手,从上手的难度上来说没有太大的差别。一般1、2个小时就可以掌握基本功能的使用。
——————————————————————————
如何看待优化工程师与分析工程师的关系:优化工程师往往通过数值优化方法探索设计空间,从更深层次来挖掘数据之间的关系,履行仿真驱动设计的责任。从这个层面来讲,这个工作是人工无法完成的。但这并不能代替专家经验,分析工程师具有丰富的开发经验,在当前的软硬件条件下,优化方法还无法替代专家经验。虽然这是发展的方向,人工智能的出现已经并且正在加速着对社会分工的影响。CAE中人工智能的应用也在不断地发展,如对CAE分析结果数据分析从而帮助做出更加合理的决断等。如上文中所述,优化软件也慢慢加入了人工智能的应用,如Optimus、modefrontier等加入了机器学习的应用。而且如BETA CAE Systems和HyperWorks软件也正逐渐加入了人工智能的内容用来助力优化设计。