Anda di halaman 1dari 68

7

VEE: Validation, Estimation and Editing

Review From The Fundamentals Course

Copyright 2010, Oracle. All rights reserved.

As Described In The Measurements Chapter Critical Validations Occur Before VEE


MDM
Load Initial Measurement

In the Measurements chapter, you learned


how the preprocessing algorithms on the
IMD seeder BO perform critical validations.
These verify the basic integrity of the IMD.
If critical validations fail, the IMD is created
in the Error state (and VEE does not take
place).
If the critical validations pass, the IMD is
subject to VEE rules. If VEE rules fail, the
IMD is transitioned to the Exception state.

Bottom line - an IMD will not be VEE'ed if


critical validations fail

7-2

Critical
Validation

IMD in Error
Error: Can't find a device with
the identifier

VEE Engine

IMD has Exception(s)


Exception: Too many missing
measurements

Create Final
Measurements

Copyright 2010, Oracle. All rights reserved.

Another Stage Before VEE - Prepare For VEE


MC ID: 1239101

MDM

IMD ID: 12391011912

Load Initial
Measurements

Critical
Validation

After critical validations are


complete, Pre VEE
Consumption is populated
with each interval's
consumption and Post VEE
Consumption is blank

Date/Time

Pre VEE
Consumption

1-Jan-10 3:00pm

1-Jan-10 4:00pm

missing

1-Jan-10 5:00pm

1-Jan-10 6:00pm

An enter algorithm on the Prepare For


VEE stage, the applies the product of
the channel and installation multipliers
to the Pre VEE Consumption and
copies Pre VEE to Post VEE

7-3

MC ID: 1239101
IMD ID: 12391011912

Prepare For
VEE

VEE Engine

Post VEE
Consumption

This example assumes the product


of the channel and installation
multipliers is 1.1 (note, the channel
multiplier is an attribute on the MC,
the installation multiplier is an
attribute on the installation event)

Date/Time

Pre VEE
Consumption

Post VEE
Consumption

1-Jan-10 3:00pm

1.1

1.1

1-Jan-10 4:00pm

missing

missing

1-Jan-10 5:00pm

2.2

2.2

1-Jan-10 6:00pm

3.3

3.3

Copyright 2010, Oracle. All rights reserved.

is intentional
as the
Note, this
pre and post quantities should
be in sync prior to VEE starting

And One More Stage Before VEE


MDM
One last stage needs to be explained - this is the
Additional Mapping stage. The generic IMD business
object has no logic plugged into this stage as it is
intended for:
- Implementations to perform additional
transformations prior to multipliers being applied
- Head-end specific transformations that cannot be
put into the OSB layer because they must take place
after critical validations are complete
Note: the various stages in an IMD's lifecycle allow
different types of logic and validation to be segregated
into logical stages. Any failure results in the IMD
being transitioned into an Error state that corresponds
with the stage where the error occurred. This lifecycle
allows:
- the system to restart where it left off after the cause
of the error is corrected
- administrating users can see the stages where
errors are occurring
- implementations can more easily extend the basepackage by plugging in additional algorithms to the
appropriate stage

7-4

Load Initial
Measurements

Critical
Validation

IMD In Error Due To


Critical Validations

Additional
Mapping

IMD Has A Mapping


Error

Prepare For
VEE

IMD Has A Preparation


Error

VEE Engine

IMD Has VEE


Exceptions

Copyright 2010, Oracle. All rights reserved.

A VEE Group Contains VEE Rules


When an IMD is VEE'ed, the VEE
rules defined in a VEE group are
executed
Some rules create exceptions

Exception
Exception Type: Multiplier changed
IMD ID: 12391011912
Exception: Multiplier was changed to
match master data
Exception Severity: Info

VEE Group: Simple interval


Seq

VEE Rule

10

UOM validation

20

Register multiplier validation

30

Estimate missing intervals

40

Spike check

Other rules override measurements. By convention,


VEE rules change the Post VEE quantities. However, a
VEE rule can change ANYTHING on an IMD.

7-5

Some rules
do both

IMD
MC ID: 1239101
IMD ID: 12391011912
Date/Time

Pre VEE
Measure
ment

Post VEE
Measure
ment

1-Jan-10 3:00pm

14.678

15.1

1-Jan-10 4:00pm

missing

20

1-Jan-10 5:00pm

13.12

13.41

1-Jan-10 6:00pm

150.12

14.12

Copyright 2010, Oracle. All rights reserved.

Effective Dates
Every VEE rule has an effective period
Rules will only be applied if the IMD's start date is within the
rule's effective period
VEE Group: Simple interval
Seq

VEE Rule

Start Date End Date

10

Device identifier validation

1-Jan-2010

20

Register multiplier validation

1-Jan-2010

30

Estimate missing intervals

1-Jan-2010

40

Spike check

15-Nov-2010
This rule will only be applied if the IMD's
start date is on or after 15-Nov-2010

7-6

Copyright 2010, Oracle. All rights reserved.

Eligibility Criteria
A VEE rule may optionally have eligibility criteria that control if the rule is applied

This feature can reduce the number of VEE groups required by an


implementation because it allows a single VEE group to have conditional VEE
rules (rather than requiring a distinct VEE group for every combination of VEE
rules)

VEE Group: Simple interval


Seq

7-7

VEE Rule

Start Date End Date

10

Device identifier validation

1-Jan-2010

20

Register multiplier validation

1-Jan-2010

30

Estimate missing intervals

1-Jan-2010

40

Spike check

50

Verify interval consumption against scalar

60

Compare against normal consumption

Criteria: Apply if the MC has a related scalar confirmation register


Criteria: Apply if the MC installed less than 6 months

This
rule is only applied if the IMD's MC
15-Nov-2010
has a corresponding scalar confirmation
register
15-Nov-2010

15-Nov-2010
This rule is only applied if the MC's device
configuration has been installed at a SP
for less than 6 months

Copyright 2010, Oracle. All rights reserved.

A Rule Can Invoke A Group Of Rules


An implementation can set up a VEE rule that executes the rules in a
different VEE group
This rule executes the rules
in the referenced VEE group

VEE Group: Common Rules


VEE Group: Industrial Interval
VEE Rule
VEE Rule

UOM validation

Execute VEE group Common Rules

Register multiplier validation

Execute VEE group Common Interval Rules


Execute VEE group Common Gas Rules
Criteria: Apply if the service type is gas

