Genuary2026_CrazyAutomata
Poetry, Cells, Neighbors & Universes

CellularPoetry
For the 9th Prompt of Genuary2026 : Crazy Cellular Automata, CellularPoetry rules are coded in Python. Where poems are made from various cellular rule sets to make the images come to life and give restrictions to the poet.
Poem
Achieving Every Assumption covered in Aerial Areas, Calculating Creative endeavours endlessly
Futuristic Foresight fading away, consistency constantly evaporating, Pleasure Pausing,
Intermission Awaits
Fulfilling any hypothesis unhidden around airborne dreamscapes, Arriving and Pollinating Plots
Cell & Cellular Output for Poem 1
Cells
[1 1 1 1 0 0 0 0 0 1 1]
[0 0 1 1 1 0 1 0 0 1 1]
Cellular Automata Outputs
vowel vowel vowel consonant vowel vowel vowel consonant consonant vowel vowel
consonant consonant consonant vowel consonant consonant vowel consonant consonant vowel vowel
synonym synonym synonym antonym synonym synonym switch switch switch switch switch


Cell & Cellular Output for Poem 2
Seeing, Strolling, Swimming and Actions and Abbreviations may make no sense
Admiring all aspects profoundly with deliberate intentions, isolating and intertwining insights
Blinded, rushing, drowning plus efforts plus thoughts, freeing negating sparsely ignorance
Without Aspirations, Ambition, Emotions, Interactions, Internalizing, instructions,
Openness, Observing, Unity, Union
Emitting overdosing amounts of Thoughts with flowing concern, capturing the aspiring influences
With considerations mounting beyond connections, communication, explanations, freeing gazes,
Relatable Sequences?
Cells
[1 0 0 1 1 0 1 1 0 0 0]
[1 1 0 0 0 1 1 1 1 1 1]
[0 1 0 1 1 1 1 1 1 1 1]
[1 1 1 1 0 0 0 0 0 1 1]
Cellular Automata Outputs
consonant consonant consonant vowel vowel vowel vowel consonant consonant consonant consonant
vowel vowel vowel consonant consonant consonant vowel vowel vowel vowel vowel
antonym antonym antonym synonym synonym synonym switch antonym antonym antonym antonym
consonant vowel vowel vowel vowel vowel vowel vowel vowel vowel vowel
vowel vowel vowel vowel consonant consonant consonant consonant consonant vowel vowel
antonym switch switch switch synonym synonym synonym synonym synonym switch switch


More Images


