# Adaptive Path Following and Locomotion Optimization of Snake-Like Robot Controlled by the Central Pattern Generator

Authors: Zhengcai Cao; Dong Zhang; Biao Hu; Jinguo Liu
Journal: Complexity
 (2019)

---

## Abstract

This work investigates locomotion efficiency optimization and adaptive path following of snake-like robots in a complex environment. To optimize the locomotion efficiency, it takes energy consumption and forward velocity into account to investigate the optimal locomotion parameters of snake-like robots controlled by a central pattern generator (CPG) controller. A cuckoo search (CS) algorithm is applied to optimize locomotion parameters of the robot for environments with variable fractions and obstacle distribution. An adaptive path following method is proposed to steer the snake-like robot forward and along a desired path. The efficiency and accuracy of the proposed path following method is researched. In addition, a control framework that includes a CPG network, a locomotion efficiency optimization algorithm, and an adaptive path following method is designed to control snake-like robots move in different environments. Simulation and experimental results are presented to illustrate the performance of the proposed locomotion optimization method and adaptive path following controller for snake-like robots in complexity terrains.


---

## Body

## 1. Introduction

Inspired by biological snakes, snake-like robots have received significant attention to take the place of human work in some special situations such as exploration, monitoring, and surveillance tasks [1]. Similar to the stability and flexibility of biological snakes, snake-like robots can be used in challenging environments [2].Since the first snake-like robot was developed by Hirose in 1972, many researchers have developed many snake-like robots with different mechanisms. Some snake-like robots are configured with active joints and passive wheels such as robots in [3, 4]. Some snake robots are connected by some joints that can bend, lengthen, and shorten, such as robots in [5, 6]. Some snake-like robots are made up by active joints and active wheels, such as robots in [7, 8]. Some snake robots are consisted of active wheels and passive joints [9]. Some robots are combined by joints and crawlers [10].Several control approaches for robots with many degrees of freedom (DOFs), such as quadruped robot and snake-like robot, have been proposed in literatures [11, 12]. In the past years, researchers find that the central pattern generator (CPG) inside the spinal cord could generate rhythmic locomotion without sensory feedback or regulation signals from brain [13]. Matsuoka was a pioneer of CPG research and he proposed the first practical model in 1987 [14]. In the past years, CPG was successfully used to control robots, especially in control for bionic robot such as snake-like robots [15]. Rhythmic locomotion, such as lateral undulation and sidewinding, can be controlled by a CPG network connected by neuron oscillators [16, 17]. In [18], a double-chain Hopf CPG network is used to control serpentine and sidewinding gaits of a snake robot. In [19], a unified neural oscillator network is researched to control three different types of locomotion by adjusting several parameters. Smooth transition and autonomous locomotion control methods are investigated in [20–22]. However, some important performances such as locomotion efficiency and path following accuracy of snake-like robots are not considered in these studies.There are many studies aiming at analysing and optimizing the locomotion efficiency of snake-like robots. The extremely important problem that should be solved is the locomotion efficiency of robots. In [12], three different gaits of a snake-like robot are analysed based on its dynamic model. The tradeoff between locomotion speed and energy efficiency is studied for several gaits. In [23], the relationships among the gait parameters, energy consumption, and forward velocity of different gaits for underwater snake robots are investigated, and the most efficient motion pattern is selected by empirical rules according to simulations.In [24], gait parameters are optimized to stabilize the head joint and speed of a snake-like robot. However, the energy efficiency is not taken into account. In [25], a genetic algorithm is adopted to select parameters of serpentine gait parameters for a snake robot, but other performances are not considered except the speed of the robot. In [26], forward speeds of amphibious snake-like robots are optimized by the Powell’s method. However, the frequency of locomotion is not taken into account in the optimization algorithm [26]. A framework is researched to optimize locomotion of underwater snake robots and their energy efficiencies are investigated in [27]. To the best of our knowledge, there is no general optimization framework for snake-like robots in a random environment with different fractions and obstacles.To realize the practicability of snake-like robots in various tasks, their path following in unknown terrains has been researched. In [28], a dynamic feedback controller is proposed to control the orientation of a snake robot to a desired angle. The theoretical approaches are validated through experimental results in [29]. In [30], a planar snake-like robot can move forward and traverse the reference path with a desired velocity controlled by a feedback control strategy that enforces virtual constraints. In [31], path following of snake robots is researched by using approximate dynamic programming and neural networks.Inspired by the path following control of vessels on the sea in [32, 33], an integral line of sight (LOS) path following controller is designed to control an underwater snake-like robot go along a straight line based on a dynamic model in [34]. However, some of its key parameters are chosen arbitrarily. It is thus difficult to realize efficient and accurate path following due to the mechanism complicacy and high degree of freedoms of snake-like robots.In this work, a double-chain Hopf GPG is used to replace the sine function to generate joint reference functions to avoid sudden transition of locomotion. To reduce energy consumption and extend autonomous working hours of snake-like robots, optimization of locomotion efficiency is considered. The energy consumption and forward speed are taken into account to investigate the optimal gait parameters. To explore the effect factors of locomotion efficiency, we have conducted various simulations. The simulation results show that the frequency and amplitude of a CPG controller are relevant to the efficiency. To find the most efficient gait parameters combination of the Hopf CPG, a CS algorithm is used to find the optimal gait parameters for different environment. An adaptive path following approach is proposed to improve the accuracy and the efficiency of path following. The approach is used to control a snake-like robot following curves and straight lines in narrow spaces with disorderly obstacles. Position, direction and forward velocity, efficiency, and error accumulation of snake-like robots are taken into account in the control of path following. In addition, a control framework includes a Hopf CPG network, an exponentially stable controller, a locomotion efficiency optimization algorithm, and an adaptive path following method. This work also includes more accurate and detailed simulation and experiment results about efficiency optimization and adaptive path following in complex environments.This paper is organized as follows. The mathematical model of a snake-like robot and a CPG network used in this paper are presented in Section2. Relations among locomotion efficiency, gait parameters, and environment factors are studied and the locomotion efficiency is optimized by the CS algorithm in Section 3. An adaptive LOS path following controller is proposed in Section 4. Extensive simulations are conducted to verify the efficiency and accuracy of the proposed path following method in Section 5. Finally, Section 6 concludes the paper.


## 2. Mathematical Model

Mathematical model of snake-like robot has attracted much attention [34, 36, 37]. In this paper, we briefly present the mathematical model of a snake-like robot that will be used in efficiency optimization and path following control. Our control design is based on the model presented in [36].


### 2.1. Mathematical Model of Snake-Like Robot

