Key words

1 Introduction

Linear programming is a mathematical modeling technique designed to optimize the usage of limited resources. It has been widely used to solve problems in military, industries, agriculture, economics, and even behavioral and social sciences. Several surveys (see, e.g., Hartley [6], Lane et al. [9]) indicate that linear programming is the most frequently used technique in solving real world problems among all operations research techniques. Numerous textbooks have been written about linear programming. Most textbooks of operations research spend the largest number of pages discussing this topic. Linear programming has become the most important technique and the fundamental for studying other optimization techniques in operations research.

Any linear programming problem can be expressed by the following model:

$$\begin{array}{rcl} \mbox{ Min} Z& =& \mathbf{cx} \\ \mbox{ s.t.}\ \mathbf{Ax}& =& \mathbf{b} \\ x& \geq & \mathbf{0},\end{array}$$
(1)

where \(x = ({x}_{j},j = 1,\ldots,n)\) is the vector of decision variables to be determined. The other variables are the parameters given by the problem: \(c = ({c}_{j},j = 1,\ldots,n)\) is vector of cost coefficients, \(b = ({b}_{i},i = 1,\ldots,m)\) is vector of requirement coefficients, and \(A = \vert \vert {a}_{ij}\vert \vert \) is the matrix of technological coefficients. The problem is to determine the values of the decision variables under the constraints which minimize the objective function. The optimal values of the decision variables \({x}_{j},j = 1,\ldots,n\) are functions of the parameters \({a}_{ij},{b}_{i}\), and \({c}_{j},i = 1,\ldots,m,j = 1,\ldots,n\). When the value of one or more of the parameters is changed, the optimal values of the decision variables and the objective function will in general change accordingly.

Linear programming makes several assumptions regarding the parameters. The major one is that the value assigned to each parameter is a known constant. However, in real world applications, this assumption is seldom satisfied because linear programming models are usually formulated to find some future course of action. The parameter values used would be based on a prediction of future conditions which inevitably introduces some degree of uncertainty. There are also situations where the data cannot be collected without error. In the literature, the approaches for solving this problem are typified by post-optimality analysis [5]. As implied by its name, post-optimality analysis concerns how the optimal solution changes when the value of one or more parameters is changed. It is an ex post facto analysis after the optimal solution for a set of known parameters is solved. The technique which deals with changing one parameter at a time is called sensitivity analysis and the one dealing with changing several parameters simultaneously is called parametric programming [10, 12, 14]. Another approach in this category is the tolerance approach which focuses on simultaneous and independent variations of the requirement coefficients and cost coefficients without affecting the optimality of the given basis [4, 13, 1518]. The primary objective is to find the range of the parameters within which the current solution is still optimal.

In contrast to post-optimality analysis, which is conducted after an optimal solution is obtained, this chapter deals with the problem of finding the optimal solution for the linear programming problem whose imprecise parameters are expressed by intervals in an a priori manner. One approach for dealing with uncertainty in parameters is via stochastic programming, in which the parameters are treated as random variables. The standard procedure is to optimize the expected value of the objective function. Dantzig [3] discusses the case where random variables appear only in the requirements, and Charnes et al. [1] discuss the case of random costs. The problem becomes very complicated when all \({a}_{ij},{b}_{i}\), and c j are random variables. Another way to represent imprecise parameters in real world applications is by intervals [2, 7]. The associated linear program is an interval linear program. When the parameters have interval values, the objective function will also have an interval value; that is, it lies in a range. Serafini [11] proposed a two-phase approach for solving the linear program where the requirement coefficients are represented by intervals. The method only gives a point value for the objective function. In this chapter, we construct a pair of two-level mathematical programming models, based on which the lower bound and upper bound of the objective values are obtained. In other words, an interval value for the objective function of the interval linear programming problem is derived. This result should provide the decision maker with more information for making better decisions.

In the next section, we shall discuss the nature of interval linear programming, followed with a two-level mathematical programming formulation for finding the bounds of the interval objective values. Section 3 describes how to transform the two-level mathematical program into the conventional one-level program. We then use an example to illustrate how to apply the concept of this chapter to solve the interval linear programming problem. Finally, we draw a conclusion and suggest some directions for future study.

2 Problem Formulation

Before we get into the details of this chapter, a simple example helps clarify the nature of linear programming problems with interval parameters. Consider the following interval linear program:

$$\begin{array}{rcl} \mbox{ Min}& & Z = 4{x}_{1} + 3{x}_{2}\end{array}$$
(2)
$$\begin{array}{rcl} \mbox{ s.t.}\ {x}_{1} + [1,2]{x}_{2} = 4\end{array}$$
(3)
$$\begin{array}{rcl} & & [2,3]{x}_{1} + x + 2 \geq 6 \\ & & {x}_{1},{x}_{2} \geq 0, \end{array}$$
(4)

where the parameters \({a}_{12}\) and \({a}_{21}\) are imprecise and are represented by intervals [13], respectively. As a 12 varies from the lower bound 1 to upper bound 2, the feasible region defined by Constraint (3) and the nonnegativity conditions is a line segment moving counterclockwise from \(\overline{AF}\) to \(\overline{AG}\) as depicted in Fig. 1.

