gpt4 book ai didi

minizinc - minizinc下的多重输出

转载 作者:行者123 更新时间:2023-12-03 06:35:05 26 4
gpt4 key购买 nike

尝试学习 minizinc,但在完成示例之后,我是否可以确认,如果我想获得多个输出,或者有一种更“自然的 minizinc”方式来获得它,我实际上必须编写一些程序语言。

例如,假设我想让所有不同的数字加起来为 3,答案应该是 0+3 1+2 2+1 3+0 ...

我的迷你锌在这里:

% how to generate more than one result meeting the constraints

int: n=3;

var 0..9: a;
var 0..9: b;

include "alldifferent.mzn";
constraint all_different([a, b]);
constraint a + b = n;

solve satisfy;

output [
"a + b = n \t\n",
show(a), " + ",
show(b), " = ",
show(n)];

只产生3+0。如何获得其他答案?感谢您提前提供任何建议。

我查看了 minizinc 1.6 的帖子,似乎说省略输出语句将产生所有输出( Easy way to print full solution (all decision variables) in minizinc )。这是行不通的。仅输出一个。

最佳答案

首先,默认情况下是打印解决方案的所有变量及其值,而不是所有解决方案。

使用选项-a获取所有解决方案。 mzn-gecode --help 查看所有选项。在您的情况下 mzn-gecode -a test.mzn 给出:

a + b = n   
3 + 0 = 3
----------
a + b = n
0 + 3 = 3
----------
a + b = n
2 + 1 = 3
----------
a + b = n
1 + 2 = 3
----------
==========

关于minizinc - minizinc下的多重输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36230950/

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