SAS® Optimization Features
Algebraic, symbolic optimization modeling language
- Flexible algebraic syntax for intuitive model formulation.
- Support for the transparent use of SAS functions.
- Direct invocation of linear, nonlinear, quadratic and mixed-integer solvers.
- Support for the rapid prototyping of customized optimization algorithms, including support for named problems and subproblems.
- Use of industry-standard MPS/QPS format input data sets.
- Aggressive presolvers to reduce effective problem size.
- LP (linear programming) and MILP (mixed integer linear programming) solvers deliver improvements in performance, shortening the time needed to reach optimality and enabling you to solve more complex problems in a given amount of time.
Powerful optimization solvers
- Linear programming solution algorithms:
- Primal and dual simplex.
- Network simplex.
- Interior point with (experimental) crossover.
- Concurrent solve capability.
- Mixed integer linear programming solution algorithms:
- Branch-and-bound integer with cutting planes.
- Primal heuristics.
- Conflict search.
- Option tuning.
- Added control on the solution of the root node (LP relaxation) problem.
- Report up to the K best integer feasible solutions or up to K optimal solutions.
- Decomposition algorithm (automated Dantzig-Wolfe) for linear programming and mixed-integer linear programming problems with block-angular, block-diagonal or embedded network structure.
- Quadratic programming solution algorithm: interior point with state-of-the-art solver tailored for large-scale optimization problems.
- Nonlinear programming solution algorithms: active set, interior point. Concurrent solve capability. Multistart algorithm for nonconvex problems.
- Optimization and diagnostic algorithms include:
- Connected components and biconnected components (with articulation points).
- Maximal clique enumeration.
- Cycle enumeration.
- Transitive closure.
- Minimum cut.
- Minimum spanning tree.
- Summary statistics.
- Minimal-cost linear assignment.
- Minimum-cost network flow.
- Shortest path.
- Traveling salesman problem.
- Path enumeration.
- Multiple links between pairs of nodes can be input and processed.
Local search optimization
- Solves problems with nonlinear functions that can be non-smooth, discontinuous, not continuously differentiable, and so on.
- Hybrid parallel algorithm, including generic algorithms, global GA-type heuristics and pattern search. Multiobjective optimization.
- Solves constraint satisfaction problems using finite-domain constraint programming, with domain reduction/constraint propagation and a choice of search strategies (look ahead and backtracking). Find one, several or all feasible solutions. Optionally specify an objective function and find an optimal solution (bisection search method).
Distributed, accessible & cloud-ready
- Optimization solvers run on SAS Viya, a scalable and distributed in-memory engine of the SAS Platform.
- Distributes analysis and data tasks across multiple computing nodes.
- Distributed computation features:
- Multistart option for nonlinear (NLP) solver in PROC OPTMODEL.
- Decomposition algorithm (MILP) in PROC OPTMODEL, PROC OPTMILP.
- Solving independent optimization scenarios: COFOR loop in PROC OPTMODEL.
- Concurrent mode for MILP solver (PROC OPTMODEL, PROC OPTMILP).
- Branch-and-bound MILP solver algorithm (PROC OPTMODEL, PROC OPTMILP).
- Local search optimization in PROC OPTMODEL.
- Shortest path and connected components network algorithms in PROC OPTNETWORK.
- BY-group processing in network algorithms in PROC OPTNETWORK.
- Provides fast, concurrent, multiuser access to data in memory.
- Includes fault tolerance for high availability.
- Lets you add the power of SAS Analytics to other applications using SAS Viya REST APIs