A Microeconomic Approach to Optimal Resource Allocation in Distributed Computer Systems
IEEE Transactions on Computers
Fault Injection for Dependability Validation: A Methodology and Some Applications
IEEE Transactions on Software Engineering
Genetic programming: on the programming of computers by means of natural selection
Genetic programming: on the programming of computers by means of natural selection
QualProbes: middleware QoS profiling services for configuring adaptive applications
IFIP/ACM International Conference on Distributed systems platforms
Finding failures by cluster analysis of execution profiles
ICSE '01 Proceedings of the 23rd International Conference on Software Engineering
The Vision of Autonomic Computing
Computer
SOSP '03 Proceedings of the nineteenth ACM symposium on Operating systems principles
The utility business model and the future of computing services
IBM Systems Journal
Balancing Risk and Reward in a Market-Based Task Service
HPDC '04 Proceedings of the 13th IEEE International Symposium on High Performance Distributed Computing
Great expectations: part II: Generalized expected utility as a universal decision rule
Artificial Intelligence
Supporting autonomic computing functionality via dynamic operating system kernel aspects
Proceedings of the 4th international conference on Aspect-oriented software development
Utility Functions in Autonomic Systems
ICAC '04 Proceedings of the First International Conference on Autonomic Computing
Quickly Finding Known Software Problems via Automated Symptom Matching
ICAC '05 Proceedings of the Second International Conference on Automatic Computing
Dynamic Black-Box Performance Model Estimation for Self-Tuning Regulators
ICAC '05 Proceedings of the Second International Conference on Automatic Computing
Architecture-based self-adaptation in the presence of multiple objectives
Proceedings of the 2006 international workshop on Self-adaptation and self-managing systems
Utility-based collaboration among autonomous agents for resource allocation in data centers
AAMAS '06 Proceedings of the fifth international joint conference on Autonomous agents and multiagent systems
A health-check model for autonomic systems based on a pulse monitor
The Knowledge Engineering Review
Problem diagnosis in large-scale computing environments
Proceedings of the 2006 ACM/IEEE conference on Supercomputing
MapReduce: simplified data processing on large clusters
OSDI'04 Proceedings of the 6th conference on Symposium on Opearting Systems Design & Implementation - Volume 6
Reinforcement Learning in Autonomic Computing: A Manifesto and Case Studies
IEEE Internet Computing
Achieving Self-Management via Utility Functions
IEEE Internet Computing
Task Dependency of User Perceived Utility in Autonomic VoIP Systems
ICAS '08 Proceedings of the Fourth International Conference on Autonomic and Autonomous Systems
Change Support in Adaptive Software: A Case Study for Fine-Grained Adaptation
EASE '09 Proceedings of the 2009 Sixth IEEE Conference and Workshops on Engineering of Autonomic and Autonomous Systems
Taming Dynamically Adaptive Systems using models and aspects
ICSE '09 Proceedings of the 31st International Conference on Software Engineering
MapReduce Programming Model for .NET-Based Cloud Computing
Euro-Par '09 Proceedings of the 15th International Euro-Par Conference on Parallel Processing
New approaches to optimization and utility elicitation in autonomic computing
AAAI'05 Proceedings of the 20th national conference on Artificial intelligence - Volume 1
Cooperative negotiation in autonomic systems using incremental utility elicitation
UAI'03 Proceedings of the Nineteenth conference on Uncertainty in Artificial Intelligence
Hi-index | 0.00 |
We present an approach to self-assessment for Autonomic Computing, based on the synthesis of utility functions, at the level of an autonomic application, or even a single task or feature performed by that application. This paper describes the fundamental steps of our approach: instrumentation of the application; collection of exhaustive samples of runtime data about relevant quality attributes of the application, as well as characteristics of its runtime environment; synthesis of a utility function through statistical correlation over the collected data points; and embedding of code corresponding to the equation of the synthesized utility function within the application, which enables the computation of utility values at run time. We describe a number of case studies, with their results and implications, to motivate and discuss the significance of application-level utility, illustrate our statistical synthesis method, and present our framework for instrumentation, monitoring, and utility function embedding/evaluation.