You are on page 1of 37

BERTH SCHEDULING BY SIMULATED

ANNEALING
By
Ananth
Kamala.V
Journal Title: Berth scheduling by simulated annealing
Authors: Kap Hwan Kim , Kyung Chan Moon
Journal Name: Transportation Research Part
Year: 2003
Volume No: 37
Page No:541-560
Container terminal logistics
Introduction
Literature Review
Research Gap
Methodology
Mathematical Modelling
Simulated Annealing
Conclusion
Quay Side
Yard Side
Land Side
*Christian Bierwirth , Frank Meisel A survey of berth allocation and quay crane scheduling problems in container terminals,
European Journal of Operational Research 202 (2010) 615627
Managers in a container terminals attempts to reduce costs by efficiently
utilizing resources, including human resources, berths, container yards and
various yard equipment.
Berths are the most important resource and good schedules of berths improve
customers satisfaction and increase port throughput, leading to higher
revenues of port.
Port managers usually schedule the usage of berths by an intuitive trial-and-
error method supported by a schedule board or a graphic-user-interface in a
computer system
S.No Authors Contribution Assumption & Methodology
1 Lai and Shih
(1992)
compared three berth-allocation rules for
container vessel
Wharf - continuous line
Simulation
2 Brown et
al.(1994)
formulated an integer-programming model
for assigning available sections of a wharf to
vessels
wharf discrete berthing section
Integer Programming model
3 Lim (1998) minimizing the total length of a wharf
occupied by vessels.
Wharf - continuous space
berthing times of all vessels -fixed
Heuristics
4 Li et al. (1998) as a scheduling problem with a single
processor through which multiple jobs can be
processed simultaneously
vessels had already arrived,
Heuristics
5 Imai et al.
(2001)
minimize the waiting time of vessels Wharf Discrete
mixed-integer-programming model
Unlike in Lims study (1998), this study attempts to simultaneously determine the berthing
time and the berthing location.
unlike in the studies by Brown et al. (1994), Imai et al. (2001), and Lai and Shih (1992), the
wharf is considered to be a continuous space rather than a collection of partitioned sections.
unlike in the studies by Lai and Shih (1992) and Li et al. (1998) which suggested heuristic
rules, this study suggests an optimizing method
In this study
berth-scheduling problem, in which the berthing positions as well as the berthing times
must be determined,
Wharf - Continuous space,
MILP, Simulated Annealing
S.No Attribute Description
1. Spatial Disc - The quay is partitioned in discrete berths
Cont - The quay is assumed to be a continuous line
Hybr - The hybrid quay mixes up properties of discrete and continuous berths
draft - Vessels with a draft exceeding a minimum water depth cannot be berthed
arbitrarily
2. Temporal stat - In static problems there are no restrictions on the berthing times
dyn - In dynamic problems arrival times restrict the earliest berthing times
due - Due dates restrict the latest allowed departure times of vessels
3. Handling
Time
fix - The handling time of a vessel is considered fixed
pos - The handling time of a vessel depends on its berthing position
QCAP - The handling time of a vessel depends on the assignment of QCs
QCSP - The handling time of a vessel depends on a QC operation scheme
4. Performance
Measure
wait - Waiting time of a vessel
hand - Handling time of a vessel
compl - Completion time of a vessel
tard - Tardiness of a vessel against the given due date
pos - Berthing of a vessel apart from its desired berthing position
*Christian Bierwirth , Frank Meisel A survey of berth allocation and quay crane scheduling problems in container terminals,
European Journal of Operational Research 202 (2010) 615627
S.No Attribute Description
1. Spatial Disc - The quay is partitioned in discrete berths
Cont - The quay is assumed to be a continuous line
Hybr - The hybrid quay mixes up properties of discrete and continuous berths
draft - Vessels with a draft exceeding a minimum water depth cannot be berthed
arbitrarily
2. Temporal stat - In static problems there are no restrictions on the berthing times
dyn - In dynamic problems arrival times restrict the earliest berthing times
due - Due dates restrict the latest allowed departure times of vessels
3. Handling
Time
fix - The handling time of a vessel is considered fixed
pos - The handling time of a vessel depends on its berthing position
QCAP - The handling time of a vessel depends on the assignment of QCs
QCSP - The handling time of a vessel depends on a QC operation sche
4. Performanc
e Measure
wait - Waiting time of a vessel
hand - Handling time of a vessel
compl - Completion time of a vessel
speed - Speedup of a vessel to reach the terminal before the expected arrival time
tard - Tardiness of a vessel against the given due date
pos - Berthing of a vessel apart from its desired berthing position
*Christian Bierwirth , Frank Meisel A survey of berth allocation and quay crane scheduling problems in
container terminals, European Journal of Operational Research 202 (2010) 615627
Cont|dyn|fix|
(w1tard + w2pos)
Mathematical formulation of the berth-
scheduling problem
Berthing times of all the
vessels are fixed, is known to be NP-hard
simulated annealing algorithm
The quay is assumed to be a continuous line.
Berthing time of all vessels is fixed.
The handling time of a vessel is considered fixed.
INPUT
Length of vessel
Arrival time
Handling time
Departure time
Lowest cost
location
Penalty cost per
hour
Additional
handling cost
BAP
Mixed integer
programming
(MIP)
Simulated
Annealing (SA)
OUTPUT
Berth planning
1. Assumption
2. Parameters
3. Decision variables
4. Objective function and constraint
N The total number of vessels
L The length of wharf

