Graph Topology Determines Survival in the Rock-Paper-Scissors Game¶
Lowell, 2021. “Graph Topology Determines Survival in the Rock-Paper-Scissors Game.”
Experimental scripts for this paper can be found at the following repository:
https://github.com/TheoremEngine/graph-topology-determines-survival
The scripts were run using git commit hash a7eac98 of Viridicle.
The data files produced during the experimental run can be found at:
s3://theorem-engine-published-results/1/block.csv (540 MB)
s3://theorem-engine-published-results/1/klein-01110001.csv (81 MB)
s3://theorem-engine-published-results/1/klein-01110011.csv (88 MB)
s3://theorem-engine-published-results/1/klein-01110111.csv (31 MB)
s3://theorem-engine-published-results/1/sphere-01110000.csv (113 MB)
s3://theorem-engine-published-results/1/sphere-01210001.csv (108 MB)
s3://theorem-engine-published-results/1/torus-01110001.csv (73 MB)
s3://theorem-engine-published-results/1/torus-01110011.csv (87 MB)
s3://theorem-engine-published-results/1/torus-01110111.csv (33 MB)
The files are in a “requestor pays” AWS S3 bucket. To download them, first obtain an AWS account, install the AWS CLI, and link the CLI to your account. Then, run the following commands:
aws s3 cp s3://theorem-engine-published-results/1/block.csv . --request-payer requester
aws s3 cp s3://theorem-engine-published-results/1/klein-01110001.csv . --request-payer requester
...
block.csv contains the data from runs with block initializations in each graph. The remaining files use specific initializations to induce each pattern.
Each record is a csv file. Each row in the csv file records a period in a particular experiment where the graph was in the same pattern, so each experiment typically occupies multiple rows. The rows from an experiment are contiguous, and one experiment can be distinguished from the next by the combination of its hyperparameters (‘graph’, ‘width’, ‘mobility’, ‘initialization’, ‘warmup_mobility’, ‘warmup_time’) and random seed (‘seed’, ‘warmup_seed’). Example scripts for processing and analyzing the files can be found in the scripts repository.
The columns in the csv files are:
‘graph’: Type of graph used in the experiment; can be ‘klein’, ‘sphere’, or ‘torus’.
‘pattern’: Which pattern the graph was in during this period.
‘duration’: How long in time the graph spent in this pattern.
‘elapsed_time’: How long the experiment ran before entering this pattern.
‘censored’: If true, this period was ended by the experiment reaching its maximum time, not by the pattern changing to a new pattern.
‘width’: Width of the lattice.
‘mobility’: The mobility.
‘absorbed’: If true, at least one non-empty state has disappeared from the graph.
‘initialization’: Which method was used to initialize the graph; can be ‘random’, ‘block’, or ‘marching-bands’.
‘seed’: Random seed used.
‘warmup_mobility’: The mobility used during the warmup period. This will be empty if there was no warmup period.
‘warmup_seed’: The random seed used during the warmup period. This will be empty if there was no warmup period.
‘warmup_time’: How long the model was run during the warmup period. This will be empty if there was no warmup period.