问题标签 [minizinc]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
constraint-programming - MiniZinc、Gecode 去除溶液分离器
我有一个 minizinc 模型,我想找到所有解决方案(我使用 gecode)然后打印统计信息,这很容易:
但是这个模型会生成数千个解决方案,并为每个解决方案打印一个分隔符:
我需要删除这些分隔符,只打印统计信息。有办法吗?
==更新==
我能够通过更改 Gecode 源来解决这个问题
我删除的地方
也许有更好的解决方案,但这对我很有用。
optimization - 优化工作调度 MiniZinc 代码 - 约束规划
请您帮助优化此工作 MiniZinc 代码:
任务:有一个有 6x 时隙的会议。有 3 位演讲者出席会议,每个演讲者都可以在特定时段使用。每个演讲者将呈现预定数量的时隙。
目标:制定演讲者最早结束的时间表。
示例:演讲者 A、B 和 C。谈话时长 = [1, 2, 1]
扬声器可用性:
链接到工作 MiniZinc 代码:http ://pastebin.com/raw.php?i=jUTaEDv0
我希望优化的内容:
预期的解决方案:
caching - Is there any way to empty the "cache" in MiniZinc
I'm trying to optimize a modele (in terms of the time it takes to solve). The modele returns the right answer, but MiniZinc takes too much time to find the solution. My probleme is that, when I try to solve the modele the first time, minizinc takes its time. But when I solve the modele a second time, minizinc finds the solution almost instantly. So I can't tell if the modifications I introduced in the modele were able to accelerate the solving. Is there a way to tell Minizinc to "forget" the solutions he found earlier.
Thank you.
constraint-programming - Minizinc 中的 ReifiedConstraint
我有一个任务列表,它们之间存在一些相互依赖关系。9个任务。每个 cpu 组 6 个 cpu 2。有三个组 p1,p2,p3。
给出了不同cpu上不同任务的执行时间。我们必须在任务之间传输数据数据。我们将使用点对点链接。我们需要在两个 cpu 之间购买一个点对点链接,这将花费我们 1。我们以后可以重用这些链接。
问题:我想指定这些约束。
r1!=r4 <=> b14=1; b14
是任务 1 和 4 之间通信的通信时间。我还需要对链接进行成本。r1:CPU任务一分配给。
谁能告诉我如何在 Minizinc 中指定这两个约束?我不想使用 if then 约束,如果我可以使用 reified 一切会更好。
network-programming - 运动计划 Minizinc
我们计划举办一场由 8 支球队组成的锦标赛,每支球队都与其他球队比赛一次。比赛为期 7 天,每支球队每天比赛。比赛安排在7个场馆,每支球队在每个场馆都必须打一场。作为电视安排的一部分,我们已经完成了一些预先安排:我们可以将两支特定球队之间的比赛固定在一个固定的日期和场地,或者只规定某些球队必须在特定的一天在给定场地进行比赛。目标是完成进度表,以便满足所有约束条件。
我需要帮助才能在 minizinc 中解决这个问题。谢谢
constraint-programming - 约束编程布尔求解器
休伊、杜威和路易正在接受他们叔叔的盘问。这些是他们所做的声明:
• 休伊:“杜威和路易在其中占有同等份额;如果一个人有罪,那么另一个人也有罪。”</p>
• 杜威:“如果休伊有罪,那我也是。”</p>
• Louie:“杜威和我都没有罪。”</p>
他们的叔叔知道他们是童子军,意识到他们不能说谎。
我的解决方案。
Minizinc 解决不了。
constraint-programming - 将 Boolean FlatZinc 转换为 CNF DIMACS
为了求解一组布尔方程,我正在使用以下输入对Constraint-Programming Solver
MiniZinc进行试验:
MiniZinc确实找到了小参数的解决方案(rows=cols=2, products=7)
,但并没有随着略微增加的参数而结束。我想将生成的FlatZinc模型输入到SAT 求解器中,例如Cryptominisat、Lingeling或Clasp。我希望这些工具的性能可能优于现有的 MiniZinc 后端。
我的问题:
是否有任何工具可以将纯 Boolean FlatZinc模型转换为CNF (DIMACS)?由于某些 MiniZinc 后端似乎不支持它,
我能做些什么来替换谓词?xorall()
constraints - minizinc 中的幂(pow)约束
有什么方法(直接或间接)可以在 minizinc 中支持 pow 约束。Gecode 支持带有 float 和 int 变量的pow 约束,但是 Minizinc 和 FlatZinc 不支持变量的 pow。Minizinc 和 Flatzinc 仅支持模型参数的 pow。任何有关在 MiniZinc 中向 Flatzinc (mzn2fzn) 解析器添加支持以执行此操作的位置的指针。
我想要一个约束,例如 - " pow( 4, x ) == y " ,即 4^x == y 。
constraint-programming - Minizinc:可变顺序
约束模型可能具有限制或向约束求解器提供提示,以通过定义求解变量的顺序来更有效地解决问题。是否有一种机制来指定在 MiniZinc 或 FlatZinc 中需要解决变量的顺序?
constraint-programming - minizinc 语法指定值选择的随机分布
minizinc 是否有任何语法来指定变量的值选择分布。例如。
我想指定 X 在 0..50 90% 的时间内取值,在 51..100 10% 的时间内取值。语法
指定 X 可能以相同的概率获得 0..100 中的任何值。