E cient Robotic Walking by Learning Gaits and Terrain ... › ~mrl › pubs › sandeep ›...
Transcript of E cient Robotic Walking by Learning Gaits and Terrain ... › ~mrl › pubs › sandeep ›...
Efficient Robotic Walkingby Learning
Gaits and Terrain Properties
Sandeep Manjanna
Master of Science
School of Computer Science
McGill University
Montreal,Quebec
2013-08-12
A thesis submitted to McGill University in partial fulfillment of requirementsfor the degree of Master of Science in Computer Science
c⃝Sandeep Manjanna, 2013
DEDICATION
I dedicate this work to my parents, Annapurna and Manjanna, my granny,
my teachers, my brother Ajju and my girlfriend Rashmi.
ii
ACKNOWLEDGEMENTS
Studying at McGill has been a wonderful experience and I would like
to thank all the people who have made the course of my graduate studies
memorable. Foremost, I would like to express my gratitude to my super-
visor Gregory Dudek for his encouragement, knowledgeable inputs, support
and guidance throughout the research. I want to take this opportunity to
thank every member of the Mobile Robotics Lab: Dave, Malika, Juan, Flo-
rian, Anqi, Yogi, Yiannis, David, Jimmy, Junaed, Mike, Arnold, Isabelle and
Greg, for being helpful and inspiring me during the course of my research in
the lab. I thank Philippe Giguere for his patience, kind tutoring and helping
me understand the internals of the Aqua robot. I thank Bikram for his help
in conducting experiments and sharing his knowledge about the mechanical
design of the Aqua robot. I would like to thank my friends in Montreal who
made it a very pleasant experience: Aditi, Aparna, Hari, Rohini; all my friends
in India for all the encouragement they have given. Finally, I want to thank
my mom, my dad, my granny, my brother and my girlfriend for being there
when I needed them and supporting me with every decision I made.
iii
ABSTRACT
In this thesis, we investigate the question of how a legged robot can walk
efficiently, and take advantage of its ability to alter its gait. This work targets
the issue of increasing the efficiency of legged vehicles on different challeng-
ing terrains. We decompose the problem into three sub-problems: walking
gait problem, physical adaptation problem, and terrain identification and gait
adaptation problem. In the walking gait sub-problem, we investigate the ef-
fects of gait parameters on the performance of the robot. In particular, we
assess the ground speed, power efficiency and terrain sensibility of the robot
at varying leg cycle frequencies. In the physical adaptation sub-problem, we
investigate the effects of different kinds of legs on the robot’s performance. We
also look at the influence of leg-compliance on walking behavior. In the terrain
identification and gait adaptation sub-problem, we design a gait adaptation
algorithm to identify the terrain by initially classifying the proprioceptive in-
formation collected over different terrains and then adapt its gait accordingly.
Identifying the terrain in real-time helps the robot plan its gait on that terrain
and effectively increase the walking efficiency in real-time. We use a cost-based
unsupervised learning algorithm [28] to classify the terrain data. In our exper-
iments, we use proprioceptive sensor data collected by running the robot on
four different terrains. We also use synthetic data for verifying our algorithm.
We conclude with an analysis of the data and validate the performance of our
algorithm.
iv
ABREGE
Dans cette these, nous etudions les problemes lies a l’efficacite de marche
des robots a pattes et construisons des solutions algorithmiques et physiques
pour les regler. Ce travail vise a accroıtre l’efficacite, en termes de mobilite,
des vehicules a pattes sur differents terrains difficiles. Cette problematique
est decomposee en trois sous-problemes: la facon de marcher, l’adaptation
physique, et l’identification de terrains associee a l’adaptation de la demarche
des robots. Dans le premier cas (la facon de marcher), nous etudions les effets
des parametres de la demarche sur la performance du robot. Nous evaluons
plus particulierement la vitesse au sol, le rendement energetique et la sensibilite
du robot vis-a-vis du terrain et ce, en fonction de la vitesse de deplacement des
jambes. Dans le cas du deuxieme sous-probleme, soit l’adaptation physique,
nous etudions les effets de differents types de jambes sur la performance du
robot. Nous examinons egalement l’influence de la flexibilite des jambes sur
la marche du robot. Troisiemement, le sous-probleme d’identification de ter-
rains et d’adaptation de la demarche des robots est l’un des problemes les
plus importants pour les vehicules capables de marcher. Identifier le ter-
rain en temps reel permet au robot de planifier sa demarche sur ce terrain
et d’augmenter efficacement son rendement de marche. Nous concevons un
algorithme permettant d’identifier le terrain en classant d’abord les informa-
tions proprioceptives recueillies sur differents terrains pour ensuite adapter la
demarche en consequence. Dans nos experiences, nous utilisons un algorithme
d’apprentissage non supervise pour classer les donnees de terrain, de meme
que les donnees issues de capteurs proprioceptifs collectees en employant le
robot sur quatre types de terrains differents. Nous utilisons egalement des
donnees synthetiques afin de verifier notre algorithme d’identification. Dans
v
les resultats, nous presentons une analyse des donnees et validons les perfor-
mances de notre algorithme.
vi
TABLE OF CONTENTS
DEDICATION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ii
ACKNOWLEDGEMENTS . . . . . . . . . . . . . . . . . . . . . . . . iii
ABSTRACT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iv
ABREGE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . v
LIST OF TABLES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ix
LIST OF FIGURES . . . . . . . . . . . . . . . . . . . . . . . . . . . . x
1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . 11.2 Problems Addressed . . . . . . . . . . . . . . . . . . . . . . 21.3 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . 51.4 Contribution of this Work . . . . . . . . . . . . . . . . . . 71.5 Thesis Outline . . . . . . . . . . . . . . . . . . . . . . . . . 8
2 Background and Related Work . . . . . . . . . . . . . . . . . . . 9
2.1 Walking Gaits and Performance . . . . . . . . . . . . . . . 92.2 Amphibious Adaptations in Robots . . . . . . . . . . . . . 102.3 Terrain Sensing and Identification . . . . . . . . . . . . . . 132.4 Gait Adaptation . . . . . . . . . . . . . . . . . . . . . . . . 15
3 Gait and Performance of the Robot . . . . . . . . . . . . . . . . . 18
3.1 Walking gaits and Gait parameters . . . . . . . . . . . . . 183.2 Performance Factors . . . . . . . . . . . . . . . . . . . . . 213.3 Experiments . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.3.1 Experimental Setup . . . . . . . . . . . . . . . . . . 233.3.2 Data Collection . . . . . . . . . . . . . . . . . . . . 23
3.4 Results and Observations . . . . . . . . . . . . . . . . . . . 253.5 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
4 Physical Adaptation . . . . . . . . . . . . . . . . . . . . . . . . . 29
4.1 Ninja Legs . . . . . . . . . . . . . . . . . . . . . . . . . . . 294.1.1 Design Approach . . . . . . . . . . . . . . . . . . . 314.1.2 Mechanical Properties . . . . . . . . . . . . . . . . . 32
vii
4.2 Experimental Results and Observations . . . . . . . . . . . 344.2.1 Performance Evaluation . . . . . . . . . . . . . . . . 354.2.2 Effective Arm Length . . . . . . . . . . . . . . . . . 374.2.3 Linear Variant of Tripod Gait . . . . . . . . . . . . 38
4.3 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
5 Terrain Identification in Real-time And Gait Adaptation . . . . . 43
5.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . 435.1.1 Sensor Data . . . . . . . . . . . . . . . . . . . . . . 445.1.2 Feature Selection . . . . . . . . . . . . . . . . . . . 455.1.3 Classification Methodology . . . . . . . . . . . . . . 455.1.4 On-line Terrain Identification . . . . . . . . . . . . . 475.1.5 Gait Switch . . . . . . . . . . . . . . . . . . . . . . 47
5.2 Semi-supervised Gait Adaptation . . . . . . . . . . . . . . 495.2.1 Algorithm . . . . . . . . . . . . . . . . . . . . . . . 505.2.2 Implementation . . . . . . . . . . . . . . . . . . . . 50
5.3 Experimental Results and Observations . . . . . . . . . . . 525.3.1 Terrain Differentiability and Gait Parameters . . . . 525.3.2 Performance of the Classifier . . . . . . . . . . . . . 545.3.3 On-line Terrain Identification and Gait Adaptation . 56
5.4 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
6 Conclusion and Future Work . . . . . . . . . . . . . . . . . . . . . 67
6.1 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . 676.2 Future Work . . . . . . . . . . . . . . . . . . . . . . . . . . 696.3 Final Word . . . . . . . . . . . . . . . . . . . . . . . . . . 69
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
viii
LIST OF TABLESTable page
2–1 Comparison of the amphibious leg designs. . . . . . . . . . . . 12
3–1 Tabular representation of the experimental observations. Thetable presents a fc at which optimal performance is achievedon different terrains. . . . . . . . . . . . . . . . . . . . . . . . 28
5–1 Mapping of terrain types and optimal gaits . . . . . . . . . . . 48
5–2 An example for value of switching gaits with ground speed asutility function. The speed data is taken from the results ofChapter 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
ix
LIST OF FIGURESFigure page
1–1 Hexapod robots . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1–2 Amphibious Aqua robot equipped with Ninja legs [18]. . . . . 4
3–1 Graphical representation of Tripod Gait. . . . . . . . . . . . . 20
3–2 Plot showing the parameters of the tripod gait . . . . . . . . . 21
3–3 Experimental Setup . . . . . . . . . . . . . . . . . . . . . . . . 24
3–4 Ground speed of the robot plotted against fc . . . . . . . . . . 26
3–5 RMS of power consumed per unit distance walk of the robotplotted against fc . . . . . . . . . . . . . . . . . . . . . . . . 27
4–1 Surf entry exit experiment with Ninja legs . . . . . . . . . . . 31
4–2 Ninja leg behaving as an offset wheel. . . . . . . . . . . . . . . 32
4–3 Illustrated diagram of the Ninja Leg. . . . . . . . . . . . . . . 33
4–4 Comparison of the effective arm length between the semi-circular walking legs and the Ninja legs . . . . . . . . . . . . 33
4–5 Mechanical properties of Ninja legs . . . . . . . . . . . . . . . 34
4–6 Trial runs of the Aqua robot on tiled surface. . . . . . . . . . . 35
4–7 Ground speed plotted against fc . . . . . . . . . . . . . . . . . 36
4–8 RMS power consumption plotted against fc . . . . . . . . . . . 36
4–9 Depiction of Aqua robot going from sit mode to stand mode.Both the Ninja legs and the RHex legs are shown. . . . . . . 38
4–10 Performance variation with effective arm length . . . . . . . . 38
4–11 Two variants of tripod gait. . . . . . . . . . . . . . . . . . . . 40
4–12 Comparing the performance of variants of Tripod gait . . . . . 41
5–1 Block diagram of Gait Adaptation Algorithm . . . . . . . . . . 44
5–2 Effect of gait on data distribution . . . . . . . . . . . . . . . . 49
x
5–3 RosNodes for simulating the Gait Adaptation algorithm . . . . 52
5–4 Leg motor current and vertical acceleration (Az) plotted as afunction of Leg angle . . . . . . . . . . . . . . . . . . . . . . 53
5–5 Plots showing terrain differentiability . . . . . . . . . . . . . . 54
5–6 Plot showing variation in performance of the classifier with fc 55
5–7 Classification results on data from four terrains. . . . . . . . . 56
5–8 Data simulating two terrains . . . . . . . . . . . . . . . . . . . 58
5–9 Robot traversing from terrain 1 to terrain 2 only once. . . . . 59
5–10 Terrain transition for every 20 steps (Ts = 20). . . . . . . . . . 60
5–12 Terrain transition for every 2 steps (Ts = 2) . . . . . . . . . . 60
5–11 Terrain transition for every 3 steps. . . . . . . . . . . . . . . . 61
5–13 Error in choosing right gait plotted against transition steplength (Ts). . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
5–14 Classification plotted against distance between the mean ofGaussian distributions. . . . . . . . . . . . . . . . . . . . . . 63
5–15 Robot sensor dataset collected from two terrains : dry sandand grass. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64
5–16 Results of classification and gait adaptation plotted againsttime samples. . . . . . . . . . . . . . . . . . . . . . . . . . . 65
5–17 The step length is changed to 3 (Ts=3) and this simulates achange in terrain for every 3 steps. . . . . . . . . . . . . . . 65
5–18 The step length is changed to 2 (Ts=2) and this simulates achange in terrain for every 2 steps. . . . . . . . . . . . . . . 66
xi
CHAPTER 1Introduction
1.1 Introduction
In this thesis, we investigate the question of how a legged robot can walk
efficiently, and take advantage of its ability to alter its gait. Autonomous ter-
restrial vehicles find applications in various fields including search and rescue
operation, agricultural land survey, geological debris exploration, payload car-
riage on difficult terrains, outdoor surveillance, remote inspection, and secu-
rity mission. These applications call for a robot that is able to walk effectively
through challenging terrains (e.g., ice, sand, gravel, snow, and wooded lands),
climb steep hills, walk over small obstacles (e.g., lumps of mud, logs, sand
piles, and rocks), climb stairs, and achieve many other maneuvers.
Legged robots are a kind of terrestrial robots which use legs for their loco-
motion. The mechanical ability of legged robots to navigate through different
kinds of terrains is one of their major potential benefits over other wheeled or
tracked mobile robots. Legged robots are highly capable of walking on rough,
rocky, sandy, steep and undesired terrains. These robots can also use different
kinds of leg movements to jump or step over an obstacle, climb stairs and
crawl on highly inclined surfaces. Energy efficiency while walking, generation
of an effective gait (a pattern of movement of limbs in animals, used for lo-
comotion) to move efficiently on challenging terrains, maintaining static and
dynamic stability of the system while walking are few of the challenges faced
by legged robots. Energy efficiency, higher locomotion speeds, robust walk-
ing capabilities on difficult surfaces, versatility and adaptability to different
walking environments are the key ingredients that will encourage a wide range
1
utilization of legged locomotion in autonomous systems. In this thesis, we try
to address some of these challenges and strive to maximize the effectiveness of
legged robots.
We used an amphibious Aqua family robot [20] (Fig. 1–1a) for our ex-
periments. This is a hexapod, built based on the design of RHex robot [57]
(Fig. 1–1b). We recorded the proprioceptive measures from the robot using
the inertial measurement unit and actuators aboard the robot. One of the
important characteristics of Aqua class robots is their use of robust open-loop
walking, which allows for robust walking across many terrain types with a very
simple mechanical design and control mechanism.
(a) Aqua robot [20] (b) RHex Robot [57]
Figure 1–1: Hexapod robots
1.2 Problems Addressed
In this work, we concentrate on some of the challenges in the mobility
of legged robots. We investigate the walking efficiency and estimate the per-
formance of legged robots when operated with different walking gaits and in
varied environments. We also investigate the capacity of autonomous vehi-
cles to sense their environment using proprioceptive measurements recorded
during their interaction with the environment. We also assess the impact of
mechanical changes on the walking performance of the robot. Through this
2
work, we address some of the mobility issues in legged robots, operating on
challenging terrains, by building algorithmic and mechanical solutions.
We decompose this problem into three sub-problems: a walking gait prob-
lem, physical adaptation problem, and terrain identification and gait adapta-
tion problem. For example, considering the walking efficiency problem in
humans: different gaits (e.g., walking, running, and jumping) affect their mo-
bility, physical adaptations (e.g., shoes, slippers, and spikes) aid in effortless
walking on different terrains, and finally, knowledge about the terrain will help
in planning the walking style compatible to that terrain.
The walking gait sub-problem aims at analyzing gaits and gait param-
eters and their effects on the performance of the robot. A walking gait is a
combination of different movements of limbs to achieve locomotion and is de-
fined by a set of properties, called gait-parameters, that alter the locomotion
trajectories of the mobile system. For example, a human walking gait is de-
fined by parameters, such as step length, stride length, speed, and foot angle.
In this work, for our analysis of walking gaits in legged robots, we consider the
gait parameter - leg rotation frequency. The robot is operated with varying
leg rotation frequencies and its performance is estimated as a function of this
frequency change, which turns out to have a profound effect on the robot’s
performance. For investigation, we quantize the performance into factors such
as ground speed and energy efficiency of the robot. In this sub-problem, we
also investigate the impact of the environment on the walking performance of
the robot by driving the robot on different terrains. For our experiments, we
chose terrains with varied properties including granular terrains like wet and
dry sand, soft terrain like grass, and hard terrain like concrete surface.
The second sub-problem is physical adaptation problem. A physical adap-
tation to the kind of terrain can enhance the walking experience. For example,
3
walking on ice surface is much easier with spiked shoes than with the flat sole
boots. Thus, a good physical equipment can help one in achieving better per-
formance as a walker. As an approach to this sub-problem, we inspected the
effect of different kinds of limbs on the walking performance of the robot. We
designed and verified the legs which enhanced the capabilities of the robot be-
yond walking. In this work, we explore different gaits that could be achieved
with the newly designed Ninja legs and analyze the performance of the robot
on various terrains, when equipped with these new legs. We look into few
mechanical aspects of the robot legs that would help the robot walk efficiently
and elegantly.
(a) Ninja legs used for terrestrial locomo-tion.
(b) Ninja legs used for swimming under-water.
Figure 1–2: Amphibious Aqua robot equipped with Ninja legs [18].
The last sub-problem is terrain identification and gait adaptation in real-
time. Identifying the terrain by tactile sensing has been an interesting problem
for many years. Sensing the terrain and getting to know the terrain well
in advance helps to plan one’s walk on that terrain. If one knows that the
terrain type is deep snow, then a gait - lifting the leg completely out of snow
on every step - can be planned. This kind of planning improves the walking
efficiency on the identified terrain. Similarly, in robots, good walking plan
based on the knowledge about the terrain helps in improving the efficiency of
the robot and aids the robot in choosing a terrain specific walking gait. Based
4
on our analysis in the walking gait sub-problem, we map walking gaits onto
terrains by considering a trade-off between performance factors. Once the
terrain is identified in real time, the robot looks up in this map to choose
a near-optimal high performance gait for that terrain. We have designed
an algorithm to identify the terrain in real time and autonomously change
the walking gait to suit the terrain identified. We achieve this by initially
classifying the proprioceptive measurements from different terrains using one
of the cost-based unsupervised classification techniques.
We also combine the sub-problems and investigate the interplay between
the gait parameters and the terrain classification accuracy, and the effects of
gait-parameters on the gait adaptation algorithm.
1.3 Motivation
Walking robots are gaining importance in many critical applications in-
cluding rescue mission, and exploring debris. All these applications pose diffi-
cult challenges for the robot to adapt to rough environments. A robot capable
of walking only on flat indoor surfaces will be of limited utility on complex
irregular terrains. Hence, it is important to endow the robot with the ability
to infer terrain classes and thus moderate its behavior accordingly. A legged
robot walking with high leg speed can get stuck in deep snow, but lower leg
speeds allow the robot to walk without digging into the snow. For walking on
hard concrete surfaces, however, the robot can be efficient and achieve better
ground speeds at higher leg speeds. These observations motivated us to study
gait and terrain relationships more deeply.
Walking robots have the potential to function over a wide range of ter-
rain types, such as sand, mud, grass, snow, and ice. But different terrains
imply different optimal walking behaviors; a phenomenon well known to any
person who has had to walk across an ice-covered sidewalk during a Canadian
5
winter. Similarly, terrain-specific gait changes in legged robots are needed to
optimize performance. The gait transition from walking to running in humans
and other animals has been the subject of extensive prior research. There are
several analyses of the transition from walking to running in biological sys-
tems as the speed of motion increases [19, 1]. One possible explanation for
gait transitions is that the shift to a new mode of locomotion occurs at the
mechanical limit of whatever locomotion mode is being used [2]. That is, once
the mechanical limit of the legs, walking in particular gait, has been reached
due to the speed of motion, the system must switch to a new gait to go any
faster. Another explanation proposes that gait transitions occur in order to
minimize the total metabolic cost, switching mechanism known as an ener-
getic trigger. The transition can be predicted by observing when the rate of
energy expenditure for walking surpasses that for running; this is equivalent
to the speed at which running becomes more efficient than walking in terms
of energy expenditure per unit distance. Human data indicates this speed to
be 2.2-2.3 m/s [45] [23]. These established observations suggested us to study
the different gait parameters and their effects on energy efficiency and ground
speed of the robot.
The Aqua family robots are amphibious robots. As we work with an
amphibious robot, we are also motivated by swimming to walking and walking
to swimming problems. The problem of transition between swimming gait
and walking gait poses several challenges - the robot should be capable of
identifying the difference between the shore and the wave, it should be capable
of deciding when to switch the gaits to have a smooth transition. These
challenges motivated us towards concentrating our study on identifying the
terrains and gait optimizations in real-time.
6
The walking robot gets a response back from the terrain. This response
provides the proprioceptive measurement for our experiments. This response
from the terrain depends on not only the terrain properties, but also the com-
pliance and other properties of the robot’s legs. Any changes in the properties
of legs affect the performance of the robot and also the features measured
for terrain identification. Hence, we considered studying different physical
adaptations of the robot and measure their effects on the performance of the
robot.
1.4 Contribution of this Work
There is a vast literature available on legged robots and their walking be-
haviors, however, substantial study needs to be done on the impact of walking
gaits on the robot’s performance and adaptation of walking gaits to the terrain
properties. In this study, we address few of the issues related to the efficient
walking of legged robots.
The major novel contribution of this work is an algorithm for on-line gait
adaptation, in which the robot’s behavior is altered as a function of observed
terrain properties. We present an analytical study of the interplay between
the gait parameters and the performance of the robot. Then, we add ter-
rain variations to this problem to make it more interesting and investigate the
response from the terrain to varying gait parameters. From the results, we
try to develop a mapping between the terrains and near-optimal gait proper-
ties. Optimal gait properties are the set of parameters which yield optimal
performance of the robot.
In a continued study of interaction between terrain and robot, we try
to take advantages of physical modifications to the robot. As an another
novel contribution, we present the design of an amphibious robotic leg (Ninja
leg), that enhances the capabilities of our robotic platform. These new legs
7
possess different properties and have an effect on the performance of the robot
and proprioceptive measurements from the robot. We analyze the impact of
physical alteration on the performance of our algorithm and terrain properties.
1.5 Thesis Outline
The thesis is organized into key important chapters, one for each of the
core sub-problems mentioned above. As a preliminary, however, Chapter 2
introduces the background to gait and terrain identification problems. We
discuss some previous work related to walking gaits and performance in legged
robots, tactile sensing and classification of the terrains.
Chapter 3 presents a detailed discussion of the walking gaits we use, and
the associated gait parameters. We describe the approach used to address our
first sub-problem and discuss the results and observations of our experiments.
In Chapter 4, we discuss the mechanical aspects of the newly designed legs for
the robot. We also present a set of behaviors and observations of the robot
equipped with different kinds of legs. Chapter 5 introduces the terrain identifi-
cation and gait adaptation problem and discusses the algorithm to identify the
terrain properties in real time and adapt to an optimal walking gait. In this
chapter, we provide results with a simulated setup to verify the performance
of our algorithm.
We also discuss the possible interplay between the sub-problems and pro-
vide the related results. Finally, we conclude the thesis with Chapter 6,
wherein we discuss the contributions of the work to the field of robotics and
probable future work.
8
CHAPTER 2Background and Related Work
Since this thesis touches on different subjects including walking gaits,
terrain clustering, gait transitions, performance of the robot, and physical
adaptations, this chapter reviews some of the previous work done in these
different areas.
2.1 Walking Gaits and Performance
The details of a walking gait have a great influence on the overall perfor-
mance of locomotive systems. Being able to select an effective combination of
gait parameters benefits the mobile system by delivering better performance.
Gait studies in terrestrial mammals show a species-specific bias for the speed
these animals use, although they are capable of utilizing and sustaining a wide
range of speeds [47]. Studies discovered that the domestic horse has a pre-
ferred speed within each gait [33], and many species have been observed to use
certain speeds much more frequently than others [11, 32, 48]. Prior research
shows that the preference for certain specific speeds associated with each gait
is due to the fact that at these speeds, energy efficiency is maximized [33].
Studies also show that a particular locomotion mode can achieve only certain
finite maximum speed within the system’s mechanical limit [2]. That is, once
the mechanical limit of the legs, walking in particular gait, has been reached
due to the speed of motion, the system must switch to a new gait to go any
faster. Thus the gait parameters in animals affect their mobility.
There has also been a body of prior work on the walking capabilities and
efficient gaits in legged robots. One of the earliest legged robots to demonstrate
impressive obstacle climbing ability, and good mobility in difficult terrains is
9
GE Quadruped [62, 21]. Other notable early results are the speed evaluation
tests on six legged robots such as Atilla [6] and Genghis [5]. The gait related
properties including leg placement, and stride frequency are also discussed in
these robots. Saranli et al. [57] proposed a speed analysis on a hexapod robot,
RHex. In their work, the gait of the robot is split into slow and fast swings
and the robot uses a tripod gait for locomotion. The parameters of the gait,
such as stride angle, stance angle, and stride period, are varied and the speed
achieved is estimated. The effects of the terrain properties on the velocity
of the robot are considered as well. They also concentrate on evaluating the
performance of the robot in terms of power consumption and specific resistance
of the terrain.
Another performance evaluation conducted by Cham et al. [13], on the
Sprawlita hexapod, investigates the stride frequency optimization to achieve
maximum performance. This study captures the effects of stride period on the
performance measures such as hopping height and velocity. In a recent paper,
Garcia Bermudez et al. [25] discuss the maximum velocity achieved by the
OctoRoACH robot on distinct rough terrains. Here, the authors concentrate
on the effects of stride frequency and measure the performance in terms of
maximum velocity and vibrational terrain signatures. In our work, we quantify
the performance in terms of ground speed and energy efficiency over different
terrains. We conduct the performance evaluation over two variable spaces:
the gait-parameters and the terrain properties.
2.2 Amphibious Adaptations in Robots
Amphibious robots have the potential for many applications in coral reef
studies, terrain mapping, and search and rescue operations. Amphibious legs
equip the robot with a capability to explore diverse locations in the world
encompassing those that are on the ground as well as underwater.
10
Recently, there have been amphibious robots designed to operate with
legs to walk and swim effectively. The design by Boxerbaum et al. [9] has
six propeller legs which can be used as wheels on land and propellers under
water. The propeller legs in this design have 2DOF, to achieve translational
and yawing motions of the robot underwater, increasing the complexity of
the controller and probably have a negative impact on cost and robustness
relative to the design proposed by us. An alternative design by Yu et al. [70]
is equipped with four circular legs and two flippers for swimming. The circular
legs are used as wheels for land locomotion and as propellers for underwater
mobility. In these designs, the legs have more than one degree of freedom which
is achieved by using multiple actuators per leg. Increased number of actuators
in these designs complicate the robot’s operations. A major drawback of
propeller based legs is the plausible harm propellers could cause to delicate
marine creatures.
The amphibious six-legged AmphiHex-robot, in the study by Liang et al.
[43], uses six adaptable legs which can adapt to both swimming and walking.
This design has a limitation on the strength of the legs to support the weight
of heavier robots. A good estimate of swimming capabilities of the robot in
actual underwater environments is missing in their work. Also the strength of
the legs is not discussed in detail. The Ninja leg [18], which we discuss in later
chapter, is a mechanically simple design with 1 degree of freedom per leg and
allows the Aqua robot to achieve complex maneuvers with 5DOF trajectories.
Table 2–1 presents a comparison between different amphibious leg designs.
The gait used for different maneuvers of the robot affects the power effi-
ciency and range of physical speed of the robot. Several research groups have
addressed the development of efficient tripod gait walking for legged robots
[34, 15, 58, 26]. Several studies have also been conducted on swimming gaits
11
Table 2–1: Comparison of the amphibious leg designs.
Platform Used Terrestrial Underwater Thrust Complexity
Mode Mode (N) per Leg
Alexander SBoxerbaum,Philip Werk,Roger D Quinn,and RaviVaidyanathan.[9] (2005)
Whegs IV Wheel Propeller 34 2DOF
Jiancheng Yu,Yuangui Tang,Xueqiang Zhang,and ChongjieLiu. [70] (2010)
. Wheel Propeller 30 2DOF
Xu Liang, MinXu, Lichao Xu,Peng Liu, Xi-aoshuang Ren,Ziwen Kong,Jie Yang, andShiwu Zhang.[43] (2012)
AmphiHex Legged Oscillatory 27 1DOF
Bir BikramDey, SandeepManjanna, andGregory Dudek.[18] (2013)
Aqua Legged Oscillatory 36 1DOF
12
for legged robots. A study by Plamondon et al. [49] discusses the develop-
ment and performance properties of swimming gaits, for Aqua-class vehicles,
with names such as “middle-off”,“ hovering”, “sinusoid”, “alternate”, each of
which provides a trade-off between stability, speed, and other factors. We use
middle-off swimming gait for our experiments in this work.
One of the open questions in amphibious legged robots is the adaptive leg
that enables the robot to run on terrestrial surfaces and swim underwater. We
try to address this issue by presenting a design (Ninja legs) that amalgamates
the walking abilities of legs and swimming abilities of the flippers. We evaluate
our design not only for performance, but also for practical robustness, by
posing challenging tasks like entering and exiting surf in the ocean.
2.3 Terrain Sensing and Identification
Terrain identification has the potential to increase the efficiency of nav-
igation in mobile vehicles. Once the terrain is identified, mobile vehicles can
use this information to adapt their gaits based on prior knowledge about the
terrain, avoid certain terrain types that would pose challenges, improve the
walking abilities and performances. To be able to identify the terrain, one
should be capable of sensing its properties. Many sensors like cameras, and
range sensors, can be considered for terrain identification purposes, but tac-
tile sensing provides information directly related to the mechanical properties
of the terrain. Tactile sensing is an economical and robust solution for sur-
veying the terrain properties. In this work, we sense and identify the terrain
through tactile feedback. Similarly, many animals use tactile feedback for
navigation through challenging environments. For example, whiskers on the
body of some animals act as tactile sensors and aid them in functionalities
including exploration, locomotion, gather information about surface textures
and shapes [50, 63, 42].
13
One of the earliest research to mention tactile sensors in robots is Grey
Walter’s study on tortoise robot [64]. The tortoise robot uses a touch sensor
to avoid obstacles and navigate through the environment to reach its reward.
Some of the popular ways to achieve tactile sensing are using artificial whiskers,
tactile probes or vehicle-mounted sensors. In the literature, the deflections of
artificial flexible whiskers, measured using a potentiometer, are used to esti-
mate the distance to an obstacle [37, 16] or recognize an object [55]. These
whiskers are not sensitive to the texture of the surface and thus are not very
much suitable for terrain sensing. A study by Roy et al. [54] presents surface
texture classification technique using the acoustic response obtained by tap-
ping a probe against a surface. Another work using a tactile probe, presented
by Giguere et al. [29, 26], analyzes the acceleration patterns induced at the
tip of the probe while it is dragged over a surface. They present classification
results over ten different surfaces including both indoors and outdoors.
Yet another efficient way to sense a terrain is by considering the dynam-
ics of overall system when the robot is traversing different terrains. This can
be achieved by measuring the inertial estimations captured by inertial sensors
mounted on the robot’s body. In this model, wheels or the legs of the vehicle
act as tactile probes. In [56], Sadhukhan proposed a terrain classification tech-
nique using the internal sensors on a wheeled vehicle. This technique relied on
vertical acceleration of the chassis of the vehicle to perform terrain identifica-
tion. DuPont et al. [22] present a terrain identification technique for wheeled
vehicles by considering the vibration signatures represented by angular veloci-
ties such as pitching and rolling, and vertical accelerations. They make use of
a probabilistic neural network to differentiate between three terrains such as
grass, gravel and asphalt. Brooks et al. [10] use linear separator and Weiss et
14
al. [67] use support vector machines on the vibrational signatures produced
by chassis vibrations when the vehicle traversed different terrains.
The problem of terrain identification by legged vehicles was studied ini-
tially in the context of research on enhancing the mobility of planetary rovers.
Krotkov et al. [40] proposed the modeling of terrain to plan the leg placements
of the Ambler rover [7]. In their subsequent work, Krotkov et al. described
the estimation of terrain characteristics from leg contact forces [39]. Giguere
et al. [28, 26] proposed an unsupervised machine learning algorithm to clas-
sify the inertial sensor data from different terrains. This algorithm exploits
the time-dependencies between the samples and is able to cluster data from
fast-switching terrains. An advantage of this technique is that the method
works by finding a set of parameter values for any user-specified classifier that
minimizes a cost function. We use this elegant methodology [28] in our gait
adaptation algorithm for on-line terrain identification.
2.4 Gait Adaptation
Humans naturally adapt their gait to the environment they are walking
on. For example, people are able to walk on both grass and ice, even though
they require substantially different gaits to avoid falling. Thus, the subsystems
in our brains adapt in order to achieve a stable gait on different terrains.
Similarly, the legged robotic vehicles need to walk through difficult terrains
without becoming unstable or painfully inefficient.
There has been a body of prior work on achieving stable locomotion with
legged vehicles on rough terrains. One of the approaches is to deliberately and
carefully plan every footfall of the robot [68, 14]. A paper by Shih et al. [61]
discusses the gait adaptation by modeling the states of the robot to maintain
its stability. This approach divides the environment into permitted and non-
permitted cells for leg placement. This study presents three approaches such
15
as body motion adaptation, leg sequence adaptation, and leg position adap-
tation. Footfall planning algorithms are very difficult to achieve on a small
mobile platform because of the need for accurate sensor information, accurate
constraint modelling, and huge computation power. Another recent work on
the BigDog robot [52] proposes a control system that adapts to terrain changes
through terrain sensing and posture control. This control system determines
the desired load on each leg and actuator, and the contact with the ground us-
ing joint sensor information. A posture algorithm coordinates the kinematics
of legs with their ground reaction forces to produce a desired body position.
An alternative approach for gait adaptation is to have explicitly designed
gaits for specific purposes. These individual gaits are stored and activated
based on the current purpose. For example, if the current purpose is to climb,
then the gait with ability to climb stairs is selected from stored gaits. There
are several studies conducted to improve the robustness and the performance
of this approach by applying learning techniques [59]. Weingarten et al., in
their study to achieve automated gait adaptation [66], use a modified version
of Nelder-Mead descent to adapt the gait parameters of the robot. They also
conclude that Nelder-Mead tuning yields better performing gaits as compared
to those achieved by manual tuning.
We use a similar approach to map the gait parameters against the terrain
type. Instead of purpose, we have a terrain type based on which a suitable
gait is picked. With a large set of possible gaits, the task to transition between
the gaits becomes challenging. Haynes et al. [15] present acyclic feed-forward
motion patterns that allow a robot to switch from one gait to another. As
we have a limited set of gaits, we have not yet considered the complex gait
transition challenges in this work.
16
In our work, we try to bridge the gap between terrain sensing and gait
adaptation. We propose an algorithm to adapt the walking behavior of the
robot based on the proprioceptive feedback received from the terrain.
17
CHAPTER 3Gait and Performance of the Robot
In this chapter, we discuss our approach towards the walking gait problem,
wherein, we analyze the influence of gait parameters and terrain properties
on the performance of walking robots. We evaluate our approach through a
set of experiments on four different flat terrains: grass, dry sand, wet sand,
and concrete surface. Some parts of this chapter are published in one of our
publications [44].
3.1 Walking gaits and Gait parameters
Walking gait in terms of legged robots can be defined as a periodic pattern
of leg movements that propel the body mass center of the mobile system. The
repetition of this periodic pattern provides locomotive ability to the robot.
Besides stable locomotion, another important aim of a stable gait is to provide
balance or stability to the system. Walking gait of the legged system depends
on various factors, such as the physical structure of the system, number of legs
it has, its center of mass, the environment, and the constraints of the current
task.
Some of the legged vehicles like SIL04 [17], Athlete [69], and humanoid
HRP-3 [38] compute the trajectories for their legs and feet to achieve a stable
locomotion [31, 40]. These trajectories depend on the properties of the terrain,
the vehicles are planning to navigate through. Hence, the computation of
these trajectories need many sensory feedback from the environment. These
vehicles should use sensing equipments, such as visual sensors, stereo vision
cameras, laser range finders, to estimate the terrain properties along with lot
of computing resources to compute actual trajectories. Some motion planners
18
also use force transducers to assess the characteristics of interactions between
the robot’s feet and the terrain surface [24]. The gait generated by this kind
of computed trajectories and foot-placement strategies can be referred to as
closed-loop gait. It is called closed-loop because the trajectories depend on
the sensory feedback from the environment. Thus, to operate with a stable
gait, the system requires a robust and detailed profiling of the ground surface.
This increases the complexity and potentially makes the system fragile.
Contrary to closed-loop gait, open-loop gait provides predetermined foot
trajectories for navigation of the mobile system. Here, the trajectory is inde-
pendent of the environment. Many legged robots use open-loop strategies for
land locomotion [12, 51, 53]. As Aqua robot is built based on RHex design,
similar to Rhex, Aqua’s land locomotion is inspired by the principles of cock-
roach locomotion. Biological studies on the locomotion of cockroaches suggest
that the lag between neural signal propagation from cockroach’s brain to its
leg and the speed of its gait is relatively large. This lag forces high speed
cockroach runners to employ an open-loop feed-forward gait [36]. Following
this model, even Aqua employs open-loop gait mechanism. In Aqua robot, the
PD controller regulates the hip actuators and thus controls the torque to its
leg shaft. The controller aims at eliminating the differences between its clock
signal and actual shaft position, and the velocity. The local hip feedback does
not provide any information about the true state of the leg or the body, thus
making the robot to operate in a task open-loop manner [65]. In our experi-
ments, we use a forward alternating tripod gait [57]. In this mode of walking,
the three legs, two on one side and one on the other side of the robot, form a
stable tripod. While one tripod formation is in contact with the ground and
propelling the robot forward, the other tripod formation is circulated rapidly
around to be ready for the next support phase [66] (Fig. 3–1). This quick
19
alternation of support, coupled with the compliant nature of the legs, results
in a complex dynamic interaction between the robot and the ground.
Figure 3–1: Graphical representation of Tripod Gait. The triangle representsthe tripod support produced by three legs in the tripod gait.
Every gait has a set of variables which define the physical trajectory
followed by components of the system. These properties are referred to as gait
parameters. For example, walking gait of a human is characterized with gait
parameters such as step length, stride length, speed, and foot angle. Similarly,
even the tripod gait is defined by gait parameters such as total stride period,
stance period, and stance angle. Before introducing the details of parameters
for the tripod gait, here is a brief introduction to the Buehler clock, which
is an essential part of walking gait of the Aqua robot. Buehler clock is a
computational analog of the central pattern generator [8, 35] in animals. The
Buehler clock was originally developed for RHex [57, 4] and is based on a
study which shows that cockroach legs are excited by a strongly stereotypical
clock reference signal [41]. As the Aqua is based on RHex, it follows a similar
pattern for walking. To achieve the tripod-gait, this clock uses a piece-wise
linear angle vs. time reference trajectory characterized by four parameters[60]:
the total stride or cycle period tc, the duty factor (the ratio of a single stance
period over the cycle period) ts/tc, the leg angle swept during the stance Φs
and an angle offset to break symmetry in the gait Φ0.
Fig. 3–2 depicts the feed-forward clock signal that is fed into the robot’s
legs to achieve the stable gait. In the alternating tripod mechanism, this same
20
Figure 3–2: Plot showing the parameters of the tripod gait. Angular signalsare plotted against the clock signals of the rotation of a leg.
reference signal is supplied to each leg, except that the left tripod is 1800 out
of phase with the right tripod. The grey region in Fig. 3–2 represents the
part of the leg rotation at which the leg is touching the ground, i.e., the stance
phase of the gait. As it can be seen, there are several parameters to this sim-
ple gait. Optimizing the gait refers to optimizing all the gait parameters. It
gets complex and non-converging if all the parameters are considered at once.
Hence, for the initial set of studies, we consider the performance of the robot
over varying cycle frequency (fc). Cycle frequency is the frequency of the
robot’s leg rotation (i.e. number of leg rotations per second). In our experi-
ments, we record the walking data at various cycle frequencies and estimate
the performance of the robot over different terrains.
3.2 Performance Factors
One of the significant aims of a gait is to provide balance or maintain
stability of the system and robustness for walking through different environ-
ments. It does not seem feasible to analyse the effects of gait changes on the
stability or robustness of the system. Hence, we need to derive measurable
quantities which will affect the stability, fitness and robustness of the robot.
21
We chose to assess the performance factors that increase the overall capabili-
ties of the robot and thus provide better robustness and stability to the robot
for operating on different terrains.
We considered few of the performance factors such as: ground speed (ac-
tual speed achieved by the robot on a walk), on-spot rotation capabilities
(ability to rotate on the spot when operating on different terrains), energy
efficiency (power consumed by the robot per unit distance walk), alignment to
a straight path (measure of deviation of path from straight line), and terrain
tear (measure of tear caused to the terrain). Among these factors, with a
constraint on equipment and test environment, we considered measuring two
performance factors, ground speed and energy efficiency. We had to reject the
on-spot rotation factor as the robot failed to rotate on certain surfaces (e.g.,
grass and sand) because of a high back emf on the robot’s leg when operated
in reverse mode. We also dropped the straight path factor as the test envi-
ronments (e.g., beach areas) were not perfectly flat to consider the deviation
from straight path. Measuring the terrain tear was difficult due to the lack of
equipment, however, we would like to consider these factors in future studies.
The ground speed gives the actual speed that the robot is able to attain on
a particular terrain. Analyzing this performance factor will give an estimation
of capabilities of the robot when operated in different environments. This
factor facilitates us to estimate a near-optimal cycle-frequency per terrain, at
which the robot can cover maximum distance in given time. Secondly, the
energy efficiency of the robot gives a measure of sustainability of the robot
on difficult environments. This performance factor will help us investigate the
energy efficient cycle frequency for operations on a particular terrain. Thus,
we estimate the performance of the robot by evaluating its ground speed and
energy efficiency on various terrains.
22
In specific terms, the problem is to optimize the cycle frequency - for a
particular terrain - at which the robot achieves either highest ground speed,
or power efficient operations, or a trade-off between both.
3.3 Experiments
We investigated this problem by conducting walking trials of the robot
on four different terrains with five different cycle-frequencies. We computed
the ground speed of the robot by measuring the time from recorded videos
and the distance between the flag posts. We also recorded the battery current
and battery voltage during the trials and computed the power consumed by
the robot for every run. Thus, we have an estimate of the ground speeds
and power consumption of the robot on different terrains, when operated with
different cycle-frequencies (fc).
3.3.1 Experimental Setup
The experiments were conducted on four terrains (Fig. 3–3a), namely dry
sand, wet sand, grass, and concrete floor. The setup as seen in Fig. 3–3b was
used on these terrains and Aqua was made to walk from the start point till the
end point. Video of all the trials was recorded from a fixed distance as shown
in Fig. 3–3a. This video was used to compute the time taken by the robot
to cover the experimental path distance. This time is precise and is used for
computing the ground speed of the robot.
3.3.2 Data Collection
The cycle-frequency (fc) is controlled by changing the speed levels in the
graphical interface of the Aqua robot. Five different values of fc - 1.146, 1.187,
1.332, 1.703 and 2.05 Hz, are achieved by changing the speed control setting
to five levels - 0.1, 0.2, 0.4, 0.6 and 0.8, on the graphical speed bar of the
interface. For each speed control setting and every terrain, five trials were
conducted.
23
(a) Different terrains and graphical representation of experimental setup.
(b) The field setup indicating the robot’s path and the markers. Taken at Bellairs lab,Barbados.
Figure 3–3: Experimental Setup
The data collected is a mixture of many sensor measurements. The rela-
tive leg rotations are measured using optical encoders attached to the motor
shafts and a MSI-P400 quadrature decoder card is used to decode the signals
from light receivers. Leg motor electrical current are estimated using carefully
calibrated motor models [46]. These models compute an electrical current
estimate based on physical parameters of the motors, voltage commands to
the motors and their angular velocities. The robot is equipped with a 3-axis
24
Inertial Measurement Unit (3DM-GX1TM), which carries 3 Micro-Electro-
Mechanical Systems (MEMS) acceleration sensors, 3 MEMS rate gyroscopes
and 3 magnetometers. Accelerometers measure the accelerations of the robot’s
body, inm/s2 and rate gyroscopes measure the angular velocities of the robot’s
body in rad/s. The data is collected from these sensors at a rate of 50 Hz, i.e.
50 sensor readings per second.
3.4 Results and Observations
This set of experiments was conducted to investigate the effects of chang-
ing leg cycle frequency (fc) on the performance of the Aqua robot. As dis-
cussed in previous sections, in this work, the performance is measured in terms
of ground speed and power consumed per unit distance of walk. In Fig. 3–4,
we see that the ground speed of the robot increases with cycle-frequency for
soft-granular terrains (dry sand and wet sand), whereas the ground speed of
the robot on hard terrains (grass and concrete surface), decreases at higher
fc value of 2.05 Hz. We suspect that the robot’s legs start to slip from the
surface of the terrain, when rotated at very high speeds on hard terrains. On
soft granular terrains, the granularity of the terrain provides grip to the legs
and helps the robot achieve higher ground speeds even at an increasing cycle
frequency. Thus, the results show that, to achieve higher ground speeds on
hard terrains, the fc value should be capped to the range 1.703 Hz to 2.05 Hz
and to achieve the same on soft granular terrains, the robot needs to operate
at its highest fc values. Results of these experiments clearly show that the
terrain type has a strong influence on the velocity of the robot, at fixed gait
parameters.
25
1 1.151.187 1.332 1.703 2.05 2.20.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Cycle−frequency (Hz)
Gro
und
Spe
ed (
m/s
)
ConcreteDry SandGrassWet Sand
Figure 3–4: Ground speed of the robot plotted against fc. The plot shows thevariation found over different terrains. Plot also displays the errors occurredduring different trials.
Another result in Fig. 3–5 shows the variation of power consumed by the
robot per unit distance of walk against varying cycle-frequency. The power
consumed by the robot is measured by recording the battery current and
battery voltage over the robot’s run. From the results, it is evident that the
robot reacts differently to hard and soft granular terrains. We take a trade-off
between the performance factors, ground speed and power consumption, as an
optimal performance. The fc value at which the robot consumes less power yet
achieves acceptable ground speeds is considered as near-optimal fc value. For
example, on wet sand, the robot operating at high fc value of 2.05 Hz achieves
highest ground speed, yet maintain low power consumption compared to other
terrains. On dry sand, however, it is very power inefficient to operate at high
fc values.
26
1 1.151.187 1.332 1.703 2.05 2.2535
40
45
50
55
60
65
Cycle frequency (Hz)
RM
S P
ower
con
sum
ed p
er m
eter
(J /
ms)
ConcreteDry SandGrassWet Sand
Figure 3–5: Root mean square of power consumed per unit distance walk ofthe robot plotted against fc. The plot shows the errors in the readings overfive trials for each speed and terrain.
Using both the ground speed results and the energy efficiency results, we
build a table (Table 3–1), presenting the fc values at which optimal perfor-
mance can be achieved by the robot. Here, we consider optimal performance
as a trade-off between the ground speed and the power consumption, higher
ground speeds achieved at not very expensive power consumptions. The Ta-
ble 3–1 presents a mapping of the terrain and fc values at which the highest
ground speed is achieved and fc values at which an acceptable measure of
power is consumed. The fourth column presents the fc values at which an
optimal performance can be expected.
27
Table 3–1: Tabular representation of the experimental observations. The tablepresents a fc at which optimal performance is achieved on different terrains.
Terrain fc fc Optimal Performance
(max Ground Speed) (acceptable Power Consumption)
Concrete 1.703 Hz 1.332 Hz 1.332 < fc < 1.703
Grass 1.703 Hz 1.703 Hz fc = 1.703
Dry Sand 2.05 Hz 1.703 Hz 1.703 < fc < 2.05
Wet Sand 2.05 Hz 2.05 Hz fc = 2.05
3.5 Summary
In this chapter, we introduced walking gaits and gait parameters of the
robot. We also discussed the performance factors that will be affected by the
gait used for walking. Through experiments, we analyzed the effects of gait
parameters and terrain properties on the performance of the robot. Finally,
we estimated the optimal gait settings in the Aqua robot to achieve better
performance on various challenging terrains.
One of the limitations of our analysis in this chapter is the study over only
one gait parameter (fc). We would like to enhance our analysis by considering
different gait parameters in future. We would also like to explore the cycle-
frequency domain thoroughly, instead of just five frequency values. We also
have plans to incorporate other performance factors mentioned in Section 3.2.
28
CHAPTER 4Physical Adaptation
In this chapter, we address the problem of improving the walking perfor-
mance of the robot by physically adapting to the environment. One of the
ways to improve the mobile efficiency is to employ physical modifications suit-
able to the environment. This chapter introduces a physical adaptation of the
Aqua robot in the form of new robotic legs called “Ninja legs”.
4.1 Ninja Legs
Ninja legs are a class of robotic legs that enable amphibious operation,
both walking and swimming, of the Aqua class hexapod robots. We refer
to these amphibious legs as Ninja legs as the design resembles a spinning
ninja star. Fig. 1–2 shows the Aqua robot equipped with the Ninja legs.
The mechanical design for these legs was developed by Bir Bikram Dey and
Gregory Dudek. A detailed discussion on the mechanical aspects of this design
can be found in our recent paper [18].
As discussed before, legged mobility has often been envisioned as the
most versatile locomotion strategy possible for terrestrial robots. Likewise,
the use of actuators with flippers can provide an exceptionally large degree of
mobility and versatility in the underwater domain. What has proven elusive to
date, however, is a simple leg design that exhibits the advantages of terrestrial
walking legs as well as the motile efficiency of flippers when underwater. It
is this type of hybrid that we discuss and evaluate in this chapter. The leg
design and associated assembly we propose has the attributes of flippers, legs
as well as wheels.
29
Several different classes of leg design have been previously developed for
Aqua-class vehicles, including both robust all-terrain legs for walking, and
efficient flippers for swimming. Notably, however, the walking legs have ex-
tremely poor efficiency and limited thrust when used for swimming in the
water, and the flippers are completely unsuitable for terrestrial locomotion
since they are unable to bear the physical load of the robot due to the flexibil-
ity they require for efficient swimming. A long standing problem is to develop
robust robotic legs designed to perform both effective terrestrial and efficient
underwater maneuvers. With the design of Ninja legs, we have attempted to
address the problem of adapting to different modes of locomotion.
We also evaluated the qualitative performance of the robot using Ninja
legs in terms of entering and exiting the open ocean, through surf with a wave
height of roughly 1 m (Fig. 4–1). Under these circumstances, we observed
that the robot was able to swim to shore, switch (under manual controls) to
walking mode upon contact with the beach, and walk onto the shore. It was
similarly able to walk into the surf, enter the water, and swim out in the
open water. Executing this maneuver depends critically on a sequence of gait
transitions to time various actions relative to wave action, and this challenging
behavior was executed under manual control. The legs, however, were clearly
sufficient to perform this activity.
In the scope of this thesis, the rest of the chapter concentrates only on
evaluating Ninja legs and their properties for terrestrial locomotion. As the
thesis concentrates on the terrestrial mobility of legged robots, we will not
discuss further the swimming efficiency and capabilities of Ninja legs. More
on swimming abilities of Ninja legs can be found in [18].
30
(a) Surf Entry-Aqua walks to the ocean and starts swimming once it is in water.
(b) Surf Exit-Aqua swims to the shore and starts walking on the beach
Figure 4–1: Surf entry exit experiment with Ninja legs
4.1.1 Design Approach
As discussed before, our aim is to design a set of legs with properties
suitable for both terrestrial walking and underwater swimming. We propose a
31
design in which a structure encloses the flipper, in order to protect the flipper
during terrestrial operations. The enclosing structure also performs as the
walking legs for terrestrial locomotion.
Figure 4–2: Ninja leg behaving as an offset wheel.
An enclosure of circular shape is designed to contain the flippers used for
generating thrust underwater (or on the water surface). This whole structure,
consisting of a circular enclosure along with the flippers, will rotate at an offset
from the center as seen in Fig. 4–2. This allows us to have the advantages
and some disadvantages of an offset wheel. This offset-wheel design of the
enclosure is effective as it provides the advantages of traditional semi-circular
walking legs in both forward and backward directions. Since the enclosure is
a cage-like structure, with an extensive open area for water to flow through,
the flippers inside can still generate enough thrust for the robot’s swimming.
4.1.2 Mechanical Properties
The Aqua robot, while using tripod gait for walking, needs three legs to
be able to support the weight of the robot. The robot weighs about 16 kg to
18 kg, with the batteries. For safety and robustness, we fabricated Ninja legs
with enough strength so that one leg can take the weight of the whole robot.
The property of a material to undergo elastic deformation is called the
compliance. Compliance of the leg is a critical property for an efficient walking
of a robot, hence, we need the Ninja legs to be compliant. The enclosure is
32
the part which acts as leg when the robot is in walking mode. Hence, we used
bent spring steel rods to make the circular shaped enclosure. Carbon fiber
plates are used to reinforce the structure as they increase the strength of the
legs and are light-weight and slender. Fig. 4–3 shows the detailed structure
of the Ninja legs.
Figure 4–3: Illustrated diagram of the Ninja Leg.
As shown by the arrow in Fig. 4–4, Ninja legs have shorter effective arm
length due to the increase in their diameter. Shortening of arm length reduces
the leg motor current required for the robot to go from sit mode to stand
mode. We will verify this claim in our results section.
Figure 4–4: Comparison of the effective arm length between the semi-circularwalking legs and the Ninja legs. The arrows represent the effective arm length.
The semi-circular walking legs have compliance for 78.390 of the motor
rotation (Fig. 4–5a). Whereas, Ninja legs have compliance for about 120.90
33
of the motor rotation (Fig. 4–5b). The remaining 239.10 of rotation does not
permit compliance because of presence of the carbon fibre plate.
(a) Compliance span forNinja legs.
(b) Compliance spanfor semi-circular walk-ing legs.
(c) Effective armlengths of the Ninjalegs on granular terrain.
Figure 4–5: Mechanical properties of Ninja legs
One of the major concerns was the capability of the robot to walk on
granular terrains (e.g., sand, and snow) with the Ninja legs. As the rods
are thin, there is a chance of “digging” into the terrain. Hence, we added
the walking supports to increase the area of contact between the legs and
the terrain. The placement of walking supports on the rods determines the
effective arm lengths (Fig. 4–5c).
4.2 Experimental Results and Observations
We conducted three sets of experiments to evaluate the effectiveness of
the Ninja legs for terrestrial locomotion. The first set of experiments were
to evaluate the performance of the robot equipped with Ninja legs. We also
conducted experiments to evaluate the claim regarding advantages of a shorter
arm length (Fig. 4–4). We compare the performance of the Ninja legs against
the RHex legs as these are widely used in legged robots for terrestrial loco-
motion [57, 4, 58, 3] and provide a combination of simplicity, load bearing
34
capacity, compliance and robustness. Finally, we use a variant of standard
tripod gait and compare the performance of the robot.
4.2.1 Performance Evaluation
In this section, we present the results of performance evaluation exper-
iments on the Aqua robot equipped with both RHex semi-circular legs and
Ninja legs. The experiments conducted are similar to those explained in Sec-
tion 3.3, with the difference being that the data was collected with both RHex
legs and Ninja legs. We conducted experiments on one terrain so that we can
compare the two leg designs, keeping the terrain constant. The terrain used
is a tiled surface (Fig. 4–6). The performance factors measured are ground
speed and energy efficiency.
(a) Aqua is equipped with Ninja legs. (b) Aqua is equipped with RHex legs.
Figure 4–6: Trial runs of the Aqua robot on tiled surface.
The plot in Fig. 4–7 shows the ground speeds achieved by the robot when
operated with varied leg-cycle frequencies (fc). Ninja legs, due to the reduced
compliance of their building materials, achieve better physical speeds at higher
values of fc. The semi-circular walking legs, however, make the robot’s motion
irregular (i.e. bumpy) at higher values of fc because of higher compliance of
their component materials.
35
1 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2 2.1 2.2 2.3 2.4 2.50.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Cycle Frequency (Hz)
Gro
und
Spe
ed (
m/s
)
RHex Legs
Ninja Legs
Figure 4–7: Ground speeds for both RHex legs and Ninja legs plotted againstcycle frequency of leg rotation.
1 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 2 2.1 2.2 2.3 2.4 2.545
50
55
60
65
70
75
Cycle Frequency (Hz)
RM
S P
ower
Con
sum
ed p
er u
nit w
alk
(J/m
s)
RHex LegsNinja Legs
Figure 4–8: The Power consumed per unit distance walk plotted against thecycle frequency of the leg rotation. The plot shows the readings for both RHexlegs and Ninja legs.
36
Fig. 4–8 represents the power consumed per unit distance of walk plotted
against varying cycle frequency (fc) of the robot legs. The plot indicates that
the robot consumes more power when walking with the Ninja legs than with
the RHex walking legs. We suspect this is because of the added weight of the
Ninja legs. Even though the power consumption is slightly higher than the
usual semi-circular RHex legs, the Ninja legs achieve higher ground speeds.
In future, we plan to reduce the weight of Ninja legs by replacing the
heavy spring steel rods with other light weight and more compliant material.
Reducing the weight of the legs will definitely have an impact on the power
consumption as we will be reducing the load on the motors.
4.2.2 Effective Arm Length
Effective arm length is the length measured from the arm-joint on the
body till the contact point of the arm with the ground. With respect to our
robot, the effective arm length is the distance between the leg-hip joint of the
robot and the leg-ground contact point. The arrows in Fig. 4–4 depict the
effective arm lengths of both Ninja legs and semi-circular RHex legs. This
experiment was conducted to justify our claim in Section 4.1.2 - shortening of
arm length reduces the current through the leg motors when the robot transits
from sit mode to stand mode (Fig. 4–9). Fig. 4–4 shows that the effective
arm length of Ninja legs is shorter than that of semi-circular RHex legs. The
robot was made to go from sit mode to stand mode and current through the
leg motors was recorded. Four trials were conducted with both RHex legs and
Ninja legs. From the average of four trials, we found that Ninja legs draw 0.65
Amperes of current which is significantly lesser than 1.96 Amperes drawn by
RHex legs. Plot in Fig. 4–10 shows the peaks in the leg motor current. It can
be observed that the RHex legs draw a significant load of current to attain the
stand position.
37
Figure 4–9: Depiction of Aqua robot going from sit mode to stand mode. Boththe Ninja legs and the RHex legs are shown.
1 1.5 2 2.5 3 3.5 4 4.5 5−4
−3
−2
−1
0
1
2
3
4
5
6
Time (Sec)
Leg
Mot
or C
urre
nt (
A)
RHex LegsNinja Legs
Figure 4–10: The robot was made to go from sit mode to stand mode with bothRHex legs and Ninja Legs. Figure shows leg motor current plotted against theclock.
Also the plot shows that the RHex legs consume a sustained current even
when the robot is idle. This can be attributed to the semi-circular shape of
these legs which do not permit a completely stable static stance, and thus a
torque is applied continuously. Ninja legs, however, achieve a stable static
standing because of their circular wheel shape. Thus Ninja legs draw zero
current as long as the robot is idle.
4.2.3 Linear Variant of Tripod Gait
As discussed in Section 3.1, to achieve the tripod gait, the central pattern
generator of Aqua robot uses a piece-wise linear angle vs. time reference
38
trajectory. For the first two experiments, we used a tripod gait, in which the
angular velocity of the leg varies accordingly whether the leg is in aerial phase
or stance phase, demonstrating the salient features of Buehler clock. Hence, we
refer to this kind of tripod gait as Buehler clock based tripod gait (Bc-tripod).
In this experiment, we tried a variant of the tripod gait by making the angle vs.
time reference trajectory linear. This variant is called wheel mode tripod gait
because the legs rotate with constant angular velocity similar to wheels. Since
the stance is still a tripod, three legs rotate out of phase with the remaining
three legs as in standard tripod gait. Fig. 4–11 shows a comparison between
the angular trajectories of Bc-tripod and wheel mode tripod gait. As it is seen
in the plot, Bc-tripod gait has a stance phase in which the angular velocity
of the leg is slower, whereas the angular velocity of the leg is constant over
period in wheel mode tripod gait.
As before, we recorded the current through leg motors in both Bc-tripod
gait and wheel mode tripod gait. Fig. 4–12 shows leg motor current plotted
against the clock time. We can see that the Bc-tripod gait has large current
spikes. This peak in current arises due to the forceful impact of the robot leg
onto the ground after a fast aerial phase. In wheel mode, however, there is
no different aerial and stance phase, thus preventing a high impact at the leg-
ground contact. We would like to further analyze this new variant of tripod
gait in future.
39
1 1.5 2 2.5 3 3.5 4−4
−3
−2
−1
0
1
2
3
4
Clock (sec)
Leg
Ang
le (
Rad
ians
)
(a) Trajectory plot for Beuhler-clock based tripod gait.
1 1.5 2 2.5 3 3.5 4 4.5−4
−3
−2
−1
0
1
2
3
4
Clock (sec)
Leg
Ang
le (
Rad
ians
)
(b) Trajectory plot for wheel mode tripod gait.
Figure 4–11: Two variants of tripod gait.
40
1 1.5 2 2.5 3 3.5 4 4.5 5
−8
−6
−4
−2
0
2
4
6
8
Time (Sec)
Leg
Mot
or C
urre
nt (
Am
p)
Wheel Mode
Beuhler Mode
Figure 4–12: Leg motor current peaks recorded on the robot when operatedwith both Bc-tripod and wheel mode tripod.
4.3 Summary
This chapter introduced a new physical adaptation of the robot which
enhances the capabilities of the robot. We demonstrate experimentally that
the Ninja legs have clear advantages in terms of their ability to achieve high
ground speeds as well as their reduced power consumption in standing mode.
We also investigated the behavior of the robot when operated in several vari-
ants of the tripod gait.
Some of the limitations of our design are the weight of the legs resulting
in high power consumption, rigidity of the legs affecting the leg motor current
peaks, and the material used for walking supports in the legs that is responsible
for slipping of the robot on smooth surfaces. We plan to address these issues
by looking in depth into the materials used in manufacturing the legs. We
would like to get valid inputs from experts in the field of material composition
to have a clear idea on the materials to be used. In future, we would like to
41
analyze the response from different terrains when the robot is operated with
Ninja legs (similar to our experiments in Section 3.3).
42
CHAPTER 5Terrain Identification in Real-time And Gait Adaptation
Terrain identification and gait adaptation to suit the terrain are some
of the important qualities that help the robot walk efficiently in its environ-
ment. In this chapter, we propose an algorithm to enable the robot to adapt
its open-loop walking gait to the terrain. The algorithm consists of terrain
classification, terrain identification in real-time and gait adaptation. We will
discuss the overview of the algorithm followed by a detailed description. In
the experiment section, we analyze the effects of gait parameters on terrain
sensing and terrain classification. At the end, we evaluate our algorithm with
both semi-synthetic data and robot sensor data.
5.1 Overview
The block diagram in Fig. 5–1 shows the data flow and processes in our
gait adaptation algorithm. The whole process is divided into two phases: a
training phase and an execution phase. The training phase is indicated by the
dotted line rectangle in the block diagram (Fig. 5–1). In the training phase, we
collect proprioceptive data from different terrains and build classifiers using
an unsupervised cost-based learning technique [28]. At the end of training
phase, we have classifier parameters and classes with labels. In the execution
phase, we classify the data coming from the robot’s sensors in real-time and
identify the terrain class. Once we know the terrain, we make the decision
on appropriate gait for that terrain and feed the gait into the robot. Thus,
the algorithm enhances the robot’s abilities by making it capable of adapting
its gait in real-time. Each block in the diagram (Fig. 5–1) and the data flow
between the blocks is discussed further in this section.
43
Figure 5–1: Block diagram of Gait Adaptation Algorithm
5.1.1 Sensor Data
The robot is made to walk on different terrains and multiple sensors on-
board are used to collect proprioceptive data. We record the leg positions,
current through the robot’s legs, linear accelerations, angular velocities, bat-
tery current and voltage drawn. The leg positions of the robot are obtained by
relative leg rotations measured using optical encoders attached to the motor
shafts. Leg motor electrical current are estimated using carefully calibrated
motor models [46], that compute an electrical current estimate based on the
44
physical parameters of the motors, the voltage command to the motors and
their angular velocities. The robot is equipped with a 3-axis Inertial Measure-
ment Unit (3DM-GX1TM), which houses 3 Micro-Electro-Mechanical Systems
(MEMS) acceleration sensors, 3 MEMS rate gyroscopes to measure angular
velocities and 3 magnetometers. The data is collected from these sensors at a
rate of 50 Hz, i.e. 50 readings of sensor data are recorded per second.
5.1.2 Feature Selection
The feature selection block is responsible for generating the vector xt
as an input to the classifier. The data vector xt represents the data from
one complete leg cycle. Thus, data vector xt consist of data collected by
sampling 13 sensors - comprising of 3 accelerometers, 3 rate gyroscopes, 1
leg angle encoder and 6 motor current estimators - at a rate of 30 samples
per one cycle of the leg. Thus, each feature vector xt is of size 13x30. In
this work, the dimensionality of the dataset is reduced by applying Principal
Component Analysis and only the top Nf = 2 main features are selected
for the classification. It was shown by Giguere et al. [27, 26], that the two
main components are sufficient to discriminate between the terrain classes.
We plan to consider other components to achieve more discrimination in our
future work. The features selected in this step are fed into the classifier.
5.1.3 Classification Methodology
We use an elegant methodology developed by Giguere et al. [28] for un-
supervised clustering of proprioceptive data samples. These samples represent
sequences of consecutive measurements from the robot as it traverses the ter-
rain. Since the samples are generated through a physical system interacting
with a continuous or piece-wise continuous terrain, time-dependency will be
present between consecutive samples. The clustering algorithm [28] explicitly
45
exploits this time-dependency. It is a single-stage batch method, eliminating
the need for a moving time-window.
The algorithm works by minimizing a cost function which minimizes the
variation of classifier posterior probabilities over time, while simultaneously
maintaining a wide distribution of posterior probabilities. The aim of the
algorithm is to search for the parameters θ that minimizes the following cost
function,
argminθ
Nc∑i=1
∑T−1t=1 (p(ci| xt+1, θ)− p(ci|xt, θ))
2
var(p(ci|X, θ))2
The dataset needed for the algorithm are,
• A sample set X = {xt}, generated by a Markovian process with Nc (No.
of Classes) states, where xt is a feature vector produced at some time t
ϵ {0, T}.
• A classifier with parameters θ used to estimate the probability P (ci|xt, θ),
that the sample belongs to class ci ⊂ C, where C is a set of all possible
Nc classes.
• A set of parameters θ that is able to classify the data set X reasonably
well.
The classifier is fed with the data vector xt from feature selection step.
The advantage of this algorithm is that it can be evaluated with different
kinds of classifiers, such as k-nearest neighbors (k-nn), linear separator and
mixture of Gaussian, based on the knowledge about the class distributions. In
this work, we use linear separator and k-nn classifier with this unsupervised
learning technique. At the end of this step, we have a vector of classifier
parameters θ that define the classes. Once we have the classifier parameters,
we make use of true labels of the data to produce classes with labels and the
classifier.
46
5.1.4 On-line Terrain Identification
The objective of the training phase is to (efficiently) produce a classifier
and an associated small set of class labels. Next, the aim is to identify the
terrain using the real-time data from the robot when it is walking. Initially, a
random gait is selected for the robot to walk. The sensor data from the robot
is split into feature packets, each packet comprising of data samples from one
complete leg rotation as mentioned in Section 5.1.2. The feature packets are
then fed into the classifier. The classifier classifies each feature packet to its
terrain class and generates a list of class labels representing all the feature
packets.
The terrain identification block identifies the terrain by employing deci-
sion making strategies on the list of class labels. Different decision strategies,
such as maximum appearance strategy (a class label that appears most fre-
quently in the list is decided to be the terrain class), certainty of the class
strategy (a class with least uncertainty is chosen as the current terrain class),
and consecutive similarity strategy (a class with maximum consecutive ap-
pearances will be chosen as the terrain class), could be employed in making
the decision about the terrain class. Due to its simplicity and efficiency, in
this work, we employ maximum appearance strategy.
5.1.5 Gait Switch
This algorithm selects a gait based on the identified terrain. Initially a
mapping of terrains against walking gaits is built from the information avail-
able about the effectiveness of different gaits on the terrains. We build such
a map from the results of our experiments in Chapter 3. By considering a
trade-off between ground speed and energy efficiency, we create a terrain vs.
cycle-frequency (fc) mapping as shown in Table 5–1.
47
Table 5–1: Mapping of terrain types and optimal gaits
Terrain Label Terrain Gait Label Optimal Cycle-frequency (Hz)
A Concrete Gait A fc = (1.332 + 1.703)/2
B Grass Gait B fc = 1.703
C Dry Sand Gait C fc = (1.703 + 2.05)/2
D Wet Sand Gait D fc = 2.05
Once we have identified the terrain, the task is to look up this table and
pick the corresponding gait. The decision to change the gait has to be taken
with a strategy such as the cost of switching strategy (switch the gait only if
the cost is minimal), and the value of switching strategy (compute the value
in terms of a utility function). For example, if we consider the ground speed
achieved as a utility function, then the value of switch is the ratio of ground
speed achieved by right gait on the terrain (Gait B on Terrain B) to that
achieved by wrong gait on the terrain (Gait D on Terrain B). If this ratio is
more than certain threshold, then the gait will be switched. The Table 5–2
shows an example for value of switching gaits between terrain B (Grass) and
terrain D (Wet Sand), using ground speed as the utility function.
Table 5–2: An example for value of switching gaits with ground speed as utilityfunction. The speed data is taken from the results of Chapter 3
Terrain Class / Gait Class Gait B Gait D Value of Switch
Terrain B (Grass) 0.816 m/s 0.717 m/s 0.816 : 0.717 = 1.138
Terrain D (Wet Sand) 0.516 m/s 0.666 m/s 0.666 : 0.516 = 1.290
As the robot changes its walking style, the response from the terrain
changes and this affects the data collected by the robot’s sensors. Thus, every
gait will give different readings from the terrains. For example, Fig. 5–2
48
shows similar features sampled from two terrains with two different gaits. The
feature values are clearly different for both the gaits. It is evident from the
plots that different classifiers are needed for different gaits used. Consider
the data in Fig. 5–2, an advanced classifier, such as k-nn, trained with the
Dataset1, will fail to classify the data samples from Dataset2. For example, a
data-point (-1, -0.6) will be classified as Terrain B by a classifier trained with
Dataset1, whereas the same data-point will be classified into Terrain C by a
classifier trained with Dataset2. Hence, we use gait-specific classifiers. That
means, if we have n gaits, we will repeat the training phase of the algorithm n
times with the data generated by each of these n gaits to generate n classifiers.
−1 0 1 2 3 4−1
−0.9
−0.8
−0.7
−0.6
−0.5
−0.4
−0.3
Feature 1
Fea
ture
2
Dataset 2 : fc = 1.703 Hz
−1 0 1 2 3 4−1
−0.9
−0.8
−0.7
−0.6
−0.5
−0.4
−0.3
Feature 1
Fea
ture
2
Dataset 1 : fc = 1.332 Hz
00.511.50
0.51
Terrain C (Dry Sand)
Terrain B (Grass)
Figure 5–2: Plot showing the effect of gait on data distribution. It shows thedifference in the sample space of the data collected by the robot running ontwo terrains with different gaits. This makes it necessary to have a classifiertrained for each of the gaits.
5.2 Semi-supervised Gait Adaptation
In the previous section, we discussed a detailed overview of the gait adap-
tation algorithm. Different strategies and decision making mechanisms were
49
also discussed. Here, we present pseudo code for the algorithm and discuss
the implementations made for validating this algorithm.
5.2.1 Algorithm
We present a semi-supervised gait adaptation algorithm to aid the robot
achieve better walking on rough and varying terrains. We call it gait adap-
tation because this algorithm enhances the robot with an ability to adapt
its walking gait according to the terrain. The algorithm is deemed semi-
supervised because we use the true class labels in training phase to build the
classifiers and terrain classes. The pseudo code in Algorithm 1 presents step-
wise details for the computational stages in the block diagram ( Fig. 5–1),
presented in the previous Section. Here, the training phase can be executed
off-line or on-line, however, the execution phase is always run on-line.
5.2.2 Implementation
For this work, we have implemented the simulation version of the gait
adaptation algorithm. This is the initial phase of the algorithm validation
which serves to permit more controlled and rigorous analysis than the real
system, and to allow pre-configuration before deployment on the real system.
As part of initial implementation, we use ROS nodes to replace the actual robot
sensors. The real-time data from on-board sensors is simulated by a publisher
node which publishes the data on to a ROS topic. The gait adaptation node,
representing our algorithm, subscribes to this ROS topic and processes the
data vectors that are published.
Fig. 5–3 shows the ROS publisher and subscriber nodes, and the ROS
topic used to stream data. Node robotSensors publishes the sensor data onto
topic DataStream. GaitAdaptation node, subscribed to DataStream topic,
50
Algorithm 1 Semi-supervised Gait Adaptation Algorithm
Input: Set of n terrain classes, T = {t1, t2, ......tn}.Set of n gaits, G = {g1, g2, ......gn}.Data collected with every gait gi in G, XG = {Xg1 , Xg2 , ......Xgn}.Where,Xgi = {Xt1 , Xt2 , ....., Xtn}, Data from each terrain ti.
Xti = {x1, x2, ....., xm}, m data samples in every vector.xi = {s1, s2, .....s13}, Readings from 13 Sensors.
Output: tcurr : Current terrain identified.gnew : Optimal gait chosen for terrain tcurr
Training Phase:
1: Map {T ← G} ◃ A map of Gaits to Terrains2: for each gi in G do3: classifier parameters: θgi ← UnsupervisedCostBasedClassifier(Xgi)
4: cgi ← Classifier (θgi ,T )5: gi ← {gi,cgi} ◃ Every gait is assigned with its own classifier6: end for
Execution Phase:
7: initialize current gait: gcurr ← Random(G)8: define: switchThreshold9: while (True) do
10: online sensor data from terrain: Xti = {x1, x2, ....., xm}◃ k data samples belong to one complete cycle of leg rotation. Each
feature packet is made of k samples11: feature packets: F : {f1, f2, ....., fm/k} ← sampling(Xti)
12: terrain labels: t : {t1, t2, ......, tm/k} ← classify(F )
13: current terrain: tcurr ← max(t)14: gnew ← lookUp(Map{T ← G},tcurr)15: if (valGaitSwitch(gnew, gcurr, tcurr) ≥ switchThreshold) then16: gcurr ← gnew17: end if18: end while
51
processes the sensor data. For validation of the algorithm, we use both syn-
thetically generated data and real data collect by the robot over multiple runs
on different terrains.
Figure 5–3: RosNodes for simulating the Gait Adaptation algorithm.
5.3 Experimental Results and Observations
We present three sets of experiments to evaluate the interplay between
walking gaits and terrain sensing ability of the robot. These experiments were
conducted with the Aqua robot equipped with semi-circular legs. Initially,
we investigate the effects of gait parameters on the terrain differentiability. In
this problem, we define terrain differentiability as the distance between terrain
classes in the feature space. If the terrain classes are farther apart, then those
classes are more differentiable. In our second experiment, we evaluate the
performance of the classification methodology with the data collected by the
robot operated with different walking gaits. Lastly, we validate the semi-
supervised gait adaptation algorithm proposed in this chapter.
5.3.1 Terrain Differentiability and Gait Parameters
In this subsection, we analyze the effects of cycle-frequencies on the dif-
ferentiability of the terrain classes. We created a feature set by considering the
leg motor currents (I0) and vertical accelerations (Az), as these features are
most affected by physical interaction with the terrains. The dimensionality of
the feature set is reduced by sampling the data at one particular angle of the
leg rotation cycle, at which the separation between the terrain classes is the
highest [30]. In Fig. 5–4, the features Il and Az are plotted as a function of
leg angle. The plot also shows the optimal angle (1.25 radians) at which the
classes are well separated. The optimal angle is computed by considering the
52
angle at which the average distance between the classes is maximum. Then
the data is sampled at leg angle of 1.25 radians and used for further results.
−4 −3 −2 −1 0 1 2 3 4−8
−6
−4
−2
0
2
4
6
8
Leg Angle (radians)
Leg
mot
or c
urre
nt
−4 −3 −2 −1 0 1 2 3 4−4
−3
−2
−1
0
1
Leg Angle (radians)
Ver
tical
acc
eler
atio
n
GrassConcreteDry SandWet Sand
Leg Angle = 1.25 rad
Figure 5–4: Leg motor current and Vertical acceleration (Az) plotted as afunction of Leg angle. The plot also shows the angle (1.25 radians) at whichthe data sets collected from different terrains are well classifiable.
The results in Fig. 5–5 show the data from different terrains, sampled
at the leg angle of 1.25 radians. The data samples were collected over all
five fc values. In Fig. 5–5, the data samples are plotted on the same scale.
It is observed that the terrain samples collected at different fc values are
distributed differently in the feature space. Moreover, this class separation
is terrain-dependent. For example, the terrains grass and dry sand are well
separated at the fc setting of 1.146 Hz, but not separated at an fc value of
2.05 Hz. Similar observations can be made for different pairs of terrains. This
again stresses the impact of terrains on the robot’s dynamics.
These results exemplify how difficult it is to distinguish the classes at
different fc values. They can also be used to verify the terrain identified by
the robot. For example, if the robot identifies a terrain to be concrete surface
while walking with fc set to 1.146 Hz, it can switch the fc value to 2.05 Hz
53
−1 −0.5 0 0.5 1 1.5−1.5
−1
−0.5
0
0.5
Leg Current (I0)
Ver
tica
l Acc
eler
atio
n (
Az)
fc = 1.146 Hz
−1 −0.5 0 0.5 1 1.5−1.5
−1
−0.5
0
0.5
Leg Current (I0)
Ver
tica
l Acc
eler
atio
n (
Az)
fc = 1.187 Hz
−1 −0.5 0 0.5 1 1.5−1.5
−1
−0.5
0
0.5
Leg Current (I0)
Ver
tica
l Acc
eler
atio
n (
Az)
fc = 1.332 Hz
−1 −0.5 0 0.5 1 1.5−1.5
−1
−0.5
0
0.5
Leg Current (I0)V
erti
cal A
ccel
erat
ion
(A
z)
fc = 1.703 Hz
−1 −0.5 0 0.5 1 1.5−1.5
−1
−0.5
0
0.5
Leg Current (I0)
Ver
tica
l Acc
eler
atio
n (
Az)
fc = 2.05 Hz
00.511.50
0.51
Wet Sand
Concrete
Dry Sand
Grass
Figure 5–5: Terrain Differentiability : Distribution of sensor measurements infeature space (motor current Il, vertical acceleration Az) sampled at leg angle1.25 rad, with changes in fc. The data shows four terrain classes.
and re-run the identification to more reliably estimate the terrain. Thus, these
results are useful in real-time gait adaptation.
5.3.2 Performance of the Classifier
One of the critical parts of our algorithm is the classifier. In these ex-
periments we try to evaluate the performance of the classifier and the effect
of changing fc on the classifier. The results indicate that there are specific
cycles-frequencies (fc) at which the discrimination between different sets of
54
terrains becomes more accurate. As illustrated in Fig. 5–6, a fc value of 1.332
Hz is optimal for many pairs of terrains; however, for dry sand and grass, fc
of 2.05 Hz gives better classification success rates and for grass and concrete,
fc of 1.187 Hz gives better classification success rates. The classifier performs
better when the speed factor is taken into account. The success rate for two-
class classifier is estimated around 90% at the optimal speed. This is more
efficient than the success rate of 73.75% in [28].
Figure 5–6: Plot showing variation in performance of the classifier with fc. Itshows a comparison between different pairs of terrains.
The previous results suggest that the fc value of 1.332 Hz is optimal for
classification of most of the terrains we examined. Hence, we classified the data
from four different terrains collected at the fc of 1.332 Hz. The top 2 (Nf ) PCA
features from the data were used. We see from Fig. 5–7 that the performance
is very good and comparable to the similar experiments conducted by Garcia
et al.[25] with an overall success rate of 92.11%. Our advantage is that by
using unsupervised machine learning we have only a weak dependence on the
55
availability of training data. The training was achieved with unlabeled data
and the feature set used is also very small.
−20 −10 0 10 20−30
−25
−20
−15
−10
−5
0
5
10
Labeled Data
Feature 1
Fea
ture
2
−20 −10 0 10 20−30
−25
−20
−15
−10
−5
0
5
10
Labels comming from Clusering Algorithm
Feature 1
Fea
ture
2
00.511.500.51
Wet SandConcreteDry SandGrass
00.511.5
Wet SandConcreteDry SandGrass
(a) Results of classification algorithm run on data collected from four terrains.
(b) Confusion matrix of the classification re-sults.
Figure 5–7: Classification results on data from four terrains.
5.3.3 On-line Terrain Identification and Gait Adaptation
We validated our gait adaptation algorithm with two types of datasets
- semi-synthetic dataset: data samples are generated by two Gaussian dis-
tributions, and robot sensor dataset: data samples collected by running the
robot through different terrains. The samples in these data are segmented
56
and stitched to create scenarios of transitions between two terrains. We con-
ducted multiple experiments with each dataset by changing the frequency of
transitions between terrain classes.
In our algorithm, the terrain is not identified on every data packet, that
means the terrain identity is not decided on every step of the robot. Instead,
we consider a group of packets to decide on a particular terrain id. In this
section, for all the experiments, we consider a fixed data packet length (DPs).
We use DPs = 3 in the experiments presented here.
Experiments with Semi-Synthetic Dataset
In these experiments, the dataset is generated by two Gaussian distri-
butions, each representing a terrain. Here, we are simulating the scenario
of robot traversing between two terrains. We refer to this dataset as semi-
synthetic because the Gaussian distributions used to generate this dataset are
derived from the real sensor data collected from the robot running on two
different terrains - dry sand and grass. The two distributions used are shown
in Fig. 5–8. For experiments in this section, we use a linear separator gener-
ated through cost minimization methodology explained in Section 5.1.3. We
consider four different cases, in which the transition between the terrains is
at different step lengths. For example, if the robot is walking on grass and
enters a tilled area after 50 steps, then the transition step length has a value
of 50. We use the notation Ts to represent the transition step length. Four
cases we consider are with values Ts = {100, 20, 3, 2}. Ts gives a notion of
the frequency of terrain transitions, lower the value of Ts higher will be the
terrain transition frequency.
57
The results are presented by plotting the class labels : from ground truth,
classifier output and gait adaptation algorithm output, against the time sam-
ples. Fig. 5–9 shows the data samples over 200 time samples. A transition be-
tween two terrains is shown by a switch after 100 time samples. It is observed
that at few time samples at which the terrain labels are wrongly classified
because of the overlap between the classes. The gait adaptation algorithm,
however, performs efficiently as the gait decision is made by considering 3
(DPs) consecutive data packets and not every data packet.
−25 −20 −15 −10 −5 0 5 10 15−30
−20
−10
0
10
20
30
Feature 1
Fea
ture
2
Gaussian 1
Gaussian 2
Figure 5–8: Data simulating two terrains. The samples are generated fromtwo Gaussian distributions that represent two terrains in real data collectedfrom robot.
58
0 20 40 60 80 100 120 140 160 180 200
Gait A
Gait B
Class A
Class B
Terrain A
Terrain B
Traversal in time
Ground TruthClassifier OutputGait Adaptation Output
Figure 5–9: Robot traversing from terrain 1 to terrain 2 only once.
Data samples are altered by splitting and stitching to simulate a scenario
of frequent terrain change. We generated similar results as before, with the
difference being the frequency of the terrain transitions. Fig. 5–10 shows the
results for dataset with transition step, Ts = 20. The results for experiments
using dataset with a value of Ts = 3 is shown in Fig. 5–11. It is observed that
the gait adaptation algorithm performs exceedingly well when the transition
step is set equal to data packet length (Ts = DPs). The gait adaptation
algorithm performs poorly if the terrain transition occurs more frequently
than the length of the data packet list considered. That is, if Ts < DPs, the
algorithm fails to choose the appropriate gait. This is observed in Fig. 5–12.
59
0 20 40 60 80 100 120 140 160 180 200
Gait A
Gait B
Class A
Class B
Terrain A
Terrain B
Traversal in time
Ground TruthClassifier OutputGait Adaptation Output
Figure 5–10: Terrain transition for every 20 steps (Ts = 20).
0 20 40 60 80 100 120 140 160 180 200
Gait A
Gait B
Class A
Class B
Terrain A
Terrain B
Traversal in time
Ground TruthClassifier OutputGait Adaptation Output
Figure 5–12: Terrain transition for every 2 steps (Ts = 2). In this test, tran-sition step length is lesser than the data packet length considered by gaitadaptation algorithm.
60
0 20 40 60 80 100 120 140 160 180 200
Gait A
Gait B
Class A
Class B
Terrain A
Terrain B
Traversal in time
Ground TruthClassifier OutputGait Adaptation Output
Figure 5–11: Terrain transition for every 3 steps. In this test, transitionstep length is equal to the data packet length considered by gait adaptationalgorithm (Ts = DPs = 3).
We evaluated the performance of the gait adaptation algorithm and plot-
ted the percentage error in the choice of gait against the terrain transition
step length (Ts). Fig. 5–13 presents the variation of percentage error in gait
adaptation with terrain transition step length. It is observed that the error in
the choice of gait increases with the reduction in terrain transition step length,
that is, the performance of the algorithm is better if the frequency of terrain
transition is low. The plot also shows a drop in the error when the transition
step length is equal to data packet length (Ts = DPs = 3).
61
13510203050801000
10
20
30
40
50
60
70
Transition Step Length (Ts)
Err
or in
Gai
t Ada
ptat
ion
(%)
Figure 5–13: Error in choosing right gait plotted against transition step length(Ts).
Fig. 5–14 presents the variation in the percentage error of classification
over the variation in the distance between means of Gaussian distributions
used for dataset generation. Here, we observe that the classification error
reaches minimum as the Gaussian distributions are moved apart. The results
are in accordance with the expectation, farther the sample distributions better
is the performance of the linear separator.
62
5 7 10 12 15 17 20 250
10
20
30
40
50
60
70
80
90
Distance between the mean of Gaussian distributions
Err
or in
Cla
ssifi
catio
n (%
)
Figure 5–14: Classification plotted against distance between the mean of Gaus-sian distributions.
Experiments with Robot Sensor Data
We also present similar results with the dataset created by the robot
sensor samples. We collected the sensor samples as the robot walked over
two different terrains - Dry Sand and Grass. These sensor samples were split
into data packets (each data packet containing the samples from one complete
leg rotation), and then processed by PCA feature extractor to generate the
dataset. Fig. 5–15 show the distribution of data packets from two terrains,
dry sand and grass.
63
−40 −30 −20 −10 0 10 20−15
−10
−5
0
5
10
15
20
25
30
Feature 1
Fea
ture
2
Dry Sand
Grass
Figure 5–15: Robot sensor dataset collected from two terrains : dry sand andgrass.
Similar to previous experiments, with robot sensor data, we evaluate the
algorithm with three test cases by varying the transition step length (Ts). In
these experiments with robot sensor data, however, we use k-nearest neigh-
bor classifier generated through cost minimization methodology explained in
Section 5.1.3. We use three neighbors (k = 3) for classification. Fig. 5–16,
5–17, and 5–18 present the classifier and gait adaptation algorithm results
for a transition step length of 22, 3, and 2 respectively. As observed in pre-
vious experiments, the performance of the gait adaptation algorithm is poor
when the terrain transition step length is lesser than the data packet length
(Ts < DPs).
64
0 5 10 15 20 25 30 35 40
Gait A
Gait B
Class A
Class B
Dry Sand
Grass
Traversal in time
Ground TruthClassifier OutputGait Adaptation Output
Figure 5–16: Results of classification and gait adaptation plotted against timesamples.
0 5 10 15 20 25 30 35 40
Gait A
Gait B
Class A
Class B
Dry Sand
Grass
Traversal in time
Ground TruthClassifier OutputGait Adaptation Output
Figure 5–17: The step length is changed to 3 (Ts=3) and this simulates achange in terrain for every 3 steps.
65
0 5 10 15 20 25 30 35 40
Gait A
Gait B
Class A
Class B
Dry Sand
Grass
Traversal in time
Ground TruthClassifier OutputGait Adaptation Output
Figure 5–18: The step length is changed to 2 (Ts=2) and this simulates achange in terrain for every 2 steps.
5.4 Summary
In this chapter, we presented a semi-supervised algorithm to achieve real-
time gait adaptation based on the cost-based unsupervised classifier. We
demonstrated the efficiency of the algorithm on two different datasets, semi-
synthetic dataset and robot sensor dataset. We also analyzed the performance
of the classifier and the gait adaptation algorithm, in terms of errors in clas-
sification and errors in the selecting the right gait, respectively. The future
work on our algorithm and analyses will be discussed in the next chapter.
66
CHAPTER 6Conclusion and Future Work
6.1 Summary
In this thesis, we presented an analytical study and algorithmic approach
to provide an autonomous robot with the ability to infer terrain classes and
thus moderate its behavior to enhance performance. We centered our focus
on improving the walking capabilities of the robot by evaluating the styles
of walk, response from the terrain, decisions based on terrain feedback, and
palpable adjustments to the robot’s body.
Initially, we measure the effects that gait parameters can have on the per-
formance of a robot when it walks on different terrains. Our results suggest
that the optimal speed of leg rotation for energy consumption is tied to the
terrain type. Thus, by controlling the cycle-frequency, one can achieve a trade-
off between the ground speed and power consumption of the robot. We also
presented the design of a new class of multi-purpose leg to be used for walk-
ing robots, and specifically for the Aqua hexapod vehicle. These legs allow
amphibious operation: that is both swimming and walking, providing efficient
swimming underwater, on the surface, maneuverability underwater allowing 5
DOF motion and complex trajectories in 6 DOF, as well as efficient walking
on land. We evaluated the effectiveness of these legs for walking on a variety
of terrain types and with variants of the tripod walking gait. In the field, we
also verified that these legs are suitable for swimming through moderate surf,
walking through the breakers on a beach (and thus through slurry), and onto
wet and dry sand. To our knowledge, this level of versatility is comparable to,
67
and apparently exceeds, what has been previously demonstrated with prior
walking vehicles.
We proposed a semi-supervised gait adaptation algorithm to identify the
terrain in real time and adapt the walking gait accordingly. We made use of an
unsupervised classification technique to first categorize the terrain features into
terrain classes and then used this information to identify the current terrain
and adopt a near optimal gait accordingly. We evaluated this algorithm in a
simulated environment, but with real data collected by the robot on a variety of
terrains. We also demonstrated that the terrain identification sensitivity of the
robot, and thus the error margin of the classifier differs when the robot walks
with different cycle-frequencies. This implied that active gait selection should
improve classification accuracy. In fact, we observed a significant increase in
efficiency of the terrain classification algorithm by varying the cycle-frequency
of the leg rotation. Thus through our algorithm, we endow the robot with an
ability to select its actions based on the response from the environment.
Our methodologies in this work have some limitations which we would
like to address in near future. We limit our study of gait parameters to only
one of the parameters, which is cycle-frequency. Other gait parameters, the
stance angle and the stance period, also have an impact on the performance
of the robot and adding more parameters and performance factors elaborate
the experiment domain.
The algorithm we propose requires a predetermined set of terrain classes
to successfully train the classifiers. There is a limitation with respect to the
kinds of terrains that the algorithm is capable of adapting. Also, our algorithm
does not explore the entire space of gait parameter as we only use a set of
fixed gaits. It would be more elegant to adapt to any new untrained terrain
by optimizing over gait parameter space, however, the complexity in the gait
68
space made us choose a set of predetermined gaits for our initial attempt with
gait adaptation.
6.2 Future Work
The classification problem is highly dependent on the set of features se-
lected. We would like to experiment with the larger feature sets and evaluate
the results. The classifier accuracy need to be tested with different feature
selection algorithms to choose better features that position the terrain classes
farther apart in feature space. We also plan to extend and generalize our re-
sults to a more diverse set of terrain types, more rugged non-flat terrains like
gravel, and rocky paths.
In the near future, we would like to conduct real-time outdoor testings
of our gait adaptation algorithm to further validate its performance. We plan
to conduct more experiments with the robot running on rough terrains and
adapting its behavior accordingly. The real-time outdoor tests on the robot
would provide more insights on better strategies for terrain class decisions and
value of gait switch. We also plan to enhance the gait adaptation algorithm
to optimize the gait parameters of the robot, on the run.
Amphibious mobility being one of our motivations, we hope to fully ex-
amine the space of both available gaits as well as preferred gait transitions that
can be used for locomotion on complex terrains and specifically on land/water
interfaces. We would like to conduct more experiments in littoral regions
to analyze the gait transition decisions so that a smooth transition between
walking and swimming gaits and vice-versa is ensured.
6.3 Final Word
In this thesis, we presented an approach to enhancing the walking expe-
rience of an autonomous system by learning its environment through propri-
oceptive sensing and the moderation of its actions based on the environment.
69
We experimentally observed a clear connection between the environment, the
robot’s performance, and the gait, and demonstrated that this connection can
be exploited to enhance performance relative to prior approaches which did
not adapt dynamically. We also explored the behavior of autonomous vehi-
cles in complex environments that require amphibious operations. Finally,
the simulation results validated the effectiveness of the algorithm proposed for
autonomous gait adaptation based on the terrain feedback.
70
References
[1] R McNeill Alexander. The gaits of bipedal and quadrupedal animals. TheInternational Journal of Robotics Research, 3(2):49–59, 1984.
[2] R McNeill Alexander. Walking and running: Legs and leg movementsare subtly adapted to minimize the energy costs of locomotion. AmericanScientist, 72(4):348–354, 1984.
[3] Thomas J Allen, Roger D Quinn, Richard J Bachmann, and Roy E Ritz-mann. Abstracted biological principles applied with reduced actuationimprove mobility of legged vehicles. In Intelligent Robots and Systems,2003.(IROS 2003). Proceedings. 2003 IEEE/RSJ International Confer-ence on, volume 2, pages 1370–1375. IEEE, 2003.
[4] Richard Altendorfer, Ned Moore, Haldun Komsuoglu, Martin Buehler,H Benjamin Brown Jr, Dave McMordie, Uluc Saranli, Robert Full, andDaniel E. Koditschek. Rhex: A biologically inspired hexapod runner.Autonomous Robots, 11(3):207–213, 2001.
[5] Colin Angle. Genghis, a six-legged autonomous walking robot. sb thesisin electrical engineering and computer science, 1989.
[6] Colin M Angle. Design of an artificial creature. PhD thesis, MassachusettsInstitute of Technology, 1991.
[7] John Bares, Martial Hebert, Takeo Kanade, Eric Krotkov, Tom Mitchell,Reid Simmons, and William Whittaker. Ambler: An autonomous roverfor planetary exploration. Computer, 22(6):18–26, 1989.
[8] Dave Barnes. Hexapodal robot locomotion over uneven terrain. In ControlApplications, 1998. Proceedings of the 1998 IEEE International Confer-ence on, volume 1, pages 441–445. IEEE, 1998.
[9] Alexander S Boxerbaum, Philip Werk, Roger D Quinn, and RaviVaidyanathan. Design of an autonomous amphibious robot for surf zoneoperation: Part i mechanical design for multi-mode mobility. In AdvancedIntelligent Mechatronics. Proceedings, 2005 IEEE/ASME InternationalConference on, pages 1459–1464. IEEE, 2005.
[10] Christopher A Brooks and Karl Iagnemma. Vibration-based terrain clas-sification for planetary exploration rovers. Robotics, IEEE Transactionson, 21(6):1185–1191, 2005.
71
72
[11] Giovanni A Cavagna, Norman C Heglund, and C Richard Taylor. Me-chanical work in terrestrial locomotion: two basic mechanisms for mini-mizing energy expenditure. American Journal of Physiology-Regulatory,Integrative and Comparative Physiology, 233(5):R243–R261, 1977.
[12] Enric Celaya and Josep M Porta. Control of a six-legged robot walkingon abrupt terrain. In Robotics and Automation, 1996. Proceedings., 1996IEEE International Conference on, volume 3, pages 2731–2736. IEEE,1996.
[13] Jorge G Cham, Jonathan K Karpick, and Mark R Cutkosky. Stride periodadaptation of a biomimetic running hexapod. The International Journalof Robotics Research, 23(2):141–153, 2004.
[14] Joel Chestnutt, Manfred Lau, German Cheung, James Kuffner, JessicaHodgins, and Takeo Kanade. Footstep planning for the honda asimohumanoid. In Robotics and Automation, 2005. ICRA 2005. Proceedingsof the 2005 IEEE International Conference on, pages 629–634. IEEE,2005.
[15] G Clark Haynes and Alfred A Rizzi. Gaits and gait transitions for leggedrobots. In Robotics and Automation, 2006. ICRA 2006. Proceedings 2006IEEE International Conference on, pages 1117–1122. IEEE, 2006.
[16] Noah J Cowan, Emily J Ma, Mark Cutkosky, and Robert J Full. A bio-logically inspired passive antenna for steering control of a running robot.In Robotics Research, pages 541–550. Springer, 2005.
[17] P Gonzalez De Santos, Jose A Galvez, Joaquin Estremera, and ElenaGarcia. Sil04: a true walking robot for the comparative study of walkingmachine techniques. Robotics & Automation Magazine, IEEE, 10(4):23–32, 2003.
[18] Bir Bikram Dey, Sandeep Manjanna, and Gregory Dudek. Ninja Legs:Amphibious One Degree of Freedom Robotic Legs. In IEEE/RSJ Interna-tional Conference on Intelligent Robots and Systems (IROS ’13), Tokyo,Japan, November 2013.
[19] Frederick J Diedrich and William H Warren Jr. Why change gaits? dy-namics of the walk-run transition. Journal of Experimental Psychology:Human Perception and Performance, 21(1):183, 1995.
[20] Gregory Dudek, Philippe Giguere, Chris Prahacs, Shane Saunderson,Junaed Sattar, Luz-Abril Torres-Mendez, Michael Jenkin, Andrew Ger-man, Andrew Hogue, Arlene Ripsman, et al. Aqua: An amphibiousautonomous robot. Computer, 40(1):46–53, 2007.
73
[21] Gregory Dudek and Michael Jenkin. Computational principles of mobilerobotics. Cambridge university press, 2010.
[22] Edmond M DuPont, Rodney G Roberts, and Carl A Moore. Speed in-dependent terrain classification. In System Theory, 2006. SSST’06. Pro-ceeding of the Thirty-Eighth Southeastern Symposium on, pages 240–244.IEEE, 2006.
[23] Harold B Falls and L Dennis Humphrey. Energy cost of running andwalking in young women. Medicine and science in sports, 8(1):9, 1976.
[24] Jose A Galvez, Joaquin Estremera, and Pablo Gonzalez de Santos. A newlegged-robot configuration for research in force distribution. Mechatron-ics, 13(8):907–932, 2003.
[25] Fernando L Garcia Bermudez, Ryan C Julian, Duncan W Haldane, PieterAbbeel, and Ronald S Fearing. Performance analysis and terrain classifi-cation for a legged robot over rough terrain. In Intelligent Robots andSystems (IROS), 2012 IEEE/RSJ International Conference on, pages513–519. IEEE, 2012.
[26] Philippe Giguere. Unsupervised learning for mobile robot terrain classifi-cation. McGill University, 2010.
[27] Philippe Giguere and Gregory Dudek. Clustering sensor data for au-tonomous terrain identification using time-dependency. AutonomousRobots, 26(2-3):171–186, 2009.
[28] Philippe Giguere and Gregory Dudek. Clustering sensor data for ter-rain identification using a windowless algorithm. Robotics: science andsystems IV, page 25, 2009.
[29] Philippe Giguere and Gregory Dudek. A simple tactile probe for sur-face identification by mobile robots. Robotics, IEEE Transactions on,27(3):534–544, 2011.
[30] Philippe Giguere, Gregory Dudek, Shane Saunderson, and Chris Prahacs.Environment identification for a running robot using inertial and actuatorcues. In Robotics: Science and Systems, 2006.
[31] Kris Hauser, Timothy Bretl, Jean-Claude Latombe, Kensuke Harada, andBrian Wilcox. Motion planning for legged robots on varied terrain. TheInternational Journal of Robotics Research, 27(11-12):1325–1349, 2008.
[32] Norman C Heglund, Giovanni A Cavagna, and C Richard Taylor. Ener-getics and mechanics of terrestrial locomotion. iii. energy changes of thecentre of mass as a function of speed and body size in birds and mammals.Journal of Experimental Biology, 97(1):41–56, 1982.
74
[33] Donald F Hoyt and C Richard Taylor. Gait and the energetics of loco-motion in horses. Nature, 1981.
[34] George M Hughes. The co-ordination of insect movements: The walkingmovements of insects. Journal of Experimental Biology, 29(2):267–285,1952.
[35] Auke Jan Ijspeert. Central pattern generators for locomotion control inanimals and robots: a review. Neural Networks, 21(4):642–653, 2008.
[36] Devin L Jindrich and Robert J Full. Dynamic stabilization of rapidhexapedal locomotion. Journal of Experimental Biology, 205(18):2803–2823, 2002.
[37] David Jung and Alexander Zelinsky. Whisker based mobile robot naviga-tion. In Intelligent Robots and Systems’ 96, IROS 96, Proceedings of the1996 IEEE/RSJ International Conference on, volume 2, pages 497–504.IEEE, 1996.
[38] Kenji Kaneko, Kensuke Harada, Fumio Kanehiro, Gou Miyamori, andKazuhiko Akachi. Humanoid robot hrp-3. In Intelligent Robots and Sys-tems, 2008. IROS 2008. IEEE/RSJ International Conference on, pages2471–2478. IEEE, 2008.
[39] Eric Krotkov and Regis Hoffman. Terrain mapping for a walking planetaryrover. Robotics and Automation, IEEE Transactions on, 10(6):728–739,1994.
[40] Eric Krotkov and Reid Simmons. Perception, planning, and control forautonomous walking with the ambler planetary rover. The Internationaljournal of robotics research, 15(2):155–180, 1996.
[41] T Kubow, M Garcia, W Schwind, R Full, and DE Koditschek. A principalcomponents analysis of cockroach steady state leg motion.
[42] Paul Leyhausen, Barbara A Tonkin, et al. Cat behaviour. The predatoryand social behaviour of domestic and wild cats. Garland STPM Press.,1979.
[43] Xu Liang, Min Xu, Lichao Xu, Peng Liu, Xiaoshuang Ren, Ziwen Kong,Jie Yang, and Shiwu Zhang. The amphihex: A novel amphibious robotwith transformable leg-flipper composite propulsion mechanism. In Intel-ligent Robots and Systems (IROS), 2012 IEEE/RSJ International Con-ference on, pages 3667–3672. IEEE, 2012.
[44] Sandeep Manjanna, Gregory Dudek, and Philippe Giguere. Using gaitchange for terrain sensing by robots. In CRV ’13: Proceedings of the
75
2013 International Conference on Computer and Robot Vision, pages 16–22. IEEE Computer Society, May 2013.
[45] Rodolfo Margaria and R Margaria. Biomechanics and energetics of mus-cular exercise. Clarendon Press Oxford, 1976.
[46] D McMordle and M Buehler. Towards pronking with a hexapod robot.Technical report, DTIC Document, 2001.
[47] CJ Pennycuick. On the running of the gnu (connochaetes taurinus) andother animals. The Journal of Experimental Biology, 63(3):775–799, 1975.
[48] Andrew K Perry, Reinhard Blickhan, Andrew A Biewener, Norman CHeglund, and C Richard Taylor. Preferred speeds in terrestrial ver-tebrates: are they equivalent? Journal of Experimental Biology,137(1):207–219, 1988.
[49] Nicolas Plamondon. Modeling and control of a biomimetic underwatervehicle, volume 72. 2010.
[50] Tony J Prescott, Ben Mitchinson, and Robyn Anne Grant. Vibrissalbehavior and function. Scholarpedia, 6(10):6642, 2011.
[51] Roger D Quinn, Gabriel M Nelson, Richard J Bachmann, Daniel A Kings-ley, John Offi, and Roy E Ritzmann. Insect designs for improved robotmobility. In Proceedings of the Fourth International Conference on Climb-ing and Walking Robots Conference (CLAWAR01), London: ProfessionalEngineering, pages 69–76, 2001.
[52] Marc Raibert, Kevin Blankespoor, Gabriel Nelson, Rob Playter, et al.Bigdog, the rough-terrain quadruped robot. In Proceedings of the 17thWorld Congress, pages 10823–10825, 2008.
[53] Simon G Rocheleau, Vincent Duchaine, Pascal Bochud, and Clement Gos-selin. Prompt: A small walking robot for planetary exploration. ASME,2009.
[54] Nicholas Roy, Gregory Dudek, and Paul Freedman. Surface sensing andclassification for efficient mobile robot navigation. In Robotics and Au-tomation, 1996. Proceedings., 1996 IEEE International Conference on,volume 2, pages 1224–1228. IEEE, 1996.
[55] R Andrew Russell and Jaury Adi Wijaya. Recognising and manipulatingobjects using data from a whisker sensor array. Robotica, 23(5):653–664,2005.
[56] Debangshu Sadhukhan. Autonomous ground vehicle terrain classificationusing internal sensors. 2004.
76
[57] Uluc Saranli, Martin Buehler, and Daniel E Koditschek. Rhex: A simpleand highly mobile hexapod robot. The International Journal of RoboticsResearch, 20(7):616–631, 2001.
[58] Uluc Saranli and Daniel E Koditschek. Template based control ofhexapedal running. In Robotics and Automation, 2003. Proceedings.ICRA’03. IEEE International Conference on, volume 1, pages 1374–1379.IEEE, 2003.
[59] Stefan Schaal and Christopher G Atkeson. Open loop stable controlstrategies for robot juggling. In Robotics and Automation, 1993. Pro-ceedings., 1993 IEEE International Conference on, pages 913–918. IEEE,1993.
[60] J Seipel and P Holmes. A simple model for clock-actuated legged loco-motion. Regular and chaotic dynamics, 12(5):502–520, 2007.
[61] Ching-Long Shih and Charles A Klein. An adaptive gait for legged walk-ing machines over rough terrain. Systems, Man and Cybernetics, IEEETransactions on, 23(4):1150–1155, 1993.
[62] Shin-Min Song and Kenneth J Waldron. Machines that walk: the adaptivesuspension vehicle. The MIT Press, 1989.
[63] Stella Burnham Vincent. The functions of the vibrissae in the behaviorof the white rat, volume 1. University of Chicago, 1912.
[64] William Walter. An electro-mechanical animal 1. dialectica, 4(3):206–213,1950.
[65] Joel D Weingarten, Richard E Groff, and Daniel E Koditschek. A frame-work for the coordination of legged robot gaits. In Robotics, Automationand Mechatronics, 2004 IEEE Conference on, volume 2, pages 679–686.IEEE, 2004.
[66] Joel D Weingarten, Gabriel AD Lopes, Martin Buehler, Richard E Groff,and Daniel E Koditschek. Automated gait adaptation for legged robots.In Robotics and Automation, 2004. Proceedings. ICRA’04. 2004 IEEEInternational Conference on, volume 3, pages 2153–2158. IEEE, 2004.
[67] Christian Weiss, Holger Frohlich, and Andreas Zell. Vibration-based ter-rain classification using support vector machines. In Intelligent Robotsand Systems, 2006 IEEE/RSJ International Conference on, pages 4429–4434. IEEE, 2006.
[68] David Wettergreen, Hans Thomas, and Chuck Thorpe. Planning strate-gies for the ambler walking robot. In Systems Engineering, 1990., IEEEInternational Conference on, pages 198–203. IEEE, 1990.
77
[69] Brian H Wilcox, Todd Litwin, Jeff Biesiadecki, Jaret Matthews, MattHeverly, Jack Morrison, Julie Townsend, Norman Ahmad, Allen Sirota,and Brian Cooper. Athlete: A cargo handling and manipulation robotfor the moon. Journal of Field Robotics, 24(5):421–434, 2007.
[70] Jiancheng Yu, Yuangui Tang, Xueqiang Zhang, and Chongjie Liu. Designof a wheel-propeller-leg integrated amphibious robot. In Control Automa-tion Robotics & Vision (ICARCV), 2010 11th International Conferenceon, pages 1815–1819. IEEE, 2010.