• Student: Scott Merkling
  • Office: Hill 264A
  • School: Rutgers New Brunswick
  • Email:
  • Project: Algorithm Animation for Bioinformatic Algorithms

Project Description:
    Gato, an open source software system written in Python, animates graph algorithms to show their dynamic behavior. A wide range of bioinformatics algorithms - such as aligning two sequences to assess their similarity, assembling complete genomes from fragments produced by sequencing, answering questions about the origin of species by constructing phylogenetic trees - can either be phrased as graph algorithms or can operate on graphs. Developing animations for selected algorithms will introduce participants to algorithmic aspects of bioinformatics and provide deep insights into the workings of selected algorithms.

Week 1:
    This week I fixed a few small bugs that had worked their way into WebGato-- the web interface for Gato built on SVG and Javscript. I also started working on having a smoothly scaling graph that is easily manipulated by the user.

Week 2:
    I'm continuing working on the scaling this week. In particular I'm wrangling with the different coordinate systems at play in the browser that the SVG canvas creates. When different transformations are applied a new coordinate system is created, and translating between the browser coordinates and the SVG coordinates requires a string of transformations as well.

Week 3:
    This week I finished up the graph scaling, though the auto-scaling the whole thing to the browser window is still eluding me. I also implemented a time-travel(sounds cool right?) feature that lets the user drag a slider to jump to any point in the graph animation, which is great if the user wants to focus on one particular section of the animation.

Week 4:
    Todo: Conquer graph auto-scaling to browser window, send changes over to the generation file so all the graph/animation combos will have the time-travel feature