Legacy Forum: Preserving Nearly 20 Years of Community History - A Time Capsule of Discussions, Memories, and Shared Experiences.

Walking: State of the Art

Anything that doesn't fit our other forums goes here.
11 postsPage 1 of 1
11 postsPage 1 of 1

Walking: State of the Art

Post by DerekZahn » Thu Feb 08, 2007 2:44 am

Post by DerekZahn
Thu Feb 08, 2007 2:44 am

As I program some of the supporting software for Bing, I'm starting to think about walking, and looking for stuff to get inspired by. Here's some interesting things I've found:

First, my favorite robot, OmniZero. The latest versions of OmniZero illustrate what appears to be a very effective strategy for walking...

OmniZero home page: http://www.1mm.jp/m/robo.html
Video from that page illustrating the walking concept: http://www.1mm.jp/m/robo20070107a.mpg

For the same reason a book falls over faster than a building, the natural gait for a small biped robot is going to be faster than the gait of a human being 4 times taller and that can be seen here in OmniZero's pounding steps. OmniZero's basic gait seems to be a finely tuned rapid oscillation of momentum that can achieve a variety of directional effects by making small shifts on each step. I think it's very impressive, and allows for very flexible walking.

Next, the RoboCup robots of the university of Freiburg: http://www.nimbro.net

If you are interested in such things, start by checking out the following truly excellent paper: http://www.informatik.uni-freiburg.de/h ... behnke.pdf

This paper has some really interesting stuff in it. First, Behnke makes a nice trigonometric reparameterization of leg joints so that leg position can be described by hip angle, foot angle, and leg length instead of individual joint angles. I would think that sliders in the UIs of commercial robots could use reparametizations like this to make posing robots more natural.

Then the paper presents an omnidirectional gait which by changing parameter values generates walking in different directions. I think this idea of procedurally generating a gait from a base model is much nicer than memorizing sequences of poses because of its extreme flexibility, and I'm going to try something similar for Bing. The specific gait uses some ideas about energy minimization to come up with walking that looks pretty natural:

http://www.nimbro.net/movies/jupp/JuppOmniWalking.wmv

The specific gait doesn't seem appropriate for my needs but the method used to produce it is very cool.

For some reason, the promotional videos for commercially-available robo-one style bipeds seem to focus more on waving arms around and so forth than on walking -- perhaps because their customers are mostly interested in that or perhaps because walking is hard. But there are a few that stand out in my mind.

My favorite is probably the rolling gait of the vstone RB2000, which is really impressive in its simplicity. Check out this video:

http://www.vstone.co.jp/top/products/ro ... mpanti.wmv

Another one that looks pretty decent is the fast walking of the Robovie M3, like the movie found on this page (although it seems a bit unstable): http://www.roboporium.com/videos.html

Anybody else have some video, information, or opinions to share on the topic?
As I program some of the supporting software for Bing, I'm starting to think about walking, and looking for stuff to get inspired by. Here's some interesting things I've found:

First, my favorite robot, OmniZero. The latest versions of OmniZero illustrate what appears to be a very effective strategy for walking...

OmniZero home page: http://www.1mm.jp/m/robo.html
Video from that page illustrating the walking concept: http://www.1mm.jp/m/robo20070107a.mpg

For the same reason a book falls over faster than a building, the natural gait for a small biped robot is going to be faster than the gait of a human being 4 times taller and that can be seen here in OmniZero's pounding steps. OmniZero's basic gait seems to be a finely tuned rapid oscillation of momentum that can achieve a variety of directional effects by making small shifts on each step. I think it's very impressive, and allows for very flexible walking.

Next, the RoboCup robots of the university of Freiburg: http://www.nimbro.net

If you are interested in such things, start by checking out the following truly excellent paper: http://www.informatik.uni-freiburg.de/h ... behnke.pdf

This paper has some really interesting stuff in it. First, Behnke makes a nice trigonometric reparameterization of leg joints so that leg position can be described by hip angle, foot angle, and leg length instead of individual joint angles. I would think that sliders in the UIs of commercial robots could use reparametizations like this to make posing robots more natural.

Then the paper presents an omnidirectional gait which by changing parameter values generates walking in different directions. I think this idea of procedurally generating a gait from a base model is much nicer than memorizing sequences of poses because of its extreme flexibility, and I'm going to try something similar for Bing. The specific gait uses some ideas about energy minimization to come up with walking that looks pretty natural:

http://www.nimbro.net/movies/jupp/JuppOmniWalking.wmv

