CS 5970 Homework 5 — Neuroevolutionary Basics

Due Monday, November 9, 2015

1. Motivation

One of the simplest forms of neuroevolution is to evolve the weights of a standard feedforward artificial neural network (ANN). However, there has been concern regarding what is known variously as "the structural/functional mapping problem," "competing conventions," or the "permutation problem." This refers to the possibility that the same functional relationship between the input and output of the ANN could be encoded in ways that are different and incompatible from the perspective of crossover. To understand neuroevolution of weights, it makes sense to understand the concept of competing conventions.

2. Goal

The goal of this assignment is to give you experience with a very simple version of competing conventions. (Note that the real issue is far more complex than shown here because the networks may be far larger and with multiple layers of hidden nodes, the values of arbitrary GAs may be continuous rather than discrete, and conventions may only need to be similar rather than exact in order for them to compete.)

3. Assignment

Consider the following ANN setup:

Now, consider the following genome that represents the weights of the network:

 1   2   3   3   2   1   6   8  10

In the genome, the first three numbers represent the connections between the first input unit and the three hidden units (in order), the second three numbers represent the connections between the second input unit and the three hidden units (in order), and the final three numbers represent the connections between the hidden units (in order) and the output unit.

  1. Draw the ANN specified here, including its structure and weights (as given in the genome above).
  2. List and explain the possible output values of this ANN for the possible input values.
  3. List and explain at least ten alternative genomes that give exact competing conventions for the genome given above.

4. What to Turn In

You will turn in via D2L a machine readable electronic copy of your homework that completes the exercises given above.