Ohio Change Location

Detailed Instructions


Certified Supplier Detailed Instructions for Weather Response Functions (WRFs)

Introduction:

Weather Response Functions (WRFs) model hourly demands as a piece-wise linear function of weather variables (temperature and either relative humidity or wind speed depending on season).  Each WRF is a Least Square Error regression of historical hourly load data for a particular season and day type (e.g., June Weekday, June Weekend Day, etc.). A set of WRFs will be created for each customer segment (RS0, RS5, etc.).

A WRF is constructed for each hourly (1-24) demand, from data in hour-ending format.  Each WRF is composed of one to three line segments, with two to four temperature break-points defining the beginning and end of each line segment.  The WRF for each daytype may have 24 to 72 equations (1 to 3 line segments per hour x 24 hours).

This document will review the equations used in each line segment, and give examples of how WRFs may be used to construct a forecast.  The weather station used for the construction of these WRFs is CVG.

Equation:

Given,

Equation for a line:  Y = MX + B

Therefore,

LoadHS = M1X1 + M2X2 + B

Where, 

H = a particular hour
S = the particular line segment of the WRF determined by the temperature for that hour
M1 = temperature coefficient for segment (S)
X1 = temperature value (forecast or actual) for that hour
M2 = humidity or wind (depending upon season) coefficient for segment (S)
X2 = humidity or wind value (forecast or actual) for that hour
B = constant for line segment (S)

 Sample Weather Response Function Coefficients:

A sample WRF was generated using temperature only for use in this document. The WRF generated was for a Hypothetical Profile Segment, June Weekday, and had 3 line segments for each hour. However, the table below illustrates coefficients for only one line segment (segment 2) of the three.

Line Segment 2        
Hour T min T max B (constant) M1(Temp) M2(RH) M3(Wind)
1 55 85 -1.493 0.035 0 0
2 55 85 -1.449 0.033 0 0
3 55 85 -1.147 0.028 0 0
4 55 85 -1.031 0.026 0 0
5 55 85 -0.694 0.022 0 0
6 55 85 -0.196 0.017 0 0
7 55 85 -0.304 0.019 0 0
8 55 85 -0.664 0.024 0 0
9 55 85 -0.943 0.027 0 0
10 55 85 -1.217 0.031 0 0
11 55 85 -1.260 0.032 0 0
12 55 85 -1.537 0.036 0 0
13 55 85 -1.970 0.042 0 0
14 55 85 -1.878 0.041 0 0
15 55 85 -2.272 0.046 0 0
16 55 85 -1.923 0.043 0 0
17 55 85 -1.861 0.043 0 0
18 55 85 -2.034 0.047 0 0
19 55 85 -2.194 0.050 0 0
20 55 85 -2.255 0.051 0 0
21 55 85 -1.784 0.046 0 0
22 55 85 -1.536 0.043 0 0
23 55 85 -1.571 0.041 0 0
24 55 85 -1.396 0.035 0 0

Tmin and Tmax represent the range of temperatures covered by this particular line segment.  E.g., If the forecast temperature for a given hour is under 55 or over 85 degrees F, a different line segment would be used. This is determined by the relationship, Tmin < X <= Tmax, where X is the forecast (or actual) temperature value for that hour.