The specific gait doesn't seem appropriate for my needs but the method used to produce it is very cool.

For some reason, the promotional videos for commercially-available robo-one style bipeds seem to focus more on waving arms around and so forth than on walking -- perhaps because their customers are mostly interested in that or perhaps because walking is hard. But there are a few that stand out in my mind.

My favorite is probably the rolling gait of the vstone RB2000, which is really impressive in its simplicity. Check out this video:

http://www.vstone.co.jp/top/products/ro ... mpanti.wmv

Another one that looks pretty decent is the fast walking of the Robovie M3, like the movie found on this page (although it seems a bit unstable): http://www.roboporium.com/videos.html

Anybody else have some video, information, or opinions to share on the topic?
DerekZahn
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 141
Joined: Wed Mar 16, 2005 1:00 am
Location: Boulder CO, USA

Post by Humanoido » Thu Feb 08, 2007 8:14 am

Post by Humanoido
Thu Feb 08, 2007 8:14 am

Well it's just my opinion but I'm not satisfied with most humanoids that walk. The walking seems jerky, some fall over, others teeter-totter back and forth when starting/stopping. However, in the ones that do walk most effectively, I see they are typically mastered by a Japanese person who has spent countless hours, days, weeks, months, getting it just right. Not bad, considering it took man 4.5 million years to evolve.

I believe that forums like this, can help, when many people come together to share ideas, and walking software in particular. It would seem that most of us are working on the hardware at this point. One example is adding gyros to make the walk smoother with existing software. Ok, that's my 2 cents.

In some ways, I cannot believe that I'm talking about humanoids and how they could walk better. Several years ago, I was developing humanoids and just trying to get them to walk. :lol:
Humanoido
Well it's just my opinion but I'm not satisfied with most humanoids that walk. The walking seems jerky, some fall over, others teeter-totter back and forth when starting/stopping. However, in the ones that do walk most effectively, I see they are typically mastered by a Japanese person who has spent countless hours, days, weeks, months, getting it just right. Not bad, considering it took man 4.5 million years to evolve.

I believe that forums like this, can help, when many people come together to share ideas, and walking software in particular. It would seem that most of us are working on the hardware at this point. One example is adding gyros to make the walk smoother with existing software. Ok, that's my 2 cents.

In some ways, I cannot believe that I'm talking about humanoids and how they could walk better. Several years ago, I was developing humanoids and just trying to get them to walk. :lol:
Humanoido
Humanoido
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 574
Joined: Tue Dec 05, 2006 1:00 am
Location: Deep in the Heart of Asia

Post by SK » Thu Feb 08, 2007 9:36 am

Post by SK
Thu Feb 08, 2007 9:36 am

You can read about the walking and subsequent optimization technique used by the Darmstadt Dribblers & Hajime team for RoboCup 2006 here:
http://www.sim.informatik.tu-darmstadt. ... AR_pre.pdf

Using this approach, our team had the fastest humanoid robot of RoboCup 2006. A video can be seen here:
<embed src="http://www.youtube.com/v/9alziPqmE0g" type="application/x-shockwave-flash" wmode="transparent" width="425" height="350"></embed>
http://www.youtube.com/watch?v=9alziPqmE0g
You can read about the walking and subsequent optimization technique used by the Darmstadt Dribblers & Hajime team for RoboCup 2006 here:
http://www.sim.informatik.tu-darmstadt. ... AR_pre.pdf

Using this approach, our team had the fastest humanoid robot of RoboCup 2006. A video can be seen here:
<embed src="http://www.youtube.com/v/9alziPqmE0g" type="application/x-shockwave-flash" wmode="transparent" width="425" height="350"></embed>
http://www.youtube.com/watch?v=9alziPqmE0g
SK
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 105
Joined: Mon Jun 26, 2006 1:00 am
Location: near Frankfurt/Main, Germany

Post by Bullit » Thu Feb 08, 2007 12:31 pm

Post by Bullit
Thu Feb 08, 2007 12:31 pm

Bullit
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 291
Joined: Wed May 31, 2006 1:00 am
Location: Near robot

Post by Humanoido » Thu Feb 08, 2007 12:50 pm

Post by Humanoido
Thu Feb 08, 2007 12:50 pm

That's the best I've seen. Thanks for the links! Also the paper is excellent, though it would take a while to apply all the mathematical principles involved.
Humanoido
That's the best I've seen. Thanks for the links! Also the paper is excellent, though it would take a while to apply all the mathematical principles involved.
Humanoido
Humanoido
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 574
Joined: Tue Dec 05, 2006 1:00 am
Location: Deep in the Heart of Asia

