0% found this document useful (0 votes)
3 views

Fuzzy logic implementation

The article discusses the evolution and applications of fuzzy logic over recent decades, highlighting its integration with other artificial intelligence techniques. Key concepts such as membership functions, fuzzy inference systems, and recent developments in various fields including industrial processes and decision support are explored. The article also emphasizes the potential for future advancements in fuzzy logic and its implementation using tools like Matlab.

Uploaded by

Alekh Kumar
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
3 views

Fuzzy logic implementation

The article discusses the evolution and applications of fuzzy logic over recent decades, highlighting its integration with other artificial intelligence techniques. Key concepts such as membership functions, fuzzy inference systems, and recent developments in various fields including industrial processes and decision support are explored. The article also emphasizes the potential for future advancements in fuzzy logic and its implementation using tools like Matlab.

Uploaded by

Alekh Kumar
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 24

information

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

Citation: Saatchi, R. Fuzzy Logic 1. Introduction


Concepts, Developments and The term logic could be described as the study of correct reasoning [1] while reasoning
Implementation. Information 2024, 15, could be defined as the process of drawing conclusions from the available information.
656. https://doi.org/10.3390/
The term fuzzy is associated with uncertainty in a process or data and fuzzy logic is an
info15100656
artificial intelligence technique that uses linguistic terms to perform reasoning and thus
Academic Editor: Maria Carmen facilitates analysis and interpretation of imprecise information [2–4]. Using linguistic terms
Carnero in fuzzy logic may reduce the complexities of system modelling as there could be less
need for extensive mathematical formulations. The field of fuzzy logic and its applications
Received: 11 September 2024
have evolved greatly in the last few decades with numerous reported publications and
Revised: 11 October 2024
applications [5]. Fuzzy logic is distinct from probability theory as the latter is generally
Accepted: 17 October 2024
Published: 19 October 2024
applied to problems associated with random characteristics. Probability theory can have
limitations in scenarios where the problem is termed in vague linguistic terms or cases
where the available information could be imprecise.
Crisp or classical sets can be considered as special cases of fuzzy sets. If A is a crisp
Copyright: © 2024 by the author. set and U is a universal set (or universe of discourse set or a set that contains all elements
Licensee MDPI, Basel, Switzerland. of other sets, including its own elements), then for any element x in U, x is either a full
This article is an open access article member of A (membership = 1) or not a member at all (membership = 0). In general, a crisp
distributed under the terms and set A can be described by its characteristic function µ A ( x ) as
conditions of the Creative Commons
Attribution (CC BY) license (https://
creativecommons.org/licenses/by/
4.0/).

Information 2024, 15, 656. https://doi.org/10.3390/info15100656 https://www.mdpi.com/journal/information


Information 2024, 15, 656 2 of 24

Information
Information2024,
2024,15,
15,656
656 2 of
2 of2424

𝜇 (𝑥) = 1 𝑖𝑓 𝑥 ∈ 𝐴
(𝑥) = 1 𝑖𝑓 𝑥 ∈ 𝐴
µ𝜇𝜇A(𝑥)
(x) =
= 01 𝑖𝑓 ∈ 𝐴A
i f 𝑥x ∉

where the symbols ∈ and ∉ represent ((𝑥)


µ𝜇A“is
x )a == 00i𝑖𝑓
member”f x𝑥 ∈
/∉and
𝐴 “is not a member”, respectively.
A
For instance,
wherethe if the speed
symbols∈∈and
thesymbols of
and∉∈ the cars
/represent on
represent“is a road is
“isa amember” limited
member”and andto“is
60 not
mph, then threerespectively.
crisp sets
where “is not a amember”,
member”, respectively.
could be defined
Forinstance, representing
instance,ififthe
thespeed
speedofofthelow,
thecars medium
carsononaaroadand high speeds
roadisislimited as
limitedtoto60 shown
60mph,
mph,thenin Figure
thenthree 1.
threecrisp
crispsets
sets
For
couldbe
could bedefined
definedrepresenting
representinglow,low,medium
mediumand andhighhigh speeds
speeds as
as shown
shown inin Figure
Figure 1.1.

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

