Reviewed by
Frédéric Amblard
Institut de Recherche en Informatique de Toulouse
Université des Sciences Sociales de Toulouse
As mentioned by the editor of this special issue, while doing in silico experiments, visualization of simulation dynamics is a crucial point. It mainly corresponds to the questions about which variables you will follow during the simulation and how you will represent them (or most of them) on screen. Unfortunately, such a work on visualization is not particularly valued and is often considered as virtual laboratory dishes that have little to do with the core of the research. This point has to be moderated when it comes to the field of virtual reality where visualization is a central problematic of the research field. But as the aim is more to have a representation that could be taken for real rather than a representation that could give insights on what happens within the simulation, it is not the scope of any of the papers presented here.
This was the situation when Seth Bullock, Tom Smith and Jon Bird decided to organize the workshop "Beyond Fitness: Visualizing Evolution" that took place in 2002 at the 8th Conference on Artificial Life. Hereafter Mark Bedau proposed them to publish selected articles from the workshop in a special issue of Artificial Life and four years later we, as readers, obtain this really vivid issue.
What could be objected to the pertinence of these articles in the JASSS book reviews section is that the visualization works exposed in this issue mainly concern evolutionary systems, as it is emerging from the artificial life community. The consequence is that several papers deal with the visualizing of the evolution of genetic algorithms. As synthesized by Edmund Chattoe (1998), evolutionary algorithms in social simulation are not of much use to understand the social processes beyond, mainly due to difficulties to interpret coherently the evolutionary hypotheses taken in the context of the social phenomenon studied. Anyway, the works presented that deal explicitly with genetic algorithms could be easily adapted for the visualization of any model that concerns the evolution of an heterogeneous population of agents, no matter which rule makes the sub-groups evolve. Afterwards, presenting briefly each paper, I will come back on the possible use of the presented techniques in the case of agent-based simulation.
After a brief introductory article presenting the state of the art in visualization of complex adaptive systems and the stakes of this issue, the first article presents an activity plot visualization for evolutionary algorithms. The idea is to visualize in the clearest way the genotypes that are present in the simulation over time. It enables to see clearly, on a given example, that some genotypes tend to generalize to the whole population and are suddenly replaced by another more effective genotype. Associated with the average fitness among the population, it shows clearly some periods where the fitness evolves abruptly because the algorithm found a new and more efficient solution and some other periods where the system seems to stabilize on the last solution found. Such a visualization could be applied, I think, to any model where the population is categorized and where the categorization evolves over time depending on the model dynamics.
The second paper deals with evolutionary problems where different strategies can be compared by pair, for instance in a tournament. The visualization proposed (CIAO Current Individual against Ancestral Opponents plots) enables to see the evolution of the strategy as well as its efficiency compared to older strategies. We can for instance see older solutions that are abandoned due to an apparent improvement but that defeat many strategies found hereafter, with different environmental conditions.
The third and fourth papers present the problem of representing in two dimensions the evolution of a system characterized by many variables using on the one hand multidimensional scaling techniques and on the other hand, recursively representing the results on a 2D hypergraph, instead of trying to represent a projection of the results on two dimensions. Basically a square can represent the variations over two dimensions. If you only have two values to test per dimension, you can position inside your original square four other squares to explore two other dimensions and so on. We used this technique to represent the exploration of the parameter space with seven values for four dimensions, and it is very efficient (Mailliard et al. 2005).
Concerning the fifth article, by Hartmut Pohlheim, more than the visualization technique exposed, I found very interesting the presentation of how different mean of visualization could be articulated. Starting with an optimization problem he wants to solve with evolutionary algorithms, he uses different visualizations that are adapted to the considered step along the exploration process. More than an original technique, it presents well the necessity and the reasons why to change the point of view (i.e. the chosen representation).
The next one focuses on a model of language evolution. Combining a graph topology for the meaning and a positioning in a two-dimensional space for the signal, the chosen visualization for this model dynamics represents a coloured Kohonen map in a two dimensional space. Even if effective, such a solution suffers from the difficulty to visualize important graphs. This problem is partially solved by the applicability in their case of a regular Kohonen map and by coloration of the graph. It could be used to visualise models where modellers are interested in the coevolution of individual variables over a graph. But I guess that in most cases modellers will face the problem of visualizing the big graphs mentioned.
The sixth article deals with the visualization of the speciation of a fish population. They used a phylogenetic tree rendering in order to see the different species evolving over time from the same original specie. This rendering is somewhat equivalent to the visualization of genotypes in the population described in the first article but it seems less efficient and more ad hoc.
The seventh article belongs to this class of articles where, while reading, you would want to have had this idea first. Indeed it presents a really inspiring issue, i.e. the one of auditory display. Basically it explains that to render complex dynamics, of a simulation for instance, you can count on 3-4 dimensions that can be rendered without projection by graphical display (2 dimensions for your screen, one for the colour and one for the evolution of your image). The authors proposed then to represent much more dimensions using auditory display, for instance the volume, timber, frequency and so on. This seems to be a truly great idea, even if it is difficult to give an overview in a printed article. They also mention that the user, indeed the one who makes such in silico experimentations, needs some time for training in order to manipulate correctly such a display and to be efficient in hearing the collective dynamics that take place. Moreover they mention a list of resources available for that, notably the Jsyn library written in Java.
The last paper of this special issue is dedicated to a graph-based visualization of the genealogy of an evolutionary dynamics, each node being linked to his ancestors. Such a method is difficult also when facing big population due, again, to the problem of big graphs visualization. But it is possible to add some information to nodes, for instance by making vary the diameter of the node depending on the number of its descendant.
To conclude, this special issue gives an interesting set of methods to visualize complex systems dynamics. Most of them are not very suited to social simulation as they are dedicated to evolutionary models and their scope is more to visualize the evolution of a gene population. Some articles, like the one on auditory display, are even really inspiring, and I wish we could have an equivalent issue of JASSS dealing with such problems of visualization.