Algorithm Visualization Research Papers - Academia.edu (original) (raw)

Programming and algorithms are hard subjects to teach and learn. Especially novices seem to have problems to grasp the basic concepts of programming and algorithms. Software visualization has tried to provide help for teaching and... more

Programming and algorithms are hard subjects to teach and learn. Especially novices seem to have problems to grasp the basic concepts of programming and algorithms. Software visualization has tried to provide help for teaching and learning these subjects. The Jeliot family is a group of program and algorithm visualization tools to help novices to form the new concepts of programming and algorithms. In this thesis, a new version of Jeliot, called Jeliot 3, and its design are introduced. The new version is meant especially for novice students who are learning programming in Java language. It visualizes the data and the control flow of the programs as well as the object-oriented concepts such as constructors and objects. In the design, we have used a modular approach that connects an interpreter and a visualization engine to each other. Our design allows the utilization of two existing systems, Jeliot 2000 as a visualization engine and DynamicJava as an interpreter, to create the basis...

Visual LinProg is an educational tool that solves Linear Problems (LPs) using animation and visualization techniques. The core of the proposed software includes the well-known class of simplex type algorithms. This tool is a Web-based... more

Visual LinProg is an educational tool that solves Linear Problems (LPs) using animation and visualization techniques. The core of the proposed software includes the well-known class of simplex type algorithms. This tool is a Web-based software and hence platform independent. Visual LinProg was initially invented to be used in mathematical programming courses to supplement the teaching. The user-student can solve his own general LPs, view the solution process step-by-step and import or export his own examples in an easy way to read format. The solution process is covered scholastically through textual information and also the necessary steps from the pseudo code are depicted using multiple views. In this paper we describe Visual LinProg and how it is used in educational purposes. Finally, we present an evaluation of the proposed educational tool.

The determination of the factors influencing the effectiveness of algorithm visualization poses an interesting research question. In this paper, we present the results of a longitude empirical study regarding this question. The study was... more

The determination of the factors influencing the effectiveness of algorithm visualization poses an interesting research question. In this paper, we present the results of a longitude empirical study regarding this question. The study was based on an evaluation of the Visual LinProg educational tool inside classrooms. Visual LinProg is a web-based educational tool, which solves linear programming problems using animation and visualization techniques. Visual LinProg was developed to be used in linear programming courses to supplement the teaching. Our empirical study is based on questionnaires that include quantitative and qualitative topics. This evaluation first indicates that Visual LinProg facilitates the learning of the Revised Simplex algorithm and second presents more results on factors influencing the understanding of this algorithm by the students/users of the Visual LinProg.

We present our findings on the state of the field of algorithm visualization, based on extensive search and analysis of links to hundreds of visualizations. We seek to answer questions such as how content is distributed among topics, who... more

We present our findings on the state of the field of algorithm visualization, based on extensive search and analysis of links to hundreds of visualizations. We seek to answer questions such as how content is distributed among topics, who created algorithm visualizations and when, the overall quality of available visualizations, and how visualizations are disseminated. We have built a wiki that currently catalogs over 350 algorithm visualizations, contains the beginnings of an annotated bibliography on algorithm visualization literature, and provides information about researchers and projects. Unfortunately, we found that most existing algorithm visualizations are of low quality, and the content coverage is skewed heavily toward easier topics. There are no effective repositories or organized collections of algorithm visualizations currently available. Thus, the field appears in need of improvement in dissemination of materials, informing potential developers about what is needed, and propagating known best practices for creating new visualizations.

In this paper we present data from a case study examining the influence of employing a reciprocal peer tutoring script in an algorithm visualization environment for educational purposes. We discuss the results as occurred in the context... more

In this paper we present data from a case study examining the influence of employing a reciprocal peer tutoring script in an algorithm visualization environment for educational purposes. We discuss the results as occurred in the context of a web-based collaboration activity in the "algorithms analysis", computer science course. For this purpose we have designed and implemented AlCoLab, a web based environment, which provided the platform for our project. In the course of the activity, students interacted with the AV tool and followed the steps of a collaboration script, which led them to play roles as tutors and tutees, setting key questions and urge them to discuss critical issues on the subject of the merge sort algorithm. Based on our literature research on AV systems and CSCL, we claim, as the outcome of our case study illustrates, that an embedded instructional component, which enables student collaboration, is adequate to direct the students' interactions and dialogues on task related subjects and advance the process of algorithms' teaching. Additionally it provided useful information to improve the effectiveness of the AlCoLab tool.

