Directional Compliance in Obstacle-Aided Navigation for Snake Robots

Directional Compliance in Obstacle-Aided Navigation for Snake Robots


Snake robots have the potential to maneuver through tightly packed and complex environments. One challenge in enabling them to do so is the complexity in determining how to coordinate their many degrees-of-freedom to create purposeful motion. This is especially true in the types of terrains considered in this work: environments full of unmodeled features that even the best of maps would not capture, motivating us to develop closed-loop controls to react to those features. To accomplish this, this work uses proprioceptive sensing, mainly the force information measured by the snake robot’s joints, to react to unmodeled terrain. We introduce a biologically-inspired strategy called directional compliance which modulates the effective stiffness of the robot so that it conforms to the terrain in some directions and resists in others. We present a dynamical system that switches between modes of locomotion to handle situations in which the robot gets wedged or stuck. This approach enables the snake robot to reliably traverse a planar peg array and an outdoor three-dimensional pile of rocks.

I Introduction

Snake robots, composed of a chain of actuated joints, offer the potential to navigate challenging environments. If the robot had perfect knowledge of its state and the environment, it might select which terrain features to exploit or avoid while locomoting through unstructured or confined environments [3, 7]. However, in practice, the robot has little prior knowledge of the terrain, making it prone to getting entangled in or jammed between obstacles (shown in Fig. 1). This work presents a reactive controller which enables a snake robot to locomote through highly cluttered environments consistently using only proprioceptive (joint position and torque) sensors.

Prior work demonstrated that relatively straightforward reactive controllers based on proprioceptive feedback perform reasonably well in the types of terrain considered in this work [10, 11]. In these works, shape-based compliance controllers couple the motion of the many joints to produce desired motions in the world, provide a reduced number of parameters to control, and adapt the body shape to conform to terrain features in the surrounding environment. However, not all the terrain features are helpful for locomotion– some serve as obstacles which impede the robot’s movement rather than aiding it. As a result, the robot’s movements do not always result in desired propulsion. This work presents a novel means to infer when terrain features impede locomotion (and thus serve as obstacles), and adapts the shape-based compliance controller so that the robot moves through unstructured terrain more reliably.

The approach to snake robot locomotion control presented in this paper centers around the concept of directional compliance: allowing the robot to selectively admit forces applied on one side, and reject forces from the other side. This concept is inspired by the musculature and behavior of biological snakes [2]. We emulate this mechanism within the shape-based-compliance control strategy by selectively allowing some portions of the robot to comply to the environment, while others remain stiff to push off for forward propulsion. We implement this mechanism within a dynamical system [9] that actively modulates the robot’s local stiffness.

We empirically validate our approach both in a two-dimensional artificial indoor environment, a peg board, and in a three-dimensional outdoor environment, a rock pile. We experimentally compare our method to previous shape-based compliant control methods. We find that our method enables the snake robot to locomote farther and more consistently in obstacle-rich environments.

Fig. 1: In this work we present a control strategy to enable a snake robot to blindly locomote through unstructured terrains. (a) Indoors, in a planar peg board, the robot may be impeded when the posterior half of the robot becomes jammed between the pegs. (b) Outdoors, while covered with a protective skin, the robot is impeded when its head becomes jammed between several rocks. Our reactive control strategy infers that the robot is impeded and temporarily changes locomotive strategies.

The rest of this paper is organized as follows: Section II provides a background on related works. Section III describes our approach for snake robots navigating irregular terrain, which consists of inferring the presence of terrain features which obstruct forward progress using proprioceptive sensors, reacting to obstructions using directional compliance, and transitioning behaviors for robust locomotion. Section IV experimentally validates our approach on a peg array and a rock pile and Section V compares its performance with the previous control strategy. Finally, conclusions and future works are discussed in Section VI.

Ii Background

The reactive control strategy presented in this work is inspired by several existing methods that are reviewed in this section.

Ii-a Shape-based compliance

The serpenoid curve, found throughout the snake robot literature [1], is achieved by


