跳到主要内容

响应面

组件名称响应面
工具集设计分析优化
组件作者雪浪云-古风
文档版本1.0
功能可用于DoE计算结果的响应面分析
镜像名称suanpan_mdo:latest
开发语言Python

组件原理

读取优化问题定义和设计表csv文件(设计表中包含所有设计点的参数和响应),在弹窗界面中勾选的两个输入参数和一个输出变量拟合响应曲面,输入预测点的坐标,计算对应的预测值和梯度。

输入桩

输入端子1

  • 端口名称:优化问题定义
  • 输入类型:对象
  • 功能描述:输入优化问题定义(optimizationProblem),基于其中输入参数取值范围定义响应面预测的范围。
  • 示例:优化文档定义包含内容如下
{
"inputs": [
{"param": "Section1", "min": 0.001508619, "max": 0.006460916, "default":0.003 },
{"param": "Section2", "min": 0.001517848, "max": 0.006473421, "default": 0.003},
{"param": "Section3", "min": 0.001548177, "max": 0.006457974, "default": 0.003}
],
"outputs": ["First_Mode", "Max_Stress", "Mass", "Max_Displacement", "Cost"],
"objectives": [{"objective": "Volume", "option": "MaximizeValue"}],
"constraints": [{"function": "10-Surface"}, {"function": "Surface-2"}]
}

输入端子2

  • 端口名称:设计表
  • 输入类型:Csv文件
  • 功能描述:输入设计表CSV文件
  • 示例:CSV文件示例格式如下

image.png


tutorial_Stage09_LatinHypercube100_SUMMARY.csv

输出桩

组件为弹窗展示组件,无输出

数据接收方式

异步模式

参数配置

响应面模型类型

  • 功能描述:在单选下来中选则支持SMT响应面拟合模型
  • 必选参数:
  • 默认值:Kriging
  • 示例:

image.png


响应面模型参数

  • 功能描述:设置响应面模型类型参数,参考SMT库。
  • 必选参数:
  • 默认值:{},即使用如下响应面模型类型默认参数:
    • Kriging,调用SMT库KRG模型,默认参数{theta0=[1e-2]*ndim,print_prediction = False}
    • Quadratic,调用SMT库QP模型,默认参数{print_prediction = False}
    • RBF调用SMT库RBF模型,默认参数{print_prediction = False,poly_degree = 0}
  • 示例:如,{"print_global":False}

image.png


显示数据颗粒度

  • 功能描述:x、y轴分别取样数目,
  • 必选参数:
  • 默认值:50
  • 示例:

image.png


运行调优

建议不进行特别配置,按照平台的默认分配运行。

使用方法

未部署状态下的操作步骤

后面板连接

响应面组件接收两个输入:

  • 输入框前面板组件将优化问题定义发送给组件的输入端子1,
  • 上传文件将设计表csv文件发送给组件的输入端子2.

image.png


其中上传文件右面版中将设计表上传并选择,具体操作参见上传文件组件,上传文件的输出桩需要设置为Csv文件。需要上传的设计表文件如上,输入端子2示例。

右面版配置

右面版参数配置如下,所有参数保持默认值。


image.png


部署状态下的操作步骤

前面板操作

  1. 在输入框中输入优化问题定义,内容同输入端子1的示例。
  2. 点击按钮触发上传文件组件输出Csv文件。

image.png


弹窗操作

  1. 节点收到数据后打开弹窗界面
  2. 选择拟合响应面的两个输入参数和一个输出响应,右侧可以看到拟合的响应面
  3. 修改预测点的坐标,可以得到预测值和梯度数据,在右侧响应面中可以看到预测点小球位置的变化。

弹窗界面布局如下:


image.png