SAS Optimization, and SAS Simulation Studio

turn on suggestions

Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.

Showing results for

Find a Community

Topic Options

- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

07-10-2014 06:39 PM

I used a logistic regression to build a model to score the value of each customer. Now suppose we have scored 10K customers and plan to run a marketing campaign on them. Two pilot programs had been conducted and the outcomes are summarized below.

Program 1:

Spent $.40 on each customer of first 1K customers. Got 10 purchases and $.45/customer profit.

Spent $.30 on each customer of next 3K customers. Got 20 purchases and $.28/customer profit.

Spent $.20 on each customer of next 5K customers. Got 40 purchases and $.22/customer profit.

Spent $.10 on each customer of next 2K customers. Got 10 purchases and $.12/customer profit.

Program 2:

Spent $.40 on each customer of first 1K customers. Got 10 purchases and $.45/customer profit.

Spent $.30 on each customer of next 2K customers. Got 10 purchases and $.32/customer profit.

Spent $.20 on each customer of next 7K customers. Got 50 purchases and $.20/customer profit.

Spent $.10 on each customer of next 1K customers. Got 5 purchases and $.09/customer profit.

Based on these 2 pilot program outcomes, I would like to see the optimal allocation of marketing spend to maximize the purchases and profit. That each, how many customers need to allocate to spend $.4 group, how many to spend $.3 group. I don't know which math/statistics methods I should use to solve this problem.

- Mark as New
- Bookmark
- Subscribe
- Subscribe to RSS Feed
- Permalink
- Email to a Friend
- Report Inappropriate Content

Posted in reply to aha123

07-10-2014 07:34 PM

Looks like you have 11K customers and a budget of $2500. Suppose you knew the expected return r[i,j] if customer i is assigned to group j. Then your expected profit for that assignment would be r[i,j] - c

var Assign {CUSTOMERS, GROUPS} binary;

max TotalExpectedProfit = sum {i in CUSTOMERS, j in GROUPS} (r[i,j] - c

con AssignOnce {i in CUSTOMERS}:

sum {j in GROUPS} Assign[i,j] = 1;

con Budget:

sum {i in CUSTOMERS, j in GROUPS} c

If you are allowed not to assign a customer to any group, you can change the = 1 to <= 1 in the AssignOnce constraint. Alternatively, you can define a dummy group j = 5, with cost c[5] = 0, if there is some nonzero expected return r[i,5] for customer i not being assigned to a group.

It remains to use the results of your two pilot programs to estimate r[i,j] for each customer-group pair. I'll leave that for a statistician to discuss, but maybe you can do some kind of Bayesian update of your initial scoring model.