As shown in Figure1, the snake-like robot is connected by n links. The head position is (xh,yh), orientation of link i is θi, and pitch angle of joint i is ϕi. The mass of a link is set as m and the moment of inertia of a link is defined as J=1/6ml2. To simplify computation, the center of mass (CM) is assumed to locate at its center point. Other notations and equations of the mathematical model of the robot in this paper are the same as those in [36].Figure 1
Schematic of a snake robot withn links.In this dynamic model, viscous friction is assumed to act only on the CM of a link. The friction act of linki is calculated as(1)fR,iglobal=-Rlink,iglobalcn00ctvn,ivt,i,where ct and cn are viscous fraction coefficients between links and the ground in the tangential and normal directions, respectively. In this paper, the snake-like robot is connected by 10 links, the length of a link is l=0.1m, and the mass of a link is m=1kg. The ground is flat and fraction coefficients are ct=0.5 and cn=3. The rotation matrix of link i is defined as(2)Rlink,iglobal=cos⁡θi-sin⁡θisin⁡θicos⁡θi.The model can be written in the standard form of a control-affine system by defining x1=[ϕ1,ϕ2,...,ϕn-1]T∈Rn-1, x2=[θn,px,py]T∈R3, x3=x˙1, x4=x˙2, and x=[x1T,x2T,x3T,x4T]T∈R2n+4. Thus we have(3)x˙=x1˙x2˙x3˙x4˙=x3x4u-Ax+Bx1u-where A(x) and B(x1) are computed by(4)Ax=-M-22-1W-2+G-2fR∈R3,(5)Bx1=-M-22-1M-21∈R3×N-1,and matrices M-(ϕ-) and W-(ϕ-,ϕ-˙) are defined in [36].The joint dynamics of a snake-like robot is given byϕ¨=u-. The new control input of the model is defined according to the exponentially stable joint controller: (6)u-=ϕ¨ref+kdϕ˙ref-ϕ˙+kpϕref-ϕ.Reference joint angle of joint i is defined as(7)ϕi,ref=αsin⁡ωt+i-1δ+ϕ0,where α is amplitude, ω is frequency of reference joint functions, and δ is the phase offset that affects the shape of a snake-like robot by changing the number of S-shapes. The relation between the shape and δ can be given as(8)δ=2πNn-1,where N is the number of S-shape in the horizontal plane and n is the number of links.However, actuators will be damaged if the snake-like robot is controlled by (7) directly when the reference function transits suddenly. To avoid jerky movements and physical damages of actuators, the CPG controller is applied to generate reference functions of joints.


### 2.2. Dynamic Model and Topological Structure of CPG Network

Some neural oscillator models were used to control the snake-like robots in recent years, such as Kuramoto oscillator model [38], Van Der Pol oscillator [16], and Hopf oscillator model [39]. However, the Kuramoto model needs big calculation and the Van Der Pol model converges slowly. Hence, the Hopf neural model is used to control a snake-like robot in this work due to its stability and fast convergence. The dynamics of a Hopf oscillator is given as(9)FHx=-λfμ2+fν2rx2-σfμ+τtfν-τtfμ-λfμ2+fν2rx2-σfν,(10)fμ=μ-μc,(11)fν=ν-νc,where xi=[μxi,νxi]T, rx is the radius of a limit cycle, λ is the convergence rate to the limit cycle, μc and νc decide the center of the limit cycle of the Hopf oscillator, μ and ν oscillate around μc and νc respectively, σ is a bifurcation parameter of the Hopf oscillator and σ=1 in this paper, μxi is accepted as the output signal, and the offset of the signals of μi is decided by μci. Solutions of μ and ν are sinusoidal in steady states. In this paper, notations and parameters of dynamics of the Hopf oscillator follow those in [35].In this paper, the Hopf CPG network is connected by two series of Hopf oscillators. As shown in Figure2, the left column (blue) and the right column (red) oscillators control horizontal and vertical movement snake-like robot, respectively. Parameters a, b, c, and d shown in Figure 2(a) are connection weights among neighboring oscillators, and δi in Figure 2(b) is the phase offset between two neighboring oscillators. The phase difference between horizontal and vertical oscillator is set as π/2. Dynamics of the Hopf CPG network are given as(12)xi˙=FHxi-α∑jωijxi-rxirxjRϕijxj,(13)yi˙=FHyi-βyi-ryirxjRϕyxxi,where xi=[μxi,νxi]T and yi=[μyi,νyi]T are outputs of horizontal and vertical oscillators, respectively. ωij and r control the frequency and amplitude of the limit cycle. The rotation matrix R(ϕ) is computed by(14)Rϕ=cos⁡ϕ-sin⁡ϕsin⁡ϕcos⁡ϕ,where μxi and μyi are reference values of the yaw actuators and pitch actuators of joint i. In this paper, reference angles of joint i are computed by(15)ϕh,i,ref=μxi,(16)ϕv,i,ref=νyi.Figure 2
Topology of a CPG network [35]. (a) Connection weights among neighbor oscillators and (b) phase difference between neighbor oscillators.
(a) (b)As known from previous literatures, CPG signals change suddenly and discontinuously when parameters change abruptly. That leads to unstable locomotion and damage to motors of joints. Hence, we use the smooth gait transit method proposed in our previous work [35] to avoid sudden transition. The smooth transit function is defined as(17)p=p1t≤t1Apsin⁡πt2-t1t-t1+t22+p0t1<t≤t2p2t>t2,where amplitude Ap and offset p0 are computed as(18)Ap=p2-p12,(19)p0=p1+p22,where p1 and p2 are predifined and desired values of p, t1, and t2 are the start and the end time of parameter changing.


## 2.1. Mathematical Model of Snake-Like Robot

