a heuristic for the continuous capacity and flow assignment

16
Continuous Optimization A heuristic for the continuous capacity and flow assignment Marcelo Queiroz * ,1 , Carlos Humes Jr. Department of Computer Science, University of S~ ao Paulo, Caixa Postal 66.281, 05315-970, S~ ao Paulo––SP, Brazil Received 15 July 1999; accepted 9 January 2002 Abstract This work deals with the Continuous Capacity and Flow Assignment (CFA) problem for the design of computer networks. This is a nonconvex optimization problem which has been usually solved by applying local optimization techniques. By rephrasing the problem in the context of concave programming and bringing an alternative formulation of the projected pairwise multicommodity flow polyhedron, a heuristic method for the search of a global minimum of the CFA is proposed. Its implementation is discussed, and computational tests with real backbone networks show that the proposed method compares favorably to previous approaches. Ó 2002 Published by Elsevier Science B.V. Keywords: Heuristic; Global optimization; Capacity and flow assignment; Multicommodity flows 1. Introduction and motivating problem Multicommodity flow problems such as the Traffic Assignment problem and the Capacity Assignment problem are well-known for their rel- evance in the design, operation and performance of computer communication networks. A number of classical textbooks and recent literature address those problems, in a variety of contexts (linear and concave channel costs, M/M/1, m-M/M/1 or M/M/ K queueing systems and corresponding delays, fixed or adaptive routing policies), see [1–3,13,15, 16,20]. Despite its fundamental importance, the prob- lem of jointly assigning capacities and routings, known as the Capacity and Flow Assignment (CFA) problem, has received comparatively less attention, probably due to its intrinsic com- plexity as a highly nonconvex problem. Some im- portant works on the CFA are [5,8,9,11,12,14, 16,19]. In one of the first attempts to solve the CFA, Fratta, Gerla and Kleinrock [8] propose the al- ternation between a Capacity Assignment phase (with fixed routings) and a Flow Assignment phase (with fixed capacities), to obtain convergence to a stationary point which correspond to a local mini- mum. For practical applications one is advised to run such a local method from multiple starting points in order to obtain a reasonable solution. Other works related in spirit to this one are [5, 11,12]. In [14] it is shown that the Flow Assignment phase in the above method can be replaced by a single flow deviation, by choosing a descent * Corresponding author. E-mail address: [email protected] (M. Queiroz). 1 Research supported by FAPESP grant no. 97/06227-2. 0377-2217/03/$ - see front matter Ó 2002 Published by Elsevier Science B.V. PII:S0377-2217(02)00219-9 European Journal of Operational Research 146 (2003) 444–459 www.elsevier.com/locate/dsw

Upload: marcelo-queiroz

Post on 04-Jul-2016

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: A heuristic for the continuous capacity and flow assignment

Continuous Optimization

A heuristic for the continuous capacity and flow assignment

Marcelo Queiroz *,1, Carlos Humes Jr.

Department of Computer Science, University of S~aao Paulo, Caixa Postal 66.281, 05315-970, S~aao Paulo––SP, Brazil

Received 15 July 1999; accepted 9 January 2002

Abstract

This work deals with the Continuous Capacity and Flow Assignment (CFA) problem for the design of computer

networks. This is a nonconvex optimization problem which has been usually solved by applying local optimization

techniques. By rephrasing the problem in the context of concave programming and bringing an alternative formulation

of the projected pairwise multicommodity flow polyhedron, a heuristic method for the search of a global minimum of

the CFA is proposed. Its implementation is discussed, and computational tests with real backbone networks show that

the proposed method compares favorably to previous approaches.

� 2002 Published by Elsevier Science B.V.

Keywords: Heuristic; Global optimization; Capacity and flow assignment; Multicommodity flows

1. Introduction and motivating problem

Multicommodity flow problems such as the

Traffic Assignment problem and the CapacityAssignment problem are well-known for their rel-

evance in the design, operation and performance

of computer communication networks. A number

of classical textbooks and recent literature address

those problems, in a variety of contexts (linear and

concave channel costs, M/M/1, m-M/M/1 or M/M/

K queueing systems and corresponding delays,

fixed or adaptive routing policies), see [1–3,13,15,16,20].

Despite its fundamental importance, the prob-

lem of jointly assigning capacities and routings,

known as the Capacity and Flow Assignment

(CFA) problem, has received comparatively

less attention, probably due to its intrinsic com-

plexity as a highly nonconvex problem. Some im-portant works on the CFA are [5,8,9,11,12,14,

16,19].

In one of the first attempts to solve the CFA,

Fratta, Gerla and Kleinrock [8] propose the al-

ternation between a Capacity Assignment phase

(with fixed routings) and a Flow Assignment phase

(with fixed capacities), to obtain convergence to a

stationary point which correspond to a local mini-mum. For practical applications one is advised to

run such a local method from multiple starting

points in order to obtain a reasonable solution.

Other works related in spirit to this one are [5,

11,12].

In [14] it is shown that the Flow Assignment

phase in the above method can be replaced by

a single flow deviation, by choosing a descent

* Corresponding author.

E-mail address: [email protected] (M. Queiroz).1 Research supported by FAPESP grant no. 97/06227-2.

0377-2217/03/$ - see front matter � 2002 Published by Elsevier Science B.V.

PII: S0377 -2217 (02 )00219 -9

European Journal of Operational Research 146 (2003) 444–459

www.elsevier.com/locate/dsw

Page 2: A heuristic for the continuous capacity and flow assignment

direction for the objective function, based on

gradient information. Convergence to a stationary

point is also established for the modified method.

Ng and Hoang [19] apply the same idea for

the special case of linear costs in a different context(m-M/M/1 queues). Though unrealistic, the hy-

pothesis of linear costs in that context leads to the

formulation of a convex problem and the possi-

bility of obtaining global optimality. The m-M/M/

1 model is adequate to model a network channel

consisting of a set of parallel transmission lines,

which is reasonable under linear costs, but poten-

tially expensive under the realistic assumption ofconcave costs.

Another work on the CFA with linear costs is

[9], in which the authors try to obtain simulta-

neously good lower and upper bounds, in order to

verify the quality of their local minima.

In this paper, we introduce a heuristic technique

for solving the CFA with concave costs and M/M/

1 queues, following the approach of the works ofTuy [22] and Zwart [23]. The problem is rephrased

as a concave programming problem, and the key

idea is to use local minima to define concavity cuts,

thus avoiding cycling and an explicit enumera-

tion of the vertices. The possibility of this appli-

cation relies heavily on the polyhedral structure of

the multicommodity flows, which is not directly

available in an analytical description, but via acharacterization of vertices and edges (unidimen-

sional facets).

We shall also show in Section 5 that the results

may be applied for more general problems, whose

feasible sets are described as sums of fully char-

acterized polyhedra, as is the case with multi-

commodity flows. Although these generalizations

give a broader scope to this work, we prefer topresent the results with emphasis to the motivating

problem.

This problem can be outlined as follows:

Given a computer network with n nodes and

m channels, assign capacities (transmission

speeds) for the channels, and define routings

for the messages between the nodes, minimiz-ing costs and the mean delay of the mes-

sages, while fulfilling a communication demand

whose average rate is given.

The above statement of the problem asks for

the minimization of two criteria, namely, costs and

mean delay of the messages. Actually, we look for

Pareto-efficient designs, where cost and delay can-

not be jointly diminished. An usual approach to ob-tain efficient points in a multi-criterion problem is

to minimize one of the criteria subject to a maxi-

mum bound on the other (e.g., [17]). In this work,

we chose to minimize cost subject to a maximum

delay constraint. It is easy to see that the set of Kuhn–

Tucker points of this problem is trivially related to

the one of minimizing delay under a cost constraint.

This search for stationary points is meaningfulfor the continuous relaxation of the CFA, which is

the usual definition of this problem, see [16]. In this

framework we model capacities as nonnegative real

numbers, disregarding the fact that finitely many

transmissions speeds are commercially available.