where is the th joint angle, the angular offset, the wave amplitude, the temporal frequency, and the time. is the spatial frequency, which determines the number of waves on the robot’s body. defines the position of the th module along the robot backbone with respect to the head, where is the distance between each joint. By tuning these parameters, various gaits, both biologically inspired and engineered, can be achieved [8].

To coordinate a snake robot’s many internal degrees-of-freedom during locomotion, a shape function maps a point in low-dimensional parameter space into the joint space of the -link robot [10]. In this work, the amplitude of the serpenoid curve (1) is updated dynamically during locomotion, while other parameters are fixed as constants, i.e., . The serpenoid curve serves as the shape function,


Shape-based compliant control [10] extends admittance control [4] to articulated locomotion, assigning spring-mass-damper-like dynamics to the shape parameters,


where , , and are positive-definite tuning matrices that govern the dynamic response of the desired shape parameters . The forcing term is formed by transforming the external torques measured by the joints into the shape-parameter space by


given the Jacobian of the shape function . In the absence of external torques, the desired shape parameters will converge back to the nominal shape parameters . The admittance control serves as a “middle-level” controller that takes feedback from the high-level planner (in the form of nominal shape values) and outputs commands for the low-level joint controllers (in the form of desired joint angle set-points). In the remainder of this paper, we will refer to this form of shape-based compliance as “nominal compliance” to distinguish it from our proposed strategy, which augments this existing control strategy.

Ii-B Decentralized control with activation windows

In irregular environments, recent work found that allowing different portions of the robot to independently conform in a decentralized manner resulted in more effective locomotion [11]. This decentralization is accomplished by grouping sets of neighboring joints under “activation windows.” The joints contained within each activation window share shape parameters. The activation windows are defined by travelling sigmoid functions,


where is the number of windows, is the shape parameter in window , the sigmoid slope. Window spans the portion of robot backbone over . These activation windows move along the robot backbone with the travelling serpenoid curve, which serves to pass spatial shape information down the body.

Iii Methods

We divide our shape-based reactive control strategy into three parts: 1) inferring the presence of terrain features that cannot be exploited by nominal compliance for propulsion (which for brevity, we will refer to as “obstructions”) using only joint-level proprioceptions, 2) reacting actively to those obstructions and 3) transitioning between nominal and reactive behaviors.

Iii-a Inferring the presence of obstructions

When the robot interacts with the terrain, contact forces cause external torques measured by the robot. We introduce a method to use these torque measurements to determine whether a portion of the body is stuck, jammed, or otherwise obstructed.

When testing the shape-based compliance method of [10], we observed that the robot frequently became wedged or stuck, and we sought trends within its internal state which were correlated with these instances. We found the amplitude shape parameters act as an indication of the robot’s forward progression. Each activation window, which groups a set of neighboring joints along the body, has its own amplitude shape parameter as per (5). This means there are desired amplitudes for different portions of the robot . Note that the amplitude of each activation window is independent of the number of joints contained within the window, and the number of windows is determined by the spatial frequency in (2). Each varies from its nominal value . The difference between and reflects how much external torques have forced the robot to compliantly change its local body shape in the th activation window. To measure the degree to which each amplitude has varied, we take the mean value over a range of discrete time steps ,


We observed that if a terrain feature aids the robot’s locomotion, i.e., the robot moves through it without getting stuck, then . That is, the mean of the amplitude remains near the nominal amplitude in the time period from when the robot makes contact with that feature and ends at the time when it loses contact. On the other hand, if the th window is obstructed by the terrain, the mean amplitude is offset from the nominal amplitude, i.e., .

This observation on its own is insufficient to detect when the robots progress is impeded by its contact, however, since our snake robot has no external sensing and cannot directly sense when and where a contact begins or ends. Therefore we monitor the internal state by defining the shape absition as the summation of the difference between the desired and the nominal shape parameter for the th activation window over time,


