Vahe V. Poladyan

Tailoring Configuration to User’s Tasks under Uncertainty Degree Type: Ph.D. in Computer Science
Advisor(s): Mary Shaw, David Garlan
Graduated: May 2008

Abstract:

The expansion of computing infrastructure has opened the possibility of a world in which users can compute everywhere. Despite such advances, computing resources are often scarce and changing, limiting a user’s ability to take advantage of the applications and devices, and requiring changes to the application runtime settings.

Currently, the burden of managing the computing environment (devices, applications, and re- sources) falls on the user. A user must manually start applications and adjust their settings ac- cording to the available resources. Assigning such chores of configuration to the user has a number of disadvantages. First, it consumes user’s precious cognitive resources. Second, effectively managing the environment requires skills that a typical user might not have. Third, even with adequate low-level expertise, managing the environment optimally (or even adequately) can be difficult.

Ideally, the computing needs of a user are seamlessly matched with the capabilities of the environment: devices, applications, and available resources. The user should enjoy the best possible application quality, without worrying about managing the low-level computing mechanisms.

In this dissertation, we describe a novel approach that substantially automates the control of the configuration of the environment for a user’s task: finding and starting applications, configuring their runtime settings, and allocating possibly limited resources. Our approach simultaneously satisfies two important requirements: utility and practicality. Utility ensures that configuration decisions take into account user’s preferences for specific applications and quality of service. Practicality ensures that configuration has low runtime overhead in terms of the latency of con- figuration decisions and its usage of resources.>

First, we model configuration analytically as a problem of optimizing user’s utility based on three inputs: (1) user’s preferences, (2) application capability, and (3) resource availability. Formally, automating the control of the configuration requires solving an optimization problem, and then using the optimization solution to control the environment.

Next, we design a software infrastructure that is based on the analytical model. The infrastructure implements efficient algorithms to solve the problem of configuration, eliminating the need for manual configuration. We validate our approach using experiments and simulation, demonstrating that the infrastructure satisfies the requirements of utility and practicality while substantially automating configuration.

Thesis Committee:
David Garlan (Co-Chair)
Mary Shaw (Co-Chair)
Mahadev Satyanarayanan
Ashish Arora (Heinz School of Public Policy, Carnegie Mellon)

Peter Lee, Head, Computer Science Department
Randy Bryant, Dean, School of Computer Science

CMU-CS-08-121.pdf (1.05 MB) ( 184 pages)
Copyright Notice