burlap tochasticGames SCPSolver does not work with Java 64-bit under Windows x64

burlap tochasticGames SCPSolver does not work with Java 64-bit under Windows x64

https://github.com/jmacglashan/burlap/issues/134
In the burlap_examples Repository, the GridGameExample does not work with a 64-bit Java Runtime Environment under Windows x64.

You get the following error:

Exception in thread "main" java.lang.NullPointerException
at burlap.behavior.stochasticgames.solvers.MinMaxSolver.getColPlayersStrategy(MinMaxSolver.java:60)
at burlap.behavior.stochasticgames.solvers.MinMaxSolver.getRowPlayersStrategy(MinMaxSolver.java:25)
at burlap.behavior.stochasticgames.madynamicprogramming.backupOperators.CoCoQ.performBackup(CoCoQ.java:63)
at burlap.behavior.stochasticgames.madynamicprogramming.MADynamicProgramming.backupAllValueFunctions(MADynamicProgramming.java:193)
at burlap.behavior.stochasticgames.madynamicprogramming.dpplanners.MAValueIteration.runVI(MAValueIteration.java:183)
at burlap.behavior.stochasticgames.madynamicprogramming.dpplanners.MAValueIteration.planFromState(MAValueIteration.java:158)
at burlap.behavior.stochasticgames.agents.madp.MultiAgentDPPlanningAgent.action(MultiAgentDPPlanningAgent.java:102)
at burlap.mdp.stochasticgames.world.World.runStage(World.java:417)
at burlap.mdp.stochasticgames.world.World.runGame(World.java:338)
at burlap.mdp.stochasticgames.world.World.runGame(World.java:306)
at burlap.mdp.stochasticgames.world.World.runGame(World.java:296)
at edu.brown.cs.burlap.examples.GridGameExample.VICoCoTest(GridGameExample.java:80)
at edu.brown.cs.burlap.examples.GridGameExample.main(GridGameExample.java:233)
This error comes up in all tests (in similar form) except in the SingleAgentInterface-Variant, so you get this error when calling VICoCoTest(), VICorrelatedTest() and QLCoCoTest() but not in saInterface() which does not use the SCPSolver-Library as far as I know.

The real problem sits inside the SCPSolver library. It does not work on a 64-bit JRE under Windows x64 as it is explained on the website. It only would work with a 32-bit JRE under Windows x64, but as this one is limited to 2 GB RAM usage, it is not very useful anymore when working with learning algorithms.

So what needs to be done is to recompile the SCPSolver-library and package a new version with burlap that adds support for 64-bit JRE under Windows x64. The SCPSolver website also explains how to build the library.

发表评论

电子邮件地址不会被公开。 必填项已用*标注