Tuesday, 21 December 2010

End of term supervisor meeting

Recently I've been:
  • Building up a general knowledge of domestic appliances' power and energy characteristics
  • Getting used to using matlab to manipulate and display data
  • Plotting data from Gopal and Enrico's houses to understand trends in real data
  • Reading the Bishop machine learning text book. I'm currently reading the probability chapter
Over the holiday I'm planning to
  • Read more of the Bishop machine learning text book
  • Make some small UI changes to the GridCarbon Android app
  • Mark some HCI courseworks for Mark
When I get back from the holiday I'm planning to:
  • Look at techniques from other domains that can be used to recognise appliance's repeating power signatures, starting with the fridge

Monday, 20 December 2010

Comparison of Gopal and Enrico's data

From the experiments I carried out last week, it became clear that houses with different occupants and appliances generate hugely different data. A problem with this is that some techniques will be useful on one data set and useless on another. To illustrate this, I've plotted the changes in power in both Gopal and Enrico's houses over a 1 week period. Increases in power are represented by red points while decreases in power are represented by blue points.



There are some similarities between these graphs in the density of data points. Each graph has a dense band of power changes between 0 and 300W. This band is visible 24 hours a day so it is most likely due to continuously cycling appliances, e.g. fridge, freezer, heating. Unfortunately, these cycling appliances do not have consistent 'on' and 'off' jumps and might therefore disguise the features of other low power appliances, e.g. TV, computer, lighting. Above this band (300-3000W), the data points are more sparsely distributed. These are likely to correspond to appliances that generate a large amount of heat, e.g. kettle, toaster, microwave.

However, there are also some differences between the two plots. Enrico's graph has a third visible band, between 0 and 20W. This is likely due to a cycling appliance with a consistent 'on' and 'off' change in power.

Another clear difference between the plots is the time of day at which the sparsely distributed data points occur. On Gopal's plot they occur throughout the night, whereas on Enrico's they only occur during the day. This is because Gopal has an electric boiler which runs during the night, and it is clear that this is hard to distinguish from other high power appliances.

Friday, 17 December 2010

Real data from Enrico's home

Here's another plot of the changes in power from Enrico's home. Enrico has the largest amount of uninterrupted energy data, and I've therefore been able to plot 5 months worth of data (July - November). Enrico's data is was again collected from AlertMe.

This plot is really interesting in that there's a solid baseline of approximately 200W throughout the day and night. This is most likely because there is some appliance(s) that continuously switch 'on' and 'off' throughout the day. In addition, the jump in power ranges between 0W and 200W.

There's also two clusters representing morning and evening when appliance 'on' and 'off' events are more likely to occur.

I've also plotted the raw power values at minute intervals below.

In addition to the trends visible on the first graph, this also shows the morning and evening clusters separate from the baseline.

Wednesday, 15 December 2010

Real data from Gopal's home

Here's a similar plot of changes in power, collected at minute intervals over a 1 month period. The system used this time was AlertMe. This plots when a change in power occurs, against the time of day.

This plot really doesn't seem to provide much information, as there aren't distinct clusters like were visible in Alex's data. I'm not sure why this is, but it could be due to an appliance with unpredictable 'start' and 'stop' signatures.

However, it's also interesting to just plot the raw data (power values against time of day).

Surprisingly, this shows a number of distinct clusters. While the first plot contained a data point for each 'on' and 'off' event, this graph contains a data point for every minutely power reading. This shows a clear repeating pattern each day, and although it isn't so useful in identifying which appliances are 'on' at certain points, could be used to predict when already identified appliances are likely to be used.

Tuesday, 14 December 2010

Real data from Alex's home

Today I've been looking at some real data collected over a 4 day period from Alex's home. A large proportion of my time has been spent getting used to matlab, but I'm getting there slowly. I extracted changes greater than 100W in his overall power demand over the period. However, this is a 1-dimensional feature vector and does not make a very interesting plot, so I've plotted it against the time of day at which it occurred. The plot is below.

Any points that sit on a horizontal line are power jumps of the same value, and are therefore likely to be the same appliance. A few of these lines are visible over this small data set which is encouraging. The clearest of which is near the bottom left corner.

In addition, there's a clear cluster just to the right of the centre of the graph. This shows that time of day is a more useful feature vector for some appliances than others.

Appliance survey

Yesterday I spent the day building up my general knowledge of domestic appliances. I looked up ballpark figures for each appliance's average power during use. This demonstrates which appliances are likely to make characteristic step changes in power when they turn on and off. The results are shown below.

