Wrong sign of transformed fitness with maximization in GD

Bug #1399714 reported by ariel
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Geneva Optimization
Fix Released
Medium
Ruediger Berlich

Bug Description

User reports:

We use "Mont Blanc" - Geneva 1.2.
If maximization is used, GD-Algorithm returns wrong sign of transformed fitness (plus sign).
(currentFitnessVec_ has allready right sign, but it is reversed after GOptimizableEntity::fitness() call. It is correct, so cached fitness is probably wrong ).

Raw-fitness is correct.

USESIGMOID is activated.

Line 436-437

Bug in GBaseGD.cpp, version 1.2, line 436

Changed in geneva:
importance: Undecided → Medium
status: New → Incomplete
status: Incomplete → Confirmed
Revision history for this message
Ruediger Berlich (rberlich) wrote :

E.g. in example 01_GSimpleOptimizer I see (after choosing maximization and the USESIGMOID-policy for the individual):

$ ./GSimpleOptimizer -a gd
Starting an optimization run with algorithm "Gradient Descent"
0: (-100 -909.09) // best past: (100 909.09)
[...]

I believe that this is a cosmetic issue -- Geneva internally "translates" maximization into minimization by changing the sign of the "real" fitness. Current fitness and cached fitness are apparently not treated alike. Will investigate.

ariel (garcia)
Changed in geneva:
milestone: none → 1.4.1
Changed in geneva:
status: Confirmed → In Progress
Changed in geneva:
status: In Progress → Fix Committed
ariel (garcia)
Changed in geneva:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.