1 Introduction and motivation
As research into humanoid robotics advanced we have seen the development of highly specialised forms of locomotion including climbing (Wickrath, Reference Wickrath2010; Iverach-Brereton, Reference Iverach-Brereton2014) and ice skating (Iverach-Brereton et al., Reference Iverach-Brereton, Baltes, Anderson, Winton and Carrier2012a, Reference Iverach-Brereton, Winton and Baltes2012b). While the ability to traverse extremely rugged terrain with unknown traction and rigidity remains beyond the state-of-the-art for humanoid robotics, research into specialised forms of locomotion remains a useful tool towards the development of a robust, general-purpose humanoid robot.
Alpine skiing offers unique challenges for humanoid robots. Snow offers a wide range of properties depending on weather conditions. Cold and dry temperatures produce light, fluffy snow that has little initial rigidity but can be compacted underfoot. Warm and humid conditions produce snow with a heavy, sticky quality that resists compression, but offers high gliding resistance.
This paper presents our preliminary work on the development of a three-dimensional control system for balancing a robot while alpine skiing. The remainder of this paper is divided as follows.
Section 2 provides a survey of previous research into alpine skiing robots, as well as previous research into active balancing on unstable terrain.
Section 3 summarises the construction of the robot’s skis and poles, as well as the physical properties of the robot used in this research.
Section 4 describes how we adapted our previous research into active balancing on a bongo board (Baltes et al., Reference Baltes, Iverach-Brereton and Anderson2013, Reference Baltes and Lam2014; Iverach-Brereton, Reference Iverach-Brereton2015a) for use in stabilising the robot as it skis across hills of varying inclination in the frontal and sagittal planes.
Section 5 described the motions the robot uses for braking and steering when alpine skiing. By exploiting the way the edges of the skis carve into the snow the robot can turn in arcs to either side as well as brake by bringing the toes of the skis together.
Section 6 describes the physical properties of various snow conditions experienced during our research and the impact they had on our experiments.
Finally, in Section 7 we draw conclusions and discuss future applications of this research.
2 Related work
Balancing is central to most tasks involving humanoid robotics, the humanoid body naturally forms an unstable inverted pendulum with the fulcrum located at the zero moment point (ZMP) in the robot’s feet and the mass located at the robot’s centre of mass (CoM, typically located somewhere within the robot’s torso), as shown in Figure 1 (Sugihara et al., Reference Sugihara, Nakamura and Inoue2002). This unstable arrangement necessitates either large feet with strong leg and ankle motors able to produce a statically stable state, or active control to produce a dynamically stable system.
An inverted pendulum (left) and a humanoid system (right) showing the fulcrum, rod, and mass of the pendulum (Sugihara et al., Reference Sugihara, Nakamura and Inoue2002). ZMP=zero moment point

While modern humanoid robots are able to traverse flat ground with high traction (e.g. concrete, thin carpet, hardwood) with ease, traversing unstable or slippery terrain (e.g. debris fields, ice) remains very difficult (Iverach-Brereton et al., Reference Iverach-Brereton, Baltes, Anderson, Winton and Carrier2012a, Reference Iverach-Brereton, Winton and Baltes2012b; Iverach-Brereton, Reference Iverach-Brereton2015a). In 2012, Iverach-Brereton et al. showed that a walking gait based on the linear inverted pendulum model could be modified to allow a small humanoid robot to traverse ice when equipped with skates (Iverach-Brereton et al., Reference Iverach-Brereton, Baltes, Anderson, Winton and Carrier2012a, Reference Iverach-Brereton, Winton and Baltes2012b).
Gaits based on the inverted pendulum model consist of two distinct phases: the double support phase (DSP), during which both feet are on the ground and the robot is in a statically stable position, and the single support phase (SSP), during which one foot is in contact with the ground and the other leg swings forward. During the SSP the robot is unstable, the robot effectively falls forward, rotating around the support leg. The swing leg is brought forward to arrest the robot’s falling, starting a new DSP (Baltes & Lam, Reference Baltes, Iverach-Brereton and Anderson2004). Figure 2 shows keyframes from a dynamically stable walking gait used by a small humanoid robot.
The walking gait used by a simple humanoid robot, showing the single support and double support phases (Baltes & Lam, Reference Baltes, Iverach-Brereton and Anderson2004)

