UNIVERSITY OF

ILLINOIS LIBRARY

AT URBANA-CHAMPAIQN

BOOKSTACKS

va%

CENTRAL CIRCULATION AND BOOKSTACKS

The person borrowing this material is re- sponsible for its renewal or return before the Latest Date stamped below. You may be charged a minimum fee of $75.00 for each non-returned or lost item.

Theft, mutilation, or defacement of library materials can be causes for student disciplinary action. All materials owned by the University of Illinois Library are the property of the State of Illinois and are protected by Article 16B of Illinois Criminal Law and Procedure.

TO RENEW, CALL (217) 333-8400. University of Illinois Library at Urbana-Champaign

SE? 011999

■6 200

When renewing by phone, write new due date below previous due date. L162

BEBR

FACULTY WORKING PAPER NO. 1463

Solving a Real World Highway Network

Design Problem Using Bilevel Linear Programming

Omar Ben-Ayed Charles E. Blair David E. Bo\ce

Hi*

9f

hit

College of Commerce and Business Administration Bureau of Economic and Business Research University of Illinois. Urbana-Champaign

BEBR

FACULTY WORKING PAPER NO. 1463

College of Commerce and Business Administration

University of Illinois at Urbana- Champaign

June 1988

Solving a Real World Highway Network Design Problem Using Bilevel Linear Programming

Omar Ben-Ayed, Graduate Student Department of Business Administration

Charles E. Blair, Professor Department of Business Administration

David E. Boyce Department of Civil Engineering, University of Illinois

Digitized by the Internet Archive

in 2011 with funding from

University of Illinois Urbana-Champaign

http://www.archive.org/details/solvingrealworld1463bena

SOLVING A REAL WORLD HIGHWAY NETWORK DESIGN PROBLEM USING BILEVEL LINEAR PROGRAMMING

OMAR BEN-AYED and CHARLES E. BLAIR

Department of Business Administration University of Illinois at Urbana-Champaign, IL 61820

DAVID E. BOYCE

Department of Civil Engineering University of Illinois at Urbana-Champaign, IL 61801

(May 1988)

This paper is concerned with the solution of a real world Bilevel Linear Program (BLP) of the highway Network Design Problem (NDP), based on empirical data for Tunisia. The problem includes 2,683 variables (2,571 at the lower level) and 820 constraints; it is far beyond the capacity of any existing algorithm. A new algorithm is devised and the solution is found successfully despite the NP-hardness of BLP and the large scale of the problem. The computa- tional difficulties of BLP should not present a barrier against the effective use of such a powerful optimization technique.

Bilevel Linear Programming (BLP) is a mathematical model of an organiza- tional hierarchy in which two decision makers have to choose their strategies from the polyhedron {(x,y): Ax + By < b; x, y > 0). The upper decision maker, who has control over x, makes his decision first, hence fixing x before the lower decision maker selects y [Bialas and Karwan 1982 and 1984, Bard 1983, and, Ben-Ayed 1988] .

The ability of BLP to represent decentralized decision-making problems motivated the development of several applications of the model, including resource allocation [Cassidy 1971, Fortuny-Amat and McCarl 1981], military planning [Bracken and McGill 1973, 1974a and 1974b, Shere and Wingate 1976, Falk 1977] and government policy [Candler and Norton 1977, DeSilva 1978, Bialas et al. 1980, Falk and McCormick 1982, Candler and Townsley 1982 and 1985].

2 Recently, attention has been focused on applying bilevel formulations to a transportation decision making problem referred to as the Network Design Problem (NDP) [LeBlanc and Boyce 1986, Marcotte 1986, Ben-Ayed, Boyce and Blair 1988]. NDP is concerned with the optimal improvement of a transportation network in order to minimize the system total costs.

Most BLP applications are limited to the theoretical formulation, thereby lacking the practical significance of solving real problems. Actually, the overwhelming majority of real-world problems are formulated and solved as single-level (single-objective) programs even when they are virtually bilevel. This is mainly due to the inefficiency associated with BLP algorithms [Ben-Ayed and Blair 1988], which presents a real barrier against the effective use of the model. In trying to motivate further applications of BLP going beyond the theoretical formulations and the small illustrative examples to interesting real world problems, Ben-Ayed, Blair and Boyce [1988] presented a BLP formula- tion of the interregional highway NDP based on empirical data for Tunisia. This paper gives the solution to the problem formulated there. This problem includes 2,683 variables (2,571 of which are lower) and 820 constraints, which makes it too large to be solved by any of the existing algorithms.

Section 1 presents the problem. In Section 2, we develop a new algorithm that takes advantage of the special structure of the problem. There are two reasons for having a BLP formulation; first the user-optimized flow requirement (user-equilibrium), and second the nonconvex improvement functions. The algorithm deals with each of the two lower problems separately; at each iteration we try to find a better compromise with the user, while including the smallest possible number of nonconvex improvement functions to get the exact solution with the minimum computation effort. In Section 3, the solution is presented and the results are analyzed. We conclude in the last section with some suggestions.

1. The Problem to be Solved

In this section we give a short description of the formulation resulting from the empirical study conducted by Ben-Ayed, Blair and Boyce [1988] on the Tunisian interregional highway transportation network. We are concerned with a system of roads connecting the regions of Tunisia. Each region is represented by a centroid-node which is usually the largest city in the region. The traffic entering and leaving a centroid-node is assumed to be that of the whole region; every centroid-node is simultaneously an origin-node and a destination-node. The other nodes in the network are intersections of roads generally correspond- ing to intermediate cities. A road connecting any two cities is called a link and a sequence of links is called a route. We have empirical data on the number of people who want to travel from each region to each other region. Typically, a traveller has a choice of routes and makes his decision based on road conditions. Improvements in various links in the network sill cause some travellers to change their choice of routes. We will not provide details about the empirical data, the construction of the objective functions and the constraints in the formulation; however, a brief discussion on the inclusion of the bilevel presentation is relevant to the object of this paper.