As shown in Figure1, the snake-like robot is connected by n links. The head position is (xh,yh), orientation of link i is θi, and pitch angle of joint i is ϕi. The mass of a link is set as m and the moment of inertia of a link is defined as J=1/6ml2. To simplify computation, the center of mass (CM) is assumed to locate at its center point. Other notations and equations of the mathematical model of the robot in this paper are the same as those in [36].Figure 1
Schematic of a snake robot withn links.In this dynamic model, viscous friction is assumed to act only on the CM of a link. The friction act of linki is calculated as(1)fR,iglobal=-Rlink,iglobalcn00ctvn,ivt,i,where ct and cn are viscous fraction coefficients between links and the ground in the tangential and normal directions, respectively. In this paper, the snake-like robot is connected by 10 links, the length of a link is l=0.1m, and the mass of a link is m=1kg. The ground is flat and fraction coefficients are ct=0.5 and cn=3. The rotation matrix of link i is defined as(2)Rlink,iglobal=cos⁡θi-sin⁡θisin⁡θicos⁡θi.The model can be written in the standard form of a control-affine system by defining x1=[ϕ1,ϕ2,...,ϕn-1]T∈Rn-1, x2=[θn,px,py]T∈R3, x3=x˙1, x4=x˙2, and x=[x1T,x2T,x3T,x4T]T∈R2n+4. Thus we have(3)x˙=x1˙x2˙x3˙x4˙=x3x4u-Ax+Bx1u-where A(x) and B(x1) are computed by(4)Ax=-M-22-1W-2+G-2fR∈R3,(5)Bx1=-M-22-1M-21∈R3×N-1,and matrices M-(ϕ-) and W-(ϕ-,ϕ-˙) are defined in [36].The joint dynamics of a snake-like robot is given byϕ¨=u-. The new control input of the model is defined according to the exponentially stable joint controller: (6)u-=ϕ¨ref+kdϕ˙ref-ϕ˙+kpϕref-ϕ.Reference joint angle of joint i is defined as(7)ϕi,ref=αsin⁡ωt+i-1δ+ϕ0,where α is amplitude, ω is frequency of reference joint functions, and δ is the phase offset that affects the shape of a snake-like robot by changing the number of S-shapes. The relation between the shape and δ can be given as(8)δ=2πNn-1,where N is the number of S-shape in the horizontal plane and n is the number of links.However, actuators will be damaged if the snake-like robot is controlled by (7) directly when the reference function transits suddenly. To avoid jerky movements and physical damages of actuators, the CPG controller is applied to generate reference functions of joints.


## 2.2. Dynamic Model and Topological Structure of CPG Network

Some neural oscillator models were used to control the snake-like robots in recent years, such as Kuramoto oscillator model [38], Van Der Pol oscillator [16], and Hopf oscillator model [39]. However, the Kuramoto model needs big calculation and the Van Der Pol model converges slowly. Hence, the Hopf neural model is used to control a snake-like robot in this work due to its stability and fast convergence. The dynamics of a Hopf oscillator is given as(9)FHx=-λfμ2+fν2rx2-σfμ+τtfν-τtfμ-λfμ2+fν2rx2-σfν,(10)fμ=μ-μc,(11)fν=ν-νc,where xi=[μxi,νxi]T, rx is the radius of a limit cycle, λ is the convergence rate to the limit cycle, μc and νc decide the center of the limit cycle of the Hopf oscillator, μ and ν oscillate around μc and νc respectively, σ is a bifurcation parameter of the Hopf oscillator and σ=1 in this paper, μxi is accepted as the output signal, and the offset of the signals of μi is decided by μci. Solutions of μ and ν are sinusoidal in steady states. In this paper, notations and parameters of dynamics of the Hopf oscillator follow those in [35].In this paper, the Hopf CPG network is connected by two series of Hopf oscillators. As shown in Figure2, the left column (blue) and the right column (red) oscillators control horizontal and vertical movement snake-like robot, respectively. Parameters a, b, c, and d shown in Figure 2(a) are connection weights among neighboring oscillators, and δi in Figure 2(b) is the phase offset between two neighboring oscillators. The phase difference between horizontal and vertical oscillator is set as π/2. Dynamics of the Hopf CPG network are given as(12)xi˙=FHxi-α∑jωijxi-rxirxjRϕijxj,(13)yi˙=FHyi-βyi-ryirxjRϕyxxi,where xi=[μxi,νxi]T and yi=[μyi,νyi]T are outputs of horizontal and vertical oscillators, respectively. ωij and r control the frequency and amplitude of the limit cycle. The rotation matrix R(ϕ) is computed by(14)Rϕ=cos⁡ϕ-sin⁡ϕsin⁡ϕcos⁡ϕ,where μxi and μyi are reference values of the yaw actuators and pitch actuators of joint i. In this paper, reference angles of joint i are computed by(15)ϕh,i,ref=μxi,(16)ϕv,i,ref=νyi.Figure 2
Topology of a CPG network [35]. (a) Connection weights among neighbor oscillators and (b) phase difference between neighbor oscillators.
(a) (b)As known from previous literatures, CPG signals change suddenly and discontinuously when parameters change abruptly. That leads to unstable locomotion and damage to motors of joints. Hence, we use the smooth gait transit method proposed in our previous work [35] to avoid sudden transition. The smooth transit function is defined as(17)p=p1t≤t1Apsin⁡πt2-t1t-t1+t22+p0t1<t≤t2p2t>t2,where amplitude Ap and offset p0 are computed as(18)Ap=p2-p12,(19)p0=p1+p22,where p1 and p2 are predifined and desired values of p, t1, and t2 are the start and the end time of parameter changing.


## 3. Efficiency Optimization for Snake-Like Robots in Different Environments

As known from previous literatures [16–19], the Hopf CPG network is capable of controlling the rhythmic locomotion of snake-like robots. Nature snakes can always adjust their body shapes to move efficiently in different terrains. In order improve the adaptability of snake-like robots to complex environments, the lateral undulation locomotion with several combinations of CPG parameters and fractions is discussed. Herein, eight representative environments are investigated to obtain the efficient locomotion. Snake-like robots controlled by different CPG parameters are simulated to find out the connection between CPG parameters and robot locomotion efficiency.


### 3.1. Locomotion Efficiency Gait Parameters

To evaluate the locomotion efficiency of snake-like robots, we take their speed and energy consumption into account. To simplify the optimization objective, we compute locomotion efficiency as follows:(20)E=px,t2-px,t12+py,t2-py,t12∫t1t2∑1n-1ui2dt,where ui is the torque of the actuator of joint i and (px,t2-px,t1)2+(py,t2-py,t1)2 is the distance of the snake-like robot moving in one period. t1 is arbitrary time and t2=t1+T, where T is a period of locomotion. ∫t1t2∑1n-1ui2dt is the sum of squares of torques of all joints from t1 to t2. It is the energy consumption in one period.In this paper, different gaits are controlled by a Hopf CPG controller. The controller combined with the efficiency critic function (20) can generate uniform outputs with desired amplitudes and phase differences without additional adjustments.To explore the relation between locomotion efficiency and parameters, locomotion controlled by different gait parameters in the same flat ground with tangential fractionct=1 and normal fraction cn=3 is simulated. We simulate 12 proportional combinations of frequency ω and amplitude α, and other parameters are constants. From the simulations results of Table 1, locomotion efficiency is affected by ω and α of the CPG network. Thus, the relevant amplitude α and frequency ω can be adjusted to obtain the efficient locomotion.Table 1
Efficiency of lateral undulation controlled by different parameters in same environment.
( α , ω ) 1 36 π , 0.2 π 1 18 π , 0.4 π 1 12 π , 0.6 π 1 9 π , 0.8 π  E 0.248 0.132 0.046 0.014  ( α , ω ) 1 36 π , 0.4 π 1 18 π , 0.8 π 1 12 π , 1.2 π 1 9 π , 1.6 π  E 0.885 0.102 0.014 0.006  ( α , ω ) 1 18 π , 0.2 π 1 9 π , 0.4 π 1 6 π , 0.6 π 2 9 π , 0.8 π  E 1.162 0.167 0.021 0.003


