ksuttles21
Programmer
I'm new to SAS\OR and I’m hoping to use it to solve an optimization problem. Given my lack of exposure to these procedures to date, I'd appreciate an answer with the appropriate details.
Problem:
I have a dataset of loans (hundreds of thousands) which I need to choose a 'treatment' to maximize each loan’s projected net present value of the future cash flows from period t=1 to t=12. The treatment consists of whether or not, and how much, to reduce the loan’s payment. Future cash flows are a function of the probability of payment (P_hat) in month t, and the principal and interest payment post treatment (PI_Post) in month t. All cash flows are discounted using the appropriate NPV calculations.
Objective Function:
Max NPV = sum{ 1/(1+d)^t)*(P_hat*PI_Post) } for all t=1 to 12
Where:
d = monthly discount rate
t = each month
P_hat = exp(B0 + B1X1 + B2PR)/(1+exp(B0 + B1X1 + B2PR)) - a logistic regression to be estimated beforehand, which provides the conditional probability of payment in month t
X1 = a set of independent variables
PR = Payment Reduction % (the decision variable)
PI_Post = PI_Pre*(1-PR)
PI_Pre = PI payment before the treatment (ie. payment reduction)
Note that the payment reduction % (PR) affects P_hat as well as PI_Post.
The only constraint is: -1<PR<=0
If I could paste an actual equation above I could better represent the problem... but I hope that’s enough.
My question lies in the optimization technique - which SAS\OR proc would I use for this (perhaps proc nlp)? Also, please assist with what the syntax would look like.
Thanks.
Problem:
I have a dataset of loans (hundreds of thousands) which I need to choose a 'treatment' to maximize each loan’s projected net present value of the future cash flows from period t=1 to t=12. The treatment consists of whether or not, and how much, to reduce the loan’s payment. Future cash flows are a function of the probability of payment (P_hat) in month t, and the principal and interest payment post treatment (PI_Post) in month t. All cash flows are discounted using the appropriate NPV calculations.
Objective Function:
Max NPV = sum{ 1/(1+d)^t)*(P_hat*PI_Post) } for all t=1 to 12
Where:
d = monthly discount rate
t = each month
P_hat = exp(B0 + B1X1 + B2PR)/(1+exp(B0 + B1X1 + B2PR)) - a logistic regression to be estimated beforehand, which provides the conditional probability of payment in month t
X1 = a set of independent variables
PR = Payment Reduction % (the decision variable)
PI_Post = PI_Pre*(1-PR)
PI_Pre = PI payment before the treatment (ie. payment reduction)
Note that the payment reduction % (PR) affects P_hat as well as PI_Post.
The only constraint is: -1<PR<=0
If I could paste an actual equation above I could better represent the problem... but I hope that’s enough.
My question lies in the optimization technique - which SAS\OR proc would I use for this (perhaps proc nlp)? Also, please assist with what the syntax would look like.
Thanks.