1 Introduction

Following the steep decline in world trade due to the coronavirus pandemic, seaborne container traffic, comprised mainly of general merchandise, is enjoying a massive growth. Marine container traffic through port is transported from/to import and export customers by trucks directly or via rail connection from/to the so-called inland port. It is a common practice for container drayage (hereinafter referred to as CD) between a marine container terminal (or an inland port) and customers that a specific tractor tows a chassis trailer with a container in a stuffed or empty state to a customer and return it but in a reverse state to the terminal.

For a more efficient container (as well as chassis) use and associated less drayage traffic, the so-called container round use (CRU) has been proposed in Japan (JILS, 2019), where an empty container (EC) after unloading at a consignee is directly assigned to the next shipper from the consignee instead of returning to the terminal. The CRU has to be promising for the CD in an era of growing world trade especially for huge urban areas, in which large container terminals and inland ports are located, due to less road traffic resulting from its efficient operation. While the CRU is productive, its feasibility is subject to some constraints such as a match between the time when a container becomes empty at the consignee and the one when the shipper requires it, and a responsibility for an EC damaged, which is easily identified in most cases since the damage check is made at the terminal soon after its immediate return from the consignee in case of the CD.

Under this background, this study proposes a novel drayage practice of the CRU for a more efficient container and drayage vehicle usage. While the ordinary CRU guarantees a more efficient use of such equipment than the CD, its tractor-chassis operation remains the same as the one for the CD, i.e. a tractor moves always with a chassis. This operational practice is not necessarily efficient when the tractor dwell time is long at the customer site due to cumbersome container loading/unloading (L/U). To overcome this drawback, we propose a new CD operation that allows tractors to be uncoupled with chassis trailers at customer sites, leave them there, and move solely to other customers to handle their CD services.

In the meantime, the preservation of natural environment has obtained much more attention on these days. While carbon dioxide (CO2) has the strongest effect on the global warming, the transportation industry is considerably responsible for CO2 emission (CO2EM) since the industry heavily relies on fossil fuels. For this reason, less CO2EM is likely secured by a more efficient drayage operation, i.e. the new CRU operation, in port (and inland port) areas.

The proposed CRU practice (hereafter referred to as PCRU) appears to be against the CO2 reduction because uncoupled tractor (UCT) moves simply add to the tractor-chassis moves for the normal CRU (NCRU). In Sect. 3, an illustrated example of the CRU will demonstrate a considerable reduction of the CO2 weighted vehicle travel distance by the PCRU especially for the case with long container L/U time, which must result in lengthy tractor dwelling at the customer sites for the NCRU. The improvement of tractor use subsequently results in less CO2EM. Notice that this study does not consider the vehicle travel distance, but evaluates the CO2EM resulting from vehicle itinerary. This is because the different vehicle move attribute, i.e. a tractor towing a chassis or a tractor running solely without a chassis, result in a different level of CO2EM. In essence the PCRU is a more environmentally friendly operation than the NCRU. Note that the drayage routing solution of the PCRU at optimality may be the same as one of the NCRU, especially with short L/U time.

To represent the PCRU routing problem, a mixed integer programing (MIP) model is developed. And to solve the large-scale instances of PCRU, we also propose a heuristic approach based on the Simulated Annealing (SA) metaheuristic. The computational results are shown as the impact of PCRU policy to CO2EM and others, the performance of proposed approach based on SA heuristic, the proposed approach in large scale instances, and UCT move contribution to CO2EM reduction.

This paper is organized as follows. After this section, the relevant literature is reviewed in Sect. 2. Section 3 demonstrates the motivation that leads us to propose the PCRU practice, and subsequently details its model framework. The following Sect. 4 describes the problem formulation. Section 5 describes the SA based heuristic approach, and the Sect. 6 discusses the impact of PCRU policy and our proposed SA heuristic in computational experiments. Finally, Sect. 7 concludes the paper.

2 Literature review

Many researchers have discussed the study focusing on CD in recent years. First, this section discusses some review studies on CD operation published in last five years. As this study contributes the truck separation mode, truck separation mode related works are also reviewed. As this study is a variant of vehicle routing problem (VRP), the related works in VRP for CD operation are reviewed. This study proposes a SA based heuristic to solve the large-scale instances in PCRU routing problem. Among the SA application, we review some studies proposed SA heuristic for VRP variants.

2.1 Review papers on CD operation

This section discusses some review studies on CD operation published in last five years. Chen et al. (2022) review the existing literature on CD studies from multiple points of view as follows. They describe CD has a significant impact on the economic advantages of the long-haul intermodal container transportation chain, the management, environment and social benefits of the stakeholders involved. As the operational mode, CD problems are generally considered to be carried out in NCRU. In NCRU, the tractor and driver have to stay with the trailer and/or container during L/U operation. If L/U takes a long time, this NCRU will be inefficient. (i) To make better use of the drivers’ time and to deploy the tractors more effectively, “separation mode” is proposed to minimize the total cost. (ii) To improve the use of resources further, the operations of heterogeneous fleet with “multiple loads” are proposed. As an instance, Chen et al. (2021) describe that the heterogeneous fleet with multiple loads provides more matching possibilities for resources that can potentially save operational costs. (iii) “Truck platooning mode” can reduce the number of drivers by more than half and simultaneously reduce the total fuel consumption (only for large-scale instances) while reducing the total cost by nearly 40%. (Xue et al., 2021). (iv) As other approach, using “innovative containers” such as combinable and foldable containers can lead to significant savings (Shintani et al., 2010, 2019, 2020).

Escudero-Santana et al. (2021) provides an extensive review and analysis of how certain policies can influence the performance of haulage operation. The first work from an operational perspective and focused on the daily drayage problem (DDP) is described. Special attention has been paid to integrate the allocation of empty containers and the routing in drayage operations. Other studies have considered DDP in which flexible tasks and multiple depots. Other works have also considered different container sizes. Other studies have also considered stochastic characteristics of the problem. One variation of the previously mentioned problem is the tractor and trailer routing problem (TTRP).

Ghezelsofle et al. (2018) and Benantar et al. (2020) also reviewed related studies on CD operation. They classify situations where tractors and containers are coupled or separated during customer service. These operations are known as stay-with and drop-off and pick-up, respectively. The studies are classified based on (i) whether EC repositioning is considered, (ii) the number of containers transported by a tractor at a time, (iii) the time windows at a customer, and (iv) the approach used to solve these problems.

2.2 Related work of truck separation mode

This study can contribute the truck separation mode. “Truck separation mode” means, after finishing the first stage of a task, the driver can drive the tractor to serve the next customer, leaving the trailer with container at the current customer’s location for (un) packing (Xue et al., 2014).

Xue et al. (2014) study a new variant of CD problems in the separation mode and conclude that the separation mode operation can reduce at least 15% of the total cost. However, it is not considered that the container is unloaded at a customer site without reaching a terminal. Song et al. (2017) investigate a CD problem considering container maintenance under the separation mode. They show that the separation mode can reduce 12–16% of the time. Inbound ECs are not considered, but outbound ECs are applied to schedules. In conventional operations, a tractor must wait at a shipper or consignee node until L/U operation is completed. To consider the maintenance time for containers, the UCT and EC repositioning are provided. It is assumed that a tractor always is assigned to nodes before and after L/U operation at a customer site. Xue et al. (2015) consider the L/U time length for the CD problem with tractor and trailer operating in separable mode. The truck separation mode related works do not analyze the effect of UCT move on L/U time length. Therefore, this study considers that, one truck is assigned to one node before L/U operation and one/another truck can be assigned to the other node after L/U operation at a customer site.

2.3 Related works in VRP for CD

This study is a variant of VRP. The related works in VRP for CD operation are reviewed as follows.

Jula et al. (2005) have considered traveling salesman problems in two or more vehicles with time window constraints. The problem regards a customer pair as one node based on the assumption that there is a precedence constraint, which is a link between two tasks that lays down the condition on which the second task is run, between a customer picked up and another delivered.

Imai et al. (2007) have considered that, in the conventional operation, one tractor transports the stuffed container (STC), and the other transports an EC between a port terminal and a customer. The effect of triangular transport systems is discussed. In this system, a truck transports an STC from a terminal to a consignee; an EC is repositioned to a shipper after unloading at the consignee. Thereafter, the STC after loading at the shipper is returned to a terminal. In their study, when there are not enough tractors, it is considered that a tractor is leased. Braekers et al. (2013) considered a problem similar to our study. One depot of tractors and two or more port terminals are set up, and the delivery route of STC and EC is determined. Subsequently, in Braekers et al. (2014), the authors extended the problem and simplified the formulation; the solution shows the lower bound, indicating the accuracy of the solution. Namboothiri et al. (2008) developed a model that determines the daily pick-up and delivery schedule to minimize transportation costs. The tractor schedule is determined based on the reserved access time zone to a gate. The container conditions that is stuffed or empty, are not considered. Lai et al. (2013) determined a visit sequence with container conditions. The number of STCs and ECs transported and the travel route taken by each tractor are determined. To minimize the operational cost of tractors, the target number of EC repositioning is reduced. Nossack and Pesch (2013) studied the VRPs with time window constraints for STC and EC. A container is supplied and the node type is distinguished according to the needs of the customer and terminal. Zhang et al. (2011) studied the CD for exported and imported STCs and inbound ECs. They addressed the CD problem in China and South Korea. The EC depot is provided the same location as the truck depot, and the planning period is one day. The container can be unloaded and loaded on the trailer at the customer site, and it differs from this present condition in Japan. Zhang et al. (2014) considered the dynamic CD problem with two or more depots for ECs. The nodes that receive and deliver ECs are distinguished. The operational time of tractors is minimized and the visit sequence of tractor is controlled by a time window constraint.