### 3.2. Locomotion Efficiency of Snake-Like Robots in Different Environments

Frictions in normal and tangential directions are important for lateral undulation of snake-like robots. To find out the relation between frictions and locomotion efficiency, we simulate eight different situations with the same locomotion parameters. In the eight situations, fractions in tangential and normal directions(ct,cn) are set as (0.1, 0.3), (0.1, 0.4), (0.1, 0.5), (0.1, 1), (1, 3), (1, 4), (1, 5), and (1, 10), respectively. The first four situations are set with same friction coefficient in the tangential direction and increasing friction coefficient in the normal direction. The last four situations are set with ten times friction coefficient of the first four situations in tangential and normal directions.As shown in Table2, locomotion efficiencies are different in eight situations. It can be found that the efficiency is proportional to the fraction ratio cn/ct. The locomotion efficiencies are similar to the same fraction cn/ct.Table 2
Efficiency of lateral undulation controlled by same parameters in different environments.
( c t , c n ) (0.1, 0.3) (0.1, 0.4) (0.1, 0.5) (0.1, 1)  E 0.002 0.003 0.004 0.026  ( c t , c n ) (0.1, 3) (0.1, 4) (0.1, 5) (0.1, 10)  E 0.227 0.301 0.363 0.564  ( c t , c n ) (1, 3) (1, 4) (1, 5) (1, 10)  E 0.014 0.025 0.035 0.084Except for the fraction, a snake-like robot demonstrates different performances in different environments with different slop and different passable widths. As shown in Figure3, a snake-like robot should transit body shape and locomotion flexibly to cross the cluttered environment covered with obstacles. The optimized efficiency locomotion parameters are selected from computing a large number of combinations of locomotion parameters. However, the optimized velocity is slow and the computation is too complex. It is necessary and significant to take advantage of an intelligent optimization algorithm to optimize parameters fast when we face a complex environment.Figure 3
Snake-like robots move in different environment with variable fractions and space widths.


### 3.3. Parameter Optimization Using CS Algorithm

Traditional parameter selection method selects desired parameters by comparing all combinations of the amplitudeα and the frequency ω in the allowed ranges. To optimize the locomotion parameters fast and effectively, the CS algorithm [40–42] is used to explore the suitable optimal amplitude α and frequency ω while the snake-like robot is moving in a new environment. The optimization algorithm used in this research is inspired by the obligate brood parasitic behaviour of some cuckoo species in combination with the Lev´y flights behaviour of some fruit flies. The optimization objection is maximized locomotion efficiency E in (20), to given ranges of these parameters.As shown in Figure3, the width of the whole-shape of a snake-like robot should be less than the width of a passable path. The amplitude of the whole-shape is decided by the width of a path, and A is relevant to α in (7). The ranges of α should be derived according to the width of passable path to guarantee that snake-like robot to crosses a passable path without colliding obstacles on both sides of the latter.In order to guarantee the constringency of searching, the optimal individual retention method is accepted in the CS algorithm. New values of our interested parameters are searched by using the CS algorithm as(21)Xit+1=Xit+τ⨁Lev´yλ,where X=[α,ω]Tand τ is the step size, which is related to the scales of the optimization problems and should be greater than zero.In this paper,τ is set just according to the scale of amplitude α to reduce the computation complexity since the values of α and ω are approximate. τ is computed by τ=αmax-αmin/10. The product ⨁ means the entry wise multiplication of two vectors. The step length of Lev´y flight is computed by a Lev´y distribution: (22)Lev´y~μ=t-λ,1<λ≤3,while the Lev´y distribution has an infinite variance with an infinite mean.


## 3.1. Locomotion Efficiency Gait Parameters

To evaluate the locomotion efficiency of snake-like robots, we take their speed and energy consumption into account. To simplify the optimization objective, we compute locomotion efficiency as follows:(20)E=px,t2-px,t12+py,t2-py,t12∫t1t2∑1n-1ui2dt,where ui is the torque of the actuator of joint i and (px,t2-px,t1)2+(py,t2-py,t1)2 is the distance of the snake-like robot moving in one period. t1 is arbitrary time and t2=t1+T, where T is a period of locomotion. ∫t1t2∑1n-1ui2dt is the sum of squares of torques of all joints from t1 to t2. It is the energy consumption in one period.In this paper, different gaits are controlled by a Hopf CPG controller. The controller combined with the efficiency critic function (20) can generate uniform outputs with desired amplitudes and phase differences without additional adjustments.To explore the relation between locomotion efficiency and parameters, locomotion controlled by different gait parameters in the same flat ground with tangential fractionct=1 and normal fraction cn=3 is simulated. We simulate 12 proportional combinations of frequency ω and amplitude α, and other parameters are constants. From the simulations results of Table 1, locomotion efficiency is affected by ω and α of the CPG network. Thus, the relevant amplitude α and frequency ω can be adjusted to obtain the efficient locomotion.Table 1
Efficiency of lateral undulation controlled by different parameters in same environment.
( α , ω ) 1 36 π , 0.2 π 1 18 π , 0.4 π 1 12 π , 0.6 π 1 9 π , 0.8 π  E 0.248 0.132 0.046 0.014  ( α , ω ) 1 36 π , 0.4 π 1 18 π , 0.8 π 1 12 π , 1.2 π 1 9 π , 1.6 π  E 0.885 0.102 0.014 0.006  ( α , ω ) 1 18 π , 0.2 π 1 9 π , 0.4 π 1 6 π , 0.6 π 2 9 π , 0.8 π  E 1.162 0.167 0.021 0.003


## 3.2. Locomotion Efficiency of Snake-Like Robots in Different Environments