The lowest cost berthing location of vessel i

estimated arrival time of vessel i

departure time requested by vessel I

1
The additional travel cost per unit distance for delivering the containers for
vessel i, resulting from non-optimal berthing location relative to the lowest-
cost point.

2
The penalty cost per unit time of vessel i, resulting from a departure delayed
beyond the requested due time.

The length of vessels i

The berthing position of vessel i

The berthing time of vessel I

1 : if vessel i is located to the left of vessel j on wharf


0 : otherwise

1 : if vessel i is berthed before vessel j in time


0 : otherwise
!Minimise the Penalty cost and additional cost;
SETS:
VESSELS:LENGTH,OPERATION_TIME,ARRIVAL_TIME,DEPARTURE_TIME,LOWESTCOST_LOCAT
ION,PENALTY_COST,HANDLING_COST,BERTH_POSITION,BERTHING_TIME,BPP,BPN,BTP,BT
N,L,VTOA,VTOT;
ENDSETS
DATA:
VESSELS,LENGTH,OPERATION_TIME,ARRIVAL_TIME,DEPARTURE_TIME,LOWESTCOST_LOCAT
ION,PENALTY_COST,HANDLING_COST = @OLE('E:\\Book1.XLSX');
L=1200;
M=100000;
ENDDATA
1) Minimise the Penalty cost and
handling cost
Min { c
1i
x
i
- p
i
+ c
2i
( y
i
+ b
i
-d
i
)
+
}
where x
+
= max{0,x}
Min {c
1i
(
1
+
+
2
+
) + c
2i

i
+
}
100 BPP1 + 100 BPN1 + 2000 BTP1 + 2000 BTN1 + 100
BPP2 + 100 BPN2 + 2000 BTP2 + 2000 BTN2 + 100 BPP3
+ 100 BPN3 + 2000 BTP3 + 2000 BTN3
MIN=@SUM(VESSELS(I):(HANDLING_COST*(BP
P+BPN)+PENALTY_COST*(BTP)));
2) Related to additional handling cost due
non optimal berthing location
x
i
- p
i =

