Types of AI
What does AI look like and what is considered AI?
You might by now know some sort of definition of AI or kind of got a grasp of what AI can be (if not read “What the hell is AI”). So here is a quick summary of all the different types of AI.
Approaches to implement AI have resulted into two major paradigms: symbolic and sub-symbolic.
Symbolic AI
Symbolic approaches model a problem space with tokens or symbols that are humanly readable. This problem space is then processed by the AI programs. The symbols themselves are therefore manipulated and processed. Because of the symbolic nature the AI programs can be completely understood by humans. These programs are often called Expert Systems, Rules engine, Knowledge based AI or Knowledge graph.
They were the first paradigms that found usage in the past and are therefore also called Good, Old Fashioned Artificial Intelligence (GOFAI). In theory they try to solve modeled problems in the same abstract way humans think and would solve problems.
Read “Symbolic AI” to find out more about symbolic AI and expert systems.
Sub-symbolic AI
The sub-symbolic paradigm also consists of symbols but they are not really human interpretable. These symbols represent more abstract components that can accomplish tasks suitable for AI related tasks. The whole idea about this paradigm is to build the parts that make human cognitive functions possible on a more low level abstraction. It is highly inspired by biology (neurobiology, genetics, evolution) and psychology. This paradigm has found a lot of usage and popularity in the recent years. Neural networks are positioned in sub-symbolic AI.
Read “Sub-symbolic AI” to find out more about sub-symbolic AI and neural nets.
Conclusion
Both paradigms have their respective use cases. Choosing the right model is what determines the success of the corresponding AI.
The domain of searches is a good example to show this.
If you want to search for a fitting schedule to manage lectures for different people holding the lectures, an expert system might be a good choice. The expert system can successfully handle all constraints and the domain is well enough known that somebody can code all constraints into the program. Also the effort put into it can be quite small compared to the scenario. The AI should just find any solution that works, so the schedule can be published.
On another hand if you have a super complex game and you are searching for a way to win, it might make sense to use a neural net. With a huge problem space and a lot of possible combinations of actions and states the game can have (e.g. Go), the a neural net would try to predict and approximate moves to get faster and more reliable results instead of calculating or simulating to some degrees all possible moves from the current game board. The neural net might still take some time to be working well enought but it sure will be faster then calculating all those combinations.