Table 1 shows the related works arranged in chronological order. Most studies consider objective functions wherein the travel distance, travel/service time, and number of vehicles assigned are converted into costs, and the related penalty costs are considered. In some studies, the service time at a customer site is included in the travel time. In recent studies, to address the problem based on a more realistic situation, the service time or elapsed time spent at a customer site until the container is available is considered. However, no studies have analyzed the effect of service time length on the objective function. This study considers the effect of service time length on the result. This is the important unique feature of this study. In most studies, travel trips may be distinguished by container types as STC and EC. In some studies, travel trips are distinguished only based on the outbound and inbound routes. This study attempts to mitigate the CO2EM resulting from the STC and EC move with different weights.

Table 1 Related works on vehicle dispatch and CD

As shown in Table 1, the unproductive travel by only the tractor is rarely considered in reality. In Xue et al. (2014, 2015), only one truck must assign to two nodes located at a customer. Ghezelsofle et al. (2018) consider only one node at a customer site. Both studies do not consider that two different tractors can visit the two nodes before and after L/U operation, respectively.

This study investigates the impact when the unproductive travel is considered. A customer site is often treated as one node, but it is treated as two nodes corresponding to the states before and after cargo handling in some cases. This study belongs to the latter. If the elapsed time at a customer site does not exceed the daily working hours, two different tractors may visit each of the two nodes located at the customer site. Based on this flexible operation, the perspective of investigating the impact on CO2EM is different from other studies.

2.4 Studies based on SA heuristic

This study proposes a SA based heuristic to solve the large-scale instances of PCRU. There are so many studies that SA heuristic is applied. Among the SA applications, we focus on some instances of VRP (e.g., Lin et al., 2009; Wang et al., 2015; Wei et al., 2018; Yu et al., 2017, 2023 and so on) or location-routing problem (LRP) (Dai et al., 2023; Ferreira & Queiroz, 2018 and so on) as follows.

Lin et al. (2009) considered the application of a SA heuristic to the truck and trailer routing problem (TTRP), that is a variant of the VRP. In the TTRP, the use of trailers is considered where customers are serviced by a truck pulling a trailer. The purpose of that study is to demonstrate that a carefully designed SA heuristic is competitive with other metaheuristics in solving TTRP. The computational results indicate that their SA heuristic performs as good as prior approaches. Wang et al. (2015) developed an efficient metaheuristic to solve the VRP with simultaneous pickup–delivery and time windows (VRPSPDTW) using a parallel SA (p-SA) algorithm that minimizes the number of vehicles as the primary objective. Experimental results demonstrate the effectiveness of the p-SA algorithm. Yu et al. (2017) proposed the hybrid VRP, which is an extension of the Green VRP. They focus on vehicles that use a hybrid power source, known as the Plug-in Hybrid Electric Vehicle (PHEV) and generate a mathematical model to minimize the total cost of travel by driving PHEV. SA heuristics with a restart strategy (SA_RS) are proposed to solve HVRP. They implement SA_RS with the Boltzman function (SA RSBF) and the Cauchy function as acceptance criteria for a worse solution (SA_RSCF). In general, the statistical test show that SA_ RSCF is better than SA_RSBF. It is also reported that SA_RSCF performs better compared to the other metaheuristics. Wei et al. (2018) propose the SA based heuristic approach to solve the capacitated VRP with two-dimensional loading constraints (2L-VRP), that considers the routing and loading aspects simultaneously. In the 2L-VRP, SA based heuristic outperforms the Variable Neighborhood Search or Ant Colony Optimization.

Considering the relevancy of simultaneously handling product deliveries and returns and the emerging idea of crowd-shipping, Yu et al. (2023) proposes a new variant of VRPSPD called the VRP with Simultaneous Pickup and Delivery and Occasional Drivers (VRPSPDOD). VRPSPDOD can be categorized as an extension of VRPSPD. In VRPSPDOD instances, it is reported that the SA outperforms a proposed mathematical model solved using CPLEX. In Ferreira and Queiroz (2018), two heuristics based on SA are presented for solving the capacitated version of the LRP. In the computational experiments conducted on three sets of benchmark instances, it is reported that the two proposed SA heuristics are very competitive and have outperformed other methods published in the literature.

Home health care (HHC) service plays an increasingly vital role in the modern health care system’s response to population aging and shortages of medical resources. Dai et al. (2023) proposed a new LRP with a mixed fleet and a battery swapping stations for electric vehicles use, which aims to design a suitable HHC center location and caregiver route plan that minimizes the construction costs of HHC centers, travel costs, and carbon emission costs. That study motivates the attempts to propose a competitive SA algorithm. The results show that increasing the share of EVs in a mixed fleet can decrease the cost.

Therefore, we consider to propose the SA based heuristic to solve the large-scale instances of PCRU operation.

2.5 Contributions and objectives

The contributions of this study include the following:

  1. (1)

    The environmental impact of marine CD operation is proposed as PCRU. The objective function is to minimize the CO2EM based on the travel distance weighted by STC and EC transported and the distance of UCT move. Considering the CO2EM per unit distance, because the cargo weight of a traveling tractor varies, the distance covered during the EC move can be reduced.

  2. (2)

    MIP model of PCRU practice is constructed. To represent PCRU as a MIP model, we consider that a tractor can be assigned to two nodes located at a customer site via another customer. A tractor can visit two nodes sequentially at one customer site, or two different tractors can be assigned to each of the two nodes at a customer site. Furthermore, this study considers that one tractor can visit one customer and return to the other via another customer.

  3. (3)

    SA based heuristic approach is developed to solve large-scale instances of PCRU. This study considers the time constraint between two nodes before and after container L/U operation at a certain customer. To solve large scale instances of PCRU, the solution representation by node pair basis and the process to satisfy the precedence constraint are proposed in SA based heuristic.

  4. (4)

    In long L/U process time, the UCT move contributes to reduce CO2EM and number of tractors required. For flexible operations as PCRU, one tractor does not always operate before and after L/U process at a shipper/consignee. If the L/U process time is long or the shipper/consignee waits for a long time, by allowing the UCT move, a part of the EC move can replace the UCT move. Impact of L/U process time is addressed by the UCT move. Accordingly, CO2EM and the number of tractors required can be reduced.

3 Problem description

3.1 Motivation of the problem

Here, we demonstrate how the PCRU operation could be more efficient in terms of CO2EM, using a small drayage example. Table 2 shows the travel distance between a terminal and customers, L/U time at a customer, CO2EM per kilometer distance, and working time limit of a tractor, used as an input data for three consignees and three shippers. Figure 1(a and b) show the optimal drayage routing for NCRU and PCRU, respectively. The number of tractors to be used is out of question for this problem with an assumption that the terminal has contracts with a sufficient number of drayage operators to cover all the drayage tasks.

Table 2 Input data of a small drayage example
Fig. 1
figure 1

Routing example

The total distance traveled for PCRU (355.1 km) is longer than NCRU (341.9 km), but CO2EM for PCRU (332.4 kg-CO2) is less than NCRU (380.9 kg-CO2) where each vehicle movement (i.e. STC move, EC move or UCT move) is assumed to produce the different amount of CO2. And PCRU can also contribute less tractors required. Because a tractor does not have to wait a long L/U time under a limited working time. Notice that this example assumes no time-windows for container delivery and pick-up at the customers.

Inspired with this observation, we propose the PCRU routing problem, which is abbreviated as the PCRURP. In computational experiments, solution comparisons will be made between the PCRU and NCRU, and for this we also consider the NCRU routing problem (NCRURP). Since it is quite apparent that the CD is less efficient than the NCRU and PCRU in terms of vehicle travel distance and subsequently CO2EM, this paper focuses on only the two CRU practices.

3.2 Assumptions

The CRU routing models make the following assumptions:

  • No time-windows are defined for container delivery and pick-up at customer sites.

  • Drayage tractors have a working time limit for a day (it could be a weekly time limit for distant drayage in a vast hinterland such as U.S.).

  • Each vehicle moves operated for the drayage service (i.e. chassis move by a tractor towing with a STC, chassis move with an EC, or UCT move) produces a different amount of CO2EM.

3.3 Network representation

The CRU models are defined using a graph \(G=(N,A)\) where \(N=\{1, 2, \dots , |N|\}\) is a set of nodes, and \(A = \{(i, j): i, j \in N\}\) is a set of arcs. The nodes in these models do not simply represent entities of customers shown in Table 3, but the following hypothetical ones associated with three different types of move that are described later.

Table 3 Node attribute

The drayage operation consists of three different tractor moves (arcs); (i) a tractor towing a chassis with a STC, (ii) a tractor towing a chassis with an EC, and (iii) a tractor moving solely. The NCRU routing is comprised of move types (i) and (ii), whilst the PCRU has all the types. Note that as mentioned before, the PCRU routing may result in the NCRU one with short L/U process. These moves are associated with different nodes as follows:

  • For type (i), the origin and destination are denoted by P(S) and the terminal, or the terminal and D(C), respectively. [This OD pair is expressed as P(S)-0, or 0-D(C).]

  • For type (ii), the origin and destination could be denoted by ES(C)/ES(0) and ED(S)/ED(0), respectively. [This OD pair is expressed as ES(C)/ES(0)–ED(S)/ED(0).]

  • For type (iii), the origin and destination could be denoted by the destination of one OD pair and the origin of another OD pair in types (i) and (ii). [For instance, this OD pair is expressed as D(C)–0, D(C)–P(S), D(C)–ES(C)/ES(0), ED(S)/ED(0)–0, ED(S)/ED(0)–P(S), or ED(S)/ED(0)–ES(C)/ES(0).]