Rule Sets
Follows the traditional Neighbourhood model asscoiated with Cellular Automata but with the addition of the second rule, CellularPoetry plays with the concept of what happens if a cell met their doppelganger that occupies the same spot as them.
0’s are Vowels and 1’s are Constants
#My Rule ??
'''
000 = 1
001 = 1
010 = 0
011 = 1
100 = 1
101 = 0
110 = 0
111 = 0
'''
#Rule 30
'''
000 = 0
001 = 1
010 = 1
011 = 1
100 = 1
101 = 0
110 = 0
111 = 0
Rule 2 : For Synonyms , Antonyms & Switches
'''
00 = 1
01 = Synonym of word from 0
10 = Antonym of word from 1
11 = 0
'''
Python Code
import numpy as np
C = np.random.randint(low=0, high=2, size=(5, 11))
print(C)
def PoetryPrep(x):
#firstline = [1, 1, 0, 0, 1, 0, 0, 1, 1, 1, 0]
x = x.tolist() #turs numpyarrat to list
x = x + x[:2] #includes first 2 elements to wrap the list for the celluar automata rules
neighbours = []
for i in range(0, len(x)-1, 3):
#range from the index i , with every 3 elements, the 3 different iterations assures that all neighbours get listed
neighbours.append(x[i:i+3])
neighbours.append( x[i+1:i+1+3])
neighbours.append(x[i+1:i+1+3])
neighbours.pop() #pop the last element
return neighbours
def AutomataPoetry1(cells):
AutomataVocab = []
vowels = [[0,0,0],[1,0,1],[1,1,0],[1,1,1]]
for i in range(0, len(cells)): #for every element
if (cells[i] in vowels):
AutomataVocab.append("vowel")
#print(" vowel ")
else:
AutomataVocab.append("consonant")
#print(" consonant ")
print(*AutomataVocab)
return AutomataVocab
def AutomataPoetry2(cells):
AutomataVocab = []
vowels = [[0,1,0],[1,0,0],[1,1,0],[1,1,1]]
for i in range(0, len(cells)): #for every element
if (cells[i] in vowels):
AutomataVocab.append("vowel")
#print(" vowel ")
else:
AutomataVocab.append("consonant")
#print(" consonant ")
print(*AutomataVocab)
return AutomataVocab
def FinalAutomataCheck(poem1,poem2):
AutomataFinale = []
for i in range(0,len(poem1)):
if( poem1[i] == poem2[i]):
AutomataFinale.append("switch")
elif( poem1[i] == "vowel" and poem2[i] == "consonant"):
AutomataFinale.append("synonym")
else:
AutomataFinale.append("antonym")
print(*AutomataFinale)
#return AutomataFinale
FinalAutomataCheck(AutomataPoetry1(PoetryPrep(C[0])),AutomataPoetry2(PoetryPrep(C[1])))
Data Visualization Code
#NumberCheck
def PoetryPrep(x):
#x = x.tolist() #turs numpyarrat to list
x = x + x[:2] #includes first 2 elements to wrap the list for the celluar automata rules
neighbours = []
for i in range(0, len(x)-1, 3):
#range from the index i , with every 3 elements, the 3 different iterations assures that all neighbours get listed
neighbours.append(x[i:i+3])
neighbours.append( x[i+1:i+1+3])
neighbours.append(x[i+1:i+1+3])
neighbours.pop() #pop the last element
return neighbours
def AutomataPoetry1(cells):
AutomataVocab = []
vowels = [[0,0,0],[1,0,1],[1,1,0],[1,1,1]]
for i in range(0, len(cells)): #for every element
if (cells[i] in vowels):
AutomataVocab.append(0)
#print(" vowel ")
else:
AutomataVocab.append(1)
#print(" consonant ")
print(AutomataVocab)
return AutomataVocab
def AutomataPoetry2(cells):
AutomataVocab = []
vowels = [[0,1,0],[1,0,0],[1,1,0],[1,1,1]]
for i in range(0, len(cells)): #for every element
if (cells[i] in vowels):
AutomataVocab.append(0)
#print(" vowel ")
else:
AutomataVocab.append(1)
#print(" consonant ")
print(AutomataVocab)
return AutomataVocab
def FinalAutomataCheck(poem1,poem2):
AutomataFinale = []
for i in range(0,len(poem1)):
if( poem1[i] == poem2[i]):
AutomataFinale.append(10)
elif( poem1[i] == 0 and poem2[i] == 1):
AutomataFinale.append(2)
else:
AutomataFinale.append(-1)
#print(*AutomataFinale)
return AutomataFinale
FinalAutomataCheck(AutomataPoetry1(PoetryPrep(d[0])),AutomataPoetry2(PoetryPrep(d[1])))
FinalAutomataCheck(AutomataPoetry1(PoetryPrep(d[2])),AutomataPoetry2(PoetryPrep(d[3])))
FinalAutomataCheck(AutomataPoetry1(PoetryPrep(d[4])),AutomataPoetry2(PoetryPrep(d[0])))
#Poem 1
plt.imshow(newMap, cmap='hot', interpolation='nearest')
plt.show()
plt.imshow(newMap, cmap='Blues')
plt.show()
#Poem 2
plt.imshow(newMap2, cmap='Oranges', interpolation='nearest')
plt.show()
plt.imshow(newMap2, cmap='bwr_r')
plt.show()