Fig. 1
figure 1

Graphical solution of the example

For the second Constraint (4), as parameter a 21 changes from its lower bound 2 to upper bound 3, the boundary of the feasible region represented by this constraint swings clockwise from \(\overline{HI}\) to \(\overline{HJ}\). Clearly, the feasible region defined by this constraint becomes larger when \({a}_{21}\) increases in its value. In other words, the smallest feasible region occurs at \({a}_{21} = 2\) and the largest at \({a}_{21} = 3\). For the former, when Constraint (3) is also considered, the feasible region is the line segment moving continuously from \(\overline{AB}\) to \(\overline{AC}\). If it is \(\overline{AB}\), then, graphically, the minimal value of the objective function \(Z = 4{x}_{1} + 3{x}_{2}\) occurs at B = (2, 2), with an objective value of 14. As the feasible region moves to \(\overline{AC}\), the minimal value decreases to \(\frac{38} {3}\) which occurs at \(C = (\frac{8} {3}, \frac{2} {3})\). Similarly, for the latter case of largest feasible region, the feasible region is the line segment \(\overline{AD}\) moving continuously to \(\overline{AE}\). The minimal value for \(\overline{AD}\) is 13, occurring at D = (1, 3), and for \(\overline{AE}\) it is 10, occurring at \(E = (\frac{8} {5}, \frac{6} {5})\). Combining these results together, we conclude that the lower bound of the optimal objective values is 10 and the upper bound is 14. The optimal value lies in the range of [10, 14].

This example shows that if the constraint coefficients are interval-valued, then the objective value will lie in a range. The graphical solution method helps derive the lower bound and upper bound of the objective values of the problem. The lower bound is obtained in the largest feasible region of the triangle ADE while the upper bound is obtained in the smallest feasible region of the triangle ABC. This example is so simple that a visual inspection suffices to find the solution. For general problems, we need to rely on some systematic solution method.

For the conventional linear program of Model (1), if one or more parameters have interval values, then we have an interval linear program. Without loss of generality, we assume all parameters are interval-valued since a constant can be represented by a degenerated interval where the lower bound of the interval coincides with its upper bound. As opposed to the conventional linear program where an unconstrained variable can be expressed by the difference of two nonnegative variables, an unconstrained variable in an interval linear program cannot be transformed in this way. The reason will be clear later in the derivation of the solution method. Therefore, the variables are separated into two groups, one nonnegative and the other unconstrained in sign. To be consistent with the dual problem formulation, the constraints are also separated into two groups, one of inequality type and the other of equality type, so that the corresponding dual variables will be nonnegative and unconstrained in sign, respectively. In this chapter, the interval linear program is formulated as:

$$\begin{array}{rcl} \mbox{ Min }& & Z =\sum\limits_{j=1}^{n}\hat{{c}}_{ j}{x}_{j} \\ \mbox{ s.t.}& & \sum\limits_{j=1}^{n}\hat{{a}}_{ ij}{x}_{j} \geq \hat{ {b}}_{i},\ \ i = 1,\ldots,p \\ & & \sum\limits_{j=1}^{n}\hat{{a}}_{ ij}{x}_{j} =\hat{ {b}}_{i},\ \ i = p + 1,\ldots,m \\ & & {x}_{j} \geq 0,\ \ j = 1,\ldots,q; \\ & & {x}_{j}\mbox{ unconstrained in sign},\ \ j = q + 1,\ldots,n,\end{array}$$
(5)

where \(\hat{{c}}_{j} \in [{C}_{j}^{L},{C}_{j}^{U}]\), \(\hat{{b}}_{i} \in [{B}_{i}^{L},{B}_{i}^{U}]\), and \(\hat{{a}}_{ij} \in [{A}_{ij}^{L},{A}_{ij}^{U}]\) are the interval counterparts of c j , b i , and \({a}_{ij}\), respectively. The inequality constraint of the “\(\leq \)” form can be transformed to the form of “\(\geq \)” by multiplying the terms on both sides by “ − 1.” If the objective function is “Max,” then it can be changed to “\(-\mbox{ Min} -\mbox{ Z}\)” to conform to Model (5). Hence, (5) is a generic interval linear programming model.

Clearly, different values of \(\hat{{c}}_{j},\hat{{b}}_{i}\), and \(\hat{{a}}_{ij}\) produce different objective values. To find the interval of the objective values, it suffices to find the lower bound and upper bound of the objective values of Model (5). Denote \(S =\{\hat{ c},\hat{b},\hat{a})\vert {C}_{j}^{L} \leq \hat{ {c}}_{j} \leq {C}_{j}^{U},{B}_{i}^{L} \leq \hat{ {b}}_{i} \leq {B}_{i}^{U},{A}_{ij}^{L} \leq \hat{ {a}}_{ij} \leq {A}_{ij}^{U},i = 1,\ldots,m,j = 1,2,\ldots,n\}\). The values of \(\hat{{c}}_{j},\hat{{b}}_{i}\), and \(\hat{{a}}_{ij}\) that attain the smallest value for Z can be determined from the following two-level mathematical programming model:

$$\begin{array}{rcl}{ Z}^{L} ={ \mbox{ Min}}_{ (\hat{c},\hat{b},\hat{a})\in S}{\mbox{ Min}}_{x}& & Z =\sum\limits_{j=1}^{n}\hat{{c}}_{ j}{x}_{j} \\ \mbox{ s.t.}& & \sum\limits_{j=1}^{n}\hat{{a}}_{ ij}{x}_{j} \geq \hat{ {b}}_{i},\ \ i = 1,\ldots,p \\ & & \sum\limits_{j=1}^{n}\hat{{a}}_{ ij}{x}_{j} =\hat{ {b}}_{i},\ \ i = p + 1,\ldots,m \\ & & {x}_{j} \geq 0,\ \ j = 1,\ldots,q; \\ & & {x}_{j}\mbox{ unconstrained in sign},\ \ j = q + 1,\ldots,n,\end{array}$$
(6)

where the inner program calculates the objective value for each \(\hat{{c}}_{j},\hat{{b}}_{i}\), and \(\hat{{a}}_{ij}\) specified by the outer program, while the outer program determines the values of \(\hat{{c}}_{j},\hat{{b}}_{i}\), and \(\hat{{a}}_{ij}\) that produces the smallest objective value. The objective value is the lower bound of the objective values for Model (5).

By the same token, to find the values of \(\hat{{c}}_{j},\hat{{b}}_{i}\), and \(\hat{{a}}_{ij}\) that produce the largest objective value for Z, a two-level mathematical program is formulated by replacing the outer program of Model (6) from “Min” to “Max”:

$$\begin{array}{rcl}{ Z}^{U} ={ \mbox{ Max}}_{ (\hat{c},\hat{b},\hat{a})\in S}{\mbox{ Min}}_{x}& & Z =\sum\limits_{j=1}^{n}\hat{{c}}_{ j}{x}_{j} \\ \mbox{ s.t.}& & \sum\limits_{j=1}^{n}\hat{{a}}_{ ij}{x}_{j} \geq \hat{ {b}}_{i},\ \ i = 1,\ldots,p \\ & & \sum\limits_{j=1}^{n}\hat{{a}}_{ ij}{x}_{j} =\hat{ {b}}_{i},\ \ i = p + 1,\ldots,m \\ & & {x}_{j} \geq 0,\ \ j = 1,\ldots,q; \\ & & {x}_{j}\mbox{ unconstrained in sign}\ \,j = q + 1,\ldots,n.\end{array}$$
(7)

The objective value Z U is the upper bound of the objective values for Model (5).

When the interval data \(\hat{{c}}_{j},\hat{{b}}_{i}\), and \(\hat{{a}}_{ij}\) degenerate to point data \({c}_{j},{b}_{i}\), and \({a}_{ij}\), respectively, the outer program of Models (6) and (7) vanishes, and Models (6) and (7) boil down to the same conventional linear program. This shows that the two-level mathematical program formulation of the interval linear program developed here is a generalization of the conventional constant-parameter linear program. The pair of two-level mathematical programs in (6) and (7) clearly express the bounds of the objective values. However, they are not solvable in the current form. In the next section, we discuss how to transform the two-level program into the conventional one-level program. With the pair of one-level programs, the interval of the objective values of the interval linear program can be obtained.

3 One-Level Transformation

3.1 Lower Bound

The previous section showed that to find the lower bound of the objective values of an interval linear programming problem of Model (5), it suffices to solve the two-level mathematical program of Model (6). Since both the inner program and outer program of (6) have the same minimization operation, they can be combined into a conventional one-level program with the constraints of the two programs considered at the same time.

$$\begin{array}{rcl}{ Z}^{L} = \mbox{ Min }& & Z =\sum\limits_{j=1}^{n}\hat{{c}}_{ j}{x}_{j} \\ \mbox{ s.t.}& & \sum\limits_{j=1}^{n}\hat{{a}}_{ ij}{x}_{j} \geq \hat{ {b}}_{i},\ \ i = 1,\ldots,p \\ & & \sum\limits_{j=1}^{n}\hat{{a}}_{ ij}{x}_{j} =\hat{ {b}}_{i},\ \ i = p + 1,\ldots,m \\ & & {C}_{j}^{L} \leq \hat{ {c}}_{ j} \leq {C}_{j}^{U},\ \ j = 1,\ldots,n \\ & & {B}_{i}^{L} \leq \hat{ {b}}_{ i} \leq {B}_{i}^{U},\ \ i = 1,\ldots,m \\ & & {A}_{ij}^{L} \leq \hat{ {a}}_{ ij} \leq {A}_{ij}^{U},\ \ i = 1,\ldots,m,\ \ j = 1,\ldots,n \\ & & {x}_{j} \geq 0,\ \ j = 1,\ldots,q; \\ & & {x}_{j}\mbox{ unconstrained in sign},\ \ j = q + 1,\ldots,n\end{array}$$
(8)