How these nodes and arcs work out in the models is demonstrated by the following NCRU example where the node attribute is provided in Table 4.

Table 4 Node number and its attribute

Figure 2(b) illustrates the routing for PCRU, in which the EC reposition (or supply) is executed directly from consignees to shippers, using PCRU example of Fig. 1(c). At consignee “b”, the tractor leaves the chassis for container reposition and returns to the terminal due to its job termination time. This tractor’s itinerary is: 0–2–0, where an import container is transported from the terminal 0 to D(C) as node 2, the tractor solely moves back to the terminal 0. The unloading is represented by the arc from D(C) as node 2 to ES(C) as node 8. For a trip 0–8–15–6–0, another tractor solely moves from the terminal 0 to ES(C) as node 8, the EC is repositioned from ES(C) as node 8 to ED(S) as node 15. The loading is represented by the arc from ED(S) as node 15 to P(S) as node 6, and brings the export container back to the terminal. Between shipper “d” and shipper “e”, the other tractors solely move from ED(S) as node 13 to P(S) as node 5, ED(S) as node 14 to P(S) as node 4, for a trip 0–1–7–14–4–0, and 0–3–9–13–5–0. Because this behavior avoids waiting for loading operation. The other container itinerary is represented by the similar sequence but without UCT move. For tractor itinerary, the following two constraints must be satisfied: (i) the visit sequence between two customers or customer and the terminal, and (ii) the lapsed time between two nodes at a customer.

Fig. 2
figure 2

Routing representation

Figure 2(c) illustrates the routing for NCRU, in which the EC reposition (or supply) is executed directly from consignee “a” to shipper “d”, using NCRU example of Fig. 1(b). Those customers do not have so long L/U times. However, the other customers with long L/U time are operated by shuttle service. The tractor’s itinerary is: 0–2–8–0, where an import container is transported from the terminal 0 to D(C) as node 2. The unloading is represented by the arc from D(C) as node 2 to ES(C) as node 8. After that, the EC is repositioned from ES(D) as node 8 to ED(0) as node 17. In this example, ES(0) as node 10 and ED(0) as 18 are not used in actual route. In such cases, the dummy tractor’s itinerary is: 0–10–18–0, where a dummy container is transport from ES(0) to ED(0) with no travel distance and no travel time. Therefore, the dummy nodes ES(0) and ED(0) setting can represent the tractor’s itinerary including the shuttle service.

3.4 Constraints for route construction

In an STC (ether import or export) drayage, a tractor moves to a consignee directly from the terminal or to the terminal directly from a shipper. An EC is transported only from ES(C) to ED(S). Also, D(C) directly heads to ES(C), both of which are related to the same consignee C, representing container unloading. Similarly, ED(S) goes directly to P(S).

The time constraint between two nodes before and after container L/U operation at a certain customer is considered. Three types of situations arise when any tractor visits two nodes each related to a specific customer:

  • Type A: one tractor consecutively visits both nodes.

  • Type B: a tractor visits one node while a different tractor visits another.

  • Type C: a specific tractor visits both nodes, but not consectively. That is, the tractor travels to another customer after one node and comes to the other node after drayage tasks for other customers.

As shown in Fig. 3(b) for type A after a tractor arrives at node D(C) [or ED(S)], it will wait until the completion of L/U operation, i.e. it transits to node ES(C) [or P(S)]. Therefore, the completion time of L/U, i.e. \({h}_{D(C)}\) (or \({h}_{ED(S)}\)) equals to time when the tracor transits to node ES(C) [or P(S)], i.e. \({a}_{ES(C)}^{+}\) (or \({a}_{P(S)}^{+}\)).

Fig. 3
figure 3

Physical and time process

As shown in Fig. 3(c), for type B a tractor leaves a chassis together wth a container at consignee [D(C)] to be repositoned to another customer. When another tractor arrives at ES(C) relavent to that D(C), it brings that container back to the terminal. Note that the tractor has to wait when container unloading is not finished. This situation is illustrated in Fig. 3(c) where \({h}_{D(C)}\) is the completion time of L/U process and \({a}_{ES(C)}^{+}\) the arrival time of the second tractor. The sequence at a shipper P(S) is exactly the same. For type C, a tractor is engaged with other drayage tasks for different customers after leaving a STC or EC at a customer and comes back to the customer in concern after other drayage tasks. Consequently, the time constraint is similar to type B. Accordingly, a precedence constraint is required between D(C) and ES(C). That is, for a certain consignee, the time when an EC is supplied (\({h}_{D(C)}={a}_{D(C)}^{+}+{T}_{D(C),ES(C)}\)), the time when a tractor arrives to acquire an EC (\({a}_{ES(C)}^{+}\)), and the time when it can receive an EC and leave for the next node (\({a}_{ES(C)}^{-}\)), are ordered depending on the three tractor sequence types A, B and C. The following precedence relationship is concluded within \({a}_{ES(C)}^{-}=\text{max}\left\{{h}_{D(C)},{a}_{ES(C)}^{+}\right\}\).

Note that this condition is satisfied only when both D(C) and ES(C) are related to the same customer. The time when an EC is picked up (\({h}_{D}\)) is defined in the next subsection. Moreover, the constraint between ED(S) and P(S) for a shipper S can be considered in the same manner as discussed earlier.

The working time of a day for a tractor corresponds to the working hours of the driver. The tractor working time is defined to be the sum of the travel time between a pair of nodes and waiting time for L/U at customers. This working time must not exceed the predetermined limit.

4 Problem formulation

The PCRURP (and NCRURP) can be defined using a weighted graph \(G=(N, A)\), where \(N=\{1, 2, \dots , |N|\}\) is a set of nodes, and \(A = \{(i, j): i, j \in N\}\) is a set of arcs. The PCRURP (and NCRURP) can be formulated as a mixed-integer programing (MIP) model. The objective function is the minimization of CO2 emitted by vehicle moves for CD. As NCRURP is a variant of the PCRURP, we first model the PCRURP as a MIP model and then show the additional constraints needed in order to model the NCRURP.

4.1 Notations

In this section, we introduce (in Table 5) the notation used in the proposed mathematical models for the PCRURP and NCRURP presented in Sects. 4.2 and 4.3, respectively.

Table 5 Notations for PCRURP formulations

4.2 Formulations of PCRURP

Using the variables and parameters described above, the problem is formulated as follows:

[PCRURP]

$$ {\text{Minimize}}\quad \sum \limits_{i \in N} \sum \limits_{j \in N} \sum \limits_{k \in V} CE_{ij} D_{ij} x_{ijk} $$
(1)

Subject to

