建模优化

本文为您介绍工业优化的建模优化算法组件。

通过界面化的方式,实现运筹优化的数学建模,并调用求解器实现模型的求解输出。

计算逻辑原理

通过依次添加序列、变量、参数、目标函数及约束等,完成数学建模,配置相应的求解属性,调用底层求解器进行模型的求解。

计算逻辑原理

image

使用流程说明

  1. 添加数据源。

    引入DB-IN组件,配置数据库及对应的字段,选择模型需要的数据。

  2. 定义问题类型。

    选择属于线性规划、非线性规划或约束类问题。

  3. 添加模型序列。

    即创建索引,在索引创建中,选择索引类型普通索引,并赋予索引名称,该名称将用于模型构建中的引用。您可以通过手动输入或者关联表的方式获取索引值

    添加索引

  4. 定义变量。

    变量定义过程中,如果该变量含有下标,则需要添加变量的索引。同时,需要给出变量的可行域初始值

    image.png

  5. 添加参数。

    参数添加的方式与变量添加方式类似,可以通过手动输入或关联表的方式获取数值。

  6. 添加目标函数和约束。

  7. 定义求解参数。

    通过设置求解时间,限制运算时长。如果不存在最优解,则会在达到最长运行时间后自动退出,并返回当前质量最优解。

  8. 配置优化数据输出。

    配置时可选择是否回写,如果数据回写则需要选择目标数据库及写入规则。

参数说明

  • IN1端口-输入参数

    输入端口支持IGATE-IN以及DB-IN等方式。

  • OUT1端口-输出

    字段名

    值类型

    说明

    model_id

    string

    模型运行id(项目ID_画布ID_年月日时分秒)

    model

    string

    模型内容JSON信息

    start_time

    datetime

    求解开始时间

    end_time

    datetime

    求解结束时间

    computation_time

    float

    运行时间,单位为秒。

    obj

    double

    目标函数结果

    solver_info

    string

    求解结果信息

    variables

    string

    变量列表JSON信息:

     { "var1_key1_key2_key3": { "value": 0.0, "keyName": "var1_key1_key2_key3", "quality": "-1" } }