在OptaPlanner 6.1.0中加载真实的XML问题

时间:2014-09-03 04:59:54

标签: java drools optaplanner

我一直在研究OptaPlanner框架,并且发现CloudBalancingHelloWorld示例适合我的任务相当好的问题 - 只是它加载了一个假的生成问题集并且我喜欢创建我自己的XML文件并加载它...但文档似乎有点稀疏,我没有看到任何例子。

CloudBalancingHellowWorld.java中的现有代码是:

// Load a problem with 400 computers and 1200 processes
// This gets replaced with a class that loads a *real* problem - from a DB for example.
CloudBalance unsolvedCloudBalance = new CloudBalancingGenerator().createCloudBalance(400, 1200);

我希望能够以编程方式加载XML问题描述。是否有任何关于这样做的例子或者文档要被仔细阅读以获得一些灵感?

1 个答案:

答案 0 :(得分:1)

从XML到XML的整个数据集序列化是optaplanner示例的一部分:OptaPlanner本身不提供或要求任何序列化格式。话虽如此,optaplanner-examples包括以下序列化格式:

  • data目录unsolvedsolved中的每个示例:XStream XML格式。格式由域类上的XStream注释(@XStreamAlias等)定义。在某些情况下,XML格式过于冗长,导致OutOfMemoryError,例如对于大MachineReassignment B数据集。
  • 大多数示例:data目录import目录export和{{1}}中的竞争特定TXT格式。格式由竞赛定义(参见文档)。在示例GUI中,单击“导入”按钮加载它们。