As I mentioned in my last post, this one will be about Machine Learning.
First of all, let's start by defining it, which I did not do with A.I since it was straightforward:
According to the online course taught by Stanford University on Coursera, Machine learning is the science of getting computers to learn, without being explicitly programmed for it.
It is the study of computer algorithms that improve automatically through experience and has been central to AI research since the field's inception.
This computer science subfield grew out of work in A.I and represents new capabilities for computers. For instance: Netflix product recommendations, handwriting recognition etc..
Before starting to talk about it in Gaming, I should explain on what it is based.
Machine Learning uses a lot of Artificial Neural Networks (ANNs): informations processing paradigm that is inspired by the way biological nervous systems, such as the brain, process information. The key element of this paradigm is the novel structure of the information processing system. They are mainly used because they have adaptive learning, self-organisation.
What about ML in Game Development ?
Below this text, you will find a video showing how a machine learned to play the game Mario through Neural Networks. It explains how ANNs actually simulate the human brain and keeps learning by playing until finishing a level without dying in the game.
You can see how connections are used in Neural Networks to make the machine learn what to do and when in the game, depending on the environment (enemy, obligation of jumping etc..)
Let's talk about larger games. Here are some examples of implemented ML:
However, this is only a small number of major examples and there not so much out there in games such as FIFA, Rocket League or Call of Duty. Why so ?
In my opinion, it is simply a design-based choice. It is actually not an issue whether it' is difficult but rather a question of whether it should be done at all, and how it would impact the player's experience.
Would you enjoy it if the computer quickly learned how to counter your particular strategies, and beat you? Of course not.
It is better to simply make the enemy "appear" intelligent because that is all that matters to a player.
Hence, the result usually gets much better with simple algorithms. Especially when you think about these big titles, the time spent implementing Machine Learning could be put to better use by delivering better graphics, gameplay etc..
At this point, ML application to games is still rare. However, with Virtual Reality booming and new features coming every year, I guess sooner or later this will be often used in games.
Ahmed Ahres, 23.