When traversing uneven terrain the transition between SSP and DSP may occur at uneven intervals, changes in ground elevation can cause the swing leg to strike the ground earlier or later than expected. On generally level ground with good traction this does not cause problems. But when presented with uneven ground (e.g. slopes, stepping fields) the gait can become unstable (Chen & Byl, Reference Chen and Byl2012). The use of phase modification based on gyroscope data has been shown to mitigate this problem and allow the robot to walk across small changes in elevation without falling over (Baltes & Lam, Reference Baltes, Iverach-Brereton and Anderson2004; McGrath et al., Reference McGrath, Baltes and Anderson2004; Adiwahono et al., Reference Adiwahono, Chew, Huang and Dau2010; Yi et al., Reference Yi, Zhang, Hong and Lee2011).
While phase modification is adequate to address the problems of active balancing on uneven terrain, dynamic terrain—terrain where the inclination and elevation are not constant from moment-to-moment—remains problematic. Baltes et al. (Reference Baltes and Lam2014) showed that PID controllers were able to stabilise a humanoid robot on a bongo board. Iverach-Brereton (Reference Iverach-Brereton2015a) further demonstrated that fuzzy logic controllers were suitable for this task.
The bongo board is a simple example of highly dynamic terrain, the robot must stand on a flat deck positioned above a free-rolling, cylindrical wheel, as shown in Figure 3. By controlling the rotation of each arm at the shoulder, translating the hips vertically and horizontally, and inclining the torso to the left and right the robot is able to keep the deck level and keep the CoM of the system positioned above the wheel, keeping the bongo board system stable (Baltes et al., Reference Baltes and Lam2014; Iverach-Brereton, Reference Iverach-Brereton2015a).
Jimmy, a DARwIn-OP humanoid robot, on a bongo board (Baltes et al., Reference Baltes and Lam2014)

Skiing humanoid robots are a relatively new area of research. While some researchers have begun looking at the problems of alpine skiing, including Lahajnar et al. (Reference Lahajnar, Kos and Nemec2009), Petrič et al. (Reference Petrič, Nemec, Babic and Zlajpah2011), and Nemec and Lahajnar (Reference Nemec and Lahajnar2009), there remains much research to do in the area.
The majority of research into alpine skiing has focussed on balance and turning. Jentschura and Fahrbach (Reference Jentschura and Fahrbach2004) provide equations defining a mathematically ideal carving turn. Nemec and Lahajnar (Reference Nemec and Lahajnar2009) similarly focus on directional control using the carving technique.
Petrič et al.’s work (Reference Petrič, Nemec, Babic and Zlajpah2011) by contrast focusses on balancing the robot. Their system’s primary goal is to control the robot’s balance, with directional control as a secondary goal, and finally controlling the robot’s pose.
Nemec and Lahajnar (Reference Nemec and Lahajnar2009) combine balancing and turning to produce a lower-body humanoid robot equipped with carving skis. Their robot uses a proportional-derivative (PD) controller to monitor and adjust the robot’s acceleration and torso inclination, and was able to actively avoid obstacles on unknown ski hills.
3 Hardware used
JenniferFootnote 1 , the robot used for this research, is a standard DARwIn-OP robot manufactured by Robotis (Robotis, 2012), shown in Figure 4. The robot was modified from its stock configuration by the addition of single d.f. hands. Jennifer stands ~45 cm tall with a mass of 2.9 kg. Because we conducted our research outdoors on natural snow, we equipped the robot with an insulated shirt, trousers, and helmet to help protect the robot from cold and moisture.
Jennifer, the robot used in this research, equipped with wooden skis and ski poles. The insulated shirt, helmet, and trousers helped protect the robot from cold and moisture (Martin, Reference Martin2015)

The robot’s skis, shown in detail in Figure 5, are made of spruce wood ~4 mm thick. The ends of the skis were steam bent into the upward curve. Unlike more modern ‘carving skis’—first introduced in the 1980s and popularised during the 1990s (Petrič et al., Reference Petrič, Nemec, Babic and Zlajpah2011), shown in Figure 6—which feature wider lobes at the nose and tail of the ski with a thinner midsection, Jennifer’s skis are traditional, straight-sided skis. Carving skis provide more efficient control when turning by reducing skidding (Jentschura & Fahrbach, Reference Jentschura and Fahrbach2004; Petrič et al., Reference Petrič, Nemec, Babic and Zlajpah2011) but for the purposes of our initial research we chose to use the simpler-to-manufacture traditional skis.
A detailed view of the skis used in this research. The skis are made out of spruce wood cut ~4 mm thick with steam-bent tips. The skis are attached to the underside of the robot’s foot with counter-sunk screws to provide a smooth running surface

