Hi,
I want to solve Mixed Integer Non Linear programming problem. I want to know what all options are available in SAS Proc. Optlso can solve MINLP but I am not sure how efficient and accurate it is for bigger problem with hundreds of constraint and thousands variables.
Thanks in advance for our help.
Currently, the only direct approaches for MINLP in SAS are to use either PROC OPTLSO or the LSO solver in PROC OPTMODEL, which was just released last week with SAS Optimization 8.2 in SAS Viya 3.3.
But I have personally applied over two dozen indirect approaches that use the other solvers. For example, some problems can be linearized, either exactly or approximately, so that you can use the MILP solver. If you supply more details about your problem, I might be able to provide some recommendations.
Thanks for your reply.
Solving the approximate problem in fallback solution for me. Problem involves maximizing the revenue (Demand*Price) where Price is variable and D=D0*(1-cdf(price)). I can make demand function linear but since revenue is Demand*Price therefore objective function would still be quadratic.
Do you know how efficient and accurate is PROC OPTLSO ? Is it recommended to solve a big optimization problem with PROC OPTLSO ?
The LSO documentation contains this statement in the Overview section:
"As a rule of thumb, derivative-free algorithms are rarely applied to black-box optimization problems that have more than 100 variables."
But there is no hard limit on the number of variables.
What are the integer variables in your problem?
I want Demand to be integer. So D0*(1-cdf(p)) should be integer
Is D0 a constant or a variable?
What is the order of magnitude of demand?
What do the constraints look like?
D0 is constant. Order of Magnitude is 10^2
Do you have PROC OPTMODEL code that you can share?
What is your exact problem ?
Please share.
Are you ready for the spotlight? We're accepting content ideas for SAS Innovate 2025 to be held May 6-9 in Orlando, FL. The call is open until September 25. Read more here about why you should contribute and what is in it for you!
Learn how to run multiple linear regression models with and without interactions, presented by SAS user Alex Chaplin.
Find more tutorials on the SAS Users YouTube channel.