4.3 Exact Mixed-Integer Programming (MIP) Formulation
4.3.1 Notation
The proposed models are based on the directed graph G = {V, A} whereas V
describes the node sets and A = {(i, j) | i, j ∈ V} denotes the arc set. V
consists of customer node set VC, terminal node set VT, as well as the start and
end vertices {0} and {v+ 1}. VC is defined by the shipper VS = VSi ∪VSo and
receiver nodes VR = VRi ∪VRo. VSi and VRi refer to the first time window of
the shipper/receiver, in which an empty/full container has to be made available. After the container c ∈C has been completely filled or emptied, respectively, it can be picked up by a vehicle k ∈ K during the second time window (VSo and
VRo). Modeling two customer time windows requires doubling the customer nodes.
Since n determines the total number of customers, e.g. node 1 and (n+ 1) define the first and second time window of shipper 1. Consequently, the nodes provide the same coordinates but different time window values. The terminal node set
VT refers to the transportation types, i.e. VT =VTIE ∪VTIF ∪VTOE ∪VTOF. The
number of all customer and terminal nodes is defined by v. Since for each IF and OF transportation request, the pickup and delivery node are explicitly given by the input data, every customer has its corresponding terminal node. In case of an OF transportation request, this means that, after a shipper i ∈ VSo has
been served by a vehicle, the full container has to be moved to terminal node (i +n) ∈ VTOF. In case of an IF transportation request, a full container has
to be moved from terminal node i ∈ VTIF to its corresponding receiver location
(i−2n) ∈ VRi. Since a vehicle starts and ends its tour at the depot, the depot
vertex is subdivided into nodes 0 and (v+ 1). Furthermore, a large number of ea
empty containers can be stacked in the depots. To illustrate the different types of node sets, Figure 4.5 shows their interrelations within the distinct and the shared container problem. The additional possibilities of the SCP to allocate the containers between the node sets are illustrated through the dashed arrows.
During a route, node i ∈ VC ∪VT has to be reached during its time window,
determined by the interval [bi/ei]. Thus, a vehicle has to arrive at location i
before time bi. However, arrival beforebi is allowed and leads to waiting time for
the vehicle. For each two distinct stop locations, tij represents the travel time
from location ito locationj. At nodei∈VC∪VT a service timesi for the picking
up/dropping off operation of a container is considered. While the binary decision variables yijc andxijk define whether container c/vehicle k traverses the arc from
location i to j, Lic and Tik specify the arrival time of a container/vehicle at a
4.3 Exact Mixed-Integer Programming (MIP) Formulation 53
Figure 4.5: Possible Container Flows Between the Node Sets
To sum it up, for the model formulation the following sets are required:
V ={0} ∪VC ∪VT ∪ {v+ 1} : Set of locations
VC =VS ∪VR : Set of customer nodes
• VS =VSi∪VSo: Set of shippers
– VSi ={1, . . . , s}: First time window
– VSo ={n+ 1, . . . ,2s}: Second time window
• VR =VRi ∪VRo: Set of receivers
– VRi ={s+ 1, . . . , n}: First time window
– VRo ={2s+ 1, . . . ,2n}: Second time window
VT =VTOF ∪VTIF ∪VTIE∪VTOE : Set of terminal nodes (corresponding to the
number of customers and IE/OE containers)
• VTOF ={2n+ 1, . . . ,2n+s}: OF terminal nodes
• VTIF ={2n+s+ 1, . . . ,3n}: IF terminal nodes
• VTIE ={3n+ 1, . . . ,3n+ei}: IE terminal nodes
• VTOE ={3n+ei+ 1, . . . , v}: OE terminal nodes
K ={1, ..., m} : Set of vehicles
C ={1, ..., r+ei+ea} : Set of containers (corresponding to the number of IF/IE
54 4 Potential of Container Sharing - Basic Scenarios
The following parameters have to be defined: 0 : Start node of a tour (Depot)
(v+ 1) : End node of a tour (Depot)
n =s+r : Number of customers
• s: Number of shippers
• r: Number of receivers
ei : Number of IE containers
eo : Number of OE containers
ea : Number of additional empty containers originating from the depot
v = 3n+ei+eo : Number of all customers and terminal nodes
m : Number of vehicles available at the depot
tij : Travel time from node ito j, where i6=j
si : Service time required to pick up/drop off a container at node i
[bi/ei ]: Time window of nodei
M : Sufficiently big constant, e.g. M =P i∈V
P j∈V tij
The following decision variables are used:
xijk: =
1 if vehicle k drives from nodei to j
0 else
yijc: =
1 if container c is carried from node ito j
0 else
Tik: Arrival time of vehicle k at nodei
Lic: Arrival time of container c at nodei