Intelligent Agent for Solving Ravens Progressive Matrices Problems
How quickly can you solve this IQ test problem?
My AI agent can solve it–and many like it–in 55 milliseconds!
Raven’s Progressive Matrices (or RPMs) are visual analogy problems that have been used to measure abstract reasoning and general intelligence in children and adults for over 80 years. The problems require recognition and application of a range of different analogies, often in combination, in order to find the solution. Many of these tactics are intuitive for a human being… but these are not easy for today’s artificial intelligence.
In Georgia Tech’s Knowledge-Based AI course, I and other students learned about the theory and methods of cognitive systems, artificially intelligent agents that attempt to solve problems in a human-like manner. The coursework begins with tried-and-true foundations like produciton systems and builds up to more complex topics such as how an AI agent can perform planning, understanding, and even commonsense reasoning. Along the way, the class project is to build an AI agent that solves increasingly-difficult RPM-like problems. (I say “RPM-like,” since the original matrices were not used due to copyright.) As it turns out, students in this class have been quite successful at advancing the progress of research in this area; check out this paper for details.
My class project was written in Python 3 with minimal support libraries (just Pillow for the image processing and NumPy for the math); no pre-written Computer Vision algorithms. The final version of my AI agent was able to correctly answer 129 of the 192 test problems we were given; half of which were hidden/unknown to us. It computes all these solutions in about 4 minutes… which is a heck of a lot faster than I could ever solve them!