Commons Math
  1. Commons Math
  2. MATH-1107

CMAESOptimizer fails sometimes when bounds are violated

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 3.3
    • Labels:
      None

      Description

      The CMAESOptimizer repairs points that are out of bounds by moving them into bounds, and adding a penalty based on how far they were moved.

      The penalty added is scaled by the range of values in the current population.

      The calculation of the valueRange, however, includes the penalty so at each iteration the amount of penalty can grow multiplicatively. One solution, is to keep the value and penalties separate before calculating the scale factor for the penalties. A patch that does this will be attached.

      1. cmaes_penalty.patch
        6 kB
        Bruce A Johnson

        Activity

        Bruce A Johnson created issue -
        Bruce A Johnson made changes -
        Field Original Value New Value
        Attachment cmaes_patch.txt [ 12632074 ]
        Bruce A Johnson made changes -
        Attachment cmaes_patch.txt [ 12632074 ]
        Bruce A Johnson made changes -
        Attachment cmaes_penalty.patch [ 12632075 ]
        Luc Maisonobe made changes -
        Status Open [ 1 ] Resolved [ 5 ]
        Resolution Fixed [ 1 ]
        Luc Maisonobe made changes -
        Status Resolved [ 5 ] Closed [ 6 ]

          People

          • Assignee:
            Unassigned
            Reporter:
            Bruce A Johnson
          • Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development