Configuring Promotions and Promotional Causal Factors

This chapter describes how to configure promotions and promotional causal factors in the Business Modeler.

This chapter covers the following topics:

Base Behavior

The Demantra installer automatically defines the following required promotion levels:

the picture is described in the document text

These levels have the following purposes:

Level Purpose Permitted Customization
Promotion Defines the promotions themselves. This level must define all the possible attributes that can be associated with promotions.
This level must include the Population attribute, which specifies the item-location combinations and the time span with which the promotion is associated.
Add attributes only.
Promotion Status Controls the following:
Whether the promotion is used in forecasting.
Whether users can edit the promotion.
How DSM uses the promotion.
See "Promotion Status".
 
Promotion Type    
Scenarios Provides optional organizational structure, for the benefit of users, particularly within a worksheet. Any change is allowed.
Optimization Goal For use by the Promotion Optimization module only; see the Oracle Demantra Release Notes.
Plans Provides optional organizational structure, for the benefit of users, particularly within a worksheet. Any change is allowed.

Promotion Status

The values of Promotion Status are as follows:

Meaning
Status In forecasts In worksheets In DSM
Unplanned The Analytical Engine does not consider this promotion. Users can edit the promotion. DSM considers this promotion to be uncommitted.
Planned The Analytical Engine does consider this promotion.
Committed The user who committed this promotion can edit it. DSM considers this promotion to be committed
Running Nobody can edit the promotion. The promotion is currently running.
Unmatched The promotion has ended but has not yet been matched to an invoice.
Matched The promotion has ended and has been matched to an invoice.

For information on DSM, see the Oracle Demantra Deduction and Settlement Management User's Guide.

Customizing the Promotion Levels

You typically customize the promotion levels by adding attributes, although other changes are also permitted; see "Base Behavior". To customize the promotion levels, you use the Business Modeler.

You should also configure the Activity Browser of the worksheets, which displays a hierarchy of promotions. The Activity Browser has the same structure for all worksheets. To configure it, you use the Business Modeler.

For information, see "Configuring the Activity Browser"

Loading Historical Promotions

To load historical promotions, use the Integration Interface Wizard, described in "Series and Level Integration". Create and execute an integration interface that loads both the promotion members (via a level profile) and any promotion data (via a data profile).

How the Analytical Engine Uses Promotions

The Analytical Engine does not directly use the promotions for forecasting. Instead, it converts their attributes to promotional causal factors, which it then converts to normal causal factors.

In this process, it uses the configuration information that you provide in the Business Modeler. For each promotional causal factor, the key options are as follows:

It is important to understand how the Analytical Engine uses these options. The following sections describe how the Analytical Engine starts with promotions and converts them to causal factors. For more details on the engine flow, see "Engine Details".

These options use expressions that refer to promotion data. Note that these expressions can refer only to the tables that are used by the levels within the hierarchy of the analytical general level (promotion). For example: promotion_data or promotion.

For information on setting these options, see "Configuring Promotional Causal Factors".

Kinds of Attributes

In this discussion, it is useful to consider the general kinds of promotional attributes that the Analytical Engine can use:

Step 1: Aggregate Promotion Attributes to the LPL

The lowest promotion level (LPL) is a level in the forecast tree. Specifically, it is the lowest level at which promotions can have different attribute values from other, and it must be at or below the minimum forecast level.

The Analytical Engine retrieves the promotional causal factor data and aggregates it to the LPL, as specified by the Column Name Expression. You use an aggregating expression like the following example:

max(promotion_data.discount)

Note: As with all the options discussed here, the expression can refer only to tables that are used by the levels within the hierarchy of the analytical general level (promotion). For example: promotion_data or promotion.

As a general rule, an expression that uses the max function is probably appropriate in most cases, because promotions should have the same attribute values below the LPL, by definition.

Step 2: Applying Filters

Sometimes you need to convert one set of promotional causal factor data into multiple causal factors. To do so, you use a Filter expression, an aggregating expression that evaluates to true or false. The promotional causal factor uses only the data for which the expression is true. You typically create multiple promotional causal factors, each with a different filter expression that uses a different part of the source data.

For example, consider the following promotional data. This table contains one row for each promotion for a given combination and time bucket. (For simplicity, the table shows only one combination, one time bucket, and three promotions.) The promotion_data table shows values of attributes (promo_type and discount) associated with those promotions.

Item Location Date Promotion Promo_type Discount
100 333 1 214 1 15
100 333 1 296 2 5
100 333 1 340 3 10

Suppose that we have configured the following promotional causal factors:

Factor Name Column Name Expression
Special Discount max(promotion_data.discount) max(promotion_data.promo_type=3)
Discount max(promotion_data.discount) max(promotion_data.promo_type<>3)

Internally, Demantra would convert the promotion attributes to the following promotional causal factors:

Item Location Date Promotion Special Discount Discount
100 333 1 214 0 15
100 333 1 296 0 5
100 333 1 340 10 0

Step 3: Transposing Promotion Attributes

