Chapter 13. On Integer and Mixed Integer Fractional Programming Problems
Tải bản đầy đủ  0trang
D. Granot, F. Granol
222
In this paper we construct new algorithms for solving (IFP) and Mixed Integer
Fractional Programming (MIFP) problems. In contrast with the results in [ l , 6, 121,
which are based on Isbell and Marlow's approach to solve fractional programs, our
algorithms are based on Charnes and Cooper's method [4] and on Martos' method
[ 171for solving continuous fractional programs. More specifically, applying Charnes
and Cooper's transformation [4] on (IFP) results with an equivalent problem,
denoted by (IFP1). By exploiting the relationship between (IFP) and (IFP1) we
develop two types of cutting planes which can be systematically generated and
applied while solving (IFP) problems. Similar results are obtained for the (MIFP)
problem. Also, based on Martos' [17] and on Young [22], or Glover [8], a primal
algorithm for solving the (IFP) problem in finitely many iterations is developed.
2. Cut A for (IFP)
Consider again the (IFP) problem:
max{(c ' x
+ co)/(d 'x + do)}
s.t. Ax s b
(1)
(2)
x 2.0, x integer
(3)
where A is an m x n matrix, cT, d T and b' are given row vectors, co and do are
scalars and x is an n x 1 column vector of unknown variables.
Let us denote by
S={x;Axsb,x20}
(4)
and assume that
Assumption 1: d T x + do > 0 on S.
Assumption 2: S is a nonempty and bounded set in R".
The difficulty in solving (IFP) problems stems from the fact that the algorithms
for solving continuous fractional programs, in which the objective function is
maintained in its original form (l), require that primal feasibility will be satisfied in
each iteration. Therefore, one cannot hope to solve an (IFP) problem by applying a
dual cutting plane algorithm, e.g., that in [9],directly on (l), (2), (3). In order to
circumvent this difficulty we shall first apply Charnes and Cooper's transformation
[4] on (IFP) to obtain an equivalent problem, denoted by (IFPl), of the form:
max{t
=
c'y
+ cot}
s.t. Ay  bt
(5)
(6)
d T y + dot = 1
(7)
y, t 2 0 ,
(8)
y / t integer
where y = tx. Then, we shall construct cuttingplanes which can be used for solving
the equivalent (IFP1) problem.
Fractional programming problems
223
Remark 1. Assumption 1 above is not restrictive in the sense that when not
satisfied we may have to solve two or at most three problems of the form (IFP1).
Assumption 2 implies that t > 0 in every feasible solution (y, t ) to (IFPl), see [4].
Theorem 1. I f d T x * + do> 0 for x *, an optimal solution for (IFP), and i f ( y *, t *) is
an optimal solution for (IFPl), then y * / t * is an optimal solution for (IFP).
Proof. Similar to that of [4, Theorem 11, hence omitted.
From Theorem 1 we conclude that in order to solve (IFP) it is sufficient to solve
the equivalent problem (IFP1).
Let us solve the (LP) problem associated with (IFPl), after introducing slack
variables t o convert inequalities in (6) to equalities. Then z and the basic variables
in the optimal tableau can be expressed in terms of the nonbasic variables as
follows:
where Ie, IN are the set of indices corresponding to the basic variables (excluding t )
and the nonbasic variables, respectively.
Note that Assumption 2 implies that t is a basic variable at the optimal solution.
Clearly, from the optimality criterion, do, 3 0, j E I N . Now if aio/am+l,o
is integer for
i E I,,
all i E IB then an optimal solution x * to (IFP) is given by ( x ? = aio/am+l,o
x T = 0 i E IN}. Otherwise, there exists at least one index, say k, for which ako/a,+l,o
is not integer.
Naturally, when striving to satisfy the integrality restriction, one is tempted to use
the kth basic constraint as a source row for generating a Gomory’s cut. However,
this might be somewhat complicated due to the congruence relation, y / t = O
modulo 1, in (8). In order to overcome this difficulty we shall resort to the
relationship between (IFP) and (IFPl), which was established for continuous
fractional programs in [4, 201.
Let us denote by B the optimal basis associated with the current optimal
continuous solution to (IFP1). Since t is a basic variable, 6 can be partitioned into
B = ( I B
1)
D. Granot, F. Granot
224
where de contains the components of d corresponding to B. Further, it can be
shown by matrix calculation, see also [20], that if &' is partitioned into
8'=
(Z:Ell)
where M I IE R"'""', then
M11 = B'  B'b(do
dBB'b)'deB',
hf21
=  (do
dBB'b)'dBB',
Note that Assumption 1 implies that do + dEB'b > 0.
Using (2) and the relationship between (IFP) and (IFPl), the continuous
fractional problem associated with (IFP) (after adding slack variables) can be
equivalently written as:
x 3 0 , x integer
where G,, = (B')#N,and N, is the column of A corresponding to the nonbasic
variable x,.
By assumption, a k o / a m + l , o is not integer and therefore the k t h constraint in (14)
can serve as a source row for generating a Gomory's cut, see [lo], of the form
where
0
&J
=
Gkj
 [Gkj]
< 1,
0
= akO/&+l,O
[akO/arn+l,O]
<1
and [ a ] denotes the largest integer smaller than or equal to a. Inequality (15) should
be satisfied by any feasible solution to (IFP). Multiplying (15) from both sides by 2,
t > 0, substituting tx, = yJ, j E IN and using (11) to express t, in (15), in terms of the
nonbasic variable results with the constraint
Clearly, (16) is not satisfied by the current continuous optimal boiution represented by (lo), (11). Thus, whenever a constraint of the form (16) is appended to
Fractional programming problems
225
the optimal tableau it cuts off the optimal continuous solution but not any integer
feasible solution for (IFP). Cut of the for (16), to which we shall refer to as Cut A
can be systematically generated and appended to (IFP1) whenever the continuous
optimal solution does not satisfy the integrality requirements.
We remark that other cuts which were offered to Integer Programs can be used,
in a similar manner, to generate cuts for (IFP) problems, e.g., Martin’s “accelerated” cut [16].
3. Cut B for (IFP)
By using similar arguments to those used by Gomory [9], we are able to construct
another cutting plane which can be systematically generated and employed when
solving (IFP) problems. In contrast with Cut A, the cut to be constructed in this
section, to which we shall refer to as Cut B, is generated directly from (IFP1).
However, while Cut A can Le applied whenever the optimal solution to the
associated continuous problem does not satisfy the integrality requirement, Cut B
can be applied only when an additional requirement, which can be easily verified at
the outset, is met.
Let us consider again the (IFP1) problem and let t be a lower bound for t in
(IFP1). Such a value can always be secured by solving the (LP) problem
max{dTx + do s.t. Ax s b, x * O } ,
(17)
and taking t = l/(dTx* + do)where x * is an optimal solution for (17). Assumptions
1, 2 guarantee that t > O .
Let us assume again that a k o / a m + l , O in (lo), (11) is not integer, and consider the
following two equations taken from (lo), (11)
r
+C
= am+i,o
Gm+t.j(
yj).
JEIN
From y . G O modulo t we have
Further, since the value of f is always given by (19), we can add or subtract (19)
from (20) as many times as necessary in order to obtain
D. Granot, F. Granot
226
Moreover, we can use the relations
y, = 0 modulo r, j E IN
to obtain
2
fkfy,
fko
modulo
,€IN
where
0
fkj
= fkj  [fk,]
From (23) we conclude that either
or
However, fk, 3 o and y, 3 o ~j E I,,,, thus, if
can then be replaced by the constraint
sl =
fk0
+
2
fkjyj
*o,
fk0
< t only relation (24) is feasible and
s, = 0 modulo r
(26)
JEIN
which should be satisfied by an optimal solution to (IFP1). Clearly, (26) is not
satisfied by the current optimal solution to (IFP1). Therefore, whenever
there exists
y k for which a k O / a m + l . O is not integer and ~ k 0  [ ~ k o / ~ m + l , o ] ~ ~ m + t~, ,a, ~cut
<
of the
form (26) can be appended to (lo), (11) which will cut off the noninteger optimal
solution to (IFP1).
4. A primal algorithm for integer fractional programs
In this section a primal all integer algorithm for solving (IFP) is presented. The
algorithm proceeds to an optimal solution for (IFP) through a finite sequence of
feasible solutions. It is applied directly to (IFP) in a format originally suggested by
Martos [17] for continuous fractional programs, and is a direct and natural
extension of the primal algorithm for linear integer programs, see e.g., [2,8,22], to
(IFP) problems.
Consider again the (IFP) problem in which inequality constraints were converted
to equalities by introducing slack variables. Assume that all the given data in (IFP)
is in integers and that a feasible integer solution to (IFP) is at hand. Thus, (IFP) can
be equivalently written as:
xB, xN 3 0 and integers,
Fractional programming problems
227
where iio3 0 and integer, A is a matrix of integer entries, xB and x N are vectors of
basic and nonbasic components, respectively, and I N is the set of indices
corresponding to nonbasic variables.
Clearly, neither Cut A nor B can be employed in a primal algorithm for solving
(IFP) problems, since adding any of these cuts to the constraints of (IFP) will
destroy primal feasibility. The primal algorithm to be presented in this section is
based on Martos’ [17] adjacent extreme point algorithm for solving continuous
fractional programs. In Martos’ algorithm the original structure of the constraints is
maintained, and the iterations are carried out in an augmented simplex tableau
which includes m + 3 rows. The first m rows correspond t o the original constraints,
the m + 1 and m + 2 rows correspond to the numerator and denominator of the
fractional function, respectively, and the last row corresponds to the 6’s where
<
=
cod,  doc,, j
(28)
E IN.
In every iteration of the algorithm the first m + 2 rows are modified through the
ordinary pivot opertions, whereas the last row is modified via (28).
Now, if
0, j E IN, in (27), then (xB = Zo, xN = 0) is an optimal solution to
(IFP). Otherwise, there exists an index k , k E IN, for which t k > 0. Let
6
A
=
min{ii,o/iia ; &k > 0).
Then any row u, for which [ & o / & k ]
Gomory’s cut of the form
s
+ lEIN
[ ~ q / & k ] x ~= [ & O / & k ] ,
(29)
S
&, can serve as a source row for generating a
s *o.
(30)
This cut was first suggested by Gomory in [lo] for his all integer algorithm, and was
used subsequently by BenIsrael and Charnes [ 3 ] to construct their allinteger
primal algorithm for (IP).
In order to solve (IFP), cut (30) can be added to (27) and serve as a pivot row,
with the k t h column as a pivot column. Since the value of the pivot in this case is
[ii,k/&]
= 1, the new coefficients obtained after performing the ordinary pivot
operations are all integers. Moreover, adding (30) to (27) does not exclude any
feasible integer solution to (27). The slack variable s in (30) will be a new basic
variable whose value in the new tableau will be [ i i , , / d , k ] .
Whenever [&JZUk] = 0 a stationary cycle’ occurs, and the value of the constant
vector is not changed. Since we assumed that S = { x ; Ax 6 b, x 2 0) is bounded, a
primal algorithm for (IFP) will converge in a finite number of iterations if we can
guarantee that any sequence of stationary cycles is finite*. In the (IFP) problem,
The problem of finiteness in the primal algorithm for (IP) is sometimes clarified by the distinction
between stationary cycles and transition cycles. A stationary cycle is a degenerate cycle in which
[aOa/auk
J = 0, whereas in a transition cycle the objective function is strictly increased.
* For a very thorough discussion of the problem of finiteness in the primal algorithm for (IP) via the
distinction between stationary and transition cycles the reader is referred to [22].
D. Granot. E Granot
228
since the last row is modified via (28), we cannot establish strict lexicographical
decrease of a certain column vector, the way it was done in [S] or [22]. Thus, a
finiteness proof of a primal algorithm for (IFP) problems, in which we systematically generate cuts of the form (30), is not available at this stage.
Let us superscript the elements obtained from (27), (30) after performing one
Then,
pivot iteration by
(A).
&
=
50
(31)
[auO/aok]ak
where
z k
CZk,. . . >
= (alk,
A
=
amk)',
1
?od,  do?,
= (co
ck[&o/a,k])(d,

&[&,/a,k])
(do zk[auO/auk])(c,  c k [ a o , /auk])
=(cod; d;lc,)[a,/a"k](COdk dock)[aoo/a&](ckd,
=
6
[&,/aok]ik
&el)
[auO/a"k](dd, ak?,),
where k is the pivot column and u is the source row in (30).
In a stationary cycle [ i i , o / & k ] = 0 and thus, for a stationary cycle
..
?,= t,
 [a",/a"k]
(32)
' Tk.
Therefore, the modification of the last row via (32) in stationary cycles can simply
be achieved through the ordinary pivot operations rather than by (28). Moreover,
(32) indicates that in stationary cycles the linear fractional objective function can be
replaced, for tableau modification sake, by a linear objective function whose
relative cost coefficients are the c ' s .
The above observation in conjunction with Young's ingenious reference row [22]
(see also Glover [S]) can be used to construct a primal algorithm, in which cut (30) is
systematically generated whenever for some k E IN, > 0, which converges to an
optimal solution t o (IFP) in finitely many iterations.
5. Mixed integer fractional programming (MIFP)
The mixed integer fractional programming problem is an optimization problem
of the form (MIFP):
max{(cTx
+ c z y + co)/(dfx + d : y + do)},
s.t. A ~ +xA , y
x, y 3 0 ,
S
b,
x integer.
Let us denote by
S = { ( x , y ) ; A ~ +xA z y
and assume
b, X, y 3 O},
242
M. Grotschel
Proof. Clearly (6) is equivalent to (2) if rn = n. We have to prove that (6) implies
( r + 2)connectedness.
If there is a k with r < k < f ( n + r ) such that dk, S k , then by the arguments of
the proof of Theorem 8, Section (1) (a) ( r t 2)connectedness is assured.
If dk, > k for all r < k < 1 ( n t r ) , we have d,
Furthermore 2q
This implies
q
3
n

= 2q  q 3
2
q
+ r,
In 2
where q : = 
r and q < n  r  1 (as r < n  3), thus q t r < d,
n  ( r + q ) > n  ( q + r )  1 3 n  d,,,
dn,,.
1.
Thus condition (1) of Proposition 1 is satisfied and G is ( r + 2)connected.
Actually Berge proved a stronger theorem saying that Q only has to be a set of
edges of cardinality r such that the connected components of Q are paths.
Corollary 13 (Chvatal [4]). If the degree sequence d , , . . ., d, of a graph G, n
satisfies
dk < k < f n
dnk a n   ,
3,
(7)
then G contains a hamiltonian cycle.
Proof. Take r
=0
in Corollary 12. 0
Furthermore, Chvital showed that this theorem is best possible in the sense that
if there is a degree sequence of a graph not satisfying (7) then there exists a
nonhamiltonian graph having a degree sequence which majorizes the given one.
This proves that Theorem 8 is also best possible in this special case. Moreover
Chvital (see [4]) showed that most of the classical results on hamiltonian graphs are
contained in his theorem, and therefore are also implied by Theorem 8.
A trivial consequence of Corollary 13 which however is not too “workable” is
Corollary 14. Let G‘ be an induced subgraph of a graph G having m n vertices. If
the degree sequence d I,.. ., d A of G ‘ satisfies (7) then G contains a cycle of
length m . 0
4. Some examples
(a) We first show that the number m implied by Theorem 8 giving the minimum
length of a cycle containing a given path cannot be increased, i.e. we give an
example of a graph G with a path Q of length r such that the longest cycle
containing Q has length m .
Consider a graph with two disjoint vertex sets A and B. A is a clique of q
D. Granot, F. Granot
230
where
1; = { j ;j E
If
that
6kJ
3
o}, 1;; = { j ;j
E IL, bkJ <
o}
(i
=
1, 2).
is a lower bound for t in (MIFP) then from assumptions l', 2' we conclude
> 0. Further, since for every feasible t, t 2 i (37) implies
Moreover, if
fko

t < o then by multiplying (38) from both sides by
fkO/cfko

t)<
0 we obtain
Combining now inequalities (36) and (39) results with
Inequality (40) is not satisfied by the current optimal solution t o (MIFPl), and
when added t o the bottom of the optimal tableau it cuts off the optimal continuous
solution to (MIFP). Further, by using the fact that zj = 0 modulo t in (40) one can
obtain the following stronger cut
where

1 iiiis, if for some variable z L, ako/am+l,o
is not integer, cut (41) can be applied
while solving (MIFP), provided i (the lower bound for t ) satisfies
ak0  [ a k O / a m + l , O ]

*
ak0 < t .
(43)
O ne can show that if I k = 0,
i.e., all variables in (33), (34) are constrained t o be
congruent t o zero modulo t, and if { j ; * fkj > fko} # 0then cut (41) is stronger than
Cut A which was derived in section 2 for the (IFP) problem.
References
[l] Y. Anzai, On integer fractional programming, J. Operations Res. SOC.Japan 17 (1974) 4966.
[2] E.J. Bell, Primaldual decomposition programming, Ph.D. Thesis, Operations Research Center,
University of California at Berkeley, Report ORC 6592, (1965).
[3] A. BenIsrael and A. Charnes, On some problems of diophantine programming, Cahiers Centre
Etudes Recherche Optr. 4 (1962) 215280.
[4] A. Charnes and W.W. Cooper, Programming with linear fractional functionals, Naval Res. Logist
Quart. 9 (1962) 181186.
[5] C. Derman, On sequential decisions and Markov chains, Management Sci. 9 (1962) 1624.
[6] M. Florian and P. Robillard, Hyperbolic programming with bevalent variables, Department
d’informatique, Universitk de Montrkal, Publication #41, (August, 1970).
[7] P.C. Gilmore and R.E. Gomory, A linear programming approach to the cutting stock problem Part 11, Oper. Res. 11 (1963) 853888.
[8] F. Glover, A new foundation for a simplified primal integer programming algorithm, Oper. Res. 16
(1968) 727740.
[9] R.E. Gomory, An algorithm for integer solutions to linear programs, Princeton IBM Mathematics
Research Report, (Nov. 1958), also in: R.L. Graves and P. Wolfe, eds., Recent Advances in
Mathematical Programming (McGrawHill, New York, 1963) pp. 269302.
[ 101 R.E. Gomory, Allinteger integer programming algorithm, IBM Res. Center Report RC189, (Jan.
1960); also in J.F. Muth and G.L. Thompson, eds., Industrial Scheduling (PrencticeHall,
Englewood Cliffs, NJ, 1963) 193206.
[Ill R.E. Gomory, An algorithm for the mixed integer problem, RAND, P. 1885, (Feb. 1960).
[I21 M. Grunspan and M.E. Thomas, Hyperbolic integer programming, Naval Res. Logist. Quart. 20
(1973) 341356.
[13] J.R. Isbell and W.H. Marlow, Attrition games, Naval Res. Logist. Quart. 3 (1956) 7193.
[ 141 M. Klein, Inspection  maintenance  replacement schedules under markovian deterioration,
Management Sci. 9 (1962) 2532.
[15] L.S. Lasdon, Optimization Theory for Large Systems; Chapters I1 and IV, (MacMillan London,
1970).
[I61 G.T. Martin, An accelerated Euclidian algorithm for integer programming, in R.L. Graves and P.
Wolfe, eds., Recent Advances in Mathematical Programming (McGrawHill, New York, 1963) pp.
311317.
[I71 B. Martos, Hyperbolic programming, translated by A. and V. Whinston, Naval Res. Logisr. Quart.
11 (1964) 135155.
[I81 P. Robillard, (0, 1)hyperbolic programming problems, Naval Res. Logist. Quart. 18 (1971) 4757.
[I91 J. Tobin, Liquidity preference as behavior toward risk, Rev. Economic Studies 26 (1958) 6586.
[20] H.H. Wagner and John S.C. Yuan, Algorithmic equivalence in linear fractional programming,
Management Sci. 14 (1968) 301306.
[21] H.P. Williams, Experiments in the formulation of integer programming problems, Math. Program ming Study 2 (1974) 180197.
[22] R.D. Young, A simplified primal (allinteger) integer programming algorithm, Oper. Res. 16 (1968)
750782.
[23] W.T. Ziemba, F.J. BrooksHill and C. Parkan, Calculating of investment portfolios with risk free
borrowing and lending, Management Sci. 21 (1974) 209222.
This Page Intentionally Left Blank