FuzzyNumbers - Online Manual

piecewiseLinearApproximation {FuzzyNumbers}R Documentation

Piecewise Linear Approximation of a Fuzzy Number


This method finds a piecewise linear approximation P(A) of a given fuzzy number A by using the algorithm specified by the method parameter.


## S4 method for signature 'FuzzyNumber'
   method=c("NearestEuclidean", "SupportCorePreserving", 
   knot.n=1, knot.alpha=seq(0, 1, length.out=knot.n+2)[-c(1,knot.n+2)],
   ..., verbose=FALSE)



a fuzzy number


further arguments passed to integrateAlpha [only "NearestEuclidean" and "SupportCorePreserving"]


character; one of: "NearestEuclidean" (default), "SupportCorePreserving", or "Naive"


desired number of knots (if missing, then calculated from given knot.alpha)


alpha-cuts at which knots will be positioned (defaults to equally distributed knots)


logical; should some technical details on the computations being performed be printed? [only "NearestEuclidean"]


'method' may be one of:

  1. NearestEuclidean: see (Coroianu, Gagolewski, Grzegorzewski, 2013 and 2014a); uses numerical integration, see integrateAlpha. Slow for large knot.n.

  2. SupportCorePreserving: This method was proposed in (Coroianu et al., 2014b) and is currently only available for knot.n==1. It is the L2-nearest piecewise linear approximation with constraints core(A)==core(P(A)) and supp(A)==supp(P(A)); uses numerical integration.

  3. Naive: We have core(A)==core(P(A)) and supp(A)==supp(P(A)) and the knots are taken directly from the specified alpha cuts (linear interpolation).


Returns a PiecewiseLinearFuzzyNumber object.


Coroianu L., Gagolewski M., Grzegorzewski P. (2013), Nearest Piecewise Linear Approximation of Fuzzy Numbers, Fuzzy Sets and Systems 233, pp. 26-51.

Coroianu L., Gagolewski M., Grzegorzewski P., Adabitabar Firozja M., Houlari T. (2014a), Piecewise linear approximation of fuzzy numbers preserving the support and core, In: Laurent A. et al. (Eds.), Information Processing and Management of Uncertainty in Knowledge-Based Systems, Part II (CCIS 443), Springer, pp. 244-254.

Coroianu L., Gagolewski M., Grzegorzewski P. (2014b), Nearest Piecewise Linear Approximation of Fuzzy Numbers - General Case, submitted for publication.

See Also

Other FuzzyNumber-method: Arithmetic, FuzzyNumber-class, FuzzyNumber, alphaInterval, alphacut, ambiguity, as.FuzzyNumber, as.PiecewiseLinearFuzzyNumber, as.PowerFuzzyNumber, as.TrapezoidalFuzzyNumber, as.character, core, distance, evaluate, expectedInterval, expectedValue, integrateAlpha, plot, show, supp, trapezoidalApproximation, value, weightedExpectedValue, width

Other approximation: trapezoidalApproximation


(A <- FuzzyNumber(-1, 0, 1, 3,
   lower=function(x) sqrt(x),upper=function(x) 1-sqrt(x)))
(PA <- piecewiseLinearApproximation(A, "NearestEuclidean",
   knot.n=1, knot.alpha=0.2))

[Package FuzzyNumbers version 0.4-1 Index]