Skip to content

Version 1.0.2

Choose a tag to compare

@mmadsen mmadsen released this 11 Sep 23:29

Overview

This version is feature complete to do neutral CT simulations in a single population, with some statistics and data gathering in an analysis pipeline.

Features

  1. JSON configuration file to override any default parameters for simulations, classifications, etc.
  2. Command line parameters for database location, experiment name, and configuration. Multiple experiments can be run at the same time.
  3. Trait samples and simple statistics are saved into the database by the primary simulation itself since it can easily be done by simuPOP mainly using C code. Anything more complex is done by post processing scripts.
  4. Classifications can be initialized in the database, via a configuration file controlling the list of dimensionalities and dimension coarsenesses needed.
  5. Experiments are tracked by analysis stage, and analyses cannot be re-run without resetting the database, to help prevent data corruption.
  6. Full parameter spaces are constructed by simulating the maximally large trait space, with replicates, and then subsampling/resampling this down to form samples of smaller dimensionality, or sample size. This is computationally efficient.
  7. Classification identification is done in post processing, taking the post resampling dataset and then "observing it" through each of the classifications, forming post-classification samples. Per-generation/sample statistics such as shannon entropy, richness, and IQV are calculated at this time for each dimension (i.e., mode entropy for dimension X), and for the classification as a whole. The fraction of the classification's "design space" is also recorded.
  8. Optionally, per simulation run statistics can also be calculated, for each classification and simulation run. The algorithm for intervals between class innovation needs to be changed to deduplicate generations to remove zeros which are screwing up the averages.