[jboss-svn-commits] JBL Code SVN: r33806 - labs/jbossrules/trunk/drools-planner/drools-planner-core/src/main/java/org/drools/planner/core/localsearch/decider/acceptor/simulatedannealing.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Fri Jul 9 11:11:33 EDT 2010


Author: ge0ffrey
Date: 2010-07-09 11:11:33 -0400 (Fri, 09 Jul 2010)
New Revision: 33806

Modified:
   labs/jbossrules/trunk/drools-planner/drools-planner-core/src/main/java/org/drools/planner/core/localsearch/decider/acceptor/simulatedannealing/TimeGradientBasedSimulatedAnnealingAcceptor.java
Log:
fix TimeGradientBasedSimulatedAnnealingAcceptor

Modified: labs/jbossrules/trunk/drools-planner/drools-planner-core/src/main/java/org/drools/planner/core/localsearch/decider/acceptor/simulatedannealing/TimeGradientBasedSimulatedAnnealingAcceptor.java
===================================================================
--- labs/jbossrules/trunk/drools-planner/drools-planner-core/src/main/java/org/drools/planner/core/localsearch/decider/acceptor/simulatedannealing/TimeGradientBasedSimulatedAnnealingAcceptor.java	2010-07-09 14:55:59 UTC (rev 33805)
+++ labs/jbossrules/trunk/drools-planner/drools-planner-core/src/main/java/org/drools/planner/core/localsearch/decider/acceptor/simulatedannealing/TimeGradientBasedSimulatedAnnealingAcceptor.java	2010-07-09 15:11:33 UTC (rev 33806)
@@ -11,9 +11,10 @@
  */
 public class TimeGradientBasedSimulatedAnnealingAcceptor extends AbstractAcceptor {
 
-    protected double startingTemperature = -1.0;
+    protected double startingTemperature = 1.0;
 
     protected double temperature;
+    protected double temperatureMinimum = Double.MIN_NORMAL;
 
     public void setStartingTemperature(double startingTemperature) {
         this.startingTemperature = startingTemperature;
@@ -58,7 +59,10 @@
     public void stepTaken(StepScope stepScope) {
         super.stepTaken(stepScope);
         double timeGradient = stepScope.getTimeGradient();
-        temperature = startingTemperature * timeGradient;
+        temperature = startingTemperature * (1.0 - timeGradient);
+        if (temperature < temperatureMinimum) {
+            temperature = temperatureMinimum;
+        }
     }
 
 }



More information about the jboss-svn-commits mailing list