# trapezoidalApproximation-methods: Trapezoidal Approximation of a Fuzzy Number In FuzzyNumbers: Tools to Deal with Fuzzy Numbers

## Description

This method finds a trapezoidal approximation T(A) of a given fuzzy number A by using the algorithm specified by the `method` parameter.

## Usage

 ```1 2 3 4 5``` ```## S4 method for signature 'FuzzyNumber' trapezoidalApproximation(object, method=c("NearestEuclidean", "ExpectedIntervalPreserving", "SupportCoreRestricted", "Naive"), ..., verbose=FALSE) ```

## Arguments

 `object` a fuzzy number `...` further arguments passed to `integrateAlpha` `method` character; one of: `"NearestEuclidean"` (default), `"ExpectedIntervalPreserving"`, `"SupportCoreRestricted"`, `"Naive"` `verbose` logical; should some technical details on the computations being performed be printed?

## Details

`method` may be one of:

1. `NearestEuclidean`: see (Ban, 2009); uses numerical integration, see `integrateAlpha`

2. `Naive`: We have core(A)==core(T(A)) and supp(A)==supp(T(A))

3. `ExpectedIntervalPreserving`: L2-nearest trapezoidal approximation preserving the expected interval given in (Grzegorzewski, 2010; Ban, 2008; Yeh, 2008) Unfortunately, for highly skewed membership functions this approximation operator may have quite unfavourable behavior. For example, if Val(A) < EV_1/3(A) or Val(A) > EV_2/3(A), then it may happen that the core of the output and the core of the original fuzzy number A are disjoint (cf. Grzegorzewski, Pasternak-Winiarska, 2011)

4. `SupportCoreRestricted`: This method was proposed in (Grzegorzewski, Pasternak-Winiarska, 2011). L2-nearest trapezoidal approximation with constraints core(A) SUBSETS core(T(A)) and supp(T(A)) SUBSETS supp(A), i.e. for which each point that surely belongs to A also belongs to T(A), and each point that surely does not belong to A also does not belong to T(A).

## Value

Returns a `TrapezoidalFuzzyNumber` object.

## References

Ban A.I. (2008), Approximation of fuzzy numbers by trapezoidal fuzzy numbers preserving the expected interval, Fuzzy Sets and Systems 159, pp. 1327-1344.

Ban A.I. (2009), On the nearest parametric approximation of a fuzzy number - Revisited, Fuzzy Sets and Systems 160, pp. 3027-3047.

Grzegorzewski P. (2010), Algorithms for trapezoidal approximations of fuzzy numbers preserving the expected interval, In: Bouchon-Meunier B. et al (Eds.), Foundations of Reasoning Under Uncertainty, Springer, pp. 85-98.

Grzegorzewski P, Pasternak-Winiarska K. (2011), Trapezoidal approximations of fuzzy numbers with restrictions on the support and core, Proc. EUSFLAT/LFA 2011, Atlantis Press, pp. 749-756.

Yeh C.-T. (2008), Trapezoidal and triangular approximations preserving the expected interval, Fuzzy Sets and Systems 159, pp. 1345-1353.

Other approximation: `piecewiseLinearApproximation()`
Other FuzzyNumber-method: `Arithmetic`, `Extract`, `FuzzyNumber-class`, `FuzzyNumber`, `alphaInterval()`, `alphacut()`, `ambiguity()`, `as.FuzzyNumber()`, `as.PiecewiseLinearFuzzyNumber()`, `as.PowerFuzzyNumber()`, `as.TrapezoidalFuzzyNumber()`, `as.character()`, `core()`, `distance()`, `evaluate()`, `expectedInterval()`, `expectedValue()`, `integrateAlpha()`, `piecewiseLinearApproximation()`, `plot()`, `show()`, `supp()`, `value()`, `weightedExpectedValue()`, `width()`
 ```1 2 3 4 5 6``` ```(A <- FuzzyNumber(-1, 0, 1, 40, lower=function(x) sqrt(x), upper=function(x) 1-sqrt(x))) (TA <- trapezoidalApproximation(A, "ExpectedIntervalPreserving")) # Note that the cores are disjoint! expectedInterval(A) expectedInterval(TA) ```