VEE Group: Common Interval Rules

This type of VEE rule can have effective dates


and eligibility criteria (just like all VEE rules)
An invoked group can, in turn, execute the rules
in another group (be careful of recursion!)

7-8

VEE Rule
Interval estimation
Execute VEE group Interval Scalar Check
Criteria: Apply if the MC has a scalar check register

Copyright 2010, Oracle. All rights reserved.

A Rule Can Use A Factor (VEE Matrix) To Invoke A


Group Of Rules
Factor: Territory-based VEE Rules
VEE Group: Simple interval
Type of Characteristic: Territory Code
VEE Rule
Device identifier validation
Register multiplier validation
Basic estimation
Basic spike check

Characteristic Value Source: Service Point


Characteristic
Value
NORTH

Northern territory rules

SOUTH

Southern territory rules

EAST

Eastern territory rules

WEST

Western territory rules

Use Territory-based VEE Group Matrix


Compare against normal consumption

VEE Group

Criteria: Apply if the MC installed less than 6 months

This rule references a VEE Group Matrix (i.e., a factor). At


run time, the rule retrieves / derives the characteristic value
for the factor's characteristic type and then finds the VEE
group associated with the respective characteristic value.
In this example, the characteristic value is retrieved from
the SP at which the MC is installed, but it could be
derived / retrieved from anything related to the IMD

7-9

VEE Group: Southern territory rules


VEE Rule
Cold weather special estimation
Criteria: Apply if the IMD start date is between Nov 1 and Apr 30

Cold weather special spike check


Criteria: Apply if the IMD start date is between Nov 1 and Apr 30

Copyright 2010, Oracle. All rights reserved.

Different VEE Groups Can Be Declared For


Different Roles (Sources)
MC Type: Electric Commercial Interval
VEE Role

VEE Group

Initial Load

From Head-end

Estimation

Estimated Interval

Manual
Override

A MC's MC type defines the "fallback" VEE


group to use for different roles (sources)

Manual interval

MC ID: 1234123112
MC Type: Electric Commercial Interval
Head-end: L+G
Serial Number: A1-93818121

An individual MC can have an override VEE


group for each role. If the MC doesn't have
an override VEE group for a role, the fallback
group defined on the MC type is used

Legend
Tran. Data

VEE Role
Initial Load

VEE Group
Safeway's VEE Group

Admin Data
Master Data
FW Data

7 - 10

Copyright 2010, Oracle. All rights reserved.

An IMD Can Have Multiple Exceptions


MDM

Load Initial
Measurements

Date/Time

Initial
Measurement

1-Jan-10 3:00pm

15.1

1-Jan-10 3:15pm

missing

1-Jan-10 3:30pm

14.3

Exception
Exception Type: Multiplier change
IMD ID: 12391011912

VEE Engine

Exception: Multiplier was changed to match


master data
Exception Severity: Info

Exception
Exception Type: Too many missing intervals
IMD ID: 12391011912
Exception: Estimation not allowed due to too
many missing intervals
Exception Severity: Terminate

7 - 11

Copyright 2010, Oracle. All rights reserved.

Multiple exceptions can be created


when an IMD is VEE'ed (so that
users can see all of the problems
detected by the VEE process)

Three Severities
Exception
Exception Type: Multiplier change
IMD ID: 12391011912
Exception: Multiplier was changed to match
master data
Exception Severity: Info

Exception
Exception Type: Large spike

VEE Engine

IMD ID: 12391011912


Exception: Very large spike detected
Exception Severity: Issue

Exception
Exception ID: 1239103
Exception Type: Too many missing intervals
Exception: Estimation not allowed due to too
many missing intervals
Exception Severity: Terminate

7 - 12

The Info severity is used to highlight


something interesting, but not sufficient to
cause the IMD to be put into the exception
state. Exceptions of this severity can be
used to report on the frequency of
interesting, but not fatal issues.
The Issue severity is used to report a
problem that will prevent the IMD from
being finalized. Multiple "issue exceptions"
can be created during VEE. If at least one
issue exists after all rules have been
applied, the IMD is transitioned to the
exception state.

The Terminate severity is used to report a


severe issue that will cause the VEE
process to stop and the IMD to be
transitioned immediately to the exception
state. Only one terminate exception can
be issued (as the first one causes VEE to
stop on an IMD).

Copyright 2010, Oracle. All rights reserved.

2.0.1 Preview - Automated Retry


MDM
Load Initial
Measurements

VEE Engine

The system attempts to re-VEE an IMD when:


- The IMD has Automated Retry set to true (this is populated on the IMD when it
is first created)
- AND the IMD's Next Retry Date/Time is in the past
- AND the IMD's Retry Until Date/Time is in the future (this is populated on the
IMD when it is first created to prevent retry going on forever)
- AND the To Do entry associated with the IMD is not in the Being Worked state
(if a user is working on the IMD, the system assumes it should not retry)

Transition IMD to the


Exception state

Transition IMD to the


Discarded state

As described earlier, a To Do entry highlighting the VEE exception.


- If the implementation indicates the specific VEE exception is not fixable (using
the To Do Type / Message configuration), the To Do entry is not created and the
IMD is transitioned to the discard state.
- If a To Do entry is created, the IMD's Next Retry Date/Time is set to a time X
minutes in the future where X is on an algorithm soft parm.
Complete the IMD

7 - 13

Regardless of the action taken by the user, the


system will complete the To Do entry that was
created when the IMD entered the Exception state

Copyright 2010, Oracle. All rights reserved.

VEE Tables and MOs

7 - 14

Copyright 2010, Oracle. All rights reserved.

Override VEE groups


can be defined on an MC
Reporting
Category

Exception Type
CH, X

A different VEE group can be used


for different roles (IMD source)

MC

MC Type
Override

Open issues are


highlighted on the
UI

IMD

Fallback

MC / Override
VEE Group For
Role

MC Type /
VEE Group For
Role
VEE Group
Role

Open/Closed
VEE Exception
ST, CH, X
Severity

"Terminate" and "Issue"


severities cause the IMD
to be transitioned into
the exception state; the
"Info" severity does not

MC Type /
Valid VEE
Group

VEE rules
can change
an IMD
VEE Group
CH, X

VEE rules
can create
exceptions

VEE groups can be defined for an


MC type rather than each MC

A VEE rule
may execute a
different VEE
group's rules

