As cloud computing environments become explosively popular, dealing with unpredictable changes, uncertainties, and disturbances in both systems and environments turns out to be on...
Consider a multithreaded parallel application running inside a multicore virtual machine context that is itself hosted on a multi-socket multicore physical machine. How should the...
Linearizability is a key design methodology for reasoning about tations of concurrent abstract data types in both shared memory and message passing systems. It provides the illusi...
It is becoming increasingly important to be able to adapt an application’s behavior at run time in response to changing requirements and environmental conditions. Adaptive progr...
The field of mobile robotics offers a new medium for public entertainment and art. Mobile robots can move, react, and interact in the real world, generating behaviors that can be u...