Comparison of Neural Network–Based Adaptive Controllers Using Hypercomplex Numbers for Controlling Robot Manipulator

Comparison of Neural Network–Based Adaptive Controllers Using Hypercomplex Numbers for Controlling Robot Manipulator

Available online at www.sciencedirect.com ScienceDirect IFAC PapersOnLine 52-29 (2019) 67–72 Comparison Comparison of of Neural Neural Network–Based...

858KB Sizes 0 Downloads 53 Views

Available online at www.sciencedirect.com

ScienceDirect IFAC PapersOnLine 52-29 (2019) 67–72

Comparison Comparison of of Neural Neural Network–Based Network–Based Comparison of Neural Network–Based Adaptive Controllers Using Hypercomplex Comparison of Neural Network–Based Adaptive Controllers Using Hypercomplex Adaptive Controllers Using Hypercomplex Numbers for Controlling Robot Adaptive Controllers Using Hypercomplex Numbers for Controlling Numbers Manipulator for Controlling Robot Robot Numbers Manipulator for Controlling Robot Manipulator Manipulator Kazuhiko Takahashi

Kazuhiko Takahashi Kazuhiko Kazuhiko Takahashi Takahashi Kazuhiko Takahashi Doshisha Doshisha University, University, Kyoto, Kyoto, 6100321 6100321 Japan Japan Doshisha University, Kyoto, 6100321 6100321 Japan Japan (e-mail: [email protected]) Doshisha University, Kyoto, (e-mail: [email protected]) Doshisha Kyoto, 6100321 Japan (e-mail: University, [email protected]) (e-mail: [email protected]) (e-mail: [email protected]) Abstract: This This study study investigates investigates an an adaptive adaptive controller controller by by applying applying aa neural neural network, network, in in which which Abstract: Abstract: This study investigates an adaptive controller by applying aa neural network, in which all the network parameters, states, signals and functions are expressed using hypercomplex Abstract: This study investigates an adaptive controller by applying neural network, in which all the network states, signals and functions are expressed using hypercomplex parameters, Abstract: This study investigates an adaptive controller by applying a neural network, in which all the network parameters, states, signals and functions are expressed using hypercomplex numbers and algebras; its application to dynamics control of a robot manipulator. To design all the network parameters, states, signals and functions are expressed using hypercomplex numbers and algebras; its application to dynamics control are of aexpressed robot manipulator. To design all the network parameters, states, signals and functions using hypercomplex numbers and algebras; algebras; its application application to dynamics controlnetwork of aa robot robot manipulator. To design design hypercomplex–valued neural networks where each neural is a multilayer feedforward numbers and its to dynamics control of manipulator. To hypercomplex–valued neural networks to where each neural network is amanipulator. multilayer feedforward numbers and algebras; its activation application dynamics controlusing of a arobot To design hypercomplex–valued neural networksfunction where each neural network is aa multilayer multilayer feedforward feedforward network with a split–type split–type of neurons neurons tapped–delay–line input, we hypercomplex–valued neural networks where each neural network is network with a activation function of using a tapped–delay–line input, we hypercomplex–valued neural networks where each neural network is a multilayer feedforward network with a split–type activation function of neurons using a tapped–delay–line input, we consider the following four types of hypercomplex numbers: complex, hyperbolic, bicomplex network with a split–type activation function of neurons using a tapped–delay–line input, we consider the following fouractivation types of hypercomplex numbers: complex, hyperbolic, bicomplex network with a split–type function of neurons using a tapped–delay–line input, we consider the following four types of hypercomplex numbers: complex, hyperbolic, bicomplex and quaternion numbers. In the control system, we utilise a feedback error–learning scheme to consider the following four types of hypercomplex numbers: complex, hyperbolic, bicomplex and quaternion numbers. In the control system, we utilise a feedback error–learning scheme to consider thetraining following four types of hypercomplex numbers: complex, hyperbolic, bicomplex and quaternion quaternion numbers. In the control control system, we utilise utilise a feedback feedback error–learning scheme to to conduct the of the network through a back–propagation algorithm. In the computational and numbers. In the system, we a error–learning scheme conduct the training of theIn network through a back–propagation algorithm. In the computational and quaternion numbers. the control system, we utilise a feedback error–learning scheme to conduct the training training of the the network through a back–propagation back–propagation algorithm. In the the as computational experiments, we explore a hypercomplex–valued neural network–based controller a trajectory conduct the of network through a algorithm. In computational experiments, we explore a hypercomplex–valued neural network–based controller as a trajectory conduct the training the network through a back–propagation algorithm. Inofthe computational experiments, we a neural controller as aa trajectory control problem of aaofthree–link three–link robot manipulator, innetwork–based which the the position the end–effector experiments, we explore explore a hypercomplex–valued hypercomplex–valued neural network–based controller as trajectory control problem of robot manipulator, in which position of the end–effector experiments, we explore a hypercomplex–valued neural network–based controller as a trajectory control problem of a three–link robot manipulator, in which the position of the end–effector follows to the desired trajectory in a 3–dimensional space. The simulation results validate the control to problem of a three–link robot manipulator, space. in which the position results of the end–effector follows the desired trajectory in a 3–dimensional The simulation validate the control problem of a three–link robot manipulator, in which position of for the this end–effector follows to to the desired desired trajectory inquaternion a 3–dimensional 3–dimensional space. Thethe simulation results validate the feasibility and effectiveness of the neural network–based controller task. follows the trajectory in a space. The simulation results validate the feasibility effectiveness of theinquaternion neural space. network–based controller for this task. the follows to and the desired trajectory a 3–dimensional The simulation results validate feasibility and effectiveness of the the quaternion quaternion neural network–based network–based controller for this this task. feasibility and effectiveness of neural controller for task. © 2019, IFAC (International Federation of Automatic Control) Hosting by Elsevier Ltd. All reserved. feasibility and effectiveness of the quaternion neural network–based controller forrights this task. Keywords: Neural network, Hypercomplex number, Robot manipulator, Control. Keywords: Neural network, Hypercomplex number, Robot manipulator, Control. Keywords: Keywords: Neural Neural network, network, Hypercomplex Hypercomplex number, number, Robot Robot manipulator, manipulator, Control. Control. Keywords: Neural network, Hypercomplex number, Robot manipulator, Control. 1. INTRODUCTION et al. (2011)], pattern classification [Greenblatt and Aga1. INTRODUCTION et al. (2011)], pattern classification [Greenblatt and Aga1. et (2011)], pattern [Greenblatt and ian (2013), Shang and classification Hirose (2014)] and document pro1. INTRODUCTION INTRODUCTION et al. al. (2011)], pattern classification [Greenblatt and AgaAgaian (2013), Shang and Hirose (2014)] and document pro1. INTRODUCTION et al. (2011)], pattern classification [Greenblatt and Agaian (2013), Shang and Hirose (2014)] and document processing [Parcollet et al. (2016)]. However, the application of ian (2013), Shangetand Hirose (2014)] and document proRecently, neural networks equipped with deep learning cessing [Parcollet al. (2016)]. However, the application of Recently, neural networks equipped with deep learning ian (2013), Shanget and Hirosenetworks (2014)] and document processing [Parcollet al. (2016)]. However, the application of hypercomplex–valued neural to control practical cessing [Parcollet et al. (2016)]. However, the application of Recently, neural networks equipped with deep learning techniques have been applied to solve intractable probRecently, neural networks equipped with deep learning hypercomplex–valued neural networks to control practical techniques have been applied to solve intractable probcessing [Parcollet et al.adequately (2016)]. However, the application of hypercomplex–valued neural networks to control practical systems has not been investigated. Recently, neural networks equipped with deep learning hypercomplex–valued neural networks to control practical techniques have been applied to solve intractable problems in many fields of science and engineering and suctechniques havefields beenofapplied intractable has not been adequately investigated. lems in many science to andsolve engineering andprobsuc- systems hypercomplex–valued neural networks to control practical systems has not been adequately investigated. techniques have been applied to solve intractable probsystems has not beenthe adequately investigated. lems many of and and cessful applications have been reported. These problems lems in inapplications many fields fields have of science science and engineering engineering and sucsuc- This study applies following hypercomplex–valued cessful been reported. These problems systems has not beenthe adequately investigated. study applies following hypercomplex–valued lems inapplications many fields have of science and engineering and suc- This cessful been reported. problems are usually multidimensional issues and These have numerous cessful applications have been reported. These problems This study applies the following hypercomplex–valued neural networks to the dynamics control of a robot manipThis study applies the following hypercomplex–valued are usually multidimensional issues and have numerous networks to the dynamics control of a robot manipcessful applications have reported. problems are multidimensional and have numerous quantities that involve notbeen onlyissues magnitude but also phase. neural are usually usually multidimensional issues and These have numerous This study applies the following hypercomplex–valued neural networks to the dynamics control of ulator: complex neural network (CNN), hyperbolic neural neural networks to the dynamics control of aa robot robot manipmanipquantities that involve not only magnitude but also phase. complex neural network (CNN), hyperbolic neural are represent usuallythat multidimensional issues and have numerous quantities involve not only magnitude but also phase. To such problems more efficiently, we can em- ulator: quantities that involve not only magnitude but also phase. neural networks tobicomplex the dynamics control of a robot manipulator: complex network (CNN), hyperbolic neural network (HNN),neural neural network (BNN) and ulator: complex neural network (CNN), hyperbolic neural To represent such problems more efficiently, we can em(HNN), bicomplex neural network (BNN) and quantities thatsuch involve not only magnitude butsignificantly also phase. To problems more efficiently, we can employ high–dimensional number systems. This To represent represent such problems more efficiently, we can em- network ulator: complex neural network (CNN), hyperbolic network (HNN), bicomplex neural network (BNN) and quaternion neural network (QNN). In addition, itneural comnumber systems. This network (HNN), bicomplex neural network (BNN) and ploy high–dimensional significantly neural network (QNN). In addition, it comTo problems more efficiently, we can with em- quaternion ploy high–dimensional number systems. This significantly decreases the such computational complexity compared ployrepresent high–dimensional number systems. This significantly network (HNN), bicomplex neural network (BNN) and quaternion neural network (QNN). In addition, it compares their characteristics with each other in the control quaternion neural network (QNN). In addition, it comdecreases the computational complexity compared with their characteristics with each In other in the itcontrol pares ploy high–dimensional numbercomplexity systems. This significantly decreases the computational compared with the one–dimensional number, i.e. a real number. Hydecreases the computational complexity compared with quaternion neural network (QNN). addition, compares their characteristics with each other in the control system. We design an adaptive controller, in which the Hy- system. pares their with each other inin the control the one–dimensional number, i.e. a realcompared number. Wecharacteristics design an adaptive controller, which the decreases thenumbers computational complexity the number, i.e. number. Hypercomplex [Alfsmann et aaal.real (2007)], suchwith as system. the one–dimensional one–dimensional number, i.e.et real number. Hypares their with each other inin the control design an adaptive controller, which the output ofWe acharacteristics multilayer hypercomplex–valued neural netsystem. We design an adaptive controller, in which the percomplex numbers [Alfsmann al. (2007)], such as multilayer ofWeaa design hypercomplex–valued netthe one–dimensional number, i.e.et aal. number. percomplex [Alfsmann (2007)], such as complex andnumbers quaternion numbers, are high–dimensional percomplex numbers [Alfsmann et are al.real (2007)], suchHyas output system. adaptive controller, inneural which the output multilayer hypercomplex–valued neural network is of applied as aancontrol input for a plant to make output of a multilayer hypercomplex–valued neural netcomplex and quaternion numbers, high–dimensional is applied as aa control input for aa plant to make percomplex numbers et are al. (2007)], such complex and quaternion numbers, numbers in which the[Alfsmann number field is high–dimensional extended from asa work complex and quaternion numbers, are high–dimensional output of a multilayer hypercomplex–valued neural network is applied as control input for plant to make its output match the desired output. To validate the effecwork is applied controloutput. input To for validate a plant the to make numbers in which the number field is extended from aa its match as theaadesired effecoutput complex and quaternion numbers, numbers in the number field is extended from real number and can handle high–dimensional data numbers in which which the handle number fieldare is high–dimensional extended data from as a its work is of applied controloutput. input To for validate a plantnetwork to make output match the desired output. To validate the effectiveness using aaas hypercomplex–valued neural in real number and can high–dimensional as its output match the desired the effectiveness of using hypercomplex–valued neural network in in which the handle number field is extended data from a tiveness real number and can high–dimensional as anumbers single variable. Therefore, hypercomplex–valued neural real number and can handle high–dimensional data as its output match desired output. To validate the effecof using aathe hypercomplex–valued neural network in practical control applications, we conduct computational tiveness of using hypercomplex–valued neural network in a single variable. Therefore, hypercomplex–valued neural we conduct computational real number can high–dimensional as practical anetworks, variable. Therefore, hypercomplex–valued neural in and which all handle the network parameters,data states, a single single variable. Therefore, hypercomplex–valued neural tiveness ofcontrol using aapplications, hypercomplex–valued neural network practical control applications, conduct computational experiments, which control thewe end–effector position of in a practical control applications, we conduct computational networks, in which all the network parameters, states, which control the end–effector position of a a single and variable. Therefore, hypercomplex–valued neural experiments, networks, in which all the network parameters, states, signals functions are expressed using hypercomplex networks, infunctions which allare theexpressed network parameters, states, practical control applications, we conduct computational experiments, which control the end–effector position of aa three–link robot manipulator. experiments, which control the end–effector position of signals and using hypercomplex robot manipulator. networks, infunctions which allare theexpressed network parameters, states, three–link signals using hypercomplex numbers and algebras, have been proposed proposed as aa solution solution signals and and functions are expressed using hypercomplex experiments, which control the end–effector position of a three–link manipulator. numbers and algebras, have been as three–link robot robot manipulator. signals functions are using networks hypercomplex numbers and algebras, have been proposed as aa solution to such and problems. This isexpressed because these have three–link robot manipulator. numbers and algebras, have been proposed as solution to such problems. This is because these networks have 2. NEURAL NEURAL NETWORKS NETWORKS USING USING HYPERCOMPLEX HYPERCOMPLEX numbers and algebras, beenbetter proposed as a solution to problems. This is these have several advantages and have perform in networks learning than to such such advantages problems. This is because because thesein networks have 2. several and perform better learning than 2. NEURAL NETWORKS USING HYPERCOMPLEX NUMBERS to such problems. This is because these networks have several advantages and perform better in learning than 2. NEURAL NETWORKS USING HYPERCOMPLEX conventional neural networks [Tripathi (2015)]. For examseveral advantages and perform better(2015)]. in learning than NUMBERS conventional neural networks [Tripathi For exam2. NEURAL NETWORKS USING HYPERCOMPLEX NUMBERS several advantages and perform better in learning than conventional neural networks [Tripathi (2015)]. For examNUMBERS ple, many successful applications using complex neural conventional neural networks [Tripathi (2015)]. For neural example, many successful applications using complex NUMBERS conventional neural [Tripathi (2015)]. For neural exam- In this study, two types of two–dimension number, such as ple, many successful applications complex networks have beennetworks discussed, e.g.using filtering, time–series ple, manyhave successful applications using complex neural two types of two–dimension number, such as networks been discussed, e.g. filtering, time–series this study, ple, many successful applications using complex neural In networks have been discussed, e.g. filtering, time–series In two types of as signal processing, telecommunications, image processing complex number and hyperbolic number,number, and twosuch types networks have been discussed, e.g. filtering, time–series In this this study, study, two and typeshyperbolic of two–dimension two–dimension number, such as signal processing, telecommunications, image processing complex number number, and two types networks have been discussed, e.g. Hirose filtering, time–series In this study, two and types of two–dimension number, such as signal processing, telecommunications, image processing complex number hyperbolic number, and two types and video processing [Nitta (2009), (2009), (2013)], while of four–dimension number, such as bicomplex number signal processing, telecommunications, image processing complex number and hyperbolic number, and two types Hirose and video processing [Nitta (2013)], while of four–dimension number, such as bicomplex number signal processing, telecommunications, image processing complex number and hyperbolic number, and two types and video processing [Nitta (2009), Hirose (2013)], while of four–dimension number, such as bicomplex number quaternion neural networks have been also demonstrated and quaternion number, are considered to design the and video processing [Nitta have (2009), Hirose while and of four–dimension number,aresuch as bicomplex number quaternion neural networks been also (2013)], demonstrated quaternion number, considered to design the andseveral video applications processing [Nitta (2009), Hirose (2013)], while of four–dimension number, as bicomplex number quaternion neural have been also demonstrated quaternion are considered to the in [Parcollet et al. (2019)], which in- and hypercomplex–valued neural networks. A neural network quaternion neural networks networks have been also demonstrated and quaternion number, number, aresuch considered to design design the applications [Parcollet et al. (2019)], which inin several hypercomplex–valued neural networks. A neural network quaternion neural networks have been also demonstrated and quaternionnetwork number, areapplies considered to design the in several applications [Parcollet et al. (2019)], which inhypercomplex–valued neural networks. A neural network clude signal processing [Arena et al. (1996), Buchholz and is a feedforward that a three–layer in several applications [Parcollet et al. (2019)], which inhypercomplex–valued neural networks. A neural network clude signal processing [Arena et al. (1996), Buchholz and is aa feedforward network that applies aa three–layer network in several applications [Parcollet et al. (2019)], which inhypercomplex–valued neural networks. A neural clude signal processing [Arena et al. (1996), Buchholz and is feedforward network that applies three–layer network Bihan (2006)], attitude control [Fortuna et al. (2001)], topology with one input layer, one hidden layer and one clude signal processing [Arena et al. (1996),etBuchholz and topology is a feedforward network that applies a three–layer network Bihan (2006)], attitude control [Fortuna al. (2001)], with one input layer, one hidden layer and one clude processing [Arena (1996),filtering and topology is a feedforward network applies a three–layer network Bihan (2006)], attitude control [Fortuna et al. with one input layer, one and one image processing [Kusamichi etetal.al. (2004)], [Ujang output layer. The forward calculation of thelayer network, i.e. Bihansignal (2006)], attitude control [Fortuna etBuchholz al. (2001)], (2001)], topology withThe one inputthat layer, one hidden hidden layer and one image processing [Kusamichi et al. (2004)], filtering [Ujang output layer. forward calculation of the network, i.e. Bihan (2006)], attitude control [Fortuna et al. (2001)], topology with one input layer, one hidden layer and image i.e. image processing processing [Kusamichi [Kusamichi et et al. al. (2004)], (2004)], filtering filtering [Ujang [Ujang output output layer. layer. The The forward forward calculation calculation of of the the network, network, one i.e. image processing [Kusamichi et al.Federation (2004)],offiltering [Ujang outputbylayer. The forward of the network, i.e. 2405-8963 © 2019, IFAC (International Automatic Control) Hosting Elsevier Ltd. All rightscalculation reserved. ∗ ∗ ∗ ∗ ∗

Peer review under responsibility of International Federation of Automatic Control. 10.1016/j.ifacol.2019.12.623

Kazuhiko Takahashi / IFAC PapersOnLine 52-29 (2019) 67–72

68

the relationship between the input and output of the network, can be expressed as follows:  ∑  xj (t) = w1ji si (t) + ϕ1j (t)     i  v j (t) = f (xj (t)) , (1)  ∑   o (t) =  w2kj v j (t) + ϕ2k (t)   k

zs = (z00 s00 − z01 s01 − z10 s10 + z11 s11 )

+(z01 s00 + z00 s01 − z11 s10 − z10 s11 )i

+(z10 s00 − z11 s01 + z00 s10 − z01 s11 )j

+(z11 s00 + z10 s01 + z01 s10 + z00 s11 )ij.

The norm of a bicomplex number is defined by

j

where si denotes an external input to the i–th neuron unit in the input layer, w1ji denotes the weight between the i– th neuron in the input layer and that of the j–th in the hidden layer, ϕ1j denotes the threshold of the j–th neuron in the hidden layer, w2kj denotes the weight between the j-th neuron in the hidden layer and that of the k–th in the output layer, ϕ2k denotes the threshold of the k–th neuron in the output layer, ok denotes an output of the k–th neuron unit in the output layer and f denotes an activation function of the neuron unit.

∥z∥=



while the multiplication of two complex numbers is given by zs = (z0 s0 − z1 s1 ) + (z0 s1 + z1 s0 )i.

The norm of a complex number is defined by √ √ ∥z∥= zz ∗ = z02 + z12

where z ∗ = z0 − z1 i denotes the conjugate of the complex number z. Hyperbolic number: In the set of hyperbolic number D := {z = z0 + z1 h | z0 , z1 ∈ R, h2 = 1}, the addition of two hyperbolic numbers z and s is given by z + s = (z0 + s0 ) + (z1 + s1 )h while the multiplication of two hyperbolic numbers is given by

Quaternion number: In the set of quaternion numbers H := {z = z0 + z1 i + z2 j + z3 k | z0 , z1 , z2 , z3 ∈ R, i2 = j2 = k2 = ijk = −1, ij = −ji = k, jk = −kj = i, ki = −ik = j}, the addition of two quaternion numbers z and s is given by z + s = (z0 + s0 ) + (z1 + s1 )i +(z2 + s2 )j + (z3 + s3 )k while the multiplication of two quaternion numbers is given by zs = (z0 s0 − z1 z1 − z2 s2 − z3 s3 )

+(z1 s0 + z0 s1 − z3 s2 + z2 s3 )i

+(z2 s0 + z3 s1 + z0 s2 − z1 s3 )j

+(z3 s0 − z2 s1 + z1 s2 + z0 s3 )k.

The norm of a quaternion number is defined by ∥z∥=

where z ∗ = z0 − z1 h denotes the conjugate of the hyperbolic number z. Bicomplex number: In the set of bicomplex number T := {z = z 0 + z 1 j | z j = zj0 + zj1 i ∈ C (j = 1, 2), i2 = j2 = −1, ij = ji}, the addition of two bicomplex numbers z and s is given by z + s = (z00 + s00 ) + (z01 + s01 )i +(z10 + s10 )j + (z11 + s11 )ij while the multiplication of two bicomplex numbers is given by

√ √ zz ∗ = z02 + z12 + z22 + z32

where z ∗ = z0 − z1 i − z2 j − z3 k denotes the conjugate of the quaternion number z. In the learning process of a neural network, the gradient– descent method can be performed to minimise the cost function E(t):

zs = (z0 s0 + z1 s1 ) + (z0 s1 + z1 s0 )h. The norm of a hyperbolic number is defined by √ √ ∥z∥= zz ∗ = z02 − z12

√ 2 + z2 + z2 + z2 z00 01 10 11

where z ⋆ = z ∗0 + z ∗1 j, z † = z 0 − z 1 j and z ∗ = z ∗0 − z ∗1 j denote the conjugates of the bicomplex number z.

Complex number: In the set of complex number C := {z = z0 + z1 i | z0 , z1 ∈ R, i2 = −1}, the addition of two complex numbers z and s is given by z + s = (z0 + s0 ) + (z1 + s1 )i

zz ∗ + z ⋆ (z ∗ )⋆ = 2

E(t) =

1∑ ∥ϵk (t)∥2 , 2

(2)

k

where ϵk (t) denotes the output error defined by ϵk (t) = dk − ok (t), and dk denotes the desired output of the k– th neuron unit of the output layer. By applying a back– propagation algorithm, the network parameters can be updated as follows: {

w(t + 1) = (1 − σ)w(t) − η∇w E(t)

ϕ(t + 1) = (1 − σ)ϕ(t) − η∇ϕ E(t)

,

(3)

where η, σ ∈ R+ denote a learning factor and a decay factor, respectively. The gradient of the cost function with respect to the network parameters can be derived as follows:



Kazuhiko Takahashi / IFAC PapersOnLine 52-29 (2019) 67–72

∇w2kj E(t) = −ϵk (t)v ∗j (t),

∇ϕ E(t) = −ϵk (t), 2k ∑ ∇w1ji E(t) = − w∗2kj ϵk (t) ⊙ f ′ (xj (t))s∗i (t), k

∇ϕ E(t) = − 1j

∑ k

w∗2kj ϵk (t) ⊙ f ′ (xj (t)),

where ⊙ denotes the component–by–component product. A split–type function, in which a real–valued non–linear function is independently applied to each component of the hypercomplex number, is used as the activation function of the neuron [Ujang et al. (2010)]. 3. CONTROL SYSTEM USING NEURAL NETWORK In our previously conducted studies [Takahashi et al. (2016), Takahashi (2017)], controller applications based on a QNN were proposed where the servo–level controllers were designed by utilising mathematical representations of a non–linear discrete–time plant as target systems. To handle plant dynamics with the controller, the input of the QNN consists of the time–series data of the plant inputs/outputs by applying a tapped–delay–line method. A feedback error–learning scheme is introduced into the control system and therefore a back–propagation algorithm can be conducted to train the network. Because of the use of the feedback error–learning scheme, the control input to the plant is the sum of the QNN output, o, and the feedback controller output, uf bc . 4. COMPUTATIONAL EXPERIMENTS This study considers a three–link robot manipulator depicted in Fig. 1 as the target system. Here the robot manipulator is the rotation(θ1 )–pivot(θ2 )–pivot(θ3 ) type manipulator. The joint angles θi are controlled by applying the control torques τi (i = 1, 2, 3), respectively. Using Lagrange’s equation, we derive the equation of motion for the robot manipulator as follows: ¨ + K(θ, θ) ˙ + D θ˙ + ξ(θ) ˙ =τ M (θ)θ (4) where θ ∈ R3 denotes the vector of the joint angle; ˙ ∈ R3 M (θ) ∈ R3×3 denotes the inertia matrix; K(θ, θ) Z

θ3 τ3

z3 y3

θ2 x3 z2 τ2

y2 x2 z1 y1

O

x1

τ1 θ1 X

Fig. 1. A three–link robot manipulator.

Y

69

denotes the Coriolis force, centrifugal force and gravity ˙ ∈ R3 force; D ∈ R3×3 denotes the viscous matrix; ξ(θ) denotes the vector of the solid friction force at the joints; τ ∈ R3 denotes the vector of the control torque given by the control input u = o + uf bc : τ = κu, where κ ∈ R+ denotes the gain coefficient to the input. We utilised the PD–controller as the feedback controller in the experiments. In the conducted experiments, the desired outputs, i.e. the desired joint angles θ d , were given in advance using the inverse kinematics model of the manipulator f IK (·) to ensure that the end–effector of the robot manipulator tracked a desired trajectory in the O–XYZ space: θ d = f IK (pd , L), where pd denotes the desired position of the end–effector and Li (i = 1, 2, 3) denotes the length of the link. Herein, the desired trajectory pd is a circular trajectory consisting of N data points per round (N = 1000 in the experiments). Hereafter, one round of the trajectory is referred to as one cycle. By following the controller design method proposed in our previous study [Takahashi (2018)], the neural network is applied to control the robot manipulator. The following is the network input in the CNN and the HNN: s1 (t) = θd1 (t + 1), s2 (t) = θd2 (t + 1), s3 (t) = θd3 (t + 1), s4 (t) = θ1 (t) + uf bc1 (t)i, s5 (t) = θ2 (t) + uf bc2 (t)i, s6 (t) = θ3 (t) + uf bc3 (t)i, s7 (t) = θ1 (t − 1) + u1 (t − 1)i, s8 (t) = θ2 (t − 1) + u2 (t − 1)i, s9 (t) = θ3 (t − 1) + u3 (t − 1)i, s10 (t) = θ1 (t − 2) + u1 (t − 2)i, s11 (t) = θ2 (t − 2) + u2 (t − 2)i, s12 (t) = θ3 (t−2)+u3 (t−2)i, s13 (t) = θ1 (t−3)+u1 (t−3)i, s14 (t) = θ2 (t − 3) + u2 (t − 3)i, and s15 (t) = θ3 (t − 3) + u3 (t − 3)i where the imaginary unit i is replaced with h as the HNN. Therefore, these neural networks comprise 15 neurons in the input layer. The number of neuron in the output layer is three because the imaginary part of the neural network output is utilised to synthesise part of the control input. Therefore, the control input is defined as follows: ul (t) = ol1 (t) + uf bcl (t) (l = 1, 2, 3). The following is the network input in the QNN and the BNN: s1 (t) = θd1 (t + 1)i + θd2 (t + 1)j + θd3 (t + 1)k, s2 (t) = θ1 (t)i + θ2 (t)j + θ3 (t)k, s3 (t) = θ1 (t − 1)i + θ2 (t − 1)j + θ3 (t − 1)k, s4 (t) = θ1 (t − 2)i + θ2 (t − 2)j + θ3 (t − 2)k, s5 (t) = θ1 (t − 3)i + θ2 (t − 3)j + θ3 (t − 3)k, s6 (t) = u1 (t − 1)i+u2 (t−1)j+u3 (t−1)k, s7 (t) = u1 (t−2)i+u2 (t−2)j+ u3 (t − 2)k, s8 (t) = u1 (t − 3)i + u2 (t − 3)j + u3 (t − 3)k, and s9 (t) = uf bc1 (t)i + uf bc2 (t)j + uf bc3 (t)k where the imaginary units i, j and k are replaced with i, j and ij, respectively, for the BNN. Consequently, these neural networks comprise nine neurons in the input layer. The number of neuron in the output layer is one. The control input is defined as follows by utilising the imaginary part of the neural network output: ul (t) = o1l (t) + uf bcl (t) (l = 1, 2, 3). For the neuron in the hidden layer of all the neural networks, the real–valued function of the split– type activation function was a sigmoid function. In the experiments we conducted, training of the neural network was terminated when the normalised cost function, which is defined as the mean of the cost function within one cycle of the desired output, was smaller than a threshold value of 10−4 for five continuous cycles. In all the neural networks, the learning factor, η, and the decay factor, σ, are 0.01 and 10−5 , respectively. These values were determined by

Kazuhiko Takahashi / IFAC PapersOnLine 52-29 (2019) 67–72

1

1

0.5

0.5 Output 1

Output 1

70

0 −0.5 −1 0

100

200

300

400

500

600

700

800

900

0 −0.5 −1 52 000

1 000

52 200

52 400

sampling number t 1.5

53 000

52 800

53 000

52 800

53 000

1 Output 2

Output 2

52 800

1.5

1 0.5 0 −0.5 0

100

200

300

400

500

600

700

800

900

1 000

0.5 0 −0.5 52 000

52 200

52 400

sampling number t 3

3

2

2

1 0 0

100

200

300

400

500

600

52 600

sampling number t

Output 3

Output 3

52 600

sampling number t

700

800

900

1 000

1

0 52 000

52 200

52 400

sampling number t

52 600

sampling number t

Fig. 2. An example of a response in the joint space for controlling the robot manipulator against the circular trajectory using the QNN–based controller, where the left–hand side denotes the responses within the first cycle, while the right–hand side denotes the responses within the cycle which terminate the learning of the network. The desired outputs are highlighted in blue, while the joint angles are highlighted in red (top: joint angle θ1 , middle: joint angle θ2 and bottom: joint angle θ3 ). 100

Cycle

80 60 40 Z

20 0 Y

X

Fig. 3. An example of a response for controlling the robot manipulator against the circular trajectory using the QNN–based controller. The desired trajectory of the end–effector is denoted with blue dots, the system response within the first cycle is denoted with green dots, the system response within the cycle that terminated the training is denoted with red dots; the stick figure denotes the initial posture of the robot manipulator. utilising a brute–forth approach to stably accelerate the training of the neural networks. Figure 2 illustrates examples of the system response by applying the QNN–based controller, where the system outputs are illustrated in the joint space. Figure 3 shows the responses in the O–XYZ space where the trajectories of the end–effector obtained in both the first cycle and the cycle terminating the learning of the network are illustrated. Herein, the QNN uses 9–3–1 network topology.

RNN

CNN

HNN

BNN

QNN

Fig. 4. Comparison of the number of cycles by considering the neural network to terminate its learning against the circular trajectory. The initial condition of the robot manipulator was θ(0) = T [ 0 π/12 π/4 ] . The direction of motion along the circular trajectory in the vertical plane parallel to the O–YZ plane was anticlockwise. As shown in these figures, the training of the QNN is terminated at the 52nd cycle, and the end– effector followed the desired trajectory by utilising the QNN–based controller as its training progressed. Figure 4 compares the learning performance of the hypercomplex–valued neural networks with each other. As an alternative, a real–valued neural network (RNN) is used to design the controller. The network topologies are 27–5– 3, 15–4–3, 15–4–3, 9–3–1 and 9–3–1 in the RNN, CNN, HNN, BNN and QNN, respectively. In Fig. 4, the number of cycles needed to satisfy the condition for terminating the network’s learning is indicated. Herein, the index was averaged using 100 experimental results, and the error bar denotes the standard deviation of the mean. The number of cycles using the QNN is less than those using the other



Kazuhiko Takahashi / IFAC PapersOnLine 52-29 (2019) 67–72

CNN

71

HNN

RNN

Z

Z

Z

Y

Y

Y X

X

X

BNN

QNN

Z

Z

Y

Y

X

X

(a) The desired trajectory is the figure eight curve in the vertical plane parallel to the O–YZ plane. CNN

HNN

RNN

Z

Z

Z

Y

Y

Y X

X

X

BNN

QNN

Z

Z

Y

Y

X

X

(b) The desired trajectory is the figure eight curve in the O–XZ plane.

Fig. 5. An example of a response for controlling the robot manipulator using the hypercomplex neural network–based controller. The desired trajectory of the end–effector is denoted with blue dots, the system response is denoted with red dots, and the stick figure denotes the initial posture of the robot manipulator.

Kazuhiko Takahashi / IFAC PapersOnLine 52-29 (2019) 67–72

72

Table 1. Comparison of the normalised cost functions against the untrained condition. RNN CNN HNN BNN QNN

(a) O–YZ plane 0.0293 0.0190 0.0266 0.0022 0.0011

(b) O–XZ plane 0.0260 0.0235 0.0357 0.0010 0.0008

neural networks. This is because the learning speed of the QNN is faster than those of the other networks. This result illustrates that the learning capability of the neural networks using four–dimension numbers (quaternion number and bicomplex number) outperforms those using two–dimension numbers (complex number and hyperbolic number) and one–dimension number (real number). After the training of the neural network was terminated against the circular trajectory, the controller was tested with the untrained condition. Figure 5 demonstrates examples of the system response. In the top of Fig. 5, the desired trajectory was a figure eight curve in the vertical plane parallel to the O–YZ plane and the initial condition T of the robot manipulator was θ(0) = [ 0 −π/12 π/2 ] . In the bottom of Fig. 5, the desired trajectory was the figure eight curve in the O–XZ plane and the initial condition T of the robot manipulator was θ(0) = [ 0 −π/4 3π/4 ] . Herein, online training of each neural network was continued during the task. The QNN–based controller can track the end–effector with the desired trajectory, while the control performance with the other neural network– based controller is not enough to ensure the robustness of the control system. Table 1 shows the normalised cost function averaged using 10 experimental results against each condition. Using four–dimension number, the learning performance of the BNN–based controller and the QNN–based controller against the circular trajectory is almost compatible as illustrated in Fig. 4. Moreover, the control performance of the BNN–based controller becomes worse against the untrained condition even if it uses online learning of the neural network. These results demonstrate the effectiveness of the QNN–based controller to the position control of the robot manipulator. 5. CONCLUSIONS This study explored how to employ hypercomplex numbers such as complex number, hyperbolic number, bicomplex number and quaternion number and an adaptive controller application of a hypercomplex–valued neural network, in which the network output was directly applied as the control input of a plant to ensure that its output followed the desired output. We conducted computational experiments of the position control problem for a three– link robot manipulator to investigate the features of the hypercomplex–valued neural network–based controllers. In a practical control application, the experimental results demonstrated the feasibility of using hypercomplex–valued neural networks and the effectiveness of the quaternion neural network. REFERENCES Alfsmann, D., G¨ockler, H.G., Sangwine, S.J., and Ell, T.A. (2007). Hypercomplex algebras in digital signal

processing: Benefits and drawbacks. In Proceedings of 15th Europian Signal Processing Conference, 1322–1326. Arena, P., Caponetto, R., Fortuna, L., Muscato, G., and Xibilia, M.G. (1996). Quaternionic multilayer perceptrons for chaotic time series prediction. IEICE Trans. Fundamentals, E79–A(10), 1682–1688. Buchholz, S. and Bihan, N.L. (2006). Optimal separation of polarized signals by quaternionic neural networks. In Proceedings of 14th European Signal Processing Conference, 1–5. Fortuna, L., Muscato, G., and Xibilia, M.G. (2001). A comparison between hmlp and hrbf for attitude control. IEEE Transactions on Neural Networks, 12(2), 1682– 1688. Greenblatt, A. and Agaian, C.M.L.S. (2013). Quaternion neural networks applied to prostate cancer gleason grading. In Proceedings of 2013 International Conference on Systems, Man, and Cybernetics, 1144–1149. Hirose, A. (2013). Complex–Valued Neural Networks Advances and Applications -. IEEE Press. Kusamichi, H., Isokawa, T., Matsui, N., Ogawa, Y., and Maeda, K. (2004). A new scheme color night vision by quaternion neural network. In Proceedings of the 2nd International Conference on Autonomous Robots and Agents, 101–106. Nitta, T. (2009). Complex–Valued Neural Networks Utilizing High–Dimensional Parameters -. Information Science Reference. Parcollet, T., Morchid, M., Bousquet, P.M., Dufour, R., Linar`es, G., and Mori, R.D. (2016). Quaternion neural networks for spoken language understanding. In Proceedings of 2016 IEEE Spoken Language Technology Workshop, 362–368. Parcollet, T., Morchid, M., and Linar`es, G. (2019). A survey of quaternion neural networks. Artificial Intelligence Review, 1–26. Shang, F. and Hirose, A. (2014). Quaternion neural– network–based polsar land classification in poincare– sphere–space. IEEE Transactions on Geoscience and Remote Sensing, 52(9), 5693–5703. Takahashi, K. (2017). Remarks on adaptive–type hypercomplex–valued neural network–based feedforward feedback controller. In Proceedings of 17th IEEE International Conference on Computer and Information Technology, 151–156. Takahashi, K. (2018). Remarks on control of robot manipulator using quaternion neural network. In Proceedings of Asia–Pacific Signal and Information Processing Association Annual Summit and Conference 2018, 560– 565. Takahashi, K., Hasegawa, Y., and Hashimoto, M. (2016). Remarks on quaternion neural network-based self– tuning pid controller. In Proceedings of the 3rd International Symposium on Computer, Consumer and Control, 231–234. Tripathi, B.K. (2015). High Dimensional Neurocomputing - Growth, Appraisal and Applications -. Springer. Ujang, B.C., Took, C.C., and Mandic, D.P. (2010). Split quaternion nonlinear adaptive filtering. Neural Networks, 23(3), 426–434. Ujang, B.C., Took, C.C., and Mandic, D.P. (2011). Quaternion–valued nonlinear adaptive filtering. IEEE Transactions on Neural Networks, 22(8), 1193–1206.