• Robert Ricci's avatar
    Change the termination conditions in subtle, but important, way. When using · c91cc414
    Robert Ricci authored
    epsilon termination (and ALLOW_NEGATIVE_EPSILON), it used to be the case that
    we wrapped the termination condition in a fabs(), and compared that to epsilon.
    The termination condition is basically a measure of how 'stable' of a score
    we're at. What this meant was that we used to keep going until we reached a
    space where the solution was going neither up nor down too much. All this is
    relative to the difference between initial socre and the best score - so, if
    those are close (ie. it's an easy problem), we could end up thrashing a whole
    lot. With the new behavior, if we ever hit a spot in which solutions start
    getting worse, we'll stop.
    Also, fix the GNUPLOT_OUTPUT code, which I used to debut this.
anneal.cc 32.8 KB