The Boundaries of Objectivity


ARCHIE Part Five

An Orthogonal Approach to Artificial Intelligence

Darren Lott
Darren Lott
February, 2025
An Orthogonal Approach to Artificial Intelligence

Previously on ARCHIE...

In Part One  I introduced the ARC Prize Challenge.
In Part Two  We analyzed a simple Puzzle requiring the Action MOVE.
In Part Three  We introduced the PAINT Action and the IF-THEN-ELSE conditional.
In Part Four  We introduced the STROKE Action and Objects that are only partially revealed.

Ei1 Eo1   Ei2 Eo2   ⇨ ?   Ti0 To0

Ei1 Eo1   Ei2 Eo2   ⇨ ?   Ti0 To0

 

Extending ARCHIE's Capabilities

In addition to the previously illustrated Actions, the ARC Puzzles require understanding the idea of EXTEND. This is where the original Object emanates pixels in a direction away from itself. The extended pixels may collide with other Objects on the grid, and several Puzzle variations rely on detecting the rules of these interactions.

For ARCHIE I identified a hierarchy of EXTEND scenarios: Mirror, Connect, and Single Object.
All Mirrors are Connects, and All Connects are Extends.

EXTEND – Mirror

Ei1 Eo1   Ei2 Eo2   ⇨ ?   Ti0 To0

