问题描述
我希望使用 minizinc 来解决优化问题。我通过 cell magic 在 Jupyter notebook 上使用它,如下所示。
对于下面的简单二次方程,当我单独使用 -a 标志时,我会根据需要在输出中获得 x 的所有可能解。
%load_ext iminizinc
a=1
b=4
c=0
%%minizinc -a
include "gecode.mzn";
var -100..100: x;
int: a; int: b; int: c;
constraint a*(x*x) + b*x = c;
solve satisfy;
[Out]: [{'x': -4},{'x': 0}]
但是,当我尝试将所有可能的解决方案绑定到一个 python 变量时,它只绑定了一个解决方案,而不是全部:
%%minizinc -a -m bind
include "gecode.mzn";
var -100..100: x;
int: a; int: b; int: c;
constraint a*(x*x) + b*x = c;
solve satisfy;
x
[Out]:0
同样,当我只使用 -m 绑定标志而不使用 -a 标志时,它也只将一个解绑定到变量:
%%minizinc -m bind
x
[Out]:-4
如果有办法将所有可能的解决方案绑定到 python 变量,请告诉我。 (我需要声明一个不同数据类型的变量吗?)
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)