我一直在研究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问题描述。是否有完成此操作的示例,或者可以细读Docs以获得一些启发?
最佳答案
从XML到XML的整个数据集序列化是optaplanner示例的一部分:OptaPlanner本身不提供或不需要任何序列化格式。话虽如此,optaplanner-examples包括以下序列化格式:
每个示例:data
目录unsolved
和solved
中的XStream XML格式。格式由域类上的XStream批注(@XStreamAlias
等)定义。在某些情况下,XML格式过于冗长,导致OutOfMemoryError
,例如对于大型MachineReassignment
B数据集。
大多数示例:data
目录import
和export
中特定于比赛的TXT格式。格式由比赛定义(请参阅文档)。在示例GUI中,单击“导入”按钮以加载它们。