Frictions in normal and tangential directions are important for lateral undulation of snake-like robots. To find out the relation between frictions and locomotion efficiency, we simulate eight different situations with the same locomotion parameters. In the eight situations, fractions in tangential and normal directions(ct,cn) are set as (0.1, 0.3), (0.1, 0.4), (0.1, 0.5), (0.1, 1), (1, 3), (1, 4), (1, 5), and (1, 10), respectively. The first four situations are set with same friction coefficient in the tangential direction and increasing friction coefficient in the normal direction. The last four situations are set with ten times friction coefficient of the first four situations in tangential and normal directions.As shown in Table2, locomotion efficiencies are different in eight situations. It can be found that the efficiency is proportional to the fraction ratio cn/ct. The locomotion efficiencies are similar to the same fraction cn/ct.Table 2
Efficiency of lateral undulation controlled by same parameters in different environments.
( c t , c n ) (0.1, 0.3) (0.1, 0.4) (0.1, 0.5) (0.1, 1)  E 0.002 0.003 0.004 0.026  ( c t , c n ) (0.1, 3) (0.1, 4) (0.1, 5) (0.1, 10)  E 0.227 0.301 0.363 0.564  ( c t , c n ) (1, 3) (1, 4) (1, 5) (1, 10)  E 0.014 0.025 0.035 0.084Except for the fraction, a snake-like robot demonstrates different performances in different environments with different slop and different passable widths. As shown in Figure3, a snake-like robot should transit body shape and locomotion flexibly to cross the cluttered environment covered with obstacles. The optimized efficiency locomotion parameters are selected from computing a large number of combinations of locomotion parameters. However, the optimized velocity is slow and the computation is too complex. It is necessary and significant to take advantage of an intelligent optimization algorithm to optimize parameters fast when we face a complex environment.Figure 3
Snake-like robots move in different environment with variable fractions and space widths.


## 3.3. Parameter Optimization Using CS Algorithm

Traditional parameter selection method selects desired parameters by comparing all combinations of the amplitudeα and the frequency ω in the allowed ranges. To optimize the locomotion parameters fast and effectively, the CS algorithm [40–42] is used to explore the suitable optimal amplitude α and frequency ω while the snake-like robot is moving in a new environment. The optimization algorithm used in this research is inspired by the obligate brood parasitic behaviour of some cuckoo species in combination with the Lev´y flights behaviour of some fruit flies. The optimization objection is maximized locomotion efficiency E in (20), to given ranges of these parameters.As shown in Figure3, the width of the whole-shape of a snake-like robot should be less than the width of a passable path. The amplitude of the whole-shape is decided by the width of a path, and A is relevant to α in (7). The ranges of α should be derived according to the width of passable path to guarantee that snake-like robot to crosses a passable path without colliding obstacles on both sides of the latter.In order to guarantee the constringency of searching, the optimal individual retention method is accepted in the CS algorithm. New values of our interested parameters are searched by using the CS algorithm as(21)Xit+1=Xit+τ⨁Lev´yλ,where X=[α,ω]Tand τ is the step size, which is related to the scales of the optimization problems and should be greater than zero.In this paper,τ is set just according to the scale of amplitude α to reduce the computation complexity since the values of α and ω are approximate. τ is computed by τ=αmax-αmin/10. The product ⨁ means the entry wise multiplication of two vectors. The step length of Lev´y flight is computed by a Lev´y distribution: (22)Lev´y~μ=t-λ,1<λ≤3,while the Lev´y distribution has an infinite variance with an infinite mean.


## 4. Adaptive LOS Path Following Control

To optimize the accuracy and efficiency of path following of a snake-like robot executing special tasks in a narrow space, we propose an adaptive path following control scheme. As shown in Figure4, an adaptive control frame is formed by a CPG locomotion generator, a direction controller based on the adaptive LOS guidance law, locomotion regulator, and an energy efficiency critic component. A closed-loop control scheme based on the LOS law and the efficiency critic element is summarized to adjust the locomotion of a snake-like robot adaptively according to energy efficiency in different terrains. In the control scheme, information of environment including fractions and slop is measured by sensors, and appropriate locomotion parameters including α and ω are selected by using the CS algorithm according to efficiency. The selected locomotion parameters are transported to the CPG network that generates reference swing angles of joints, and torques ui of actuators of the robot are computed by the exponentially stable controller as (6). The modules of the control scheme are presented in above sections.Figure 4
Structure of the adaptive path following control frame.


### 4.1. LOS Guidance Law

In this paper, a LOS guidance law is applied to the curve path following of a snake-like robot. As shown in Figure5, the tangent line of a reference path at point (xref,yref) which is the nearest point to the CM of a snake-like robot is the desired path. The distance from the CM of a robot to (xref,yref) is defined as Δy, which corresponds to the cross track error, and the direction angle of the snake-like robot is represented by θ-.Figure 5
The adaptive path following law.The path following control objective is to control a snake-like robot to converge to a reference path and subsequently move along the path at nonzero forward velocity. The objectives of path following can be formalized as(23)limpx→x⁡py=fx,(24)limt→∞⁡θ-=θref,(25)limt→∞⁡vt->0,where f(x) is an analytic function of a reference path. Snake-like robots cannot track a reference path flawlessly due to the oscillatory gait pattern. Our control objectives imply that the CM snake-like robot can have steady state oscillation around the reference path.In this section we study LOS path-following control for snake-like robots as shown in Figure5. Their reference orientation is computed using the LOS guidance law as(26)θref=-arctan⁡ΔyΔ,(27)Δy=γsign⁡py-yref,(28)γ=px-px,ref2+py-py,ref2,where Δ is the look-ahead distance that influences the convergence rate to the desired path, (px,py) is the position of the CM of the robot, and (px,ref,py,ref) is the nearest point in the reference path to the CM of the robot. As known from Section 2, the direction of the robot can be controlled by phase offset ϕ0. Therefore, we can steer the heading direction θ- according to the LOS angle in (26), and the joint angle offset is computed as(29)ϕ0=kθθ--θ-ref,where controller gain kθ>0 and heading direction are(30)θ-=1n∑i=1nθi.


### 4.2. Adaptive Path Following Based on LOS

