[jboss-svn-commits] JBL Code SVN: r22369 - in labs/jbossrules/branches/uncDrools5x/Essence/src/main/java/uncertainty: truthvals and 1 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Wed Sep 3 21:59:02 EDT 2008
Author: dsotty
Date: 2008-09-03 21:59:02 -0400 (Wed, 03 Sep 2008)
New Revision: 22369
Modified:
labs/jbossrules/branches/uncDrools5x/Essence/src/main/java/uncertainty/factory/EssenceDegreeFactory.java
labs/jbossrules/branches/uncDrools5x/Essence/src/main/java/uncertainty/factory/IDegreeFactory.java
labs/jbossrules/branches/uncDrools5x/Essence/src/main/java/uncertainty/factory/SimpleDegreeFactory.java
labs/jbossrules/branches/uncDrools5x/Essence/src/main/java/uncertainty/truthvals/Degree.java
labs/jbossrules/branches/uncDrools5x/Essence/src/main/java/uncertainty/truthvals/Essence.java
labs/jbossrules/branches/uncDrools5x/Essence/src/main/java/uncertainty/truthvals/operators/simple/SimpleAverage.java
Log:
New branch for uncertainty support in 5.x
Modified: labs/jbossrules/branches/uncDrools5x/Essence/src/main/java/uncertainty/factory/EssenceDegreeFactory.java
===================================================================
--- labs/jbossrules/branches/uncDrools5x/Essence/src/main/java/uncertainty/factory/EssenceDegreeFactory.java 2008-09-04 01:58:34 UTC (rev 22368)
+++ labs/jbossrules/branches/uncDrools5x/Essence/src/main/java/uncertainty/factory/EssenceDegreeFactory.java 2008-09-04 01:59:02 UTC (rev 22369)
@@ -8,6 +8,7 @@
import uncertainty.truthvals.operators.Lukas.LukasAnd;
import uncertainty.truthvals.operators.Lukas.LukasEquivModusPonensOp;
import uncertainty.truthvals.operators.Lukas.LukasModusPonensOp;
+import uncertainty.truthvals.operators.Lukas.LukasNeg;
import uncertainty.truthvals.operators.Lukas.LukasOr;
import uncertainty.truthvals.operators.Lukas.MaxOr;
import uncertainty.truthvals.operators.Lukas.MinAnd;
@@ -109,4 +110,9 @@
return new MinAnd();
}
+ @Override
+ public IUncDegCombiner getNegationOperator() {
+ return new LukasNeg();
+ }
+
}
Modified: labs/jbossrules/branches/uncDrools5x/Essence/src/main/java/uncertainty/factory/IDegreeFactory.java
===================================================================
--- labs/jbossrules/branches/uncDrools5x/Essence/src/main/java/uncertainty/factory/IDegreeFactory.java 2008-09-04 01:58:34 UTC (rev 22368)
+++ labs/jbossrules/branches/uncDrools5x/Essence/src/main/java/uncertainty/factory/IDegreeFactory.java 2008-09-04 01:59:02 UTC (rev 22369)
@@ -46,7 +46,7 @@
public IUncDegCombiner getInductionOperator();
-
+ public IUncDegCombiner getNegationOperator();
Modified: labs/jbossrules/branches/uncDrools5x/Essence/src/main/java/uncertainty/factory/SimpleDegreeFactory.java
===================================================================
--- labs/jbossrules/branches/uncDrools5x/Essence/src/main/java/uncertainty/factory/SimpleDegreeFactory.java 2008-09-04 01:58:34 UTC (rev 22368)
+++ labs/jbossrules/branches/uncDrools5x/Essence/src/main/java/uncertainty/factory/SimpleDegreeFactory.java 2008-09-04 01:59:02 UTC (rev 22369)
@@ -8,6 +8,7 @@
import uncertainty.truthvals.operators.simple.SimpleEquiv;
import uncertainty.truthvals.operators.simple.SimpleMaxOr;
import uncertainty.truthvals.operators.simple.SimpleMinAnd;
+import uncertainty.truthvals.operators.simple.SimpleNot;
public class SimpleDegreeFactory implements IDegreeFactory {
@@ -91,4 +92,9 @@
return new SimpleMinAnd();
}
+ @Override
+ public IUncDegCombiner getNegationOperator() {
+ return new SimpleNot();
+ }
+
}
Modified: labs/jbossrules/branches/uncDrools5x/Essence/src/main/java/uncertainty/truthvals/Degree.java
===================================================================
--- labs/jbossrules/branches/uncDrools5x/Essence/src/main/java/uncertainty/truthvals/Degree.java 2008-09-04 01:58:34 UTC (rev 22368)
+++ labs/jbossrules/branches/uncDrools5x/Essence/src/main/java/uncertainty/truthvals/Degree.java 2008-09-04 01:59:02 UTC (rev 22369)
@@ -101,7 +101,8 @@
}
public IUncertainDegree very() {
- return new Degree(this.value*this.value);
+ //return new Degree(this.value*this.value);
+ return new Degree(2*this.value - 1);
}
}
Modified: labs/jbossrules/branches/uncDrools5x/Essence/src/main/java/uncertainty/truthvals/Essence.java
===================================================================
--- labs/jbossrules/branches/uncDrools5x/Essence/src/main/java/uncertainty/truthvals/Essence.java 2008-09-04 01:58:34 UTC (rev 22368)
+++ labs/jbossrules/branches/uncDrools5x/Essence/src/main/java/uncertainty/truthvals/Essence.java 2008-09-04 01:59:02 UTC (rev 22369)
@@ -753,7 +753,7 @@
}
- /**
+ /**1
* General default constructor
* Does not check d and obs
*
@@ -1665,26 +1665,26 @@
public String toString() {
-// StringBuilder s = new StringBuilder("");
-// int n = p.length;
-//
-// if (pL != null) {
-// for (int j = 0; j < n; j++)
-// s.append(formatt(pL[j],3)).append(" ");
-// s.append("\n");
-// }
-// for (int j = 0; j < n; j++)
-// s.append(formatt(p[j],3)).append(" ");
-// s.append("\t | conf = "+this.getConfidenceFactor());
-// if (pU != null) {
-// s.append("\n");
-// for (int j = 0; j < n; j++)
-// s.append(formatt(pU[j],3)).append(" ");
-// s.append("\n");
-// }
-// return s.toString();
+ StringBuilder s = new StringBuilder("");
+ int n = p.length;
- return this.getAverageDegree().toString();
+ if (pL != null) {
+ for (int j = 0; j < n; j++)
+ s.append(formatt(pL[j],3)).append(" ");
+ s.append("\n");
+ }
+ for (int j = 0; j < n; j++)
+ s.append(formatt(p[j],3)).append(" ");
+ s.append("\t | conf = "+this.getConfidenceFactor());
+ if (pU != null) {
+ s.append("\n");
+ for (int j = 0; j < n; j++)
+ s.append(formatt(pU[j],3)).append(" ");
+ s.append("\n");
+ }
+ return s.toString();
+
+// return this.getAverageDegree().toString();
}
Modified: labs/jbossrules/branches/uncDrools5x/Essence/src/main/java/uncertainty/truthvals/operators/simple/SimpleAverage.java
===================================================================
--- labs/jbossrules/branches/uncDrools5x/Essence/src/main/java/uncertainty/truthvals/operators/simple/SimpleAverage.java 2008-09-04 01:58:34 UTC (rev 22368)
+++ labs/jbossrules/branches/uncDrools5x/Essence/src/main/java/uncertainty/truthvals/operators/simple/SimpleAverage.java 2008-09-04 01:59:02 UTC (rev 22369)
@@ -10,26 +10,62 @@
// Args are in sequence <integrand1, weight1>,<integrand2, weight2> ...
-
+ /*
@Override
public IUncertainDegree eval(IUncertainDegree[] args) {
double acc = 0;
double wgts = 0;
SimpleDotAnd op = new SimpleDotAnd();
+
+
// So the number of elements is actually twice
for (int j = 0; j < args.length; j = j+3) {
Degree integrand = (Degree) args[j];
Degree constraint = (Degree) args[j+1];
Degree weight = (Degree) args[j+2];
+
+
IUncertainDegree inductVal = op.eval(new IUncertainDegree[] {integrand, constraint});
acc += inductVal.getDegree().getValue()*weight.getDegree().getValue();
wgts += weight.getDegree().getValue();
+
+
}
return new Degree(acc / wgts);
}
+*/
+
+
+ @Override
+ public IUncertainDegree eval(IUncertainDegree[] args) {
+ double acc = 0;
+ double wgts = 0;
+ SimpleDotAnd op = new SimpleDotAnd();
+
+ // So the number of elements is actually twice
+ for (int j = 0; j < args.length; j = j+3) {
+ Degree integrand = (Degree) args[j];
+ Degree constraint = (Degree) args[j+1];
+ Degree weight = (Degree) args[j+2];
+
+ double w = weight.getValue();
+
+ if (w > wgts) {
+ wgts = weight.getValue();
+ acc = integrand.getValue();
+ }
+
+
+ }
+
+ return new Degree(acc);
+ }
+
+
+
}
More information about the jboss-svn-commits
mailing list