Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
Documentation
Interval Type-2 Fuzzy sets. Defined entirely by the footprint of uncertainty, lmf and umf are the bounds of this area.
FSet (IT2Set a) | Enables use of support, hedge and |
Fuzzy (IT2Set a) | Interval Type-2 fuzzy sets allow us to work in type-1 concepts. Operators are defined through application to lower and upper membership functions. |
Defuzzifier (IT2Set Double) | |
FRule (IT2Set a) | |
type Value (IT2Set a) = a | |
type Support (IT2Set a) = [(a, a)] | |
type Returned (IT2Set a) = (Double, Double) | |
type Result (IT2Set Double) = (Double, Double) | |
type Antecedent (IT2Set a) = (Double, Double) |
Standard operations on fuzzy sets. Instantiated for each kind of fuzzy set. If you want to overload with a t-norm, instantiate against a newtype or instantiated set.
(?&&) :: a -> a -> a infixr 3 Source
Union over fuzzy values.
(?||) :: a -> a -> a infixr 2 Source
Intersection over fuzzy values.
Fuzzy complement.
Fuzzy Double | Standard definitions for operations as defined by Zadeh (1965) |
Fuzzy (MF a) | |
Fuzzy (T1Set a) | Fuzzy operators are supported on T1Sets. Applies operator to membership functions inside T1Set type. |
Fuzzy (IT2Set a) | Interval Type-2 fuzzy sets allow us to work in type-1 concepts. Operators are defined through application to lower and upper membership functions. |
Fuzzy (T2ZSet a) | Operations on zSlices fuzzy sets are simply defined as higher order funcitons over the list of zSlices. |
Fuzzy b => Fuzzy (a -> b) | Fuzzy operators for membership functions. |
(Fuzzy a, Fuzzy b) => Fuzzy (a, b) | Instance for tuple needed for interval type-2 fuzzy sets. |
Specifically for fuzzy sets, as opposed to fuzzy values.
Support is all elements of domain for which membership is non-zero.
Hedge is a modifier of fuzzy sets.
is
is for application of a value to a fuzzy set.
A single value of the domain.
A list of values from the domain for which membership is non-zero.
Degree of membership from applying a value to membership function.
contIT2 :: (Num a, Enum a) => a -> a -> a -> MF a -> MF a -> IT2Set a Source
Smart constructor for continuos interval type-2 membership functions. Watch that resolution!
discIT2 :: [a] -> MF a -> MF a -> IT2Set a Source
Smart constructor for discrete interval type-2 membership functions. Be wary of domain size.
unsafeMkIT2 :: [a] -> MF a -> MF a -> IT2Set a Source
Only use this if you trust your functions or have no other recourse.