Like the triangular𝑆𝑢𝑝𝑝𝑜𝑟𝑡


membership (𝐴) =function,
𝑥| 𝜇 (𝑥the
) >trapezoidal
0 𝑎𝑛𝑑 𝑥 ∈membership
𝑈 function (5)
can
alsoLike
be symmetric (as in Figure 4) or asymmetric. It is expressed as
the triangular membership function, the trapezoidal membership function can
also be symmetric (as in Figure 4) or asymmetric.  It is expressed as
x−a d−x
  
µ Trapezoidal ( x ) = max min
b−𝑥 a−, 𝑎1, d − 𝑑−
c 𝑥
,0 (6)
𝜇 (𝑥) = 𝑚𝑎𝑥 𝑚𝑖𝑛 , 1, ,0 (6)
𝑏−𝑎 𝑑−𝑐
The Gaussian membership function (shown in Figure 5) is characterised by its centre
Thewidth
(c) and Gaussian membership
(σ) and function
is expressed as (shown in Figure 5) is characterised by its centre
(c) and width (σ) and is expressed as
x − c )2
µGaussian ( x ) = e−0.5(. σ (7)
𝜇 (𝑥) = 𝑒 (7)
Information 2024, 15, 656 5 of 24

Information 2024, 15, 656 5 of 24


Information 2024, 15, 656 5 of 24
Information 2024, 15, 656 5 of 24

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

Information 2024, 15, 656 6 of 24


Information 2024, 15, 656 6 of 24
Information 2024, 15, 656 As shown in Figures 8 and 9, the sign of 𝑎 determines whether this membership
6 of 24
function opens to the right (when 𝑎 is positive) or left (when 𝑎 is negative).
As shown in Figures 8 and 9, the sign of 𝑎 determines whether this membership
As opens
function showntointhe
Figures 8 and 𝑎9, is
right (when the 𝑎 left
sign of or
positive) (when 𝑎 whether
determines this membership
is negative).
function opens to the right (when 𝑎 is positive) or left (when 𝑎 is negative).

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).

Figure 9. Sigmoid membership functions with b = 30 and 𝑎 = −1.

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.

The AND logic


The AND logicoperator
operatorcorresponds
corresponds to to
thethe intersection
intersection of sets.
of the the sets. The degree
The degree of truthof
truth
“A “A AND
AND B” minimum
B” is the is the minimum
(min) (min)
value value
of the of the degrees
degrees of truthofof
truth of the
the sets A sets
and AB, and
i.e., B,
i.e.,
µ(A AND B) = min(µ(A), µ(B)) (10)
µ(A AND B) = min(µ(A), µ(B)) (10)
The logic
The logic operator
operator OR OR corresponds
corresponds toto the
the union
union ofof the
the sets.
sets. Therefore,
Therefore, the
the degree
degree of of
truth of “A OR B” is the maximum (max) value of the degrees of truth of
truth of “A OR B” is the maximum (max) value of the degrees of truth of A and B, i.e.,A and B, i.e.,

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 12. The structure of a fuzzy inference system (FIS).


