Using Machine Learning to Identify Activities

The dawn of autonomous robots brings a question of automated modeling of robot behavior such that the learned robot capabilities can be used to plan robot activities. To bridge the continuous world of sensor readings and control signals with the symbolic world of planning, one needs to identify robot activities as somehow compact behaviors that can be repeated later when a given activity is planned to be performed. In this paper we focus on identifying activities from a sequence of sensor reading and corresponding control signals by using the methods of machine learning, both supervised and unsupervised. The methods are experimentally evaluated using data from a flying drone. Introduction Autonomous systems and robots are becoming increasingly interesting for general public as well as for researchers. Flying drones are frequently discussed by media, but these are usually remotely controlled devices with limited autonomy. There are autonomous systems such as self-driving cars (Google 2016) and warehouse robots (Kiva 2016) that are carefully pre-programmed by humans to do a specific task in uncertain and dynamic environments, but these systems cannot do any other task without being re-programmed. In our research we address truly autonomous systems that can learn their capabilities themselves and based on them they can solve, in principle, any task that their hardware allows. Such systems typically require planning capabilities and to do planning, the system needs a formal model of a planning domain (Ghallab et al. 2004). Reinforcement learning (Abbeel et al. 2007) and deep learning show very promising results recently in many areas of autonomous systems but mainly in tasks that can be solved by reactive techniques rather than by deliberative techniques. To do more complex reasoning about the future, some abstract search techniques are still necessary as, for example, demonstrated by the AlphaGo system (Silver et al. 2016). Unfortunately, there is still a big gap between the continuous world of control systems for robots (reactive systems) and the symbolic world of planning and abstract reasoning based frequently on logic and probability theories (deliberative systems). Copyright c © 2017, Association for the Advancement of Artificial Intelligence (www.aaai.org). All rights reserved. To bridge the gap, it would be useful to build activity models automatically from observations of agent behavior. Then the activity model can be used for activity planning by providing abstract description of activities and also for plan execution by providing control knowledge for performing individual activities. One of the first steps to have such a system is identifying “homogenous” time periods in the behavior of agent that could be marked as activities. This paper addresses the problem of identifying primitive activities of a flying drone from sensor readings. By primitive activities we mean activities corresponding directly to commands used to control the drone, such as flying forward or flying backward. By sensor readings we mean information from an inertial measurement unit that integrates accelerometer, gyroscope, and magnetometer, but not yet more complex sensors such as a camera. As the sequence of commands is known together with sensor readings, this gives us opportunities to exploit and compare both supervised and unsupervised learning techniques. In the paper we present several such techniques with their preliminary evaluation.