Energy-Aware Agents for Detecting Nonessential Appliances ...

4 downloads 174 Views 232KB Size Report
Shih-chiang Lee; Gu-yuan Lin; Wan-rong Jih; Chi-Chia Huang; Jane Yung-jen Hsu. Conference ... activity recognition appliance monitoring energy conservation.
Energy-Aware Agents for Detecting Nonessential Appliances Shih-chiang Lee, Gu-yuan Lin, Wan-rong Jih, Chi-Chia Huang, and Jane Yung-jen Hsu Department of Computer Science and Information Engineering National Taiwan University Taipei, Taiwan {r97026,r97131,wrjih,r95046,yjhsu}@csie.ntu.edu.tw

Abstract. In the past decades, the amount of electricity used by appliances has grown dramatically. As we are demanding more electricity, we should lower the damage to our environment by using energy efficiently. Conservation of energy by looking at one’s habits and notifying them to turn off unnecessary appliances can help out a lot. This research develop a framework, which is able to recognize the operating state of every electrical appliance in a house and figure current user activity. By analyzing the behavior of using appliances, the correlation between activity and appliance can help to detect the nonessential appliance, which is the appliance does not participate in any user activity. The real user experimental results show 96.43% in recognizing the operating state of appliances and 72.66% in detecting nonessential appliances. Keywords: activity conservation.

1

recognition,

appliance

monitoring,

energy

Introduction

With the progress of the times, life is more convenient than ever before. However, since electricity is the main energy source of most common equipments in daily life, every country around the world is now facing the same problem: the increasing demand of electricity1 . From 2005 U.S. Residential Energy Consumption Survey2 , the American families consumed 41% of national electricity ouput3 . Energy problem is closely related to every one. In addition, according 

1 2 3

This work was partially supported by grants from the National Science Council, Taiwan (NSC 96-2628-E-002-173-MY3, NSC 99-2221-E-002-139-MY3, and NSC 0992811-E-002-020). Global Energy Issues, World Energy Council, 2006: http://www.worldenergy.org/documents/p001022.doc Residential Energy Consumption Survey (RECS): http://www.eia.doe.gov/emeu/recs/ Energy Use in Homes: http://www.eia.doe.gov/energyexplained/index.cfm?page=us_energy_homes

N. Desai, A. Liu, and M. Winikoff (Eds.): PRIMA 2010, LNAI 7057, pp. 475–486, 2012. c Springer-Verlag Berlin Heidelberg 2012 

476

S.-c. Lee et al.

to the statistics of Energy Information Administration4 , total consumption of electricity in 2010 is estimated to increase 5% over last year. People have to pay more attention to energy related issue to avoid energy shortage. The first and easiest way is “Do not waste electricity”. Darby’s research [2] raised a conclusion that the more aware of the detailed energy consumption can provide more incentives to improve energy efficiency. There are 5-15% energy saving was reached in their experiments. Traditional electric meter measures power consumption of subscribers. It provides data about current, impedance, power factor, watt, apparent power, etc. Most people read this kind of data senselessly, and pay the electricity bill. Our idea is to use a scientific method to analyze the raw data from a center power meter, and then determine whether users are wasting energy. It then shows the suggestions to users in an easily understanding way. For example, to suggest a user to turn off the light in the kitchen when the user is watching TV in the living room. The first step is to acquire the state of every electrical appliance in the environment. In general, people always plug in and run multiple appliances on the same circuit, which makes the detection of appliance states a great challenge. Furthermore, user’s activity is inferred from the acquired appliance states. However, the individual use varies from house to house and the appliance usage may vary according to living habits, this also make the problem more complicated. Finally, with appliance states and user activity, the system filters out the appliances which are wasting energy. This paper proposes an agent-based framework to detect energy-wasting appliances. An appliance is wasting energy if it is not necessary in user’s current activity. We named such appliances Nonessential Appliances. The framework collect electrical power signal from electric distribution boards to monitor operating states of appliances in real time. The operating states is used to recognize user’s activities. In addition, we propose an activity-appliance model. This model builds the connection between activities and appliance usages from commonsense knowledge. With this model and previous results, the framework filters out nonessential appliances. As the result, this framework urges people to reduce power consumption by reminding them to turn off nonessential appliances.

2

Related Work

The most intuitive approach to recognize an appliance in an environment is to mount sensors on every appliance [5]. With this manner, the unique characteristic of each appliance is captured. Ito et al. [3] and Saitoh et al. [8] extract features in power waveform, which includes average power consumption, peak power usage, crest factor, form factor, etc. Kato et al. [4] apply Linear Discriminant Analysis (LDA) to extract features. Researchers then analyze the features of appliances to predict their operating states. Serra et al. [9] utilized clustering techniques to detect operating states of appliances. Kato et al. [4] applied Support Vector 4

U.S. Total Electricity Consumption Chart, Short-term Energy Outlook, October 2010: http://www.eia.doe.gov/steo/gifs/Fig22.gif

Energy-Aware Agents for Detecting Nonessential Appliances

477

Machine (SVM) to classify appliances. However, it costs too much to mount a sensor on every appliance. Furthermore, the deployment and maintenance are troublesome. These make the approach impractical in real life. The distribution board is the electricity gateway of an electricity subscriber. It usually divides an electrical power feed into subsidiary circuits. A non-intrusive approach to recognize appliance’s operating state is to identify the power usage from the distribution board. When an appliance is switched between operating states, it usually generates some electrical noise. Patel et al. [7] took advantage of these noises to recognize the change of operating states of appliances. Their approach is impressive, but it disregards energy consumption, which contains essential information for energy management. Appliance recognition is getting mature, but its application in energy saving is just started. MicroSoft Hohm5 provides a Web-based service that can estimate household energy usage and deliver energy saving recommendations to users. Google PowerMeter6 provides a simple analysis of the electrical consumption and users can access information from the iGoogle page. Both Hohm and PowerMeter provide home energy consumption data that helps users to make better energy efficient decisions. However, these two services only provide an overview of energy consumption, and they cannot provide more detailed information like “how many appliances are running in a house?” Therefore, we present this work to make this research field more active and bring more possibility.

3

Nonessential Appliance Detection

The Nonessential Appliance Detection problem is to find out electrical devices that are currently turned on but are not involved in any user’s activity. These devices are wasting electric power; hence, identifying them can help people reduce their energy consumption. In addition, we call this kind of devices Nonessential Appliances. 3.1

Problem Formulation

Let A = {a1 , a2 , . . . , am } be a set of m activities that performed by users in the house, and P = {p1 , p2 , . . . , pn } be a set of n electrical appliances. A function fuse (ai , pj ) denotes the relationship between activity ai ∈ A and appliance pj ∈ P , such that  true if the activity ai uses the appliance pj fuse (ai , pj ) = (1) f lase otherwise Given an activity ai ∈ A, let Pai ⊆ P be the set of required appliances to accomplish activity ai . We named Pai as the essential appliance set of the activity ai . Formal definition of Pai is Pai = {pj : fuse (ai , pj ) = true} 5 6