Previous studies on path following of snake-like robots have focused on undulation locomotion with constant gait parameters in a stable environment, and gainkθ in (29) and look-head distance Δ in (26) are fixed. The error accumulation and the energy efficiency of path following are not to be considered. Although snake-like robots can follow reference paths in a stable environment, it is hard to guarantee their path following performances of in complex environments especially when they face some uncertain factors such as fractions and distribution of obstacles.To adapt to complex environments, this work proposes an adaptive path following approach for snake-like robots. In this path follow approach, gainkθ and look-ahead distance Δ are adjusted adaptively according to the relation between their position and orientation. To control them to follow desired paths accurately and efficiently in different situations, we analyse their characteristics when they move in eight situations. Taking an example of following reference path y=0, it can be divided into eight typical different situations according to the relative position of their CM to the reference path and the difference value between θ- and θref as shown in Figure 6.Figure 6
Different situations of relative position of the CM of a snake-like robot to the reference path.
(a)
p y > 0 , π 2 > θ - > 0 , θ r e f < 0 (b)
p y > 0 , θ - > π 2 , θ r e f < 0 (c)
p y > 0 , - π 2 < θ - < 0 , θ r e f < 0 (d)
p y > 0 , θ - < - π 2 , θ r e f < 0 (e)
p y < 0 , π 2 > θ - > 0 , θ r e f > 0 (f)
p y < 0 , - π 2 < θ - < 0 , θ r e f > 0 (g)
p y < 0 , θ - > 0 , θ r e f > 0 (h)
p y < 0 , θ - < 0 , θ r e f > 0After analysing these situations, we find that several factors are influential to values ofΔ and Kθ including the difference between the CM of a robot and the reference path and difference between θ- and θref. Taking these influential factors into account, adaptive parameters Δ and kθ are computed by(31)Δ=Δ0-ρ1sign⁡θ-Δpyγ-ς1σ1,(32)kθ=kθ0+ρ2γ-ς2σ1+ρ3max⁡0,θ--ς3σ2,where Δ0 and kθ0 are initial values of Δ and kθ and σ and β are constants that influence the amplitude of oscillation of a snake-like robot around the reference path. These parameters can be adjusted according to width and the requirements of following accuracy. In this paper, parameters are set as Δ0=0.07, Kθ0=0.4, Δpy=y-yref, ρ1=0.007, ρ2=0.005, ρ3=0.005, ς1=0.03, ς2=0.06, ς3=20∘, σ1=0.01, and σ2=10∘.Energy efficiencyE and error accumulation Γ are taken into account beside the control objectives (26)-(28). The oscillation of a snake-like robot around the reference path is also considered. The error accumulation Γ can be computed as(33)Γ=∫t1t2γdt.


## 4.1. LOS Guidance Law

In this paper, a LOS guidance law is applied to the curve path following of a snake-like robot. As shown in Figure5, the tangent line of a reference path at point (xref,yref) which is the nearest point to the CM of a snake-like robot is the desired path. The distance from the CM of a robot to (xref,yref) is defined as Δy, which corresponds to the cross track error, and the direction angle of the snake-like robot is represented by θ-.Figure 5
The adaptive path following law.The path following control objective is to control a snake-like robot to converge to a reference path and subsequently move along the path at nonzero forward velocity. The objectives of path following can be formalized as(23)limpx→x⁡py=fx,(24)limt→∞⁡θ-=θref,(25)limt→∞⁡vt->0,where f(x) is an analytic function of a reference path. Snake-like robots cannot track a reference path flawlessly due to the oscillatory gait pattern. Our control objectives imply that the CM snake-like robot can have steady state oscillation around the reference path.In this section we study LOS path-following control for snake-like robots as shown in Figure5. Their reference orientation is computed using the LOS guidance law as(26)θref=-arctan⁡ΔyΔ,(27)Δy=γsign⁡py-yref,(28)γ=px-px,ref2+py-py,ref2,where Δ is the look-ahead distance that influences the convergence rate to the desired path, (px,py) is the position of the CM of the robot, and (px,ref,py,ref) is the nearest point in the reference path to the CM of the robot. As known from Section 2, the direction of the robot can be controlled by phase offset ϕ0. Therefore, we can steer the heading direction θ- according to the LOS angle in (26), and the joint angle offset is computed as(29)ϕ0=kθθ--θ-ref,where controller gain kθ>0 and heading direction are(30)θ-=1n∑i=1nθi.


## 4.2. Adaptive Path Following Based on LOS

Previous studies on path following of snake-like robots have focused on undulation locomotion with constant gait parameters in a stable environment, and gainkθ in (29) and look-head distance Δ in (26) are fixed. The error accumulation and the energy efficiency of path following are not to be considered. Although snake-like robots can follow reference paths in a stable environment, it is hard to guarantee their path following performances of in complex environments especially when they face some uncertain factors such as fractions and distribution of obstacles.To adapt to complex environments, this work proposes an adaptive path following approach for snake-like robots. In this path follow approach, gainkθ and look-ahead distance Δ are adjusted adaptively according to the relation between their position and orientation. To control them to follow desired paths accurately and efficiently in different situations, we analyse their characteristics when they move in eight situations. Taking an example of following reference path y=0, it can be divided into eight typical different situations according to the relative position of their CM to the reference path and the difference value between θ- and θref as shown in Figure 6.Figure 6
Different situations of relative position of the CM of a snake-like robot to the reference path.
(a)
p y > 0 , π 2 > θ - > 0 , θ r e f < 0 (b)
p y > 0 , θ - > π 2 , θ r e f < 0 (c)
p y > 0 , - π 2 < θ - < 0 , θ r e f < 0 (d)
p y > 0 , θ - < - π 2 , θ r e f < 0 (e)
p y < 0 , π 2 > θ - > 0 , θ r e f > 0 (f)
p y < 0 , - π 2 < θ - < 0 , θ r e f > 0 (g)
p y < 0 , θ - > 0 , θ r e f > 0 (h)
p y < 0 , θ - < 0 , θ r e f > 0After analysing these situations, we find that several factors are influential to values ofΔ and Kθ including the difference between the CM of a robot and the reference path and difference between θ- and θref. Taking these influential factors into account, adaptive parameters Δ and kθ are computed by(31)Δ=Δ0-ρ1sign⁡θ-Δpyγ-ς1σ1,(32)kθ=kθ0+ρ2γ-ς2σ1+ρ3max⁡0,θ--ς3σ2,where Δ0 and kθ0 are initial values of Δ and kθ and σ and β are constants that influence the amplitude of oscillation of a snake-like robot around the reference path. These parameters can be adjusted according to width and the requirements of following accuracy. In this paper, parameters are set as Δ0=0.07, Kθ0=0.4, Δpy=y-yref, ρ1=0.007, ρ2=0.005, ρ3=0.005, ς1=0.03, ς2=0.06, ς3=20∘, σ1=0.01, and σ2=10∘.Energy efficiencyE and error accumulation Γ are taken into account beside the control objectives (26)-(28). The oscillation of a snake-like robot around the reference path is also considered. The error accumulation Γ can be computed as(33)Γ=∫t1t2γdt.


## 5. Evaluation

To test the performance of the locomotion efficiency optimization method proposed in Section3 and the adaptive LOS path following control scheme described in Section 4, we have conducted extensive simulations. The dynamic model and parameters of a locomotion controller of a snake-like robot are set in Section 2, and the reference angles of active joints are generated by the CPG network as described in Section 3.


### 5.1. Locomotion Efficiency Optimization in Complex Environment