VEE Rule
CH, X

A VEE group
has rules

VEE Category

An MC may only
reference override
VEE groups defined
on its MC type
A factor must reference a
predefined char type.
The factor must also
define the predefined
char values that have
VEE groups.

Factor
CH

Char Type

Factor / Char
Value

Char Value

Eligibility Criteria
CH, X

A VEE rule can have many eligibility


criteria. Each one can cause the rule to
be skipped, executed, or judgment to be
deferred to the next eligibility criterion.
It's possible to invoke the VEE engine
and limit the execution to rules with a
given category (useful when different
rules should execute during different
stages of an IMD's lifecycle)

7 - 15

Copyright 2010, Oracle. All rights reserved.

VEE Group

Factor Value
CH

Legend
Trans. Data
Admin Data

The VEE group


defined for a given
factor / char value
can change over time

Master Data
FW Data
MO Boundary
Described
elsewhere
ST - Status
CH - Characteristics
X - CLOB

BO Definition

7 - 16

Copyright 2010, Oracle. All rights reserved.

BO Definition Part 1

VEE Group

VEE Rule

Business
Object

Eligibility
Criteria
Business
Object

VEE
Exception

Exception
Type
Legend
Tran. Data
Admin Data
Master Data
FW Data

7 - 17

Copyright 2010, Oracle. All rights reserved.

BO Definition Part 2

Factor
Business
Object

Option

Factor
Value
The factor value's is defined in a
BO option on its factor

Legend
Tran. Data
Admin Data
Master Data
FW Data

7 - 18

Copyright 2010, Oracle. All rights reserved.

The VEE Engine Applies VEE Rules Against


the IMD BO

Copyright 2010, Oracle. All rights reserved.

The VEE Engine

The VEE engine is


invoked by an enter
plug-in

The monitor algorithms transition to the


Exception state if there are issues or terminate
exceptions. If none, the IMD is Finalized (and
the measurements are created).

7 - 20

Copyright 2010, Oracle. All rights reserved.

The VEE Engine Is Dynamically Passed The IMD BO


The VEE engine is supplied basic
information about what VEE group
to use, the effective date to use, and
if only rules of a specific category
should be invoked.
The VEE engine can be invoked
real-time without a persistent IMD.
When invoked in this mode, the
invoker must supply either the MC Id
or other identifier to help the system
find the MC Id.
This raw element is the XML
definition of the IMD; this is what the
VEE rules interrogate and what they
update to fill gaps and smooth
spikes
Recall that VEE rules can create
exceptions

7 - 21

Copyright 2010, Oracle. All rights reserved.

There Are Many VEE Rules

Copyright 2010, Oracle. All rights reserved.

A BO Exists For Every VEE Rule


Because all VEE rules share a common set of
elements, they are developed as child BOs under a
common parent. The comment parent BO simply
defines the elements that are shared by all VEE
rule BOs (there are no business rules defined for it)
The base-package has many VEE rules.
Every type of VEE rule has a BO that defines:
- the algorithm that contains the VEE rule logic
- the type of configuration options that the
algorithm can interpret (e.g., high/low factors)

This standalone data area is included in case


an implementation needs to add common
elements to all VEE rules (the OUAF allows
base-package owned standalone data areas
to be extended and the extensions will survive
future upgrades).

7 - 23

Copyright 2010, Oracle. All rights reserved.

VEE Rule BOs Are Simple


VEE rule BOs are simple, they have:
No lifecycle (and therefore no lifecycle rules)
A plug-in that validates the configuration entered by a user
when they create a new instance of the rule
A plug-in that holds the VEE logic; these plug-ins can
change anything on an IMD and / or create exceptions
The standard display and maintenance UI maps as well as
the navigation option for its maintenance portal

7 - 24

Copyright 2010, Oracle. All rights reserved.

VEE Rule Schemas May Be Simple or Complex


Note: notice how most of the configuration
options are stored in the VEE rule's CLOB (as
XML). This means no table changes are
necessary if an implementation needs to
introduce additional configuration options)

VEE rules without sophisticated


configuration options have simple
schemas (an example from a
device identifier VEE rule)

VEE rules with sophisticated


configuration options have larger
schemas (an example from a hi/low
VEE rule)

7 - 25

Copyright 2010, Oracle. All rights reserved.

Read The Apply VEE Rule Algorithm Type


Description
The best way to learn what a VEE rule does is to navigate to its
Apply VEE Rule algorithm (or its algorithm type) and read its
Detailed Description

7 - 26

Copyright 2010, Oracle. All rights reserved.

Some VEE Rule Algorithm Types Have Soft


Parameters
Some of the more
sophisticated VEE rule
algorithm types have soft
parameters
This is done for
configuration options that
have a high probability of
being the same for every
instance of the rule

For example, the high/low VEE rule algorithm


didn't want to hard code condition code ranges
for different types of measurements. Instead,
the ranges are defined in its Apply VEE Rule
algorithm's soft parameters.

These algorithms are shipped preconfigured and plugged in on their VEE


rules. An implementation will only need
to create new algorithms if they disagree
with the base-package configuration.

7 - 27

Copyright 2010, Oracle. All rights reserved.

A Recap Of Some Estimation Rules

Copyright 2010, Oracle. All rights reserved.

Interval Averaging Estimation


The Interval Averaging Estimation VEE rule estimates missing intervals using the
average values from the same time on similar days and creates exceptions if there
are too many missing intervals or no history
The following sample configuration illustrates this rule's configuration options
These options are described over the upcoming slides

These
options
control how
estimation is
performed
These options control the
type and severity of the
exception created if
estimation issues occur

7 - 29

Copyright 2010, Oracle. All rights reserved.

Interval Averaging Estimation Non Holiday


Logic
If the interval does not fall on a holiday, average
consumption is accumulated by looking for intervals at the
same time as the missing interval until Intervals to Average
is reached (or no more intervals exist) as follows:

Look for interval consumption alternating between


the same day on the previous and next weeks. This
is repeated until the Same Day of Week Scan Range
is reached or until Intervals To Average is reached,
whichever comes first.

If Same Day of Week Scan Range is reached but


Intervals to Average is not, look for measurements
alternating between neighboring days. This is
repeated until the Neighboring Day Scan Range is
reached or until Intervals To Average is reached,
whichever comes first.

If at least one interval is found, calculate the average