MicroSoft Hohm Center ( http://www.microsoft-hohm.com/Home/Default.aspx) Google PowerMeter (http://www.google.com/powermeter/about/)

478

S.-c. Lee et al.

where ai ∈ A and pj ∈ P . Suppose that Ac ⊆ A is a set of the user’s current active activities. The essential appliances of the active activities Ac is formulated as  PAc = Pai . (2) ai ∈Ac

Therefore, given a set of currently running appliances Pc ⊆ P , the nonessential c ⊆ Pc is defined to be appliance set P c = Pc \ PAc , P

(3)

which is the difference set of Pc and PAc . Our goal is to find all the nonessential c . appliance pj ∈ P

4

Activity-Appliance Model

c is aware of The most intuitive approach of detecting nonessential appliances P the user’s behaviors when they are using electrical appliances. However, most technologies of activities recognition are intrusive, disruptive, and violated on the privacy of users. We need a non-intrusive approach to detect the nonessential appliances. Therefore, we collecting the electrical power signal from distribution boards and predicting the operating state of appliances. By giving these currently running appliances, we have to detect the active activities. As people usually perform a series of activities and use electrical appliances to facilitate their tasks, we propose the Activity-Appliance Model to make connections of activities and appliances. 4.1

Model Formulation

Ideally, according to the Boolean function fuse (ai , pj ) in Equation (1), the Activity-Appliance Model constructs relationships between activity ai and appliance pj , where ai ∈ A and pj ∈ P . We recall the notations of Section 3.1, the P and A respectively represent the set of appliances and activities. However, in real life, different users have different appliance usage habits. For example, in the meal preparation, some people prefer stove to microwave, but almost anyone can find some use for a microwave. Therefore, in order to define a general relationship between activities and appliances, we have to relax the definition of function fuse (ai , pj ) and change its return value from the Boolean to a value of score weighting. For the purpose of defining a general function fuse (ai , pj ), we have to measure what are the people’s common understandings in activities and appliances. We utilized the human computation technique to collect the knowledge of daily activities and electrical appliances, especially the relationships between them [6]. This human computation game asked players questions, such as “what electrical appliances would be used for cooking?” and “What kind of activity does a

Energy-Aware Agents for Detecting Nonessential Appliances

479

microwave use for?”, etc. Players answer these fill-in-the-blank questions and contribute their understandings to the activity-appliance model. We also designed yes-no questions for players to validate the others’ answers. Accordingly, a function fcount (ai , pj ) returns how many players agree with the activity ai will use the appliance pj to accomplish its task. Detailed definition shows as follows:

fcount (ai , pj ) =

⎧ l ⎪ ⎪ ⎨ ⎪ 0 ⎪ ⎩

there are l people answer that when they are doing the activity ai , they use the appliance pj otherwise; no one agree to that doing the activity ai will use the appliance pj .

For example, if eleven people answer that “people use microwave for cooking”, the function fcount (cooking, microwave) returns 11, where the activity cooking ∈ A and the appliance microwave ∈ P . However, for the large combinations of activities and appliances, the resulting number of occurrence cannot provide much information due to the huge data. Accordingly, it is essential to rank these combinations and find the proper match of activities and appliances. To do this, for giving an activity ai and an appliance pj , we need a function returns the score of the relationship between the activity ai  and the appliance pj . A relaxed function fuse (ai , pj ) of the function fuse (ai , pj ) can be defined as  fuse (ai , pj ) = Ψtf (ai , pj ) × Ψidf (pj ) where ai ∈ A and pj ∈ P . The Ψtf (ai , pj ) and Ψidf (pj ) are inspired by the TF-IDF weight of information retrieval, such that fcount (ai , pj ) Ψtf (ai , pj ) = fcount (ak , pj ) ak ∈A

Ψidf (pj ) = log

|A| . |{ar : fcount (ar , pj ) > 0, ar ∈ A}|

Function Ψtf (ai , pj ) denotes the frequency of that people use the appliance pj to perform the activity ai . The Ψidf (pj ) plays the role of measuring the general importance of the appliance pj . The |A| in Ψidf (pj ) is the cardinality of activity set A; recall the definition in Section 3.1, |A| is equal to m. For each activity ar in the set {ar : fcount (ar , pj ) > 0, ar ∈ A}, has the connection with the appliance pj ; that is, the value of function fcount (ar , pj ) must greater than zero. 4.2

Active Activity Scoring

− → Given the currently running appliances Pc ⊆ P , let Pc be the corresponding vector of Pc , such that − → Pc = [fon (p1 ), fon (p2 ), · · · , fon (pn )].

480

S.-c. Lee et al.

The function fon (pj ) denotes the operation state of the appliance pj ∈ P and defines as follows: ⎧ ⎪ ⎨ 1 if pj ∈ Pc ; the appliance pj is running currently fon (pj ) = 0 otherwise, i.e. pj ∈ / Pc ; the appliance pj is suspended ⎪ ⎩ or power off. Recall the essential appliances set of activity Pai ∈ P in Section 3.1, we relax the definition of the essential appliance vector as −→    (ai , p1 ), fuse (ai , p2 ), · · · , fuse (ai , pn )], Pai = [fuse

(4)

where p1 , p2 , · · · , and pn ∈ P . − → −→ The Euclidean inner product of Pc and Pai is used for predicting the active activities Ac . For each activity ai ∈ A, we compute the score of the activity ai to be − → −→ fscore (ai ) = P c • Pai  (5) = fon (pj ) × fuse (ai , pj ). pj ∈P

Consequently, the active activity set Ac ⊆ A contains the element ai ∈ A that has higher score and the formulation is Ac = {ai : fscore (ai ) ≥ θ},

(6)

where θ is the threshold of the score value. As a result, given the currently running appliances Pc , the activity-appliance model can predict the active activities Ac . 4.3

Goal Finding

c ⊆ Pc is our goal. Thus far, we In this paper, finding nonessential appliances P have the currently running appliance Pc and the active activities Ac , whereas we need to compute the difference set of Pc and PAc . Fortunately, we can use the Equation (2) to construct the essential appliances PAc , and then achieve the c from the Equation (3). goal P

5

Energy-Aware Agents

Fig. 1 depicts our deployment of an agent-based framework to detect nonessential c . The input of this framework is the electrical power signal collected appliances P from distribution boards. Equation (3) provides the solution to find out the c . In other words, by solving the currently running nonessential appliances P c . appliances Pc and active activities Ac , we can obtain nonessential appliances P Accordingly, the Appliance Monitoring Agent monitors electrical power from power distribution boards, and identifies the currently running appliances Pc

Energy-Aware Agents for Detecting Nonessential Appliances

481

Fig. 1. Energy-aware agents

that are currently consuming electrical energy. In the Nonessential Appliance Detection Agent, we utilize the relationships between activities and appliances to build an Activity-Appliance Model, so that we can infer the user’s active activities Ac , and then compute the essential appliances PAc . As a result, we can c , and the Energy-aware Service Agent obtain the nonessential appliances P will deliver energy conservation tips to the user. 5.1

Appliance Monitoring Agent

We use a non-intrusive power meter that mounted on each of the power circuit for measuring the electrical consumption. The Appliance Monitoring Agent collects the raw sensing data as its belief and predicts the corresponding appliance operating states as its desire. The reason that we predict the operating state of appliances is to find out which appliance is currently running. However, people usually plug in and run multiple appliances on the same circuit. It is hard to detect the operating state of every appliance from a circuit. According to the waveforms of real power and reactive power, we extract 18 features from the input power signal, including the mean, variance, root mean square, maximum, minimum, difference, crest factor, form factor, and the value of maximum divided by the mean. These features are also the belief of the Appliance Monitoring Agent that uses to predict the operating state of appliances. The Appliance Monitoring Agent uses Factorial Conditional Random Fields (FCRFs) [10] to detect and learn from using appliances. For recognizing appliances, the features of input power represent the observed variables, whereas the operating states of appliances represent the hidden variables. We use the L-BFGS7 as the algorithm of learning process. The Loopy Belief Propagation (LBP) algorithm [11] is used to perform the message passing. A maximum a priori (MAP) estimation technique is applied to both of the inference and decoding processes. In the inference process, MAP simply propagates the maximum possibility value of the operating state to update hidden variables. As a result, MAP uses the most possible sequences of hidden variables to decode the appliance’s 7

L-BFGS is an algorithm for quasi-Newton optimization. The term L-BFGS stands for “limited memory BFGS (Broyden-Fletcher-Goldfarb-Shanno)”.

482

S.-c. Lee et al.

operating state. An iteration limit Γ is assigned to guarantee the LBP termination and convergence [12]. After the LBP max-product algorithm converges and the MAP probability of each hidden variable is estimated, we can label every hidden variable by choosing the most likely value according to the MAP probability. Consequently, output of the Appliance Monitoring Agent is a set of currently running appliances Pc . 5.2

Nonessential Appliance Detection Agent

From the Appliance Monitoring Agent, the Nonessential Appliance Detection Agent receives the currently running appliance Pc as its belief. In addition, we utilize human-based computation to construct the Activity-Appliance Model, which is also the belief of this agent. Desires of this agent are to predict the c . active activities Ac and detect the nonessential appliances P The intention of the Nonessential Appliance Detection Agent follows the description of Section 4. Accordingly, this agent performs a sequence of actions: building the activity-appliance model, scoring every activity ai , finding the active c . activities Ac , and predicting the goal P 5.3

Energy-Aware Service Agent

The beliefs of the Energy-aware Service Agent include the nonessential applic , active activities Ac , and currently running appliance Pc . In order to ances P send the energy conservation tips to the user, the knowledge base of these tips is also the belief of this agent. Without doubt the desire is to deliver the energyconservation tips to the user. Currently, our Energy-aware Service Agent simply reminds the user to turn c and shows the conservation tips to the user. off the nonessential appliances P When contain of active activities Ac or the currently running appliance Pc is changed, the corresponding notification shows on a LCD display.

6

Experimental Results

In this experiment, a smart power meter is mounted on a distribution board of a single dormitory room. The distribution board divides electrical power feed into five circuits. Three circuits are separately allocated to an electric water heater, an air conditioner, and three ceiling lights. As regards the other two circuits, one is for the electric oven and a dehumidifier; the other is for small appliances, such as the hair dryer, battery charger, laptop, lamp, and electric fan. Our experimental participant is living in this en-suite room. The smart power meter continuously records electricity usage of the user for two weeks. During the experimental period, the user can perform any activity without restriction, that is, this experiment will not disturb the user’s normal daily life. The following experimental results are use this data set to evaluate performances of appliance monitoring and nonessential appliance detection.

Energy-Aware Agents for Detecting Nonessential Appliances

6.1

483

Appliance Monitoring

In this experiment, there are 4,671 valid data with 24 different activities. We deploy several machine learning methods to predict the operating state of appliances. Each method is run 5-fold cross-validation on the same experimental data with 64-second half-overlapped sliding window. The evaluation criteria for the Appliance Monitoring agent include accuracy, precision, recall, and F-score. A comparison of appliance monitoring methods shows in Table 1, which presents the average prediction results of the appliance. In addition to the FactoTable 1. A comparison of appliance monitoring Result(%) Accuracy Precision Recall F-score SVMhmm 88.81 51.62 43.36 46.22 HMM 94.69 78.55 84.13 80.58 PCRFs 96.14 92.70 76.74 83.45 FCRFs 96.43 93.01 79.32 85.06

rial Conditional Random Fields (FCRFs), we implement three other methods for the comparison, including Parallel Conditional Random Fields (PCRFs), Hidden Markov Model (HMM), and Hidden Markov Support Vector Machine8 [1] (SVMhmm ). Results show that PCRFs and FCRFs significantly outperform the other two methods in the comparison of accuracy, precision, and F-score. Both FCRFs and PCRFs are CRF-like methods, except that the PCRFs only consider the target appliance’s operating states without refer to the others’ states. 6.2

Nonessential Appliance Detection

In this experiment, we choose six activities, including taking a shower, going to the toilet, sleeping, using a computer, reading, and blow drying. These six activities involve ten appliances that we have monitored, they are electric water heater, air conditioner, dehumidifier, electric fan, ceiling lights, hair dryer, battery charger, laptop, and desk lamp. The activity-appliance model calculates the relationship between these six activities and ten appliances. There are 256 data in our experiments. For the active activities prediction, according to Equation (6), the activity have the highest score will be picked as the active activity. In order to verify the Equation (5) can obtain better results, we modified  (ai , pj ) by the scoring function of Equation (5) and replace the function fuse Ψtf (ai , pj ), that is, the modified score will be

fon (pj ) × Ψtf (ai , pj ), pj ∈P

where activity ai ∈ A and appliance pj ∈ P . 8

SVMhmm : Sequence Tagging with Structural Support Vector Machines, http://www.cs.cornell.edu/People/tj/svm%5Flight/svm_hmm.html

484

S.-c. Lee et al. Table 2. Confusion matrix of predicting active activities – Ψtf

Actual activity A1 A2 A3 A4 A5 A6 A1: Sleeping 13 0 3 0 0 0 A2: Reading 0 0 0 0 0 0 Predicted A3: Using a computer 0 1 36 0 7 0 A4: Taking a shower 0 0 0 0 0 0 activity A5: Going to the toilet 0 5 113 60 3 3 A6: Blow drying 0 0 0 0 0 12 Precision(%) 100.00 0.00 23.68 0.00 30.00 80.00 Average precision(%): 38.95 Average recall(%): 66.17 F-score(%): 49.03 Accuracy(%): 25.00

recall (%) 81.25 N/A 81.82 N/A 1.63 100.00

Table 2 presents the results that calculates the score of activity ai by using the modified score. Each row of Table 2 represents the number of count in a predicted activity, while each column represents the count of actual activity. Accordingly, the diagonal element is the number of correct prediction. The symbol A1 represents the sleeping activity, A2 is for the reading, and so on. For example, the value 13 in the row A1 and column A1, means the score function can correctly predict the sleeping activity for 13 times. In this experiments, there are 13 test cases for sleeping activity, therefore, the precision of predicting the sleeping activity is 100%. In addition, the row A1 and column A3 shows that 3 cases have been mispredicted as sleeping activity, but they belong to activity A3 (using a computer). We observe that some activities are improperly predicted as going to toilet, because of these activities will use ceiling lights and Ψtf (going to the toilet, ceiling lights) has highest value than the others. For example, when we are reading we always turn on ceiling lights and desk lamp. This is the reason that the Equation (6) does not use the frequency of an appliance to predict activity. Results using Equation (5) is shown in Table 3. In this experiment, we only collect six samples of reading activity, and the precision of predicting reading activity is 83.33%. It shows that even for the small sample size, the activityappliance model can obtain good quality results. We find that the ceiling lights still affect the results of activity prediction. There are two activities, using a computer and taking a shower, are still improperly predicted as going to the toilet. Compare Table 3 with Table 2, the accuracy of predicting the toileting activity is dropped 20%, because of ceiling lights is the only one electrical device that will be used while the user is going to the toilet. In addition, for the taking a shower and going to the toilet activities, these two activities take place in the same room and they use ceiling lights. This is the reason that some of the bathing activities have been mispredicted as toileting. In Table 3, most of the activities have higher precision than that of Table 2, except the going to the toilet and blow drying. These two activities are short term

Energy-Aware Agents for Detecting Nonessential Appliances

485

 Table 3. Confusion matrix of predicting active activities – fuse

Actual activity A1 A2 A3 A4 A5 A6 A1: Sleeping 13 0 16 0 0 0 A2: Reading 0 5 7 0 0 0 Predicted A3: Using a computer 0 1 127 0 9 14 A4: Taking a shower 0 0 0 39 0 0 activity A5: Going to the toilet 0 0 2 21 1 0 A6: Blow drying 0 0 0 0 0 1 Precision(%) 100.00 83.33 83.55 65.00 10.00 6.67 Average precision(%): 58.09 Average recall(%): 62.46 F-score(%): 60.20 Accuracy(%): 72.66

recall (%) 44.83 41.67 84.11 100.00 4.17 100.00

activities and may concurrently perform with other activities. That is, simply picks highest score may cause incorrect prediction due to concurrent activities.

7

Conclusion

This paper proposes a multi-agent framework that integrated technologies of machine learning, information retrieval, and human-based computation to detect the energy-wasting appliances. We apply a statistic model, the FCRF, to predict the appliance operating state, such that can detect the running appliances. In order to build a connection between activities and appliances, a human-based computational game is developed for gathering the relationships from the huge Internet users. After people contribute their common knowledge of activities and appliances, we use the TF-IDF weight technique to build an activity-appliance model. For giving the operating state of appliances and utilizing the activityappliance model, we can easily detect the nonessential appliances. Experiments show that the CRF-like approaches can obtain 96.43% accuracy. Results of detecting active activities are 72.66% in average. It is necessary for us to improve the results of active activities in order to precisely detect nonessential appliances. In the future, we will try to predict more active activities rather than just taking the most significant one. The TF-IDF weighting can be adjusted to satisfy the needs of our problem. In addition, we will continue gathering the activities and appliances data for generalizing the activity-appliance model.

References 1. Altun, Y., Tsochantaridis, I., Hofmann, T.: Hidden markov support vector machines. In: Proceedings of the Twentieth International Conference on Machine Learning (ICML 2003), pp. 3–10. AAAI Press, Washington, DC (2003) 2. Darby, S.: The effectiveness of feedback on energy consumption. A Review for DEFRA of the Literature on Metering, Billing and direct Displays (2006)

486

S.-c. Lee et al.

3. Ito, M., Uda, R., Ichimura, S., Tago, K., Hoshi, T., Matsushita, Y.: A method of appliance detection based on features of power waveform. In: Proceedings of 2004 International Symposium on Applications and the Internet, pp. 291–294 (2004) 4. Kato, T., Cho, H., Lee, D., Toyomura, T., Yamazaki, T.: Appliance Recognition from Electric Current Signals for Information-Energy Integrated Network in Home Environments. In: Mokhtari, M., Khalil, I., Bauchet, J., Zhang, D., Nugent, C. (eds.) ICOST 2009. LNCS, vol. 5597, pp. 150–157. Springer, Heidelberg (2009) 5. Kim, Y., Schmid, T., Charbiwala, Z., Srivastava, M.: ViridiScope: design and implementation of a fine grained power monitoring system for homes. In: Proceedings of the 11th International Conference on Ubiquitous Computing, pp. 245–254. ACM (2009) 6. Kuo, Y.L., Chiang, K.Y., Chan, C.W., Lee, J.C., Wang, R., Shen, E., Hsu, J.Y.J.: Community-based game design: Experiments on social games for commonsense data collection. In: KDD 2009 Workshop on Human Computation (HCOMP 2009), Paris, France (June 2009) 7. Patel, S.N., Robertson, T., Kientz, J.A., Reynolds, M.S., Abowd, G.D.: At the Flick of a Switch: Detecting and Classifying Unique Electrical Events on the Residential Power Line. In: Krumm, J., Abowd, G.D., Seneviratne, A., Strang, T. (eds.) UbiComp 2007. LNCS, vol. 4717, pp. 271–288. Springer, Heidelberg (2007) 8. Saitoh, T., Aota, Y., Osaki, T., Konishi, R., Sugahara, K.: Current Sensor based Non-intrusive Appliance Recognition for Intelligent Outlet. In: ITC-CSCC 2008 (2008) 9. Serra, H., Correia, J., Gano, A., de Campos, A., Teixeira, I.: Domestic power consumption measurement and automatic home appliance detection. In: 2007 IEEE International Workshop on Intelligent Signal Processing, pp. 128–132 (2005) 10. Sutton, C., McCallum, A., Rohanimanesh, K.: Dynamic conditional random fields: Factorized probabilistic models for labeling and segmenting sequence data. Journal of Machine Learning Research 8 (2007) 11. Yedidia, J.S., Freeman, W.T., Weiss, Y.: Understanding belief propagation and its generalizations. In: Exploring Artificial Intelligence in the New Millennium, ch. 8, pp. 239–269. Morgan Kaufmann (2002) 12. Yedidia, J.S., Freeman, W.T., Weiss, Y.: Constructing free-energy approximations and generalized belief propagation algorithms. IEEE Transactions on Information Theory 51(7), 2282–2312 (2005)