A Software Tool: Type-2 Fuzzy Logic Toolbox

10
A Software Tool: Type-2 Fuzzy Logic Toolbox MUZEYYEN BULUT OZEK, ZUHTU HAKAN AKPOLAT Firat University, Technical Education Faculty, Department of Electronics and Computer Science, 23119 Elazig, Turkey Received 18 January 2006; accepted 15 January 2007 ABSTRACT: The concept of type-2 fuzzy set was initially proposed as an extension of classical (type-1) fuzzy sets. Type-2 fuzzy sets are very useful in circumstances where it is difficult to determine an exact membership function for a fuzzy set; hence they are very effective for dealing with uncertainties. However, type-2 fuzzy sets are more difficult to use and understand than type-1 fuzzy sets. Even in the face of these difficulties, type-2 fuzzy logic has found applications in many fields. In this article, a new Type-2 Fuzzy Logic Toolbox written in MATLAB programming language is introduced. The main aim is to help the user to understand and implement type-2 fuzzy logic systems easily. Type-2 Fuzzy Logic Controller Block is also prepared for use in SIMULINK. Since general type-2 fuzzy logic systems are very complicated, they are not preferred in applications. Thus, only interval type-2 fuzzy logic systems are considered in the proposed Type-2 Fuzzy Logic Toolbox. Since MATLAB Fuzzy Logic Toolbox users are familiar with its windows, all the menus of the developed software are prepared in the same format of the MATLAB Fuzzy Logic Toolbox. ß 2008 Wiley Periodicals, Inc. Comput Appl Eng Educ 16: 137146, 2008; Published online in Wiley InterScience (www.interscience.wiley. com); DOI 10.1002/cae.20138 Keywords: type-2 fuzzy logic; type-2 fuzzy sets; interval sets; type-2 fuzzy logic toolbox INTRODUCTION Recently, a new class of fuzzy logic systems—type-2 fuzzy logic systems—which are useful for incorporat- ing uncertainties is introduced [14]. Type-2 fuzzy logic is able to handle uncertainties because it can model them and minimize their effects. Unfortunately, type-2 fuzzy sets are more difficult to use and understand than traditional type-1 fuzzy sets. There- fore, their use is not widespread yet. Even in the face of these difficulties, type-2 fuzzy logic has found applications in the classification of coded video streams, co-channel interference elimination from nonlinear time-varying communication channels, connection admission control, extracting knowledge from questionnaire surveys, forecasting of time- series, function approximation, pre-processing radio- graphic images and transport scheduling [3]. Type-2 fuzzy logic has been also used in some control applications [59]. A short summary of the existing literature on type-2 fuzzy sets can be found in [13]. Currently, there are some software programs like Fuzzy Logic Toolbox of MATLAB 1 /SIMULINK (MATLAB is a registered trademark of The Math- Works, Inc., Natick, MA) by which the simulation of type-1 fuzzy logic systems can be done easily but, there is no such software for the simulation of type-2 Correspondence to Z. H. Akpolat ([email protected]). ß 2008 Wiley Periodicals Inc. 137

Transcript of A Software Tool: Type-2 Fuzzy Logic Toolbox

A Software Tool: Type-2Fuzzy Logic Toolbox

MUZEYYEN BULUT OZEK, ZUHTU HAKAN AKPOLAT

Firat University, Technical Education Faculty, Department of Electronics and Computer Science, 23119 Elazig, Turkey

Received 18 January 2006; accepted 15 January 2007

ABSTRACT: The concept of type-2 fuzzy set was initially proposed as an extension of

classical (type-1) fuzzy sets. Type-2 fuzzy sets are very useful in circumstances where it is

difficult to determine an exact membership function for a fuzzy set; hence they are very

effective for dealing with uncertainties. However, type-2 fuzzy sets are more difficult to use and

understand than type-1 fuzzy sets. Even in the face of these difficulties, type-2 fuzzy logic has

found applications in many fields. In this article, a new Type-2 Fuzzy Logic Toolbox written in

MATLAB programming language is introduced. The main aim is to help the user to understand

and implement type-2 fuzzy logic systems easily. Type-2 Fuzzy Logic Controller Block is also

prepared for use in SIMULINK. Since general type-2 fuzzy logic systems are very complicated,

they are not preferred in applications. Thus, only interval type-2 fuzzy logic systems

