Slashdot Mirror


Mutating Animations

Weird_one writes "Discover magazine's current issue has an intriguing article involving using genetic algorithims to evolve an animation of a walking individual."

17 of 218 comments (clear)

  1. Just wait for the game with this feature... by anttik · · Score: 5, Interesting

    When CPU's will become fast enough to use this level of learning on the fly, it will be great for gamers. Maybe the enemies don't have to learn walking, but learning strategy is a different thing. If they learn strategy by themselves and not by pre-programmed AI, I bet they will be more creative and a tougher opponent.

    But I think I'll still have to wait like 20 years for that.

    1. Re:Just wait for the game with this feature... by Anonymous Coward · · Score: 4, Interesting

      "When CPU's will become fast enough to use this level of learning on the fly"

      This does not have to be done real time to work. Most likly you would just need to compile the AI once for an enviroment and just record the results of the last generation to a file to be used later.

    2. Re:Just wait for the game with this feature... by fo0bar · · Score: 5, Interesting

      Download the E3 demo of Half-Life 2. In it there is a section where people are fighting alongside Gordon. This didn't look too spectacular until the presenter announced that these characters were NOT moving according to a script. The characters were given an objective (help Gordon get to point X), but were not given a path to take or any knowledge about the obstacles in the way. At that point my eyes opened wide, watching these people duck behind debris, covering fellow fighters, shoot-move-shoot-move... the movement and logic that they possessed looked either preprogrammed (which again, they say is not the case), or very human-like.

    3. Re:Just wait for the game with this feature... by arvindn · · Score: 4, Insightful
      I'll assume that you're referring to the game adjusting to your playing style, because there are no real-time CPU constraints if you just want to evolve a generic entity. If that's the case, the more serious problem would probably be getting sufficient user input. Genetic algos usually take hundreds, sometimes thousands of generations, and since you cant wait for the user to play the game thousands of times you've got to improvise.

      In the case of board games, we've had learning algorithms for a long time now. I remember Fritz4 (chess program) having it 6-7 years ago.

    4. Re:Just wait for the game with this feature... by mr3038 · · Score: 4, Insightful
      Download the E3 demo of Half-Life 2. In it there is a section where people are fighting alongside Gordon. This didn't look too spectacular until the presenter announced that these characters were NOT moving according to a script.

      Call me a skeptic, but I don't swallow that immediately. When Black and White was still in production there was some press that stated that the game had such a great AI that if the developers dropped a ball to the citizens, they started to play soccer by their own, assisted by the AI only. Did anybody ever see anything even remotely near that level of intelligence in the final release?

      Yes, that scene could really use AI to move all the characters but it remains to be seen if the scene is constructed specially so that AI can survive on its own or was the AI really intelligent? Don't expect too much. It's AI instead of I for a reason.

      --
      _________________________
      Spelling and grammar mistakes left as an exercise for the reader.
  2. If you liked that.... by Great_Jehovah · · Score: 5, Interesting
    Check this out: http://q12.org/phd-movies.html

    Not quite as slick but a lot more amusing.

  3. These must be stopped! by questamor · · Score: 4, Funny

    Genetic algorithms must be stopped, and NOW

    Who knows how soon it will be before these things gain the ability to work in the real world. It won't be long I tell you, before you look around and the entire PLANET will be full of these devilish unnatural creatures, all based on GENETICS.

  4. Jobs by Anonymous Coward · · Score: 4, Funny

    But I think I'll still have to wait like 20 years for that.

    Not if you listen to Steve Jobs in senile old age...
    "This 2.0 GHz G6 runs at 1000 times the performance of an 8.9 GHz Pentium X!"

  5. Heathens! by Anonymous Coward · · Score: 4, Funny

    Evolution is a fraud made up by the godless devil-worshippin' computer scientists! Only God has the power of algorithm creation! The Bible clearly states in John 24:5 that God is the creator of the binary search, the hash table, the half-adder, the for loop, and matrix multiplication! You will all burn in Hell!

  6. Re:sceptical by dustman · · Score: 5, Interesting

    How would this be any easier than doing keyframed animation with inverse kinematics?

    I read something about this idea a few years ago. I'm pretty sure it was by the guy that did BMRT... a thesis paper of his or something.

    Basically, the redid the animation of "Luxo" in pixar's animation short. "Luxo" is the bouncing desktop lamp. Making animated characters (even those that aren't human) move "nicely" is quite hard. It takes a lot of work.

    For their project, the specified the constraint: That Luxo must move from point A to point B, and that's all. The only input the model had was "how much force to use on each joint at each particular time". So, they were animating its "muscles" with a genetic algorithm, and also running a physics simulation on the system. (They assigned mass to the individual components, etc).

    It evolved several techniques of locomotion: The "standard" bouncing hop (which the "real" luxo does), dragging itself across the table, somersaulting, etc...

    In short, they came up with good looking animation, without requiring much user input. And in the end, they had a genetic algorithm which could make Luxo walk any distance, without requiring the work of an animator.

    This is important, because although its relatively easy to just loop an animation, it looks rather unnatural.

  7. Coolest Java applet ever: BioBloc by FleaPlus · · Score: 5, Interesting

    The other day I stumbled upon what could quite possibly be the coolest Java applet ever. Once you start the applet, you assemble "bioblocs," which are 3D creatures assembled from connected blocks. Once you've assembled your creature, you can have it use genetic algorithms to try to learn how to most effectively walk, run, jump, and turn around using the blocks you've given it. I assembled a snake-like creature the other day, and was intrigued to see that it evolved a walking movement very similar to that of a sidewinder's.

    In addition to assembling your own creatures, you can also load creatures that others have previously assembled, as well as enter your creatures into contests. A lot of the previously assembled creatures are -very- impressive, with movements quite similar to those evolved in nature.

  8. Its more difficult than one thinks... by arvindn · · Score: 5, Informative
    In simple textbook situations illustrating the genetic algorithm, we simply represent the solution space as a string of bits, and cut it at some point and recombine them to form offspring. However, real world applications are a lot more complex. That's because an arbitrary cut-n-paste of solution strings is likely to result, with extremely high probability, in an invalid string. This is the problem of having a sparse solution space. In this particular example, suppose you represent the figure as a sequence of pixels and try to apply a genetic algorithm on that representation. You'll never get anywhere, because most sequence of pixels are meaningless.

    What needs to be done to make the GA work is to develop a solution space representatin in which each parameter can be varied independently of the others. In this case:

    The character's body plan involved 700 distinct parameters that needed to be optimized to teach it how to walk like a human. .

    So its not like the computer learnt to walk by itself. There's a lot of hard work involved before you can even start the GA. Congrats to Reil.

    <shameless plug> On a slightly related note, I'm about to start implementing a GA to develop a killer AI for gtkboard . If you are interested in coding a GA, you are welcome to join :) (Of course it won't be anywhere as complex as the one in the article, but still lots of fun.)

  9. Chrichton: Prey by daedel · · Score: 4, Informative

    I just got finished reading this book, and had to chuckle at seeing this article. The book is about a group of nanomachines given agent based programming called PRED/PREY which uses something like the genetic programming spoken of in the article. Of course things go awry in there somewhere, but it is an interesting, and moderately technical fiction on this subject.

  10. Video Clips from Natural Motion by gopher_hunt · · Score: 5, Informative

    Heres the link to what they were talking about in the article. Walker Evolution

    This next one shows off a lot more of what they can do. Mainly they abuse their models.
    Natural Motion Show Real (14.5M Divx)
    I love the tennis ball in the crotch clip. Insert bob saget joke here.

  11. An incredibly fun example of this from 1997 by captainktainer · · Score: 4, Informative

    This freeware program from Jeffrey Ventrella is an open-ended version of this. Small wormlike creatures evolve to find the most efficient, fastest method of locomotion through liquid. You can change various parameters to make it easier or harder for the little swimmers.

    DarwinBots makes use of true genetic algorithms for propulsion, attack, feeding, social behavior, and evolution of multicellularity. I like Darwin Pond better, personally, because it's more stable and DarwinBots doesn't have the "cuteness" factor.

    Because these figures are engaging in human-type motion in a reasonably believable 3D environment, I can understand how it's important- however, it isn't truly revolutionary in nature. It's just another step in the evolution (appropriate, ne?) of genetic algorithms.

  12. crawling or doing somersaults by aardwolf204 · · Score: 4, Funny

    "We got some creatures that didn't walk at all but had these very strange ways of moving forward: crawling or doing somersaults."

    #include beer.h

    --
    Im dreaming ofa big bndwdth, That can resist the /.crowd.May ur days b merry & bright & may al
  13. Don't get too excited by SystematicPsycho · · Score: 4, Interesting

    Genetic algorithms work by minimizing the amount of searching needed in a search space by "evolving" candidate solutions and only evolving new ones from the best of the old ones. A candidate solution is evaluated against a fitness (of objective) function that assigns a fitness to a candidate solution.

    Don't get to excited about the walking man - the difficulty and also art in Genetic Algorithms is finding a way to represent a candidate solution. The walking man isn't difficult to represent. To make it simple, pretend that the representation is like, work out a way to order the numbers 1..10 - where 1 == man crawling and 10 == man walking and the rest of the numbers in between are ordered to represent a certain posture. The genetic algorithm then searches through all the combinations and permutations of the numbers 1..10 until they are ordered - btw, instead of drawing numbers let's associate a number with a posture.

    Now with this problem - think of a pool of numbers, each number associated with a posture and the Genetic Algorithm searches through the pool (of 100) until it finds the numbers 1..10 in order all standing next to each other.
    ---

    --
    Analytic & algebraic topology of locally Euclidean meterization of infinitely differentiable Riemmanian manifold