跳到主要内容

线性规划

线性规划组件是通用的算法组件,可用于线性规划求解

输入

  • 字符串输入,仅做触发计算使用,

输出

  • JSON格式数据,具体格式如下所示:
{
"status": "Optimal",
"variables": {"x": 2, "y": 3},
"objective": 12
}
  • status:求解状态
    • Optimal:求解出最优解
    • Infeasible:无法求解
    • Unbounded:有无穷多个解
    • Not Solved:未求解出结果
    • Undefined:未定义
  • variables:决策变量,形如{"x": 2, "y": 3}
  • objective:求解结果

参数

[
{
"name": "x",
"lower": 10,
"upper": 20,
"type": "int"
},
{
"name": "y",
"lower": 10,
"type": "continuous"
}
]
  • name:变量名,用于后续的约束条件中
  • lower:变量的最小值,默认无穷小
  • upper:变量的最大值,默认无穷大
  • type:变量类型
    • int:离散型
    • binary:布尔值
    • continuous:连续值
  • 目标函数:类型为字符串,形如2 x + 3 y
  • 约束条件:类型为JSON,形如
["x + y > 10", "2 * x + 3 * y <=20"]

算法参考

https://realpython.com/linear-programming-python/