i
+
-
i
-
, for all i
3) Related to penalty cost resulting from the
delay in the departure of vessels
y
i
+ b
i
d
i
=
i
+
-
i
-
for all I
4) position of the rightmost end of vessel i
is restricted by the length of the wharf
x
i
+ l
i
<= L for all i
BERTHT1 - BTP1 + BTN1 = 13
BERTHT2 - BTP2 + BTN2 = 24
BERTHT3 - BTP3 + BTN3 = 40
BERTH1 <= 378
BERTH2 <= 265
BERTH3 <= 266
BERTH1 - BPP1 + BPN1 = 20
BERTH2 - BPP2 + BPN2 = 300
BERTH3 - BPP3 + BPN3 = 550
5-6) excludes the case where two vessels
are in conflict with each other with
respect to the berthing time and the
berthing position.
x
i
+ l
i
<= x
j
+ M( 1 z
ij
x
) for all i and j , i j and
a large positive number M
y
i
+ b
i
<= y
j
+ M( 1 z
ij
y
) for all i and j , i
j and a large positive number M
BERTH1 + 100000 VTOA1 - BERTH2 <= 99818
BERTH1 +100000 VTOA2 - BERTH3 <= 99818
BERTH2 +100000 VTOA3- BERTH1 <= 99705
BERTH2 +100000 VTOA4 - BERTH3 <= 99705
-BERTH1 + BERTH3 +100000 VTOA5 <= 99706
-BERTH2 + BERTH3 +100000 VTOA6 <= 99706
BERTHT1 + 100000 VTOT1 - BERTHT2 <= 99993
BERTHT1 +100000 VTOT2- BERTHT3 <= 99993
- BERTHT1 + BERTHT2 +100000 VTOT3 <= 99978
BERTHT2 +100000 VTOT4 - BERTHT3 <= 99978
- BERTHT1 + BERTHT3 + 100000 VTOT5 <= 99987
- BERTHT2 + BERTHT3 +100000 VTOT6 <= 99987
7) excludes the case ,in which case the rectangles
representing the schedules for vessel i and j
overlap
z
ij
x
+ z
ji
x
+ z
ij
y
+ z
ji
y
>= 1 for all i and j , i j
8) a vessel cannot berth before she arrives at a
port
y
i
>= a
i
for all i
9)
i
+
,
i
,
i
+
,
i
-
, x
i
>= 0 for all i
z
ij
x
, z
ij
y
0/1 integer for all i and j , i j
VTOA1+VTOA3+VTOT1+VTOT3>=1
VTOA2+VTOA5+VTOT2+VTOT5>=1
VTOA4+VTOA6+VTOT4+VTOT6>=1
BERTHT1>=12
BERTHT2>=22
BERTHT3>=27
Vessels Length (m)
Loading
time (h)
Arrival
Time Departure Time
Lowest cost
berthing
location Penalty Cost
Handling
Cost
1 182 7 12 20 20 2000 100
2 295 22 22 46 300 4000 200
3 294 13 27 53 550 2000 100
4 185 6 28 36 900 2000 100
5 263 14 11 34 50 2000 100
6 184 7 21 32 600 2000 100
7 262 18 5 30 900 2000 100
Berth Position/TIME Location
BERTH_POSITION( 1) 20.00000 0.000000
BERTH_POSITION( 2) 300.0000 0.000000
BERTH_POSITION( 3) 595.0000 0.000000
BERTH_POSITION( 4) 900.0000 0.000000
BERTH_POSITION( 5) 37.00000 0.000000
BERTH_POSITION( 6) 600.0000 0.000000
BERTH_POSITION( 7) 900.0000 0.000000
BERTHING_TIME( 1) 12.00000 0.000000
BERTHING_TIME( 2) 22.00000 0.000000
BERTHING_TIME( 3) 28.00000 0.000000
BERTHING_TIME( 4) 28.00000 0.000000
BERTHING_TIME( 5) 19.00000 0.000000
BERTHING_TIME( 6) 21.00000 0.000000
BERTHING_TIME( 7) 5.00000 0.000000
0
50
100
150
200
0 8 16 24 32 40
No of Vessels
C
o
m
p
u
t
a
t
i
o
n
a
l

