[jboss-svn-commits] JBL Code SVN: r22365 - in labs/jbossrules/branches/uncDrools5x/Fuzzy Test/src/fuzzy: domains and 1 other directory.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Wed Sep 3 21:56:53 EDT 2008
Author: dsotty
Date: 2008-09-03 21:56:53 -0400 (Wed, 03 Sep 2008)
New Revision: 22365
Modified:
labs/jbossrules/branches/uncDrools5x/Fuzzy Test/src/fuzzy/FuzzyTest.java
labs/jbossrules/branches/uncDrools5x/Fuzzy Test/src/fuzzy/domains/DomainPartition.java
labs/jbossrules/branches/uncDrools5x/Fuzzy Test/src/fuzzy/fuzzy.drl
Log:
New branch for uncertainty support in 5.x
Modified: labs/jbossrules/branches/uncDrools5x/Fuzzy Test/src/fuzzy/FuzzyTest.java
===================================================================
--- labs/jbossrules/branches/uncDrools5x/Fuzzy Test/src/fuzzy/FuzzyTest.java 2008-09-04 01:06:44 UTC (rev 22364)
+++ labs/jbossrules/branches/uncDrools5x/Fuzzy Test/src/fuzzy/FuzzyTest.java 2008-09-04 01:56:53 UTC (rev 22365)
@@ -27,6 +27,8 @@
import org.drools.rule.Package;
import data.Act;
+import data.Act2;
+import data.Fan;
import data.Oven;
import data.Room;
import evaluators.membership.TriangleMembership;
@@ -149,17 +151,25 @@
Oven oven = new Oven();
oven.setTemperature(180.0);
+ Fan fan = new Fan();
+
session.fireAllRules();
+
+ session.insertLogical(fan,null);
session.insert(room,null);
session.insert(oven,null);
+
session.fireAllRules();
- session.insert(new Act(), null);
- session.fireAllRules();
+// session.insert(new Act(), null);
+// session.fireAllRules();
+// session.insert(new Act2(), null);
+// session.fireAllRules();
+
}
Modified: labs/jbossrules/branches/uncDrools5x/Fuzzy Test/src/fuzzy/domains/DomainPartition.java
===================================================================
--- labs/jbossrules/branches/uncDrools5x/Fuzzy Test/src/fuzzy/domains/DomainPartition.java 2008-09-04 01:06:44 UTC (rev 22364)
+++ labs/jbossrules/branches/uncDrools5x/Fuzzy Test/src/fuzzy/domains/DomainPartition.java 2008-09-04 01:56:53 UTC (rev 22365)
@@ -48,7 +48,7 @@
public Evaluator addEvaluator(Class clazz, ValueType type, String operatorId,
boolean isNegated, String parameterText) {
- System.out.println("Called addEvaluator " + operatorId + " : " + parameterText + ";");
+ //System.out.println("Called addEvaluator " + operatorId + " : " + parameterText + ";");
if ( this.cache == Collections.EMPTY_MAP ) {
@@ -83,7 +83,7 @@
public Evaluator getEvaluator(String className, ValueType type, String operatorId,
boolean isNegated, String parameterText) {
- System.out.println("Called getEvaluator " + operatorId + " : " + parameterText + ";");
+ //System.out.println("Called getEvaluator " + operatorId + " : " + parameterText + ";");
if ( this.cache == Collections.EMPTY_MAP ) {
this.cache = new HashMap<String, Evaluator>();
Modified: labs/jbossrules/branches/uncDrools5x/Fuzzy Test/src/fuzzy/fuzzy.drl
===================================================================
--- labs/jbossrules/branches/uncDrools5x/Fuzzy Test/src/fuzzy/fuzzy.drl 2008-09-04 01:06:44 UTC (rev 22364)
+++ labs/jbossrules/branches/uncDrools5x/Fuzzy Test/src/fuzzy/fuzzy.drl 2008-09-04 01:56:53 UTC (rev 22365)
@@ -12,6 +12,7 @@
import data.Room;
import data.Fan;
import data.Act;
+import data.Act2;
import data.Oven;
import fuzzy.domains.*;
@@ -33,10 +34,6 @@
System.out.println("Define concepts. Is this the right place?? ");
- // The point is:
- // XDomain defines the partition.
- // Should I allow the user to define a partition dynamically?
-
Room.setFieldEvaluator("temperature",
fuzzy.domains.TemperatureDomain.coldOp.getOperatorString(),
@@ -129,6 +126,7 @@
rule "Dynamic Heat"
+ enabled false
when
$r : Room( temperature `seems[] "scorching" )
//Notice that TemperatureDomain does not have 'scorching'
@@ -142,6 +140,7 @@
rule "DoubleHot"
+ enabled false
when
$r : Room( temperature `seems[] hot )
$o : Oven( temperature `seems[] hot )
@@ -153,6 +152,7 @@
rule "Hot_generic"
+ enabled false
when
$r : Room( temperature `hot[evaluators.membership.TriangleMembership, 20, 10] 1)
then
@@ -163,67 +163,79 @@
+
+
+
+
rule "Hot"
+ no-loop
+
when
+ $f : Fan()
$r: Room( temperature `seems[] hot ,
humidity `seems[] medium )
then
- System.out.println("Room is hot at degree " + drools.getActivationDegree());
+ //System.out.println("Room is hot at degree " + drools.getActivationDegree());
- Hashtable<ConstraintSignature,IUncertainDegree> priors = new Hashtable<ConstraintSignature, IUncertainDegree>();
- priors.put(new ConstraintSignature("speed","seems","fast"), drools.getActivationDegree());
-
- insertLogical(new Fan(),priors);
+ ConstraintSignature sig = new ConstraintSignature("speed","seems","fast");
+ insertLogical($f, sig, drools.getActivationDegree());
+ $f.setSpeedInfo("fast",drools.getInfo($f,sig ));
end
-/*
+
rule "Cold"
- when
+ no-loop
+
+ when
+ $f : Fan()
$r: Room(
temperature `seems[] cold ,
humidity `seems[] low
)
then
- System.out.println("Room is cold at degree " + drools.getActivationDegree());
+ //System.out.println("Room is cold at degree " + drools.getActivationDegree());
- Hashtable<ConstraintSignature,IUncertainDegree> priors = new Hashtable<ConstraintSignature, IUncertainDegree>();
- priors.put(new ConstraintSignature("speed","seems","stop"), drools.getActivationDegree());
-
- insertLogical(new Fan(),priors);
-
+ ConstraintSignature sig = new ConstraintSignature("speed","seems","stop");
+ insertLogical($f, sig, drools.getActivationDegree());
+ $f.setSpeedInfo("stop",drools.getInfo($f,sig ));
+
+
end
rule "Cool"
+ no-loop
+
when
+ $f : Fan()
$r: Room( temperature `seems[] cool ,
humidity `seems[] medium )
then
- System.out.println("Room is cool at degree " + drools.getActivationDegree());
+ //System.out.println("Room is cool at degree " + drools.getActivationDegree());
- Hashtable<ConstraintSignature,IUncertainDegree> priors = new Hashtable<ConstraintSignature, IUncertainDegree>();
- priors.put(new ConstraintSignature("speed","seems","stop"), drools.getActivationDegree());
-
- insertLogical(new Fan(),priors);
-
+ ConstraintSignature sig = new ConstraintSignature("speed","seems","stop");
+ insertLogical($f,sig,drools.getActivationDegree());
+ $f.setSpeedInfo("stop",drools.getInfo($f, sig ));
end
rule "Warm"
+ no-loop
+
when
+ $f : Fan()
$r: Room( temperature `seems[] warm ,
humidity `seems[] medium )
then
- System.out.println("Room is warm at degree " + drools.getActivationDegree());
+ //System.out.println("Room is warm at degree " + drools.getActivationDegree());
+
+ ConstraintSignature sig = new ConstraintSignature("speed","seems","slow");
+ insertLogical($f,sig,drools.getActivationDegree());
+ $f.setSpeedInfo("slow",drools.getInfo($f, sig ));
- Hashtable<ConstraintSignature,IUncertainDegree> priors = new Hashtable<ConstraintSignature, IUncertainDegree>();
- priors.put(new ConstraintSignature("speed","seems","slow"), drools.getActivationDegree());
-
- insertLogical(new Fan(),priors);
-
end
@@ -231,16 +243,17 @@
rule "Hotter"
+ no-loop
when
+ $f : Fan()
$r: Room( temperature `seems[] hot ,
humidity `seems[] high )
then
- System.out.println("Room is hotter at degree " + drools.getActivationDegree());
-
- Hashtable<ConstraintSignature,IUncertainDegree> priors = new Hashtable<ConstraintSignature, IUncertainDegree>();
- priors.put(new ConstraintSignature("speed","seems","fast"), drools.getActivationDegree());
+ //System.out.println("Room is hotter at degree " + drools.getActivationDegree());
- insertLogical(new Fan(),priors);
+ ConstraintSignature sig = new ConstraintSignature("speed","seems","fast");
+ insertLogical($f,sig,drools.getActivationDegree());
+ $f.setSpeedInfo("fast",drools.getInfo($f, sig ));
end
@@ -249,31 +262,41 @@
rule "Fan Stop"
+ enabled false
when
+
$f : Fan( speed `seems[] stop)
then
- System.out.println("Stop fan" + drools.getActivationDegree());
- $f.setSpeedInfo("stop",drools.getActivationDegree());
+
+ //System.out.println("Stop fan S " + drools.getInfo($f,new ConstraintSignature("speed","seems","stop") ));
+ $f.setSpeedInfo("stop",drools.getInfo($f,new ConstraintSignature("speed","seems","stop") ));
+
end
rule "Fan Slow"
+ enabled false
when
+
$f : Fan( speed `seems[] slow)
then
- System.out.println("Slow fan" + drools.getActivationDegree());
- $f.setSpeedInfo("slow",drools.getActivationDegree());
+
+ //System.out.println("Slow fan S " + drools.getInfo($f,new ConstraintSignature("speed","seems","slow") ));
+ $f.setSpeedInfo("slow",drools.getInfo($f,new ConstraintSignature("speed","seems","slow") ));
end
-
+//
rule "Fan Fast"
+ enabled false
when
+
$f : Fan( speed `seems[] fast)
then
- System.out.println("Fast fan" + drools.getActivationDegree());
- $f.setSpeedInfo("fast",drools.getActivationDegree());
+
+ //System.out.println("Fast fan S " + drools.getInfo($f,new ConstraintSignature("speed","seems","fast") ));
+ $f.setSpeedInfo("fast",drools.getInfo($f,new ConstraintSignature("speed","seems","fast") ));
end
@@ -281,9 +304,8 @@
rule "Act"
- when
+ when
$f : Fan()
then
System.out.println("Fan activated at speed " + $f.getSpeed());
end
-*/
\ No newline at end of file
More information about the jboss-svn-commits
mailing list