The AIX Minecraft Project Makes Thinking Software Possible
Written by Nikos Vaggalis
Wednesday, 23 March 2016
Microsoft researchers set out to make a difference by trying to make a Minecraft character climb a virtual hill. It might sound as not that big a deal, but it is. The difference arises out of trying to program it to learn, as opposed to programming it to accomplish specific tasks.
Until now a neural network has been supplied with millions of preclassified data sets in order to be taught how to do something, So called supervised learning resulted in networks only learning what we already knew how to do.
While IBM's DeepBlue won against Kapsarov in the game of Chess by being programmed to play by searching ahead and evaluating moves, Google's Deep Mind AlphaGo played by combining multiple levels of neural networks and reinforced learning to achieve the extraordinary.
"AlphaGo learned to play Go from novice to top level in just a few months - mostly by playing itself. No programmer taught AlphaGo to play in the sense of writing explicit rules for game play"
Similar principles apply to Microsoft's Minecraft-inspired AIX project.
Just as human players are free to explore Minecraft's open world, discovering, building and cooperating on the way, the same is being attempted for AI agents too; to think and act like humans who rely on past experience and intelligence without having prior knowledge of their surroundings or any other data fed to them. Using just the pixel data from the game reinforcement learning, Q learning to be exact, is being used to work out what behaviours are best in accomplishing the task. No external guidance is provided. This is much like DeepMind's earlier attempts at learning to play arcade games using reinforcement learning which was very successful. The big difference is that Minecraft presents a much more complex virtual world.
It's the equivalent of dropping Discovery Channel's Bear Grylls in a remote and isolated island having to survive with only a compass and a rope, further having to interact with the environment and devise his way out by just relying on his experience and intuition. If a program can do something analogous to this, I'm not certain if it should still be called a program.
So behind the, simple to us humans, task of climbing a hill, there is a lot going on to make AI to perform the same.
These software-based agents, in which software is dressed up as robots, have an additional advantage over their hardware counterparts. Making software is easy, cheap, disposable and doesn't physically break so they are ideal for simulating AIs navigating in an unknown environment.
That is the purpose of tools like Gazebo; to build cheap disposable robots in contrast to the costs of in building a real world Atlas robot that exhibits the same kind of intelligence in exploring,discovering and moving through its surroundings like the agents of the AIX platform do, for only to fall and break. Software is not prone to those kind of problems
Of course this kind of advanced intelligence opens the doors to a new world order, that of the thinking machines, and it won't be long until their arrival comes as Microsoft open sources the platform to maximize brainstorming and collaboration. As Evelyne Viegas, the director of artificial intelligence outreach at Microsoft Research explains:
“We’re looking for opportunities where we can really help accelerate the pace of artificial intelligence innovation in a way that is going to be very close to the real world, with real experiences and real data,”
Microsoft Research also plans to provide SDK's and APIs so that the engine can be imported and utilized in programs.
A very interesting detail is that the platform will be able to run on single moderate power laptops, without needing multi-GPU enabled machines, thus its ubiquity seems guaranteed.
At last year's JavaOne Anil Gaur, vice president of Oracle's Cloud Application Foundation group, announced a survey to help determine priorities for the revised road map for Java EE. The survey r [ ... ]