Overview
Ergalics is "the science of computational tools and of computation itself." See an expanded discussion of ergalics and a derivation of this term.
Here are listed those ergalics research projects directed in part by Rick Snodgrass. For ergalics projects directed by other faculty in the Department of Computer Science, go here.
The articulation of scientific theories and the evaluation of such theories via hypothesis testing is found in isolated sub-disciplines of computer science, including HCI, empirical software engineering, and web science. Where our department is notable, and perhaps unique, is in its application of ergalics across computer science, including those sub-disciplines concerned with specific software systems artifacts: databases, networks, multimedia systems, operating systems, and robotics.
All of the projects described below and also listed to the right share several important characteristics. They propose predictive causal models about members of an identified class of computational tool and they subject those predictive models to hypothesis testing. They thus strive to articulate fundamental properties or fundamental understanding about the behavior of those tools or of the nature of interaction with users of those tools. They all embrace empirical generalization.
These research problems cannot be answered through mathematical theorems, for we are nowhere near understanding most complex computational tools to the degree required to state and prove such theorems. These pressing problems also cannot be addressed through the building of engineering artifacts, for that activity cannot address problems about an entire class of computational tool. Rather, addressing this focal problem requires a new perspective, in addition to the mathematical and engineering perspectives: that of science. This perspective encourages the understanding of computational tools and computation though the articulation of technology-independent principles and the determination of technology-independent limitations. This yields deep insights into tool developers, tool users and the tools themselves, enabling refinements and new tools that are more closely aligned with the innate abilities and limitations of those developers and users.
Video
Rick Snodgrass gave a talk at North Carolina State University (a 62-minute video is here) in January 2013 presenting the general philosophical foundation of ergalics as well as a specific demonstration of database ergalics.
Projects
(Unless otherwise indicated, each participating person is in the Computer Science Department at the University of Arizona.)
Algorithmic Ergalics
Algorithmic ergalics adopts the scientific perspective, augmenting the mathematical perspective of asymptotic complexity, by attempting to determine a cost formula, stating the complexity of an implementation of an algorithm takes based on a number of parameters, including input size but also including type of processor, speed of main memory, and other relevant factors.
Validating Cost Models
The goal of this project is to scientifically validate the cost formula or interesting statements about the formula via experiments with actual implementation(s) and actual test data.
Automated Ergalics
This area considers how to partially automate articulation of hypothesis testing of ergalic theories, execution and replication of experiments, and data collection during such experiments.
Automated Causal Analysis
This project considers how to represent ergalic theories, how to characterize the space of possible experiments as a family of causal models, how to determine the efficacy of each experiment or collection of experiments, and how to update the current model with the results of experiments. The goal is to work towards "closing the loop" on the entire process of model testing. This work draws upon results and research in machine learning and artificial intelligence, specifically search, knowledge representation, and automated reasoning.
AZDBLab
The Arizona Database Laboratory (or AZDBLab) is a Laboratory Information Management System (LIMS). AZDBLab currently supports experiments on four DBMSes, two commercial and two open-source.
AZDBLab runs on a hardware lab of dedicated machines, one each for each subject DBMS and one to host the DBMS that stores the lab notebooks. Having dedicated hardware allows us to worry less about other processes running on the machines that could dirty the results (these machines are only for experiments), and allows us to run extensive experiments taking days or weeks. We continue to use this software and hardware lab to perform ergalic experiments on DBMSes.