The principal variables in the formulation are the traffic flow and the added capacity resulting from the improvement, both measured in Passenger Car Units per hour (PCU). The designers of a road network wish to find the best combination of improvements to make. Their objective takes into account the cost of improvements and also factors which depend on the pattern of road use, including system travel time, system operating cost and frequency of accidents. The users of the network decide which routes to use primarily based on their individual cost; therefore, their choices do not necessarily coincide with the choices that are optimal for the system [Wardrop 1952]. The system can in- fluence users choices, however, by improving some links and making them more

4 attractive than others. When deciding on these improvements, the system tries to influence the users' preferences in order to minimize total system costs. Thus in our BLP, the upper decision maker chooses the amount of improvement to make on each of the different roads (links in the network) while the lower decision maker chooses how much traffic there will be on each road. A similar approach is used by LeBlanc and Boyce [1986], and Ben-Ayed, Boyce and Blair [1988] .

In addition to the user-optimized flow requirement, BLP formulation allows the analysis of nonconvex piecewise linear functions [Ben-Ayed, Blair and Boyce 1988]. A typical improvement function might be:

f(Z) = 10Z 0 < Z < 200

= 2000 + 3(Z-200), 200 < Z < 500 (1)

= 2900 + 8(Z-500), 500 > 500.

where Z is the amount of improvement of a link and f(Z) is the cost of that improvement. Note that f(Z) is neither convex nor concave, thus making it difficult to analyze. However, the function can be included in the upper objective of a BLP with an appropriate lower objective. The technique is based on the following:

f(Z) = F(Z,W) = 10Z - 7WX + 5W2, where W^MAXfO, Z-200} , W2=MAX( 0 , Z-500] .

The variables Wm are controlled by the lower problem; the lower objective trying to make the Wm as small as possible, and the constraints W^ > Z-200, W2 > Z-500 guarantee that Wm are least upper bounds. This technique can be used for any piecewise linear function.

Two drawbacks should be mentioned. First, the method described does increase the number of lower variables, and this increase may be considerable if there are many piecewise linear functions in the problem. Second, the resulting BLP

5 is typically distinguished by the conflict between its upper and lower objectives; there are many variables which the upper objective wants to be as large as possible, while the lower objective wants them as small as possible. Experience suggests this type of BLP is difficult to solve.

Including user-optimized flow and nonconvex improvement functions, the BLP problem obtained by Ben-Ayed, Blair and Boyce [1988] is synthesized in the following:

MINZ F(Z,W) + G(C)

where [C, C, W, X and Y] solve:

MIN F(W) + G(C)

subject to:

%(¥) = 0

(2)

H2(X,Y) = 0

H3(Z,C,X) > 0

H4(Z,C,X) > 0

H5(Z,W) > 0

H6(Z) > 0

Z, C, C, W, X, Y > 0

where the function F is the improvement cost. The function G is the inter- regional system travel cost. The vector X is the amount of traffic on each link. Any traveller from one origin-node to a destination-node has a choice of different routes to use, corresponding to different sets of links. We use the components of the vector Y to indicate the number of people using each route. These numbers determine the numbers of users of each link, shown by the vector X; the relationship between X and Y is given by the equation constraints H2(X,Y) while the requirement that specified numbers of people go between specified nodes is given by the constraints H^Y) referred to as the conserva-

6 tion of flow conditions. F is the lower objective of nonconvex improvement cost functions. The components of the vector Z are the amounts of improvement on each of the different links. W is the vector of the second-stage variables used in computing the improvement cost functions as described previously in (1). G gives the interregional travel costs on each link for the user. C and C are vectors of second-stage variables giving total travel costs on each link for the system and the user, respectively. H3(Z,C,X) and H^(Z,Z,X) are the ine- quality constraints needed to the formulation of convex travel cost functions and the effect on improvement on decreasing those costs for the system and the user, respectively. Hr(Z,W) correspond to the nonconvex piecewise linear functions constraints. Hg(Z) are the improvement limit constraints. A more detailed description of the variables and the functions is provided in the Appendix A.

In the above formulation (2), the total number of variables (see Appendix A) is 2,683 and the total number of constraints is 820, excluding upper and lower bound constraints (improvement limit constraints and nonnegativity const- raints). Those numbers are partitioned as follows:

Variables Constraints

(excluding bound constraints)

112 (X)

112 (C) 120 (conservation of flow conditions )

112 (C) 112 (link flow definition constraints)

112 (Z) 224 (system travel costs formulation)

104 (W^) 224 (cumulative user costs formulation)

36 (Wo) 68 (convex improvement costs formulation)

2,095 (Y) 72 (nonconvex functions formulation)

2,683 820.

The Z are the only variables controlled by the upper problem; therefore among the 2,683 variables, 2,571 are lower. The nonconvex improvement cost functions all have 3 pieces; two constraints are needed by each link. The convex improvement functions require only one constraint per link because they

all consist of two pieces only.

An ideal solution (lower bound) for any BLP minimization problem can be obtained by ignoring the lower objective function and solving the problem as an LP. If we call (Z°, X°, C°, C°, Y°, W°) the obtained solution, the ideal solution is equal to F(Z ,W ) + G(C ). To get an incumbent solution (upper bound), we substitute Z by Z and solve the lower LP problem. If we call (X , C , C , Y , W ) the obtained solution, the incumbent solution is equal to F(Z ,W ) + G(C ). Let us refer to the gap between incumbent and ideal solutions as:

gap = (incumbent - ideal)/ideal .

The gap for the BLP problem (2) is larger than 111 % [Ben-Ayed 1988]; this high value, mainly due to the nonconvex functions formulation, makes the task of heuristic algorithms extremely difficult, if not impossible. Heuristic al- gorithms, such as the Parametric Complementary Pivot algorithm (PCP) [Bialas- Karwan-Shaw 1980, and Bialas-Karwan 1984] and the Grid Search Algorithm (GSA) [Bard 1983], lead to very unsatisfactory results when applied to BLP problems with combinatorial nature, such as Knapsack problems or nonconvex formulation problems [Ben-Ayed and Blair 1988].