Tracking speakers in multiparty conversations constitutes a fundamental task for automatic meeting analysis. In this paper, we present a novel probabilistic approach to jointly track the location and speaking activity of multiple speakers... more

Tracking speakers in multiparty conversations constitutes a fundamental task for automatic meeting analysis. In this paper, we present a novel probabilistic approach to jointly track the location and speaking activity of multiple speakers in a multisensor meeting room, equipped with a small microphone array and multiple uncalibrated cameras. Our framework is based on a mixed-state dynamic graphical model defined on a multiperson state-space, which includes the explicit definition of a proximity-based interaction model.

Taniguchi defines City Logistics as "the process of totally optimising the logistics and transport activities by private companies in urban areas while considering the traffic environment, traffic congestion and energy consumption within... more

Taniguchi defines City Logistics as "the process of totally optimising the logistics and transport activities by private companies in urban areas while considering the traffic environment, traffic congestion and energy consumption within the framework of a market economy". The distribution of goods based on road services in urban areas contribute to traffic congestion, generates environmental impacts and in some cases incurs in high logistics costs. On the other hand the various stakeholders involved in the applications may have possibly conflicting objectives. Industrial firms, shippers, freight carriers, have individually established to meet consumer demands looking to maximize the company effectiveness and as a consequence from a social point of view the resulting logistics system is inefficient from the point of view of the social costs and environmental impacts. As a consequence the design and evaluation of City Logistics applications requires an integrated framework in which all components could work together. Therefore City Logistics models must be models that, further than including the main components of City Logistics applications, as vehicle routing and fleet management models, should be able of including also the dynamic aspects of the underlying road network, namely if ICT applications are taken into account. Some of the methodological proposals made so far are based on an integration of vehicle routing models and, dynamic traffic simulation models that emulate the actual traffic conditions providing at each time interval the estimates of the current travel times, queues, etc. on each link of the road network, that is, the information that will be used by the logistic model (i.e. a fleet management system identifying in real-time the positions of each vehicle in the fleet and its operational conditions -type of load, available capacity, etc. -to determine the optimal dynamic routing and scheduling of the vehicle. This paper reports on the modeling framework developed and tested in the European Project MEROPE of the INTERREG IIIB Programme, and in the national project SADERYL, sponsored by the Spanish DGCYT. The modeling framework is supported by a Computer Decision Support System which core architecture consists of the following main components: A Data Base, to store all the data required by the implied models: locations of logistic centres and customers, capacities of warehouses and depots, transportation costs, operational costs, fleet data, etc.; a Data Base Management System, for the updating of the information stored in the data base; a Model Base, containing the family of models and algorithms to solve the related problems, discrete location, network location, street vehicle routing and scheduling, to account explicitly with the asymmetry of costs typical of urban applications etc.; a Model Base Management System, to update, modify, add or delete models from the Model Base; a Graphic User Interface, GUI, supporting the windows based dialogues to define and update data, select the model suited to the intended problem, apply the corresponding algorithm, visualize the problem and the results, etc.

Computer Science core instruction attempts to provide a detailed understanding of dynamic processes such as the working of an algorithm or the flow of information between computing entities. Such dynamic processes are not well explained... more

Computer Science core instruction attempts to provide a detailed understanding of dynamic processes such as the working of an algorithm or the flow of information between computing entities. Such dynamic processes are not well explained by static media such as text and images, and are difficult to convey in lecture. We survey the history of visualization in CS education, focusing on artifacts that have a documented positive educational assessment. We discuss how changes in computing technology have affected the development and uptake of such visualization artifacts in CS education, and how recent technology changes are leading to progress in developing online hypertextbooks.

The Man computer Interactive Data Access System (McIDAS) project began over 30 years ago at the University of Wisconsin-Madison to analyze and visualize data from the first generation of geostationary weather satellites. McIDAS continues... more

The Man computer Interactive Data Access System (McIDAS) project began over 30 years ago at the University of Wisconsin-Madison to analyze and visualize data from the first generation of geostationary weather satellites. McIDAS continues to provide a strong data analysis and visualization capability for the current environmental satellites. However, the next generation of operational remote sensing instruments under development for the NPOESS and GOES-R programs require software tools with expanded capability and performance to support innovative techniques for developing algorithms, visualizing data and products, and evaluating results. A project is underway at SSEC to develop the fifth generation of McIDAS, a java-based, open-source system for multispectral and hyperspectral researchers and algorithm developers that will provide powerful new data manipulation and visualization tools to work in this data rich environment. NASA EOS MODIS and AIRS data as well as MSG SEVERI and METOP IASI data are now being used in conjunction with in situ and gridded data to develop new analysis and product validation techniques in the McIDAS-V environment. This new data analysis and visualization system will support both researchers and operational users of the advanced measurement systems on NPOESS and GOES R.

This paper reports the results of an on-line survey conducted among computer science educators to examine eortless creation of algorithm visualizations. Based on the results, we give a proposal for measuring eortlessness in this sense.... more

This paper reports the results of an on-line survey conducted among computer science educators to examine eortless creation of algorithm visualizations. Based on the results, we give a proposal for measuring eortlessness in this sense. The aim is to enhance the understanding of the visualization tools adequate in computer science education.

Visualization technology can be used to graphically illustrate various concepts in computer science. We argue that such technology, no matter how well it is designed, is of little educational value unless it engages learners in an active... more

Visualization technology can be used to graphically illustrate various concepts in computer science. We argue that such technology, no matter how well it is designed, is of little educational value unless it engages learners in an active learning activity. Drawing on a review of experimental studies of visualization effectiveness, we motivate this position against the backdrop of current attitudes and best practices with respect to visualization use. We suggest a new taxonomy of learner engagement with visualization technology. Grounded in Bloom's wellrecognized taxonomy of understanding, we suggest metrics for assessing the learning outcomes to which such engagement may lead. Based on these taxonomies of engagement and effectiveness metrics, we present a framework for experimental studies of visualization effectiveness. Interested computer science educators are invited to collaborate with us by carrying out studies within this framework.

This paper reports on the results of a two year project in which visual algorithm simulation exercises were developed for a spatial data algorithms course. The success of the project is studied from several point of views, ie, from... more

This paper reports on the results of a two year project in which visual algorithm simulation exercises were developed for a spatial data algorithms course. The success of the project is studied from several point of views, ie, from developer's, teachers's, and student's perspective. The amount of work, learning outcomes, and feasibility of the system has been estimated based on the data gathered during the project. The results are encouraging, which motivates to extend the concept also for other courses in the future.

Algorithm visualization (AV) technology graphically illustrates how algorithms work. Despite the intuitive appeal of the technology, it has failed to catch on in mainstream computer science education. Some have attributed this failure to... more

Algorithm visualization (AV) technology graphically illustrates how algorithms work. Despite the intuitive appeal of the technology, it has failed to catch on in mainstream computer science education. Some have attributed this failure to the mixed results of experimental studies designed to substantiate AV technology's educational e¡ectiveness. However, while several integrative reviews of AV technology have appeared, none has focused speci¢cally on the software's e¡ectiveness by analyzing this body of experimental studies as a whole. In order to better understand the e¡ectiveness of AV technology, we present a systematic meta-study of 24 experimental studies.We pursue two separate analyses: an analysis of independent variables, in which we tie each study to a particular guiding learning theory in an attempt to determine which guiding theory has had the most predictive success; and an analysis of dependent variables, which enables us to determine which measurement techniques have been most sensitive to the learning bene¢ts of AV technology. Our most signi¢cant ¢nding is that how students use AV technology has a greater impact on e¡ectiveness than what AV technology shows them. Based on our ¢ndings, we formulate an agenda for future research into AV e¡ectiveness. r

This paper shows how algorithm visualization can be used to teach sliding windows protocols. In the described approach, the student creates and visually manipulates traffic between an abstract sender/receiver pair. This work contributes... more

This paper shows how algorithm visualization can be used to teach sliding windows protocols. In the described approach, the student creates and visually manipulates traffic between an abstract sender/receiver pair. This work contributes to algorithm visualization by describing a tool built specifically to teach sliding windows protocols. The Sliding Windows Visualization system can be seen at http://www.burgoyne.com/~henryd/master_project. The interaction levels available in the software are described. Finally, we make the claim that sliding windows protocols lend themselves especially to visualization and that algorithm visualization is an important "missing link" in the teaching of sliding windows protocols.

We report on the state of the field of algorithm visualization, both quantitatively and qualitatively. Computer science educators seem to find algorithm and data structure visualizations attractive for their classrooms. Educational... more

We report on the state of the field of algorithm visualization, both quantitatively and qualitatively. Computer science educators seem to find algorithm and data structure visualizations attractive for their classrooms. Educational research shows that some are effective while many are not. Clearly, then, visualizations are difficult to create and use right. There is little in the way of a supporting community, and many visualizations are downright poor. Topic distribution is heavily skewed towards simple concepts with advanced topics receiving little to no attention.

Tracking speakers in multiparty conversations constitutes a fundamental task for automatic meeting analysis. In this paper, we present a probabilistic approach to jointly track the location and speaking activity of multiple speakers in a... more

Tracking speakers in multiparty conversations constitutes a fundamental task for automatic meeting analysis. In this paper, we present a probabilistic approach to jointly track the location and speaking activity of multiple speakers in a multisensor meeting room, equipped with a small microphone array and multiple uncalibrated cameras. Our framework is based on a mixed-state dynamic graphical model defined on a multiperson state-space, which includes the explicit definition of a proximity-based interaction model. The model integrates audio-visual (AV) data through a novel observation model. Audio observations are derived from a source localization algorithm. Visual observations are based on models of the shape and spatial structure of human heads. Approximate inference in our model, needed given its complexity, is performed with a Markov Chain Monte Carlo particle filter (MCMC-PF), which results in high sampling efficiency. We present results -based on an objective evaluation procedurethat show that our framework (1) is capable of locating and tracking the position and speaking activity of multiple meeting participants engaged in real conversations with good accuracy; (2) can deal with cases of visual clutter and partial occlusion; and (3) significantly outperforms a traditional sampling-based approach.

Visualization technology can be used to graphically illustrate various concepts in computer science. We argue that such technology, no matter how well it is designed, is of little educational value unless it engages learners in an active... more

Visualization technology can be used to graphically illustrate various concepts in computer science. We argue that such technology, no matter how well it is designed, is of little educational value unless it engages learners in an active learning activity. Drawing on a review of experimental studies of visualization effectiveness, we motivate this position against the backdrop of current attitudes and best practices with respect to visualization use. We suggest a new taxonomy of learner engagement with visualization technology. Grounded in Bloom's well-recognized taxonomy of understanding, we suggest metrics for assessing the learning outcomes to which such engagement may lead. Based on these taxonomies of engagement and effectiveness metrics, we present a framework for experimental studies of visualization effectiveness. Interested computer science educators are invited to collaborate with us by carrying out studies within this framework.

This paper presents new Web-based educational software (WebNetPro) for Linear Network Programming. It includes many algorithms of Network Optimization problems, such as shortest path problems, minimum spanning tree problems, maximum flow... more

This paper presents new Web-based educational software (WebNetPro) for Linear Network Programming. It includes many algorithms of Network Optimization problems, such as shortest path problems, minimum spanning tree problems, maximum flow problems and other search algorithms. Therefore, WebNetPro can assist the teaching process of courses such as Graph Theory or Network Optimization, Algorithms or Data Structures. Since the Matlab Web server is part of the underlying infrastructure, the end user needs not use Matlab directly. Our approach exploits transparently the benefits of the Matlab Programming Environment through a straightforward Web interface. Furthermore, WebNetPro is platform independent. Thus, it can be viewed as a powerful supplement to traditional instruction techniques and can be used without significant difficulties in Distance Education. Benefits and drawbacks are thoroughly described in order to support the significance of this tool in Distance Learning.

Interactive algorithm visualizations (AVs) are powerful tools for teaching and learning concepts that are difficult to describe with static media alone. However, while countless AVs exist, their widespread adoption by the academic... more

Interactive algorithm visualizations (AVs) are powerful tools for teaching and learning concepts that are difficult to describe with static media alone. However, while countless AVs exist, their widespread adoption by the academic community has not occurred due to usability problems and mixed results of pedagogical effectiveness reported in the AV and education literature. This paper presents our experiences designing and evaluating CIspace, a set of interactive AVs for demonstrating fundamental Artificial Intelligence algorithms. In particular, we first review related work on AVs and theories of learning. Then, from this literature, we extract and compile a taxonomy of goals for designing interactive AVs that address key pedagogical and usability limitations of existing AVs. We advocate that differentiating between goals and design features that implement these goals will help designers of AVs make more informed choices, especially considering the abundance of often conflicting and inconsistent design recommendations in the AV literature. We also describe and present the results of a range of evaluations that we have conducted on CIspace that include semi-formal usability studies, usability surveys from actual students using CIspace as a course resource, and formal user studies designed to assess the pedagogical effectiveness of CIspace in terms of both knowledge gain and user preference. Our main results show that (i) studying with our interactive AVs is at least as effective at increasing student knowledge as studying with carefully designed paper-based materials; (ii) students like using our interactive AVs more than studying with the paper-based materials; (iii) students use both our interactive AVs and paper-based materials in practice although they are divided when forced to choose between them; (iv) students find our interactive AVs generally easy to use and useful. From these results, we conclude that while interactive AVs may not be universally preferred by students, it is beneficial to offer a variety of learning media to students to accommodate individual learning preferences. We hope that our experiences will be informative for other developers of interactive AVs, and encourage educators to exploit these potentially powerful resources in classrooms and other learning environments.

Visualization technology can be used to graphically illustrate various concepts in computer science. We argue that such technology, no matter how well it is designed, is of little educational value unless it engages learners in an active... more

Visualization technology can be used to graphically illustrate various concepts in computer science. We argue that such technology, no matter how well it is designed, is of little educational value unless it engages learners in an active learning activity. Drawing on a review of experimental studies of visualization effectiveness, we motivate this position against the backdrop of current attitudes and best practices with respect to visualization use. We suggest a new taxonomy of learner engagement with visualization technology. Grounded in Bloom's wellrecognized taxonomy of understanding, we suggest metrics for assessing the learning outcomes to which such engagement may lead. Based on these taxonomies of engagement and effectiveness metrics, we present a framework for experimental studies of visualization effectiveness. Interested computer science educators are invited to collaborate with us by carrying out studies within this framework.

Visualization technology can be used to graphically illustrate various concepts in computer science. We argue that such technology, no matter how well it is designed, is of little educational value unless it engages learners in an active... more

Visualization technology can be used to graphically illustrate various concepts in computer science. We argue that such technology, no matter how well it is designed, is of little educational value unless it engages learners in an active learning activity. Drawing on a review of experimental studies of visualization effectiveness, we motivate this position against the backdrop of current attitudes and best practices with respect to visualization use. We suggest a new taxonomy of learner engagement with visualization technology. Grounded in Bloom's well-recognized taxonomy of understanding, we suggest metrics for assessing the learning outcomes to which such engagement may lead. Based on these taxonomies of engagement and effectiveness metrics, we present a framework for experimental studies of visualization effectiveness. Interested computer science educators are invited to collaborate with us by carrying out studies within this framework.

Visualization technology can be used to graphically illustrate various concepts in computer science. We argue that such technology, no matter how well it is designed, is of little educational value unless it engages learners in an active... more

Visualization technology can be used to graphically illustrate various concepts in computer science. We argue that such technology, no matter how well it is designed, is of little educational value unless it engages learners in an active learning activity. Drawing on a review of experimental studies of visualization effectiveness, we motivate this position against the backdrop of current attitudes and best practices with respect to visualization use. We suggest a new taxonomy of learner engagement with visualization technology. Grounded in Bloom's well-recognized taxonomy of understanding, we suggest metrics for assessing the learning outcomes to which such engagement may lead. Based on these taxonomies of engagement and effectiveness metrics, we present a framework for experimental studies of visualization effectiveness. Interested computer science educators are invited to collaborate with us by carrying out studies within this framework.

In computer graphics education, many concepts are hard to teach using traditional classroom tools. Therefor we are building a system that will be used in our second year computer graphics course to aid the lecturer in explaining the... more

In computer graphics education, many concepts are hard to teach using traditional classroom tools. Therefor we are building a system that will be used in our second year computer graphics course to aid the lecturer in explaining the working of a number of fundamental algorithms. This paper describes how VRML and Java are used to create applets with interactive 3D models to visualize these algorithms. Our system structure is described, as well as an elaborate example.

Although people rely heavily on visual cues during problem solving, it is non-trivial to in- tegrate them into machine learning. This paper reports on three general methods that smoothly and naturally incorporate visual cues into a... more

Although people rely heavily on visual cues during problem solving, it is non-trivial to in- tegrate them into machine learning. This paper reports on three general methods that smoothly and naturally incorporate visual cues into a hierarchical decision algorithm for game playing: two that interpret predrawn straight lines on the board, and a third that uses an associative, hierarchical pattern

This paper introduces the theory of algorithm visualization and its education-related results obtained so far, then an algorithm visualization tool is going to be presented as an example, which we will finally evaluate. This article... more

This paper introduces the theory of algorithm visualization and its education-related results
obtained so far, then an algorithm visualization tool is going to be presented as an example, which we
will finally evaluate. This article illustrates furthermore how algorithm visualization tools can be used
by teachers and students during the teaching and learning process of programming, and equally
evaluates teaching and learning methods. Two tools will be introduced: Jeliot and TRAKLA2

Visualization technology can be used to graphically illustrate various concepts in computer science. We argue that such technology, no matter how well it is designed, is of little educational value unless it engages learners in an active... more

Visualization technology can be used to graphically illustrate various concepts in computer science. We argue that such technology, no matter how well it is designed, is of little educational value unless it engages learners in an active learning activity. Drawing on a review of experimental studies of visualization effectiveness, we motivate this position against the backdrop of current attitudes and best practices with respect to visualization use. We suggest a new taxonomy of learner engagement with visualization technology. Grounded in Bloom's wellrecognized taxonomy of understanding, we suggest metrics for assessing the learning outcomes to which such engagement may lead. Based on these taxonomies of engagement and effectiveness metrics, we present a framework for experimental studies of visualization effectiveness. Interested computer science educators are invited to collaborate with us by carrying out studies within this framework.

Visualization technology can be used to graphically illustrate various concepts in computer science. We argue that such technology, no matter how well it is designed, is of little educational value unless it engages learners in an active... more

Visualization technology can be used to graphically illustrate various concepts in computer science. We argue that such technology, no matter how well it is designed, is of little educational value unless it engages learners in an active learning activity. Drawing on a review of experimental studies of visualization effectiveness, we motivate this position against the backdrop of current attitudes and best practices with respect to visualization use. We suggest a new taxonomy of learner engagement with visualization technology. Grounded in Bloom's wellrecognized taxonomy of understanding, we suggest metrics for assessing the learning outcomes to which such engagement may lead. Based on these taxonomies of engagement and effectiveness metrics, we present a framework for experimental studies of visualization effectiveness. Interested computer science educators are invited to collaborate with us by carrying out studies within this framework.

The Minimum Cost Network Flow Problem (MCNFP) constitutes perhaps the most important of the research area of Network Optimization. Recently a new category of algorithms for the MCNFP have been developed. These algorithms belong to a... more

The Minimum Cost Network Flow Problem (MCNFP) constitutes perhaps the most important of the research area of Network Optimization. Recently a new category of algorithms for the MCNFP have been developed. These algorithms belong to a special " exterior type " simplex category and they feature significant tree modifications. This paper presents a new didactic tool for the teaching of this type of algorithms. The proposed educational software can be used in courses like "Graph Theory" or "Combinatorial Optimization". This tool has been implemented using the Java Programming language and it is platform independent. It constitutes a friendly application, for the instructor, as also for the novice student. Furthermore, its use is analytically shown through an illustrative example. Benefits and drawbacks are thoroughly described in order to support the significance of this visualization tool in computer-aided education and also possible future work is discussed.

Let T be a rooted and weighted tree, where the weight of any node is equal to the sum of the weights of its children. The popular Treemap algorithm visualizes such a tree as a hierarchical partition of a square into rectangles, where the... more

Let T be a rooted and weighted tree, where the weight of any node is equal to the sum of the weights of its children. The popular Treemap algorithm visualizes such a tree as a hierarchical partition of a square into rectangles, where the area of the rectangle corresponding to any node in T is equal to the weight of that node. The aspect ratio of the rectangles in such a rectangular partition necessarily depends on the weights and can become arbitrarily high. We introduce a new hierarchical partition scheme, called a polygonal partition, which uses convex polygons rather than just rectangles. We present two methods for constructing polygonal partitions, both having guarantees on the worst-case aspect ratio of the constructed polygons; in particular, both methods guarantee a bound on the aspect ratio that is independent of the weights of the nodes. We also consider rectangular partitions with slack, where the areas of the rectangles may differ slightly from the weights of the corresponding nodes. We show that this makes it possible to obtain partitions with constant aspect ratio. This result generalizes to hyper-rectangular partitions in R d. We use these partitions with slack for embedding ultrametrics into d-dimensional Euclidean space: we give a polylog(∆)-approximation algorithm for embedding n-point ultrametrics into R d with minimum distortion, where ∆ denotes the spread of the metric, i.e., the ratio between the largest and the smallest distance between two points. The previously bestknown approximation ratio for this problem was polynomial in n. This is the first algorithm for embedding a non-trivial family of weighted-graph metrics into a space of constant dimension that achieves polylogarithmic approximation ratio.

Software visualization and algorithm animation are topics of growing interest in computer science education. We propose a new interface to support the interaction between learners and the dynamic data structure of standard algorithms.... more

Software visualization and algorithm animation are topics of growing interest in computer science education. We propose a new interface to support the interaction between learners and the dynamic data structure of standard algorithms. Based on their source code users generate and configure so-called concept keyboards to explore the data structures and to execute the methods of the algorithms. This access

Advances in computer graphics hardware and algorithms, visualization, and interactive techniques for analysis offer the components for a highly integrated, eficient real-time 3D Geographic Information System. We have developed “Virtual... more

Advances in computer graphics hardware and algorithms, visualization, and interactive techniques for analysis offer the components for a highly integrated, eficient real-time 3D Geographic Information System. We have developed “Virtual GIS,” a system with truly immersive capability for navigating and understanding complex and dynamic terrain-based databases. The system provides the means for visualizing terrain models consisting of elevation and imagery data, along with GIS raster layers, protruding features, buildings, vehicles, and other objects. We have implemented window-based and virtual reality versions and in both cases provide a direct manipulation, visual interface for accessing the GIS data. Unique terrain data structures and algorithms allow rendering of large, high resolution datasets at interactive rates.

We present findings regarding the state of the field of Algorithm Visualization (AV) based on our analysis of a collection of over 500 AVs. We examine how AVs are distributed among topics, who created them and when, their overall quality,... more

We present findings regarding the state of the field of Algorithm Visualization (AV) based on our analysis of a collection of over 500 AVs. We examine how AVs are distributed among topics, who created them and when, their overall quality, and how they are disseminated. There does exist a cadre of good AVs and active developers. Unfortunately, we found that many AVs are of low quality, and coverage is skewed toward a few easier topics. This can make it hard for instructors to locate what they need. There are no effective repositories of AVs currently available, which puts many AVs at risk for being lost to the community over time. Thus, the field appears in need of improvement in disseminating materials, propagating known best practices, and informing developers about topic coverage. These concerns could be mitigated by building community and improving communication among AV users and developers.

This article reviews successful educational experiences in using program and algorithm visualizations (PAVs). First, we survey a total of 18 PAV systems that were subject to 33 evaluations. We found that half of the systems have only been... more

This article reviews successful educational experiences in using program and algorithm visualizations (PAVs). First, we survey a total of 18 PAV systems that were subject to 33 evaluations. We found that half of the systems have only been tested for usability, and those were shallow inspections. The rest were evaluated with respect to their educational effectiveness. Script-based systems seem to be well suited for the viewing, responding, and changing engagement levels, while compiler-based systems do well for the construction and presenting engagement levels. Finally, we analyze additional PAV features of successful evaluations and hypothesize that they are relevant.

The determination of the factors influencing the effectiveness of algorithm visualization poses an interesting research question. In this paper, we present the results of a longitude empirical study regarding this question. The study was... more

The determination of the factors influencing the effectiveness of algorithm visualization poses an interesting research question. In this paper, we present the results of a longitude empirical study regarding this question. The study was based on an evaluation of the Visual LinProg educational tool inside classrooms. Visual LinProg is a web-based educational tool, which solves linear programming problems using animation and visualization techniques. Visual LinProg was developed to be used in linear programming courses to supplement the teaching. Our empirical study is based on questionnaires that include quantitative and qualitative topics. This evaluation first indicates that Visual LinProg facilitates the learning of the Revised Simplex algorithm and second presents more results on factors influencing the understanding of this algorithm by the students/users of the Visual LinProg.

Vision-based robotic applications exhibit increased computational complexity. This problem becomes even more important regarding mission critical application domains. The SPARTAN project focuses in the tight and optimal implementation of... more

Vision-based robotic applications exhibit increased computational complexity. This problem becomes even more important regarding mission critical application domains. The SPARTAN project focuses in the tight and optimal implementation of computer vision algorithms targeting to rover navigation for space applications. For evaluation purposes, these algorithms will be implemented with a co-design methodology onto a Virtex-6 FPGA device.

An effective approach to program understanding involves browsing, exploring, and creating views that document software structures at different levels of abstraction. While exploring the myriad of relationships in a multi-million line... more

An effective approach to program understanding involves browsing, exploring, and creating views that document software structures at different levels of abstraction. While exploring the myriad of relationships in a multi-million line legacy system, one can easily loose context. One approach to alleviate this problem is to visualize these structures using jsheye techniques.

The idea of using visualization technology to enhance the understanding of abstract concepts, like data structures and algorithms, has become widely accepted. Several attempts have been made to introduce a system that levels out the... more

The idea of using visualization technology to enhance the understanding of abstract concepts, like data structures and algorithms, has become widely accepted. Several attempts have been made to introduce a system that levels out the burden of creating new visualizations. However, one of the main obstacles to fully taking advantage of algorithm visualization seems to be the time and effort required to design, integrate and maintain the visualizations.

The workshops have been organized in cooperation with ACM SIGCSE and in conjunction with the ITiCSE conference, to further promote participation in both conferences. The aim of this workshop is to bring together researchers who design and... more

The workshops have been organized in cooperation with ACM SIGCSE and in conjunction with the ITiCSE conference, to further promote participation in both conferences. The aim of this workshop is to bring together researchers who design and construct visualizations or animations, as well as visualization or animation systems, for computer science, especially-but not exclusively-for programs, data structures, and algorithms. Above all, the workshop attracts educators who create, use, or evaluate visualizations and animations in their teaching. Due to the limited number of participants and the fact that most participants are working actively in the field of software visualization, the workshop is a great opportunity to exchange ideas and experiences, as well as announce novel systems. The workshop in 2008 contained 18 papers coming from a total of 33 authors. The author list includes both "veterans" and "newcomers", illustrating that the field is still alive and kicking. This copy of the proceedings contains a copy of the papers submitted before the workshop, and therefore includes changes recommended by the program committee during the review phase. Each submission was reviewed by at least two program committee members. I want to thank the program committee members for their critical and encouraging comments on this year's submissions. The program committee consisted of: • Guido Rößling (chair)

Traditional interactive TV systems depend on expensive hardware, proprietary formats, and a closed-loop end-to-end approach, which greatly limits scalability and extensibility of TV services. In this paper, we present the HDControl... more

Traditional interactive TV systems depend on expensive hardware, proprietary formats, and a closed-loop end-to-end approach, which greatly limits scalability and extensibility of TV services. In this paper, we present the HDControl interactive Internet TV architecture that achieves an open service model and combines high-quality video with flexible user control using two key software real-time algorithms: visual information embedding (VIE) algorithm and resynchronization algorithm. Experimental results in our HDTV testbed have ...

Vision-based robotic applications exhibit increased computational complexity. This problem becomes even more important regarding mission critical application domains. The SPARTAN project focuses in the tight and optimal implementation of... more

Vision-based robotic applications exhibit increased computational complexity. This problem becomes even more important regarding mission critical application domains. The SPARTAN project focuses in the tight and optimal implementation of computer vision algorithms targeting to rover navigation for space applications. For evaluation purposes, these algorithms will be implemented with a co-design methodology onto a Virtex-6 FPGA device.

Algorithm visualization in teaching practice

As a report of a working group at ITiCSE 2005, this paper represents a vision of the use of XML specifications and tools in algorithm visualization, particularly with regard to supporting user interaction. A detailed description is given... more

As a report of a working group at ITiCSE 2005, this paper represents a vision of the use of XML specifications and tools in algorithm visualization, particularly with regard to supporting user interaction. A detailed description is given of how an interesting event to be visualized is decomposed, combined with interactive questions, narratives, control flow code and metadata, and finally rendered into graphical primitive and transformation specifications. The heart of the paper is our discussion of XML specifications for content generation (the object being visualized), interactive questions, and graphical primitives and transformations, with briefer discussions of narratives and metadata. Examples are provided for each in an appendix, with fuller details to be published on an associated website that we hope will become a source of future standards in this area. In conclusion, the approach of the working group is discussed, and important remaining challenges are identified.