amount of consumption and assign it to the missing
interval along with a condition of Condition Value For
Estimates Created

If no intervals were found, do not estimate the


interval and do NOT create an exception

7 - 30

Copyright 2010, Oracle. All rights reserved.

Interval Interpolation Estimation


The Interval Interpolation Estimation VEE rule estimates missing intervals by
interpolating from other measurements in the same IMD; it creates exceptions if
there are too many missing intervals
The following sample configuration illustrates this rule's configuration options
These options are described over the upcoming slides

These
options
control how
estimation is
performed

These options control the


type and severity of the
exception created if
estimation issues occur

7 - 31

Copyright 2010, Oracle. All rights reserved.

Interval Interpolation Estimation Exit Logic


If the IMD's device configuration is not linked to an SP on
the IMD's start date and Estimate if Not Attached to SP is
set to Do Not Estimate, the rule is exited with no
exception
If the IMD is missing more than Maximum Percentage
Missing Intervals, an exception is created using the Max
Percentage Missing Intervals Exception configuration

Missing intervals are identified using the condition


code range defined on the preconfigured
parameters on the VEE rule's algorithm (just like
the prior rule)

The algorithm's parameters also define the


condition code range that identifies intervals that
should not be considered missing (e.g.,
measurements during an outage)
If neither of these conditions is true, processing
continues

7 - 32

Copyright 2010, Oracle. All rights reserved.

Interval Interpolation Estimation Gaps In The Middle Of An IMD


Interpolation "draws a line" across the
gap and this line's shape are the
measurements (in other words, it is a
linear interpolation algorithm)

If a gap of missing intervals is too


wide, the system will not estimate
its consumption. Rather, it will
look for other gaps in the IMD.
These intervals are missing

7 - 33

If there was at least one gap that was skipped after


all of the IMD's gaps are interpolated, an exception
is created using the Maximum Hours Exceeded
exception options

Copyright 2010, Oracle. All rights reserved.

Interval Interpolation Estimation Gaps At The Start Or End Of An IMD


If a gap exists at the beginning or end of the IMD,
the system looks for a final measurement
immediately before (or after) the IMD and uses it to
interpolate the consumption (if the gap isn't too
wide).

In this example, the


final measurement
before the start of the
IMD was approximately
.8 kWh

These intervals are missing

7 - 34

Copyright 2010, Oracle. All rights reserved.

Adjust Intervals To Scalar


The Adjust Interval To Scalar VEE rule changes interval measurements to match the
value recorded on a "scalar check" MC on the same device
It creates an exception if there are too many missing intervals
The following sample configuration illustrates this rule's configuration options
These options are described over the upcoming slides

These options control


how estimation is
performed

7 - 35

Copyright 2010, Oracle. All rights reserved.

These options control the


exceptions that may be
thrown during the adjustment
process

Adjust Intervals To Scalar Exit Logic


If the IMD's MC is not an interval MC, the rule is exited with no
exception
If the IMD's MC does not have a "scalar check" MC, this rule is
exited with no exception
If the IMD's "scalar check" MC does not have a read, this rule is
exited with an insufficient data exception
If neither of these conditions is true, processing continues

7 - 36

Copyright 2010, Oracle. All rights reserved.

Adjust Intervals To Scalar - Processing


If all intervals are adjusted (as per the Intervals to
Adjust option),

If the sum of all intervals is 0, each interval


receives an equal amount from the scalar
read (the scalar consumption is divided by
the number of intervals), in other words, it is
"straight-lined"

If the sum of all intervals is not 0, all intervals


are multiplied by the ratio of:

the consumption from the scalar read


the total of the intervals

If only intervals in a given condition code range are


adjusted, a similar calculation is performed; the only
difference is that the interval consumption from the
excluded intervals is subtracted from the scalar
consumption before it is distributed amongst the
intervals being adjusted

7 - 37

Copyright 2010, Oracle. All rights reserved.

Practice 7-1 (30 Minutes)


In this practice, you will add VEE rules to the VEE group on your electric MCs to do the following:

If the MC has a corresponding scalar check register (yours do not), every interval whose
condition is considered missing should be estimated using the prorated scalar consumption from
the scalar check register

If there are still missing intervals and less than 30% of intervals are missing, any gap of missing
intervals that is <= 4 hours wide should be estimated by interpolating the missing values from the
adjoining intervals

If there are still missing intervals and the percent of missing intervals is less than 30%, all
missing intervals should be estimated using the average value from historic consumption on the
same day and time

If there are still missing intervals and less than 70% of intervals are missing, any gap of missing
intervals that is <= 6 hours should be estimated by interpolating the missing values from the
adjoining intervals (note, this is not a typo, it's an example of retrying a VEE rule after others
have been tried)

If there are still missing intervals (meaning that none of the earlier rules were successful),
terminate VEE with an appropriate exception type.
Please break up into teams and design the admin data necessary to add these VEE rules. Before
adding the rules, please check your configuration using the upcoming slides.
After the admin data is in place, continue following the instructions to create IMDs for your electric MCs

7 - 38

Copyright 2010, Oracle. All rights reserved.

7-1 Data Overview

Device

Device Config.

MC Type

MC

Fallback Vee
Group

Fallback

2
Initial Meas.
Data (IMD)

VEE Group

Legend

1
VEE Rule

Exception Type

Measurement

Trans. Data
Admin Data

Note well: the base-package is not delivered with Exception Types as this data
is use for reporting categorization and each implementation will opt to categorize
exceptions differently.
For the purposes of this practice, the Exception Types in the demo system will
be used (thus saving time on the practice).

7 - 39

Copyright 2010, Oracle. All rights reserved.

Master Data
FW Data
MO Boundary
Described
elsewhere
ST - Status
CH - Characteristics
X - CLOB

7-1 Solution
Add Interval Adjustment From Scalar VEE Rule
VEE Rule

Description

Identifying BO

RW-IAFS

RW - Interval Adjustment
From Scalar

Interval Adjustment
From Scalar

1.1

Navigate to Admin / V / + VEE Group and select


your Electric VEE Group to navigate to the VEE
Group portal. Once there, click the Add link in the
VEE Rules List zone to add a VEE rule to your VEE
group.

The range of condition codes that will be


estimated from the scalar measurement
Any interval that's replaced will have this condition code

If an interval is replaced, an exception


of this type will be created (noticed that
it has a Severity of Information).
7 - 40

Copyright 2010, Oracle. All rights reserved.