are considered in the proposed Type-2 Fuzzy Logic Toolbox. Since MATLAB Fuzzy Logic

Toolbox users are familiar with its windows, all the menus of the developed software are

prepared in the same format of the MATLAB Fuzzy Logic Toolbox. � 2008 Wiley Periodicals, Inc.

Comput Appl Eng Educ 16: 137�146, 2008; Published online in Wiley InterScience (www.interscience.wiley.

com); DOI 10.1002/cae.20138

Keywords: type-2 fuzzy logic; type-2 fuzzy sets; interval sets; type-2 fuzzy logic toolbox

INTRODUCTION

Recently, a new class of fuzzy logic systems—type-2

fuzzy logic systems—which are useful for incorporat-

ing uncertainties is introduced [1�4]. Type-2 fuzzy

logic is able to handle uncertainties because it can

model them and minimize their effects. Unfortunately,

type-2 fuzzy sets are more difficult to use and

understand than traditional type-1 fuzzy sets. There-

fore, their use is not widespread yet. Even in the face

of these difficulties, type-2 fuzzy logic has found

applications in the classification of coded video

streams, co-channel interference elimination from

nonlinear time-varying communication channels,

connection admission control, extracting knowledge

from questionnaire surveys, forecasting of time-

series, function approximation, pre-processing radio-

graphic images and transport scheduling [3]. Type-2

fuzzy logic has been also used in some control

applications [5�9]. A short summary of the existing

literature on type-2 fuzzy sets can be found in [1�3].

Currently, there are some software programs like

Fuzzy Logic Toolbox of MATLAB1/SIMULINK

(MATLAB is a registered trademark of The Math-

Works, Inc., Natick, MA) by which the simulation of

type-1 fuzzy logic systems can be done easily but,

there is no such software for the simulation of type-2Correspondence to Z. H. Akpolat ([email protected]).

� 2008 Wiley Periodicals Inc.

137

fuzzy logic systems. In this article, a new Type-2

Fuzzy Logic Toolbox is introduced for direct imple-

mentation of type-2 fuzzy logic systems in MATLAB

and SIMULINK. Type-2 Fuzzy Logic Controller

Block is also prepared for the use of SIMULINK

applications. General type-2 fuzzy logic systems are

not preferred in applications due to their computa-

tional complexity. Thus, only interval type-2 fuzzy

logic systems are considered in the proposed Type-2

Fuzzy Logic Toolbox. Since MATLAB Fuzzy Logic

Toolbox users are familiar with its windows, all the

menus of the developed software are prepared in the

same format of the MATLAB Fuzzy Logic Toolbox.

TYPE-2 FUZZY LOGIC SYSTEMS

Fuzzy set theory, introduced by Zadeh [10], has found

wide applications in many fields as well as in control

systems [2]. Fuzzy logic control has emerged as a

practical alternative to the conventional control

techniques since it provides a decision making

mechanism which allows the designer to put expert

knowledge into the controller. However, the classical

or traditional fuzzy logic systems (type-1 fuzzy logic

systems) cannot fully handle the linguistic, measure-

ment and parameter uncertainties [1]. In order to

reduce the effects of uncertainties, a new class of

fuzzy logic systems—type-2 fuzzy logic systems—

are introduced recently [2]. The concept of type-2

fuzzy set was initially proposed as an extension of

ordinary (or type-1) fuzzy sets by Zadeh [11]. Mendel

and his students [1�4] have recently introduced a

complete theory of type-2 Fuzzy Logic Systems

(FLSs) which are again expressed by IF-THEN rules

but, their consequent and/or antecedent sets are type-2

fuzzy sets. These sets are fuzzy sets whose member-

ship grades are not crisp values; instead, they are type-

1 fuzzy sets. Type-2 fuzzy sets are very useful in

circumstances where it is difficult to determine an

exact membership function for a fuzzy set; hence they

are useful for dealing with uncertainties. Consider

the transition from ordinary sets to fuzzy sets: when

the membership of an element in a set cannot be

determined as 0 or 1, type-1 fuzzy sets are used.

Similarly, when we have difficulties in the deter-

mination of membership grade even as a crisp number

in [0,1], type-2 fuzzy sets are then used.

TYPE-2 FUZZY SETS ANDMEMBERSHIP FUNCTIONS

