IFAC
Copyright (;) IFAC Mechatronic Systems, California. USA. 2002
c:
0
[>
Publications www.elsevier.comllocatelifac
A MULTI-PROCESSOR ARCHITECTURE FOR THE REAL-TIME SWITCHING CONTROL OF MOBILE ROBOTS A. D'Amico G. Ippoliti S. Longhi
Dipartimento di Elettronica e A utomatica, Universita di A ncona, Via Brecce Bianche, 60131 Ancona, Italy. E-mail:
[email protected]@unian.it.
Abstract: The paper describes a real-time multi-processor architecture to control a mobile robot in a real context with environment disturbances and parametric uncertainties. The proposed methodology utilizes mUltiple models of the robot for its identification in an adaptive and learning control framework . Radial Basis Function Networks (RBFN) are considered for the multiple models. The experimental results are satisfactory in terms of tracking errors and computational efforts and show the improvement in the tracking performance when the proposed control architecture is used for tracking tasks in dynamical uncertain environments. Copyright © 2002 IFAC Keywords: Multi-processor architecture, Multiple models intelligent control, Mobile robots, Neural networks.
used to identify different operating conditions and to determine the control actions with the necessary autonomy to cope with rapidly environment changes (D'Amico et al., 2001b; Chen and Narendra, 2000; Narendra and Xiang, 2000) .
1. INTRODUCTION
Robots usually work with different tasks in operating environments which assume different forms depending on the specific applications to be performed. The model of a mobile robot within its operating environment usually incorporates robot motion dynamics and features of the environment as external disturbances and parametric variations. For the control problem, if a single model is used, when operating conditions change, this model should be adapted accordingly to the new environment before a control action is taken. A single parametric adaptive model is generally satisfactory to achieve good overall performance under small variations in an environment. A multiplicity of models may be required to identify different environments and to take the necessary control action rapidly when changes in the environment are of considerable magnitude and the autonomy of the robot must be improved. In this context a multiplicity of models can be
A learning and adaptive control scheme based on neural networks is proposed for achieving fast and accurate control actions in presence of large and time-varying uncertainties. The control scheme leads to switch to the appropriate controller and eventually tuning such a controller to improve the performances. The non-linear approximation capabilities of Neural Networks (NN) have been used for mode ling the kinematic behaviour of the vehicle and all dynamic effects. Radial Basis Function Networks (RBFN) have been used for the identification and control in order to avoid the non linear optimization techniques used in the learning algorithm of the Multilayer Neural Networks (MNN) and the related problems of local minima (Corradini et al., 2000a; Corradini et al., 2oo0b).
475
The real-time implementation of this switching controller with on-line learning of new models and controllers requires a multi-processor architecture in order to distribute the computational efforts necessary for applying the control actions to a specified sampling-rate and for autonomous tuning of new models. The computation of control actions and the on-line learning of new models and controllers are partially independent processes and are performed on independent computers connected by a local communication network. Experimental tests of the proposed multi-processor control scheme have been performed on the LabMate mobile robot, provided with an automatic navigation system. The experimental results show an improvement of the vehicle performances with respect to classical controllers and switching control schemes (Corradini et al., 2000a; Corradini et al., 2000b; D'Amico et al., 2001a; D'Amico et
and Horne, 1993) that starting from a reasonable high number of centers randomly chosen in the input space, moves them in the most significative regions of the input space (D 'Amico et al., 2001b) . Once the centers have been selected, the normalization parameters {32, that represent a measure of the spread of the data associated with each centre, have to be determined. In this work an Akaiketype criteria (Chen et al., 1991) is proposed for choosing the normalization parameters obtaining a good compromise between estimation accuracy and network complexity (D'Amico et al., 2001b). The RBFN is a sp~cial two-layer network which is linear in the para.;n~ers by fixing all radial basis functions centers and 'w:mlinearities in the hidden layer. This particular structure of RBFN allows their applicability to adaptive control schemes (Warwick et al., 1996), where the weights of the network second layer are on-line adapted making use of plant input and output signals. This adaptation allows the control scheme to cope with parameters variations and external disturbances (D'Amico et al., 2001a; D'Amico et al., 2001b).
al., 2001b).
2. LEARNING ALGORITHM FOR RADIAL BASIS FUNCTION NETWORKS
The structure of the RBFN allows also an OIl-line adaptive clustering by the update of the centers number and of the second layer weights. The proposed on-line adaptive clustering algorithm, for each new input vector, checks if the outputs of the first RBFN layer are significantly different from zero. If the outputs of the hidden layer are under a proper fixed threshold it means that the new input vector is outside the input space covered by the RBFN. Therefore the algorithm adds a new center to the RBFN to cover the new input vector and update the weight of the second layer with the Least Squares (LS) method (D'Amico et al., 2001b).
Consider a Radial Basis Function Network (RBFN) fr: lRn ~ R nr
if
= fr(x) = Ao + L AjIj>(llx -
cdl)
(1)
i=1
where x E lRn is the input vector, 4>0 is a given function from lR+ to R, 11 . 11 denotes the Euclidean norm, Ai, i = 0, 1,···, nr are the weights or parameters, Ci E JR.n, i = 1,2,·· ',n r , are the radial basis functions centers, and nr is the number of centers (Chen et al. , 1991; Warwick et al., 1996). The guassian function has been considered for the non-linearity: 4>(d;)
= exp (-d:J {]2), i = 1,2,· . . , nr
The autonomous learning strategy obtained by this adaptive clustering can be improved by developing an on-line OLS algorithm for the neural networks learning. The previous on-line adaptive clustering algorithm adds new centers to the RBFN to cover new input vectors outside the input space covered by the RBFN without taking in account the centers selected off-line with the OLS algorithm.
(2)
where di = IIx - cill and the real constant {3 is simply scaling or "width" parameter. The centers Ci, i = 1,2,· .. , n,. are chosen from the data set {X(k)}"'=1' The key question is therefore how to select centers appropriately from the data set for reducing computational complexity and numerical ill-conditioning. The Orthogonal Least Squares (OLS) algorithm (Chen et al., 1991; D'Amico et al., 2001b) is an efficient method for selecting centers obtaining adequate and parsimonious RBFN.
An improvement of the adaptive clustering is here proposed by the introduction of an on-line OLS algorithm which adds new centers to the neural networks on the basis of new input vectors which are outside the input space covered by the RBFN. If f,.(x) : Rn ~ lR is the off-line trained neural networks, the algorithm, on the basis of the new input vectors computes a new neural network 7r(X) : Rn ~ R of the form :
The Orthogonal Least Squares (OLS) method can be employed as a forward regression procedure (Chen et al., 1991; D'Amico et al., 2001b) to select a suitable set of centers from a large initial set of candidates. In the present study the initial set of centers is obtained using the kmeans unsupervised clustering algorithms (Hush
476
J=
M. - 1
Y
= fr(x) = .\0 +
L
Consider a set of L regulators {Rj } 1 implementing the following control laws respectively for the linear and angular velocities of the mobile robot:
A;
;=1
L
X;
(3)
1
i=M.
where c;, i = M., Ms + 1"" , nr are the new centers introduced for covering the new input vectors. The new centers c;, i = M., M. + 1", " nr are derived by the k-means clustering algorithm applied to the set of the new input vectors which are outside the input space covered by fr(x) : Rn --+ JR. With these set of centers Ci, i = M., M. + 1" ", nr the OLS learning algorithm (Chen et al., 1991; D'Amico et al., 2001 b) is applied for deducing the strictly necessary centers c j,i = Ms,M. + 1, · ··,M., with M.:::; nr , which are orthogonal among them and orthogonal to the off-line determined centers Cj , i = 1, 2" ", Ms -1.
w(k)
= Tc (ft(w r ) + k2 c 2(k) + k3 E3(k»
1
.
(5)
lJ=l
ej(k):= y(k) - Yj(k), j
= 1,2, "', L,
(6)
where y(k) := [El (k) cz(k) E3(k)jT and ci(k), i = 1,2,3 are the measured tracking errors, the following performance indices are considered:
3. ARCHITECTURE OF THE REAL-TIME MULTIPLE MODELS CONTROLLER
k-1
Jj(k):= aeJ(k)ej(k)
The use of multiple models in an adaptive and learning control architecture is proposed for the control of mobile robots. The main idea is to generate a control vector making use of the model which closely approximates the mobile robot at each instant. This leads to a switching control scheme.
+ b L l(k-r-l)eJ(r)ej(r), r=ko
j
= 1,2,
"', N,
k 2: 0, k E Z,
(7)
where a and b are positive constants, the module of 1 is lesser then one and /co is the initial time instant. In this multiple models control scheme, at every time instant the performance indices are monitored in order to deduce the controller to be applied to the plant i.e. the controller corresponding to the model with the minimum index is used (switched) for controlling the plant. Different control strategies can be incorporated into this multiple models framework.
Consider a set of L discrete-time models {Mj }J=l of the mobile robot (D'Amico et al., 2001b):
= c:{(k) + f{(C2)W(k) + f4(C3,V r ) Tev(k)
= c~(k) + f5(cdw(k) + f1(c3,V r ) (4) ~(k + 1) = ~(k) + ft(w r ) - TcW(k) with i = 1,2" , ',L and where E;O, i = 1,2,3, i = 1,2," ', L, are the tracking errors. The ~(k + 1)
(I) The first controller is a fixed RBFN based control system, where the terms !4(E3,Vr ) and fJ(w r ) are estimated with two neural networks trained off-line with data acquired in a set of trajectories chosen with different shapes, curvature radii and tracking velocities (D'Amico et al., 2001b) . (11) The second controller is a single model adaptive RBFN based controller where the terms fi(E3,V r ) and fl(w r ) are estimated with two neural networks where the weight of the second layers are on-line tuned making use of the data acquired (D'Amico et al., 2001b).
argument k denotes the variable evaluated in t = kTe where Tc is the sampling time, v(·) and wO are respectively the linear and angular velocities of the mobile robot assumed constant over the time-interval (kTe, (k + I)Te), vrO and wr (·) are respectively the reference linear and angular robot velocities evaluated over the timei = 1"",5, interval (kTe,(k + I)Te) and i 1,2"" , L, are nonlinear functions depending on the measured tracking errors Cj('), i = 1,2,3.
=
.
= Te (k)c)(k) + /i(c2)w(k) + f~(c3,Vr»
with i = 1,2"", L and where k}, k2 and k3 are suitable chosen control gains (D'Amico et al., 2001b). The controller R j is designed for controlling the corresponding model M j , j = 1, 2, .. " L and a RBFN-based implementation has been proposed. At every time instant k only one controller of the set {R j is applied to the plant and a parallel architecture of L models {Mj }J=l' forced by the same control input v(k),w(k) of the plant, yields the outputs Yj(k) := [c:{(k) c:{(k) ~(k)V, j = 1,2, " ' , L. The output responses of the multiple models are used for an estimation of the controllers performances. Defining the prediction errors:
The new neural network obtained with this online OLS algorithm is a new model able to describe the new operating conditions characterized by the new input vectors. This new model is used for controlling the robot and the multiple models control scheme adds a new model with the relative controller to the considered control architecture.
ci(k + 1)
.
v(k)
1/,
477
navigation system (Angeloni et al., 1996; Conte et aL, 1996; Jetto et al., 1999). The navigation system is implemented on a PC based architecture. The LabMate mobile base is equipped with a PC based architecture composed by two independent PCs, a PC 486 DX2 with PC 104 bus and a PC Pentium 11, connected by an Ethernet link and both installed on the vehicle.
(Ill) The third controller is an adaptive and learning RBFN based controller where t.he terms N(c3,V r ) and Il(w r ) are estimated with two neural networks where the number of centers of the first layer and the weight of the second layer are on-line updated making use of the acquired data (D'Amico et al., 2001b). (IV) The others controllers are derived by the new neural networks based models {M(j)}1=4 obtained by the on-line OLS algorithm. The terms (C3, v r ) and (wr ) with j = 4,5" . " L are estimated with two neural networks where the centers of the first layer and the weight of the second layer are updated by the on-line OLS algorithm.
14
With this experimental setup the real-time implementations of the developed multiple models RBFN based controller have been tested in the control module of the mobile robot navigation system. The training phases of the RBFN have been performed w.i~h data acquired in a set of trajectories. A set" 01\,15 trajectories, chosen with different shapes, curv~'ture radii and tracking velocities, have been used for the off-line training phase. The hidden layer of the nets used in the proposed control schemes contains from 6 to 9 neurons.
It
The controllers number varies from 3 to L. The proposed multiple models control scheme is based on a hierarchical architecture where the control actions and the on-line learning strategy are two independent processes coordinated by a supervisor. The supervisor tasks are to monitor the performances indices (7) in order to deduce the controller to be applied to the plant (i.e. the controller corresponding to the model with the minimum index) and to decide when to start the on-line learning procedure. For developing this second task the supervisor checks on-line if the outputs of the RBFN hidden layer are under a proper fixed threshold for a specified time lag. This means that the new set of input vectors is outside the input space covered by the RBFN. Then an on-line learning strategy to describe the new operating conditions through the develop of new neural networks based models is applied. The supervisor adds the new model with the relative controller to the multiple models control scheme increasing the controller ability to cope with different operating environments. This s0lution is computation intensive and require an high performance computer architecture based on a multi-processor system. The hierarchical control structure of Figure 1 (panel a) suggests to share the computation on two independent processors, where a processor is dedicated to the implementation of the real-time mUltiple models control scheme and of the supervisor, while on the second processor the on-line RBFN learning algorithm is implemented. The processors are independent and an asynchronous data link is used for coordinating the supervisor with the on-line learning algorithm.
The real-time multiple models RBFN based controller and the supervisor have been implemented on the PC 486 DX2. A sampling time of 0.4 s has been used, in order to guarantee a maximum vehicle velocity of 0.3 m/so Moreover the PC 486 DX2 acquires data from the actual trajectory for the RBFN on-line learning. The data are sent to the PC Pentium 11 connected by an Ethernet link. This second PC implements the on-line OLS algorithm for updating the off-line determined RBFN centers using the data acquired by the local net. The new neural networks are then sent to the PC 486 DX2 and are used by the control module to add a new model with the relative controller to the multiple model control scheme (see Figure 1 (panel b». Performances of the proposed multiple models RBFN based control scheme have been tested in many different environmental conditions and with different planned trajectories obtaining satisfactory results. A sample of the performed experimental tests is reported in the following. The proposed multiple models RBFN based controller has been tested with constant disturbances acting on the control inputs of the mobile robot (de Wit and Khennouf, 1995). The constant disturbances start at the 20th sample and finish at the 200th sample for the trajectory of Figure 2 (panel a). In the performed experimental tests, the vehicle covers two time the same trajectory with the same constant disturbances acting on the control inputs in order to verify the learning capability of the multiple models control scheme based on the multi-processor architecture. In fact the multiprocessor based control scheme stores the new operating conditions through the training of new neural networks models based on the on-line OLS learning algorithm. Figure 2 shows the position
4. EXPERIMENTAL RESULTS The experimental testing of the proposed controller has been performed on the LabMate mobile robot, available at the Robotics Lab of the University of Ancona and provided with an automatic
478
lines represent the tracking errors of the proposed multiple models RBFN controller based on the multi-processor architecture and the continuous lines represent the tracking errors of the previous control scheme when the vehicle cover the second time the trajectory with the same constant disturbance acting on the control inputs. In this case the control scheme is based on 5 models where the fifth model is that trained with the on-line OLS learning algorithm when the mobile base covers for the first time the trajectories. The applied sequence of regulators R j j = 1,2, 3,4 of the multi-processor RBFN based control scheme when the mobile base covers for the first time the trajectory of Figure 2 (panel a), is displayed in Figure 2 (panel e) . The applied sequence of regulators Rj, j = 1,2, 3,4,5 of the multi-processor RBFN based control scheme when the vehicle covers the second time the trajectory of Figure 2 (panel a), is displayed in Figure 2 (panel f) . Note that the considered multiple models control structure switches on a control scheme different from the fixed controller only in the presence of constant disturbance inputs, switching back to the fixed controller when the disturbances end. This fact shows that the fixed RBFN based controller is suitable for trajectories without disturbances . In fact , it is based on neural networks trained on a large set of different trajectories without disturbances, and therefore this nets have the ability to generalize when presented with trajectories not appearing in the training set. The investigated multi-processor multiple models RBFNbased controller is satisfactory in terms of tracking errors and computational efforts and shows an improvement of the control performances when the robot covers the second time the trajectory with the same constant disturbance inputs on the vehicle.
On-line RBFN Learning
C
SUPERVISOR~
-- - ----$~-------, r---
~
I
I
Multiple models controller
(a)
---
IoOIecIINlCOf,o:tOOfllrOlllwWomN ~tD'WI... ~r.ol1tHltlrOnltt .. ~ ,
--
5. CONCLUSIONS In this paper a multi-processor multiple models RBFN based approach for the tracking problem of a mobile vehicle is analyzed . The proposed approach is an application of a general learning control methodology which is based on the use of multiple models, switching, and tuning (Narendra and Xiang, 2000) .
--~-CNoCl"~_r.ocbtac:ollDdod
tromu.pIeIII
.............. ttOo.t.tt.fo
Fixed, adaptive and adaptive-learning RBFN based control strategies are integrated into this multiple models framework . The control algorithm makes use of multiple identification models of the mobile robot and of a switching scheme which determines the specific control input that drives the robot actuators. The main idea is to generate a control vector which is based on an identification model which best approximates the robot at each instant. Moreover the adaptivelearning control algorithm and the on-line OLS
, •
• •
w, • • • • ________ • • __ . _ ' ,
. ...cI .... _ _ _ ftiIhrooctolOOll'. __ _
~~-!"!~-~~-~~.-----------!
(b)
Fig. 1. Part (a): Hierarchical control scheme. Parts (b): Multi-processor architecture.
tracking errors (panels b, c) and orientation tracking error (panel d) obtained with the multiple models RBFN-based control scheme. The dotted
479
...,i
.~,----------?-~~--~---
based controller build up new models during tasks execution. Therefore the analyzed multi-processor control scheme can increase its knowledge by the introduction of new models and thus it is able to cope with different operating conditions. This control structure is therefore able to operate in different environments with different objectives.
-
..., 'I
...
....1 I
""'[ . .000
6. REFERENCES
)6O(l . MOt'.;6II() .XIO) . t$O(I
'O . _ _ _ _ _ _
Angcloni, A., T. Leo, S. Longhi and R. Zulli (1996). Real time collision avoidance for mobile robots. In: Proceedings 0/ the 6th Symposium on Measurement and Control in Robotics (ISMCR 96). Brussels, Belgium. pp. 239- 244. Chen, L. and K. S. Narendra (2000). Nonlinear adaptive control using neural networks and mUltiple models. In: Proceedings 0/ the 2000 American Control Con/erence. Vol. 6. pp. 4199-4203. Chen, S., C. F. N. Cowan and P. M Grant (1991). Orthogonal least squares learning algorithm for radial basis function networks . IEEE Transactions on Neural Networks 2(2), 302-309. Conte, G., S. Longhi and R. Zulli (1996) . Motion planning for unicycle and car-like robots. International Journal 0/ Systems Science 21(8),791-798. Corradini, M. L., C . Ippoliti, S . Longhi and S. Michelini (2000a) . Neural networks inverse model approach for the tracking problem of mobile robot. In: Proceedings 0/ the gth international Workshop on Robotics in Alpe-Adria-Danube Region (RAA D 2000). Maribor, Slovenia. pp. 17- 22. Corradini, M. L., C. Ippoliti, T. Leo and S. Longhi (2000b). The tracking problem of mobile robots: experimental results using a neural network approach . In: Proceedings 0/ the 2000 World Automation Congress (WAC 2000). Maui, Hawaii, USA . D'Amico, A., C. Ippoliti and S. Longhi (2001a). A radial basis function networks approach for the tracking problem of mobile robots. In: Proceeding.~ 0/ the 2001 IEEE/ASME International Conference on Advanced Intelligent Mechatronics (AIM '01). Como, Italy. pp. 498-503. D'Amico, A., G. Ippoliti and S. Longhi (2001b) . Adaptation and learning in neural networks multiple models based control of mobile robots. In: Proceedings 0/ the 2001 IFAC Workshop on Adaptation and Learning in Control and Signal Processing (ALCaSp 2001). Cernobbio-Como, Italy. pp. 199-206. de Wit, C. Canudas and H. Khennouf (1995). Quasicontinuous stabilizing controllers for nonholonomic systems: design and robustness considerations. In: Proceedings 0/ the Srd European Control Conference. Rome, Italy. pp. 2630-2635. Hush, D. R. and B. G. Horne (1993). Progress in supervised neural networks. IEEE Signal Processing Magazine 10,8-39. Jetto, L., S. Longhi and G. Venturini (1999). Development and experimental validation of an adaptive extended kalman filter for the localization of mobile robots. IEEE 1rans. on Robotics £3 Automation 15, 219- 229. Narendra, K. S. and C. Xiang (2000). Adaptive control of discrete-time systems using multiple models. IEEE Transactions on Automatic Control 45(9), 16691686. Warwick, K., C . Kambhampati, P. Parks and J. Mason (1996). Dynamic systems in neural networks. In: Neural Network Engineering in Dynamic Control Systems (K. Hunt, G. Irwin and K. Warwick, Eds.) . pp. 27-41. Springer- Verlag. London, Great Britain.
-.00/1
(a) ..--~-
*
_ _ ..
P ___
~
(b)
·tOO'
. --
----~.--
,
-- -
- . - - - .- - - -
.. mpl. .
(c)
..
~.
(d)
)2
, +-so
'00
. '"" -
200
2SO
200
z,o
(e)
J3
50
,~
-150
(f)
Fig. 2. Part (a): planned trajectory. Parts (b), (c), (d): tracking errors q (k), g2(k) and g3(k) respectively. The dotted lines and the continuous lines have been obtained when the vehicle covers the first time and the second time the trajectory respectively. Part (e), (f): index j ·of the applied sequence of regulators Rj, when the vehicle covers the first (j = 1,," ,4) and the second (j = 1"",5) time the trajectory respectively.
480