Visualization tool for coevolutionary simulations
Coevisualizer logo
I built the Coevisualizer framework to help design, experiment with, and visualize coevolutionary simulations.

A few publications came out of this work:

Related Publications

Bader-Natal, A. and Pollack, J. Towards Metrics and Visualizations Sensitive to Coevolutionary Failures. AAAI Technical Report FS-05-03. Coevolutionary and Coadaptive Systems, AAAI Fall Symposium 2005, Washington D.C. 2005.
Abstract Draft PDF Draft PDF AAAI Press AAAI Press Talk Slides Talk Slides

The task of monitoring success and failure in coevolution is inherently difficult, as domains need not have any external metric to measure performance. Past metrics and visualizations for coevolution have been limited to identification and measurement of success but not failure. We suggest circumventing this limitation by switching from "best-of-generation"-based techniques to "all-of-generation"-based techniques. Using "all-of-generation" data, we demonstrate one such technique - a population-differential technique - that allows us to profile and distinguish an assortment of coevolutionary successes and failures, including arms-race dynamics, disengagement, cycling, forgetting, and relativism.

Bader-Natal, A. and Pollack, J.B. A Population-Differential Method of Monitoring Success and Failure in Coevolution. Proceedings of the 2004 Genetic and Evolutionary Computation Conference, Springer-Verlag, 2004.
Abstract Draft PDF Draft PDF Springer Springer Poster Poster

Coevolutionary algorithms require no domain-specific measure of objective fitness, enabling these algorithms to be applied to domains for which no objective metric is known or for which known metrics are too expensive. But this flexibility comes at the expense of accountability. Past work on monitoring has focused on measuring success, but has ignored failure. This limitation is due to a common reliance on "best-of-generation" (BOG) based analysis, and we propose a population-differential analysis based on an alternate "all-of-generation" (AOG) framework that is not similarly limited.


Simulation editor allows for choosing any legal combination of algorithm, domain, and representation

views can be toggled independently

a sampling of available views

all graphs and plots can be exported as image files

Monitoring coevolutionary successes and failures

Log files are auto-generated and filed, including properties, PNG images of graphs, and relevant text files


In addition to including the simulator itself, this code includes a variety of coevolutionary algorithms to try out, a variety of task domains (mostly numbers game variants), and a few representation choices for individuals in each domain. Also included are a number of particularly interesting sample runs (that can be re-run from the included configuration files.)
  • Disclaimer: This code was written 10 years ago. I have no idea if it still runs.
  • Download version 2007.11.28
  • (Requires Java 1.4+)
  • Changelog.
  • To run: cd Coevisualizer/scripts && ./