是否有可能调用minizinc中定义的约束模型,作为来自C++程序的函数调用?我的环境是2017年(如果重要的话)。
发布于 2018-10-13 02:43:22
有两个选项可以使用来自MiniZinc项目的C++。可能最简单的方法是使用fork和execv。结合这两个命令,您可以使用您认为必要的任何标志和文件来运行minizinc可执行文件,但是这确实需要用户在系统路径($PATH)上安装和使用MiniZinc。
第二种方法是使用libminizinc作为C++库。MiniZinc编译器/驱动程序的源代码可以在这里找到:https://github.com/MiniZinc/libminizinc,并可用作库。然而,目前对这种行为的支持非常有限。在几个月内,MiniZinc团队打算向libminizinc发布一个make,这可能会使这个过程更加容易。同时,如果您选择使用这种方法,我建议您从main.cpp文件开始您的旅程,因为这可能会向您展示如何使用库。
请注意,即使采用第二种方法,FlatZinc求解器(如OR工具、Chuffed和available )也需要在系统路径上可用,以便在应用程序中可用。
https://stackoverflow.com/questions/52788530
复制相似问题