• General techniques for autonomic components. Develop practical and general techniques that we can apply across a broad range of autonomic components. This includes tailoring and extending planning, optimization, control theory, and machine-learning techniques to a systems-management context, and making them work well together.
• General techniques for autonomic systems. Develop general algorithms, interfaces, and frameworks that support cooperative and coherent interactions among multiple autonomic components that are geared toward satisfying a common system-wide objective.
• Prototypes. Build prototype autonomic computing systems to help understand the nature of the remaining gaps and determine which frameworks work best.