Advertisement

A thought

Started by July 17, 2003 05:55 PM
15 comments, last by Blechx 21 years, 7 months ago
How hard would it be to create a balance-ai? To clerify, an ai that can keep a human body like physical model standing if puched and likewise. Im thinking of the physics used in for example Unreal2k3 but applied to a "live" body. Could it be possible to make it walk, climb? This would enable pretty cool gameplay effects
Humans (as well as many animals) have a balancing system in their ears.
It works by ''measuring'' the fluid amount in three axis.
I believe a device called ''gyroscope'' serves a similar purpose.

I don''t know if this helps, but balance is not an intelligent feature per se.
Advertisement
I once downloaded some C code that demonstrated a nural network learning how to balance a pole. Very fascinating... not sure if its game related, but it might be fun to "teach your models" how to balance.
http://www.naturalmotion.com/
I think a big problem would be speed. In order to make it work well you *may* have to do a lot of calculations. On top of the fact that it would be just hard to balance the gameplay with it, i.e. when someone punches you and throws you off balance are you allowed to instantly begin running forward and hitting them back or do you have to regain your balance before you can do anything. Obviously if you chose the ladder, it could make the gameplay annoying, as someone with a keyboard can''t balance themselves on a game displayed on the monitor, so the computer would have to do it for you. What would end up happening is you get hit with bullets and you might as well pull your hand away from the keyboard and swear a few times while you wait to get control back. If you let someone instantly get control back then the whole effect may be lost and the model may jerk back and forth while it trys to go back into an animation and just look stupid..or maybe the effect would look cool?
The ragdoll physics in UT2003 are pretty cool but theyre used a lot on dead bodies because you don''t have to worry about any of those issues. I''ve thought about a system like this a lot though and I think it would definitely be cool if you could come up with a good way to move a model without going through animations, and get it to run fast...or has this already been done?
Just my two cents worth!
This problem is one that has been tackled for over half a century in Engineering. Typically one needs to solve a nonlinear stochastic differential equation (which results from having uncertain observations on joint/limb positions and trying to combine these with nonlinear differential equations for the motion of the limbs. Classic examples of such problems are the pole balance and the jointed pole balance.

There have been some interesting solutions obtained to these problems using ANNs to learn a controller (essentially a mapping from input sensor state to action). Additionally, one can use a GA to learn a solution that represents a mapping from states to actions. However, the difficulty with this latter approach is the discretisation of the state and action spaces... as it is not possible to encode an infinitely long string to represent a continuous (bounded) domain.

Once you''ve worked out static balance with your controller, you need to work out dynamic balance that incorporates locomotion... in other words, an agent standing still isn''t very interesting.

Cheers,

Timkin
Advertisement
That was a mouthful.
quote:
Original post by Blechx
How hard would it be to create a balance-ai? To clerify, an ai that can keep a human body like physical model standing if puched and likewise. Im thinking of the physics used in for example Unreal2k3 but applied to a "live" body. Could it be possible to make it walk, climb? This would enable pretty cool gameplay effects


Balancing poles (or brooms) is, for some reason, especially popular in the fuzzy logic world. A search on Google for '"pole-balancing" fuzzy' yields a fairly diverse set of solutions to this problem. I'm not sure how much harder (or easier- there are more actuators to choose from, after all) balancing a humanoid body would be.

Sony has built several humaniod robots which can walk, recover from pushing, etc, although I don't know if they are tethered to a (physically) larger controlling computer system. Again, a search on Google (for 'Sony robot balance') yields a fair selection of information on this subject.





[edited by - Predictor on July 21, 2003 8:31:32 AM]
quote:
Original post by InTheSackMan
I think a big problem would be speed. In order to make it work well you *may* have to do a lot of calculations. On top of the fact that it would be just hard to balance the gameplay with it, i.e. when someone punches you and throws you off balance are you allowed to instantly begin running forward and hitting them back or do you have to regain your balance before you can do anything. Obviously if you chose the ladder, it could make the gameplay annoying, as someone with a keyboard can''t balance themselves on a game displayed on the monitor, so the computer would have to do it for you. What would end up happening is you get hit with bullets and you might as well pull your hand away from the keyboard and swear a few times while you wait to get control back. If you let someone instantly get control back then the whole effect may be lost and the model may jerk back and forth while it trys to go back into an animation and just look stupid..or maybe the effect would look cool?
The ragdoll physics in UT2003 are pretty cool but theyre used a lot on dead bodies because you don''t have to worry about any of those issues. I''ve thought about a system like this a lot though and I think it would definitely be cool if you could come up with a good way to move a model without going through animations, and get it to run fast...or has this already been done?
Just my two cents worth!


The thing is that there would be no animation to get back to The AI aspect is to make the human model capable of running/walking by calculating how their legs should move rather then just kinda slide forward with a walk-animation as in games today. I know this is indeed VERY advanced calculations but i''d sure lie to see it in a demo at least
Don''t sweat it if you can''t make an AI to balance stuff perfectly. Mother Nature can''t even do it. Humans and other animals fall down all the time, even when they try to balance.
You can get one to come close, but perfection shouldn''t be a goal when making AI. Almost by definition, if it can do something perfectly it isn''t intelligent.

This topic is closed to new replies.

Advertisement