Location and sizing of offshore platforms for oil exploration

Location and sizing of offshore platforms for oil exploration

202 European Journal of Operational Research 58 (1992) 202-214 North-Holland Location and sizing of offshore platforms for oil exploration Pierre Ha...

853KB Sizes 2 Downloads 105 Views

202

European Journal of Operational Research 58 (1992) 202-214 North-Holland

Location and sizing of offshore platforms for oil exploration Pierre Hansen *

GERAD, l~cole des Hautes Etudes Commerciales, 5255 Avenue Decelles, Montreal, Que., Canada H3TIV6, and RUTCOR, Rutgers University, New Brunswick, NJ 08903, USA

Eugenio de Luna Pedrosa Filho PETROBRAS, Av. Chile 65, Rio de Janeiro 2013Z Brazil

Celso Carneiro Ribeiro ** GERAD and Ecole Polytechnique de Montrdal, Avenue Decelles 5255, Montrdal, Qudbec, Canada, H3T1V6 Received April 1990; revised November 1990

Abstract: The problem of optimal location and sizing of offshore platforms for oil exploration can be formulated as follows: given a set of oil wells to be drilled and a set of possible locations for platforms of standard sizes, determine the location and capacity of the platforms to be built, as well as the assignment of wells to platforms from which they will be drilled in order to minimize investment costs. This problem is formulated as a multicapacitated plant location problem and both its exact and its approximate solution (by MIP/MPSX and by a Tabu Search heuristic) are discussed. Current and planned use of the program implementing this approach at PETROBRAS (the Brazilian state-owned company in charge of oil prospection, exploitation and distribution) is discussed. Keywords: Oil exploration, multicapacitated plant location, facility location, Tabu Search I. Introduction As pointed out by Haugland and Hallefjord (1988), once the decision to develop an offshore oil field has been taken, many decisions must be made, some concerning the design of the production system and others concerning its operation. At the design level, some of the most important decisions are the number of platforms, the number of wells, the location and size of platforms, the location of wells, and the assignment of wells to platforms. At an intermediate level, the decisions are the scheduling of platforms operation, the scheduling of wells operation, and the abandonment time. Finally, at the operation level, the decisions concern the production rates over time, the injection rates over time, and enhanced oil recovery. Several models for the optimal development and exploitation of offshore oil fields can be found in the literature. Devine (1973) discusses the problem of minimizing the cost of drilling dual completion oil wells (i.e., two oil targets which are produced together through a single hole). The problem is formulated as a symmetric assignment problem and solved by a branch-and-bound algorithm. The problem of * Work of this author was done in part at the Catholic University of Rio de Janeiro and supported by CNPq. Partial support was also provided by grants AFOSR 89.0512 and 90.0008 to Rutgers University. * * On leave from the Catholic University of Rio de Janeiro. Present address: Catholic University of Rio de Janeiro, Department of Computer Science, R. Marquis de S~o Vicente 225, Rio de Janeiro, Brazil. Work of this author was partially supported by Conselho National de Desenvolvimento Cienfffico e Teenol6gieo under grant 202005/89.5. 0377-2217/92/$05.00 © 1992 - Elsevier Science Publishers B.V. All rights reserved

P. Hansen et aL / Optimal location and sizing of offshore platforms

203

