[优化模块] 使用优化模块进行参数估计

改进 COMSOL Multiphysics 模型

优化模块可以与所有其它任意 COMSOL Multiphysics 模块耦合使用。在创建您的产品或工艺的 COMSOL Multiphysics 模型之后,您应该会希望改善产品设计。通常这会涉及到四个步骤。首先,定义目标函数——描述系统的品质因子。第二,定义一组设计变量——您想要更改的模型输入。第三,定义设计变量的一组约束,或者需要满足的工作条件。最后,优化模块会在满足约束条件的前提下,更改设计变量来改进您的设计。优化模块是一个通用接口,用于定义目标函数、定义设计变量,并设置约束。任何模型输入,无论是几何尺寸、部件形状、材料属性还是材料分布,都可以视为一个设计变量,并使用任意模型输出来定义目标函数。它可以在整个 COMSOL Multiphysics 模块套件中使用,可以与 LiveLink™ 专业模块耦合使用,优化第三方 CAD 程序中的几何尺寸。

[优化模块] 使用优化模块进行参数估计插图

无导数和基于梯度的算法

优化模块包含两种不同的优化技术:无导数和基于梯度的优化。当您的目标函数和约束不连续,也没有解析导数时,无导数优化方法会很有用。例如,您可能需要通过改变尺寸来最小化部件中的峰值应力。但当尺寸变化时,应力峰值的位置可能会从一个点转移到另一个点。这种目标函数非解析,需要无导数方法。优化模块提供了四种此类方法:二次近似的界限优化 (BOBYQA)、Nelder-Mead、坐标搜索,以及 Monte Carlo 方法。

优化模块可以计算近似梯度,使优化设计变量朝以改进设计的方向演化。您可能希望最小化部件的总质量,这也可以使用此方法实现。部件质量通常相对部件尺寸直接可微,因而可以使用基于梯度的方法。优化模块使用 SNOPT 优化器的伴随法来计算目标函数和约束函数的确切解析导数,以改进设计变量,SNOPT 优化器由美国加利福尼亚大学圣迭戈分校的 Philip E. Gill 和斯坦福大学的 Walter Murray 和 Michael A. Saunders 开发。第二种基于梯度的算法是 Levenberg-Marquardt 求解器。在通常用于参数估计和曲线拟合等应用的最小二乘法类目标函数中,您可以使用该求解器。第三种方法是移动渐近线方法 (MMA),它是一种基于梯度的优化求解器,由瑞典斯德哥尔摩皇家理工学院的 K. Svanberg 教授编写。这种算法基于拓扑优化的思想设计,该方法在文献中通常称作 GCMMA,在优化模块中的名称为 MMA。

基于梯度的方法的优点是它可以优化涉及数以百计或甚至数以千计设计变量的问题,而随着变量数量的增加,所增加的计算成本极低。伴随法可以同时计算所有解析导数,而无导数方法必须近似计算每个导数,并且随着设计变量数量的增加,需要花费更多的时间。基于梯度的方法还可以考虑更复杂的约束函数。

无导数方法的优点在于它的简单性。它不需要确定可微目标函数,并且对它进行设定时需要的用户交互操作较少。但是,由于计算成本的原因,无导数方法常用于设计变量数量约为 10 个或以下时。在实际情形中,这可以涵盖一系列广泛的实际工程优化问题。

参数优化会涉及到任意标量模型输入的优化,例如流动速率和载荷大小。这通常是最简单的优化,可以通过任何技术处理。

参数估计较为复杂,需要将 COMSOL 模型与实验数据相关联。通常情况下,其目的是利用模型计算来反演材料属性。

查看屏幕截图 »

尺寸、形状和拓扑优化

优化方法可以按照要优化变量的类型进一步分类。尺寸、形状和拓扑优化均可在优化模块内处理,每种优化在设计过程中都有其自己的位置。

尺寸优化涉及到直接用于制造的设计变量的定义。典型的设计变量包括孔径大小,或结构部件的长度、宽度和高度等。尺寸优化通常是设计过程中的最后一个步骤,在设计的整体形状基本固定之后进行。通常在此处使用无导数方法。

查看屏幕截图 »

形状优化通常在设计过程中的较早期进行,涉及到对象形式的更加自由的变化。这通常需要更多的时间来选择设计变量,因为目标是改进形状而没有过多的设计约束。如果可以确定解析目标函数,则首选基于梯度的方法。

查看屏幕截图 »

拓扑优化在设计过程的极早期进行,通常在概念阶段。拓扑优化将材料分布作为设计变量,并通过插入或去除结构来改进目标函数。由于设计变量的数量很大,所以只有基于梯度的优化是可行的。

查看屏幕截图 »

产品特征

  • 曲线拟合
  • 无导数优化
  • 尺寸和形状优化
  • 基于梯度的伴随法优化
  • Levenberg-Marquardt 求解器
  • 通过二次近似 (BOBYQA) 方法进行边界优化
  • 通过线性近似 (COBYLA) 方法进行约束优化
  • Nelder-Mead 方法
  • 坐标搜索法
  • 蒙特卡罗方法
  • 参数估计
  • SNOPT 求解器
  • 拓扑优化

视频教程:使用优化模块进行参数估计

默认图片
bossliu
清醒 专注 努力
文章: 499

一条评论

  1. […] 本文为”[优化模块] 使用优化模块进行参数估计“提供视频的对应文字资料。 […]

留下评论

Captcha Code

[优化模块] 使用优化模块进行参数估计