7
On a class of branching problems in broadcasting and distribution Edward C. Rosenthal a,1 , Sohail S. Chaudhry b,2,n , In-Chan Choi c,3,4 , Jinbong Jang c,5 a Department of Marketing and Supply Chain Management, Fox School of Business, Temple University, Philadelphia, PA 19122, USA b Department of Management and Operations/International Business, Villanova School of Business, Villanova University, Villanova, PA 19085, USA c Department of Industrial Management Engineering, Korea University, 1, 5Ka Anamdong, Seongbookku, Seoul 136, Republic of Korea article info Available online 14 June 2011 Keywords: Distribution Logistics Network flows Graph theory abstract We introduce the following network optimization problem: given a directed graph with a cost function on the arcs, demands at the nodes, and a single source s, find the minimum cost connected subgraph from s such that its total demand is no less than lower bound D. We describe applications of this problem to disaster relief and media broadcasting, and show that it generalizes several well-known models including the knapsack problem, the partially ordered knapsack problem, the minimum branching problem, and certain scheduling problems. We prove that our problem is strongly NP-complete and give an integer programming formulation. We also provide five heuristic approaches, illustrate them with a numerical example, and provide a computational study on both small and large sized, randomly generated problems. The heuristics run efficiently on the tested problems and provide solutions that, on average, are fairly close to optimal. & 2011 Elsevier Ltd. All rights reserved. 1. Introduction The class of branching problems in broadcasting and distribution (BBD) that we introduce in this paper represents a large class of combinatorial and network optimization models. This class is defined as follows: given is a finite directed graph with a single source s, costs on the arcs, demands at the nodes, and a lower bound D40 on total demand; one wants to find the minimum cost connected subgraph rooted at s such that its total demand is at least D. Theoretically, BBD generalizes several known discrete optimi- zation problems, including the knapsack problem, Edmonds’ minimum branching problem, the partially ordered knapsack problem, and certain scheduling problems. BBD has broad prac- tical application as well. We show how BBD models disaster relief efforts such as food or medicine distribution. In addition, we describe a ‘‘broadcasting’’ application which shares the same properties as the distribution problems, which, loosely speaking, are to maximize distribution effect at minimum cost. The remainder of this paper is organized as follows. In the next section, we will formally state BBD, describe its applications, review related literature, and detail how the various discrete optimization problems mentioned above are special cases. We then show that BBD is strongly NP-complete. The following section presents an integer programming formulation for BBD. Then, we outline five heuristic approaches to the problem and provide an illustrative example. This is followed by our computa- tional experience of the heuristics on randomly generated pro- blems of varying sizes. Finally, we suggest extensions of BBD and summarize our conclusions. 2. Formulation and applications We define BBD as follows. Let N be the finite node set and A the arc set of a directed graph G ¼ (N,A) with no loops or parallel arcs. Let sAN be a distinguished node called the source. Define a cost function c:A-R þ on the arcs, and a demand function d: N\{s}-R þ at the nodes. Define a feasible solution to be a subgraph G 0 of G such that every node in G 0 lies on a directed path whose initial node is s, and whose total node demand is at least D 40. Note that all feasible solutions contain s, are connected subgraphs of G, but are not necessarily spanning. In problem BBD, we aim to find a feasible solution G n of minimum total arc cost, provided a feasible solution exists. (G n is an optimal solution.) An arborescence is a directed tree with a single node called the root, which has no arcs directed toward it, and all arcs on any path directed away from it. Since G is not capacitated, Lemma 1 follows. Lemma 1. There exists an optimal solution G n that is an arbores- cence rooted at s. Contents lists available at ScienceDirect journal homepage: www.elsevier.com/locate/caor Computers & Operations Research 0305-0548/$ - see front matter & 2011 Elsevier Ltd. All rights reserved. doi:10.1016/j.cor.2011.06.001 n Corresponding author. Tel.: þ1 610 519 4369. E-mail addresses: [email protected] (E.C. Rosenthal), [email protected] (S.S. Chaudhry), [email protected] (I.-C. Choi), [email protected] (J. Jang). 1 Tel. þ1 215 204 8177. 2 This research was partially supported by Villanova School of Business Summer Research Grant. 3 Tel. þ822 02 3290 3388. 4 This research was partially supported by Korea University Grant. 5 Tel. þ822 02 3290 3773. Computers & Operations Research 39 (2012) 1793–1799

On a class of branching problems in broadcasting and distribution

Embed Size (px)

Citation preview

Page 1: On a class of branching problems in broadcasting and distribution

Computers & Operations Research 39 (2012) 1793–1799

Contents lists available at ScienceDirect

Computers & Operations Research

0305-05

doi:10.1

n Corr

E-m

sohail.c

jinbong1 Te2 Th

Summe3 Te4 Th5 Te

journal homepage: www.elsevier.com/locate/caor

On a class of branching problems in broadcasting and distribution

Edward C. Rosenthal a,1, Sohail S. Chaudhry b,2,n, In-Chan Choi c,3,4, Jinbong Jang c,5

a Department of Marketing and Supply Chain Management, Fox School of Business, Temple University, Philadelphia, PA 19122, USAb Department of Management and Operations/International Business, Villanova School of Business, Villanova University, Villanova, PA 19085, USAc Department of Industrial Management Engineering, Korea University, 1, 5Ka Anamdong, Seongbookku, Seoul 136, Republic of Korea

a r t i c l e i n f o

Available online 14 June 2011

Keywords:

Distribution

Logistics

Network flows

Graph theory

48/$ - see front matter & 2011 Elsevier Ltd. A

016/j.cor.2011.06.001

esponding author. Tel.: þ1 610 519 4369.