The routings can be modeled in two different

forms.

The first one is as a series of one-commodityflows, corresponding to messages with the same

origin and destination. These flows are added up

to obtain the actual physical flow in each channel.

It must be noted that the delay depends only upon

the set of capacities and actual physical flows. The

number of physical flows (m) is clearly much less

than the number of variables needed to describe all

one-commodity flows (2mnðn� 1Þ).This leads naturally to the second approach

where the actual physical flows are the primary

variables. Clearly this only makes sense as we are

able to obtain routings for all commodities (mes-

sages with same origin and destination), given the

m-dimensional vector of actual physical flows.

The reason we prefer the second one, besides

the dimensionality, is that the CFA can be seen asthe minimization of a function D�ð�Þ defined on the

set of feasible physical flows, whose model is the

projected pairwise multicommodity flow (PMCF)

polyhedron (see [21]). The function D�ð�Þ assigns to

each flow the optimum cost among all capacities

that satisfy the delay constraint. This function is

shown to be concave, so the problem turns out to

be one of minimizing a concave function over apolyhedron.

We are tempted to consider this concave mini-

mization problem as easily solvable by the classical

M. Queiroz, C. Humes Jr. / European Journal of Operational Research 146 (2003) 444–459 445

Page 3: A heuristic for the continuous capacity and flow assignment

methods of Tuy [22], Zwart [23] and Falk and

Hoffman [7]. But, in order to apply these methods,

we should have an analytical description (Ax6 b,

xP 0) of the physical flow polyhedron. Unfortu-

nately there is no reasonable description (i.e., withsize polynomial in n) for such a polyhedron, as

shown in [21]. In this sense, the problem we want to

tackle is one of minimizing a concave function

whose analytical expression is not known (except

for linear costs and M/M/1 queues), over a poly-

hedron whose analytical description is also un-

known.

In Section 2, we present the mathematicalmodel for the CFA and the Tuy–Zwart method.

The alternative description of the PMCF with the

characterization of vertices and edges is the subject

of Section 3.

Our heuristic approach for this problem, pre-

sented in Section 4, is based on exploring a finite

superset of the vertices of the PMCF, namely, the

set of the coherent flows (Definition 3.9). Associ-ated with each coherent flow, we can compute

leaving directions, which contain the set of edges

if that coherent flow is a vertex. Moreover, we are

able to identify coherent flows that are vertices

using the quasiconcavity of D�ð�Þ (Proposition

4.1). We then use this representation of points and

rays to apply the ideas of Tuy–Zwart�s method,

with a simplex-like enumeration strategy.Section 5 presents a generalization of the frame-

work where this heuristic may be applied. Section

6 considers the application of the Tuy–Zwart al-

gorithm to the fully-characterized product poly-

hedron of single-commodity flows.

The proposed heuristic was used to solve six

real problems with medium to large backbone

communication networks, from Brazil, Australiaand the US. The results were compared to the

Flow Deviation algorithm of Fratta, Gerla and

Kleinrock, and we obtained improved costs from

3% to 25%. These computational tests are pre-

sented in Section 7.

2. The capacity and flow assignment problem

As stated in the previous section, we shall

consider the problem of minimizing the function

D�ðf Þ, i.e., the cost of an optimal capacity as-

signment subject to the delay constraint, where

f belongs to the projected (PMCF) polyhedron.

Then we consider the application of the Tuy–

Zwart algorithm to this problem.

2.1. The mathematical model for the CFA

In order to describe the PMCF, let G ¼ ðN ;AÞbe the graph where N ¼ f1; 2; . . . ; ng is the set of

the nodes and A ¼ f1; 2; . . . ;mg is the set of arcs.

For each origin r 2 N and destination s 2 N ; s 6¼ r,the flow demand is given by qrs. For the motivat-ing problem, computer networks, this demand is

typically measured in KB/second. We shall assume

that qrs > 0 8r; s : s 6¼ r, which ensures non-

degeneracy of the flow polyhedra defined below.

For directed flows, we shall use the same no-

tation G ¼ ðN ;AÞ, though in this case kAk ¼ 2m,

since every undirected arc fk; lg begets two di-

rected arcs ðk; lÞ and ðl; kÞ. The context will alwaysmake clear whether we are considering directed or

undirected flows.

For each origin r and destination s 6¼ r, we de-

fine the polyhedron of directed flows from r to s in

the usual manner, as

F rs�! ¼ f rs 2 R2mþ jJf rs

�¼ qrs½er � es�

�;

where J denotes the (unreduced) incidence matrixof the directed graph G, and ej denotes the jth el-

ement of the canonical basis of Rn.

The polyhedron of directed flows leaving node r

is defined as

F r�! ¼Xs 6¼r

F rs�! ¼ ðf rÞ(

¼Xs 6¼r

f rs

�����f rs 2 F rs�!):It is easy to see that its analytical representation

is similar to the one of F rs�!:

F r�! ¼ f r 2 R2mþ Jf r

�����(

¼Xs 6¼r

qrs½er � es�):

Analogously, the polyhedron of directed mul-

ticommodity flows is defined as

~FF ¼Xr2N

F r�! ¼ f

(¼Xr2N

f r f r 2 F r�! 8r 2 N

�����):

446 M. Queiroz, C. Humes Jr. / European Journal of Operational Research 146 (2003) 444–459

Page 4: A heuristic for the continuous capacity and flow assignment

Using the previous notation, PMCF is defined

as

F ¼ f 2 Rmþ

����9g 2 ~FF : fe

�¼ gkl þ glk

8e ¼ fk; lg 2 Ao:

We denote the linear operator that carries ~FFonto F by P. It is easy to see that P is indeed

a projection map. When necessary, we shall refer

to the polyhedra F rs ¼ PðF rs�!Þ and F r ¼ Pð F r�!Þ.The other relevant variables (transmission

speeds) are represented by the capacity vectorc 2 Rm

þ.

To simplify our discussion, we assume the cost

of the network to be the cost of the installed arcs; a

realistic model is the power law cost, i.e.,

DðcÞ ¼Xe2A

lecae ;

where le > 0 8e 2 A and a 2 ð0; 1�. A more general

assumption (that would not impair the results) is

that DðcÞ ¼P

e2A deðceÞ, where the cost functionsdeð�Þ satisfy deð0Þ ¼ 0 and are continuous, strictly

increasing and concave (separable concave costs).

Clearly as the delay is a result of a congestion

effect we want to impose that fe < ce (unless

fe ¼ ce ¼ 0). Using the notations Iðf Þ ¼ fi jfi 6¼0g, ðx6 yÞ () ðxj 6 yj 8jÞ and ðx < yÞ () ðxj <yj 8jÞ, we shall denote the above constraint by

fIðf Þ < cIðf Þ.Assuming that the delay model is a network of

M/M/1 queues with Poisson arrivals (as in [16]),

the delay is given by

T ðf ; cÞ ¼ 1

q̂q

Xe2Iðf Þ

teðfe; ceÞ ¼1

q̂q

Xe2Iðf Þ

fece � fe

;

where q̂q ¼P

i2NP

j2Nni qij.

Definition 2.1. Given TMAX > 0 and f 2F, thecapacity assignment problem is

min DðcÞs:t: c 2 Cf ;

where

Cf ¼ c 2 Rmþ

cIðf Þ > fIðf Þ;ce ¼ 0 if fe ¼ 0;T ðf ; cÞ6 TMAX

������8<:

9=;

and the optimal cost of the capacity assignment

problem is denoted by

D�ðf Þ ¼ inf DðcÞ jc 2 Cf

� �:

The optimal value of the capacity assignment

problem, for a given TMAX, will be denoted D�ðf Þ,to indicate the dependency on the flow value.

Clearly the design problem under a maximum

delay constraint is

ðCFAÞ min D�ðf Þs:t: f 2F:

The following lemmas show that D�ð�Þ is strictly

increasing, concave and strictly quasiconcave.

Lemma 2.2. The function D�ð�Þ is strictly increas-ing, i.e.,

