openmdao - 在 openMDAO 中,消除非活动约束有多重要?
问题描述
如果取消非活动约束(例如机翼刚度主导机翼最大应力,因此应力约束不活动),求解速度是否会显着提高?对于优化驱动程序本身来说,这是一个更大的问题,还是 openMDAO 有什么技巧可以帮助解决这个问题?
解决方案
OpenMDAO 在执行期间不会改变优化问题的大小(设计变量和约束的数量),大多数优化器不允许这样做。
许多优化器已经采用了主动集方法。虽然需要该框架来计算可能不活动的约束的部分,但这通常不会对性能造成重大影响。
显然,这取决于所涉及问题的大小和计算约束的成本。有一些技巧可以将大向量约束聚合成一个约束(http://openmdao.org/twodocs/versions/latest/features/building_blocks/components/ks_comp.html),但除非你'重新确信您的约束评估是性能瓶颈。
推荐阅读
- jquery - Ajax 调用未按预期执行
- spring-boot - 使用restTemplate检查redis键是哈希还是字符串
- node.js - 如何在 Windows 上使用 Node.js 获得进程的延迟?
- javascript - 无法使用 javascript 选择文本字段
- google-apps-script - 创建可以克隆的容器绑定脚本的最佳方法是什么?
- assembly - 为什么'len equ $-aa'在程序集(emu8086)的源地址中不起作用?
- c - 计算多个循环的时间
- dynamics-crm - 如何消除实体视图的重复值?
- javascript - “Onvalid” JQuery 的术语
- swift - 具有绑定的条件视图不起作用