This model is a nonlinear program. By separating the decision variables into nonnegative ones and unconstrained-in-sign ones, it can be rewritten as:

$$\begin{array}{rcl}{ Z}^{L} = \mbox{ Min }& & Z =\sum\limits_{j=1}^{q}\hat{{c}}_{ j}{x}_{j} +\sum\limits_{j=q+1}^{n}\hat{{c}}_{ j}{x}_{j}\end{array}$$
(9)
$$\begin{array}{rcl} \mbox{ s.t.}& & \sum\limits_{j=1}^{q}\hat{{a}}_{ ij}{x}_{j} +\sum\limits_{j=q+1}^{n}\hat{{a}}_{ ij}{x}_{j} \geq \hat{ {b}}_{i},\ \ i = 1,\ldots,p\end{array}$$
(10)
$$\begin{array}{rcl} & & \sum\limits_{j=1}^{q}\hat{{a}}_{ ij}{x}_{j} +\sum\limits_{j=q+1}^{n}\hat{{a}}_{ ij}{x}_{j} =\hat{ {b}}_{i},\ \ i = p + 1,\ldots,m\end{array}$$
(11)
$$\begin{array}{rcl} & & {C}_{j}^{L} \leq \hat{ {c}}_{ j} \leq {C}_{j}^{U},\ \ j = 1,\ldots,n\end{array}$$
(12)
$$\begin{array}{rcl} & & {B}_{i}^{L} \leq \hat{ {b}}_{ i} \leq {B}_{i}^{U},\ \ i = 1,\ldots,m\end{array}$$
(13)
$$\begin{array}{rcl} & & {A}_{ij}^{L} \leq \hat{ {a}}_{ ij} \leq {A}_{ij}^{U},\ \ i = 1,\ldots,m,\ \ j = 1,\ldots,n\end{array}$$
(14)
$$\begin{array}{rcl} & & {x}_{j} \geq 0,\ \ j = 1,\ldots,q; \\ & & {x}_{j}\mbox{ unconstrained in sign},\ \ j = q + 1,\ldots,n\end{array}$$
(15)

For nonnegative \({x}_{j}\) we have \({C}_{j}^{L}{x}_{j} \leq \hat{ {c}}_{j}{x}_{j} \leq {C}_{j}^{U}{x}_{j}\) as is manifested from (12). In searching for the minimal value of the objective function, the interval parameter \(\hat{{c}}_{j},j = 1,\ldots,q\), must reach its lower bound. Consequently, we have

$$\mbox{ Min }Z =\sum\limits_{j=1}^{q}{C}_{ j}^{L}{x}_{ j} +\sum\limits_{j=q+1}^{n}\hat{{c}}_{ j}{x}_{j}.$$

The largest feasible region defined by the inequality constraint \(\sum\limits_{j=1}^{n}\hat{{a}}_{ij}{x}_{j} \geq \hat{ {b}}_{i}\) in Models (9)–(15) appears when the interval parameter \(\hat{{b}}_{i}\) is equal to its lower bound \({B}_{i}^{L}\). We can reduce the number of nonlinear terms by using a variable transformation technique, that is, multiplying Constraint (14) by nonnegative x j and substituting \(\hat{{a}}_{ij}{x}_{j}\) by r ij . Models (9)–(15) then become

$$\begin{array}{rcl}{ Z}^{L} = \mbox{ Min }& & Z =\sum\limits_{j=1}^{q}{C}_{ j}^{L}{x}_{ j} +\sum\limits_{j=q+1}^{n}\hat{{c}}_{ j}{x}_{j} \\ \mbox{ s.t.}& & \sum\limits_{j=1}^{q}{r}_{ ij} +\sum\limits_{j=q+1}^{n}\hat{{a}}_{ ij}{x}_{j} \geq {B}_{i}^{L},\ \ i = 1,\ldots,p \\ & & \sum\limits_{j=1}^{q}{r}_{ ij} +\sum\limits_{j=q+1}^{n}\hat{{a}}_{ ij}{x}_{j} =\hat{ {b}}_{i},\ \ i = p + 1,\ldots,m \\ & & {C}_{j}^{L} \leq \hat{ {c}}_{ j} \leq {C}_{j}^{U},\ \ j = q + 1,\ldots,n \\ & & {B}_{i}^{L} \leq \hat{ {b}}_{ i} \leq {B}_{i}^{U},\ \ i = p + 1,\ldots,m \\ & & {A}_{ij}^{L}{x}_{ j} \leq {r}_{ij} \leq {A}_{ij}^{U}{x}_{ j},\ \ i = 1,\ldots,m,\ \ j = 1,\ldots,n \\ & & {A}_{ij}^{L} \leq \hat{ {a}}_{ ij} \leq {A}_{ij}^{U},\ \ i = 1,\ldots,m,\ \ j = q + 1,\ldots,n \\ & & {x}_{j} \geq 0,\ \ j = 1,\ldots,q; \\ & & {x}_{j}\mbox{ unconstrained in sign},\ \ j = q + 1,\ldots,n. \end{array}$$
(16)

The lower bound of the objective value, Z L, is obtained by solving this mathematical program.