$$ \sum \limits_{j \in N} x_{ijk} = y_{ik} \quad \forall i \in N,\,k \in V $$
(2)
$$ \sum \limits_{i \in N} x_{ijk} = y_{ik} \quad \forall j \in N,\,k \in V $$
(3)
$$ \sum \limits_{k \in V} y_{ik} \left\{ {\begin{array}{*{20}c} { \le \left| N \right| - 1} & {\forall i \in \left\{ 0 \right\}} \\ { = 1} & {\forall i \in N\backslash \left\{ 0 \right\}} \\ \end{array} } \right. $$
(4)
$$ u_{0k} = 0\quad \forall k \in V $$
(5)
$$ u_{ik} - u_{jk} + 1 \le |N|\left( {1 - x_{ijk} } \right)\quad \forall i,j \in N\backslash \left\{ 0 \right\},\,k \in V $$
(6)
$$ u_{jk} - u_{ik} - 1 \le |N|\left( {1 - x_{ijk} } \right)\quad \forall i,j \in N{\rm{\backslash }}\left\{ 0 \right\},k \in V $$
(7)
$$ y_{ik} \le u_{ik} \le |N|y_{ik} \quad \forall i \in N{\rm{\backslash }}\left\{ 0 \right\},\,k \in V $$
(8)
$$ \sum \limits_{k \in V} x_{0jk} = 1\quad \forall j \in N^D $$
(9)
$$ \sum \limits_{k \in V} x_{i0k} = 1\quad \forall i \in N^P $$
(10)
$$ \sum \limits_{j \in N^{ED} } \sum \limits_{k \in V} x_{ijk} = 1 \quad \forall i \in N^{ES} $$
(11)
$$ \sum \limits_{i \in N^{ES} } \sum \limits_{k \in V} x_{ijk} = 1 \quad \forall j \in N^{ED} $$
(12)
$$ \sum \limits_{j \in N} x_{ijk} - \sum \limits_{j \in N} x_{jik} = 0\quad \forall i \in N,\,k \in V $$
(13)
$$ b_0 = 0 $$
(14)
$$ a_j^+ \ge b_0 + T_{0j} - \left( {1 - \sum \limits_{k \in V} x_{0jk} } \right)M\quad \forall j \in N\backslash \left\{ 0 \right\} $$
(15)
$$ a_j^+ \ge b_i + T_{ij} - \left( {1 - \sum \limits_{k \in V} x_{ijk} } \right)M\quad \forall i,j \in N\backslash \{ 0\} $$
(16)
$$ a_{N + 1}^+ \ge b_i + T_{i0} - \left( {1 - \sum \limits_{k \in V} x_{i0k} } \right)M\quad \forall i \in N\backslash \{ 0\} $$
(17)
$$ h_i \ge \min \left\{ {\left( { \sum \limits_{i^{\prime} \in N{\rm{\backslash }}N^D } \sum \limits_{k^{\prime} \in V} x_{i^{\prime} jk^{\prime} } - \sum \limits_{k \in V} x_{ijk} } \right)M,\,a_i^+ + T_{ij} \cdot \max \{ 0,1 - |CN_i - CN_j |M\} } \right\}\quad \forall i \in N^D ,j \in N^{ES} $$
(18)
$$ h_i \ge \min \left\{ {\left( { \sum \limits_{i^{\prime} \in N\backslash N^{ED} } \sum \limits_{k^{\prime} \in V} x_{i^{\prime} jk^{\prime} } - \sum \limits_{k \in V} x_{ijk} } \right)M,\,a_i^+ + T_{ij} \cdot \max \{ 0,1 - |CN_i - CN_j |M\} } \right\}\quad \forall i \in N^{ED} ,j \in N^P $$
(19)
$$ a_j^- \ge \min \left\{ {\left( { \sum \limits_{i^{\prime} \in N{\rm{\backslash }}N^D } \sum \limits_{k^{\prime} \in V} x_{i^{\prime} jk^{\prime} } - \sum \limits_{k \in V} x_{ijk} } \right)M, \,\max \{ h_i ,a_j^+ - |CN_i - CN_j |M\} } \right\}\quad \forall i \in N^D ,j \in N^{ES} $$
(20)
$$ a_j^- \ge \min \left\{ {\left( { \sum \limits_{i^{\prime} \in N\backslash N^{ED} } \sum \limits_{k^{\prime} \in V} x_{i^{\prime} jk^{\prime} } - \sum \limits_{k \in V} x_{ijk} } \right)M, \max \{ h_i ,a_j^+ - |CN_i - CN_j |M\} } \right\}\quad \forall i \in N^{ED} ,j \in N^P $$
(21)
$$ a_j^- = a_j^+ \quad \forall j \in N \cup \left\{ {\left| N \right| + 1} \right\}{\rm{\backslash }}\{ N^{ES} \cup N^P \} $$
(22)
$$ b_j = \max \{ 0,a_j^+ ,a_j^- \} \quad \forall j \in N \cup \{ \left| N \right| + 1\} $$
(23)
$$ b_j \le L_k \quad \forall j \in N \cup \left\{ {\left| N \right| + 1} \right\},k \in V $$
(24)
$$ x_{ijk} \in \{ 0,1\} \quad \forall i,j \in N,k \in V $$
(25)
$$ y_{ik} \in \{ 0,1\} \quad \forall i \in N,k \in V $$
(26)
$$ u_{ik} \ge 0\quad \forall i \in N,k \in V $$
(27)
$$ a_i^+ ,a_i^- ,b_i \ge 0\quad \forall i \in N \cup \{ \left| N \right| + 1\} $$
(28)
$$ h_i \ge 0\quad \forall i \in N{\rm{\backslash }}\{ 0\} $$
(29)

The objective function (1) is to minimize the CO2 amount by tractors. Constraints (2) and (3) are the related constraints between \({x}_{ijk}\) and \({y}_{ik}\). Constraint set (4) ensures that each customer is visited by a tractor.

Constraints (5) to (8) are proposed based on the Miller–Trucker–Zemlin subtour elimination constraints (Destochers and Laporte, 1991). By constraints (5), \({u}_{0k}\) is set to 0 that is the initial visit sequence to terminal 0 by tractor \(k\). (6) and (7) eliminate a sub-tour from consisting of only customers. The relationship among \({u}_{ik}\), \({u}_{jk}\), and \({x}_{ijk}\) is guaranteed by constraints (6) and (7). If \({x}_{ijk}=1\), constraint set (6) and (7) are \({u}_{jk}\ge {u}_{ik}+1\) and \({u}_{jk}\le {u}_{ik}+1\), respectively. Accordingly, if \({x}_{ijk}=1\), \({u}_{jk}={u}_{ik}+1\), tractor \(k\) travels from nodes \(i\) to \(j\). On the contrary, if \({x}_{ijk}=0\), then constraint set (6) and (7) are \({u}_{ik}-{u}_{jk}+1\le \infty \) and \({u}_{jk}-{u}_{ik}-1\le \infty \), respectively. Thus, the concern of the visit sequence of a tractor is realized between \({u}_{ik}\) and \({u}_{jk}\). The relationship between \({y}_{ik}\) and \({u}_{ik}\) is guaranteed by constraint (8). If \({y}_{ik}=1\), constraint set (8) is \(1\le {u}_{ik}\le \infty \); then, \({u}_{ik}\) is not zero. However, if \({y}_{ik}=0\), constraint set (8) is \(0\le {u}_{ik}\le 0\); then, \({u}_{ik}\) is zero.

Constraints (9) and (10) ensure that a tractor visits a node in \({N}^{D}\) after the terminal and a tractor visits the terminal after a node in \({N}^{P}\). Constraints (11) and (12) ensure that a tractor visits a node in \({N}^{ED}\) after a node in \({N}^{ES}\). The constraint set (13) represents the flow conservation rule. It is guaranteed that the number of times a tractor arrives at a node is equal to the number of times a tractor departs from that node. Although one tractor must visit a customer only once, one or more tractors may visit the terminal. Constraint set (14) defines the time when a tractor leaves the terminal.

Constraints (15) to (17) define variable \({x}_{ijk}\) and the time \({a}_{j}^{+}\) at which a tractor arrives at a relevant node \(j\) by the time \({b}_{i}\) when the tractor arrives at node \(i\). Constraint (15) shows the case when the terminal corresponds to node \(i\) visited by a tractor immediately before visiting node \(j\). If \({x}_{0jk}=1\), then \({a}_{j}^{+}={b}_{0}+{T}_{0j}\). If \({x}_{0jk}=0\), then \({a}_{j}^{+}\ge -\infty \), resulting in \({a}_{j}^{+}\ge 0\). Constraint (16) shows the case when node \(i\) is visited by a tractor immediately before node j, except the terminal. If \({x}_{ijk}=1\), then \({a}_{j}^{+}={b}_{j}+{T}_{ij}\). If \({x}_{ijk}=0\), then \({a}_{j}^{+}\ge -\infty \), resulting in \({a}_{j}^{+}\ge 0\). Constraint (17) shows the case when the relevant node \(j\) visited by a tractor corresponds to the terminal. If \({x}_{i0k}=1\), then \({a}_{N+1}^{+}={b}_{i}+{T}_{i0}\). If \({x}_{i0k}=0\), then \({a}_{N+1}^{+}\ge -\infty \), resulting in \({a}_{N+1}^{+}\ge 0\).

Constraints (18) to (23) define the elapsed time between the nodes before and after L/U operation for a specific customer, as explained in Sect. 3.3. Constraint set (18) defines \({h}_{i}\), i.e. the EC ready time after unloading the delivered import container at a node i in \({N}^{D}\). Constraint set (19) defines \({h}_{i}\), i.e. the STC ready time at a node i in \({N}^{ED}\) after loading. Constraint set (20) defines the EC arrival time \({a}_{j}^{-}\) at node j. Comparing \({h}_{i}\) obtained from (18) and \({a}_{j}^{+}\), the later of the two times is set to \({a}_{j}^{-}\). Constraint set (21) defines the STC ready time \({a}_{j}^{-}\). Comparing the time \({h}_{i}\) obtained from (19) and the time \({a}_{j}^{+}\), the later of the two times is set to \({a}_{j}^{-}\). In the case that container L/U is not completed when a tractor arrives, the tractor waits for the container to be ready. Accordingly, based on constraint set (22), the time is defined for nodes for other than those defined above, the tractor departure time \({a}_{i}^{-}\) is defined by the time when the tractor arrives at a node. In constraint (23), the tractor arrival time \({b}_{i}\) at node \(i\) is defined by the arrival time to node \(i\), \({a}_{i}^{+}\) and departure time from node \(i\), \({a}_{i}^{-}\). A more detailed explanation of constraints (18) to (23) is shown in "Appendix 1".

The constraint set (24) ensures that the last node where a tractor visits is at terminal 0, and the tractor must return to terminal 0 within the working time limit.

4.3 Formulations of NCRURP

Additionally, NCRU routing using the aforementioned parameters and variables can be formulated as follows:

[NCRURP]

$$ {\text{Minimize}}\quad (1) $$
$$ {\text{Subject}}\;{\text{to}}\quad (2) - (29) $$
$$ \sum \limits_{k \in V} x_{ijk} - \max \left\{ {0, 1 - |CN_i - CN_j |M} \right\} = 0\quad \forall i \in N^D ,j \in N^{ES} $$
(30)
$$ \sum \limits_{k \in V} x_{ijk} - \max \left\{ {0, 1 - |CN_i - CN_j |M\} } \right\} = 0\quad \forall i \in N^{ED} ,j \in N^P $$
(31)

Constraint set (30) ensures that any one tractor may visit a node in \({N}^{D}\) and a node in \({N}^{ES}\) exactly, and it visits those nodes successively if those two nodes are located at a customer site (as a consignee). And also, constraint set (31) ensures that any one tractor may visit a node in \({N}^{ED}\) and a node in \({N}^{P}\) exactly, and it visits those nodes successively if those two nodes are located at a customer site (as a shipper).

