Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
We present a bulk ship scheduling problem that is a combined multi-ship pickup and delivery problem with time
windows (m-PDPTW) and multi-allocation problem. In contrast to other ship scheduling problems found in the literature,
each ship in the eet is equipped with a exible cargo hold that can be partitioned into several smaller holds in a given
number of ways. Therefore, multiple products can be carried simultaneously by the same ship. The scheduling of the
ships constitutes the m-PDPTW, while the partition of the ships' exible cargo holds and the allocation of cargoes to the
smaller holds make the multi-allocation problem. A set partitioning approach consisting of two phases is proposed for the
combined ship scheduling and allocation problem. In the rst phase, a number of candidate schedules (including
allocation of cargoes to the ships' cargo holds) is generated for each ship. In the second phase, we minimise
transportation costs by solving a set partitioning problem where the columns are the candidate schedules generated in
phase one. The computational results show that the proposed approach works, and optimal solutions are obtained on
several cases of a real ship planning problem.
the relatively small and well constrained problems, ship apply a column generation approach and generate sche-
scheduling are often approached by rst generating all dules when needed. The schedules consist of ship routes
feasible schedules for the ships in the eet, and then solving with arrival time and load quantity information, and port
the problem as a set partitioning problem, where the visit sequences satisfying the inventory constraints. The
columns represent the schedules. A principal advantage ship scheduling and inventory management aspects are
of the set partitioning approach is that intricate schedule synchronised in the master problem, which results in an
constraints can easily be incorporated in the schedule extended set partitioning problem. The overall problem is
generator rather than mathematically in the set partitioning solved by branch-and-bound.
solver.5 This solution approach is also followed here to The purpose of this paper is to introduce the SSAP and
solve the SSAP. Here, the complex allocation constraints describe the proposed solution method. In the following
are incorporated in the schedule generator. Most of the section, we give a detailed problem description, while in
following references have applied a similar solution the third section we suggest a set partitioning approach.
approach, but in contrast to the SSAP, none of them Computational results on cargo data from a real ship
consider combined scheduling and allocation. For a more planning problem are presented in the fourth section.
complete review on ship scheduling problems, see Ronen.6 Finally in the last section we provide conclusions.
Brown et al 7 studied a crude oil tanker scheduling
problem. In contrast to the SSAP, all cargoes are considered
Problem description
as full shiploads, therefore reducing the complexity of their
problem. All feasible schedules are generated a priori We have studied a real ship planning problem faced by
together with their costs. Then the problem is solved as a Hydro Agri, the world's largest producer of mineral ferti-
set partitioning problem, where the columns represent the lizer. In addition to being the producer, Hydro Agri is
schedules. Fisher and Rosenwein8 considered a problem that engaged in the waterborne transportation of their products.
is conceptually quite similar to the one in Brown et al,7 The company operates several production units around the
except that the cargoes can be less than a full shipload. world, each specialising in a number of fertilizer types or
However, a ship schedule always follows the same pattern, qualities. Here, we concentrate on the seaborne transporta-
by rst loading then discharging all cargoes before it again tion between production units and discharging ports in
starts to load. This stands in contrast to the SSAP, where the Northern Europe. The number of production units or
ship often discharges only some of the cargoes onboard loading ports is three in this region, while the number of
before it again starts loading. This (in addition to the discharging ports is approximately twenty. The sailing
allocation) makes the SSAP more complex than the one in times between the ports vary from just a few hours and
Fisher and Rosenwein.8 up to almost two days, which are typical for short sea
A ship scheduling problem involving multiple products shipping. The ports and the geographical region of the
is studied in Bausch et al.9 Here, the ships are equipped problem are shown in Figure 1.
with multiple compartments, but in contrast to our problem The company receives customer requests, called cargoes.
these compartments are xed. Their problem is solved by Each cargo consists of a designated quantity of a particular
generating all feasible schedules beforehand, and then fertilizer quality to be lifted from one of the production units
solving the set partitioning problem. Brown et al5 consid- (pickup port) to a delivery port. Time windows are intro-
ered a somewhat different problem that is solved by a duced for each cargo, both at the pickup and delivery port.
similar approach. Their problem consists of deciding To satisfy the transportation demands a eet of ships
which naval combatants eet units should be used to satisfy with different capacities and speed is available. Due to
their operational commitments while distributing the work- seasonal variations in demand, the eet is not designed to
load equally between the units. handle all cargoes throughout the year. Some of the cargoes
In Darby-Dowman et al,10 the problem of scheduling may be serviced by spot carriers. There is a xed fee set by
Coast Guard cutters is studied. The commitments to be the market for each cargo to be serviced by a spot carrier.
fullled can result in the non-existence of feasible For the ships in the eet, only the variable costs such as
schedules. They therefore introduce a relaxation of the sailing costs and port and channel tolls are considered, as
requirements to obtain schedules for each ship, where an the xed costs have no inuence on the planning of optimal
under- or over-achievement of a commitment is penalised. By schedules. The port and channel tolls depend on the size of
generating a number of schedules for each cutter a priori, the the ship. The sailing costs mainly consist of fuel costs that
problem is solved as a mixed-integer programming model. depend on the ship size, the speed and the amount of
Christiansen and Nygreen11 presented a combined ship cargoes onboard the ship. The time spent in a port depends
scheduling problem, but in contrast to the SSAP, their on the quantity to be loaded or discharged, but is on
problem is a combined bulk ship scheduling and a single average one day.
product inventory management problem. Due to the Due to the characteristics of the various types of fertili-
complexity of this combined ship planning problem, they zer, no two cargoes can be transported in the same cargo
836 Journal of the Operational Research Society Vol. 51, No. 7
Example 1
Figure 3 illustrates a situation for a ship with a total cargo
capacity of 2500 tonnes distributed on ve nominal
compartments and, therefore, four possible bulkhead posi-
tions. Suppose the ship is equipped with two bulkheads,
and there are three cargoes with quantities of 670, 450 and
1220 tonnes to be lifted. Then we may place the bulkheads
in position 2 and 3, see Figure 3, and we get three separated
and smaller cargo holds with capacities of 700, 500 and
1300 tonnes. We can then allocate the rst cargo (670
tonnes) to the two leftmost nominal compartments, the
second cargo (450 tonnes) to the middle and the third
cargo (1220 tonnes) to the two rightmost nominal compart-
ments. If the rst cargo (670) had been placed in the
Figure 1 Geographical region of the real SSAP. nominal compartment to the right, then it had been impos-
sible to allocate the two other cargoes using only two
bulkheads.
hold simultaneously without being separated. Each ship in Example 1 illustrates that the positioning of the bulk-
the eet is therefore equipped with a limited number of heads at one step in a schedule may give consequences at
bulkheads (partitions) that can be placed in a given number subsequent steps, actually until the ship is empty again.
of feasible bulkhead positions in the cargo hold. Let us Due to the pickup and delivery nature of the SSAP, the ship
dene the space between two neighbouring bulkhead posi- may in principle never get empty. This emphasises the
tions as nominal compartments. By placing bulkheads in importance of the allocation part of the SSAP.
some of the feasible bulkhead positions, the cargo hold of Let us dene a schedule to be the sequence of port visits,
the ship can be partitioned into several smaller holds with including the time for start of service and the allocation of
exible sizes, each consisting of at least one nominal cargoes to nominal compartments at each port. The chal-
compartment. Therefore, several cargoes can be lifted lenge of the SSAP is then to nd a feasible schedule for each
simultaneously by the same ship in the smaller holds. The ship in the eet, and to determine which cargoes are to be
above denitions are illustrated in Figure 2. serviced by spot carriers, such that total costs are minimised.
The maximum number of bulkheads available on a ship The problem would become easier to solve if the
is always less than the number of feasible bulkhead posi- capacities of the nominal compartments were all equal.
tions. It should be emphasised that we can disregard the Then the problem becomes closer to the m-PDPTW. The
possibility of shifting=moving a cargo to other nominal cargo quantities can beforehand be rounded up to the
node sequence: 0 7 3 7 2 7 (n 2) 7 (n 3). The deleted from the schedule list. This procedure continues
pickup and delivery nodes to be included in schedule u with the succeeding schedules in the schedule list until the
corresponding to cargo i and i and (n i), respectively. It is list is empty.
generally not optimal to add the nodes for cargo i to the end
of schedule u, it may also give an infeasible solution.
Solution of the TSPATWPC
Therefore, we have to solve a Travelling Salesman Problem
with Allocation, Time Window and Precedence Constraints Since a Travelling Salesman Problem with Allocation,
(TSPATWPC) to nd the new optimal schedule for the Time Windows and Precedence Constraints (TSP
nodes 0, 2, 3, i, (n 2), (n 3) and (n i). This TSP ATWPC) has to be solved in the generation of each new
corresponds to deciding the optimal visiting sequence for schedule, the overall solution procedure depends highly on
the given nodes while satisfying the allocation, time solving these TSPATWPCs quickly. Dumas et al12 have
windows and precedence constraints. The allocation con- developed a dynamic programming algorithm for the TSP
straints ensure that the allocations of cargoes to the nominal TW which makes use of extensive domination and elimina-
compartments are feasible, while the precedence constraints tion tests to reduce the state space and enhance the
ensure that the pickup nodes are visited before the corre- performance of the algorithm. Mingozzi et al13 described
sponding delivery nodes. The allocation constraints may a dynamic programming algorithm for the TSPTWPC.
also ensure safe trim for partially loaded legs, even though it Their algorithm is based on state space relaxation proce-
is assumed to be of no relevance here. dures for computing lower bounds to use in the branch-and-
The solution of a TSP in the generation of each new bound scheme, which was introduced by Christodes
schedule in order to obtain an optimal visiting sequence is et al.14 By introducing capacity constraints to the TSP
not a focused issue in most other works on ship scheduling. TWPC, we get a single vehicle pickup and delivery problem
Due to narrow time windows and long sailing times, the with time windows (s-PDPTW), given that the precedence
sequencing of ports of call seems to have been more or less constraints have the pickup and delivery characteristics. The
given for most of these problems, therefore actually s-PDPTW has received some attention in the literature, see
reducing most of these problems to nding an optimal for instance.3
allocation of cargoes to ships. The TSPATWPC is similar to the s-PDPTW, except
Due to the time windows, the size of the TSPATWPC that the capacity constraints of the s-PDPTW are replaced
can be reduced. In the example above, the time windows by the allocation constraints. We have developed a
for nodes i and (n i) may be such that it is not possible to dynamic programming algorithm for solving the TSP
insert the nodes before (n 2) in the sequence of the ATWPC. There may be many ways of allocating cargoes
existing schedule. If so, the TWPATWPC will consist of to nominal compartments at each step of the schedule,
only three nodes ((n 3), i and (n i)). Let us denote the increasing the complexity compared to the s-PDPTW.
node in the existing schedule from where it will be extended, Since we do not know the allocation that turns out to be
by e. In the example above, node e will correspond to optimal until the DP-algorithm is terminated, we may have
(n 2), and it becomes the starting node of the to maintain a large number of allocations during the
TSPATWPC. solution process, even for the same visiting sequence.
A brief description of the solution method for the TSP This is illustrated in the following.
ATWPC is given in the next subsection. If the solution of Dene W {e, 1, . . . ;w} as the set of nodes to be
the TSPATWPC is feasible, the optimal sequence is sequenced, where e is the starting node. Dene the function
merged together with the original schedule u. The new F(S, i, t, C ) as the least cost of a path, starting at node e and
schedule q is added to the end of the schedule list. passing through every node of SW once and ending at node
Now, a measure for the total capacity utilisation, both i 2 S. The ship is ready to service node i at time t. C is the
regarding waiting time and utilisation of the ship's cargo accumulated cargo allocation when leaving node i. This
hold, is calculated for schedule q. In this capacity utilisation means that C keeps track of the location of the physical
measure, the unused time between the end time of schedule bulkheads and which nominal compartments the cargoes
q and the end of the planning period is also considered. If onboard are allocated to. Suppose there are two alternative
this unused time interval is large, it is likely that q can be states (S, i, t 1 , C 1 ) and (S, i, t 2 , C 2 ), where F1(S, i, t1,
further extended by adding more cargoes, therefore giving C1) < F2(S, i, t 2 , C 2 ) and t1 < t 2. Even though state 1
a better schedule. If the capacity utilisation measure for dominates state 2 in cost and time, state 2 may still be
schedule q is within the allowance factor, the schedule is preferable due to a different cargo allocation, which may turn
considered as a candidate schedule for the set partitioning out to be better when adding the remaining nodes to the path.
problem. Since we consider only partial schedules, the size of each
Next, the original schedule u is a basis for generating new problem is greatly reduced compared to complete sche-
schedules with the next cargoes, until there are no cargoes dules. This, in addition to effective elimination tests, make
that can be added to the schedule. Then, schedule u is fast solutions of these problems possible. We refer to
840 Journal of the Operational Research Society Vol. 51, No. 7
relatively fast convergence to the optimal solution by called a combined Ship Scheduling and Allocation Problem
generating more candidate schedules. However, also the (SSAP).
non-optimal solutions obtained by small values on RMAX To have the possibility of obtaining feasible schedules
at low computational time, are relatively close to the optimal for each ship quickly, we have developed a set partitioning
solutions. Solutions within approximately 2% of the optimal procedure. The solution procedure consists of two phases:
solutions are achieved at only a fraction of the time required In the rst phase, a number of candidate schedules for each
to obtain solutions that are proven to be optimal. ship in the eet is generated. In the second phase, the
The generation of the candidate schedules of phase 1 candidate schedules from phase 1 are brought into a set
requires more CPU-time than the solution of the set partitioning model and solved by commercial optimisation
partitioning problem. The time consumption for solving software. If all feasible schedules are generated in phase 1,
the set partitioning problems was low because there was no the procedure is an optimisation method. To control the
gap between the values of the LP-solutions and the IP- response time, we have however the possibility to apply
solutions for any of the instances solved. The computa- heuristic rules based on the capacity utilisation of the ships
tional experience indicates that the width of the time to reduce the number of generated schedules. In real life
windows and the number of nodes have the greatest planning, it is often important to obtain solutions quickly
effect on the computational times of phase 1. Both these for instance in order to make decisions regarding whether
factors heavily inuence the number of schedules generated to contract a cargo or not.
that again effects the CPU-time, since a TSPATWPC has The solution approach is tested on data from a real ship
to be solved in the generation of each schedule. However, planning problem and run on a standard PC. By generating
also the length of the planning period inuences the all feasible candidate schedules, we obtained optimal solu-
computational time, as extending the planning period also tions for all problem cases presented here, which are all of
increases the number of candidate schedules. Consider real size or larger. It was also shown that optimal or near-
cases 1 and 2 that are approximately of the same size optimal solutions could be obtained in less computation
regarding the number of nodes and time window width. time by heuristically reducing the number of candidate
Case 2 has however a planning period of three weeks schedules. The success of the suggested solution approach
compared to only two for case 1. We note that both the can be attributed to the fact that ship scheduling problems
number of candidate schedules and CPU-time are signi- most often are relatively well constrained, giving a
cantly higher for case 2 than for case 1. restricted number of feasible candidate schedules.
It is believed that the suggested solution approach can
assist the planners in developing better plans. The company
makes plans with a rolling horizon. The most essential
decisions are the ones concerning the next few days.
Concluding remarks
Psaraftis16 describes a ship planning system that is devel-
In this paper, we have presented a ship scheduling problem oped for making plans with a rolling horizon. His heuristic
that is a combined multi-ship pickup and delivery problem algorithm places highest emphasis on the `front end'
with time windows (m-PDPTW) and multi-allocation cargoes, and less emphasis on the less reliable information
problem. The routing and scheduling of the ships constitute on future cargo movements. This can easily be incorporated
the m-PDPTW, while the partition of the ships' exible into the suggested solution approach by discounting the
cargo holds and the allocation of cargoes to the holds make objective function, which means giving the near time
the multi-allocation problem. The problem is therefore decisions more emphasis.
842 Journal of the Operational Research Society Vol. 51, No. 7
AcknowledgementsThe authors would like to thanks the anonymous 10 Darby-Dowman K, Fink RK, Mitra G and Smith JW (1995).
referees for their insightful comments, which improved the presentation An intelligent system for US Coast Guard cutter scheduling.
of this paper. Eur J Opl Res 87: 574585.
11 Christiansen M and Nygreen B (1998). A method for solving
ship routing problems with inventory constraints. Annals Opns
References Res 81: 357378.
12 Dumas Y, Desrosiers J, Gelinas E and Solomon MM (1995). An
1 Ronen D (1983). Cargo ships routing and scheduling: Survey of optimal algorithm for the traveling salesman problem with time
models and problems. Eur J Opl Res 12: 119126. windows. Opns Res 43: 367371.
2 Dumas Y, Desrosiers J and Soumis F (1991). The pickup and 13 Mingozzi A, Bianco L and Ricciardelli A (1997). Dynamic
delivery problem with time windows. Eur J Opl Res 54: 722. programming strategies for the traveling salesman problem with
3 Desrosiers J, Dumas Y, Solomon MM and Soumis F (1995). time windows and precedence constraints. Opns Res 45: 365
Time constrained routing and scheduling. In: Ball MO, 377.
Magnanti TL, Monma CL and Nemhauser GL (eds). Hand- 14 Christodes N, Mingozzi A and Toth P (1981). State-space
books in Operations Research and Management Science 8, relaxation procedures for the computation of bounds to routing
Network routing 1995. North-Holland: Amsterdam, pp 35139. problems. Networks 11: 145164.
4 Fagerholt K (1999). A simulation study on the design of exible 15 Fagerholt K and Christiansen M (2000). A travelling salesman
cargo holds in small-sized bulk ships. Maritime Pol Mmt 26: problem with allocation, time window and precedence
105109. constraintsan application to ship scheduling. Int Trans OR
5 Brown GG, Goodman CE and Wood RK (1990). Annual 7(3): 231244.
scheduling of Atlantic Fleet naval combatants. Opns Res 38: 16 Psaraftis HN (1988). Dynamic vehicle routing problems. In:
249259. Golden BL and Assad AA (eds). Vehicle Routing: Methods and
6 Ronen D (1993). Ship scheduling: The last decade. Eur J Opl Studies 1988. Elsevier Science Publishers: North-Holland, pp
Res 71: 325333. 223248.
7 Brown GG, Graves W and Ronen D (1987). Scheduling ocean
transportation of crude oil Mgmt Sci 33: 335346.
8 Fisher ML and Rosenwein MB (1989). An interactive optimiza-
tion system for bulk-cargo ship scheduling. Nav Res Log 36:
2742.
9 Bausch DO, Brown GG and Ronen D (1998). Scheduling short- Received May 1999;
term marine transport of bulk products. Maritime Pol Mmt 25: accepted February 2000 after one revision
335348.