A typical carving ski. The ski’s tip is to the right. The two-lobed shape is produced by circular cutouts along each side of the ski. The radius of these cutouts is R SC, while the depth of the cutout relative to the edge of the ski is given by d. Traditional skis with straighter sides have a smaller d and larger R SC (Jentschura & Fahrbach, Reference Jentschura and Fahrbach2004)

4 Active balancing
Like Lahajnar et al. (Reference Lahajnar, Kos and Nemec2009) and Nemec and Lahajnar (Reference Nemec and Lahajnar2009), we use a PD controller to adjust the robot’s torso inclination to ensure that the skis remain in contact with the hill at all times while keeping the torso upright and the CoM centred over the feet. Unlike this system however, we do not focus exclusively on lateral stability, our system actively balances on both the frontal and sagittal planes. In addition, our control model is much simpler, employing only two PD controllers without the need for ZMP calculations.
Our control system is based on the ‘Do the Shake’ control policy published by Baltes et al. (Reference Baltes and Lam2014). The ‘Do the Shake’ policy uses a linear predictive model to extrapolate the robot’s current inclination based on previous readings from the robot’s three-axis accelerometer. We use the following control law to adjust the robot’s inclination, θ in both the frontal and sagittal planes:
where θ
torso and
$\dot{\theta }_{{{\rm torso}}} $
are the latest sensor readings giving the torso’s
inclination and angular velocity, respectively. Because of latency in processing the
sensor data these readings represent the robot’s state several milliseconds
earlier than its actual current state. θ′ is the
robot’s estimated real-world current torso inclination, derived by applying a
linear predictive model to the sensor readings to compensate for this latency.
θ the desired output torso angle of the system.
K
p
and K
d
the proportional and derivative gains of the PD controller, respectively.
We use two independent PD controllers, one to compensate for motion in the frontal plane and one to compensate for motion in the sagittal plane. This allows the robot to keep its skis flush with the ground and its torso upright regardless of the inclination of the ground below it. A video of the robot compensating for changes in inclination can be found on YouTube (Iverach-Brereton, Reference Iverach-Brereton2015b).
To control the inclination in the frontal plane the robot adjusts the length of each leg by extending or contracting the knee, as shown in Figure 7. The ankles rotate in the frontal plane to ensure that underside of the skis stay in the same plane, as can be seen in Figure 8.
The robot’s pose being adjusted for changes in inclination in the frontal plane. Note how the torso inclination is adjusted by raising and lowering the legs

The robot’s pose being adjusted for changes in inclination in the sagittal plane. The robot uses its ankles to control the pitch of the skis and keep the torso upright

To control inclination in the sagittal plane the robot relies entirely on its ankle motors. In order to keep the skis parallel to one another we dynamically control the transverse motors located in the robot’s hips based on the width of the robot’s stance and the inclination of the ankles.
During outdoor trials with variable snow conditions this simple PID control system was able to keep the robot upright despite uneven snow and variable inclination slopes.
5 Alpine skiing control
As shown by Jentschura and Fahrbach (Reference Jentschura and Fahrbach2004), an ideal alpine skiing turn can be achieved by using the edge of the ski to dig into the snow, forcing the skier to move in an arc. As noted by Jentschura and Fahrbach, carving skis are required for an optimal turn. However, straight-sided traditional skis can still carve, albeit sub-optimally.
Our alpine skiing system defines four main states for the robot: skiing straight, braking, turning left, and turning right. Poses representative of these states can be seen in Figure 9.
The robot’s pose when skiing straight down the hill, braking, turning left, and turning right