A type-2 membership function is actually a three

dimensional membership function that characterizes a

type-2 fuzzy set. Let us consider blurring the type-1

membership function shown in Figure 1a by

shifting the points on the membership function to

the left or to the right but, not necessarily by the

same amounts, as shown in Figure 1b. Then, at a

certain value of x, say x1, the membership function

(or the membership degree) is not a crisp value

any more; instead, it takes on values wherever the

vertical line intersects the blur. Those values need

not all be weighted the same; hence, an amplitude

distribution can be assigned to all of those points.

Assume that this is done for all x2X (X is the

universe of discourse), then, a three dimensional

membership function is created, which is called type-

2 membership function that characterizes a type-2

fuzzy set [2].

For the clarity of explanations through the article,

some definitions are given below:

Definition-1: A type-2 fuzzy set, denoted ~A, is

characterized by a type-2 membership function

m~Aðx; uÞ, where x2X and u2 Jx� [0,1], that is,

~A ¼ fððx; uÞ; m~Aðx; uÞÞj8x 2 X; 8u 2 Jx � ½0; 1�gð1Þ

in which 0 m~Aðx; uÞ 1. ~A can also be expressed as

~A ¼Z

x2X

Z

u2Jx

m~Aðx; uÞðx; uÞ Jx � ½0; 1� ð2Þ

whereR R

denotes union over all admissible x and u.

Definition-2: At each value of x, say x¼ x1, the

2D plane whose axes are u and m~Aðx1; uÞ is called a

vertical slice of m~Aðx; uÞ. It is m~Aðx ¼ x1; uÞ for

x1 2 X and 8u 2 Jx1� ½0; 1�, that is,

m~Aðx ¼ x1; uÞ � m~Aðx1Þ ¼Z

u2Jx1

fx1ðuÞu

Jx1� ½0; 1�

ð3Þ

Figure 1 (a) A type-1 membership function. (b) Blurred

type-1 membership function.

138 OZEK AND AKPOLAT

in which 0 fx1ðuÞ 1. Because x1 2 X, 1 is droped

on m~Aðx1Þ and it is referred to m~AðxÞ as a secondary

membership function; it is a type-1 fuzzy set, which is

also referred to as a secondary set.

Definition-3: A type-2 fuzzy set can be expressed

as the union of all secondary sets, that is, using (3), ~A,

in a vertical-slice manner, can be re-expressed as

~A ¼ fðx; m~AðxÞÞj8x 2 Xg ð4Þ

or

~A ¼Z

x2X

m~AðxÞ=x ¼Z

x2X

Ru2Jx

fxðuÞ=u

xJx � ½0; 1�

ð5Þ

Definition-4: The domain of a secondary membership

function is called the primary membership of x. In (5),

Jx is the primary membership of x, where Jx � ½0; 1�for $\forall x \in X:

Definition-5: The amplitude of a secondary

membership function is called a secondary grade. In

(1), m~Aðx1; u1Þðx1 2 X; u1 2 Jx1Þ is a secondary grade;

in (5), fx(u) is a secondary grade.

Definition-6: When fxðuÞ ¼ 1; 8u 2 Jx � ½0; 1�,then the secondary membership functions are interval

sets, and if this is true for 8x 2 X, an interval type-2

membership function is obtained. Interval secondary

membership functions reflect a uniform uncertainty at

the primary memberships of x.

Definition-7: Uncertainty in the primary member-

ships of a type-2 fuzzy set, ~A, consists of a bounded

region that we call the footprint of uncertainty (FOU).

It is the union of all primary memberships, that is,

