This page provides unrestricted downloads and supporting materials for my publications and other professional works. My publications can also be viewed on my google scholar profile.

🌟 Selected Highlights
2021 Case Study of Novelty, Complexity, and Adaptation in a Multicellular System
The Fourth Workshop on Open-Ended Evolution (OEE4)
Download
View at Publisher
Authors
Date July 22nd, 2021
Venue The Fourth Workshop on Open-Ended Evolution (OEE4)
Abstract

Continuing generation of novelty, complexity, and adaptation are well-established as core aspects of open-ended evolution. However, the manner in which these phenomena relate remains an area of great theoretical interest. It is yet to be firmly established to what extent these phenomena are coupled and by what means they interact. In this work, we track the co-evolution of novelty, complexity, and adaptation in a case study from a simulation system designed to study the evolution of digital multicellularity. In this case study, we describe ten qualitatively distinct multicellular morphologies, several of which exhibit asymmetrical growth and distinct life stages. We contextualize the evolutionary history of these morphologies with measurements of complexity and adaptation. Our case study suggests a loose, sometimes divergent, relationship can exist among novelty, complexity, and adaptation.

BibTeX
⎘ copy to clipboard
@inproceedings{moreno2021case,
  author = {Moreno, Matthew Andres and Papa, Santiago Rodriguez and Ofria, Charles},
  title = {Case Study of Novelty, Complexity, and Adaptation in a Multicellular System},
  year = {2021},
  url = {http://workshops.alife.org/oee4/papers/moreno-oee4-camera-ready.pdf},
  booktitle = {OEE4: The Fourth Workshop on Open-Ended Evolution},
  numpages = {9},
  location = {Prague, Czech Republic}
}
Citation
⎘ copy to clipboard

Matthew Andres Moreno, Santiago Rodriguez Papa and Charles Ofria. 2021. Case Study of Novelty, Complexity, and Adaptation in a Multicellular System. OEE4: The Fourth Workshop on Open-Ended Evolution.

Supporting Materials

2022 Exploring Evolved Multicellular Life Histories in a Open-Ended Digital Evolution System
Frontiers in Ecology and Evolution
Download
View at Publisher
Authors
Date May 13th, 2022
DOI 10.3389/fevo.2022.750837
Venue Frontiers in Ecology and Evolution
Abstract

Evolutionary transitions occur when previously-independent replicating entities unite to form more complex individuals. Such transitions have profoundly shaped natural evolutionary history and occur in two forms: fraternal transitions involve lower-level entities that are kin (e.g., transitions to multicellularity or to eusocial colonies), while egalitarian transitions involve unrelated individuals (e.g., the origins of mitochondria). The necessary conditions and evolutionary mechanisms for these transitions to arise continue to be fruitful targets of scientific interest. Here, we examine a range of fraternal transitions in populations of open-ended self-replicating computer programs. These digital cells were allowed to form and replicate kin groups by selectively adjoining or expelling daughter cells. The capability to recognize kin-group membership enabled preferential communication and cooperation between cells. We repeatedly observed group-level traits that are characteristic of a fraternal transition. These included reproductive division of labor, resource sharing within kin groups, resource investment in offspring groups, asymmetrical behaviors mediated by messaging, morphological patterning, and adaptive apoptosis. We report eight case studies from replicates where transitions occurred and explore the diverse range of adaptive evolved multicellular strategies.

BibTeX
⎘ copy to clipboard
@article{moreno2022exploring,
  author={Moreno, Matthew Andres and Ofria, Charles},
  title={Exploring Evolved Multicellular Life Histories in a Open-Ended Digital Evolution System},
  journal={Frontiers in Ecology and Evolution},
  volume={10},
  year={2022},
  url={https://www.frontiersin.org/articles/10.3389/fevo.2022.750837},
  doi={10.3389/fevo.2022.750837},
  issn={2296-701X}
}
Citation
⎘ copy to clipboard

Moreno MA and Ofria C (2022) Exploring Evolved Multicellular Life Histories in a Open-Ended Digital Evolution System. Front. Ecol. Evol. 10:750837. doi: 10.3389/fevo.2022.750837

Supporting Materials

2022 Hereditary stratigraphy: genome annotations to enable phylogenetic inference over distributed populations
The 2022 Conference on Artificial Life
Download
View at Publisher
Authors
Date May 13th, 2022
DOI 10.1162/isal_a_00550
Venue The 2022 Conference on Artificial Life
Abstract

Phylogenies provide direct accounts of the evolutionary trajectories behind evolved artifacts in genetic algorithm and artificial life systems. Phylogenetic analyses can also enable insight into evolutionary and ecological dynamics such as selection pressure and frequency-dependent selection. Traditionally, digital evolution systems have recorded data for phylogenetic analyses through perfect tracking where each birth event is recorded in a centralized data structure. This approach, however, does not easily scale to distributed computing environments where evolutionary individuals may migrate between a large number of disjoint processing elements. To provide for phylogenetic analyses in these environments, we propose an approach to enable phylogenies to be inferred via heritable genetic annotations rather than directly tracked. We introduce a “hereditary stratigraphy” algorithm that enables efficient, accurate phylogenetic reconstruction with tunable, explicit trade-offs between annotation memory footprint and reconstruction accuracy. In particular, we demonstrate an approach that enables estimation of the most recent common ancestor (MRCA) between two individuals with fixed relative accuracy irrespective of lineage depth while only requiring logarithmic annotation space complexity with respect to lineage depth This approach can estimate, for example, MRCA generation of two genomes within 10% relative error with 95% confidence up to a depth of a trillion generations with genome annotations smaller than a kilobyte. We also simulate inference over known lineages, recovering up to 85.70% of the information contained in the original tree using 64-bit annotations.

BibTeX
⎘ copy to clipboard
@inproceedings{moreno2022hereditary,
    author = {Moreno, Matthew Andres and Dolson, Emily and Ofria, Charles},
    title = "{Hereditary Stratigraphy: Genome Annotations to Enable Phylogenetic Inference over Distributed Populations}",
    volume = {ALIFE 2022: The 2022 Conference on Artificial Life},
    series = {ALIFE 2022: The 2022 Conference on Artificial Life},
    year = {2022},
    month = {07},
    doi = {10.1162/isal_a_00550},
    url = {https://doi.org/10.1162/isal\_a\_00550},
    note = {64},
    eprint = {https://direct.mit.edu/isal/proceedings-pdf/isal/34/64/2035363/isal\_a\_00550.pdf},
}
Citation
⎘ copy to clipboard

Matthew Andres Moreno, Emily Dolson, Charles Ofria; July 18–22, 2022. “Hereditary Stratigraphy: Genome Annotations to Enable Phylogenetic Inference over Distributed Populations.” Proceedings of the ALIFE 2022: The 2022 Conference on Artificial Life. ALIFE 2022: The 2022 Conference on Artificial Life. Online. (pp. 64). ASME. https://doi.org/10.1162/isal_a_00550

Supporting Materials

2021 Conduit: A C++ Library for Best-effort High Performance Computing
ACM Workshop on Parallel and Distributed Evolutionary Inspired Methods
Download
View at Publisher
Authors
Date May 21st, 2021
DOI 10.1145/3449726.3463205
Venue ACM Workshop on Parallel and Distributed Evolutionary Inspired Methods
Abstract

Developing software to effectively take advantage of growth in parallel and distributed processing capacity poses significant challenges. Traditional programming techniques allow a user to assume that execution, message passing, and memory are always kept synchronized. However, maintaining this consistency becomes increasingly costly at scale. One proposed strategy is “best-effort computing”, which relaxes synchronization and hardware reliability requirements, accepting nondeterminism in exchange for efficiency. Although many programming languages and frameworks aim to facilitate software development for high performance applications, existing tools do not directly provide a prepackaged best-effort interface. The Conduit C++ Library aims to provide such an interface for convenient implementation of software that uses best-effort inter-thread and inter-process communication. Here, we describe the motivation, objectives, design, and implementation of the library. Benchmarks on a communication-intensive graph coloring problem and a compute-intensive digital evolution simulation show that Conduit’s best-effort model can improve scaling efficiency and solution quality, particularly in a distributed, multi-node context.

BibTeX
⎘ copy to clipboard
@inproceedings{moreno2021conduit,
  author = {Moreno, Matthew Andres and Papa, Santiago Rodriguez and Ofria, Charles},
  title = {Conduit: A C++ Library for Best-Effort High Performance Computing},
  year = {2021},
  isbn = {9781450383516},
  publisher = {Association for Computing Machinery},
  address = {New York, NY, USA},
  url = {https://doi.org/10.1145/3449726.3463205},
  doi = {10.1145/3449726.3463205},
  booktitle = {Proceedings of the Genetic and Evolutionary Computation Conference Companion},
  pages = {1795–1800},
  numpages = {6},
  keywords = {high performance computing, best-effort computing},
  location = {Lille, France},
  series = {GECCO '21}
}
Citation
⎘ copy to clipboard

Matthew Andres Moreno, Santiago Rodriguez Papa, and Charles Ofria. 2021. Conduit: a C++ library for best-effort high performance computing. In Proceedings of the Genetic and Evolutionary Computation Conference Companion (GECCO ‘21). Association for Computing Machinery, New York, NY, USA, 1795–1800. https://doi.org/10.1145/3449726.3463205

Supporting Materials

📚 Journal Publications
2022 hstrat: a Python Package for phylogenetic inference on distributed digital evolution populations
Journal of Open Source Science (Under Revision)
Download
Authors
Date November 7th, 2022
Venue Journal of Open Source Science (Under Revision)
Abstract

Digital evolution systems instantiate evolutionary processes over populations of virtual agents in silico. These programs can serve as rich experimental model systems. Insights from digital evolution experiments expand evolutionary theory, and can often directly improve heuristic optimization techniques . Perfect observability, in particular, enables in silico experiments that would be otherwise impossible in vitro or in vivo. Notably, availability of the full evolutionary history (phylogeny) of a given population enables very powerful analyses.

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]. However, scaling up digital evolution presents many challenges. Among these is the existing centralized perfect-tracking phylogenetic data collection model, which is inefficient and difficult to realize in parallel and distributed contexts. Here, we implement an alternative approach to tracking phylogenies across vast and potentially unreliable hardware networks.

The hstrat Python library exists to facilitate application of hereditary stratigraphy, a cutting-edge technique to enable phylogenetic inference over distributed digital evolution populations. This technique departs from the traditional perfect-tracking approach to phylogenetic record-keeping. Instead, hereditary stratigraphy enables phylogenetic history to be inferred from heritable annotations attached to evolving digital agents. This approach aligns with phylogenetic reconstruction methodologies in evolutionary biology. Hereditary stratigraphy attaches a set of immutable historical “checkpoints” — referred to as strata — as an annotation on evolving genomes. Checkpoints can be strategically discarded to reduce annotation size at the cost of increasing inference uncertainty. A particular strategy for which checkpoints to discard when is referred to as a stratum retention policy. We refer to the set of retained strata as a hereditary stratigraphic column.

Appropriate stratum retention policy choice varies by application. For example, if annotation size is not a concern it may be best to preserve all strata. In other situations, it may be necessary to constrain annotation size to remain within a fixed memory budget.

Key features of the library include:

  • object-oriented hereditary stratigraphic column implementation to annotate arbitrary genomes,
  • modular interchangeability and user extensibility of stratum retention policies,
  • programmatic interface to query guarantees and behavior of stratum retention policy,
  • modular interchangeability and user extensibility of back-end data structure used to store annotation data,
  • a suite of visualization tools to elucidate stratum retention policies,
  • support for automatic parameterization of stratum retention policies to meet user size complexity or inference precision specifications,
  • tools to compare two columns and extract information about the phylogenetic relationship between them,
  • extensive documentation hosted on ReadTheDocs,
  • a comprehensive test suite to ensure stability and reliability,
  • convenient availability as a Python package via the PyPI repository, and
  • pure Python implementation to ensure universal portability.
BibTeX
⎘ copy to clipboard
@article{moreno2022hstrat,
  author = {Moreno, Matthew Andres and Dolson, Emily and Ofria, Charles},
  title = "{hstrat: a Python Package for phylogenetic inference on distributed digital evolution populations}",
  journal = {Journal of Open Source Software},
  year = {Under Revision},
}
Citation
⎘ copy to clipboard

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.


2022 Exploring Evolved Multicellular Life Histories in a Open-Ended Digital Evolution System
Frontiers in Ecology and Evolution
Download
View at Publisher
Authors
Date May 13th, 2022
DOI 10.3389/fevo.2022.750837
Venue Frontiers in Ecology and Evolution
Abstract

Evolutionary transitions occur when previously-independent replicating entities unite to form more complex individuals. Such transitions have profoundly shaped natural evolutionary history and occur in two forms: fraternal transitions involve lower-level entities that are kin (e.g., transitions to multicellularity or to eusocial colonies), while egalitarian transitions involve unrelated individuals (e.g., the origins of mitochondria). The necessary conditions and evolutionary mechanisms for these transitions to arise continue to be fruitful targets of scientific interest. Here, we examine a range of fraternal transitions in populations of open-ended self-replicating computer programs. These digital cells were allowed to form and replicate kin groups by selectively adjoining or expelling daughter cells. The capability to recognize kin-group membership enabled preferential communication and cooperation between cells. We repeatedly observed group-level traits that are characteristic of a fraternal transition. These included reproductive division of labor, resource sharing within kin groups, resource investment in offspring groups, asymmetrical behaviors mediated by messaging, morphological patterning, and adaptive apoptosis. We report eight case studies from replicates where transitions occurred and explore the diverse range of adaptive evolved multicellular strategies.

BibTeX
⎘ copy to clipboard
@article{moreno2022exploring,
  author={Moreno, Matthew Andres and Ofria, Charles},
  title={Exploring Evolved Multicellular Life Histories in a Open-Ended Digital Evolution System},
  journal={Frontiers in Ecology and Evolution},
  volume={10},
  year={2022},
  url={https://www.frontiersin.org/articles/10.3389/fevo.2022.750837},
  doi={10.3389/fevo.2022.750837},
  issn={2296-701X}
}
Citation
⎘ copy to clipboard

Moreno MA and Ofria C (2022) Exploring Evolved Multicellular Life Histories in a Open-Ended Digital Evolution System. Front. Ecol. Evol. 10:750837. doi: 10.3389/fevo.2022.750837

Supporting Materials

2021 Tag-based regulation of modules in genetic programming improves context-dependent problem solving
Genetic Programming and Evolvable Machines
Download
View at Publisher
Authors
Date July 7th, 2021
DOI 10.1007/s10710-021-09406-8
Venue Genetic Programming and Evolvable Machines
Abstract

We introduce and experimentally demonstrate the utility of tag-based genetic regulation, a new genetic programming (GP) technique that allows programs to dynamically adjust which code modules to express. Tags are evolvable labels that provide a flexible mechanism for referencing code modules. Tag-based genetic regulation extends existing tag-based naming schemes to allow programs to “promote” and “repress” code modules in order to alter expression patterns. This extension allows evolution to structure a program as a gene regulatory network where modules are regulated based on instruction executions. We demonstrate the functionality of tag-based regulation on a range of program synthesis problems. We find that tag-based regulation improves problem-solving performance on context-dependent problems; that is, problems where programs must adjust how they respond to current inputs based on prior inputs. Indeed, the system could not evolve solutions to some context-dependent problems until regulation was added. Our implementation of tag-based genetic regulation is not universally beneficial, however. We identify scenarios where the correct response to a particular input never changes, rendering tag-based regulation an unneeded functionality that can sometimes impede adaptive evolution. Tag-based genetic regulation broadens our repertoire of techniques for evolving more dynamic genetic programs and can easily be incorporated into existing tag-enabled GP systems.

BibTeX
⎘ copy to clipboard
@article{lalejini2021tag,
  title = {Tag-based regulation of modules in genetic programming improves context-dependent problem solving},
  copyright = {All rights reserved},
  issn = {1389-2576, 1573-7632},
  url = {https://link.springer.com/10.1007/s10710-021-09406-8},
  doi = {10.1007/s10710-021-09406-8},
  language = {en},
  urldate = {2021-07-10},
  journal = {Genetic Programming and Evolvable Machines},
  volume = {22},
  number = {3},
  pages = {325--355},
  author = {Lalejini, Alexander and Moreno, Matthew Andres and Ofria, Charles},
  month = jul,
  year = {2021},
}
Citation
⎘ copy to clipboard

Lalejini, A., Moreno, M.A. & Ofria, C. Tag-based regulation of modules in genetic programming improves context-dependent problem solving. Genet Program Evolvable Mach 22, 325–355 (2021). https://doi.org/10.1007/s10710-021-09406-8

Supporting Materials

2019 Toward Open-Ended Fraternal Transitions in Individuality
Artificial Life
Download
View at Publisher
Authors
Date May 1st, 2019
DOI 10.1162/artl_a_00284
Venue Artificial Life
Abstract

The emergence of new replicating entities from the union of simpler entities characterizes some of the most profound events in natural evolutionary history. Such transitions in individuality are essential to the evolution of the most complex forms of life. Thus, understanding these transitions is critical to building artificial systems capable of open-ended evolution. Alas, these transitions are challenging to induce or detect, even with computational organisms. Here, we introduce the DISHTINY (Distributed Hierarchical Transitions in Individuality) platform, which provides simple cell-like organisms with the ability and incentive to unite into new individuals in a manner that can continue to scale to subsequent transitions. The system is designed to encourage these transitions so that they can be studied: organisms that coordinate spatiotemporally can maximize the rate of resource harvest, which is closely linked to their reproductive ability. We demonstrate the hierarchical emergence of multiple levels of individuality among simple cell-like organisms that evolve parameters for manually designed strategies. During evolution, we observe reproductive division of labor and close cooperation among cells, including resource-sharing, aggregation of resource endowments for propagules, and emergence of an apoptosis response to somatic mutation. Many replicate populations evolved to direct their resources toward low-level groups (behaving like multicellular individuals), and many others evolved to direct their resources toward high-level groups (acting as larger-scale multicellular individuals).

BibTeX
⎘ copy to clipboard
@article{moreno2019toward,
  author = {Moreno, Matthew Andres and Ofria, Charles},
  title = "{Toward Open-Ended Fraternal Transitions in Individuality}",
  journal = {Artificial Life},
  volume = {25},
  number = {2},
  pages = {117-133},
  year = {2019},
  month = {05},
  issn = {1064-5462},
  doi = {10.1162/artl_a_00284},
  url = {https://doi.org/10.1162/artl\_a\_00284},
  eprint = {https://direct.mit.edu/artl/article-pdf/25/2/117/1896700/artl\_a\_00284.pdf},
}
Citation
⎘ copy to clipboard

Matthew Andres Moreno, Charles Ofria; Toward Open-Ended Fraternal Transitions in Individuality. Artif Life 2019; 25 (2): 117–133. doi: https://doi.org/10.1162/artl_a_00284

Supporting Materials

2018 A broadly conserved NERD genetically interacts with the exocyst to affect root growth and cell expansion
Journal of Experimental Biology
Download
View at Publisher
Authors
Date May 2nd, 2018
DOI 10.1093/jxb/ery162
Venue Journal of Experimental Biology
Abstract

The exocyst, a conserved, octameric protein complex, helps mediate secretion at the plasma membrane, facilitating specific developmental processes that include control of root meristem size, cell elongation, and tip growth. A genetic screen for second-site enhancers in Arabidopsis identified NEW ENHANCER of ROOT DWARFISM1 (NERD1) as an exocyst interactor. Mutations in NERD1 combined with weak exocyst mutations in SEC8 and EXO70A1 result in a synergistic reduction in root growth. Alone, nerd1 alleles modestly reduce primary root growth, both by shortening the root meristem and by reducing cell elongation, but also result in a slight increase in root hair length, bulging, and rupture. NERD1 was identified molecularly as At3g51050, which encodes a transmembrane protein of unknown function that is broadly conserved throughout the Archaeplastida. A functional NERD1–GFP fusion localizes to the Golgi, in a pattern distinct from the plasma membrane-localized exocyst, arguing against a direct NERD1–exocyst interaction. Structural modeling suggests the majority of the protein is positioned in the lumen, in a β-propeller-like structure that has some similarity to proteins that bind polysaccharides. We suggest that NERD1 interacts with the exocyst indirectly, possibly affecting polysaccharides destined for the cell wall, and influencing cell wall characteristics in a developmentally distinct manner.

BibTeX
⎘ copy to clipboard
@article{cole2018broadly,
  author = {Cole, Rex A and Peremyslov, Valera V and Van Why, Savannah and Moussaoui, Ibrahim and Ketter, Ann and Cool, Renee and Moreno, Matthew Andres and Vejlupkova, Zuzana and Dolja, Valerian V and Fowler, John E},
  title = "{A broadly conserved NERD genetically interacts with the exocyst to affect root growth and cell expansion}",
  journal = {Journal of Experimental Botany},
  volume = {69},
  number = {15},
  pages = {3625-3637},
  year = {2018},
  month = {05},
  issn = {0022-0957},
  doi = {10.1093/jxb/ery162},
  url = {https://doi.org/10.1093/jxb/ery162},
  eprint = {https://academic.oup.com/jxb/article-pdf/69/15/3625/25097718/ery162.pdf},
}
Citation
⎘ copy to clipboard

Rex A Cole, Valera V Peremyslov, Savannah Van Why, Ibrahim Moussaoui, Ann Ketter, Renee Cool, Matthew Andres Moreno, Zuzana Vejlupkova, Valerian V Dolja, John E Fowler, A broadly conserved NERD genetically interacts with the exocyst to affect root growth and cell expansion, Journal of Experimental Botany, Volume 69, Issue 15, 10 July 2018, Pages 3625–3637, https://doi.org/10.1093/jxb/ery162

Supporting Materials

🧳 Conference Papers
2022 Hereditary stratigraphy: genome annotations to enable phylogenetic inference over distributed populations
The 2022 Conference on Artificial Life
Download
View at Publisher
Authors
Date May 13th, 2022
DOI 10.1162/isal_a_00550
Venue The 2022 Conference on Artificial Life
Abstract

Phylogenies provide direct accounts of the evolutionary trajectories behind evolved artifacts in genetic algorithm and artificial life systems. Phylogenetic analyses can also enable insight into evolutionary and ecological dynamics such as selection pressure and frequency-dependent selection. Traditionally, digital evolution systems have recorded data for phylogenetic analyses through perfect tracking where each birth event is recorded in a centralized data structure. This approach, however, does not easily scale to distributed computing environments where evolutionary individuals may migrate between a large number of disjoint processing elements. To provide for phylogenetic analyses in these environments, we propose an approach to enable phylogenies to be inferred via heritable genetic annotations rather than directly tracked. We introduce a “hereditary stratigraphy” algorithm that enables efficient, accurate phylogenetic reconstruction with tunable, explicit trade-offs between annotation memory footprint and reconstruction accuracy. In particular, we demonstrate an approach that enables estimation of the most recent common ancestor (MRCA) between two individuals with fixed relative accuracy irrespective of lineage depth while only requiring logarithmic annotation space complexity with respect to lineage depth This approach can estimate, for example, MRCA generation of two genomes within 10% relative error with 95% confidence up to a depth of a trillion generations with genome annotations smaller than a kilobyte. We also simulate inference over known lineages, recovering up to 85.70% of the information contained in the original tree using 64-bit annotations.

BibTeX
⎘ copy to clipboard
@inproceedings{moreno2022hereditary,
    author = {Moreno, Matthew Andres and Dolson, Emily and Ofria, Charles},
    title = "{Hereditary Stratigraphy: Genome Annotations to Enable Phylogenetic Inference over Distributed Populations}",
    volume = {ALIFE 2022: The 2022 Conference on Artificial Life},
    series = {ALIFE 2022: The 2022 Conference on Artificial Life},
    year = {2022},
    month = {07},
    doi = {10.1162/isal_a_00550},
    url = {https://doi.org/10.1162/isal\_a\_00550},
    note = {64},
    eprint = {https://direct.mit.edu/isal/proceedings-pdf/isal/34/64/2035363/isal\_a\_00550.pdf},
}
Citation
⎘ copy to clipboard

Matthew Andres Moreno, Emily Dolson, Charles Ofria; July 18–22, 2022. “Hereditary Stratigraphy: Genome Annotations to Enable Phylogenetic Inference over Distributed Populations.” Proceedings of the ALIFE 2022: The 2022 Conference on Artificial Life. ALIFE 2022: The 2022 Conference on Artificial Life. Online. (pp. 64). ASME. https://doi.org/10.1162/isal_a_00550

Supporting Materials

2018 Learning an Evolvable Genotype-Phenotype Mapping
The Genetic and Evolutionary Computation Conference
Download
View at Publisher
Authors
Date July 15th, 2018
DOI 10.1145/3205455.3205597
Venue The Genetic and Evolutionary Computation Conference
Abstract

We present AutoMap, a pair of methods for automatic generation of evolvable genotype-phenotype mappings. Both use an artificial neural network autoencoder trained on phenotypes harvested from fitness peaks as the basis for a genotype-phenotype mapping. In the first, the decoder segment of a bottlenecked autoencoder serves as the genotype-phenotype mapping. In the second, a denoising autoencoder serves as the genotype-phenotype mapping. Automatic generation of evolvable genotype-phenotype mappings are demonstrated on the n-legged table problem, a toy problem that defines a simple rugged fitness landscape, and the Scrabble string problem, a more complicated problem that serves as a rough model for linear genetic programming. For both problems, the automatically generated genotype-phenotype mappings are found to enhance evolvability.

BibTeX
⎘ copy to clipboard
@inproceedings{moreno2018learning,
  author = {Moreno, Matthew Andres and Banzhaf, Wolfgang and Ofria, Charles},
  title = {Learning an Evolvable Genotype-Phenotype Mapping},
  year = {2018},
  isbn = {9781450356183},
  publisher = {Association for Computing Machinery},
  address = {New York, NY, USA},
  url = {https://doi.org/10.1145/3205455.3205597},
  doi = {10.1145/3205455.3205597},
  booktitle = {Proceedings of the Genetic and Evolutionary Computation Conference},
  pages = {983–990},
  numpages = {8},
  keywords = {deep learning, indirect encodings, evolvability, genetic algorithms, adaptive representations, genotype-phenotype map},
  location = {Kyoto, Japan},
  series = {GECCO '18}
}
Citation
⎘ copy to clipboard

Matthew Andres Moreno, Wolfgang Banzhaf, and Charles Ofria. 2018. Learning an evolvable genotype-phenotype mapping. In Proceedings of the Genetic and Evolutionary Computation Conference (GECCO ‘18). Association for Computing Machinery, New York, NY, USA, 983–990. https://doi.org/10.1145/3205455.3205597

Supporting Materials

🏃 Workshop Papers
2021 Case Study of Novelty, Complexity, and Adaptation in a Multicellular System
The Fourth Workshop on Open-Ended Evolution (OEE4)
Download
View at Publisher
Authors
Date July 22nd, 2021
Venue The Fourth Workshop on Open-Ended Evolution (OEE4)
Abstract

Continuing generation of novelty, complexity, and adaptation are well-established as core aspects of open-ended evolution. However, the manner in which these phenomena relate remains an area of great theoretical interest. It is yet to be firmly established to what extent these phenomena are coupled and by what means they interact. In this work, we track the co-evolution of novelty, complexity, and adaptation in a case study from a simulation system designed to study the evolution of digital multicellularity. In this case study, we describe ten qualitatively distinct multicellular morphologies, several of which exhibit asymmetrical growth and distinct life stages. We contextualize the evolutionary history of these morphologies with measurements of complexity and adaptation. Our case study suggests a loose, sometimes divergent, relationship can exist among novelty, complexity, and adaptation.

BibTeX
⎘ copy to clipboard
@inproceedings{moreno2021case,
  author = {Moreno, Matthew Andres and Papa, Santiago Rodriguez and Ofria, Charles},
  title = {Case Study of Novelty, Complexity, and Adaptation in a Multicellular System},
  year = {2021},
  url = {http://workshops.alife.org/oee4/papers/moreno-oee4-camera-ready.pdf},
  booktitle = {OEE4: The Fourth Workshop on Open-Ended Evolution},
  numpages = {9},
  location = {Prague, Czech Republic}
}
Citation
⎘ copy to clipboard

Matthew Andres Moreno, Santiago Rodriguez Papa and Charles Ofria. 2021. Case Study of Novelty, Complexity, and Adaptation in a Multicellular System. OEE4: The Fourth Workshop on Open-Ended Evolution.

Supporting Materials

2021 Conduit: A C++ Library for Best-effort High Performance Computing
ACM Workshop on Parallel and Distributed Evolutionary Inspired Methods
Download
View at Publisher
Authors
Date May 21st, 2021
DOI 10.1145/3449726.3463205
Venue ACM Workshop on Parallel and Distributed Evolutionary Inspired Methods
Abstract

Developing software to effectively take advantage of growth in parallel and distributed processing capacity poses significant challenges. Traditional programming techniques allow a user to assume that execution, message passing, and memory are always kept synchronized. However, maintaining this consistency becomes increasingly costly at scale. One proposed strategy is “best-effort computing”, which relaxes synchronization and hardware reliability requirements, accepting nondeterminism in exchange for efficiency. Although many programming languages and frameworks aim to facilitate software development for high performance applications, existing tools do not directly provide a prepackaged best-effort interface. The Conduit C++ Library aims to provide such an interface for convenient implementation of software that uses best-effort inter-thread and inter-process communication. Here, we describe the motivation, objectives, design, and implementation of the library. Benchmarks on a communication-intensive graph coloring problem and a compute-intensive digital evolution simulation show that Conduit’s best-effort model can improve scaling efficiency and solution quality, particularly in a distributed, multi-node context.

BibTeX
⎘ copy to clipboard
@inproceedings{moreno2021conduit,
  author = {Moreno, Matthew Andres and Papa, Santiago Rodriguez and Ofria, Charles},
  title = {Conduit: A C++ Library for Best-Effort High Performance Computing},
  year = {2021},
  isbn = {9781450383516},
  publisher = {Association for Computing Machinery},
  address = {New York, NY, USA},
  url = {https://doi.org/10.1145/3449726.3463205},
  doi = {10.1145/3449726.3463205},
  booktitle = {Proceedings of the Genetic and Evolutionary Computation Conference Companion},
  pages = {1795–1800},
  numpages = {6},
  keywords = {high performance computing, best-effort computing},
  location = {Lille, France},
  series = {GECCO '21}
}
Citation
⎘ copy to clipboard

Matthew Andres Moreno, Santiago Rodriguez Papa, and Charles Ofria. 2021. Conduit: a C++ library for best-effort high performance computing. In Proceedings of the Genetic and Evolutionary Computation Conference Companion (GECCO ‘21). Association for Computing Machinery, New York, NY, USA, 1795–1800. https://doi.org/10.1145/3449726.3463205

Supporting Materials

2018 Understanding Fraternal Transitions in Individuality
The Third Workshop on Open-Ended Evolution (OEE3)
Download
View at Publisher
Authors
Date July 22nd, 2018
Venue The Third Workshop on Open-Ended Evolution (OEE3)
Abstract

The emergence of new replicating entities from the union of existing entities represent some of the most profound events in natural evolutionary history. Facilitating such evolutionary transitions in individuality is essential to the derivation of the most complex forms of life. As such, understanding these transitions is critical for building artificial systems capable of open-ended evolution. Alas, these transitions are challenging to induce or detect, even with computational organisms. Here, we introduce the DISHTINY (DIStributed Hierarchical Transitions in IndividualitY) platform, which provides simple cell-like organisms with the ability and incentive to unite into new individuals in a manner that can continue to scale to subsequent transitions. The system is designed to encourage these transitions so that they can be studied: organisms that coordinate spatiotemporally can maximize the rate of resource harvest, which is closely linked to their reproductive ability. We demonstrate the hierarchical emergence of multiple levels of individuality among simple cell-like organisms that evolve parameters for manually-designed strategies. During evolution, we observe reproductive division of labor and close cooperation between cells, including resource-sharing, aggregation of resource endowments for propagules, and emergence of an apoptosis response to somatic mutation. While a few replicate populations evolved selfish behaviors, many evolved to direct their resources toward low-level groups (behaving like multi-cellular individuals), and many others evolved to direct their resources toward high-level groups (acting as larger-scale multi-cellular individuals). Finally, we demonstrated that genotypes that encode higher-level individuality consistently outcompete those that encode lower-level individuality.

BibTeX
⎘ copy to clipboard
@inproceedings{moreno2018understanding,
  author = {Moreno, Matthew Andres and Ofria, Charles},
  title = {Understanding Fraternal Transitions in Individuality},
  year = {2018},
  url = {http://workshops.alife.org/oee3/papers/moreno-oee3-final.pdf},
  booktitle = {OEE3: The Third Workshop on Open-Ended Evolution},
  numpages = {8},
  location = {Tokyo, Japan}
}
Citation
⎘ copy to clipboard

Matthew Andres Moreno and Charles Ofria. 2018. Understanding Fraternal Transitions in Individuality. OEE3: The Third Workshop on Open-Ended Evolution.

Supporting Materials

🪧 Extended Abstracts
2022 Hereditary stratigraphy: genome annotations to enable phylogenetic inference over distributed populations
The Genetic and Evolutionary Computation Conference
Download
View at Publisher
Authors
Date May 13th, 2022
DOI 10.1145/3520304.3533937
Venue The Genetic and Evolutionary Computation Conference
Abstract

Phylogenetic analyses can also enable insight into evolutionary and ecological dynamics such as selection pressure and frequency dependent selection in digital evolution systems. Traditionally digital evolution systems have recorded data for phylogenetic analyses through perfect tracking where each birth event is recorded in a centralized data structures. This approach, however, does not easily scale to distributed computing environments where evolutionary individuals may migrate between a large number of disjoint processing elements. To provide for phylogenetic analyses in these environments, we propose an approach to infer phylogenies via heritable genetic annotations rather than directly track them. We introduce a “hereditary stratigraphy” algorithm that enables efficient, accurate phylogenetic reconstruction with tunable, explicit trade-offs between annotation memory footprint and reconstruction accuracy. This approach can estimate, for example, MRCA generation of two genomes within 10% relative error with 95% confidence up to a depth of a trillion generations with genome annotations smaller than a kilobyte. We also simulate inference over known lineages, recovering up to 85.70% of the information contained in the original tree using a 64-bit annotation.

BibTeX
⎘ copy to clipboard
@inproceedings{moreno2022hereditary_gecco,
  author = {Moreno, Matthew Andres and Dolson, Emily and Ofria, Charles},
  title = {Hereditary Stratigraphy: Genome Annotations to Enable Phylogenetic Inference over Distributed Populations},
  year = {2022},
  isbn = {9781450392686},
  publisher = {Association for Computing Machinery},
  address = {New York, NY, USA},
  url = {https://doi.org/10.1145/3520304.3533937},
  doi = {10.1145/3520304.3533937},
  booktitle = {Proceedings of the Genetic and Evolutionary Computation Conference Companion},
  pages = {65–66},
  numpages = {2},
  keywords = {phylogenetics, decentralized algorithms, genetic algorithms, digital evolution, genetic programming},
  location = {Boston, Massachusetts},
  series = {GECCO '22}
}
Citation
⎘ copy to clipboard

Matthew Andres Moreno, Emily Dolson, and Charles Ofria. 2022. Hereditary stratigraphy: genome annotations to enable phylogenetic inference over distributed populations. In Proceedings of the Genetic and Evolutionary Computation Conference Companion (GECCO ‘22). Association for Computing Machinery, New York, NY, USA, 65–66. https://doi.org/10.1145/3520304.3533937

Supporting Materials

2021 Conduit: A C++ Library for Best-effort High Performance Computing
The 6th International Workshop on Modeling and Simulation of and by Parallel and Distributed Systems (MSPDS 2020)
Download
View at Publisher
Authors
Date March 12th, 2021
Venue The 6th International Workshop on Modeling and Simulation of and by Parallel and Distributed Systems (MSPDS 2020)
Abstract

Developing software to effectively take advantage of growth in parallel and distributed processing capacity poses significant challenges. Best-effort computing models, which relax synchronization requirements, have been proposed as a strategy to overcome challenges harness high performance computing at extreme scale. Although many programming languages and frameworks aim to facilitate software development for high performance applications, existing prevalent tools do not expose an explicit best-effort interface. The Conduit C++ Library aims to provide a convenient interface for best-effort inter-thread and inter-process communication. Here, we describe the motivation, objectives, design, and implementation of the library.

BibTeX
⎘ copy to clipboard
@inproceedings{moreno2021conduit_hpcs,
  author = {Moreno, Matthew Andres and Papa, Santiago Rodriguez and Ofria, Charles},
  title = {Conduit: A C++ Library for Best-Effort High Performance Computing},
  year = {2021},
  booktitle = {The 6th International Workshop on Modeling and Simulation of and by Parallel and Distributed Systems (MSPDS 2020)},
  numpages = {2},
  keywords = {high performance computing, best-effort computing},
  location = {Barcelona, Sapin},
  series = {HPCS 2021}
}

Citation
⎘ copy to clipboard

Matthew Andres Moreno, Santiago Rodriguez Papa and Charles Ofria. 2021. Conduit: A C++ Library for Best-Effort High Performance Computing. MSPDS 2020: The 6th International Workshop on Modeling and Simulation of and by Parallel and Distributed Systems.

Supporting Materials

📝 Preprints
2022 Best-Effort Communication Improves Performance and Scales Robustly on Conventional Hardware
arXiv
Download
View at Publisher
Authors
Date November 23rd, 2022
DOI 10.48550/arXiv.2211.10897
Venue arXiv
Abstract

Here, we test the performance and scalability of fully-asynchronous, best-effort communication on existing, commercially-available HPC hardware.

A first set of experiments tested whether best-effort communication strategies can benefit performance compared to the traditional perfect communication model. At high CPU counts, best-effort communication improved both the number of computational steps executed per unit time and the solution quality achieved within a fixed-duration run window.

Under the best-effort model, characterizing the distribution of quality of service across processing components and over time is critical to understanding the actual computation being performed. Additionally, a complete picture of scalability under the best-effort model requires analysis of how such quality of service fares at scale. To answer these questions, we designed and measured a suite of quality of service metrics: simulation update period, message latency, message delivery failure rate, and message delivery coagulation. Under a lower communication-intensivity benchmark parameterization, we found that median values for all quality of service metrics were stable when scaling from 64 to 256 process. Under maximal communication intensivity, we found only minor – and, in most cases, nil – degradation in median quality of service.

In an additional set of experiments, we tested the effect of an apparently faulty compute node on performance and quality of service. Despite extreme quality of service degradation among that node and its clique, median performance and quality of service remained stable.

BibTeX
⎘ copy to clipboard
@misc{moreno2022best,
  doi = {10.48550/ARXIV.2211.10897},

  url = {https://arxiv.org/abs/2211.10897},

  author = {Moreno, Matthew Andres and Ofria, Charles},

  keywords = {Distributed, Parallel, and Cluster Computing (cs.DC), FOS: Computer and information sciences, FOS: Computer and information sciences},

  title = {Best-Effort Communication Improves Performance and Scales Robustly on Conventional Hardware},

  publisher = {arXiv},

  year = {2022},

  copyright = {arXiv.org perpetual, non-exclusive license}
}
Citation
⎘ copy to clipboard

Moreno, M. A., & Ofria, C. (2022). Best-Effort Communication Improves Performance and Scales Robustly on Conventional Hardware. arXiv preprint arXiv:2211.10897.

Supporting Materials

2022 SignalGP-Lite: Event Driven Genetic Programming Library for Large-Scale Artificial Life Applications
arXiv
Download
View at Publisher
Authors
Date August 1st, 2022
DOI 10.48550/arXiv.2108.00382
Venue arXiv
Abstract

Developing software to effectively take advantage of growth in parallel and distributed processing capacity poses significant challenges. Traditional programming techniques allow a user to assume that execution, message passing, and memory are always kept synchronized. However, maintaining this consistency becomes increasingly costly at scale. One proposed strategy is “best-effort computing”, which relaxes synchronization and hardware reliability requirements, accepting nondeterminism in exchange for efficiency. Although many programming languages and frameworks aim to facilitate software development for high performance applications, existing tools do not directly provide a prepackaged best-effort interface. The Conduit C++ Library aims to provide such an interface for convenient implementation of software that uses best-effort inter-thread and inter-process communication. Here, we describe the motivation, objectives, design, and implementation of the library. Benchmarks on a communication-intensive graph coloring problem and a compute-intensive digital evolution simulation show that Conduit’s best-effort model can improve scaling efficiency and solution quality, particularly in a distributed, multi-node context.

BibTeX
⎘ copy to clipboard
@misc{moreno2021signalgp,
  doi = {10.48550/ARXIV.2108.00382},

  url = {https://arxiv.org/abs/2108.00382},

  author = {Moreno, Matthew Andres and Papa, Santiago Rodriguez and Lalejini, Alexander and Ofria, Charles},

  keywords = {Neural and Evolutionary Computing (cs.NE), FOS: Computer and information sciences, FOS: Computer and information sciences},

  title = {SignalGP-Lite: Event Driven Genetic Programming Library for Large-Scale Artificial Life Applications},

  publisher = {arXiv},

  year = {2021},

  copyright = {arXiv.org perpetual, non-exclusive license}
}
Citation
⎘ copy to clipboard

Moreno, M. A., Rodriguez Papa, S., & Ofria, C. (2021). SignalGP-Lite: Event Driven Genetic Programming Library for Large-Scale Artificial Life Applications. arXiv preprint arXiv:2108.00382.

Supporting Materials

2021 Matchmaker, Matchmaker, Make Me a Match: Geometric, Variational, and Evolutionary Implications of Criteria for Tag Affinity
arXiv
Download
View at Publisher
Authors
Date August 10th, 2021
DOI 10.48550/arXiv.2108.04507
Venue arXiv
Abstract

Genetic programming and artificial life systems commonly employ tag-matching schemes to determine interactions between model components. However, the implications of criteria used to determine affinity between tags with respect to constraints on emergent connectivity, canalization of changes to connectivity under mutation, and evolutionary dynamics have not been considered. We highlight differences between tag-matching criteria with respect to geometric constraint and variation generated under mutation. We find that tag-matching criteria can influence the rate of adaptive evolution and the quality of evolved solutions. Better understanding of the geometric, variational, and evolutionary properties of tag-matching criteria will facilitate more effective incorporation of tag matching into genetic programming and artificial life systems. By showing that tag-matching criteria influence connectivity patterns and evolutionary dynamics, our findings also raise fundamental questions about the properties of tag-matching systems in nature.

BibTeX
⎘ copy to clipboard
@misc{moreno2021matchmaker,
  doi = {10.48550/ARXIV.2108.04507},
  url = {https://arxiv.org/abs/2108.04507},
  author = {Moreno, Matthew Andres and Lalejini, Alexander and Ofria, Charles},
  keywords = {Neural and Evolutionary Computing (cs.NE), FOS: Computer and information sciences, FOS: Computer and information sciences},
  title = {Matchmaker, Matchmaker, Make Me a Match: Geometric, Variational, and Evolutionary Implications of Criteria for Tag Affinity},
  publisher = {arXiv},
  year = {2021},
  copyright = {arXiv.org perpetual, non-exclusive license}
}
Citation
⎘ copy to clipboard

Moreno, M. A., Lalejini, A., & Ofria, C. (2021). Matchmaker, Matchmaker, Make Me a Match: Geometric, Variational, and Evolutionary Implications of Criteria for Tag Affinity. arXiv preprint arXiv:2108.04507.

Supporting Materials

✨ Miscellanea
2017 Investigating the Relationship Between Plasticity and Evolvability in a Genetic Regulatory Network Model
Undergraduate Capstone Project
Download
Authors
Date May 1st, 2017
Venue Undergraduate Capstone Project
Abstract

Biological organisms are thought to possess traits that facilitate evolution. The term evolvability was coined to describe this type of adaptation. The question of evolvability has special practical relevance to computer science researchers engaged in longstanding efforts to harness evolution as an algorithm for automated design. It is hoped that a more nuanced understanding of evolvability inspired by biological evolution will translate to more powerful digital evolution techniques. To this end, the relationship between evolvability and environmental influence on the phenotype was investigated using digital experiments performed on a genetic regulatory model. The phenotypic response of champion individuals evolved under regimes of direct plasticity, and indirect plasticity was assessed. The model predicts that direct plasticity and indirect plasticity decrease and increase the frequency of silent mutations, respectively.

Supporting Materials

2017 Evolvability: What Is It and How Do We Get It?
Otis C. Chapman Honors Program Thesis
Download
View at Publisher
Authors
Date April 17th, 2017
Venue Otis C. Chapman Honors Program Thesis
Abstract

Biological organisms exhibit spectacular adaptation to their environments. However, another marvel of biology lurks behind the adaptive traits that organisms exhibit over the course of their lifespans: it is hypothesized that biological organisms also exhibit adaptation to the evolutionary process itself. That is, biological organisms are thought to possess traits that facilitate evolution. The term evolvability was coined to describe this type of adaptation. The question of evolvability has special practical relevance to computer science researchers engaged in longstanding efforts to harness evolution as an algorithm for automated design. It is hoped that a more nuanced understanding of biological evolution will translate to more powerful digital evolution techniques. This thesis will present a theoretical overview of evolvability, illustrated with examples from biology and evolutionary computing, and discuss computational experiments probing the relationship between environmental influence on the phenotype and evolvability.

BibTeX
⎘ copy to clipboard
@thesis{moreno2017evolvability,
  author={Moreno, Matthew Andres},
  title={Evolvability: What Is It and How Do We Get It?},
  school={University of Puget Sound},
  type={Bachelor's Thesis},
  url={http://soundideas.pugetsound.edu/honors_program_theses/22/},
  year={2017}
}
Citation
⎘ copy to clipboard

Moreno, Matthew Andres, “Evolvability: What Is It and How Do We Get It?” (2017). Honors Program Theses. 22. https://soundideas.pugetsound.edu/honors_program_theses/22

Supporting Materials

2017 Silence of the Jams: The Effects of Self-Driving Cars on Traffic Patterns in the Puget Sound Region
CoMAP Mathematical Competition in Modeling
Download
Authors
Date January 23rd, 2017
Venue CoMAP Mathematical Competition in Modeling
Abstract

We present a model of traffic in the greater Seattle area to understand how an increasing frequency of self-driving cars will change traffic dynamics in the area. We apply a two-component micro/macro traffic simulation to data for portions of Interstates 5, 90, 405, and State Route 520 to consider the impact of autonomous vehicles on regional traffic flow. We consider 0%, 10%, 50%, and 90% autonomous traffic.

Our micro model is designed to make predictions about the impact of self-driving vehicles on fundamental traffic dynamics and employs a cellular automata approach, inspired by the work of Nagel and Schrekenberg, to model interactions between a number of independent vehicles on a road. In this simulation, vehicles exhibit simple following behavior and experience occasional random deceleration events. We introduce a distinction between self-driving and human-driven cars, where autonomous vehicles exhibit more uniform cruising speed compared to human drivers and can follow safely at a much closer distance compared to human drivers.

Using this micro-level simulation, we predict a relation between traffic speed and traffic density for traffic with a varying composition of autonomous vehicles. Our macro model employs a system of ordinary differential equations to investigate the flow of traffic between segments of road in the region of study. We assess the impact of self-driving traffic composition on performance of the regional highway network at peak and average traffic loads, measuring trip times along each major highway and between a representative set of regional destinations. The travel time predictions of the macro model are compared to archived travel time data from the the Washington State Department of Transportation (WSDOT).

These models, in conjunction, facilitate insightful study of how different percentages of self-driving cars on the motorways change traffic flow under heavy and light traffic conditions. The quantitative accuracy of our macro model is observed to decline significantly with increasing traffic loads. Nevertheless, the results of our study demonstrate clear qualitative trends that inform our recommendations. Although our macro model does not make quantitatively accurate predictions, we observe a trend indicating that at high traffic densities, traffic delays decrease with increasing percentages of self-driving cars on the road.

Analysis of our micro model reveals that assigning traffic lanes for the exclusive use of autonomous vehicles can be a boon to traffic flow efficiency. When the concentration of self-driving cars rises to above 5%, our micro model predicts that it becomes advantageous to implement at least one “self-driving-car only” lane in roads with 3 or more lanes. Under some circumstances, this strategy has the potential to result in reduced travel delays for human-driven and autonomously controlled vehicles alike.

Supporting Materials

🔬 Research Software
2022 phylotrackpy
Python package published via PyPI
View on GitHub
View at Publisher
Authors
Date January 1st, 2022
Venue Python package published via PyPI

phylotrackpy is a Python phylogeny tracker.


2022 hstrat
Python package published via PyPI
View on GitHub
View at Publisher
Authors
Date January 1st, 2022
Venue Python package published via PyPI

hstrat enables phylogenetic inference on distributed digital evolution populations.

BibTeX
⎘ copy to clipboard
@article{moreno2022hereditary,
  author = {Moreno, Matthew Andres and Dolson, Emily and Ofria, Charles},
  doi = {https://doi.org/10.1162/isal_a_00550},
  journal = {Proceedings of the ALIFE 2022: The 2022 Conference on Artificial Life},
  month = {7},
  pages = {64--74},
  title = {{Hereditary Stratigraphy: Genome Annotations to Enable Phylogenetic Inference over Distributed Populations}},
  volume = {Proceedings of the ALIFE 2022: The 2022 Conference on Artificial Life},
  year = {2022}
}
Citation
⎘ copy to clipboard

Moreno, M. A., Dolson, E., & Ofria, C. (2022). Hereditary Stratigraphy: Genome Annotations to Enable Phylogenetic Inference over Distributed Populations. Proceedings of the ALIFE 2022: The 2022 Conference on Artificial Life, Proceedings of the ALIFE 2022: The 2022 Conference on Artificial Life(), 64–74. https://doi.org/https://doi.org/10.1162/isal_a_00550


2022 alifedata-phyloinformatics-convert
Python package published via PyPI
View on GitHub
View at Publisher
Authors
Date January 1st, 2022
Venue Python package published via PyPI

alifedata-phyloinformatics-convert helps apply traditional phyloinformatics software to alife standardized data.


2020 signalgp-lite
header-only C++ library
View on GitHub
Authors
Date January 1st, 2020
Venue header-only C++ library

A genetic programming implementation designed for large-scale artificial life applications. Organized as a header-only C++ library. Inspired by Alex Lalejini’s SignalGP.


2020 conduit
header-only C++ library
View on GitHub
Authors
Date January 1st, 2020
Venue header-only C++ library

C++ library that wraps intra-thread, inter-thread, and inter-process communication in a uniform, modular, object-oriented interface, with a focus on asynchronous high-performance computing applications.


2020 dishtiny
header-only C++ library
View on GitHub
Authors
Date January 1st, 2020
Venue header-only C++ library

C++ library for digital evolution simulations studying digital multicellularity and fraternal major evolutionary transitions in individuality.


2018 Empirical
header-only C++ library
View on GitHub
Date January 1st, 2018
Venue header-only C++ library

Empirical is a library of tools for developing useful, efficient, reliable, and available scientific software. The provided code is header-only and encapsulated into the emp namespace, so it is simple to incorporate into existing projects.

BibTeX
⎘ copy to clipboard
@software{Ofria_Empirical_C_library_2020,
  author = {Ofria, Charles and Moreno, Matthew Andres and Dolson, Emily and Lalejini, Alex and Rodriguez Papa, Santiago and Fenton, Jake and Perry, Katherine and Jorgensen, Steven and hoffmanriley and grenewode and Baldwin Edwards, Oliver and Stredwick, Jason and cgnitash and theycallmeHeem and Vostinar, Anya and Moreno, Ryan and Schossau, Jory and Zaman, Luis and djrain},
  doi = {10.5281/zenodo.4141943},
  license = {MIT},
  month = {10},
  title = {{Empirical: C++ library for efficient, reliable, and accessible scientific software}},
  url = {https://github.com/devosoft/Empirical},
  version = {0.0.4},
  year = {2020}
}
Citation
⎘ copy to clipboard

Ofria, C., Moreno, M. A., Dolson, E., Lalejini, A., Rodriguez Papa, S., Fenton, J., Perry, K., Jorgensen, S., , H., , G., Baldwin Edwards, O., Stredwick, J., , C., , T., Vostinar, A., Moreno, R., Schossau, J., Zaman, L., & , D. (2020). Empirical: C++ library for efficient, reliable, and accessible scientific software (Version 0.0.4) [Computer software]. https://doi.org/10.5281/zenodo.4141943

Supporting Materials

💖 Prosocial Software
2020 Gw███tt School District Covid-19 Dashboard
Shiny R app published via shinyapps.io
View on GitHub
View at Publisher
Authors
Date October 25th, 2020
Venue Shiny R app published via shinyapps.io

This website pulls directly from publicly available Gw███tt County Public Schools (GCPS) data. As the data on the website are provided as discrete pdf files per day, it can be difficult to see patterns. This website therefore serves as a way to visualize the data for interested stakeholders. This requires data to be scraped from PDF reports (now also located here) put together by the Gw███tt School District, packaged with a shiny web app, and deployed to https://shinyapps.io. We also automatically upload up-to-date consolidated datasets to the project’s Open Science Framework page.

Supporting Materials

2018 Reinterpretive Label Guerilla Art Software
containerized workflow hosted via SingularityHub
View on GitHub
Authors
Date June 17th, 2018
Venue containerized workflow hosted via SingularityHub

Anything can become art by the addition of a sufficiently clever interpretive label, even really lame things. So, let’s reinterpret lame things and make them awesome by adding interpretive label stickers!

Supporting Materials

2017 Center for Writing, Learning, & Teaching Sunman Sticker Pack
cross-platform sticker pack published via MojiLaLa
View on GitHub
View at Publisher
Authors
Date August 30th, 2017
Venue cross-platform sticker pack published via MojiLaLa

Our beloved Sunman, representing the Center for Writing, Learning, & Teaching at the University of Puget Sound. This repository contains the original Sunman sticker artworks and press/publicity kits generated by MojiLaLa, all as .png files.


🧰 Incidental Software
2022 opytional
Python package published via PyPI
View on GitHub
View at Publisher
Authors
Date January 1st, 2022
Venue Python package published via PyPI

opytional makes working with values that might be None safer and easier.


2022 interval-search
Python package published via PyPI
View on GitHub
View at Publisher
Authors
Date January 1st, 2022
Venue Python package published via PyPI

interval-search provides predicate-based binary and doubling search implementations.


2020 teeplot
Python package published via PyPI
View on GitHub
View at Publisher
Authors
Date January 1st, 2020
Venue Python package published via PyPI

teeplot automatically saves a copy of rendered Jupyter notebook plots.


2019 keyname
Python package published via PyPI
View on GitHub
View at Publisher
Authors
Date January 1st, 2019
Venue Python package published via PyPI

keyname helps easily pack and unpack metadata in a filename.


🧑‍🏫 Teaching Materials
2021 NP Completeness Lecture Series
CSE 431 Algorithm Engineering at Michigan State University
Authors
Date November 29th, 2021
Venue CSE 431 Algorithm Engineering at Michigan State University

Intuition-first talks introducing & defining complexity classes, covering the construction & interpretation of reductions with help a sandwich-making robot, outlining the Cooke-Levin theorem via the shenanigans of a certain Doge Jr. picking a SAT lock to get out of doing his NP homework, and unpacking a literal barrel of monkeys (TM) to explore the P ?= NP question.

Supporting Materials

2021 Diversity, Equity, & Inclusion Discussion Seminar
Workshop for Avida-ED Software Development
View at Publisher
Authors
Date July 9th, 2021
Venue Workshop for Avida-ED Software Development

Facilitated group discussion of “Real talk: saturated sites of violence in CS education” (Rankin et. al, 2021).

Rankin, Yolanda A., Jakita O. Thomas, and Sheena Erete. “Real talk: saturated sites of violence in CS education.” ACM Inroads 12.2 (2021): 30-37.


2020 Nitty Gritty on Professional Jekyll Posts
View at Publisher
Authors
Date July 16th, 2020
Abstract

Class blogs have grown into a core tool of the educational experiences, like the CSE 491 Advanced C++ Seminar and this summer’s WAVES Workshop, I’ve had the pleasure of facilitating. I typically have students contribute to the blog as part of their own learning experience.

I love this format because it helps,

develop students’ professional communication skills, provide students a sense of accomplishment via a tangible, rewarding deliverable, showcase students’ work to the general public, showcase students’ work to potential employers, showcase students’ work to mentors’ evaluators, more effectively capitalize on students’ work after they leave the lab group or classroom, and sausage factory more useful information out into the ether that someday somebody will be very happy to have Googled upon.

This writeup provides guidance targeted to students writing entries for these class blogs (hi! :wave:). It should also contain a few actionable nuggets for other authors writing professional blog posts with Jekyll, though! I hope that other instructors, in particular, may find this a useful resource for bringing similar models into their classroom. :cowboy_hat_face:


2020 Zero to Sixty: Onboarding Tutorials for Native & Web Software Development with C++
Workshop for Avida-ED Software Development
View at Publisher
Authors
Date May 26th, 2020
Venue Workshop for Avida-ED Software Development

Hands-on, asynchronous 4 day tutorial series covering foundational web development competencies, C++ development with the Empirical library, and compiling for the web with Emscripten.


2017 Information Theory Through Toy Examples
Download
Authors
Date October 26th, 2017

An illustrated introduction to the intuition, terminology, & math behind information theory. Elucidates entropy & information through application to dice rolling (independent variables) and the interplay between readings from ambient outdoor light & precipitation meters (dependent variables).


🔤 Alphabetical Listing
A broadly conserved NERD genetically interacts with the exocyst to affect root growth and cell expansion
Download
View at Publisher
Authors
Date May 2nd, 2018
DOI 10.1093/jxb/ery162
Venue Journal of Experimental Biology
Abstract

The exocyst, a conserved, octameric protein complex, helps mediate secretion at the plasma membrane, facilitating specific developmental processes that include control of root meristem size, cell elongation, and tip growth. A genetic screen for second-site enhancers in Arabidopsis identified NEW ENHANCER of ROOT DWARFISM1 (NERD1) as an exocyst interactor. Mutations in NERD1 combined with weak exocyst mutations in SEC8 and EXO70A1 result in a synergistic reduction in root growth. Alone, nerd1 alleles modestly reduce primary root growth, both by shortening the root meristem and by reducing cell elongation, but also result in a slight increase in root hair length, bulging, and rupture. NERD1 was identified molecularly as At3g51050, which encodes a transmembrane protein of unknown function that is broadly conserved throughout the Archaeplastida. A functional NERD1–GFP fusion localizes to the Golgi, in a pattern distinct from the plasma membrane-localized exocyst, arguing against a direct NERD1–exocyst interaction. Structural modeling suggests the majority of the protein is positioned in the lumen, in a β-propeller-like structure that has some similarity to proteins that bind polysaccharides. We suggest that NERD1 interacts with the exocyst indirectly, possibly affecting polysaccharides destined for the cell wall, and influencing cell wall characteristics in a developmentally distinct manner.

BibTeX
⎘ copy to clipboard
@article{cole2018broadly,
  author = {Cole, Rex A and Peremyslov, Valera V and Van Why, Savannah and Moussaoui, Ibrahim and Ketter, Ann and Cool, Renee and Moreno, Matthew Andres and Vejlupkova, Zuzana and Dolja, Valerian V and Fowler, John E},
  title = "{A broadly conserved NERD genetically interacts with the exocyst to affect root growth and cell expansion}",
  journal = {Journal of Experimental Botany},
  volume = {69},
  number = {15},
  pages = {3625-3637},
  year = {2018},
  month = {05},
  issn = {0022-0957},
  doi = {10.1093/jxb/ery162},
  url = {https://doi.org/10.1093/jxb/ery162},
  eprint = {https://academic.oup.com/jxb/article-pdf/69/15/3625/25097718/ery162.pdf},
}
Citation
⎘ copy to clipboard

Rex A Cole, Valera V Peremyslov, Savannah Van Why, Ibrahim Moussaoui, Ann Ketter, Renee Cool, Matthew Andres Moreno, Zuzana Vejlupkova, Valerian V Dolja, John E Fowler, A broadly conserved NERD genetically interacts with the exocyst to affect root growth and cell expansion, Journal of Experimental Botany, Volume 69, Issue 15, 10 July 2018, Pages 3625–3637, https://doi.org/10.1093/jxb/ery162

Supporting Materials
Best-Effort Communication Improves Performance and Scales Robustly on Conventional Hardware
Download
View at Publisher
Authors
Date November 23rd, 2022
DOI 10.48550/arXiv.2211.10897
Venue arXiv
Abstract

Here, we test the performance and scalability of fully-asynchronous, best-effort communication on existing, commercially-available HPC hardware.

A first set of experiments tested whether best-effort communication strategies can benefit performance compared to the traditional perfect communication model. At high CPU counts, best-effort communication improved both the number of computational steps executed per unit time and the solution quality achieved within a fixed-duration run window.

Under the best-effort model, characterizing the distribution of quality of service across processing components and over time is critical to understanding the actual computation being performed. Additionally, a complete picture of scalability under the best-effort model requires analysis of how such quality of service fares at scale. To answer these questions, we designed and measured a suite of quality of service metrics: simulation update period, message latency, message delivery failure rate, and message delivery coagulation. Under a lower communication-intensivity benchmark parameterization, we found that median values for all quality of service metrics were stable when scaling from 64 to 256 process. Under maximal communication intensivity, we found only minor – and, in most cases, nil – degradation in median quality of service.

In an additional set of experiments, we tested the effect of an apparently faulty compute node on performance and quality of service. Despite extreme quality of service degradation among that node and its clique, median performance and quality of service remained stable.

BibTeX
⎘ copy to clipboard
@misc{moreno2022best,
  doi = {10.48550/ARXIV.2211.10897},

  url = {https://arxiv.org/abs/2211.10897},

  author = {Moreno, Matthew Andres and Ofria, Charles},

  keywords = {Distributed, Parallel, and Cluster Computing (cs.DC), FOS: Computer and information sciences, FOS: Computer and information sciences},

  title = {Best-Effort Communication Improves Performance and Scales Robustly on Conventional Hardware},

  publisher = {arXiv},

  year = {2022},

  copyright = {arXiv.org perpetual, non-exclusive license}
}
Citation
⎘ copy to clipboard

Moreno, M. A., & Ofria, C. (2022). Best-Effort Communication Improves Performance and Scales Robustly on Conventional Hardware. arXiv preprint arXiv:2211.10897.

Supporting Materials
Case Study of Novelty, Complexity, and Adaptation in a Multicellular System
Download
View at Publisher
Authors
Date July 22nd, 2021
Venue The Fourth Workshop on Open-Ended Evolution (OEE4)
Abstract

Continuing generation of novelty, complexity, and adaptation are well-established as core aspects of open-ended evolution. However, the manner in which these phenomena relate remains an area of great theoretical interest. It is yet to be firmly established to what extent these phenomena are coupled and by what means they interact. In this work, we track the co-evolution of novelty, complexity, and adaptation in a case study from a simulation system designed to study the evolution of digital multicellularity. In this case study, we describe ten qualitatively distinct multicellular morphologies, several of which exhibit asymmetrical growth and distinct life stages. We contextualize the evolutionary history of these morphologies with measurements of complexity and adaptation. Our case study suggests a loose, sometimes divergent, relationship can exist among novelty, complexity, and adaptation.

BibTeX
⎘ copy to clipboard
@inproceedings{moreno2021case,
  author = {Moreno, Matthew Andres and Papa, Santiago Rodriguez and Ofria, Charles},
  title = {Case Study of Novelty, Complexity, and Adaptation in a Multicellular System},
  year = {2021},
  url = {http://workshops.alife.org/oee4/papers/moreno-oee4-camera-ready.pdf},
  booktitle = {OEE4: The Fourth Workshop on Open-Ended Evolution},
  numpages = {9},
  location = {Prague, Czech Republic}
}
Citation
⎘ copy to clipboard

Matthew Andres Moreno, Santiago Rodriguez Papa and Charles Ofria. 2021. Case Study of Novelty, Complexity, and Adaptation in a Multicellular System. OEE4: The Fourth Workshop on Open-Ended Evolution.

Supporting Materials
Center for Writing, Learning, & Teaching Sunman Sticker Pack
View on GitHub
View at Publisher
Authors
Date August 30th, 2017
Venue cross-platform sticker pack published via MojiLaLa

Our beloved Sunman, representing the Center for Writing, Learning, & Teaching at the University of Puget Sound. This repository contains the original Sunman sticker artworks and press/publicity kits generated by MojiLaLa, all as .png files.

Conduit: A C++ Library for Best-effort High Performance Computing
Download
View at Publisher
Authors
Date May 21st, 2021
DOI 10.1145/3449726.3463205
Venue ACM Workshop on Parallel and Distributed Evolutionary Inspired Methods
Abstract

Developing software to effectively take advantage of growth in parallel and distributed processing capacity poses significant challenges. Traditional programming techniques allow a user to assume that execution, message passing, and memory are always kept synchronized. However, maintaining this consistency becomes increasingly costly at scale. One proposed strategy is “best-effort computing”, which relaxes synchronization and hardware reliability requirements, accepting nondeterminism in exchange for efficiency. Although many programming languages and frameworks aim to facilitate software development for high performance applications, existing tools do not directly provide a prepackaged best-effort interface. The Conduit C++ Library aims to provide such an interface for convenient implementation of software that uses best-effort inter-thread and inter-process communication. Here, we describe the motivation, objectives, design, and implementation of the library. Benchmarks on a communication-intensive graph coloring problem and a compute-intensive digital evolution simulation show that Conduit’s best-effort model can improve scaling efficiency and solution quality, particularly in a distributed, multi-node context.

BibTeX
⎘ copy to clipboard
@inproceedings{moreno2021conduit,
  author = {Moreno, Matthew Andres and Papa, Santiago Rodriguez and Ofria, Charles},
  title = {Conduit: A C++ Library for Best-Effort High Performance Computing},
  year = {2021},
  isbn = {9781450383516},
  publisher = {Association for Computing Machinery},
  address = {New York, NY, USA},
  url = {https://doi.org/10.1145/3449726.3463205},
  doi = {10.1145/3449726.3463205},
  booktitle = {Proceedings of the Genetic and Evolutionary Computation Conference Companion},
  pages = {1795–1800},
  numpages = {6},
  keywords = {high performance computing, best-effort computing},
  location = {Lille, France},
  series = {GECCO '21}
}
Citation
⎘ copy to clipboard

Matthew Andres Moreno, Santiago Rodriguez Papa, and Charles Ofria. 2021. Conduit: a C++ library for best-effort high performance computing. In Proceedings of the Genetic and Evolutionary Computation Conference Companion (GECCO ‘21). Association for Computing Machinery, New York, NY, USA, 1795–1800. https://doi.org/10.1145/3449726.3463205

Supporting Materials
Conduit: A C++ Library for Best-effort High Performance Computing
Download
View at Publisher
Authors
Date March 12th, 2021
Venue The 6th International Workshop on Modeling and Simulation of and by Parallel and Distributed Systems (MSPDS 2020)
Abstract

Developing software to effectively take advantage of growth in parallel and distributed processing capacity poses significant challenges. Best-effort computing models, which relax synchronization requirements, have been proposed as a strategy to overcome challenges harness high performance computing at extreme scale. Although many programming languages and frameworks aim to facilitate software development for high performance applications, existing prevalent tools do not expose an explicit best-effort interface. The Conduit C++ Library aims to provide a convenient interface for best-effort inter-thread and inter-process communication. Here, we describe the motivation, objectives, design, and implementation of the library.

BibTeX
⎘ copy to clipboard
@inproceedings{moreno2021conduit_hpcs,
  author = {Moreno, Matthew Andres and Papa, Santiago Rodriguez and Ofria, Charles},
  title = {Conduit: A C++ Library for Best-Effort High Performance Computing},
  year = {2021},
  booktitle = {The 6th International Workshop on Modeling and Simulation of and by Parallel and Distributed Systems (MSPDS 2020)},
  numpages = {2},
  keywords = {high performance computing, best-effort computing},
  location = {Barcelona, Sapin},
  series = {HPCS 2021}
}

Citation
⎘ copy to clipboard

Matthew Andres Moreno, Santiago Rodriguez Papa and Charles Ofria. 2021. Conduit: A C++ Library for Best-Effort High Performance Computing. MSPDS 2020: The 6th International Workshop on Modeling and Simulation of and by Parallel and Distributed Systems.

Supporting Materials
Diversity, Equity, & Inclusion Discussion Seminar
View at Publisher
Authors
Date July 9th, 2021
Venue Workshop for Avida-ED Software Development

Facilitated group discussion of “Real talk: saturated sites of violence in CS education” (Rankin et. al, 2021).

Rankin, Yolanda A., Jakita O. Thomas, and Sheena Erete. “Real talk: saturated sites of violence in CS education.” ACM Inroads 12.2 (2021): 30-37.

Empirical
View on GitHub
Date January 1st, 2018
Venue header-only C++ library

Empirical is a library of tools for developing useful, efficient, reliable, and available scientific software. The provided code is header-only and encapsulated into the emp namespace, so it is simple to incorporate into existing projects.

BibTeX
⎘ copy to clipboard
@software{Ofria_Empirical_C_library_2020,
  author = {Ofria, Charles and Moreno, Matthew Andres and Dolson, Emily and Lalejini, Alex and Rodriguez Papa, Santiago and Fenton, Jake and Perry, Katherine and Jorgensen, Steven and hoffmanriley and grenewode and Baldwin Edwards, Oliver and Stredwick, Jason and cgnitash and theycallmeHeem and Vostinar, Anya and Moreno, Ryan and Schossau, Jory and Zaman, Luis and djrain},
  doi = {10.5281/zenodo.4141943},
  license = {MIT},
  month = {10},
  title = {{Empirical: C++ library for efficient, reliable, and accessible scientific software}},
  url = {https://github.com/devosoft/Empirical},
  version = {0.0.4},
  year = {2020}
}
Citation
⎘ copy to clipboard

Ofria, C., Moreno, M. A., Dolson, E., Lalejini, A., Rodriguez Papa, S., Fenton, J., Perry, K., Jorgensen, S., , H., , G., Baldwin Edwards, O., Stredwick, J., , C., , T., Vostinar, A., Moreno, R., Schossau, J., Zaman, L., & , D. (2020). Empirical: C++ library for efficient, reliable, and accessible scientific software (Version 0.0.4) [Computer software]. https://doi.org/10.5281/zenodo.4141943

Supporting Materials
Evolvability: What Is It and How Do We Get It?
Download
View at Publisher
Authors
Date April 17th, 2017
Venue Otis C. Chapman Honors Program Thesis
Abstract

Biological organisms exhibit spectacular adaptation to their environments. However, another marvel of biology lurks behind the adaptive traits that organisms exhibit over the course of their lifespans: it is hypothesized that biological organisms also exhibit adaptation to the evolutionary process itself. That is, biological organisms are thought to possess traits that facilitate evolution. The term evolvability was coined to describe this type of adaptation. The question of evolvability has special practical relevance to computer science researchers engaged in longstanding efforts to harness evolution as an algorithm for automated design. It is hoped that a more nuanced understanding of biological evolution will translate to more powerful digital evolution techniques. This thesis will present a theoretical overview of evolvability, illustrated with examples from biology and evolutionary computing, and discuss computational experiments probing the relationship between environmental influence on the phenotype and evolvability.

BibTeX
⎘ copy to clipboard
@thesis{moreno2017evolvability,
  author={Moreno, Matthew Andres},
  title={Evolvability: What Is It and How Do We Get It?},
  school={University of Puget Sound},
  type={Bachelor's Thesis},
  url={http://soundideas.pugetsound.edu/honors_program_theses/22/},
  year={2017}
}
Citation
⎘ copy to clipboard

Moreno, Matthew Andres, “Evolvability: What Is It and How Do We Get It?” (2017). Honors Program Theses. 22. https://soundideas.pugetsound.edu/honors_program_theses/22

Supporting Materials
Exploring Evolved Multicellular Life Histories in a Open-Ended Digital Evolution System
Download
View at Publisher
Authors
Date May 13th, 2022
DOI 10.3389/fevo.2022.750837
Venue Frontiers in Ecology and Evolution
Abstract

Evolutionary transitions occur when previously-independent replicating entities unite to form more complex individuals. Such transitions have profoundly shaped natural evolutionary history and occur in two forms: fraternal transitions involve lower-level entities that are kin (e.g., transitions to multicellularity or to eusocial colonies), while egalitarian transitions involve unrelated individuals (e.g., the origins of mitochondria). The necessary conditions and evolutionary mechanisms for these transitions to arise continue to be fruitful targets of scientific interest. Here, we examine a range of fraternal transitions in populations of open-ended self-replicating computer programs. These digital cells were allowed to form and replicate kin groups by selectively adjoining or expelling daughter cells. The capability to recognize kin-group membership enabled preferential communication and cooperation between cells. We repeatedly observed group-level traits that are characteristic of a fraternal transition. These included reproductive division of labor, resource sharing within kin groups, resource investment in offspring groups, asymmetrical behaviors mediated by messaging, morphological patterning, and adaptive apoptosis. We report eight case studies from replicates where transitions occurred and explore the diverse range of adaptive evolved multicellular strategies.

BibTeX
⎘ copy to clipboard
@article{moreno2022exploring,
  author={Moreno, Matthew Andres and Ofria, Charles},
  title={Exploring Evolved Multicellular Life Histories in a Open-Ended Digital Evolution System},
  journal={Frontiers in Ecology and Evolution},
  volume={10},
  year={2022},
  url={https://www.frontiersin.org/articles/10.3389/fevo.2022.750837},
  doi={10.3389/fevo.2022.750837},
  issn={2296-701X}
}
Citation
⎘ copy to clipboard

Moreno MA and Ofria C (2022) Exploring Evolved Multicellular Life Histories in a Open-Ended Digital Evolution System. Front. Ecol. Evol. 10:750837. doi: 10.3389/fevo.2022.750837

Supporting Materials
Gw███tt School District Covid-19 Dashboard
View on GitHub
View at Publisher
Authors
Date October 25th, 2020
Venue Shiny R app published via shinyapps.io

This website pulls directly from publicly available Gw███tt County Public Schools (GCPS) data. As the data on the website are provided as discrete pdf files per day, it can be difficult to see patterns. This website therefore serves as a way to visualize the data for interested stakeholders. This requires data to be scraped from PDF reports (now also located here) put together by the Gw███tt School District, packaged with a shiny web app, and deployed to https://shinyapps.io. We also automatically upload up-to-date consolidated datasets to the project’s Open Science Framework page.

Supporting Materials
Hereditary stratigraphy: genome annotations to enable phylogenetic inference over distributed populations
Download
View at Publisher
Authors
Date May 13th, 2022
DOI 10.1145/3520304.3533937
Venue The Genetic and Evolutionary Computation Conference
Abstract

Phylogenetic analyses can also enable insight into evolutionary and ecological dynamics such as selection pressure and frequency dependent selection in digital evolution systems. Traditionally digital evolution systems have recorded data for phylogenetic analyses through perfect tracking where each birth event is recorded in a centralized data structures. This approach, however, does not easily scale to distributed computing environments where evolutionary individuals may migrate between a large number of disjoint processing elements. To provide for phylogenetic analyses in these environments, we propose an approach to infer phylogenies via heritable genetic annotations rather than directly track them. We introduce a “hereditary stratigraphy” algorithm that enables efficient, accurate phylogenetic reconstruction with tunable, explicit trade-offs between annotation memory footprint and reconstruction accuracy. This approach can estimate, for example, MRCA generation of two genomes within 10% relative error with 95% confidence up to a depth of a trillion generations with genome annotations smaller than a kilobyte. We also simulate inference over known lineages, recovering up to 85.70% of the information contained in the original tree using a 64-bit annotation.

BibTeX
⎘ copy to clipboard
@inproceedings{moreno2022hereditary_gecco,
  author = {Moreno, Matthew Andres and Dolson, Emily and Ofria, Charles},
  title = {Hereditary Stratigraphy: Genome Annotations to Enable Phylogenetic Inference over Distributed Populations},
  year = {2022},
  isbn = {9781450392686},
  publisher = {Association for Computing Machinery},
  address = {New York, NY, USA},
  url = {https://doi.org/10.1145/3520304.3533937},
  doi = {10.1145/3520304.3533937},
  booktitle = {Proceedings of the Genetic and Evolutionary Computation Conference Companion},
  pages = {65–66},
  numpages = {2},
  keywords = {phylogenetics, decentralized algorithms, genetic algorithms, digital evolution, genetic programming},
  location = {Boston, Massachusetts},
  series = {GECCO '22}
}
Citation
⎘ copy to clipboard

Matthew Andres Moreno, Emily Dolson, and Charles Ofria. 2022. Hereditary stratigraphy: genome annotations to enable phylogenetic inference over distributed populations. In Proceedings of the Genetic and Evolutionary Computation Conference Companion (GECCO ‘22). Association for Computing Machinery, New York, NY, USA, 65–66. https://doi.org/10.1145/3520304.3533937

Supporting Materials
Hereditary stratigraphy: genome annotations to enable phylogenetic inference over distributed populations
Download
View at Publisher
Authors
Date May 13th, 2022
DOI 10.1162/isal_a_00550
Venue The 2022 Conference on Artificial Life
Abstract

Phylogenies provide direct accounts of the evolutionary trajectories behind evolved artifacts in genetic algorithm and artificial life systems. Phylogenetic analyses can also enable insight into evolutionary and ecological dynamics such as selection pressure and frequency-dependent selection. Traditionally, digital evolution systems have recorded data for phylogenetic analyses through perfect tracking where each birth event is recorded in a centralized data structure. This approach, however, does not easily scale to distributed computing environments where evolutionary individuals may migrate between a large number of disjoint processing elements. To provide for phylogenetic analyses in these environments, we propose an approach to enable phylogenies to be inferred via heritable genetic annotations rather than directly tracked. We introduce a “hereditary stratigraphy” algorithm that enables efficient, accurate phylogenetic reconstruction with tunable, explicit trade-offs between annotation memory footprint and reconstruction accuracy. In particular, we demonstrate an approach that enables estimation of the most recent common ancestor (MRCA) between two individuals with fixed relative accuracy irrespective of lineage depth while only requiring logarithmic annotation space complexity with respect to lineage depth This approach can estimate, for example, MRCA generation of two genomes within 10% relative error with 95% confidence up to a depth of a trillion generations with genome annotations smaller than a kilobyte. We also simulate inference over known lineages, recovering up to 85.70% of the information contained in the original tree using 64-bit annotations.

BibTeX
⎘ copy to clipboard
@inproceedings{moreno2022hereditary,
    author = {Moreno, Matthew Andres and Dolson, Emily and Ofria, Charles},
    title = "{Hereditary Stratigraphy: Genome Annotations to Enable Phylogenetic Inference over Distributed Populations}",
    volume = {ALIFE 2022: The 2022 Conference on Artificial Life},
    series = {ALIFE 2022: The 2022 Conference on Artificial Life},
    year = {2022},
    month = {07},
    doi = {10.1162/isal_a_00550},
    url = {https://doi.org/10.1162/isal\_a\_00550},
    note = {64},
    eprint = {https://direct.mit.edu/isal/proceedings-pdf/isal/34/64/2035363/isal\_a\_00550.pdf},
}
Citation
⎘ copy to clipboard

Matthew Andres Moreno, Emily Dolson, Charles Ofria; July 18–22, 2022. “Hereditary Stratigraphy: Genome Annotations to Enable Phylogenetic Inference over Distributed Populations.” Proceedings of the ALIFE 2022: The 2022 Conference on Artificial Life. ALIFE 2022: The 2022 Conference on Artificial Life. Online. (pp. 64). ASME. https://doi.org/10.1162/isal_a_00550

Supporting Materials
Information Theory Through Toy Examples
Download
Authors
Date October 26th, 2017

An illustrated introduction to the intuition, terminology, & math behind information theory. Elucidates entropy & information through application to dice rolling (independent variables) and the interplay between readings from ambient outdoor light & precipitation meters (dependent variables).

Investigating the Relationship Between Plasticity and Evolvability in a Genetic Regulatory Network Model
Download
Authors
Date May 1st, 2017
Venue Undergraduate Capstone Project
Abstract

Biological organisms are thought to possess traits that facilitate evolution. The term evolvability was coined to describe this type of adaptation. The question of evolvability has special practical relevance to computer science researchers engaged in longstanding efforts to harness evolution as an algorithm for automated design. It is hoped that a more nuanced understanding of evolvability inspired by biological evolution will translate to more powerful digital evolution techniques. To this end, the relationship between evolvability and environmental influence on the phenotype was investigated using digital experiments performed on a genetic regulatory model. The phenotypic response of champion individuals evolved under regimes of direct plasticity, and indirect plasticity was assessed. The model predicts that direct plasticity and indirect plasticity decrease and increase the frequency of silent mutations, respectively.

Supporting Materials
Learning an Evolvable Genotype-Phenotype Mapping
Download
View at Publisher
Authors
Date July 15th, 2018
DOI 10.1145/3205455.3205597
Venue The Genetic and Evolutionary Computation Conference
Abstract

We present AutoMap, a pair of methods for automatic generation of evolvable genotype-phenotype mappings. Both use an artificial neural network autoencoder trained on phenotypes harvested from fitness peaks as the basis for a genotype-phenotype mapping. In the first, the decoder segment of a bottlenecked autoencoder serves as the genotype-phenotype mapping. In the second, a denoising autoencoder serves as the genotype-phenotype mapping. Automatic generation of evolvable genotype-phenotype mappings are demonstrated on the n-legged table problem, a toy problem that defines a simple rugged fitness landscape, and the Scrabble string problem, a more complicated problem that serves as a rough model for linear genetic programming. For both problems, the automatically generated genotype-phenotype mappings are found to enhance evolvability.

BibTeX
⎘ copy to clipboard
@inproceedings{moreno2018learning,
  author = {Moreno, Matthew Andres and Banzhaf, Wolfgang and Ofria, Charles},
  title = {Learning an Evolvable Genotype-Phenotype Mapping},
  year = {2018},
  isbn = {9781450356183},
  publisher = {Association for Computing Machinery},
  address = {New York, NY, USA},
  url = {https://doi.org/10.1145/3205455.3205597},
  doi = {10.1145/3205455.3205597},
  booktitle = {Proceedings of the Genetic and Evolutionary Computation Conference},
  pages = {983–990},
  numpages = {8},
  keywords = {deep learning, indirect encodings, evolvability, genetic algorithms, adaptive representations, genotype-phenotype map},
  location = {Kyoto, Japan},
  series = {GECCO '18}
}
Citation
⎘ copy to clipboard

Matthew Andres Moreno, Wolfgang Banzhaf, and Charles Ofria. 2018. Learning an evolvable genotype-phenotype mapping. In Proceedings of the Genetic and Evolutionary Computation Conference (GECCO ‘18). Association for Computing Machinery, New York, NY, USA, 983–990. https://doi.org/10.1145/3205455.3205597

Supporting Materials
Matchmaker, Matchmaker, Make Me a Match: Geometric, Variational, and Evolutionary Implications of Criteria for Tag Affinity
Download
View at Publisher
Authors
Date August 10th, 2021
DOI 10.48550/arXiv.2108.04507
Venue arXiv
Abstract

Genetic programming and artificial life systems commonly employ tag-matching schemes to determine interactions between model components. However, the implications of criteria used to determine affinity between tags with respect to constraints on emergent connectivity, canalization of changes to connectivity under mutation, and evolutionary dynamics have not been considered. We highlight differences between tag-matching criteria with respect to geometric constraint and variation generated under mutation. We find that tag-matching criteria can influence the rate of adaptive evolution and the quality of evolved solutions. Better understanding of the geometric, variational, and evolutionary properties of tag-matching criteria will facilitate more effective incorporation of tag matching into genetic programming and artificial life systems. By showing that tag-matching criteria influence connectivity patterns and evolutionary dynamics, our findings also raise fundamental questions about the properties of tag-matching systems in nature.

BibTeX
⎘ copy to clipboard
@misc{moreno2021matchmaker,
  doi = {10.48550/ARXIV.2108.04507},
  url = {https://arxiv.org/abs/2108.04507},
  author = {Moreno, Matthew Andres and Lalejini, Alexander and Ofria, Charles},
  keywords = {Neural and Evolutionary Computing (cs.NE), FOS: Computer and information sciences, FOS: Computer and information sciences},
  title = {Matchmaker, Matchmaker, Make Me a Match: Geometric, Variational, and Evolutionary Implications of Criteria for Tag Affinity},
  publisher = {arXiv},
  year = {2021},
  copyright = {arXiv.org perpetual, non-exclusive license}
}
Citation
⎘ copy to clipboard

Moreno, M. A., Lalejini, A., & Ofria, C. (2021). Matchmaker, Matchmaker, Make Me a Match: Geometric, Variational, and Evolutionary Implications of Criteria for Tag Affinity. arXiv preprint arXiv:2108.04507.

Supporting Materials
NP Completeness Lecture Series
Authors
Date November 29th, 2021
Venue CSE 431 Algorithm Engineering at Michigan State University

Intuition-first talks introducing & defining complexity classes, covering the construction & interpretation of reductions with help a sandwich-making robot, outlining the Cooke-Levin theorem via the shenanigans of a certain Doge Jr. picking a SAT lock to get out of doing his NP homework, and unpacking a literal barrel of monkeys (TM) to explore the P ?= NP question.

Supporting Materials
Nitty Gritty on Professional Jekyll Posts
View at Publisher
Authors
Date July 16th, 2020
Abstract

Class blogs have grown into a core tool of the educational experiences, like the CSE 491 Advanced C++ Seminar and this summer’s WAVES Workshop, I’ve had the pleasure of facilitating. I typically have students contribute to the blog as part of their own learning experience.

I love this format because it helps,

develop students’ professional communication skills, provide students a sense of accomplishment via a tangible, rewarding deliverable, showcase students’ work to the general public, showcase students’ work to potential employers, showcase students’ work to mentors’ evaluators, more effectively capitalize on students’ work after they leave the lab group or classroom, and sausage factory more useful information out into the ether that someday somebody will be very happy to have Googled upon.

This writeup provides guidance targeted to students writing entries for these class blogs (hi! :wave:). It should also contain a few actionable nuggets for other authors writing professional blog posts with Jekyll, though! I hope that other instructors, in particular, may find this a useful resource for bringing similar models into their classroom. :cowboy_hat_face:

Reinterpretive Label Guerilla Art Software
View on GitHub
Authors
Date June 17th, 2018
Venue containerized workflow hosted via SingularityHub

Anything can become art by the addition of a sufficiently clever interpretive label, even really lame things. So, let’s reinterpret lame things and make them awesome by adding interpretive label stickers!

Supporting Materials
SignalGP-Lite: Event Driven Genetic Programming Library for Large-Scale Artificial Life Applications
Download
View at Publisher
Authors
Date August 1st, 2022
DOI 10.48550/arXiv.2108.00382
Venue arXiv
Abstract

Developing software to effectively take advantage of growth in parallel and distributed processing capacity poses significant challenges. Traditional programming techniques allow a user to assume that execution, message passing, and memory are always kept synchronized. However, maintaining this consistency becomes increasingly costly at scale. One proposed strategy is “best-effort computing”, which relaxes synchronization and hardware reliability requirements, accepting nondeterminism in exchange for efficiency. Although many programming languages and frameworks aim to facilitate software development for high performance applications, existing tools do not directly provide a prepackaged best-effort interface. The Conduit C++ Library aims to provide such an interface for convenient implementation of software that uses best-effort inter-thread and inter-process communication. Here, we describe the motivation, objectives, design, and implementation of the library. Benchmarks on a communication-intensive graph coloring problem and a compute-intensive digital evolution simulation show that Conduit’s best-effort model can improve scaling efficiency and solution quality, particularly in a distributed, multi-node context.

BibTeX
⎘ copy to clipboard
@misc{moreno2021signalgp,
  doi = {10.48550/ARXIV.2108.00382},

  url = {https://arxiv.org/abs/2108.00382},

  author = {Moreno, Matthew Andres and Papa, Santiago Rodriguez and Lalejini, Alexander and Ofria, Charles},

  keywords = {Neural and Evolutionary Computing (cs.NE), FOS: Computer and information sciences, FOS: Computer and information sciences},

  title = {SignalGP-Lite: Event Driven Genetic Programming Library for Large-Scale Artificial Life Applications},

  publisher = {arXiv},

  year = {2021},

  copyright = {arXiv.org perpetual, non-exclusive license}
}
Citation
⎘ copy to clipboard

Moreno, M. A., Rodriguez Papa, S., & Ofria, C. (2021). SignalGP-Lite: Event Driven Genetic Programming Library for Large-Scale Artificial Life Applications. arXiv preprint arXiv:2108.00382.

Supporting Materials
Silence of the Jams: The Effects of Self-Driving Cars on Traffic Patterns in the Puget Sound Region
Download
Authors
Date January 23rd, 2017
Venue CoMAP Mathematical Competition in Modeling
Abstract

We present a model of traffic in the greater Seattle area to understand how an increasing frequency of self-driving cars will change traffic dynamics in the area. We apply a two-component micro/macro traffic simulation to data for portions of Interstates 5, 90, 405, and State Route 520 to consider the impact of autonomous vehicles on regional traffic flow. We consider 0%, 10%, 50%, and 90% autonomous traffic.

Our micro model is designed to make predictions about the impact of self-driving vehicles on fundamental traffic dynamics and employs a cellular automata approach, inspired by the work of Nagel and Schrekenberg, to model interactions between a number of independent vehicles on a road. In this simulation, vehicles exhibit simple following behavior and experience occasional random deceleration events. We introduce a distinction between self-driving and human-driven cars, where autonomous vehicles exhibit more uniform cruising speed compared to human drivers and can follow safely at a much closer distance compared to human drivers.

Using this micro-level simulation, we predict a relation between traffic speed and traffic density for traffic with a varying composition of autonomous vehicles. Our macro model employs a system of ordinary differential equations to investigate the flow of traffic between segments of road in the region of study. We assess the impact of self-driving traffic composition on performance of the regional highway network at peak and average traffic loads, measuring trip times along each major highway and between a representative set of regional destinations. The travel time predictions of the macro model are compared to archived travel time data from the the Washington State Department of Transportation (WSDOT).

These models, in conjunction, facilitate insightful study of how different percentages of self-driving cars on the motorways change traffic flow under heavy and light traffic conditions. The quantitative accuracy of our macro model is observed to decline significantly with increasing traffic loads. Nevertheless, the results of our study demonstrate clear qualitative trends that inform our recommendations. Although our macro model does not make quantitatively accurate predictions, we observe a trend indicating that at high traffic densities, traffic delays decrease with increasing percentages of self-driving cars on the road.

Analysis of our micro model reveals that assigning traffic lanes for the exclusive use of autonomous vehicles can be a boon to traffic flow efficiency. When the concentration of self-driving cars rises to above 5%, our micro model predicts that it becomes advantageous to implement at least one “self-driving-car only” lane in roads with 3 or more lanes. Under some circumstances, this strategy has the potential to result in reduced travel delays for human-driven and autonomously controlled vehicles alike.

Supporting Materials
Tag-based regulation of modules in genetic programming improves context-dependent problem solving
Download
View at Publisher
Authors
Date July 7th, 2021
DOI 10.1007/s10710-021-09406-8
Venue Genetic Programming and Evolvable Machines
Abstract

We introduce and experimentally demonstrate the utility of tag-based genetic regulation, a new genetic programming (GP) technique that allows programs to dynamically adjust which code modules to express. Tags are evolvable labels that provide a flexible mechanism for referencing code modules. Tag-based genetic regulation extends existing tag-based naming schemes to allow programs to “promote” and “repress” code modules in order to alter expression patterns. This extension allows evolution to structure a program as a gene regulatory network where modules are regulated based on instruction executions. We demonstrate the functionality of tag-based regulation on a range of program synthesis problems. We find that tag-based regulation improves problem-solving performance on context-dependent problems; that is, problems where programs must adjust how they respond to current inputs based on prior inputs. Indeed, the system could not evolve solutions to some context-dependent problems until regulation was added. Our implementation of tag-based genetic regulation is not universally beneficial, however. We identify scenarios where the correct response to a particular input never changes, rendering tag-based regulation an unneeded functionality that can sometimes impede adaptive evolution. Tag-based genetic regulation broadens our repertoire of techniques for evolving more dynamic genetic programs and can easily be incorporated into existing tag-enabled GP systems.

BibTeX
⎘ copy to clipboard
@article{lalejini2021tag,
  title = {Tag-based regulation of modules in genetic programming improves context-dependent problem solving},
  copyright = {All rights reserved},
  issn = {1389-2576, 1573-7632},
  url = {https://link.springer.com/10.1007/s10710-021-09406-8},
  doi = {10.1007/s10710-021-09406-8},
  language = {en},
  urldate = {2021-07-10},
  journal = {Genetic Programming and Evolvable Machines},
  volume = {22},
  number = {3},
  pages = {325--355},
  author = {Lalejini, Alexander and Moreno, Matthew Andres and Ofria, Charles},
  month = jul,
  year = {2021},
}
Citation
⎘ copy to clipboard

Lalejini, A., Moreno, M.A. & Ofria, C. Tag-based regulation of modules in genetic programming improves context-dependent problem solving. Genet Program Evolvable Mach 22, 325–355 (2021). https://doi.org/10.1007/s10710-021-09406-8

Supporting Materials
Toward Open-Ended Fraternal Transitions in Individuality
Download
View at Publisher
Authors
Date May 1st, 2019
DOI 10.1162/artl_a_00284
Venue Artificial Life
Abstract

The emergence of new replicating entities from the union of simpler entities characterizes some of the most profound events in natural evolutionary history. Such transitions in individuality are essential to the evolution of the most complex forms of life. Thus, understanding these transitions is critical to building artificial systems capable of open-ended evolution. Alas, these transitions are challenging to induce or detect, even with computational organisms. Here, we introduce the DISHTINY (Distributed Hierarchical Transitions in Individuality) platform, which provides simple cell-like organisms with the ability and incentive to unite into new individuals in a manner that can continue to scale to subsequent transitions. The system is designed to encourage these transitions so that they can be studied: organisms that coordinate spatiotemporally can maximize the rate of resource harvest, which is closely linked to their reproductive ability. We demonstrate the hierarchical emergence of multiple levels of individuality among simple cell-like organisms that evolve parameters for manually designed strategies. During evolution, we observe reproductive division of labor and close cooperation among cells, including resource-sharing, aggregation of resource endowments for propagules, and emergence of an apoptosis response to somatic mutation. Many replicate populations evolved to direct their resources toward low-level groups (behaving like multicellular individuals), and many others evolved to direct their resources toward high-level groups (acting as larger-scale multicellular individuals).

BibTeX
⎘ copy to clipboard
@article{moreno2019toward,
  author = {Moreno, Matthew Andres and Ofria, Charles},
  title = "{Toward Open-Ended Fraternal Transitions in Individuality}",
  journal = {Artificial Life},
  volume = {25},
  number = {2},
  pages = {117-133},
  year = {2019},
  month = {05},
  issn = {1064-5462},
  doi = {10.1162/artl_a_00284},
  url = {https://doi.org/10.1162/artl\_a\_00284},
  eprint = {https://direct.mit.edu/artl/article-pdf/25/2/117/1896700/artl\_a\_00284.pdf},
}
Citation
⎘ copy to clipboard

Matthew Andres Moreno, Charles Ofria; Toward Open-Ended Fraternal Transitions in Individuality. Artif Life 2019; 25 (2): 117–133. doi: https://doi.org/10.1162/artl_a_00284

Supporting Materials
Understanding Fraternal Transitions in Individuality
Download
View at Publisher
Authors
Date July 22nd, 2018
Venue The Third Workshop on Open-Ended Evolution (OEE3)
Abstract

The emergence of new replicating entities from the union of existing entities represent some of the most profound events in natural evolutionary history. Facilitating such evolutionary transitions in individuality is essential to the derivation of the most complex forms of life. As such, understanding these transitions is critical for building artificial systems capable of open-ended evolution. Alas, these transitions are challenging to induce or detect, even with computational organisms. Here, we introduce the DISHTINY (DIStributed Hierarchical Transitions in IndividualitY) platform, which provides simple cell-like organisms with the ability and incentive to unite into new individuals in a manner that can continue to scale to subsequent transitions. The system is designed to encourage these transitions so that they can be studied: organisms that coordinate spatiotemporally can maximize the rate of resource harvest, which is closely linked to their reproductive ability. We demonstrate the hierarchical emergence of multiple levels of individuality among simple cell-like organisms that evolve parameters for manually-designed strategies. During evolution, we observe reproductive division of labor and close cooperation between cells, including resource-sharing, aggregation of resource endowments for propagules, and emergence of an apoptosis response to somatic mutation. While a few replicate populations evolved selfish behaviors, many evolved to direct their resources toward low-level groups (behaving like multi-cellular individuals), and many others evolved to direct their resources toward high-level groups (acting as larger-scale multi-cellular individuals). Finally, we demonstrated that genotypes that encode higher-level individuality consistently outcompete those that encode lower-level individuality.

BibTeX
⎘ copy to clipboard
@inproceedings{moreno2018understanding,
  author = {Moreno, Matthew Andres and Ofria, Charles},
  title = {Understanding Fraternal Transitions in Individuality},
  year = {2018},
  url = {http://workshops.alife.org/oee3/papers/moreno-oee3-final.pdf},
  booktitle = {OEE3: The Third Workshop on Open-Ended Evolution},
  numpages = {8},
  location = {Tokyo, Japan}
}
Citation
⎘ copy to clipboard

Matthew Andres Moreno and Charles Ofria. 2018. Understanding Fraternal Transitions in Individuality. OEE3: The Third Workshop on Open-Ended Evolution.

Supporting Materials
Zero to Sixty: Onboarding Tutorials for Native & Web Software Development with C++
View at Publisher
Authors
Date May 26th, 2020
Venue Workshop for Avida-ED Software Development

Hands-on, asynchronous 4 day tutorial series covering foundational web development competencies, C++ development with the Empirical library, and compiling for the web with Emscripten.

alifedata-phyloinformatics-convert
View on GitHub
View at Publisher
Authors
Date January 1st, 2022
Venue Python package published via PyPI

alifedata-phyloinformatics-convert helps apply traditional phyloinformatics software to alife standardized data.

conduit
View on GitHub
Authors
Date January 1st, 2020
Venue header-only C++ library

C++ library that wraps intra-thread, inter-thread, and inter-process communication in a uniform, modular, object-oriented interface, with a focus on asynchronous high-performance computing applications.

dishtiny
View on GitHub
Authors
Date January 1st, 2020
Venue header-only C++ library

C++ library for digital evolution simulations studying digital multicellularity and fraternal major evolutionary transitions in individuality.

hstrat
View on GitHub
View at Publisher
Authors
Date January 1st, 2022
Venue Python package published via PyPI

hstrat enables phylogenetic inference on distributed digital evolution populations.

BibTeX
⎘ copy to clipboard
@article{moreno2022hereditary,
  author = {Moreno, Matthew Andres and Dolson, Emily and Ofria, Charles},
  doi = {https://doi.org/10.1162/isal_a_00550},
  journal = {Proceedings of the ALIFE 2022: The 2022 Conference on Artificial Life},
  month = {7},
  pages = {64--74},
  title = {{Hereditary Stratigraphy: Genome Annotations to Enable Phylogenetic Inference over Distributed Populations}},
  volume = {Proceedings of the ALIFE 2022: The 2022 Conference on Artificial Life},
  year = {2022}
}
Citation
⎘ copy to clipboard

Moreno, M. A., Dolson, E., & Ofria, C. (2022). Hereditary Stratigraphy: Genome Annotations to Enable Phylogenetic Inference over Distributed Populations. Proceedings of the ALIFE 2022: The 2022 Conference on Artificial Life, Proceedings of the ALIFE 2022: The 2022 Conference on Artificial Life(), 64–74. https://doi.org/https://doi.org/10.1162/isal_a_00550

hstrat: a Python Package for phylogenetic inference on distributed digital evolution populations
Download
Authors
Date November 7th, 2022
Venue Journal of Open Source Science (Under Revision)
Abstract

Digital evolution systems instantiate evolutionary processes over populations of virtual agents in silico. These programs can serve as rich experimental model systems. Insights from digital evolution experiments expand evolutionary theory, and can often directly improve heuristic optimization techniques . Perfect observability, in particular, enables in silico experiments that would be otherwise impossible in vitro or in vivo. Notably, availability of the full evolutionary history (phylogeny) of a given population enables very powerful analyses.

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]. However, scaling up digital evolution presents many challenges. Among these is the existing centralized perfect-tracking phylogenetic data collection model, which is inefficient and difficult to realize in parallel and distributed contexts. Here, we implement an alternative approach to tracking phylogenies across vast and potentially unreliable hardware networks.

The hstrat Python library exists to facilitate application of hereditary stratigraphy, a cutting-edge technique to enable phylogenetic inference over distributed digital evolution populations. This technique departs from the traditional perfect-tracking approach to phylogenetic record-keeping. Instead, hereditary stratigraphy enables phylogenetic history to be inferred from heritable annotations attached to evolving digital agents. This approach aligns with phylogenetic reconstruction methodologies in evolutionary biology. Hereditary stratigraphy attaches a set of immutable historical “checkpoints” — referred to as strata — as an annotation on evolving genomes. Checkpoints can be strategically discarded to reduce annotation size at the cost of increasing inference uncertainty. A particular strategy for which checkpoints to discard when is referred to as a stratum retention policy. We refer to the set of retained strata as a hereditary stratigraphic column.

Appropriate stratum retention policy choice varies by application. For example, if annotation size is not a concern it may be best to preserve all strata. In other situations, it may be necessary to constrain annotation size to remain within a fixed memory budget.

Key features of the library include:

  • object-oriented hereditary stratigraphic column implementation to annotate arbitrary genomes,
  • modular interchangeability and user extensibility of stratum retention policies,
  • programmatic interface to query guarantees and behavior of stratum retention policy,
  • modular interchangeability and user extensibility of back-end data structure used to store annotation data,
  • a suite of visualization tools to elucidate stratum retention policies,
  • support for automatic parameterization of stratum retention policies to meet user size complexity or inference precision specifications,
  • tools to compare two columns and extract information about the phylogenetic relationship between them,
  • extensive documentation hosted on ReadTheDocs,
  • a comprehensive test suite to ensure stability and reliability,
  • convenient availability as a Python package via the PyPI repository, and
  • pure Python implementation to ensure universal portability.
BibTeX
⎘ copy to clipboard
@article{moreno2022hstrat,
  author = {Moreno, Matthew Andres and Dolson, Emily and Ofria, Charles},
  title = "{hstrat: a Python Package for phylogenetic inference on distributed digital evolution populations}",
  journal = {Journal of Open Source Software},
  year = {Under Revision},
}
Citation
⎘ copy to clipboard

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.

interval-search
View on GitHub
View at Publisher
Authors
Date January 1st, 2022
Venue Python package published via PyPI

interval-search provides predicate-based binary and doubling search implementations.

keyname
View on GitHub
View at Publisher
Authors
Date January 1st, 2019
Venue Python package published via PyPI

keyname helps easily pack and unpack metadata in a filename.

opytional
View on GitHub
View at Publisher
Authors
Date January 1st, 2022
Venue Python package published via PyPI

opytional makes working with values that might be None safer and easier.

phylotrackpy
View on GitHub
View at Publisher
Authors
Date January 1st, 2022
Venue Python package published via PyPI

phylotrackpy is a Python phylogeny tracker.

signalgp-lite
View on GitHub
Authors
Date January 1st, 2020
Venue header-only C++ library

A genetic programming implementation designed for large-scale artificial life applications. Organized as a header-only C++ library. Inspired by Alex Lalejini’s SignalGP.

teeplot
View on GitHub
View at Publisher
Authors
Date January 1st, 2020
Venue Python package published via PyPI

teeplot automatically saves a copy of rendered Jupyter notebook plots.

🆕 Chronological Listing
2022 Best-Effort Communication Improves Performance and Scales Robustly on Conventional Hardware
Download
View at Publisher
Authors
Date November 23rd, 2022
DOI 10.48550/arXiv.2211.10897
Venue arXiv
Abstract

Here, we test the performance and scalability of fully-asynchronous, best-effort communication on existing, commercially-available HPC hardware.

A first set of experiments tested whether best-effort communication strategies can benefit performance compared to the traditional perfect communication model. At high CPU counts, best-effort communication improved both the number of computational steps executed per unit time and the solution quality achieved within a fixed-duration run window.

Under the best-effort model, characterizing the distribution of quality of service across processing components and over time is critical to understanding the actual computation being performed. Additionally, a complete picture of scalability under the best-effort model requires analysis of how such quality of service fares at scale. To answer these questions, we designed and measured a suite of quality of service metrics: simulation update period, message latency, message delivery failure rate, and message delivery coagulation. Under a lower communication-intensivity benchmark parameterization, we found that median values for all quality of service metrics were stable when scaling from 64 to 256 process. Under maximal communication intensivity, we found only minor – and, in most cases, nil – degradation in median quality of service.

In an additional set of experiments, we tested the effect of an apparently faulty compute node on performance and quality of service. Despite extreme quality of service degradation among that node and its clique, median performance and quality of service remained stable.

BibTeX
⎘ copy to clipboard
@misc{moreno2022best,
  doi = {10.48550/ARXIV.2211.10897},

  url = {https://arxiv.org/abs/2211.10897},

  author = {Moreno, Matthew Andres and Ofria, Charles},

  keywords = {Distributed, Parallel, and Cluster Computing (cs.DC), FOS: Computer and information sciences, FOS: Computer and information sciences},

  title = {Best-Effort Communication Improves Performance and Scales Robustly on Conventional Hardware},

  publisher = {arXiv},

  year = {2022},

  copyright = {arXiv.org perpetual, non-exclusive license}
}
Citation
⎘ copy to clipboard

Moreno, M. A., & Ofria, C. (2022). Best-Effort Communication Improves Performance and Scales Robustly on Conventional Hardware. arXiv preprint arXiv:2211.10897.

Supporting Materials
2022 hstrat: a Python Package for phylogenetic inference on distributed digital evolution populations
Download
Authors
Date November 7th, 2022
Venue Journal of Open Source Science (Under Revision)
Abstract

Digital evolution systems instantiate evolutionary processes over populations of virtual agents in silico. These programs can serve as rich experimental model systems. Insights from digital evolution experiments expand evolutionary theory, and can often directly improve heuristic optimization techniques . Perfect observability, in particular, enables in silico experiments that would be otherwise impossible in vitro or in vivo. Notably, availability of the full evolutionary history (phylogeny) of a given population enables very powerful analyses.

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]. However, scaling up digital evolution presents many challenges. Among these is the existing centralized perfect-tracking phylogenetic data collection model, which is inefficient and difficult to realize in parallel and distributed contexts. Here, we implement an alternative approach to tracking phylogenies across vast and potentially unreliable hardware networks.

The hstrat Python library exists to facilitate application of hereditary stratigraphy, a cutting-edge technique to enable phylogenetic inference over distributed digital evolution populations. This technique departs from the traditional perfect-tracking approach to phylogenetic record-keeping. Instead, hereditary stratigraphy enables phylogenetic history to be inferred from heritable annotations attached to evolving digital agents. This approach aligns with phylogenetic reconstruction methodologies in evolutionary biology. Hereditary stratigraphy attaches a set of immutable historical “checkpoints” — referred to as strata — as an annotation on evolving genomes. Checkpoints can be strategically discarded to reduce annotation size at the cost of increasing inference uncertainty. A particular strategy for which checkpoints to discard when is referred to as a stratum retention policy. We refer to the set of retained strata as a hereditary stratigraphic column.

Appropriate stratum retention policy choice varies by application. For example, if annotation size is not a concern it may be best to preserve all strata. In other situations, it may be necessary to constrain annotation size to remain within a fixed memory budget.

Key features of the library include:

  • object-oriented hereditary stratigraphic column implementation to annotate arbitrary genomes,
  • modular interchangeability and user extensibility of stratum retention policies,
  • programmatic interface to query guarantees and behavior of stratum retention policy,
  • modular interchangeability and user extensibility of back-end data structure used to store annotation data,
  • a suite of visualization tools to elucidate stratum retention policies,
  • support for automatic parameterization of stratum retention policies to meet user size complexity or inference precision specifications,
  • tools to compare two columns and extract information about the phylogenetic relationship between them,
  • extensive documentation hosted on ReadTheDocs,
  • a comprehensive test suite to ensure stability and reliability,
  • convenient availability as a Python package via the PyPI repository, and
  • pure Python implementation to ensure universal portability.
BibTeX
⎘ copy to clipboard
@article{moreno2022hstrat,
  author = {Moreno, Matthew Andres and Dolson, Emily and Ofria, Charles},
  title = "{hstrat: a Python Package for phylogenetic inference on distributed digital evolution populations}",
  journal = {Journal of Open Source Software},
  year = {Under Revision},
}
Citation
⎘ copy to clipboard

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.

2022 SignalGP-Lite: Event Driven Genetic Programming Library for Large-Scale Artificial Life Applications
Download
View at Publisher
Authors
Date August 1st, 2022
DOI 10.48550/arXiv.2108.00382
Venue arXiv
Abstract

Developing software to effectively take advantage of growth in parallel and distributed processing capacity poses significant challenges. Traditional programming techniques allow a user to assume that execution, message passing, and memory are always kept synchronized. However, maintaining this consistency becomes increasingly costly at scale. One proposed strategy is “best-effort computing”, which relaxes synchronization and hardware reliability requirements, accepting nondeterminism in exchange for efficiency. Although many programming languages and frameworks aim to facilitate software development for high performance applications, existing tools do not directly provide a prepackaged best-effort interface. The Conduit C++ Library aims to provide such an interface for convenient implementation of software that uses best-effort inter-thread and inter-process communication. Here, we describe the motivation, objectives, design, and implementation of the library. Benchmarks on a communication-intensive graph coloring problem and a compute-intensive digital evolution simulation show that Conduit’s best-effort model can improve scaling efficiency and solution quality, particularly in a distributed, multi-node context.

BibTeX
⎘ copy to clipboard
@misc{moreno2021signalgp,
  doi = {10.48550/ARXIV.2108.00382},

  url = {https://arxiv.org/abs/2108.00382},

  author = {Moreno, Matthew Andres and Papa, Santiago Rodriguez and Lalejini, Alexander and Ofria, Charles},

  keywords = {Neural and Evolutionary Computing (cs.NE), FOS: Computer and information sciences, FOS: Computer and information sciences},

  title = {SignalGP-Lite: Event Driven Genetic Programming Library for Large-Scale Artificial Life Applications},

  publisher = {arXiv},

  year = {2021},

  copyright = {arXiv.org perpetual, non-exclusive license}
}
Citation
⎘ copy to clipboard

Moreno, M. A., Rodriguez Papa, S., & Ofria, C. (2021). SignalGP-Lite: Event Driven Genetic Programming Library for Large-Scale Artificial Life Applications. arXiv preprint arXiv:2108.00382.

Supporting Materials
2022 Exploring Evolved Multicellular Life Histories in a Open-Ended Digital Evolution System
Download
View at Publisher
Authors
Date May 13th, 2022
DOI 10.3389/fevo.2022.750837
Venue Frontiers in Ecology and Evolution
Abstract

Evolutionary transitions occur when previously-independent replicating entities unite to form more complex individuals. Such transitions have profoundly shaped natural evolutionary history and occur in two forms: fraternal transitions involve lower-level entities that are kin (e.g., transitions to multicellularity or to eusocial colonies), while egalitarian transitions involve unrelated individuals (e.g., the origins of mitochondria). The necessary conditions and evolutionary mechanisms for these transitions to arise continue to be fruitful targets of scientific interest. Here, we examine a range of fraternal transitions in populations of open-ended self-replicating computer programs. These digital cells were allowed to form and replicate kin groups by selectively adjoining or expelling daughter cells. The capability to recognize kin-group membership enabled preferential communication and cooperation between cells. We repeatedly observed group-level traits that are characteristic of a fraternal transition. These included reproductive division of labor, resource sharing within kin groups, resource investment in offspring groups, asymmetrical behaviors mediated by messaging, morphological patterning, and adaptive apoptosis. We report eight case studies from replicates where transitions occurred and explore the diverse range of adaptive evolved multicellular strategies.

BibTeX
⎘ copy to clipboard
@article{moreno2022exploring,
  author={Moreno, Matthew Andres and Ofria, Charles},
  title={Exploring Evolved Multicellular Life Histories in a Open-Ended Digital Evolution System},
  journal={Frontiers in Ecology and Evolution},
  volume={10},
  year={2022},
  url={https://www.frontiersin.org/articles/10.3389/fevo.2022.750837},
  doi={10.3389/fevo.2022.750837},
  issn={2296-701X}
}
Citation
⎘ copy to clipboard

Moreno MA and Ofria C (2022) Exploring Evolved Multicellular Life Histories in a Open-Ended Digital Evolution System. Front. Ecol. Evol. 10:750837. doi: 10.3389/fevo.2022.750837

Supporting Materials
2022 Hereditary stratigraphy: genome annotations to enable phylogenetic inference over distributed populations
Download
View at Publisher
Authors
Date May 13th, 2022
DOI 10.1162/isal_a_00550
Venue The 2022 Conference on Artificial Life
Abstract

Phylogenies provide direct accounts of the evolutionary trajectories behind evolved artifacts in genetic algorithm and artificial life systems. Phylogenetic analyses can also enable insight into evolutionary and ecological dynamics such as selection pressure and frequency-dependent selection. Traditionally, digital evolution systems have recorded data for phylogenetic analyses through perfect tracking where each birth event is recorded in a centralized data structure. This approach, however, does not easily scale to distributed computing environments where evolutionary individuals may migrate between a large number of disjoint processing elements. To provide for phylogenetic analyses in these environments, we propose an approach to enable phylogenies to be inferred via heritable genetic annotations rather than directly tracked. We introduce a “hereditary stratigraphy” algorithm that enables efficient, accurate phylogenetic reconstruction with tunable, explicit trade-offs between annotation memory footprint and reconstruction accuracy. In particular, we demonstrate an approach that enables estimation of the most recent common ancestor (MRCA) between two individuals with fixed relative accuracy irrespective of lineage depth while only requiring logarithmic annotation space complexity with respect to lineage depth This approach can estimate, for example, MRCA generation of two genomes within 10% relative error with 95% confidence up to a depth of a trillion generations with genome annotations smaller than a kilobyte. We also simulate inference over known lineages, recovering up to 85.70% of the information contained in the original tree using 64-bit annotations.

BibTeX
⎘ copy to clipboard
@inproceedings{moreno2022hereditary,
    author = {Moreno, Matthew Andres and Dolson, Emily and Ofria, Charles},
    title = "{Hereditary Stratigraphy: Genome Annotations to Enable Phylogenetic Inference over Distributed Populations}",
    volume = {ALIFE 2022: The 2022 Conference on Artificial Life},
    series = {ALIFE 2022: The 2022 Conference on Artificial Life},
    year = {2022},
    month = {07},
    doi = {10.1162/isal_a_00550},
    url = {https://doi.org/10.1162/isal\_a\_00550},
    note = {64},
    eprint = {https://direct.mit.edu/isal/proceedings-pdf/isal/34/64/2035363/isal\_a\_00550.pdf},
}
Citation
⎘ copy to clipboard

Matthew Andres Moreno, Emily Dolson, Charles Ofria; July 18–22, 2022. “Hereditary Stratigraphy: Genome Annotations to Enable Phylogenetic Inference over Distributed Populations.” Proceedings of the ALIFE 2022: The 2022 Conference on Artificial Life. ALIFE 2022: The 2022 Conference on Artificial Life. Online. (pp. 64). ASME. https://doi.org/10.1162/isal_a_00550

Supporting Materials
2022 Hereditary stratigraphy: genome annotations to enable phylogenetic inference over distributed populations
Download
View at Publisher
Authors
Date May 13th, 2022
DOI 10.1145/3520304.3533937
Venue The Genetic and Evolutionary Computation Conference
Abstract

Phylogenetic analyses can also enable insight into evolutionary and ecological dynamics such as selection pressure and frequency dependent selection in digital evolution systems. Traditionally digital evolution systems have recorded data for phylogenetic analyses through perfect tracking where each birth event is recorded in a centralized data structures. This approach, however, does not easily scale to distributed computing environments where evolutionary individuals may migrate between a large number of disjoint processing elements. To provide for phylogenetic analyses in these environments, we propose an approach to infer phylogenies via heritable genetic annotations rather than directly track them. We introduce a “hereditary stratigraphy” algorithm that enables efficient, accurate phylogenetic reconstruction with tunable, explicit trade-offs between annotation memory footprint and reconstruction accuracy. This approach can estimate, for example, MRCA generation of two genomes within 10% relative error with 95% confidence up to a depth of a trillion generations with genome annotations smaller than a kilobyte. We also simulate inference over known lineages, recovering up to 85.70% of the information contained in the original tree using a 64-bit annotation.

BibTeX
⎘ copy to clipboard
@inproceedings{moreno2022hereditary_gecco,
  author = {Moreno, Matthew Andres and Dolson, Emily and Ofria, Charles},
  title = {Hereditary Stratigraphy: Genome Annotations to Enable Phylogenetic Inference over Distributed Populations},
  year = {2022},
  isbn = {9781450392686},
  publisher = {Association for Computing Machinery},
  address = {New York, NY, USA},
  url = {https://doi.org/10.1145/3520304.3533937},
  doi = {10.1145/3520304.3533937},
  booktitle = {Proceedings of the Genetic and Evolutionary Computation Conference Companion},
  pages = {65–66},
  numpages = {2},
  keywords = {phylogenetics, decentralized algorithms, genetic algorithms, digital evolution, genetic programming},
  location = {Boston, Massachusetts},
  series = {GECCO '22}
}
Citation
⎘ copy to clipboard

Matthew Andres Moreno, Emily Dolson, and Charles Ofria. 2022. Hereditary stratigraphy: genome annotations to enable phylogenetic inference over distributed populations. In Proceedings of the Genetic and Evolutionary Computation Conference Companion (GECCO ‘22). Association for Computing Machinery, New York, NY, USA, 65–66. https://doi.org/10.1145/3520304.3533937

Supporting Materials
2022 alifedata-phyloinformatics-convert
View on GitHub
View at Publisher
Authors
Date January 1st, 2022
Venue Python package published via PyPI

alifedata-phyloinformatics-convert helps apply traditional phyloinformatics software to alife standardized data.

2022 hstrat
View on GitHub
View at Publisher
Authors
Date January 1st, 2022
Venue Python package published via PyPI

hstrat enables phylogenetic inference on distributed digital evolution populations.

BibTeX
⎘ copy to clipboard
@article{moreno2022hereditary,
  author = {Moreno, Matthew Andres and Dolson, Emily and Ofria, Charles},
  doi = {https://doi.org/10.1162/isal_a_00550},
  journal = {Proceedings of the ALIFE 2022: The 2022 Conference on Artificial Life},
  month = {7},
  pages = {64--74},
  title = {{Hereditary Stratigraphy: Genome Annotations to Enable Phylogenetic Inference over Distributed Populations}},
  volume = {Proceedings of the ALIFE 2022: The 2022 Conference on Artificial Life},
  year = {2022}
}
Citation
⎘ copy to clipboard

Moreno, M. A., Dolson, E., & Ofria, C. (2022). Hereditary Stratigraphy: Genome Annotations to Enable Phylogenetic Inference over Distributed Populations. Proceedings of the ALIFE 2022: The 2022 Conference on Artificial Life, Proceedings of the ALIFE 2022: The 2022 Conference on Artificial Life(), 64–74. https://doi.org/https://doi.org/10.1162/isal_a_00550

2022 interval-search
View on GitHub
View at Publisher
Authors
Date January 1st, 2022
Venue Python package published via PyPI

interval-search provides predicate-based binary and doubling search implementations.

2022 opytional
View on GitHub
View at Publisher
Authors
Date January 1st, 2022
Venue Python package published via PyPI

opytional makes working with values that might be None safer and easier.

2022 phylotrackpy
View on GitHub
View at Publisher
Authors
Date January 1st, 2022
Venue Python package published via PyPI

phylotrackpy is a Python phylogeny tracker.

2021 NP Completeness Lecture Series
Authors
Date November 29th, 2021
Venue CSE 431 Algorithm Engineering at Michigan State University

Intuition-first talks introducing & defining complexity classes, covering the construction & interpretation of reductions with help a sandwich-making robot, outlining the Cooke-Levin theorem via the shenanigans of a certain Doge Jr. picking a SAT lock to get out of doing his NP homework, and unpacking a literal barrel of monkeys (TM) to explore the P ?= NP question.

Supporting Materials
2021 Matchmaker, Matchmaker, Make Me a Match: Geometric, Variational, and Evolutionary Implications of Criteria for Tag Affinity
Download
View at Publisher
Authors
Date August 10th, 2021
DOI 10.48550/arXiv.2108.04507
Venue arXiv
Abstract

Genetic programming and artificial life systems commonly employ tag-matching schemes to determine interactions between model components. However, the implications of criteria used to determine affinity between tags with respect to constraints on emergent connectivity, canalization of changes to connectivity under mutation, and evolutionary dynamics have not been considered. We highlight differences between tag-matching criteria with respect to geometric constraint and variation generated under mutation. We find that tag-matching criteria can influence the rate of adaptive evolution and the quality of evolved solutions. Better understanding of the geometric, variational, and evolutionary properties of tag-matching criteria will facilitate more effective incorporation of tag matching into genetic programming and artificial life systems. By showing that tag-matching criteria influence connectivity patterns and evolutionary dynamics, our findings also raise fundamental questions about the properties of tag-matching systems in nature.

BibTeX
⎘ copy to clipboard
@misc{moreno2021matchmaker,
  doi = {10.48550/ARXIV.2108.04507},
  url = {https://arxiv.org/abs/2108.04507},
  author = {Moreno, Matthew Andres and Lalejini, Alexander and Ofria, Charles},
  keywords = {Neural and Evolutionary Computing (cs.NE), FOS: Computer and information sciences, FOS: Computer and information sciences},
  title = {Matchmaker, Matchmaker, Make Me a Match: Geometric, Variational, and Evolutionary Implications of Criteria for Tag Affinity},
  publisher = {arXiv},
  year = {2021},
  copyright = {arXiv.org perpetual, non-exclusive license}
}
Citation
⎘ copy to clipboard

Moreno, M. A., Lalejini, A., & Ofria, C. (2021). Matchmaker, Matchmaker, Make Me a Match: Geometric, Variational, and Evolutionary Implications of Criteria for Tag Affinity. arXiv preprint arXiv:2108.04507.

Supporting Materials
2021 Case Study of Novelty, Complexity, and Adaptation in a Multicellular System
Download
View at Publisher
Authors
Date July 22nd, 2021
Venue The Fourth Workshop on Open-Ended Evolution (OEE4)
Abstract

Continuing generation of novelty, complexity, and adaptation are well-established as core aspects of open-ended evolution. However, the manner in which these phenomena relate remains an area of great theoretical interest. It is yet to be firmly established to what extent these phenomena are coupled and by what means they interact. In this work, we track the co-evolution of novelty, complexity, and adaptation in a case study from a simulation system designed to study the evolution of digital multicellularity. In this case study, we describe ten qualitatively distinct multicellular morphologies, several of which exhibit asymmetrical growth and distinct life stages. We contextualize the evolutionary history of these morphologies with measurements of complexity and adaptation. Our case study suggests a loose, sometimes divergent, relationship can exist among novelty, complexity, and adaptation.

BibTeX
⎘ copy to clipboard
@inproceedings{moreno2021case,
  author = {Moreno, Matthew Andres and Papa, Santiago Rodriguez and Ofria, Charles},
  title = {Case Study of Novelty, Complexity, and Adaptation in a Multicellular System},
  year = {2021},
  url = {http://workshops.alife.org/oee4/papers/moreno-oee4-camera-ready.pdf},
  booktitle = {OEE4: The Fourth Workshop on Open-Ended Evolution},
  numpages = {9},
  location = {Prague, Czech Republic}
}
Citation
⎘ copy to clipboard

Matthew Andres Moreno, Santiago Rodriguez Papa and Charles Ofria. 2021. Case Study of Novelty, Complexity, and Adaptation in a Multicellular System. OEE4: The Fourth Workshop on Open-Ended Evolution.

Supporting Materials
2021 Diversity, Equity, & Inclusion Discussion Seminar
View at Publisher
Authors
Date July 9th, 2021
Venue Workshop for Avida-ED Software Development

Facilitated group discussion of “Real talk: saturated sites of violence in CS education” (Rankin et. al, 2021).

Rankin, Yolanda A., Jakita O. Thomas, and Sheena Erete. “Real talk: saturated sites of violence in CS education.” ACM Inroads 12.2 (2021): 30-37.

2021 Tag-based regulation of modules in genetic programming improves context-dependent problem solving
Download
View at Publisher
Authors
Date July 7th, 2021
DOI 10.1007/s10710-021-09406-8
Venue Genetic Programming and Evolvable Machines
Abstract

We introduce and experimentally demonstrate the utility of tag-based genetic regulation, a new genetic programming (GP) technique that allows programs to dynamically adjust which code modules to express. Tags are evolvable labels that provide a flexible mechanism for referencing code modules. Tag-based genetic regulation extends existing tag-based naming schemes to allow programs to “promote” and “repress” code modules in order to alter expression patterns. This extension allows evolution to structure a program as a gene regulatory network where modules are regulated based on instruction executions. We demonstrate the functionality of tag-based regulation on a range of program synthesis problems. We find that tag-based regulation improves problem-solving performance on context-dependent problems; that is, problems where programs must adjust how they respond to current inputs based on prior inputs. Indeed, the system could not evolve solutions to some context-dependent problems until regulation was added. Our implementation of tag-based genetic regulation is not universally beneficial, however. We identify scenarios where the correct response to a particular input never changes, rendering tag-based regulation an unneeded functionality that can sometimes impede adaptive evolution. Tag-based genetic regulation broadens our repertoire of techniques for evolving more dynamic genetic programs and can easily be incorporated into existing tag-enabled GP systems.

BibTeX
⎘ copy to clipboard
@article{lalejini2021tag,
  title = {Tag-based regulation of modules in genetic programming improves context-dependent problem solving},
  copyright = {All rights reserved},
  issn = {1389-2576, 1573-7632},
  url = {https://link.springer.com/10.1007/s10710-021-09406-8},
  doi = {10.1007/s10710-021-09406-8},
  language = {en},
  urldate = {2021-07-10},
  journal = {Genetic Programming and Evolvable Machines},
  volume = {22},
  number = {3},
  pages = {325--355},
  author = {Lalejini, Alexander and Moreno, Matthew Andres and Ofria, Charles},
  month = jul,
  year = {2021},
}
Citation
⎘ copy to clipboard

Lalejini, A., Moreno, M.A. & Ofria, C. Tag-based regulation of modules in genetic programming improves context-dependent problem solving. Genet Program Evolvable Mach 22, 325–355 (2021). https://doi.org/10.1007/s10710-021-09406-8

Supporting Materials
2021 Conduit: A C++ Library for Best-effort High Performance Computing
Download
View at Publisher
Authors
Date May 21st, 2021
DOI 10.1145/3449726.3463205
Venue ACM Workshop on Parallel and Distributed Evolutionary Inspired Methods
Abstract

Developing software to effectively take advantage of growth in parallel and distributed processing capacity poses significant challenges. Traditional programming techniques allow a user to assume that execution, message passing, and memory are always kept synchronized. However, maintaining this consistency becomes increasingly costly at scale. One proposed strategy is “best-effort computing”, which relaxes synchronization and hardware reliability requirements, accepting nondeterminism in exchange for efficiency. Although many programming languages and frameworks aim to facilitate software development for high performance applications, existing tools do not directly provide a prepackaged best-effort interface. The Conduit C++ Library aims to provide such an interface for convenient implementation of software that uses best-effort inter-thread and inter-process communication. Here, we describe the motivation, objectives, design, and implementation of the library. Benchmarks on a communication-intensive graph coloring problem and a compute-intensive digital evolution simulation show that Conduit’s best-effort model can improve scaling efficiency and solution quality, particularly in a distributed, multi-node context.

BibTeX
⎘ copy to clipboard
@inproceedings{moreno2021conduit,
  author = {Moreno, Matthew Andres and Papa, Santiago Rodriguez and Ofria, Charles},
  title = {Conduit: A C++ Library for Best-Effort High Performance Computing},
  year = {2021},
  isbn = {9781450383516},
  publisher = {Association for Computing Machinery},
  address = {New York, NY, USA},
  url = {https://doi.org/10.1145/3449726.3463205},
  doi = {10.1145/3449726.3463205},
  booktitle = {Proceedings of the Genetic and Evolutionary Computation Conference Companion},
  pages = {1795–1800},
  numpages = {6},
  keywords = {high performance computing, best-effort computing},
  location = {Lille, France},
  series = {GECCO '21}
}
Citation
⎘ copy to clipboard

Matthew Andres Moreno, Santiago Rodriguez Papa, and Charles Ofria. 2021. Conduit: a C++ library for best-effort high performance computing. In Proceedings of the Genetic and Evolutionary Computation Conference Companion (GECCO ‘21). Association for Computing Machinery, New York, NY, USA, 1795–1800. https://doi.org/10.1145/3449726.3463205

Supporting Materials
2021 Conduit: A C++ Library for Best-effort High Performance Computing
Download
View at Publisher
Authors
Date March 12th, 2021
Venue The 6th International Workshop on Modeling and Simulation of and by Parallel and Distributed Systems (MSPDS 2020)
Abstract

Developing software to effectively take advantage of growth in parallel and distributed processing capacity poses significant challenges. Best-effort computing models, which relax synchronization requirements, have been proposed as a strategy to overcome challenges harness high performance computing at extreme scale. Although many programming languages and frameworks aim to facilitate software development for high performance applications, existing prevalent tools do not expose an explicit best-effort interface. The Conduit C++ Library aims to provide a convenient interface for best-effort inter-thread and inter-process communication. Here, we describe the motivation, objectives, design, and implementation of the library.

BibTeX
⎘ copy to clipboard
@inproceedings{moreno2021conduit_hpcs,
  author = {Moreno, Matthew Andres and Papa, Santiago Rodriguez and Ofria, Charles},
  title = {Conduit: A C++ Library for Best-Effort High Performance Computing},
  year = {2021},
  booktitle = {The 6th International Workshop on Modeling and Simulation of and by Parallel and Distributed Systems (MSPDS 2020)},
  numpages = {2},
  keywords = {high performance computing, best-effort computing},
  location = {Barcelona, Sapin},
  series = {HPCS 2021}
}

Citation
⎘ copy to clipboard

Matthew Andres Moreno, Santiago Rodriguez Papa and Charles Ofria. 2021. Conduit: A C++ Library for Best-Effort High Performance Computing. MSPDS 2020: The 6th International Workshop on Modeling and Simulation of and by Parallel and Distributed Systems.

Supporting Materials
2020 Gw███tt School District Covid-19 Dashboard
View on GitHub
View at Publisher
Authors
Date October 25th, 2020
Venue Shiny R app published via shinyapps.io

This website pulls directly from publicly available Gw███tt County Public Schools (GCPS) data. As the data on the website are provided as discrete pdf files per day, it can be difficult to see patterns. This website therefore serves as a way to visualize the data for interested stakeholders. This requires data to be scraped from PDF reports (now also located here) put together by the Gw███tt School District, packaged with a shiny web app, and deployed to https://shinyapps.io. We also automatically upload up-to-date consolidated datasets to the project’s Open Science Framework page.

Supporting Materials
2020 Nitty Gritty on Professional Jekyll Posts
View at Publisher
Authors
Date July 16th, 2020
Abstract

Class blogs have grown into a core tool of the educational experiences, like the CSE 491 Advanced C++ Seminar and this summer’s WAVES Workshop, I’ve had the pleasure of facilitating. I typically have students contribute to the blog as part of their own learning experience.

I love this format because it helps,

develop students’ professional communication skills, provide students a sense of accomplishment via a tangible, rewarding deliverable, showcase students’ work to the general public, showcase students’ work to potential employers, showcase students’ work to mentors’ evaluators, more effectively capitalize on students’ work after they leave the lab group or classroom, and sausage factory more useful information out into the ether that someday somebody will be very happy to have Googled upon.

This writeup provides guidance targeted to students writing entries for these class blogs (hi! :wave:). It should also contain a few actionable nuggets for other authors writing professional blog posts with Jekyll, though! I hope that other instructors, in particular, may find this a useful resource for bringing similar models into their classroom. :cowboy_hat_face:

2020 Zero to Sixty: Onboarding Tutorials for Native & Web Software Development with C++
View at Publisher
Authors
Date May 26th, 2020
Venue Workshop for Avida-ED Software Development

Hands-on, asynchronous 4 day tutorial series covering foundational web development competencies, C++ development with the Empirical library, and compiling for the web with Emscripten.

2020 dishtiny
View on GitHub
Authors
Date January 1st, 2020
Venue header-only C++ library

C++ library for digital evolution simulations studying digital multicellularity and fraternal major evolutionary transitions in individuality.

2020 conduit
View on GitHub
Authors
Date January 1st, 2020
Venue header-only C++ library

C++ library that wraps intra-thread, inter-thread, and inter-process communication in a uniform, modular, object-oriented interface, with a focus on asynchronous high-performance computing applications.

2020 signalgp-lite
View on GitHub
Authors
Date January 1st, 2020
Venue header-only C++ library

A genetic programming implementation designed for large-scale artificial life applications. Organized as a header-only C++ library. Inspired by Alex Lalejini’s SignalGP.

2020 teeplot
View on GitHub
View at Publisher
Authors
Date January 1st, 2020
Venue Python package published via PyPI

teeplot automatically saves a copy of rendered Jupyter notebook plots.

2019 Toward Open-Ended Fraternal Transitions in Individuality
Download
View at Publisher
Authors
Date May 1st, 2019
DOI 10.1162/artl_a_00284
Venue Artificial Life
Abstract

The emergence of new replicating entities from the union of simpler entities characterizes some of the most profound events in natural evolutionary history. Such transitions in individuality are essential to the evolution of the most complex forms of life. Thus, understanding these transitions is critical to building artificial systems capable of open-ended evolution. Alas, these transitions are challenging to induce or detect, even with computational organisms. Here, we introduce the DISHTINY (Distributed Hierarchical Transitions in Individuality) platform, which provides simple cell-like organisms with the ability and incentive to unite into new individuals in a manner that can continue to scale to subsequent transitions. The system is designed to encourage these transitions so that they can be studied: organisms that coordinate spatiotemporally can maximize the rate of resource harvest, which is closely linked to their reproductive ability. We demonstrate the hierarchical emergence of multiple levels of individuality among simple cell-like organisms that evolve parameters for manually designed strategies. During evolution, we observe reproductive division of labor and close cooperation among cells, including resource-sharing, aggregation of resource endowments for propagules, and emergence of an apoptosis response to somatic mutation. Many replicate populations evolved to direct their resources toward low-level groups (behaving like multicellular individuals), and many others evolved to direct their resources toward high-level groups (acting as larger-scale multicellular individuals).

BibTeX
⎘ copy to clipboard
@article{moreno2019toward,
  author = {Moreno, Matthew Andres and Ofria, Charles},
  title = "{Toward Open-Ended Fraternal Transitions in Individuality}",
  journal = {Artificial Life},
  volume = {25},
  number = {2},
  pages = {117-133},
  year = {2019},
  month = {05},
  issn = {1064-5462},
  doi = {10.1162/artl_a_00284},
  url = {https://doi.org/10.1162/artl\_a\_00284},
  eprint = {https://direct.mit.edu/artl/article-pdf/25/2/117/1896700/artl\_a\_00284.pdf},
}
Citation
⎘ copy to clipboard

Matthew Andres Moreno, Charles Ofria; Toward Open-Ended Fraternal Transitions in Individuality. Artif Life 2019; 25 (2): 117–133. doi: https://doi.org/10.1162/artl_a_00284

Supporting Materials
2019 keyname
View on GitHub
View at Publisher
Authors
Date January 1st, 2019
Venue Python package published via PyPI

keyname helps easily pack and unpack metadata in a filename.

2018 Understanding Fraternal Transitions in Individuality
Download
View at Publisher
Authors
Date July 22nd, 2018
Venue The Third Workshop on Open-Ended Evolution (OEE3)
Abstract

The emergence of new replicating entities from the union of existing entities represent some of the most profound events in natural evolutionary history. Facilitating such evolutionary transitions in individuality is essential to the derivation of the most complex forms of life. As such, understanding these transitions is critical for building artificial systems capable of open-ended evolution. Alas, these transitions are challenging to induce or detect, even with computational organisms. Here, we introduce the DISHTINY (DIStributed Hierarchical Transitions in IndividualitY) platform, which provides simple cell-like organisms with the ability and incentive to unite into new individuals in a manner that can continue to scale to subsequent transitions. The system is designed to encourage these transitions so that they can be studied: organisms that coordinate spatiotemporally can maximize the rate of resource harvest, which is closely linked to their reproductive ability. We demonstrate the hierarchical emergence of multiple levels of individuality among simple cell-like organisms that evolve parameters for manually-designed strategies. During evolution, we observe reproductive division of labor and close cooperation between cells, including resource-sharing, aggregation of resource endowments for propagules, and emergence of an apoptosis response to somatic mutation. While a few replicate populations evolved selfish behaviors, many evolved to direct their resources toward low-level groups (behaving like multi-cellular individuals), and many others evolved to direct their resources toward high-level groups (acting as larger-scale multi-cellular individuals). Finally, we demonstrated that genotypes that encode higher-level individuality consistently outcompete those that encode lower-level individuality.

BibTeX
⎘ copy to clipboard
@inproceedings{moreno2018understanding,
  author = {Moreno, Matthew Andres and Ofria, Charles},
  title = {Understanding Fraternal Transitions in Individuality},
  year = {2018},
  url = {http://workshops.alife.org/oee3/papers/moreno-oee3-final.pdf},
  booktitle = {OEE3: The Third Workshop on Open-Ended Evolution},
  numpages = {8},
  location = {Tokyo, Japan}
}
Citation
⎘ copy to clipboard

Matthew Andres Moreno and Charles Ofria. 2018. Understanding Fraternal Transitions in Individuality. OEE3: The Third Workshop on Open-Ended Evolution.

Supporting Materials
2018 Learning an Evolvable Genotype-Phenotype Mapping
Download
View at Publisher
Authors
Date July 15th, 2018
DOI 10.1145/3205455.3205597
Venue The Genetic and Evolutionary Computation Conference
Abstract

We present AutoMap, a pair of methods for automatic generation of evolvable genotype-phenotype mappings. Both use an artificial neural network autoencoder trained on phenotypes harvested from fitness peaks as the basis for a genotype-phenotype mapping. In the first, the decoder segment of a bottlenecked autoencoder serves as the genotype-phenotype mapping. In the second, a denoising autoencoder serves as the genotype-phenotype mapping. Automatic generation of evolvable genotype-phenotype mappings are demonstrated on the n-legged table problem, a toy problem that defines a simple rugged fitness landscape, and the Scrabble string problem, a more complicated problem that serves as a rough model for linear genetic programming. For both problems, the automatically generated genotype-phenotype mappings are found to enhance evolvability.

BibTeX
⎘ copy to clipboard
@inproceedings{moreno2018learning,
  author = {Moreno, Matthew Andres and Banzhaf, Wolfgang and Ofria, Charles},
  title = {Learning an Evolvable Genotype-Phenotype Mapping},
  year = {2018},
  isbn = {9781450356183},
  publisher = {Association for Computing Machinery},
  address = {New York, NY, USA},
  url = {https://doi.org/10.1145/3205455.3205597},
  doi = {10.1145/3205455.3205597},
  booktitle = {Proceedings of the Genetic and Evolutionary Computation Conference},
  pages = {983–990},
  numpages = {8},
  keywords = {deep learning, indirect encodings, evolvability, genetic algorithms, adaptive representations, genotype-phenotype map},
  location = {Kyoto, Japan},
  series = {GECCO '18}
}
Citation
⎘ copy to clipboard

Matthew Andres Moreno, Wolfgang Banzhaf, and Charles Ofria. 2018. Learning an evolvable genotype-phenotype mapping. In Proceedings of the Genetic and Evolutionary Computation Conference (GECCO ‘18). Association for Computing Machinery, New York, NY, USA, 983–990. https://doi.org/10.1145/3205455.3205597

Supporting Materials
2018 Reinterpretive Label Guerilla Art Software
View on GitHub
Authors
Date June 17th, 2018
Venue containerized workflow hosted via SingularityHub

Anything can become art by the addition of a sufficiently clever interpretive label, even really lame things. So, let’s reinterpret lame things and make them awesome by adding interpretive label stickers!

Supporting Materials
2018 A broadly conserved NERD genetically interacts with the exocyst to affect root growth and cell expansion
Download
View at Publisher
Authors
Date May 2nd, 2018
DOI 10.1093/jxb/ery162
Venue Journal of Experimental Biology
Abstract

The exocyst, a conserved, octameric protein complex, helps mediate secretion at the plasma membrane, facilitating specific developmental processes that include control of root meristem size, cell elongation, and tip growth. A genetic screen for second-site enhancers in Arabidopsis identified NEW ENHANCER of ROOT DWARFISM1 (NERD1) as an exocyst interactor. Mutations in NERD1 combined with weak exocyst mutations in SEC8 and EXO70A1 result in a synergistic reduction in root growth. Alone, nerd1 alleles modestly reduce primary root growth, both by shortening the root meristem and by reducing cell elongation, but also result in a slight increase in root hair length, bulging, and rupture. NERD1 was identified molecularly as At3g51050, which encodes a transmembrane protein of unknown function that is broadly conserved throughout the Archaeplastida. A functional NERD1–GFP fusion localizes to the Golgi, in a pattern distinct from the plasma membrane-localized exocyst, arguing against a direct NERD1–exocyst interaction. Structural modeling suggests the majority of the protein is positioned in the lumen, in a β-propeller-like structure that has some similarity to proteins that bind polysaccharides. We suggest that NERD1 interacts with the exocyst indirectly, possibly affecting polysaccharides destined for the cell wall, and influencing cell wall characteristics in a developmentally distinct manner.

BibTeX
⎘ copy to clipboard
@article{cole2018broadly,
  author = {Cole, Rex A and Peremyslov, Valera V and Van Why, Savannah and Moussaoui, Ibrahim and Ketter, Ann and Cool, Renee and Moreno, Matthew Andres and Vejlupkova, Zuzana and Dolja, Valerian V and Fowler, John E},
  title = "{A broadly conserved NERD genetically interacts with the exocyst to affect root growth and cell expansion}",
  journal = {Journal of Experimental Botany},
  volume = {69},
  number = {15},
  pages = {3625-3637},
  year = {2018},
  month = {05},
  issn = {0022-0957},
  doi = {10.1093/jxb/ery162},
  url = {https://doi.org/10.1093/jxb/ery162},
  eprint = {https://academic.oup.com/jxb/article-pdf/69/15/3625/25097718/ery162.pdf},
}
Citation
⎘ copy to clipboard

Rex A Cole, Valera V Peremyslov, Savannah Van Why, Ibrahim Moussaoui, Ann Ketter, Renee Cool, Matthew Andres Moreno, Zuzana Vejlupkova, Valerian V Dolja, John E Fowler, A broadly conserved NERD genetically interacts with the exocyst to affect root growth and cell expansion, Journal of Experimental Botany, Volume 69, Issue 15, 10 July 2018, Pages 3625–3637, https://doi.org/10.1093/jxb/ery162

Supporting Materials
2018 Empirical
View on GitHub
Date January 1st, 2018
Venue header-only C++ library

Empirical is a library of tools for developing useful, efficient, reliable, and available scientific software. The provided code is header-only and encapsulated into the emp namespace, so it is simple to incorporate into existing projects.

BibTeX
⎘ copy to clipboard
@software{Ofria_Empirical_C_library_2020,
  author = {Ofria, Charles and Moreno, Matthew Andres and Dolson, Emily and Lalejini, Alex and Rodriguez Papa, Santiago and Fenton, Jake and Perry, Katherine and Jorgensen, Steven and hoffmanriley and grenewode and Baldwin Edwards, Oliver and Stredwick, Jason and cgnitash and theycallmeHeem and Vostinar, Anya and Moreno, Ryan and Schossau, Jory and Zaman, Luis and djrain},
  doi = {10.5281/zenodo.4141943},
  license = {MIT},
  month = {10},
  title = {{Empirical: C++ library for efficient, reliable, and accessible scientific software}},
  url = {https://github.com/devosoft/Empirical},
  version = {0.0.4},
  year = {2020}
}
Citation
⎘ copy to clipboard

Ofria, C., Moreno, M. A., Dolson, E., Lalejini, A., Rodriguez Papa, S., Fenton, J., Perry, K., Jorgensen, S., , H., , G., Baldwin Edwards, O., Stredwick, J., , C., , T., Vostinar, A., Moreno, R., Schossau, J., Zaman, L., & , D. (2020). Empirical: C++ library for efficient, reliable, and accessible scientific software (Version 0.0.4) [Computer software]. https://doi.org/10.5281/zenodo.4141943

Supporting Materials
2017 Information Theory Through Toy Examples
Download
Authors
Date October 26th, 2017

An illustrated introduction to the intuition, terminology, & math behind information theory. Elucidates entropy & information through application to dice rolling (independent variables) and the interplay between readings from ambient outdoor light & precipitation meters (dependent variables).

2017 Center for Writing, Learning, & Teaching Sunman Sticker Pack
View on GitHub
View at Publisher
Authors
Date August 30th, 2017
Venue cross-platform sticker pack published via MojiLaLa

Our beloved Sunman, representing the Center for Writing, Learning, & Teaching at the University of Puget Sound. This repository contains the original Sunman sticker artworks and press/publicity kits generated by MojiLaLa, all as .png files.

2017 Investigating the Relationship Between Plasticity and Evolvability in a Genetic Regulatory Network Model
Download
Authors
Date May 1st, 2017
Venue Undergraduate Capstone Project
Abstract

Biological organisms are thought to possess traits that facilitate evolution. The term evolvability was coined to describe this type of adaptation. The question of evolvability has special practical relevance to computer science researchers engaged in longstanding efforts to harness evolution as an algorithm for automated design. It is hoped that a more nuanced understanding of evolvability inspired by biological evolution will translate to more powerful digital evolution techniques. To this end, the relationship between evolvability and environmental influence on the phenotype was investigated using digital experiments performed on a genetic regulatory model. The phenotypic response of champion individuals evolved under regimes of direct plasticity, and indirect plasticity was assessed. The model predicts that direct plasticity and indirect plasticity decrease and increase the frequency of silent mutations, respectively.

Supporting Materials
2017 Evolvability: What Is It and How Do We Get It?
Download
View at Publisher
Authors
Date April 17th, 2017
Venue Otis C. Chapman Honors Program Thesis
Abstract

Biological organisms exhibit spectacular adaptation to their environments. However, another marvel of biology lurks behind the adaptive traits that organisms exhibit over the course of their lifespans: it is hypothesized that biological organisms also exhibit adaptation to the evolutionary process itself. That is, biological organisms are thought to possess traits that facilitate evolution. The term evolvability was coined to describe this type of adaptation. The question of evolvability has special practical relevance to computer science researchers engaged in longstanding efforts to harness evolution as an algorithm for automated design. It is hoped that a more nuanced understanding of biological evolution will translate to more powerful digital evolution techniques. This thesis will present a theoretical overview of evolvability, illustrated with examples from biology and evolutionary computing, and discuss computational experiments probing the relationship between environmental influence on the phenotype and evolvability.

BibTeX
⎘ copy to clipboard
@thesis{moreno2017evolvability,
  author={Moreno, Matthew Andres},
  title={Evolvability: What Is It and How Do We Get It?},
  school={University of Puget Sound},
  type={Bachelor's Thesis},
  url={http://soundideas.pugetsound.edu/honors_program_theses/22/},
  year={2017}
}
Citation
⎘ copy to clipboard

Moreno, Matthew Andres, “Evolvability: What Is It and How Do We Get It?” (2017). Honors Program Theses. 22. https://soundideas.pugetsound.edu/honors_program_theses/22

Supporting Materials
2017 Silence of the Jams: The Effects of Self-Driving Cars on Traffic Patterns in the Puget Sound Region
Download
Authors
Date January 23rd, 2017
Venue CoMAP Mathematical Competition in Modeling
Abstract

We present a model of traffic in the greater Seattle area to understand how an increasing frequency of self-driving cars will change traffic dynamics in the area. We apply a two-component micro/macro traffic simulation to data for portions of Interstates 5, 90, 405, and State Route 520 to consider the impact of autonomous vehicles on regional traffic flow. We consider 0%, 10%, 50%, and 90% autonomous traffic.

Our micro model is designed to make predictions about the impact of self-driving vehicles on fundamental traffic dynamics and employs a cellular automata approach, inspired by the work of Nagel and Schrekenberg, to model interactions between a number of independent vehicles on a road. In this simulation, vehicles exhibit simple following behavior and experience occasional random deceleration events. We introduce a distinction between self-driving and human-driven cars, where autonomous vehicles exhibit more uniform cruising speed compared to human drivers and can follow safely at a much closer distance compared to human drivers.

Using this micro-level simulation, we predict a relation between traffic speed and traffic density for traffic with a varying composition of autonomous vehicles. Our macro model employs a system of ordinary differential equations to investigate the flow of traffic between segments of road in the region of study. We assess the impact of self-driving traffic composition on performance of the regional highway network at peak and average traffic loads, measuring trip times along each major highway and between a representative set of regional destinations. The travel time predictions of the macro model are compared to archived travel time data from the the Washington State Department of Transportation (WSDOT).

These models, in conjunction, facilitate insightful study of how different percentages of self-driving cars on the motorways change traffic flow under heavy and light traffic conditions. The quantitative accuracy of our macro model is observed to decline significantly with increasing traffic loads. Nevertheless, the results of our study demonstrate clear qualitative trends that inform our recommendations. Although our macro model does not make quantitatively accurate predictions, we observe a trend indicating that at high traffic densities, traffic delays decrease with increasing percentages of self-driving cars on the road.

Analysis of our micro model reveals that assigning traffic lanes for the exclusive use of autonomous vehicles can be a boon to traffic flow efficiency. When the concentration of self-driving cars rises to above 5%, our micro model predicts that it becomes advantageous to implement at least one “self-driving-car only” lane in roads with 3 or more lanes. Under some circumstances, this strategy has the potential to result in reduced travel delays for human-driven and autonomously controlled vehicles alike.

Supporting Materials