Modeling Residents’ Response to the Financial Incentives in Demand Response Programs Abigail C. Teron Qinran Hu, Hantao Cui, Dr. Fangxing Li Universidad del Turabo Final Presentation July 17, 2014 Knoxville, Tennessee
2 Introduction Background Demand Response Problem formulation Simulation results Problem Solution of the problem Artificial neural network Model Conclusion Future work Outline
Introduction 3 T he utility companies are in the search of different ideas and alternatives in order to decrease the use of power through the customers’ motivation of financial incentives in a Demand Response Program. D esign a model that will predict how much utility needs to pay in incentives to the people in order to get a response in the DR. T he model focuses on the peoples’ information related to their activities, attitudes and the use of different appliances collected from BLS, EIA and CURENT survey.
Generator and demand curve 4 Generator curve = Demand curve Background Peak hour causes instability in power system Reduce the gap between both graph.
Demand Response? 5 What is Promoting demand response is an important way to make Power System more efficient, which has become more popular nowadays. Demand Response? Why use Changes in electric usage by customers in response of acknowledging electricity price over time or additional financial incentives designed to lower electricity usage during peak hours.
Who wants to do DR? 6 Generator Utilities Houses ISO Generator Houses ISO Utilities Electricity Market Regulated power industry Obligation to serve with guaranteed rate of return. A monopoly system and integrated vertically Buy electricity Sale Utilities Electric utility engages in the generation, transmission, and distribution of electricity for sale generally in a regulated market.
7 Utility is willing to pay reasonable financial incentives to lower the electricity usage during peak hours. Utility provides financial incentives to organizations that implement efficiency projects or initiatives. How? Why? Because the promotion of demand response is an important way to make Power System more efficient, which has become more popular in the last decades.
Problem 8 1. They cannot pay more than it should in incentives 2. They cannot pay less than it should Solution Design a model that find the optimal amount to achieve the DR.
9 It is an interconnected group of nodes, similar to the neuron in the brain. It is presented as system of interconnected neurons that compute values from inputs. Represents an artificial neuronCircular node arrowConnection from the output of one neuron to the input of another neuron Why neural network? Artificial Neural Network With the use of neurons is a simpler way to solve problems. They read an input, process it, and generate an output. Key element of the neural network is their ability to learn characteristics. It classifies information obtained.
10 MODEL How much utility want to reduce & When they want to reduce it People information How much they need to pay to the people Model
11 People information Appliances Peoples’ attitude Activities ATUS EIA CURENT survey BLS People information Inputs of the model
12 EIA What is EIA? It is the U.S. Energy Information Administration that collects, analyzes, and disseminates independent and impartial energy information to promote sound policymaking, efficient markets, and public understanding of energy and its interaction with the economy and the environment. EIA: Energy Information Administration CURENT Survey What is CURENT Survey? It is based on self-reported data collected in 2013 from 711 US residents across 48 states. Relies on understanding customers’ reaction to financial incentives CURENT: Center for ultra-wide-area resilient electric energy transmission network BLS ATUS: American time use survey What is a time-use survey? Time-use surveys measure the amount of time people spend doing various activities, such as work, childcare, housework, watching television, volunteering, and socializing. Inputs of the model
EIA BLS CURENT Survey y y2 yk yk+1 yk+2 ym ym+1 ym+2 yn function How much utility need to pay to the people in incentives Output of the model
14 MATLAB ® is a high-level language and interactive environment for numerical computation, visualization, and programming. Using MATLAB, you can analyze data, develop algorithms, and create models and applications. You can use MATLAB for a range of applications, including signal processing and communications, image and video processing, control systems, test and measurement, computational finance, and computational biology. More than a million engineers and scientists in industry and academia use MATLAB, the language of technical computing. Pattern Recognition Neural Network: helps classify peoples information with BLS, CURENT Survey and EIA information as a Target. Construction of the model Artificial neural network
Small case study 15 Test peoples’ information Teached neural network information Inputs: Peoples characteristics Inputs: Peoples characteristics Historical data
16 Test peoples’ information Teached neural network information Attitude towards financial incentives the DR Appliances: ac and electric water heather Activities: hours working
Flowchart 17 Start ATUSstart
18 Start ATUSstart p, t1 Inputs: peoples’ information and historical data [p, t1] = peoples_dataset2 BLS
19 Start ATUSstart p, t1 size(p) size(t1) Size of triangulation connectivity list
20 Start ATUSstart p, t1 size(p) size(t1) 24 rows 20 columns Convert t1 in binary number saving it in to a new variable: temp
21 Start ATUSstart p, t1 size(p) size(t1) Convert t1 in binary number saving it in to a new variable: temp Apply weight to the neural network setdemorandstream( ) Since the neural network is initialized with random initial weights, the results after training vary slightly every time the example is run. To avoid this randomness, the random seed is set to reproduce the same results every time.
22 Start ATUSstart p, t1 size(p) size(t1) Convert t1 in binary number saving it in to a new variable: temp Apply weight to the neural network Set the number of hidden neurons. net = patternnet(34)
23 Start ATUSstart p, t1 size(p) size(t1) Convert t1 in binary number saving it in to a new variable: temp Apply weight to the neural network Set the number of hidden neurons. Train the artificial neural network [net,tr] = train(net,p,temp) The training set is used to teach the network. Training continues as long as the network continues improving on the validation set.
24 Start ATUSstart p, t1 size(p) size(t1) Convert t1 in binary number saving it in to a new variable: temp Apply weight to the neural network Set the number of hidden neurons. Train the artificial neural network Test neural network Test, Training Tool shows the network being trained and the algorithms used to train it. It also displays the training state during its revision and the criteria which stopped the training will be highlighted in green.
25 Start ATUSstart p, t1 size(p) size(t1) Convert t1 in binary number saving it in to a new variable: temp Apply weight to the neural network Set the number of hidden neurons. Train the artificial neural network Test neural network Convert output back to decimal number Convert the 24 rows and 20 columns back into decimal number.
26 Start ATUSstart p, t1 size(p) size(t1) Convert t1 in binary number saving it in to a new variable: temp Apply weight to the neural network Set the number of hidden neurons. Train the artificial neural network Test neural network Convert output back to decimal number Output idx of test Y
27 Start ATUSstart p, t1 Convert t1 in binary number saving it in to a new variable: temp Apply weight to the neural network Set the number of hidden neurons. Train the artificial neural network Test neural network Convert output back to decimal number idx of test Y size(p) size(t1) End ATUSstart
ATUSend 28 Start ATUSstart p, t1 Convert t1 in binary number saving it in to a new variable: temp Apply weight to the neural network Set the number of hidden neurons. Train the artificial neural network Test neural network Convert output back to decimal number idx of test Y size(p) size(t1) End ATUSstart Start ATUSend p, t1 Convert t1 in binary number saving it in to a new variable: temp Apply weight to the neural network Set the number of hidden neurons. Train the artificial neural network Test neural network Convert output back to decimal number idx of test Y size(p) size(t1) End ATUSend
CURENT30min 29 Start ATUSstart p, t1 Convert t1 in binary number saving it in to a new variable: temp Apply weight to the neural network Set the number of hidden neurons. Train the artificial neural network Test neural network Convert output back to decimal number idx of test Y size(p) size(t1) End ATUSstart Start ATUSend p, t1 Convert t1 in binary number saving it in to a new variable: temp Apply weight to the neural network Set the number of hidden neurons. Train the artificial neural network Test neural network Convert output back to decimal number idx of test Y size(p) size(t1) End ATUSend Start CURENT30min p, t3 Convert t3 in binary number saving it in to a new variable: temp Apply weight to the neural network Set the number of hidden neurons. Train the artificial neural network Test neural network Convert output back to decimal number idx of test Y size(p) size(t3) End CURENT30min Convert the value in binary number
CURENT2hr 30 Start ATUSstart p, t1 Convert t1 in binary number saving it in to a new variable: temp Apply weight to the neural network Set the number of hidden neurons. Train the artificial neural network Test neural network Convert output back to decimal number idx of test Y size(p) size(t1) End ATUSstart Start ATUSend p, t1 Convert t1 in binary number saving it in to a new variable: temp Apply weight to the neural network Set the number of hidden neurons. Train the artificial neural network Test neural network Convert output back to decimal number idx of test Y size(p) size(t1) End ATUSend Start CURENT30min p, t3 Convert t3 in binary number saving it in to a new variable: temp Apply weight to the neural network Set the number of hidden neurons. Train the artificial neural network Test neural network Convert output back to decimal number idx of test Y size(p) size(t3) End CURENT30min Start CURENT2hr p, t4 Convert t4 in binary number saving it in to a new variable: temp Apply weight to the neural network Set the number of hidden neurons. Train the artificial neural network Test neural network Convert output back to decimal number idx of test Y size(p) size(t4) End CURENT2hr
CURENTutility 31 Start ATUSstart p, t1 Convert t1 in binary number saving it in to a new variable: temp Apply weight to the neural network Set the number of hidden neurons. Train the artificial neural network Test neural network Convert output back to decimal number idx of test Y size(p) size(t1) End ATUSstart Start ATUSend p, t1 Convert t1 in binary number saving it in to a new variable: temp Apply weight to the neural network Set the number of hidden neurons. Train the artificial neural network Test neural network Convert output back to decimal number idx of test Y size(p) size(t1) End ATUSend Start CURENT30min p, t3 Convert t3 in binary number saving it in to a new variable: temp Apply weight to the neural network Set the number of hidden neurons. Train the artificial neural network Test neural network Convert output back to decimal number idx of test Y size(p) size(t3) End CURENT30min Start CURENTUtility p, t5 Convert t5 in binary number saving it in to a new variable: temp Apply weight to the neural network Set the number of hidden neurons. Train the artificial neural network Test neural network Convert output back to decimal number idx of test Y size(p) size(t5) End CURENTUtility Start CURENT2hr p, t4 Convert t4 in binary number saving it in to a new variable: temp Apply weight to the neural network Set the number of hidden neurons. Train the artificial neural network Test neural network Convert output back to decimal number idx of test Y size(p) size(t4) End CURENT2hr
EIAac 32 Start ATUSstart p, t1 Convert t1 in binary number saving it in to a new variable: temp Apply weight to the neural network Set the number of hidden neurons. Train the artificial neural network Test neural network Convert output back to decimal number idx of test Y size(p) size(t1) End ATUSstart Start ATUSend p, t1 Convert t1 in binary number saving it in to a new variable: temp Apply weight to the neural network Set the number of hidden neurons. Train the artificial neural network Test neural network Convert output back to decimal number idx of test Y size(p) size(t1) End ATUSend Start CURENT30min p, t3 Convert t3 in binary number saving it in to a new variable: temp Apply weight to the neural network Set the number of hidden neurons. Train the artificial neural network Test neural network Convert output back to decimal number idx of test Y size(p) size(t3) End CURENT30min Start CURENTUtility p, t5 Convert t5 in binary number saving it in to a new variable: temp Apply weight to the neural network Set the number of hidden neurons. Train the artificial neural network Test neural network Convert output back to decimal number idx of test Y size(p) size(t5) End CURENTUtility Start CURENT2hr p, t4 Convert t4 in binary number saving it in to a new variable: temp Apply weight to the neural network Set the number of hidden neurons. Train the artificial neural network Test neural network Convert output back to decimal number idx of test Y size(p) size(t4) End CURENT2hr Start EIAac p, t1 size(p) size(t1) Apply weight to the neural network Set the number of hidden neurons. Train the artificial neural network Test neural network idx of test Y Start EIAac Test, the output is in decimal. It was used the round function to return it to 1 or 0
Merge models 33 Start ATUSstart p, t1 Convert t1 in binary number saving it in to a new variable: temp Apply weight to the neural network Set the number of hidden neurons. Train the artificial neural network Test neural network Convert output back to decimal number idx of test Y size(p) size(t1) End ATUSstart Start ATUSend p, t1 Convert t1 in binary number saving it in to a new variable: temp Apply weight to the neural network Set the number of hidden neurons. Train the artificial neural network Test neural network Convert output back to decimal number idx of test Y size(p) size(t1) End ATUSend Start CURENT30min p, t3 Convert t3 in binary number saving it in to a new variable: temp Apply weight to the neural network Set the number of hidden neurons. Train the artificial neural network Test neural network Convert output back to decimal number idx of test Y size(p) size(t3) End CURENT30min Start CURENTUtility p, t5 Convert t5 in binary number saving it in to a new variable: temp Apply weight to the neural network Set the number of hidden neurons. Train the artificial neural network Test neural network Convert output back to decimal number idx of test Y size(p) size(t5) End CURENTUtility Start CURENT2hr p, t4 Convert t4 in binary number saving it in to a new variable: temp Apply weight to the neural network Set the number of hidden neurons. Train the artificial neural network Test neural network Convert output back to decimal number idx of test Y size(p) size(t4) End CURENT2hr Start EIAac p, t1 size(p) size(t1) Apply weight to the neural network Set the number of hidden neurons. Train the artificial neural network Test neural network idx of test Y Start EIAac Start EIAewh p, t2 size(p) size(t2) Apply weight to the neural network Set the number of hidden neurons. Train the artificial neural network Test neural network idx of test Y Start EIAewh ATUSstart(j) 10e Sort value of incentive from minimum value to maximum value Counter to add the total kw Kw = kw +ac*2 + ewh*2 Total $ incentives I1 = I1 + m(i) + (ac + ewh) I1 incentives End Model kw = 0, I1 = 0, ac = 0, ewh = 0 EIAewh = 1 ewh = 1 EIAac = 1 ac = 1 Output: Incentives they have to pay to obtain the electric demand needed Sort the value from the minimum to maximum value Checks the hour of each person Counts the electric water heatherCounts the air continueEquationCounter of kW
Results 34 Information that utility can provide (assumed) Money utility needs to pay in incentives Percentage of air conditioner and electric water heather available and not available
Conclusion 35 This project proposed a model of residents’ response to the financial incentives in demand response programs. With this model, utility will be able to predict how much they need to pay in incentives in order to realize the expected demand reduction according to the residents’ characteristics, attitudes towards DR, daily activities and appliances. This model helps promote residential demand response to achieve load shifting during peak hours. Also, it brings a new idea for the electric utilities to design more efficient incentive based DR programs.
Future work 36 As a future work a touch of sensibility is proposed in the model. It is very important to have both the company and the customer satisfied when working with a power demand required this is why is good to consider the peoples’ need related to tolerance to the heat and cold or social activity. First we will consider the fact whether the household contains an elderly person or a disabled gold who require all equipment at all times. The model will work omitting these households, taking into account the rest of the people. This utility will have a better proposal in suggesting incentives and demand response, besides having a better attitude results in relation to people. Second, be added to all persons who conducted the survey since in this case is proposed and tested with only 20 people in it. By doing this you will get a more concise Utility result of what just pay in order to get the response for the resident financial incentives person in DR.
37