Figure 12. The structure of a fuzzy inference system (FIS).
Figure
Figure 12.
12. The
The structure
structure of
of aa fuzzy
fuzzy inference
inference system (FIS).
Fuzzification element: The input(s) to the FIS is crip, i.e., numerical values obtained
fromFuzzification
some sensors
Fuzzification
Fuzzification
element:
or various
element:
element:
The forms input(s)
The input(s)
The input(s) of to the FIS data.
measured
to the
to the FISFIS is
is crip,The
is crip,
i.e.,
i.e.,
numerical element
fuzzification
numerical values
numerical
values obtained
uses the
values obtained
obtained
from
inputs some sensors
membership or various
functions forms
to of
convert measured
crip inputs data.intoThe fuzzification
linguistic terms element uses the
characterised by
from some
from some sensors or various forms of measured data. The The fuzzification
fuzzification element element usesuses the the
inputs
their membership
associated fuzzy functions
sets. This to convert crip inputs into linguistic terms characterised by
inputs
inputs membership
membership functions
functions towould
to convertindicate
convert crip inputs
crip the degrees
inputs into of membership
into linguistic
linguistic of each input
terms characterised
terms characterised by
by
their
to the associated
associated fuzzy
input sets.
fuzzy This would
sets. For indicate
example, the
in degrees
Figure 2, of membership
when the speed ofofeach
a car input
is 37
their
their associated fuzzy
fuzzy sets. This would indicate the degrees of membership of each input to
to the this
mph, associated
speed input sets.
belongs fuzzy
to
This
both sets. would
the For indicate in
example,
medium-speed
theFigure
degrees
(degree
of membership
2,ofwhen the speed
membership
of
of each
0.50) car input
aand is 37
high-
the associated
to thethis associated input fuzzy
input fuzzy sets. For
sets. example, in Figure 2, when the speed of a car is 37 mph,
mph,
speed setsspeed
(degree belongs
of to both the For example, in (degree
medium-speed Figure 2, ofwhen the speed
membership of and
0.50) a carhigh-is 37
this speed
mph, this belongs
speed to membership
belongs both to the
both the 0.25).
medium-speed
medium-speed (degree of membership
(degree of membership 0.50) and
0.50) high-speed
and high-
speedFuzzy sets (degree
rule ofelement:
membership 0.25).
sets (degree
speed sets of base
(degree membership
of membership The
0.25). fuzzy0.25). rule base or the knowledge base element interprets
Fuzzy
its fuzzified rule base
input(s) element:
to facilitate The fuzzy rule
inferencing. base or the knowledge
It consists of linguistic baseruleselement interprets
associated with
Fuzzy rule
Fuzzy rule base element:
base element: The fuzzy
The fuzzy rule base
rule base or the
or the knowledge
knowledge base
base element
element interprets
interprets
its
the fuzzified
domain input(s)
knowledge to facilitate
represented inferencing.
in the It
form consists
of “IF of linguistic
conditions rules
(premise) associated
are with
satisfied
its fuzzified
its fuzzified input(s) to facilitate
input(s) to facilitate inferencing.
inferencing. It consists
It consists of linguistic
of linguistic rules associated
rules associated with
with
the
THEN
the domain
domainthe knowledge
consequences
knowledge represented
are inferred”.
represented inin the
The
the form
number
form of
of“IF
of
“IF conditions
rules (premise)
incorporated
conditions (premise) are
depends
are satisfied
on
satisfiedthe
the domain
THEN the knowledge represented
consequences are inferred”. inThethe number
form of of “IFrules
conditions
incorporated (premise) are satisfied
depends on the
nature
THEN
THENand and
the complexity
consequences
the consequences of the
are
are model.
inferred”.
inferred”. The number of rules incorporated
The number of rules incorporated depends on the depends on the
nature
nature Inference
and complexity
engine
complexity of
element:
of the
the model.
The
model. inference engine element uses the fuzzified inputs and
nature and complexity
Inference engine of theThe
element: model. inference engine elementuses usesand the fuzzified inputs
Inference
the information engine
Inference engine from element:
the
element: fuzzy The
The inference
rule base to
inference engine
drawelement
engine conclusions
element uses the fuzzified
the infer fuzzy
fuzzified inputs andand
control
inputs the
ac-
and
the information
information
tions. This from
process from the the
fuzzy
initially fuzzy rule rule
involves base baseto to
draw
determining draw conclusions
conclusions
the strength and and
infer
of theinfer
fuzzyfuzzy
premise control
control
of each ac-
actions.
rule
the information
tions. This from the fuzzy rule determining
base to drawthe conclusions and infer fuzzyofcontrol ac-
This process
(this
tions. is alsoprocess
This initially
known
process
initially
asinvolves involves
the firing
initially determining
involves strength)
determining the strength
[13] andthe
strength
of the of
applying
strength the
of
the
premise premise
rule’s
the premise
each
ofimplication.
eachofruleeach
rule
(thisThe
ruleis
(this
also is
associated alsooperations
known known
as the firingas arethestrength)
firing strength)
illustrated and [13]
[13]using applying
the and
car applying
the rule’s
accident the rule’s
implication.
severity implication.
example,The where
associatedThe
the
(this is alsooperations
associated known asare theillustrated
firing strength) using [13] car
the andaccident
applying the rule’s
severity implication.
example, where The
operations
inputs to the aremodel
illustratedare theusing car’sthe car
speed accident
represented severity
by the example,
fuzzy where
sets the inputs
shown in Figuretothethe2
associated
inputs to theoperations
model are are
the illustrated
car’s speed using the
represented car accident
by the severity
fuzzy sets example,
shown in where
Figure the2
model
and are
the car the car’s
distance speed
(to represented by the fuzzy sets shown in Figure 2 and the car
inputs
and theto carthe model (to
distance areanother
the car’s car or a pedestrian),
carspeed
represented
representedrepresentedby the fuzzyby by theshown
sets fuzzy sets shown2
in Figure
distance
in Figure (to
13. another
The output caranother
or
of athepedestrian),
model orisa the
pedestrian),
represented
car accident byseverity,
the fuzzyrepresented theshown
sets fuzzyby sets
in shown
Figure
the fuzzy 13.
and
in the car
Figure 13. distance
The output (to another
of the car orisathe
model pedestrian),
car accident represented
severity, by the fuzzy
represented by sets
the shown
fuzzy
The
sets output
shown of
inThethe
Figuremodel is the car accident severity, represented
14. of the model is the car accident severity, represented by the fuzzy by the fuzzy sets shown in
in Figure
sets shown 13.
in output
Figure 14.
Figure 14.
sets shown in Figure 14.

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.