The th amplitude absition remains near zero when locomotion progresses smoothly, but rapidly diverges if the robot’s locomotion is hindered. Thus, the shape absition serves as an indication of the robot’s locomotion progress. In practice, friction between the ground and the robot contributes a constant offset between and for each activation window. To remove the influence of the friction, we run several gait cycles on the ground to calibrate the offset and then subtract it from .

Fig. 2: We use joint position and torque feedback to infer when the robot’s locomotion progress is obstructed. The amplitude of the body wave is allowed to vary over time in response to joint torques. (a) The snake robot has become jammed in place between three pegs around its mid-section and tail. (b) The desired amplitudes in the shape-based compliant controller vary over time for the three activation windows: the head (window 1, solid red), mid-section (window 2, solid blue) and tail (window 3, solid green). The means of amplitudes are shown for windows (dashed lines), and the difference of these means from the nominal amplitude of (black dash-dotted line) are used to infer which windows are obstructed. (c) The resultant amplitude absitions for each window. The first window is not obstructed, so its absition remains near zero, but the other two windows are obstructed, so their absitions diverge from zero.

Fig. 2 shows an example of the amplitudes and amplitude absitions when the robot’s locomotion is impeded in mid-section and posterior windows. In this case, three activation windows are set along the robot’s backbone. In the anterior window, the offset between the average desired amplitude and the corresponding nominal amplitude is approximately equal to zero, and as a result, the amplitude absition fluctuates about zero, suggesting the absence of obstructions near the head. However, , resulting in divergence of from zero, which indicates the presence of obstructions in the mid-section the robot. Similarly, the divergence of from zero over this time period suggests the presence of obstructions around the posterior of the body.

Iii-B Directional Compliance

Monitoring the shape absition serves as a means to infer obstructions to the locomotion progress while following a shape-based compliant controller. To react to these obstructions we extend the nominal compliance to a new reactive strategy which we call directional compliance. We are inspired by biological snakes that can actively tune the stiffness of selected muscles to propel against obstacles [2]. Directional compliance allows the snake robot to admit (comply to) forces exerted on one side of the body but reject forces exerted on the other side. We find this strategy enables the robot to actively react to, and move through, terrain features that impede their locomotion.

Directional compliance in planar environments

Fig. 3: Amplitude modulation of positive directional compliance (PDC) and negative directional compliance (NDC) were manually initiated in this demonstration, where control of the robot is fully centralized, i.e., there is one activation window that spans the whole body. At the start, a shape-based controller with nominal amplitude is used. At , the controller is switched to PDC. The external forces exerted on the robot cause the amplitude to increase, and PDC prevents from decreasing. At , the controller is switched back to nominal compliance, allowing to decrease and return to . At , the controller is switched to NDC. External forces cause to decrease, then NDC prevents from increasing until at the controller is switched back to NC. The robot then returns to .
Fig. 4: Block diagram of the complete shape-based reactive control system with directional compliance.

The robot can increase its local curvature by increasing the amplitude in an activation window, or decrease local curvature by decreasing the amplitude. To make the robot directionally compliant, then, we can either admit forces resulting in increases in curvature, which we denote positive directional compliance, or admit forces resulting in decreases in curvature, which we denote negative directional compliance. Recall that in nominal compliance (NC), we integrate the desired shape parameter over time to dynamically vary the desired shape parameter . We realize directional compliance by introducing a filter function on , such that the modified shape parameter derivative is . A filter that enables positive directional compliance (PDC) on the amplitude is


Similarly, a filter that enables negative directional compliance (NDC) on the amplitude is


The presence of an obstruction is detected by monitoring the amplitude absition as described in Section III-A. When diverges from zero and , we find that PDC, in which the amplitude is only allowed to increase locally, helps the robot propel itself forward through obstructions instead of passively conforming to them. Similarly, NDC helps to overcome obstructions which cause to diverge from zero when . See Fig. 3 for an example of the effect of PDC and NDC on amplitude modulation. A supplementary video of this demonstration can be found at

Directional compliance in three-dimensional environments

Our snake robot has joints whose axes alternate between the dorsoventral and lateral directions. For undulation in three-dimensional environments, we generate two serpenoid curves on the dorsal and lateral planes by assigning them to odd and even joints, respectively,