ail addresses: [email protected] (

[email protected] (S.S. Chaudhry), ichoi

[email protected] (J. Jang).

l. þ1 215 204 8177.

is research was partially supported by V

r Research Grant.

l. þ822 02 3290 3388.

is research was partially supported by Korea

l. þ822 02 3290 3773.

a b s t r a c t

We introduce the following network optimization problem: given a directed graph with a cost function

on the arcs, demands at the nodes, and a single source s, find the minimum cost connected subgraph

from s such that its total demand is no less than lower bound D. We describe applications of this

problem to disaster relief and media broadcasting, and show that it generalizes several well-known

models including the knapsack problem, the partially ordered knapsack problem, the minimum

branching problem, and certain scheduling problems. We prove that our problem is strongly

NP-complete and give an integer programming formulation. We also provide five heuristic approaches,

illustrate them with a numerical example, and provide a computational study on both small and large

sized, randomly generated problems. The heuristics run efficiently on the tested problems and provide

solutions that, on average, are fairly close to optimal.

& 2011 Elsevier Ltd. All rights reserved.

1. Introduction

The class of branching problems in broadcasting and distribution(BBD) that we introduce in this paper represents a large class ofcombinatorial and network optimization models. This class is definedas follows: given is a finite directed graph with a single source s, costson the arcs, demands at the nodes, and a lower bound D40 on totaldemand; one wants to find the minimum cost connected subgraphrooted at s such that its total demand is at least D.

Theoretically, BBD generalizes several known discrete optimi-zation problems, including the knapsack problem, Edmonds’minimum branching problem, the partially ordered knapsackproblem, and certain scheduling problems. BBD has broad prac-tical application as well. We show how BBD models disaster reliefefforts such as food or medicine distribution. In addition, wedescribe a ‘‘broadcasting’’ application which shares the sameproperties as the distribution problems, which, loosely speaking,are to maximize distribution effect at minimum cost.

The remainder of this paper is organized as follows. In the nextsection, we will formally state BBD, describe its applications,

ll rights reserved.

E.C. Rosenthal),

@korea.ac.kr (I.-C. Choi),

illanova School of Business

University Grant.

review related literature, and detail how the various discreteoptimization problems mentioned above are special cases. Wethen show that BBD is strongly NP-complete. The followingsection presents an integer programming formulation for BBD.Then, we outline five heuristic approaches to the problem andprovide an illustrative example. This is followed by our computa-tional experience of the heuristics on randomly generated pro-blems of varying sizes. Finally, we suggest extensions of BBD andsummarize our conclusions.

2. Formulation and applications

We define BBD as follows. Let N be the finite node set and A thearc set of a directed graph G¼(N,A) with no loops or parallel arcs.Let sAN be a distinguished node called the source. Define a cost

function c: A-Rþ on the arcs, and a demand function d: N\{s}-Rþat the nodes. Define a feasible solution to be a subgraph G0 of G

such that every node in G0 lies on a directed path whose initialnode is s, and whose total node demand is at least D40. Note thatall feasible solutions contain s, are connected subgraphs of G, butare not necessarily spanning. In problem BBD, we aim to find afeasible solution Gn of minimum total arc cost, provided a feasiblesolution exists. (Gn is an optimal solution.)

An arborescence is a directed tree with a single node called theroot, which has no arcs directed toward it, and all arcs on any pathdirected away from it. Since G is not capacitated, Lemma 1 follows.

Lemma 1. There exists an optimal solution Gn that is an arbores-

cence rooted at s.

Page 2: On a class of branching problems in broadcasting and distribution

E.C. Rosenthal et al. / Computers & Operations Research 39 (2012) 1793–17991794

Proof. Consider a feasible solution G0 that is not an arborescence.Suppose that v is a node of in-degree 2 or more, and let P be adirected path from s to v. It is clear that removing any arc from v

that does not lie in P, will not destroy feasibility (and the cost ofthe resulting subgraph will be no higher than that of G0). Thusthere is an optimal solution with maximum in-degree at most 1,that is, an arborescence. &

It is important to note that in the BBD model there are fixedcosts cj on the arcs, but no costs proportional to arc flows. Thismodel applies to a large variety of real-world problems, asdescribed below. Since the model does not require flow vectorsor conservation of flow, it differs from integer-program-basedflow analyses, such as fixed-charge network design approaches inLamar et al. [12]. We now give two applications of BBD.

Application 1: Disaster Relief—A positive number D of aid

packages are located at node s. Needy people are dispersedgeographically over a road network; demand di is located at nodei in the network. If road (or link) j is used for transport anddistribution, cost cj will be incurred (regardless of the volume senton j). The objective is to distribute D aid packages at the lowestpossible total cost.

The costs cj can have a variety of interpretations. They mayserve to model fixed costs on the various links, for example wherelarge transport capacity is readily available, is insensitive tovolume shipped, and for which cost is proportional to linkdistance. We point out that distribution of medicine is animportant application for which the assumptions of this modelwould hold quite well. Most doses are small and relativelylightweight; a single truck would be capable of carrying hundredsof thousands of doses.

Other interpretations may hold. Certain relief situations mayinvolve danger from hostile forces. In this case, the costs cj couldmodel various factors related to the reported strengths of thehostile forces. Thus cj could represent casualty expectations onlink j, or else the cost involved in supplying the aid packagetransport with sufficient troop protection to ensure successfulpassage. Other interpretations are transport times and time-dependent transport costs.

Note that in this application, the aid packages are assumed to be,but need not be, identical, and the population served is assumed tobe homogeneous in its needs. (The latter assumption can in fact bedropped, in which case the demands are accordingly weighted atthe nodes in our model.) If less than di packages are distributed atnode i, and i is not a terminal node in a feasible solution, thenunnecessary additional costs may be incurred. Distributing morethan di packages at node i will never improve the objective functionvalue. In various logistical applications, we could substitute ‘‘spareparts’’ or other commodities for ‘‘aid packages.’’

Application 2: Media broadcast effect—A ‘‘broadcaster’’ from asingle telecommunications source s wishes to transmit a messageto at least D ‘‘customers,’’ of whom di are located at node i; thenodes and their links comprise a network in which cost cj on arc j

