11-09-2011 12:25 AM
I've been using SAS for a decent amount of time with a financial model for superannuation investment. Basically what I've done already is built a model that optimizes (minimizes) the equity allocation using the average of a simulated objective function (1,000 simulations). The optimization is currently done by calculating the objective function for all possible allocations from 0% - 100% and picking the lowest value. Now I'm looking to do something a little more complicated and would like to use PROC OPTMODEL to do the optimization.
The only problem with this is that it seems that I can't simply bring in a macro to PROC OPTMODEL that calculates the objective function. However it seems like it would be very difficult (if not impossible) to calculate the objective function within PROC OPTMODEL given it currently involves at least 100 lines of code and an average of 1,000 output variables.
Does anyone have any ideas on what my best approach would be? I'm leaning towards writing my own optimization program within my current code, but would love any feedback on how I could use a SAS procedure to do this - especially since there is a second variable (in addition to equity allocation) that I want to optimize against. The optimization itself should be fairly easy - as the constraints are linear and the objective function appears to be convex.
09-08-2015 04:06 PM
Questions about PROC OPTMODEL in SAS/OR are better suited for the Mathematical Optimization and Operations Research Community. If you still need help, please post there.