3.2 Upper Bound

Conceptually, the upper bound of the objective value of the interval linear program of Model (5) can be calculated from the two-level program of Model (7). However, solving Model (7) is not as straightforward as solving Model (6) because the outer program and inner program have different directions for optimization, viz., one for maximization and the other for minimization. They cannot be combined into a one-level program directly. Based on the duality theorem, the dual of a linear program has the same optimal objective value as its primal when an optimal solution exists. Hence, we can replace the inner program of Model (7) by its dual to form a maximization problem:

$$\begin{array}{rcl}{ Z}^{U} ={ \mbox{ Max}}_{ (\hat{c},\hat{b},\hat{a})\in S}{\mbox{ Max}}_{y}& & Z =\sum\limits_{i=1}^{m}\hat{{b}}_{ i}{y}_{i} \\ \mbox{ s.t.}& & \sum\limits_{i=1}^{m}\hat{{a}}_{ ij}{y}_{i} \leq \hat{ {c}}_{j},\ \ j = 1,\ldots,q \\ & & \sum\limits_{i=1}^{m}\hat{{a}}_{ ij}{y}_{i} =\hat{ {c}}_{j},\ \ j = q + 1,\ldots,n \\ & & {y}_{i} \geq 0,\ \ i = 1,\ldots,p; \\ & & {y}_{i}\mbox{ unconstrained in sign},\ \ i = p + 1,\ldots,m\end{array}$$
(17)

Now that both the inner program and outer program have the same maximization operation, they can be merged into a one-level program with the constraints at the two levels considered at the same time:

$$\begin{array}{rcl}{ Z}^{U} = \mbox{ Max }& & Z =\sum\limits_{i=1}^{m}\hat{{b}}_{ i}{y}_{i} \\ \mbox{ s.t.}& & \sum\limits_{i=1}^{m}\hat{{a}}_{ ij}{y}_{i} \leq \hat{ {c}}_{j},\ \ j = 1,\ldots,q \\ & & \sum\limits_{i=1}^{m}\hat{{a}}_{ ij}{y}_{i} =\hat{ {c}}_{j},\ \ j = q + 1,\ldots,n \\ & & {C}_{j}^{L} \leq \hat{ {c}}_{ j} \leq {C}_{j}^{U},\ \ j = 1,\ldots,n \\ & & {B}_{i}^{L} \leq \hat{ {b}}_{ i} \leq {B}_{i}^{U},\ \ i = 1,\ldots,m \\ & & {A}_{ij}^{L} \leq \hat{ {a}}_{ ij} \leq {A}_{ij}^{U},\ \ i = 1,\ldots,m,\ \ j = 1,\ldots,n \\ & & {y}_{i} \geq 0,\ \ i = 1,\ldots,p; \\ & & {y}_{i}\mbox{ unconstrained in sign},\ \ i = p + 1,\ldots,m\end{array}$$
(18)

Similar to the case of lower bound, we separate the decision variables y i into two parts, those of nonnegative ones and unconstrained-in-sign ones:

$$\begin{array}{rcl}{ Z}^{U} = \mbox{ Max }& & Z =\sum\limits_{i=1}^{p}\hat{{b}}_{ i}{y}_{i} +\sum\limits_{i=p+1}^{m}\hat{{b}}_{ i}{y}_{i}\end{array}$$
(19)
$$\begin{array}{rcl} \mbox{ s.t.}& & \sum\limits_{i=1}^{p}\hat{{a}}_{ ij}{y}_{i} +\sum\limits_{i=p+1}^{m}\hat{{a}}_{ ij}{y}_{i} \leq \hat{ {c}}_{j},\ \ j = 1,\ldots,q\end{array}$$
(20)
$$\begin{array}{rcl} & & \sum\limits_{i=1}^{p}\hat{{a}}_{ ij}{y}_{i} +\sum\limits_{i=p+1}^{m}\hat{{a}}_{ ij}{y}_{i} =\hat{ {c}}_{j},\ \ j = q + 1,\ldots,n\end{array}$$
(21)
$$\begin{array}{rcl} & & {C}_{j}^{L} \leq \hat{ {c}}_{ j} \leq {C}_{j}^{U},\ \ j = 1,\ldots,n\end{array}$$
(22)
$$\begin{array}{rcl} & & {B}_{i}^{L} \leq \hat{ {b}}_{ i} \leq {B}_{i}^{U},\ \ i = 1,\ldots,m\end{array}$$
(23)
$$\begin{array}{rcl} & & {A}_{ij}^{L} \leq \hat{ {a}}_{ ij} \leq {A}_{ij}^{U},\ \ i = 1,\ldots,m,\ \ j = 1,\ldots,n\end{array}$$
(24)
$$\begin{array}{rcl} & & {y}_{i} \geq 0,\ \ i = 1,\ldots,p; \\ & & {y}_{i}\mbox{ unconstrained in sign},\ \ i = p + 1,\ldots,m\end{array}$$
(25)

Regarding the objective function, the interval parameters associated with positive variables must be set to the upper bound to attain the maximal value. In other words, the objective function of (19)–(25) can be replaced by

