A Unified Framework For Integer Programming Formul
A Unified Framework For Integer Programming Formul
Abstract— Graph theory has been a powerful tool in solving difficult and complex problems arising in all
disciplines. In particular, graph matching is a classical problem in pattern analysis with enormous
applications. Many graph problems have been formulated as a mathematical program and then solved using
exact, heuristic, and/or approximated-guaranteed procedures. On the other hand, graph theory has been a
powerful tool in visualizing and understanding complex mathematical programming problems, especially
integer programs. Formulating a graph problem as a natural integer program (IP) is often a challenging
task. However, an IP formulation of the problem has many advantages. Several researchers have noted the
need for natural IP formulation of graph theoretic problems. The present study aims to provide a unified
framework for IP formulation of graph-matching problems. Although there are many surveys on graph
matching problems, none is concerned with IP formulation. This paper is the first to provide a
comprehensive IP formulation for such problems. The framework includes a variety of graph optimization
problems in the literature. While these problems have been studied by different research communities,
however, the framework presented here helps to bring efforts from different disciplines to tackle such
diverse and complex problems. We hope the present study can significantly help to simplify some of the
difficult problems arising in practice, especially in pattern analysis.
1. INTRODUCTION
Graph theory has been a powerful tool in solving difficult and complex problems that arise in different
disciplines. In particular, graph matching has enormous applications. Recent surveys of graph theoretic
problems are presented in [1,2,3,4,5,6,7,8,9]. Most graph optimization problems are NP-hard. All
problems discussed in this paper are known to be NP-hard, except for the graph isomorphism and the
Golomb Ruler problems whose complexity statuses are still open, [10,11].
Over the years, many graph and combinatorial problems have been formulated as optimization
problems and have been solved by using exact, heuristic, or approximation-guaranteed procedures
[12,13,14,15,16]. Similarly, graph theory has been a powerful tool in visualizing and understanding
complex optimization problems, (see for example, [17,18,19] for integer programming, [20,21,22,23] for
image analysis, [24,25,26] for bioinformatics, and [27] for the social sciences).
Since graph theory and optimization are so closely related, the theoretical and algorithmic developments
from one area have been successfully used to address difficult and complex problems in the other discipline.
Formulating graph problems as natural integer programs (IP) is often a challenging task. However, to
tackle such difficulty researchers often use an indirect IP formulation of the problem and use it as an upper
(lower) bound to design algorithms. A series of indirect linear programs for seven graph theoretic problems
is presented in [28] where it is noted that “the formulation is indirect in the sense that it captures certain
properties of an optimal (integer) solution, yet an integral solution (to the formulation) does not provide an
integral solution to the original problem, as opposed to standard linear programming relaxation” (Page 588).
A natural integer programming formulation of a graph problem has several advantages: (1) it is equivalent
to the graph problem; (2) its relaxation often serves as a good upper (lower) bound for the graph problem;
1
and (3) it is often used in designing approximation-guaranteed and heuristic algorithms. A unified approach
based on graph matching and using mathematical programming formulations provides avenues for a better
understanding of relationships between these complex problems. In connection to metric labeling
problems, Kleinberg and Tardos [29] presented natural IP formulations for special cases and gave
approximation-guaranteed results. They pointed out that “the difficulty of the general case has to do with
the absence of a natural integer programming formulation for the problem,” [30]. In that spirit, Chekuri,
Khanna, Naor, and Zosin [30] presented a natural IP formulation for the general case with an
approximation-guaranteed algorithm. Several other papers, [30,31,32,33], have pointed out the need for
natural IP formulations of graph problems. An early IP formulation of a matching problem is given in [34].
Luttamazuzi, Pelsmajer, Shen, and Yang [33] suggested a natural IP formulation for three graph
optimization problems, including Bandwidth minimization. A different natural IP formulation of
Bandwidth minimization is also introduced in [35]. The first approach to natural IP formulations of a linear
arrangement problem is given in [36,37]. In [38], a natural IP formulation of a graceful labeling problem
is discussed. A natural IP formulation for multi-layer crossing minimization is proposed in [39]. The
natural IP formulations for the Golomb Ruler problem are presented in [10,40] and in [41], a natural IP
formulation for a contact map problem is given.
In Part I of this paper, we provide a unified approach based on graph matching that allows natural
integer program formulations for many graph theoretic problems. The relationship between these problems
and the quadratic assignment problem (QAP) is pointed out. The approaches include an IP formulation for
a variety of problems including the list given below. IP formulations for problems 1-12 are presented in
Part II, while IP formulations for problems 13-18 are presented in Part I. For some of these problems, we
do not know of any other natural IP formulations available in the literature, for some other problems, our
formulations are different from those that appear in the literature and provide alternative approaches.
1. Several variations of the traveling salesman problem,
2. Bandwidth problem,
3. Linear arrangement problem,
4. Profile minimization in graphs,
5. Minimum cut linear arrangement,
6. Graph and subgraph isomorphism,
7. Largest common subgraph problem,
8. Maximum subgraph matching,
9. Graph coloring and related problems: graph homomorphism, list coloring, optimum cost
chromatic partition, sum coloring, graph labeling, T-coloring, maximum independent set and
clique, and maximum clique partitioning,
10. Metric labeling variations: embedding a graph in a d-dimensional mesh, linear arrangement with
d-dimensional cost, minimizing storage-time product, and task assignment in distributed
computing systems,
11. Golomb ruler problem,
12. Contact map problem,
13. Graph orientation
14. Facility layout problem,
15. Quadratic assignment problem,
16. Fixed spectrum frequency assignment,
17. Interval graph completion,
18. Multi-layer crossing minimization.
PART I
2. General Approaches
Parameters:
G=(V,E), an undirected graph,
2
G=(V,A), a directed graph,
V, (|V|=n), set of vertices in a graph G,
E V V , set of edges in undirected graph G (allowing possible self-loop),
A V V , set of arcs in digraph G (no self-loop is allowed),
a = (u , v ) A , an arc directed from u toward v,
we ( wa ) , the weight of an edge e = {u, v} E (an arc a = (u , v ) A ),
E , set of edges in complement of a graph G,
A , set of edges in complement of a digraph G, (i.e., removing all ‘arcs’ in A and adding an ‘edge’
between every two nodes where there is no arc in G . Thus, if {u , v} A then (u, v),(v, u) A ),
N (u ) = {v V : {u , v} E} , neighbors of a node u V in graph G,
N (u ) = {v V : (u, v) A} , neighbors of a node u V in digraph G,
N[u] = N (u) {u} ,
f : V → V ' , a function mapping V in graph G to V’ in graph G’,
c(u,u’), non-negative cost of assigning a node u V to a node u ' V ' ,
d({u,v},{u’,v’}), the interaction (or communication) costs (possibly negative) between two edges,
d((u,v),(u’,v’)), the interaction (or communication) costs (possibly negative) between two arcs.
Decision variables:
xuu ' = 1 , if a node u V is assigned to a node u ' V ' , and 0 otherwise,
yee ' = 1 , if an edge e E is assigned to an edge e ' E ' , and 0 otherwise,
yaa ' = 1 , if an arc a A is assigned to an arc a ' A ' , and 0 otherwise,
yee ' = 1 , if an edge e E is assigned to an edge e ' E ' , and d (e, e ') = for a constant ; and 0 otherwise,
yaa ' = 1 , if an arc a A is assigned to an arc a ' A ' , and d (a, a ') = for a constant ; and 0 otherwise,
With no loss of generality, we let elements of V and V’ be integer values, i.e., V={1,…,n} and
V’={1,…,n’}. Notations u V and u ' V ' represent nodes in graph (or digraph) G and G’, respectively.
Since the nodes are integer values thus for ease of presentation, we may use them as the weight of the nodes.
With these notations, for u, v V and u ', v ' V ' , we denote |u-v| and |u’-v’|, as absolute values of the
difference between the numbers representing the nodes. For each problem, we look for a matching (possibly
many-to-many), f : V → V ' , between nodes of two graphs where some conditions need to be satisfied. The
imposed conditions depend on the given problem. For most problems, we define a graph G’=(V’, E’) in
the case of the undirected graph; and a digraph G’=(V’, A’) in the case of the directed graph, with the
‘desirable’ output characteristics, then we find a function f to map nodes of graph G to nodes of the defined
graph G’. Example 1 illustrates this point.
Example 1. Consider the k-traveling salesman problem (k-TSP). In k-TSP, we are given a graph G (directed
or undirected) with a distance between edges (arcs in the case of digraph). We look for a minimum distance
tour (circuit) of k cities [42,43]. When k=n, we have the TSP (see [43,44], for comprehensive surveys, and
[45,46] for classification of integer programming formulations). In k-TSP, we define a graph G’=(V’, E’)
in the form of a cycle, Figure 1 without arrows, and in directed graph G’=(V’, A’) in the form of a circuit,
Figure 1, with k nodes and distance one between consecutive cities. Then we look for a subset S V with
|S|=k, and a one-to-one function, f : S → V ' , that minimizes the total distance on the tour (circuit), i.e., a
subgraph isomorphism of G to G’ that minimizes the total distance traveled. In the case of Bottleneck k-
3
TSP, one looks for a tour (circuit) to minimize the maximum distance traveled between any two cities. As
we mentioned, here we have a subgraph isomorphism (SI) of G to G’. Given two undirected graphs G=(V,
E) and G’=(V’, E’), with | V |= n | V ' |= n ' , a subgraph isomorphism of G to G’ is a graph G = (S , L) with
S V and L E such that |S|=|V’|, |L|=|E’| and there exists a one-to-one function f : V ' → S satisfying
{u ', v '} E ' if and only if { f (u '), f (v ')} L . Equivalently, SI asks whether there is a subset of edges and
vertices of G that is isomorphic to a smaller graph G’. A slightly different k-TSP may be defined as follows,
called induced k-TSP. In that, the subgraph is an induced subgraph isomorphism (ISI). Given two undirected
graphs G=(V, E) and G’=(V’, E’), with | V |= n | V ' |= n ' , an induced subgraph isomorphism of G to G’ is
a graph G = (S , L) with S V and L E such that |S|=|V’|, |L|=|E’| and there exists a one-to-one function
f : V ' → S satisfying {u ', v '} E ' if and only if { f (u '), f (v ')} E . Equivalently, the question is whether
we can delete vertices from G to obtain a graph isomorphic to G’. Note that in SI we do not rule out the
possibility of existing {u , v} E \ L such that f(u’)=u and f(v’)=v for some {u ', v '} E ' . To illustrate the
points, consider graph G in Figure 2, where there are several subgraphs with 4 nodes and 4 edges that each
create a 4-TSP. For example, 1-2-3-4-1 is a subgraph which is a 4-TSP, while it is not an induced subgraph.
Another 4 nodes 4 edges subgraph which is 4-TSP is 1-5-2-3-1 but it is not an induced subgraph. However,
by deleting node 1 we get an induced subgraph 2-3-4-5-2 with 4 nodes and 4 edges which creates an induced
4-TSP. Integer programming formulation of subgraph isomorphism and induced subgraph isomorphism are
presented in Part II.
While in some problems, we look for a feasible solution, in other problems, we may need to optimize an
objective function. The objective functions are in one of the forms P1-P7 given in Table 1. In the table,
objective functions are in a minimization format. However, they need to be appropriately modified when
formulating a specific problem. Objective functions P1-P7 cover a wide range of combinatorial problems.
In the next section, we present several general matching problems where the focus is on undirected graphs,
but the formulas can easily be modified for directed graphs.
Based on the aforementioned discussion, we present three general but related problems, outputs 1-3.
Output 1 is a feasibility problem. Both outputs 2 and 3, optimize an objective function while satisfying
‘some form of feasibility’ introduced by output 1. The feasibility in output 1 ensures that nodes of two
graphs are assigned to each other while the cost of communication between edges of the two graphs must
be limited to a pre-specified set of numbers. Output 2 optimizes one of the objective functions P1-P7 while
feasibility in output 1 is satisfied. Output 3 optimizes the sum of penalties for violating the feasibility
conditions of output 1. For each output, a natural IP formulation is presented. In each case, proof is
available. Due to saving space, we do not present the proof here, however, upon request the proof is
available from the authors. These outputs provide a general framework within which many problems
including those listed in 1-18 with appropriate modifications of the formulations can be considered as
special cases of one of these three outputs. IP formulations for problems 1-12 are presented in Part II, while
IP formulations for problems 13-18 are presented in Part I.
------------------------------
Figure 1 about here
------------------------------
------------------------------
Figure 2 here
------------------------------
------------------------------
Table 1 about here
------------------------------
4
2.1 Three General Matching Problems
Input: Undirected graphs G=(V, E), and G’=(V’, E’) with possible self-loop for each vertex in V’. A set of
allowable assignments, Lu V ' , for each u V . A set of integers, te , (possibly empty) for each edge e E
, called the forbidden set. A penalty pe associated with each element t e . A cost of c(u,u’) for assigning
a node u V to a node u ' V ' . A cost of d(e,e’) for assigning an edge e E to an edge e ' E ' . In each
output 1-3 below, the task is to find a function f : V → V ' such that f (u) Lu for u V , and
{ f (u ), f ( v )} E ' whenever {u, v} E , and
Output 1: d ({u, v,},{ f (u), f (v)}) t{u ,v } .
Output 2: d ({u, v,},{ f (u), f (v)}) t{u ,v } , to minimize one of the objectives P1-P7.
Output 3: if d({u, v,},{ f (u), f (v)}) = t{u,v} there is a penalty p{u , v } . The task is to minimize the total
penalty.
In the following, we will present the IP formulation for each output 1-3. We will point out problems from
the list that are special cases of the outputs. However, the IP formulations for outputs 1-3 need to be
appropriately modified to represent these special cases, presented in Part II.
Constraints (1) ensure node assignments are from allowable sets. Constraints (2) ensure that the endpoints
of each edge {u, v} E can only be assigned to end points of an edge from E’. Here, for a node in graph G’
self-loop is allowed. Thus, endpoints of an edge in E can be assigned to one node in V’. Constraints (3)
forbid an edge e in E to be assigned to an edge e’ in E’ if communication cost d(e,e’) is in the set te .
Modification of these formulations for directed graphs is given below. In that, constraint (1) has the same
effect as was explained. Since a complement to a directed graph is a graph with edges, thus constraints (4)
include edges instead of arcs in the complement of graph A’. Constraints (4) ensure that the endpoints of
each arc (u , v ) A can only be assigned to the endpoints of an arc from A’. Constraints (5) ensure that arcs
are correctly assigned to each other. In that, if two arcs (u,v) and (u’,v’) are assigned to each other, we must
have u’=f(u) and v’=f(v). Constraints (6) forbid two arcs a and a’ to be assigned to each other if the
communication cost d(a, a’) is in the set t a .
u 'Lu
xuu ' = 1, for u V , (1)
xuu ' + xvv ' 1, xuv ' + xvu ' 1, for (u , v ) A, and {u ', v '} A ', (4)
xuv ' + xvu ' 1, for (u, v) A, and (u ', v ') A ', (5)
xuu' + xvv' 1, for (u, v) A, and (u ',v ') A', andd ((u,v),(u ',v '))t(u,v) . (6)
5
problem can be stated as follows. Note that the formulations need to be appropriately modified for special
cases. Formulations for these special cases are presented in Part II.
Min K, s.t. (1-3), K 0 , and
x +x y
uu '
+ 1, x + x y
vv '
+ 1, for {u, v} E, and {u ', v '} E ',
{ u , v }{ u ', v '} uv ' vu ' (7)
{u , v }{u ',v '}
u 'Lu
c(u, u ')xuu ' + u 'L
u
v 'Lv N[u']
d({u, v}{u', v'}) y{u,v}{u ',v '} K, for u V, v N(u). (8)
Constraints (1-3) ensure the feasibility of output 1 is satisfied. Constraints (7) ensure that yee ' = 1 if and
only if two edges e and e’ are assigned to each other which adds a value of d(e,e’) to the LHS of (8). If a
node u E is assigned to a node u ' E ' , and if a node v N (u) is assigned to v ' N[u '] , i.e., a neighboring
edge of u assigned to a neighbor edge of u’ then it can add a cost of c(u,u’)+d({u,v},{u’,v’}) to the objective
function. Since we minimize K, the largest cost over all nodes u V is being minimized.
Example 2 illustrates the formulation when used in bottleneck k-TSP and bottleneck-induced k-TSP.
Example 2. Given graph G=(V, E), the problem is to find (1) an induced k-TSP, and (2) a k-TSP, to minimize
the longest distance between any two cities, where w{u , v } is a given real number representing the distance
between two cities u and v.
To give IP formulation, we create a graph G’=(V’, E’) with |V’|=k nodes similar to the graph in Figure 1
without arrows. Then we want to find: (1) an ISI of G and G’ to minimize the longest distance between
every two cities, and (2) an SI of G and G’ to minimize the longest distance between every two cities. Let
c(u,u’)=0 for all u V and u ' V ' . Also, let the distance between every two cities with an edge in G’ be
equal to one. Define d (e, e ') = we we ' for all e E and e ' E ' . To give IP for induced k-TSP, we need to
find subsets S V and L E such that |S|=k, and |L|=|E’|, and a one-to-one function f : S → V '
satisfying {u ', v '} E ' if and only if { f (u '), f (v ')} E to minimize the longest distance between every two
cities in S. Here, clearly, the objective function is a special case of P1, as follows.
P1: Minf MaxuV ,vN(u) d ({u, v},{f (u), f (v)}) = Min f MaxeE,e 'E ' d (e,e ').
A modification of the above IP for this special case is as follows. We need constraints (9) to create a subset
S and a one-to-one function between nodes of V’ and S.
u 'V ' xuu ' 1, for u V , uV xuu ' = 1, for u ' V '. (9)
If an edge {u,v} is assigned to an edge {u’,v’} then we have y{u ,v}{u ',v '} = 1 ensured by constraints (7).
xuu ' + xvv ' y{u , v }{u ', v '} + 1, xuv ' + xvu ' y{u , v }{ u ', v '} + 1, for {u , v} E , and {u ', v '} E '. (7)
For a given node u V , consider a neighbor node v V (i.e., there is an edge e = {u, v} E ). If the edge e
is assigned to an edge e’={u’,v’} then we have d (e, e ') = we we ' = we . The objective is to minimize the
maximum of d(e,e’) for all e E and e ' E ' when assigned to each other, this is done by adding an
objective function, Min K, and constraints (12).
d ({u , v}{u ', v '}) y{u , v }{u ', v '} K , d ({u , v}{v ', u '}) y{u , v }{u ', v '} K , for {u , v} E , and {u ', v '} E '. (12)
6
Constraints (12) can also be replaced by constraints (13) that are the same as constraints (8). Note that in
(13), given an edge {u,v}, only if it is assigned to an edge {u’,v’} then we have y{u ,v}{u ',v '} = 1 . Here, given a
node u and one of its neighbors v N (u) (i.e., there is an edge e = {u, v} E ), since we already have ensured
a one-to-one correspondence between S and V’ by (9) then the left-hand side (LHS) of the (13) will be
exactly equal to the LHS of (12).
u 'L v 'L N [u '] d ({u, v}{u ', v '}) y{u ,v}{u ',v '} K , for u V , v N (u ).
u v
(13)
Now, to appropriately modify the formulations for k-TSP, we only need to remove the constraints (10) from
the set of constraints presented for induced k-TSP. Note that, different but simpler formulations for k-TSP
and induced k-TSP are presented in Part II.
s.t. (1-3),(7).
Given a matching between the two graphs, the objective function P2 sums up all node assignments and all
edge assignments costs and minimizes the total quantity, constraints (1-3) ensure the feasibility of
assignments. Constraints (7) ensure that communication costs between edges are added to the total cost.
Note that the objective function (14) has a similarity with constraints (8). In constraints (8), for a given
node u and one of its neighbors v (i.e., e = {u, v} E ), if assigned respectively to u’ and v’ (i.e.,
e ' = {u ', v '}E ' ), then we considered the total cost of c(u,u’)+d(e,e’), and minimize largest of such cost.
However, in (14) the sum of all such costs is minimized. Example 3 illustrates the formulation when used
in k-TSP and induced k-TSP.
Example 3. The problem is similar to the problem of example 2, however, the objective is the minimization
of the total distance traveled.
Here, parameters are defined similar to example 2. However, we minimize the following quantity for all e
and e’ assigned to each other.
eE e 'E ' d (e, e '). (15)
An IP formulation for k-TSP is similar except that constraints (10) are removed. Note that, here also
different but simpler formulations for k-TSP and induced k-TSP are presented in Part II.
7
The matching problem with output 2 and objective function P3 includes the profile minimization
problem (PMP) as a special case. The PMP is equivalent to the interval graph completion problem, which
is to find a super-graph of a graph G with as small a number of edges as possible. Given an undirected
graph G=(V,E), the PMP looks for a one-to-one function f : V → {1, ,| V |} such that
uV MaxvN [ u ] { f (u ) − f (v )} is minimized. The objective function in PMP is a special case of P3. Example
4 below illustrates this point.
Example 4. Define a complete undirected G’=(V’,E’) with |V’|={1,…,|V|}. For each u V let
c (u , f (u )) = f (u ) , and for each {u, v} E let d({u, v},{f (u), f (v)}) = −Min[ f (u), f (v)]. The objective of
PMP is now equal to P3 given as
P3: Minf uV
MaxvN (u ) c(u, f (u)) + d ({u, v},{ f (u), f (v)}).
IP formulation for PMP is presented in Part II. An IP formulation of output 2 with the objective function
P3 is given below. Note that the objective function P3 has similarity with P1. Given a node u V the
maximization part of P3 (the quantity in the summation) is the same as the maximization in P1. However,
P3 sums up such quantity over all nodes u.
Min uV Ku , s.t. (1-3), (7), Ku 0 , and
u 'Lu
c(u, u ')xuu ' + u'L v'L N[u'] d({u, v}{u', v'}) y{u,v}{u ',v '} Ku , for u V, v N(u).
u v
(16)
Constraints (1-3) and (7) have the same effect as was explained earlier. For a given node u V , the LHS in
(16) is the same as constraints (8), however, the objective function minimizes the sum of all such quantities.
The objective is to find a matching function that minimizes the maximum of (17) over all nodes u ' V '
which is exactly P4. Given a node u’, the LHS in (18) is the total cost equivalent to (17). The reason that
the triple summation is divided by 2 is that we are assuming if u ' Lu then u ' Lv for v N (u) . If this
assumption is not satisfied the formulation needs some minor modification. Thus, an IP formulation is as
follows.
Min K, s.t. (1-3),(7), K 0 , and
1
u:u 'Lu
c(u, u ') xuu ' +
2
u :u 'Lu vN (u )
v 'Lv N [u ']
d ({u, v}{u ', v '}) y{u,v}{u ',v '} K, for u ' V '. (18)
A special case of the above formulation under the task assignment in distributed computing systems
(TADCS) is discussed in [49]. Example 5 illustrates this case.
Example 5. In the TSDCS, we have a set of tasks, V, and a set of processors, V’. A task graph G=(V, E)
represents the set of tasks and their communication links shown by the edges of the graph. A processor
graph G’=(V’, E’) represents the set of processors and their communication links shown by the edges of
8
the graph. The problem is to find an assignment function f : V → V ' that assigns the tasks to the processors.
If the task u V is assigned to an eligible processor u ' V ' , the processing time is c(u,u’). If two tasks
u, v V need to communicate (i.e. if there is an edge {u, v} E ), they can be assigned to one processor; in
that case, there is no communication time between them. In this case, we are assuming node u’ has a self-
loop. Two tasks can also be assigned to two different processors if a communication link is possible between
them (i.e. if there is an edge {u ', v '} E ' ). In that case, there is a communication time between two tasks
measured by d({u,v},{f(u),f(v)}). The problem asks for an assignment f : V → V ' to minimize the completion
time of the last task completed, i.e., the load of the processor with the maximum processing and
communication times [49], which is a special case of P4. However, if the problem is to minimize total times
(see for example, [50,51,52,53] for special cases of such scheduling problems) then we have the objective
P2 to be minimized. Several other specific examples of metric labeling with objective functions P2 or P4
are presented in Part II. Prominent applications are in pattern analysis, and image processing, (see for
example, [28,29,30]).
Among all nodes, u assigned to a given node u’ we are looking at the maximum that is equal to
MaxuV : f ( u ) = u ' c (u , f (u )) + v N ( u )
d ({u , v},{ f (u ), f (v )}) . (20)
The problem looks for a function f : V → V ' to minimize the sum of all such maximum costs over all nodes
u ' V ' which is exactly P5. An IP formulation of the problem can be stated as follows.
Min u 'V ' Ku ' , s.t. (1-3),(7), Ku ' 0 , for u ' V ', and
c(u, u ')xuu ' + vN(u),u 'L d({u,v}{u ',v '})y{u,v}{u',v'} Ku' , for u ' V ', andu V withu ' Lu . (21)
v
The LHS in (21) is the cost contributed by node u when assigned to a node u’ plus the cost communicated
by each edge neighboring u assigned to each edge neighboring u’. Since the RHS is the same for all u thus
the objective function P5 minimizes the sum over all such values. Also, note that constraints (1-3) and (7)
play the same role as explained before.
Example 6 illustrates a task assignment problem as a special case of the above problem.
Example 6. The problem is similar to the TSDCS defined in example 5. However, for a given processor u’
the total cost is defined by (19). Special cases of this problem are scheduling on a batch machine with job
compatibilities where communication costs are zero, [55,56,57]. In this special case, the problem becomes
a Weighted Vertex Coloring Problem (WVCP) discussed in more detail in Part II. Note that in TSDCS since
a task u V must communicate with its neighbors, i.e., with each v N (u) , thus if u is assigned to u’ and
if task v is assigned to the processor u’ there are no communication costs however if it is assigned to a
processor v ' V ' with u ' v ' then the communication cost is d({u,v},{u’,v’}). Thus, the total cost of
assigning a task u V to a given processor u ' V ' is equal to the LHS of (20). The value of K u ' is the
largest overall tasks u V , where the sum is minimized.
9
2.1.2.6. Output 2 and objective function P6:
The matching problem with output 2 and the objective function P6 generalizes the graph orientation
(GO) problem [58,59,60], and the edge covering problem [61]. Other names for GO are edge linking [62],
link orientation [63], and vertex orderings [64].
In GO, the problem is to determine a balanced ordering of the vertices of a graph; that is, the neighbors
of each vertex u are as evenly distributed to the left and right of u as possible. The problem has applications
in a variety of areas including in graph drawing [64] and providing quality of service (QoS) networks
[60,63]. The major objectives of various information services on modern networks are to provide high
efficiency, good quality, and maximum throughput for the system resources [60,63]. The GO has been
proposed for assigning flow orientations over links in a network. Refer to [60,63] for applications, proof of
NP-hardness, and several polynomial solvable special cases. Refer to [61] for a recent IP formulation.
Sadig, Mozafari, and Kashan [61] mention other applications including the edge covering (EC) problem.
The EC problem has applications in locating emergency facilities such as police stations, and road hospitals
or an electronic network for locating information centers. The main characteristic of these applications is
that the customer’s demand is distributed uniformly in the paths between the location points [61].
The GO can be defined as follows, [60,63]. Given an undirected graph G=(V, E), each node u is
associated with a weight (cost) u , and each edge {u, v} E is associated with two weights (costs) w( u , v )
and w( v ,u ) where (u, v) is directed from u to v (an orientation from u to v, or an out-degree node of u) and
(v, u ) is directed from v to u (an orientation from v to u, or an in-degree node of u). Thus, each edge is
considered as two directed arcs. Given an orientation for all edges, for a node u V defined out-degree
nodes, ON(u), and in-degree nodes, IN(u), as follows
ON (u) = {v : (u, v) is an out-degree node of u},
IN (u) = {v : (v, u) is an in-degree node of u}.
The problem is to find an orientation for each edge. Given an orientation for a graph, the total cost associated
with each node is equal to u + vON (u) w(u,v) . The GO looks to choose an orientation for each edge to
minimize the largest costs for all node u V which is the minimization of MaxuV {u + vON (u ) w(u ,v ) }.
Output 2 with objective function P6, generalizes the GO problem and the EC problem, which can be
stated as follows. We are given two undirected graphs G=(V,E) and G’=(V’,E’), we want to find a function
f : V → V ' . In that, if a node u is assigned to a node u’ the cost is the same as (19). Among all nodes u V
we are looking at the maximum cost which is equal to
MaxuV c (u , f (u )) + vN ( u ) d ({u , v},{ f (u ), f (v )}) . (22)
Note that, in (22) for simplicity of presentation we did not include edge orientation, i.e., choosing a direction
for each edge. To consider edge orientation minor modification in the formulation is needed. When edge
orientation needs to be considered value of d({u,v),{f(u),f(v)}) for {u,v} depends on the direction of the edge,
i.e., we have
d ({u , v},{ f (u ), f ( v )}) d ({v, u},{ f ( v), f (u )}).
The objective is to fund a function f to minimize (22) which is exactly P6. Now, an IP formulation of the
problem can be stated as follows:
Min K, s.t. (1-3), (7), K 0 , and
u'L c(u, u ')xuu' + u'L vN(u) v'L N[u'] d({u, v}{u ', v '}) y{u,v}{u',v'} K, for u V.
u u v
(23)
Constraints (1-3) and (7) have the same effect as we described before. The LHS in (23) is representing the
cost of assigning a given node u V to a node u ' V ' plus the cost of all edges neighboring u, if assigned
to edges in E’. The objective function P6 minimizes the largest of such quantity.
10
2.1.2.7. Output 2 and objective function P7:
The matching problem with output 2 and the objective function P7 includes the Minimum Cut Linear
Arrangement Problem (MCLAP) as a special case (see [6] for recent discussion and complexity of special
cases). Given an undirected graph G=(V, E), MCLAP looks for the smallest value of K and a one-to-one
function f : V → {1, , n} such that for all 1 i n , | {{u, v} E, f (u) i f (v)}| K . IP formulation for
MCLAP is presented in Part II. It has applications in telecommunication [65], computer-aided design,
automatic graph drawing, protein engineering, optimization of rail systems [2], and computational logic
[66], among others.
In output 2 with objective function P7, we are looking for a function f : V → V ' . In that, given a node
i ' V ' , if endpoints of an edge {u,v} in E are assigned to end points of an edge {f(u),f(v)} in E’ where
f (u) i ' f (v) then the cost is
c (u , f (u )) + c (v, f (v )) + d ({u , v},{ f (u ), f (v )}).
We want to minimize the maximum of such quantity over all nodes i ' V ' . An IP formulation can be stated
as follows:
Min K, s.t. (1-3),(7), K 0 , and
(c (u , u ') + c (v, v ') + d ({u , v},{u ', v '})) y{u , v}{u ', v '} K , for i ' V '. (24)
{ u , v } E :{ u ', v '} E ',
f ( u ) = u ' i ' f ( v ) = v '
Constraints (1-3) and (7) have the same effects as described before. The left-hand side of (24) represents
the cost contributed by all edges {u, v} Î E if u and v in V are respectively assigned to two nodes u’ and v’
in V’ where {u ', v '} E ' and such that u ' i ' v ' for a given node i ' V ' . The objective function
minimizes this cost over all nodes i ' V ' .
s.t. (1-2), and xuu ' + xvv' y{u,v}{u ',v '} +1, xuv ' + xvu ' y{u ,v}{u ',v '} +1,
for {u, v} E,{u ', v '} E ', d ({u, v},{u ', v '}) = t{u,v} . (25)
Constraints (1) and (2) ensure a one-to-one assignment between nodes of V and V’. Constraints (25) ensure
that if two edges are assigned to each other and communication costs are in the forbidden set, then
y{u , v }{ u ', v '} = 1 . This adds a penalty to the objective function to be minimized.
Example 7 illustrates the FSFA problem as a special case. The FSFA problem involves the assignment of
discrete channels (or frequencies) to the transmitters of a radio network, such as a mobile telephone
network. In that assignment, frequency separation is necessary to avoid interference by other transmitters
to the signal received from the wanted transmitter at the reception points [68,69,70].
Example 7. The FSFA problem can be represented by a weighted undirected graph G=(V, E). The problem
looks for a mapping f : V → F where each u V represents a transmitter of a radio network, and
11
F={0,1,…,|F|-1} is a set of consecutive frequencies available for every vertex (transmitter) in V. The set of
edges E represents those pairs of transmitters for which the assigned frequencies are constrained. The
constraint arises because one of the transmitters can interfere with signals received from the other. For each
+
{u, v} E there is t{u ,v} N . The value of t{u , v } represents the highest separation between the frequencies
assigned to the transmitter u and the one assigned to v that generates unacceptable interference. If we
indicate with f(u) the frequency assigned to transmitter u, then if | f (u) − f (v) | t{u ,v} , the interference
involving the two transmitters is acceptable. The larger | f (u ) − f (v) | is the better the assignment, i.e., less
+
interference. If however, | f (u) − f (v) | t{u ,v} there is a cost (penalty) equal to p{u , v} N . The objective is to
find an assignment f that minimizes the sum p{u , v } over all pairs {u, v} E for which | f (u) − f (v) | t{u ,v} .
FSFA is a special case of the above formulation.
12
condition of an interval graph is satisfied. Below we give an IP formulation of the problem. Here, y e = 1 if
an edge e E is not among minimum cardinality set F, and zero otherwise.
Min e E
ye ,
s.t. u 'V '
xuu ' = 1, for u V , uV
xuu ' = 1, for u ' V ', (26)
xuu' + xvv' + xzz ' y{z,v} +2, for {u, v}E, and u ' z ' v ' and {z,v}E, (27)
Constraints (26) ensure a one-to-one assignment between V and V’. Constraints (27) ensure that for an edge
{u,v} where u is assigned to u’ and v is assigned to v’ with u’<v’ if a node z is assigned to a node z’ with
u’<z’<v’ and if there is no an edge {z,v} in E then the value of y{ z ,v} must be equal to 1 and thus edge {z,v}
is added to the set F. The objective function minimizes the cardinality of the set F. The IGC is equivalent
to the profile minimization problem (PMP), [79]. The PMP is discussed in Part II.
Now, we discuss the problem of multi-layer crossing minimization that has many applications including
combinatorial geometry, the theory of VSLI, graph drawing, and computational biology [25,80,81,82,83,
84]. Nollenberg and Wolff [85] have recently presented an IP formulation for a special case of this problem.
Given a directed graph G=(V, A) the set of nodes V is partitioned into p disjoint sets, where Vl Vk
, for l,k=1,…,p, l k and V =
p
l =1
Vl with | Vl |= nl . Define an arc (u , v ) A for u Vl and v Vl +1 , for some
l=1,…,p-1 (where each set of nodes Vl is placed on a straight line, i.e., layer l). We look for a permutation
of vertices Vl in each layer l such that the number of crossing arcs is minimized. Here, the set of arcs is
partitioned into A1 , , Ap −1 where Al is the set of arcs between nodes Vl and Vl +1 for l=1,…,p-1.
If p=2 the problem is known as 2-layer crossing minimization, which is NP-hard [86]. Several IP
formulations of the 2-layer problem have been provided, [37,87]. The MLCM problem is NP-hard even if
the permutation of one layer is fixed, known as one-sided crossing minimization [88]. Recently, several
other special cases of the MLCM problem have shown to be NP-hard, [89,90]. In most heuristics and/or
exact algorithms, the 2-layer version of the problem is extensively used with or without permutation of one
side fixed, [32]. Carpano, [91] stated that the difficulty with dealing with the general MLCM involves not
only finding the best permutation for each layer concerning its adjacent layers but also the effect of this
choice on the configuration as a whole. In that spirit, an IP formulation was presented in [32].
Define a one-to-one function fl : Vl → {1, , nl } for each layer l. Let xuil = 1 if node u Vl is assigned to
i {1, , nl } , and 0 otherwise. Two arcs (u , u '), ( v , v ') Al (for u , v Vl , u ', v ' Vl +1 ) cross iff either
f l (u ) f l (v ) and fl +1 (v ') fl +1 (u ') or f l (v ) f l (u ) and fl +1 (u ') fl +1 (v ') . Let y ( u , u ')( v , v ') = 1 iff two arcs (u,u’)
l
and (v,v’) in layer l cross, and 0 otherwise. Our new IP formulation of the problem is as follows.
p−1 l
Min i =1 ( u ,u '),( v, v ')Al
y(u,u ')( v,v ')
nl
xui = 1, for l {1, , p ), u Vl , xui = 1, for l {1, , p ), i {1,
l l
s.t . i =1 uVl
, nl ), (28)
l +1 l +1
xui + xvj + xv' i ' + xu' j ' y( u, u')( v, v') + 3, for l {1, , p −1},(u, u '),(v, v ') Al ,
l l l
for i, j {1, , nl }, and i ', j ' {1, , nl +1}, and i j, i ' j ', (29)
13
l +1 l +1
xuj + xvi + xu ' i ' + xv' j ' y( u,u')( v, v') + 3, for l {1, , p −1},(u, u '),(v, v ') Al ,
l l l
for i , j {1, , nl }, and i ', j ' {1, , nl +1}, and i j, i ' j '. (30)
Constraints (28) represent a one-to-one assignment between a set of layered nodes Vl and {1, , nl } ,
l=1,…,p. Constraints (29-30) ensure a penalty value of 1 is added to the objective function if two edges
cross. The objective function therefore minimizes the sum of all crossings.
PART II
Graph theoretic approaches for solving difficult problems have been an important practical and
theoretical research area for several decades. Graphs have been applied to almost every discipline of
sciences, engineering, and social sciences. Some of the major applications in graph matching are pattern
analysis, social network analysis, homeland security, telecommunications, and manufacturing [10,
27,29,49,53,92,93,94,95,96,97,98,99,100,101,102]. In Part II we present IP formulations for a wide range
of difficult problems, problems 1-12 from the list we presented earlier, using the framework presented in
Part I. For some of these problems, we have not seen any natural IP formulations in the literature and for
some others, our formulations provide alternative approaches.
14
respectively, (see [104,105] for recent optimal procedures of TSP and Bottleneck TSP). The formulation of
the problem for Output A can be stated as follows:
(a2),(b1), and xuu ' vN ( u ) xv ( u ' +1) , for u V , u ' V '\ {k} , and xuk vN (u ) xv1 , for u V .
Constraints (a2) and (b1), taken from Table 2, ensure that a node in V may be assigned to a node in V’ and
a node in V’ must be assigned to exactly one node in V. The first set of inequalities ensures that if a node u
is assigned to any node u’, except node k, in V’ then a node v where (u,v) is an arc in G must be assigned to
node u’+1. The last set of inequalities endures that for a node u in V assigned to node k in V’, there must
be a node v in V such that (u,v) is an arc in G and v is assigned to node 1. If there is a solution to this
formulation then we have found a circuit of k nodes in graph G, otherwise no such circuit exists in graph
G. Formulation of the problem for Output B can be stated as follows.
(a2),(b1),(g) and xuu ' vN ( u ) xv ( u ' +1) , for u V , u ' V '\ {k} , and xuk vN (u ) xv1 , for u V .
uV vN ( u)
u 'V '\{k }
u ' +1
w(u,v) y(u ,v )(u ',u '+1) +
uV vN ( u)
w(u ,v ) y(u ,v )(k ,1) K.
Here to the set of feasible solutions in output A, constraints (g), from Table 2, are added. Constraints (g)
ensure that if two arcs (u,v) and (u’,v’) are assigned to each other then y( u ,v )( u ',v ') = 1 . The LHS of the last
inequality adds up all distances in creating a circuit that needs to be within a bound K. Note that the LHS
is in the form of P2. Thus, if Min K is added to the formulation, we find the smallest K that satisfies Output
B. Formulation of the problem for Output C can be given as a bottleneck optimization. A feasible solution
is the same as for output B, however, the last inequality is replaced by,
w( u , v ) y( u , v )( u ', v ') K , for (u , v ) A , and (u ', v ') A ' .
Note that here also the LHS is in the form of P1. Thus, if Min K is added to the formulation, we find the
smallest K that satisfies output C. Next, we present several linear arrangement problems. Bandwidth
optimization on a graph which has a variety of applications, [26,106,107,108], is discussed first. IP
formulations have been given in [33,35], however, our formulation differs from theirs.
The last set of inequalities ensures that a value of |f(u)-f(v)| is assigned to edge {u,v}.
(GT41) Directed Bandwidth Problem (DBP):
Input: Directed graph G=(V,A), and a positive integer K n .
Output: Is there a one-to-one function f : V → {1, , n} such that, for all arcs (u , v ) A , f(u)<f(v) and
f (v) − f (u) K ?
15
Similar to the case of BP define a digraph G’=(V’, A’). Define an arc between two nodes u ', v ' V ' if v’>u’
and v '− u ' K . Now, we have A ' = {(u ', v ') : u ', v ' V ', with w( u ',v ') = v '− u ' K}. The DBP feasibility
problem can be stated as a problem of finding a one-to-one assignment, f : V → V ' , such that for each
(u , v ) A we have ( f (u ), f (v )) A ' . IP formulation of the DBP derives from satisfying constraints
(a1),(a2),(d1), and (e) in Table 2. In the optimization version of the DBP, graph G’ is a complete graph. We
are looking for a one-to-one assignment f : V → {1, , n} to minimize K. The objective function is
Min f {Max( u , v )A{ f (v) − f (u )}} which is in the form of P1. IP formulation is as follows:
Min K, s.t. (a1), (a2), (e), (g), and w( u ',v ') y( u , v )( u ', v ') K , for (u , v ) A , and (u ', v ') A ' .
Next, we discuss the linear arrangement problem (LAP) which has a variety of applications, [2,109,110].
(GT42) Linear Arrangement Problem (LAP):
Input: Undirected graph G=(V,E) with weight we for each e E , and a positive integer K.
Output: Is there a one-to-one function f : V → {1, , n} such that { u , v } E
w{u ,v} | f (u ) − f (v ) | K ?
Define an undirected graph G’=(V’,E’) with |V’|=n, and nodes numbered 1,…,n. For two nodes u ', v ' V '
let w{u ',v '} =| u '− v ' | . Find a one-to-one assignment f : V → V ' such that {u , v}E w{u , v} | f (u ) − f ( v ) | K . An IP
formulation can be stated as follows which is different from those in [36,37].
(a1), (a2), (f), and {u ,v}E ,{u ',v '}E ' (w{u ,v}w{u ',v '} y{u ,v}{u ',v '} ) K .
The optimization of the problem is in the form of P2. We need to add Min K to the feasibility problem.
(GT43) Directed Linear Arrangement Problem (DLAP):
Input: Directed graph G=(V,A) with weight wa for each a A , and a positive integer K.
Output: Is there a one-to-one function f : V → {1, , n} such that f(u)<f(v) whenever (u , v ) A and such
that (u,v)A
w(u,v) ( f (v) − f (u)) K ?
Define a complete digraph G’=(V’,A’) where |V’|=n with nodes numbered 1,…,n. For u ', v ' V ' define an
arc (u’,v’) if v’>u’, and let wa = v '− u ' . We want to find a one-to-one assignment f : V → V ' such that for
each arc (u , v ) A if u is assigned to the node u ' V ' and v is assigned to the node v ' V ' then there is an
arc (u ', v ') A ' such that (u,v)A w(u,v) ( f (v) − f (u)) K . An IP formulation of the problem is stated as
follows.
(a1),(a2),(e),(g) and ( u , v )A,( u ', v ')A '
(w( u ,v ) w( u ',v ') y( u ,v )(u ',v ') ) K .
In the optimization version of the problem, we look for an assignment that minimizes the total cost. Thus,
we only need to add Min K to the feasibility problem that is in the form of P2. Next, we discuss the profile
minimization problem which has many applications, [79,111,112]. It is closely related to BP and LAP. It
has been shown in [79] that the PMP is equivalent to the IGC problem (IGC was discussed in Part I).
Profile Minimization Problem (PMP):
Input: Undirected graph G=(V, E).
Output: A one-to-one function f : V → {1, ,| V |} such that K = uV MaxvN[u ]{ f (u) − f (v)} is minimized.
Define a complete undirected graph G’=(V’,E’) with |V’|={1,…,|V|}. We want to find a one-to-one
assignment f : V → V ' that minimizes the value of K. There is a clear similarity between PMP, BP, and
LAP. PMP has the elements of both BP and LAP, (see [7]). For u V let c (u , f (u )) = f (u ) , and for
{u, v} E let d({u, v},{f (u), f (v)}) = −Min[ f (u), f (v)]. The objective of PMP is
Minf {uV MaxvN (u) {c(u, f (u)) + d({u, v},{ f (u), f (v)})} .
An IP formulation of PMP can be stated as follows, which is in the form of P3:
16
Minf uV
Ku , s.t. (a1),(a2),(f), and
u 'V '
c ( u, u ') xuu ' + u 'V ' v 'V ' d ({u , v},{u ', v '}) y{u ,v }{u ',v '} Ku , for u V , v N ( u ) .
We next consider the min-cut linear arrangement problem, (see [6] for recent discussion and complexity
of special cases). It has applications in telecommunication [65], computer-aided design, automatic graph
drawing, protein engineering, optimization of rail systems [2], and computational logic [66].
(GT44) Minimum Cut Linear Arrangement Problem (MCLAP):
Input: Undirected graph G=(V, E).
Output: Find the smallest value of K and a one-to-one function f : V → {1, , n} such that for all 1 i n ,
| {{u, v} E, f (u) i f (v)}| K .
Define a complete undirected graph G’=(V’, E’) with |V’|=n and let the nodes be numbered 1,…,n. In the
MCLAP feasibility problem, we want to find a one-to-one assignment between nodes graphs G and G’,
such that given any node i ' V ' , the cardinality of all edges {u,v} in E with one end u assigned to node
u ' V ' ( u ' i ' ) and the other end v assigned to the node v ' V ' (v’>i’) is within the limit K. An IP
formulation of the feasibility problem can be given as follows:
(a1),(a2),(f), and {u,v}E u 'i ',v 'i ' y{u,v}{u ',v '} K , for i ' V '
The formulation can be extended to the optimization of MCLAP by adding,
Minf {Maxi 'V ' {{u,v}E u 'i ', v'i ' y{u ,v}{u ',v '}}}.
An IP formulation is derived by adding Min K to the feasibility problem. The objective function is in the
form of P7. In that, we have c(u,f(u))=0 for all u in V, and d({u,v},{f(u),f(v)})=1 for all {u,v} in E. In the
next section, we discuss graph coloring variations. We first consider the graph and subgraph isomorphism
problems. The complexity of the graph isomorphism problem is still open [11], although the subgraph
isomorphism problem is known to be NP-hard [75].
17
Output: Does G contain a subgraph isomorphic to G’, i.e., a subset S V and a subset L E such that
|S|=|V’|, |L|=|E’| and there exists a one-to-one function f : V ' → S satisfying {u ', v '} E ' if and only if
{ f (u '), f (v ')} E ?
Note that as was discussed in example 1, Part I, in SI we do not rule out the possibility of existing
{u , v} E \ L such that f(u’)=u and f(v’)=v for some {u ', v '} E ' . An IP formulation of SI derives from
satisfying (a2),(b1), and (c2) in Table 2, and an IP formulation of ISI derives from satisfying (a2),(b1),(c1),
and (c2). All discussions on GI and SI with the undirected graphs can be extended to the directed graphs
straightforwardly. Thus, to save space we will not present them here. Below we discuss the largest common
subgraph problem (LCS) that has a variety of applications, especially in data analysis, [113,114,115]. An
IP formulation was presented in [116]. We present a simpler formulation with significantly fewer variables.
(GT49) Largest Common Subgraph Problem (LCS):
Input: Undirected graphs G=(V,E) and G’=(V’,E’).
Output: Find the largest subsets L E and L ' E ' with |L|=|L’| such that the subgraphs G1 = (V , L ) and
G1 ' = (V ', L ') are isomorphic.
Consider an assignment f : V → V ' where a node u V can be assigned to only one node u ' V ' and vice
versa. Here, two edges, {u, v} E and {u ', v '} E ' are assigned to each other only if we have either
xuu ' + xvv ' = 1 or xuv ' + xvu ' = 1 , but not both. Let we = we' = 1 for all e E and e ' E ' . For two edges
{u, v} E and {u ', v '} E ' , we have w{u ,v} w{u ',v '} ( xuu ' xvv ' + xuv ' xvu ' ) = 1 iff they are assigned to each other. A
quadratic IP formulation of the problem can be stated as follows:
MaxuV u 'V ' vV v'V ' w{u,v} w{u ',v '} ( xuu ' xvv ' + xuv ' xvu ' ) , s.t. (b1),(b2).
To transfer the quadratic formulation to a linear integer program, we let y{u ,v}{u ',v '} = 1 if an edge {u, v} E is
assigned to an edge {u ', v '} E ' with u assigned to u’ and v assigned to v’, and 0 otherwise. We let
z{u , v }{u ',v '} = 1 if an edge {u, v} E is assigned to the edge {u ', v '} E ' with u assigned to v’ and v assigned to
u’, and 0 otherwise. An IP formulation can be stated as follows where objective function is in the form of
P2.
Min {u,v}E ,{u ',v '}E ' ( y{u, v}{u ', v '} + z{u, v}{u', v'} ) , s.t. (b1),(b2), and
y{u,v}{u ',v '} xuu ' , y{u ,v}{u ',v '} xvv ' , z{u ,v }{u ',v '} xuv ', z{u ,v }{u ',v '} xvu ', for {u, v} E,{u ', v'} E' .
Next, we present maximum subgraph matching (MSM) with a variety of applications, [117,118,119].
(GT50) Maximum Subgraph Matching (MSM):
Input: Directed graphs G=(V,A) and G’=(V’,A’).
Output: Find the largest subsets R V V ' such that for all u, u ' , v, v ' R , (u , v ) A if and only if
(u ', v ') A ' .
Here, we have many-to-many matching. A slightly different version of the problem is that the two generated
subgraphs must preserve all arc relations and thus must be isomorphic. Authors in [120] originally
introduced the MSM problem with no references to isomorphism, stating, “find the maximal matches,
where a match is a correspondence (many-many relation) between a subgraph H of G and a subgraph H’
of G’, which preserves the relation.” In the following, first, we discuss the isomorphic version of the
problem (MISM) then we discuss MSM as stated in GT50. Consider an assignment f : V → V ' with the
assumption that the node u V can be assigned to only one node u ' V ' , and vice versa. We look for the
largest subsets S V and S ' V ' with |S|=|S’| to be assigned to each other and such that for all u , v S
and u ', v ' S ' , (u , v ) A if and only if (u ', v ') A ' . The two subsets of nodes S V and S ' V ' ,
respectively, create induced subgraphs in G and G’.
Maximum Induced Subgraph Matching (MISM):
Input: Directed graphs G=(V,A) and G’=(V’,A’).
18
Output: Find the largest subsets S V and S ' V ' with |S|=|S’| and a one-to-one function f : S → S '
such that for all u , v S and u ', v ' S ' , (u , v ) A if and only if (u ', v ') A ' .
An IP formulation is as follows.
Max uV u 'V ' xuu ' , s.t. (b1),(b2),(d1),(d2),(e).
Now, an IP formulation for the MSM problem, GT50, can be stated as follows.
Max uV u 'V ' xuu ' , s.t. (d1),(d2),(e),(h2),(i2).
The objective functions in the above problems are in the form of P2. In the next several subsections, we
consider the graph coloring and several related problems and their generalizations. The relationship among
these problems is discussed, and IP formulations are introduced. The problems have enormous applications
(see for example, [20,56,121,122,123,124,125,126]).
(GT4) Graph K-Colorability (GKC):
Input: Undirected graph G=(V,E), and an integer K n .
Output: Does there exist a function f : V → {1, , K } such that f (u) f (v) whenever {u, v} E ?
Graph Coloring (GC):
Input: Undirected graph G=(V, E).
Output: Find the smallest value of K, a function f : V → {1, , K } such that f (u) f (v) whenever {u, v} E
.
A generalization of the GKC is a graph homomorphism stated as follows, GT52. An extension to the
directed graph is also presented.
(GT52) Graph Homomorphism (GH):
Input: Undirected graphs G=(V,E) and G’=(V’,E’).
Output: Find a homomorphism from G to G’, i.e., find a function f : V → V ' such that { f (u ), f (v)} E '
whenever {u, v} E .
Directed Graph Homomorphism (DGH):
Input: Directed graphs G=(V,A) and G’=(V’,A’).
Output: Find a homomorphism from G to G’, i.e., find a function f : V → V ' such that ( f (u ), f (v )) A '
whenever (u , v ) A .
An IP formulation of the GH problem derives from satisfying (a1),(c1), and (i1) in Table 2, and for DGH
it derives from satisfying (a1),(d1),(e) and (i2). Consider now the GKC, and define a complete undirected
graph G’=(V’, E’) where |V’|=K with the nodes numbered 1,…, K. Now, GKC seeks an assignment,
f : V → V ' , such that { f (u ), f ( v )} E ' whenever {u, v} E . Since G’ is a complete graph, this is the same
as finding an assignment, f : V → V ' such that the endpoints of an edge {u, v} E cannot be assigned
simultaneously to one node in G’. An IP formulation of GKC is derived from satisfying (a1) and (i1) in
Table 2. In the graph coloring optimization problem (GC), the goal is to find the smallest number of colors
to assign to elements of the set V. Given an upper bound for the number of nodes V’ (e.g., |V’|=n), similar
to GKC define a complete graph G’. The IP formulation for the GC problem is now stated as follows:
Min K, s.t. (a1),(i1), and u ' xuu ' K , for u V, u ' V ' .
Consider now a generalization of the coloring problem that we call the maximum (minimum) weight subset
coloring problem (MWSCP). The problem both in maximum and minimum format has many applications.
In MWSCP, if node u V receives a color u ' V ' (where V’ is the set of colors), then there is a benefit (or
a cost) of c(u,u’) (refer to [56] for approximation algorithms for special cases of these problems). For a
given subset S V and a function f : S → {1, , K } , define Z = c (u , f (u )) to be the weight of S. Now,
u S
19
Output: Find a maximum (or minimum) weight subset S V , and the smallest positive integer l K , and
a function f : S →{1, , l} such that f (u) f (v) whenever {u, v} E and u , v S .
In MWSCP, we have a bi-objective optimization problem. We discussed the problem for the maximum
weight subset. It can be easily modified for the minimum case. In MWSCP, we look for a maximum weight
subset S V that can be colored by K colors. Let Z* be the maximum weight. We then want to find the
smallest number of colors, l, that admits Z*. Define a complete graph G’=(V’,E’) with V’={1,…,K}. Now,
IP formulations can be given as follows. The IP (A) is in the form of P2, and (B) is in the form of P1.
(A) Max Z = uV u 'V ' c(u, u ')xuu ' , s.t. (b1),(i1).
To find the smallest number of colors, i.e., the strength of G, we solve the following IP.
(B) Min l, s.t. (b1),(i1), and u ' xuu ' l , for u V, u ' V ' , l 0 , and
uV u 'V '
c(u, u ') xuu ' = Z * .
Several important combinatorial optimization problems are special cases of MWSCP:
(1) If K=1 then we have a single color and thus G’ has a single vertex with no edge. For each node
u V let wu be a given weight and define c(u, f (u )) = wu . Now, IP (A) solves the well-known
maximum weight independent set problem.
(2) If K=n, then we have S=V. Given an assignment f : V → {1, , K } that satisfies the condition of
MWSCP, for node u V let c (u , f (u )) = f (u ) . Here, the weight of c(u,f(u)) is exactly equal to the
integer number of nodes assigned to u. Now if we minimize IP (A) instead of maximizing, then we
have solved the optimum cost chromatic partition (OCCP) [127,128,129], which has the sum
coloring (SC) [130] as a special case. Both OCCP and SC problems have numerous applications in
scheduling theory, resource allocation, and VSLI design [98]. IP (B) then solves for the strength of
graph G. Note that these problems can be considered as special cases of the Graph Grundy Number
(GGN, GT56, [75]), which is defined on digraphs. Our formulation can easily be modified for GGN
(see [93] for the survey of results).
Another generalization of the graph coloring is as follows, known as weighted vertex coloring (WVCP).
Its special cases have been discussed in the literature and have applications in batch scheduling,
transmission of real-time messages in metropolitan networks, and dynamic storage allocation [54,55]. IP
formulation was presented in [57].
Weighted Vertex Coloring Problem (WVCP):
Input: Undirected graph G=(V,E), and positive weight wu for each u V .
Output: Find a function f : V → {1, , K } for some K n such that f (u) f (v) whenever {u, v} E and
u , v V , to minimize Z = 1u ' K MaxuV , f ( u ) =u ' {wu } .
Let K max be an upper bound to the optimal value of K (e.g., K max = n ), now define a complete graph
G’=(V’,E’) where V ' = {1, , Kmax } . The problem is to find a function f : V ® V ' that minimizes Z . Here,
the objective function is a special case of P5. An IP formulation of WVCP is presented below. In the special
case when all weights are equal to 1, we have the GC problem. However, the IP formulation of the special
case of GC is different from the one we presented earlier (see [131] for a similar formulation of a special
case). In this formulation we have c(u, f (u )) = wu .
Min u 'V '
Ku ' , s.t. (a1),(i1), and c(u, u ') xuu ' Ku ' , for u V, u ' V ' .
An important graph optimization problem with enormous applications is the maximum clique partition
problem (MCPP). It has the graph partitioning problem (GPP) as a special case. Applications of MCPP
and GPP include clustering and pattern analysis (see [21,22,23,101,102,132,133,134,135,136] for recent
applications). The problem is stated as follows:
20
Maximum Clique Partition Problem (MCPP):
Input: Undirected graph G=(V,E), weight we (a real number) for each e E .
Output: Find a partition, V = {V1 , , Vk } , of vertices into disjoint cliques to maximize
Z = 1l K u ,vV ,{u ,v}E w{u ,v} .
l
The value of K that admits the maximum in the problem is called the maximum clique partition number,
max (G ) . Authors in [137,138] presented an IP formulation of the problem. Our formulation is based on the
GC concept and is different from theirs. Let G = (V , E ) be the complement of graph G=(V, E). Now, the
MCPP is equivalent to the problem of partitioning vertices into independent sets (or coloring of vertices)
where the sum over all weight of edges, e E , i.e., between pair of vertices in each independent set is
maximized. Let K max be an upper bound to max (G ) (e.g., K max = n ). Define a graph G’=(V’, E’) where
V ' = {1, , Kmax } and E’ contains only self-loop edges for each node of V’. We look for a function f : V → V '
such that f (u) f (v) whenever {u, v} E and such that Z is maximized. A set of nodes of G that are assigned
to a node u’ in G’ create an independent set in G , and thus a clique in G. An IP formulation can be given
as follows, which is in the form of P2.
Max u 'V ' u ,vV ,{u ,v}E w{u ,v } y{u ,v }{u ',u '} , s.t. (a1), and
21
G = (V, E ED ) and G’=(V’, E’). Feasible and infeasible assignments are similar to the graph coloring
problem that appears above.
(a1), and xuu ' + xvv ' 1 , and xuv ' + xvu ' 1 , for {u, v} E , and {u ', v '} E ' , w{u ',v '} m ,
xuu ' + xvv ' 1 , and xuv ' + xvu ' 1 , for {u, v} ED , and {u ', v '} E ' , w{ u ', v '} k ,
xuu ' + xvu ' 1 , for {u, v} E ED , and u ' V ' .
The formulation can be extended to GL optimization. Let mk be an upper bound to mk − number . Now, an
IP formulation of the problem can be stated as follows.
Min , The above feasible conditions, u ' xuu ' , for u V, u ' V ' , and 0 .
Here, the last set of inequalities combined with the minimization of the objective function ensures that the
optimal value of will be equal to mk − number . Next, we discuss the metric labeling problem (MLP),
which has applications in different areas of engineering, especially in pattern analysis, [147,148,149,150,
151,152]. An IP formulation for special cases was presented in [29,30], and in [150,151] approximation
results were presented. Our IP formulation is more general than theirs.
Metric Labeling Problem (MLP):
Input: Undirected graph G=(V, E) with a possible self-loop for each node, and weight we for each e E . A
set of labels V’ with a metric distance function D : V 'V ' → R , and a cost function, c, assigning a cost of
c(u,u’) when two nodes u V and u ' V ' are assigned to each other.
Output: Find an assignment, f : V → V ' , to minimize P2 (or P4).
In many applications, we have f (u) Lu for a given subset Lu V ' . In general, we have V ' = uV
Lu . If
label u ' V ' is assigned to the node u V , it incurs a cost of c(u,u’), and if two labels u ', v ' V ' (possibly
u ' = v ' ) are assigned to the endpoints of an edge {u, v} E , it incurs a cost of d ({u, v},{u ', v '}) = w{u ,v} D(u ', v ')
. Define a graph G’=(V’,E’) where {u ', v '} E ' iff D(u ', v ') 0 . Originally the MLP was defined as D(.,.) as
a metric function [28]. Our formulation does not assume that. We look for a function f : V → V ' to minimize
P2 (or P4). An IP formulation that minimizes the objective function P2 can be stated as follows.
1
Min uV u 'Lu
c(u, u ') xuu ' +
2
uV vN ( u ) u 'Lu v 'Lv N [u ']
w{u, v} D(u ', v ') y{u,v}{u ',v '}
1
u:u 'Lu
c(u, u ') xuu ' +
2
u :u 'Lu vN ( u ) v 'Lu N [ u ']
w{u ,v} D(u ', v ') y{u ,v}{u ',v '} K , for u ' V ' .
A special case of the above formulation under the task assignment in distributed computing systems
(TADCS) is discussed in [49] in which a graph-matching formulation for the problem is presented and in
which is also some discussion of an integer programming formulation. In the TSDCS, we have a set of
tasks, V, and a set of processors, V’. A task graph G=(V, E) represents the set of tasks and their
communication links shown by the edges of the graph. A processor graph G’=(V’, E’) represents the set of
processors and their communication links shown by the edges of the graph. The problem is to find an
assignment function f : V → V ' that assigns the tasks to the processors. If task u V is assigned to an
eligible processor u ' V ' , the processing time is c(u,u’). If two tasks u, v V need to communicate (i.e., if
there is an edge {u, v} E ), they can be assigned to one processor; in that case, there is no communication
time between them. Two tasks can also be assigned to two different processors if a communication link is
22
possible between them (i.e. if there is an edge {u ', v '} E ' ). In that case, there is a communication time
between two tasks measured by d({u,v},{f(u),f(v)}). The problem with the objective P2 asks for an
assignment f : V → V ' to minimize the total times (e.g., [50,51,52,53]). In a problem with objective P4, we
want to minimize the completion time of the last task, i.e., a load of the processor with the maximum
processing and communication times [49]. Other graph optimization problems related to the MLP with
objective function P2 are Graph Embeddings in d-dimensions, Linear arrangement with d-dimensional
cost, and Minimizing Storage-Time Product. The above formulations can be modified for these problems.
However, Even, Naor, Rao, and Schieber [28] presented indirect IP formulations for each case.
In the next section, we present some variations of graph crossing optimization. We first discuss the
Golomb Ruler problem (GR) which has a variety of applications including crystallography, radioastronomy,
and telecommunication [10,153,154,155].
23
( u , v ) A ( u ', v ') A ',v ' − u '= k
y( u , v )( u ',v ') 1, for k=1,…,K,
REFERENCES
[1] T. Calamoneri, “The L(h,k)-Labelling Problem: A Survey and Annotated Bibliography,” The
Computer Journal, Vol. 49, No. 5, pp. 585-608, (2006).
[2] J. Diaz, J. Petit, and M. Serna, “A Survey of Graph Layout Problems,” ACM Computing Surveys,
Vol. 34, No. 3, pp. 313-356, 2002.
24
[3] J. Gallian, “A Survey: recent results, Conjectures, and Open Problems in Labeling Graphs,” Journal
of Graph Theory Vol. 13, pp. 491-504, 1989.
[4] J. Gallian, “A Guide to the Graph Labeling Zoo,” Discrete Applied Mathematics, Vol. 49, pp. 213-
229, 1994.
[5] J. Gallian, “A Dynamics Survey of Graph Labeling,” November 13, 2010
[6] F. Gurski, “Linear Layouts Measuring Neighbourhoods in Graphs,” Discrete Mathematics, Vol. 306,
pp. 1637-1650, 2006.
[7] Y-L. Lai, and K. Williams, “A Survey of Solved Problems and Applications on Bandwidth,
Edgesum, and Profile of Graphs,” Journal of Graph Theory, Vol. 31, pp. 75-94, 1999.
[8] C. Romanowski, R. Nagi, and M. Sudit, “Data Mining in an Engineering Design Environment: OR
Applications from Graph Matching,” Computers and Operations Research, Vol. 33, pp. 3150-3160,
2006.
[9] K.R. Yeh, “A Survey of Labeling Graphs with a Condition at Distance Two,” Discrete
Mathematics, Vol. 306, pp. 1217-1231, 2006.
[10] C. Meyer, and B. Jaumard, “Equivalence of Some LP-based Lower Bounds for the Golomb Ruler
Problem,” Discrete Applied Mathematics, Vol. 154, No. 1, pp. 120-144, 2006.
[11] J. Toran, “On the Hardness of Graph Isomorphism,” SIAM J. Comput, Vol. 33, pp. 1093-1108,
2004.
[12] R. Bar-Yehuda, K. Bendel, A. Freund, and D. Rawitz, “Local ratio: A Unified Framework for
Approximation Algorithms,” ACM Computing Surveys, Vol. 36, No. 4, pp. 422-463, 2004.
[13] C. Blum, and A. Roli, “Metaheuristics in Combinatorial Optimization: Overview and Conceptual
Comparison,” ACM Computing Surveys, Vol. 35, No. 3, pp. 268-308, 2003.
[14] V. Chandru, R. Rao, “Combinatorial Optimization and Network Algorithms,” ACM Computing
Surveys, Vol. 28, No. 1, pp. 55-58, 1996.
[15] Z. Galil, “Efficient Algorithms for Finding Maximum Matching in Graphs,” ACM Computing
Surveys, Vol. 18, No. 1, 23-38, 1986.
[16] S. Sofianopoulos, “The Process Allocation Problem: a Survey of the Application of Graph-
Theoretic and Integer Programming Approaches,” Journal of the Operational research Society, Vol.
43, No. 5, pp. 407-413, 1992.
[17] A. Atamturk, G.L. Nemhauser, and M. Savelbergh, “Conflict Graphs in Solving Integer
Programming Problems,” European Journal of Operational Research, Vol. 121, pp. 40-55, 2000.
[18] N. Christofides, and E. Benavent, “An Exact Algorithm for the Quadratic Assignment Problem on a
Tree,” Operations Research, Vol. 37, pp. 760-768, 1989.
[19] S. Khuller, and B. Raghavachari, “Graph and Network Algorithms,” ACM Computing Surveys, Vol.
28, No. 1, pp. 43-45, 1996.
[20] D. Gómez, J. Montero, J.Yáñez, C. Poidomani, “A Graph Coloring Approach for Image
Segmentation,” OMEGA, Vol. 35, pp.173 – 183, 2007.
[21] L. Grady, and E. Schwartz, “Isoperimetric Graph Partitioning for Image Segmentation, IEEE Trans.
Pattern Analysis and Machine Intelligence, Vol. 28, No. 3, pp. 469-475, 2006.
[22] Y. Huang, Q. Liu, F. Lv, Y. Gong, and D. Mtaxas, “Unsupervised Image Categorization by
Hypergraph Partition,” IEEE Trans. Pattern Analysis and Machine Intelligence, Vol. 33, No.6, pp.
1266-1273, 2011.
[23] C. Unsalan, and K. L. Boyer, “A Theoretical and Experimental Investigation of Graph Theoretical
Measures for Land Development in Satellite Imagery,” IEEE Trans. Pattern Analysis and Machine
Intelligence, Vol. 27, No.4, pp. 575-589, 2005.
[24] W. Chu, Z. Ghahramani, A. Podtelezhnikov, and D. Wild, “Bayesian Segmental Models with
Multiple Sequence Alignment Profiles for Protein Secondary Structure and Contact Mp Prediction,”
IEEE/ACM Transactions on Computational Biology and Bioinformatics, Vol. 3, No. 2, pp. 99-113,
2006.
[25] B. Venkatachalam, J. Apple, K. St. John, and D. Gusfield, “Untangling Tanglegrams: Comparing
Trees by Their Drawings,” IEEE/ACM Transactions on Computational Biology and Bioinformatics,
25
Vol. 7, No. 4, pp. 588-597, 2010.
[26] Q. Zhu, Z. Adam, V. Choi, and D. Sankof, “Generalized Gene Adjacencies, Graph Bandwidth, and
Clusters in Yeast Evolution,” IEEE/ACM Transactions on Computational Biology and
Bioinformatics, Vol. 6, No. 2, pp. 213-220, 2009.
[27] E. Reid, and H. Chen, "Mapping the Contemporary Terrorism Research Domain," International
Journal of Human-Computer Studies, Vol. 65, No. 1, pp. 42-56, 2007.
[28] G. Even, J. Naor, S. Rao, and B. Schieber, “Divide-and-Conquer Approximation Algorithms via
Spreading Metrics,” Journal of ACM, Vol. 47, No. 4, pp. 585-616, 2000.
[29] J. Kleinberg, and E. Tardos, “Approximation Algorithms for Classification Problems with Pairwise
Relationships: Metric Labeling and Markov Random Field,” Journal of ACM 49 (2002), 616-630.
[30] C. Chekuri, S. Khanna, J. Naor, and L. Zosin, A Linear Programming Formulation and
Approximation Algorithms for the Metric Labeling Problem. SIAM J. Discrete Math. Vol. 18, 608-
625, 2005.
[31] H. Greenberg, W. Hart, and G. Lancia, “Opportunities for Combinatorial Optimization in
Computational Biology,” INFORMS Journal on Computing, Vol. 16, No. 3, pp. 211-232, 2004.
[32] M. Junger, E. Lee, P. Mutzel, and T. Odenthal, A Polyhedral Approach to the Multi-Layer Crossing
Number Problem, Springer-Verlag,1997.
[33] J. Luttamaguzi, M. Pelsmajer, Z, Shen, and B. Yang, Integer Programming Solutions for Several
Optimization Problems in Graph Theory, DIMACS Technical Report 2005-02, January 2005
[34] A. H. Almoahamad, and S.O. Duffuaa, “A Linear Programming Approach for the Weighted Graph
Matching Problem," IEEE Trans. Pattern Analysis and Machine Intelligence, Vol. 15, No. 5 pp. 522-
525, 1993.
[35] E. Pinana, I. Plana, V. Campos, and R. Martri, "GRASP and Path Relinking for the Matrix
Bandwidth Minimization," European Journal of Operational Research, Vol. 153, pp. 200-210, 2004.
[36] M. Grotschel, M. Junger, and G. A. Reinelt, "A Cutting Plane Algorithm for the Linear Ordering
Problem," Operations Research, Vol. 32, pp. 1195-1220, 1984.
[37] M. Grotschel, M. Junger, and G. A. Reinelt, "Facets of Linear Ordering Polytope," Mathematical
Programming, Vol. 33, pp. 43-60, 1985.
[38] K. Eshghi, and P. Azimi, “Applications of Mathematical Programming in Graceful Labeling
Graphs,” Journal of Applied Mathematics, Vol. 1, pp. 1-8, 2004.
[39] M. Junger, and P. Mutzel, “P. 2-Layer Straightline Crossing Minimization: Performance of Exact
and Heuristic Algorithms,” Journal of Graph Algorithms and Applications, Vol. 1, No. 1 pp. 1-25,
1997.
[40] R. Lorentz, and R. Nilssen, “Application of Linear Programming to the Optimal Difference
Triangle Set problem,” IEEE Transactions on Information Theory, Vol. 37, No. 5, pp. 1486-1488,
1991.
[41] A. Caprara, G. Lancia, B. Carr, B. Walenez, and S. Istrail, “1001 Optimal PDB Structure
Alignments: Integer Programming Methods for Finding the Maximum Contact Map Overlap,
Journal of Computational Biology, Vol, 11, No. 1, pp. 27-52, 2004.
[42] S. Arora, "Polynomial Time Approximation Schemes for Euclidean Traveling Salesman and Other
Geometric Problems. Journal of the ACM, Vol. 45, No. 5, pp. 753-782, 1998.
[43] A. Hero, and O. Michel, “Asymptotic Theory of Greedy Approximations to Minimal k-Point
Random Graphs,” IEEE Transactions on Information Theory, Vol. 45, No. 6, pp. 1921-1938, 1999.
[44] E. Lawler, J. Lenstra, R. Kan, and D. Shmoys, The Traveling Salesman Problem, John-Wiley &
Sons, Chichester, 1990.
[45] A. Langevin, F. Soumis, and J. Desrosiers, “Classification of Traveling Salesman Problem
Formulations,” Operations Research Letters, Vol. 9, pp. 127-132, 1990.
[46] A. J. Orman, and H.P. Williams, A survey of different integer programming formulations of the
travelling salesman problem, Springer, 2006.
[47] D-F. Liu, “T-Colorings of Graphs,” Discrete Mathematics, Vol. 101, pp. 203-212, 1992.
[48] F. Roberts, "T-colorings of Graphs: Recent Results and Open Problems," Discrete Mathematics,
26
Vol. 93, pp. 229-245, 1991.
[49] C-C. Shen, and W-H. Tsai, “A Graph Matching Approach to Optimal Task Assignment in
Distributed Computing Systems using a Minimax Criterion,” IEEE Transactions on Computers, Vol.
34, No. 4, pp. 197-203, 1985.
[50] A. Ernst, H. Jiang, and M. Krishnamoorthy, “Exact Solutions to Task Allocation Problems,”
Management Science, Vol. 52, No. 10, pp. 1634-1646, 2006.
[51] M. Lewis, B. Alidaee, and G. Kochenberger, “Using xQx to Model and Solve the Uncapacitated
Task Allocation Problem,” Operations Research Letters, Vol. 33, No. 2, pp. 176-182, 2005.
[52] S. Menon, “Effective Reformulations for Task Allocation in Distributed Systems with a Large
Number of Communicating Tasks,” IEEE Transactions on Knowledge and Data Engineering, Vol.
16 No. 12, pp. 1497–1508, 2004.
[53] H. S. Stone, “Multiprocessor Scheduling with the Aid of Network Flow Algorithms,” IEEE Trans
of Software Engineering, Vol. 3, No. 1, pp. 93-95, 1977.
[54] B. Escoffier, J. Monnot, and V. Paschos, “Weighted Coloring: Future Complexity and
Approximability Results,” Information Processing Letters, Vol. 97, pp. 98-103, 2006.
[55] D.J. Guan, and X. Zhu, “A Coloring Problem for Weighted Graphs,” Information Processing Letters,
Vol. 61, No. 2, pp. 77-81, 1997.
[56] R. Hassin, and J. Monnot, “The Maximum Saving Partition Problem,” Operations Research Letters,
Vol. 33, pp. 242-248, 2005.
[57] E. Malaguti, M. Monaci, and P. Toth, “Models and Heuristic Algorithm for a Weighted Vertex
Coloring Problem,” Journal of Heuristics, Vol. 15, No. 5, pp. 503-526, 2009.
[58] S. Barbarossa, and G. Scutari, “Decentralized Maximum-Likelihood Estimation for Sensor Networks
Composed of Nonlinearly Coupled Dynamical Systems,” IEEE Transactions on Signal Processing,
Vol. 55, No. 7, pp. 3456-3470, 2007.
[59] Z. Li, B. Li, and L. C. Lau, “A Constant Bound on Throughput Improvement of Multicast Network
Coding in Undirected Networks,” IEEE Transactions on Information Theory, Vol. 55, No. 3, pp.
1016-1026, 2009.
[60] C.K. Yen, “The Edge-orientation Problem and Some of its Variants on Weighted Graphs,
Information Sciences, Vol. 176, No. 19, pp. 2791-2816, 2006.
[61] A. N. Sadigh, M. Mozafari, A. H. Kashan, “A Mixed Integer Linear Program and Tabu Search
Approach for the Complementary Edge Covering Problem,” Advances in Engineering Software,
Vol. 41, pp. 762-768, 2010.
[62] F. Shih, and S. Cheng, “Adaptive Mathematical Morphology for Edge Linking,” Information
Sciences, Vol. 167, No. 1-4, pp. 9-21, 2004.
[63] S.J. Yang, “Efficient Algorithms to Solve the Link-orientation Problem for Multi-square, Convex-
bipartite, and Convex-split Networks,” Information Sciences, Vol. 171, No. 4, pp. 475-493, 2005.
[64] T. Biedl, T. Chan, Y. Gnjali, M.T. Hajiaghayi, and D. Wood, “Balanced vertex-orderings of
Graphs,” Discrete Applied Mathematics, Vol. 148, pp. 27-48, 2005.
[65] S. Banerjee, B. Mukherjee, and D. Sarkar, “Heuristic Algorithms for Constructing Optimized
Structures of Linear Multihop Lightwave Networks,” IEEE Transactions on Communications, Vol.
42, No. 2/3/4, pp. 1811-1826, 1994.
[66] W-K. Mak, and E. F. Y. Young, “Temporal Logic Replication for Dynamically Reconfigurable
FPGA Partitioning,” IEEE Transactions on Computer-Aided Design of Integrated Circuits and
Systems, Vol. 22, No. 7, pp. 952-959, 2003.
[67] R. Borndofer, A. Eisenblatter, M. Grotschel, and A. Martin, “A. Frequency Assignment in Cellular
Phone Networks,” Annals of Operations Research, Vol. 76, pp. 73-93, 1998.
[68] R. Montemanni, D. H. Smith, and S. Allen, “Lower Bounds for Fixed Spectrum Frequency
Assignment,” Annals of Operations Research, Vol. 107, pp. 237-250, 2001.
[69] R. Montemanni, J. N. J. Moon, and D. H. Smith, “An Improved Tabu Search Algorithm for the
Fixed-Spectrum Frequency-Assignment Problem,” IEEE Transactions on Vehicular Technology,
Vol. 52, No. 3, pp. 891-901, 2003.
27
[70] R. Montemanni, D. H. Smith, and S. M. Allen, “An Improved Algorithm to Determine Lower
Bounds for the Fixed Spectrum Frequency Assignment Problem,” European Journal of Operational
Research, Vol. 156, pp. 736-751, 2004.
[71] P. Pardalos, F. Rendl, and H. Wolkowicz, The Quadratic Assignment problem: A Survey and
Recent Developments, American Mathematical Society, Providence, Rhode Island, USA, 1994.
[72] E. M. Loiola, N.M. De Abreu, P. Boaventura-Netto, P. Hahn, and T. Querido, “A Survey for the
Quadratic Assignment Problem,” European Journal of Operational Research, Vol. 176, No. 2, pp.
657-690, 2007.
[73] W-C. Chiang, P. Kouvelis, and T. Urban, “Incorporating Workflow Interference in Facility Layout
Design: The Quartic Assignment Problem,” Management Science, Vol. 48, No. 4, pp. 584-590, 2002.
[74] W-C. Chiang, P. Kouvelis, and T. Urban, “Single- and Multi-objective Facility Layout with
Workflow Interference Considerations,” European Journal of Operational Research, Vol. 174, No. 3,
pp. 1414-1426, 2006.
[75] M. Garey, and D. Johnson, Computers and Intractability: A Guide to the Theory of NP-
Completeness, Freeman, San Francisco, 1991.
[76] A Vashist, C. Kulikowski, and I. Muchnik, “Ortholog Clustering on a Multipartite Graph,
IEEE/ACM Transactions on Computational Biology and Bioinformatics, Vol. 4, No. 1, pp. 17-27,
2007.
[77] S. Guha, “Nested Graph Dissection and Approximation Algorithms,” 41st Annual Symposium on
Foundation of Computer Science, November 12-14, 2000.
[78] I. C. Lopes, and J. M. Val´erio de Carvalho, “An integer programming model for the Minimum
Interval Graph Completion Problem,” Electronic Notes in Discrete Mathematics, Vol. 36, pp. 583–
590, 2010.
[79] Y-P. Tsao, and G.J. Chang, “Profile Minimization on Products of Graphs,” Discrete Mathematics,
Vol. 306, pp. 792-800, 2006.
[80] H-F Chen, and D.T. Lee, “On Crossing Minimization Problem,” IEEE Transactions on Computer-
Aided Design of Integrated Circuits and Systems, Vol. 17, No. 5, pp. 406-418, 1998.
[81] I. Herman, G. Melancon, and M. S. Marshall, “Graph Visualization and Navigation in Information
Visualization: A Survey,” IEEE Transactions on Visualization and Computer Graphics, Vol. 6, No.
1, pp. 24-43, 2000.
[82] M. Laguna, and R. Marti, “GRASP and Path Relinking for 2-Layer Straight Line Crossing
Minimization,” INFORMS Journal on Computing, Vol. 11, pp. 44-52, 1999.
[83] M. Laguna, R. Marti, and V. Valls, “Arc Crossing Minimization in Hierarchical Digraphs with Tabu
Search,” Computers and Operations Research, Vol. 24, No. 12, pp. 1175-1186, 1997.
[84] R. Miller and Q. F. Stout, “Geometric Algorithms for Digitized Pictures on a Mesh Connected
Computer,” IEEE Trans. Pattern Anal. Machine Intell., Vol. 7, pp. 216-228, 1985.
[85] M. Nollenburg, and A. Wolff, “Drawing and Labeling High-Quality Metro Maps by Mixed-Integer
Programming,” IEEE Transactions on Visualization and Computer Graphics, Vol. 17, No. 5, pp.
626-641, 2011.
[86] M. Garey, and D. Johnson, “Crossing Number is NP-complete,” SIAM J. Alg. Disc. Meth. Vol. 4, No.
3, pp. 312-316, 1983.
[87] V. Valls, R. Marti, and P. Lino, “A Tabu Thresholding Algorithm for Arc Crossing Minimization in
Bipartite Graphs,” Annals of Operations Research, Vol. 63, pp. 233-251, 1996.
[88] P. Eades, S. Whitesides, “Drawings Graphs in Two Layers,” Theoretical Computer Science, Vol.
131, pp. 361-374, 1994.
[89] I. Finocchi, “Crossing-constrained hierarchical drawings,” Journal of Discrete Algorithms, Vol. 4,
No. 2, pp. 299-312, 2006.
[90] L. Zheng, L. Song, and P. Eades, Crossing Minimization Problems of Drawing Bipartite Graphs in
Two Clusters, APVis '05 proceedings of the 2005 Asia-Pacific symposium on Information
visualisation-Vo. 45, 2005.
[91] M.J. Carpano, “Automatic Display of Hierarchized Graphs for Computer-Aided Decision Analysis,
28
IEEE Trans. Systems, Man and Cybernetics, Vol. 10, No.11, pp. 705-715, 1980.
[92] D. Conte, P. Foggia, C. Sansone, and M. vento, “Thirty Years of Graph Matching in Pattern
Recognition,” International Journal of Pattern Recognition and Artificial Intelligence, Vol. 18, No.
3, pp. 18, 3, 265-298, 2004.
[93] P. Erdos, S. Hedetniemi, R. Laskar, and G. Prins, “On the Equality of the Partial Grundy and Upper
Ochromatic Numbers of Graphs,” Discrete Mathematics, Vol. 272, pp. 53-64, 2003.
[94] D. Goldman, S. Istrail, and C. Papadimitriou, “Algorithm Aspects of Protein Structure Similarity,
IEEE Computer Society Press, pp. 512-521, 1999.
[95] J. R. Griggs, and R. Yeh, “Labeling Graphs with a Condition at Distance 2,” SIAM J. Discrete. Math,
Vol. 5, pp. 586-595, 1992.
[96] A. Holmgren, “Using Graph Models to Analyze the Vulnerability of Electric Power Networks,” Risk
Analysis, Vol. 26, No. 4, pp. 955-969, 2006.
[97] X.T. Jin, and R. Yeh, “Graph Distance-Dependent Labeling Related to Code Assignment in
Computer Networks,” Naval Research Logistics, Vol. 51, pp. 1-8, 2004.
[98] M. Malafiejski, "Sum coloring of graphs," In: M. Kubale, Editor, Graph colorings, American
Mathematical Society, pp. 55–66, 2004.
[99] J. Sohn, “Evaluating the Significance of Highway Network Links Under the Flood Damage: An
Accessibility Approach,” Transportation Research Part A, Vol. 40, pp. 491-506, 2006.
[100] D. Voth, “TIA Program Researches Terrorism Patterns,” IEEE Intelligent Systems, Vol. 18, No. 4
pp. 4-6, 2003.
[101] H. Wang, B. Alidaee, F. Glover, and G. Kochenberger, “Solving Group Technology Problems via
Clique Partitioning,” International Journal of Flexible Manufacturing Systems, Vol. 18, No. 2, pp.
77-97, 2007.
[102] H. Wang, T. Obremski, B. Alidaee, and G. Kochenberger, “Clique Partitioning for Clustering: A
Comparison with K-means and Latent Class Analysis,” Communications in Statistics - Simulation
and Computation, Vol. 37, No. 1, pp. 1-13. 2008.
[103] G. Guttin, and A. Punnen, “The Traveling Salesman Problem and Its Variations,” Kluwer
Academic Publishers, Dordrecht, 2002.
[104] G. Vairaktarakis, “On Gilmore-Gomory’s Open Question for the Bottleneck TSP,” Operations
Research Letters, Vol. 31, pp. 483-491, 2003.
[105] G. Vairaktarakis, “Simple Algorithms for Gilmore-Gomory’s Traveling Salesman and Related
Problems,” Journal of Scheduling, Vol. 6, pp. 499-520, 2003.
[106] A. Bhusnurmath, and C. J. Taylor, “Graph Cuts via l1 Norm Minimization,” IEEE Transaction on
Pattern Analysis and Machine Intelligence, Vol. 30, No. 10, pp. 1866-1871, 2008.
[107] S. M. Chai, S. Chiricescu, R. Essick, B. Lucas, P. May, K. Moat, J. M. Norris, M. Schuette, and A.
López-Lagunas, “Streaming Processors for Next-Generation Mobile Imaging Applications,” IEEE
Communications Magazine, Vol. 43, No. 12, pp. 81-89, 2005.
[108] R. P. Klemm, “WebCompanion: A Friendly Client-Side Web Prefetching Agent,” IEEE
Transactions on Knowledge and Data Engineering, Vol. 11, No. 4, pp. 577-594, 1999.
[109] I. Charon, and O. Hudrey, “An Updated Survey on the Linear Ordering Problem for Weighted or
Unweighted Tournaments,” Ann Oper Res, Vol. 175, pp. 107–158, 2010.
[110] R. M. Haralick and J. Kartus, "Arrangements, homomorphisms, and discrete relaxation," IEEE
Trans. Syst., Man, Cybern., Vol. SMC-8, pp. 600-612, Aug. 1978.
[111] D.J. Guan, and K. Williams, “Profile Minimization on Triangulated Triangles,” Discrete
Mathematics, Vol. 260, pp. 69-76, 2003.
[112] Y-L. Lai, and G. Chang, “On the Profile of the Corona of Two Graphs,” Information Processing
Letters, Vol. 89, pp. 287-292, 2004.
[113] P. Cunningham, “A Taxonomy of Similarity Mechanisms for Case-Based Reasoning,” IEEE
Transactions on Knowledge and data Engineering, Vol. 21, No. 11, pp. 1532-1543. 2009.
[114] D. Kimelman, M. Kimelman, D. Mandelin, and D. M. Yellin, “Bayesian Approaches to Matching
Architectural Diagrams,” IEEE Transactions on Software Engineering, Vol. 36, No. 2, pp. 348-274,
29
2010.
[115] B. T. Messmer, and H. Bunke, “Efficient Subgraph Isomorphism Detection: A Decomposition
Approach,” IEEE Transactions on Knowledge and data Engineering, Vol. 12, No. 2, pp. 307-323,
2000.
[116] J.L. Wong, F. Kourshanfar, and M. Potkonjak, Flexible ASIC: shared masking for multiple media
processors, Proceedings of 42nd Design Automation Conference, June 13-17, 2005, pp. 909-914.
[117] R. Horaud, and H. Sossa, “Polyhedral Object Recognition by Indexing,” Pattern Recognition, Vol.
28, No. 12, pp.1855-1870, 1995.
[118] D. Mateus, F. Cuzzolin, R. Horaud, and E. Boyer, “Articulated Shape Matching Using Locally
Linear Embedding and Orthogonal Alignment,” IEEE 11th International Conference on Computer
Vision, 2007. pp. 1-8, ICCV 2007.
[119] L. Medaglia, and S. C. Fang, “A Genetic-based Framework for Solving (Multi-criteria) Weighted
Matching Problems,” European Journal of Operational Research, Vol. 149, pp. 77–101, 2003.
[120] H.G. Barrow, and R. M. Burstall, “Subgraph Isomorphism, Matching Relational Structures and
Maximal Cliques,”. Information Processing Letters, Vol.4, pp. 83-84, 1976.
[121] Y. Al-Kofahi, W. Lassoued, W. Lee, and B. Roysam, “Improved Automatic Detection and
Segmentation of Cell Nuclei in Histopathology Images,” IEEE Transactions on Biomedical
Engineering, Vol. 54, No. 4, pp. 841-852, 2010.
[122] J. Chalopin, and D. Paulusma, “Graph Labelings Derived from Models in Distributed Computing:
A Complete Complexity Classification,” Networks, 1-25, 2011.
[123] R. M. Haralick and L. Shapiro, " The Consistent Labeling Problem: Part I," IEEE Trans. Pattern
Anal. Machine Intell., Vol. PAMI-1, No. 2, pp. 173-184, 1979.
[124] R. M. Haralick and L. Shapiro, " The Consistent Labeling Problem: Part II," IEEE Trans. Pattern
Anal. Machine Intell., Vol. PAMI-2, No. 3, pp. 193-203, 1980.
[125] A. Hausner, “A new clustering algorithm for coordinate-free data,” Pattern Recognition, Vol. 43,
pp.1306-1319, 2010.
[126] M. G. Karpovsky, and L. B. Levitin, “Data Verification and Reconciliation With Generalized
Error-Control Codes,” IEEE Transactions on Information Theory, Vol. 49, No. 7, pp. 1788-1793,
2003.
[127] L.G. Kroon, A. Sen, H. Deng, and A. Roy, “The Optimal Cost Chromatic Partition Problem for
Trees and Interval Graphs, WG '96 Proceedings of the 22nd International Workshop on Graph-
Theoretic Concepts in Computer Science, Springer-Verlag, London, UK, 1997.
[128] S. Nicoloso, "Sum Coloring and Interval Graphs: A Tight Upper Bound for the Minimum Number
of Colors," Discrete Mathematics, Vol. 280, pp. 251-257, 2004.
[129] K.J. Supowit, “Finding a Maximum Planar Subset of a Set of Nets in Channel,” IEEE Trans.
Comput. Aided Design, Vol. 6, No. 1, pp. 93-94, 1987.
[130] E. Kubicka, The Chromatic Sum of Graph, Western Michigan University, Kalamozoo, 1989.
[131] S. Butenko, P. Festa, and P. Pardalos, “On the Chromatic Number of Graphs,” Journal of
Optimization Theory and Applications, Vol. 109, No. 1 pp. 69-83, 2001.
[132] G. Kochenberger, f. Glover, B. Alidaee, and H. Wang, “Clustering of Microarray Data via Clique
Partitioning,” Journal of Combinatorial Optimization, Vol. 10, pp. 77-92, 2005.
[133] L. Lin, X. Liu, and S-C. Zhu, “Layered Graph Matching with Composite Cluster Sampling,” IEEE
Trans. Pattern Analysis and Machine Intelligence, vol. 32, No. 8, pp. 1426-1442, 2010.
[134] J. M. Santos, J. M. de Sa´ , and L. A. Alexandre, “LEGClust—A Clustering Algorithm Based on
Layered Entropic Subgraphs,” IEEE Trans. Pattern Analysis and Machine Intelligence, vol. 30, No.
1, pp. 62-75, 2008.
[135] P. Soundararajan, and S. Sarkar, “An In-Depth Study of Graph Partitioning Measures for
Perceptual Organization,” IEEE Trans. Pattern Analysis and Machine Intelligence, vol. 25, No.6, pp.
642-660, 2003.
[136] J.S. Yoo, and S. Shekar, “A Joinless Approach for Mining Spatial Colocation Patterns,” IEEE
Transactions on Knowledge and Data Engineering, vol. 18, No. 10, pp. 1323-1337, 2006.
30
[137] M. Grotschel, and Y. Wakabayashi, “A Cutting Plane Algorithm for a Clustering Problem,”
Mathematical Programming, Vol. 45, pp. 59-96, 1989.
[138] M. Grotschel, and Y. Wakabayashi, “Facets of the Clique Partitioning Polytope,” Mathematical
Programming, Vol. 47, pp. 367-387, 1990.
[139] W. Hale, “Frequency Assignment: Theory and Application,” Proc. IEEE 68 (1980), 13-22.
[140] H. Bodlaender, H. Broersma, F. Fomin, A. Pyatkin, and G. Woeginger, “Radio Labeling with
Preassigned Frequencies,” SIAM J. Optim. Vol. 15, pp. 1-16, 2004.
[141] H. Bodlaender, H. Kloks, R. TAN, and J. Van Leeuwen, “Approximations for l - colorings of
Graphs,” The Computer Journal, Vol. 47, No. 2, pp. 193-204, 2004.
[142] D. Erwin, J. George, and D. Mauro, “On Labeling the Vertices of Products of Complete Graphs
with Distance Constraints,” Naval Research Logistics, Vol. 50, pp. 1-6, 2003.
[143] J. R. Griggs, D. Král. Graph labellings with variable weights, a survey. Discrete Applied
Mathematics, Vol. 157, pp. 2646_2658, 2009.
[144] J. Fiala, D. Kral, and R. Skrekovski, “A Brooks-type Theorem for the Generalized List T-coloring,”
SIAM Journal of Discrete Methods Vol. 19, No. 3, pp. 588-609, 2005.
[145] D. Kral, “The Channel Assignment Problem with Variable Weights,” SIAM Journal of Discrete
Methods, Vol. 20, No. 3, pp. 690-704, 2006.
[146] A. Graf, “Distance Graphs and the T-coloring Problem,” Discrete Mathematics, Vol. 196, pp. 153-
166, 1999.
[147] Y. Boykov, O. Vekseler, and R. Zabih, “Fast Approximate Energy Minimization via Graph Cuts,”
IEEE Trans. Pattern Analysis and Machine Intelligence, Vol. 23, No. 11, pp. 1222-1239, 2001.
[148] H. Jiang, M. S. Drew, and Z-N. Li, “Matching by Linear Programming and Successive
Convexification,” IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 29, No. 6,
pp. 959-975, 2007.
[149] H. Jiang, S. X. Yu, and D. R. Martin, “Linear Scale and Rotation Invariant Matching,” IEEE
Transactions on Pattern Analysis and Machine Intelligence, Vol. 33, No. 7, pp. 1339-1355, 2011.
[150] N. Komodakis, and G. Tziritas, “Approximate Labeling via Graph Cuts Based on Linear
Programming,” IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 29, No. 8, pp.
1436-1453, 2007.
[151] N. Komodakis, N. Paragios, and G. Tziritas, “MRF Energy Minimization and Beyond via Dual
Decomposition,” IEEE Transactions on Pattern Analysis and Machine Intelligence, Vol. 33, No. 3,
pp. 531-552, 2011.
[152] T. Werner, “A Linear Programming Approach to Max-Sum Problem: A Review,” IEEE
Transactions on Pattern Analysis and Machine Intelligence, Vol. 29, No. 7, pp. 1165-1179, 2007.
[153] S. R. Blackburn, T. Etzion, K. M. Martin, and M. B. Paterson, “Two-Dimensional Patterns With
Distinct Differences—Constructions, Bounds, and Maximal Anticodes,” IEEE Transactions on
Information Theory, Vol. 56, No. 3, pp. 1216-1229, 2010.
[154] S. R. Blackburn, T. Etzion, K. M. Martin, and M. B. Paterson, “Distinct Difference Configurations:
Multihop Paths and Key Predistribution in Sensor Networks,” IEEE Transactions on Information
Theory, Vol. 56, No. 8, pp. 3961-3972, 2010.
[155] A. Dollas, W. Rankin, and D. McCracken, “A New Algorithm for Golomb Ruler Derivation and
Proof of the 19 Mark Ruler,” IEEE Trans. Inform. Theory, Vol. 44, No. 1, pp. 379-382, 1998.
[156] P. Galinier, and N. Jaumard, “A Tabu Search Algorithms for Difference Triangle Sets and Golomb
Rulers,” Computers and Operations Research, Vol. 33, pp. 955-970, 2006.
31
Fig. 1. A desired feasible output graph for TSP with k nodes.
1 2
4 3
32
Fig. 2. Illustration of subgraph isomorphism (SI) and induced subgraph isomorphism (ISI)
P 2 : Min f u V
c (u , f (u )) + {u , v }E d ({u , v},{ f (u ), f ( v)} ) ,
P3 : Min f uV
MaxvN ( u ) c (u , f (u )) + d ({u , v},{ f (u ), f ( v )}) ,
P 4 : Min f Maxu 'V ' c(u , f (u )) + d ({u , v},{ f (u ), f ( v )}) ,
uV : f ( u ) = u ' { u , v }E :( f ( u ) = u ' or f ( v ) = u ')
and{ f ( u ), f ( v )}E '
P5 : Min f Max u 'V '
c(u, f (u )) + d ({u, v},{ f (u), f (v)}) ,
u V : f ( u ) = u ' v N ( u )
P6 : Min Max c (u , f (u )) +
f u V
d ({u , v},{ f (u ), f (v )}) ,
v N ( u )
P 7 : Min f Maxi 'V ' c(u, f (u )) + c(v, f (v)) + d ({u, v},{ f (u ), f (v)}) .
{u ,v }E , f ( u ) i ' f ( v )
33
Table 2. Assignment formulas used in formulating problems in part ii
( a1) u ' V '
x uu '
= 1, for u V , ( a 2) u V
x uu '
= 1, for u ' V ',
( c1) x uu '
+x vv '
1, x uv '
+x vu '
1, for {u , v} E , and {u ', v '} E ', ( c 2) x u'u
+x v'v
1, x v'u
+x u'v
1, for {u , v} E , and {u ', v '} E ',
( d 1) x uu '
+x vv '
1, x + x uv ' vu '
1, for ( u , v ) A, and ( u ', v '), ( v ', u ') A ', ( d 2) x uu '
+x vv '
1, x uv '
+x vu '
1, for (u ', v ') A ', and (u , v ), ( v , u ) A
(e) x +x
uv ' vu '
1 for ( u , v ) A, and ( u ', v ') A ',
(f) x uu '
+x vv '
y { u , v }{ u ', v '}
+1 x + x uv ' vu '
y { u , v }{ u ', v '}
+ 1, for {u , v} E , and {u ', v '} E ',
(g) x uu '
+x vv '
y ( u , v )( u ', v ')
+ 1, for ( u , v ) A, and ( u ', v ') A ',
( h1) x uu '
+x uv '
1, for u V , and {u ', v '} E ', ( h 2) x uu '
+x uv '
1, for u V , and (u ', v ') A ',
( i1) x uu '
+x vu '
1, for {u , v} E , and u ' V ', ( i 2) x uu '
+x vu '
1, for (u , v ) A, and u ' V ' .
34