This classic ARC Puzzle illustrates the most specific form of EXTEND – Mirror. To form a Mirror, two Objects must be directly across from one another either Horizontally, Vertically, or Diagonally. Colors must match and the Shapes must be proper reflections for that orientation (e.g. Mirror Objects on the same row will have Flip Horizontal translations of one another. Single pixels Objects fundamentally match this already. ARCHIE notes any Mirror Objects during the Analyze Input phase and records references in the Object's Attributes.

Ei1 Eo1   Ei2 Eo2   ⇨ ?   Ti0 To0

Above is an example of Diagonal Mirrors. Note that Object Mirrors are not just from Border to Border, but can form in any portion of the Grid.

Ei1 Eo1   Ei2 Eo2   ⇨ ?   Ti0 To0

This puzzle might look like Maze or Pathfinding, but is actually using the same Mirror rules as the Puzzles above. Relationships on the Grid and not Color Pairing is at the heart of the concept.

EXTEND – Connect

Ei1 Eo1   Ei2 Eo2   ⇨ ?   Ti0 To0

Connect is an Extend between two Objects. In the above puzzle, the Agent is the Smallest Object, the Direction is from the Smallest to the Largest Object, and the Width is the Object's Width minus 2. Extended Pixels are Teal and will Extend until they collide with another Object.

EXTEND – Single Object

Ei1 Eo1   Ei2 Eo2   ⇨ ?   Ti0 To0

The definition of an Object is modified here to allow Multicolor Objects. We can also see the Width, Color, and Distance of the Extend Pixels differ from any of the previous Mirror Examples.

The Solution for the Puzzle above involves a single Action:
[EXTEND,3,*,S,E,cCount,U]| pCount:4| pHeight:2| pWidth:2| Color:Multi
Interpreting the EXTEND Action parameters reveals more about ARCHIE's ability to generalize:

  • "EXTEND," – This is the Action determining the Handlers and Functions called.
  • "3," – This is the integer designating the color of the Extended Pixels.
  • "*," – Width of the Pixel Extension. Asterisk represents the Width of the Object.
  • "S," – Direction of Extension, i.e. South. Compass array supports concurrent extensions.
  • "E," – Extended pixels can originate from the Center or Edge of the Object.
  • "cCount," – The Length of the Extension. Could be an integer value or a Destination like Border, Mirror, or Collision. For this ARC Puzzle the "hidden rule" is the number of different colors in the Object. "cCount" is an Object Attribute recorded during the Analyze Input phase and used here as a variable in the Action.
  • "U," – Behavior when Extended Pixels collide with another Object on the Grid. Under or Over are two of several options.
  • Behavior Examples

    Ei1Eo1       Ei2Eo2       Ei3Eo3

    This is a (custom) example of Mirror Objects Extending OVER other Objects in the Grid. Programmatically it's the easiest since the Extended Pixels ignore other Objects and are placed over anything along the way.

    Ei1Eo1       Ei2Eo2       Ei3Eo3

    Here Mirror Objects are Extending UNDER other Objects. It's trickier because object collisions have to be detected their dimensions noted for when Extend Pixels will be written to the grid or paused to appear below. (Grid data is natively single-layer).

    Ei1Eo1       Ei2Eo2       Ei3Eo3

    This is the trickier of Extend's Collision models. Rather than coloring Over or Under, the colliding extension does what I will call "FLOOD" the intersecting Object. At the UCLA presentation, a "Flood" puzzle very similar to this was presented as an example of "What the Neural Network Models have not solved." This is also similar to what the powerful o3 could not solve:

    Unsolved by High Compute o3

     

     

    And Now for the Toughest Extend!

    Ei1Eo1       Ei2Eo2       Ei3Eo3
    ⇨ ?
    Ti0To0

    This is a Custom Puzzle I made to test ARCHIE's EXTEND capabilities. It has 3 different Mirror Colors, and each Triggers a different FLOOD pattern. The patterns may be reminiscent of the more difficult PAINT examples. This is worth stepping through incrementally to see how ARCHIE accomplishes this. Let's step through the four Output Object updates:

    Ei1 Eo1 Eo1_Objects Pass 1

    In the first full pass, ARCHIE lists the status of the Input Objects. All of the Mirror Objects are Static, as is the one unaffected Grey square. Since the colors of their pixels changed, the two remaining squares list as Modified.

    Ei1 Eo1 Eo1_Objects Pass 2

    Below view in the scrolling field are several [ADDED] pixels lines, accounting for the horizontal Blue and Green lines. ARCHIE correctly absorbs these into the [EXTEND] Actions as it would with a simple Mirror Puzzle.

    Ei1 Eo1 Eo1_Objects Pass 3

    There are still more [ADDED] pixel lines comprised of the Color Patterns in the Squares. ARCHIE absorbs these into [PAINT] Actions for the affected square Objects. All of the [ADDED] pixel lines are then removed. Normally ARCHIE would judge the Analysis as complete (i.e. No More ADDs). But there is a problem...
    The Mirror Objects will correctly EXTEND, but the Grey Squares will follow a consensus PAINT pattern, based on their own attributes. At this point, ALL of the Grey Squares would be painted. One more pass is needed to analyze the output of all Examples and discern the
    GLOBAL ACTION.

    Ei1 Eo1 Eo1_Objects Pass 4

    Compound Actions

    In this last pass, ARCHIE removes PAINT Actions from the Grey Objects and re-inserts them into the Collision Parameter of the appropriate EXTEND Action. This makes the Mirror Object the Agent (as in simple Extends). All the Grey squares are returned to Static.

    The power of embedding an Action as the parmeter of another Action cannot be overstated. Compound Actions open another dimension of ARCHIE's problem solving capabilities.

     

    The Solution

    ↑ [Static,9]| pCount:9| pHeight:3| pWidth:3| Color:Grey| nColorFreq:Most
    ↑ [EXTEND,*,*,N,C,M,{PAINT-*-1-3-Void}]| pCount:1| Color:Yellow| BorderX:B| mirrorArray:N
    ↑ [EXTEND,*,*,N,C,M,{PAINT-*-3-4-Void}]| pCount:1| Color:Blue| BorderX:B| mirrorArray:N
    ↑ [EXTEND,*,*,N,C,M,{PAINT-*-4-1-Void}]| pCount:1| Color:Green| BorderX:B| mirrorArray:N
    Ti0 To0 Solved

    Of note that the 4x3 Rectangle on the Green line has the correct Body-Sides-Corners color scheme but is a Shape not even seen in the examples. The Grey 3x3 Square stays Grey, despite PAINT Actions for the other 3x3 Objects, solely because it was not in a collision with any of the Mirror Extends.

    Correct!

     

    Action Summary

    • ARCHIE starts by identifying Objects in a single Input Grid.
    • Objects are named and Specific Attributes are recorded in an Output Objects field.
    • Input Objects are compared so Relative Attributes (e.g. Largest) can be recorded.
    • The Output Grid is compared to the Input Objects list.
    • Output Objects are Identified as Static, Modified, Partial, Delete, or Added.
    • [ADDED] Objects become the priority (as "objects do not suddenly materialize").
    • ARCHIE works the Output Objects list for each Example, one at a time.
    • ARCHIE converts ADDED pixels by Applying ACTIONS and Parameters to the Output Object, accounting for the changes.
    • A 2nd Analysis comparing ACTIONS from ALL Examples may identify a GLOBAL ACTION.
    • The GLOBAL ACTION may identify required COMPOUND Actions.
    • Actions across all Examples are Combined with their Input Objects Attributes.
    • Consensus of Attributes attached to specific ACTIONs, results in proposed ACTION Rules.
    • ACTION Rules are applied to the Test Input Objects, from most to least specific match, resulting in the final Test Grid Solution.

     

    What's Next?

    PART SIX will introduce ARCHIE's innate Reasoning Ability beyond just IF-THEN-ELSE.

    PART SIX »