We’re smarter together. Learn from this collection of community knowledge and add your expertise.

How to Perform Sensitivity Analysis with SAS Marketing Optimization

by SAS Employee Patricia_SAS on ‎11-17-2016 03:55 PM - edited on ‎11-09-2017 04:55 PM by Community Manager (356 Views)



SAS Marketing Optimization enables you to determine the optimal set of customers to target in a marketing campaign, and the optimal communications to use for each customer. It can accommodate various types of constraints that commonly restrict direct marketing campaigns, such as budgetary and cell size restrictions, communication channel capacities, contact policy restrictions, and other types of business rules. In addition, with SAS Marketing Optimization you can choose the objective to be optimized; for example, you might want to maximize the expected revenue or profit, minimize the expected cost of the campaign, or maximize the total number of expected responses.


Sensitivity Analysis helps determine how to better achieve the optimization objective: maximize expected profits, minimize churn, etc. by indicating where to better allocate resources: budgets, number of agents allocated to offers, number of hours to make calls from the call center, etc. In SAS Marketing Optimization, one indicates how resources are allocated thru the MO Constraints, that is, constraints are used to apply business rules related to campaign budgets, channel usage, offer counts, etc.


In SAS Marketing Optimization one can implement a great variety of business rules using constraints, max/min contact and blocking policies.


Business Rules or Constraints


In SAS Marketing Optimization, Constraints can be at three levels: Aggregate, Household or Customer.


These are examples of Aggregate Constraints

  1. Spend at most $1,000,000 across all campaigns
  2. Use at most 4,200 hours for calls through the call center

These are examples of Customer-Level Constraints

    3.  Spend at most $25 on each high-risk customer

    4. Senior customers with a minimum balance of $3,000 should receive at least one investment offer


Regarding Computation, one can use a constraint to count the number of offers, or to express business rules related to the sum, average or ratio of metrics. Additionally, one can apply communication or customer filters. The following paragraphs clarify the terms level, computation and limit.


Constraint #1 is of level aggregate, it counts the number of offers and has a limit of $1000.


Constraint #2 is of level aggregate, it counts the number of hours to make calls thru the channel call center (specified using a communication filter) and its limit is 4200.


Constraint #3 is of customer-level, its computation is the sum of communication-costs related to high-risk customers (specified using a communication filter) and its limit is $25.


Constraint #4 is of customer-level, counts the number of investment offers for customer filters related to “senior” and “minimum balance of X dollars, and its limits is 1.


If the four constraints described above were included in the same MO scenario, which one should have its limit changed in order to increase the scenario’s objective, which for this example is profit expected value (exp_value)?  The Sensitivity Analysis graphs and Opportunity Cost in the Constraint Summary Report provide information to answer this question.


Sensitivity Analysis Graphs


When Sensitivity Analysis is enabled in SAS Marketing Optimization, similar graphs to the ones below are produced. These graphs indicate how the profit (objective exp_value) changes as the constraint limit increases. Note the constraint limits on these graphs:


  1. Deposit Budget Constraint
    • The constraint limit is $100,000
    • Y-axis from 3,625,000 to 3,750,000
    • X-axis from 80,000 to 120,000
  1. At most 4,200 hours of calls from Call Center Constraint
    • The constraint limit is 4,200 hours of calls
    • Y-axis from 3,690,000 to 3,730,000
    • X-axis from 3,000 to 5,000

 graph One.png













graph two.png















From looking at these graphs, one could say that the exp_value will increase more rapidly if we increase the limit of hours for calls from the Call Center than if we increase the limit of dollars of the Deposit Budget, by looking at the Constraint Summary Report we can get more information.


Constraint Summary Report

It is easier to decide which constraint has more effect on the exp-value by looking at the Opportunity Cost column in the Constraint Summary Report. The Opportunity Cost is the change in the objective value per unit-change in the limit of the resource-constraint.


In this report, we can see that the highest Opportunity Cost corresponds to the constraint related to the number of hours to make calls from the Call Center. This report indicates that

  1. “One unit” change in the limit of the Deposit Budget, from $100,000 to $100,001, will increase the exp_value by $2.63
  2. “One unit” change in the limit of the Call Center hours, from 4,200 to 4,201, will increase the exp_value by $21.39




By looking at the Sensitivity Analysis graphs and the Constraint Summary Report one could conclude that it is better to increase the number of hours at the Call Center. Still, one also must consider the cost associated with increasing the limits of these two constraints.


Let’s assume that the cost of increasing by one-unit the Deposit Budget is $1, and the cost of increasing by one-unit the number of hours of calls from the Call Center is $100 dollars. Considering these costs, where should we spend our additional dollars?


The exp-value increases by $2.63 for $1 added the Deposit Budget. The exp-value increases by $21.39 for $100 spent in adding one-hour at the Call Center. By considering these costs, then the conclusion is that we are better off by increasing the Deposit Budget dollars.


Therefore, one should look at the Sensitivity Analysis graphs and the Constraint Summary report to see which constraints to analyze further. Then for those constraints, in order to make a final decision, one needs to consider the cost of increasing their resources by one-unit.


How to enable Sensitivity Analysis in SAS Marketing Optimization?


To enable sensitivity analysis on a scenario, on the Objective page select Perform sensitivity analysis. In the Sensitivity range (%) field, set the range over which to perform sensitivity analysis. For example, setting a value of 25 results in a sensitivity analysis graph that ranges from 25% below the current constraint limit to 25% above the current constraint limit. However, the recommendation is to set the range to at most 5%.




In the Constraints Page, check on the corresponding box in the Sensitivity Analysis column



Your turn
Sign In!

Want to write an article? Sign in with your profile.

Looking for the Ask the Expert series? Find it in its new home: communities.sas.com/askexpert.