There's a clear split between appliances that generate heat (right side) and those that do not (left side).

However, we care more about appliances that consume most energy, not that draw the most power. To compare the appliances' energy consumption, I needed to estimate their duration of usage each day. I assumed they were present in a standard house of 2 people. The results are below.

It's import to note that I've excluded the electric boiler to aid comparison, as its consumption dwarfs that of other appliances. We now see things like lights creeping up the scale, so these are things we should care about more.

It's also worth noting what the power drawn by these appliances looks like. Many appliances change state while in use, and therefore draw varying power. These changes of state often repeat, and I've therefore classed these appliances according to whether their power demand is cyclic or constant. The fridge, washing machine, dishwasher and clothes drier are all cyclic appliances, and the rest are constant.

Monday, 13 December 2010

End of week 9 and week 10 supervisor meeting

Recently I've been:
  • Finishing the introductory material to the Bishop machine learning text book
  • Using matlab toolboxes to experiment with techniques for event detection and feature extraction
This week I'm going to:
  • Build up a better general knowledge of domestic appliance power signatures, e.g. how much power appliances draw, average energy, cycle of signature etc
  • Spend more time than last week to get through a bigger chunk of the machine learning book

Monday, 6 December 2010

Week 9 supervisor meeting

The outcomes of the meeting were:
  • Last week I wrote an introduction skeleton for which the structure and content was fine. I've tweaked and expanded some sections where recommended.
  • I've been making a grid of approaches in the literature to aid their comparison. So far I've compared literature from 2010 and 2009, but am going to continue populating this grid over the next week.
  • One of the common tools used in the literature is the Neural Network approach. Although I have a basic appreciation of the topic, I'm going to need to read up on the underlying theory in order to evaluate the benefits of various approaches.
  • With regard to data and experiments, I'm now at a stage where I have data from 3 houses, collected from both AlertMe and Ploggs available to me. This week I'm planning to use Matlab to apply some basic techniques from the literature to our data.

Wednesday, 1 December 2010

November 2010 Activity Log

This month I had planned to:
Identify and fill any gaps in literature survey on NIALM.
Thoroughly read most relevant papers in the subject of NIALM.
Read a good chunk of the Pattern Recognition and Machine Learning text book.
Collect a range of research in the HCI/energy field.
Get hold of some real large scale aggregated appliance data from both Ploggs and AlertMe meters in a residential setting.

This month I achieved:
Collection and reading of a good coverage of NIALM literature.
Comparison of literature using conceptual map and grid of techniques.
Read the probability theory section of the Machine Learning text book.
Got hold of 1 week of real domestic energy data and performed basic analysis using Excel
Investigated Gaussian Processes.

Next month I plan to:
Collect data from a variety of households, metered using different techniques.
Use Matlab to apply increasingly complex machine learning techniques described in literature.
Read up on relevant parts of HCI and Ubiquitous computing fields

Research Methodologies - Introduction exercise


A Non-Intrusive Appliance Load Monitor (NIALM) refers to a device that can determine the operational state of connected electrical appliances from a single point of measurement. It aims to provide the advantages of sub-monitoring approaches without incurring the cost or intrusiveness of installation.


The output from a NIALM can empower the consumer by providing a breakdown of how much electrical energy individual appliances use. This can directly highlight energy savings through change in lifestyle or appliance replacement. Additionally, it can provide the input necessary should an agent seek to control appliances in the home in an energy efficient manner. Ultimately, this small-scale reduction in energy use contributes towards the global challenge of minimising energy generation and greenhouse-gas emissions.


Previous solutions to the field of NIALM utilise high-granularity electrical readings, typically collected using custom-built meter. Approaches generally use signal processing and machine learning techniques to disaggregate the combined readings to give a break-down by appliance.


However, there is little research on whether such approaches can be applied to low-granularity data. Such low-granularity data will be measured by modern smart meters, which will become ubiquitous within UK homes by 2020.


This research focuses on the application of NIALM techniques to low-granularity data that could be collected from smart meters. It aims to enrich machine learning NIALM techniques using additional data sources such as collaborative appliance models, and temporal, user and environmental data.


The order of this work is as follows. First, the goals and applications will be stated. An in depth discussion of related literature and its limitations will then be given, followed by a description of our contribution. Our proposed approach will then be evaluated against existing approaches before the conclusions are highlighted and future work is suggested.