Post by DerekZahn » Fri Feb 09, 2007 5:30 pm

Post by DerekZahn
Fri Feb 09, 2007 5:30 pm

Thanks for posting the link to your paper SK, that's a very impressive project you have there.

As I see it, the most important part of the core of your walking gait is the movement of the ZMP across the feet. Your paper illustrates a very nice way of taking a core concept like that and systematically reducing it for optimization and tuning to a manageable number of dimensions.

Your approach may be somewhat beyond the capabilities of us hobbyists, but it is very interesting nonetheless. In particular, although I was pleasantly surprised to see that you could use such an obvious and simple objective function (basically just "how well it walks"), I am not yet able to master how this objective function can be effective approximated for the surrogate optimization. It isn't intuitive to me that such an approach would work. I'll keep studying it though!

One more down to earth thing struck me that you're doing and could be of general use for advanced hobbyists... I imagine that gyros are normally used to correct joint positions only using the 'P' portion of your PD correction scheme (though I could be wrong). Do you find that using the gyro derivative term along with a weight (Kd) is very helpful in practice? If so, that idea could probably be incorporated into hobby bipeds using gyros without too much extra work.

Thanks again for sharing your research with us. It's nice when a community has a broad range of expertise, all the way up to deep-thinking researchers like yourself.
Thanks for posting the link to your paper SK, that's a very impressive project you have there.

As I see it, the most important part of the core of your walking gait is the movement of the ZMP across the feet. Your paper illustrates a very nice way of taking a core concept like that and systematically reducing it for optimization and tuning to a manageable number of dimensions.

Your approach may be somewhat beyond the capabilities of us hobbyists, but it is very interesting nonetheless. In particular, although I was pleasantly surprised to see that you could use such an obvious and simple objective function (basically just "how well it walks"), I am not yet able to master how this objective function can be effective approximated for the surrogate optimization. It isn't intuitive to me that such an approach would work. I'll keep studying it though!

One more down to earth thing struck me that you're doing and could be of general use for advanced hobbyists... I imagine that gyros are normally used to correct joint positions only using the 'P' portion of your PD correction scheme (though I could be wrong). Do you find that using the gyro derivative term along with a weight (Kd) is very helpful in practice? If so, that idea could probably be incorporated into hobby bipeds using gyros without too much extra work.

Thanks again for sharing your research with us. It's nice when a community has a broad range of expertise, all the way up to deep-thinking researchers like yourself.
DerekZahn
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 141
Joined: Wed Mar 16, 2005 1:00 am
Location: Boulder CO, USA

Post by SK » Fri Feb 09, 2007 6:32 pm

Post by SK
Fri Feb 09, 2007 6:32 pm

First off, I have to clarify a possible misunderstanding: I´m just one of a few students having the honor of taking part in the Darmstadt Dribblers team (which consists of > 10 people).
I mainly work on self localization and GUI for our robots, so I can take no credit for the great work on motion optimization that is described in the paper.
That being said, what I know about the low-level motion of the robot is more along the lines of the basics and intuition than an in-depth understanding of the mechanics and mathematics. I´ll ask about the D term used for gyro correction though, but it might take a few days. :)
First off, I have to clarify a possible misunderstanding: I´m just one of a few students having the honor of taking part in the Darmstadt Dribblers team (which consists of > 10 people).
I mainly work on self localization and GUI for our robots, so I can take no credit for the great work on motion optimization that is described in the paper.
That being said, what I know about the low-level motion of the robot is more along the lines of the basics and intuition than an in-depth understanding of the mechanics and mathematics. I´ll ask about the D term used for gyro correction though, but it might take a few days. :)
SK
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 105
Joined: Mon Jun 26, 2006 1:00 am
Location: near Frankfurt/Main, Germany

Post by DerekZahn » Fri Feb 09, 2007 6:57 pm

Post by DerekZahn
Fri Feb 09, 2007 6:57 pm

Thanks SK! I bet it's a lot of fun to be part of a team like that. Now, go learn everything about what your team is doing then come back here and teach us :D
Thanks SK! I bet it's a lot of fun to be part of a team like that. Now, go learn everything about what your team is doing then come back here and teach us :D
DerekZahn
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 141
Joined: Wed Mar 16, 2005 1:00 am
Location: Boulder CO, USA