Figure 19. A perceptron artificial perceptron


perceptron neural
neural network.
network.
Figure 19. A perceptron artificial perceptron neural network.
As an example,
As an example, for
for aa problem
problem involving
involving differentiating
differentiating between
between objects
objects of
of two
two types,
types,
the desired
the desired values for
values for
As an example, objects
forobjects from the categories
frominvolving
a problem the categories could be 0 and
could be between
differentiating 1. During
0 and 1. objects
Duringof training,
training, the
the
two types,
performance
performance
the measure
measure
desired values (represented
(represented
for objects as P in Figure
as Pcategories
from the 19)
in Figure coulddetermines
19) determines the difference
theDuring
be 0 and 1. difference between
between
training, the
the
the desired
desired output
performance output
measure(d) (represented
(d) for the
for the provided
provided input,
as Pinput, and19)
and
in Figure thedetermines
the actual output
actual output ofdifference
theof the perceptron
the perceptron
between (y)
(y)
resulting
resulting
the in
desired an
an error
inoutput
error
(d) for the provided input, and the actual output of the perceptron (y)
resulting in an error error = d − y (16)
Information 2024, 15, 656 12 of 24

Information 2024, 15, 656 12 of 24

𝑒𝑟𝑟𝑜𝑟 = 𝑑 − 𝑦 (16)
The learning
learning algorithm
algorithm updates
updates the
the weight
weight by
by [18]
[18]

ω𝝎updated ==ω𝝎 + (𝛿 × 𝑒𝑟𝑟𝑜𝑟 × 𝑿)


current + ( δ × error × X)
(17)
(17)
where 𝝎 is the vector of a new set of connection weights, X is the vector of inputs
where ωupdated is the vector of a new set of connection weights, X is the vector of inputs
and δ is the learning rate controlling the learning convergence speed. The weights’ update
and δ is the learning rate controlling the learning convergence speed. The weights’ update
is iteratively continued until the error is close to zero.
is iteratively continued until the error is close to zero.
ANFIS is a hybrid of an ANN structure facilitating learning and the FIS accommo-
ANFIS is a hybrid of an ANN structure facilitating learning and the FIS accom-
dating a means of handing imprecise inputs. ANFIS proved effective in numerous appli-
modating a means of handing imprecise inputs. ANFIS proved effective in numerous
cations [19]. Its
applications structure
[19]. is shown
Its structure in Figure
is shown 20 [16].
in Figure 20 [16].

Figure 20. Adaptive


Figure 20. Adaptive neuro-fuzzy
neuro-fuzzy inference
inference system
system (ANFIS)
(ANFIS) [16].
[16].

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].

