SMARTENERGY.KOM: A Dataset for Activity Recognition in Smart Home Environments

SMARTENERGY.KOM is a unique smart home dataset collected by the Multimedia Communications Lab (KOM) at TU Darmstadt. It contains about 42 million activity-related sensor readings combined with user feedback collected from two smart home deployments. Sensor readings were generated by Plugwise power sensors [1] as well as Pikkerton environmental sensors [2]. The Plugwise sensors measure the power consumption of individual appliances at home while Pikkerton sensors were configured for sensing temperature, brightness as well as motion in the environment.

SMARTENERGY.KOM contains the following eight tables:

Sensors

SensorEventHistory

UnitType

Activities

Enumerations

EnumerationValues

MacAddressSensorMapping

APIKeys.

The “Sensors table” lists all the sensors deployed in the smart home. Sensors are differentiated from each other by one unique ID. Their names are given according to their usage. For instance, each Pikkerton node consists of three sensors named as Temperature, Brightness or Motion as it is used for sensing the environmental parameters. Each Plugwise sensor has the name of the appliance to which it is connected (e.g. Radio). The location attribute indicates where the sensor is installed. Each sensor is associated with a “UnitName” to indicate the unit of returned values (e.g. Watt for Plugwise sensor).

The “SensorEventHistory table” is the core table as it stores all sensor readings continuously returned by each sensor during the deployment. Each sensor reading is characterized by a specific timestamp which represents the time at which the value was generated, a sensorID as a foreign key indicating which sensor was trigged, as well as the returned sensor value. The relationship between the tables “Sensors” and “SensorEventHistory” is of the form 1 : n as each sensor can generate many records while each record is associated with only one sensor.

Each sensor is associated with a “UnitName” which indicates the unit of returned values e.g. Watt for Plugwise sensor. The declaration of the unit of sensor values is stored in the table “UnitType” where the minimum value and maximum value are specified for bounding the range of each unit. The “DecimalFactor” is used to convert the sensor values stored in the dataset to the actual value sensed during the deployment.

The “Activities table” stores all the feedback i.e. the activities returned by the user via a smart phone during the deployment. Each feedback consists of a timestamp value indicating the beginning of each activity and the name of the activity. There are nine activities that should be recognized in each deployment.

The “Enumerations table” manages the enumerations in the dataset and is related to another table, namely “EnumerationValues” where the enumerations of “Activities” are listed in it. The EnumerationID is also a foreign key of the table “Sensors”. There is only one item included in the table of “Enumerations” with EnumerationName “Activities”.

Each sensor is associated with a MAC address stored in “MacAddressSensorMapping table”. A Mac Address is unique for a Plugwise sensor. However, as a Pikkerton node is responsible for sensing temperature, brightness and motion values, its Mac Address is shared by the three corresponding sensor IDs.

The “APIKeys table” stores API keys which are used for authorizing writing data into the database during the experiment.

The data of Deployment 1 was collected in the first apartment for about 82 days, where more than 22 million sensor readings were recorded. The data of Deployment 2 was collected in the second apartment for about 60 days where about 20 million sensor readings were recorded.

For a more comprehensive explanation about the data collection framework, the dataset and the experimental analysis performed on it, please refer to the following two papers. If you want to use this dataset in your research, it is mandatory to cite both following papers: