问题标签 [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.

0 投票
1 回答
220 浏览

constraint-programming - 带有可选变量的搜索策略

我在 Minizinc 中实现了一个简单的模型,以在一系列时隙中安排具有不同优先级和持续时间的任务,但并非所有任务都可以安排,因此有些任务将被忽略,我试图最大化优先级的总和计划的任务。

我有一个工作版本,其中任务在变量数组中定义,非计划任务的时间为 0。约束有几个 where 子句仅考虑计划任务(when[i]>0)。默认搜索策略非常慢,因此我将其更改为另一个效果更好的策略,使用 Gecode 作为求解器。

现在我正在使用可选变量实现一个不同的版本,以摆脱 where 子句,检查是否有任何改进。但是,使用 opt var 时,我似乎无法定义搜索策略 int_search()。

有什么办法吗?

工作模型如下(注释掉我想尝试的搜索策略的solve子句):

0 投票
1 回答
637 浏览

graph - 使用 MiniZinc 检查是否存在连接图中两个顶点的路径

我正在尝试进行约束以检查图中是否存在从顶点A到顶点B的路径。我已经创建了一个返回路径本身的约束,但我还需要一个返回布尔值的函数,指示路径是否存在。

我已经花了很多时间,但我的尝试都没有成功......

有谁知道我能做什么?

这是我创建的返回路径本身的函数,其中graph是邻接矩阵,sourcetarget是顶点AB

在这里,我尝试调整上面的代码之一:

我正在使用以下模型测试约束:

在这里,一些示例数据:

谢谢!

0 投票
1 回答
226 浏览

modeling - Minizinc 数据文件中具有默认值的大型数组?

如何为大型数组建模,例如“array[1..10000000] of int: A;” 它有很多 0 作为默认值。有没有办法为 MiniZinc 指定“默认”值以减少数据文件的大小?

0 投票
1 回答
130 浏览

algorithm - Minizinc 如何用于解决加权约束满足问题_?

给定一个加权约束满足问题 (X, C, k),其中X是一组变量,C是一组软约束,并且k > 0是整数或无穷大;如何将其翻译成 minizinc 源文件?

中的每个约束C都是一个函数,从一组变量的子集中分配X到成本c <= k

我认为这些问题(或其中有用的子集)应该能够被翻译成 minizinc 源代码,但我缺乏 minizinc 的经验知道如何。

0 投票
1 回答
309 浏览

minizinc - 在 MiniZinc 中用一条语句声明多个变量

在编写 MiniZinc 模型时,我经常像这样声明多个变量:

我试图在一行上声明所有这些变量,但它产生了一个语法错误:

是否可以仅使用一条语句以更简洁的方式声明所有这些变量?

0 投票
1 回答
1005 浏览

minizinc - minizinc:在数组中查找元素

我有两个不同长度的数组(类型:int)。我怎样才能在数组 b 中为数组 a 中的每个数字找到最接近的数字(以下不起作用,尽管可能是因为语法错误):

0 投票
1 回答
929 浏览

java - 从 Java 调用 Minizinc 模型

如何使用数组作为传递参数从 Java 程序调用 Minizinc 模型?有什么特殊的命令可以做到这一点吗?

0 投票
3 回答
1793 浏览

sorting - Minizinc 数组排序

假设我有一个看起来像这样的数组声明

有没有办法启动一个看起来与 temp 相同但没有 0 的新数组?结果如下所示

或以这样的方式对数组进行排序,使 0 位于数组的开头或结尾,这将是

或者

谢谢

0 投票
1 回答
840 浏览

constraint-programming - 带有时间窗 minizinc 的车辆路径示例

我想用minizinc 建模语言用时间窗( http://oai.cwi.nl/oai/asset/2036/2036A.pdf )表达车辆路线问题,以便使用约束编程来解决它。

由于我对这种建模语言和整体约束编程不熟悉,我想知道是否有人已经用这种语言表达了这个问题。我找到了以下示例基准测试“vrp(没有时间窗口)https://github.com/MiniZinc/minizinc-benchmarks/blob/master/vrp/vrp.mzn

如何修改模型以包含交货时间窗口?

0 投票
1 回答
136 浏览

minizinc - 用大字符串数据求解 minizinc 约束

我正在与 Minizinc 一起做一个高中日程安排项目。我有一个字符串类型的教师、班级、房间、时间和事件的列表和一个整数类型的持续时间列表。我在 stackoverflow 上发现我需要用数字表示这些数据,但我的数据很大。如果不手动转换它们中的每一个,我该如何解决这个问题?谢谢