Overview
The goal of the project is to evolve user interface layouts. Given a reference interface layout, we would
like the genetic algorithm to evolve an initial population of random layouts towards the reference layout.
Eventually we would like to evolve complex user interfaces and to learn the characteristics of the resulting
interfaces. By doing so we hope to eventually define a set of characteristics which can be associated with
aesthetics. We want to learn good and bad user interface layouts.
Source Code
The source code can be obtained from the following link:
UI Evolution
The code is given as is, so use at your own discretion.
Results
Proof of concept
User Feedback
The GA produces a random initial population of interface
layouts. The user provides feedback by selecting the best and worst individuals in
the population. The rest of the individuals get their fitness by creating an interpolation
based on the best and worst individuals.
Below we see the initial population of random user interface layouts and the converged population
of interface layouts after several generations.
This shows the interpolation devised from the fitness of the best and worst individuals.
|