2.5. Fuzzy c-Means Clustering


The fuzzy c-means (FCM) clustering algorithm has been applied extensively to analyse
and interpret data from various sources. It was proposed by Dunn in 1973 and further
improved by Bezdek in 1981 [21–23]. Defining,
• X = {x1 , x2 , . . . , x N } : A matrix of N observations in D-dimensional Euclidean space.
• C: The number of clusters.
• V = v j : The centres of the identified clusters, 1 ≤ j ≤ C.
2
• Jm = ∑iN=1 ∑Cj=1 µijm xi − v j , 1 ≤ m < ∞ : The objective function is minimised using
the generalised form of the least-square errors to partition X into C clusters. The ∥∥
symbol represents any norm indicating the similarity between xi and v j .
• m: The fuzziness weighting, a positive value, typically 2.
• µij ∈ [0, 1], 1 ≤ i ≤ N, 1 ≤ j ≤ C: The degree of membership of ith observation
to jth cluster. It is in the range 0 (not a member) to 1 (full member). The sum of
the degrees membership of the ith observation to all clusters is 1, i.e., ∑Cj=1 µij = 1,
1 ≤ i ≤ N, and the sum of all degrees of membership in a single cluster is less than N,
i.e., 0 < ∑iN=1 µij < N, 1 ≤ j ≤ C.
The FCM algorithm requires an initialisation of its parameters and then an iterative
process to determine the centres of the clusters and the degrees of membership of each
observation to each cluster. The parameters requiring initialisation are:
• C (between 2 and N − 1)
• m (m larger than 0, typically 2.)
• ε, the algorithm’s iteration termination criteria (ε > 0)
• uij , the degrees of membership initially randomised between 0 and 1.
• t, iteration counter, initially t = 1
The iterative stage of the FCM algorithm involves the following steps:
i. Compute the centres of the clusters (v j )

∑iN=1 µijm × xi
vj = j = 1, 2, . . . , C (24)
∑iN=1 µijm
Information 2024, 15, 656 14 of 24

ii. Update µij with v j

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.

3.1. Fuzzy Logic Developments in Decision Support


An article has provided a review of the developments in fuzzy logic applications for
decision support [24]. The topics included in the article covered the roles of fuzzy logic in
decision-making, evaluation methods, prediction methods and decision-support algorithms.
Fuzzy logic has been applied to assess ships for search and rescue operations [25]. This
proved helpful for the application as several parameters had to be compared to rank the
ships according to the coordinator’s preferences and as some related data could be missing,
or incomplete. A framework that utilised FIS was devised to assist decision-makers in
partitioning an urban area based on the presence and characteristics of the greenery, related
to the built and social fabric [26].
A fuzzy logic decision support system that integrated bridge information modelling
and cost estimation was devised [27]. The model could assist the relevant stakeholders to
conceptually plan for concrete box–bridge construction projects. A study considered the
ergonomic risks that modular construction workers are exposed to and devised a decision
support system that could help practitioners automatically assess the risks [28]. A decision
support system that adapted four fuzzy inference systems was implemented to monitor
the renal function by the level of proteinuria and the glomerular filtration rate [29]. Fuzzy
logic was utilised to deal with the risk that could arise from a lack of information leading
to uncertainty in auditing [30]. A fuzzy logic approach assisted in optimising display
windows in a clothes shop [31]. An intelligent strategy with Q-learning (i.e., a model-free
reinforcement learning algorithm) and a fuzzy control algorithm was proposed to improve
decision-making in enterprise innovation [32]. A hybrid fuzzy multi-criteria decision-
making model to open innovation partner evaluation was devised [33]. The fuzzy set
theory proved effective in measuring the commercial potential of new product ideas [34].
A multi-criteria fuzzy logic decision support approach to assess possible alternatives
for power generation in non-interconnected areas of Colombia was reported [35]. The
effectiveness of this approach was demonstrated using a real case study on the San Andrés
energy-planning problem. A fuzzy inference model to facilitate decision support for
sustainable production planning has been developed and its effectiveness demonstrated
in a case study [36]. A fuzzy logic-based tool to support decision-making in planning
transport development was devised [37]. The tool allowed assessment of the infrastructure
development projects in road and rail transportation. An ANFIS was applied in a decision
support system to determine the dew point temperature [38]. Customer services were
optimised using fuzzy logic models [39].
An ANFIS model was developed to predict the free fatty acid (FFA) content in bleached
and deodorized palm oil [40]. The ANFIS was effective in estimating the FFA quality for
Information 2024, 15, 656 15 of 24

