To encourage you to implement a minimal viable product for your project code and start running experiments, you will be required to submit a functioning simulation for this checkpoint. You will be allowed to continue to add features to your project, but by this point you should have an artificial life simulation or evolutionary algorithm that runs and produces data that somewhat answer your research question.


This counts toward the “Term project software” portion of your grade and will be 2/5 of it, so this portion contributes 10% to your final grade and the software that you submit at the end of the term counts for 15% of your final grade. This is due Wednesday Feb 17th at 10pm. You will submit this by including the link to your project on Moodle (or your git repo link if you prefer).


Your code at this point should:

  • Compile and run using ‘make’
  • Use Empirical DataFiles to output data that starts to answer your research question
  • Use Empirical configuration management and a configuration file as well as commandline arguments
  • Have an organism class of some kind with features that address your research question
  • Enable evolution of your organisms to occur (which requires a population, variation, competition, inheritance, and time)

Once again, the goal of this early deadline is to force you to create a simple minimum viable product that may not answer your research question perfectly, but would be ‘good enough’ to meet the goals of the project.


The rubric will be as follows:

Item Points
Each of the requirements met 5
Features implemented are sufficient to generate data that addresses research question 10
Features implemented are a simple as possible while still addressing research question 5