Post by DerekZahn » Fri Feb 09, 2007 7:47 pm

Post by DerekZahn
Fri Feb 09, 2007 7:47 pm

Bullit, that Wabian 2 is a pretty amazing robot, no doubt about it. Having that torso joint roughly in line with the hip joints seems to add an incredible degree of smoothness to its movements.

I'd buy one but the shipping is probably kind of expensive. Ha ha!
Bullit, that Wabian 2 is a pretty amazing robot, no doubt about it. Having that torso joint roughly in line with the hip joints seems to add an incredible degree of smoothness to its movements.

I'd buy one but the shipping is probably kind of expensive. Ha ha!
DerekZahn
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 141
Joined: Wed Mar 16, 2005 1:00 am
Location: Boulder CO, USA

Post by robbybot » Sat Feb 10, 2007 11:47 pm

Post by robbybot
Sat Feb 10, 2007 11:47 pm

hi derekzhan, heres alink to the robovie fast walking and looking more stable - quite impressive:

http://www.vstone.co.jp/top/movie/robot ... 3aruki.mpg

i love the video of the japanese robot with the pelvis, i was thinking of how to implement it in a simpler way for our robots and the only thing i can think of that ive seen is the swashplate on a r/c model helicopter. especially the ones that use the 3 servo direct link called ccpm. these 3 servos are controlled as one entity via special settings on the tx but as i looked at my heli i realised the effect of the tx inputs on the swashplate was very "waist movement like". i know zip about programming so id have to leave others to theorize on the associated headaches this kind of control system would incur, but just a thought :wink:
hi derekzhan, heres alink to the robovie fast walking and looking more stable - quite impressive:

http://www.vstone.co.jp/top/movie/robot ... 3aruki.mpg

i love the video of the japanese robot with the pelvis, i was thinking of how to implement it in a simpler way for our robots and the only thing i can think of that ive seen is the swashplate on a r/c model helicopter. especially the ones that use the 3 servo direct link called ccpm. these 3 servos are controlled as one entity via special settings on the tx but as i looked at my heli i realised the effect of the tx inputs on the swashplate was very "waist movement like". i know zip about programming so id have to leave others to theorize on the associated headaches this kind of control system would incur, but just a thought :wink:
You and your friend are in an open field and are confronted by a hungry lion.The lion starts to charge and it is clear you must run.What should your immediate goal be?Some say "Outrun the lion."Others say "Outrun your friend."
robbybot
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 55
Joined: Tue Jan 23, 2007 1:00 am
Location: wales , uk

Post by SK » Sat Feb 17, 2007 9:20 pm

Post by SK
Sat Feb 17, 2007 9:20 pm

DerekZahn wrote:Thanks SK! I bet it's a lot of fun to be part of a team like that.

It sure is, it´s great to have the opportunity to learn so much and have fun at the same time.

Now, go learn everything about what your team is doing then come back here and teach us :D

Well learning everything is probably a bit much, I got enough work with the stuff I´m responsible for already. ;)
I asked about the PD control with the gyro information. The robot uses the approach proposed by Hajime Sakamoto ( http://www.hajimerobot.co.jp/ ) who built the hardware. Taking into consideration his years of experience and the very good stability of the robot, there was little reason to play around with the gyro corrections, thus the derivative term was never switched off/unused.
So at least for our hardware using the derivative term works well, if your hardware provides useful values and it´s not too much of a fuss to implement, it certainly is worth playing around with.
DerekZahn wrote:Thanks SK! I bet it's a lot of fun to be part of a team like that.

It sure is, it´s great to have the opportunity to learn so much and have fun at the same time.

Now, go learn everything about what your team is doing then come back here and teach us :D

Well learning everything is probably a bit much, I got enough work with the stuff I´m responsible for already. ;)
I asked about the PD control with the gyro information. The robot uses the approach proposed by Hajime Sakamoto ( http://www.hajimerobot.co.jp/ ) who built the hardware. Taking into consideration his years of experience and the very good stability of the robot, there was little reason to play around with the gyro corrections, thus the derivative term was never switched off/unused.
So at least for our hardware using the derivative term works well, if your hardware provides useful values and it´s not too much of a fuss to implement, it certainly is worth playing around with.
SK
Savvy Roboteer
Savvy Roboteer
User avatar
Posts: 105
Joined: Mon Jun 26, 2006 1:00 am
Location: near Frankfurt/Main, Germany


11 postsPage 1 of 1
11 postsPage 1 of 1