EXTRAPOLATION WITH A SELF-ORGANISING
LOCALLY INTERPOLATING MAP
Controlling nonlinear Processes with ambiguous inverse Behaviour
Helge Hülsen, Sergej Fatikow
Division of Microrobotics and Control Engineering, University of Oldenburg
Uhlhornsweg 84, 26111 Oldenburg, Germany
Keywords: Associative Networks, Self-Organisation, Self-Supervised Learning, Extrapolation.
Abstract: Besides their typical classification task, Self-Organizing Maps (SOM) can be used to approximate input-
output relations. They provide an economic way of storing the essence of past data into input/output support
vector pairs. In this paper the SOLIM algorithm (Self-Organising Locally Interpolating Map) is reviewed
and an extrapolation method is introduced. This framework allows finding one inverse of a nonlinear many-
to-one mapping by exploiting the inherent neighbourhood criteria of the SOM part. Simulations show that
the performance of the mapping including the extrapolation is comparable to other algorithms.
1 INTRODUCTION
Several derivates of Self-Organizing Maps (SOM)
have been successfully applied to the control of
nonlinear, dynamic processes, which can also have
ambiguous inverse system behaviour (Barreto 2003).
A very important enhancement of the classical
SOM from Kohonen (overview in (Kohonen 2001))
has been the Local Linear Map (LLM) from Ritter et
al. (Ritter 1992) that has been further developed and
applied to various problems in robotics (Moshou
1997) and system dynamics modelling (Principe
1998)(Cho 2003). An LLM not only divides an input
space into subspaces as a standard SOM does but
assigns a local linear model to each subspace and
thus performs a mapping to an output space. By de-
scending on the error function of the local models
better estimates for these models are found. Re-
markable was the ability of the algorithm to learn a
meaningful mapping for processes with an ambigu-
ous inverse behaviour. This effect results from ap-
plying Kohonen's self-organising rule to update the
local model that has been responsible for the output
and all of its neighbours. The drawbacks of the LLM
are its discontinuities in the mapping at the transi-
tions between neighboured local models and the
strong dependency of the learning performance on
the Jacobians that define the linear models.
To solve the discontinuity problem Aupetit et al.
developed a continuous version of the LLM, the
Continuous Self-Organizing Map (CSOM) (Aupetit
1999)(Aupetit 2000), but still the mapping and the
learning was depending on the Jacobians and, in
addition, depending on interpolation parameters.
Walter followed another approach by avoiding a
discretisation of the input space and sharing the in-
fluence of each model on the output (Walter
1997)(Walter 2000). The influences are found with
help of an optimisation algorithm. On one hand this
leads to a continuous mapping, which can be opti-
mised with respect to different user-defined criteria
to resolve ambiguities. On the other hand this opti-
misation can be a relatively high computational load
for high network dimensions. Furthermore, under
certain conditions, there are problems with extrapo-
lation and the continuity of the mapping.
The Self-Organising Locally Interpolating Map
(SOLIM) from the author (Hülsen 2004a)(Hülsen
2004b) interpolates between different models with-
out any additional parameters. Learning is per-
formed in a self-supervised structure, which can be
interpreted as identification with exchanged input
and output. The main drawback of this algorithm is
the high computational effort for big networks,
which is in great part due to the extrapolation princi-
ple. In addition, extrapolation was only performed in
173
Hülsen H. and Fatikow S. (2005).
EXTRAPOLATION WITH A SELF-ORGANISING LOCALLY INTERPOLATING MAP - Controlling nonlinear Processes with ambiguous inverse
Behaviour.
In Proceedings of the Second International Conference on Informatics in Control, Automation and Robotics - Signal Processing, Systems Modeling and
Control, pages 173-178
DOI: 10.5220/0001177801730178
Copyright
c
SciTePress
a small area around the main mapping area. This
paper will introduce a new extrapolation algorithm
for the SOLIM.
The paper is organised as follows: In the next
section the fundaments of the SOLIM algorithm will
be explained. In section three the new extrapolation
principle will be presented in detail, followed by
simulations in section four. The paper ends with the
conclusion.
2 SOLIM: SELF-ORGANIZING
LOCALLY-INTERPOLATING
MAP
The SOLIM is a framework that shall perform two
tasks in a control context (
Figure 1):
1. Map from a desired state of a process
d
g
to
actuation parameters
a
p
to reach that state.
2. Use that pair of measured state
m
g
and actua-
tion parameters
a
p
to adapt the mapping.
Figure 1: Self-supervised learning (Barreto 2004)
2.1 Mapping
As in a standard SOM (Hagan 1996), the base of
SOLIM is a grid
c
of
N
neurons with a certain
topology (Figure 2). Each neuron
is connected to
an input support vector
i
G
g and an output sup-
port vector
i
P
p . To perform the mapping
GP
an influence weight
i
f
with respect to the input vec-
tor
d
g
is calculated for each neuron. The output
vector
a
p
is then the linear combination of all out-
put support vectors
a
i
i
i
f=⋅
pp
%
, (1.1)
where the weight
i
f
is scaled down to not exceed 1
if 1
otherwise
i
k
k
f
k
f
k
i
i
f
f
f
>
=
%
. (1.2).
The influence weights
i
f
are measures of how close
the input vector
d
g
is to the corresponding input
support vectors
i
g
. The influence weight is 1 for
di
=
gg
and decreases to 0 at the limits of the influ-
ence range of neuron
(Figure 3).
Figure 2: Mapping and learning with self-organizing maps
(adopted from (Ritter 1992))
Figure 3: Influence
i
f
of neuron
i
for (a) a 1D grid in a
1D input space and (b) a 2D grid in a 2D input space
The limit
j
of an influence range is defined
solely by a selection of input support vectors
j
g
. For
the case of a 1D grid there are two limits for each
input support vector (
Figure 3(a)). When the grid is
placed in a 1D input space the limits are points, in a
2D input space the limits are lines and in a 3D input
space the limits are planes. Now considering a 2D
grid there are six limits for each input support vector
(
Figure 3(b)). When the grid is placed in a 2D input
space the limits are lines and in a 3D input space the
limits are planes again. In input spaces with higher
dimensions the limits will be hyperplanes.
A limit
j
can generally be defined by a position
vector
ij
g
and a plane normal
n
, whose calculation
can be found in (Hülsen 2004b). The influence
weight
ij
f
with respect to a limit
j
is calculated
ICINCO 2005 - SIGNAL PROCESSING, SYSTEMS MODELING AND CONTROL
174
with help of the relative distance
ij
d
of the input
vector
d
g
from
i
g
in the direction to the limit plane
()
()
ij d i
ij
ij ij i
d
⋅−
=
⋅−
ngg
ngg
. (1.3)
A blending function
()
i
jij
f
bd= sets the influence to
0 for
1
ij
d > , to 1 for
0
ij
d < and defines a transition
for
01
ij
d<<, i.e. the change of the influence from
one neuron to another.
The influences to the limits
j
are then combined to
the influence of the neuron
on the output vector
()
min
i
ij
j
f
f= . (1.4)
Finally, it should be noted that the limits are de-
fined in a way that for a 1D grid two neurons are
responsible for the output vector, for a 2D grid three
neurons are responsible, for a 3D grid four neurons
are responsible, and so on (see also (Hülsen 2004b)).
2.2 Learning
Learning is performed in the input space
G
as well
as in the output space
P
with help of the Kohonen
learning rule (Kohonen 2001). Following the rule
not only the support vector of the "winner-neuron"
w
is updated but to a certain extent
()
,,
h
wi
r
also
the support vectors belonging to a neighbourhood
r
in the grid
c
(see Figure 2). In case of learning in
the input space the winner
w
is the neuron with the
highest influence with respect to the input vector
d
g
, which in turn serves as an attractor for
w
g
and
its neighbours
()
()
() ( 1) () ( 1)
,,
ii g gdi
hwir
νν νν
ε
−−
=+ gg gg. (1.5)
ε
is a learning constant that, as the neighbourhood
radius
g
r
, is decreased with time. In case of learning
in the output space the winner
w
is the neuron with
the highest influence with respect to the measured
process output
m
g
. Since the process input
a
p
be-
longs to
m
g
, it can be used to find an estimate
e
p
for
w
p
by solving (1.1) for
iw
=
p
1
e
aii
iw
w
f
f
⎛⎞
=−
⎜⎟
⎝⎠
pp p
%
%
. (1.6)
e
p
then serves as attractor for
w
p
and its
neighbours during the Kohonen update rule
()
()
() ( 1) () ( 1)
,,
ii p pei
hwir
νν νν
ε
−−
=+ pp pp . (1.7)
The Kohonen learning rule is topology conserv-
ing, which means that support vectors of neurons
that are neighbours in the grid
c
become neighbours
in the input space and output space. This property is
an inherent criterion to resolve ambiguities in the
inverse system behaviour
GP
, since neighbours
in the input space map to neighbours in the output
space.
3 EXTRAPOLATION WITH
SOLIM
The main contribution of this paper is to show that
extrapolation is possible within the context of the
SOLIM-algorithm. Like the SOLIM-interpolation
the extrapolation algorithm only needs to know the
support vectors in the input and output space to per-
form a reasonably accurate extrapolation. The learn-
ing algorithm can be adapted to this enhanced map-
ping in a straight-forward manner.
3.1 Mapping
The mapping for regions outside the grid of input
support vectors is performed by adding an extrapola-
tion component
xi
p
to each support vector
i
p
prior
to interpolating between them (Figure 4)
()
a
iixi
i
f=⋅+
ppp
%
. (1.8)
Figure 4: Extrapolation component
xi
p
corresponds to
distance
x
in
i
l
g
of input vector from grid (1D grid)
The extrapolation component is computed as
x
ixin
i
l=⋅
pp
, (1.9)
where
xi
l
is a weight that defines the distance of the
input vector
d
g
from the input support vector
i
g
in
relation to
ni
g
(Figure 4, Figure 5)
()
2
d
in
i
xi
ni
l
=
ggg
g
. (1.10)
EXTRAPOLATION WITH A SELF-ORGANISING LOCALLY INTERPOLATING MAP - Controlling nonlinear
Processes with ambiguous inverse Behaviour
175
ni
g
is the mean difference vector between the input
support vector
i
g
and all input support vectors in its
limiting neighbourhood
i
N
()
i
n
iik
kN
=−
ggg
. (1.11)
Analogously,
ni
p
is the mean difference vector be-
tween the output support vector
i
p
and all output
support vectors in its limiting neighbourhood
i
N
()
i
n
iik
kN
=−
ppp
. (1.12)
Figure 5: Calculation of
x
in
i
l
g
in a 2D grid
The main idea behind the interpolation as well as
the extrapolation mapping is that the relation be-
tween input vector and input support vector grid is
similar to the relation between output vector and
output support vector grid (Table 1). The weights
i
f
%
and
xi
l
can therefore be applied in the input space in
the same way as in the output space. In addition,
since the calculation of the weights only depends on
the dimension of the grid
c
the mapping can be ap-
plied in both directions.
Table 1: Similarity of mapping in input and output space
input space output space
()
d
iixi
i
f≈⋅+
ggg
%
()
a
iixi
i
f=⋅+
ppp
%
x
ixin
i
l=⋅
gg
x
ixin
i
l=⋅
pp
()
i
n
iik
kN
=−
ggg
()
i
n
iik
kN
=−
ppp
3.2 Learning
The learning algorithm remains unchanged except
that the calculation of the estimation
e
p
for the sup-
port vector
w
p
that is most responsible for the sys-
tem output
m
g
(compare (1.6)) must take the ex-
trapolation components into account. Therefore (1.8)
must be solved for
iw
=
p
, using (1.9) and (1.12)
()
1
1
1
w
aiixi
iw
w
e
xw
xw k
kN
f
f
lk
l
⎛⎞
⎛⎞
−⋅+
⎜⎟
⎜⎟
⎝⎠
⎜⎟
=
+⋅
⎜⎟
+⋅
⎜⎟
⎝⎠
ppp
p
p
%
%
. (1.13)
It can be seen that when the extrapolation weight for
w
p
is
0
xw
l = (1.13) becomes similar to (1.6), be-
cause no extrapolation is performed.
4 SIMULATIONS
The performance of the extrapolation algorithm can
be evaluated by mapping with support vectors that
represent a 2D Gaussian bell and by learning the
inverse of a well-known function.
4.1 Mapping
For a performance measurement of the mapping 5x5
input support vectors
i
g
will be placed at the posi-
tions
{
}
,1 ,2
,
0.1,0.3,0.5,0.7,0.9
ii
gg . The corre-
sponding output support vectors
i
p
will be placed at
the corresponding positions of a 2D Gaussian bell
with
0.5
µ =
and
0.1
σ
= (Figure 6)
22
,1 ,2
1
exp
2
ii
i
gµ
σσ
⎛⎞
⎛⎞
−−
⎛⎞
⎜⎟
=− +
⎜⎟
⎜⎟
⎜⎟
⎜⎟
⎝⎠
⎝⎠
⎝⎠
p . (1.14)
For this support vector constellation the SOLIM
mapping in the range
[]
,1 ,2
,
0..
1
dd
gg is shown in
Figure 7. The RMS-error of 0.043 is comparable to
other algorithms as stated in Table 2.
Figure 6: 2D Gaussian bell in the range
[]
,1 ,2
,0..1
dd
gg
ICINCO 2005 - SIGNAL PROCESSING, SYSTEMS MODELING AND CONTROL
176
Figure 7: SOLIM-approximation (5x5 neurons) of 2D
Gaussian bell in the range
[]
,1 ,2
,0..1
dd
gg
Table 2: RMS-error for approximation of 2D Gaussian
bell (
0.5
µ = ,
0.1
σ
= ) with 25 support vectors in the
range
[]
,1 ,2
,0..1
dd
gg . Values from (Göppert 1997).
Algorithm RMS-error
local PSOM 0.049
RBF 0.041
CRI-SOM 0.016
SOLIM 0.043
To test the performance of the extrapolation
functions the same mapping is shown in Figure 8 for
a broader input range
[]
,1 ,2
,
0.5..1.
5
dd
gg∈− . The
extrapolation is reasonable but the error is relatively
large (RMS-error = 0.063) because the falling slope
at the borders is continued although the Gaussian
bell approaches the zero-plane. This error can be
decreased significantly by using more neurons that
better represent the slopes, e.g. by placing 7x7 neu-
rons in the same area as shown in Figure 9 (RMS-
error = 0.025).
4.2 Learning
To validate the learning algorithm one inverse of the
function
()
g
= 10 sin(p) + 1/3 sin(3p
)
⋅⋅ (1.15)
shall be learned. In Figure 10 the result after 956
learning steps can be seen, where the RMS-error is
0.1% of the input vector range
[]
1
0..10
d
g ∈− . The
development of the error can be found in Figure 11.
It can be seen that the SOLIM algorithm with the
presented extrapolation can find one inverse to a
many-to-one, non-linear function.
Figure 8: SOLIM-approximation (5x5 neurons) of 2D
Gaussian bell in the range
[]
,1 ,2
, 0.5..1.5
dd
gg∈−
Figure 9: SOLIM-approximation (7x7 neurons) of 2D
Gaussian bell in the range
[]
,1 ,2
, 0.5..1.5
dd
gg∈−
Figure 10: Linear map with 10 neurons fits to
one inverse of (1.15) after 956 iteration steps.
RMS-error: 0.1% of
d
g
-range
EXTRAPOLATION WITH A SELF-ORGANISING LOCALLY INTERPOLATING MAP - Controlling nonlinear
Processes with ambiguous inverse Behaviour
177
Figure 11: Development of RMS-error
5 CONCLUSION
It can be concluded that the presented algorithm has
the following properties:
The extrapolation results from the interpolation
between the slopes at the borders, which is cal-
culated from the border support vectors and
their neighbours.
The interpolation as well as the extrapolation
part only needs the input and output support
vectors to perform a mapping. No interpolation
factors and no local linear model matrices are
required. The price is that only 0-order continu-
ity is ensured, which mostly is sufficient.
The mapping performance is comparable to
other algorithms (PSOM, RBF, ...).
One mapping for ambiguous inverse system
behaviour can be found within a sufficient
number of iteration steps. Still a comparison to
other algorithms is missing since there is no
commonly accepted benchmark-system that can
be easily set up.
The following problems have not been solved yet:
The topology is still fixed and must be known a-
priori. There exist algorithms that dynamically
build topologies and neighbourhood relation-
ships, depending on the input data "structure".
There are still learning parameters that must be
tuned before each experiment and that partially
vary depending on time. For online training
these parameters must be varied automatically.
The presented algorithm shall be tested in a real
application. One good demonstration is to learn
non-linear, time-variant and many-to-one mo-
tion characteristics of microrobots (Hülsen
2004a).
REFERENCES
Aupetit, M., Couturier, P., and Massotte, P. (1999). A
continuous self-organizing map using spline technique
for function approximation. In
Proc. Artificial Intelli-
gence and Control Systems (AICS'99)
, Cork, Ireland.
Aupetit, M., Couturier, P., and Massotte, P. (2000). Func-
tion approximation with continuous self-organizing
maps using neighboring influence interpolation. In
Proc. Neural Computation (NC'2000), Berlin, Ger-
many.
de A. Barreto, G., Araújo, A. F. R., and Ritter, H. J.
(2003). Self-organizing feature maps for modeling and
control of robotic manipulators.
Journal of Intelligent
and Robotic Systems
, 36(4):407-450.
de A. Barreto, G. and Araújo, A. F. R. (2004). Identifica-
tion and control of dynamical systems using the self-
organizing map.
IEEE Transactions on Neural Net-
works
, 15(5):1244-1259.
Cho, J., Principe, J. C., and Motter, M. A. (2003). A local
linear modeling paradigm with a modified counter-
propagation network. In
Proc. Int. Joint Conf. on Neu-
ral Networks
, pages 34-38, Portland, OR, U.S.A.
Hagan, M. T., Demuth, H. B., and Beale, M. (1996). Neu-
ral Network Design
. PWS Publishing Co., Boston,
MA, U.S.A.
Hülsen, H., Trüper, T., and Fatikow, S. (2004a). Control
system for the automatic handling of biological cells
with mobile microrobots. In
Proc. American Control
Conference (ACC'04)
, pages 3986-3991, Boston, MA,
U.S.A.
Hülsen, H. (2004b). Design of a fuzzy-logic-based bidirec-
tional mapping for kohonen networks. In
Proc. Int.
Symposium on Intelligent Control (ISIC'04)
, pages
425-430, Taipei, Taiwan.
Kohonen, T. (2001).
Self-Organizing Maps. Springer,
Berlin, Germany, 3. edition.
Moshou, D. and Ramon, H. (1997). Extended self-
organizing maps with local linear mappings for func-
tion approximation and system identification. In
Proc.
Workshop on Self-Organizing Maps (WSOM'97)
,
pages 181-186, Helsinki, Finland.
Principe, J. C., Wang, L., and Motter, M. A. (1998). Local
dynamic modelling with self-organizing maps and ap-
plications to nonlinear system identification and con-
trol.
Proceedings of the IEEE, 86(11):2240-2258.
Ritter, H., Martinetz, T., and Schulten, K. (1992).
Neural
Computation and Self-Organizing Maps: An Introduc-
tion
. Addison-Wesley, Reading, M.A., U.S.A.
Walter, J., Nölker, C., and Ritter, H. (2000). The PSOM
algorithm and applications. In
Proc. of Int. Symp. on
Neual Computation (NC'2000)
, pages 758-764, Berlin,
Germany.
Walter, J. (1997).
Rapid Learning in Robotics. Cuvillier
Verlag, Göttingen. http://www.techfak.uni-
bielefeld.de/ walter/.
ICINCO 2005 - SIGNAL PROCESSING, SYSTEMS MODELING AND CONTROL
178