An Interactive Graph Editor

This project aims to develop an interactive editor allowing users to easily construct hierarchical, ported, labelled graphs such as the examples shown above. The novel aspect is that we want to integrate automatic graph layout optimization into the user interface in real time - for instance, when you pick up a node, drag and drop it somewhere else, the rest of the graph should automatically rearrange itself so as to re-optimize the layout. This should happen immediately, in an ongoing process that creates a feeling of physical interaction with the graph (think balls and springs).

To be considered for this project you should have very good software engineering skills, and enjoy designing and programming sophisticated user interfaces.

06/05 - N. Schraudolph