2.3 Notation and the Proposed Model
The following notations are used to formulate VRTSP:
Sets:
S – set of supplier (inbound) nodes,
C – set of customer (outbound) nodes,
$N=S\cup C\cup \{0\}$ – entire set of nodes, where 0 indicates the crossdock,
${A_{1}}=\{(i,j)i,j\in S\cup \{0\},i\ne j\}$ – set of feasible arcs in the picking phase,
${A_{2}}=\{(i,j)i,j\in C\cup \{0\},i\ne j\}$ – set of feasible arcs in the delivery phase,
$A={A_{1}}\cup {A_{2}}$ – set of all feasible arcs in the network,
${K_{1}}$ – set of inbound vehicles,
${K_{2}}$ – set of outbound vehicles,
$K={K_{1}}\cup {K_{2}}$ – set of all vehicles,
${D_{1}}$ – set of strip doors,
${D_{2}}$ – set of stack doors,
$D={D_{1}}\cup {D_{2}}$ – set of dock doors,
G – set of product types.
Parameters:
$[{a_{i}},{b_{i}}]$ – time window at node i,
${c_{ij}}$ – transportation cost from node i to node j,
$\mathit{CT}$ – changeover time of vehicles at dock doors,
o – operation cost of vehicles,
Q – maximum load capacity of vehicles,
${q_{i}^{g}}$ – supply/demand of product type g at node i,
$s{t_{i}^{g}}$ – service time of product type g at node i,
$t{t_{ij}}$ – travel time from node i to node j,
${\alpha _{i}^{g}}$ – earliness penalty cost of product type g at node i,
${\beta _{i}^{g}}$ – tardiness penalty cost of product type g at node i,
${K_{i}}$ – maximum number of available inbound vehicles,
${K_{o}}$ – maximum number of available outbound vehicles.
Decision variables:
${x_{ij}^{k}}$ – 1 if vehicle k moves from node i to node j, otherwise 0,
${X_{d}^{k}}$ – 1 if vehicle k is assigned to strip door d, otherwise 0,
${Y_{d}^{k}}$ – 1 if vehicle k is assigned to stack door d, otherwise 0,
${P_{ij}}$ – 1 if inbound vehicles i and j are assigned to the same strip door and vehicle i is
the predecessor of vehicle j, otherwise 0,
${Q_{ij}}$ – 1 if outbound vehicles i and j are assigned to the same stack door and vehicle i
is the predecessor of vehicle j, otherwise 0,
${v_{ij}}$ – 1 if product units have to be transported from inbound vehicle i to outbound
vehicle j, otherwise 0,
$t{f_{ij}^{g}}$ – amount of product type g transported from inbound vehicle i to outbound
vehicle j,
${y_{ij}}$ – total quantity of products from node i to node j,
${\mathit{AT}_{i}}$ – arrival time at node i,
${e_{i}}$ – earliness time at node i,
${t_{i}}$ – tardiness time at node i,
$u{s_{k}}$ – unloading start time of inbound vehicle k,
$u{e_{k}}$ – unloading end time of inbound vehicle k,
$a{t_{k}}$ – available unloading start time of inbound vehicle k,
$l{s_{k}}$ – loading start time of outbound vehicle k,
$l{e_{k}}$ – loading end time of outbound vehicle k,
$d{k_{k}}$ – available departure time of outbound vehicle k.
The proposed VRTSP model is formulated as follows:


• Constraints

– Vehicle routing constraints:

– Truck scheduling constraints:

– Product transshipment constraints:
Objective (
1) minimizes the total supply chain cost, which has four components: total transportation cost, total vehicle operation cost, total earliness penalty cost, and total tardiness penalty cost. We note that material handling cost in the crossdock yard is ignored by assumption.
Constraints can be divided into three categories. The first type of constraints are related to the vehicle routing problem (constraints (
2)–(
13)). Constraints (
2) and (
3) ensure that nodes excluding the crossdock are serviced once by one vehicle. Route continuity is guaranteed by constraint (
4). Constraint (
5) determines the number of inbound vehicles to use for pickup routes; similarly, constraint (
6) requires that all delivery routes are made with available outbound vehicles. The total quantity transported among nodes is expressed by constraint (
7). Constraint (
8) restricts the load quantity on all routes, so a vehicle cannot ship more than its maximum capacity. Constraint (
9) computes the arrival times at each node as the maximum of the sum of the arrival time, total service time, and travel time from other nodes. Constraint (
10) states that the arrival time of vehicles is greater than the arrival time at the first node from the crossdock. Constraint (
11) ensures that the return time of vehicles to the crossdock is greater than the maximum of the sum of the arrival time, total service time, and travel time. Earliness and tardiness are computed by constraints (
12) and (
13), respectively.
The second type is related to the vehicle scheduling problem (constraints (
14)–(
25)). Constraint (
14) ensures that each inbound vehicle is assigned to a strip door if it is used for pickup routes. Similarly, constraint (
15) ensures that each outbound vehicle is assigned to a stack door if it is used for delivery routes. Constraints (
16) and (
17) represent the precedence constraints in a strip door when two vehicles are assigned to the same strip door. These constraints are used to compute the unloading time of each vehicle. Constraints (
20) and (
21) ensure that the unloading start time of each inbound vehicle at the crossdock is the maximum of the arrival time of the vehicle and the end time of its predecessor plus the vehicle changeover time. Constraint (
22) describes the unloading end time of each inbound vehicle. Based on the assumption that a vehicle cannot leave the door before its task is completed, the unloading end time is equal to its start time plus the time required to unload all products transported to outbound trucks. Similarly, constraints (
18) and (
19) represent the precedent constraints in a stack door. Constraints (
23) and (
24) determine the loading start time of an outbound vehicle according to its predecessor and the inbound vehicles that transport products to the outbound vehicle. This can be expressed as the larger time among the maximum of the loading end time of the predecessor and the maximum of the unloading end times of the inbound vehicles that transport products to the outbound vehicle. The loading end time of an outbound vehicle can be computed as the sum of its start time and the time required to load all products transported by inbound vehicles, which is enforced by constraint (
25). An outbound vehicle can depart from the crossdock after its loading task is completed; thus, the departure time of an outbound vehicle is equal to its loading end time, which is expressed by constraint (
26). Constraints (
27) and (
28) represent the relationship between
${v_{ij}}$ and the amount of product transported from inbound vehicle
i to outbound vehicle
j.
Product transshipment between inbound vehicles and outbound vehicles is expressed by constraints (
29) and (
30). Constraint (
29) ensures that the total quantity of product types transported from an inbound vehicle to outbound vehicles is equal to its pickup quantity. Constraint (
30) ensures that the total quantity of product types transported from inbound vehicles to an outbound vehicle is equal to its delivery quantity.