+ 1
learning
Once I created AI for Flappy Bird with Genetic Algorithm. When I did that I thought I had to recreate the game itself to train the agents fast besides being able to have information like the positions' of pipes and whatnot. The thing is let's say I will want to have an AI that I need it to learn to play an FPS game or RTS or some other that I cannot just recreate and start building the AI. What do I need to do then if I'm not feeding the AI with visual information using CNN, rather doing it some other way? And would the best approach be just using CNN instead?
1 Answer
+ 2
It is just my intuition that teaching an ML model by processing stream video, would be impossible. If you think about it, the biggest such achievement so far in technology was AlphaGo by Google, and that is a board game where you only need to keep track of the positions of a few pieces on a board.
Video games have a flow just like a board game, but the event loop of the renderer is much quicker there can be several changes even within a second. I think analyzing the visual information with CNN would require tremendous storage and processing power that doesn't even exist in the world.
But video game renderers are also based on some raw data which keeps track of the position of object and other attributes, inertia, state, etc. So I think it would be realistic to analyze snapshots of this data taken in certain time intervals, to predict what will happen next and to avoid unwanted results (like avoid an imminent collision).