# CS 5970 Homework 3 — Evolutionary
Computation Basics

## Due Monday, September 28, 2016

## 1. Motivation

Crossover is the method by which alleles present in a population are
recombined into new genotypes. The generation of new genotypes through
crossover should be understood to in order to comprehend complex
evolutionary systems in which crossover is combined with other operators,
such as mutation and selection.

## 2. Goal

The goal of this assignment is to give you experience with a
crossover-only model of evolutionary computation.

## 3. Assignment

Certainly a thorough crossover operator will, over time, produce every
possible genotype, assuming that every possible allele is present in the
initial population and no alleles are lost through selection. But at what
rate? Your job in this assignment is to provide an estimate of that rate,
at least for a particular evolutionary computation setup.

Assume that you begin with a population P(0) of 100 individuals. The
genotype of each individual consists of a single chromosome of 100 bits.
In the initial population P(0), half of the individuals begin with a
chromosome of all ones and the other half of the individuals begin with a
chromosome of all zeros. Each population member is selected once for
reproduction each generation and is paired at random with another
population member. Each pair produces two offspring using uniform
crossover. Answer the following questions:

- Given a random target genome, what is the chance that it is present
in population P(0)?
- Given a random target genome, what is the chance that it will be
present in the population after a single round of crossover, that is,
in population P(1)?
- After 10 rounds of crossover/in P(10)?
- After 100 rounds of crossover/in P(100)?
- After 1000 rounds of crossover/in P(1000)?
- Given a random target genome, what is the chance that it has been
present in any of the populations leading up to P(1000)?

For these questions, assume that the random target genome is equally
likely to be any of the possible genomes given a chromosome of 100
bits.

You may use either a mathematical/logical or an empirical approach to
answering these questions. In addition to answering the questions, you
will need to **explain** your approach and **justify** it.

## 4. What to Turn In

You will turn in via D2L a machine readable electronic copy of your
homework that answers the questions above, including your explanation and
justification. If your approach is empirical, you will also need to submit
an electronic copy of your code and an electronic copy of all data
generated.