Abstract
Energy and other costs reduction is important in the smart homes automation area. It is cumbersome and error-prone to create proper rules for saving costs manually, thus an automatic approach is desirable that continuously checks for the possibility to save costs. We propose an approach that unifies handling of user defined rules, and searches for a possibility to move each device to a more cost-efficient state when this does not violate any rules. With every event in the environment, our approach partially rechecks only those parts of the system that are affected by the change, thus saving computational resources.