There is a different equation for each hour of the day, based upon the weather response for each particular hour.  Once the forecasted weather data is retrieved from a weather service such as WSI (http://www.wsicorp.com/), an algorithm may be constructed to determine which WRF line segment equation should be used for each particular hour.  Once the proper WRF line segment is determined, the weather variables are applied to the line segment equation to yield a demand for that hour in kW.  This demand represents an average single customer. The magnitude of the hourly demand will increase depending upon how many customers are in that Load Profile Segment (RS5, RS6, etc.) and will then be adjusted by the average usage factor of that Load Profile Segment.

Back to top

Step-by-Step:  How to use a WRF to create a forecast and schedule. Things you will need:

  1. A spreadsheet program, e.g., Excel, Quattro Pro, etc.
  2. Forecast hourly weather data (Temperature in degrees F, Humidity in %, Wind speed in mph)
  3. Appropriate WRF for segment
  4. Number of customers you have signed up in a particular segment.
  5. Average usage factor for that segment.
  6. Loss factors

6.1 Bulk transmission - 2.3%
6.2  Common transmission - 1.0%
6.3  Distribution - 3.43%

Step 1.  Using the forecast hourly weather data, determine the proper line segment equation of the WRF you will need to use for each hour.   For illustrative purposes, let's use the following WRF line segment that is used throughout this document:

Hour T min T max B (constant) M1(Temp) M2(RH) M3(Wind)
1 55 85 -1.493 0.035 0 0
 

1.1 If the forecast temperature is 73 degrees for hour 1, then it falls between Tmin and Tmax for this segment.  This is determined by the relationship, Tmin < X <= Tmax, where X is the forecast (or actual) temperature value for that hour.

Step 2. Using the equation for the WRF line segment listed above, we get the following equation:

2.1 Equation for a line:  Y = MX + B, therefore:
2.2 Demand (kW)1 = (0.035*73) + (-1.493) 
2.3 Demand (kW)1 = 1.06 kW

Step 3. Multiple Coefficients:  If there are multiple coefficients in the equation (Temperature and Humidity, or Temperature and Wind speed), they are simply added together (ex. September WD, WRF line segment 1):

Hour T min T max B (constant) M1(Temp) M2(RH) M3(Wind)
1 0 75 -0.7346 0.0216 0.0036 0

 

3.1 Temperature = 73, Humidity = 80%
3.2 Equation: Y = M1X1 + M2X2 + B
3.3 Demand (kW)1 = (0.0216*73) + (0.0036*80) + (-0.7346) 3.4 Demand (kW)1 = 1.13 kW

 

Step 4. Applying this process to all the other hours, using temperature data and the WRF coefficients for each hour:

  B M Y
Hour  Tdb(F)  Constant  T Coefficient  Demand
1 73 -1.4928 0.0348 1.05
2 73 -1.4486 0.0334 0.99
3 72 -1.1465 0.0283 0.89
4 70 -1.0313 0.0262 0.80
5 68 -0.6941 0.022 0.80
6 68 -0.1959 0.0167 0.94
7 67 -0.304 0.0188 0.96
8 69 -0.6644 0.0237 0.97
9 71 -0.9426 0.0274 1.00
10 71 -1.2166 0.0313 1.01
11 72 -1.2595 0.032 1.04
12 73 -1.5369 0.0359 1.08
13 74 -1.9702 0.042 1.14
14 76 -1.878 0.0408 1.22
15 77 -2.2719 0.0461 1.28
16 78 -1.9225 0.043 1.43
17 77 -1.8608 0.0434 1.48
18 77 -2.0341 0.0471 1.59
19 75 -2.1942 0.0496 1.53
20 73 -2.2554 0.0514 1.50
21 72 -1.7843 0.0464 1.56
22 71 -1.5363 0.043 1.52
23 70 -1.5714 0.0411 1.31
24 69 -1.3962 0.0354 1.05


A graph of this data can be seen below.

 

Step 5. Scale up for the number of customers

5.1 Example, you currently have 1000 customers that qualify for our Hypothetical Segment
5.2 Multiply each hourly kW value by 1000.

 

  B M Y Customer
Hour  Tdb(F)  Constant  T Coefficient  Demand Adjust
1 73 -1.4928 0.0348 1.05 1050
2 73 -1.4486 0.0334 0.99 990
3 72 -1.1465 0.0283 0.89 890
4 70 -1.0313 0.0262 0.80 800
5 68 -0.6941 0.022 0.80 800
6 68 -0.1959 0.0167 0.94 940
7 67 -0.304 0.0188 0.96 960
8 69 -0.6644 0.0237 0.97 970
9 71 -0.9426 0.0274 1.00 1000
10 71 -1.2166 0.0313 1.01 1010
11 72 -1.2595 0.032 1.04 1040
12 73 -1.5369 0.0359 1.08 1080
13 74 -1.9702 0.042 1.14 1140
14 76 -1.878 0.0408 1.22 1220
15 77 -2.2719 0.0461 1.28 1280
16 78 -1.9225 0.043 1.43 1430
17 77 -1.8608 0.0434 1.48 1480
18 77 -2.0341 0.0471 1.59 1590
19 75 -2.1942 0.0496 1.53 1530
20 73 -2.2554 0.0514 1.50 1500
21 72 -1.7843 0.0464 1.56 1560
22 71 -1.5363 0.043 1.52 1520
23 70 -1.5714 0.0411 1.31 1310
24 69 -1.3962 0.0354 1.05 1050

Step 6. Adjusting for the average usage factor

6.1 Usage Factors are used in forecasting to account for the deviation of individual customers' usage levels from segment average usage levels. An individual customer's usage factor can be calculated by dividing their most recent consumption by the average customer consumption for the same period. The formula is as following:

Usage_Factor = Most_Recent_Consumption / Average_Customer_Consumption

Where,

Average_Customer_Consumption = Xs, t = S Yi, s, t ( i = 1,, n)

Where,

Y = Average Hourly Demand for the current segment (Click here to download this file)

t = most recent consumption start date, hour 1 through most recent consumption end date, hour 24

n = number of hours in consumption period t = (most recent consumption end date - most recent consumption start date + 1) * 24

s = customer segment

i = an hour in time period t

Xs, t = Energy (kwh) for time period t in segment s

Yi, s, t = Hourly demand (kw) for hour i in time period t in segment s

Assume the most recent consumption for a customer in the Hypothetical Profile Segment is 400 kwh. The consumption start date is Feb 28, 2001 and the end date is March 25, 2001. Segment Average Hourly Demand over the same period is given in the table found at this link.

Average_customer_consumption over the same period = (0.706 + 0.591 + 0.538 + + 0.745) = 423.2

Usage factor for the customer = 400 / 423.2 = 0.945

The same method can be used to calculate the usage factors for all the 1000 customers in our Hypothetical segment and then the average usage factor for the segment can be derived:

Average usage factor = (0.945 + 1.04 + 0.81 + + 1.21) / 1000 = 0.991

Note this average usage factor is calculated in May and used for June forecast.

 

6.2 Multiply each hourly KW value by the average usage factor.

  X B M Y Customer Usage Factor
Hour Tdb (F) Constant T Coefficient Demand Adjust Adjust
1 73 -1.4928 0.0348 1.05 1050 1041
2 73 -1.4486 0.0334 0.99 990 981
3 72 -1.1465 0.0283 0.89 890 882
4 70 -1.0313 0.0262 0.8 800 793
5 68 -0.6941 0.022 0.8 800 793
6 68 -0.1959 0.0167 0.94 940 932
7 67 -0.304 0.0188 0.96 960 951
8 69 -0.6644 0.0237 0.97 970 961
9 71 -0.9426 0.0274 1 1000 991
10 71 -1.2166 0.0313 1.01 1010 1001
11 72 -1.2595 0.032 1.04 1040 1031
12 73 -1.5369 0.0359 1.08 1080 1070
13 74 -1.9702 0.042 1.14 1140 1130
14 76 -1.878 0.0408 1.22 1220 1209
15 77 -2.2719 0.0461 1.28 1280 1268
16 78 -1.9225 0.043 1.43 1430 1417
17 77 -1.8608 0.0434 1.48 1480 1467
18 77 -2.0341 0.0471 1.59 1590 1576
19 75 -2.1942 0.0496 1.53 1530 1516
20 73 -2.2554 0.0514 1.5 1500 1487
21 72 -1.7843 0.0464 1.56 1560 1546
22 71 -1.5363 0.043 1.52 1520 1506
23 70 -1.5714 0.0411 1.31 1310 1298
24 69 -1.3962 0.0354 1.05 1050 1041

Step 7. Apply losses:

7.1 Losses must be "scaled up" from the point of delivery (POD), which are the end-use customers, to the point of receipt (POR), the point at which energy is delivered to Duke Energy and before it incurs losses.
7.2 Loss Rates
7.2.1 Bulk transmission - 2.23%
7.2.2 Common transmission - 1.0%
7.2.3 Distribution - 3.43%
7.3 Loss Calculation
7.3.1 Supply = (((Load/(1-0.0343))/(1-0.01))/(1-0.0223))
7.3.2 The resulting loss factor is 1.06984, so we can simplify this to:
7.3.3 Supply = Load x 1.06984

 

  X B M Y Customer Usage Factor Loss
Hour Tdb (F) Constant T Coefficient Demand Adjust Adjust Adjust
1 73 -1.4928 0.0348 1.05 1050 1041 1114
2 73 -1.4486 0.0334 0.99 990 981 1050
3 72 -1.1465 0.0283 0.89 890 882 944
4 70 -1.0313 0.0262 0.8 800 793 849
5 68 -0.6941 0.022 0.8 800 793 849
6 68 -0.1959 0.0167 0.94 940 932 997
7 67 -0.304 0.0188 0.96 960 951 1018
8 69 -0.6644 0.0237 0.97 970 961 1029
9 71 -0.9426 0.0274 1 1000 991 1061
10 71 -1.2166 0.0313 1.01 1010 1001 1072
11 72 -1.2595 0.032 1.04 1040 1031 1103
12 73 -1.5369 0.0359 1.08 1080 1070 1146
13 74 -1.9702 0.042 1.14 1140 1130 1209
14 76 -1.878 0.0408 1.22 1220 1209 1294
15 77 -2.2719 0.0461 1.28 1280 1268 1358
16 78 -1.9225 0.043 1.43 1430 1417 1517
17 77 -1.8608 0.0434 1.48 1480 1467 1570
18 77 -2.0341 0.0471 1.59 1590 1576 1687
19 75 -2.1942 0.0496 1.53 1530 1516 1623
20 73 -2.2554 0.0514 1.5 1500 1487 1591
21 72 -1.7843 0.0464 1.56 1560 1546 1655
22 71 -1.5363 0.043 1.52 1520 1506 1613
23 70 -1.5714 0.0411 1.31 1310 1298 1390
24 69 -1.3962 0.0354 1.05 1050 1041 1114

 

Step 8. In order to submit a schedule to Duke Energy Control Area Operations, a schedule in whole MWh must be created.

8.1 Three methods
8.1.1 Rounding
8.1.1.1 Pros - Easy to calculate
8.1.1.2 Cons - May not best account for all MWh in a day.
8.1.2 Truncate and Carry
8.1.2.1   Pros - Closely accounts for all MWh in a day.
8.1.2.2 Cons - May possibly shift the peak hour or other hours.
8.1.3 Combination
8.1.3.1 Pros - Closely accounts for all MWh in a day, and tends to more accurately represent peaks.
8.1.3.2 Cons - More complex to calculate.
8.2 For this example, we will use the Combination method.
8.2.1 Start out by rounding the forecast value in the ROUND column, then we subtract the rounded value from the forecast value and are left with a RESIDUAL value.
8.2.2 This residual is added to the next forecast value in the SUM column.
8.2.3 We round the value in the SUM column, subtract the rounded value from the SUM value and repeat 8.2.2.
8.2.4 The values in the ROUND column are used to create the schedules (eTags) for the delivery of power.

Round, Truncate & Carry
Forecast Round Residual Sum
Hour MW MW MW MW
1 1.114 1 0.114
2 1.050 1 0.164 1.164
3 0.944 1 0.108 1.108
4 0.849 1 -0.043 0.957
5 0.849 1 -0.194 0.806
6 0.997 1 -0.197 0.803
7 1.018 1 -0.178 0.822
8 1.029 1 -0.149 0.851
9 1.061 1 -0.088 0.912
10 1.072 1 -0.017 0.983
11 1.103 1 0.087 1.087
12 1.146 1 0.232 1.232
13 1.209 1 0.442 1.442
14 1.294 2 -0.264 1.736
15 1.358 1 0.094 1.094
16 1.517 2 -0.389 1.611
17 1.570 1 0.181 1.181
18 1.687 2 -0.132 1.868
19 1.623 1 0.491 1.491
20 1.591 2 0.083 2.083
21 1.655 2 -0.262 1.738
22 1.613 1 0.350 1.350
23 1.390 2 -0.260 1.740
24 1.114 1 -0.146 0.854
Sum 29.854 30
 

Back to top

Scheduling Example

As stated previously, the numbers in the "Round" column in the previous table are used to create an hourly schedule for the delivery of energy. This schedule, listed again below and now titled "Schedule," will be used to create an Electronic Tag (eTag). This eTag must be submitted to the Duke Energy Control Area prior to the delivery of power, according to the terms described in the Duke Energy OATT.

 

  Forecast Schedule
Hour MW MW
1 1.114 1
2 1.050 1
3 0.944 1
4 0.849 1
5 0.849 1
6 0.997 1
7 1.018 1
8 1.029 1
9 1.061 1
10 1.072 1
11 1.103 1
12 1.146 1
13 1.209 1
14 1.294 2
15 1.358 1
16 1.517 2
17 1.570 1
18 1.687 2
19 1.623 1
20 1.591 2
21 1.655 2
22 1.613 1
23 1.390 2
24 1.114 1
     
Sum 29.854 30
 
Example of Forecast vs. Schedule:
 

These examples have been given using only one WRF profile segment. Steps 1 through 7 must be completed for each group of customers that fall within a particular WRF segment category (RS5, DM0, DS4, etc.). These examples also do not include forecasts that must be generated for any interval metered customers that a Certified Supplier may have.

Back to top

Exception Handling

As with all mathematical equations, sometimes an input temperature will result in an undesirable value. Exceptions in WRFs are defined as any condition that could result in an invalid load value (negative, zero load, or excessively high number).

Since WRFs represent linear equations regressed against three years of load research sample data, the possibility exists that certain temperature values may exist where:

  1. There is no WRF line segment equation for a given temperature value, a temperature value is below Tmin, or a temperature value exceeds Tmax for the existing WRF line segment.
  2. A given temperature value produces negative results, or; a given temperature value produces load values greater than historical maximums or less than historical minimums.
How to manage these exceptions
  1. Where there is no existing WRF line segment for a given temperature value, the next closest WRF line segment will be used.
  2. Historical power minimum (Pmin) and power maximum (Pmax) for the sample data will be available for each WRF, included with the WRF file. If a temperature value yields a negative result or a result less than the historical minimum, the Pmin value will be used. Likewise, for calculated load values that are greater than historical maximums, the Pmax value will be used.

Back to top