T
i
m
e

(
s
e
c
)
Original Paper Introducing the Concept
Kirkpatrick, S., Gelatt, C.D., and Vecchi, M.P., Optimization by Simulated Annealing,
Science, Volume 220, Number 4598, 13 May 1983, pp. 671-680.
Simulated Annealing strategy
Physical Analogy
Simulated Annealing Algorithm
Parameters
SA is based on neighbourhood search
Neighbourhood of a solution x is a set of solutions that can be reached from
x by a simple operation (move)
SA is a strategy which occasionally allows uphill moves.
Uphill moves in SA are applied in a controlled manner
A solid material is heated past its melting point and then cooled back into a solid state
(annealing). The final structure depends on howthe cooling is performed
slow cooling large crystal (lowenergy)
fast cooling imperfections (high energy)
Metropolis algorithm simulates the change in energy of the system when subjected to the
cooling process; the systemconverges to a final frozen state of a certain energy.
Thermodynamic simulation SA Optimization
System states Feasible solutions
Energy Cost
Change of state Neighbouring solution
Temperature Control parameter
Frozen state Solution (close to optimal)
TI must be high enough - in order the final
solution to be independent of the starting
one.
Temperature length (TL): number of
iterations at a given temperature
Cooling ratio (f): rate at which temperature
is reduced
A given minimum value of the temperature
has been reached
A specified number of total iterations has
been executed
Generated randomly.
Good solution (possibly produced by
another heuristics); in this case the starting
temperature should be lower.
Initial temperature (TI)
Temperature length (TL)
cooling ratio (function f)
stopping criterion
starting solution
Initial temperatures: 10, 40, 70, 100, and 130 C
Temperature length: N(N-1)/2
Cooling ratios:0.55, 0.65, 0.75, 0.85, 0.95, and 0.99
Initial temperature (TI)
Temperature length (TL)
cooling ratio (function f)
The minimum average objective
values were found when the initial
temperature was 40 and the
cooling rate was 0.65
1. A solution whose objective value is zero is found.
2. Temperature becomes less than 1.
3. The best value of the objective function has not
been changed during the previous five consecutive
external loops.
4.The initial sequence of vessels is in the increasing
order

+
1

Where0<< 1.
5. Pairwise exchanges (swapping the positions of two
randomly selected elements) are used to obtain
neighbours
Initial temperature (TI)
Temperature length (TL)
cooling ratio (function f)
stopping criterion
starting solution
space of feasible solutions
and neighborhood structure
Real data for a berth and sizes of vessels were collected from the Pusan East
Container Terminal (PECT), which is one of the largest container terminals in Korea.
The length of the wharf at PECT is 1200 m
The arrival times and the requested departure times were generated randomly
pi was also generated randomly within the range of the wharf
T = 40,r=0.65,
Additional travel cost = $10 l
i
/230
Penalty cost = $2000 l
i
/230
S.No Factors Number of Levels # Levels
1. No of vessels L1-7, L2- [1116], L2-[2629], and L3-[3840] 4
2. Problem Instance per Configuration 5
Total Problem Instances 4*5= 20
optimal solutions
were obtained for 18 of
the 20 example
problems.
A linear integer program was formulated for the berth-scheduling problem and the problem
was solved using the LINDO package.
The computational time of LINDO increased rapidly when the number of vessels became
higher than 7
Simulated annealing algorithm for the berth-scheduling problem was suggested.
It was found that the simulated annealing algorithm results in near-optimal solutions and that
the computational time was within the limits of practical usage
Many planners simultaneously consider the schedule of quay cranes and that of the berth.
This study assumed a wharf in the shape of a straight line. However, there are practical
examples of wharfs in different shapes or there may be multiple wharfs in the same area

You might also like