f 16 f 2; f 1 6¼ f 2 ) D�ðf 1Þ < D�ðf 2Þ:

Proof. Straightforward, see [14]. �

Lemma 2.3. Under power law costs the functionD�ð�Þ is concave; moreover if a < 1, i.e., understrictly concave power law costs, D�ð�Þ is strictlyconcave.

Proof. See [14]. �

A particularization of the previous result for

linear costs and M/M/1 queues can be found in

[11]. All the results just presented hold in a much

more general separable context (see [14]).

Lemma 2.4. Under separable concave costs, D�ð�Þ isstrictly quasiconcave.

The proof of Lemma 2.4 is presented in Ap-

pendix A, for straightforwardness of exposition.

The importance of this lemma is revealed in the

characterization of vertices of the PMCF given by

Proposition 4.1.

In the case of DðcÞ being linear, we can obtainan expression for D�ðf Þ via Kuhn–Tucker condi-

tions:

M. Queiroz, C. Humes Jr. / European Journal of Operational Research 146 (2003) 444–459 447

Page 5: A heuristic for the continuous capacity and flow assignment

Lemma 2.5. If DðcÞ ¼P

e2A lece, then

D�ðf Þ ¼Xe2A

lefe þP

e2Affiffiffiffiffiffiffiffilefep� �2

q̂qTMAX

:

Proof. See [16]. �

In general, the function D�ð�Þ can be easily eval-uated at a flow f 2F with a sequence of linearized

problems, corresponding to outer linearizations of

the function Dð�Þ, as in [14]. Moreover, we also

compute the optimal capacity c� for the Capacity

Assignment problem associated with the flow f. For

power law costs and M/M/1 delays, the optimal

capacity is the limit of the sequence below:

c0e ¼ fe

mq̂qTMAX

�þ 1

�8e 2 A;

ckþ1e ¼ fe þ

1

q̂qTMAX

ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffife

leðckeÞa�1

s Xh2A

ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffifhlhðckhÞ

a�1

q8e 2 A:

The convergence of this sequence to the unique

solution of the Capacity Assignment problem,

under the assumptions of power-law costs and M/

M/1 delays, has been established in [12,14].

2.2. The Tuy–Zwart algorithm and the CFA

The expression ‘‘Tuy–Zwart Algorithm’’ is ap-

plied here to refer to the variant presented in

[22,23], which solves a unique subproblem at each

step. This is computationally simpler than the

original Zwart algorithm, which at each step splits

the polyhedron in several cones, solving a sub-problem for each cone. The ideas presented here

are also easily implemented within the framework

of Zwart�s original algorithm (see Section 8). But

we shall concentrate on the Tuy–Zwart algorithm,

for clarity of exposition.

There are some assumptions for the application

of the Tuy–Zwart algorithm, as stated in [23].

There the feasible set is a polyhedron with aknown analytical description that is also full-

dimensional, bounded and non-degenerate.

We may sketch a general step of the Tuy–Zwart

algorithm as follows.

Initially, we must find a vertex �vv with D�ð�vvÞ ¼ asuch that in all edges leaving (containing) �vv the

objective function is not less than a. Such a vertex is

said to be a radial local minimum. It must be noted

that under the assumption that the objective func-

tion is concave and strictly increasing, a radial lo-

cal minimum will also be a local minimum in theusual sense, though the converse is not necessarily

true.

Given �vv as above and the directions d1; d2; . . . ;dm of the edges leaving �vv, we compute points �xxk ¼hkdk, k ¼ 1; . . . ;m, with hk ¼ maxfh > 0 jD�ð�vvþhdkÞPD�ð�vvÞg. If supfh > 0 jD�ð�vvþ hdkÞPD� �ð�vvÞg ¼ þ1, then D�ð�vvþ dkÞ must be nondecreas-

ing, and we can choose any hk > 0. We shall referto these points as the neighbors of �vv. There are

three cases for each such point. It can be an ad-

jacent vertex, an arbitrary point along an un-

bounded edge, or it will be infeasible. Since D�ð�Þ is

concave, all points in the convex hull ½�vv;�xx1; . . . ;�xxm�have objective function values at least a, and we

cut this region of the polyhedron using the half-

space defined by �xx1; . . . ;�xxm, not containing �vv. Thisis called the concavity cut. At this point a new

radial local minimum is to be found at the re-

maining polyhedron.

The application of Tuy–Zwart�s algorithm for

the solution of the CFA is not immediate due to

the above assumptions on the polyhedron. To start

with, the computation of edges presupposes

the knowledge of an analytical representation ofPMCF, which is not computationally reasonable

(see [21]). Though PMCF is full-dimensional, it is

not bounded and we could not prove that PMCF

is nondegenerate. Degeneracy implies that the

concavity cut for a radial local minimum may not

be uniquely defined.

The unboundedness of PMCF is overcame by

the fact that D�ð�Þ is strictly increasing. Thus, inthe presence of an unbounded edge leaving �vv, one

may choose any point �xxk in the corresponding di-

rection; or even better, one may choose a cut that

is parallel to that direction. An alternative solution

is to introduce in the definition of the PMCF a

constraint of the formP

e2A fe 6M , with M ¼ m�Pi;j qij, which preserves all the original vertices of

the polyhedron.Degeneracy raises a number of problems for the

application of the Tuy–Zwart algorithm. The main

one is associated to having, at each step, well-

448 M. Queiroz, C. Humes Jr. / European Journal of Operational Research 146 (2003) 444–459

Page 6: A heuristic for the continuous capacity and flow assignment

defined concavity cuts. Under non-degeneracy,

there are always m edges leaving �vv, and given the

points �xxk there is a unique concavity cut. When

degeneracy occurs, there is no clear choice of the

proper subset of the p points (p > m) which definesa convenient cut, i.e., one that eliminates that

portion of the polyhedron for which the objective

value is worse (greater) than D�ð�vvÞ. In this situa-

tion, different approaches have to be devised. The

one we introduced is based in the solution of the

following linear programming problem:

mina

Xpk¼1

ha;�xxk � �vvi

s:t: ha;�xxk � �vviP 1:

Given that the solution of the above problem isa�, the resulting concavity cut is represented by

the inequality ha�; xiP b, where b ¼ 1þ ha�;�vvi.For the sake of simplicity, we shall assume that

some method to generate concavity cuts has been

chosen. The question of choice is pertinent as, for

instance, using a linear programming approach,

there are infinitely many objective functions that

can be used in the problem above. With somemethod fixed beforehand, we may assume that

given a vertex that is a radial local minimum, a

concavity cut is well-defined.

In order to overcome the absence of analytical

representation of PMCF, we shall use a special

representation of such polyhedron, based on a

‘‘neighborhood’’ structure and the concept of co-herent flows, as described in the next section. Usingthis description we present a relaxed approach to

Tuy–Zwart�s algorithm.

3. The pairwise multicommodity flow polyhedron

The directed flow polyhedra F rs�! and F r�! are

extensively studied in the literature. We summarizethe main results about them in Lemma 3.1. From

now on, we shall allow ourselves to say the tree(path) f i if the support of the flow f i is a tree (path)

and to denote the cone associated with the poly-

hedron P by CðP Þ.

Lemma 3.1. The following characterizations hold:

V ðF rs�!Þ¼ ff rs 2 F rs�!jf rs is a directed path from r to sg6¼ ;;

V ð F r�!Þ¼ ff r 2 F r�!jf r is a directed tree with root rg6¼ ;;

Cð~FFÞ ¼ CðF rs�!Þ ¼ Cð F r�!Þ¼ fh 2 R2m

þ jh ¼Xki¼1

kihi; kP 0 and hi 2 C0g;

where

C0 ¼ fh 2 R2mþ jh is a directed cycle in Gg:

3.1. Vertices of F and ~FF

For the study of the vertices of the PMCF, we

shall use the concept of a feasible decomposition of

a flow f 2 ~FF with respect to components f r 2 F r�!:

