Skip to main content

 –

Using Arbitration Influencers

Suggest edit Updated on January 19, 2022

The purpose of arbitration influencers is to use the insights gained from the outcome of presenting an action to influence the arbitration of the same action - or one or more related actions - at some future interaction.

Pega Customer Decision Hub

For example, during an interaction with a call center agent, if a customer expresses an interest in an offer, but needs to drop off the call due to other commitments, the outcome could be recorded as Maybe-Later. On the next interaction with the same customer it may be prudent to boost the chances of that same action - or some related actions – being selected as the NBA, on the assumption that the customer may still be interested and have a higher likelihood to accept the follow-up action based on their initial Maybe-Later response.

The method is similar to the Contact Policy implementation, whereby action outcomes specified by the policy are captured by the ProcessSuppressions Data Flow using the Behavioral Limits strategy, and then later used during an NBA interaction.

Arbitration Influencer Concepts

The Arbitration Influencers DDR and some related concepts are described below.

ConceptDescription
UpweightingThe process of increasing the weighting associated with an action identified by an Arbitration Influencer policy, to increase its chances of selection during arbitration. This may be done in increments over a specified duration, starting at an initial value, and increasing until a target value is reached. The starting value will be less than the ending value, and can be negative if desired.
DecaySimilar to upweighting but where the increment is negative, that is, the weighting is decreased over a period. The starting value will be greater than the ending value, and can be negative if desired.

Output Bundling Settings DDR

PropertyDescription
pyLabelA user-friendly name.
pyNameA unique name for the action influencer policy - typically set to the ContactPolicy (see below).
pyIssueThe issue for which the influencer policy is to be applied. This property is required.
pyGroupThe group for which the influencer policy is to be applied, or blank for all groups and actions within the issue.
ActionThe Action for which the influencer policy is to be applied, or blank for all actions within a Group.
pyOutcomeThe Outcome for which the influencer policy is to be applied, this must be specified.
pyDirectionThe Direction for which the influencer policy is to be applied, or blank for all Directions.
pyChannelThe Channel for which the influencer policy is to be applied, or blank for all Channels.
ContactPolicyA unique name for the action influencer policy, this must be specified.
WeightAdjustIntervalTime period over which the action weight will be adjusted in minutes.
WeightAdjustDurationTime interval between adjustments in minutes.
WeightAdjustStartValueThe starting upweight value.
WeightAdjustEndValueThe ending upweight value (if this is less than the start then the weight will be decayed).
TargetIssueThe issue of the action to be influenced. If UpweightActionInContext is false this must be specified.
TargetGroupThe group of the actions to be influenced, or blank for all groups and actions within the target issue.
TargetActionThe name of the action to be influenced, or blank for all actions within a target group.
UpweightActionInContextIf true, use the action(s) identified by the source configuration as the target action(s), otherwise use the action(s) identified by the target configuration.

The weight adjustment properties allow the action Weight to be adjusted so that if Action weighting is enabled in the Arbitration tab of Next-Best-Action Designer. This will affect the overall priority of the target actions. The detailed weight adjustment calculations are shown below.

PropertyDescriptionFormula
pyLastResponseTimeThe time when the outcome that triggered the action influencer occurred..TimeInCurrentStage = @DateTimeDifference(.pyLastResponseTime, @getCurrentTimeOfDayStamp(), "m") .WeightAdjustInterval = @if(.WeightAdjustInterval > 0, .WeightAdjustInterval, 1)
QuantityTotal number of weight duration intervals..Quantity = @if(.WeightAdjustDuration > 0, @divide(.WeightAdjustDuration, .WeightAdjustInterval, 0), 1)
TempDoubleThe weight increment per interval, negative if start weight is greater than end weight..TempDouble = @divide((.WeightAdjustEndValue - .WeightAdjustStartValue), .Quantity, 2)
pyWeightThe incremental upweighting value for the target actions, note that this could be negative..pyWeight = @if(.TimeInCurrentStage > .WeightAdjustDuration, .WeightAdjustEndValue, .WeightAdjustStartValue + (@divide(.TimeInCurrentStage, .WeightAdjustInterval, 0, "down") * .TempDouble))

The resultant pyWeight is then added to the action Weight property for use in the arbitration formula.

Did you find this content helpful? YesNo

Have a question? Get answers now.

Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.

Ready to crush complexity?

Experience the benefits of Pega Community when you log in.

We'd prefer it if you saw us at our best.

Pega.com is not optimized for Internet Explorer. For the optimal experience, please use:

Close Deprecation Notice
Contact us