【问题标题】:How to save opl.postProcess(); output to an 2D array in Java如何保存 opl.postProcess();输出到Java中的二维数组
【发布时间】:2020-05-02 04:22:20
【问题描述】:

我正在使用来自 ILOG CPLEX Studio 的 CP Optimizer 来运行优化问题。具体来说,我正在使用 Eclipse IDE 在 Java 中运行 OPL 代码。我的代码正在运行,例如,我得到以下输出:

其中“适应度”是目标函数的值,接下来的 100 个数字是该问题的可行解决方案。我想将红色框中的数字保存在整数的二维数组(维度为 10 行 x 10 列)中,以用于通过本地搜索方法继续搜索。当我在我的 Java 代码中调用:opl.postProcess(); 时会显示解决方案。这是我的代码的摘录:

            if (cp.solve()) {
            System.out.println("Fitness: " + opl.getCP().getObjValue());
            opl.postProcess();
            }

是否有另一种方法可以将该信息保存在二维整数数组中?

【问题讨论】:

    标签: java arrays cplex ilog cp-optimizer


    【解决方案1】:

    您可以查看示例 CPLEX_Studio1210\opl\examples\opl_interfaces\java\iterators\src\iterators,该示例向您展示了如何在 java 中取回 OPL 中的值。

    另一种方法是通过文件并在 postProcess 中使用 IloOplOutputFile 以便将数组保存在文本文件或 csv 文件中

    【讨论】:

      猜你喜欢
      • 2023-03-10
      • 1970-01-01
      • 2017-04-01
      • 2017-02-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多