$$\mbox{ Max }Z =\sum\limits_{i=1}^{p}{B}_{ i}^{U}{y}_{ i} +\sum\limits_{i=p+1}^{m}\hat{{b}}_{ i}{y}_{i}.$$

To find the upper bound Z U of Models (19)–(25), the interval parameters \(\hat{{c}}_{j}\) must be set to the values which will generate the largest feasible region. For the inequality constraint \(\sum\limits_{i=1}^{p}\hat{{a}}_{ij}{y}_{i} +\sum\limits_{i=p+1}^{m}\hat{{a}}_{ij}{y}_{i} \leq \hat{ {c}}_{j}\), different values of \(\hat{{c}}_{j}\) define a series of parallel hyperplanes. Obviously, the largest feasible region appears when \(\hat{{c}}_{j}\) is set to its upper bound \({C}_{j}^{U}\). Thus, we have \(\sum\limits_{i=1}^{p}\hat{{a}}_{ij}{y}_{i} +\sum\limits_{i=p+1}^{m}\hat{{a}}_{ij}{y}_{i} \leq {C}_{j}^{U},j = 1,\ldots,q\). The variable transformation technique, which is utilized in (9)–(15), can also be applied to the nonlinear term \(\hat{{a}}_{ij}{y}_{i}\) with positive y i . One can multiply Constraint (24) by y i for \(i = 1,\ldots,p\) and substitute \(\hat{{a}}_{ij}{y}_{i}\) by s ij to reduce the number of nonlinear terms.

Via the dual formulation, bound value assignment, and variable transformation, the two-level mathematical program of Model (7) is transformed into the following nonlinear program:

$$\begin{array}{rcl}{ Z}^{U} = \mbox{ Max }& & Z =\sum\limits_{i=1}^{p}{B}_{ i}^{U}{y}_{ i} +\sum\limits_{i=p+1}^{m}\hat{{b}}_{ i}{y}_{i} \\ \mbox{ s.t.}& & \sum\limits_{i=1}^{p}{s}_{ ij} +\sum\limits_{i=p+1}^{m}\hat{{a}}_{ ij}{y}_{i} \leq {C}_{j}^{U},\ \ j = 1,\ldots,q \\ & & \sum\limits_{i=1}^{p}{s}_{ ij} +\sum\limits_{i=p+1}^{m}\hat{{a}}_{ ij}{y}_{i} =\hat{ {c}}_{j},\ \ j = q + 1,\ldots,n \\ & & {C}_{j}^{L} \leq \hat{ {c}}_{ j} \leq {C}_{j}^{U},\ \ j = q + 1,\ldots,n \\ & & {B}_{i}^{L} \leq \hat{ {b}}_{ i} \leq {B}_{i}^{U},\ \ i = p + 1,\ldots,m \\ & & {A}_{ij}^{L}{y}_{ i} \leq {s}_{ij} \leq {A}_{ij}^{U}{y}_{ i},\ \ i = 1,\ldots,p,\ \ j = 1,\ldots,n \\ & & {A}_{ij}^{L} \leq \hat{ {a}}_{ ij} \leq {A}_{ij}^{U},\ \ i = p + 1,\ldots,m,\ \ j = 1,\ldots,n \\ & & {y}_{i} \geq 0,\ \ i = 1,\ldots,p \\ & & {y}_{i}\mbox{ unconstrained in sign},\ \ i = p + 1,\ldots,m \end{array}$$
(26)

The optimal solution Z U is the upper bound of the objective values of the interval linear program. Together with Z L solved from Sect. 3.1, \([{Z}^{L},{Z}^{U}]\) constitutes the interval on which the objective values of the interval linear program lie.

3.3 Special Case

If a linear program has only inequality constraints and nonnegative decision variables, then Model (5) is of the following form:

$$\begin{array}{rcl} \mbox{ Min }& & Z =\sum\limits_{j=1}^{n}\hat{{c}}_{ j}{x}_{j} \\ \mbox{ s.t.}& & \sum\limits_{j=1}^{n}\hat{{a}}_{ ij}{x}_{j} \geq \hat{ {b}}_{i},\ \ i = 1,\ldots,m \\ & & {x}_{j} \geq 0,j = 1,\ldots,n \end{array}$$
(27)

Models (16) and (26) for calculating the lower bound and upper bound, respectively, of the objective value are simplified to the following forms:

$$\begin{array}{rcl}{ Z}^{L} = \mbox{ Min}& & Z =\sum\limits_{j=1}^{n}{C}_{ j}^{L}{x}_{ j} \\ \mbox{ s.t.}& & \sum\limits_{j=1}^{n}{r}_{ ij} \geq {B}_{i}^{L},\ \ i = 1,\ldots,m \\ & & {A}_{ij}^{L}{x}_{ j} \leq {r}_{ij} \leq {A}_{ij}^{U}{x}_{ j},\ \ i = 1,\ldots,m,\ \ j = 1,\ldots,n \\ & & {x}_{j} \geq 0,j = 1,\ldots,n \end{array}$$
(28)
$$\begin{array}{rcl}{ Z}^{U} = \mbox{ Max }& & Z =\sum\limits_{i=1}^{m}{B}_{ i}^{U}{y}_{ i} \\ \mbox{ s.t.}& & \sum\limits_{i=1}^{m}{s}_{ ij} \leq {C}_{j}^{U},\ \ j = 1,\ldots,n \\ & & {A}_{ij}^{L}{y}_{ i} \leq {s}_{ij} \leq {A}_{ij}^{U}{y}_{ i},\ \ i = 1,\ldots,m,\ \ j = 1,\ldots,n \\ & & {y}_{i} \geq 0,\ \ i = 1,\ldots,m \end{array}$$
(29)

