The Arbitration strategy is responsible for setting up the attributes that will be used in the final priority calculation (P * C * V * L). These settings are managed within Next-Best-Action Designer and saved into decision data rules (DDRs). These DDRs are imported via the various Realtime Controls sub-strategies in the strategy, and filters are used to obtain individual setting values for some of these.
A high-level view of the strategy is shown first, and then each section will be described in more detail.
The strategy first sets the FinalPropensity property to be based on the action or treatment propensity, or a fixed value of 1 if propensities are not being used. Then the strategy sets the business value. By default, the action-level business value is used. Modify the Calculate Value Extension point strategy to change this.
After that, if the Business levers are enabled, the strategy determines business purpose weighting, first at the issue level and then the group level. These weightings are both added to the action weight, divided by 100 and then added to 1, so a total weighting of 55 sets a final weighting of 1.55.
The strategy then applies outcome weighting via the Apply Influencers strategy (described separately later) if this feature is enabled.
The strategy then applies context weighting (if the feature is enabled) by looking at the Container and Event payloads and searching for matching Key and Value pairs for each issue and group. If a match is found, the weighting is added to the weight for the specified issue and group. This weighting is also divided by 100 and then added to 1, so a total weighting of 55 sets a final weighting of 1.55.
This section also applies Q & A (question and answer) Context Weighting (if enabled). By default, there is none, but it can be added via the QnAContextWeightingExt extension point.
After the properties are calculated and adjusted based on the settings configured in Next-Best-Action Designer, the Prioritization formula Switch determines which formula to use to calculate the Priority based on the ExcludeLeversForPrioritization setting. Note that this feature is only used during simulation and is not user configurable.
If false, the standard formula is used:
Priority = .FinalPropensity * .ContextWeight * .Value *
Otherwise Weight is omitted and the alternate formula is used:
Priority = .FinalPropensity * .ContextWeight * .Value
The Post Processing Extension (ArbitrationPostExtension) strategy allows custom prioritization logic to be included if required, and then the Apply Priority Thresholds strategy is invoked (if enabled) to include only actions and treatments where their priority is above a set of pre-defined limits.
Finally, all actions and treatments are prioritized based on Priority in descending order.
- Calculate Business Value strategy
The CalculateBusinessValue strategy uses the business value property of the action. An extension strategy CalculateValueExtension is provided for more sophisticated value calculations.
- Question and Answer (QnA) Context Weighting strategy
The QnAContextWeighting strategy simply contains a call to the QnAContextWeightingExt extension point sub-strategy. This can be used to add any Q & A related context weighting. Any weighting calculated here should be added to the ContextWeight property.
- Apply Influencers strategy
This strategy uses action insights of the type Influencer for the customer. If there is a matching influencer action the weighting will be increased or decreased based on weighting adjustment definitions in the Arbitration Influencers DDR.
- Apply Priority Thresholds strategy
This strategy imports priority thresholds from the Priority Thresholds DDR and matches them to Actions by Direction, Channel, All Issues, Issue and All Groups, or Group and All Actions. More specific threshold definitions take precedence over less specific ones, that is, a threshold set at the group level will override one set at the issue level.