Complexity Plots

In this paper, we present a novel visualization technique for assisting the observation and analysis of algorithmic complexity. In comparison with conventional line graphs, this new technique is not sensitive to the units of measurement, allowing multivariate data series of different physical qualities (e.g., time, space and energy) to be juxtaposed together conveniently and consistently. It supports multivariate visualization as well as uncertainty visualization. It enables users to focus on algorithm categorization by complexity classes, while reducing visual impact caused by constants and algorithmic components that are insignificant to complexity analysis. It provides an effective means for observing the algorithmic complexity of programs with a mixture of algorithms and black‐box software through visualization. Through two case studies, we demonstrate the effectiveness of complexity plots in complexity analysis in research, education and application.

[1]  Rami G. Melhem,et al.  Corollaries to Amdahl's Law for Energy , 2008, IEEE Computer Architecture Letters.

[2]  Sara Baase,et al.  Computer algorithms - introduction to design and analysis (2 ed.) , 1988 .

[3]  William S. Cleveland The elements of graphing data , 1980 .

[4]  W. Playfair The commercial and political atlas, representing, by means of stained copper-plate charts, the progress of the commerce, revenues, expenditure, and debts of England, during the whole of the eighteenth century , 1801 .

[5]  Dong Li,et al.  Hybrid MPI/OpenMP power-aware computing , 2010, 2010 IEEE International Symposium on Parallel & Distributed Processing (IPDPS).

[6]  Tobias Isenberg,et al.  Evaluating Sketchiness as a Visual Variable for the Depiction of Qualitative Uncertainty , 2012, IEEE Transactions on Visualization and Computer Graphics.

[7]  Heidrun Schumann,et al.  The Visualization of Uncertain Data: Methods and Problems , 2006, SimVis.

[8]  Clifford Stein,et al.  Introduction to Algorithms, 2nd edition. , 2001 .

[9]  Min Chen,et al.  Evaluating the impact of task demands and block resolution on the effectiveness of pixel-based visualization , 2010, IEEE Transactions on Visualization and Computer Graphics.

[10]  Paul Bachmann,et al.  Die Analytische Zahlentheorie , 2022 .

[11]  H. Funkhouser,et al.  A Note on a Tenth Century Graph , 1936, Osiris.

[12]  Donald E. Knuth,et al.  The art of computer programming: V.1.: Fundamental algorithms , 1997 .

[13]  Niklas Elmqvist,et al.  Graphical Perception of Multiple Time Series , 2010, IEEE Transactions on Visualization and Computer Graphics.

[14]  Min Chen,et al.  An Information-theoretic Framework for Visualization , 2010, IEEE Transactions on Visualization and Computer Graphics.

[15]  Blaine A. Price,et al.  A taxonomy of software visualization , 1992, Proceedings of the Twenty-Fifth Hawaii International Conference on System Sciences.

[16]  Martin Wattenberg,et al.  Stacked Graphs – Geometry & Aesthetics , 2008, IEEE Transactions on Visualization and Computer Graphics.

[17]  T. Saito,et al.  Two-tone pseudo coloring: compact visualization for one-dimensional data , 2005, IEEE Symposium on Information Visualization, 2005. INFOVIS 2005..

[18]  Daniel J. Denis,et al.  The early origins and development of the scatterplot. , 2005, Journal of the history of the behavioral sciences.

[19]  J.T. Stasko,et al.  Tango: a framework and system for algorithm animation , 1990, Computer.

[20]  Donald Ervin Knuth,et al.  The Art of Computer Programming , 1968 .

[21]  Robert L. Harris,et al.  Information Graphics: A Comprehensive Illustrated Reference , 1996 .

[22]  Simon Goldsmith,et al.  Measuring empirical computational complexity , 2007, ESEC-FSE '07.

[23]  Laurence Boxer,et al.  Algorithms Sequential And Parallel: A Unified Approach (Charles River Media Computer Engineering (Hardcover)) , 2005 .

[24]  San Murugesan,et al.  Harnessing Green IT: Principles and Practices , 2008, IT Professional.

[25]  Ben Shneiderman,et al.  Dynamic Query Tools for Time Series Data Sets: Timebox Widgets for Interactive Exploration , 2004, Inf. Vis..

[26]  Edward R. Tufte,et al.  The Visual Display of Quantitative Information , 1986 .

[27]  Gennady L. Andrienko,et al.  Exploratory spatio-temporal visualization: an analytical review , 2003, J. Vis. Lang. Comput..

[28]  Michael T. Goodrich,et al.  Education forum: Web Enhanced Textbooks , 1998, SIGA.

[29]  John T. Stasko Tango: A Framework and System for Algorithm Animation , 1990, Computer.

[30]  Blaine A. Price,et al.  A Principled Taxonomy of Software Visualization , 1993, J. Vis. Lang. Comput..

[31]  Chandler Stolp,et al.  The Visual Display of Quantitative Information , 1983 .

[32]  Daniel Le Métayer,et al.  ACE: an automatic complexity evaluator , 1988, TOPL.

[33]  Adam Drozdek,et al.  Data Structures and Algorithms in C++, Third Edition , 2004 .

[34]  Heidrun Schumann,et al.  Visualization of Time-Oriented Data , 2011, Human-Computer Interaction Series.

[35]  Lucy T. Nowell,et al.  ThemeRiver: Visualizing Thematic Changes in Large Document Collections , 2002, IEEE Trans. Vis. Comput. Graph..

[36]  Thomas H. Cormen,et al.  Introduction to algorithms [2nd ed.] , 2001 .

[37]  Wolfgang Aigner,et al.  Comparative Evaluation of an Interactive Time‐Series Visualization that Combines Quantitative Data with Qualitative Abstractions , 2012, Comput. Graph. Forum.

[38]  Marc Alexa,et al.  Visualizing time-series on spirals , 2001, IEEE Symposium on Information Visualization, 2001. INFOVIS 2001..