Title: | Generating Triangular and Trapezoidal Fuzzy Random Numbers via Uniform Distribution |
---|---|
Description: | Triangular and trapezoidal fuzzy numbers are used to study fuzzy logic, fuzzy reasoning and approximating, fuzzy regression models, etc. This package builds the generating function for triangular and trapezoidal fuzzy numbers based on Souliotis et al. (2022)<doi:10.3390/math10183350>. They proposed a method for the construction of fuzzy numbers via a cumulative distribution function based on the possibility theory. |
Authors: | Atchanut Rattanalertnusorn [aut, cre] |
Maintainer: | Atchanut Rattanalertnusorn <[email protected]> |
License: | GPL-3 |
Version: | 0.1.4 |
Built: | 2024-11-20 05:20:55 UTC |
Source: | https://github.com/cran/genfrn |
This function for calculating alpha-cut of triangular fuzzy number. See detail in references.
acuttfn(left, middle, right, acut.level = seq(0, 1, by = 0.1))
acuttfn(left, middle, right, acut.level = seq(0, 1, by = 0.1))
left |
the left point of triangular fuzzy number |
middle |
the middle or mode point of triangular fuzzy number |
right |
the right point of triangular fuzzy number |
acut.level |
the alpha-cut level of triangular fuzzy number |
AL
is alpha-cut level,
XL.AL
is a lower alpha-cut point of triangular fuzzy number,
and XU.AL
is a upper alpha-cut point of triangular fuzzy number.
Klir, G.J., Yuan, B., & H., S.C.U. (1997). Fuzzy set theory: Foundations and applications. Prentice Hall PTR.
acuttfn(1,2,3,acut.level = c(0,0.5,1)) acuttfn(1,2.5,3,acut.level = c(0.00,0.25,0.50,0.75,1.00))
acuttfn(1,2,3,acut.level = c(0,0.5,1)) acuttfn(1,2.5,3,acut.level = c(0.00,0.25,0.50,0.75,1.00))
This function for calculating alpha-cut of trapezoidal fuzzy number. See detail in references.
acuttrfn(left, lmid, rmid, right, acut.level = seq(0, 1, by = 0.1))
acuttrfn(left, lmid, rmid, right, acut.level = seq(0, 1, by = 0.1))
left |
the left point of trapezoidal fuzzy number |
lmid |
the left-middle point of trapezoidal fuzzy number |
rmid |
the right-middle point of trapezoidal fuzzy number |
right |
the right point of trapezoidal fuzzy number |
acut.level |
the alpha-cut level of trapezoidal fuzzy number |
AL
is alpha-cut level,
XL.AL
is a lower alpha-cut point of trapezoidal fuzzy number,
and XU.AL
is a upper alpha-cut point of trapezoidal fuzzy number.
Klir, G.J., Yuan, B., & H., S.C.U. (1997). Fuzzy set theory: Foundations and applications. Prentice Hall PTR.
acuttrfn(1,2,3,5,acut.level = c(0,0.5,1)) acuttrfn(1,2.5,3.5,6,acut.level = c(0.00,0.25,0.50,0.75,1.00))
acuttrfn(1,2,3,5,acut.level = c(0,0.5,1)) acuttrfn(1,2.5,3.5,6,acut.level = c(0.00,0.25,0.50,0.75,1.00))
A generating function of triangular fuzzy number via uniform distribution based on Souliotis et al. (2022). See detail in references.
rtfn(n, a, b)
rtfn(n, a, b)
n |
total number of random triangular fuzzy number |
a |
the left point of triangular fuzzy number |
b |
the right point of triangular fuzzy number |
A data frame with two variables, that is, x and mf
Souliotis, G., Alanazi, Y., & Papadopoulos, B. (2022). Construction of fuzzy numbers via cumulative distribution function. Mathematics, 10(18), 3350. https://doi.org/10.3390/math10183350
df <- rtfn(500,1,5) head(df) plot(df) # or plot(df,type='h')
df <- rtfn(500,1,5) head(df) plot(df) # or plot(df,type='h')
A generating function of trapezoidal fuzzy number via uniform distribution based on Souliotis et al. (2022). See detail in references.
rtrfn(n, a, c, r, b)
rtrfn(n, a, c, r, b)
n |
total number of random trapezoidal fuzzy number |
a |
the left point of trapezoidal fuzzy number |
c |
the left-middle point of trapezoidal fuzzy number |
r |
the right-middle point of trapezoidal fuzzy number |
b |
the right point of trapezoidal fuzzy number |
A data frame with two variables, that is, x and mf
In general, a
< c
< r
< b
for generating a trapezoidal fuzzy random number.
If a
=c
=r
=b
, it will produce a crisp number.
If a
<c
=r
<b
, it will produce a triangular fuzzy random number.
Souliotis, G., Alanazi, Y., & Papadopoulos, B. (2022). Construction of fuzzy numbers via cumulative distribution function. Mathematics, 10(18), 3350. https://doi.org/10.3390/math10183350
df2<- rtrfn(500,1,3,4,6) head(df2) plot(df2) # or plot(df2,type='h')
df2<- rtrfn(500,1,3,4,6) head(df2) plot(df2) # or plot(df2,type='h')