7-1 Solution
Add Interval Interpolation VEE Rule
VEE Rule

Description

Identifying BO

RW - Interpolation - First Try

Interval Interpolation
Est

1.2

RW-II1

Click the Add link in the VEE Rules List Dashboard


zone to add another VEE rule to your VEE group

Recall that the range of condition codes that


are considered missing are defined on the
VEE rule's algorithm parameters

The average IMD will not have more the X%


of missing intervals and therefore creating
exceptions for the small number that do will
enable more informative reporting

7 - 41

Copyright 2010, Oracle. All rights reserved.

7-1 Solution
Add Interval Averaging VEE Rule
VEE Rule

Description

Identifying BO

RW-IAVG

RW - Interval Averaging

Interval Averaging
Estimation

1.3

Click the Add link in the VEE Rules List Dashboard


zone to add another VEE rule to your VEE group

This configuration will look for at least 2 "good


intervals" on a similar date/time in the last 3 weeks
(recall that the range of condition codes that are
used to judge the quality of the measurements is
defined on the VEE rule's algorithm parameters)

7 - 42

Copyright 2010, Oracle. All rights reserved.

7-1 Solution
Add Interval Interpolation VEE Rule
VEE Rule

Description

Identifying BO

RW - Interpolation - Second Try

Interval Interpolation
Est

1.4

RW-II2

Duplicate your version of the RW-II2 rule (set the


new rule's sequence to 40).

The average IMD will not have more the X%


of missing intervals and therefore creating
exceptions for the small number that do will
enable more informative reporting

7 - 43

Copyright 2010, Oracle. All rights reserved.

7-1 Solution
Add Another Day's IMDs (With Missing Measurements That Will Be Interpolated)
Your electric device's serial number

2.1

<devices>
<deviceIdentifierNumber>RW-E-CONGEN</deviceIdentifierNumber>
<initialMeasurementData>
Your electric head-end's external ID
<serviceProviderExternalId>RWE</serviceProviderExternalId>
<preVEE>
Your consumed MC's channel ID
<mcIdN>RWA</>
<stDt>2010-01-03-00.00.00</stDt>
<enDt>2010-01-04-00.00.00</enDt>
<msrs>
<mL>
INSTRUCTOR: give this to the students, it's the XML for
<s>1</s>
the next day's worth of measurements for both the
<q>12.12</q>
consumption and generation MCs. The consumed
<fc>501000</fc>
channel has missing measurements that will be
</mL>
estimated by the first interpolation rule.
<mL>
<s>2</s>
The students must change it to define their device
<q>0</q>
identifier number and service provider external id. If
<fc>201000</fc>
they followed the instructions in the device practice, they
</mL>
will not have to change the MC Ids. Note, there are 4

The missing condition


dates that have to be changed (the start and end dates
</msrs>
</preVEE>
for each MC).
</initialMeasurementData>
<initialMeasurementData>
<serviceProviderExternalId>RWE</serviceProviderExternalId>
<preVEE>
Your generated MC's channel ID
<mcIdN>RWB</>

</preVEE>
</initialMeasurementData>
</devices>

7 - 44

Copyright 2010, Oracle. All rights reserved.

<devices>
<deviceIdentifierNumber>RW-E-CONGEN</deviceIdentifierNumber>
<initialMeasurementData>
<serviceProviderExternalId>RWE</serviceProviderExternalId>
<preVEE>
<mcIdN>RWA</mcIdN>
<stDt>2010-01-03-00.00.00</stDt>
<enDt>2010-01-04-00.00.00</enDt>
<msrs>
<mL>
<s>1</s>
<q>1.2</q>
<fc>501000</fc>
</mL>
<mL>
<s>2</s>
<q>0</q>
<fc>201000</fc>
</mL>
<mL>
<s>3</s>
<q>1.4</q>
<fc>501000</fc>
</mL>
<mL>
<s>4</s>
<q>0</q>
<fc>201000</fc>
</mL>
<mL>
<s>5</s>
<q>0</q>
<fc>201000</fc>
</mL>
<mL>
<s>6</s>
<q>1.7</q>
<fc>501000</fc>
</mL>
<mL>
<s>7</s>
<q>2.1</q>
<fc>501000</fc>
</mL>
<mL>
<s>8</s>
<q>2.4</q>
<fc>501000</fc>
</mL>
<mL>
<s>9</s>
<q>1.9</q>
<fc>501000</fc>
</mL>
<mL>
<s>10</s>
<q>1.8</q>
<fc>501000</fc>
</mL>
<mL>
<s>11</s>
<q>1.7</q>
<fc>501000</fc>
</mL>
<mL>
<s>12</s>
<q>1.6</q>
<fc>501000</fc>
</mL>
<mL>
<s>13</s>
<q>1.8</q>
<fc>501000</fc>
</mL>
<mL>
<s>14</s>
<q>2.2</q>
<fc>501000</fc>
</mL>
<mL>
<s>15</s>
<q>2.5</q>
<fc>501000</fc>
</mL>
<mL>
<s>16</s>
<q>2.3</q>
<fc>501000</fc>
</mL>
<mL>
<s>17</s>
<q>2.8</q>
<fc>501000</fc>
</mL>
<mL>
<s>18</s>
<q>2.9</q>
<fc>501000</fc>
</mL>
<mL>
<s>19</s>
<q>3.2</q>
<fc>501000</fc>
</mL>
<mL>
<s>20</s>
<q>3.1</q>
<fc>501000</fc>
</mL>
<mL>
<s>21</s>
<q>1.9</q>
<fc>501000</fc>
</mL>
<mL>
<s>22</s>
<q>1.8</q>
<fc>501000</fc>
</mL>
<mL>
<s>23</s>
<q>1.7</q>
<fc>501000</fc>
</mL>
<mL>
<s>24</s>
<q>1.6</q>
<fc>501000</fc>
</mL>
</msrs>
</preVEE>
</initialMeasurementData>
<initialMeasurementData>
<serviceProviderExternalId>RWE</serviceProviderExternalId>
<preVEE>
<mcIdN>RWB</mcIdN>
<stDt>2010-01-03-00.00.00</stDt>
<enDt>2010-01-04-00.00.00</enDt>
<msrs>
<mL>
<s>1</s>
<q>0</q>
<fc>501000</fc>
</mL>
<mL>
<s>2</s>
<q>0</q>
<fc>501000</fc>
</mL>
<mL>
<s>3</s>
<q>0</q>
<fc>501000</fc>
</mL>
<mL>
<s>4</s>
<q>0</q>
<fc>501000</fc>
</mL>
<mL>
<s>5</s>
<q>0</q>
<fc>501000</fc>
</mL>
<mL>
<s>6</s>
<q>0</q>
<fc>501000</fc>
</mL>
<mL>
<s>7</s>
<q>.5</q>
<fc>501000</fc>
</mL>
<mL>
<s>8</s>
<q>.7</q>
<fc>501000</fc>
</mL>
<mL>
<s>9</s>
<q>1</q>
<fc>501000</fc>
</mL>
<mL>
<s>10</s>
<q>1.1</q>
<fc>501000</fc>
</mL>
<mL>
<s>11</s>
<q>1.5</q>
<fc>501000</fc>
</mL>
<mL>
<s>12</s>
<q>2</q>
<fc>501000</fc>
</mL>
<mL>
<s>13</s>
<q>1.8</q>
<fc>501000</fc>
</mL>
<mL>
<s>14</s>
<q>2.7</q>
<fc>501000</fc>
</mL>
<mL>
<s>15</s>
<q>2</q>
<fc>501000</fc>
</mL>
<mL>
<s>16</s>
<q>.5</q>
<fc>501000</fc>
</mL>
<mL>
<s>17</s>
<q>.3</q>
<fc>501000</fc>
</mL>
<mL>
<s>18</s>
<q>0</q>
<fc>501000</fc>
</mL>
<mL>
<s>19</s>
<q>0</q>
<fc>501000</fc>
</mL>
<mL>
<s>20</s>
<q>0</q>
<fc>501000</fc>
</mL>
<mL>
<s>21</s>
<q>0</q>
<fc>501000</fc>
</mL>
<mL>
<s>22</s>
<q>0</q>
<fc>501000</fc>
</mL>
<mL>
<s>23</s>
<q>0</q>
<fc>501000</fc>
</mL>
<mL>
<s>24</s>
<q>0</q>
<fc>501000</fc>
</mL>
</msrs>
</preVEE>
</initialMeasurementData>
</devices>

7-1 Solution
Navigate To The Consumption IMD
2.2

If you select Pre VEE and reload, you can


compare the post VEE quantities (the green
line) to the pre VEE quantities (the area)

Notice that the missing intervals are estimated

7 - 45

Copyright 2010, Oracle. All rights reserved.

7-1 Solution
360 View - Measuring Component
2.3

If you return to 360 for the consumption MC and open the


IMD overlay zone and then click Reload Initial Measurements
Using Pre-VEE you'll see how the pre VEE quantities were
zero and the final quantities are the estimated values (in fact,
you can see that this is a true interpolation)

7 - 46

Copyright 2010, Oracle. All rights reserved.

Eligibility Criteria

Copyright 2010, Oracle. All rights reserved.

Eligibility Criteria
Recall that a VEE rule can
optionally have eligibility criteria
that control if the rule is skipped or
applied
If a rule does not have
eligibility criteria, it is applied
The base-package eligibility
criteria BO compares a field value
to a user-defined value and returns
true, false or insufficient data
The VEE engine uses the
returned value to skip the
rule, apply the rule, defer the
decision to the next rule, or
throw an error

This configuration will cause the


related VEE rule to be applied if the
IMD's MC type is scalar

7 - 48

Copyright 2010, Oracle. All rights reserved.

Criteria Field Value Retrieval Algorithm


The field retrieval algorithm referenced on the
criterion is what retrieves the value to
compare
The adjacent example references an
algorithm that retrieves the Interval / Scalar
Indicator from the MC Type linked to the
IMD's MC
Because an algorithm is responsible for
retrieving the value, virtually anything can be
retrieved / computed. For example,

The head-end system (from the


device)

The type of customer (from the US)

The geographic area (from the SP)

The number of tamper events in the


last 6 months

The number of spikes in the last 3


months

(limited only by your imagination)

7 - 49

An entry appears in the dropdown for every


algorithm whose algorithm type references the
VEE Eligibility Criteria - Criteria Field algorithm
entity

Copyright 2010, Oracle. All rights reserved.

Base Package
Algorithm Types
The base-package is supplied with
algorithm types that retrieve field
values from the IMD or objects related
to the MC
Implementations must configure
algorithms for every field that they plan
to compare in their eligibility criteria

Because the base-package


cannot know every element that
implementations will want to
compare
These types of algorithms are easy to
configure as they simply require:

The name of the BO to read (it's


very wise to reference a BO with
a limited number of elements)

The name of the element on the


BO to retrieve
7 - 50

Copyright 2010, Oracle. All rights reserved.

More Sophisticated Field Values


If a new criteria field value algorithm TYPE is required (e.g., because
the field value needs to be computed using some idiosyncratic logic):
Create a VEE Eligibility Field Value algorithm / algorithm type
combination that references a program that does the work:
If this rule is used exclusively by low volume rules (e.g., an
industrial-only rule), it can be written in scripting / xpath2 OR in Java
If this is used by the mass market / high volume rules, it should be
written in Java

7 - 51

Copyright 2010, Oracle. All rights reserved.

More Sophisticated Types of Comparison


If comparison criteria other than =, <>, <, >, <=, >=, Between, or In are
needed, an implementation should create a new Eligibility Criteria BO
This is not anticipated on many implementations
This BO is simple:
A new plug-in whose logic contains the criteria
A maintenance UI map that is presented when users add this
type of criterion to a VEE rule
The name of the portal on which the criteria is displayed (the VEE
rule portal is where criteria are displayed)

7 - 52

Copyright 2010, Oracle. All rights reserved.

Practice 7-2 (30 Minutes)


In this practice, you will add VEE rules to the VEE group on your electric-consumed MC to do the
following:

If an IMD on your electric consumed MC has a spike that exceeds 70%, the spike should be
treated as "missing" (i.e., it should be estimated by the various estimation rules defined earlier)

If an IMD on your electric generated MC has a spike that exceeds 100%, the spike should be
treated as "missing" (i.e., it should be estimated by the various estimation rules defined earlier)
Please break up into teams and design the admin data necessary to add these VEE rules. Before
adding the rules, please check your configuration using the upcoming slides.
After the admin data is in place, continue following the instructions to create IMDs for your electric MCs

Hint - a measurement condition for a spike that is


treated as missing has been added to the demo
system. Also remember that missing intervals (i.e.,
those whose condition code is in a range) will be
estimated by the rules already on your VEE group.

7 - 53

Copyright 2010, Oracle. All rights reserved.

7-2 Data Overview

Device

Device Config.

MC Type

MC

Fallback Vee
Group

Fallback

5
Initial Meas.
Data (IMD)

VEE Group

Legend

3
VEE Rule

Exception Type

Measurement

Trans. Data
Admin Data

Eligibility Criteria

Master Data
Algorithm
FW Data
MO Boundary
Described
elsewhere
ST - Status
CH - Characteristics
X - CLOB

7 - 54

Copyright 2010, Oracle. All rights reserved.

7-2 Solution
Add A VEE Eligibility Criteria Field Algorithm
1

Algorithm

Description

RW-GETMCTYPE

RW - Retrieve MC's Type

Navigate to Admin / A / + Algorithm and add an


algorithm as shown. Note, you might find it easier to
add new algorithms by using the algorithm type context
menu on the Algorithm Type page (after finding the
appropriate algorithm type using the Algorithm Entity
search filter).

There is a LITE BO mapped to the MC MO with an


element that holds the MC's MC type. It's ALWAYS
BETTER to use a LITE BO to retrieve information as
the OUAF will only retrieve the elements in the BO's
schema; if you used a BO that had every element on
the MC, this would be a waste of processing and IO.

7 - 55

Copyright 2010, Oracle. All rights reserved.

7-2 Solution
Add Spike Check Exception Types
2

Exception Type

Description

Identifying BO

RW-INFOSPIKE-70

RW - VEE Spike Exceeds


70% - Info Only

Exception Type

RW-INFOSPIKE-100

RW - VEE Spike Exceeds


100% - Info

Exception Type

7 - 56

Copyright 2010, Oracle. All rights reserved.

Navigate to Admin / E / +
Exception Type and add the
exception types as shown

7-2 Solution
Add A Spike Check VEE Rule For The Consumed Channel
3

VEE Rule

Description

Identifying BO

RW-SC-CON

RW - Consumption Spike
Check

Interval Spike Check

Add another VEE rule to your VEE


group

This rule should be sequenced so it


executes before the estimation rules

The base-package spike check algorithm


requires at least 3 measurements to perform
a spike check as it uses the top 3
measurements in its check
This will set the post VEE condition code of
any spike with this value (recall that the
existing rules will then try to estimate the
condition)

Use the appropriate exception type


This must be set to Information as otherwise the
VEE engine will eventually transition the IMD to the
exception state
7 - 57

Copyright 2010, Oracle. All rights reserved.

7-2 Solution
Add Eligibility Criteria For The VEE Rule
4

Eligibility
Sequence

Description

Identifying BO

10

RW - Consumption Spike
Check

Interval Spike Check

After adding the VEE rule, you be


transferred to the VEE Rule Portal. Use
the Add link in the Eligibility Criteria List
zone to add the following criteria.

This is the algorithm you just added

This is the MC type of the consumed channel

The rule will be applied if the MC


linked to IMD has the MC type defined
above

7 - 58

Copyright 2010, Oracle. All rights reserved.

7-2 Solution
Add A Spike Check VEE Rule For The Generated Channel
3

VEE Rule

Description

Identifying BO

RW-SC-GEN

RW - Generation Spike Check

Interval Spike Check

7 - 59

Duplicate the consumed VEE rule for


the generated channel (set its
execution sequence to 6 when
prompted in the Duplicate window).
After it is duplicated, edit it to look as
follows.

Copyright 2010, Oracle. All rights reserved.

7-2 Solution
Edit The Eligibility Criteria For The Generate Rule
4

Edit the eligibility criteria on the generated rule to look as follows so


that this rule is only applied against MC with your generated MC type

This is the MC type of the generated channel

7 - 60

Copyright 2010, Oracle. All rights reserved.

7-2 Solution
Checkpoint

Please confirm that your VEE group


looks as follows

7 - 61

Copyright 2010, Oracle. All rights reserved.

7-2 Solution
Add Another Day's IMDs (With Spikes)
Your electric device's serial number

5.1

<devices>
<deviceIdentifierNumber>RW-E-CONGEN</deviceIdentifierNumber>
<initialMeasurementData>
Your electric head-end's external ID
<serviceProviderExternalId>RWE</serviceProviderExternalId>
<preVEE>
Your consumed MC's channel ID
<mcIdN>RWA</>
<stDt>2010-01-04-00.00.00</stDt>
<enDt>2010-01-05-00.00.00</enDt>
<msrs>
<mL>
<s>1</s>
INSTRUCTOR: give this to the students, it's the XML for
<q>12.12</q>
the next day's worth of measurements for both the
<fc>501000</fc>
consumption and generation MCs. Both channels have
</mL>
spikes that will be smoothed.
<mL>
<s>8</s>
The students must change it to define their device
<q>24</q>
<fc>501000</fc>
identifier number and service provider external id.
</mL>
A spike exists for both

</msrs> channels
</preVEE>
</initialMeasurementData>
<initialMeasurementData>
<serviceProviderExternalId>RWE</serviceProviderExternalId>
<preVEE>
Your generated MC's channel ID
<mcIdN>RWB</>

</preVEE>
</initialMeasurementData>
</devices>

7 - 62

Copyright 2010, Oracle. All rights reserved.

<devices>
<deviceIdentifierNumber>RW-E-CONGEN</deviceIdentifierNumber>
<initialMeasurementData>
<serviceProviderExternalId>RWE</serviceProviderExternalId>
<preVEE>
<mcIdN>RWA</mcIdN>
<stDt>2010-01-04-00.00.00</stDt>
<enDt>2010-01-05-00.00.00</enDt>
<msrs>
<mL>
<s>1</s>
<q>1.2</q>
<fc>501000</fc>
</mL>
<mL>
<s>2</s>
<q>0</q>
<fc>201000</fc>
</mL>
<mL>
<s>3</s>
<q>1.4</q>
<fc>501000</fc>
</mL>
<mL>
<s>4</s>
<q>0</q>
<fc>201000</fc>
</mL>
<mL>
<s>5</s>
<q>0</q>
<fc>201000</fc>
</mL>
<mL>
<s>6</s>
<q>1.7</q>
<fc>501000</fc>
</mL>
<mL>
<s>7</s>
<q>2.1</q>
<fc>501000</fc>
</mL>
<mL>
<s>8</s>
<q>24</q>
<fc>501000</fc>
</mL>
<mL>
<s>9</s>
<q>1.9</q>
<fc>501000</fc>
</mL>
<mL>
<s>10</s>
<q>1.8</q>
<fc>501000</fc>
</mL>
<mL>
<s>11</s>
<q>1.7</q>
<fc>501000</fc>
</mL>
<mL>
<s>12</s>
<q>1.6</q>
<fc>501000</fc>
</mL>
<mL>
<s>13</s>
<q>1.8</q>
<fc>501000</fc>
</mL>
<mL>
<s>14</s>
<q>2.2</q>
<fc>501000</fc>
</mL>
<mL>
<s>15</s>
<q>2.5</q>
<fc>501000</fc>
</mL>
<mL>
<s>16</s>
<q>2.3</q>
<fc>501000</fc>
</mL>
<mL>
<s>17</s>
<q>2.8</q>
<fc>501000</fc>
</mL>
<mL>
<s>18</s>
<q>2.9</q>
<fc>501000</fc>
</mL>
<mL>
<s>19</s>
<q>3.2</q>
<fc>501000</fc>
</mL>
<mL>
<s>20</s>
<q>3.1</q>
<fc>501000</fc>
</mL>
<mL>
<s>21</s>
<q>1.9</q>
<fc>501000</fc>
</mL>
<mL>
<s>22</s>
<q>1.8</q>
<fc>501000</fc>
</mL>
<mL>
<s>23</s>
<q>1.7</q>
<fc>501000</fc>
</mL>
<mL>
<s>24</s>
<q>1.6</q>
<fc>501000</fc>
</mL>
</msrs>
</preVEE>
</initialMeasurementData>
<initialMeasurementData>
<serviceProviderExternalId>RWE</serviceProviderExternalId>
<preVEE>
<mcIdN>RWB</mcIdN>
<stDt>2010-01-04-00.00.00</stDt>
<enDt>2010-01-05-00.00.00</enDt>
<msrs>
<mL>
<s>1</s>
<q>0</q>
<fc>501000</fc>
</mL>
<mL>
<s>2</s>
<q>0</q>
<fc>501000</fc>
</mL>
<mL>
<s>3</s>
<q>0</q>
<fc>501000</fc>
</mL>
<mL>
<s>4</s>
<q>0</q>
<fc>501000</fc>
</mL>
<mL>
<s>5</s>
<q>0</q>
<fc>501000</fc>
</mL>
<mL>
<s>6</s>
<q>0</q>
<fc>501000</fc>
</mL>
<mL>
<s>7</s>
<q>.5</q>
<fc>501000</fc>
</mL>
<mL>
<s>8</s>
<q>14</q>
<fc>501000</fc>
</mL>
<mL>
<s>9</s>
<q>1</q>
<fc>501000</fc>
</mL>
<mL>
<s>10</s>
<q>1.1</q>
<fc>501000</fc>
</mL>
<mL>
<s>11</s>
<q>1.5</q>
<fc>501000</fc>
</mL>
<mL>
<s>12</s>
<q>2</q>
<fc>501000</fc>
</mL>
<mL>
<s>13</s>
<q>1.8</q>
<fc>501000</fc>
</mL>
<mL>
<s>14</s>
<q>2.7</q>
<fc>501000</fc>
</mL>
<mL>
<s>15</s>
<q>2</q>
<fc>501000</fc>
</mL>
<mL>
<s>16</s>
<q>.5</q>
<fc>501000</fc>
</mL>
<mL>
<s>17</s>
<q>.3</q>
<fc>501000</fc>
</mL>
<mL>
<s>18</s>
<q>0</q>
<fc>501000</fc>
</mL>
<mL>
<s>19</s>
<q>0</q>
<fc>501000</fc>
</mL>
<mL>
<s>20</s>
<q>0</q>
<fc>501000</fc>
</mL>
<mL>
<s>21</s>
<q>0</q>
<fc>501000</fc>
</mL>
<mL>
<s>22</s>
<q>0</q>
<fc>501000</fc>
</mL>
<mL>
<s>23</s>
<q>0</q>
<fc>501000</fc>
</mL>
<mL>
<s>24</s>
<q>0</q>
<fc>501000</fc>
</mL>
</msrs>
</preVEE>
</initialMeasurementData>
</devices>

7-2 Solution
Navigate To 360 MC And Open The IMD Overlay Zone
5.2

Notice that the spike was smoothed

Click Reload Initial Measurements Using


Pre-VEE to change the area to reflect the
pre VEE values

7 - 63

Copyright 2010, Oracle. All rights reserved.

7-2 Solution
Navigate To The Consumption IMD
5.3

If you select Pre VEE and reload, you can


compare the post VEE quantities (the green
line) to the pre VEE quantities (the area)

Notice that the smoothed spike

7 - 64

Copyright 2010, Oracle. All rights reserved.

7-2 Solution
Navigate To The IMD's Log
5.4

Notice the spike exception, click


the Broadcast to see more info

??? Bug notes: The Exception Status should be Closed and


the Scalar Check should not be creating a VEE exception as
there is no scalar check meter on the IMD

The exception can be used for reporting

7 - 65

Copyright 2010, Oracle. All rights reserved.

One Last Reminder - Post VEE Is Normalized

Copyright 2010, Oracle. All rights reserved.

Refresher: An Enter Algorithm Insert / Updates


Final Measurements

Recall that an Enter algorithm on the final state


is responsible for deriving other values (if any)
and then normalizing the final measurements.
If a replacement IMD is normalized, the related
measurements will be updated (or skipped)
depending on how the normalization
algorithm's parameters are configured
Final Measurement
Date/Time

7 - 67

As
Measured

Loss
Adjusted

Thermal
Unit

UOM: CCF
SQI: nil

UOM: CCF
SQI: Loss
Adjusted

UOM: BTU
SQI: nil

1-Jan-10 3:00pm

10

10.1

10.11

1-Jan-10 4:00pm

15

15.15

15.165

1-Jan-10 5:00pm

10

10.1

10.11

Copyright 2010, Oracle. All rights reserved.

Review Questions

7 - 68

Copyright 2010, Oracle. All rights reserved.

Anda mungkin juga menyukai