Definition 3.2. The vector ðf 1; . . . ; f nÞ 2Q

r2N F r�!is a feasible decomposition of f 2 ~FF if f ¼

Pr2N f

r.

For the undirected case, ðf 1; . . . ; f nÞ 2Q

r2N F r�! is

a feasible decomposition of f 2F if f ¼PðP

r2N frÞ. Note that f 1; . . . ; f n are directed

flows.

We denote by ~UU � ~FF and U �F the set of

flows with a unique feasible decomposition.

We often abuse notation and refer to the fea-

sible decomposition f ¼P

r2N fr, for both the di-

rected and the undirected case.

The following lemma is a particularization of a

well-known fact about linear transformations of

polyhedra:

Lemma 3.3. Any feasible decomposition of a vertexof ~FF or F is a vector of vertices of F r�!.

This corresponds to the fact that if f ¼P

r2N fr

is a vertex, then for all r, f r is a directed tree with

root r. The converse statement is not true, i.e.,

M. Queiroz, C. Humes Jr. / European Journal of Operational Research 146 (2003) 444–459 449

Page 7: A heuristic for the continuous capacity and flow assignment

there are flows with a feasible decomposition of

trees that are not vertices (see [21]).

We denote by ~TT � ~FF and T �F the flows that

have some feasible decomposition of trees.

It is natural to search for conditions that areeither necessary or sufficient to ensure that a par-

ticular sum of rooted trees f r 2 V ð F r�!Þ is indeed

a vertex of ~FF. The following results show that

f 2 ~FF (or F) is a vertex if and only if f has a

unique feasible decomposition which is formed by

trees, and in the undirected case this amounts to

having a unique feasible decomposition.

Theorem 3.4. V ð~FFÞ ¼ ~TT \ ~UU .

Corollary 3.5. V ðFÞ ¼ T \ U .

Note that uniqueness of decomposition alone is

not sufficient to ensure that f 2 ~FF is a vertex (see

[21]).

Lemma 3.6. U � T .

Theorem 3.7. V ðFÞ ¼ U .

Though V ðFÞ � PðV ð~FFÞÞ obviously holds, the

contrary inclusion does not hold. The proof of the

preceding results can be found in [21].

Theorem 3.7 has a very interesting computa-

tional implication. Though, in general, F has nopolynomially sized analytical description, the

question whether f belongs to V ðFÞ can be

answered in time which is polynomial in the

number of nodes (n).

Corollary 3.8. There exists an algorithm, withrunning time polynomial in n, that decides whetherf 2 V ðFÞ or not.

Proof. Due to Theorem 3.7, f 2 V ðFÞ if and only

if it has a unique feasible decomposition. This is

equivalent to the fact that there is only one solu-tion to the linear system below,

xr 2 F r�!; r 2 N ;

PðxÞ ¼ f ;

whose dimensions are polynomial in n. As a poly-

hedron X � Rp has a unique feasible point if and

only if all the 2p linear programming problems

maxx2X hei; xi and minx2X hei; xi, for i ¼ 1; . . . ; p,have the same solution, the algorithm corresponds

to perform the above test on the polyhedron

defined by the equations above. Since solving a

linear programming problem requires a polyno-

mial number of operations, the overall construc-

tion leads to a polynomial algorithm for verifying

if f 2 V ðFÞ. �

Though polynomially realizable, this verifica-

tion of uniqueness of decomposition is a costly

operation. A very handy and easily verifiable prop-

erty of vertices, that was originally motivated by the

well-known characterization of vertices as unique

minimizers of some linear function, is coherency,

defined below.

Definition 3.9. A flow f 2 ~TT is coherent if it has a

feasible decomposition ðf 1; . . . ; f nÞ such that for

each pair of nodes (i; j), every directed path from ito j in the trees f 1; f 2; . . . ; f n is the same. If, in

addition, every directed path from j to i is the re-

verse path from i to j, f is strongly coherent.Graphically:

r i P1 j �����! �����! � f r

k i P2 j �����! �����! � f k

9>>>=>>>; ) P1 ! P2

ðcoherencyÞ

and

r i P1 j �����! �����! � f r

k j P2 i �����! �����! � f k

9>>>=>>>; ) P1 ! P�1

2

ðstrong coherencyÞ:

Theorem 3.10. If f 2 V ð~FFÞ, then f is coherent.

Proof. By Theorem 3.4, f has a unique decompo-

sition of trees. Suppose, for the sake of con-tradiction, that f is not coherent. Then there must

450 M. Queiroz, C. Humes Jr. / European Journal of Operational Research 146 (2003) 444–459

Page 8: A heuristic for the continuous capacity and flow assignment

be two distinct paths Pij1 and Pij

2 carrying flow

from i to j. Then, for e sufficiently small, g ¼ f �ePij

1 þ ePij2 and h ¼ f þ ePij

1 � ePij2 are distinct

feasible flows such that f ¼ ð1=2Þg þ ð1=2Þh. Thiscontradicts the fact that f is a vertex. �

Theorem 3.11. If f 2 V ðFÞ, then f is strongly co-herent.

Proof. By Corollary 3.5, f has a unique decom-

position of trees, and this decomposition is co-

herent, since the directed flow f 0 associated to f isa vertex of ~FF. If f were not strongly coherent,

there should be two paths Pij and Pji, one not

being the reverse of the other, carrying flow from ito j and from j to i, respectively. In this case, for esufficiently small, g ¼ Pðf 0 � ePij þ eðPjiÞ�1Þ and

h ¼ Pðf 0 þ ePij � eðPjiÞ�1Þ would satisfy f ¼ ð1=2Þgþ ð1=2Þh and g 6¼ h. �

The above necessary conditions are not suffi-

cient, as shown in [21].

We can therefore state the following theorem,

whose proof is now immediate. The symbol ½X � is

used to denote the convex hull of X.

Theorem 3.12. The problem CFA can be restated as

ðCFAÞ min D�ðf Þs:t: f 2 ½CF�

�where CF ¼ ff 2 ~FF jf is strongly coherentg.

Proof. Trivial, since V ðFÞ � CF (Theorem

3.11), CðFÞ ¼ Rnþ (because CðFÞ ¼ PðCð~FFÞÞ ¼

PðRnþÞ ¼ Rn

þ using Lemma 3.1) and D�ð�Þ is strictly

increasing (Lemma 2.2). �

3.2. Computing edges in ~FF

We now turn our attention to the neighborhood

structure in ~FF. Our construction is based pri-

marily on the naive property that, if we start at

a vertex and construct the rays leading to all

the other vertices in the polyhedron, we get a setcontaining the directions of the bounded edges

leaving the original vertex. Clearly the directions

of the unbounded edges are a subset of the extre-

mal rays of Cð~FFÞ. If we use the above construction

even at a point that is not a vertex, we still have a

set of directions whose (shifted) conical hull con-

tains the whole polyhedron.

The above remark is the basis for the fact that,

using the structure of ~FF, we construct a relativelysmall set of directions (leaving a given coherent

flow) whose (shifted) conical hull contains the

whole polyhedron. If the original coherent flow

is a vertex, then this set of rays contains the set of

edges leaving this vertex.

In order to compute rays as above, we use the

concept of flow deviation, which is, roughly

speaking, any difference of the form grs � f rs be-tween two paths grs; f rs 2 V ðF rs�!Þ.

We will show that every flow deviation is a

positive linear combination of elementary flowdeviations:

Definition 3.13. Let f r be a tree and ði; jÞ 2 A be a

directed arc, such that fi; jg 62 f r. Let Prif and Prj

f

be the paths in f r from r to i and from r to j, re-spectively. Assume that Pri

f ;Prjf 2 f0; 1g

2m. We

define the elementary flow deviation in f r with re-spect to e ¼ ði; jÞ the vector

Def r ¼ ee þPri

f �Prjf ;

where ee is the ði; jÞth element of the canonical

basis of R2m.

A result we shall need says roughly that a

