Overview

Because evolution is an algorithm that can occur whenever its required components are in place, we can create systems that evolve via natural selection in software and get some things that are the closest we’ve seen so far to “alive” in a digital system.

Basic Learning Objectives

Before class, you should be able to:

  • Explain how digital evolution is an instantiation of evolution
  • Explain the difference between implicit and explicit fitness

Advanced Learning Objectives

After class, you should be able to:

  • Implement the components necessary for a simple digital evolution system using Empirical

Resources

You should read/watch the following:

  • Digital Evolution
    • You only need to watch the first video, the second is just a longer version if you are interested
  • 7.3 (“Evolving Ecosystems”) of Biological Bits

Checks

Submit answers to the following on Moodle:

  • Why do we say that digital evolution systems instantiate evolution instead of simulate?
  • What is the difference between “implicit” and “explicit” fitness?
  • What dynamics of life do these various digital evolution systems capture? What are they still missing?