Going Beyond Algorithm Visualization to - PowerPoint PPT Presentation

1 / 1
About This Presentation
Title:

Going Beyond Algorithm Visualization to

Description:

Title: PowerPoint Presentation Last modified by: Stephen Edwards Document presentation format: Custom Company: Matt Cooper Other titles: Arial MS P Cooper ... – PowerPoint PPT presentation

Number of Views:28
Avg rating:3.0/5.0
Slides: 2
Provided by: vte53
Category:

less

Transcript and Presenter's Notes

Title: Going Beyond Algorithm Visualization to


1
Going Beyond Algorithm Visualization to Algorithm
Exploration Clifford A. Shaffer1, Mayank
Agarwal2, Arpit Kumar3, and Stephen H.
Edwards1 1Department of Computer Science,
Virginia Tech 2 Department of Information
Technology, Delhi College of Engineering 3Departme
nt of Computer Science, IIT Kharagpur
The Hashing Tutorial The topic of hashing has
many features that make it suitable for an
algorithm exploration. It is an intrinsically
important concept, and is widely used in
industry. It is based on a simple and compelling
idea, and yet it is sur-prisingly difficult to
implement a satisfactory hashing system since
there are many details and unexpected nuances.
There are many choices for a hash function. This
fact is fairly easy for students to grasp, even
if the reasons why a given hash function is good
or bad are not so clear to them. In contrast, the
fact that there are also many choices for a
collision resolution method does not occur to the
typical student without prompting (the typical
student will believe that linear probing is the
only mechanism for collision resolution until
told otherwise). The combination of multiple hash
functions and multiple collision resolution
methods, especially when com-pounded by the wide
range of possibilities for key distri-butions and
the subtleties involved in the space/time
tradeoffs regarding size and load factors for the
hash table, gives a lot of scope for exploration.
Finally, there are a myriad of interesting
details involved. Conclusions There are a number
of challenges involved with developing an
algorithm exploration. Perhaps the most obvious
is that an algorithm exploration is likely to be
much larger and more complex than an AV. An even
more important concern in algorithm exploration
design is keeping true to constructivist learning
principles. An effective algorithm exploration
must walk a fine line bet-ween providing enough
guidance to students on the one hand, while still
providing the opportunity for meaningful
exploration on the other. In our experience, this
is an ex-tremely difficult balance to strike even
when we con-sciously strive toward this goal. For
More Information The Hashing Tutorialhttp//www.
cs.vt.edu/shaffer/hashing/tutorial.php The
AlgoViz Wiki http//algoviz.cs.vt.edu Contact
shaffer_at_cs.vt.edu
Abstract While data structure and algorithm
visualizations (AVs) have proved valuable to the
CS education community, even the better AVs today
are limited to instruction in the mechanics of
how a given data structure or algorithm behaves.
We discuss the value of going beyond the scope of
such AVs to provide students with an opportunity
to explore the relative merits of various
alternatives. We call such artifacts algorithm
explor-ations. As an illustration of what an
algorithm exploration might look like, we
describe a hashing tutorial that we have
implemented. Algorithm Explorations A key aspect
to the pedagogical usefulness of AVs is their
ability to allow users to interact with the
material. The best AVs allow students to direct
their learning by controlling the information
stored in the data structure or processed by the
algorithm. A few even require students to
participate directly in some way, such as by
indicating where in a tree a given record will be
inserted or otherwise requiring the student to
intervene. This idea that students need to be
active participants in the learning experience
fits in with the con-structivist approach to
learning.   Algorithm explorations go beyond the
designed intent of most current AVs, which is
limited to educating students in the mechanical
aspects of the behavior of a data structure or
algorithm. We seek to allow students to explore
the per-formance characteristics and relative
merits for various design choices within some
topic, such as comparing various search trees,
hash system designs, or sorting algorithms.   Our
conception of an algorithm exploration uses
simulation to enhance AVs in ways that allow
students to investigate not only how an algorithm
or data structure works, but also how it performs
in terms of its space or time efficiency. The
subject of the exploration should have a
sufficiently rich design space such that there
are meaningful design choices to be made by the
students, where such choices will result in some
detect-able difference in quality or performance.
The goal is to in-volve students in more than
merely watching and manipu-lating data structures
and algorithms.
Write a Comment
User Comments (0)
About PowerShow.com