Since (28) and (29) are linear programs, one can calculate the lower and upper bounds of the objective values easily.

4 An Example

Consider the following interval linear programming problem.

$$\begin{array}{rcl} \mbox{ Min }& & Z = (7,10){x}_{1} + (7,9){x}_{3} - 2{x}_{4} + (-2,-1){x}_{5} + (-3,-1){x}_{6} - 10{x}_{7} \\ \mbox{ s.t.}& & {x}_{1} + 2{x}_{2} - 2{x}_{3} + (1,4){x}_{4} + (3,5){x}_{6} + (1,2){x}_{7} = (-6,-4) \\ & & -2{x}_{1} + (1,3){x}_{2} - {x}_{3} + (2,3){x}_{4} + (1,2){x}_{5} + (1,2){x}_{6} + 2{x}_{7} = (-1,2) \\ & & (1,3){x}_{1} + 2{x}_{3} + 2{x}_{4} + (2,4){x}_{5} + 2{x}_{6} - 2{x}_{7} = (6,10) \\ & & {x}_{1},{x}_{2},{x}_{4},{x}_{5},{x}_{6} \geq 0;{x}_{3},{x}_{7}\mbox{ unconstrained in sign} \\ \end{array}$$

Based on Model (16), the lower bound of the objective value Z L can be formulated as:

$$\begin{array}{rcl}{ Z}^{L} = \mbox{ Min}& & 7{x}_{ 1} +\hat{ {c}}_{3}{x}_{3} - 2{x}_{4} - 2{x}_{5} - 3{x}_{6} - 10{x}_{7} \\ \mbox{ s.t.}& & {x}_{1} + 2{x}_{2} - 2{x}_{3} + {p}_{14} + {p}_{16} +\hat{ {a}}_{17}{x}_{7} =\hat{ {b}}_{1} \\ & & -2{x}_{1} + {p}_{22} - {x}_{3} + {p}_{24} + {p}_{25} + {p}_{26} + 2{x}_{7} =\hat{ {b}}_{2} \\ & & {p}_{31} + 2{x}_{3} + 2{x}_{4} + {p}_{35} + 2{x}_{6} - 2{x}_{7} =\hat{ {b}}_{3} \\ & & 7 \leq \hat{ {c}}_{3} \leq 9 \\ & & -6 \leq \hat{ {b}}_{1} \leq -4,\ \ -1 \leq \hat{ {b}}_{2} \leq 2,\ \ 6 \leq \hat{ {b}}_{3} \leq 10 \\ & & {x}_{4} \leq {p}_{14} \leq 4{x}_{4},\ \ 3{x}_{6} \leq {p}_{16} \leq 5{x}_{6},\ \ {x}_{2} \leq {p}_{22} \leq 3{x}_{2},\ \ 2{x}_{4} \leq {p}_{24} \leq 3{x}_{4} \\ & & {x}_{5} \leq {p}_{25} \leq 2{x}_{5},\ \ {x}_{6} \leq {p}_{26} \leq 2{x}_{6},\ \ {x}_{1} \leq {p}_{31} \leq 3{x}_{1},\ \ 2{x}_{5} \leq {p}_{35} \leq 4{x}_{5} \\ & & 1 \leq \hat{ {a}}_{17} \leq 2 \\ & & {x}_{1},{x}_{2},{x}_{4},{x}_{5},{x}_{6} \geq 0;{x}_{3},{x}_{7}\mbox{ unconstrained in sign} \\ \end{array}$$

This model is a nonlinear program. By using the nonlinear programming solver LINGO (LINDO Systems 2005), we derive \({Z}^{L} = -12,\ {x}_{1}^{{_\ast}} = 26,\ {x}_{3}^{{_\ast}} = 38,\ {x}_{7}^{{_\ast}} = 46,\ {x}_{2}^{{_\ast}} = {x}_{4}^{{_\ast}} = {x}_{5}^{{_\ast}} = {x}_{6}^{{_\ast}} = 0,\ \hat{{c}}_{3} = 7,\ \hat{{b}}_{1} = -4,\ \hat{{b}}_{2} = 2,\ \hat{{b}}_{3} = 10\), and \(\hat{{a}}_{17} = 1\).

The upper bound of the objective value Z U, according to Model (26), can be formulated as

