Requirements The experiment broke two fundamental assumptions of traditional sorting algorithms:

  1. Top-Down Control Elimination Instead of central algorithmic control, each element (cell) within an array exerts minimal agency

Implementation of sorting policies from the bottom-up using distributed control

Each cell makes local decisions based on its immediate environment

  1. Unreliable Hardware Simulation Allow elements to be “damaged” and fail to execute the algorithm

Introduction of “Frozen Cells” that cannot move when instructed

Two types of frozen cells:

Movable Frozen Cells: Cannot initiate moves but can be moved by others

Immovable Frozen Cells: Cannot move or be moved by others

Implementation Details Platform Architecture Programming Language: Python 3.0

Architecture: Multi-threaded implementation with two thread types:

Cell threads: Each cell represented by a single thread

Main thread: Activates all threads and monitors the sorting process

Code Repository: Available at https://github.com/Zhangtaining/cell_research

Cell-View Sorting Algorithms Three distributed versions of classical sorting algorithms were implemented:

Cell-View Bubble Sort Each cell views and swaps with left or right neighbor

Moves left if smaller than left neighbor, right if bigger than right neighbor

Cell-View Insertion Sort Each cell views all cells to its left, swaps only with left neighbor

Moves left if left side is sorted and cell value is smaller than left neighbor

Cell-View Selection Sort Each cell has an ideal target position (initially leftmost)

Swaps with cell currently occupying its ideal position if it has smaller value

Shifts ideal position right if swap is denied

Experimental Setup Array Size: 100 elements per experiment

Repetitions: 100 experiments per condition

Initial State: Randomized arrays of cells

Stop Condition: No more changes in sortedness value for several time steps

Behavior in Scope The study analyzed several key behavioral competencies:

  1. Basic Sorting Performance Ability to complete sorting tasks successfully

Efficiency comparison between traditional and cell-view versions

  1. Error Tolerance Performance degradation with increasing numbers of frozen cells

Robustness against different types of cellular damage

  1. Delayed Gratification Ability to temporarily increase monotonicity error to achieve long-term gains

Context-sensitive deployment of backtracking strategies when facing obstacles

  1. Chimeric Array Behavior Mixed “algotype” experiments where different cells use different sorting algorithms

Emergence of clustering behavior among cells with similar algorithms

Conflict resolution when different algotypes have opposing goals

Analysis Methods Quantitative Metrics Sorting Performance Metrics: Total Sorting Steps: Count of comparisons and swaps needed

Sortedness Value: Percentage of cells following designated sort order

Monotonicity Error: Number of cells violating monotonic order

Behavioral Analysis Metrics: Delayed Gratification Index:

text DG = (Total consecutive Sortedness increase after drop) / (Total consecutive Sortedness decrease before increase) Aggregation Value: Percentage of cells with directly adjacent neighbors of same algotype

Statistical Methods: Z-test and T-test for significance evaluation

100 experimental repetitions for statistical power

Standard deviation analysis for performance consistency

Experimental Conditions Frozen Cell Variations: 0, 1, 2, 3 frozen cells per array

Algotype Combinations: Pure algotype vs. mixed algotype arrays

Duplicate Value Testing: Arrays with repeated values to separate explicit vs. emergent goals

OUR VERSION:

  1. SAME AS REPRODUCING RESULTS
  2. WITH BITWISE OPERATORS MAPPED TO ALGOTYPES
      • Algotype Comparison: Each logical operator (AND, OR, XOR, NAND, NOR) can be treated as an algotype. We can record operator usage per element over time and analyze clustering patterns or performance differences between operator types. This reveals how different decision policies behave under identical conditions.