IMPLEMENTING ARTIFICIAL NEURAL NETWORK FOR ROBOT MANIPULATOR POSITION CONTROL
S.S. Yang, M. Moghavvemi* Power and Control Systems Research Group, Deptartment of Electrical Engineering, Faculty of Engineering, University of Malaya, 50603 Kuala Lumpur, Malaysia.
Abstract: Two artificial neural network or ANN paradigms trained to learn data obtained from the forward kinematics model of a U.M.I RTX robotic arm are presented in this paper. Trained ANN simulators were implemented to position the robotic manipulator demonstrating the feasibility of using ANN technology in actual implementation. Keywords: radial basis ANN, back propagation ANN, robotic arm
The implementation of artificial intelligence (AI) in robots maneuvering is concerned with making machines that can reason and approximate intelligently. AI is a branch of computer science that deals with the automation of intelligent behaviours. Providing a robot with sensory inputs and the ability to interpret these inputs is essentially an achievement towards the creation of an intelligent machine. ANNs are AI paradigms that are trained rather than programmed to perform a given task. Research activities in the field of neural network technology has increased exponentially over the last decade, leading to an enormous volume of research publications and the creation of journals as outlets for work specifically related to this field. The main reason for such interest is due to the limitations of conventional AI techniques based primarily on explicit symbolic reasoning. The main advantage of implementing artificial neural network is their ability to adaptively learn non-linear functions that are difficult to solve and to generalise on acquired knowledge. ANNs’ robust processing and adaptive capability in changing and noisy environment is also another distinct feature. ANN is suitable for all three levels of robotic processing applications- task planning, path planning and path control.
The inverse kinematics problem of a robotic arm is a problem well known for its non-linear characteristics. Manipulative robots are highly non-linear with expressive couplings between subsystems. Solving the inverse kinematics problem using conventional analytic methods requires sophisticated and computationally intensive mathematics. The difficulties involved in obtaining solutions to this problem, even for the simplest desired movement, makes it an interesting case study for the practical implementation of neural networks. The need to develop application techniques in order to fully exploit neural networks’ capabilities in practical implementation is essential. The emphasis of this case study is upon the application of ANN as a tool to simulate inverse kinematics and implemented as a position controller for the robotic arm. II. ARTIFICIAL NEURAL NETWORK
Artificial neural network is a form of parallel computing algorithm. ANNs are made up of a number of simple and highly interconnected processing elements organised into layers. These neurons process information by their dynamic state response to external inputs. ANNs are capable of “learning”
patterns by training it with a number of known patterns. The learning process is by repeatedly applying numerical data and the learning algorithms integrated in a conventional ANN will automatically adjust the weights and thresholds of the processing elements. Once adjusted with minimal difference between ANN output and targeted output, the network is said to be trained. The functional dependencies between input and output need not be specified due to the ANNs ability to evolve during the training process. ANNs may be simulated in the form of a computer algorithm or it can be implemented by hardware comprising of electronic components and devices.
Back Propagation ANN (BP ANN)
The back propagation ANN is so far the most popular ANN paradigm in use today. Its development has triggered widespread activities in this particular field. A multilayered ANN implementing the back propagation algorithm (Fig.1) allows complex decision domains and arbitrary decision regions including non-convex and multimodal regions to be formed. However, there is almost always no guarantee of convergence within the weight space since gradient used in weight update is the gradient for a given training sample and may not represent the overall gradient. In addition, training starts with random states requiring long periods to converge. Therefore, training may require thousands of iterations for a relatively simple problem. Moreover, it only implements an approximation to an actual non-linear mapping, hence accuracy of approximation is questionable.
Fig.1 Multi-layered Perceptron Back Propagation ANN
The back error propagation learning algorithm can be briefly summarised as follows, i) Set initial weights and thresholds to small random values. ii) Apply input and desired output training sets. iii) Compute inputs and outputs of each neuron. iv) Calculate errors based on the gradient descent technique. v) Adjust weights and thresholds. vi) Repeat the iteration process until an acceptably low error results in the outputs. B. Radial Basis Function ANN (RBF ANN)
This paradigm has recently been developed and may be defined as any network with an internal representation of hidden elements that are radially symmetrical (Fig.2). RBF ANNs can provide a faster alternative to back propagation networks while maintaining a high level of accuracy. Computational time may be reduced using the RBF ANN as only the second layer weights have to be adjusted and calculated using error signals. RBF ANNs are suitable for system modeling, prediction and classification. Initial learning phase involves non-supervised clustering hence important discriminating information could be lost. Regression problems may also require unbounded transfer
functions to be efficiently solved. In this manner back propagation networks can give a more complete distributed representation. yM y1 y2 outp ut weig layer hts hidde n ... layer weight s ... ... .... ....
... ... .... ....
Fig.2 The Radial Basis Function ANN
Performance is dependent on RBF units or cluster centres. The correct choice of centres is analogous to choosing the number of nodes in hidden layers of back propagation networks. RBF units have transfer functions such as the Gaussian density function that are non-monotonic radial basis function defined by a centre position and width. The training process is done using linear square regression method as described here. i) determine hidden node centres using some form of clustering method such as k-mean clustering , ii) hidden nodes width are determined by nearest neighbour heuristics, iii) second layer connection weights are determined by using supervised Least Mean Square error rule or delta rule, same as the back propagation network.
The definition of a robot in its simplest term is a computer whose primary purpose is to produce motion patterned after human functions. Robots takes over work done by humans that demands a high degree of precision, dull, dirty or dangerous. Robotics constitutes the study of a finite number of rigid mechanical chains representing a multi-variable nonlinear coupled system. Manipulative robots are highly non-linear with expressive couplings between sub-systems. Solving the inverse kinematics problem using conventional analytic methods requires sophisticated and computationally intensive mathematics. The difficulties involved in obtaining solutions to this problem, even for the simplest desired movement, makes it an interesting case study for the practical implementation of neural networks.
Robot manipulators are programmed to interact with its environment by positioning and orienting their end-effectors in space. Forward kinematics is an algorithm to calculate the location of the end-effector provided that the joint space description is known. Inverse kinematics, as the name implies is the reverse solution of forward kinematics. Inverse kinematics addresses the problem of computing the temporal evolution of the joint coordinate from the motion of end-effector. The solution of robot inverse kinematics computes the joint space co-ordinates given the end-effector location in Cartesian co-ordinates, producing multiple solutions, hence is more tedious and computationally intensive compared to the forward kinematics solution .
The U.M.I. RTX Robotic Arm
The U.M.I. RTX Robotic Arm is an industrial robot designed to be controlled from a personal computer. It is a SCARA (Selective Compliance Assembly Robot Arm) class manipulator. The arm is allowed to rotate about its shoulder with up and down in and out motions. It also includes a rotational joint in a plane parallel to the floor. Software supplied by the manufacturer allows compatibility with IBM compatible PCs via an RS232 serial link. The Cartesian Co-ordinate system is employed in this case study for easier programming and positioning of end-effector. Position, force and speed are controllable (electrically powered), therefore the robotic arm is said to be equipped with full servo control.
(x,y) _ X AXIS
Fig.3 Geometric Diagram of the U.M.I. RTX Robotic Arm
TRAINING THE ANN
In reality, the input space needed to cover the entire training range is so huge that it is impossible to present all possible inputs to the ANN for learning. Moreover, by only utilising part of the input space for training, the generalisation capability of ANNs can be emphasized; ANNs are expected to learn part of the input space and to guess or generalise for the rest. To achieve the desirable generalisation potential, it is necessary to constrain the training and test set to only accommodate the oftenencountered range of input space when used in actual implementation. The range of inputs and outputs for supervised ANN training must also be carefully scaled and selected as the quality of trained neural network may be seriously affected if careful selection is not made[7,8].
Input/Output & Training Parameters
The locations of the end-effector (in Cartesian co-ordinates) were calculated from feeding various values of joint angles into the forward kinematics algorithm. The range of inputs for the algorithm is shown in Table 1. A total of 576 patterns were generated using the robotic forward kinematics, using various values of the robot joint space description covering the permitted range of displacement.
Table 1. Training Data Range Item 1. 2. 3. 4. 5. 6. Description yaw e x y Range -90 ~ 60 30 ~ 120 30 ~ 60 0.0 ~ 60 -219.5314 ~ 63.6529 306.7500 ~ 470.2500
Items 4, 5 and 6 are designated as the outputs of the forward kinematics algorithm having items 1 ~ 3 as inputs. The inverse kinematics solution is the inverse of the patterns produced by the forward kinematics model. Therefore, it is apparent that to train the neural network to approximate the inverse kinematics solution, the input parameters designated for the ANN would then be the Cartesian coordinate space (x, y), (items 5 and 6), and wrist angle , while the outputs are the joint angles (items 1 ~ 3) to be sent to the robotic arm as control signals. B. Training & Testing
The ANNs were constructed and run on a PentiumTM 90MHz personal computer. Training and test data were generated and both ANNs were trained until no further improvements can be achieved. The ANN simulators were developed and tests were carried out. The random inputs for the tests are in the ranges of (i) -300 < x <300 and (ii) 0 < y < 700, at = 0, 30, 60. Accuracy of ANNs were very poor on the edges of the workspace. Therefore, improvements by appending more training data from around the workspace edges was also performed. The training was repeated with the new set of training data (total 701 patterns). As before, both ANNs were trained until no further improvements can be achieved and ANN simulators were generated. Tests were again carried out with the inputs similar to the earlier tests. Results of the most significant errors, at = 0 are plotted in figures 4, 5, 6 and 7.
Fig. 4 BP ANN: Errors in X axis
Fig. 5 RBF ANN: Errors in X axis
Fig. 6 BP ANN: Errors in Y axis
Fig. 7 RBF ANN: Errors in Y axis
The ANNs were set up with similar configurations and coefficient so that an accurate comparison may be performed. The network topology and parameters were chosen based on trial and error and sometimes with arbitrary values. Different sets of parameters were experimented upon before the final set was decided, based on the author’s view that a satisfactory level has been achieved. The inverse kinematics solution was learnt by the ANN using literally the reversed input/output relationship of values generated by the corresponding forward kinematics model.
As observed in figures 4 ~ 7, the errors for BP ANN are quite consistent (smoother plane). Errors in both axis are mostly concentrated at small isolated areas of the workspace compared to the RBF ANN errors. RBF ANN errors are quite obvious at various positions in the workspace. RBF ANNs require ten times more data to achieve a comparable accuracy to that of the BP ANNs. BP ANN has apparently outperformed the RBF ANN by producing a more reliable set of predictions (i.e. errors are consistent with less fluctuation).
Graphs were plotted to show relevant errors for robotic workspace and conclusions derived with reference to ANN’s level of accuracy and their ability to learn. As described in the previous section, the RBF ANN did not perform as well as the BP ANN. This conclusion is based on the comparison of the consistency of errors produced in both axis by the ANNs. The ANN simulators developed in this case study was also of practical use as it was implemented on-line to position the end-effector effectively. Although the implementation of ANNs as an intelligent tool for control offer the potential of achieving a higher level of robot intelligence. AI in robots is concerned with making machines that can think and sense. The integration of intelligence will greatly enhance the effectiveness and flexibility of robots.
The authors would like to thank the University of Bradford, UK., for the use of lab facilities and the Ministry of Science, Technology & the Environment, Government of Malaysia, as this paper was made possible with funding from the Ministry under the “Intensified Research in Priority Areas (IRPA)” programme.
 S.Y. Kung, J.N. Hwang, “Neural Network Architectures for Robotic Applications”, IEEE Transactions on Robotics and Automation, Vol.5, No.5, October 1989.  V. Sagar, S. Vankayala, N.D. Rao, “Artificial Neural Networks and their Applications to Power Systems - A Bibliographical Survey”, Electric Power Systems Research, 28, pp67-79, 1993.  J.D. Mason, R.J. Craddock, J.C. Mason, P.C. Parks, K. Warwick, “Towards a Stability and Approximation Theory for NeuroControllers”, Control’94, 21-24 March, Conference Publications No.389, 1994.  Moody J., Darken C.J., “Fast Learning in Networks of Locally Tuned Processing Units”, Neural Computing, 1, pp281-294, 1989.  Piper, D.L., “The Kinematics of Manipulators Under Computer Control”, Ph.D. Thesis, Dept. of Computer Science, Stanford University, Stanford, California, 1968.  U.M.I.., “The RTX User Manual”, Universal Machine Intelligence Limited, London, 1986.  H. Takahashi et al., “The Reliability of Neural Networks on Pattern Recognition”, IEEE International Conference on Computational Intelligence, Vol.5, pp3067-3070, 1994.  I.S. Helliwell et al., “Accountability of Neural Networks Trained with “Real World” Data”, Proceedings of the IEE 4th. International Conference on Artificial Neural Network, pp218-222, 1995.  Ranameera, Pamitha K. , “Comparison of NN Nodes for Fault Diagnosis of Power System”, Electric Power Systems Research, 29, pp99-104, 1994.