Boolean and Graph Theoretic Formulation
Boolean and Graph Theoretic Formulation
NPS55-87-007
P. DEARING
M.
P. HAMMER
L.
B. SIMEONE
AUGUST 1987
Prepared for:
Naval Postgraduate School
Monterey, CA 93943-5000
FedDocs
D 208.1M/2
NPS-55-87-007
NAVAL POSTGRADUATE SCHOOL
MONTEREY, CALIFORNIA
NPS55-87-007
6a NAME OF PERFORMING ORGANIZATION 6b OFFICE SYMBOL 7a NAME OF MONITORING ORGANIZATION
Naval Postgraduate School (If applicable)
Code 55
6c. ADDRESS {City, State, and ZIP Code) 7b ADDRESS (C/ty. State, and ZIP Code)
8c. ADDRESS (Dry, State, and ZIP Code) 10 SOURCE OF FUNDING NUMBERS
PROGRAM PROJECT TASK WORK UNIT
ELEMENT NO NO NO ACCESSION NO
BOOLEAN AND GRAPH THEORETIC FORMULATIONS OF THE SIMPLE PLANT LOCATION PROBLEM
12 PERSONAL AUTHOR(S) „ .. \
(Rutgers University)
.
, ,,
13a. TYPE OF REPORT 3b T,ME COVERED DATE OfREPORZ (Year, Month, Day) 15 PAGE COUN
Technical FROM TO August 18
16. SUPPLEMENTARY NOTATION
17 COSATI CODES 18 SUBJECT TERMS (Continue on reverse if necessary and identify by block number)
FIELD GROUP SUB-GROUP location theory, pseudo-Boolean functions, set covering
vertex packing, graph theory, integer programming
by
P. M. Dearing*
Clemson University
and Naval Postgraduate School
P. L. Hammer**
Rutgers University
and
B. Simeone
Universita' di Roma "La Sapienza"
and Rutgers University
Abstract
function. This form of the problem is then transformed into a set covering problem and also into a
weighted vertex packing problem on a graph. These formulations are compared to similar
*Partially supported by NSF Grant number ISP-801 1451 (EPSCoR) and the National Research
Council
In this paper the simple plant location problem, SPLP, is formulated as the minimization of
a pseudo-Boolean function. This formulation is then transformed into two other discrete
optimization problems: a set covering problem and a weighted vertex packing problem on a graph.
These three formulations of the SPLP are compared to similar formulations that have appeared in
locations for plants (or plant sites) in some space such as a network or the plane. If a plant is
opened at location i, a fixed cost fj is incurred. Let D= {j: j = 1, . . , d} be the index set of
customers. The unit cost of transportation between customer j and plant location i is given by cj;
for each i s P and j e D. Each customer has a demand which must be met by the opened plants
and is assumed to be one unit. If a customer's demand is different from one unit, it is scaled to one
and the transport costs are scaled accordingly. Assume further that the capacity for each opened
plant is sufficient to meet the demand of all customers (hence the alternative name "uncapacitated
plant location problem"). The SPLP is then to choose a subset of locations from P at which plants
are opened and to specify the transportation between opened plants and all customers so as to meet
customer demand and to minimize the total fixed cost plus the total transportation cost.
As an example, consider the network in Figure 1 where there is a customer at each node and
a plant site at each of the nodes 1, 3 and 4. Each edge number is the transportation cost accross that
edge. For each plant site i and customer j, the transportation cost Cjj is the minimum cost over all
paths between i and j. Table 1 gives the fixed cost fj and the transportation costs Cy for each i e P
and j€ D.
© i
l
1 2 3 4 5 fi
1 2 1 4 3 5
plant sites 3 1 1 3 2 6
4 4 4 3 1 4
The approaches discussed here are not limited to a SPLP defined on a tree network, nor even to a
network. The approaches apply to any SPLP defined by a matrix of nonnegative Cj; values and
In the literature there are several recent surveys of location problems that include a
discussion of the SPLP. The extensive surveys by Cornuejols, Nemhauser and Wosley [3] and by
Krarup and Pruzan [8] are devoted almost entirely to the SPLP. Each includes a thorough
discussion of the problem's origins and several of its formulations. References [2,3] consider the
"uncapacitated facility location problem" which is equivalent to the SPLP, but maximizes the total
revenue from satisfying customer demands minus the cost of opening plants at the chosen sites.
The formulations discussed below may be applied directly to the uncapacitated facility location
A BOOLEAN FORMULATION
formulation follows naturally from the well known property that in some optimal solution, each
customer j will receive its entire unit of demand from one open plant, namely a plant with minimum
transportation cost to customer j.
otherwise. Let yj = 1 - yj be the complement of yj. For each customer j, let j(.) be a
permutation of the location indices i e P so that the transportation costs from each j(i) to j are in
nondecreasing order:
Observe that in meeting the demand of customer j, the cost c:(]\j is incurred iff a plant is
open at j(l), i.e., yw\\ = 1; or the cost Cj(2)j is incurred iff a plant is open at j(2) and no plant is
open at j(l), i.e., yjmyjO) = 1; or in general, the cost Cjaaj is incurred iff a plant is open
at j(k) and no plant is open at locations with smaller cost: j(l),j(2), .. ,j(k-l), i.e.,
yj(i)yj(2) • • •
j e D and k = 1, . .
, p. Furthermore, let riyj/Q\ = 1 in subsequent expressions. Then the
T =-
Xcj(0j
v vny v yv
'j(i-iyjO)
. .
1N ., + M.ny v ,. (2)
j pj *j(p) j
T2 = ly
3
+ 2y 3yi + 4y iy 3y 4 + M2y 1 y3 y4 .
The total fixed cost incurred by the open plants is given by the sum of the f^yj. Then, a
pseudo-Boolean function F (see reference [7]) of the variables yj, y^, . ,y is defined as the total
p
.
P dp
F(y
r • •
.
p
) -
gtyi + X Ic [
j(l)j
nyj(i . 1)yj(i) + Mj ny
j(p)
] .
PI: min { F( yi , . .
,y ) :
ft
= 0,1, ie P }.
p
A formulation equivalent to PI is reported by Hammer [6] and also included in the survey [8].
In a specific instance of the SPLP, the function F can generally be simplified by adding
together those terms with identical variables. Two customers j and j' will have terms with identical
variables, say ny:^. j Wj^) in Tj, and riyjv^. j WiVM m If, whenever the sequence of plant
sites, ordered by j(i) and j'(i), are identical for i = k, k+1, . . ,p for some k < p. This ability to
aggregate like terms is a desirable feature of the pseudo-Boolean function F that is not found in
most other formulations of the SPLP. In particular, since each penalty term ny^ identical for is
each customer j, all these may be added together to yield one penalty term. Let M denote the sum
of the M; over j e D. Then the function F for the example problem, simplified by adding together
like terms, is given as follows:
PENALTY VALUES
It is convenient to rewrite the function F, using the common penalty term M, as:
P dp
F(y = I + Ic ny + MRy
J
r . . .
, y ) f.
y .
p j(p)
The following discussion shows how the value of F depends on the penalty term M. Observe that
(y 1' • • • . yp) *s an infeasible solution, then F(yj, . . . , yp) = M, the penalty value. Consider a
This follows since each infeasible solution has the objective function value M < z* < F(y^, . . .
,
minimum solution to F has optimal value z*. This follows since for each feasible solution
(yi»
• • • . yp)' z * — F(yj, • • • . y p ). and for each infeasible solution (y'j, . . .
,y' ), z* < M=
F(y'j, . . . ,
y'
D ).
This same argument shows that with penalty cost M > z*, each minimum
solution to F is feasible.
Thus for all M > z*, the optimal objective function value of PI is z*, and any upper bound
on z* will suffice for a value of M. Values for the penalty coefficients M: may be obtained from
any feasible solution (y* j, . y* ). Define
p
. . ,
P
P^fyV and c^ = mm { c
j(i)j
ny*
j(M)
y*
j(i)
: i = 1, . . .
, p
1
},
that is, f* is the total fixed cost of this solution and c*; is the minimum transport cost to customer j
for this solution. Then each penalty cost M: may be chosen as any value greater than c*j + P/d.
A SET COVERING FORMULATION
Problem PI is next transformed into a set covering problem. This formulation has fewer
variables and constraints than a set covering formulation of the SPLP by Kolen [9], while it retains
the combinatorial properties of his formulation. It is also related to a covering formulation for the
uncapacitated facility location problem reported in reference [2] but obtained by a different
approach.
For each variable y,vj\ which appears in uncomplemented form in expression (2) substitute
y,vj\ = 1 - y;Q\ and simplify. Expresion (2) then becomes, for customer j,
p-1
t. = Cviv +
j(i)j
y(c 7 1+1
l1v - - c./. v)ny 7 .v + (m.
v - cv v )ny v v 0)
j
-ti
j( )j J(0r j(0 j j(p)r j(p)
T'
2
= l + y 3 + 2yjy3 + (M 2 - 4)y l y 3 y 4 .
Then the function F has an equivalent form, denoted by F', which is the sum of the fixed costs plus
F'(y
1
.--.yp) = I
1=1
f
1 yi
+ IT
j=l
The function F' has a natural interpretation. For each customer j e D, the cost Cjq\j is a
constant that is incurred by any solution to the SPLP. That is, the minimum transport cost to
customer j, c;q\j, must always be incurred. This cost may be zero if a plant site and a customer
using the identity yj + yj = 1. Any two terms of the form ayj+ byj may be rewritten as follows:
In the second case, an uncomplemented variable yj with zero cost may be given the value one, and
all terms containing the complementay variable yj will have value zero and may be eliminated from
Here y 4 is retained in the function F' in order to illustrate the next transformation.
Next, the SPLP is transformed by replacing each term ny:/j\ in F by a variable znj(i)'
z nj(i) ^ n yj(i) i e p, j
e d. (5)
But each constraint of (4) is equivalent, for zero-one variables and their complements, to the
constraint
^/j( k ) nj(i)
These transformations, applied to the general expression for F, yield the set covering
problem:
p d p-1 d
mm gfc+gl I c + M + C
( cj(i + l)j
J
c
P2:
" j( i)j) ^(i) <
j
"
j(p)PW J(DJ
S-t-
gyj(k )
+ ^j(i) ^ 1 - P, JE D
7
Problem P2 will have at most d(p-l) + p + 1 variables and d(p-l) + 1 constraints.
When F' is simplified by adding together like terms and by applying the reduction (4), the
number of variables zjjjq) and the number of constraints in P2 will be decreased accordingly. For
the example problem, with F' simplified and M' = (M - 18), problem P2 becomes:
s. t.
yi + y 3 +z 13 >1
y 3 + y4 + z 34 > 1
yi+ Y3 + Y4 +z 134 ^ l
The above example suggests further simplifications that may apply to specific problems.
Any yj variable with a zero cost coefficient may be set to one in any optimal solution. The
corresponding column and all rows with a one in that column may be eliminated. In the example
problem, setting V4 = and eliminating columns and rows leaves one constraint: yj + y 3 + z^ 3 >1,
1
from which it is easily seen that the two alternative optimal solutions are to open plants at sites
{ 1,3} or { 1,4} with a cost of 13. Thus the set covering formulation may be interpreted as
preprocessing of the problem data that may specify some plant sites to be opened a priori .
The well known set covering 'reduction rules' [10] will generally apply to problem P2. For
coefficient of yj is not greater than that of zj-n^v In particular, since the coefficient of yj is less
than M, the variable zni(p) and its column can always be eliminated.
Row reductions may follow. If the variable zxii(k) nas ^>een eliminated from a row by a
column reduction, this row may now be dominated by some other row. In this case, the dominating
row may be eliminated.
Problem P2 is quite similar to Kolen's set covering formulation of the SPLP [9] with the
following differences. First, Kolen's formulation does not allow the simplifications we get from
adding together like terms. Each such simplification eliminates at least one variable and constraint.
His formulation has a penalty variable zni(p) an(i i ts corresponding constraint for every j in D,
8
whereas these terms are combined into one term and constraint in problem P2. These observations
imply the constraint matrix of problem P2 is a proper subset of the constraint matrix of Kolen's
formulation. The example problem is taken from Kolen [9]. His set covering formulation of the
The set covering reduction rules also have more limited application to Kolen's formulation.
In general, these rules would eliminate the columns corresponding to the variables zni(p) ^or eacn J
in D, but since other terms are not agregated, fewer columns may be eliminated. For the example
problem, only the rows and columns corresponding to the zni(p) vai aD es could be eliminated. "i l
Furthermore, in Kolen's formulation, no y^ variables have zero coefficients so that no plants can be
[9] when the transportation costs were weighted distances in a tree network and the nodes served
both as customer and plant locations. Since the constraint matrix of P2 is a submatrix of the matrix
of Kolen's formulation, and since a submatrix of a totally balanced matrix is totally balanced, this
Problem P2 is closely related to a formulation reported in reference [2] for the uncapacitated
facility location problem and obtained by a canonical reduction of the matrix of q; values. This
formulation also aggregates terms where possible and so reduces the number of variables and
constraints.
graph. To see this equivalence, problem P2 is expanded by adding redundant variables and
constraints so that the expanded matrix of constraint coefficients is the vertex-vertex incidence
Consider the function F, which has been simplified by adding together like terms and
reduced by expression (4). Let S be the subset of indices i in P corresponding to those terms in F'
that contain only yj. For each i in S, yj represents the aggregation of one or more variables yu^
over those indices j such that j(l) = i. To obtain problem P2 each variable y-
{
was replaced by the
A new problem, called P2', is obtained by expanding problem P2 as follows. For each i in
P-S, add the variable zj to problem P2 with a zero cost in the objective function and add the
constraint yj + Zj > 1. Problem P2' now has a variable z x and a constraint y { + z x > 1 for each i in
A
P. This version of P2' is equivalent to P2 since any feasible solution to P2 may be amended by Zj
= 1 for i in P - S to obtain a feasible solution to P2' with no change in the objective function.
Conversely, deleting Zj = 1 from any feasible solution to P2' gives a feasible solution to P2 with
Let m be the number of variables znj(i) * n ^> iricluding the Zj added above. Note that m is
also the number of constraints in P2'. The coefficient matrix of P2' may be written as (I
m ,A),
where I
m is an mxm identity matrix with a column corresponding to each variable zni(i)' an( A is *
an mxp matrix with a column corresponding to each variable y v Observe that A contains the pxp
identity matrix I as a submatrix since for each i in P, there is a constraint Zj + yj > 1.
p
Next, the set of constraints with coeficient matrix (
r
, I
p ),
where A 1
is the transpose of A,
c - (
V
Im
At
M
'pJ
Since the matrix C is symmetric with ones on the diagonal, it is a vertex-vertex adjacency
matrix of some graph G. The graph G is seen to be bipartite with one set of vertices corresponding
to variables yj and the other to the variables znj(i)- ^ach vertex z ni(i) * s adjacent to those vertices
yj where i is in the set Ilj(i). Each vertex is weighted by the cost coefficient of the respective
variable. Therefore, the set covering problem P2' is a weighted domination problem on the
bipartite graph G. Figure 2 shows the bipartite graph of the example problem.
10
Figure 2: Bipartite Graph of the Example Problem
The third formulation obtained for the SPLP is that of a weighted vertex packing problem
Boolean identity:
Solving for ny^p\, substituting into expression (2) and simplifying yields
P
T"- = V (c
v v
.
v -M.)ITy
J v y
j(i-irj(i)
+ M. .
(7)
j gj jO)j j j
F(y,, • • • ,y
p
> = -
.f^i
-
l£ (Mj -
j(i)j
)ny
j(i . 1)yj(i)
m + gfj
The function G for the example problem, with M; = 5 and without simplifications, is:
11
Hammer and Rudeanu [7], and Ebenegger, Hammer, and de Werra [5] have shown that the
problem of maximizing a pseudo— Boolean function given in a posiform may be transformed into a
maximum weighted vertex packing problem on a graph. In reference [5], the graph corresponding
to the posiform pseudo-Boolean function is called a "conflict graph". The conflict graph has a
vertex for each term in the function, and an edge connecting two vertices if the corresponding terms
contain at least one complementary pair of variables. That is, if yj is in some term of G and its
complement yj is in some other term, there is an edge between the two vertices. The vertex weights
of the graph are the coefficients of the terms in G. We call the conflict graph of the function G
derived from a SPLP a "plant location graph" (PLG). The plant location graph for the expample
problem, without any simplifications is shown in figure 3.
It is shown in reference [5] that the maximum value of G is equal to the value of a maximum
weighted vertex packing of the conflict graph. We denote the problem of determining a maximum
weighted vertex packing in the plant location graph of the function G as problem P4.
The SPLP has been formulated as a weighted vertex packing problem by Cho, Johnson
Padberg, and Rao [1] and by Cornuejols and Thizzy [4]. Our formulation is closely related theirs
but with some interesting differences. An obvious similarity is the highly structured form of the
plant location graph. For each j in D, the set of vertices corresponding to the terms in T'j form a
clique ('rows' in Figure 3). For each i, a star is determined with the vertex corresponding to yj at
the center and an adjacent vertex corresponding to the term containing yj in each expression T":
Several differences are observed. First, the plant location graph of P4 contains all the edges
of the graph constructed in references [1,4] but has the additional edges (between cliques)
corresponding to complementary variables. For example, there is an edge between y ^3 and yjy3
in the example problem. These additional edges strengthen the vertex packing formulation.
Second, if no simplifications are made in G by adding together like terms, the plant location
graph has the same number (dp+p) of vertices as does the graph constructed in [1,4]. However,
each simplification of G by adding like terms reduces the number of vertices in the plant location
graph. This reduction in vertices is not possible for the graph constructed in references [1,4].
Third, the reduction given by expression (4) may be applied to the function G. For each i
consider the terms (M; - Cj(j)j)y;(j\ + fjyj, such that j(i) = i. For the function G, the penalty cost
M; may be chosen sufficiently large so that Mj - Cj(j\; > fj. Then these two terms reduce to (Mj -
c i(i)i "
^i^i(i)
+ ^i
w ^ich eliminates the vertiex corresponding to to yj from the plant location graph.
With these reductions, the plant location graph has at most (dp) vertices. The conflict graph
resulting from the function G, after all simplifications and reductions, is called the reduced plant
12
location graph.
For the example problem without simplifications in the function G, the plant location graph
contains 18 vertices and 73 edges. However applying all possible simplifications and reductions,
Figure 4 shows the reduced plant location graph for the function G as simplified above.
Finally, for all SPLP with p plant sites and d customers, the vertex and edge sets of the
graphs constructed in references [1,41 are identical. Only the vertex weights change. However, a
plant location graph may differ from one SPLP to another with the same sets P and D since the
vertex set and the edge set depend directly on the costs Cj; and fj. In particular, the plant location
graph for a SPLP arising from a tree network may differ from a SPLP arising from a general
network of the same size. This raises the following question corresponding to Kolen's result for
the SPLP on a tree network: Does the plant location graph arising from a SPLP on a tree network
Problems PI and P3 are equivalent to the well known integer programming formulation of
the SPLP, often called the "strong formulation" [3] which is given below. The variables yj are the
13
same as defined above. Define xy to be a binary variable indicating whether customer j is served
by a plant at i (xj; = 1) or not (x^ = 0). Then the strong formulation may be written as follows:
p
s. t.
I
i=l
x..
1J
= 1 j e D (9)
Xy < yi
je D, ie P (10)
Xij = 0,1 yi
= 0,1 (11)
Given next is a relationship between the variables xj; and the Boolean expressions in the yj
variables that were defined earlier. For any set of values for the yj variables, xjj = 1 if and only if a
plant is open at site i and the transportation cost Cjj between customer j and site i is minimum over
all other open plant sites. That is, for each i € P and j e D with the j(.) defined by expression (1)
andj(k) = i,
x ij = yj(i)yj(2) • • •
yj(k-nyj(k) = n yj(k-i)jyj(k). (12)
Expression (12) is substituted for each xj; in problem P5. Thus each constraint of (10)
becomes
nyj(k-i)jyj(k) ^ yi
which is always satisfied for y^ equal to either or 1. With these substitutions, the constraints (10)
Substituting expression (12) for each xj; into constraint (9) yields
JnWjW = * je D (13)
Comparing (13) to the Boolean identity (6) implies that each constraint (13) is equivalent to
each term ny;/ \ is forced to be zero in an optimal solution. This is accomplished by adding to the
p
14
objective function the terms M;nyj/ \ where M: is a large penalty cost, for each j in D.
p
Finally, the Cjj may be reindexed by the permutations j(.) to yield c;n\;, and expression
(12) is substituted for each x^ in the objective function. With these changes, problem P5 is written
as
dp
min
J [
J>)j
nyj(i-i) yj(i) + Mn
W +
p
S
f
i
yi
s. t. yj = 0,1
(12) is again substituted for xj: in the objective function (8) and in each constraint (9) and (10) of
problem P4. The constraints (10) are deleted as above since they are always satisfied. For the
resulting problem, consider a Lagrangian relaxation with respect to the constraints (9) and with
multipliers M;. This yields the following problem.
d d
1^^)
p p p
min 11 c
j(i)j
ny
j(i)j
yj(k) +
gty. + gM^l -
yi
= 0,1.
15
Figure 3: Conflict graph of G without simplifications
16
REFERENCES
[1] D. C. Cho, E. L. Johnson, M. Padberg, and M. R. Rao, "On the uncapacitated plant location
problem I: Valid inequalities and facets," Math, of Opns. Res. 8, 579-589 (1983).
problem," Tech Report 605, School of OR & IE, Cornell Univ., (1984). Also, Ch. 3,
[4] G. Cornuejols, and J. M. Thizy, "Some facets of the simple plant location polytope," Math.
Prog. 23,50-74(1982).
(1968).
[7] P. L. Hammer and S. Rudeanu, Boolean Methods in Operations Research Springer- Verlag, .
[8] J. Krarup and P. M. Pruzan, "The simple plant location problem: survey and synthesis,"
[9] A. Kolen, "Solving covering problems and the uncpacitated plant location problem on trees,"
[10] R. S. Garfinkel and G. L. Nemhauser, Integer Programming John Wiley, . New York, 1972.
17
DISTRIBUTION LIST
NO. OF COPIES
3 2768 00302767 3