Open Access
Statistical software debugging
Michael I. Jordan,Alice Xiaozhou Zheng +1 more
- 01 Jan 2005
TL;DR: This work designs a utility function whose components may be adjusted based on the suspected level of determinism of the bug and presents an iterative predicate scoring algorithm, which proves to work well on two real world programs.
read more
Abstract: Statistical debugging is a combination of statistical machine learning and software debugging. Given sampled run-time profiles from both successful and failed runs, our task is to select a small set of program predicates that can succinctly capture the failure modes, thereby leading to the locations of the bugs. Given the diverse nature of software bugs and coding structure, this is not a trivial task.
We start by assuming that there is only one bug in the program. This allows us to concentrate on the problem of non-deterministic bugs. We design a utility function whose components may be adjusted based on the suspected level of determinism of the bug. The algorithm proves to work well on two real world programs.
The problems becomes much more complicated once we do away with the single-bug assumption. The original single-bug algorithm does not perform well in the presence of multiple bugs. Our initial attempts at clustering fall short of an effective solution. After identifying the main problems in the multi-bug case, we present an iterative predicate scoring algorithm. We demonstrate the algorithm at work on five real world programs, where it successfully clusters runs and identifies important predicates that clearly point to many of the underlying bugs.
read more
Chat with Paper
AI Agents for this Paper
Find similar papers on Google Scholar, PubMed and Arxiv
Write a critical review of this paper
Analyze citations of this paper to find unaddressed research gaps
Citations
•Journal Article
Structure and chance: melding logic and probability for software debugging : Real-World Applications of Bayesian Networks
L. Burnell,E. Horvitz +1 more
TL;DR: In this paper, the authors integrate probabilistic and logical program understanding methods to generate a set of feasible execution paths and the use of Probabilistic methods to prioritize the paths for examination and to determine the likelihood of errors on each path.
57
Automating Root Cause Analysis via Machine Learning in Agile Software Testing Environments
Julen Kahles,Juha Torronen,Timo Huuhtanen,Alexander Jung +3 more
- 01 Apr 2019
TL;DR: The methodology of this paper serves as a prototype or baseline approach for the extraction of expert knowledge and its adaptation to machine learning techniques for root cause analysis in agile environments.
Path optimization in programs and its application to debugging
Akash Lal,Junghee Lim,Marina Polishchuk,Ben Liblit +3 more
- 27 Mar 2006
TL;DR: An efficient algorithm for path optimization based on weighted pushdown systems is derived and a shortest program path is found that touches these predictors, which can be used by a programmer to debug his software.
•Proceedings Article
An interior-point stochastic approximation method and an L1-regularized delta rule
Peter Carbonetto,Mark Schmidt,Nando de Freitas +2 more
- 08 Dec 2008
TL;DR: This work establishes the stability of a stochastic interior-point approximation method both analytically and empirically, and demonstrates its utility by deriving an on-line learning algorithm that also performs feature selection via L1 regularization.
•Journal Article
Path optimization in programs and its application to debugging
TL;DR: In this paper, the authors present a path optimization problem on programs and derive an efficient algorithm for path optimization based on weighted pushdown systems, which can be used by a programmer to debug his software.
20
References
•Book
The Elements of Statistical Learning
Trevor Hastie,Robert Tibshirani,Jerome H. Friedman +2 more
- 01 Jan 2001
29.4K
The Elements of Statistical Learning
TL;DR: Chapter 11 includes more case studies in other areas, ranging from manufacturing to marketing research, and a detailed comparison with other diagnostic tools, such as logistic regression and tree-based methods.
15.5K
An introduction to variable and feature selection
Isabelle Guyon,André Elisseeff +1 more
TL;DR: The contributions of this special issue cover a wide range of aspects of variable selection: providing a better definition of the objective function, feature construction, feature ranking, multivariate feature selection, efficient search methods, and feature validity assessment methods.
•Proceedings Article
On Spectral Clustering: Analysis and an algorithm
Andrew Y. Ng,Michael I. Jordan,Yair Weiss +2 more
- 03 Jan 2001
TL;DR: A simple spectral clustering algorithm that can be implemented using a few lines of Matlab is presented, and tools from matrix perturbation theory are used to analyze the algorithm, and give conditions under which it can be expected to do well.
•Book
Spectral Graph Theory
Fan Chung
- 03 Dec 1996
TL;DR: Eigenvalues and the Laplacian of a graph Isoperimetric problems Diameters and eigenvalues Paths, flows, and routing Eigen values and quasi-randomness
7.1K
Related Papers (5)
Westley Weimer
- 22 Oct 2006
Song Wang,Devin Chollak,Dana Movshovitz-Attias,Lin Tan +3 more
- 25 Aug 2016