gpt4 book ai didi

solver - Microsoft Solver Foundation for semi-integer

转载 作者:行者123 更新时间:2023-12-01 11:56:15 24 4
gpt4 key购买 nike

是否可以使用 MSF api 将变量指定为半整数(V = 0a <= V <= b)?

以下是 LP_Solve 中的一个示例,它使用“sec”和“int”关键字来指示变量是半连续的和整数的。

max: 0.5 Q1 + 0.55 Q2 ;

Q1 >= 5;
Q1 <= 10 ;
Q2 >= 5;
Q2 <= 10;
Q1 + Q2 <= 10;

sec Q1,Q2 ;
int Q1,Q2 ;

MSF 中类似的东西会很好。我注意到可以在 MSF 中调用 Gurobi 插件 DLL,但是我在该 api 中找不到任何地方能够正确设置变量的类型(我认为 Gurobi 称之为 VTYPE),所以我假设它是没有在他们的 .net api 中公开或在 MSF 使用的 Gurobi 版本中不可用?或者,有没有一种从 .NET 调用 LP_Solve 的好方法?

最佳答案

您可以使用 Solver Foundation 执行此操作,但没有与“sec”关键字等效的关键字。相反,您可以为每个半整数变量添加一个虚拟的 0-1 决策。对于涉及“V”的原始示例,您可以在 OML 中执行以下操作:

Model[
Decisions[
Integers[0, 1],
VPositive
],
Decisions[
Reals,
V
],
Constraints[
constraint -> 10 * VPositive<= V <= 20 * VPositive
]
]

如果您使用的是 Solver Foundation API,那么您将使用对象模型添加类似的决策、约束和目标。指定决策类型的方法是使用构造函数中提供的域。

关于solver - Microsoft Solver Foundation for semi-integer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2081049/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com