conical approximation of ~FF at a coherent flow fcan be generated from the trees f 1; . . . ; f n, which

form a feasible decomposition of f. It depends on

the following lemma:

Lemma 3.14. Let f rs; grs 2 V ðF rs�!Þ. If De ¼ eeþPri

f �Prjf ; where e ¼ ði; jÞ are the directed arcs in

Prsg , then the following expression telescopes to

grs � f rs ¼Xe2Prs

g

qrjDe:

For an arc e ¼ fi; jg such that ði; jÞ; ðj; iÞ 62 f r,

the vector De corresponds to the elementary flowdeviation in f r with respect to ði; jÞ. If ði; jÞ belongsto f r, then De ¼ 0. And if ðj; iÞ belongs to f r, then De

is an extremal ray of the cone Cð~FFÞ.

M. Queiroz, C. Humes Jr. / European Journal of Operational Research 146 (2003) 444–459 451

Page 9: A heuristic for the continuous capacity and flow assignment

The precise relationship between elementary

flow deviations and conical approximations is:

Theorem 3.15. Let f 2 ~FF, such that f r 2 V ð F r�!Þ8r 2 N , and let fDkgLk¼1 be all the elementary flowdeviations obtained by the inclusion of some arcði; jÞ in any of the trees f r; let fhjgmj¼1 be the ex-tremal rays of Cð~FFÞ. Then the set