4.4 Formulations of CRU routing by minimizing total distance travelled

This study aims to propose the efficient operation minimizing the total CO2EM. The objective function is to minimize the value weighted by the travel distance. However, it is unclear how much effect this weight has on the value of CO2EM. It is necessary to investigate the effect of CO2EM weight. Therefore, an additional model that minimizes only the total distance travelled by tractors is defined as follows. The constraints are the same as PCRURP.

CRU routing that minimizes total distance travelled by tractors (CRUminD) using the aforementioned parameters and variables can be formulated as follows:

[CRUminD]

$$ {\text{Minimize}}\quad \sum \limits_{i \in N} \sum \limits_{j \in N} \sum \limits_{k \in V} D_{ij} x_{ijk} $$
(32)

Subject to (2)–(29)

The objective function (32) is to minimize the total distance travelled by tractors.

5 Proposed simulated annealing approach

PCRU routing problem is an NP-hard combinatorial optimization problem. For the \(k\)-customer VRP, it is shown that the problem is NP-hard for \(k\ge 3\) (Haimovich & Rinnooy Kan, 1985; Hassin & Rubinstein, 2005). Therefore, we propose a procedure based on a heuristic approach using simulated annealing (SA). According to Sait and Youssef (1999) and Wang et al. (2015), SA is a well-developed and widely used iterative technique for solving optimization problems. SA heuristics are both effective and robust, and they are also relatively easy to implement based on the use of fewer parameters than other metaheuristics.

Then we consider to propose the SA based heuristic to solve the large-scale instances of PCRU. The entire process of SA reported by Sait and Youssef (1999) is applied, herein, we describe the solution representation, obtaining the objective function value, neighborhood structure to find new solution, and SA parameter setting.

5.1 General outline of SA based heuristic

The SA algorithm proposed to solve the PCRURP is based on the algorithms of Sait and Youssef (1999) and Wang et al. (2015). The detailed SA proposed is presented in Algorithm 1 of "Appendix 2". In their works, the authors introduce a general outline of SA as follows.

The core process (line number 10: to 26: on Algorithm 1) is called as “Metropolis” (Metropolis et al., 1953) is simulated the annealing process at a given temperature \(T\). The core procedure receives as input the current temperature \(T\), and the current solution \(CurSol\) improves through local search. Finally, the core process must also be provided with the value \(M\), which is the amount of time for which annealing must be applied at temperature \(T\). Temperature is initialized to a value \({T}_{0}\) at the beginning of the procedure, and it reduced in a controlled manner; the parameter \(\alpha \) is used to achieve this cooling. The amount of time spent in annealing at a temperature is gradually increased as temperature is lowered by using the parameter \(\beta (>1)\). The variable \(Time\) keeps track of the time being expended in each call to the core process. The annealing procedure halts when \(Time\) exceeds the allowed time (Sait & Youssef, 1999).

The core process uses the procedure \(NEIGHBOR()\) to generate a local neighbor \(NewSol\) of any given solution founded in Sect. 5.5. The function \(OBJ()\) returns the objective function value CO2EM of a given solution calculated in Sect. 5.4. If CO2EM of \(NewSol\) is better than CO2EM of the current solution \(CurSol\), then \(NewSol\) accepted, and we do so by setting \(CurSol = NewSol\). If CO2EM of \(NewSol\) is better than best solution (\(BestSol\)), then we also replace \(BestSol\) by \(NewSol\). If the new solution has a higher CO2EM in comparison to the original solution \(CurSol\), the core process will accept \(NewSol\) on a probabilistic basis. A random real number is generated in the range 0 to 1. If this random number is smaller than \(\text{exp}(-\Delta OBJ/T)\), where \(\Delta OBJ\) is the difference in CO2EM of \(CurSol\) and \(NewSol\), and \(T\) is the current temperature, the uphill solution is accepted. The core process generates and examines \(M\) solutions. The probability that an inferior solution is accepted by the core process is given by (\(RANDOM < \text{exp}(-\Delta OBJ/T)\)). The random real number generation is assumed to follow a uniform distribution. Remember that \(\Delta OBJ>0\) since we have assumed that \(NewSol\) is uphill from \(CurSol\) (Sait & Youssef, 1999).

5.2 Solution representation

To obtain the initial solution in SA process (line number 2: on Algorithm 1), we propose the solution representation as the follows. Three types of situations arise when any tractor visits two nodes each related to a specific customer, is shown in Sect. 3.3. The precedence constraint of a tractor routing based on the node type is as follows:

  1. (a)

    0–D(C); D(C) is certainly visited immediately after terminal 0.

  2. (b)

    P(S)–0; P(S) is certainly visited immediately before terminal 0.

  3. (c)

    ES(*)–ED(*); ES is certainly visited immediately before ED, and ED is certainly visited immediately after ES.

Accordingly, the node pairs, 0–D(C), P(S)–0, and ES–ED, are first prepared. Because ES–ED is not fixed, the pair is randomly generated first. It improves the search process, and an improved solution is obtained. An example of a combination of node pairs is shown in Table 6. Table 7 shows a pair of numbers randomly arranged and a temporarily fixed route formed.

Table 6 Example of a combination of node pairs
Table 7 Visit sequence of serial numbers

Let the node which a tractor visits first and the node at which it arrives at the end be terminal 0. The following route is formed by combining Tables 6 and 7:

0–0–2–7–13–0–1–5–0–9–16–6–0–12–14–4–0–0–3–8–17–10–18–11–15–0.

Although a temporary route is formed by the aforementioned procedure, some constraints have not been satisfied. That is, if D(C) and ES(C) are positioned at a consignee, the tractor must visit ES(C) after D(C), and if P(S) and ED(S) are positioned at a shipper, the tractor must visit P(S) after ED(S). Accordingly, for a visit sequence satisfying the aforementioned constraint, if it does not satisfy the constraint based on the route generated in the previous subsection, it is adjusted as shown in the following Sect. 5.3.

5.3 Process to satisfy the precedence constraint

This study considers the time constraint between two nodes before and after L/U operation at a certain customer, and considers three types of situations arise when any tractor visits two nodes each related to a specific customer, is shown in Sect. 3.3. As a process that leads to the previous Sect. 5.2 (line number 2: on Algorithm 1), the process to satisfy the precedence constraint is as follows.

  • Step 1 All ES–ED pairs are classified into pair types.

    First, it is investigated for each ES-ED pair, whether ES(C) and/or ED(S) is included. If neither ES(C) nor ED(S) is included, the pair type is set to zero. If either ES(C) or ED(S) is included in the pair, the pair type will be set to one, and the pair type will be set to two if both of them are included. These are summarized in Table 8.

    Table 8 Classification of ES–ED pair
  • Step 2 For each ES–ED pair type, the visit sequence of a tractor is adjusted to satisfy the precedence constraint.

    For pair type #0, additional processing is not required.

    For pair type #1, the following process is required. If there is an ES(C) in the pair and it is visited before D(C), their visit sequences must be replaced. If there is an ED(S) in a pair and it is visited after P(S), their visit sequences must be replaced.

    For pair type #2, the following process is required. If the following relationship as

    $$ {\text{D}}\left( {\text{C}} \right) < {\text{ES}}\left( {\text{C}} \right) < {\text{ED}}\left( {\text{S}} \right) < {\text{P}}\left( {\text{S}} \right) $$

    is not satisfied for the visit sequence, sequential exchange is performed as the following example.

In addition, the following adjustments are performed for each ES – ED pair by serial number (SN) using the aforementioned example shown in node pairs sample of Table 6 and visit sequence sample of Table 7.

Case with SN 7 (NP 7–13) The pair type is set to 2. ES(C) = 7 and ED(S) = 13 are visited by a tractor at consignee “a” and shipper “d”, respectively. D(C) and P(S) at consignee “a” and shipper “d” are 1 and 4 in the SN 1 and 4, respectively. The visit sequence of these SN must be as follows: SN 1 (NP 0–1) < SN 7 (NP 7–13) < SN 4 (NP 4–0). SN 7 is replaced to SN 1, because the SN 1 must be visited previously.

Case with SN 8 (NP 8–17) The pair type is set to 1. ES(C) = 8 and ED(0) = 17 are visited by a tractor at consignee “a” and terminal 0, respectively. D(C) at consignee “b” is 2 in the SN 2. The visit sequence of these SN must be as follows: SN 2 (NP 0–2) < SN 8 (NP 8–17). SN 8 is not replaced, because the SN 2 has already visited previously.

Case with SN 9 (NP 9–16) The pair type is set to 1. ES(C) = 9 and ED(0) = 16 are visited by a tractor at consignee “c” and terminal 0, respectively. D(C) at consignee “c” is 3 in the SN 3. The visit sequence of these SN must be as follows: SN 3 (NP 0–3) < SN 9 (NP 9–16). SN 9 is replaced to SN 3, because the SN 3 must be visited previously.

Case with SN 10 (NP 10–18) The pair type is set to 0. ES(0) = 10 and ED(0) = 18 are visited by a tractor at terminal 0 and terminal 0, respectively. The exchange processing is unnecessary.

Case with SN 11(NP 11–15) The pair type is set to 1. ES(0) = 11 and ED(S) = 15 are visited by a tractor at terminal 0 and shipper “f”, respectively. P(S) at shipper “f” is 6 in the SN 6. The visit sequence of these SN must be as follows: SN 11 (NP 11–15) < SN 6 (NP 6–0). SN 11 is replaced to SN 6, because the SN 11 must be visited previously.