locating production wells was studied by Rosenwald and Green (1974), while that of determining a minimum-cost drilling schedule was addressed by Lilien (1973). Babayev (1975) has formulated the exploitation of oil and gas fields as an optimal control problem consisting of concave separable constraints and an objective function. His model focuses on the number of wells to drill in each layer of multilayer fields, assuming that the production rate profiles are known or specified in terms of the number of wells. Beale (1983) describes a model that has been developed by Scicon and BP Petroleum Development Ltd. to help BP to study alternative development plans for an offshore gas field. This model takes into account reservoir production, compressor and pipeline capacity constraints and was applied to the West Sole gas field in the North Sea. Haugland and Hallefjord (1988) present a linear programming model for finding production profiles for the wells optimizing some given criterion, such as the net present value of income, total production or closeness to some desired profile. Their model is also expanded to include the determination of the location of the wells and the time when they should be drilled, using an integer programming formulation. Computational results obtained with the use of a mixed-integer linear programming code are presented. The authors report that these models have been tried out in connection with an early evaluation of a gas field in the North Sea, where STATOIL has been assigned the responsibility as operator. They also mention the possibility of extending the model even more, in order that it could also find the optimal location of a fixed number of platforms. McFarland, Lasdon and Loose (1986) study optimal development planning and management of a petroleum reservoir. The problem is formulated as an optimal control model, whose components are the discounted cash flow submodel, the reservoir submodel, and the production routine/well submodel. The objective is to maximize the discounted after-tax profits with respect to the number of wells drilled and the reservoir production rate. The decision variables are the drilling schedule, the abandonment time, and the platform size (represented as a continuous variable) of a single platform whose location is known. The problem is solved using a generalized reduced-gradient code and computational results are reported. More recently, Aboudi et al. (1989) described the development of a long-term planning model for the sequencing of petroleum production activities on the Norwegian shelf, with emphasis on the development of transport systems for petroleum products from the producing fields to gas consumers and oil terminals onshore. Their model can be seen as a multiperiod network (which actually consists of two subnetworks, one for oil and one for gas) design problem with some extensions. Source nodes correspond to oil or gas fields, while sink nodes correspond to customers. The links of the network represent the possible ways of transporting oil or gas from one node to another (a gas link corresponds to a pipeline, while an oil link corresponds to a pipeline or a loading buoy and an associated transport route). A number of heuristics were implemented within the framework of a standard branch-and-bound code to solve the mixed integer programming model. Durrer and Slater (1977) present a survey of models for petroleum production (drilling, field development, reservoir simulation, production planning and operations, enhanced recovery processes) and McFarland, Lasdon and Loose (1986) give a fairly complete review of the literature on development planning and management of petroleum reservoirs. In this paper, we focus our attention on the design problem associated with the optimal location and sizing of platforms. After an oil field is discovered and evaluated by exploratory wells, possible locations for the production wells are decided. The field should be explored from wells drilled directionally from fixed platforms (typical figures for the number of wells in a field are 100 to 200). Drilling costs depend upon the length and the angle of the hole drilled from the platform to the target (perforation costs average 5 million dollars per drill; a typical offshore drill in the North Sea, with a depth of 5000 meters and a water depth of 150 meters, costs around 8 million dollars). Platform costs depend on the water depth and on the number of wells to be drilled and exploited from the platform (the costs of an offshore platform average some tens of millions of dollars). The problem of optimal location and sizing of offshore platforms for oil exploration can be formulated as follows: given a set of oil wells to be drilled and a set of possible locations for platforms of standard sizes, determine the location and capacity of the platforms to be built, as well as the assignment of wells to platforms from which they will be drilled, in order to minimize investment costs.

204

P. Hansen et al. / Optimal location and sizing of offshore platforms

This problem was first addressed in the literature by Devine and Lesso (1972), who proposed a location-allocation type heuristic for the continuous location problem (in which the locations of the platforms are not restricted to a finite set of possible sites), given the number of platforms to be built. The procedure is applied several times, for different numbers of platforms. Their approach is very time consuming and the quality of the results is influenced by the initial solutions. In spite of that, it was considered in a first model developed at PETROBRAS (the Brazilian state-owned company in charge of oil prospection, exploitation and distribution) in the seventies. Cluster analysis was used to solve the allocation problem. Devine and Lesso's work was extended by Frair and Devine (1975), who presented a model for optimizing the economics of developing a given offshore oil field. The objective of this model is the maximization of discounted after-tax cash flows subject to production-limiting constraints. The problem is formulated as a mixed integer programming model and is decomposed into two subproblems, the first of them being the platform location problem considered by Devine and Lesso. The second one is a well drilling, platform placement and reservoir production scheduling mixed integer programming model, which is solved by the MIP/MPSX code. Computational results are presented. The problem of optimal platform location is also mentioned in Haugland and Hallefjord (1988) (see above), as a possible extension of their basic model for finding production profiles and well location. Dogru (1987) also addressed this problem. The location of a fixed number of platforms of given size is dealt with by a graph partitioning model solved by a heuristic location-allocation algorithm (the nodes of the graph are the well and platform locations, while the weight associated with each edge connecting a well to a platform is given by their horizontal deviation). Again, computational results are discussed. The rest of this paper is organized as follows. We present in Section 2 the formulation of the platform location and sizing problem as a multicapacitated plant location problem, giving two alternative integer programming models. An exact algorithm based on the M I P / M P S X integer programming code is discussed in Section 3, where two alternative linear relaxations are compared in terms of the precision of the lower bounds they provide and of the computation times obtained with each of them. A heuristic of Tabu Search type is proposed and described in detail in Section 4. Computational results are presented in Section 5. We conclude with comments on algorithmic aspects and on issues concerning the implementation of the approach proposed here.