where superscripts and represent odd and even joint indices. Note that planar locomotion can be achieved by setting . With (10) as a three-dimensional shape function, we implement shape-based compliance separately on the dorsal and lateral plane. This allows the dorsoventral and lateral joints to conform independently to rough terrain. The directional compliance filters (8) and (9) are applied independently to the amplitudes of the dorsoventral and lateral joints and windows. With directional compliance in both planes, the robot is capable of reacting to three-dimensional irregularities that impede its locomotion.

Iii-C Dynamical system for behavior transition

Fig. 5: Our control strategy enables a snake robot to blindly locomote over an unstructured outdoor rock pile. The controller transitions between compliance modes: nominal compliance (NC), positive directional compliance (PDC) and negative directional compliance (NDC). (a) shows several selected frames of traversal over the rock pile. (b) shows the amplitude absitions in the dorsal plane for the anterior window (red), the mid-section window (blue) and the posterior window (green), and (c) shows amplitude absitions of three activation windows in the lateral plane (magenta, cyan and dark green, respectively). The black dash-dotted lines in both figures show upper and lower thresholds: when an amplitude absition (an integral of the amplitude deviation over time) reaches a threshold, then directional compliance is initiated until the amplitude absition returns to zero. These times are indicated here with dotted lines. In this example, the head of the robot is blocked by obstructions at and . Then robot switches to NDC mode triggered by the lateral amplitude absition, and lifts its head portion to overcome the obstructions. PDC in the dorsal plane is also triggered twice at and to overcome obstructions located at sides of the body. We find experimentally that this strategy results in significantly more consistent locomotive performance than does the nominal shape-based compliance.

Directional compliance provides a novel means for snake robots to overcome obstructions that impede their locomotion. Here we present a dynamical system that automatically transitions between the nominal compliance (NC), positive directional compliance (PDC), and negative directional compliance (NDC) behaviors based only on proprioceptive feedback.

The amplitude absition, as described in Section III-A, is used to initiate the transition from nominal compliance to directional compliance. This is accomplished by setting a threshold for the deviation of amplitude absition from zero, and initiating directional compliance based on the sign of the absition. The upper and lower thresholds, and , define the robot’s sensitivity to obstructions, and are tuned by hand. When directional compliance is enabled, these thresholds serve as new nominal amplitudes when calculating the amplitude absition. When the amplitude absitions return to zero, the robot switches back to nominal compliance.

A block diagram of the control system is shown in Fig. 4. The nominal amplitude , input by a user or high-level planner, defines the nominal shape that the robots takes in the absence of external forces. The admittance control block uses joint torque feedback to compute a second derivative of the desired amplitude. Our directional compliance block adds a filter on the first derivative of the desired amplitude to modulate the effective stiffness, and outputs joint angle set points. A low-level PID controller embedded in each joint of the robot controls the actuators to follow the joint angle set points [6]. As the robot interacts with the environment, external forces from the terrain are sensed indirectly through joint torque measurements. The reactive filter in Fig. 4 combines (8) and (9),


NC is the default behavior when the shape absition lies between the upper and the lower thresholds. PDC is activated if drops below the lower threshold; the desired shape is only allowed to increase when negative are filtered out. Similarly, NDC is activated if raises beyond the upper threshold; is only allowed to decrease when positive are filtered out. We found an effective threshold setting to be and .

As described in Section II-B, the activation windows propagate from head to tail along the robot’s backbone with the travelling wave of the serpenoid curve. When a new window is initiated at the head, it is set to the nominal amplitude . When a window passes off of the tail, its shape information is discarded, allowing the robot to leave behind the shape parameters with their associated terrain features.

(a) Velocity on peg array (body length/min)
(b) Velocity on rock pile (body length/min)
Fig. 6: A comparison of the performance of a nominal compliance controller (NC), negative directional compliance controller (NDC), positive directional compliance controller (PDC), and dynamical system for transitioning between these three controllers, (a) on a peg array and (b) over a rock pile. Each black bar represents the average velocity over the four trials for one controller in one initial pose. Each red bar depicts the average velocity of the controller for all trials in the environment, error bars indicating the standard deviation over the trials for each control strategy.