Case with SN 12 (NP 12–14) The pair type is set to 1. ES(0) = 12 and ED(S) = 14 are visited by a tractor at terminal 0 and shipper “e”, respectively. P(S) at shipper “e” is 5 in the SN 5. The visit sequence of these SN must be as follows: SN 12 (NP 12–14) < SN 5 (NP 5–0). SN 12 is replaced to SN 5, because the SN 12 must be visited previously.

Then the visit sequence by each SN after completion of adjustment, becomes as shown in the following Table 9. The feasible route, 0–0–2–0–1–7–13–12–14–0–3–11–15–5–0–4–0–9–16–8–17–10–18–6–0–0, will be constructed.

Table 9 Visit sequence after arranging the SN

5.4 Calculating the objective function value of a solution

To calculate the objective function value in SA process (line number 3: and 12: on Algorithm 1), we consider the procedure as the follows.

As shown in Sect. 3, the objective function is to minimize the CO2EM during CD operation that is obtained by the product of CO2EM (kg-CO2) per unit distance (kg-CO2/km) and travel distance (km). For this problem, there are three move conditions: STC move, EC move, and UCT move. We discuss how to calculate the distance according to the move condition. The distance between nodes is represented as DIS(i, j).

The routes of terminal 0 to D(C) and P(S) to terminal 0 for the STC move are known in advance. A combination of an ES-ED pair is arbitrary, and to change the iteration process, the distance over which an EC move depends on the obtained solution. However, once an ES-ED pair is decided, the distance over which an EC move can be easily determined. The previous example is as follows: travel distance for EC move:

$$ DISE = DIS(7,13) + DIS(8,17) + DIS(9,16) + DIS(10,18) + DIS(11,15) + DIS(12,14). $$

In addition to the two aforementioned traveling conditions, the node pairs are traversed, and a tractor travels from terminal 0 to the first visit node. Moreover, because the tractor must return to terminal 0 within the working time limit, a UCT is returned from the final node to terminal 0. Arrangement processing of a tractor is performed such that the precedence constraint of the visit sequence and the time to visit may be satisfied. Accordingly, the travel distance between one pair and the other pair obtained is the distance traveled by a UCT. The detailed algorithm for the tractor dispatching process is presented in Algorithm 2 of "Appendix 3".

5.5 Neighborhood structure

The algorithm to obtain a new neighborhood solution from the current solution (line number 11: on Algorithm 1) is discussed. The visit sequence for a tractor is provided as an example of 2–7–1–12–3–11–5–4–9–8–10–6 by the SN. A new solution can be found by the following three steps. This will be explained using the example provided in the previous sections.

  • Step 1 Swap process between node pairs

    The types of node pairs include 0–D(C), P(S)–0, ES(C)–ED(S)/ED(0), and ES(0)–ED(S)/ED(0); thus, the number of exchange pairs (NEP) is determined in the range from 1 to one-quarter of total number of node pairs \(|NP|\). For example, in the case of 12 node pairs, the range is 1 to 3, and the following is obtained if NEP is two. The exchange positions named as “expos1” and “expos2” are determined randomly. The expos1 is set to 1 to \((|NP|-2\times NEP+1)\), and the expos2 is set to (expos1 + NEP) to \((\left|NP\right|-NEP+1)\). If expos1 = 5 and expos2 = 7, 3 and 11 from the 5th and 6th SN exchange for 5 and 4 from the 7th and 8th SN. For instance, before exchanging the ES-ED pair, 2–7–1–12–3–11–5–4–9–8–10–6, “3–11” and “5–4” are found as the exchange nodes randomly.

    After exchanging the ES-ED pair, 2–7–1–12–54311–9–8–10–6 is obtained. Therefore, the new obtained visit sequence of a pair becomes 2–7–1–12–5–4–3–11–9–8–10–6.

  • Step 2 Exchange process of ES–ED pair combination.

    Because the combination of an ES-ED pair is not fixed, the combination is changed with a random number. In 0 to (the total number of D(C) and P(S) nodes), the number of combinations is determined randomly, and the ES-ED pair is exchanged, such that it may not overlap. An example of exchanging an ES-ED pair is shown in Table 10. If the number of combinations is 0, it means that the change process of ES-ED pair does not conducted.

  • Step 3 Adjustment process for satisfying the precedence constraint.

    To satisfy the precedence constraint, the adjustment process is conducted as shown in Section 5.3. At Step 1 of Section 5.3, all ES–ED pairs are classified into pair types. The new visit sequence obtained by Step 2 of Section 5.3.

Table 10 Example of an ES–ED pair exchange

5.6 SA parameter setting

To find the best set of SA parameters (line number 1: on Algorithm 1), we conducted the preliminary experiments as follows.

Since it is necessary to compare with the computational results of MIP model, we focus on 60-node instances and the L/U time used in the preliminary experiment is set to 3h, which is in the middle of the main experiment. There are three types of node distribution space: Small, Middle and Large. 10 distribution patterns are provided for each distribution space. The experiments were conducted on a total of 30 instances.

For SA parameter tuning, two types of initial temperature \({T}_{0}\) are provided: 100 and 1000, and two types of \(M\) which the amount of time for which annealing must be applied at a temperature are provided: 50 and 100. Additionally, two types of parameter \(\alpha \) (normally 0.8 to 0.99) is used to achieve this cooling are provided: 0.90 and 0.95, and two types of parameter \(\beta \) \((> 1.0)\) which the amount of time spent in annealing at a temperature is gradually increased as temperature is lowered are provided: 1.05 and 1.10. Accordingly, combining the four SA parameters, the experiments were conducted using 30 instances for 16 sets of SA parameter.

As the preliminary computational results, CO2EM value and the time when the best solution was obtained are shown in Table 20 of “Appendix 4”. From the best combination of SA parameter set in Table 20, the parameters used in our SA heuristic include the following: the cooling rate \(\alpha \) is set to 0.95, the update timing \(\beta \) of parameters (set to 1.05), the initial temperature \({T}_{0}\) (set to 1000.0), and the time \(M\) until a parameter is updated (set to 50).

To obtain the total processing time (number of iterations), additional experiments in the above SA parameter set are conducted for 30-, 60- and 120-node instances. It is observed that the total processing time of the annealing process is dependent on the number of nodes, 1 × 106, 1 × 107, 1 × 108, on 30-, 60-, and 120-node, respectively. Therefore, we give the notation of number of nodes as NN, the total processing time (maximum iteration) is set to \(1\times {10}^{6+{\text{log}}_{2}(NN/30)}\).

6 Computational experiments

Computational experiments are conducted will be described in this section. First, the instance generation is described. Next, the computational results are shown as the impact of PCRU policy, the performance of proposed approach based on SA heuristic, the proposed approach in large scale instances, and UCT move contribution to CO2 reduction.

6.1 Instance generation

Input data set used in the experiments is consisted of customer locations, tractors attributes (working time limit and average speed), CO2EM per kilometer distance as shown in Table 11. In the customer locations data, there is number of customers, distribution width of customer site, customer distribution set and L/U operation time at each customer.

Table 11 Experimental parameter sets

First, customer locations are informed. An experiment was conducted on a small-scale instance consisting of 10 customers (30 nodes). To solve the problem of a realistic scale, an experiment was conducted on the problem consisting of 20 and 40 customers (60 and 120 nodes). To assign the coordinate data of a node, the spatiality of distribution space influences the difficulty with which a solution is obtained. Accordingly, the coordinates \({(x}_{i},{y}_{i})\) of the customer location i are given by Eq. (33) that is proposed by Imai et al. (2007).

$${(x}_{i},{y}_{i})=\left(\left({R1}_{i}\times 100-50\right)\left(\gamma +{R2}_{i}\times 0.4\right),\left({R3}_{i}\times 100-50\right)\left(\gamma +{R4}_{i}\times 0.4\right)\right)$$
(33)

Parameter \(\gamma \) represents the distribution width of the customer site, and the three spatial conditions are given by 0.2, 0.4, and 0.6. R1i, R2i, R3i, and R4i indicate the uniform random real numbers between 0 and 1. R1i and R3i define the range used as a basis, and R2i and R4i represent the difference in each instance. The node coordinates of each instance are arbitrarily provided with the type of a random number in the range − 30.0 to 30.0 (if \(\gamma \) is 0.2), − 40.0 to 40.0 (if \(\gamma \) is 0.4), − 50.0 to 50.0 (if \(\gamma \) is 0.6). 10 runs are conducted for each instance with customer distribution. For each customer, the handling time spent by L/U operation may significantly influence the UCT move. Thus, L/U time is set to a maximum of 2.0, 3.0, and 4.0 h.

Next, tractors attributes are informed. The same type of tractor is used, and the CO2EM and travel time do not depend on the tractor. A tractor is limited by the maximum working time. Within this working time, the tractor must return to a terminal. The work time limit is set to 8.0 h. This time implies the time until a driver is released from the container transportation after he/she is engaged in work. Accidents and road congestion reduce speed and increase the travel time between nodes. Based on this, the tractor average speed is set at 30.0 km/h that is used to obtain the travel time. The distance between the nodes before and after L/U operation at a customer site is 0.0, the CO2EM is 0.0, and the time required is provided as L/U time.