In this simulation, the locomotion parameters of a snake-like robot in a complex environment are optimized by the CS algorithm. The parameters of the robot and control parameters are the same as before. When the robot moves in a new environment, the ground fraction is measured and the scales of amplitudeα and frequency ω are derived according to the space width. Then, the optimal combination of α and ω is selected via the CS algorithm. The step size is τ=π/5 and λ=2 in the CS algorithm. As shown in Table 3, gait parameters of the robot are optimized by the CS algorithm in eight situations with different fractions. As shown in Figure 7, the gait parameters of the robot are selected by the combination method that chooses 20×20 combinations of amplitude α and frequency ω at random, where α∈[0.087,0.785] and ω∈[0.628,6.283]. Compared with random combination method, the CS algorithm improves the accuracy and the speed of parameter optimization.Table 3
Optimization results for the lateral undulation motion for the snake-like robot in different environments.
( c t , c n ) α(rad) ω(rad/s) Efficiency Iteration (0.1, 0.3) 0.429 1.850 0.283 30 (0.1, 0.4) 0.123 0.652 0.332 80 (0.1, 0.5) 0.097 0.633 0.535 100 (0.1, 1) 0.118 0.633 0.490 116 (1, 3) 0.126 0.634 0.018 70 (1, 4) 0.512 0.628 0.019 106 (1, 5) 0.507 0.628 0.022 118 (1, 10) 0.484 0.630 0.021 85Figure 7
Efficiency of a snake-like robot optimized by 400 combinations ofα and ω, the optimal efficiency is E=0.015 controlled by parameters α=0.635 and ω=0.126.


### 5.2. Adaptive Path Following of the Snake-Like Robot

The simulation is actualized in Matlab R2016b in a computer running Windows 10. The dynamics model is computed by the ode45 solver with a relative and absolute error tolerance of10-6. The model is simulated with the controller given by (6), and controller gains are kp=20 and kd=5. Reference angles of joints are computed by (7) and gait parameters are set as α=30∘, ω=2, and N=1.Using the proposed path following method in Section4, a snake-like robot is controlled to follow the reference path including a horizontal straight line and a sine curve. As shown in Figure 8, snake-like robot controlled by our approach moves forward and along with the horizontal line more accurately compared with using the LOS path following method. As shown in the Figure 8(b), the error accumulation is reduced with the adaptive path following method proposed in this paper. As shown in Figure 8(c), the efficiency of the robot controlled by proposed the method is predominant compared with the traditional LOS path following method. As shown in Figure 9, snake-like robot controlled by our approach moves forward and along with the sine curve path more accurately compared with using the classical LOS path following method. As shown in the Figure 9(b), the error accumulation is reduced with the adaptive path following method proposed in this paper. As shown in Figure 9(c), the efficiency of the robot controlled by proposed the method is predominant compared with the traditional LOS path following method. The simulation results are proposed to show that the position of the robot converges nicely to the reference horizontal straight line and sine curve paths.Figure 8
A snake-like robot follows the horizontal liney=0 controlled by the adaptive LOS law (red) and the LOS law (blue). (a) The trajectory of the CM of the snake-like robot, the black line is reference path. (b) Error accumulation of the snake-like robot following the horizontal line. (c) The energy efficiency accumulation of the snake-like robot following the horizontal line.
(a) (b) (c)Figure 9
A snake-like robot follows the sine curve pathy=2sin⁡(π/4x) controlled by the adaptive LOS law (red) and the LOS law (blue). (a) Trajectories of the CM of the snake-like robot, the black line is reference path. (b) Error accumulation of the snake-like robot following the sine curve. (c) The energy efficiency accumulation of the snake-like robot following the sine curve.
(a) (b) (c)To verify the proposed method, a simulator is implemented in Virtual Robot Experimentation Platform (V-REP EDU Version), as shown in Figure10. In the simulation, we modify the structure and control method based on the model of University of Castilla la Mancha. We equip a pair of passive wheels for each link to realize anisotropic friction between the robot and the ground. The actuators are installed on the horizontal and vertical joints to imitate natural snakes swinging from side to side. Inside V-REP, we choose the bullet as the physics engines and set the time step at 50ms. The locomotion parameter optimization and adaptive path following methods are used in this simulation. The sine transition method is used to avoid sudden changes while locomotion parameters adjusting. As shown in Figure 10, there are some irregular obstacles in the environment and the robot through different-width paths adaptively by adjusting locomotion parameters. As shown in Figure 10(a), the passable path is narrow and the amplitude of the robot is small. The amplitude of the robot is transited adaptively according to the width of path, as shown in Figures 10(b) and 10(c).Figure 10
A snake-like robot moves in a complex environment with different-width paths enclosed by some irregular obstacles in V-REP; the red line is the trajectory of CM.
(a) (b) (c) (d)Extensive prototype experiments are conducted to demonstrate that our method can adjust locomotion parameters adaptively and steer a snake-like robot toward and along the desired path. Our snake-like robot is connected by five pitch modules and five yaw modules. Each module is equipped with a steering gear (SC5115). The steering gear can rotate between[-60∘,+60∘] and the angles of steering gears can be read by their potentiometers. Modules communicate with each other via RS485 bus. To increase surface friction, our snake-like robot is covered with plastic sheeting. As shown in Figure 11, the snake-like robot adjusts its body shape adaptively while moving across the narrow path with some irregular obstacles on both sides. As shown in Figure 11(a), the path in front of the robot is complex and distributed with some irregular obstacles on sides, and widths of path is different. As shown in Figure 11(b), the path is narrow and the robot moves toward with a small amplitude. As shown in Figure 11(c), the path is wider and the robot adjusts amplitude according to the path and selects corresponding frequency optimized energy efficiency. As shown in Figure 11(d), the path becomes narrow and the robot reduces the amplitude and selects efficient frequency. In this experiment, the robot can be controlled to go toward and along the desired horizontal line in the middle of the road and keep efficient locomotion using parameters according to paths and optimized by the CS algorithm.Figure 11
A snake-like robot moves in a complex environment controlled by the proposed control frame work; CS optimization algorithm and adaptive path following method.
(a) (b) (c) (d)


## 5.1. Locomotion Efficiency Optimization in Complex Environment

