AI (artificial intelligence) is a great subject so I thought I would discuss what little I know about it. Let me first tell you a little about my educational background, I have my bachelor’s in Information Science and I didn’t take any AI classes in college. My knowledge about AI comes from miscellaneous web articles and the three random books I have own the subject.
AI encompasses a huge number of topics ranging from getting a computer to drive a car to trying to find fraudulent credit card charges. There are many different types of AI algorithms and techniques. Some techniques require a vast amount of historical data while others do not. Videogame AI usually has to be fast, to simulate the response of a real human. In my opinion most videogames have only a very basic AI. Many videogames like Mario don’t have any AI and it is just the player versus the environment.
People sometimes talk about neural networks or genetic algorithms but they don’t usually work well for videogames. Neural networks usually have many inputs and only one output. They are typically used to output an answer like yes or no. Neural networks are also very complicated to setup and test.
Genetic algorithms find an optimal or near-optimal solution to a problem by generating random actions. Granted the problem could be “how to win a game of Magic” but encoding a game of Magic into a genetic algorithm would be extremely difficult. Usually genetic algorithms are encoded as strings, although this is not a requirement. The strings are split and combined to form new strings. Each string is evaluated until a solution is found.
Join me next time as I continue our journey into AI.