is incurred if arc j is used for broadcast transmission. Theobjective is to achieve the necessary broadcast at the lowest cost.

We now review relevant literature, revealing additional appli-cations of BBD. Johnson and Niemi [10] describe a special case ofBBD, the partially ordered knapsack problem (POKP). Faigle andKern [6] generalize POKP and discuss various restricted versions.Kodialam et al. [11] study a multicast routing problem with asingle source, multiple receivers, and a bandwidth requirement,but no demand characteristics. Chuzhoy et al. [3] study a family ofbroadcast-type problems but the problems lack a demandconstraint.

Charikar et al. [1] give an approximation algorithm for thedirected Steiner tree problem (which is a special case of BBD

where the vertices are unweighted), and apply it to networkrouting. Even et al. [4] provide an approximation algorithm for ageneralized covering Steiner problem. In addition, Chekuri et al. [2]develop an approximation algorithm for the group Steiner problem.This tree problem is distinct from BBD since there is no demandrequirement.

Ibarra and Kim [9] pose two problems for scheduling tasks on asingle processor given task times and profits. Johnson and Niemi [10]and Garey and Johnson [7] show that these problems are special casesof POKP. We note that POKP is a special case of BBD, since in ourformulation G is not required to be a directed acyclic graph, therebyyielding a more general problem class (the node weights may betransferred to arc weights without modifying the nature of theproblem).

In addition, there are several commonly studied special casesof BBD that exist in the literature. One of them is a branchingproblem due to Edmonds (Papadimitriou and Steiglitz [13]).Given a directed graph G and weights on the arcs, the problemis to find a minimum (or maximum) weight spanning arbores-cence rooted at a specified node. We specialize BBD to thisproblem by letting di¼1 at all non-source nodes, and lettingD¼9N9�1. Although the minimum branching problem is solvablein polynomial time, it is useful to observe how our particulargeneralization alters the complexity of the problem.

The ordinary knapsack problem (KP) is another specializationof BBD. Given is a finite set A of activities with values vj andweights wj, as well as capacity W and value L. The decisionproblem is to find a subset S of A such that its total value is L

but its weight no more than W. We state BBD as a decisionproblem: given G, c, sAN, d, and D as above. For some K40, findan arborescence from s of total cost K such that its total demand isat least D. Reduce KP to BBD as follows: let D¼�W, K¼L, di¼�wj,and cj¼�vj. It is easy to see that SwjrW if and only if SdiZD.

We next determine the computational complexity of BBD.Following Garey and Johnson [7], we say that a (decision)problem is NP-complete if there exists no algorithm that cansolve the problem in a polynomial number of steps (i.e., apolynomially bounded function of the size of the problem input),and if such an algorithm were to be found, then P¼NP.

Problems like KP are NP-complete but admit algorithms whoserunning times are polynomial as a function of the input parameters

(such as W) but are not polynomial in the length of the encoding ofthe problem instance. Such algorithms are termed pseudo-polynomial

time algorithms and, when the input parameters are ‘‘reasonably’’small, these algorithms operate effectively as polynomial-time algo-rithms. Problems that are strongly NP-complete comprise a moredifficult set of problems than ordinary NP-complete problems.Strongly NP-complete problems will not admit pseudo-polynomialtime algorithms unless P¼NP, nor will they admit fully polynomial-time approximation schemes, meaning that no heuristic can bedeveloped that is guaranteed to perform within a certain distancefrom the optimal solution (Garey and Johnson [7] and Papadimitriouand Steiglitz [13]).

Theorem. BBD is strongly NP-complete. Proof is in Appendix A.

3. Integer programming formulation

The following is an integer programming (IP) formulation forBBD. Let AS be the arc set of the subgraph induced by SDN.

Problem BBD [(1)–(6) below]:

MinimizeX

i,jð ÞAA

cði,jÞxði,jÞ ð1Þ

Subject toX

jAN

X

ði,jÞAA

djxði,jÞZD ð2Þ

Page 3: On a class of branching problems in broadcasting and distribution

E.C. Rosenthal et al. / Computers & Operations Research 39 (2012) 1793–1799 1795

X

ði,jÞAA

xði,jÞr1 for all jAN ð3Þ

X

s,jð ÞAA

xðs,jÞZ1 ð4Þ

xðj,kÞ�X

iAN

xði,jÞ r0 for all ðj,kÞAA, jas ð5Þ

X

ði,jÞAAS

xði,jÞ r9S9�1 for SDN ð6Þ

and all x(i,j) A {0,1}.Constraint (2) insures that the target demand D is met by a

feasible solution. Then, (3) forces each node to be the head of atmost one arc in a feasible solution. The source must be included,as given in (4). All arcs must have an immediate predecessor,which is enforced by (5). Finally, (6) prevents directed cycles. Inour application, it also ensures that any feasible solution isconnected and that the source is a predecessor of each node inthis arborescence. Note that (6) involves a set of constraintswhose size is exponential in 9N9.

For small instances of BBD, the IP formulation above can beused to obtain an optimal solution. One approach for largeproblems is to relax the formulation by deleting constraints (6).Solutions that result may involve more than one component: anarborescence from s and one or more disconnected directedcycles. Next, we present five heuristic procedures, one of whichexploits the above IP.

4. Heuristics for BBD

In this section, we develop five heuristics for BBD, and give anillustrative example. However, these heuristics are based on twobasic heuristics: Heuristic 1 and Heuristic 2a. Heuristics 2b, 3a,and 3b are all variations of Heuristic 2a. All the heuristics exploitthe graph-theoretic properties indicated in Lemma 1. Heuristic 1 is amodification of Prim’s algorithm for finding a minimum spanningtree for a graph (see Papadimitriou and Steiglitz [13]). Starting at thesource, we grow a tree outward by finding, one by one, the ‘‘best’’node to add, until all reachable nodes are included. By the ‘‘best’’node, we mean the node that, out of all candidate nodes, has thehighest demand/cost ratio.