the palm oil refining process. Adaptivity in learning and facilitating mobility in the manner
of learning was achieved by incorporating an ANFIS [41].

3.2. Fuzzy Logic Developments in Industrial Processes and Control


Fuzzy logic applications in oil and gas industries included the development of high-
resolution geological models for flow simulations, pressure control systems, ranking hydro-
carbon reservoirs, estimating the rate of drill bit penetration, estimating rock strength, and
chock size control [13]. A fuzzy logic model was integrated with a wireless sensor network
to monitor essential soil parameters, including PH, temperature, humidity, electrical con-
ductivity, nitrogen, phosphorus, and potassium [42]. The model proved effective in helping
farmers to gather information about the soil quality of stevia crops. A review of applications
of fuzzy logic control for refrigeration and air conditioning systems showed that fuzzy con-
trollers can provide an improved thermal efficiency as compared to classic controllers such
as the proportional–integral–derivative (PID) and they reduce energy consumption [43]. A
fuzzy logic controller was devised for a small-scale solar plant. The controller recognised
the type of users according to their energy consumption and optimised the thermal load
by switching among different operational modes [44]. The controller increased the overall
electrical and thermal production.
A fuzzy control was used as part of the scheduling of feed rate for computer numerical
control machine tools [45]. The controller shortened the processing time, improved the
cutting precision and provided a more stable machining. A methodology to adjust the
parameters of a fuzzy logic controller of an energy management system was devised [46].
The approach aimed to minimise the power peaks and fluctuations of a residential micro-
grid. A risk assessment and management model to improve understanding of safety in
railway stations was devised using an ANFIS [47]. A hybrid ANFIS and genetic algorithm
system managed to optimise the operation of a piezoelectric cantilever–oscillator–spring
energy harvester [48]. Adsorption of reactive orange 16 by hydrochar was assisted by
an ANFIS [49]. There has been a recent detailed survey of the applications of ANFIS to
photovoltaic applications [50]. ANFIS has proved effective in multiple applications related
to the construction industry [51,52].

3.3. Fuzzy Logic Developments in Data Communication, Telecommunication and Internet


of Things
Wireless mobile ad-hoc networks (MANETs) communicate without reliance on a
fixed infrastructure as the computer data can move through the network by hopping
intermediate nodes till it reaches the destination. A fuzzy logic system was devised as part
of a MANET to determine the transmission parameters resulting in an improved operational
performance [53]. The manner the operational load is shared across the elements of
a computer network is a factor in the overall performance of the network. A sender-
initiated fuzzy-logic-based protocol was devised to improve the performance of computer
networks by appropriately balancing the operational load across the nodes [54]. A fuzzy
neural network-based model was designed to deal with some of the problems associated
with the Internet industry, e.g., runtime ambiguity, instability and large data volume [55].
The performance of computer networks can be examined by considering their quality
of service (QoS). However, to determine QoS, computer traffic information based on the
communicated data packets needs to be gathered. As examining every transmitted packet is
not practical due to their quantity, sampling of the data packets is required. A study utilised
an adaptive fuzzy logic data packet sampling approach that proved more effective than the
conventional non-adaptive approaches in representing the communicated traffic [56].
Handover (handoff) in cellular networks allows a call or data session to move from
one cell to another as a user moves between the network’s coverage areas. The process
is critical in wireless communication to ensure a continuous connection for the users. A
fuzzy logic-based adaptive handover decision for 5G ultra-dense networks was devised
that could dynamically adjust its handover parameters [57]. A fuzzy control system was
Information 2024, 15, 656 16 of 24

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].

3.4. Fuzzy Logic Developments in Image and Signal Processing