In summary, our reactive controller adds a biologically-inspired directional compliance layer to shape-based compliant control. Directional compliance enables the robot to either push away from, or comply to, terrain features, based on the torque feedback measured over time. The amplitude of the body wave varies in response to external forces, and by tracking its change over time, we can infer the presence of obstructions and alter the compliance behavior accordingly.

Fig. 5 depicts a sequence of video frames and the corresponding amplitude absitions of a successful traversal over an unstructured rock pile. Directional compliance in the dorsal and lateral plane are triggered independently by shape absitions in the two planes.

Iv Experiments

We conducted an experimental comparison of the performance of shape-based compliant control variants. All experiments were carried out with a snake robot composed of sixteen identical actuated joints [6]. The joints were arranged such that the axes of rotation of neighboring modules were torsionally rotated ninety degrees relative to each other. Inside each actuator, a series-elastic element [5] provides joint torque feedback.

Experiments were conducted in a randomly-distributed peg array and an unstructured outdoor rock pile. For each environment, we compared four versions of shape-based control strategies:

  • Nominal compliance (NC)

  • Negative directional compliance only (NDC)

  • Positive directional compliance only (PDC)

  • Dynamical system with NC, NDC, and PDC

The NC strategy is the shape-based controller from [10], in which no filter is applied to the shape parameters derivatives. In the NDC strategy, a directional compliance filter in the form of in (9) is employed, which allows the amplitude to decrease in response to external forces, but not increase, in each window. In the PDC strategy, a directional compliance filter in the form of in (8) is employed, which allows the amplitude to increase but not decrease in each window. The full dynamical system includes a filter in the form of (11) which transitions between NC, NDC, and PDC, depending on trends in the amplitude over time in each window.

When operating within the peg array only odd modules are active, with three activation windows, where . When in the rock pile, three activation windows are assigned to both the dorsal and lateral plane, where and . Each controller was tested at five randomly selected initial positions and orientations. For each initial pose, we collected four trials for each controller, starting from the same position, and averaged their displacements. Controller performance in each condition was measured via the displacement of the geometric center of the robot after two minutes.

V Results

We found that our full controller, a dynamical system transitioning between NC, NDC, and PDC, outperformed the previous method (NC) and the ablated variants (PDC and NDC). The experimental results of the controllers’ performances are displayed in Fig. 6. We observed that NC is sensitive to the distribution of obstacles; it works well if the robot is placed in an initial position for which the nominal amplitude matches the distribution of terrain features, but frequently results in the robot becoming jammed between terrain features. NDC performed worst, since it interferes with the robot’s ability to push off of obstacles. PDC behaves well initially, but does not produce robust locomotion. This is due in part to the fact that when the amplitude can only increase, the robot has frequent self-collisions. The dynamical system strategy, which enables the robot to transition between the three control strategies, results in consistent planar and three-dimensional locomotion, and is the least sensitive to the robot’s initial pose. Example videos of the experiments can be found at

Vi Conclusion

We presented a biologically-inspired dynamical system for snake robots to robustly navigate unmodeled obstacle-rich environments. We designed a decentralized method that, using only proprioceptive feedback, infers whether the robot is entangled in terrain features that impede rather than aid locomotion. Our directional compliance control strategy allows the robot to locally change the effective stiffness of each region of the body in order to overcome those obstacles. We experimentally validated our approach in two different unstructured environments.

We found that directional compliance allows the robot to overcome common terrain features in outdoor environments, such as small bumps or small holes in the ground. However, this strategy is purely reactive, and cannot, for instance, transition to different modes of behavior needed to surpass larger terrain features like stairs. In future work we will explore new motion patterns and control strategies for such scenarios.