2. Model

As mentioned above, the problem of optimal location and sizing of offshore platforms can be expressed as a Multicapacitated Plant Location Problem (MCPLP). The MCPLP is an extension of the Capacitated Plant Location Problem (see, e.g. Guignard and Spielberg, 1979, Jacobsen, 1983, Van Roy, 1986, and Leung and Magnanti, 1989). A first formulation of MCPLP is due to Neebe and Rao (1983); it considers at each potential location increments in the capacity of the platform which may be built there. Setting demands at 1 (i.e., setting rj = 1, Vj, in Neebe and Rao's model), assuming the same number of standard sizes at each location and using the oil exploration terminology, their model can be expressed as follows: minimize

z = E E cijxij + E i~l j~J

subject to

Y'. xij --- 1

E fikYik

(1)

i~I k ~ K

Vj ~ J,

(2)

E X i j ~ E bkYi~ jEJ k~K

VieI,

(3)

Yik <'
Vi ~ I, Vk ~ K \ { 1}, Viii, Vj~J,

(4) (5)

Vi ~ I, Vk ~ K

(6)

i~l

XijE~- {0,

1}

Yik ~ {0, 1}

P. Hansen et al. / Optimal location and sizing of offshore platforms

205

where: I : the set of potential locations for platforms, J : the set of oil wells to be drilled, K : the set of increments in standard size for the platforms, cij : the cost of drilling well j from platform i, fik : the additional cost of the k-th increment in standard size for a platform built at location i, b k : the k-th capacity increment in standard platform size, xij : is equal to 1, if oil well j is drilled from platform i, and is 0, otherwise, and Y~k : is equal to 1, if a k-th increment in standard size is given to the platform built at location i, and is 0, otherwise. The objective function (1) expresses that investment costs comprise costs for building the platforms and for drilling the wells; constraints (2) state that each oil well must be assigned for drilling and exploitation to exactly one platform; constraints (3) imply both that if no platform is built at location i then no oil well can be drilled from there, and that if a platform is built there the number of oil wells drilled from it should not exceed its standard size; the logical constraints (4) translate the fact that one cannot add increment k to the size of a platform built at location i unless previous increments have been given (unless it is the first one, i.e., k = 1). Finally, constraints (5) and (6) express that oil wells are assigned to platforms entirely or not at all, and that platforms have standard sizes, i.e., increments to their sizes are made entirely or not at all. Let us note that as capacities b k can be reasonably assumed to be integer, the constraints (5) can be replaced without loss of generality by O<~xi)~l

Viii,

VjEJ.

(7)

Indeed, once locations and sizes of platforms have been fixed, the problem reduces to a transportation problem with integer offer and demand vectors, which is known to always have an optimal solution in integers (cf., e.g. Dantzig, 1963, and Salkin, 1975). A slightly different model for MCPLP has been proposed by Yoo and Tcha (1986). These authors associate variables Y~k to the building of a platform of size k at location i instead of to the increase in size of such a platform. Then, fik is to be interpreted as the cost of building a platform of the k-th standard size at location i. Moreover, constraints (4) must be replaced by y~k ~< 1 V i ~ l ,

(8)

k~K

otherwise, the model remains the same.

