Previous Page | Next Page

Introduction to Optimization

Overview

Operations Research tools are directed toward the solution of resource management and planning problems. Models in Operations Research are representations of the structure of a physical object or a conceptual or business process. Using the tools of Operations Research involves the following:

  • defining a structural model of the system under investigation

  • collecting the data for the model

  • analyzing the model

SAS/OR software is a set of procedures for exploring models of distribution networks, production systems, resource allocation problems, and scheduling problems using the tools of Operations Research.

The following list suggests some of the application areas where optimization-based decision support systems have been used. In practice, models often contain elements of several applications listed here.

  • Product-mix problems find the mix of products that generates the largest return when there are several products competing for limited resources.

  • Blending problems find the mix of ingredients to be used in a product so that it meets minimum standards at minimum cost.

  • Time-staged problems are models whose structure repeats as a function of time. Production and inventory models are classic examples of time-staged problems. In each period, production plus inventory minus current demand equals inventory carried to the next period.

  • Scheduling problems assign people to times, places, or tasks so as to optimize people’s preferences or performance while satisfying the demands of the schedule.

  • Multiple objective problems have multiple, possibly conflicting, objectives. Typically, the objectives are prioritized and the problems are solved sequentially in a priority order.

  • Capital budgeting and project selection problems ask for the project or set of projects that will yield the greatest return.

  • Location problems seek the set of locations that meets the distribution needs at minimum cost.

  • Cutting stock problems find the partition of raw material that minimizes waste and fulfills demand.

A problem is formalized with the construction of a model to represent it. These models, called mathematical programs, are represented in SAS data sets and then solved using SAS/OR procedures. The solution of mathematical programs is called mathematical programming. Since mathematical programs are represented in SAS data sets, they can be saved, easily changed, and re-solved. The SAS/OR procedures also output SAS data sets containing the solutions. These can then be used to produce customized reports. In addition, this structure enables you to build decision support systems using the tools of Operations Research and other tools in the SAS System as building blocks.

The basic optimization problem is that of minimizing or maximizing an objective function subject to constraints imposed on the variables of that function. The objective function and constraints can be linear or nonlinear; the constraints can be bound constraints, equality or inequality constraints, or integer constraints. Traditionally, optimization problems are divided into linear programming (LP; all functions and constraints are linear) and nonlinear programming (NLP).

The data describing the model are supplied to an optimizer (such as one of the procedures described in this book), an optimizing algorithm is used to determine the optimal values for the decision variables so the objective is either maximized or minimized, the optimal values assigned to decision variables are on or between allowable bounds, and the constraints are obeyed. Determining the optimal values is the process called optimization.

This chapter describes how to use SAS/OR software to solve a wide variety of optimization problems. We describe various types of optimization problems, indicate which SAS/OR procedure you can use, and show how you provide data, run the procedure, and obtain optimal solutions.

In the next section we broadly classify the SAS/OR procedures based on the types of mathematical programming problems they can solve.

Previous Page | Next Page | Top of Page