This work focuses on one specific shape parameter in the serpenoid curve– the amplitude. Future work will investigate the use of directional compliance in other shape parameters. Further, we have so far assumed that the robot is fully blind, using no external sensing such as direct contact sensing, vision, or inertial sensors. A continued avenue for our research is how to include input from other sensing modalities into our reactive control strategies, as well as tighter integration between the mid-level controller and high-level planners.


  1. S. Hirose (1993) Biologically inspired robots. Snake-Like Locomotors and Manipulators. Cited by: §II-A.
  2. B. C. Jayne (1988) Muscular mechanisms of snake locomotion: an electromyographic study of lateral undulation of the florida banded water snake (nerodia fasciata) and the yellow rat snake (elaphe obsoleta). Journal of Morphology 197 (2), pp. 159–181. Cited by: §I, §III-B.
  3. T. Kano, R. Yoshizawa and A. Ishiguro (2017) Tegotae-based decentralised control scheme for autonomous gait transition of snake-like robots. Bioinspiration & biomimetics 12 (4), pp. 046009. Cited by: §I.
  4. C. Ott, R. Mukherjee and Y. Nakamura (2010) Unified impedance and admittance control. In 2010 IEEE International Conference on Robotics and Automation, pp. 554–561. Cited by: §II-A.
  5. G. A. Pratt and M. M. Williamson (1995) Series elastic actuators. In Proceedings 1995 IEEE/RSJ International Conference on Intelligent Robots and Systems. Human Robot Interaction and Cooperative Robots, Vol. 1, pp. 399–406. Cited by: §IV.
  6. D. Rollinson, Y. Bilgen, B. Brown, F. Enner, S. Ford, C. Layton, J. Rembisz, M. Schwerin, A. Willig and P. Velagapudi (2014) Design and architecture of a series elastic snake robot. In 2014 IEEE/RSJ International Conference on Intelligent Robots and Systems, pp. 4630–4636. Cited by: §III-C, §IV.
  7. F. Sanfilippo, J. Azpiazu, G. Marafioti, A. Transeth, Ø. Stavdahl and P. Liljebäck (2017) Perception-driven obstacle-aided locomotion for snake robots: the state of the art, challenges and possibilities. Applied Sciences 7 (4), pp. 336. Cited by: §I.
  8. M. Tesch, K. Lipkin, I. Brown, R. Hatton, A. Peck, J. Rembisz and H. Choset (2009) Parameterized and scripted gaits for modular snake robots. Advanced Robotics 23 (9), pp. 1131–1158. Cited by: §II-A.
  9. M. Travers, A. Ansari and H. Choset (2016) A dynamical systems approach to obstacle navigation for a series-elastic hexapod robot. In 2016 IEEE 55th Conference on Decision and Control (CDC), pp. 5152–5157. Cited by: §I.
  10. M. Travers, J. Whitman and H. Choset (2018) Shape-based coordination in locomotion control. The International Journal of Robotics Research 37 (10), pp. 1253–1268. Cited by: §I, §II-A, §II-A, §III-A, §IV.
  11. J. Whitman, F. Ruscelli, M. Travers and H. Choset (2016) Shape-based compliant control with variable coordination centralization on a snake robot. In 2016 IEEE 55th Conference on Decision and Control (CDC), pp. 5165–5170. Cited by: §I, §II-B.
Comments 0
Request Comment
You are adding the first comment!
How to quickly get a good reply:
  • Give credit where it’s due by listing out the positive aspects of a paper before getting into which changes should be made.
  • Be specific in your critique, and provide supporting evidence with appropriate references to substantiate general statements.
  • Your comment should inspire ideas to flow and help the author improves the paper.

The better we are at sharing our knowledge with each other, the faster we move forward.
The feedback must be of minimum 40 characters and the title a minimum of 5 characters
Add comment
Loading ...
This is a comment super asjknd jkasnjk adsnkj
The feedback must be of minumum 40 characters
The feedback must be of minumum 40 characters

You are asking your first question!
How to quickly get a good answer:
  • Keep your question short and to the point
  • Check for grammar or spelling errors.
  • Phrase it like a question
Test description