Fuzzy logic implementation
Fuzzy logic implementation
Article
Fuzzy Logic Concepts, Developments and Implementation
Reza Saatchi
School of Engineering and Built Environment, City Campus, Sheffield Hallam University, Sheaf Building,
Howard Street, Sheffield S1 1WB, UK; [email protected]
Abstract: Over the past few decades, the field of fuzzy logic has evolved significantly, leading to
the development of diverse techniques and applications. Fuzzy logic has been successfully com-
bined with other artificial intelligence techniques such as artificial neural networks, deep learning,
robotics, and genetic algorithms, creating powerful tools for complex problem-solving applications.
This article provides an informative description of some of the main concepts in the field of fuzzy
logic. These include the types and roles of membership functions, fuzzy inference system (FIS),
adaptive neuro-fuzzy inference system and fuzzy c-means clustering. The processes of fuzzification,
defuzzification, implication, and determining fuzzy rules’ firing strengths are described. The article
outlines some recent developments in the field of fuzzy logic, including its applications for deci-
sion support, industrial processes and control, data and telecommunication, and image and signal
processing. Approaches to implementing fuzzy logic models are explained and, as an illustration,
Matlab (version R2024b) is used to demonstrate implementation of a FIS. The prospects for future
fuzzy logic developments are explored and example applications of hybrid fuzzy logic systems are
provided. There remain extensive opportunities in further developing fuzzy logic-based techniques,
including their further integration with various machine learning algorithms, and their adaptation
into consumer products and industrial processes.
Keywords: fuzzy logic; fuzzy inference system; adaptive neuro-fuzzy inference system; fuzzy
c-means clustering; fuzzy logic applications; fuzzy logic implementation; hybrid fuzzy logic models
Information
Information2024,
2024,15,
15,656
656 2 of
2 of2424
𝜇 (𝑥) = 1 𝑖𝑓 𝑥 ∈ 𝐴
(𝑥) = 1 𝑖𝑓 𝑥 ∈ 𝐴
µ𝜇𝜇A(𝑥)
(x) =
= 01 𝑖𝑓 ∈ 𝐴A
i f 𝑥x ∉
Figure 1. Representations of Low, Medium and High speeds crisp (classical) sets.
Figure
Figure1.1.Representations
RepresentationsofofLow,
Low,Medium
Mediumand
andHigh
Highspeeds
speedscrisp
crisp(classical)
(classical)sets.
sets.
For the crip sets in Figure 1, a car speed of 39.9 mph is a member of the medium-
speed Forset even though
the crip
crip it is not significantly
sets in different fromis41.1 mph which is a member of
For the sets in Figure
Figure1,1,aacar carspeed
speed of of
39.9 mph
39.9 mphaismembera member of theof medium-speed
the medium-
the high-speed
set even though set. In fuzzy
it is not sets, the membership of x to a set is no longer binary or of
true
speed set even though it issignificantly
not significantlydifferent fromfrom
different 41.141.1
mphmph which is ais
which member
a member the
of
orhigh-speed
false, as x can set. simultaneously
In fuzzy sets, be
the a member
membership of multiple
of x to a sets
set iswith
no associated
longer binary degrees
or true ofor
the high-speed set. In fuzzy sets, the membership of x to a set is no longer binary or true
memberships. Zadeh, in 1965, presented a seminal paper sets about fuzzy sets [2] degrees
that pro-
false,asasx xcan
orfalse, cansimultaneously
simultaneouslybe beaa member
member of of multiple
multiple sets with
with associated
associated degrees ofof
vided an important
memberships. Zadeh, foundation
Zadeh, in in 1965, of the field. Zadah’s work and those of others have re-
memberships. 1965, presented
presentedaaseminalseminalpaper paper about
about fuzzy
fuzzysetssets
[2] [2]
thatthat
provided
pro-
sulted in the evolution
an important foundation of the field,
of the extensive publications
field. and of several applications. As
vided an important foundation of the Zadah’s work and
field. Zadah’s work those
and those others have resulted
of others have re-in
shown in Figureof2,the fuzzy sets typicallypublications
overlap; thus, a several
speed of 37 mph canAs simultane-
sulted in the evolution of the field, extensive publications and several applications. Asin
the evolution field, extensive and applications. shown
ously
Figure be 2,a member
fuzzy sets of medium-
typically and high-speed
overlap; thus, a sets
speed with degrees of memberships of 0.50
shown in Figure 2, fuzzy sets typically overlap; thus, of 37 mph
a speed of can
37 mphsimultaneously
can simultane- be a
and 0.25,
member respectively.
of medium- The
and degree
high-speedof membership
sets with indicates
degrees of the extent
memberships that ofan element
0.50 and x
0.25,
ously be a member of medium- and high-speed sets with degrees of memberships of 0.50
belongs to
respectively. a set. It ranges
The degree between
of degree 0
membership and 1, where 0
indicates the represents
extent that not a member
an element and 1
x belongsa full
and 0.25, respectively. The of membership indicates the extent that an elementtoxa
member.
set. It ranges between 0 and 1, where 0 represents not a member and 1 a full member.
belongs to a set. It ranges between 0 and 1, where 0 represents not a member and 1 a full
member.
Figure
Figure2.2.Representations
Representationsofof
Low,
Low,Medium
Mediumand
andHigh
Highspeeds
speedsfuzzy
fuzzysets.
sets.
FigureIn
2. general,
Representations
if x is aofmember
Low, Medium andset
of fuzzy High speeds
A, its fuzzy sets.
mapping can be expressed as
In general, if x is a member of fuzzy set A, its mapping can be expressed as
In general, if x is a member of fuzzy (𝑥)
µ𝜇Aset ∈
( x )A, [0,1
∈ its
0, mapping
1] can be expressed as
𝜇 (𝑥) ∈ 0,1
= ((𝑥,
A𝐴 = x, 𝜇µ A(𝑥)|𝑥
( x )| x ∈∈𝑈)
U)
Thismapping
This mappingfor
fora afinite 𝐴=
finitediscrete
discrete fuzzy
fuzzy (𝑥)|𝑥
(𝑥, 𝜇set
set ∈be
canbe
can 𝑈)representedasas
represented
µ ( x( )) fuzzy
This mapping for a finite discrete ( ) can be represented
+µ A ( xset
( ) as
2 ) + ⋯ = ∑ µ A ( xi )
A𝐴== A 1 + +... = ∑ (1)(1)
x1 ( ) x2( ) x( i )
𝐴= + +⋯=∑ (1)
Information 2024, 15, 656 3 of 24
Information 2024, 15, 656 3 of 24
where the symbol “+” in expression (1) is not a mathematical addition or logical OR but it
where the symbol
represents “+” in expression
an aggregation (1) operation.
or collection is not a mathematical
For a finite addition
continuous or logical OR butset
U, the fuzzy it
represents
A as or collection operation. For a finite continuous U, the fuzzy set A
an aggregation
can be represented
can be represented as ( )
𝐴 = ∫µ A ( x ) 𝑑(𝑥) (2)
Z
A= d( x ) (2)
X x
The contribution of this article is informative explorations of the main fuzzy logic
The contribution
concepts, combined withof this article is of
discussions informative explorationsinofthe
recent developments thefield,
main andfuzzy logic
system
concepts, combined with discussions of recent developments in the
modelling implementation coverage. The manner of preparing this article was to ensure field, and system
modelling
prior implementation
information about the coverage.
field was notTherequired
mannerto ofbe
preparing this article
able to follow up and was to ensure
understand
prior information about the field was not required to be able to follow up and understand
its contents. Membership functions play a central role in the field of fuzzy logic as they
its contents. Membership functions play a central role in the field of fuzzy logic as they
facilitate conversion between crip and fuzzy data. Therefore, the main membership func-
facilitate conversion between crip and fuzzy data. Therefore, the main membership func-
tions are presented, and their features are explained. Several fuzzy logic applications were
tions are presented, and their features are explained. Several fuzzy logic applications were
based on fuzzy inference system (FIS), adaptive neuro-fuzzy inference system (ANFIS)
based on fuzzy inference system (FIS), adaptive neuro-fuzzy inference system (ANFIS) and
and fuzzy c-means techniques. Therefore, the operations of these techniques are ex-
fuzzy c-means techniques. Therefore, the operations of these techniques are explained.
plained. A discussion of recent fuzzy logic applications associated with industrial pro-
A discussion of recent fuzzy logic applications associated with industrial processes and
cesses and control, decision support, data and telecommunication, and signal and image
control, decision support, data and telecommunication, and signal and image processing
processing are provided. Although the coverage of all publications in the fuzzy logic fields
are provided. Although the coverage of all publications in the fuzzy logic fields was not
was not practical, the aim was to provide a representative coverage of the developments.
practical, the aim was to provide a representative coverage of the developments. In the
In the following sections, a description of the main fuzzy logic concepts is provided and
following sections, a description of the main fuzzy logic concepts is provided and some of
some of the developments
the developments in the
in the field are field are outlined.
outlined. A sectionAon section on implementing
implementing fuzzy logicfuzzy logic
systems
systems is included and the manner FIS could be implemented in Matlab
is included and the manner FIS could be implemented in Matlab [6] is illustrated through [6] is illustrated
through
an example.an example.
2.
2. Fuzzy
Fuzzy Logic
Logic Concepts
Concepts
In this section, the main fuzzy logic concepts are explained.
2.1. Membership
Membership Functions
Functions
A design consideration
considerationin indeveloping
developingaafuzzy
fuzzylogic
logicsystem
system is is
thethe
types
types and parameters
and parame-
of the membership functions as they characterise fuzzy sets. A study
ters of the membership functions as they characterise fuzzy sets. A study provided provided a review of
a re-
issuesofassociated
view with membership
issues associated functions
with membership [7]. Some
functions [7].popular membership
Some popular functions
membership are
func-
described
tions in this section.
are described in thisInsection.
Figure 2,
Intriangular
Figure 2, membership functions are
triangular membership used to represent
functions are used
therepresent
to fuzzy setsthefor different
fuzzy sets forspeeds.
differentAs indicated
speeds. in Figurein3,Figure
As indicated a triangular membership
3, a triangular mem-
function is specified by the parameters a, b and c, where a < b <
bership function is specified by the parameters 𝑎, b and c, where 𝑎 < b < c.c.
Figure 3. A
A triangular
triangular membership
membership function.
The parameters 𝑎
The parameters a and
and cc indicate
indicate the
the starting
starting and
and end
end points of base of the triangle
and b corresponds to the point on the base of the triangletriangle associated with its peak. The
triangular membership
triangular membership function
function cancan be
be symmetric
symmetric (as
(as in
in Figure
Figure 3)
3) or
or ititcan
canbe
beasymmetric.
asymmetric.
It can
It can be
be expressed
expressed as
as
x −𝑥a − 𝑎 ,c1,−𝑐x− 𝑥 , 0
𝜇µTriangular ( x(𝑥) = 𝑚𝑎𝑥
) = max min 𝑚𝑖𝑛 , 1, ,0 (3)
(3)
b −𝑏a − 𝑎 c −𝑐b− 𝑏
Information
Information2024,
2024,15,
15,656
656 4 of 24
4 of 24
where
wheremax maxand
andminminoperators
operatorsrepresent
representthethemaximum
maximum and
andminimum
minimum values, respectively.
values, respectively.
For example, to determine the degree of membership of x =
For example, to determine the degree of membership of x = 20 to the triangular 20 to the triangular member-
mem-
ship function
bership function 𝜇 µ Triangular
(i.e., (i.e., (20)),
(20shown
)), shownin Figure 3, the
in Figure 3, following
the followingcalculations can be
calculations can
performed.
be performed.
20 − 15 45 − 20
𝑚𝑖𝑛 20 − 15 , 1, , 1,45 − 20 ,, 00
µ𝜇Triangular (20(20)
) ==max𝑚𝑎𝑥min
3030−−1515 45 45− −3030
5 25
µ𝜇Triangular (20
(20)
) = =max𝑚𝑎𝑥min 𝑚𝑖𝑛 5 , 1,, 1,25 ,, 00
15 15 15
15
1 1 55
µ𝜇Triangular (20(20)
) == max𝑚𝑎𝑥min 𝑚𝑖𝑛 , 1,, 1, ,, 0 0
3 3 33
11 11
(20)
µ𝜇Triangular (20 ) ==max 𝑚𝑎𝑥 3 , 0, 0 = =3
3 3
Thetrapezoidal
The trapezoidalmembership
membershipfunction,
function, shown
shown in Figure 4, can can provide
provide greater
greaterflexibil-
flexi-
ity for
bility forsome
someapplications
applicationsasascompared
comparedtotothe thetriangular
triangularmembership
membershipfunction.
function.
Figure
Figure4.4.AAtrapezoidal
trapezoidalmembership
membershipfunction.
function.
Thetrapezoidal
The trapezoidalmembership
membershipfunction
functionisischaracterised
characterisedby by its parameters a,
its parameters 𝑎, b,
b, ccand
andd,
(a < b < c < d). The values of a and d indicate the points on the x-axis for the
d, (𝑎 < b < c < d). The values of 𝑎 and d indicate the points on the x-axis for the starting starting and
end points of its base and b and c indicate the x-values for the starting point
and end points of its base and b and c indicate the x-values for the starting point and end and end point
of itsof
point core
its (shown in Figure
core (shown 4). For4).
in Figure a fuzzy
For aset A, itsset
fuzzy core, denoted
A, its as Core(A),
core, denoted as isCore(A),
definedisas
defined as
Core( A) = { x | µ A ( x ) = 1 and x ∈ U } (4)
𝐶𝑜𝑟𝑒(𝐴) = 𝑥| 𝜇 (𝑥 ) = 1 𝑎𝑛𝑑 𝑥 ∈ 𝑈 (4)
The support of the trapezoidal membership function, denoted as Support(A), is de-
The
fined as support of the trapezoidal membership function, denoted as Support(A), is de-
fined as Support( A) = { x | µ ( x ) > 0 and x ∈ U } (5)
A
Figure 5. Gaussian membership functions for σ = 4 (blue plot) and for σ = 5 (red plot).
Figure 5. Gaussian membership functions for σ = 4 (blue plot) and for σ = 5 (red plot).
The
Figure
Figure5.5.generalised
Gaussian bell membership
Gaussianmembership
membership functionsfunction,
functions for shown
forσσ==4 4(blue
(blue inand
plot)
plot) Figure
andfor 6,
= =5is5(red
forσσ characterised
(redplot).
plot). by the
parameters 𝑎, b and c and is expressed as
The generalised bell membership function, shown in Figure 6, is characterised by the
Thegeneralised
The generalised bell
𝑎, b and cbell membership
andmembership function,shown
function, shownin
inFigure
Figure6,6,isischaracterised
characterisedby
bythe
the
parameters
parameters 𝑎,
parameters
is expressed
𝜇 as
a, b and c and is expressed (𝑥) =
as (8)
𝜇 (𝑥) = 1 (8)
µ𝜇Bell
The parameter c determines its ( x(𝑥)
) = 𝑎=is its half
centre, 2b
𝑎,(8)
width, and b together with (8)
1 + x− c
controls
Thethe slope at the
parameter crossover points
c determines 𝑎 =is −
(slope
its centre, ). width, and b together with 𝑎,
itsa half
The parameter c determines its centre, 𝑎 is its half width, and b together with 𝑎,
controls the slope at the crossover points (slope = − ).
controls the slope at the crossover points (slope = − ).
Figure
Figure6.6. Generalised
Generalised bell
bellmembership
membershipfunction
function with𝑎 a ==bb==66and
with andc c= =3030(the red
(the horizontal
red horizontaldashed
dashed
lineisisatat𝜇µ Bell((𝑥
line x )) =
=0.5
0.5)
) . .
Figure 6. Generalised bell membership function with 𝑎 = b = 6 and c = 30 (the red horizontal dashed
Figure
line is at 6. (𝑥 ) = 0.5)
𝜇 parameter
Generalised bell membership
. function with 𝑎 = b = 6 and c = 30 (the red horizontal dashed
line isAs The 𝜇 (𝑥 ) =
at indicated cFigure
determines
in 0.5) . 7, an its
increase a is𝑎its
centre,in half width,
widens and b together
the generalised bellwith a, controls
membership
b
the slope at the crossover points (slope = − 2a ).
function.
As indicated
Asindicated
in Figure
indicatedininFigure
7, an
Figure7,7,an
increase in 𝑎 widens
increaseinin𝑎a widens
anincrease
the
widens the
generalised
the generalised
bell
generalisedbell
membership
bellmembership
membership
As
function.
function.
function.
Figure 7. Generalised bell membership functions with b = 3 and c = 30, blue: 𝑎 = 6, red: 𝑎=8.
Figure
Figure7.7.Generalised
Generalisedbell
bellmembership
membershipfunctions
functionswith
withbb==3 3and
andc c= =30, blue:𝑎a ==6,6,red:
30,blue: red: 𝑎=8.
a = 8.
The
Figure 7. sigmoid membership
Generalised function,
bell membership shown
functions inbFigure
with = 3 and8,c is controlled
= 30, blue: 𝑎 =by parameters
6, red: 𝑎=8. 𝑎
and b,The
where
The 𝑎 defines
sigmoid
sigmoid the slope
membership
membership at x = b,shown
function,
function, where
showninb in
isFigure
the inflection
Figure point. The
8,8,isiscontrolled
controlled symbol e is a𝑎a
bybyparameters
parameters
mathematical
and The constant,
sigmoid
where𝑎a defines
andb,b,where approximately
membership
defines the function,
the slope equal to
shown
at xx ==b,b,where
slope at 2.71828.
in Figure
wherebbisisthe The
8, issigmoid
theinflection is
controlled
inflectionpoint. by
point.The symbole eisis𝑎
expressed as
parameters
Thesymbol aa
and b, where
mathematical 𝑎 defines
constant, the slope at
approximately x = b, where
equal to b is the
2.71828. inflection
The point.
sigmoid is The symbol
The sigmoid is expressed as (9)a
expressed as e is
mathematical constant, approximately𝜇
mathematical constant, approximately (𝑥)to
equal
equal =2.71828.
to 2.71828.( The ) sigmoid is expressed as
µSigmoid ( x(𝑥)
𝜇 1
)== (9)
(9)
𝜇 (𝑥) 1=+ e−a(x((−b) )) (9)
Information 2024, 15, 656 6 of 24
Figure
Figure8.8.Sigmoid
Sigmoidmembership
membershipfunctions
functionswith
withb b= =30,
30,blue plot𝑎a =1,
blueplot = 1,red plot𝑎=0.4.
redplot a = 0.4.
Figure 8.
AsSigmoid
shownmembership
in Figuresfunctions
8 and 9,with
the bsign
= 30,of
blue plot 𝑎 =1, redwhether
a determines plot 𝑎=0.4.
this membership
Figure 8. Sigmoid membership functions with b = 30, blue plot 𝑎 =1, red plot 𝑎=0.4.
function opens to the right (when a is positive) or left (when a is negative).
FigureAlthough
9. Sigmoidthis
membership functions on
section focused with b =main
the 𝑎 = −1.
30 andmembership functions, there were also
Figure
Figure9.9.Sigmoid
Sigmoidmembership
membershipfunctions
functionswith and𝑎a ==−1.
withb b==3030and −1.
studies reporting the design of dynamic membership functions [8]. The dynamism could
Althoughbethis
for example sectionthrough
achieved focusedautomatic
on the main membership
updates functions,
in the degrees there were also
of memberships, the
studies Although
Although
reporting this
this
the section
design focused
focused
of dynamic on
onthe
the main
main
membership membership
membership
functions functions,
functions,
[8]. The there were
there
dynamism also
were stud-
also
could
ranges of membership functions, and the extent of their overlaps. It is also possible to
ies
for reporting
studies
examplereporting
be the design
the
achieved designof dynamic
of dynamic
through membership
automatic membership
updates functions
in functions
the [8].[8].
degrees The The
of dynamism
dynamism
memberships, could
could
thefor
design membership functions by considering the data being analysed [9,10]. The ap-
example
for
rangesexample be achieved
be
of membership achieved through
through
functions,automatic
automatic
and updates
updatesin the indegrees
the of
degrees memberships,
of memberships, the ranges
the
proaches for these could be based onthe extent ofthe
heuristics, their overlaps.toItpossibility
probability is also possible
transfor- to
of membership
ranges
design of membership
membership functions, and by
functions,
functions the considering
extent
and theof extent
theirthe overlaps.
ofdata It
theirbeing is also
overlaps. possible to design
It is [9,10].
analysed also possible
The mem-
ap-to
mations, histograms,
bershipmembership
functions nearest
byfunctions neighbour,
considering artificial neural networks, clustering, andformix-
design
proaches for these could be based by the
on data
considering beingthe
heuristics, analysed
the data [9,10].analysed
being
probability The
to approaches
[9,10].transfor-
possibility The these
ap-
ture
coulddecomposition
be based [9].
oncould Approaches
heuristics, such as fuzzy
the probability clustering transformations,
to neural
possibility [11] and maximum entropy
proaches
mations, for these
histograms, nearestbe neighbour,
based on heuristics,
artificial the probability possibilityhistograms,
networks,toclustering, andtransfor-
mix-
[12] were
nearest also devised
neighbour, to design
artificial membership
neural networks, functions.
clustering, and mixture decomposition [9].
mations, histograms, nearest neighbour, artificial neural
ture decomposition [9]. Approaches such as fuzzy clustering [11] and maximum entropy networks, clustering, and mix-
Approaches
ture
[12] such as[9].
decomposition
were also devised fuzzy clustering
to Approaches
design [11] as
such
membership and maximum
fuzzy
functions. clustering entropy
[11] [12]
and were
maximum also devised
entropyto
2.2. Fuzzy
design Rules
membership and Operators
functions.
[12] were also devised to design membership functions.
A fuzzy logic model usually has multiple inputs. For example, if the fuzzy logic
2.2. Fuzzy Rules and Operators
2.2. Fuzzy
model Rules and
is assessing the Operators
severity (output of the model) of a car accident with another car or
2.2. A
Fuzzy
fuzzy Rules
logicandmodel
Operators
a pedestrian,
A fuzzyitlogic have usually
may model asusually
its inputhas the
multiple inputs.and
car’s speed
has multiple inputs. For
Foritsexample,
distance if the fuzzy
example,toifthe theother
fuzzy
logic
car or
logic
model Aisfuzzy logicthe
assessing model
severityusually
(output hasofmultiple
the model) inputs. Foraccident
example, if the fuzzycar logic
the pedestrian
model as inputs,
is assessing as shown
the severity in Figure
(output model) of a car accident with another car or
of the10. of a car with another or a
amodel is assessing
pedestrian,
pedestrian, it maythe
it may have
have
severity
as its
as
(output
its input
inputthe theofcar’s
the model)
speedand
car’s speed
of a car
and accident to
itsdistance
its distance with
to the
another
theother
othercar caror
car or
or the
a
thepedestrian,
pedestrian it may have as its input the car’s speed and its distance to the other car or
pedestrian asas inputs,
inputs, asas shown
shown inin Figure
Figure 10.10.
theSpeed
pedestrian as inputs, as shown in Figure 10.
Accident
Severity
Distance severity
Speed
Accident
Speed Severity
Distance Accident
severity
Figure 10. Fuzzy logic model to assess a Severity
Distance car accident severity.
severity
Figure 10.10.
Figure
The Fuzzy logic
Fuzzy
operators model
logic
AND, to to
model
OR assess a car
assess
and NOT accident
a car usedseverity.
accident
are severity.
to combine the associated logic combina-
Figure 10. Fuzzy logic model to assess a car accident severity.
tions relating the input(s) and output(s) fuzzy sets as shown in Figure 11.
The
The operators
operators AND,
AND, OROR and
and NOT
NOT areare used
used to to combine
combine thethe associated
associated logic
logic combina-
combina-
tions
tions relating
The
relating the
operators
the input(s)
AND,and
input(s) and
OR output(s)
and fuzzy
NOT fuzzy
output(s) are used sets as shown
toascombine
sets shown in
the
in Figure
11.11. logic combina-
associated
Figure
tions relating the input(s) and output(s) fuzzy sets as shown in Figure 11.
Information 2024,
Information 15, 656
2024, 15, 656 7 7ofof 24
24
Figure
Figure 11.
11. Illustration
Illustration of
of the
the fuzzy
fuzzy logical
logical operators,
operators, AND,
AND, OR
OR and
and NOT
NOT on
on fuzzy
fuzzy sets
sets A
A and
and B.
B.
ORB)B)==max
(A(AOR max(µ(A),
(µ(A),µ(B))
µ(B)) (11)
(11)
The
The complement
complement or
or NOT
NOT operator
operator of
of aa set
set indicates
indicates its
its negation,
negation, i.e.,
i.e.,
µ(NOT A) = 1 − µ(A) (12)
µ(NOT A) = 1 − µ(A) (12)
A list of the main set operations and their properties is included in Appendix A. The
A list ofoperation
inferencing the main set in operations
a fuzzy logicand their
modelproperties
requiresis adaptation
included in of Appendix A. The
the domain’s
inferencing operation
knowledge in a fuzzy
that is typically logic model
formulated by requires
a series of adaptation
IF-THENofstructured
the domain’s knowledge
rules. The IF-
that is typically
THEN rules allow formulated by a series
the formulation of IF-THEN
of conditional structured
statements forrules.
a fuzzy The IF-THEN
logic model.rules
The
allow the formulation of conditional statements for a fuzzy
domain knowledge can be gained from an expert or by experimentation. A rule is logic model. The domain
“acti-
knowledge
vated” can be gained
(or “fired”) when its from an expert
inputs or byi.e.,
conditions, experimentation. A rule
its IF part (or the is “activated”
antecedent) (or
are satis-
“fired”) when its
fied, resulting ininputs conditions, i.e., of
the implementation its the
IF part (or THEN
rule’s the antecedent)
part (i.e.,are
thesatisfied, resulting
consequence or
in the implementation of the rule’s THEN part (i.e., the consequence
conclusion part). Given the fuzzy sets A, B and C, a fuzzy rule could be expressed as: or conclusion part).
Given IFthe
x ∈fuzzy y ∈ A,
A andsets B and C,
B THEN z ∈a C.
fuzzy rule could be expressed as:
IF x ∈ A
For example, and y ∈ B THEN z ∈ C.
For example,
IF Speed High AND Distance Small THEN Severity High.
IF Speed
For High AND
the above Distance
rule, for the IFSmall
part,THEN
“High” Severity High.a fuzzy set for Speed and
represents
For the above rule, for the IF part, “High”
“Small” represents a fuzzy set for Distance and in the THEN represents a fuzzypart,
set for Speedrepresents
“High” and “Small” a
represents
fuzzy set fora fuzzy
the carsetaccident
for Distance and in the THEN part, “High” represents a fuzzy set for
Severity.
the car accident Severity.
2.3. Fuzzy Inference System (Mamdani-Type)
2.3. Fuzzy Inference System (Mamdani-Type)
In this section, the focus is on the Mamdani-type fuzzy inference system (FIS) due to
In this section, the focus is on the Mamdani-type fuzzy inference system (FIS) due to
its
its popularity. A
popularity. A FIS
FIS has
has four
four main
main elements as shown
elements as shown in
in Figure
Figure 12.
12.
Information 2024, 15, 656 8 of 24
Information 2024, 15, 656 8 of 24
Information 2024,
Information 2024, 15, 656 8 8ofof 24
24
Figure 13. The fuzzy sets for the distance input to the FIS.
Figure13.
Figure Thefuzzy
13.The fuzzysets
setsfor
forthe
thedistance
distanceinput
inputto
tothe
theFIS.
FIS.
Figure 13. The fuzzy sets for the distance input to the FIS.
Figure
Figure 14.
14. The
The fuzzy
fuzzy sets
sets for
for the
the severity
severity of
of car
car accident.
accident.
Figure 14. The fuzzy sets for the severity of car accident.
Figure 14. The fuzzy sets for the severity of car accident.
Information 2024, 15, 656 9 of 24
Information 2024, 15, 656 9 9of
of 24
For
For anan illustrative
illustrative purpose,
purpose, only two rules are considered:
For an illustrative purpose, only only two
two rules
rules are
are considered:
considered:
Rule 1:
Rule 1: IF
1: IF Speed
IF Speed
Speed Low Low
Low ANDAND Distance
AND Distance Large
Distance Large THEN
Large THEN Severity
Severity Minor.
Minor.
Rule
Rule 2: IF Speed High OR Distance Small THEN
THEN Severity
Severity Minor.
Major.
Rule 2: IF Speed High OR Distance Small
Rule 2: IF Speed High OR Distance Small THEN Severity Major. THEN Severity Major.
The
The minimum
minimum (min) (min) and and maximum
maximum (max) (max) descriptors
descriptors are are used
used to to implement the
AND The
and minimum
OR operators,(min) and maximum
respectively. It is (max)
possible descriptors
to give a are
unique used to implement
weighing implement
to each
the
the
rule
AND
AND and
and OR OR operators,
operators, respectively.
respectively. It is possible
It is possible to
to givegive a
a unique unique weighing
weighing to
to each each
rule
to indicate
rule their
to indicate significance
their to the to
significance overall FIS output(s)
the overall relative
FIS output(s) to the
relative other
to therules.
otherIn this
rules.
to indicate
example, their
both significance
rules have an to the
equal overall
weightingFIS output(s)
(i.e., relative
weighting = to
1).the
If other
a rule rules.
has a In this
firing
In this example,
example, both bothhave
rules rulesanhaveequalan weighting
equal weighting(i.e., (i.e., weighting
weighting = 1). If =a1). If a
rule rule
has a has a
firing
strength of 0, it does
firing strength of 0, not
it affect
does notthe FIS output(s).
affect AssumingAssuming
the FIS output(s). the inputsthe to the FIS are
inputs to Speed
the FIS
strength
=are
15Speed
mph andof 0, it does not affect the FIS output(s). Assuming the inputs to the FIS are Speed
(15)
𝜇 executed, =
= 15Distance
mph and = 80 m, as shown
Distance = 80 m, inasFigure
shown 15,in
when
Figurerule 15,1 is executed,
when rule 1 is (15) =
= 15and
mph and Distance = 80As m, as shown in Figure 15,part
when rule 1 the
is executed, 𝜇 value
µ Low (15)𝜇= 0.5(80)
0.5 and = 0.8.
µ Large ( 80)the
= operator
0.8. As theinoperator
the IF is AND,
in the IF part is AND,minimum the minimum be-
0.5 and 𝜇 (80) = 0.8. As the operator in the IF part is AND, the minimum value be-
tween 0.5 and 0.8,
value between 0.5 i.e.,
and 0.50.8,isi.e.,
selected. The value
0.5 is selected. Theof value
0.5 is of
then
0.5used
is thento used
reshape the output
to reshape the
tween
fuzzy 0.5
set and
for 0.8,
rule i.e.,
1, i.e.,0.5
the isMinor
selected. Theset.
fuzzy value
This ofoperation
0.5 is thenisusedcalled toimplication.
reshape the The outputre-
output fuzzy set for rule 1, i.e., the Minor fuzzy set. This operation is called implication.
fuzzy
shaped set for rule
outputoutput 1, i.e.,
fuzzy set the Minor
is shown fuzzy set.
as a dashed This operation
read area is called implication. The re-
The reshaped fuzzy set is shown as a dashed readinarea
Figure 15. 15.
in Figure
shaped output fuzzy set is shown as a dashed read area in Figure 15.
Figure
Figure 15.
15. Determining
Determining rule
rule 11 firing
firing strength
strength through
through the
the implication
implication operation.
operation.
Figure 15. Determining rule 1 firing strength through the implication operation.
To perform implication
To perform implicationfor forrule
rule2, 2,
thethe operator
operator in IF
in its itspart
IF part is OR.
is OR. For speed
For speed = 15
= 15 mph,
µ HighTo
mph, (𝜇15perform
) =(15) =implication
0 and 0for
anddistancefor =rule 2, the
80 m,
for distance=80 m,operator
the the
µ 𝜇
Small ( 80in
) its0.IF
(80)
= = part
0.
As isshown
shown
As OR.inFor speed
Figure
in 16,
Figure =the
15
16,
mph, 𝜇
implication (15) =
process 0 and for
results distance=80
in in
thethefuzzy m, the 𝜇 (80) = 0. As shown in Figure 16,
the implication process results fuzzysetsetMajor,
Major,associated
associatedwithwithSeverity
Severity of car
of the car
the implication
accident,
accident, to be
to process results
be reshaped
reshaped to zeroin
to zero the fuzzy
along
along set Major,
the horizontal
the horizontal associated
axis.
axis. Therefore,
Therefore,with Severity
rule
rule 22 does of
notthe
does not car
affect
affect
accident,
outputtoof
the output
the ofbethe
reshaped
the to zero
FIS as the rule’salong
firingthe horizontal
strength axis. Therefore, rule 2 does not affect
is zero.
the output of the FIS as the rule’s firing strength is zero.
Figure 16.
Figure Determining rule
16. Determining rule 22 firing
firing strength
strength through the implication operation.
Figure 16. Determining rule 2 firing strength through the implication operation.
The FIS
The FIS decisions
decisions require
require consideration
consideration of of all
all rules.
rules. This
This involves
involves aa process
process called
called
aggregation whereby the output fuzzy sets following their implication process arecalled
The
aggregationFIS decisions
whereby the require
output consideration
fuzzy sets of
followingall rules.
their This involves
implication a
process process
are combined
com-
aggregation
into a into
bined single whereby
fuzzy
a single set. the
fuzzy output
Thus,
set. fuzzy
the inputs
Thus, sets
of thefollowing
the inputs aggregation their implication
process
of the aggregation are theprocess
process reshaped
are areoutput
com-
the reshaped
bined
output into
membership a single fuzzy
functions
membership set.
returned
functions Thus, the inputs
after theafter
returned of the
implication aggregation
process for
the implication process
each for
process are
rule. the
Three
each reshaped
possible
rule. Three
output membership
aggregation methods functions
are [14]: returned
possible aggregation methods are [14]: after the implication process for each rule. Three
possible aggregation methods are [14]:
Information
Information2024,
2024,15,
15,656
656 10 of 24
10 of 24
•• Maximum
Maximum (max)
(max)
•• Probabilistic
Probabilistic OR
OR (probor)
(probor)
•• Summation
Summation (sum,
(sum, the
the sum
sum of
of the
the rules
rules aggregated
aggregated sets).
sets).
As
Asshown
shownin inFigure
Figure17,
17,the
theaggregation
aggregationof
ofthe
therules’
rules’output
outputsets
setsusing
usingthe
thesummation
summation
method
method is the shaded area of the Minor fuzzy set associated with the Severity of thethe
shaded area of the Minor fuzzy set associated with the Severity of acci-
accident
dent as rule 2 does not affect the FIS
as rule 2 does not affect the FIS output.output.
Figure17.
Figure Aggregated output
17. Aggregated output membership
membership functions
functions following the implication operation (the (the green
green plot1%
plot from from 1% tois40%
to 40% is associated
associated with
with rule rulered
1, the 1, the
linered line
from from
60% 60% to
to 100% is 100% is associated
associated with rule 2).
with rule 2).
Defuzzification element: The output(s) of the FIS is crip because the value(s) may need
to beDefuzzification
used to control a device
element: Theoroutput(s)
be interpreted numerically.
of the FIS The defuzzification
is crip because process
the value(s) may need
converts
to be usedthe
to aggregated fuzzy or
control a device setbe
associated with
interpreted each outputThe
numerically. to adefuzzification
crisp (numerical) value.
process
There arethe
converts multiple defuzzification
aggregated methods that
fuzzy set associated withinclude [15]: to a crisp (numerical) value.
each output
There
• are multiple
Centroid defuzzification
(centre of gravity) methods that include [15]:
•• Bisector
Centroid (centre of gravity)
•• Bisector
Middle of maximum (the average of the maximum value of the output set),
•• Largestof
Middle ofmaximum
maximum(the average of the maximum value of the output set),
•• Largest
Smallestofofmaximum
maximum.
• Smallest of maximum.
The centroid defuzzification method is widely used in numerous applications. It
determines the centre
The centroid of the area under
defuzzification methodtheisaggregated
widely usedfuzzy set. Its output
in numerous (y, i.e., the
applications. FIS
It de-
output) for a non-smooth aggregated set is
termines the centre of the area under the aggregated fuzzy set. Its output (y, i.e., the FIS
output) for a non-smooth aggregated set is
∑ µ( x ) x
y = i∑ (i ) i (13)
𝑦 =∑i µ( xi ) ∑ ( )
(13)
where µ( x ) is the degree of membership value for point x in U.
where 𝜇(𝑥i ) is the degree of membership value for point xi i in U.
2.4. Adaptive Neuro-Fuzzy Inference System
2.4. Adaptive Neuro-Fuzzy Inference System
Although FIS is a valuable tool for performing reasoning in a linguistic form, it does
Although
not have FIS is to
the ability a valuable
learn from tool for performing
examples and thus reasoning in a linguistic
automatically adapt itsform, it does
parameters.
not have the ability to learn from examples and thus automatically adapt
On the other hand, artificial neural networks (ANNs) have a learning capability through its parameters.
On the other
training hand,aartificial
but have limitation neural
that networks
can behave (ANNs) have abox,
like a black learning capability
i.e., they do notthrough
provide
training but reasoning
transparent have a limitation
for their that can behave
decisions. like a black
By combining box,and
the FIS i.e.,ANNs,
they dothenot provide
strengths of
transparent reasoning
the two artificial for theirtechniques
intelligence decisions. complement,
By combiningresulting
the FIS and
in aANNs,
powerfulthetool
strengths
called
of the twoneuro-fuzzy
adaptive artificial intelligence
inferencetechniques complement,
system (ANFIS) [16]. Forresulting in a powerful
completeness, tool called
a brief introduction
adaptive neuro-fuzzy inference system (ANFIS) [16]. For completeness,
to ANNs is included to help understanding of ANFIS. A basic ANN architecture a brief introduc-
is the
tion to ANNs is included to help understanding of ANFIS. A basic ANN
perceptron [17]. Like other ANNs, a perceptron consists of several interconnected nodes architecture is
the
alsoperceptron [17]. Like elements
known as processing other ANNs, a perceptron
or neurons. A node consists
making upof the
several interconnected
perceptron is shown
nodes also18.
in Figure known as processing elements or neurons. A node making up the perceptron
is shown in Figure 18.
Information 2024, 15, 656 11 of 24
Information 2024, 15, 656 11 of 24
Information 2024, 15, 656 11 of 24
Figure 18. A node forming a part of perceptron artificial neural network, xi (i = 1, …, k) are the inputs,
Figure
𝜔 (i = 1, 18.…, A node forming a part of perceptron artificial
∑ isartificial network, xi (i T=is
neuralfunction, k) are the inputs,
1, . . .,transfer
Figure 18. Ak) are the
node connections’
forming a part ofweights,
perceptron the summing
neural network,and
xi (i = 1, the
…, k) are thefunction
inputs,
𝜔(also
ω (i = 1,
i (i =known. . .,
1, …, k)as k) are
arethe the connections’
theactivation weights,
function).
connections’ ∑ is the summing function, and T is the transfer
weights, ∑ is the summing function, and T is the transfer function function
(also known
(also known as as the
the activation
activation function).
function).
Its k inputs are x1, x2, …, xk, and there is a connection weight (𝜔 ) associated with each
(ikk=inputs
Its
inputIts inputs
1, …, k). are
are x1x,1x,output
The x2 , . . ., and
2, …, xk,of
xk,the andnode
there there is a connection
isisa determined
connection weight
by initially
weight (ωi ) associated
combining
(𝜔 ) associated with
its inputs
with each
each input
with the (i = 1,
associated . . ., k). The output of the node is determined by initially combining its
input (i = 1, …, k). Theconnection
output of the weights
node is (that are initially
determined chosencombining
by initially as randomitsvalues), inputs
inputs
providingwith the associated
a sum (s), i.e., connection weights (that are initially chosen as random values),
with the associated connection weights (that are initially chosen as random values),
providing a sum (s), i.e.,
providing a sum (s), i.e.,
s𝑠==∑∑i=1 ω𝜔 𝑥
k (14)
i xi (14)
The output
𝑠 = ∑ 𝜔 𝑥 (14)
The output of ofthe thenodenode(y) (y)isisdetermined
determined byby mapping
mapping s using
s usinga transfer
a transferfunction (ac-
function
tivation
The function).
(activation output of For
function). theFor a sigmoid
node (y) is transfer
a sigmoid determined
transferfunctionby mapping s using a transfer function (ac-
function
tivation function). For a sigmoid transfer function
𝑦= 1 ( ) (15)
y= (15)
𝑦= 1+e − a ( s
(
− b )
)
(15)
where 𝑎 determines the sigmoid’s slope at the crosspoint x = b and e is a mathematical
where
constant
where 𝑎
a determines
determines the
approximately sigmoid’s
theequal slope
to 2.71828.
sigmoid’s slopeA atsigmoid
the crosspoint activation x =function
b and e is shown mathematical
in Figure
a mathematical
constant
8.
constant approximatelyequal
approximately equal to to 2.71828.
2.71828. A sigmoid
A sigmoid activationactivation
function function
is shown is shown
in Figure in
Figure
8. The 8. perceptron is a supervised learning ANN, i.e., it requires its inputs to be associ-
The
ated The perceptron
withperceptron
provided labels is
is aasupervised learning
(i.e., the identity
supervised learning ANN,
of i.e.,
the inputs,
ANN, i.e.,it it
requires
also itsits
known
requires inputs
as to be
desired
inputs to associated
values
be or
associ-
with
ated provided
targets)
withduring labels
provided (i.e.,
its training. the
labels (i.e., identity
To theconvert of
identitythe
a nodeinputs,
of the also
to ainputs, known
perceptron, as desired
a learning
also known values
mechanism
as desired or targets)
values and
or
during
targets) its
an ability training.
to
during determine To convert
its training. howTo well aconvert
node toa anode
it is learningperceptron,
during a learning
its
to a perceptron, mechanism
traininga (i.e., and an ability
a performance
learning mechanism meas-
and
to
an determine
urement
ability how P)
element,
to determine well are itintegrated
how is well
learning during its
it isresulting
learning intraining
a structure
during (i.e.,shown
its training a performance
inaFigure
(i.e., measurement
19.
performance meas-
element, element,
urement P) are integrated resultingresulting
P) are integrated in a structure shown inshown
in a structure Figure in 19.Figure 19.
𝑒𝑟𝑟𝑜𝑟 = 𝑑 − 𝑦 (16)
The learning
learning algorithm
algorithm updates
updates the
the weight
weight by
by [18]
[18]
ANFIS is a feedforward network consisting of five layers [20]. The ANFIS architecture
ANFIS is a feedforward network consisting of five layers [20]. The ANFIS architec-
in Figure 20 has two inputs (x and y) and an output (f ). Its layers are either adaptive with ad-
ture in Figure 20 has two inputs (x and y) and an output (f). Its layers are either adaptive
justable parameters (shown as squares in Figure 20) or fixed nodes (represented by circles in
with adjustable parameters (shown as squares in Figure 20) or fixed nodes (represented
Figure 20) with fixed parameters. The ANFIS operation could be illustrated by considering
by circles in Figure 20) with fixed parameters. The ANFIS operation could be illustrated
two fuzzy IF-THEN rules based on the first-order Sugeno fuzzy inference [16,20]:
by considering two fuzzy IF-THEN rules based on the first-order Sugeno fuzzy inference
[16,20]: Rule 1: IF x is A AND y is B THEN f = p x + q y + r
1 1 1 1 1 1
Rule 1: IF x is A1 AND y is B1 THEN f1 = p1x + q1y + r1
Rule 2: IF x is A2 AND y is B2 , THEN f 2 = p2 x + q2 y + r2
Rule 2:
where Ai and Bi are fuzzy IF (ix =
sets is 1,
A22AND
is the yfuzzy
is B2,rule
THEN f2 = and
index) p2x +fiq(i2y=+1,2)
r2 are the outputs
of the fuzzy rules, pi , qi , and ri are the ANFIS adaptive parameters that are determined
where Ai and Bi are fuzzy sets (i = 1, 2 is the fuzzy rule index) and fi (i = 1,2) are the outputs
during its training. Each layer of the ANFIS has a unique function as described next.
of the fuzzy rules, pi, qi, and ri are the ANFIS adaptive parameters that are determined
Layer 1: The adaptive nodes in layer 1 perform fuzzification of the ANFIS crip inputs
during its training. Each layer of the ANFIS has a unique function as described next.
to provide outputs (Oi1 ) representing degrees of memberships for the fuzzy sets Ai (i = 1, 2),
Layer 1: The adaptive nodes in layer 1 perform fuzzification of the ANFIS crip inputs
i.e., µAi ( x ) and for the fuzzy sets Bi−2 (i = 3, 4), i.e., µBi−2 (y), where i is the node’s
to provide outputs (𝛰 ) representing degrees of memberships for the fuzzy sets Ai (i = 1,
index. For the Gaussian membership function with adjustable parameters ai and bi , the
2), i.e., 𝜇𝐴 (𝑥) and for the fuzzy sets Bi−2 (i = 3, 4), i.e., 𝜇𝐵 (𝑦), where i is the node’s index.
outputs are
For the Gaussian membership function with adjustable parameters 𝑎 and 𝑏 , the outputs
are x −b 2
−0.5( a i )
1
Oi = µAi ( x ) = e i i = 1, 2 (18)
. (18)
𝛰 = 𝜇𝐴 (𝑥) = 𝑒 2
y − bi i = 1, 2
−0.5( )
Oi1 = µBi−2 (y) = e ai
i = 3, 4 (19)
.
Layer 2: This layer uses𝛰fixed parameters
= 𝜇𝐵 (𝑦) = 𝑒 (represented i = 3,by4 circles π in Figure 20)(19)
to
implement AND operation and computes the firing strengths of the rules. The outputs of
Layer(ω2:, This layer uses fixed parameters (represented by circles π in Figure 20) to
this layer i i = 1, 2) are the products of the layer’s inputs, i.e.,
implement AND operation and computes the firing strengths of the rules. The outputs of
this layer (𝜔 , 𝑖 = 1, 2) are the
Oi2 products
= ωi = µAofi (the layer’s
x) × µBi (yinputs,
) i = 1,i.e.,
2 (20)
Information 2024, 15, 656 13 of 24
Layer 3: This layer consists of fixed nodes to normalise the data. The ith node output
(Oi3 , i = 1, 2) indicates the ratio of ith rules firing strength (ωi ) to the sum of the firing
strengths of all rules.
ω
Oi3 = ωi = 2 i i = 1, 2 (21)
∑ k =1 ω k
Layer 4: The adaptive nodes in layer 4 provide outputs (Oi4 , i = 1, 2) that are the
product of the normalised firing strength ( ωi ) and the first order polynomial of its inputs,
i.e.,
Oi4 = ωi f i = ωi [ pi ( x ) + qi (y) + ri ] i = 1, 2 (22)
Layer 5: The final layer consists of a fixed node that provides the sum of its incoming
data. The output of this node is
2
f = O5i = ∑ i =1 ωi f i (23)
ANFIS uses a hybrid learning algorithm based on the combination of gradient descent
and least squares methods [20] and involves multiple iterations consisting of forward passes
and backward passes. During the forward pass, the premise parameters (i.e., ai , bi ) of the
second layer are kept constant while the consequent parameters pi , qi and rj associated with
the fourth layer are updated using the least square method. During the backward pass, the
consequent parameters determined from the previous iteration are kept constant and the
premise parameters are updated using the gradient descent method [20].
∑iN=1 µijm × xi
vj = j = 1, 2, . . . , C (24)
∑iN=1 µijm
Information 2024, 15, 656 14 of 24
1
µij = 2 i = 1, 2, . . . , N, j = 1, 2, . . . , C (25)
m −1
∥ xi − v j ∥
∑C
k =1 ∥ xi − v k ∥
iii. Determine µt − µt−1 , i.e., the magnitude of change in the degrees of membership
between the current and previous iteration.
iv. If µt − µt−1 < ε, the algorithm iteration is terminated (i.e., training is completed)
otherwise t is incremented by 1 and the iteration is continuous from step (i).
3. Results
Fuzzy logic has been applied to a broad range of problems associated with process
control, object recognition, image and signal processing, prediction, classification, decision-
making, optimisation and time series analysis [13]. In this section, an overview of some
fuzzy logic developments is provided. The section also includes the implementation aspects
of fuzzy logic models.
the palm oil refining process. Adaptivity in learning and facilitating mobility in the manner
of learning was achieved by incorporating an ANFIS [41].
used to improve operations in edge computing [58]. In video transmission, QoS is reflective
of the communication traffic (e.g., the time taken for a data packet to arrive at a destination
and the proportion of packet lost during transmission) while quality of experience (QoE)
is indicative of the user’s perception of the quality of the received images (e.g., the extent
of noise and image distortion). A modular fuzzy logic system that determined the QoS
and QoE of videos in wireless computer networks was developed and its performance was
successfully evaluated [59]. Fuzzy control has proved effective in dealing with non-periodic
denial of service attacks [60].
The Internet of Things (IoT) represents a network of devices with technologies that
allow communication between themselves as well as the cloud. IoT has benefited from
adapting fuzzy logic techniques. These included a fuzzy model for IoT information secu-
rity evaluation [61], a secure intelligent fuzzy blockchain framework for effective threat
detection in IoT networks [62], a fuzzy description logic-based IoT framework that allows
users to build their IoT applications according to their needs [63], an activity recognition
for IoT devices using fuzzy spatio-temporal features [64] and a fuzzy logic controller for
distributed IoT gateway to manage input uncertainties [65]. ANFIS models were also
found effective for IoT-related applications. For example, an ANFIS was used to regulate
multipath congestion in IoT [66], an intelligent fire warning application was devised using
a combination of IoT and ANFIS [67], a lung cancer detection and prediction model was
reported that uses an ANFIS and Internet of Medical Things (IoMT) [68], and an ANFIS
was devised to minimize higher-order harmonics due to nonlinear load disturbances in
smart IoT devices [69].
simple to be general and focus on the implementation aspects rather than on a specific
application. The rules are:
Rule 1: If Speed High AND Distance Small THEN Severity Major.
Rule 2: If Speed Low AND Distance Large THEN Severity Minor.
Rule 3: If Speed Medium AND Distance Medium THEN Severity Moderate.
For this purpose, the Matlab Fuzzy Logic Designer [92] was used as it allowed a
graphic user interface (GUI) method of FIS implementation; however, it is also possible
to implement fuzzy logic models using Matlab’s scripting and Simulink [92]. The Matlab
Fuzzy Logic Designer has five GUI widows [92]:
• Fuzzy Logic Designer’s Main Window: This window allows the overall FIS model to be
viewed, its input(s) and output(s) to be named, their ranges specified, and the FIS
operational parameters such as implication, aggregation, and defuzzification methods
to be selected from a range of possible options.
• Membership Function Editor: This window allows the types and parameters of the
input(s) and output(s) fuzzy sets to be defined by selecting amongst 13 different
membership functions.
• Rule Editor: This window provides an easy approach to defining the rules associated
with the FIS model. The operators ‘AND’ and ‘OR’ are available to construct com-
plex rules. It also allows the rules to have a weighting to control the level of their
significance to the FIS output in relation to other rules.
• Rule Viewer: This window allows the user to select the values of the inputs to the FIS
and determine and observe the FIS output(s).
• Surface View: This window provides a 3-dimensional surface view relating any two
selected inputs to the FIS and one of its outputs.
The FIS can be implemented by typing ‘fuzzy’ from the Matlab [6] command line. This
results in the display of the Fuzzy Logic Designer GUI window showing a FIS with a single
input (called input1) and single output (called output1). From this window
• A single click on input1 allows its name to be changed to Speed.
• From the window’s Edit menu, followed by Add variables, then Input, a second input
can be added to the FIS model, and its name can be changed to Distance.
• By clicking on output1, its name can be changed to Severity.
• The FIS parameters can be set as:
• Operators for the rules: AND (Minimum, min), OR (Maximum, max)
• Implication method: (Minimum, min)
• Aggregation method: Sum
• Defuzzification method: Centroid
• FIS type: Mamdani
From the Fuzzy Logic Designer window, a double click on the input Speed opens
the related Membership Function Editor window. The default membership functions are
triangular. The range can be set as 1 to 60 (mph). By clicking the individual membership
functions, their names and parameters can be set to those shown in Figure 2. It is also
possible to move the membership functions to the desired locations by pointing a mouse
at them. The second input (Distance) and output (Severity) parameters can similarly
be defined (following Figures 13 and 14, respectively) except for the output trapezoidal
membership functions should be selected.
From the Fuzzy Logic Designer window, by clicking on the Edit icon followed by Rules,
the Rule Editor window is displayed, and the associated rules can be entered. From the
Fuzzy Logic Designer window, selecting the View icon allows the Rule Viewer window to be
displayed as shown in Figure 21. The two columns on the left of the figure are the inputs to
the FIS, i.e., Speed and Distance, and the column to the right (shown in blue) of the figure is
the output of the FIS, i.e., the car accident severity (Severity). The red line on the two inputs
can be moved to the user’s desired values. For the desired inputs, the car accident severity
Fuzzy Logic Designer window, selecting the View icon allows the Rule Viewer window to be
Fuzzy Logic Designer window, selecting the View icon allows the Rule Viewer window to be
displayed as shown in Figure 21. The two columns on the left of the figure are the inputs
displayed as shown in Figure 21. The two columns on the left of the figure are the inputs
Information 2024, 15, 656 to the FIS, i.e., Speed and Distance, and the column to the right (shown in blue) of18the
to the FIS, i.e., Speed and Distance, and the column to the right (shown in blue) ofofthe 24
figure is the output of the FIS, i.e., the car accident severity (Severity). The red line on the
figure is the output of the FIS, i.e., the car accident severity (Severity). The red line on the
two inputs can be moved to the user’s desired values. For the desired inputs, the car acci-
two inputs can be moved to the user’s desired values. For the desired inputs, the car acci-
dent
in severity inispercentage
percentage is determined andFor
displayed. For example, when=the Speed =
dent severity indetermined
percentage isand displayed.
determined example,
and displayed. when the Speed
For example, when40the
mph and
Speed =
40the
mph and
Distance the
= Distance
40 m, the = 40 m,
severity the
of severity
the car of the
accidentcar
is accident
indicatedis
asindicated
60.2% as 60.2%
40 mph and the Distance = 40 m, the severity of the car accident is indicated as 60.2%
Figure 21. Matlab rule viewer window for the 3 rules. The two columns on the left of the figure
Figurein21.
Figure
(shown 21. Matlab
Matlab
yellow) rule
arerule viewerwith
viewer
associated window
window for the
for
the inputs the 33rules.
(i.e. rules. The
SpeedThe two
andtwo columns
columns
Distance) onFIS
on
to the theand
the leftthe
left ofthe
of thefigure
figure
column
(shownininyellow)
(shown yellow)are
areassociated
associatedwith
withthe
theinputs
inputs(i.e.,
(i.e.Speed
Speedand
andDistance)
Distance)to tothe
theFIS
FISand
andthethecolumn
column
on the right (shown in blue) is associated with the output (Severity) of the FIS model.
onthe
on theright
right(shown
(shownininblue)
blue)isisassociated
associatedwith
withthetheoutput
output(Severity)
(Severity)ofofthe
theFIS
FISmodel.
model.
From the Fuzzy Logic Designer window, by clicking on the View icon followed by Sur-
From the
From the Fuzzy Logic
Logic Designer window,
Designerin window, bybyclicking
clickingononthethe
View iconicon
View followed by Sur-
face, the 3-dimensional plot shown Figure 22, relating the two inputs andfollowed
output, isby
face, thethe
Surface, 3-dimensional plot shown ininFigure 22, relating the two inputs andand output,
output, is
displayed. The figure indicates that as speed increases and distance decreases, the severityis
3-dimensional plot shown Figure 22, relating the
displayed.The
displayed. Thefigure
figureindicates
indicatesthat
thatas
asspeed
speedincreases
increasesandanddistance
distancedecreases,
decreases,the
theseverity
severity
of car accidents increases.
ofcar
of caraccidents
accidentsincreases.
increases.
Figure 22. Matlab surface viewer window for the three rules.
Figure 22. Matlab surface viewer window for the three rules.
Figure 22. Matlab surface viewer window for the three rules.
4. Discussion
The field of fuzzy logic has greatly progressed in theories, concepts and industrial
applicability. Its evolution has been further accelerated by the realization of capabilities and
innovations in hybrid techniques. Integration of deep learning and fuzzy logic can facilitate
imprecision handling while allowing complex learning capabilities [93]. For example,
hybrid fuzzy logic and deep learning allowed remote English translation [94], diagnosis
The field of fuzzy logic has greatly progressed in theories, concepts and industrial
applicability. Its evolution has been further accelerated by the realization of capabilities
and innovations in hybrid techniques. Integration of deep learning and fuzzy logic can
Information 2024, 15, 656 facilitate imprecision handling while allowing complex learning capabilities [93]. For ex-
19 of 24
ample, hybrid fuzzy logic and deep learning allowed remote English translation [94], di-
agnosis of skin cancer [95] and image classifications [96]. Fuzzy logic has been integrated
with
of skingenetic
canceralgorithms (GAs) classifications
[95] and image providing an improved
[96]. Fuzzy optimization
logic has been capability. For exam-
integrated with
ple, the integration of fuzzy logic and GAs proved effective in engineering
genetic algorithms (GAs) providing an improved optimization capability. For example, the applications
[97]. Hybrid
integration ofmetaheuristic
fuzzy logic and optimisation
GAs provedmethods
effectivewere explored to
in engineering forecast energy
applications carbon
[97]. Hybrid
dioxide emissions [98]. A self-organising fuzzy classifier proved
metaheuristic optimisation methods were explored to forecast energy carbon dioxide effective in diagnosing
Alzheimer’s
emissions disease
[98]. [99]. Fuzzyfuzzy
A self-organising logic classifier
controllers’ stability
proved analysis
effective and design
in diagnosing can be im-
Alzheimer’s
proved [99].
disease by theFuzzy
introduction of model-based
logic controllers’ control.
stability These
analysis and proved
designvaluable in the fieldby
can be improved of
networked control systems [100]. A fuzzy adaptive fixed-time sliding
the introduction of model-based control. These proved valuable in the field of networked mode control tech-
nique was
control reported
systems [100].for
A trajectory
fuzzy adaptive tracking of a class
fixed-time of high-order
sliding mode control non-linear
technique systems
was
[101].
reported for trajectory tracking of a class of high-order non-linear systems [101].
AA convenient
convenient manner
manner to to implement
implement fuzzyfuzzy logic
logic models
models is is by
by using
using the
the Matlab
Matlab FuzzyFuzzy
Logic Toolbox
Logic Toolbox [92].
[92]. Its
Its user
user guide
guide [92]
[92] provides
provides descriptions
descriptions of various means of imple-
menting fuzzy
menting fuzzy logic
logic models,
models, including
including models
models based
based onon its
its Simulink.
Simulink. An An FIS-based
FIS-based waterwater
level control
level control is
is implemented
implemented by by the
the toolbox
toolbox allowing
allowing thethe user
user toto indicate
indicate aa desired
desired water
water
level. There
level. Thereisisalso
alsoananexample
example ofof fuzzy
fuzzy logic-based
logic-based automatic
automatic car car parking.
parking. The The toolbox
toolbox has
has several applications of ANFIS. A typical application is the modelling
several applications of ANFIS. A typical application is the modelling of inverse kinematics of inverse kine-
matics
in in a arm
a robotic robotic arm (Figure
(Figure 23). Kinematics
23). Kinematics is theofstudy
is the study motion of of
motion of without
objects objects without
consid-
considering
ering the that
the forces forces that in
result result
theirinmovement
their movement while inverse
while inverse kinematics
kinematics is the pro-
is the process of
cess of determining
determining jointfrom
joint angles angles from coordinates
known known coordinates
of an end of effector.
an end effector.
An
An ANFIS
ANFIS was was used
used to
to determine
determine the
the joint’s
joint’s angles
angles θ𝜃1 (i.e.,(i.e., the
the angle
angle between
between thethe
position of the arm 1 and the ground) and the joint’s angle (i.e., the
position of the arm 1 and the ground) and the joint’s angle 𝜃 (i.e., the angle between
θ 2 angle between arm
arm2
and arm 1) for the end effector in the two-joint robotic arm, shown in Figure
2 and arm 1) for the end effector in the two-joint robotic arm, shown in Figure 23, to move 23, to move to
atopre-defined
a pre-defined x-yx-y
coordinate
coordinate[92]. ToTo
[92]. achieve
achievethis,
this,initially,
initially,forward
forwardkinematics
kinematicsformulae
formulae
were determine the end effector coordinate (x1 , y
were used to determine the end effector coordinate (x1, y1) for different values of1 and
used to 1 ) for different values of θ 𝜃 andθ2 .
The resulting
𝜃 . The dataset
resulting was then
dataset used used
was then as part
asofpart
reverse kinematics
of reverse to traintoantrain
kinematics ANFIS (using
an ANFIS
the Matlab function anfis [92]) to learn to determine θ1 and θ2 for a desired end effector
(using the Matlab function anfis [92]) to learn to determine 𝜃 and 𝜃 for a desired end
x-y coordinate. The associated Matlab code and further explanations can be found in [92].
effector x-y coordinate. The associated Matlab code and further explanations can be found
Other ANFIS applications implemented in [92] include a chaotic time-series prediction and
in [92]. Other ANFIS applications implemented in [92] include a chaotic time-series
an adaptive noise cancellation method. There are also several implemented applications of
fuzzy c-means such as clustering quasi-random data.
Developments in deep learning techniques [102–104] have created opportunities for
their integration with fuzzy logic [96], facilitating complex problems to be tackled effectively
and opening opportunities for further research and development.
Information 2024, 15, 656 20 of 24
5. Conclusions
The operations of main fuzzy logic techniques, i.e., fuzzy inference system, adaptive
neuro-fuzzy inference system and fuzzy c-means, were explained and an exploration of
developments in the field was carried out. Approaches to implement fuzzy logic models
were outlined. The article was prepared in such a way as to allow a broad readership.
Although fuzzy logic is a well-established field, there remain numerous development
and application opportunities. An exciting area is hybrid systems, where fuzzy logic
techniques are combined with one or more other artificial intelligence techniques such as
deep learning, robotics, and genetic algorithms, thus providing a greater problem-solving
capability. There are also numerous opportunities to use fuzzy logic as part of embedded
systems and devise solutions for their optimum adaptation to integrated circuits.
References
1. Mossakowski, T.; Goguen, J.; Diaconescu, R.; Tarlecki, A. What Is Logic? Beziau, J.-Y., Ed.; Logica Universalis, Birkhӓuser Verlag:
Basel, Switzerland, 2006; pp. 113–135.
2. Zadah, L.A. Fuzzy sets. Inf. Control. 1965, 8, 338–353. [CrossRef]
3. Zadah, L.A. Is there a need for fuzzy logic? Inf. Sci. 2008, 178, 2751–2779. [CrossRef]
4. Zadeh, L.A. Fuzzy logic, neural networks, and soft computing. Commun. ACM 1994, 37, 77–84. [CrossRef]
5. Chen, T.; Karimov, I.; Chen, J.; Constantinovitc, A. Computer and fuzzy theory application: Review in home appliances. J. Fuzzy
Ext. Appl. 2020, 1, 133–138.
6. Matlab, Mathworks®, Version R2024a. Available online: https://uk.mathworks.com/help/ (accessed on 4 October 2024).
7. Jain, A.; Sharma, A. Membership function formulation methods for fuzzy logic systems: A comprehensive review. J. Crit. Rev.
2020, 7, 8717–8733.
8. Pancardo, P.; Hernández-Nolasco, J.A.; Wister, M.A.; Garcia-Constantino, M. Dynamic membership functions for context-based
fuzzy systems. IEEE Access 2021, 9, 29665–29676. [CrossRef]
9. Medasani, S.; Kim, J.; Krishnapuram, R. An overview of membership function generation techniques for pattern recognition. Int.
J. Approx. Reason. 1998, 19, 391–417. [CrossRef]
10. Schwaab, A.A.D.S.; Nassar, S.M.; Filho, P.J.D.F. Automatic methods for generation of type-1 and interval type-2 fuzzy membership
functions. J. Comput. Sci. 2015, 11, 976–987. [CrossRef]
11. Chen, M.-S.; Wang, S.-W. Fuzzy clustering analysis for optimizing fuzzy membership functions. Fuzzy Sets Syst. 1999, 103,
239–254. [CrossRef]
12. Cheng, H.D.; Chen, J.-R. Automatically determine the membership function based on the maximum entropy principle. Inf. Sci.
1997, 96, 163–182. [CrossRef]
13. Belyadi, H.; Haghighat, A. Machine Learning Guide for Oil and Gas Using Python: A Step-By-Step Breakdown with Data, Algorithms,
Codes, and Applications; Elsevier Inc.: Amsterdam, The Netherlands, 2021.
14. Pham, D.T.; Castellani, M. Action aggregation and defuzzification in Mamdani-type fuzzy systems. Proc. Inst. Mech. Eng. Part C J.
Mech. Eng. Sci. 2002, 216, 747–759. [CrossRef]
15. Jager, R.; Verbruggen, H.B.; Bruijn, P.M. The role of defuzzification methods in the application of fuzzy control. IFAC Intell.
Compon. Instrum. Control. Appl. 1992, 25, 75–80. [CrossRef]
16. Jang, J.-S.R. ANFIS adaptive-network-based fuzzy inference system. IEEE Trans. Syst. Man Cybern. 1993, 23, 665–685. [CrossRef]
17. Gallant, S.I. Perceptron-based learning algorithms. IEEE Trans. Neural Netw. 1990, 1, 179–191. [CrossRef]
18. Du, K.-L.; Leung, C.-S.; Mow, W.H.; Swamy, M.N.S. Perceptron: Learning, generalization, model selection, fault tolerance, and
role in the deep learning era. Mathematics 2022, 10, 4730. [CrossRef]
19. Kar, S.; Das, S.; Ghosh, P.K. Applications of neuro fuzzy systems: A brief review and future outline. Appl. Soft Comput. 2014, 15,
243–259. [CrossRef]
20. Lingxiao, L.; Pang, S. An implementation of the adaptive neuro-fuzzy inference system (ANFIS) for odor source localization. In
Proceedings of the 2020 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), Las Vegas, NV, USA, 25–29
October 2020.
21. Bezdek, J.C. Pattern Recognition with Fuzzy Objective Function Algorithms; Plenum Press: New York, NY, USA, 1981.
22. Bezdek, J.C.; Ehrlich, R.; Full, W. FCM: The fuzzy c-means clustering algorithm. Comput. Geosci. 1984, 10, 191–203. [CrossRef]
23. Kesemen, O.; Tezel, Ö.; Özkul, E. Fuzzy c-means clustering algorithm for directional data (FCM4DD). Expert Syst. Appl. 2016, 58,
76–82. [CrossRef]
24. Wu, H.; Xu, Z.S. Fuzzy logic in decision support: Methods, applications and future trends. Int. J. Comput. Commun. Control. 2021,
16, 4044. [CrossRef]
25. Malyszko, M. Fuzzy logic in selection of maritime search and rescue units. Appl. Sci. 2022, 12, 21. [CrossRef]
26. Cardone, B.; Di Martino, F. A fuzzy rule-based GIS framework to partition an urban system based on characteristics of urban
greenery in relation to the urban context. Appl. Sci. 2020, 10, 8781. [CrossRef]
27. Markiz, N.; Jrade, A. Integrating a fuzzy-logic decision support system with bridge information modelling and cost estimation at
conceptual design stage of concrete box-girder bridges. Int. J. Sustain. Built Environ. 2014, 3, 135–152. [CrossRef]
28. Govindan, A.R.; Li, X. Fuzzy logic-based decision support system for automating ergonomics risk assessments. Int. J. Ind. Ergon.
2023, 96, 103459. [CrossRef]
29. Improta, G.; Mazzella, V.; Vecchione, D.; Santini, S. Fuzzy logic–based clinical decision support system for the evaluation of renal
function in post-transplant patients. J. Eval. Clin. Pract. 2020, 26, 1224–1234. [CrossRef]
30. Friedlo, G.T.; Schleifer, L.L.F. Fuzzy logic: Application for audit risk and uncertainty. Manag. Audit. J. 1999, 14, 127–135. [CrossRef]
31. Lashin, M.M.A.; Khan, M.I.; Khedher, N.B.; Eldin, S.M. Optimization of display window design for females’ clothes for fashion
stores through artificial intelligence and fuzzy System. Appl. Sci. 2022, 12, 11594. [CrossRef]
32. Jia, Y.; Wang, Z. Application of artificial intelligence based on the fuzzy control algorithm in enterprise innovation. Heliyon 2024,
10, e28116. [CrossRef]
33. Puzović, S.; Vasović, V.J.; Milanović, D.D.; Paunović, V. A hybrid fuzzy MCDM approach to open innovation partner evaluation.
Mathematics 2023, 11, 3168. [CrossRef]
Information 2024, 15, 656 22 of 24
34. Sitnicki, M.W.; Balan, V.; Tymchenko, I.; Sviatnenko, V.; Sychova, A. Measuring the commercial potential of new product ideas
using fuzzy set theory. Innov. Mark. 2021, 17, 149–163. [CrossRef]
35. Cerón, A.M.R.; Kafarova, V.; Latorre-Bayona, G. A fuzzy logic decision support system for assessing sustainable alternative for
power generation in non-Interconnected areas of Colombia- case of study. Chem. Eng. Trans. 2017, 57, 421–426.
36. Zarte, M.; Pechmann, A.; Nunes, I.L. Fuzzy inference model for decision Support in sustainable production planning processes—A
case study. Sustainability 2021, 13, 1355. [CrossRef]
37. Kaczorek, M.; Jacyna, M. Fuzzy logic as a decision-making support tool in planning transport development. Arch. Transp. 2022,
61, 51–70. [CrossRef]
38. Zhang, G.; Band, S.S.; Ardabili, S.; Chau, K.-W.; Mosavi, A. Integration of neural network and fuzzy logic decision making
compared with bilayered neural network in the simulation of daily dew point temperature. Eng. Appl. Comput. Fluid Mech. 2022,
16, 713–723. [CrossRef]
39. Díaz, G.M.; González, R.A.C. Fuzzy logic and decision making applied to customer service optimization. Axioms 2023, 12, 448.
[CrossRef]
40. Ali, N.S.; Mohd-Yusof, K.; Othman, M.F.; Latip, R.A.; Ismail, M.S.N. Adaptive Neuro Fuzzy Inference System (ANFIS) modelling
for quality estimation in palm oil refining process. J. Mech. Eng. 2019, 8, 36–47.
41. Al-Hmouz, A.; Shen, J.; Al-Hmouz, R.; Yan, J. Modeling and simulation of an adaptive neuro-fuzzy inference system (ANFIS) for
mobile learning. IEEE Trans. Learn. Technol. 2012, 5, 226–237. [CrossRef]
42. Vejar-Cortés, A.-P.; García-Díaz, N.; Soriano-Equigua, L.; Ruiz-Tadeo, A.-C.; Álvarez-Flores, J.-L. Determination of crop soil
quality for stevia rebaudiana bertoni morita II using a fuzzy logic model and a wireless sensor network. Appl. Sci. 2023, 13, 9507.
[CrossRef]
43. Belman-Flores, J.M.; Rodríguez-Valderrama, D.A.; Ledesma, S.; García-Pabón, J.J.; Hernández, D.; Pardo-Cely, D.M. A review on
applications of fuzzy logic control for refrigeration systems. Appl. Sci. 2022, 12, 1302. [CrossRef]
44. Cioccolanti, L.; De Grandis, S.; Tascioni, R.; Pirro, M.; Freddi, A. Development of a fuzzy logic controller for small-scale solar
organic Rankine cycle cogeneration plants. Appl. Sci. 2021, 11, 5491. [CrossRef]
45. Lin, C.-J.; Lin, C.-H.; Wang, S.-H. Using fuzzy control for feed rate scheduling of computer numerical control machine tools. Appl.
Sci. 2021, 11, 4701. [CrossRef]
46. Arcos-Aviles, D.; Pacheco, D.; Pereira, D.; Garcia-Gutierrez, G.; Carrera, E.V.; Ibarra, A.; Ayala, P.; Martínez, W.; Guinjoan, F.
A comparison of fuzzy-based energy management systems adjusted by nature-inspired algorithms. Appl. Sci. 2021, 11, 1663.
[CrossRef]
47. Alawad, H.; An, M.; Kaewunruen, S. Utilizing an adaptive neuro-fuzzy inference system (ANFIS) for overcrowding level risk
assessment in railway stations. Appl. Sci. 2020, 10, 5156. [CrossRef]
48. Babaei, A.; Parker, J.; Moshave, P. Adaptive neuro-fuzzy inference system (ANFIS) integrated with genetic algorithm to optimize
piezoelectric cantilever-oscillator-spring energy Harvester: Verification with Closed-Form solution. Comput. Eng. Phys. Model.
2022, 5, 1–22.
49. Nayagam, O.J.P.; Prasanna, K. Response surface methodology and adaptive neuro-fuzzy inference system for adsorption of
reactive orange 16 by hydrochar. Glob. J. Environ. Sci. Manag. 2023, 9, 373–388.
50. Guerra, M.I.S.; de Araújo, M.F.U.; de Carvalho Neto, J.T.; Vieira, R.G. Survey on adaptative neural fuzzy inference system (ANFIS)
architecture applied to photovoltaic systems. Energy Syst. 2024, 15, 505–541. [CrossRef]
51. Obianyo, J.I.; Udeala, R.C.; Alaneme, G.U. Application of neural networks and neuro-fuzzy models in construction scheduling.
Sci. Rep. 2023, 13, 8199. [CrossRef]
52. Nguyen, P.H.D.; Fayek, A.R.F. Applications of fuzzy hybrid techniques in construction engineering and management research.
Autom. Constr. 2022, 134, 104064. [CrossRef]
53. Yuste, A.J.; Triviño, A.; Trujillo, F.D.; Casilari, E. Using fuzzy logic in hybrid multihop wireless networks. Int. J. Wirel. Mob. Netw.
2010, 2, 96–108. [CrossRef]
54. Huang, M.-C. A sender-initiated fuzzy logic control method form network load balancing. J. Comput. Commun. 2024, 12, 110–122.
[CrossRef]
55. Yu, J. Application of improved CSA algorithm-based fuzzy logic in computer network control systems. Int. J. Adv. Comput. Sci.
Appl. 2023, 15, 1084–1094. [CrossRef]
56. Salama, A.; Saatchi, R.; Burke, D. Fuzzy logic and regression approaches for adaptive sampling of multimedia traffic in wireless
computer networks. Technologies 2018, 6, 24. [CrossRef]
57. Hwang, W.-S.; Cheng, T.-Y.; Wu, Y.-J.; Cheng, M.-H. Adaptive handover decision using fuzzy logic for 5G ultra-dense networks.
Electronics 2022, 11, 3278. [CrossRef]
58. Silva, S.N.; Goldbarg, M.A.S.d.S.; Silva, L.M.D.d.; Fernandes, M.A.C. Application of fuzzy logic for horizontal scaling in
Kubernetes environments within the context of edge computing. Future Internet 2024, 16, 316. [CrossRef]
59. Salama, A.; Saatchi, R. Evaluation of wirelessly transmitted video quality using a modular fuzzy logic system. Technologies 2019,
7, 67. [CrossRef]
60. Pan, Y.; Wu, Y.; Lam, H.-K. Security-based fuzzy control for nonlinear networked control systems with DoS attacks via a resilient
event-triggered scheme. IEEE Trans. Fuzzy Syst. 2022, 30, 4359–4368. [CrossRef]
Information 2024, 15, 656 23 of 24
61. de Mello, F.L. A fuzzy model for knowledge base IoT information security evaluation. J. Inf. Secur. Cryptogr. 2018, 5, 20–26.
[CrossRef]
62. Yazdinejad, A.; Dehghantanha, A.; Parizi, R.M.; Srivastava, G.; Karimipour, H. Secure intelligent fuzzy blockchain framework:
Effective threat detection in IoT networks. Comput. Ind. 2023, 144, 103801. [CrossRef]
63. Pérez-Gaspar, M.; Gomez, J.; Bárcenas, E.; Garcia, F. A fuzzy description logic based IoT framework: Formal verification and end
user programming. PLoS ONE 2024, 19, e0296655. [CrossRef]
64. Medina, M.Á.L.; Espinilla, M.; Paggeti, C.; Quero, J.M. Activity recognition for IoT devices using fuzzy spatio-temporal features
as environmental sensor fusion. Sensors 2019, 19, 3512. [CrossRef]
65. Firouzia, R.; Rahmania, R.; Kanter, T. An autonomic IoT gateway for smart home using fuzzy logic reasoner. Procedia Comput. Sci.
2020, 177, 102–111. [CrossRef]
66. Aalsalem, M.Y. An intelligent adaptive neuro-fuzzy for solving the multipath congestion in Internet of Things. J. Inf. Syst. Eng.
Manag. 2023, 8, 23845. [CrossRef]
67. Sarwar, B.; Bajwa, I.S.; Jamil, N.; Ramzan, S.; Sarwar, N. An intelligent fire warning application using IoT and an adaptive
neuro-fuzzy inference system. Sensors 2019, 19, 3150. [CrossRef] [PubMed]
68. Shabu, S.L.J.; Refonaa, J.; Mallik, S.; Dhamodaran, D.; Grace, L.K.J.; Ksibi, A.; Ayadi, M.; Alshalali, T.A.N. An Improved Adaptive
neuro-fuzzy inference framework for lung cancer detection and prediction on Internet of Medical Things platform. Int. J. Comput.
Intell. Syst. 2024, 17, 228. [CrossRef]
69. Gupta, U.K.; Sethi, D.; Goswami, P.K. Adaptive TS-ANFIS neuro-fuzzy controller based single phase shunt active power filter to
mitigate sensitive power quality issues in IoT devices. Adv. Electr. Eng. Electron. Energy 2024, 8, 100542. [CrossRef]
70. Castillo, O.; Sanchez, M.A.; Gonzalez, C.I.; Martinez, G.E. Review of recent type-2 fuzzy image processing applications. Information
2017, 8, 97. [CrossRef]
71. Bloch, I. Fuzzy sets for image processing and understanding. Elsevier Fuzzy Sets Syst. 2015, 281, 280–291. [CrossRef]
72. Polo-Rodriguez, A.; Vilchez Chiachio, J.M.; Paggetti, C.; Medina-Quero, J. Ambient sound recognition of daily events by means of
convolutional neural networks and fuzzy temporal restrictions. Appl. Sci. 2021, 11, 6978. [CrossRef]
73. Bloch, I. Fuzzy spatial relationships for image processing and interpretation: A review. Elsevier Image Vis. Comput. 2005, 23,
89–110. [CrossRef]
74. Van De Ville, D.; Nachtegael, M.; Van der Weken, D.; Kerre, E.E.; Philips, W.; Lemahieu, I. Noise reduction by fuzzy image
filtering. IEEE Trans. Fuzzy Syst. 2003, 11, 429–436. [CrossRef]
75. Sousa, W.P.; Cruz, C.C.P.; LanzillottI, R.S. Fuzzy divergence for lung radiography image enhancement. Trends Comput. Appl. Math.
2023, 24, 699–716. [CrossRef]
76. Nachar, R.A.; Inaty, E.; Bonnin, P.J.; Alayli, Y. Breaking down Captcha using edge corners and fuzzy logic segmenta-
tion/recognition technique. Security Commun. Netw. 2015, 8, 3995–4012. [CrossRef]
77. Saatchi, R. Single-trial lambda wave identification using a fuzzy inference system and predictive statistical diagnosis. J. Neural
Eng. 2004, 1, 21–31. [CrossRef] [PubMed]
78. Amza, C.G.; Cicic, D.T. Industrial image processing using fuzzy-logic. Procedia Eng. 2015, 100, 492–498. [CrossRef]
79. Sheikh Hosseini, M.; Zekri, M. Review of medical image classification using the adaptive neuro-fuzzy inference system. J. Med.
Signals Sens. 2012, 2, 49–60. [CrossRef]
80. Krasnov, D.; Davis, D.; Malott, K.; Chen, Y.; Shi, X.; Wong, A. Fuzzy c-means clustering: A review of applications in breast cancer
detection. Entropy 2023, 25, 1021. [CrossRef] [PubMed]
81. Wu, R.; Zorn, S.R.; Kang, S.; Kiendler-Scharr, A.; Wahner, A.; Mentel, T.F. Application of fuzzy c-means clustering for analysis of
chemical ionization mass spectra: Insights into the gas phase chemistry of NO3-initiated oxidation of isoprene. Atmos. Meas. Tech.
2024, 17, 1811–1835. [CrossRef]
82. HongLei, Y.; JunHuan, P.; BaiRu, X.; DingXuan, Z. Remote sensing classification using fuzzy c-means clustering with spatial
constraints based on Markov random field. Eur. J. Remote Sens. 2013, 46, 305–316. [CrossRef]
83. Li, X.; Lu, X.; Tian, J.; Gao, P.; Kong, H.; Xu, G. Application of fuzzy c-means clustering in data analysis of metabolomics. Anal.
Chem. 2009, 81, 4468–4475. [CrossRef]
84. Ibrahim, A.M. Hardware implementation. In Fuzzy Logic for Embedded Systems Applications; Elsevier (Newnes): Amsterdam, The
Netherlands, 2004; Chapter 8.
85. Yamakawa, T. Electronic circuits dedicated to fuzzy logic controller. Sci. Iran. D 2011, 18, 528–538. [CrossRef]
86. Barriga, A.; Sánchez-Solanoa, S.; Brox, P.; Cabrera, A.; Baturone, I. Modelling and implementation of fuzzy systems based on
VHDL. Int. J. Approx. Reason. 2006, 41, 164–178. [CrossRef]
87. Spolaor, S.; Fuchs, C.; Cazzaniga, P.; Kaymak, U.; Besozzi, D.; Nobile, M.S. Simpful: A user-friendly Python library for fuzzy logic.
Int. J. Comput. Intell. Syst. 2020, 13, 1687–1698. [CrossRef]
88. Peyravi, H.; Khoei, A.; Hadidi, K. Design of an analog CMOS fuzzy logic controller chip. Fuzzy Sets Syst. 2002, 132, 245–260.
[CrossRef]
89. Azimi, S.M.; Miar-Naimi, H. Designing an analog CMOS fuzzy logic controller for the inverted pendulum with a novel triangular
membership function. Sci. Iran. D 2019, 26, 1736–1748.
90. Gheysari, K.; Mashouf, B. Implementation of CMOS flexible fuzzy logic controller chip in current mode. Fuzzy Sets Syst. 2011,
185, 125–137. [CrossRef]
Information 2024, 15, 656 24 of 24
91. Sivanandam, S.N.; Sumathi, S.; Deepa, S.N. Introduction to Fuzzy Logic Using Matlab; Springer: Berlin/Heidelberg, Germany, 2007.
92. Matlab Fuzzy Logic Toolbox User Guide. 2024. Available online: https://uk.mathworks.com/help/fuzzy (accessed on 1
October 2024).
93. Das, R.; Sen, S.; Maulik, U. A Survey on fuzzy deep neural networks. ACM Comput. Surv. 2020, 53, 1–25. [CrossRef]
94. Han, X. Analyzing the impact of deep learning algorithms and fuzzy logic approach for remote English translation. Sci. Rep. 2024,
14, 14556. [CrossRef]
95. Singh, S.K.; Abolghasemi, V.; Anisi, M.H. Fuzzy logic with deep learning for detection of skin cancer. Appl. Sci. 2023, 13, 8927.
[CrossRef]
96. Kamthan, S.; Singh, H.; Meitzler, T. Hierarchical fuzzy deep learning for image classification. Mem.-Mater. Devices Circuits Syst.
2022, 2, 100016. [CrossRef]
97. Plerou, A.P.; Vlamou, E.; Papadopoulos, V. Fuzzy Genetic Algorithms: Fuzzy Logic Controllers and Genetics Algorithms. Glob. J.
Res. Anal. 2016, 5, 497–500.
98. Moayedi, H.; Mukhtar, A.; Khedherd, N.B.; Elbadawi, I.; Ben Amara, M.; TT, Q.; Khalilpoor, N. Forecasting of energy-related
carbon dioxide emission using ANN combined with hybrid metaheuristic optimization algorithms. Eng. Appl. Comput. Fluid
Mech. 2024, 18, 2322509. [CrossRef]
99. Stirling, J.; Chen, T.; Bucholc, M. Diagnosing Alzheimer’s disease Using a self-organising fuzzy classifier. In Fuzzy Logic Recent
Applications and Developments; Carter, J., Chiclana, F., Khuman, A.S., Chen, T., Eds.; Springer: Berlin/Heidelberg, Germany, 2021;
pp. 69–82.
100. Precup, R.-M.; Preitl, S.; Petriu, E.M.; Bojan-Dragos, C.-A.; Szedlak-Stinean, A.-I.; Roman, R.-C.; Hedrea, E.L. Model-based fuzzy
control results for networked control systems. Rep. Mech. Eng. 2020, 1, 10–25. [CrossRef]
101. Abadi, A.S.S.; Hosseinabadi, P.A.; Mekhilef, S. Fuzzy adaptive fixed-time sliding mode control with state observer for a class of
high-order mismatched uncertain systems. Int. J. Control. Autom. Syst. 2020, 18, 2492–2508. [CrossRef]
102. Schmidhuber, J. Deep learning in neural networks: An overview. Neural Netw. 2015, 61, 85–117. [CrossRef] [PubMed]
103. Sarker, I.S. Deep learning: A comprehensive overview on techniques, taxonomy, applications and research directions. Spring Nat.
Comput. Sci. 2021, 2, 420. [CrossRef]
104. Alzubaidi, L.; Zhang, J.; Humaidi, A.J.; Al-Dujaili, A.; Duan, Y.; Al-Shamma, O.; Santamaría, J.; Fadhel, M.A.; Al-Amidie, M.;
Farhan, L. Review of deep learning: Concepts, CNN architectures, challenges, applications, future directions. J. Big Data 2021,
8, 53. [CrossRef]
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual
author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to
people or property resulting from any ideas, methods, instructions or products referred to in the content.