## Dual Solution of Large Marketing Optimization Problems using PROC NLP

Occasional Contributor
Posts: 9

# Dual Solution of Large Marketing Optimization Problems using PROC NLP

For about five years, I have employed PROC NLP to solve large marketing optimization problems via a collapsed dual method. The results have been remarkable. For a general description of the approach, see http://home.comcast.net/~raagnew/Downloads/Dual_Solution_Marketing_Optimization.pdf.
SAS Employee
Posts: 1

## Re: Dual Solution of Large Marketing Optimization Problems using PROC NLP

This is a reasonable approach to try for this type of problem, and it could work well for the types of constraints you describe. However, we have found that as the constraints become more complex, this approach often does not work, and additional techniques are needed. In particular, it is often the case that the constraints per prospect are not of the form "a prospect can receive at most one offer", but rather are more complicated -- such as at most three offers in total, at most one email per week, at most two credit card offers, etc. Furthermore, the quantity constraints for each offer are typically more generic and could represent any business constraint: budgets per offer, lower bounds on expected number of responses, upper bounds on some type of risk measure, ratio of two measures (for example, ROI -- defined as total profit divided by total cost -- must be at least 20%), etc.

With these complications, which often appear in combination, the approach described can run into issues. The nonlinear programming algorithm might not converge well enough due to nondifferentiability, and finding a primal solution from the dual solution is no longer as simple as it is in this case, and the process becomes highly sensitive to the accuracy of the dual solution. Therefore, in building an algorithm for a general direct marketing problem, other techniques are required, such as those used by the commercial vendors mentioned in the paper.
Occasional Contributor
Posts: 9

## Re: Dual Solution of Large Marketing Optimization Problems using PROC NLP

My write-up is purposely simplified. I have used this approach with more general constraints like you mention, including <= k offers per prospect where k > 1. My approach does have some math overhead in terms of deriving the appropriate dual problem and changing SAS code accordingly. This is not a big deal, but it is of course unnecessary with commercial optimizers like SAS Marketing Optimization. On the other hand, PROC NLP is available to any SAS/OR subscriber.
Occasional Contributor
Posts: 9

## Re: Dual Solution of Large Marketing Optimization Problems using PROC NLP

For some reason, some of the text in my reply was deleted. Here is another attempt. My write-up is purposely simplified. I have used this approach with more general constraints like you mention, including that a prospect may receive at most k offers where k is greater than one. My approach does have some math overhead in terms of deriving the appropriate dual problem and changing SAS code accordingly. This is not a big deal, but it is of course unnecessary with commercial optimizers like SAS Marketing Optimization. On the other hand, PROC NLP is available to any SAS/OR subscriber.
Occasional Contributor
Posts: 9

## Dual Solution of Large Marketing Optimization Problems using PROC NLP

As a post-script, I now have a Marketing Optimization R-Script which solves my demo problem in about a minute on my home PC. http://home.comcast.net/~raagnew/Downloads/mktg_opt.R

SAS Employee
Posts: 21

## Dual Solution of Large Marketing Optimization Problems using PROC NLP

PROC NLP is not under active development, It belongs to legacy procs. Please try the new NLP algorithms (Interior Point or Active Set) through PROC OPTMODEL. You can find more information about new NLP algorithms & OPTMODEL here

http://support.sas.com/documentation/cdl/en/ormpug/63975/HTML/default/viewer.htm#nlpsolver_toc.htm

thanks,

Yan

Occasional Contributor
Posts: 9

## Re: Dual Solution of Large Marketing Optimization Problems using PROC NLP

Updated website  www.raagnew.com

Discussion stats
• 6 replies
• 689 views
• 0 likes
• 3 in conversation