D ¼ fDkgLk¼1 [ fhjgmj¼1

is a conical approximation of the polyhedron ~FF at f;i.e., for every x 2 ~FF, there exist hP 0 and gP 0

such that

x ¼ f þXLk¼1

hkDk þ

Xmj¼1

gjhj:

It is clear that, given a vertex f 2 V ð~FFÞ and a

set D defining a conical approximation of ~FF at f,we can test if a ray r 2 D is an edge leaving f, by

verifying that d cannot be written as a positivelinear combination of other rays in D. Using this

test repeatedly, we can construct the set of edges

leaving a given vertex f 2 V ð~FFÞ. An immediate

interesting property of the last corollary is that

every edge in the polyhedron ~FF is of the form

½0 � � � þ D � � � � D � � � 0�t

or

½0 � � � 0 1 0 � � � 0�t:This reduced set of positively linearly indepen-

dent rays shall be referred to as the reduced conicalapproximation of ~FF at f. The question of whether

this elimination procedure is computationally

worthwhile is pertinent, and will be addressed in

the next section.The number of elementary flow deviations gen-

erated from coherent flows by the above con-

struction can be further reduced by restricting our

search only to those elementary deviations, whose

roots coincide with the roots of the trees they are

based on.

The basis for this simplification is outlined as

follows. Let D be an elementary flow deviationgenerated by the inclusion of the arc ði; jÞ in the

tree f r. If rD is the root of the cycle associated with

D, then the same cycle will be generated in the tree

f rD by the inclusion of the same arc ði; jÞ, by co-

herency.

4. A heuristic based on Tuy–Zwart

The main idea of Tuy–Zwart is based on in-

troducing concavity cuts at vertices which are ra-

dial local minima. To compute such a cut we use

the conical approximation of ~FF at the corre-

sponding vertex, as well as information about the

objective function.

The bases of the heuristic we are going to pre-sent in this section are the facts that D�ð�Þ attains

a global optimum at some vertex (because it is

strictly quasiconcave), that every vertex of ~FF is a

coherent flow (Theorem 3.10), and that we know

how to generate conical approximations of ~FF at

such flows. This lead us to consider ‘‘coherent

flow’’-oriented methods.

Since the heuristic focus on coherent flows, andthe concavity cuts are defined only at vertices

which are radial local minima, we need a sufficient

condition for a coherent flow to be both a vertex

and a radial local minimum. Given a coherent flow

f and the directions d1; . . . ; dp of the conical ap-

proximation of ~FF at f, we say that f is a radiallocal minimum if there is no feasible point g with

g ¼ f þ hdk such that D�ðgÞ < D�ðf Þ. In order touse the ideas of the Tuy–Zwart algorithm, we de-

fine the neighbors of a coherent flow as in Section

2.2. Moreover, we have to consider the question of

definition of concavity cuts. The following lemma

tells us that whenever a coherent flow is a radial

local minimum, then it is a vertex, and therefore a

concavity cut for it is well-defined.

Proposition 4.1. If f 2 ~TT is a radial local minimum,

then f 2 V ð~FFÞ.

Proof. Let the conical approximation of PMCF at

f be given by the directions fdkgpk¼1. Suppose, for

the sake of contradiction, that f 62 V ð~FFÞ. Then it

would be possible to find some h P 0, such that

h 6¼ 0,Pp

k¼1 hkdk ¼ 0 and f þ hkdk 2 ~FF. Since f isa radial local minimum,

D�ðf Þ6 minfD�ðf þ hkdkÞ jk ¼ 1; . . . ; pg:

452 M. Queiroz, C. Humes Jr. / European Journal of Operational Research 146 (2003) 444–459

Page 10: A heuristic for the continuous capacity and flow assignment

On the other hand, sincePp

k¼1 hkdk ¼ 0; with hP 0

and h 6¼ 0, and also D�ð�Þ is strictly quasiconcave,

we have that

D�ðf Þ > minfD�ðf þ hkdkÞ jk ¼ 1; . . . ; pg;

which concludes the proof. �

We now present the heuristic for the computa-

tion of a global minimum for the CFA:

Heuristic 4.2. Let e > 0.

1. Find an initial coherent flow f 0. Let

Optimal Value D�ðf 0Þ,Optimum f 0,

Constraints ; and

i 0.

2. Find a radial local minimum z starting at f i.

If this is not possible, stop! Otherwise, thisradial local minimum is a vertex.

If D�ðzÞ <Optimal Value, update Opti-

mal Value and Optimum.

3. Compute the concavity cut generated by z. Let

ha; xiP b be this cut.

4. Maximize the function ha; xi.5. If the optimal solution x� of step 4 has value

ha; x�i > bþ e, then letConstraints Constraints

[fha; xiP bg,f iþ1 x�,i iþ 1,

and go back to step 2. Otherwise, stop!

For the initialization (step 1), we may choose as

the initial coherent flow the one associated withany spanning tree of the graph G. This is clearly a

vertex of PMCF.

The unidimensional search (used in step 3) to

determine the neighbors for the computation of

the concavity cut would normally use information

about the directional derivatives of D�ð�Þ, but since

the supergradients of D�ð�Þ are ill-behaved on the

border of Rmþ, it is better to use the well-known

binary search, or the method of false position. We

implemented a mix of such procedures.

If dk is a ray of the cone CðFÞ, then the func-

tion D�ð�Þ strictly increases along this ray, and no

further computations are needed. Since the rays of

the cone CðFÞ are the vectors of the canonical

basis of Rm (Lemma 3.1), the corresponding coef-

ficients in the concavity cut may be set to zero.

In the basic step of the algorithm (step 2), as well

as in the linear problem in step 4, we use a simplex-

like enumeration of the coherent flows. This is doneby computing a new coherent flow using an ele-

mentary flow deviation from the current coherent

flow. We try to update each tree f r in the feasible

decomposition of f using the same elementary de-

viation. There are three cases to consider.

First case. Suppose dk is the direction of an el-

ementary flow deviation D corresponding to the

inclusion of the arc ði; jÞ in the tree f r. Then up-dating the tree f r, as well as the trees f s possessing

this same elementary flow deviation D, is trivial.

Second case. It may happen, however, that the

direction dk is feasible for some tree f s, for which

D is not an elementary flow deviation. This is the

case where D ¼ ee þP1 �P2 and f sP2 > 0. In this

case, we will describe a mainly topological proce-

dure to update f s using D. We first identify the lastarc in the negative side of the elementary flow

deviation, starting at the root of the cycle. We then

remove this arc, include the new arc ði; jÞ, and

revert the last arcs in the positive side, starting

with the arc next to the included arc.

Now we redirect the flows from s to every other

node within the arcs of the new tree f s. Dependingon the representation of the flows, the actual shift

produced will not coincide with dk. If the variables

f sij and f s

ji are considered independently, then the

actual shift will depend on the arc being eliminated.

In the last example, the flow in the arc frD; kg will

change by �qrk � qrj � qrl, while the flow in the arc

fk; jg will change by �qrj � qrl þ qrk. If the vari-

ables f sij and f s

ji were the same, the signal indicatingdirection, then this case would need not to be

treated separately. The procedure described above

is a classical procedure in optimization on graphs,

M. Queiroz, C. Humes Jr. / European Journal of Operational Research 146 (2003) 444–459 453

Page 11: A heuristic for the continuous capacity and flow assignment

and its details can be found, for example, in

Chv�aatal [6].

Third case. The flow deviation is infeasible for

some tree f s, and nothing needs to be done.

In any case, we need to verify whether the up-dated flow still satisfies all the constraints of pre-

vious concavity cuts; if not, dk will not be used as

a feasible direction. Nevertheless, to declare a flow

a radial local minimum, even the neighbors which

are now infeasible must be checked.

We cannot assure, however, that the updated

flow is a coherent one. The only property we can

assure is that the ff rgnr¼1 are still trees, and there-fore we can still compute neighbors. Moreover, we

still have the property that if f is a radial local

minimum, then f is a vertex, even if some non-

coherent flows were found along the way.

In our computational tests, we never met the

case where any updated flow was not coherent. We

verified empirically that, starting at a coherent

flow, considering only those elementary flow devi-ations that could not be written as positive linear

combinations of other elementary flow deviations,

the updated flow was always a coherent one. Non-

coherent flows could only be found using interior

elementary flow deviations, i.e., positive linear

combinations of other elementary flow deviations.

Unfortunately, we were not able to present theo-

retical arguments to prove the validity of this prop-erty observed in our computational experience.

The question of whether we use in steps 2 and 4

of the heuristic the complete set of elementary

deviations as the conical approximation of ~FF at f,or whether we use the reduced conical approxi-

mation of ~FF at f, raises the possibility of two flow

search strategies.

On the one hand, by adopting the reducedconical approximation we increase the chance

(based on empiric evidence) of only enumerating

coherent flows in a simplex-like manner, thus re-

ducing the set of flows visited; the trade-off is the

high cost of solving a very large number of LPs at

each step.

On the other hand, using the entire conical ap-

proximation increases the chance of finding betterflows with respect to D�ð�Þ (step 2) or ha; �i (step 4),

while sparing the time to solve all the LPs. Even

though these flows might not be neighbors, or even

coherent, they still profit from the characterization

given by Proposition 4.1, and so the main proper-

ties of the algorithm are not impaired. Besides, this

choice decreases the chance that the heuristic will

be prematurely unable to find a radial local mini-mum in step 2, due to ‘‘isolation’’, i.e., the case when

the current coherent flow has better neighbors, but

they are infeasible with respect to previously in-

troduced concavity cuts. With the possibility of

using interior elementary deviations, the algorithm

might jump in one step to a better distant flow.

It is important to note that the only reason why

this heuristic might not solve the global optimi-zation problem is the termination criterium in step

2. The Tuy–Zwart algorithm would go on adding

concavity cuts until the whole polyhedron were cut.

An advantageous property of this heuristic over

the Tuy–Zwart algorithm is the fact that it does

not introduce new vertices in the polyhedron, and

so is immune from numerical instability of ill-

behaved cuts.It should be noticed that the radial local mini-

mum search in step 2 using the complete set of flow

deviations (second flow search strategy) can be

seen as a generalization of the Projection–Feasible

Directions method of [14] in that the flow devia-

tions are the same, and the termination criterium

here (radial local optimality) is stronger than the

local optimality criterium of [14], the former beingharder to achieve than the latter.

5. A general framework for the Heuristic

Although we consider fundamental to link our

theoretical development to the practical prob-

lem that motivated it, we cannot abstain to note

that the results are applicable in a more general

framework. From the preceding sections, we see

that the presented heuristic applies to the follow-

ing general problem:

ðGPÞ min f ðxÞs:t: x 2 P � Rm;

�where

• f ð�Þ is concave and strictly quasiconcave;

• P is a polyhedron known only through a repre-

sentation ðS;CðP Þ; rÞ, where S is a finite subset

454 M. Queiroz, C. Humes Jr. / European Journal of Operational Research 146 (2003) 444–459

Page 12: A heuristic for the continuous capacity and flow assignment

of P such that V ðPÞ � S, and CðP Þ is the

(known) cone associated with P, such that P!½S�þ CðPÞ;

• r : S ! 2Rmassigns to each s 2 S a finite set rðsÞ

of directions giving a conical approximation of

P at s, such that if d 2 rðsÞ, either d 2 CðP Þ or dpoints towards another element of S. It follows

that, if s 2 V ðP Þ, then the set of edges leaving sis the maximal positively linear independent set

contained in rðsÞ;• in each direction d 2 CðPÞ, the function f ð�Þ is

strictly increasing, which implies the existenceof a solution to the problem (GP).

We present this elementary consideration as

there are other problems fitting this framework.

Concavity in the objective function is found

whenever there are economies of scale, and strictly

quasiconcavity is a technical requirement imme-

diately satisfied if the function is strictly concave.Situations where the knowledge of the feasible

region is as above include problems with sum of

polyhedra, i.e., problems with multiple sets of

variables that are added. In general, this occurs

when P ¼LðP 0Þ where L is a linear transforma-

tion and P 0 is a higher-dimensional polyhedron,

what is usual in the context of projection, in the

sense of Geoffrion [10]. These are cases where thefunction rð�Þ can be easily constructed. The effi-

cient computation of rð�Þ is highly dependent on

the structure of the problem.

6. Tuy–Zwarts algorithm applied toQ

r‰N Fr�!We remember that the algorithm of Tuy–Zwart

demanded the knowledge of a Ax6 b representa-

tion for the polyhedron. We know that this rep-

resentation is not reasonable for the polyhedron

PMCF (see [21]). But, we could apply the original

algorithm to the cartesian product of the poly-

hedra F r�!, given by

Jf 1 ¼ b1

Jf 2 ¼ b2

. .. ..

. ...

Jf n ¼ bn

ðf 1; f 2; . . . ; f nÞt P 0;

8>>>>><>>>>>:

where J is the incidence matrix for all the poly-

hedra F r�!. This product-polyhedron can be made

bounded by the introduction of the following in-

equality, clearly satisfied by all vertices:Xr2N

Xe2A

f re 6 nm

Xs 6¼r

qrs:

We implemented such an algorithm in order to

compare it to the heuristic, their performance in

terms of time and numerical stability and, finally,

the possibility of obtaining the optimal solutions.

Though apparently interesting, the use of

Dantzig–Wolfe decomposition is not encouragedfor two main reasons. First, the fact that the

function D�ð�Þ is not linear prohibits the applica-

tion of D–W to the overall problem. Second, the

linear subproblem in Tuy–Zwart�s algorithm would

require the use of a D–W polyhedron, whose geo-

metry is not directly related to the geometry of the

product-polyhedron; this would create a constant

shift from one polyhedron to the other, since theD–W polyhedron has a myriad of columns which

could not be computed by the main step of Tuy–

Zwart�s algorithm.

Our implementation of the Tuy–Zwart�s algo-

rithm to the CFA, using this product polyhedron,

has had a poor performance, terminating execu-

tion because of numerical instability, before find-

ing the global optimum. We refer to Zwart�s notein his paper [23], about the poor performance of

this version of the algorithm, compared to the

original algorithm which had a far larger number

of subproblems at each step.

7. Computational tests

The heuristic described in Section 4 has been

applied to six backbone networks described in the

literature, ordered by increasing size. The first one,

a Brazilian network called LARC, is stated in [4].

The Australian network AUSTPAC appeared

in [19], and the American networks ARPANET,

OCT network, USA network and RING network

were stated in [9]. The sizes of these networks areas follows in Table 1.

An equal demand of 1 KB/second was assumed

between every pair of nodes, the maximum

M. Queiroz, C. Humes Jr. / European Journal of Operational Research 146 (2003) 444–459 455

Page 13: A heuristic for the continuous capacity and flow assignment

average delay allowed was TMAX ¼ 0:5, and the

exponent of the power law costs was set to a ¼ 0:5.

The performance measures were taken from a

Pentium III – 866 MHz running Linux 2.4.3.

In order to compare the quality of the solutions

of our proposed method with a good local op-timization method, we implemented the Flow

Deviation (FD) method of [8], using outer linea-

rizations for the capacity assignment phase, as in

[14], and the Floyd–Warshall algorithm for the

traffic assignment phase, which can be found in [3],

for instance.

Since the function D�ð�Þ is concave, a very large

number of the vertices of the PMCF are localminima (in the usual sense), and the FD method

stops at the first local minimum it encounters.

Following the advise of the authors, we launched

the FD method from several starting points. In the

following tests, 50 initial points were randomly

generated for each problem, for the initialization

of the FD method, leading to 50 local minima, not

necessarily distinct. This choice led to a compa-rable number of flows visited by the FD method

and our heuristic.

In order to compare this randomized local

search with the radial local minimum search car-

ried by the first step of the heuristic, this first step

alone was applied to the same tests, and the results

are shown in Table 2 under the header ‘‘First

RLM’’ (first radial local minimum).In all the tests we made, the second flow search

strategy (considering all elementary flow devia-

tions) has taken less time and has found better

solutions than the first strategy (considering only

extremal rays of the conical approximation), in-

dicating that the search considering ‘‘non-neigh-

bors’’ is advantageous. Further evidence is given

by the fact that in four out of six cases, this search

Table 1

Sizes of the test problems

Problem No. of arcs (dimension) No. of nodes

LARC 11 9

AUSTPAC 26 18

ARPANET 26 21

OCT 29 26

USA 39 26

RING 60 32

Tab

le2

Co

mp

uta

tio

nal

test

s

Pro

ble

mF

low

dev

iati

on

Fir

stR

LM

Heu

rist

icIm

pro

vem

ent

(%)

No

.o

f

flo

ws

vis

ited

No

.o

f

loca

l

min

ima

Tim

e

(sec

on

ds)

Bes

t

D� ðfÞ

valu

e

No

.o

f

flo

ws

vis

ited

Tim

e

(sec

on

ds)

Bes

t

D� ðfÞ

valu

e

No

.o

f

flo

ws

vis

ited

No

.o

f

loca

l

min

ima

Tim

e

(sec

on

ds)

Bes

t

D� ðfÞ

valu

e

LA

RC

71

50

0.0

224.2

73

0.0

122.7

115

50.0

422.7

16.4

5

AU

ST

PA

C54

50

0.0

6145.5

312

0.2

8130.1

021

30.8

7130.1

010.6

0

AR

PA

NE

T55

50

0.0

9102.4

051

0.4

890.5

060

20.8

487.2

614.7

9

OC

T81

50

0.1

8141.3

890

1.4

0136.7

790

11.4

1136.7

73.2

6

US

A50

50

0.1

3129.9

540

1.8

4109.3

054

34.8

7108.5

216.4

9

RIN

G50

50

0.2

2167.2

232

12.8

7125.3

461

340.4

9125.3

425.0

4

456 M. Queiroz, C. Humes Jr. / European Journal of Operational Research 146 (2003) 444–459

Page 14: A heuristic for the continuous capacity and flow assignment

lead to the final solution in the first step. This was

the default option in our implementation.

It is observed that the radial local search alone

was actually better than the FD method for these

tests. In fact, the average number of flows in-spected by the FD method until it finds a local

minimum can be obtained from columns 2 and 3,

and ranges from 1 to 1.6, showing that the pres-

ence of local minima is rather commonplace.

The time needed to solve these problems with a

global optimization approach is sensibly larger

than the time for the FD method (which was re-

ported for all 50 runs together). The running timeof the heuristic is nevertheless not prohibitive,

considering that these are real size examples. On

the other hand, the rates of cost improvement (last

column) are also expressive, ranging from 3% to

25%.

We note that since our method is a heuristic, itwould also benefit from being launched from multi-ple starting points. Nevertheless our point here wasshowing that a deterministic method for generat-

ing local minima, profiting from the structure of

the problem, would be better than the usual ad-

aptation of local methods to nonconvex problems,

by randomly generating local minima without

enough care for the structure of the problem.

8. Further research

One possible line of inquiry is about the per-

formance of the heuristic version of the original

Zwart algorithm for the CFA. The description

of this heuristic follows closely the one in [23],

though always visiting coherent flows, or flows

of the form f ¼P

r2N fr, with f r 2 V ð F r�!Þ, as ex-

plained in Section 4. Tracking of the subproblems

can be be kept by maintaining separate lists of the

concavity cuts introduced, one list for each sub-

problem; all subproblems share the same infor-

mation about the original polyhedron, so there is

little replicated information. This heuristic should

have a better behavior with respect to isolation,

since the only ultimate isolated state in this casecorresponds to all subproblems becoming isolated;

the computation will go on whenever at least one

of the subproblems is still able to proceed.

Another interesting research topic is the incor-

poration of meta-heuristics (simulated annealing,

tabu search and genetic algorithms) in the present

heuristic, in order to avoid isolation.

Besides that, other research problems raised bythe previous topics are:

• How to avoid isolation in step 2 of the heuristic?

• Does the update of a vertex in the direction

of an edge always produce a coherent flow?

(always produce a vertex?)

• Does the original Zwart algorithm (with multi-

ple subproblems) have a better behavior withthe polyhedron

Qr2N F r�!?

• The Falk–Hoffman algorithm (described in

[7]) is a facet-generation technique. Would it

be possible to use a partial representation of

PMCF (as in 4.2) to obtain a Falk–Hoffman

based heuristic? How would it perform?

Finally, we would like to thank the referees forinvaluable suggestions and corrections, which had

a major impact in the applicability of the results

and the relevance of the computational tests.

Appendix A. Proof of Lemma 2.4

The strict quasiconcavity of D�ð�Þ is establishedfor the general case of separable costs. We shall

break the proof of this fact in two lemmas. For the

particular case of power law costs, only Lemma

2.3 and Lemma A.1 would suffice.

Lemma A.1. If Dð�Þ is affine then D�ð�Þ is strictlyquasiconcave.

Proof. As we supposed that Dð�Þ is affine, we have

(see [16]) an analytical expression for D�ð�Þ,namely,

D�ðf Þ ¼Xe2A

lefe þðP

e2Affiffiffiffiffiffiffiffilefep

Þ2

q̂qTMAX

:

Let f 1; f 2 2 Rmþ, f 1 6¼ f 2. For each k 2 ð0; 1Þ, we

have Iðkf 1 þ ð1� kÞf 2Þ ¼ Iðf 1Þ [ Iðf 2Þ. Let p ¼#Iðf 1Þ [ Iðf 2Þ and d ¼ f 2 � f 1 6¼ 0. We will show

that D�ð�Þ is strictly quasiconcave on the open line

segment

M. Queiroz, C. Humes Jr. / European Journal of Operational Research 146 (2003) 444–459 457

Page 15: A heuristic for the continuous capacity and flow assignment

F 0 ¼ ff 2 Rmþ jf ¼ kf 1 þ ð1� kÞf 2 for some k 2 ð0; 1Þg;

using the Hessian of D�ð�Þ restricted to F 0.This Hessian is a positive multiple of the fol-

lowing matrix Hðf Þ ¼ ðhijðf ÞÞ:

hijðf Þ ¼�P

k 6¼i

ffiffiffiffiffiffiffiffiffilkfkðlifiÞ3

q; if i ¼ j;

1ffiffiffiffiffiffiffiffiffiffilifiljfjp ; if i 6¼ j

8<:

and

d tHðf Þd ¼Xpi¼1

Xj 6¼i�d2

i

ffiffiffiffiffiffiffiffiffiffiffiffiljfjðlifiÞ3

sþXpi¼1

Xj6¼i

didj

ffiffiffiffiffiffiffiffiffiffiffiffiffi1

lifiljfj

s

¼Xpi¼1

Xj>i

� d2

i

ffiffiffiffiffiffiffiffiffiffiffiffiljfjðlifiÞ3

sþ 2didj

ffiffiffiffiffiffiffiffiffiffiffiffiffi1

lifiljfj

s

� d2j

ffiffiffiffiffiffiffiffiffiffiffiffiljfjðlifiÞ3

s !

¼Xpi¼1

Xj>i

� di

�� ljfj

lifidj

�2ffiffiffiffiffiffiffiffiffiffiffiffiljfjðlifiÞ3

s

6 0:

If d tHðf Þd ¼ 0, then ðdi � ðljfj=lifiÞdjÞ ¼ 0 8i ¼1; . . . ; p 8j > i: This implies that either d 6 0 andd 6¼ 0 (i.e., f 2

6 f 1 and f 2 6¼ f 1) or else d P 0 and

d 6¼ 0 (i.e., f 2 P f 1 and f 2 6¼ f 1). As D�ð�Þ is con-

cave and strictly increasing, we have that 8k 2ð0; 1Þ,D�ðkf 1 þ ð1� kÞf 2Þ

P kD�ðf 1Þ þ ð1� kÞD�ðf 2Þ> k minfD�ðf 1Þ;D�ðf 2Þgþ ð1� kÞminfD�ðf 1Þ;D�ðf 2Þg¼ minfD�ðf 1Þ;D�ðf 2Þg:

If d tHd < 0, we have that D�ð�Þ restricted to the

open segment F 0 is strictly concave in f (see [18]).

Therefore there exists an e > 0 such that ðf � ed;f þ edÞ 2 F 0 � F 0 and

D�ðf Þ > 12D�ðf � edÞ þ 1

2D�ðf þ edÞ:

Besides, because D�ð�Þ is concave, it is also quasi-

concave, and therefore

D�ðf � edÞP minfD�ðf 1Þ;D�ðf 2Þgand

D�ðf þ edÞP minfD�ðf 1Þ;D�ðf 2Þgand from the three last inequalities it follows that

D�ðf Þ > minfD�ðf 1Þ;D�ðf 2Þg;and this finishes the proof. �

Lemma A.2. D�ð�Þ is strictly quasiconcave.

Proof. Let f 1; f 2 2 ~FF and k 2 ð0; 1Þ. Let f k ¼ kf 1þð1� kÞf 2. We linearize Dð�Þ at a point c�ðf kÞ 2argminfDðcÞ jc 2 Cf kg. This is possible as we can

constrain ourselves to the channels with f ki > 0 (and

so c�i ðf kÞ > 0), since f ki ¼ 0 implies f 1

i ¼ f 2i ¼ 0.

Let DLð�Þ be the linearized cost function at

c�ðf kÞ, and D�Lðf Þ ¼ min DLðcÞ jc 2 Cf

� �.

For every c 2 Cf k , we have that DðcÞPDðc�ðf kÞÞ by definition. Since Dð�Þ is concave, the

linearized function satisfies DLðcÞPDðcÞ 8c 2 Cf k .

Then we get

DLðcÞPDðcÞPDðc�ðf kÞÞ ¼ DLðc�ðf kÞÞ;and therefore c�ðf kÞ 2 argminfDLðcÞ jc 2 Cf kg; this

implies that D�ðf kÞ ¼ D�Lðf kÞ. Now, by the fact

that D�Lð�Þ is strictly quasiconcave (for DLð�Þ is lin-

ear) we have

D�ðf kÞ ¼ D�Lðf kÞ

> minfD�Lðf 1Þ;D�Lðf 2Þg

P minfD�ðf 1Þ; d�ðf 2Þg

and therefore D�ð�Þ is strictly quasiconcave. �

References

[1] R.K. Ahuja, T.L. Magnanti, J.B. Orlin, Network Flows:

Theory, Algoriths and Applications, Prentice-Hall, Engle-

wood Cliffs, NJ, 1993.

[2] G.J. Bell, B.W. Lamar, Solution methods for nonconvex

network flow problems, Network Optimization (1996) 32–

50.

[3] D.P. Bertsekas, Linear Network Optimization: Algorithms

and Codes, MIT Press, Cambridge, MA, 1991.

[4] J.R.M. Bezerra, On computer network optimization prob-

lems (in Portuguese), MS Thesis, University of S~aao Paulo,

Brazil, 1984.

[5] D.G. Cantor, M. Gerla, Optimal routing in a packet-

switched computer network, IEEE Transactions on Com-

puters 23 (10) (1974) 1062–1069.

458 M. Queiroz, C. Humes Jr. / European Journal of Operational Research 146 (2003) 444–459

Page 16: A heuristic for the continuous capacity and flow assignment

[6] V. Chv�aatal, Linear Programming, W.H. Freeman, New

York, 1983.

[7] J.E. Falk, K.R. Hoffman, A successive underestimation

method for concave minimization problems, Mathematics

of Operations Research 1 (3) (1976) 251–259.

[8] L. Fratta, M. Gerla, L. Kleinrock, The flow deviation

method: An approach to store-and-forward communica-

tion network design, Network 3 (2) (1973) 97–133.

[9] B. Gavish, I. Neuman, A system for routing and capacity

assignment in computer communication networks, IEEE

Transactions on Communications 37 (4) (1989) 360–366.

[10] A.M. Geoffrion, Elements of large-scale mathematical pro-

gramming, Management Science 16 (11) (1970) 652–691.

[11] M. Gerla, The design of store-and-forward networks for

computer communications, Ph.D. Dissertation, School of

Engineering and Applied Science, University of California,

Los Angeles, 1973.

[12] M. Gerla, L. Kleinrock, On the topological design of

distributed computer networks, IEEE Transactions on

Communications 25 (1) (1977) 48–60.

[13] J.-L. Goffin, J. Gondzio, R. Sarkissian, J.-P. Vial, Solving

nonlinear multicommodity flow problems by the analytic

center cutting plane method, Mathematical Programming

76 (1996) 131–154.

[14] C. Humes Jr., A projection-feasible directions method for

the continuous capacity and flow assignment, Computa-

tional and Applied Mathematics 11 (2) (1992).

[15] M. Iri, On an extension of the maximum-flow minimum-

cut theorem to multicommodity flows, Journal of the

Operations Research Society of Japan 13 (3) (1971) 129–

135.

[16] L. Kleinrock, Queuing Systems, Vols. I & II, Wiley, New

York, 1975–1976.

[17] J.G. Lin, Maximal vectors and multiobjective optimiza-

tion, Journal of Optimization Theory and Applications 18

(1) (1976) 41–64.

[18] O.L. Mangasarian, Nonlinear Programming, McGraw-

Hill, New York, 1969.

[19] T.M.G. Ng, D.B. Hoang, Joint optimization of capacity

and flow assignment in a packet-switched communications

network, IEEE Transactions on Communications 35 (2)

(1987) 202–209.

[20] K. Onaga, O. Kakusho, On feasibility conditions of

multicommodity flows in networks, IEEE Transactions

on Circuit Theory 18 (4) (1971) 425–429.

[21] M. Queiroz, C. Humes Jr., The projected pairwise multi-

commodity flow polyhedron, Applied Mathematics Letters

14 (4) (2001) 443–448.

[22] H. Tuy, Concave programming under linear con-

straints, Soviet Mathematics Doklady 5 (1964) 1437–

1440.

[23] P.B. Zwart, Global maximization of a convex function

with linear inequality constraints, Operations Research 22

(1974) 602–609.

M. Queiroz, C. Humes Jr. / European Journal of Operational Research 146 (2003) 444–459 459