In this simulation, the locomotion parameters of a snake-like robot in a complex environment are optimized by the CS algorithm. The parameters of the robot and control parameters are the same as before. When the robot moves in a new environment, the ground fraction is measured and the scales of amplitudeα and frequency ω are derived according to the space width. Then, the optimal combination of α and ω is selected via the CS algorithm. The step size is τ=π/5 and λ=2 in the CS algorithm. As shown in Table 3, gait parameters of the robot are optimized by the CS algorithm in eight situations with different fractions. As shown in Figure 7, the gait parameters of the robot are selected by the combination method that chooses 20×20 combinations of amplitude α and frequency ω at random, where α∈[0.087,0.785] and ω∈[0.628,6.283]. Compared with random combination method, the CS algorithm improves the accuracy and the speed of parameter optimization.Table 3
Optimization results for the lateral undulation motion for the snake-like robot in different environments.
( c t , c n ) α(rad) ω(rad/s) Efficiency Iteration (0.1, 0.3) 0.429 1.850 0.283 30 (0.1, 0.4) 0.123 0.652 0.332 80 (0.1, 0.5) 0.097 0.633 0.535 100 (0.1, 1) 0.118 0.633 0.490 116 (1, 3) 0.126 0.634 0.018 70 (1, 4) 0.512 0.628 0.019 106 (1, 5) 0.507 0.628 0.022 118 (1, 10) 0.484 0.630 0.021 85Figure 7
Efficiency of a snake-like robot optimized by 400 combinations ofα and ω, the optimal efficiency is E=0.015 controlled by parameters α=0.635 and ω=0.126.


## 5.2. Adaptive Path Following of the Snake-Like Robot

The simulation is actualized in Matlab R2016b in a computer running Windows 10. The dynamics model is computed by the ode45 solver with a relative and absolute error tolerance of10-6. The model is simulated with the controller given by (6), and controller gains are kp=20 and kd=5. Reference angles of joints are computed by (7) and gait parameters are set as α=30∘, ω=2, and N=1.Using the proposed path following method in Section4, a snake-like robot is controlled to follow the reference path including a horizontal straight line and a sine curve. As shown in Figure 8, snake-like robot controlled by our approach moves forward and along with the horizontal line more accurately compared with using the LOS path following method. As shown in the Figure 8(b), the error accumulation is reduced with the adaptive path following method proposed in this paper. As shown in Figure 8(c), the efficiency of the robot controlled by proposed the method is predominant compared with the traditional LOS path following method. As shown in Figure 9, snake-like robot controlled by our approach moves forward and along with the sine curve path more accurately compared with using the classical LOS path following method. As shown in the Figure 9(b), the error accumulation is reduced with the adaptive path following method proposed in this paper. As shown in Figure 9(c), the efficiency of the robot controlled by proposed the method is predominant compared with the traditional LOS path following method. The simulation results are proposed to show that the position of the robot converges nicely to the reference horizontal straight line and sine curve paths.Figure 8
A snake-like robot follows the horizontal liney=0 controlled by the adaptive LOS law (red) and the LOS law (blue). (a) The trajectory of the CM of the snake-like robot, the black line is reference path. (b) Error accumulation of the snake-like robot following the horizontal line. (c) The energy efficiency accumulation of the snake-like robot following the horizontal line.
(a) (b) (c)Figure 9
A snake-like robot follows the sine curve pathy=2sin⁡(π/4x) controlled by the adaptive LOS law (red) and the LOS law (blue). (a) Trajectories of the CM of the snake-like robot, the black line is reference path. (b) Error accumulation of the snake-like robot following the sine curve. (c) The energy efficiency accumulation of the snake-like robot following the sine curve.
(a) (b) (c)To verify the proposed method, a simulator is implemented in Virtual Robot Experimentation Platform (V-REP EDU Version), as shown in Figure10. In the simulation, we modify the structure and control method based on the model of University of Castilla la Mancha. We equip a pair of passive wheels for each link to realize anisotropic friction between the robot and the ground. The actuators are installed on the horizontal and vertical joints to imitate natural snakes swinging from side to side. Inside V-REP, we choose the bullet as the physics engines and set the time step at 50ms. The locomotion parameter optimization and adaptive path following methods are used in this simulation. The sine transition method is used to avoid sudden changes while locomotion parameters adjusting. As shown in Figure 10, there are some irregular obstacles in the environment and the robot through different-width paths adaptively by adjusting locomotion parameters. As shown in Figure 10(a), the passable path is narrow and the amplitude of the robot is small. The amplitude of the robot is transited adaptively according to the width of path, as shown in Figures 10(b) and 10(c).Figure 10
A snake-like robot moves in a complex environment with different-width paths enclosed by some irregular obstacles in V-REP; the red line is the trajectory of CM.
(a) (b) (c) (d)Extensive prototype experiments are conducted to demonstrate that our method can adjust locomotion parameters adaptively and steer a snake-like robot toward and along the desired path. Our snake-like robot is connected by five pitch modules and five yaw modules. Each module is equipped with a steering gear (SC5115). The steering gear can rotate between[-60∘,+60∘] and the angles of steering gears can be read by their potentiometers. Modules communicate with each other via RS485 bus. To increase surface friction, our snake-like robot is covered with plastic sheeting. As shown in Figure 11, the snake-like robot adjusts its body shape adaptively while moving across the narrow path with some irregular obstacles on both sides. As shown in Figure 11(a), the path in front of the robot is complex and distributed with some irregular obstacles on sides, and widths of path is different. As shown in Figure 11(b), the path is narrow and the robot moves toward with a small amplitude. As shown in Figure 11(c), the path is wider and the robot adjusts amplitude according to the path and selects corresponding frequency optimized energy efficiency. As shown in Figure 11(d), the path becomes narrow and the robot reduces the amplitude and selects efficient frequency. In this experiment, the robot can be controlled to go toward and along the desired horizontal line in the middle of the road and keep efficient locomotion using parameters according to paths and optimized by the CS algorithm.Figure 11
A snake-like robot moves in a complex environment controlled by the proposed control frame work; CS optimization algorithm and adaptive path following method.
(a) (b) (c) (d)


## 6. Conclusion and Future Works

In this paper, a Hopf CPG network is used to replace the serpentine function to generate reference functions of joints of a snake-like robot to improve the smooth degree of control signal. To improve the energy efficiency of such robots in different environment, a CS algorithm is used to optimize locomotion parameters of the Hopf CPG network. An adaptive path following controller based on the improved LOS guidance law is designed to improve the adaptability of the robot to a complex environment with variable fractions and path widths. The adaptive LOS path following law is combined with a locomotion efficiency optimization system and CPG controller to steer the robot to the reference path accurately and efficiently. Simulation and experimental results show that the proposed methods optimize robot locomotion efficiency and steer the robot moving along with desired paths including straight and curve paths.As for future work, we will equip more sensors on the snake-like robot and intend to study adaptive control and multiobjective locomotion optimization of the robot for more complex environment. In particular, the proposed adaptive efficiency optimization and path following control approach will be used to other 3-D gaits of snake-like robots.



---

*Source: 8030374-2019-01-21.xml*