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.

Network optimization

  • 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.

Black-box 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.

Constraint programming

  • 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 analytics 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.