Web-based animation of geometric algorithms

David Dobkin, Alejo Hausner · 2001

This thesis looks at animation as a means of explaining software and algorithms, and considers human and computer factors that come into play. Understanding software is critical, because it enters so many aspects of our lives. Of course, students need to learn algorithms and programming techniques, but even experienced practitioners find that aspects of the programs they have written can exceed their understanding. For this reason, explanatory tools are sorely needed. By considering the types of uses that algorithm animation may be put to, we establish that it resembles visual arts, but, just as importantly, that there is little hope for automatic systems that can produce a useful animation based on a pseudocode description of an algorithm. Animation demands human guidance. Hence a good AA system must be interactive, and we establish a thorough list of requirements for such a system. We propose a portable web-based system. One important requirement is that algorithms and animations must run as separate processes. This separation yields many benefits, including robustness, repeatable algorithm runs, and reversible animation, although it necessitates extra effort to overcome the loss of immediacy that the audience might experience. To test this and other requirements, we implemented a Java-based system and animated many algorithms for it. The system is general, although it has features to ease animation of geometric algorithms in particular. It has been used to create successful web pages and video recordings.

Read the paper · More papers on PaperTik