@GamersDreamGame The above video is showing the AI playing on levels it was not trained on. In other words, never seen before. The inputs to the neuronet is the environment and the output are the button pushes that any person would use. It doesn't understand can't move forward.
@lzrd0113 For this network, I used a combination of a genetic algorithm and simulated annealing algorithm. Basically I let the genetic algorithm run for a number of generations, then I took a group of the best and ran them through a simulated annealing algorithm. Using the genetic algorithm alone was taking too long to train. The simulated annealing was much faster but often got stuck more. So I combined the two.
@mutehero7 It might, however what I noticed is that as it was trained it would make large leaps and then very little progress. That continued the longer I trained it. Of course the intervals between each change became longer and longer, while the leaps in progress became smaller and smaller. I'm not sure that training it for a year would make it that much better. Working on more efficient training algorithms would probably be better.
@pascalkn The input is a 9x9 2d array merged to contain tile/enemy information normalized between 0 and 1. I also included some status information like, can mario jump (0, 1), mario status (0 - small, .5 - large, 1 - fire). You can go to marioai.org and download the software that I used. All my inputs are real values between 0 and 1 and my outputs are real values between 0 and 1 (anything greater than .5 presses a button any thing less does not).
Does it get a small punishment for each jump / fire? Because it seems to randomly jump all the time as if it's a free operation.
LegendLength 1 month ago
The interessting part is to see how it would behaiv on a map that it has never played before..
But I'm guessing this does not take in the enviroment variables except for like "cant move forward" and such?
GamersDreamGame 2 months ago
@GamersDreamGame The above video is showing the AI playing on levels it was not trained on. In other words, never seen before. The inputs to the neuronet is the environment and the output are the button pushes that any person would use. It doesn't understand can't move forward.
aruggles 2 months ago
How did you train it?
lzrd0113 9 months ago
@lzrd0113 For this network, I used a combination of a genetic algorithm and simulated annealing algorithm. Basically I let the genetic algorithm run for a number of generations, then I took a group of the best and ran them through a simulated annealing algorithm. Using the genetic algorithm alone was taking too long to train. The simulated annealing was much faster but often got stuck more. So I combined the two.
aruggles 9 months ago
@aruggles See my Q-learning version :D
eerikk 2 months ago
Has it peaked in skill or would it improve if it continued learning over the course of, say, a year?
mutehero7 9 months ago
@mutehero7 It might, however what I noticed is that as it was trained it would make large leaps and then very little progress. That continued the longer I trained it. Of course the intervals between each change became longer and longer, while the leaps in progress became smaller and smaller. I'm not sure that training it for a year would make it that much better. Working on more efficient training algorithms would probably be better.
aruggles 9 months ago
@aruggles Interesting. Thanks.
mutehero7 9 months ago
What are the inputs of the network ?
I used NN a for the computer ships in my game.
pascalkn 1 year ago
@pascalkn The input is a 9x9 2d array merged to contain tile/enemy information normalized between 0 and 1. I also included some status information like, can mario jump (0, 1), mario status (0 - small, .5 - large, 1 - fire). You can go to marioai.org and download the software that I used. All my inputs are real values between 0 and 1 and my outputs are real values between 0 and 1 (anything greater than .5 presses a button any thing less does not).
aruggles 1 year ago
Very nice, your mario playes pretty good.
pascalkn 1 year ago
@pascalkn Thanks. It took over 48 hours to train this particular network.
aruggles 1 year ago
noce
felter9 1 year ago