## 4 Branch-and-Price-and-Cut Algorithm  
There are some commercial optimization solvers, which are capable of solving the model (5)-(20) directly. However, our preliminary numerical studies suggest that these solvers have limited capability in solving instances of large size to optimality. Therefore, we focus on presenting a tailored branch-and-price-and-cut algorithm for addressing large-scale instances.  
The branch-and-price-and-cut algorithm provides an efficient framework for solving combinatorial optimization problems, particularly those that involve a large number of possible solutions and a complex structure. The algorithm is essentially a combination of branch-and-bound, column generation, and cutting plane techniques. Specifically, it begins  
\begin{table}
\begin{tabular}{c c c c c c} \hline \hline \multirow{2}{*}{**Request ID**} & \multicolumn{3}{c}{**Coordinate**} & \multicolumn{3}{c}{**Time Window**} \\ \cline{2-6}  & **Origin** & **Destination** & **Origin** & **Destination** & **(Un-)Packing Time** \\ \hline IF request 1 & (1.500, 1.500) & (2.427, 1.689) & [0, 5] & [0, 5] & 0.2 \\ IF request 2 & (1.500, 1.500) & (1.674, 2.375) & [0, 5] & [0, 5] & 0.2 \\ OF request 1 & (1.237, 1.369) & (1.500, 1.500) & [5, 8] & [5, 8] & 0.2 \\ OE request 1 & - & (1.500, 1.500) & - & [5.5, 8] & - \\ \hline \hline \end{tabular}
\end{table}
Table 4: Parameters related to inland container transportation requests.  
Figure 3: An illustrative example. (**a**) Optimal route when the depot capacity is limited. (**b**) Optimal route when the depot capacity is unlimited.  
with reformulating the problem as a master problem. Then, the column generation method solves a restricted linear master problem (RLMP), which strategically contains a finite set of all feasible columns (variables). To check the optimality, a subproblem, which is also referred to as the pricing problem, is addressed in order to determine whether there are columns with a reduced cost concerning the dual values derived from the current RLMP. When such columns are detected, they are included in the RLMP, followed by another optimization cycle. The RLMP and pricing problem are solved in an iterative manner until no columns can be further generated. Then, the RLMP is tentatively enhanced by cutting planes. If the RLMP's optimal solution is an integer, it also serves as the optimal solution to the original problem; otherwise, branching is implemented to obtain an integer solution.  
Unfortunately, our problem cannot be solved by the classic branch-and-price-and-cut algorithm. This is attributed to the presence of empty-container-related constraints (19), which restrict the depot's empty container stock within the range of [0, Q] over the whole planning horizon. Given the continuous nature of time, it is practically impossible to exhaustively enumerate the stock of empty containers over time. An alternative way is to discretize the planning horizon into a series of discrete time points and limit trucks' service starting times to these discrete time points. In addition, the empty container constraints are enforced at each time point. However, the main drawback of this technique is that the choice of discrete time points has a substantial impact on the results, and the optimal solution is extremely likely to be missed. After carefully analyzing the characteristics of the problem, our investigation suggests that this problem can still be optimally solved using a tailored branch-and-price-and-cut algorithm. Based on Proposition 1, which will be introduced in Section 4.2, we are enlightened that the empty-container-related constraints only need to be satisfied at countable critical times. The critical times are defined as times when a truck retrieves/delivers an empty container from/to the depot.  
This section starts by presenting the framework of the tailored branch-and-price-and-cut algorithm, followed by a thorough discussion of its key components.