Skip to content

Better Ending Conditions #9

@pointan

Description

@pointan

CMAES actually has a slurry of fine stopping conditions: https://github.com/CMA-ES/c-cmaes/blob/master/src/cmaes.c which we should start thinking about.

  • Create a StopCondition OPERATOR that can be used by our Algorithms
  • Make our current algorithms use the StopCondition instead of their current default impls (usually just amount of iterations), and always set a good default.
  • Implement at least the following stopping conditions:
    • Enough Iterations reached
    • Enough EVALUATIONS done
    • Fitness is good enough (value defined by user, default I suggest something like 1.0E-15)
  • Some implementations may be specific to an alg:
    • When the Fitness Value doesn't change anymore (See performConsistencyUpdate in CMAES)
    • When the Standard-Deviation has no effect anymore (see original CMAES) (NoEffectAxis: standard deviation 0.1*%7.2e in principal axis %d without effect)

Metadata

Metadata

Assignees

No one assigned

    Labels

    confirmedRequest was accepted and will be worked on

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions