The above described procedure is capable of identifying a static nonlinear mapping, by selecting patterns to store in memory and performing regression on these patterns. If the nonlinear mapping changes over time, however, it is likely that the memory contains patterns that do not reflect the current mapping well. Since regression is performed only on the memory, these invalid patterns can remain in the memory and affect the algorithm's performance.
On the other hand, it is reasonable to assume that after a number of iterations the input space will be sufficiently well sampled. Since the change in the observed system's response is reflected only
on the output data , we only need to adjust the outputs stored in the memory in order to achieve tracking capability. We propose to use the following update for all stored data labels
,
whenever a new input-output point
is received
The ``relabeling'' equation (9) takes into account the similarities in input and output space, measured respectively by the kernel function
and the difference . As a consequence, it only affects patterns
that are close enough to the new pattern
in the sense measured by the kernel.
Concordantly, the change in the labels will be proportional to
.
For instance, if the new point
coincides with some stored
and its label
is very different from
, this label will be changed proportionally to the difference
.
Notice that if
this update has no effect, and the algorithm assumes the observed nonlinear system to be static. The final algorithm is
summarized in Alg. 2.