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'
piecewiseLinearApproximation(object,
   method=c("NearestEuclidean", "SupportCorePreserving", 
   "Naive"),
   knot.n=1, knot.alpha=seq(0, 1, length.out=knot.n+2)[-c(1,knot.n+2)],
   ..., verbose=FALSE)| object | a fuzzy number | 
| ... | further arguments passed to  | 
| method | character; one of:  | 
| knot.n | 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) | 
| verbose | logical; should some technical details on the computations being performed be printed?
[only  | 
'method' may be one of:
NearestEuclidean: see (Coroianu, Gagolewski, Grzegorzewski, 2013 and 2014a);
uses numerical integration, see integrateAlpha.
Slow for large knot.n.
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.
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.
Other approximation: trapezoidalApproximation
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
(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))
Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.