AureumChaos / LEAP

A general purpose Library for Evolutionary Algorithms in Python.
Academic Free License v3.0
83 stars 19 forks source link

Alter FitnessStatsCSVProbe to be internally similar to AttributesCSVProbe #262

Closed lukepmccombs closed 1 year ago

lukepmccombs commented 1 year ago

Fixes #261

Changes FitnessStatsCSVProbe to use csvwriter like AttributesCSVProbe. This makes it more resilient against weirder edge cases of the CSV file format that are already handled by the standard library.

Also changes the aggregation functions to be applied over axis 0. For normal fitnesses this behaves as before. For multiobjective fitnesses, this aggregates on a per-objective basis. While I can't imagine a use case, this should also work for multidimensional, multiobjective fitnesses.

lukepmccombs commented 1 year ago

This is potentially a breaking change for any parsers made off of the older format.