Skip to content

oist-cnru/hashlife

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Emergence of Structure in 2D Cellular Automata (Game of Life)

Explore emerging patterns in GoL, something along these lines - not clear if it has been investigated thoroughly so far.

Setup

  • activate env
    python3 -m venv .venv
    source .venv/bin/activate
    
  • install requirements (after env is activated)
    pip install -r requirements.txt
    
  • you may need PyQt5 in addition to visualize animation (e.g., under Ubuntu)
    pip install PyQt5
    

Run the code

  • main pure
    python -m gol.main_pure
    
  • main cycles
    python -m gol.main_cycles
    
  • main patterns (interesting patterns from cycles)
    python -m gol.main_patterns
    
  • main hl (hashlife)
    python -m gol.main_hl
    
  • benchmark: pure, golly (draft)
    python -m gol.benchmark
    
  • test hl/pure consistency
    python -m gol.test_hl_pure
    
  • test hl jumps
    python -m gol.test_hl_jumps
    
  • test golly
    python -m gol.test_golly
    
  • process lexicon (input/lex_asc below)
    python -m gol.process_lexicon
    
    TODO: see also https://conwaylife.com/wiki

Project Structure

  • pure: implementation with efficient numpy/pytorch via fft and conv2d derived from njbbaer.
  • hl: hashlife from johnhw.
  • moritztng: copy of moritztng (2d conv and web visualizer)

input/output dirs (gitignored)

See also:

TODO

CONTACTS

@kercos

About

code from Fede's Cellular Automata obsession :)

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages