You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
venue: Journal of Open Source Science (Under Revision)
13
+
venue: Journal of Open Source Software
14
14
projects:
15
15
- hstrat
16
16
abstract: |
@@ -20,43 +20,22 @@ abstract: |
20
20
Perfect observability, in particular, enables *in silico* experiments that would be otherwise impossible *in vitro* or *in vivo*.
21
21
Notably, availability of the full evolutionary history (phylogeny) of a given population enables very powerful analyses.
22
22
23
-
As a slow but highly parallelizable process, digital evolution will benefit greatly by continuing to capitalize on profound advances in parallel and distributed computing [@moreno2020practical;@ackley2014indefinitely], particularly emerging unconventional computing architectures [@ackley2011homeostatic;@lauterbach2021path;@furber2014spinnaker].
23
+
As a slow but highly parallelizable process, digital evolution will benefit greatly by continuing to capitalize on profound advances in parallel and distributed computing, particularly emerging unconventional computing architectures.
24
24
However, scaling up digital evolution presents many challenges.
25
25
Among these is the existing centralized perfect-tracking phylogenetic data collection model, which is inefficient and difficult to realize in parallel and distributed contexts.
26
26
Here, we implement an alternative approach to tracking phylogenies across vast and potentially unreliable hardware networks.
27
-
28
-
The `hstrat` Python library exists to facilitate application of hereditary stratigraphy, a cutting-edge technique to enable phylogenetic inference over distributed digital evolution populations.
29
-
This technique departs from the traditional perfect-tracking approach to phylogenetic record-keeping.
30
-
Instead, hereditary stratigraphy enables phylogenetic history to be inferred from heritable annotations attached to evolving digital agents.
31
-
This approach aligns with phylogenetic reconstruction methodologies in evolutionary biology.
32
-
Hereditary stratigraphy attaches a set of immutable historical "checkpoints" --- referred to as _strata_ --- as an annotation on evolving genomes.
33
-
Checkpoints can be strategically discarded to reduce annotation size at the cost of increasing inference uncertainty.
34
-
A particular strategy for which checkpoints to discard when is referred to as a _stratum retention policy_.
35
-
We refer to the set of retained strata as a _hereditary stratigraphic column_.
36
-
37
-
Appropriate stratum retention policy choice varies by application.
38
-
For example, if annotation size is not a concern it may be best to preserve all strata.
39
-
In other situations, it may be necessary to constrain annotation size to remain within a fixed memory budget.
40
-
41
-
Key features of the library include:
42
-
43
-
- object-oriented hereditary stratigraphic column implementation to annotate arbitrary genomes,
44
-
- modular interchangeability and user extensibility of stratum retention policies,
45
-
- programmatic interface to query guarantees and behavior of stratum retention policy,
46
-
- modular interchangeability and user extensibility of back-end data structure used to store annotation data,
47
-
- a suite of visualization tools to elucidate stratum retention policies,
48
-
- support for automatic parameterization of stratum retention policies to meet user size complexity or inference precision specifications,
49
-
- tools to compare two columns and extract information about the phylogenetic relationship between them,
50
-
- [extensive documentation](https://hstrat.readthedocs.io) hosted on [ReadTheDocs](https://readthedocs.io),
51
-
- a comprehensive test suite to ensure stability and reliability,
52
-
- convenient availability as a Python package via the [PyPI repository](https://pypi.org/), and
53
-
- pure Python implementation to ensure universal portability.
54
27
bibtex: |-
55
28
@article{moreno2022hstrat,
56
-
author = {Moreno, Matthew Andres and Dolson, Emily and Ofria, Charles},
57
-
title = "{hstrat: a Python Package for phylogenetic inference on distributed digital evolution populations}",
58
-
journal = {Journal of Open Source Software},
59
-
year = {Under Revision},
60
-
}
61
-
citation: "Matthew Andres Moreno, Emily Dolson, and Charles Ofria. hstrat: a Python Package for phylogenetic inference on distributed digital evolution populations. Journal of Open Source Software. Under Revision."
29
+
doi = {10.21105/joss.04866},
30
+
url = {https://doi.org/10.21105/joss.04866},
31
+
year = {2022}
32
+
publisher = {The Open Journal},
33
+
volume = {7},
34
+
number = {80}
35
+
pages = {4866}
36
+
author = {Matthew Andres Moreno and Emily Dolson and Charles Ofria},
37
+
title = {hstrat: a Python Package for phylogenetic inference on distributed digital evolution populations},
38
+
journal = {Journal of Open Source Software}
39
+
}
40
+
citation: "Moreno et al., (2022). hstrat: a Python Package for phylogenetic inference on distributed digital evolution populations. Journal of Open Source Software, 7(80), 4866, https://doi.org/10.21105/joss.04866"
0 commit comments