在求解器基础目标中使用天花板功能?

时间:2012-09-24 01:49:12

标签: solver ms-solver-foundation

我试图在我的Solver目标函数中将我的一个决策变量的上限设置为2.5,但是Math.Ceiling()函数无法应用,因为foobar变量不是double,它是一个“术语”变量。有没有其他方法可以表达相同的代码,这将在Solver中起作用?

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

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

1 个答案:

答案 0 :(得分:0)

Model类包含大量静态方法,这些方法对Term个对象而不是double:s执行算术运算。您将找到Math类中可用的大多数(如果不是全部)操作。

特别是,您应该可以更改目标函数以使用Model.Ceiling