/** * Operator T-product * * @param example double[] The input example * @return double the computation the the product T-norm */ private double compatibilityProduct(double[] ejemplo) { double producto, grado_pertenencia; int etiqueta; producto = 1.0; for (int i = 0; i < (antecedent.length) && (producto > 0); i++) { etiqueta = antecedent[i]; grado_pertenencia = dataBase.membership(i, etiqueta, ejemplo[i]); producto = producto * grado_pertenencia; } return (producto); }
/** * Operator T-min * * @param example double[] The input example * @return double the computation the the minimum T-norm */ private double compatibilityMinimum(double[] ejemplo) { double minimo, grado_pertenencia; int etiqueta; minimo = 1.0; for (int i = 0; (i < antecedent.length) && (minimo > 0); i++) { etiqueta = antecedent[i]; grado_pertenencia = dataBase.membership(i, etiqueta, ejemplo[i]); minimo = Math.min(grado_pertenencia, minimo); } return (minimo); }