As an instance, D(C), P(S), ES(C), ED(S), ES(0) and ED(0) at three consignees and three shippers are shown in Fig. 2(a) of PCRU representation example. In this example, the tractor move condition (STC move, EC move, and UCT move) and the type of elapsed time between two nodes are shown in Table 21 of "Appendix 5". CO2EM under each tractor move (STC move, EC move, and UCT move) is provided, such that it depends on the travel distance. CO2EM per kilometer under each condition is calculated using Eq. (33) (METI and MLITT, 2023). The notations used in Eq. (34) are represented in Table 12.

$$ CO2 EM_l = W_l \times 10^{ - 3} \times EF_l \times 10^{ - 3} \times CV \times CEF \times CO_2 /C $$
(34)
Table 12 Notations for Eq. (34)

Each parameter in Eq. (34) is presented in detail in "Appendix 6". CO2EM per km under three types of tractor move are expressed as follows: CO2EMstc = 1.242 \(\left(\times {10}^{-3}\right)\) (t-CO2/km) in STC move, CO2EMec = 0.984 \(\left(\times {10}^{-3}\right)\) (t-CO2/km) in EC move, CO2EMuct = 0.108 \(\left(\times {10}^{-3}\right)\) (t-CO2/km) in UCT move.

6.2 Computational environment

The numerical experiments are conducted using the data generated artificially and randomly with the MIP model and proposed approach are coded and run by CPLEX Ver.20.1 and C-language on Windows 10 Pro Workstation (Intel Xeon E3-1225 v6 @ 3.30 GHz).

In the CPU time limit of 3600 s, no feasible solution is obtained for the problem with 60 nodes in some instances by MIP model of PCRU (hereinafter referred to as MIP-PCRU). For the problem with 120 nodes in all instances, an optimal solution can be obtained by MIP model of NCRU (MIP-NCRU) within 60 s. Accordingly, 30- and 60-node instances are simulated by MIP-NCRU, MIP-PCRU and SA based approach in PCRU (SA-PCRU), and MIP model of CRU operation minimizing total distance travelled (MIP-CRUminD). Additionally, 120-node instances are simulated by MIP-NCRU and SA-PCRU.

6.3 Impact of PCRU policy

To verify the impact on PCRU policy, the total CO2EM by MIP-PCRU is compared with CO2EM by MIP-NCRU in 30- and 60-node instances. Additionally, to investigate the contribution of PCRU policy to EC repositioning (ECR) reduction and tractors reduction, travel distance of ECR and number of tractors required (NTR) by MIP-PCRU is compared with travel distance of ECR and NTR by MIP-NCRU in 30- and 60-node instances.

6.3.1 PCRU impact on CO2EM

Figure 4 compares MIP-NCRU and MIP-PCRU in average value of CO2EM. Table 13 shows the improvement by MIP-PCRU to MIP-NCRU. From Fig. 4, it can be seen that CO2EM by MIP-PCRU is not significantly affected by L/U time. However, CO2EM by MIP-NCRU is affected by L/U time. MIP-PCRU can contribute to suppress CO2EM increase by L/U time extension.

Fig. 4
figure 4

CO2EM by MIP-PCRU and MIP-NCRU

Table 13 Improvement by MIP-PCRU to MIP-NCRU in CO2EM

From Table 13, it can be observed that in the large distribution space and the long L/U time, MIP-PCRU contributes significantly to CO2EM reduction. The CO2EM value obtained by MIP-PCRU is less than that by MIP-NCRU. On the contrary, in the small distribution space and short L/U time, the computational result of MIP-PCRU is the same as that of MIP-NCRU. In cases that L/U time is a maximum 4 h, MIP-PCRU contributes 6.58 to 20.45% improvement to MIP-NCRU.

Additionally, the statistical hypothesis paired t-test is conducted. In the comparison of mean CO2EM between MIP-NCRU and MIP-PCRU, we found an average difference of 40.0 (kg-CO2), \(t\)-value (degrees of freedom 173) of 8.726 and \(p\)-value of 2.154 × 10–15. Since this \(p\)-value is lower than the significance level of 0.05, we consider the result statistically significant. Therefore, we reject the null hypothesis, and conclude that the performance of MIP-PCRU is higher than that of MIP-NCRU in CO2EM. MIP-PCRU can reduce CO2EM on MIP-NCRU.

6.3.2 PCRU impact on EC repositioning and tractors required

Figure 5 compares MIP-NCRU and MIP-PCRU in average value of travel distance of ECR and NTR. Table 14 shows the improvement by MIP-PCRU to MIP-NCRU. From Fig. 5, the large distribution space and long L/U time result in a long travel distance with ECR. It can be seen that travel distance of ECR by MIP-PCRU is not significantly affected by L/U time. However, ECR by MIP-NCRU is affected by L/U time. MIP-PCRU can also contribute to suppress ECR increase by L/U time extension. In most cases, NTR is dependent on L/U time, long L/U time results more tractors required. Comparing with MIP-NCRU, MIP-PCRU can operate with less tractors.

Fig. 5
figure 5

ECR and NCR by MIP-PCRU and MIP-NCRU

Table 14 Improvement by MIP-PCRU to MIP-NCRU in ECR and NTR

From Table 14, it can be observed that in the large distribution space and the long L/U time, MIP-PCRU contributes significantly to ECR reduction. On the contrary, in the small distribution space and short L/U time, there is not so significant ECR between MIP-PCRU and MIP-NCRU. In cases that L/U time is a maximum 4 h, MIP-PCRU contributes around 25.70 to 52.85% improvement of ECR to MIP-NCRU. Tractors reduction is especially noticeable in the cases that L/U time is a maximum 4 h, MIP-PCRU contributes around 12.96 to 29.76% improvement of NTR to MIP-NCRU.

Additionally, the statistical hypothesis paired t-test is conducted. In the comparison of mean ECR between MIP-NCRU and MIP-PCRU; mean NTR between MIP-NCRU and MIP-PCRU, we found an average difference of 45.0 (km), 1.0 (vehicle); \(t\)-value (degrees of freedom 173) of 8.960, 9.008; and \(p\)-value of 5.084 × 10–16, 3.762 × 10–16; respectively. Since this \(p\)-value is lower than the significance level of 0.05, we consider the result statistically significant. Therefore, we conclude that MIP-PCRU can also reduce ECR and NTR on MIP-NCRU.

6.3.3 Comparison with minimizing total distance travelled

Additionally, the total CO2EM is calculated based on the CO2EM weighted per travel distance for each vehicle move (i.e., STC move, EC move or UCT move). To verify the impact on MIP-PCRU (that minimizes CO2EM), the total CO2EM obtained by MIP-CRUminD (minimizes total distance travelled) is compared. MIP-CRUminD is also simulated by MIP model using CPLEX.

Table 15 shows the CO2EM improvement (%) of MIP-CRUminD. From Table 15, in all cases of 30 nodes, positive value of improvement is obtained. The CO2EM value obtained by MIP-PCRU is less than that by MIP-CRUminD. It can be observed that in the large distribution space and the long L/U time, MIP-PCRU contributes significantly to CO2EM reduction. The CO2EM value obtained by MIP-PCRU is less than that by MIP-CRUminD. In cases that L/U time is a maximum 4 h, MIP-PCRU contributes 2.70 to 10.27% improvement to MIP-CRUminD.

Table 15 Improvement by MIP-PCRU to MIN-CRUminD in CO2EM

In most cases of 60 nodes, positive value of improvement is obtained. However, some cases of 60 nodes, negative value of improvement is obtained, because the optimal solution by MIP-PCRU cannot be found in 3,600 s of CPU time in some cases. Regardless of distribution space and L/U time length, MIP-PCRU contributes significantly to CO2EM reduction.

Additionally, the statistical hypothesis paired t-test is conducted. In the comparison of mean CO2EM between MIP-CRUminD and PCRU-MIP, we found an average difference of 20.1 (kg-CO2), \(t\)-value (degrees of freedom 173) of 10.030 and \(p\)-value of 5.961 × 10–19. Since this \(p\)-value is lower than the significance level of 0.05, we consider the results statistically significant. Therefore, we reject the null hypothesis, and conclude that the performance of PCRU-MIP is higher than that of MIP-CRUminD in CO2 reduction. PCRU-MIP can reduce CO2EM on MIP-CRUminD.

6.4 Proposed SA approach on PCRU routing

To verify the performance of our proposed approach as SA-PCRU, CO2EM by SA-PCRU is compared with CO2EM by MIP-PCRU. Table 16(a) illustrates the average, minimum, maximum values and standard deviation of CO2EM and GAP (%) in 10 runs for each instance, and Table 16(b) illustrates the CPU time and the number of optimal solutions by MIP-PCRU and SA-PCRU in 10 runs for each instance.

Table 16 Performance of SA-PCRU

For 30-node instances, it can be observed that in one or more cases of 3 h and 4 h maximum L/U time, the optimal solution by MIP-PCRU is obtained within 1.00 s of CPU time. However, in 2 h maximum L/U time, the optimal solution by MIP-PCRU is not obtained in small and middle distribution space. On the contrary, the optimal solution by MIP-PCRU is obtained in 5 cases of large distribution space within 1.00 s of CPU time. There is 0.00 to 1.89% of GAP between SA-PCRU and MIP-PCRU in 3 h and 4 h maximum L/U time. There is 0.22 to 2.43% of GAP between SA-PCRU and MIP-PCRU in 2 h maximum L/U time and small and middle distribution space. There is 0.00 to 1.16% of GAP between SA-PCRU and MIP-PCRU in 2 h maximum L/U time and large distribution space.