The problem is even harder for branch and bound or related implicit enumera- tion techniques [Falk 1973, Gallo and Ulkiicu 1977, Fortuny-Amat and McCarl

1981, Bialas and Karwan 1982, Papavassilopoulos 1982, Candler and Townsley

1982, Bard and Falk 1982, Bard and Moore 1987]. The Bard-Moore algorithm, which is supposed to be one of the most efficient, does not accept a problem with more than 100 lower variables; our problem has more than 25 times this number.

As for any large NP-hard problem, the use of general algorithms is not efficient. A new algorithm taking advantage of the special structure of the problem has to be devised to solve the problem at hand.

(4)

2. A Proposed Algorithm

Formulation (2) shows that there are two separate lower objective functions. In fact, each of the two objectives has its own constraints that are indepen- dent of the constraints of the other objective, provided that Z are fixed (they are fixed by the upper objective). This can be better seen when the BLP problem (2) is restated as follows:

MINZ>0 F(Z,W) + G(C) (3)

such that {W) solve (4):

MIN F(W)

subject to:

H5(Z,W) > 0

W > 0

and {C, C, X and Y) solve (5):

MIN G(C)

subject to:

H(X,C,C,X,Y) > 0

C, C, X, Y > 0

where H(X,C,C,X,Y) > 0 substitutes the constraints H1(Y) = 0, H2(X,Y) = 0, H3(Z,C,X) > 0, H4(Z,C,X) > 0, and H6(Z) > 0.

The first lower problem (4) corresponds to the nonconvex functions formula- tion and the other lower problem (5) corresponds to the equilibrium problem. Because of the NP-hardness of BLP, it is more convenient to take advantage of the structure of the problem and solve it as two separate smaller problems.

As we mentioned in our discussion of improvement cost functions in the previous section, the BLP corresponding to (4) is difficult. However, the situation is different for the BLP corresponding to the equilibrium problem (5); the travel cost functions of the system and the user are very similar

(5)

9 [Ben-Ayed, Blair and Boyce 1988]. The coefficients of the two functions always have the same sign, and are even fairly proportional; therefore the use of BLP heuristics is safe for this second part.

Our approach to satisfy (5) tries to identify a solution that is good for both the upper and lower objectives by using a convex combination of the two:

tG(C) + (l-t)G(C)

so that we are looking at the problem:

MINZ F(Z,W) + tG(C) + (l-x)G(C)

such that {Z, C, C, X and Y) solve:

H(X,C,C,X,Y) > 0

Z, C, C, X, Y > 0

and such that (W) solve: (6)

MIN F(W)

subject to:

H5(Z,W) > 0

W > 0.

In general, a BLP solution (x ,y ) is called feasible if it belongs to the polyhedron (Ax° + By < b; x , > 0}; and satisfies the optimality of the lower solution y to the lower problem when the upper variable x is fixed at x . In our case, for a feasible solution to (6) to be feasible to (2), it must be the case that, for the given choice of the upper variables Z, the values of the lower variables are such as to minimize the lower objective G. This will clearly be the case for t = 0. To make the upper objective as small as pos- sible, we want to find the largest x for which this is the case.

We will assume that if, for some T , the solution to (6) is feasible, then the same will be true for any 0 < t < t . This is not always true, but counter-

10 examples are not easy to construct, and a simulation suggests this is a safe assumption. Granted this assumption, the optimal t, call it x , can be located by a binary search, which is much quicker than a grid search, as used in Bard [1983].

For a given t, (6) is still a BLP with too many lower variables to be solved in a straightforward way. We approach this problem by trying to identify links on which no improvement will be made. For those links, we replace the nonlinear improvement cost function f(Z) by aZ + B, chosen so that aZ + /3 < f(Z) for all Z. We are temporarily assuming that the costs for those links we think are unlikely to be improved are less than they really are. This produces a smaller, more tractable, problem. If the solution to this smaller problem does not use a link with the simplified, cheaper cost it certainly would not want an improve- ment with the real cost. In the case where the small problem does recommend an improvement based on the simplified cost, we must solve a new problem with the real cost as part of the formulation. Thus we solve a sequence of problems in which links with real costs are added when it seems necessary, but not other- wise. Fortunately, in practice the process terminates (no new links added) with a relatively small number of links showing improvement.

Let us call S the set of the links having convex or linear cost improvement cost functions, T the set of the links having nonconvex improvement cost functions, T the subset of T containing all links for which Z are different from 0, and T the subset containing the remaining elements of T. The links belonging to T are considered as candidates for improvement and must have their three-piece improvement cost functions f(Z) included in the formulation. Let (Z1, X1, C1, C1, Y1, W1) be the solution of the LP where all nonlinear functions f(Z) in (6) are substituted by aZ + J3 , for each link of T. We obtain the following BLP problem with relatively few lower variables:

11

MINZ ZagS Fa(Za,Wma) + Za£T1 Fa(Za,Wma) + Za£T2 (aQZa+l3a) + xG(C) + (l-x)G(C) such that [Z, C, C, X and Y} and {Wma, m=l,Ma, aeS} solve:

H(X,C,C,X,Y) > 0 Z, C, C, X, Y > 0

H5a(Za>Wma) * °

Wma * ° (7)

and such that {Wma, m=l,Ma, acT1} solve:

MIN EaeTl Zm=l,Ma Wma subject to:

Wma " Za - "^ma Wma * °-

where Ma is the number of breakpoints in the piecewise improvement cost function of link a; Fa is the upper objective function of nonconvex improvement cost on link a; and, Hca gives the corresponding constraints.

Let us call (Z2, X2, C2, C2, Y2, W2) the solution of (7). If there exists a

1 ") link j such that j does not belong to T and Z- is different from 0, then j

has to be subtracted from T , added to T , and (7) has to be resolved until all