Fuzzy logic has been applied to image processing tasks such as image segmentation,
image filtering, image classification and edge detection [70,71]. A combination of fuzzy
logic and convolutional neural networks was devised to recognise ambient sounds of
daily events with the fuzzy logic part performing filtering of the raw audio events [72].
Fuzzy approaches proved valuable for defining spatial relationships (e.g., adjacency) and
metrical relations (distances, directional relative position) [73]. A fuzzy filter was devised
for additive noise reduction, distinguishing between local variations due to the noise and
image features [74]. Lung radiography images were enhanced by developing fuzzy logic
techniques with the aim of assisting physicians in interpreting the images [75]. A fuzzy
logic-based method that matched characters using their edge corners as part of Captcha
recognition was reported [76]. An FIS model was devised to process electroencephalogram
signals as part of improving understanding of saccade [77]. Fuzzy logic has been utilised
to automatically analyse x-ray images of industrial products for defect detection [78].
ANFIS has been applied in numerous medical image processing-related work. A
review of some of these applications was conducted [79]. These included its applications
for diagnosing prostate cancer, eye diseases, brain tumours and breast cancers [79].
FCM proved effective for segmenting breast tumours in mammograms [80]. FCM was
applied to classify oxidation products into different groups, based on their properties [81]
and was integrated with Markov random field as part of remote sensing classification
tasks [82]. Metabolomics data were interpreted and clustered with the aid of FCM [83].

3.5. Fuzzy Logic Implementation Methods


Fuzzy logic systems and models were implemented in hardware [84,85], in VHDL
(Very High-Speed Integrated Circuit Hardware Description Language) [86] and in software,
e.g., in Python [87]. They were also implemented on integrated circuit chips [88–90]. There
were numerous implementations of fuzzy logic systems and models based on Matlab [91].
Matlab has a Fuzzy Logic ToolboxTM with a comprehensive user’s guide document [92]
providing detailed instructions on developing fuzzy logic systems and applications. In this
section, Matlab is used to illustrate implementations of a basic Mamdani FIS-based model
to determine a car accident’s severity (i.e., Figure 10). The example is kept deliberately
Information 2024, 15, 656 17 of 24

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.

Figure 23. Use


Figure 23. Use of
of an
an ANFIS
ANFIS to
to control
control aa robot
robotarm
arm[92].
[92].

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.

Funding: This research received no external funding.


Institutional Review Board Statement: Not applicable.
Informed Consent Statement: Not applicable.
Data Availability Statement: The original contributions presented in the study are included in the
article, further inquiries can be directed to the corresponding author.
Conflicts of Interest: The author declares no conflicts of interest.

Appendix A. Set Properties


Given the definitions:
• A, B and C: sets
• ∅: Null set, i.e., a set without any member
• U: Universal set (a set that has all elements of other sets including its own elements)
• c: Complement
• ∪: Union
• ∩: Intersection
• ⊆: subset or equal (⊂: subset)
• \: Complement
• Min: minimum
• Max: maximum
The main operations and properties are:
Union: A ∪ B = µ A ( x ) ∪ µ B ( x ) = max (µ A ( x ), µ B ( x ))
Intersection: A ∩ B = µ A ( x ) ∩ µ B ( x ) = min(µ A ( x ), µ B ( x ))
Complement: AC = \ A
Commutativity A∪B = B∪A
A∩B = B∩A
Associativity A ∪ ( B ∪ C ) = ( A ∪ B) ∪ C
A ∩ ( B ∩ C ) = ( A ∩ B) ∩ C
Distributivity: A ∪ ( B ∩ C ) = ( A ∪ B) ∩ ( A ∪ C )
A ∩ ( B ∪ C ) = ( A ∩ B) ∪ ( A ∩ C )
Impotency: A∪A = A
A∩A = A
Identity: A∪∅ = A
A∩U = A
A∩∅ = ∅
A∪U = U
Transitivity: A ⊆ B ⊆ C then A ⊆ C
Involution: ( Ac )c =A
De Morgan laws: ( A ∪ B)c = Ac ∩ Bc
( A ∩ B)c = Ac ∪ Bc
Information 2024, 15, 656 21 of 24

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.

You might also like