Ticket #102 (closed defect: fixed)
initial population is not used in DESolver
Reported by: | mmckerns | Owned by: | mmckerns |
---|---|---|---|
Priority: | major | Milestone: | mystic-0.2a1 |
Component: | mystic.solvers | Keywords: | |
Cc: |
Description
initial population is not used in DESolver
Lisa Mauger reports:
The initial population created by SetInitialPoints() are never processed through the cost function. And the solver.bestSolution starts at [0, 0, 0, ....]. This bestSolution is used immediately by the calls to strategy to build new trialSolutions to improve upon the "current population" - except that this population was never scored through the cost function. This create 2 problems: 1. You throw away the initial population without even looking at the scores 2. Best solution is [0, 0, 0, ....] for the first several calls to strategy() I got around this by calling solver.bestSolution = fcs before I start sovler.solve(). This fixes #2 but not #1. A change in the optimizer code to push the initialPopulation through the costfunction and look for the lowest energy in that set (before starting the generations loop) would fix both these problems.
Change History
Note: See
TracTickets for help on using
tickets.
fixed in r219