? 1

links a having Za positive are elements of T , in which case the exact

solution of (6) is found.

We have constructed from the main BLP problem (2) two other secondary BLP formulations: a parameterized BLP (6) and a BLP with few lower variables (7). Problem (7) is solved to give a feasible and optimal solution to (6). If this solution is user-optimized (i.e. solves the lower LP problem (5) when Z is fixed at its optimal value for (7)), then it is feasible for (2) and a higher value of t can be tried. Otherwise, we continue our search for the optimum by decreasing the value of t.

For any solution (Z1, X1, C , C , Y1, W1), we have to distinguish between two different values. The first value is that of the upper objective function

12 of formulation (2), equal to F(Z,W) + G(C); let us call it 01. The second value is the actual cost incurred by the system given a specific value Z1 of Z; let us call it A1. A1 includes actual improvement cost and actual system travel cost. The actual improvement cost is obtained by plugging Z1 in the actual improvement functions f(Z), whether they are linear, convex, or nonconvex. The actual travel cost, on the other side, is obtained after we solve the lower LP problem (5) with Z fixed at Z1, obtain the solution (XJ, C J , C J , Y J ) and plug the XJ into the convex system travel costs; in other words, A1 is equal to fCZ1) + G(CJ). The first value 01 corresponds to a potential optimal, but not necessarily feasible solution; it allows to find ideal solutions to the BLP problem (2). The second value A1 corresponds to a feasible, but not necessarily optimal, solution; it allows to find incumbent solutions for (2).

The proposed algorithm is an iterative procedure that tries at each itera- tion to reduce the gap between ideal solution and incumbent solution. The procedure terminates when the gap is brought below a desired value e, or when the number of iterations exceeds a fixed limit N. The following flow chart gives a general description of the iterative procedure; more details are provided by Appendix B:

Searching for x (Using Binary Search)

Start with t=1

-

A. Solve (6)

B. Test whether solution of (6) is feasible to (2)

Feaj

sible

Inf easib!

Le

r 1 Mn1.n t 1«-~„_

PO M«1, ~ n- _~,.11M.~

Li 1 .

i iom

* i iai 6ej

.

\j£. .

>.e

oiua iici

13 The most difficult step in the algorithm is step A, in which (6) has to be solved. Using the concepts explained above in this section, the solution of (6) is obtained as shown in the following flow chart:

t Fixed

Al. Start with TX=0, T2=T

A2. Solve (7)

A3. Test whether new elements should be added to T

New

elements added

No element?

; added

A/. M~r» Tl r^r.T T2