When skiing straight the robot keeps the bottoms of the skis flush with the snow and keeps the edges of the skis parallel with each other. This minimises resistance, allowing the robot to reach higher speeds when going down the slope.
To reduce forward velocity the robot turns the points of the skis inward and rolls the edges of the skis outward, forcing the inside edges of the skis to dig into the snow. This V-shape acts like a snowplough, creating high resistance and rapidly decelerating the robot. The degree to which the robot turns the skis can be controlled dynamically, ranging from a very slight angle to introduce minimal braking to the extreme V-shape shown in Figure 9.
The carving turn is accomplished by shortening the leg on the inside of the turn (by contracting the knee), and rotating both ankles in the frontal plane such that the edges of the ski towards the inside of the turn are both lowered. In addition, the robot translates its torso laterally such that the CoM lies above the inside ski. The outward arm is extended to provide balance, while the inside arm is brought inward.
As with braking, the amplitude of the turn can be controlled by adjusting the degree to which the torso is translated and the ankles are rolled. In practice, this allowed the robot to perform short, abrupt turns as well as long, arcing turns.
To test the control we marked a section of the hill with blue and pink markers. The robot was programmed to ski down the hill, staying within the marked area. Blue markers indicate the left side of the course and pink markers indicate the right. If the robot starts to veer out of bounds it will steer using the carving technique towards the centre of the course (i.e. it will steer right to avoid blue markers and left to avoid pink markers). After passing all the markers the robot assumes the braking position to stop at the bottom of the hill. A picture of the robot navigating the course is shown in Figure 10.
Jennifer navigating a simple skiing course. The robot is programmed to ski within the area marked by the markers to avoid going out of bounds

A video showing our robot actively steering around the obstacles in our experiment is available on YouTube (Iverach-Brereton, Reference Iverach-Brereton2015c).
6 Snow conditions
Any outdoor winter sport, including ice skating and skiing, is subject to the current weather conditions. A skier’s ability to glide down a hill quickly, steer, and brake are all impacted by the depth and quality of the snow on the hill. Snowfall, temperature, and humidity all impact the snow conditions. As our testing was done outside in an uncontrolled environment over the course of several weeks ranging from mid-winter to early spring we encountered a wide range of environmental conditions.
Our previous research into ice skating (Iverach-Brereton et al., Reference Iverach-Brereton, Baltes, Anderson, Winton and Carrier2012a, Reference Iverach-Brereton, Winton and Baltes2012b) showed that weather conditions dramatically changed the properties of the outdoor skating rink used for testing. When the temperature was well below freezing the ice was hard and dry, providing a very low-friction surface that maximised the robot’s ability to glide on the ice. When the temperature was closer to freezing the surface of the ice became wet and sticky, increasing traction and reducing the robot’s ability to glide.
Snow behaves similarly to ice, higher temperatures and humidity result in a higher liquid water content in the snow, resulting in heavier, stickier snow. Drier, colder conditions result in lighter, fluffier, powdery snow (ICSI-UCCS-IACS Working Group on Snow Classification, 2009).
During our research we discovered that the properties of the snowpack—the deep layer of snow that accumulates over the winter—was particularly important. Because the robot we used is fairly small (~45 cm tall and 2.9 kg mass) it could not ski well through loose snow deeper than 2–3 cm. Snow deeper than this would pile up on and in front of the skis, inhibiting the robot’s forward progress.
During early spring the top of the snowpack would melt over the course of the day when the temperature rose to near-freezing, but would freeze again overnight when the temperature dropped. This thaw–freeze cycle produced a hard, brittle, icy layer of snow that adequately supported the robot’s weight and provided nearly ideal conditions for the robot to ski on. A thin layer of light, powdery, dry snow on top of the icy snowpack was found to be optimal, the lighter fresh snow gave the robot’s skis better traction when braking and turning, while still benefiting from the support of the icy snowpack.
7 Conclusions and future work
This work represents the early stages of our research into humanoid alpine skiing robots. Because alpine skiing requires snowy conditions we are currently working on adapting our algorithms to use roller skis such that our research can continue during the summer months. Our early experiments with roller skis indicate that wheels are not suitable for carving turns, necessitating a new approach to steering when going down inclined surfaces.
Other areas of future research include implementing a system to allow the robot to dynamically switch between cross-country and alpine skiing modes depending on the inclination of the ground. The robot would use a cross-country gait, based on the linear inverted pendulum model, to traverse flat and uphill portions of the course, and switch to alpine skiing for steep downhill portions.
Nonetheless, this research has shown that a simple two-axis PD control system is suitable for balancing a humanoid robot when alpine skiing. Furthermore, we have shown that such a robot equipped with straight-edged skis can use carving turns to navigate simple alpine obstacle courses.
Acknowledgments
The authors would like to acknowledge the assistance of Bill Brereton for the construction of the robot’s skis used in this paper and Lorraine Iverach for her photography. The authors’ team of undergraduate assistants, including Travis Almey, Jason Martin and Caitlin Martins, were invaluable to this research. The authors also thank Robotis for sponsoring the IEEE International Conference on Robtics and Automation (ICRA) Humanoid Application Challenge, which provided the inspiration to take on this project. Finally, the authors thank the University of Manitoba and the Department of Computer Science for their support and equipment.









