Users can be overwhelmed by the abundance of functionality that smart ad-hoc environments offer. This thesis investigates how to assist the user in controlling such environments. We present an approach that enables the devices in an ad-hoc environment to cooperatively generate and execute an action sequence to fulfill the user's goals. Device cooperation happens spontaneously and in a completely distributed
fashion. In a quantitative user study, we show that users accept the assistance such a system provides even if it is suboptimal.