[jboss-svn-commits] JBL Code SVN: r17433 - in labs/jbossrules/trunk/drools-solver: drools-solver-examples/src/main/resources/org/drools/solver/examples/itc2007/examination/solver and 1 other directory.

jboss-svn-commits at lists.jboss.org jboss-svn-commits at lists.jboss.org
Sat Dec 29 11:30:28 EST 2007


Author: ge0ffrey
Date: 2007-12-29 11:30:28 -0500 (Sat, 29 Dec 2007)
New Revision: 17433

Modified:
   labs/jbossrules/trunk/drools-solver/drools-solver-core/src/main/java/org/drools/solver/core/localsearch/DefaultLocalSearchSolver.java
   labs/jbossrules/trunk/drools-solver/drools-solver-examples/src/main/resources/org/drools/solver/examples/itc2007/examination/solver/examinationScoreRules.drl
   labs/jbossrules/trunk/drools-solver/drools-solver-examples/src/main/resources/org/drools/solver/examples/itc2007/examination/solver/examinationSolverConfig.xml
Log:
sum weights

Modified: labs/jbossrules/trunk/drools-solver/drools-solver-core/src/main/java/org/drools/solver/core/localsearch/DefaultLocalSearchSolver.java
===================================================================
--- labs/jbossrules/trunk/drools-solver/drools-solver-core/src/main/java/org/drools/solver/core/localsearch/DefaultLocalSearchSolver.java	2007-12-29 10:46:05 UTC (rev 17432)
+++ labs/jbossrules/trunk/drools-solver/drools-solver-core/src/main/java/org/drools/solver/core/localsearch/DefaultLocalSearchSolver.java	2007-12-29 16:30:28 UTC (rev 17433)
@@ -156,6 +156,8 @@
         bestSolutionRecaller.solvingEnded();
         finish.solvingEnded();
         decider.solvingEnded();
+        // TODO remove this line because it takes to long and is not always usefull
+        // TODO seperate the GUI's evaluation handler from the solver's evaluation handler
         evaluationHandler.setSolution(bestSolutionRecaller.getBestSolution());
         logger.info("Solved in {} steps and {} time millis spend.", stepIndex, getTimeMillisSpend());
     }

Modified: labs/jbossrules/trunk/drools-solver/drools-solver-examples/src/main/resources/org/drools/solver/examples/itc2007/examination/solver/examinationScoreRules.drl
===================================================================
--- labs/jbossrules/trunk/drools-solver/drools-solver-examples/src/main/resources/org/drools/solver/examples/itc2007/examination/solver/examinationScoreRules.drl	2007-12-29 10:46:05 UTC (rev 17432)
+++ labs/jbossrules/trunk/drools-solver/drools-solver-examples/src/main/resources/org/drools/solver/examples/itc2007/examination/solver/examinationScoreRules.drl	2007-12-29 16:30:28 UTC (rev 17433)
@@ -143,15 +143,16 @@
             $roomHardConstraint));
 end
 
+// Accumulate hard constraints
 rule "hardConstraintsBroken"
         salience -1 // Finish the other rules first (optional, for performance)
     when
-        $hardCount : Number() from accumulate(
-            $constraintOccurrence : IntConstraintOccurrence(constraintType == ConstraintType.NEGATIVE_HARD),
-            count($constraintOccurrence) // Vote for http://jira.jboss.com/jira/browse/JBRULES-1075
+        $hardTotal : Number() from accumulate(
+            IntConstraintOccurrence(constraintType == ConstraintType.NEGATIVE_HARD, $weight : weight),
+            sum($weight) // Vote for http://jira.jboss.com/jira/browse/JBRULES-1075
         );
     then
-        scoreCalculator.setHardConstraintsBroken($hardCount.intValue());
+        scoreCalculator.setHardConstraintsBroken($hardTotal.intValue());
 end
 
 // ############################################################################
@@ -172,3 +173,15 @@
 //Room Penalty
 //
 //Period Penalty 
+
+// Accumulate soft constraints
+rule "softConstraintsBroken"
+        salience -1 // Finish the other rules first (optional, for performance)
+    when
+        $softTotal : Number() from accumulate(
+            IntConstraintOccurrence(constraintType == ConstraintType.NEGATIVE_SOFT, $weight : weight),
+            count($weight) // Vote for http://jira.jboss.com/jira/browse/JBRULES-1075
+        );
+    then
+        scoreCalculator.setSoftConstraintsBroken($softTotal.intValue());
+end
\ No newline at end of file

Modified: labs/jbossrules/trunk/drools-solver/drools-solver-examples/src/main/resources/org/drools/solver/examples/itc2007/examination/solver/examinationSolverConfig.xml
===================================================================
--- labs/jbossrules/trunk/drools-solver/drools-solver-examples/src/main/resources/org/drools/solver/examples/itc2007/examination/solver/examinationSolverConfig.xml	2007-12-29 10:46:05 UTC (rev 17432)
+++ labs/jbossrules/trunk/drools-solver/drools-solver-examples/src/main/resources/org/drools/solver/examples/itc2007/examination/solver/examinationSolverConfig.xml	2007-12-29 16:30:28 UTC (rev 17433)
@@ -5,8 +5,8 @@
         <scoreCalculatorType>HARD_AND_SOFT_CONSTRAINTS</scoreCalculatorType>
     </scoreCalculator>
     <finish>
-        <maximumSecondsSpend>429</maximumSecondsSpend>
-        <!--<maximumStepCount>100</maximumStepCount>-->
+        <!--<maximumSecondsSpend>429</maximumSecondsSpend>-->
+        <maximumStepCount>100</maximumStepCount>
     </finish>
     <selector>
         <moveFactoryClass>org.drools.solver.examples.itc2007.examination.solver.ExaminationMoveFactory</moveFactoryClass>




More information about the jboss-svn-commits mailing list