nebular pure Java fuzzy logic API
Nebular is a pure Java fuzzy logic API. With nebular you can include fuzzy logic and
fuzzy sets to your Java code, without the need of external or binary files.
This is possible in nebular because it uses functional programming. Instead of
an external file defining a rule or function, you use Java objects and call
methods passing function, predicate or other kinds of functors to model a
fuzzy system.
The following code:
double a = 2.0;
double c = 4.0;
SigmoidalMembershipFunction mf = new SigmoidalMembershipFunction(a, c);
for(double i : new DoubleRange(0.0, 10.0, 0.1).toCollection()) {
System.out.printf("%.4f ", mf.apply(i));
}
Produces the following output:
0.0003 0.0004 0.0005 0.0006 0.0007 0.0009 0.0011 0.0014 0.0017 0.0020 0.0025 0.0030 0.0037 0.0045 0.0055 0.0067 0.0082 0.0100 0.0121 0.0148 0.0180 0.0219 0.0266 0.0323 0.0392 0.0474 0.0573 0.0691 0.0832 0.0998 0.1192 0.1419 0.1680 0.1978 0.2315 0.2689 0.3100 0.3543 0.4013 0.4502 0.5000 0.5498 0.5987 0.6457 0.6900 0.7311 0.7685 0.8022 0.8320 0.8581 0.8808 0.9002 0.9168 0.9309 0.9427 0.9526 0.9608 0.9677 0.9734 0.9781 0.9820 0.9852 0.9879 0.9900 0.9918 0.9933 0.9945 0.9955 0.9963 0.9970 0.9975 0.9980 0.9983 0.9986 0.9989 0.9991 0.9993 0.9994 0.9995 0.9996 0.9997 0.9997 0.9998 0.9998 0.9998 0.9999 0.9999 0.9999 0.9999 0.9999 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000 1.0000
See LICENSE.txt or pom.xml for licensing.