Next, the Analytical Engine considers the Transpose by Column setting, which you use for qualitative promotion attributes. This setting converts a single promotion attribute into multiple causal factors. For quantitative or Boolean attributes, specify 0, which means that Promotion Effectiveness can use the attributes as casual factors in their present form.

For example, suppose that promotions use different "delivery types," which correspond to different mechanisms such as circulars, extra product samples, coupons, and so on. Each of these mechanisms might have a different affect on sales. Suppose we have the following example data in the promotion_data table:

Item Location Date Promotion Delivery_type
150 344 1 214 4
150 344 1 296 5
150 344 1 340 6

Because delivery_type is a qualitative attribute, it is generally appropriate to transpose it. We could configure a Delivery Type promotional causal factor, as follows:

Factor Name Column Name Expression Filter Transpose by Column
Delivery Type max(promotion_data.Delivery_type) null max(promotion_data.Delivery_type)

Note that Transpose by Column must be an aggregating expression.

Using this configuration data, Demantra would internally convert the preceding promotion attributes into the following set of promotional causal factors:

Item Location Date Promotion Delivery Type(4) Delivery Type(5) Delivery Type(6)
150 344 1 214 4 0 0
150 344 1 296 0 5 0
150 344 1 340 0 0 6

You may want to transpose by a promotion attribute (as in this example) or by members of a level in the promotion hierarchy.

Note: If you use the members of a level to transpose an attribute, be sure to first filter out the default member (which has an ID of 0) of that level.

Step 4: Merging Across Promotions

Next the Analytical Engine uses the Merge Function setting, which describes how to merge promotional causal factors that occur on the same date at the same item-location combination (thus merging across all the promotions for that combination and date).

For Merge Function, you can choose one of the functions provided by Business Modeler.

The way that you merge depends upon the meaning of the data in the promotional causal factor. For example, if you have multiple discounts on the same date, you would want to merge them by the compound rule (so that 10% and 20% are merged to 28%).

Step 5: Aggregating Attributes within the IGL

The influence group level (IGL) is another level in the forecast tree. The Analytical Engine uses this level to simplify the computational problem. It creates the following three historical promotional causal factors for each node in the forecast tree:

self Influence on this node caused by attributes on this node
own Influence on this node caused by other nodes within the same IG
other Influence on this node caused by all other IGs within the IR

In this last step, the Analytical Engine uses the Aggregation Function option, which describes how to aggregate the promotional causal factor to the IGL.

Note: The Analytical Engine uses the same option whenever it needs to aggregate to higher levels for forecasting purposes.

For Aggregation Function, you can choose one of the functions provided by Business Modeler.

Configuring Promotional Causal Factors

This section describes how to configure promotional causal factors. You can do most of the work within the Business Modeler, but it is necessary to go into the database for the final steps.

Note: Causals participating in Optimization require these additional settings

Note: The engine only evaluates causals with direct effect. Causals with indirect effects are not evaluated.

Analytical Recommendations

