Algorithm for ARC Challenge
🌈 Abstract
The article discusses the Abstraction and Reasoning Corpus for Artificial General Intelligence (ARC-AGI) challenge proposed by François Chollet, an AI researcher from Google. The ARC-AGI challenge is designed as an IQ test for AI systems, where the goal is to solve various transformation tasks on 2D arrays of digits without relying on memorization-based approaches. The author proposes a theory of intelligence based on thinking in terms of comparable properties rather than objects and actions, and discusses how this approach can be applied to solve the ARC-AGI challenge.
🙋 Q&A
[01] The ARC-AGI Challenge
1. What is the ARC-AGI challenge?
- The ARC-AGI challenge is a test designed to assess the capabilities of AI systems in solving transformation tasks on 2D arrays of digits.
- Each task involves transforming an input array into an output array according to a specific transformation, with only a few examples provided for the AI system to figure out the transformation.
- The challenge is designed to resist memorization-based approaches, as each task includes a novel transformation that the AI system must learn to solve.
2. What are the key characteristics of the ARC-AGI challenge?
- The input and output arrays are limited to a maximum size of 30x30 and can only contain digits from 0 to 9.
- The transformation between the input and output arrays may involve changes in size, digit positions, and digit values.
- Only a few examples are provided for each task, requiring the AI system to generalize the transformation from limited information.
- The best score on the Kaggle leaderboard for the challenge is currently 41%, far from the 85% threshold that the author believes would demonstrate novel approaches and contribute to the development of Artificial General Intelligence (AGI).
[02] The Author's Theory of Intelligence
1. What is the author's theory of intelligence based on?
- The author's theory of intelligence is based on the need to shift the focus from thinking in terms of objects and actions to thinking in terms of comparable properties.
2. How does the author's theory of intelligence apply to the ARC-AGI challenge?
- The author suggests that instead of thinking in terms of "objects" and "transformations", the AI system should focus on analyzing the properties of the input and output arrays, such as bounding rectangles, coordinates, "color" (digit values), scale factors, and the relationships between these properties.
- By identifying the changes in these properties between the input and output arrays, the AI system can infer the underlying transformations, such as movement, scaling, and cropping, without relying on memorization-based approaches.
- The author proposes that the AI system should consider multiple hypotheses for the transformations and use a process of elimination to narrow down the possibilities based on the observed changes in the properties of the input and output arrays.
3. What are the key aspects of the author's proposed approach to solving the ARC-AGI challenge?
- Analyze the input and output examples to collect as much information about the objects (digit patterns) as possible, including their properties and relationships.
- Use the observed differences between the input and output to filter out transformations that are not involved, while keeping multiple hypotheses at this stage.
- Finalize the proper hypotheses by going through the other examples and identifying the sequence of basic transformations required to solve the task.
- Develop an "Expecto" class to specify the expected properties of the objects in the test input, and apply the identified transformations to the test input.
- The author proposes a list of 18 basic transformations, such as overlapping, decomposition, movement, coloring, mirroring, and scaling, that can be combined to solve the ARC-AGI tasks.
[03] Implementing the Proposed Approach
1. What is the author's progress in implementing the proposed approach?
- The author is working on implementing the proposed ideas but the process is slow.
- The author is open to collaboration and invites anyone interested in helping with Python programming and cracking the ARC-AGI challenge to join the effort.
- The author believes that the proposed approach, based on the theory of intelligence focused on comparable properties, has the potential to demonstrate novel approaches and contribute to the development of Artificial General Intelligence (AGI).