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.
... View more