Professional Documents
Culture Documents
SYSTEM DESIGN
Andreja Mikulcic and Jianhua Chen
2168
use some heuristics to select the most relevant input variables in fuzzy system design. Bezdek [4] combines the
ideas in [3] and [5] to develop a neural network fuzzy
control system which also utilizes clustering. Sin and
deFigueiredo [6] use fuzzy c-means algorithm to cluster
the input data points in finding the fuzzy rules. Notice
that in these works, fuzzy clustering is mainly used to find
either the antecedent part of the rules, or the number of
fuzzy rules, however, it will not directly produce fuzzy
rules - subsequent processing is needed to generate the
rules. In contrast, Kundu and Chen propose [7] to use the
fuzzy linear clustering (by Bezdek and Hathaway) [8] to
generate Takagi-Sugeno type fuzzy rules directly from I/O
data. The advantage of the proposal in [7] is that the
fuzzy clusters on the input space are discovered simultaneously as the algorithm learns the consequent part (output pattern) of each fuzzy rule, represented as a liner
function of the input. Some preliminary experiments of
function approximation were reported in [7] indicating the
promise of the fuzzy linear clustering approach to fuzzy
system design.
In this paper, we enhance the work [7] by reporting
experiments on using fuzzy clustering to learn control
rules for the inverted pendulum problem. The inverted
pendulum problem has been considered a typical representative of inherently unstable nonlinear control systems,
thus it is an ideal choice for testing the modeling capability of the fuzzy clustering algorithm. Our simulation
involves several steps. The first step consists of generation of the inverted pendulum problem's "exact" control
surface, which is itself of important interest. The second
step applies fuzzy clustering to learn fuzzy rules from the
control surface. The third step utilizes the fuzzy rules to
generate modeled control surface and simulate the
inverted pendulum control, with or without perturbations.
The experimental results show that fuzzy clustering is a
powerful tool for fuzzy system modeling.
The contributions of the current paper are two
folds. First, it further provides support for the fuzzy clustering approach to fuzzy system design. The success of
our experiments suggests that one may further consider to
adopt fuzzy clustering for fuzzy modeling in other settings (e.g. on-line learning) and thus opens up promising
directions for future exploration. Second, the approach
2. BACKGROUND
2.1. Fuzzy Control Systems
A fuzzy control system typically consists of a fuzzy
controller and a plant as shown in the following Figure 1.
............................................
Fuzzy
C6ntroller
Jm
.........................................
(1)
c gk(XO)pAk(XO)
Y=
k=l
n
%'!ki)mllpi
k=l i=l
- vkll
(3)
If X iS A k , then y
FuzzyRuleBase
rk:
(2)
k=l p A k ( X O )
2169
@m =
xC(pki)"n[Yi
-gk(Xi)l2,
k=l i=l
m > 1.
(4)
x, = x2
3. EX
ENT
Our experiment is mainly concerned with the angular position and angular velocity of the inverted pendulum's pole, although cart velocity and displacement are
considered when deciding about the length of time interval in which force F is applied to the cart. The experiment consists of three steps: exact control surface and
learning set generation, fuzzy clustering, and simulation
and modeled surface generation. Since the latter two
steps use output produced by the algorithm for the learning set generation, we will give it extra attention.
2170
Input:
Output:
1.
Initial force F := 0.
2.
3.
4.
5.
6.
7.
8.
9.
10.
9.2
If x1 < 0 and x2 is not within 5% of 8, then determine force-inc (< 0) and set F := F + force-inc, go
to step 3. Here force-inc is determined as follows:
10.1 If force-inc < 0, then do nothing.
10.2 Else force-inc := (-l)*FACT*force-inc.
11.
The right value of F is found for the 0 and 8. Output F and terminate the algorithm.
2171
Once fuzzy rules are determined, the controller output can be generated for any value of input by using eqn.
(2); pAk'sare taken from the nearest neighbor in the learning set, so called, the nearest neighbor (NN) method.
However, in the non-linear case when gk is a function of
y, solving eqn. (2) becomes complicated: for determination of the nearest neighbor, the value of y has to be
known, which in turn, can not be calculated without
knowing the nearest neighbor first. The solution to the
problem is iteration. In the n-th iteration step, the nearest
neighbor is found by using the current value of y. Then,
eqn. (2), now a transcendental equation, is solved and the
new nearest neighbor is determined by using the new
value of y. The algorithm ends if either the new nearest
neighbor is the same as the previous one or the procedure
is repeated a predetermined number of times.
Using the method described above, the new control
surfaces based on the same mesh as the exact one are generated, see Figure 3 (Clustered (linear) and Clustered
(non-linear)). Note that these control surfaces are calculated using fuzzy rules generated by only 150 randomly
chosen points constituting a learning set. The exact and
clustered surfaces are then compared and relative errors,
titled "(Exact-C1ustered)Exact (non-linear)", "(ExactC1ustered)Exact
(linear-detail)",
and
"(ExactC1ustered)Exact (non-linear-detail)", are shown in Figure
3. In the last two graphs, data for the nine smallest values
of angle and angular velocity is skipped so more details
are visible for the rest of the mesh. These results clearly
demonstrate the significant generalization power of the
clustering algorithm used. Note that the surfaces are plotted only for the positive values of angle and angular
velocity. When both variables are negative force changes
sign but not the magnitude, and when they have opposite
sign force is zero due to the condition ( 3 ) given above.
5.
6.
The results of simulation with and without presence of disturbance force are given in the Figure 4.
These results show the robustness of the developed system due its capability to sustain additional disturbance
despite its already unstable and dynamic nature.
4. CONCLUSIONS AND FUTU
In this paper we present results on using fuzzy clustering to learn control rules for the inverted pendulum
problem. We design and implement an algorithm for generating the learning set of the control problem, then we
apply fuzzy clustering to obtain fuzzy control rules, and
simulate the inverted pendulum system using the learned
rules. The experimental results are highly encouraging,
which support the following conclusions:
The algorithm for generating the control surface
(the learning set) of the inverted pendulum problem
is simple and efficient. The control surface generated has proven to be effective as the simulation
shows that the system using an approximation of
the control surface does stabilize quickly.
The fuzzy rules obtained from fuzzy clustering
have strong generalization and approximation capabilities. Using only 150 data points as the learning
set, fuzzy clustering produces fuzzy rules which can
approximate the entire space of 10,000 points with
high precision.
The fuzzy inverted pendulum control system
obtained by fuzzy clustering is robust and can resist
quite amount of disturbances.
To sum up, the experimental results clearly demonstrate that fuzzy linear clustering is a powerful means for
fuzzy system modeling.
Although the non-linear generalization of fuzzy linear clustering can achieve lower errors, see Figure 3, this
method gives rise to new dilemmas: which powers to
choose for LHS and RHS of the hypersurface equation:
whether to use the transcendental form or not; complicated algorithm for determining value of y, etc. All of the
above suggests that one should first use fuzzy linear clustering and only when such attempt does not give the
expected results, turn to the non-linear version.
In order to further improve clustering quality in the
non-linear case, we are planning to implement genetic
algorithms to achieve a better description of cluster representative hypersurfaces, i.e., better choice of powers in
the hypersurface equations.
2172
T
We are grateful to Professor Sukhamay Kundu for
helpful discussions on topics related to this work and for
letting us to use his program for fuzzy linear clustering.
The second author's work is supported in part by the NSF
grant ##9409370.
REFERENCES
T. Takagi, M. Sugeno, Fuzzy identification of systems and its applications to modeling and control,
IEEE Transactions on Systems, Man, and Cybernetics, Vol. SMC-15, No. 1, 1987, pp. 116-132.
Exact
Clustered (linear)
.8
ang. velocity
.8
angle
ang. velocity
Clustered (non-linear)
angle
(Exact-Clustered)/Exact(non-linear)
. ..
. . I
150
z
w
IO0
50
0
.8
.8
- ._
ang. velocity
ang. velocity
angle
angle
(Exact-Clustered)/Ex;d (non-linear-detail)
. .
,. , . ,.
. ..
.
.. , . ..
.. .
,
: . ,. . , . . .
(Exact-Clustered)/Exact (linear-detail)
ang. velocity
0.1
.a
_..
0.2
angle
2173
0.3- . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Of-:.
......
:. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4
6
Time (s)
'
4
6
Time (s)
Time (s)
0.2
-0.2
..................................
.1
-1.5'
........................
< . . . . . . . I
601
: 1
........
...........
.........................................
-1.4
-1.6
4
6
Time (s)
. . . . . . .:. . . :_
. . .:.I... . . .
40
I
It
.......I..
....
....... ......
4
6
Time (s)
_ : . . . . . . _.:. . . . . .:. . . . . . .
40
z 20
a,
: 0
3
.+-
E -20
....
-40
I I
6
Time (s)
Time (s)
- ~ i ~ u l a t results
~ o n for eases with and without disturbance
(initial conditions: angle = 20 deg. and angular velocity = .1 rads)
2174