K ( C\ r.~1,r~^

J. , new

Several improvements can be added to the algorithm to make it more effi- cient. The starting ideal and incumbent solutions can be found in a more effi- cient way. A better ideal solution for (2) can be obtained when solving the LP obtained after substituting at x = l all nonlinear functions f(Z) in (6) by ccZ+B; there is no situation better for the system than having cheap improvement and system-optimized flow. Also, the actual cost incurred by the system when the problem is solved as a BLP must be lower than the actual cost incurred when a simpler technique is used; otherwise, there is no justification for using complex techniques. Therefore, to obtain an incumbent solution, we can just solve the problem as an LP; we approximate improvement cost functions by their best linear fit, ignore the lower objective and solve the problem. Let us call (Z°, X°, C°, C°, Y°) the obtained solution, A0 is the value of the starting incumbent solution. Using those techniques makes the gap between starting ideal

14 solution and starting incumbent solution as low as 3 % instead of the 111 % found earlier in the previous section.

Moreover, since the procedure is iterative, it is more efficient to use the information from the previous iterations in order to make the next one easier to solve. One way to do this is to introduce to the problem the constraint:

L < F(Z,W) + G(C) < U

where L and U are the values of the current ideal and incumbent solutions, respectively.

Similarly, the solution of step 2 may require solving (7) more than once.

9 9 9 9 9

Let us assume that we solved (7), obtained the solution (Z , X , C , C , Y ,

9

W ) and have to add a new element and resolve (7). We use the fact that the new

cost will be at most as low as the value we got for the objective when we used

9 1

cheap linear improvement costs (a-Z- + J3-) for the links j to be added to T ;

which gives a lower bound for the solution. An upper bound can also be found by

9

noticing that the new cost is at least as high as the actual cost f(Z )

9

incurred by the system for an added capacity equal to Z . The difference

9

between upper and lower bounds, when step 2 has to be repeated, is E^ti (ai^i + Bj) - f(Z2).

Finally, a feasible solution to a BLP problem is obtained by finding the optimal solution to the lower problem after substituting values for the upper variables. In our case, any optimal solution (Z1, X1, C1, C , Y1, W1) of the BLP problem (6) satisfies the optimality requirement of W1 to the lower problem (A); therefore (Z1, X1, C1, C1, Y1, W1) is a feasible solution of the BLP problem (2) if it satisfies the optimality requirement for the second problem (5). Even when the solution (Z1, X1, C1, C1, Y , W1) is not feasible a new solution (Zk, Xk, Ck, Ck, Yk, Wk) can be obtained, with feasibility guaranteed.

15 It is known from the theory of Linear Programming [see for instance Chvatal 1983, Chapter 10 pp. 148-168] that given two LP problems LP1: (MIN ex, Ax = b, x > 0} and LP2: (MIN ex, Ax = b' , x > 0), where b and b' are different, any basic feasible solution x of LP2 that has the same nonbasic variables as the optimal solution x of LP1, is an optimal solution of LP2. Therefore to generate feasible solutions for BLP problem (2),. which is equivalent to generating optimal solutions to the lower problem, we can solve BLP problem (7) with the additional requirement that all nonbasic variables of the solution (XJ, CJ , C J , Y J ) of the lower problem (5) with Z fixed at Z1 and all nonbasic slack and surplus variables be locked. This is added to the algorithm as shown in Appendix B.

Regarding the reliability of the algorithm, there are no heuristics involved in finding the incumbent and the ideal solutions. The values given by the algorithm for those solutions are exact. As long as the algorithm converges, the solution it gives is the actual optimum within the accuracy desired. However, it is possible that one finds bad examples for this algorithm where the convergence is not satisfactory; in such a case the algorithm ends with a large gap between upper and lower bounds, but does not give a wrong solution.

3. Solution of the Real World Problem

When trying to solve the BLP problem (7) we faced a major constraint, since we could find no reliable BLP software that could handle problems this large. Fortunately, (7) can be transformed into an equivalent Mixed Integer Program- ming problem (MIP), with the number of zero-one variables in the latter equal to the number of lower variables in (7). It should be emphasized that the use of MIP does not mean that it is easier to solve. MIP and BLP are both NP-hard problems and are equally difficult to solve; however, MIP is older and benefits

16 from the availability of good software to solve it. One such package is the Zero/One Optimization Method (ZOOM), which is an extension of the XMP Linear Programming system. ZOOM and XMP are both written in Fortran 77 and revised in 1986 by R. E. Marsten from the Department of Management and Information Systems at the University of Arizona. A description of the XMP library is given in Marsten [1981]. The subroutines of ZOOM and XMP are used by our program whenever an LP or an MIP needs to be solved. The computational study, to be presented in this section, was conducted on the CRAY X-MP/24 supercomputer of the National Center for Supercomputing Applications at the University of Illinois at Urbana-Champaign.

First, we show how to transform BLP (7) into MIP. The constraint:

Wm = MAX{(Z - qm), 0)

is equivalent to:

either: Wm = Z - qm, or: Wm = 0

which can be equivalently restated, after introducing zero-one variables Vma, as :

Wm - Z < -qm + MVm, -Wm + Z < qm + MVm

(8)

Wm * "(l-V, "Wm * ^-V

where M is a large number (it is sufficient to make M larger than the maximum possible road improvement).

The formulation of (7) as MIP is obtained by replacing the lower problem in (7) by the constraints (8) for each link a. The constraints Wm < M(l-Vm) are trivial because of the nonnegativity of Wm; we take them out, and obtain the following problem to be solved whenever we need to solve (7):

17

«INZ ZaeS Fa(Za'Wma) + EaeTl Fa^a'Wma) + ZaeT2 (°aZa+6a) + *G^ + (l-t)G(C) such that (Z, C, C, X and Y} and {Wma, m=l,Ma, aeS) solve:

H(X,C,C,X,Y) > 0

Z, C, C, X, Y > 0

H5a(Za>Wma) * 0

and such that {Wma, m=l,Ma, aeT ) solve:

(9)

"Wma + Za " MVma * ^ma

Wma " Za " MVma * "^ma

*ma + MVma * M Vma e (0, 1).

The technique used to transform (7) into MIP is different from the technique used by Fortuny-Amat and McCarl [1981]. The use of this latter would have doubled the number of zero-one variables (requiring a zero-one variable for each lower variable and a zero-one variable for each lower constraint).

The large size of the problem (2) is mainly due to the high number (2,095) of routes included in the formulation. Since not all those routes are going to be used, the problem can be simplified by keeping the most attractive ones and discarding the rest. We will solve the problem with the reduced number of routes (we refer to this problem as the small version of the problem), and we solve also the original problem with all routes included; next we will compare the solutions of the two problems. The attractive routes are found by solving both the user equilibrium problem (5) and the system equilibrium problem (same as (5) except that G(C) is replaced by G(C)) as we increase the values of the entries of the trip matrix to make the users and the system choose their next desirable routes. When solving the system equilibrium, we vary also the improvement cost because of its effect on the routes choice. The accumulated number of routes chosen by both the system and the user reaches 389 as the flow

18 fluctuates between the original trip matrix and three times that matrix. Those 389 routes, averaging more than three routes per origin destination pair are the ones to be included in the small version of the problem as compared to the 2,095 included in the large version.

About 15.25 minutes CPU time and 1.4 million words (64 bits per word) computing storage space were required to obtain the solution of the small version of the problem. At iteration 0, we compute starting ideal and incumbent solutions using the ordinary techniques of BLP; the obtained gap is 111.36 %; next, we use the techniques proposed in Section 2 to get better starting solutions. At the same iteration, we solve the problem as an LP and we use the actual cost incurred by the system (namely 257,037.230) as a new incumbent solution. Then we start the iteration 1 with T=l, TflAX13-'- anc* TMIN=^' When we find, in the first step (A1-A2 in the flow chart) of iteration 1, the list of links that are candidates for improvement, we use the solution as a new better ideal solution; the gap decreases to 3.03 %. In the second step (A3-A4-A2 in the flow chart), the MIP (9) is solved with only six integer variables. The solution obtained shows that no more integer variables need to be added; a slightly improved ideal solution is found for the problem (new gap equals 2.93 %) . The feasibility of the solution is tested in step 3 (B in the flow chart); the flow is not user-optimized. We generate a feasible solution using the solution obtained when testing feasibility; a new incumbent solution is obtained and the gap is reduced to 2.57 % at the end of the first iteration. At iterations 2 and 3 there is no success in improving the incumbent solution. Iteration 4, where x = .125, i^x = -250 and t^IN = 0, gives another slight improvement at the end of step 3, when generating a new feasible solution. The procedure is stopped at Iteration 5 because the solution seems to be reaching a steady state; Iteration 5 gives exactly the same solutions as Iteration 4 in all steps. The final solution retained incurs a cost to the system equal to

19 256115.006.

The small version of the problem is not hard to solve even on an ordinary computer. However, the large version is more demanding; it required about 4 minutes CPU time and 2.7 million words computing storage space for running one single iteration. No more iterations were needed because the solution, at the end of the first iteration, was the same as the solution obtained by the small version of the problem at that point; which suggests that our choice for the attractive routes was successful.

Table 1 gives a summary of the intermediate and final results related to the solution of the real world problem; the complete presentation of those results is provided by Appendix E in Ben-Ayed [1988]. The Table includes only the iterations and the steps resulting in an improvement of the gap (increase of the ideal solution or decrease of the incumbent solution). It can be seen from the table that, as is usually the case for iterative algorithms, most progress is made during the first iterations while convergence is slower as the number of iterations increases. The first two columns of the Table are very different from the others because of the instability of the "maximum" variables W in the absence of the corresponding lower objective function; the negative value of the improvement in the first column is a consequence of this instability. The fourth row of the Table specifies whether a solution is ideal or incumbent; when a solution is incumbent, the rows 5, 6 and 7 refer to the actual cost incurred by the system (A1), and when the solution is ideal, those rows refer just to the value of the objective function (01). Starting from the third column, the solution has a tendency to stabilize; the numbers of used links, used routes and improved links are almost the same in all six last columns.

Several results can be inferred from the computational experience and the solution of the real world problem. Concerning the tradeoff between efficiency and accuracy, the equivalence of the solutions of the large version and the

20 small version shows that a complex problem can be simplified without affecting the optimality of the solution. However the simplification must be done carefully and efficiently; other simplifications, such as reducing the problem to a single-level could lead to bad results.

The actual cost incurred by the system when the problem is solved as an LP exceeds the actual cost incurred when a BLP solution is used by 922.224 thousands of Tunisian Dinars. There are two reasons for not having this difference as high as it is supposed to be. First, the travel cost at stable flow is a one-piece linear function that does not depend on the added capacity. However, if stable flow, which is the overwhelming proportion of the flow, does not depend on the added capacity, which is the only instrument in the model for the system to influence the user's choice of the routes, the ability of the system to affect the user-optimized equilibrium is almost paralyzed. Second, the limitation of the added capacity resulted in low improvement costs. It can be seen from Table 1 that improvement costs are about fifty times smaller than travel costs. The introduction of the sophisticated BLP formulation of the improvement costs did not give much saving as compared to the simpler LP formulation because those costs are already low according to the data of the problem. The ability of BLP to give better results is conditioned by the availability of realistic data; providing more representative data to our problem would definitely lead to a larger difference between the solution of the problem when solved as a BLP and its solution when solved as a single level .

Another harmful simplification would be the inclusion of strict capacities on the links, even when the overflow is very small on all links, as is the case in our solution. Imposing strict capacities results in the violation of Wardrop's first condition and therefore the collapse of the equilibrium, which is one of the bases of the problem.

Baene

MEDITERRANEAN

Cape Bon

Pwntslkna (ITALY)

boh Peleg/t (fTALYI

MEDITERRANEAN SEA

100 K.loT^irri

Figure 1 The Links to Bo Improved

22

Summary of the Results

Iteration

0

0

0

1

1

1

1

4 & 5

Step

-

-

-

1

2

3

4

4

Value of t

1.000

1.000

1.000

1.000

1.000

1.000

1.000

< .125

Solution

ideal

incumb.

incumb.

ideal

ideal

incumb.

incumb .

incumb.

Travel Cost

255328.

273736.

252428.

245152.

245320.

252577.

251724.

251680.

Improvement

-124325

3153.

4609.

4329.

4410.

4410.

4424.

4435.

Total Cost

131003.

276889.

257037.

249481.

249730.

256987.

256148.

256115.

Routes Used

278

279

276

275

276

276

275

275

Links Used

99

100

97

97

97

97

97

97

Linkslmproved

18

18

14

14

14

14

14

15

Gap (%)

-

111.36

96.21

3.03

2.93

2.91

2.57

2.56

Table 1

In the final solution, 275 routes and 97 links are used and 15 links need to be improved. Among the 112 links included in the empirical study, 15 are not used by inter-regional traffic; one cannot tell whether those links are redundant in the inter-regional network or their lack of use is due to low values of the corresponding entries in the trip matrix. The study is more concerned with the links to be improved; those are shown on the map in Figure 1. Almost all improvements happen to be on the roads connecting Tunis, the capital, to its major neighboring cities. This result can be intuitively predicted by a simple look at the trip matrix [Ben-Ayed, Blair and Boyce 1988]; the trips originating or ending in Tunis are 56 % of the sum of all the trips of the matrix. A similar recommendation was made by the Plan Directeur Routier [ SETEC 1982 pp. 6-8] stating that the roads corresponding to the exists of Tunis will be highly congested by the year 2000 if no improvements are made. In contrast, the entries of the trip matrix corresponding to regions such as the

23

southern ones are very low, which results in no improvement even for unpaved roads .

The

Links to B<

2 Improved

Link

Flow

Existing

Added

Improvement

Limit on Added

Capacity

Capacity

Cost

Capacity

1

2144

1370

774

592

887

3

2537

1637

899

394

899

4

2112

1115

997

297

1083

6

2015

1055

960

615

1070

10

1980

814

1166

484

1460

12

1052

448

604

84

2046

14

306

271

35

22

1354

19

1056

447

609

89

2046

20

2275

1173

1101

463

1101

26

2537

1637

899

245

899

28

2010

1370

640

362

887

30

1517

1370

147

60

887

73

2112

862

1250

394

1496

77

1772

1055

717

156

1070

90

2058

1370

687

179

887

Table 2

In considering the specific link improvement, Table 2 gives for each link to be improved the interregional flow, the existing capacity available to this flow (60 % of the total existing capacity), the added capacity, its cost and the maximum added capacity allowed by the formulation. The improvement required for the link connecting nodes 4 and 29 is very small; a slight improvement of the surface of this link gives it exactly the same capacity as the link connecting nodes 29 and 28 which does not need improvement although it is closer to the capital. All other improvements are more significant and three of them, namely those on links 3, 20 and 26, require the maximum added capacity allowed by the formulation. In each of those links the flow is higher than the new capacity; more detailed study is needed to include the possibility of upgrading them to three or four lane highways. Link 90 is also congested; however the decision maker responsible for the system does not add more

24 capacity although he has the possibility to do so. The reason is that the congestion on those roads is less expensive than the addition of more capacity.

4. Conclusions

BLP remains a little known technique, rarely used despite all its potential capabilities. The computational difficulties of BLP may not be the main reason of its infrequent applications; there are other optimization techniques, such as Mixed Integer Programming, that are not easier to solve but are widely used. BLP is a new model; a great effort is needed to help people know it and take advantage of its powerful formulations. Developing efficient and reliable software that uses data structure and that includes several heuristics and branch and bound algorithms would have considerable effect on increasing the use of BLP.

The empirical study conducted in this research demonstrated that BLP is tractable and can be efficiently used to formulate and solve even complex real world problems such as the design and the improvement of a transportation network. The complexity of BLP should not be a reason for formulating bilevel problems as single- levels ; the solution to the single-level problem might happen to be far away from the actual optimum, and the gain in simplicity and computation time may not be worth the loss in optimality. By taking into account the special structure of the problem at hand and making use of the powerful computers available to us nowadays, it is always possible to solve the BLP problem and get a better solution than the one obtained when approximating it by a single level. For any BLP problem, the use of any related algorithm always gives a solution that is better than, or at worst the same as, the solution obtained when ignoring the lower objective and solving the problem as a single-level. In other words, the relative inefficiency of BLP algorithms does not justify the formulation of bilevel problems as single-levels.

25 Appendix

A. Definition of the Variables and the Functions in Formulation (2)

F(Z,W) = Ea=liU2 Fa(Za>Wma) = Ia=ljll2 ((blaZa+b0a) + Em=1>Ma(bm+lja-bma)Wma

F(W) = ^a=ljii2 Ia(Wma) = Za=l,112 Zm=l,Ma Wma

W) = Za=l,112 GaCCa) G(C) = Ea=l,U2 Ga(Ca)

H1(Y) = 0 is defined as: H2(X,Y) = 0 is defined as: H3(Z,C,X) > 0 is defined as:

= Za=l,112 ^Ca--4c0aka) = Za=l,112 ^a

H4(Z,C,X) > 0 is defined as:

H5(Z,W) > 0 is defined as:

H^(Z) > 0 is defined as:

for each origin-destination pair od:

ZreRod Yr ~ uod for each link a:

Xa " Zr=l,2095 5arYr ~ ° for each link a:

Ca " <WXa + -4ka) * °

ca " cla(xa + -4ka) + (cla " <Wza + dla * ° for each link a:

Ca * c0a<xa + -4ka)

