3 ms·
> Title is misleading. Traditional AI with subroutines for each subtask would have no problem with this. The easiest way to code this with traditional methods
by unoti 7y ago
> Title is misleading. Traditional AI with subroutines for each subtask would have no problem with this.
The easiest way to code this with traditional methods would be to still use deep learning for the image recognition part of it. The input to the agent at each step includes an array of numbers representing the pixels on the screen. So it doesn't get to see the 3d terrain directly; it sees a projection into 2d, and needs to recognize the 3d terrain and objects. And from there it needs to synthesize that into a map of the situation-- for example, the presence of lava, water, cliffs, and hostile monsters.
Doing that kind of object recognition without deep learning would be pretty onerous. The strategy and planning parts of this, though, I agree would be comparatively straightforward. Further, even if it started with a representation of the actual terrain blocks in a 3d model, the synthesis step into a representation of what the overall situation is-- that also is much more easily done with deep learning than with traditional methods.
Back in the day I wrote a highly effective bot for playing Star Wars Galaxies which would run missions unattended. It was created exclusively with hand-coded routines and a big nested state machine. It included a hand-written OCR library for reading the compass coordinates and accepting missions from the mission terminal in a particular direction. It knew a pre-recorded path for navigating in and out of town to and from the mission terminal. It used the little red dots on the radar scanner to determine the presence of nearby hostile creatures and mission targets. I ended up selling this system to a gold farming outfit in China; it was only available for sale to the public for a handful of days.
I bring this up because this bot for SWG didn't contain any modern machine learning or deep learning techniques, and it worked great. But if it weren't for the coordinates displayed on the radar (used for navigating through the maze of town back to the mission terminal), along with easily discernible red dots on the radar indicating enemy presence (used for knowing which direction to face during combat), I'd have been at a loss for the complex object recognition / situation recognition necessary to turn this into a task solvable by a straightforward nested state machine.