Intelligent Environments and AI Planning

My research is oriented towards the vision of a future in which environments support the people occupying them while maintaining some overall objective at the same time. These environments should be unobtrusive, interconnected, adaptable, dynamic, embedded, and intelligent. They need to be sensitive to the needs of their occupants, and capable of anticipating their needs and behaviour. However, there could be an overall goal that should be accomplished, such as being the environment energy efficient as much as possible.

This vision has potential applications in many real-life scenarios, including home, buildings (offices), entertainment, safety systems, etc. A smart home/smart building/intelligent building is an environment usually equipped with three sorts of components: a set of sensors, a set of actuators for controlling the sensors and other equipment, and computing facilities to which the sensors and actuators are connected. Many services can be envisioned, among which are: performing many everyday tasks automatically (e.g., by controlling household appliances), improving economy of usage of utilities, such as electricity (e.g., by controlling the lights and windows), improving safety and security (e.g., by recognising and reacting upon accidents), improving the quality of life (e.g., by expressing preferences and increasing comfort levels), etc.

To support services in such an environment, diverse technologies are needed among which sensors networks and computing facilities are main. To that end, beside the work on sensors and devices, the usage of AI techniques could help evolve these environments by bringing a degree of sophistication to the processing of information provided by the devices and sensors. The processing refers to the achievement of some goal (or performing a task), and the selection and combination of tasks at run-time. In this way, the goal achievement can result in different solutions depending on the current state of the devices. For example, to satisfy the occupant’s preferences and guarantee the comfort and safety, the environment needs to exhibit quite complex functionalities and not just triggering some single rule or a predesigned sequence of fixed rules. Moreover, designing rigid solutions that are tailored to a specific environment and occupant needs is not an efficient approach, given the considerable effort that is required to adapt them for new customers. Obviously, predicting all possible solution is hardly viable approach too, given the different occupant preferences and environment settings, and the life-cycle of a specific environment: devices evolve over time with new functionalities constantly appearing or disappearing, the state of the devices constantly changes, occupants move around, and thus the number of possible contextual states can be very high.

It seems that intelligent buildings form an environment that is particularly suitable for the application of AI planning techniques. The environment is well-structured, well-defined and controllable, thus making the added value gained by non-trivial automated composition and monitoring of operations a feasible and realistic task. Given such setting, the system can perform powerful reasoning for complex tasks which considerably advance the level of environment intelligence.

In fact, there are several ways that plans and planning can be used in these environments. Planning can be used to coordinate the capabilities of the available resources to provide a solution or perform a task. Plans can be used, for example, to provide task guidance and reminders to occupants, to allow intelligent systems to share task execution with occupants, or to identify some impasse situations. In addition, the idea of applying AI planning techniques in home and building environments is quite new. The state of the art in home and building automation shows sparse research works in which an AI planning technique is used.

In my opinion, there are a few research directions that should be considered in the scope of planning in intelligent environments. Firstly, planning and execution should be combined since the environment is dynamic and prone to operation call failures. Secondly, temporal planning should play an important role in these environments. To that end, plans need to be more flexible and not just a sequence of actions, but actions must occur at some absolute time. Occupants usually express preferences in time manner, too.

My interest is in Hierarchical Task Network (HTN) planning technique due to its hierarchical representational nature and its potential to scale well in large domains. We could easily encode a method that will, let say, set a meeting room for a presentation since we know the steps for it in advance. Regarding scalability, we should expect buildings that are equipped with a large number of devices. For example, a building like ours easily has 1000 sensors and actuators on a surface of about 10000 square meters.

HTN planning is a well-known and widely used AI planning technique. HTN planners are provided with a set of goal tasks that have to be repeatedly decomposed until primitive tasks are reached. Such task decomposition is based on the methods contained in the domain knowledge. Well-written methods can significantly reduce search space and help planner to find an efficiently executable plan. The main advantage of using HTN technique is the way of writing the methods which can be seen as recipes that fit well with human being thinking