3. Optimal solutions We consider in this section the second integer programming formulation of MCPLP (i.e., Yoo and Tcha's model, with a binary variable Yik associated to the building of a platform of size k at location i), defined by the objective function (1) and constraints (2), (3), (5), (6), (8). Furthermore, in one of our attempts to solve MCPLP by a standard integer programming code, we introduce the following additional constraints in the above mentioned formulation: Xij~

~-a Yik k~K

V i E l , Vj~J.

(9)

Although constraints (9) are redundant in terms of the integer programming problem, it should be remarked that their incorporation in the model yields a stronger continuous relaxation which can provide sharper lower bounds. Computational results will be discussed next. The randomly generated problems used to test and evaluate the algorithms proposed in this paper have characteristics similar to those of the problems considered by Yoo and Tcha (1986). The first series

206

P. Hansen et al. / Optimallocation and sizing of offshore platforms

of test problems (P.01 to P.30) have dimensions (m x n) equal to (10 x 20), (10 x 40), (10 x 60), (20 x 60), and (40 x 60), where m = [ I] and n -- IJ [. For each of these dimensions six problems have been generated, four of them with p = 3 and the others with p = 4 (where p = JKI is the number of capacity levels). Fixed costs fn are randomly generated uniformly distributed in [100, 200], while economies of scale are considered by taking each fi,k+l = (1.1)"fik. Assignment costs c u are also randomly generated, now uniformly distributed in [10, 90]. The data for problems P.01 to P.30 are summarized in Table 1. We next present in that table their optimal values, obtained by using the MIP/MPSX branch-and-bound code on an IBM 3090/600 computer. For all test problems and for each of the weak and strong relaxations, we also give the value of the continuous optimal solution, the computation times (for solving the linear relaxation and the integer programming problem), and the number of nodes in the branch-and-bound tree. These results show that although the computation times associated with the resolution of the strong continuous relaxation are much larger than those observed with the weak relaxation, the strong relaxation allows obtaining the optimal integer solution in significantly less overall computation time than the weak relaxation, due to the fact that it provides very sharp lower bounds (on average within 1.2% of the optimal value), much better than those provided by the weak relaxation. As a consequence, we observe that a general-purpose integer programming code such as MIP/MPSX can be effective in the resolution of small- and medium-size instances of MCPLP. The evaluate the behavior of this code for larger problems, we considered a second series of test problems (P.31 to P.54) with dimensions (m x n) equal to (10 x 20), (10 x 40), (10 x 60), (10 x 80), (10 x 100), (20 x 100), (30 x 100), and (40 x 100). For each of these dimensions three test problems have been generated, each of which with p = 3 capacity levels. Costs and capacities have been generated in a similar way to those of the test problems in the first series. The computational results obtained are presented in Table 2. Problems P.31 to P.45 may be seen as large, but easy problems, since the number of possible locations for the platforms, which determines the number of integer variables, is small and kept fixed (m = 10). The computation times increase consistently with the number n of wells. However, when larger problems with n = 100 were considered (P.46 to P.54), the MIP/MPSX code faced many numerical difficulties and was not able to solve problems with m larger than 30. These results motivated the development of a heuristic of Tabu Search type for the solution of MCPLP, which is described in the next section.

4. A Tabu Search heuristic

Descent-ascent heurisics, which comprise the heuristic described below, are based on the exploration of the neighborhood of the current solution at each iteration. The algorithm to be described next explores all neighbor solutions at each iteration. Neighborhoods should be defined in such a way that all feasible solutions are attainable from the current one through successive applications of the mechanism which generates a neighbor solution. We can define a solution to MCPLP by assigning to each platform a set of oil wells. This information can be stored in an n-vector, its j-th component indicating the platform to which oil well j is assigned. Once each oil well has been assigned to exactly one of the platforms, the capacity level to be installed at each platform is given by the number of oil wells assigned to it. The mechanism which is used to generate a neighbor solution according to this approach is presented below: Step 1. Choose any platform i 1 having at least one oil well assigned to it. Step 2. Choose any oil well Jl assigned to platform i 1. Step 3. Choose another platform i 2 ~: il, which can even be a zero-level one. Step 4. Assign oil well jl to platform i 2. Step 5. Compute the lowest feasible capacity levels at platforms i I and i 2.

P. Hansen et al, / Optimal location and sizing of offshore platforms

207

-4 •~_~ f~

~ ~

t: 0

e'~ ~

e.~

0

NN~,

0

o

~.~ =2=

£ e..

8

E m

e~

0

A A A A A A A

A A A A

e~

E

;<

"~,

~

~

~

.--

.~

~'~.

g

u.

VV

VV

VV

V VV

VVV

VVVV

VV

a

e-

f2~

X X X X X X X X X X X X X X X X X X X X X X X X X X X X X X

P. Hansen et al. / Optimal location and sizing of offshore platforms

208

"2= ".~

~

"~

.~ ~ , ~ Z,.~,', e-

~

;~

".~

"2 a; 0

"2: e~

8

~'~

A

~

AAAAAA

e- , . ~

.E ~ , ~ u~

e-

A

"~.

~

A A

AAAA

~

X VVVV

.~_

VVV

V VVV

V

~

~ . o0

"~

.~.

~N

"i ×

X X X X X X X X X X X X

XXXX

X X X X X

P. Hansen et aL / Optimal location and sizing of offshore platforms

209

The steepest-descent-mildest-ascent (Hansen and Jaumard, 1990) heuristic (which is one of the family of Tabu Search methods, see, e.g. Glover, 1986, 1989, 1990) is an adaptation of the idea behind gradient methods for nonlinear programming. Local changes in the direction of steepest descent are performed whenever possible, i.e., as long as the current solution is not a local optimum. When a local optimum is reached, a move to the best neighbor solution which leads to an increase in the objective function value is allowed, but a move along the reverse direction is then forbidden for a given number of iterations to avoid cycling. The following notation will be used: Rep - Number of iterations in a series. Listsize - Number of iterations during which a given move is forbidden. Change - Variable used to check if a better solution than previously known is found during a cycle of Rep local changes. L - Index set of the directions of change. itert - Remaining number of iterations during which a local change in direction l ~ L is forbidden. (x, y) - Current solution. Neighborhood (x, y) - Set of neighbor solutions to (x, y). (~, ~) - Best feasible solution found so far. ~, - Cost of the best feasible solution found so far. The general framework of the steepest-descent-mildest-ascent algorithm is described below (choice of values for parameters Rep and Listsize is discussed in the next section): Algorithm SDMA-MCPLP logical Change {initialization} Select values for parameters Rep and Listsize Select an initial solution (x, y) Change <- .true. (~, ~ ) ~ (x, y) and compute ~,---z(~, ~) iter t ~ 0 Vl ~ L while Change do Change ~ .false. repeat Rep times for all l ~ L do {exploration of neighborhood} Transform the current solution (x, y) into (x t, yt) ~ Neighborhood(x, y) through a modification along the direction l ~ L Compute 6 t = z ( x l, y t ) _ z ( x , y) end: for all if {l ~ L : iter t = 0} = ~ then stop. Let k be such that z ( x k, yk) = minimum {z(x t, yt) : l ~ L and iter z = 0} (x, y) ~ (x k, yk) {new solution} for all l ~ L do if iter t > 0 then iter t *-- iter t - 1 end: for all

if 6 ~ < 0 then begin Let k ~ L be the reverse direction with respect to k iter~ *- Listsize end: begin if z ( x k, yk) < ~, then begin {better incumbent solution found}

(~, ~) ,__ (x ~, yk)

~. <__Z(X k, yk)

P. Hansen et al. / Optimal location and sizing of offshore platforms

210

Change ~ .true. end: begin end: repeat end: while We remark that the larger the value of Listsize, the more difficult it will be to come back to a previously explored local optimum (thus avoiding cycling), but also to explore its vicinity. In the implementation described in the next section, we consider lists of forbidden moves which have variable sizes, and other extensions of the basic algorithm presented above.

5. Computational results The randomly generated problems used to test, evaluate and set the best parameters for algorithm SAMD-MCPLP were the same as considered in Section 3. The SAMD-MCPLP algorithm was implemented in F O R T R A N VS and run on an IBM 3090/600 computer. Implementation issues and computational results are described next.

5.1. Implementation issues Partial neighborhood exploration. Some authors (see, e.g. Hertz and De Werra, 1987, for the graph-coloring problem) have proposed to implement algorithm SAMD without exploring the whole neighborhood of each solution (exhaustive search), stopping the search when the first solution which improves the current one is found (partial search). Our computational experiments have shown that for large values of Rep, which are necessary for obtaining a good approximation of the optimal solution, the partial search strategy allows attaining solutions with almost the same relative error as those obtained by exhaustive search, but in significantly less computation time. For this reason, partial search is implemented in our computational experiments, a first modification in the basic SAMD-MCPLP algorithm described above.

Extended lists of forbidden moues. When using extended lists of forbidden moves (Glover and Greenberg, 1989), not only the reverse move along a direction which does not improve the value of the objective function is forbidden, but also many others which express a search strategy in which the new neighbor solution should be chosen not to have a structure similar to that of the previous local optimum. The following extensions (i.e., types of moves which are inserted in the list of forbidden directions as soon as a nonimproving direction is taken to leave from a local optimum) were considered (indices are in accordance with those in the mechanism for the generation of neighbor solutions described in Section 4): - Extension 1: all moves which attempt to reassign well j~. - Extension 2: all moves which attempt to decrease the number of wells assigned to platform i2, to which well j~ is now assigned. - Extension 3: all moves which attempt to increase the number of wells assigned to platform i~, to which well j~ was previously assigned. Table 3 Summary of the results obtained with the use of extended lists of forbidden moves (average results for test problems P.01 to P.18, Rep = 8(rn - 1)n and the more appropriate values observed for Listsize)

Listsize Relative error CPU time Optimal solutions

Original

Extension 1

Extension 2

Extension 3

( 1 / 4 X m - 1)n 9.0% 3.3 sec -/18

(5/4)n 7.4% 3.0 sec -/18

(5/4)m 1.3% 2.6 sec 6/18

(3/2)m 6.6% 2.8 sec 2/18

P. Hansen et aL / Optimal location and sizing of offshore platforms

211

Table 4 Computational results - modified algorithm (partial search) with extended lists of forbidden moves of type 2 (average results with Rep = 8(m - 1)n) Problems

Average results

Listsize

(1/2)m

m

(3/2)m

2m

(5/2)m

P.01 to P.06 (10 x 20)

Relative error CPU time Optimal solutions Bottle necks

7.1% 0.7 sec 2/6 -

0.8% (1.6 sec 4/6 167

2.0% 0.6 sec 4/6 175

2.0% 0.6 sec 4/6 175

2.0% (1.6 sec 4/6 175

P.07 to P.12 (10x40)

Relative error CPU time Optimal solutions Bottle necks

13.2% 2.8 sec -/6 -

0.6% 2.8 sec 2/6 19

0.5% 2.5 sec 2/6 146

1.7% 2.1 sec -/6 229

1.3% 2.4 sec -/6 277

P.13 to P.18 (10 × 60)

Relative error CPU time Optimal solutions Bottlenecks

12.3% 6.4 sec -/6 -

8.6% 6.5 sec -/6 -

1.5% 4.6 sec -/6 24

1.9% 3.8 sec -/6 113

1.8% 3.6 sec -/'6 252

The results obtained with the use of extended lists of forbidden moves are summarized in Table 3 (with Rep = 8(m - 1)n and the more appropriate values observed for Listsize in each case). The best results attained with the use of extended lists of forbidden moves correspond to Extension 2. Further computational results concerning this type of extension are presented in Table 4.

Variable size lists of forbidden movements. In this class of method, cycling may occur for small values of Listsize. On the other hand, large values of this parameter also give poor results due to the fact that after a few iterations all directions are forbidden, preventing the algorithm from leaving the current local optimum, what we call a bottleneck. We also included in Table 4 the average number of bottlenecks observed for each group of problems. In practice, the occurrence of bottlenecks may help in improving the quality of the solutions obtained through this approach. The use of the extended list of forbidden moves of type 2, for example, favours the concentration of many oil wells assigned to a few platforms and makes it difficult for the algorithm to evaluate structurally different solutions. Detecting bottlenecks at a current local optimum (when no neighbor solution can be generated since all moves are forbidden) allows that, by erasing the whole list of forbidden moves at this iteration, the algorithm can now reassign wells to other platforms and diversify the search. In order to consider the process of search-bottleneck-relaxation we used variable values for the maximum number of elements Listsize in the list of forbidden movements. The value of Listsize is initialized with m and is updated during the algorithm as follows: Whenever a bottleneck occurs, then set Listsize ~ Listsize - 1, and If no bottleneck occurs after a number of iterations equal to the maximum number of elements in the neighborhood, then set Listsize ,--- Listsize + 1. The results obtained with the modified algorithm (partial search) and variable size extended lists of forbidden moves are presented in Table 5. These results are better than the previous ones (compare Table 4) and can be considered as quite good, both in terms of the quality of the solutions obtained (with respect to the average relative errors) and in terms of the computation times. -

-

5.2. Application to Yoo and Tcha's problems and larger problems The modified SAMD-MCPLP algorithm (partial search) with variable size extended lists of forbidden moves was applied to a set of test problems generated as in Yoo and Tcha (1986), as well as to the largest

P. Hansen et al. / Optimal location and sizing of offshore platforms

212

Table 5 Computational results - modified algorithm (partial search) with variable size extended lists of forbidden moves of type 2 (average results for different values of Rep) Problems

Average

Initial Listsize

results

4(m - 1)n

8(m - 1)n

16(m - 1)n

P.01 to P.06 (10×20)

Relative error CPU time Optimal solutions Bottlenecks

0.2% 0.4 sec 4/6 13

< 0.1% 0.7 sec 5/6 20

< 0.1% 1.1 sec 5/6 35

P.07 to P.12 (10X40)

Relative error CPU time Optimal solutions Bottlenecks

0.9% 1.2 sec -/6 9

0.8% 2,5 sec 1/6 18

0.4% 5.0 sec 2/6 37

P.13 to P.18 (10 × 60)

Relative error CPU time Optimal solutions Bottlenecks

2.4% 3.4 sec -/6 7

1.7% 5,7 sec -/6 17

1.6% 9.4 sec -/6 33

P.01 to P.18 (overall results)

Relative error CPU time Optimal solutions

1.2% 1.7 sec 4/18

0.8% 3.0 sec 6/18

0.7% 5.2 sec 7/18

Table 6 Computational results for Yoo and Tcha's problems and the largest test problems (for the pi'oblems marked with an *, the solution obtained by the modified SAMD-MCPLP algorithm contributed to speed up the branch-and-bound) Dimensions

Capacity

M1P

(m x n)

levels (b k)

Optimal value

Nodes

CPU times (seconds)

Solution value

1010 924 1068 1647 1571 1796 1693 1599 1730 1682 1628 1576 2125 1979 2077 1896 1728 1879 2136 1906 1920

47 36 78 41 34 66 17 88 95 18 124 14 7 74 62 16 14 112 348 11 19

5.4 3.0 7.8 13.2 10.8 14.4 16.8 37.8 49.2 25.2 86.4 24.0 9.6 22.2 20.4 32.4 31.2 59.4 277.8 48.8 51.6

1036 924 1068 1652 1619 1804 1721 1600 1807 1719 1647 1600 2158 1979 2099 1916 1730 1910 2157 2021 1934

88 57 67

956.4 793.8 881.4

10X 10X 10X 10X 10X 10X 15 X 15 X 15X 20X 20 X 20X 10X 10X 10X 15 x 15 X 15X 20X 20X 20X

20 20 20 40 40 40 40 40 40 40 40 40 50 50 50 50 50 50 50 50 50

3, 5, 7 5, 7, 9 3, 5, 7, 9 5, 7, 9 7, 9, 11 5, 7, 9, 11 3, 5, 7 5, 7, 9 3, 5, 7, 9 3, 5, 7 5, 7, 9 3, 5, 7, 9 5, 7, 9 7, 9, 11 5, 7, 9, 11 5, 7, 9 7, 9, 11 5, 7, 9, 11 3, 5, 7 5, 7, 9 3, 5, 7, 9

30× 100 30 x 100 30 x 100

10, 15, 20 10, 15, 20 10, 15, 20

4103 4031 4050

4 0 x 100 40X 100 40 x 100

10, 15, 20 10, 15, 20 10, 15, 20

unsolved unsolved unsolved

SAMD

SAMD + MIP CPU times (seconds)

Nodes

CPU times (seconds)

0.4 0.3 0.3 2.0 1.1 1.9 3.5 2.3 3.6 6.5 7.0 4.5 1.6 2.4 3.1 8.9 7.5 3.6 14.3 6.8 13.6

41 29 45 34 34 40 17 85 92 18 163 14 7 26 20 16 10 99 332 9 18

4.8 2.4 4.8 12.0 10.2 10.8 15.0 34.8 46.2 24.0 87.0 27.0 8.4 13.2 11.8 32.4 22.2 51.0 268.8 43.2 52.2

4179 4109 4154

131.0 192.6 128.7

83 56 66

3965 4068 4007

354.3 619.6 239.4

unsolved unsolved unsolved

* * *

* *

* * * *

943.4 * 739.8 * 896.2

P. Hansen et al. / Optimal location and sizing of offshore platforms

213

test problems generated in Section 3 (P.49 to P.54). The results obtained are presented in Table 6 along with those obtained by M I P / M P S X . We also include in this table the results obtained by the M I P / M P S X code when the solutions obtained by the heuristic were used to cut the branch-and-bound tree. Besides the quality of the approximate solutions obtained by the heuristic (on average within 1.5% of the optimal value), it can be observed that for 11 out of 24 cases the approximate solutions contributed to speed up the branch-and-bound code. These are the only conclusions which can be drawn from such experiments, since it is not possible to make more elaborated comparisons with the results published by Yoo and Tcha.

6. Conclusions In this paper, we formulated the problem of location and sizing of offshore platforms for oil exploration as an integer programming multicapacitated plant location problem. We have shown that the use of redundant constraints, which yield a stronger continuous relaxation providing very sharp lower bounds, make medium-size problems amenable to solution by a general-purpose integer programming code. For larger problems, we implemented a Tabu Search heuristic. The computational results obtained illustrate that the use of extended lists of forbidden movements (tabu list), and variable size tabu lists (for search diversification) are very helpful for improving computation times and the quality of the solutions obtained. P E T R O B R A S is currently developing a data base together with a computer system for the location of exploitation equipments. Feasibility and costs can be evaluated and compared for different strategies. The user can provide solutions and interact with the computer, analysing feasibility and costs. Besides the evaluation of strategies directly proposed by the user, the Tabu Search heuristic proposed here (together with some extensions which take into account other constraints and more detailed aspects of the problem) is used as a component of the system to provide good solutions. These can be used as initial solutions and next examined by the technicians, conjugating the simple, optimization aspects of the heuristic with the expertise, rules, and further subjective constraints which, although known to the user, are difficult to introduce in the model.

Acknowledgement The authors are grateful to an anonymous referee for many useful comments and suggestions.

References Aboudi, R., Hallefjord, A., Helgesen, C., Helming, R., Jornsten, K., Pettersen, A.S., Raum, T., and Spence, P. (1989), "A mathematical programming model for the development of petroleum fields and transport systems", European Journal of Operational Research 43, 13-25. Babayev, D.A. (1975), "Mathematical models for optimal timing of drilling multilayer oil and gas fields", Management Science 21, 1361-1369. Beale, E.M.L. (1983), "A mathematical programming model for the long-term development of an off-shore gas field", Discrete Applied Mathematics 5, 1-9.

Dantzig, G.B. (1963), Linear Programming and Extensions, Princeton University Press, Princeton, NJ. Devine, M.D. (1973), "A model for determining the cost of drilling dual completion oil wells", Management Science 20, 532-535. Devine, M.D., and Lesso, W.G. (1972), "Models for the minimum cost development of off shore oil fields", Management Science 18, 378-387. Dogru, S. (1987), "Selection of optimal platform locations", SPE Drilling Engineering 2, 382-386. Durrer, E.J., and Slater, G.E. (1977), "Optimization of petroleum and natural gas production - A survey", Management Science 24, 35-43.

214

P. Hansen et al. / Optimal location and sizing of offshore platforms

Frair, L., and Devine, M. (1975), "Economic optimization of offshore petroleum development", Management Science 21, 1370-1379. Garey, M.R., and Johnson, D.S. (1979), Computers and Intractability: A Guide to the Theory of NP-Completeness, Freeman, San Francisco, CA. Glover, F. (1986), "Future paths for integer programming and links with artificial intelligence", Computers and Operations Research 13, 533-549. Glover, F. (1989), "Tabu Search - Part I", ORSA Journal on Computing 1, 190-196. Glover, F. (1990), "Tabu Search - Part II", ORSA Journal on Computing 2, 4-32. GIover, F., and Greenberg, H.J. (1989), "New approaches for heuristic search: A bilateral linkage with artificial intelligence", European Journal of Operational Research 39, 119-130. Guignard, M., and Spielberg, K. (1979), "A direct dual method for the mixed plant location problem with some side constraints", Mathematical Programming 17, 198-228. Hansen, P., and Jaumard, B. (1990), "Algorithms for the maximum satisfiability problem", Computing 44, 279-303. Haugland, D., and Hallefjord, A. (1988), "Models for the petroleum field exploitation", European Journal of Operational Research 37, 58-72. Hertz, A., and De Werra, D. (1987), "Using tabu search techniques for graph coloring", Computing 39, 345-351. Jacobsen, S.K. (1983), "Heuristics for the capacitated plant location problem", European Journal of Operational Research 12, 253-261. Leung, J.M.Y., and Magnanti, T.L. (1989), "Valid inequalities and facets for the capacitated plant location problem", Mathematical Programming 44, 271-291. Lilien, G.L. (1973), "A note on off shore oil field development problems and suggested solutions", Management Science 4, 536-539. McFarland, J.W., Lasdon, L.S., and Loose, V. (1986), "Development planning and management of petroleum reservoirs using tank models and nonlinear programming", Operations Research 32, 270-289. Neebe, A.W., and Rao, M.R. (1983), "An algorithm for the fixed charge assignment of users to sources problem", Journal of the Operational Research Society 34, 1107-1113. Rosenwald, G.W., and Gree, D.W. (1974), "A method for determining the optimum location of wells in a reservoir using mixed-integer programming", Society of Petroleum Engineers Journal 14, 44-54. Salkin, H.M. (1975), Integer Programming, Addison-Wesley, Reading, MA. Van Roy, T.J. (1986), "A cross decomposition algorithm for capacitated facility location", Operations Research 34, 145-163. Yoo, C., and Tcha, D. (1986), "A cross decomposition procedure for the facility location problem with a choice of facility type", Computers and Industrial Engineering 10, 283-290.