Professional Documents
Culture Documents
Neuro-Fuzzy Controller For Control and Robotics
Neuro-Fuzzy Controller For Control and Robotics
479-491, 1994
Copyright © 1994 Elsevier Science Ltd
Pergamon Printed in Great Britain. All rights reserved
0952-1976(94)00030-1 0952-1976/94 $7.00 + 0.00
Contributed Paper
M. M. G U P T A
University of Saskatchewan, Saskatoon, Canada
(Received March 1994; in revised form May 1994)
The purpose of this paper is to develop a neuro-fuzzy controller (NFC) for adaptive tracking in
unknown nonlinear dynamic systems, and for on-line computation of inverse kinematic transforma-
tions of robot manipulators. The NFC is comprised of a conventional fuzzy logic controller in the
feedback configuration and a recurrent neural network in the inverse mode (feedforward) configu-
ration. It is envisaged that the integration of fuzzy logic and neural-network-based controllers will
encompass the merits of both the techniques, and thus provide a robust controller. The fuzzy logic
controller (FLC), based on fuzzy set theory, provides a means for converting a linguistic control
strategy into control actions and thus offering a high level of computation. On the other hand, a
recurrent neural network provides low-level computations and embodies salient features such as
learning, fault-tolerance, parallelism and generalization. The NFC uses a minimum of fuzzy rules for
a given task. The proposed control scheme is implemented for controlling a class of unknown
nonlinear dynamic systems, and for computing the in verse kinematic transformations of a two-linked
robot.
Keywords: Fuzzy logic controller, neural networks, neuro-fuzzy controller, learning and control,
nonlinear systems, robotics.
computational complexity, nonlinearity and uncer- Table 1. A comparativc study bctwecn fuzzy systems and neural
nctworks
tainty. In view of this versatility of neural networks, it is
believed that they hold great potential as building Skills Fuzzy systems Neural networks
blocks for a variety of types of behavior associated with
Knowledge Inputs Human experts Sample sets
human cognition. However, the subjective phenomena acquisition Tools Interaction Algorithms
such as reasoning and perceptions are often regarded
Information Quantitative and Quantitative
beyond the domain of conventional neural-network Uncertainty qualitative
theory. Cognition Decision making Perception
It is interesting to note that fuzzy logic and neural Mechanism Heuristic search Parallel
networks complement each other, and their unification Reasoning computations
Speed Low High
provides the benefits of both the technologies. 4s
Neural networks can deal with imprecise data and ill- Fault-tolerance Low Very high
Adaptation Learning Induction Adjusting synaptic
defined activities; thus they offer low-level computatio- weights
nal features. On the other hand, fuzzy logic provides
Natural Implementation Explicit Implicit
higher-level cognitive features as it can deal with issues language Flexibility High Low
such as approximate reasoning and natural-language
processing. A brief comparison between fuzzy logic and
neural networks from the point of knowledge acqui- are the scaling factors for error (e), change in error (c)
sition, uncertainty, reasoning, adaptation and natural- and the process control (input) change (Au) respecti-
language processing is shown in Table 1.4 The merging vely. The other notations are obvious from the figure.
of these two fields results in an emerging paradigm The dynamics of the overall system shown in Fig. 1 are
called "fuzzy neural networks" or "fuzzy-neural described by the following set of equations:
systems". Fuzzy neural networks are believed to have
Error: e(k) =s(k) - y(k),
considerable potential in the areas of expert systems,
Rate of change of error: c(k) = e(k) - e ( k - 1),
medical diagnosis, control systems, pattern recognition
and system modeling.
Fuzzy control: F[e(k)c(k)=-UF(k),
Neural control: u..(k) = (k)],
This paper describes a neuro-fuzzy controller (NFC)
NFC (total) control: u(k) = UF(k) "b Unn(k), and
that combines a fuzzy logic controller (FLC) and a
Plant output: y(k + 1) =f(q(k), u(k)) (1)
recurrent neural network (RNN) for control and robo-
tics applications. The FLC provides a mechanism to where W[.] represents the nonlinear mapping of the
incorporate human-like control and decision-making neural network, q(k) = [y(k) . . . . , y ( k - n), u ( k - 1),
abilities, while the RNN takes care of the problem of . . . . u ( k - m ) ] x is a state vector, and f(.) is an
functional approximation which is very vital for the unknown nonlinear function representing the dynamics
control of nonlinear systems. With this objective in of the plant and is bounded away from zero; i.e.
mind, the proposed fuzzy neural learning scheme is Of(q, u)/Ou--is O. The details of the FLC and the RNN
described in Section 2. The stability of the proposed are presented in the following subsections.
fuzzy neural scheme is briefly addressed in Section 3.
Computer simulation studies as applied to the control 2.1. Fuzzy logic controller (FLC)
of unknown nonlinear dynamic systems are presented The concepts of fuzzy theory were first introduced by
in Section 4. The application of NFC for computing Zadeh a in 1965 and are used to describe dynamic
inverse kinematic transformations of a two-linked systems that are too complex and/or too ill-defined to
robot is presented in Section 5, followed by conclusions synthesize controllers using conventional mathematical
in the last section. modeling techniques. Mamdani ~1"12 applied the fuzzy
set theory for developing FLCs. Since then, many
researchers have developed FLCs for various appli-
2. NEURO-FUZZY CONTROLLER (NFC)
cations. In general, an FLC consists of a set of linguistic
The NFC proposed in this paper consists of an FLC conditional statements which are derived from human
in the feedback configuration and an RNN as a feedfor- operators, and represents the experts' knowledge about
ward inverse controller, as is schematically shown in the system being controlled. These statements define a
Fig. 1. The FLC ensures adequate performance prior to set of control protocols relating the control conditions
convergence of the neural network weights, and to control actions by "If-Then" rules. The FLC can be
reduces the steady-state output errors. The neural considered as a fuzzy reasoning process; it attempts to
network, once trained, will represent an inverse- utilize expert knowledge in emulating human control
dynamic model of the system under control. This form capabilities. This manifests in the form of qualitative
of learning scheme has been referred to as the information about the process, and this information is
"feedback-error learning technique". 9"~° In Fig. 1, articulated in "If-Then" rules. For example, one of the
F[e(k), c(k)]-=ur(k) is a fuzzy relation of the error, control rules may process the error (e) and the change
e(k), and the change of error, c(k). GE, GC and GU in error (c) to synthesize a change in control for
D. H. RAO and M. M. GUPTA: NEURO-FUZZYCONTROLLER 481
,¢
~ Recurrent Neural
Network ]
/
Learningandadaptive~
algorithm J
W ---I---- ~ I GU ,
Dynamic~(,.~
r , [Fuzzif cation ] [ [Defuz:ificationIi__~--.~ ~ Plant
Reference- ~ I ' ~ ¢ I An uF(k)
signal GC I L . . . . ~ ~ / I
t.- l
FuzzyLogic Controller (FLC),
F[e(k), c(k)]
improving the system performance. A section of the The fuzzy subsets, El, Ci, Ui, are defined by a set of
control rules can be qualitatively described as follows: ordered pairs; i.e.
Rule I: if error (e) is large and the change in error (c) is Ei = {e,/~Ei(e)} • E,
small, then the change in process input (A u) is
medium:
= {c, • c,
Rule 2: else, if error (e) is small and the change in error U,= {Au, Au)} • U (5)
(c) is zero, then the change in process input
(Au) is small: where e, c and Au are elements of the discrete
universes E, C and U, and ~e,(e),,Uc,(C) and/lv,(A u) are
their membership values which provide the degree to
• . . which the element is a member of the subset. Thus, a
Rule n: else, i f . . . coupled ith rule can be described by a fuzzy relation Ri
on a universe of discourse E x C × U with its member-
In this control structure, e, c, Au are linguistic ship function
variables and their values are fuzzy sets expressed using
qualitative terms, such as L A R G E , SMALL, Z E R O , /~R,(e, c, Au) = E(,uE,(e),l~c,(C),,uv,(Au)) (6)
etc. which are denoted by Ei, Ci, Ui over the universes where E(.,., .) is a general representation of the impli-
of discourses E, C, U respectively• Here, these (E, C, cation functions and e • E, c • C and A u • U. The impli-
U) are assumed to be discrete and finite so that each cation function E( . . . . . ) can be described by
universe is a set of elements; i.e. T-operators) 3 For a given task, the choice of an impli-
cation function is a matter of preference and is context
E = {e}, C = {c}, and U = {u}. (2) dependent• In general, all the control rules are put
together and described by a single fuzzy relation R. The
In each control rule, the fuzzy variables are given
function of the controller is to infer the change in
fuzzy values which represent their linguistic signifi-
process input (control signal) from the error and the
cance. These fuzzy values are expressed as fuzzy sub-
rate of change in error based on the fuzzy relation R.
sets of the corresponding universe of discourse. Thus, a
The error and the rate of change in error are obtained
control rule can be abbreviated as
from the actual process and are scaled by the constants
GE and GC before being quantified to the closest
"IfEisEiandCisCithenAuisUi". (3)
element of the universe of discourse• This process of
Suppose the FLC is comprised of N such rules; an obtaining fuzzy values from non-fuzzy inputs is referred
ensemble of these rules may be expressed as to as fuzzification. If these fuzzy subsets of error (e) and
change in error (c) are represented by E-, C- respecti-
N vely, then the process control input U z is given by
U if e is Ei and c is Ci then Au is U~. (4)
n=l U z = E ~-• C z • R (7)
482 D . H . R A O a n d M. M. G U P T A : NEURO-FUZZYCONTROLLER
where • is a compositional operator and R is a fuzzy Rule 4: If e is positive and c is positive, then A u is
relation. The result in (7) is a fuzzy subset; however in positive.
reality a deterministic control decision is required. One
The following fuzzy sets are used to represent the
solution is to choose the element of the universe corres-
fuzzy concepts involved in the above control rules. The
ponding to the maximum membership value of the
membership functions for these fuzzy sets are defined
calculated fuzzy subset U--. In the case where this value
in Fig. 2.
is not unique, the mean value of these elements is
chosen. ~3 The result is then multiplied by a scaling NE: negative error,
factor G U in order to calculate the non-fuzzy change in PE: positive error,
process input. This process of arriving at a non-fuzzy NC: negative change in error,
output is referred to as defuzzification. The three scal- PC: positive change in error,
ing factors GE, G C and G U are chosen by the user and NU: negative change in process input,
are akin to the gain settings of a PID controller. Both ZU: zero change in process input, and
the G E and G C factors affect the performance measure PU: positive change in process input.
and the controller part, while the parameter G U affects
In Fig. 2, the constant L > 0 used in the definition of the
only the output of the controller.13
membership functions is chosen by the designer accord-
In brief, the design of an FLC involves four steps: ~4
ing to the ranges of error, rate of change in error and
(i) a fuzzification interface, (ii) a rule (knowledge)
process control input.
base, (iii) a decision-making logic and (iv) a defuzzifica-
tion interface. These components are interconnected as 2.2. Recurrent neural networks (RNNs)
depicted in the dotted square in Fig. 1.
In this paper, the following four simple basic rules The incredible learning and adaptive capabilities of
have been employed for the FLC, based on common biological neuronal mechanisms have inspired the
sense:
system scientists to base control methodologies on their
biological counterparts. In this effort to understand
Rule 1: I f e is negative and c is negative, then A u is biological control aspects, neural structures and the
negative; brain, the field of artificial neural networks has offered
Rule 2: Ire is negative and c is positive, then A u is zero; the most exciting avenues for new techniques in the
Rule 3: I f e is positive and c is negative, then A u is zero; control paradigm.
L~E
NE I PE
-L 0 +L e
~C
NC
-L
f 0 +L
v
L~u
NU 1 PU
NU: Negative change in process input
ZU: Zero change in process input
PU: Positive change in process input
-L 0 +L Au
Fig. 2. Membership functionsof fuzzysets.
D. H. RAO and M. M. GUPTA: NEURO-FUZZY CONTROLLER 483
Yi(k+l)
Y2(k+I )
y(k+l)
An artificial (computational) neural network consists The linear portion of the recurrent neural network can
of many interconnected nonlinear processing elements be described in matrix form as
called neurons• The conventionally assumed structure
U = Wy + X - wo (10)
of an individual neuron sums its weighted inputs and
gence of the weights during learning, and J is the FLC are established, based on the definition of the
performance index, usually defined as a square function characteristic energy function of a fuzzy relation R as
of the error. The control signal ug of the neural network
AEc(R, k) = E ( R ~1 - E ( R k- '), k = 1,2, .3 . . . . (15)
at time k may be obtained using only the state and input
of the network at past time (k - 1). For a multi-layered Rule 1: The FLC is said to be stable if
neural network, equation (12) leads to what is known
as the "back-propagation" learning algorithm. AE¢(R, k) <-0, for k---, ~ . (16a)
Rule 2: The FLC is said to be unstable if
AEc(R, k) > 0, for k--+ ~ . (16b)
3. STABILITY CONSIDERATIONS OF THE
NEURO-FUZZY CONTROLLER Rule 3: The FLC is said to be oscillatory with a period
of oscillation r if
As for all dynamic systems, the stability of the NFC
shown in Fig. 1 is an important property that has to be ]AEc(R, k)l = IAEc(R, k + r)l, for k--+ ~ , (16c)
addressed. The control signal to the plant under control
where 1.1 stands for the absolute value, For more
is made up of two components (Fig. 1); one contributed
details on the implementation of the fuzzy rules of
by the FLC denoted as UF(k) and the second by the
stability, readers are referred to Ref. 18.
RNN represented as u,,(k). The stability of the overall
Similarly, the stability of the RNN can be studied by
control system is governed by the stability characteris-
considering the following Lyapunov function
tics of the FLC and the RNN. By using an energy
function of the individual controllers, the stability of E ~ - lyTWy -- xTy + wTy
the overall fuzzy neural system can be established. ~ ~l tl n /t
It is known that a dynamic system is stable if its total
energy decreases monotonically until an equilibrium
i=1 j=l i-I i-I
state is reached. This section presents a brief descrip- j~-I
tion of the stability conditions of a fuzzy dynamic
system developed in Ref. 18. The energy of a fuzzy The energy gradient vector VE of E with respect to y
relation R is can be calculated (17) and is given by:
v E = - ½ ( w F + w ) y - ,,7 + w L (18)
VE = - W y - Xr+ Wo
~. (19)
where (p(xi,yj) is the function responsible for the The energy increment may then be written as
position of the fuzzy relation in the Cartesian product;
A E = (VE)TAy = ( - wTy + x • - wo,)Ay, (20)
f ~ R ( x i , Yj)) is the function responsible for the shape
and the spread of the fuzzy relation, and n and m are where Ay ~ [0, 0 . . . . . kyi . . . . . 0] x because only the
cardinals of the Cartesian product. A general expres- ith neural output is updated. Equation (20) may be
sion for the energy of a fuzzy relation R can now be written as
defined as
A E = - wijy j + x i - woi A y i
= - uiAyi. (21)
where Xt x X2 x . . . x Xm is a Cartesian product of m
universes of discourses XI, )(2 . . . . . X,, and F(R) is the The product term u~Ay~ is always nonnegative and,
family of the fuzzy relations defined on X. It is shown in therefore, the corresponding energy changes A E in
Ref. 18 that it is possible to "measure" the energy of a equation (21) are nonpositive. It implies that the
fuzzy relation by considering its important physical energy E in the RNN during the learning process will
properties such as the position on the support set, either remain the same or decrease as a result of each
maxima of the membership function, shape, contrast, individual weight update. It is shown a6'~v that the
degree of fuzziness, cardinality, etc. The FLC is said to energy gradient vector VE is nonpositive (negative
be unstable if the energy of the fuzzy relation increases semi-definite) for the conditions w e = w # and w , = 0 .
with time until it finally assumes an "infinite value". These conditions imply that the connectivity matrix,
The F L C is said to be oscillatory if the energy of the equation (11), is symmetrical, with diagonal entries
relation fluctuates with some period of repeatability equal to zero.
with increasing time. The following stability rules of the From the above descriptions it can be shown that
D. H. RAO and M. M. GUPTA: NEURO-FUZZY CONTROLLER 485
asymptotic stability of the NFC consisting of an FLC Six simulation examples will now be presented in this
and a RNN can be achieved by satisfying the stability section, each demonstrating a particular aspect of the
conditions of each controller. control problem.
In order to achieve the above objective, the following lnp~ signal Output signal
assumptions about the nonlinear plant are made:
Example 4.2: This example considers an unknown non- Example 4.3: In this example a nonlinear plant repre-
linear plant governed by the difference equation sented by equation (28) was considered, where the
relation between y(k+ 1) and the past values of the
control input u(k-j) was assumed to be linear, while
y(k+ 1) was a nonlinear function of its past values,
y(k-i). This plant model can be described by the
For simulation purposes, the nonlinear function used is following equation
and the plant parameters were ft, = [1.2, 1, 0.08] ~ and The plant parameters and the input signal were the
aeo = [1, 0.9, 0.7] T. The nonlinear function and the plant same as in Example 2. The desired trajectory was a
parameters are assumed unknown. The input to the square input in the interval [ - 0 . 6 , 0.6]. The nonlinear
system was a unit step input. The error and output function used in this simulation example was
responses are shown in Fig. 6(a) for 1000 iterations.
From this figure it can be seen that the error was [0.5y(k)l
initially large, but decreased very quickly to the toler- f['] =~/[1 +yZ(k- 1)+y2(k-2)l j=O' 1, 2. (29)
ance limit. The control signals generated from the FLC
and the R N N are shown in Fig. 6(b). It can be observed The error and output responses obtained for this simu-
from this figure that the control signal from the FLC lation are shown in Fig. 7(a) for 1000 iterations. The
was more significant than that from the RNN during the control signals generated by the FLC and the RNN are
initial learning period. As the learning continued, the shown in Fig. 7(b). From these simulation results it is
control signal from the R N N was more significant than observed that the NFC could make the nonlinear plant
from the FLC, indicating that the former represents an represented by equations (28) and (29) to follow the
inverse model of the plant under control. The learning desired trajectory. The required accuracy was obtained
time required to achieve the desired performance for after about 1500 iterations.
the NFC was about 1800 iterations.
(a)
l.O' | I'
1.2 (a) I
Input signal I
*" Q,) . I Output signal [
,0 I,nput i ° l-
OZ "~Z 0.5. ri
0.8
r(~utput sigaal [ -- o 0.0.
m ~0 0 . 6 " ~ /
..~ ~ -
0.4 ~ / I I r.~ ¢"
,._ ~ Errorsignal I .~ 0-0.5 r
r.,o
0.2
-I.0
.= 0,0 . j .
0 200 400 600 800 1000
0 20o 40O 600 800 1000 k
k
06
f ~ NeuralNetwork[
Output I
. -
0.0
I/'\ i
/' /
[2 + cos{7:r (y2(k - 1) + y2(k 2))}1 + exp[-y(k)l -
•r,,o-~ ~O -0.4
f[.] = 1 + y 2 ( k - 1) + y 2 ( k - 2)
(31a)
.-.i o
l~ -o.8 J
and -1.2
0 2~ 400 6~ 8~ 1000
+ u 2 ( k - 1) + u 2 ( k - 2)}l
g[.l - [1 + u3(k)] (31b) k
was considered. The input to the system was a unit step (b)
I NeuralNetw°rkl ~
input. The plant parameters were the same as in 0.6 ~i ut°utl II.l-~J°utput
I I ,,~ ]
Example 4.2. The simulation results, depicted in Fig. 8,
~-~ o.4
show that the plant was able to follow the desired
response very accurately within a short time of about 0.2
I/IT I/ 1
500 iterations.
~ o.o K he, ',,
..~Z
o-0.2
!1"1-11 "11- I I
(a)
"~ 1.2'
~eO
8 ~ l.O.
,~
~-~ o.8~
.
i "~ -0.4
-0.6
0
V
200
k
400 600
VI
800 1000
~e -
"6~
O
o=~/\
• oo,p= I The input to the system (the desired response) was
s(k) = sin(2~rk/250) in the interval [ - 1 , 1]. The input
and output signals are shown in Fig. 9(a) for 1000
8~ 0.0' iterations. The control signals generated from the FLC
0 100 200 k 300 400 500 and the RNN are shown in Fig. 9(b). The learning time
required to achieve the desired performance from the
Fig. 8, Simulationresults, Example 4.4. NFC was about 1800 iterations. The FLC, without the
RNN, with minimum rules could not control the plant
described in equations (32) and (33) to follow the
Example 4.5: This example considers a nonlinear plant desired signal.
governed by the difference equation E x a m p l e 4.6: The purpose of this simulation example is
to demonstrate the adaptive capability of the proposed
y ( k + 1) = f a , y ( k - i) + flju(k-j) (32) fuzzy neural system for variation in the nonlinear char-
/=0 acteristics of the plant under control. The nonlinear
488 D. It. RA() and M. M. GUPTA: NEURO-FUZZYCONTROLLER
~ Recurrent Neural I 1
~---] Network I
Actual End-Effector
Coordinates
DesiredEnd-Effector Y
Coordinates
q PositionErrors EstimatedJoint
Angles
Fig. 11. The neuro-fuzzy controller scheme for computing inverse kinematic transformations.
D. H. RAO and M. M. GUPTA: NEURO-FUZZYCONTROLLER 489
~-05. /
,0 \/; rex
....
t.., 0.0.
~" -0.5
o
~ -2.0. e I
X
O
0 25 50 75 100 125 150 ~ -1.0 I
9. Miyamoto H., Kawato M., Setoyama T. and Suzuki R. 15. Gupta M. M. and Rao D. H. Neuro-control systems: a tutorial.
Feedback-error-learning neural network for trajectory control of In Neuro-Control Systems: Theory and Applications, pp. 1-43.
a robotic manipulator. Neural Networks 1,251-265 (1988). IEEE Press (1994).
10. Rao D. H. and Gupta M. M. Dynamic neural adaptive control 16. Hopfield J. J. Neural networks and physical systems with emer-
schemes. In Proceedings of American Control Conference, San gent collective computational abilities. Proc. Natn. Acad. Sci. 79,
Francisco, pp. 1450-1454 (1993). 2554-2558 (1982).
11. Mamdani E. H. Application of fuzzy algorithms for control of 17. Zurada J. M. Introduction to Artificial Neural Systems. West
simple dynamic plant. Proc. IEE 121, 1585-1588 (1974). Publishing Co., St Paul, Minn. (1992).
12. Procyk T. J. and Mamdani E. H. A linguistic self-organizing 18. Kiszka J. B., Gupta M. M. and Nikiforuk P. N. Energetistic
process controller. Automatica 15, 15-30 (1978). stability of fuzzy dynamic systems. IEEE Trans. SMC 15, 783-
13. Gupta M. M. and Qi J. Design of fuzzy logic controllers based on 792 (1985).
generalized T-operators. Fuzzy Sets Syst. 40, 473-489 (1991). 19. Spong M. W. and Vidyasagar M. Robot Dynamics and Control.
14. Lee C. C. Fuzzy logic in control systems: fuzzy logic controller-- Wiley, New York (1989).
Part I and II. IEEE Trans, SMC 20, 404-435 (1990).
AUTHORS' BIOGRAPHIES
Madan M. Gupta received the B. Eng. (Hons.) and the M.Sc. in Electronics-Communications Engineering, from the Birla
Engineering College (now the BITS), Pilani, India, in 1961 and 1962, respectively. He received the Ph.D. degree from the
University of Warwick, England, in 1967 in adaptive control systems. Dr Gupta is currently Professor of Engineering and the
Director of the Intelligent Systems Research Laboratory and the Centre of Excellence on Neuro-Vision Research at the
University of Saskatchewan, Canada. He was elected Fellow of I E E E and Fellow of SPIE. Dr Gupta has served societies such
as I E E E , IFSA, I F A C , SPIE, N A F I P , UN, CANSFINS, and ISUMA. He has been elected as a visiting professor and a special
advisor to the European Centre for Peace and Development (ECPD), University for Peace. In addition to over 400 research
papers, Dr Gupta has co-authored two books on fuzzy logic, and has edited fourteen volumes. Dr Gupta's present research
interests have expanded to the areas of neuro-vision, neuro-control and integration of fuzzy-neural systems, neuronal
morphology of biological vision systems, intelligent and cognitive robotic systems, cognitive information, new paradigms in
information processing, and chaos in neural systems. He is also developing new architectures of computational neural
networks, and computational fuzzy neural networks for applications to advanced robotic systems.
Dandina H, Rao was born in India. He received his B.E. degree in Electronic Engineering from B.M.S. College of
Engineering, Bangalore University, India in 1976. After working for a year in industry, he obtained his M.E. degree in control
systems from P.S.G. Institute of Technology, Coimbatore, University of Madras, India in 1979. From April 1979 to October
1982, he worked as a lecturer at M. S. Ramaiah Institute of Technology, Bangalore, India. From November 1982 to September
1988, he was an Assistant Professor at Gogte Institute of Technology, Belgaum, India, where he was also the head of the
Department of Electronics and Communication Engineering from 1984 to 1988. In 1988, he joined the University of
Saskatchewan, Canada, where he obtained the Master of Science degree in 1990, and Ph.D. in 1994 in the field of neuro-
control systems. He has coauthored over 40 technical papers and some of his work has appeared in edited books. His research
areas of interest are adaptive control, neural networks, and fuzzy logic.