# linear programming

(redirected from*0-1 integer programming*)

Also found in: Dictionary, Thesaurus, Financial.

## linear programming,

solution of a mathematical problem concerning maximum and minimum values of a first-degree (linear) algebraic expression, with variables subject to certain stated conditions (restraints). For example, the problem might be to find the minimum value of the expression*x*+

*y*subject to the restraints

*x*≥0,

*y*≥0, 2

*x*+

*y*≥12, 5

*x*+8

*y*≥74, and

*x*+6

*y*≥24. The solution was set forth by the Russian mathematician L. V. Kantorovich in 1939 and was developed independently by the American George B. Dantzig, whose first work on the subject appeared in 1947. A faster, but more complex technique, that is suitable for problems with hundreds or thousands of variables, was developed by Bell Laboratories mathematician Naranda Karmarkar in 1983. Linear programming is particularly important in military and industrial planning.

## Linear Programming

a mathematical discipline dealing with the theory and methods of solution of extremum problems for linear functions on sets defined by systems of linear inequalities and equalities. Linear programming is a branch of mathematical programming.

A typical problem of linear programming is to maximize the linear function

subject to the constraints

(3) *x*_{j} ≥ 0, *j* = 1, 2,..., *n*

where *c _{j}*,

*a*, and

_{ij}*b*are given variables.

_{i}Linear-programming problems are mathematical models of numerous problems that have technical and economic applications. Let us consider as an example the following problem of planning the operation of an enterprise. The production of uniform products requires the expenditure of various production factors, such as raw materials, manpower, the stock of machine tools, fuel, and transport. Usually there exist several developed technological modes of production with varying expenditures of the production factors per unit time for the production of the articles. The number of production factors used and the number of articles made depend on the amount of time the enterprise will spend on a particular technological mode of production.

The problem is then raised of efficiently distributing the working time of the enterprise among the various technological modes of production such that the maximum number of articles will be produced under the given limitations upon the cost of each production factor. We state the problem in the following manner. Suppose there exist *n* technological modes of producing an article and *m* production factors. Let us introduce the following notation. Let *c _{j}* be the number of articles produced per unit time through the

*j*th technological mode of production,

*a*be the expenditure of the

_{ij}*i*th production factor per unit time during the

*j*th technological mode of production,

*b*be the available resources of the

_{i}*i*th production factor, and

*x*be the planned working time according to the

_{j}*j*th technological mode of production. The value

denotes the total expenditure of the *i*th production factor under the plan *x*^{(i)} = (*x*_{1}^{(i)}, *x*_{2}^{(i)} ..., *x _{n}*

^{(i)}). Since the resources are limited by the values

*b*, the conditions (2) and (3) naturally arise. The problem is posed of finding a distribution of time (optimal plan)

_{i}*x** = (

*x**

_{1},

*x**

_{2}, ...,

*x**

_{n}) of work for each technological mode of production such that the total volume of production

is at a maximum, that is, the problem (1)–(3). The transportation problem is another example of applied linear-programming problems.

The choice of the term “linear programming” is not very apt. Linear programming is concerned with solving problems of compiling an optimal program (plan) of activities. It may therefore be considered as a mathematical method of operations research.

The function (1) in linear programming is generally called the object-function, or efficiency criterion; the vector *x* = (*x*_{1}, *x*_{2},..., *x _{n}*) is the plan; the vector

*x** = (

*x**

_{1},

*x**

_{2},...,

*x**

_{n}) is the optimal plan; and the set defined by the conditions (2)–(3) is the feasible set, or set of plans. The simplex method is one of the basic methods of solving linear-programming problems. Geometrically it consists in the following. The feasible set (2)-(3) is a convex polyhedral set (if bounded, a multidimensional convex polyhedron). If a linear-programming problem has a solution, there exists a vertex

*x** of the polyhedral set that is an optimal plan. The simplex method consists in obtaining an arrangement of the vertices in which the value of the object-function increases as we go from one vertex to the next. To each vertex there corresponds a system of equations that can be selected in a special fashion from the system of inequalities (2)-(3), and therefore the computational procedure of the simplex method consists in successively solving systems of linear algebraic equations. The simplicity of the algorithm makes this method suitable for computers.

### REFERENCE

Iudin, D. B., and E. G. Gol’shtein.*Lineinoe programmirovanie.*Moscow, 1969.

V. G. KARMANOV

## linear programming

[′lin·ē·ər ′prō‚gram·iŋ]*x*

_{1}, … ,

*x*

_{n }) subject to given constraints which are linear inequalities involving the variables

*x*

_{i }.

## Linear programming

An area of mathematics concerned with the minimization (or maximization) of a linear function of several variables subject to linear equations and inequalities. The subject in its present form was created in 1947, when G.B. Dantzig defined the general model and proposed the first, and still the most widely used, method for its solution: the simplex method.

Although the linearity assumptions are restrictive, many algorithms for extensions of linear programming, such as problems with nonlinear or integer restrictions, involve successively solving linear programming problems. With a result in 1979 giving a polynomially bounded ellipsoid method, an alternative to the simplex method, linear programming became the focus of work by computer scientists, and nonlinear methods have been refocused on solving the linear programming problem. Work by N. K. Karmarkar announced in 1984 attracted much attention because of claims of vastly improved performance of a new interior method. The relative merits of Kamarkar's method and the simplex method remain to be determined, but there seems to be a place for both methods. Karmarkar's work stimulated considerable activity in linear programming methodology. *See* Nonlinear programming, Optimization

The linear programming problems is to minimize linear objective function (1) subject to restrictions (2).

*x*

_{1}, …,

*x*

_{n}are required to take on real values, and the coefficients

*a*

_{ij},

*c*

_{j}, and

*b*

_{i}are real constants. The objective could be to maximize rather than minimize, and among constraints (2) the equations could be replaced by inequalities of the form less-than-or-equal-to or greater-than-or-equal-to. The set of

*x*

_{j}'s satisfying constraints (2) form a convex polyhedron, and the optimum value of the objective function will always be assumed at a vertex of the polyhedron unless the objective function is unbounded. The simplex method works by moving from vertex to vertex until the vertex yielding the optimum value of the objective function is reached, while interior methods stay inside the polyhedron.

An important extension in practice is to integer programming, where some of the *x*_{j}'s are required to take on integral values. The most common case in practice is where the integer *x*_{j} must be 0 or 1, representing decision choices such as to whether to switch from production of one product to another or whether to expand a warehouse to allow for larger throughput. Whereas linear programming solution times tend to be less than an hour, adding the constraint that some or all of the *x*_{j}'s must be integral may cause the running time to be very long.

Early work on computer programs was done in the 1950s. Commercial computer codes implementing the simplex method have been used in industry since the mid-1960s. Efficient methods for handling the structures encountered have been developed. In particular, the matrices tend to be very sparse, that is, most (usually over 99%) of the *a*_{ij}'s are zeroes. In the 1980s, intense development in software was begun because of changed hardware and new algorithmic developments.

Following the early work on codes, the petroleum industry quickly became the major user of linear programming, and still is an important user, especially for blending models in petroleum refining. Commercial codes are used in industry and government for a variety of applications involving planning, scheduling, distribution, manufacturing, and so forth. In universities, linear programming is taught in most business schools, industrial engineering departments, and operations research departments, as well as some mathematics departments. The model is general enough to be useful in the physical and social sciences. The improved computational efficiency achieved in the 1980s has gone hand-in-hand with expanded applications, particularly in manufacturing, transportation, and finance. *See* Operations research