rouncer at March 2nd, 2013 13:05 — #1
say your ann is set up with its outputs controlling game mechanics (like camera movement, character animation) im not sure what the inputs would be, but inputs would be important in making it smart.
so the idea is, you sorta hand animate a 3d game movie and backpropagate it through the neural network, to achieve some kind of natural looking hand placed action.
has anyone ever made a game this way before? its a new kind of game creator system. (even non programmers could use it)
Youd have to sit there handmaking the animation for ages, and train it for a while, i imagine, but it really could be worth the effort, there would be no games like it.
I could use some help deciding what outputs (and more importantly, inputs) would be important to include.
stainless at March 3rd, 2013 06:40 — #2
I did some research into a game creator that worked on AI
I used genetic algos and hand drawn graphics, there were two layers to the ai. The evaluation function played the game.
The trouble was that it was so slow, a single generation took 2 hours.
rouncer at March 3rd, 2013 14:19 — #3
backprop would be faster than evolution... but still youd have to handplace all the animation, so thats what would take a while.
Thanks for the respectful reply, I got little from gamedev.net - if you come up with something new, you are often put down for it.
smile_ at March 3rd, 2013 15:46 — #4
Backprop (and any other gradient descend method) works only for smooth fitness function with one global minimum, while genetic algorithms can be used for more general case. I think motion control falls into second category so backprop can't help much.
thehermit at August 13th, 2013 02:54 — #5
You can help with multiple minima/non-smooth functions by using annealing - basically, you dynamically tune the learning rate over time, so you're not taking infinitessimal steps but instead jumping around on a sort of coarse-grained landscape to start.
There's a fast version of genetic algorithms called 'CMA-ES' that uses the statistics of the fitness/variable correlations to get huge speedups in low-dimensional problems (N=100 or so) that might be good enough to do this kind of thing in reasonable timescales, but you're really going to have to make sure that your problem fits into that N=100.