FOUð~AÞ ¼ [x2XJx ð6Þ

Definition-8: An upper membership functions and a

lower membership function are two type-1 member-

ship functions that are bounds for the FOU of a type-2

fuzzy set ~A. The upper membership function is

associated with the upper bound of FOUð~AÞ, and is

denoted �m~AðxÞ, 8x 2 X. The lower membership

function is associated with the lower bound of

FOUð~AÞ, and is denoted m ~AðxÞ, 8x 2 X, that is,

�m~AðxÞ ¼ FOUð~AÞ 8x 2 X ð7Þ

and

m ~AðxÞ ¼ FOUð~AÞ 8x 2 X ð8Þ

Because the domain of a secondary membership

function has been constrained in (1) to be contained in

[0,1], lower and upper membership functions always

exist.

Example-1: The shaded region in Figure 2a is the

FOU for a type-2 fuzzy set. The primary member-

ships, Jx1and Jx2

, and their associated secondary

membership functions m~Aðx1Þ and m~Aðx2Þ are shown

at the points x1 and x2. The upper and lower

membership functions, �m~AðxÞ and m ~AðxÞ, are also

shown in Figure 2a. The secondary membership

functions, which are interval sets, are shown in

Figure 2b.

Details of the definitions above can be found in

Ref. [1].

STRUCTURE OF A TYPE-2 FUZZYLOGIC SYSTEM

The structure of a type-2 Fuzzy Logic System (FLS) is

shown in Figure 3. It is actually very similar to the

structure of an ordinary type-1 FLS. It is assumed in

this article that the reader is familiar with type-1 FLSs

and thus, in this section, only the similarities and

differences between type-2 and type-1 FLSs are

underlined.

The fuzzifier shown in Figure 3, as in a type-1

FLS, maps the crisp input into a fuzzy set. This fuzzy

set can be a type-1, type-2 or a singleton fuzzy set. In

singleton fuzzification, the input set has only a single

point of nonzero membership. The singleton fuzzifier

is the most widely used fuzzifier due to its simplicity

and lower computational requirements. However,

this kind of fuzzifier may not always be adequate

especially in the cases of uncertainties [1]. Therefore,

the non-singleton fuzzification, which is more

Figure 2 (a) The FOU for a type-2 fuzzy set. (b) The

secondary membership functions.

A SOFTWARE TOOL 139

effective as far as the uncertainties are concerned, is

used in most studies. In type-1 non-singleton

fuzzification, measurement xi ¼ x0i is mapped into a

fuzzy number; that is, the inputs are modeled as type-

1 fuzzy numbers and membership functions are

associated with them. In other words, a type-1 non-

singleton fuzzifier is one for which mXiðx0iÞ ¼ 1

(i¼ 1,. . .,p) and mXiðxiÞ decreases from unity as xi

moves away from x0x. A type-2 FLS whose inputs are

modeled as type-1 fuzzy numbers is referred to as a

type-1 non-singleton type-2 FLS. Similarly, a type-2

FLS whose inputs are modeled as type-2 fuzzy

numbers is referred to as a type-2 non-singleton

type-2 FLS [1].

In type-1 FLSs, IF-THEN rules are generally

used, which has the form of (the lth rule)

Rl : IF x1 is Fl1 and . . . and xp is Fl

p;

THEN y is Gl l ¼ 1; . . . ;Mð9Þ

where xis are inputs (i¼ 1,. . .,p), Flis are antecedent

sets, Gls are consequent sets and y is the output. The

difference between type-2 and type-1 FLS is asso-

ciated with the nature of the membership function but,

this is not important while constructing the rule base.

Hence, the structure of the rules does not change in the

type-2 case, the only difference is that some or all of

the fuzzy sets involved are type-2. It should be noted

that we will have a type-2 FLS as long as at least one

of the antecedent or consequent sets is a type-2 fuzzy

set. The lth rule in a type-2 FLS has the form of

Rl : IF x1 is ~Fl1 and . . . and xp is ~Fl

p;

THEN y is ~Gl l ¼ 1; . . . ;Mð10Þ

where ‘�’ implies that the fuzzy set is a type-2 fuzzy

set.

The inference engine of a type-1 FLS provides a

mapping from input type-1 fuzzy sets to output type-1

fuzzy sets by using all rules. The antecedents in a

rule are connected by t-norm which corresponds to

intersection of the fuzzy sets. By using the sup-star

composition, the membership grades in the input

fuzzy sets are combined with those in the output

fuzzy sets and then, all the rules may be combined

by t-conorm operation (union of fuzzy sets) or by

defuzzfication using the weighted summation. The

inference process in a type-2 FLS is very similar to

that in a type-1 FLS. The rules are combined by the

inference engine that provides a mapping from input

type-2 fuzzy sets to output type-2 fuzzy sets. In order

to do this, intersections, unions and compositions of

type-2 fuzzy sets are required.

In a type-1 FLS, a crisp output is produced by the

defuzzifier from the output of the inference engine,

which is actually a fuzzy set. On the other hand, in a

type-2 FLS, the output of the inference engine is

normally a type-2 fuzzy set. Using the Zadeh’s

extension principle [1], a type-reduced set, that is a

type-1 fuzzy set, is obtained from the type-2 output

sets of the FLS. This operation is called type

reduction. The type reduction is an important

calculation for Type-2 FLSs. It is a new and com-

plicated concept, and details of type reduction

methods can be found in Refs. [1�3]. Hence, the

type-reduced set can be defuzzified using well known

techniques (e.g., centroid, bisector, mean of maxi-

mum, smallest of maximum and largest of maximum)

to obtain a crisp (type-0) output from a type-2 FLS. A

general type-2 FLS is very complicated because of

type reduction. Interval type-2 fuzzy sets given by

Definition-6 are the most widely used type-2 fuzzy

sets because they are simple to use and calculations

simplify a lot when the secondary membership

functions are interval sets in which case the type-2

FLS is called an interval type-2 FLS.

In the existing literature on FLSs, two most popular

FLSs are the Mamdani and Takagi-Sugeno-Kang (TSK)

Figure 3 The structure of a type-2 Fuzzy Logic System.

140 OZEK AND AKPOLAT

systems. Up to this point, even though it is not referred

to them as such, all the FLSs were Mamdani

FLSs. The Mamdani and TSK FLSs are both charac-

terized by IF-THEN rules and have the same antecedent

structures, however, they differ in the structure of

the consequent parts. The consequent of a TSK rule is

a linear or nonlinear function of input variables,

whereas the consequent of a Mamdani rule is a fuzzy

set. In a type-1 Mamdani FLS, the output of the

inference engine is a type-1 fuzzy set and defuzzification

is used to obtain a crisp output (type-0 set). On the other

hand, the output of a type-1 TSK FLS is a crisp

value and defuzzification is not required. Similarly,

although a type reduction procedure exists in type-2

Mamdani FLSs, there is no type reduction needed for

type-2 TSK FLSs [1].

THE DEVELOPED SOFTWARE:TYPE-2 FUZZY LOGIC TOOLBOX

The developed software—Type-2 Fuzzy Logic Tool-

box—consists of MATLAB1-based functions, that

is, M-files (MATLAB is a registered trademark of

The MathWorks, Inc.) and it is designed to ensure a

user friendly tool for the simulation of interval

type-2 fuzzy logic systems. Some of the functions

made freely available by Mendel [1] are also used in

The Type-2 Fuzzy Logic Toolbox. The developed

software can be run by typing ‘‘fuzzy2’’ on the

command line of MATLAB. The Type-2 Fuzzy

Logic Toolbox provides a simple point-and-click

interface that guides the user effortlessly through

the steps of FLS design. It extends the MATLAB

technical computing environment with tools for the

design of systems based on type-2 fuzzy logic.

Graphical User Interfaces (GUIs) guide the user

through the steps of type-2 fuzzy inference system

design.

The toolbox lets the user implement complex

type-2 FLSs using simple logic rules. It can be used

as a stand-alone type-2 fuzzy inference engine.

Alternatively, type-2 fuzzy inference blocks can

be used in Simulink and the type-2 fuzzy systems

can be simulated within a comprehensive model of the

entire dynamic system by using the Type-2 Fuzzy

Logic Controller Block that is prepared and added to

the Simulink Library.

Like all MATLAB toolboxes, the Type-2 Fuzzy

Logic Toolbox can be customized. The user can

inspect algorithms, modify source code, and add

membership functions, defuzzification techniques,

implication, aggregation AND, OR and type reduction

methods.

Windows, Editors, and Viewers of theType-2 Fuzzy Logic Toolbox

Fuzzy inference is a method that interprets the values

in the input vector and, based on user-defined

rules, assigns values to the output vector. Using the

GUI editors and viewers in the Fuzzy Logic Toolbox,

the user can build the rules set, define the membership

functions, and analyze the behavior of a fuzzy

inference system (FIS). The provided editors and

viewers are FIS editor, membership function

editor, rule editor, rule viewer and surface viewer.FIS

Editor

Figure 4 shows the FIS Editor that displays

general information about a type-2 fuzzy inference

system. It displays actually a menu bar that allows the

user to open related GUI tools, open and save systems,

and so on.

The File menu let the user to open a new interval

type-2 fuzzy system which can be a singleton type-2

Mamdani FIS, type-1 nonsingleton type-2 Mamdani

FIS, type-2 nonsingleton type-2 Mamdani FIS or

type-2 Sugeno FIS with no variables and no rules

called Untitled. Under file menu, the other options

that the user can select are

* Open from disk. . . to load a system from a

specified .fis file on disk.* Save to disk. . . to save the current system to a .fis

file on disk.* Save to disk as. . . to save the current system to

disk with the option to rename or relocate the file.* Open from workspace. . . to load a system from a

specified FIS structure variable in the workspace.* Save to workspace. . . to save the system to the

currently named FIS structure variable in the

workspace.* Save to workspace as. . . to save the system to a

specified FIS structure variable in the workspace.* Close window to close the GUI.

The Edit menu let the user add another input or

output to the current system. The user can also delete

a selected variable or undo the most recent change

under edit menu.

Under View menu, the options are

* Edit MFs. . . to invoke the Membership Function

Editor.* Edit rules. . . to invoke the Rule Editor.* View rules. . . to invoke the Rule Viewer.* View surface. . . to invoke the Surface Viewer.

As shown in Figure 4, there are six pop-up menus

provided to change the functionality of the six basic

A SOFTWARE TOOL 141

steps in the fuzzy implication process on the FIS

Editor:

* And method: Choose min, prod, or Custom, for a

custom operation.* Or method: Choose max or Custom, for a custom

operation.* Implication method: Choose min, prod, or

Custom, for a custom operation. This selection

is not available for Sugeno-style fuzzy inference.* Aggregation method: Choose max, sum, or

Custom, for a custom operation. This selection

is not available for Sugeno-style fuzzy inference.* Type reduction method: Choose center of sets,

center of sums, centroid, height, modified height

or Custom, for a custom operation. This selection

is not available for Sugeno-style fuzzy inference.* Defuzzification method: For Mamdani-style in-

ference, choose centroid or Custom, for a custom

operation. For Sugeno-style inference, choose wtaver

(weighted average) or wtsum (weighted sum).

Membership Function Editor

The membership function editor shown in Figure 5

allows the user to display and edit the membership

functions associated with the input and output

variables of the FIS.

On the Membership Function Editor, there is a

menu bar that allows the user to open related GUI tools,

open and save systems, and so on. The File menu for the

Membership Function Editor is the same as the one

found on the FIS Editor. Under Edit menu, the user can

select the options of Add MF, Add custom MF, Remove

current MF, Remove all MFs, and Undo. On the other

hand, under View menu, the user can select the options of

Edit FIS properties, Edit rules, View rules, View surface.

Rule Editor

Figure 6 shows the rule editor that allows the user to

view and edit fuzzy rules. On the Rule Editor, there is

a menu bar that lets the user to open related GUI tools,

and to open and save systems, change the format of

the rules and so on. The menus of the Rule Editor are

similar to the menus of the other editors.

Rule Viewer

The Rule Viewer shown in Figure 7 lets the user to view

detailed behavior of a FIS to help, diagnose the behavior

of specific rules or study the effect of changing input

variables. The menu bar on the Rule Viewer allows the

user to open related GUI tools, to open and save systems,

and so on. The menus of the Rule Viewer are similar to

the menus of the other editors.

Surface Viewer

The Surface Viewer shown in Figure 8 generates a

3-D surface from two input variables and the output of

Figure 4 FIS Editor of Type-2 Fuzzy Logic Toolbox.

142 OZEK AND AKPOLAT

an FIS. The menu bar on the Surface Viewer allows

the user to open related GUI tools, open and save

systems, and so on. The menus of the Surface Viewer

are similar to the menus of the other editors.

Type-2 Fuzzy Logic Controller Block

The type-2 fuzzy logic controller block shown in

Figure 9 is prepared and added into the library of

Figure 5 Membership Function Editor of Type-2 Fuzzy Logic Toolbox.

Figure 6 Rule Editor of Type-2 Fuzzy Logic Toolbox.

A SOFTWARE TOOL 143

Figure 7 Rule Viewer of Type-2 Fuzzy Logic Toolbox.

Figure 8 Surface Viewer of Type-2 Fuzzy Logic Toolbox.

144 OZEK AND AKPOLAT

fuzzy logic toolbox in Simulink. So, the controller

representing a type-2 fuzzy logic system can be easily

used in Simulink files.

CONCLUSIONS

Type-2 logic systems have been an attractive research

area in recent years. However, they are more difficult

to understand and implement than conventional type-

1 fuzzy logic systems. In this study, a new software

tool developed for helping users to understand,

design and analyze interval type-2 fuzzy logic system

is presented. The developed software called Type-2

Fuzzy Logic Toolbox is actually a collection of

MATLAB1 based M-files (MATLAB is a registered

trademark of The MathWorks, Inc.). The format

and menus of the developed software are designed

similar to the original Fuzzy Logic Toolbox of

MATLAB since the users of MATLAB are familiar

with them.

ACKNOWLEDGMENTS

We would like to thank Prof. J. M. Mendel and

his former PhD students N. Karnik and Q. Liang, who

made free M-file functions available online for type-2

FLSs [1].

REFERENCES

[1] J. M. Mendel, Uncertain rule-based fuzzy logic

systems: Introduction and new directions. Prentice

Hall PTR, Upper Saddle River, NJ, 2001.

[2] N. N. Karnik, J. M. Mendel, and Q. Liang, Type-2

fuzzy logic systems, IEEE Trans Fuzzy Syst 7 (1999),

643�658.

[3] J. M. Mendel and R. I. B. John, Type-2 fuzzy sets made

simple, IEEE Trans Fuzzy Syst 10 (2002), 117�127.

[4] Q. Liang and J. M. Mendel, Interval type-2 fuzzy logic

systems: Theory and design, IEEE Trans Fuzzy Syst

8 (2000), 535�550.

[5] K. C. Wu, Fuzzy interval control of mobile robots,

Comput Elect Eng 22 (1996), 211�229.

[6] C.-H. Lee and Y.-C. Lin, Control of nonlinear

uncertain systems using type-2 fuzzy neural network

and adaptive filter, Proceedings of the 2004 IEEE

International Conference on Networking, Sensing and

Control, March 21�23 2004, 1177�1182.

[7] P. Melin and O. Castillo, A new method for adaptive

model-based control of non-linear plants using type-2

fuzzy logic and neural networks, Proceedings of the

12th IEEE International Conference on Fuzzy Sys-

tems, FUZZ ’03, May 25�28, 2003 420�425.

[8] A. Homaifar, Y. Shen, and B. V. Stack, Vibration

control of plate structures using PZT actuators and type

II fuzzy logic, Proceedings of the 2001 American

Control Conference, June 25�27, 2001, 1575�1580.

[9] Q. Liang, N. N. Karnik, and J. M. Mendel, Connection

admission control in ATM networks using survey-

based type-2 fuzzy logic systems, IEEE Trans Syst

Man Cybern Part C 30 (2000), 329�339.

[10] L. A. Zadeh, Fuzzy sets, Informat Contr 8 (1965),

338�353.

[11] L. A. Zadeh, The concept of a linguistic variable and

its application to approximate reasoning-1, Inf Sci

8 (1975), 199�249.

Figure 9 Type-2 Fuzzy Logic Controller Block.

A SOFTWARE TOOL 145

BIOGRAPHIES

Muzeyyen Bulut Ozek was born in Elazig,

Turkey, in 1980. She received the BSc

degree in 2002 from Firat University, Elazig,

Turkey, and the MSc degree in 2004 from

the Department of Electronics and Computer

Science, Firat University, where she is

currently a PhD student. She is also a teacher

of computers at Elazig Primary School,

Elazig. Her research interests include fuzzy

logic, expert systems, and artificial intelligence techniques.

Zuhtu Hakan Akpolat was born in Elazig,

Turkey, in 1967. He received the BSc degree

in 1989 from Hacettepe University, Ankara,

Turkey, and the MSc degree in 1992 from

Firat University, Elazig, Turkey, both in

electrical and electronics engineering. He

received the PhD degree in electrical engi-

neering from the University of Nottingham,

United Kingdom, in 1999. He is currently a

professor in the control division of the Department of Electronics

and Computer Science, Technical Education Faculty, Firat Uni-

versity. His research interests include control of electrical drives,

fuzzy logic, sliding mode control, intelligent control techniques, and

mechanical load emulation methods.

146 OZEK AND AKPOLAT