https://github.com/amlalejini/alife-2024-phylo-tutorial
Artificial Life 2024 Tutorial - Phylogenies: how and why to track them in artificial life
Science Score: 26.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (9.9%) to scientific vocabulary
Repository
Artificial Life 2024 Tutorial - Phylogenies: how and why to track them in artificial life
Basic Info
- Host: GitHub
- Owner: amlalejini
- License: mit
- Language: Jupyter Notebook
- Default Branch: main
- Size: 6.24 MB
Statistics
- Stars: 1
- Watchers: 3
- Forks: 0
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
Phylogenies: how and why to track them in artificial life
Phylogenies (i.e., ancestry trees) group extant organisms by ancestral relatedness to render the history of hierarchical lineage branching events within an evolving system. These relationships reveal the evolutionary trajectories of populations through a genotypic or phenotypic space. As such, phylogenies open a direct window through which to observe ecology, differential selection, genetic potentiation, emergence of complex traits, and other evolutionary dynamics in artificial life (ALife) systems. In evolutionary biology, phylogenies are often estimated from the fossil record, phenotypic traits, and extant genetic information. Although substantially limited in precision, such phylogenies have profoundly advanced our understanding of the evolution of life on Earth. In digital systems, we often have the ability to create perfect (or near perfect) phylogenies that reveal the step-by-step process by which evolution unfolds. However, phylogeny tracking and phylogeny-based analyses are not yet commonplace in ALife. Fortunately, a number of software tools have recently become available to facilitate such analyses, such as Phylotrackpy, DEAP, Empirical, MABE, and hstrat.
Biologists have developed many sophisticated and powerful phylogeny-based analysis techniques. For example, existing work uses properties of tree topology to infer characteristics of the evolutionary processes acting on a population. With an understanding of the differences between biology and artificial life, these approaches can be imported into ALife systems. For example, phylodiversity metrics can be used to detect diversity-maintaining ecological interactions and ongoing generation of significant evolutionary innovations.
Tutorial outline (tentative)
In addition to introducing phylogenies and their use cases in an artificial life context, we will help participants through the process of incorporating phylogeny tracking into an artificial life system using existing phylogeny tracking software. We encourage participants to bring their own artificial life system to "hack on", but we will also provide example notebooks (that implement simple example ALife systems) for participants to use.
Outline:
- Intro to phylogenies and lineages
- What can phylogenies do for you?
- Guided coding challenges (incorporating phylogeny tracking into an ALife system + saving and analyzing phylogeny data)
- Discuss potential for those interested in collaborating on a workshop report
When & Where
This tutorial session is organized as part of the 2024 Conference on Artificial Life, held July 22-26 in Copenhagen, Denmark.
Time and room assignment can be found in the conference program: https://2024.alife.org/program.html.
For online participants
We can chat in Meeting Room Sigma on the ISAL discord server (the room's zoom doesn't make for great interaction): https://discord.com/channels/1123220946686316654/1263957778423349380
Workshop report
If a critical mass of participants are interested, we will organize a workshop report reviewing how Phylogenies are currently used by participants' ALife systems as well as open questions / future challenges for phylogenetic analysis in ALife.
Organizers
- Emily Dolson, Assistant Professor, Michigan State University
- Matthew Andres Moreno, Postdoctoral Fellow, University of Michigan
- Alexander Lalejini, Assistant Professor, Grand Valley State University
- Jack Garbus, Graduate student, Brandeis University
Resources
- Slides
- Sample of ALife papers that use/review phylogenetic analysis: papers.md
- List of useful software packages for tracking phylogenies in ALife systems: software.md
Owner
- Name: Alex Lalejini
- Login: amlalejini
- Kind: user
- Location: Grand Rapids, MI
- Company: Grand Valley State University
- Website: https://lalejini.com
- Twitter: amlalejini
- Repositories: 98
- Profile: https://github.com/amlalejini
Assistant Professor @ Grand Valley State University
GitHub Events
Total
Last Year
Committers
Last synced: about 1 year ago
Top Committers
| Name | Commits | |
|---|---|---|
| Alexander Lalejini | a****i@g****m | 25 |
| Matthew Andres Moreno | m****n@g****m | 8 |
| Jack | j****s@g****m | 6 |
| Emily Dolson | e****n@g****m | 2 |
Issues and Pull Requests
Last synced: about 1 year ago
All Time
- Total issues: 0
- Total pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Total issue authors: 0
- Total pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- Pygments ==2.18.0
- appnope ==0.1.4
- asttokens ==2.4.1
- comm ==0.2.2
- debugpy ==1.8.2
- decorator ==5.1.1
- executing ==2.0.1
- ipykernel ==6.29.5
- ipython ==8.26.0
- jedi ==0.19.1
- jupyter_client ==8.6.2
- jupyter_core ==5.7.2
- matplotlib-inline ==0.1.7
- nest-asyncio ==1.6.0
- packaging ==24.1
- parso ==0.8.4
- pexpect ==4.9.0
- phylotrackpy ==0.2.2
- platformdirs ==4.2.2
- polars ==1.1.0
- prompt_toolkit ==3.0.47
- psutil ==6.0.0
- ptyprocess ==0.7.0
- pure-eval ==0.2.2
- python-dateutil ==2.9.0.post0
- pyzmq ==26.0.3
- six ==1.16.0
- stack-data ==0.6.3
- tornado ==6.4.1
- traitlets ==5.14.3
- typing_extensions ==4.12.2
- wcwidth ==0.2.13