To configure promotional causal factors

  1. Click Engine > Forecast Tree. Or click the Forecast Tree button.

  2. Click Next repeatedly until you reach the Promotional Causal Factors screen.

    Each row in this screen specifies a promotional causal factor.

  3. To add a new promotional causal factor for Promotion Effectiveness, click Add.

    A new line is added.

  4. Describe the promotional causal factor by specifying the following:

    Factor Name Name of the promotional causal factor. This name should consist only of alphanumeric characters.
    Column Name Expression An expression that retrieves the causal factor (promotional attribute) data and aggregates it to the LPL. For example:
    max(promotion_type.is_ad)
    An expression that uses the max function is probably appropriate in all cases, because promotions should have the same attribute values below the LPL, by definition. See "Step 1: Aggregate Promotion Attributes to the LPL".
    Filter An aggregating expression that returns the true or false value. This expression filters out promotion data that should not be used for this promotional causal factor; that is, the promotional causal factor uses only the rows for which this expression returns true. See "Step 2: Applying Filters".
    Transpose by Column An aggregating expression that returns the values by which the data is to be transposed. You usually transpose an attribute only if it is qualitative. To avoid transposing, use the value 0.
    See "Step 3: Transposing Promotion Attributes".

    Note: If you use the members of a level to transpose an attribute, be sure to first filter out the default member (which has an ID of 0).

    Merge Function Specifies how Oracle Demantra should internally merge promotions of the same kind that apply to the same item, location, and time. Click one of the following:
    • Compound (Use only for numeric causal factors. All values must be greater than or equal to 0 and less than 1; otherwise, this function throws an error.)

    • WAVR (Weighted average. Use only for numeric causal factors. If you use this option, also specify Merge Function Column.)

    • Boolean (Use for boolean causal factors or for transposed causal factors.)


    See "Step 4: Merging Across Promotions".
    Merge Function Column Applies only if you select WAVR for the merge function. Specifies the weights to use when performing a weighted average.
    The preceding expressions can refer only to the tables that can be logically linked to levels within the hierarchy of the analytical general level (promotion). For example: promotion_data or promotion
    Causal From Expression Specifies which tables the causal will be referencing. Should include all tables referenced in Column Name Expression, Filter and Transpose.
    Causal Where Expression Should only be used if Causal From Expression is populated. Specifies logical links between tables defined in Causal From Expression to promotion and promotion_data tables. For example promotion_data.promotion_type_id = promotion_type.promotion_type_id and promotion_data.promotion_id=promotion.promotion_id
    Aggregation Function Specifies how Demantra should internally aggregate this promotional causal factor across combinations, whenever it is necessary do so. Click one of the following:
    • WAVR (Weighted Average. For the weights, Demantra uses the stored proportions of the combinations)

    • Boolean (Typically you use this if you have transposed a causal factor.)

    • Sum


    See "Step 5: Aggregating Attributes within the IGL".
    Priority Ignore this field.
    Influence Specifies the effect of this promotional causal factor on other members. Click one of the following options:
    • Has effect on other members (this causal factor can affect other combinations, in addition to the combinations with which it is associated)

    • Has direct effect only (this causal factor affects only the specific combinations with which it is associated)

    • Has only indirect effect (this causal factor affects only the combinations with which it is not associated)

  5. Describe how the Analytical Engine should use this promotional causal factor. To do so, specify the following values:

    Short Usually you enable this check box only for the following global causal factors: Constant, t, d1, ... d12. See "Causal Factors and Engine Models".
    Long Usually you enable this check box for all causal factors. See "Causal Factors and Engine Models".
    Multiplicative Group 1, Multiplicative Group 2 Ignore these options, which do not affect promotional causal factors.
     
    Non Seasonal Enable this check box if the data associated with this causal factor is not known to be a predictable function of time. For example, price varies with time, but randomly, so price should be flagged as non seasonal. See "Causal Factors and Engine Models".
    Self Shape Indicator Enable this check box if this promotion causal factor should be represented as a shape. See "About Promotion Shape Modeling".
    IG Shape Indicator Enable this check box if this promotion causal factor should be represented via shape modeling when it is aggregated to the IGL.
    Omit Seasonal Enable this check box if you want to nullify values of the global seasonal causal factors for the time buckets during which the causal factor occurs. Specifically this refers to the causal factors d1—d12 or d1—d7 and m1—m12. For example, if you have monthly data and you omit seasonal effects for a given causal factor Promo1, that means that Demantra switches off the causal factors for the duration of Promo1.
    By omitting seasonal effects, you enable Demantra to capture the promotion shape more clearly for the shape analysis. This option is suitable only if you expect the effect of this causal factor to be much stronger than the seasonal effects.
    If causal factors overlap each other, then Demantra gives precedence to the causal factor that you have flagged to omit seasonal effects.
    Num Shapes Specify the maximum number of allowed shape causal factors for the engine to use for a given node in the forecast tree, for this promotional causal factor. Use an integer from 0 to 8, inclusive.
  6. Click Validate to check the validity of the configuration.

  7. Click Save.

  8. Now you can return to previous dialog boxes to make further changes. Or click Finish to exit.

Adjusting the Promotion Dates

By default, Promotion Effectiveness assumes that a promotion has an effect between its start and end dates, as provided to Oracle Demantra. Typically the promotion has an actual effect in a slightly different span of time, as in the following example:

the picture is described in the document text

You can adjust the dates used by the Analytical Engine in two complementary ways:

Typically you also set the ShiftPromoMaxValue parameter, to make sure that you adjust the dates of promotions in the near future (rather than adjusting only historical promotions).

See also

"How the Analytical Engine Uses Promotions"

"Configuring Global and Local Causal Factors"

"Deleting a Causal Factor"

About Promotion Shape Modeling

In shape modeling, you capture the profile of the demand over the duration of a promotion. The Analytical Engine models the overall demand as a linear combination of Oracle proprietary shapes, as many as eight shapes; this information replaces the normal causal factor that would have been used instead. The Analytical Engine automatically associates a different shape with each value of the promotional attribute that uses shape modeling. The Analytical Engine calculates the coefficients for each shape, for each relevant combination.

Note: The feature described here is available in addition to activity shape modeling; see "About Activity Shape Modeling".

When to Enable Shape Modeling

You should enable shape modeling only if the following are all true:

Other Considerations

Remember that when you enable shape modeling for a promotional causal factor, the single promotion causal factor is replaced by up to eight causal factors. If the promotional causal factor is transposed, that adds even more causal factors: up to eight for each column that the transpose creates.

To keep the number of causal factors down, you can specify the maximum number of shapes permitted for any given promotional causal factor.

Enabling Promotion Shape Modeling

To enable promotion shape modeling

  1. Identify the promotional causal factors that you want to represent as shapes.

  2. On the Promotional Causal Factors screen, make sure to check the Self Shape Indicator option for each of those promotional causal factors.

  3. Consider also setting the following options.

    • IG Shape Indicator

    • Omit Seasonal

    • Num Shapes