首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >戴莫斯:有可能优化design_parameter吗?

戴莫斯:有可能优化design_parameter吗?
EN

Stack Overflow用户
提问于 2021-04-06 13:15:55
回答 1查看 79关注 0票数 1

例如,在“赛车”的例子中,我可以为“质量”design_parameter设定一个下限和上限,然后在解决最优控制问题的同时优化车辆质量吗?

我看到phase.add_design_parameter()有一个"opt“参数,但是当我使用opt=True运行问题时,值保持不变。我需要另一层来优化这个值的求解器吗?

这一特性将有助于将预算分配给设计决策(例如购买较轻的底盘),以及调整齿轮比等参数。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-04-06 13:54:25

这是绝对可能的,事实上,这正是opt标志在设计参数上的意图。

为了确保事情按预期的方式进行,当您在opt=True中有一个设计参数时,确保它显示为优化器的设计变量之一,方法是在问题实例上在run_model之后调用list_problem_vars。list_problem_vars的文档是这里

如果它显示为一个设计变量,但优化器拒绝更改它,那么它可能看不到该变量的敏感性wrt。这可能是因为

  • 模型中定义错误的导数(错误的部分)
  • 较差的标度(目标/约束的灵敏度wrt设计参数在优化器的单元中可能很小)
  • 有时,由于问题的性质,某一输入对结果几乎没有影响(这可能是这里最不可能的)。

你可以尝试的东西:

  • 运行合计 (确保首先调用problem.run_model ),并查看所有衍生品中是否有不正确的。
  • 运行报告并验证这些值在优化器看到它们的单元中是不可忽略的。如果在起点上它们真的很小,那么应该将设计参数缩放得更小(将ref设置为0.01这样的较小数目),这样从优化器的角度看,一个小的变化就会导致模型中的更大的变化。

如果事情似乎在尝试之后不起作用,我会和你一起解决这个问题。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66969406

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档