FOCUS AREAS

Enhancements in SAS/OR 9.2 Software

SAS/OR 9.2 continues the improvements in optimization that began with three SAS/OR 9.1.3 releases (2.1, 3.1, and 3.2), along with enhanced capabilities in project scheduling and discrete event simulation. These improvements make SAS/OR easier to use and expand the scope and scale of problems that you can address with it.

Enhancements to New Optimization Procedures

The new optimization procedures in SAS/OR, originally introduced in SAS/OR 9.1.3 releases 2.1, 3.1, and 3.2, are:

The OPTLP procedure adds the experimental option to identify, for an infeasible linear program, constraints and variable bounds that collectively form an irreducible infeasible set (IIS). This option is also available when building and solving a linear program with the OPTMODEL procedure.

The OPTLP, OPTMILP, and OPTQP procedures add the ability to produce an ODS table for problem statistics, yielding descriptive information about the problem being solved.

Aiding Migration to the New Optimization Procedures

In SAS/OR 9.2 the INTPOINT, LP, and NETFLOW procedures each add the MPSOUT= option, which directs the procedure to save input problem data in an MPS-format SAS data set. Invoking the MPSOUT= option causes the procedure to output the data and halt without attempting optimization, and the resulting SAS data set can be used to specify a problem so that it may be solved using either the OPTLP or the OPTMILP procedure.

Network Optimization

The NETFLOW procedure adds the ability to model generalized networks, in which the flow entering an arc in the network might not equal the flow exiting the same arc; this signifies a loss or a gain as the flow traverses the arc. Examples of real-world applications of generalized networks include: PROC NETFLOW is now able to work with networks that have challenging characteristics such as excess supply or demand, unknown supply or demand at some network nodes, or node with range constraints on supply or demand.

Earned Value Management Macros

Earned Value Management (EVM, also known as Earned Value Analysis) aids in tracking the execution of a project, comparing current accomplishments against the plan on both a schedule and budget basis. In SAS/OR 9.2, two sets of macros are provided for EVM: a set of four macros to calculate metrics and a set of six macros to create graphical reports based on the metrics. Metrics ranging from task-specific to project-wide are supported.

Microsoft Project Conversion Macros

SAS/OR enables you to convert project data created with Microsoft Project for use with the project scheduling capabilities of SAS/OR. New in SAS/OR 9.2, you can also export project data from SAS/OR for use with Microsoft Project. The %MSPTOSAS macro imports data from Microsoft Project to SAS/OR, and the experimental %SASTOMSP macro exports from SAS/OR to Microsoft Project. Note that execution of either of these macros requires SAS/ACCESS software.

Genetic Algorithms and Constraint Programming

The GA procedure solves optimization problems through the use of genetic algorithms. Genetic algorithms work with a group of solutions to a problem and treat the group as a biological population, causing the group to grow and evolve over successive "generations" and applying selective pressure to improve the population in accordance with the objective of the optimization problem. In SAS/OR 9.2 PROC GA is at production status and adds several enhancements to its routines and options designed to improve flexibility and readability and to improve the overall functioning of the procedure.

The CLP procedure, experimental in SAS/OR 9.2, solves constraint satisfaction problems through the use of constraint programming. This approach assigns values to decision variables individually and sequentially, tracking how each assignment affects the available values for other decision variables and adjusting as needed. In SAS/OR 9.2, PROC CLP enhances its underlying algorithms and strategies, and also adds to its capabilities for modeling and solving scheduling problems.

Discrete Event Simulation

Discrete event simulation is used to study the operations of systems (retail, transportation, manufacturing, etc.) with significant random elements, such as the arrival of customers at a retail store, service times in manufacturing, or caller preferences at an incoming call center. Discrete event simulation provides insight into system behavior and helps to characterize how the system reacts to changes in operating conditions and/or configuration. SAS Simulation Studio, experimental in SAS/OR 9.2, features a graphical user interface that requires no programming and provides all the tools for building, running, and analyzing results from discrete event simulation models. SAS Simulation Studio integrates with JMP for experimental design and can analyze results using either JMP or SAS.