GMUEClab / ecj

ECJ Evolutionary Computation Toolkit
http://cs.gmu.edu/~eclab/projects/ecj/
123 stars 42 forks source link

Multiple tests failure due to system localization #63

Open remz1337 opened 4 years ago

remz1337 commented 4 years ago

Multiple tests are failing when the default symbol for decimals is not .

Issue happened on my Windows machine, having my localization set as French (Canada) where the decimal symbol is ,. Simply switching my localization to English (US) solved the issue, but I think it should atleast be documented somewhere.

Thanks

SigmaX commented 4 years ago

Hi Rémi—thanks for reporting this. Do you recall an example of one of the failing tests, so we can look back at it and understand what's causing it? Perhaps a .params file that specifies a double parameter with decimals?

remz1337 commented 4 years ago

Here are some examples of the failing test: ProportionateComponentSelector:java.lang.NullPointerException at ec.app.knapsack.KnapsackProblem.setup(KnapsackProblem.java:57) at ec.co.ant.ProportionateComponentSelectorTest.setUp(ProportionateComponentSelectorTest.java:58)

AppTest (moosuite\qv.params): java.lang.NullPointerException at ec.multiobjective.MultiObjectiveFitness.paretoDominates(MultiObjectiveFitness.java:365) at ec.multiobjective.HypervolumeStatistics.exclusiveHypervolume(HypervolumeStatistics.java:120) at ec.multiobjective.HypervolumeStatistics.hypervolume(HypervolumeStatistics.java:95) at ec.multiobjective.MultiObjectiveStatistics.postEvaluationStatistics(MultiObjectiveStatistics.java:133)