【发布时间】:2018-07-03 10:55:43
【问题描述】:
我对尝试解决的优化模型有些困惑。它是一个小型模型,可最大限度地减少两个单元的成本。我刚刚开始优化,我不确定我是否将问题很好地解释为 AMPL。特别是关于最小化约束及其界限。
我必须将两个决策变量作为模型中的单位。 u1 的成本是 10,u2 是 13。u1 的限制是你不能生产超过 100 个单位,而 u2 是 50 个单位。通过反转这个最小化问题的界限,我得到了不同的结果。谁能帮我解释发生了什么?
var u1 >=0; var u2 >=0;
最小化单位成本:10*u1 +13*u2;
以unit1为准:0
由于上述限制,我的输出为:
CPLEX 12.8.0.0:最优解;目标 0 0 次对偶单纯形迭代(第一阶段为 0) 目标是:0.000000 : _varname _var := 1 u1 0 2 u2 0 ;
: _objname _obj := 1 单位成本 0 ;
: _conname _con := 1 个单位 1 0 2单元2 0
;
反转约束:
以unit1为准:100
输出为:
约束单元 1 的边界不一致: 下限 = 100 > 上限 = 0
约束单元 2 的边界不一致: 下限 = 50 > 上限 = 0 由 presolve 确定的不可行约束。 目标是:825.000000 : _varname _var := 1 u1 50 2 u2 25 ;
: _objname _obj := 1 单位成本 825 ;
: _conname _con := 1 台 1 10 2 单元2 13 ;
【问题讨论】:
-
当你说
100 ≤ x ≤ 0时你期望看到什么? -
这肯定是错误的。欧文,我只想最小化成本,但我不想零成本。问题是,无论我在约束中设置什么下限,它都是各个变量的最佳值。我怎样才能摆脱这种情况?
标签: optimization mathematical-optimization ampl cost-based-optimizer