Ca * ^la^a + -4ka) " tela " ^Oa)Za + <ha for each link a:

Wma " Za + %,a ^ ° m=1>Ma

for each link a:

Z„ ■- q3r > 0

'a ^3a Z, C, C, W, X, Y > 0 is defined as: for each link a:

Za> Xa' Ca' ^a> Wma - °

m=l,M.

for all reR

od:

Yr > 0

where Cq3 and c^a are the slopes of the system travel cost on link a at stable and unstable flows, respectively; cQa and cla are the slopes of the cumulative user travel cost at stable and unstable flows, respectively; dla and dla are

26 the intercepts of the travel cost at unstable flow of the system and the cumulative user, respectively; Mfl is the number of breakpoints in the improve- ment cost function in link a; Mfl is 0 when the curve is linear, 1 when the curve has 2 pieces and 2 when it has 3 pieces; bga is the intercept of the first piece of the improvement cost function on link a; bma is the slope of the piece delimited by qm_^ a and qma, m=l,Ma+l, qQa being equal to zero and q^a+^ equal to q3a, the maximum improvement allowed by the model; kfl is the existing capacity of link a; Xa is the flow on link a; Cfl is the system total travel cost on link a; C_a is the cumulative user total travel cost on link a; Za is the number of passenger car units (PCU) added to the capacity of link a; W_a is the maximum of (Za~qma) and 0; Y is the flow on route r; R j is the set of all routes from origin o to destination d; uQ(^ are the entries of the trip matrix; 6ar is binary number equal to 1 when link a belongs to route r, and equal to 0 otherwise.

B. Description of the Algorithm

When describing the algorithm, we use T, T and T , 01 as defined in Section 2:

Iteration 0

Find a current ideal solution, a current incumbent solution and calculate the current gap for BLP problem (2).

Call Termination test.

Set: i = 1, xMAX = 1, tmin =0, 1=1.

Start iteration I. Iteration I

Set: T1 = <f>, T2 = T. Step 1

Solve the LP obtained after substituting all nonlinear improvement functions by aZ + 6 for all links to find the links of T that are

27 candidates for improvement.

Get the solution (Z1, X1, C1, C1, Y1, W1).

For every link j of T , if the corresponding Zi is not equal to zero,

7 1

subtract j from T and add it to T .

Step 2

Solve the BLP problem (7) with the set of lower variables equal to {Wma:

bm+l,a-bma < °> m=1>25 asTl)'

Get the solution (Z2, X2, C2, C2, Y2, W2).

If there are elements j of T such that Z- is positive, then:

9 i

Subtract from T all elements j and add them to Tx Repeat Step 2 Else:

The optimal solution of (6) is obtained

End If.

2

If x = 1 and 0 > value of current ideal solution, then:

Update ideal solution and calculate new gap Call termination test End If. Step 3

Solve the lower LP problem (5) with Z equal to Z.

Get the solution (X3, C3, C3, Y3) .

9

If A < value of current incumbent solution, then:

Update incumbent solutions and calculate new gap

Call termination test End If.

If A2 = 02 (or A2 ~ 02), then:

(Z2, X2, C2, C2, Y2, W2) is feasible

Set: x

MIN " T> x = (TMAX + T)/2

28 Else:

Try to improve feasible solution Set: xMAX = T, t = (xMIN + t)/2 End If. •1 = 1 + 1. Start iteration I. Termination Test

If I > N, then:

Number of iterations exceeded before reaching desired accuracy

Incumbent is the best solution found

Stop Else if gap < e:

Incumbent solution is optimal within the specified accuracy e

Stop End If.

Return.

Try to improve feasible solution

Solve (6) while locking the nonbasic variables (including slack and surplus variables) of the LP problem (5) solved with Z = Z .

Get the solution (Z4, X4, C4, C4, Y4 , W4).

If 0 < value of current incumbent solution, then:

Update incumbent solution and calculate new gap Call termination test End If.

References

BARD, J. F. 1983. An Efficient Point Algorithm for a Linear Two-Stage Optimiza- tion Problem. Operations Research 31, 670-684.

29

BARD, J. F. and J. E. FALK 1982. An Explicit Solution to the Multi-Level Programming Problem. Computers and Operations Research, 9, 1, 77-100.

BARD, J. F. and J. T. MOORE 1987. A Branch and Bound Algorithm for the Bilevel Programming Problem. Department of Mechanical Engineering, University of Texas, Austin, TX.

BEN-AYED, 0. 1988. Bilevel Linear Programming: Analysis and Application to the Network Design Problem. Ph.D. Thesis. Department of Business Administra- tion. University of Illinois, Urbana-Champaign.

BEN-AYED 0. and C. E. BLAIR 1988. Computational Difficulties of Bilevel Linear Programming. Submitted to Operations Research.

BEN-AYED 0., D. E. B0YCE and C. E. BLAIR 1988. A General Bilevel Linear Programming Formulation of the Network Design Problem. Transportation Research B22.

BEN-AYED 0., C. E. BLAIR and D. E. B0YCE 1988. Construction of a Real World Bilevel Linear Program of the Highway Network Design Problem. Submitted to Transportation Research.

BIALAS, W. F. and M. H. KARWAN 1982. On Two-Level Optimization. IEEE Transac- tion on Automatic Control AC-27, 1, 211-214.

BIALAS, W. F. and M. H. KARWAN 1984. Two-Level Linear Programming. Management Science 30, 8, 1004-1020.

BIALAS, W. F. , M. H. KARWAN and J. P. SHAW 1980. A Parametric Complementary Pivot Approach for Two-Level Linear Programming. Research Report No. 80-2, Operation Research Program, Department of Industrial Engineering, State University of Buffalo.

BRACKEN J. and J. T. McGILL 1973. Mathematical Programs with Optimization Problems in the Constraints. Operations Research 21, 37-45.

BRACKEN J. and J. T. McGILL 1974a. Defense Applications of Mathematical Programs with Optimization Problems in the Constraints. Operations Research 22, 1086-1096.

BRACKEN J. and J. T. McGILL 1974b. A Method for Solving Mathematical Programs with Nonlinear Programs in the Constraints. Operations Research 22, 1097- 1101.

CANDLER W. and R. NORTON 1977. Multilevel Programming and Development Policy. World Bank Staff Working Paper 258, IBRD, Washington, DC.

CANDLER, W. and R. T0WNSLEY 1982. A Linear Two-Level Programming Problem. Computers and Operations Research 9, 1, 59-76.

CANDLER, W. and R. TOWNSLEY 1985. Optimizing Subsidy Payments in Linear Programming. IEEE Proceedings of the International Conference on Cyber- netics and Society, 930-934.

CASSIDY, R. G., M. J. L. KIRBY and W. M. RAIKE 1971. Efficient Distribution of Resources Through Three-Levels of Government. Management Science 17, 8,

30

B-462-B-473.

CHVATAL, V. 1983. Linear Programming, Freeman, New York.

DESILVA, A. H. 1978. Sensitivity Formulas For Nonlinear Factorable Programming and Their Application to the Solution of an implicitly Defined Optimiza- tion Model of U.S. Crude Oil Production. D.Sc. Thesis, George Washington University, Washington, DC.

FALK, J. E. 1973. A Linear Max-Min Problem. Mathematical Programming 5, 169- 188.

FALK, J. E. 1977. A Nonconvex Max-Min Problem. Naval Research Logistics Quarterly 24, 3, 441-450.

FALK, J. E. and G. P. McCORMICK 1982. Mathematical Structure of the Interna- tional Coal Trade Model. U.S. Department of Energy Report DOE/NBB-0025 , Washington DC.

FORTUNY-AMAT, J. and B. McCARL 1981. A Representation and Economic Interpreta- tion of a Two-Level Programming Problem. Journal of Operational Research Society 32, 783-792.

GALLO, G. and A. ULKUCU 1977. Bilinear Programming: An Exact Algorithm. Mathematical Programming 12, 173-194.

LEBLANC, L. J. and D. E. BOYCE 1986. A Bilevel Programming Algorithm for Exact Solution of the Network Design Problem with User-Optimal Flows. Transpor- tation Research 20B, 3, 259-265.

MARCOTTE, P. 1986. Network Design Problem with Congestion Effects: A Case of Bilevel Programming. Mathematical Programming 34, 142-162.

MARSTEN, R. E. 1981. The Design of the XMP Linear Programming Library. ACM Transactions on Mathematical Software 7, 4, 481-497.

PAPAVASSILOPOULOS, G. P. 1982. Algorithms for Static Stackelberg Games with Linear Costs and Polyhedra Constraints. Proceedings of the 21st IEEE Conference on Decision and Control, 2 and 3, 647-652.

SETEC Economie et SOTINFOR 1982. Plan Directeur Routier. Rapport General Tomes 1 et 2, Republique Tunisienne, Ministere de 1 ' Equipement , Direction des Ponts et Chausees, Sous-Direction des Etudes.

SHERE, K. and J. WINGATE 1976. Allocation of Resources to Offensive Strategic Weapon Systems. Naval Research Logistics Quarterly 23, 1, 85-93.

WARDROP J. G. 1952. Some Theoretical Aspects of Road Traffic Research. Proceed- ings , Institution of Civil Engineering, Part II, 1, 325-378.

ECKMAN

INDERV INC.

JUN95