For 60-node instances, it can be observed that in small distribution space and 4 h maximum L/U time, and in middle distribution space and 3 h maximum L/U time, the optimal solution by MIP-PCRU is obtained within 15.00 s of CPU time. However, in large distribution space and 2 h maximum L/U time, the optimal solution by MIP-PCRU is obtained in 6 cases within 14.00 s of CPU time. There is 0.00 to 1.61% of GAP between SA-PCRU and MIP-PCRU in 3 h and 4 h maximum L/U time. There is 0.14 to 2.51% of GAP between SA-PCRU and MIP-PCRU in 2 h maximum L/U time and small and middle distribution space. There is 0.00 to 0.56% of GAP between SA-PCRU and MIP-PCRU in 2 h maximum L/U time and large distribution space.

Therefore, the shorter L/U time and smaller distribution space becomes, the harder it is to obtain the optimal solution. From the average GAP in each instance, there is less than 3.00%.

Additionally, the statistical hypothesis paired t-test is conducted as shown in Table 16(c).

In the comparison of mean CO2EM between MIP-PCRU and SA-PCRU, we found an average difference of 1.70 (kg-CO2), \(t\)-value (degrees of freedom 173) of 1.788 and \(p\)-value of 0.076. Since the \(p\)-value is higher than the significance level of 0.05, we do not consider the result statistically significant. Therefore, we fail to reject null hypothesis, and conclude that there is not statistical difference between the performance of SA-PCRU and MIP-PCRU in CO2EM.

6.5 SA-PCRU performance on large-scale instances

In this section, the performance of SA-PCRU is investigated in large-scale instances with 120 nodes. Figure 6 compares MIP-NCRU and SA-PCRU in 120-node instances. Table 17 indicates the improvement in CO2EM, travel distance of ECR and number of tractors required to MIP-NCRU.

Fig. 6
figure 6

Computational results by SA-PCRU and MIP-NCRU in 120-node instances

Table 17 Improvement by SA-PCRU to MIP-NCRU in 120-node instances

From Fig. 6, it can be seen that CO2EM by SA-PCRU is not significantly affected by L/U time as well as that in cases of 30- and 60-node. However, CO2EM by MIP-NCRU is affected by L/U time. SA-PCRU can contributes to suppress CO2EM increase by L/U time extension.

In the travel distance of ECR in 120-node instances, the large distribution space and long L/U time result in a long travel distance with ECR. It can be seen that travel distance of ECR by SA-PCRU is not significantly affected by L/U time. However, ECR by MIP-NCRU is affected by L/U time. SA-PCRU can contributes to suppress ECR increase by L/U time extension.

NTR by MIP-NCRU increases in small and middle distribution spaces and long L/U time. In large distribution space, the longer L/U time, the more NTR by MIP-NCRU is. On the contrary, NTR by SA-PCRU in cases that L/U time is a maximum 4 h is slightly less than NTR by SA-PCRU in cases that L/U time is a maximum 3 h. We consider the reason is as follows. In long L/U time as a maximum 4 h, there are more cases that the tractor moves to another customer without waiting until L/U operation is completed. Therefore, NTR may be the same or slightly reduced. As the number of nodes increases, such as 120-node, there is also more combinations of tractor assignments. Then, we consider the possibility of reducing NTR has increased.

From Table 17(a), a negative value of less than 1.0% of CO2EM improvement by SA-PCRU is obtained in cases in 2 h and 3 h maximum of L/U time, because the best solution by SA-PCRU is not necessarily the optimal solution. In the large distribution space and the long L/U time, SA-PCRU contributes significantly to CO2EM reduction. The CO2EM value obtained by SA-PCRU is less than that by MIP-NCRU. In cases that L/U time is a maximum 4 h, SA-PCRU contributes 4.63 to 19.53% improvement to MIP-NCRU.

Additionally, a negative value of less than 2.0% of ECR improvement by SA-PCRU is also obtained in cases in 2 h and 3 h maximum of L/U time. In the large distribution space and the long L/U time, SA-PCRU contributes significantly to ECR reduction. The ECR obtained by SA-PCRU is less than that by MIP-NCRU. In cases that L/U time is a maximum 4 h, SA-PCRU contributes 25.07 to 60.32% improvement to MIP-NCRU.

In small distribution space and short L/U time, more NTR is reduced. In middle distribution space and long L/U time, more NTR is reduced. In large distribution space, NTR reduction is dependent on L/U time, long L/U time results more tractors reduction. Therefore, it is observed that the effect of reducing NTR depends on the combination of distribution spatial scale and L/U time length. In cases that L/U time is a maximum 4 h, MIP-PCRU contributes around 30% improvement to NCRU.

Additionally, the statistical hypothesis paired t-test is conducted as shown in Table 17(b).

In the comparison of mean CO2EM, ECR, NTR between SA-PCRU and MIP-NCRU, we found an average difference of 101.8 (kg-CO2), 14.3 (km) and 5.3 (vehicles); \(t\)-value (degrees of freedom 89) of 5.959, 6.349 and 15.663; and \(p\)-value of 4.987 × 10–8, 8.883 × 10–9 and 2.588 × 10–27; respectively. Since this \(p\)-value is lower than the significance level of 0.05, we consider the results statistically significant. Therefore, we reject the null hypothesis, and conclude that the performance of SA-PCRU is higher than that of MIP-NCRU in CO2EM, ECR, NTR of 120-node instances. SA-PCRU can reduce CO2EM, ECR, NTR on MIP-NCRU in 120-node instances.

6.6 Impact of uncoupled tractor move

UCT move is applied at PCRU policy. As mentioned in Sect. 4, NCRU policy does not include UCT move. In the UCT move, it is expected to reduce CO2EM without waiting for a long time of L/U process at a customer. The impact of UCT move may depend on the L/U process time.

Figure 7 indicates the travel distance of UCT move. The large distribution space and long L/U time result in a long travel distance of UCT move by MIP-PCRU and SA-PCRU.

Fig. 7
figure 7

Travel distance of UCT move

As shown in Fig. 4 of Sect. 6.3, although CO2EM by MIP-NCRU is affected by L/U time, CO2EM by MIP-PCRU is not significantly affected by L/U time. Both MIP-PCRU and SA-PCRU can contribute to suppress CO2EM increase by L/U time extension. The reason is that UCT move can be used in PCRU policy. Especially, in long L/U time, UCT move by MIP-PCRU and SA-PCRU can contributes to suppress CO2EM increase by L/U time extension.

7 Conclusions

This study addresses the vehicle dispatch problem in CD with novel tractor operations for the CRU practice to minimize the CO2EM that causes global warming. Taking into consideration a steadily growing world trade, the proposed CD practice (PCRU) mitigates an environmental burden in urban areas with large port container terminals and inland ports.

To represent PCRU as a MIP model, we consider that a tractor can be assigned to two nodes located at a customer site via another customer. A tractor can visit two nodes sequentially at one customer site, or two different tractors can be assigned to each of the two nodes at a customer site. To solve large-scale instances of PCRU, the solution representation by node pair basis and the process to satisfy the precedence constraint are proposed in SA based heuristic.

To verify the impact on PCRU policy, the total CO2EM by MIP model of PCRU (MIP-PCRU) is compared with CO2EM by MIP model of normal container round use (MIP-NCRU) in 30- and 60-node instances. MIP-PCRU can reduce CO2EM on MIP-NCRU. In long L/U time, MIP-PCRU contributes 6 to 20% improvement to MIP-NCRU in CO2EM. It is investigated that MIP-PCRU can also reduce an empty container repositioning (ECR) and number of tractors required (NTR) of MIP-NCRU. In long L/U time, MIP-PCRU contributes around 25 to 52% improvement of ECR to MIP-NCRU, and MIP-PCRU contributes around 12 to 29% improvement of NTR to MIP-NCRU.

Next, SA based heuristic is proposed to solve large-scale instances of PCRU practice. From the result of the statistical hypothesis paired t-test, and it concludes that there is not statistical difference between the performance of SA-PCRU and MIP-PCRU in CO2EM. The performance of SA-PCRU is investigated in large-scale instances. In the comparison of mean CO2EM, ECR, NTR between SA-PCRU and MIP-NCRU, we found an average difference of 101.8 (kg-CO2), 14.3 (km) and 5.3 (vehicles). From the result of the statistical hypothesis paired t-test, the performance of SA-PCRU is higher than that of MIP-NCRU in CO2EM, ECR, NTR. SA-PCRU can reduce CO2EM, ECR, NTR on MIP-NCRU.

Additionally, UCT move is applied at PCRU policy. NCRU policy does not have UCT move. In the UCT move, it is expected to reduce CO2EM without waiting for a long time of L/U process at a customer. From the computational results. The large distribution space and long L/U time result in a long travel distance of UCT move by MIP-PCRU and SA-PCRU. Especially, in long L/U time, UCT move by MIP-PCRU and SA-PCRU can contributes to suppress CO2EM increase by L/U time extension.

PCRU contributes the size of tractor fleet to be engaged is reduced in long L/U time. In an actual operation, terminal and drayage operators constantly make efforts on operational cost savings. As the results, PCRU policy also contributes to reduce ECR and NTR, which leads to the operational cost savings.

Building upon the findings of this study, we consider the following for future work. In this study, the continuous operation time of the tractor (driver) is considered within one day. However, the elapsed time until an empty container is supplied, may be several days. Thus, the problem may be extended to a planning horizon of several days. Furthermore, it is necessary to extend it to a model that considers the inland container depot, to further reduce CO2EM.