【发布时间】:2022-02-04 01:01:24
【问题描述】:
我正在 pyomo 中研究一个复杂的模型。不幸的是,我必须根据先前的值来更改目标函数的公式。
特别是我的目标函数由两个项组成,称为 A 和 B,它们具有不同的数量级(A 通常比 B 高 2 或 3 个数量级,但这可能会有所不同)
为了保证A和B的公式权重相同,我需要将我的目标函数写成如下:
objective= A + B*K`
其中 K 是使第二项与 A 具有相同比例/大小的值
example:
A=4e10
B=2e3
K=1e(10-3)=1e7
问题是,为了知道 K,我必须知道 A 和 B 的值,但是 pyomo 不给出值,它只是将一个表达式传递给求解器。
我读到由于巧妙地使用二进制变量可以克服这个问题,任何人都可以提出一个有用的方法吗?
亲切的问候
【问题讨论】:
标签: python optimization mathematical-optimization pyomo