$$\begin{array}{rcl}{ Z}^{U} = \mbox{ Max}& & \hat{{b}}_{ 1}{y}_{1} +\hat{ {b}}_{2}{y}_{2} +\hat{ {b}}_{3}{y}_{3} \\ \mbox{ s.t.}& & {y}_{1} - 2{y}_{2} +\hat{ {a}}_{31}{y}_{3} \leq 10 \\ & & 2{y}_{1} +\hat{ {a}}_{22}{y}_{2} \leq 0 \\ & & -2{y}_{1} - {y}_{2} + 2{y}_{3} =\hat{ {c}}_{3} \\ & & \hat{{a}}_{14}{y}_{1} +\hat{ {a}}_{24}{y}_{2} + 2{y}_{3} \leq -2 \\ & & \hat{{a}}_{25}{y}_{2} +\hat{ {a}}_{35}{y}_{3} \leq -1 \\ & & \hat{{a}}_{16}{y}_{1} +\hat{ {a}}_{26}{y}_{2} + 2{y}_{3} \leq -1 \\ & & \hat{{a}}_{17}{y}_{1} + 2{y}_{2} - 2{y}_{3} = -10 \\ & & 7 \leq \hat{ {c}}_{3} \leq 9 \\ & & -6 \leq \hat{ {b}}_{1} \leq -4,\ \ -1 \leq \hat{ {b}}_{2} \leq 2,\ \ 6 \leq \hat{ {b}}_{3} \leq 10 \\ & & 1 \leq \hat{ {a}}_{31} \leq 3,\ \ 1 \leq \hat{ {a}}_{22} \leq 3,\ \ 1 \leq \hat{ {a}}_{14} \leq 4,\ \ 2 \leq \hat{ {a}}_{24} \leq 3,\ \ 1 \leq \hat{ {a}}_{25} \leq 2 \\ & & 2 \leq \hat{ {a}}_{35} \leq 4,\ \ 3 \leq \hat{ {a}}_{16} \leq 5,\ \ 1 \leq \hat{ {a}}_{26} \leq 2,\ \ 1 \leq \hat{ {a}}_{17} \leq 2 \\ & & {y}_{1},{y}_{2},{y}_{3}\mbox{ unconstrained in sign} \\ \end{array}$$

By employing LINGO, we obtain \({Z}^{U} = 29.8\), which occurs at \({y}_{1}^{{_\ast}} = -1.4,\ {y}_{2}^{{_\ast}} = -2.4,\ {y}_{3}^{{_\ast}} = 1.9,\ \hat{{c}}_{3} = 9,\ \hat{{b}}_{1} = -6,\ \hat{{b}}_{2} = -1\), and \(\hat{{b}}_{3} = 10\). The corresponding primal solution is \({x}_{3}^{{_\ast}} = 2.6,\ {x}_{5}^{{_\ast}} = 1.6,\ {x}_{7}^{{_\ast}} = -0.8\), and \({x}_{1}^{{_\ast}} = {x}_{2}^{{_\ast}} = {x}_{4}^{{_\ast}} = {x}_{6}^{{_\ast}} = 0\).

Combining these two results, we conclude that the objective values of this interval linear program lie in the range of [ − 12, 29. 8].

5 Conclusion

Linear programming has been considered as the most powerful technique for improving the efficiency and increasing the productivity of companies and public organizations. To further expand its applicability, more general models are continually being developed. This chapter generalizes the conventional linear programming of constant parameters to interval parameters. As opposed to the post-optimality analysis which conducts an ex post facto analysis after the optimal solution for a set of constant parameters is obtained, the interval linear programming discusses the range of optimal objective values produced from the interval parameters, including cost, requirement, and technology, in an a priori manner.

The idea is to find the lower bound and upper bound of the range by employing the two-level mathematical programming technique. Following the duality theorem, the two-level mathematical programs are transformed into a pair of one-level mathematical programs so that the numerical solution method can be applied. When all interval parameters degenerate to constant parameters, the two-level mathematical programs boil down to the conventional linear program. An example illustrates that the proposed idea is indeed able to find the range of the objective values of the interval linear programming problem.

For general interval linear programming problems, it is very probable that for some range of interval parameters the problem is infeasible. Our method ignores those infeasible values and finds the lower bound and upper bound of the feasible solutions. It does not identify the range of values which cause infeasibility.

While this chapter develops a pair of mathematical programs which are able to find the lower bound and upper bound of the objective values, the mathematical programs are nonlinear which may be difficult to solve for large-scale problems. In the future, a solution method which only involves linear program formulation is desired to assure solvability.

Finally, interval linear programming is not just a topic for theoretical discussion. It does have real world applications. Kao and Liu [7] used forecasted financial data, represented in intervals, to predict the performance of Taiwan commercial banks. Since the problem has a special structure, it can be solved easily by relying on the linear programming technique. In a later study, Kao and Liu [8] found that the interval data approach produces an interval objective value which is too wide to provide useful information. The values close to the bounds, both the lower bound and upper bound, have very small probability of occurrence. If the distributions of the interval data are known, then the distribution of the objective values, which is more informative for making subsequent decisions, can be obtained. Therefore, another direction for future study is to derive the distribution of the objective values based on the distributions of the parameters.