0

我试图在我的 Solver 目标函数中将我的一个决策变量的上限乘以 2.5,但由于 foobar 变量不是双精度,因此无法应用 Math.Ceiling() 函数,它是一个“术语“ 多变的。有没有另一种方法可以表达同样的代码,这将在 Solver 中工作?

Decision foo = new Decision(Domain.IntegerNonnegative, "bar");
model.AddDecision(foo);

model.AddGoal("foobar", GoalKind.Maximize, Math.Ceiling(2.5 * foobar));
4

1 回答 1

0

Model类包含大量静态方法,它们对Term对象而不是double:s 执行算术运算。您会发现大部分(如果不是全部)类中可用的操作Math

特别是,您应该能够将目标函数更改为使用Model.Ceiling

于 2012-09-24T07:18:24.567 回答