maximum {FuzzyNumbers}R Documentation

Maximum of fuzzy nubmers

Description

Determines maximum fuzzy number based on two inputs.

Usage

## S4 method for signature 
## 'PiecewiseLinearFuzzyNumber,PiecewiseLinearFuzzyNumber'
maximum(e1, e2)

Arguments

e1

a PiecewiseLinearFuzzyNumber

e2

a PiecewiseLinearFuzzyNumber

Details

The resulting PiecewiseLinearFuzzyNumber is only an approximation of the result it might not be very precise for small number of knots (see examples).

Value

Returns a PiecewiseLinearFuzzyNumber representing maximal value of the inputs.

References

KAUFMANN, A., GUPTA, M. M. (1985) Introduction to Fuzzy Arithmetic. New York : Van Nostrand Reinhold Company. ISBN 044230079.

See Also

Other min_max-operators: minimum()

Other PiecewiseLinearFuzzyNumber-method: Arithmetic, Extract, PiecewiseLinearFuzzyNumber-class, PiecewiseLinearFuzzyNumber, ^,PiecewiseLinearFuzzyNumber,numeric-method, alphaInterval(), arctan2(), as.PiecewiseLinearFuzzyNumber(), as.PowerFuzzyNumber(), as.TrapezoidalFuzzyNumber(), as.character(), expectedInterval(), fapply(), minimum(), necessityExceedance(), necessityStrictExceedance(), necessityStrictUndervaluation(), necessityUndervaluation(), plot(), possibilityExceedance(), possibilityStrictExceedance(), possibilityStrictUndervaluation(), possibilityUndervaluation()

Examples

# example with low number of knots, showing the approximate nature
# of the result
x = as.PiecewiseLinearFuzzyNumber(TriangularFuzzyNumber(-4.8, -3 , -1.5))
y = as.PiecewiseLinearFuzzyNumber(TriangularFuzzyNumber(-5.5, -2.5, -1.1))
maxFN = maximum(x,y)
min = min(alphacut(x,0)[1],alphacut(y,0)[1])
max = max(alphacut(x,0)[2],alphacut(y,0)[2])
plot(x, col="red", xlim=c(min,max))
plot(y, col="blue", add=TRUE)
plot(maxFN, col="green", add=TRUE)

# example with high number of knots, that does not suffer 
# from the approximate nature of the result
x = as.PiecewiseLinearFuzzyNumber(TriangularFuzzyNumber(-4.8, -3 , -1.5), knot.n = 9)
y = as.PiecewiseLinearFuzzyNumber(TriangularFuzzyNumber(-5.5, -2.5, -1.1), knot.n = 9)
maxFN = maximum(x,y)
min = min(alphacut(x,0)[1],alphacut(y,0)[1])
max = max(alphacut(x,0)[2],alphacut(y,0)[2])
plot(x, col="red", xlim=c(min,max))
plot(y, col="blue", add=TRUE)
plot(maxFN, col="green", add=TRUE)

[Package FuzzyNumbers version 0.4-7 Index]