Let d(S)¼{(i,j)AA: iAS, jeS}. Index d(S) by j, with head nodesindexed by i.

Heuristic 1:

Step 0: Let S¼{s}. Let total cost C¼0.Step 1: For all jAd(S), compute di/cj. Let k be the node thatmaximizes this ratio. (If there is a tie, choose the node with thehighest demand.)

Let S¼S[{k}. Let i¼{j: arc (j,k) was selected}. Let C¼Cþci.IfP

keSdkZD then STOP. If S¼N, then STOP.

Repeat Step 1 until d(S)¼f.

The complexity of this greedy heuristic is O(jNj2).In order to present the other heuristics, we first develop a

useful modification of depth-first-search (DFS), which we callgreedy DFS. The canonical DFS algorithm (Hopcroft and Tarjan [8],Even [5]), in which an arborescence is developed in searching agraph, is presented in Appendix A. Greedy DFS is simply DFS fordirected graphs with the following modification: when we selectan arc in ‘‘discovering’’ an unvisited node, we will not do soarbitrarily but by computing all the di/cj ratios on each candidatearc j with head i, and select the node to visit that yields the highest

such ratio. The idea is to build an arborescence with a high ratio of

demand to cost. This modification will increase the complexity ofDFS by a factor of O(jNj). One output of DFS that will be useful tous is the identification, for each node i, of the node j from which i

was first visited. We call j the father of i and we create a list, foreach node, of all the father nodes tracing back to s. This list we callthe ancestor list for i. Further, it is useful to note that the ancestorlist for i traces a unique path Pi from i back to s in G, because theset of arcs that first visit the nodes in G forms an arborescencefrom s.

Heuristic 2a:

Step 0: Let S¼{s}.Step 1: Perform greedy DFS for G. Create G0 by eliminatingunreachable nodes and their outgoing arcs from G.Step 2: Solve relaxed IP (1)–(5) on G0. Call the resulting graphG00. Without the ‘‘cycle prevention’’ constraints (6), the IPrelaxation (1)–(5) will produce a graph G00 with kZ1 compo-nents, one of which is an arborescence from s that we call thesource component S and the others, if any, are either directedcycles that are node- and arc-disjoint from the source compo-nent and from each other, or else are the union of directedcycles with trees rooted on the cycles and directed awayfrom them.Step 3: For all nodes iAG00, ieS, identify path Pi. If Pi\Saf thenfind the subpath Pi

0 of Pi from S to i (from the ‘‘last’’ node in S

on Pi to i) and compute the cost of P0i. Identify the node i withthe lowest total arc cost on Pi or Pi

0. For this node, form S[Pi andthen delete the arc incoming to i that is not in Pi (this arc is inthe unique cycle containing i). If S spans all nodes in G00, go toStep 5. Note that Step 3 will connect to S the ‘‘closest’’ of thecycle components, and then delete a (redundant) arc fromthe cycle.Step 4: Let S’S[Pi and repeat Step 3.Step 5: Compute ratios di/cj for leaves i of S. Rank these leavesin ascending order by ratio. Delete a leaf i and its incoming arcprovided that

PjA S\figdiZD. Update S and the leaf set and

repeat until no more leaves can be deleted from S. The solutionis the remaining arborescence.

Heuristic 2b:Same as Heuristic 2a but Steps 3 and 4 are terminated when the

sum of the node demands exceed D. In other words, Heuristic 2aconnects the entire graph first; however, Heuristic 2b evaluates S ateach update and proceeds to Step 5 once D is achieved.

Heuristic 3a:

Step 1: Same as Heuristic 2aStep 2: Same as Heuristic 2aStep 3: For all nodes i not in S, compute the marginalincremental cost of connecting i to S. Add the node with thesmallest incremental cost to S. The marginal incremental costsfor each node is computed by adding an arc from a node i in S

to a node j not in S minus the cost of the arc leaving from thecycle, if one exists, in the subgraph that includes node j. Allcomponents of the subgraph are added to set S and the processrepeats.Step 4: Same as Heuristic 2aStep 5: Same as Heuristic 2a

Heuristic 3b:Same as Heuristic 3a but Steps 3 and 4 are terminated when the

sum of the node demands exceed D. In other words, Heuristic 3aconnects the entire graph first, however, Heuristic 2b evaluates S ateach update and proceeds to Step 5 once D is achieved.

Page 4: On a class of branching problems in broadcasting and distribution

Fig. 3. Heuristic 2a and 2b solution graph (cost: 42 demand: 539).

E.C. Rosenthal et al. / Computers & Operations Research 39 (2012) 1793–17991796

5. Solved example

Consider the ten-node network in Fig. 1. Suppose that D¼500.(Note that Sdi¼578, and, of the reachable nodes, Sdi¼569.)

Heuristic 1 will proceed as follows. Arcs are chosen in thefollowing order: (s,5), (s,6), (6,9), (9,2), (s,4), (4,8), (8,3). The costof this arborescence is 41, and the demand met is 533. Thesolution is depicted by the graph in Fig. 2.

Heuristic 2a solves the relaxed IP (1)–(5). Since greedy DFSgives node 5 as the father of node 1, the component {1,8,3,2} willbe linked back to the source component {s,5,6,9} via the arc (5,1).The inclusion of (5,1) causes (3,1) to be deleted, resulting in asolution cost of 42, with demand 539. Heuristic 2b provides thesame solution. This solution is represented by the graph in Fig. 3.

Heuristics 3a and 3b each provide a solution with a cost of 40and demand of 529. This is characterized by the graph in Fig. 4.

Finally, the optimal solution is the arborescence consisting ofthe arcs (s,4), (s,5), (s,6), (3,1), (4,8), (8,2), and (8,3), with cost 36and demand 502. This solution is shown by the graph in Fig. 5.

Next, we provide a comprehensive computational experiencefor different sized randomly generated problem instances.

6. Computational experience

In this section, we provide a detailed analysis of our computa-tional experience with problems of different sizes that wererandomly generated. First, we describe how these problems weregenerated for experimentation, followed by the discussion of theresults. All computational work was performed on a desktop PCwith 2.0 GB RAM using an Intels Core TM 2 CPU 2.13 GHzprocessor. The heuristics were coded in Visual Cþþ (MFC), and

Fig. 1. Distribution network with node demands (in bold) and arc costs.

Fig. 2. Heuristic 1 solution graph (cost: 41 demand: 533).

Fig. 4. Heuristic 3a and 3b solution graph (cost: 40 demand: 529).

Fig. 5. Optimal solution graph (cost: 36 demand: 502).

Cplexs was used to solve the optimization problems. Next, wedescribe the process of generating the random problems.

The networks used in our computational experience wererandomly generated based on the given number of nodes N and

Page 5: On a class of branching problems in broadcasting and distribution

Fig. 6. Mean heuristic solutions as a percent from the optimal for the 5 small-

sized problems set (N¼10, 12, 15, 17 and 20 with demand D¼500).

E.C. Rosenthal et al. / Computers & Operations Research 39 (2012) 1793–1799 1797

total node demand D. Therefore, for a given N and D, we generatestaged networks with backward arcs which connect nodes instage t to nodes in stage t–k where 0okot. The demand of eachnode is generated using a uniform distribution as well as the coston each arc. The density of the graph was managed usingrandomly generated arc degrees again utilizing the uniformdistribution. Using this scheme, we tested 5 small sized problemsets of node sizes 10, 12, 15, 17, and 20, each with 5 probleminstances and a target demand D¼500. In addition, we tested9 large sized problem sets in which the total demand was set tothree levels such that D¼500, 2000, and 4000 with node sizes of100, 200, and 300, each with 5 problem instances. In total, ourcomputational experience involved 70 problem instances. Theresults associated with these 70 problem instances are shown inFig. 6 and Table 1. Next, we comment on the computationalperformance of the five heuristics on the small sized problems forwhich we also determined the optimal solution using CPlex. Thisis followed by the discussion of our computational resultsobtained using the heuristics on small and large sized randomlygenerated problems.

For the small sized problems, with node sizes of 10, 12, 15, 17,and 20, for which we solved 5 different problem instances each,eight problem instance solutions (32%) determined by the heur-istics had the same solution as the optimal value obtained usingCPlex. Of these eight instances, Heuristic 3b found all eightinstances, Heuristic 3a found six instances, Heuristic 2b found3 instances, and Heuristic 2a found 2 instances of the optimalsolutions. In this analysis, Heuristic 1 never achieved an optimalsolution value; however, there were five other problem instanceswhen Heuristic 1’s solution was the closest to the optimal value.However, Heuristic 3b performed the best with eight out of 17problem instances closest to the optimal solution. On average, forthe total of 25 problem instances, the best heuristic solutiondeviation was about 8.52% from the optimal solution whereas thisdeviation was about 12.53% for the 17 problem instances forwhich the heuristics failed to find an optimal solution.

The behaviors of the mean heuristic solution as a percentagefrom the optimal for these problems are shown in Fig. 6. For the10-node problem, Heuristic 1 has the worst performance of about28.8% whereas Heuristic 3b is only 2.53% on average away fromthe optimal solutions. Similar conclusions can be drawn for theproblems with 12, 15, and 20 node problem solutions. However,Heuristic 3a has a slightly better performance than Heuristic 3bfor the 17-node problem.

The CPU times for solving a problem instance of up to 20 nodeswas relatively fast with the largest CPU time of 0.526 s for theproblem instance with 15 nodes for Heuristic 3b. The largest

average CPU time for the combined five problem instances withina node category was 0.3288 s which corresponds to node size of17 for Heuristic 2b.

Our computational experience for the 45 large sized randomlygenerated problems varied with node sizes of 100, 200, and 300where the target demand was set to 500, 2000, and 4000. Forthese problem instances, due to the size of the problem, we didnot solve the problem to optimality, and hence, we report ourcomputational experience based on the best Heuristic solution.Based on this approach, the top three performing heuristics wereHeuristic 3b, Heuristic 3a, and Heuristic 1. More specifically,Heuristic 3b attained the best solution for 31 out of 45 probleminstances (68.9%), which was followed by Heuristic 3a with only8 problem instances (17.8%), and Heuristic 1 for 6 probleminstances (13.3%). The other two Heuristics were best less than10% of the time. In regards to the CPU times for these probleminstances, the largest average CPU of 6.77 s was associated withthe node size of 300 with a target demand of 2000. The largestCPU time for the entire set of problem instances was 7.451 swhich was associated with a problem instance of node size of 300with a target demand of 2000 for Heuristic 3.

From our computational experience on the 70 randomlygenerated problems, it is quite evident that Heuristic 3b performsthe best. It is not too surprising that this is closely followed by theperformance of Heuristic 3a. In addition, the CPU times for solvingthese hard problems using the Heuristics is relatively quick.

7. Extensions and conclusions

There are a variety of research directions that may be pursuedas extensions to this work and we outline a few here. In thevarious applications of BBD, it is possible that the criteria ofminimizing cost and of maximizing demand may need to beconsidered together. Thus far, we have been considering thedemand criterion to be met as a constraint, subordinated to acost minimizing objective. However, one can imagine a situationin which the priorities are reversed, or merit roughly equalconsideration. To treat such an application, one could consider agoal programming approach to treat BBD as a problem with bothdemand and cost as objectives. It is straightforward to extend theIP (1)–(6) to a goal program that minimizes the weighted sum ofcost overruns and demand deficits.

Another direction is to develop a location-theoretic BBDmodel. A challenging extension is to locate more than one sourceon a network to minimize distribution costs while meetingdemand constraints.

While the heuristics in this paper perform well, it is worth-while to pursue different avenues also. One is to develop analternative exact formulation, for example using Boolean optimi-zation. Another is to develop a branch-and-cut approach. Finally,since BBD itself generalizes a host of different, and important,combinatorial optimization problems, we feel that research intoalgorithms for BBD may indeed reveal insights into these pro-blems as well.

In conclusion, the contributions of this paper are one, theintroduction of a new network optimization problem that gen-eralizes several well-known problems from the literature; two,the identification of two practical applications; three, classifyingthe problem as strongly NP-complete; and four, developing andstudying a variety of promising heuristic approaches. As com-pared to similar network models found in the literature, theadvantage of the BBD model is that the problem structure – whichdoes not require arc capacities or network flows – enables the useof effective, search-based heuristics. Indeed, the computationalevidence that we present shows that, while there can be no

Page 6: On a class of branching problems in broadcasting and distribution

Table 1Detailed results for all randomly generated problem instances.

D Arc

degree

Problem

number

D/P

di H1 H2a H3a H2b H3b Best

heuristic

Optimal LB

Cost D0 Time Cost D0 Time Cost D0 Time Cost D0 Time Cost D0 Time

500 [2.5] 10_1 0.94 108 533 0.234 102 533 0.234 95 533 0.234 102 533 0.282 95 533 0.249 95 94 90

500 [2.5] 10_2 0.9 102 533 0 56 523 0.218 56 523 0.234 56 523 0.249 56 523 0.242 56 56 54

500 [2.5] 10_3 0.84 53 505 0.015 52 515 0.234 55 515 0.219 52 515 0.242 55 515 0.234 52 50 48

500 [2.5] 10_4 0.94 75 511 0 70 515 0.234 70 515 0.234 64 511 0.235 64 511 0.247 64 63 56

500 [2.5] 10_5 0.95 99 512 0 94 512 0.219 81 512 0.218 94 512 0.237 81 512 0.243 81 81 78

500 [2.5] 12_1 0.94 126 530 0 87 520 0.234 85 520 0.218 87 520 0.241 85 520 0.23 85 85 72

500 [2.5] 12_2 0.81 103 570 0 82 518 0.249 82 518 0.265 82 518 0.275 82 518 0.275 82 82 74

500 [2.5] 12_3 0.92 103 517 0 79 504 0.234 72 504 0.218 79 504 0.054 72 504 0.255 72 72 70

500 [2.5] 12_4 0.9 103 514 0 121 525 0.219 118 518 0.234 121 525 0.051 103 514 0.244 103 95 84

500 [2.5] 12_5 0.97 81 504 0 83 507 0.218 69 504 0.234 83 507 0.25 69 504 0.253 69 69 59

500 [2.5] 15_1 0.76 80 511 0 67 502 0.234 58 502 0.234 67 502 0.247 54 501 0.247 54 51 49

500 [2.5] 15_2 0.76 71 520 0 76 588 0.5 78 505 0.483 76 588 0.523 76 588 0.526 71 50 50

500 [2.5] 15_3 0.72 65 503 0 102 541 0.249 87 518 0.41 75 503 0.252 62 503 0.245 62 62 59

500 [2.5] 15_4 0.64 71 562 0.016 77 518 0.25 74 504 0.266 77 518 0.264 73 589 0.268 71 60 58

500 [2.5] 15_5 0.54 51 532 0 50 516 0.234 43 516 0.234 49 534 0.25 43 516 0.25 43 34 29

500 [2.5] 17_1 0.72 114 575 0 92 511 0.265 82 537 0.265 92 511 0.26 98 540 0.251 82 77 52

500 [2.5] 17_2 0.58 54 544 0 74 556 0.266 62 500 0.265 60 518 0.277 43 505 0.273 43 42 40

500 [2.5] 17_3 0.79 90 509 0 104 547 0.25 76 547 0.25 100 509 0.258 90 518 0.254 76 70 59

500 [2.5] 17_4 0.68 98 517 0 123 574 0.249 82 543 0.25 121 528 0.562 80 514 0.267 80 72 64

500 [2.5] 17_5 0.51 81 545 0 61 531 0.281 61 531 0.297 63 536 0.287 78 534 0.296 61 53 40

500 [2.5] 20_1 0.75 126 556 0 125 548 0.265 129 528 0.266 119 501 0.277 128 525 0.279 119 90 83

500 [2.5] 20_2 0.425 75 590 0 106 538 0.265 74 570 0.265 75 537 0.263 52 538 0.269 52 49 41

500 [2.5] 20_3 0.653 65 519 0 93 504 0.296 78 510 0.296 93 508 0.316 93 508 0.301 65 60 59

500 [2.5] 20_4 0.511 46 545 0.001 51 528 0.27 46 539 0.266 37 501 0.278 37 501 0.269 37 37 36

500 [2.5] 20_5 0.533 54 509 0.002 88 562 0.48 60 525 0.483 86 507 0.345 58 531 0.347 54 47 45

500 [2.10] 100_1 0.0959 35 542 0.001 77 558 0.78 39 513 0.764 68 502 0.788 32 537 0.786 32 24

500 [2.10] 100_2 0.1009 30 537 0 34 533 0.795 22 523 0.811 32 501 0.862 22 523 0.839 22 19

500 [2.10] 100_3 0.0927 50 585 0.001 49 525 0.952 56 517 0.983 46 523 1.01 46 523 1.006 46 26

500 [2.10] 100_4 0.113 43 524 0 35 500 1.311 35 500 1.279 51 543 1.408 57 503 1.416 35 32

500 [2.10] 100_5 0.1003 38 574 0 48 540 0.608 27 512 0.734 96 533 0.786 27 512 0.773 27 19

500 [2.10] 200_1 0.05 58 559 0.004 63 512 2.215 48 509 2.262 94 500 2.23 36 501 2.184 36 27

500 [2.10] 200_2 0.0507 64 511 0.004 32 555 1.936 36 511 2.126 83 514 1.985 30 505 2.008 30 23

500 [2.10] 200_3 0.0479 41 525 0.008 43 509 2.189 58 558 2.181 61 549 2.105 29 549 2.019 29 29

500 [2.10] 200_4 0.0526 33 525 0.003 43 551 2.558 52 535 2.727 37 556 2.726 57 504 2.721 33 28

500 [2.10] 200_5 0.0492 33 574 0.007 51 529 2.673 35 518 2.764 51 529 2.583 34 515 2.668 33 24

500 [2.10] 300_1 0.0328 24 500 0.017 18 584 4.824 40 506 6.273 59 548 4.724 26 540 4.958 18 17

500 [2.10] 300_2 0.033 33 544 0.011 38 534 4.536 54 547 6.013 54 510 4.448 27 523 4.713 27 19

500 [2.10] 300_3 0.0324 52 565 0.025 47 508 4.676 48 551 6.345 57 556 5.273 33 539 4.756 33 29

500 [2.10] 300_4 0.0328 38 568 0.023 42 558 6.669 49 520 6.664 37 528 4.928 37 528 4.805 37 32

500 [2.10] 300_5 0.0332 40 506 0.018 61 523 8.217 65 524 6.693 45 522 5.208 55 535 5.131 40 33

2000 [2.10] 100_1 0.4271 162 2025 0.016 164 2018 0.76 226 2016 0.768 107 2013 0.777 124 2062 0.756 107 100

2000 [2.10] 100_2 0.4238 204 2021 0 246 2007 1.011 301 2011 1.029 263 2032 1.059 237 2030 1.028 204 111

2000 [2.10] 100_3 0.4049 157 2071 0 205 2009 0.767 236 2004 0.802 204 2004 0.775 125 2001 0.761 125 124

2000 [2.10] 100_4 0.4063 174 2004 0 185 2000 0.799 159 2001 0.8 165 2027 0.805 103 2072 0.786 103 97

2000 [2.10] 100_5 0.4247 139 2028 0 283 2000 0.789 226 2010 0.807 264 2010 0.805 140 2004 0.776 139 104

2000 [2.10] 200_1 0.1954 186 2009 0.015 212 2027 2.151 232 2026 2.263 191 2023 2.128 129 2060 2.134 129 104

2000 [2.10] 200_2 0.1949 131 2067 0.012 213 2061 2.094 189 2009 2.453 177 2007 2.145 106 2065 2.014 106 95

2000 [2.10] 200_3 0.1887 119 2047 0.015 143 2005 1.946 209 2020 2.069 211 2006 1.96 112 2025 2 112 84

2000 [2.10] 200_4 0.1868 139 2018 0.031 194 2046 1.782 220 2033 1.966 233 2023 2.002 107 2024 1.86 107 95

2000 [2.10] 200_5 0.1981 119 2049 0.016 94 2016 1.971 162 2027 2.144 194 2020 2.007 111 2007 2.318 94 77

2000 [2.10] 300_1 0.1372 106 2049 0.096 152 2000 4.732 137 2026 6.696 152 2016 4.745 94 2018 4.739 94 79

2000 [2.10] 300_2 0.1335 147 2017 0.083 207 2004 4.915 172 2006 6.644 259 2021 4.898 115 2028 4.76 115 89

2000 [2.10] 300_3 0.129 127 2021 0.077 257 2052 5.475 154 2008 7.451 217 2014 5.47 92 2049 5.461 92 90

2000 [2.10] 300_4 0.1332 165 2022 0.092 290 2026 5.177 257 2012 6.706 284 2009 4.966 127 2038 4.842 127 88

2000 [2.10] 300_5 0.1371 191 2045 0.099 150 2014 4.727 257 2022 6.357 281 2011 4.848 158 2002 4.785 150 104

4000 [2.10] 100_1 0.7848 507 4013 0.015 416 4008 0.765 322 4009 0.78 409 4022 0.818 322 4009 0.796 322 316

4000 [2.10] 100_2 0.8063 388 4065 0.016 384 4009 1.17 284 4013 1.17 389 4012 1.238 284 4013 1.226 284 269

4000 [2.10] 100_3 0.8061 451 4006 0.027 449 4013 0.828 430 4000 0.822 339 4055 0.858 333 4006 0.826 333 298

4000 [2.10] 100_4 0.8299 415 4039 0.028 472 4010 0.742 369 4004 0.744 321 4037 0.778 272 4006 0.749 272 262

4000 [2.10] 100_5 0.7313 384 4005 0.023 459 4030 0.763 364 4000 0.799 396 4083 0.778 276 4039 0.779 276 252

4000 [2.10] 200_1 0.4031 316 4009 0.031 327 4071 1.856 290 4001 1.934 399 4005 2.062 314 4006 2.101 290 218

4000 [2.10] 200_2 0.3778 281 4038 0.031 336 4008 1.825 261 4037 1.887 457 4003 4.99 287 4008 1.992 261 178

4000 [2.10] 200_3 0.4067 304 4096 0.067 417 4035 1.949 409 4024 2.14 293 4008 1.963 193 4001 1.986 193 184

4000 [2.10] 200_4 0.4135 287 4022 0.046 303 4030 1.973 490 4012 2.084 368 4002 1.999 292 4007 2.013 287 209

4000 [2.10] 200_5 0.4065 312 4046 0.045 350 4009 1.955 529 4003 2.111 536 4026 2.053 235 4071 1.984 235 216

E.C. Rosenthal et al. / Computers & Operations Research 39 (2012) 1793–17991798

Page 7: On a class of branching problems in broadcasting and distribution

Table 1 (continued )

D Arc

degree

Problem

number

D/P

di H1 H2a H3a H2b H3b Best

heuristic

Optimal LB

Cost D0 Time Cost D0 Time Cost D0 Time Cost D0 Time Cost D0 Time

4000 [2.10] 300_1 0.2797 239 4032 0.046 282 4050 3.744 181 4054 3.712 661 4003 4.091 182 4022 3.877 181 175

4000 [2.10] 300_2 0.2644 359 4029 0.171 516 4031 4.811 472 4009 6.747 451 4002 4.813 230 4028 4.736 230 209

4000 [2.10] 300_3 0.2667 301 4078 0.181 657 4007 5.502 531 4008 6.839 619 4002 5.151 260 4006 5.498 260 211

4000 [2.10] 300_4 0.2725 300 4035 0.179 503 4030 5.016 548 4025 6.123 241 4015 4.948 223 4000 4.904 223 197

4000 [2.10] 300_5 0.2626 254 4009 0.163 382 4012 4.857 340 4001 6.679 220 4046 4.956 173 4004 4.824 173 172

E.C. Rosenthal et al. / Computers & Operations Research 39 (2012) 1793–1799 1799

guarantee that our heuristic solutions are within any specifiedpercentage of the optimal objective function value, in the largevariety of test problems that we generated, the heuristics per-formed quite well in general and ran efficiently even for verylarge problems sizes.

Acknowledgments

The authors would like to thank Bruce Shepherd, GautamAppa, Vijay Gupta, and two anonymous referees for their helpfulcomments.

Appendix A

A.1. BBD decision problem

Given directed graph G¼(N,A) with no loops or parallel arcs,sAN, D40, c: A-Rþ , and d: N\{s}-Rþ . Does there exist adirected out-tree Gn from s such that

PiAGn di¼D?

Theorem. BBD is strongly NP-complete.

Proof. First, we observe that BBD is in the class NP: feasibility of acandidate solution is easily checked in polynomial time. Next, wereduce some known strongly NP-complete problem to BBD. FromGarey and Johnson [7], we state the problem exact cover by 3-sets

(X3C). Given: set X with jXj¼3q and a collection C of 3-elementsubsets of X. Find: an exact cover for X in C; that is, a subcollectionC0 D C such that every element of X occurs in exactly onemember of C0.

For any instance of X3C, we can construct a graph G¼(N,A) such

that X3C admits an exact cover if and only if BBD has an answer of

‘‘yes’’ for its associated decision problem. Let G have one distinct

‘‘leaf’’ node for each element of X. Then create nodes c1, c2,...,ck

that correspond to the 3-element subsets of X, such that each

node ci is incident to precisely the three leaves in G corresponding

to elements contained by CiAC. (Direct the arcs away from ci.)

Finally, add a source s in G and directed arcs from s to the nodes ci.

Let all of the leaves have demand 1, and all other nodes have

demand 0; let all arcs have cost 1. Let cost K¼4q and demand

D¼jXj.

We claim that X3C has an exact cover if and only if the decision

version of BBD yields ‘‘yes’’ given the above construction. This is

clear given the following observations. In G, no node ci is chosen

without ‘‘hitting’’ 3 leaves, as this would increase cost without

increasing demand. In addition, we observe that if X3C has no

exact cover, then the leaves in G can be covered only by more

than q of the ci nodes, which drives the cost beyond 4q, yielding

an answer for BBD of ‘‘no.’’ Finally, we point out that X3C is

strongly NP-complete, and the transformation achieved to create

G is polynomial. This completes the proof of the theorem. &

A.2. Depth-first search

The following algorithm from Even [5], known as depth-first

search, discovers nodes in a graph in a systematic fashion. LetG¼(N,A) be a finite, connected graph with distinguished (root)node s:

Step 1: Mark all arcs ‘‘unused.’’ For every aAA, let k(a)¼0. Leti¼0 and v¼s.Step 2: Let i¼ iþ1, and let k(v)¼ i.Step 3: If v has no unused incident arcs, go to Step 5.Step 4: Choose an unused incident arc a¼(v,u). Mark a ‘‘used.’’If k(u)a0, go to Step 3. If k(u)¼0 then let f(u)¼v, v¼u, and goto Step 2.Step 5: If k(v)¼1, stop.Step 6: Let v¼ f(v) and go to Step 3.

References

[1] Charikar M, Chekuri C, Cheung T, Dai Z, Goel A, Guha S, et al. Approximationalgorithms for directed Steiner problems. J Algorithms 1999;33:73–91.

[2] Chekuri C, Even G, Kortsarz G. A greedy approximation algorithm for thegroup Steiner problem. Discrete Appl Math 2006;154:15–34.

[3] Chuzhoy J, Gupta A, Naor J, Sinha A. On the approximability of some networkdesign problems. ACM Trans Algorithms 2008;4:2.

[4] Even G, Kortsarz G, Slany W. On network design problems: fixed cost flowsand the covering problem. Lecture Notes in Computer Science, vol. 2368,2002. p. 318–27.

[5] Even S. Graph algorithms. Potomac, MD: Computer Science Press Inc; 1979.[6] Faigle U, Kern W. Computational complexity of some average weight

problems with precedence constraints. Oper Res 1994;42:688–93.[7] Garey MR, Johnson DS. Computers and intractability: a guide to the theory of

NP-completeness. San Francisco: Freeman and Co.; 1979.[8] Hopcroft J, Tarjan R. Algorithm 447: efficient algorithms for graph manipula-

tion. Commun ACM 1973;16:372–8.[9] Ibarra OH, Kim CE. Approximation algorithms for certain scheduling pro-

blems. Math Oper Res 1978;3:197–204.[10] Johnson DS, Niemi KA. On knapsacks, partitions, and a new dynamic

programming technique for trees. Math Oper Res 1993;8:1–14.[11] Kodialam M, Lakshman TV, Sengupta S. Online multicast routing with

bandwidth guarantees: a new approach using multicast network flow.IEEE/ACM Trans Networking 2003;11(4):676–86.

[12] Lamar BW, Sheffi Y, Powell WB. A capacity improvement lower bound forfixed charge network design problems. Oper Res 1990;38:704–10.

[13] Papadimitriou CH, Steiglitz K. Combinatorial optimization: algorithms andcomplexity. Englewood Cliffs, NJ: Prentice-Hall; 1982.