## 2 Literature Review
In both cases, the cumulative demand at the satellites is considered to solve the first echelon as a classical VRP. The results obtained were compared with test instances, achieving gaps from 0 to 7% in relation to the optimum. In turn, [PERSON] et al. [22] proposes Multi-Start heuristics based on the separation of depot-to-satellite transfer and satellite-to-customer delivery, using clusters and local search to calculate routes. However, there are other methods that rely on heuristics, such as the nearest neighbor [23], cheapest insertion [24], Clarke and Wright savings heuristic [25], and random insertion [20]. All of them start with an assignment of customers to satellites and then proceed with the routing of the second echelon. The cheapest insertion method stands out, given the customers assigned to a satellite, as it can fit the customers in the best possible position on a route, achieving good results in fractions of a second, even for large problems [24]. After solving the routing problem related to the second level, the calculation of each satellite's demand is carried out. This is done based on the total demand of the customers who were served by all the SE routes that departed from that specific satellite. Then, the FE routes are constructed. Due to the relatively small number of depots and satellites, many methods use exact approaches to solve the FE routing problem [6; 26; 27; 28]. However, the most  
Figure 1: Illustrative example of a route in the 2E-CVRP. Adapted from [12]. common procedure for calculating the FE is that of Breunig [29] which, in situations where satellites have a demand that exceeds the capacity of a single FE vehicle, proposes a preprocessing process. The process involves serving any satellite with demand exceeding the capacity of the FE vehicle through direct round trips from the nearest depot until the remaining demand is less than the capacity of the FE vehicle. After this step, a cheapest insertion heuristic is applied with the aim of constructing FE routes to meet the remaining demand from the satellites. It is important to note that this strategy was developed specifically for this situation to ensure the efficiency of the routing process. Other approaches include local search heuristics, used to explore the neighborhood of a promising solution. They start from a solution and evaluate neighboring solutions obtained with some perturbation operator, such as relocating a customer to a different position within the route or even to a different route. The best neighbor solution can be obtained with a first-best solution policy, as in the works of [PERSON] et al. [26], which leads to faster convergence to a final solution. However, it can also be guided by better improvement policies, where the entire neighborhood is computed, and the best-performing solution is selected as the next candidate solution, as in the works of [PERSON] [23] and [PERSON] [24], even though it requires more computational time from the algorithm. The main operators used to perturb solutions are relocation, exchange, 2-opt, 2-opt*, satellite change, and satellite swap. The relocation and exchange operators are employed to relocate a sequence of \(m\) customers within the route, and to exchange the positions of two customers [26], including both individual customers and groups of up to three customers [4; 20; 30; 31]. The 2-opt and 2-opt* operators are intra-route and inter-route operators, respectively, involving two pairs of customers. In the case of 2-opt, it includes the reversal of the service sequence between two respective customers or the substitution of one customer for another between customers of two different routes. As for 2-opt*, these operators are applied only to the routes of the second echelon [27; 28; 32]. However, they are also applicable to the routes of the first echelon of the problem [24; 33]. For example, in the case of 2-opt*, changes in the demand allocated to the satellites occur, requiring adjustments in the first echelon as well.