Mixed integer linear programming approaches for solving the raw material allocation, routing and scheduling problems in the forest industry

Article history: Received December 23 2019 Received in Revised Format April 24 2020 Accepted May 21 2020 Available online May, 21 24 2020 Transportation planning in forest industry is a challenging activity since it involves complex decisions about raw material allocation, vehicle routing and scheduling of trucks arrivals to both harvest areas and the plants. In the Argentine context, specifically in the Argentinean Northeast (NEA) region, the forest industry plays essential role for the economic development and, among the included activities, the transportation is the key element considering the volumes that must be moved and the distances to be traveled. Therefore, enhancing efficiency in the transportation activity improves significantly the performance of this industry. In this work, a Mixed Integer Linear Programming (MILP) model is presented, where raw material allocation, vehicle routing and scheduling of trucks arrivals are simultaneously addressed. Since the resolution times of the proposed integrated MILP model are prohibitive for large instances, a hierarchical approach is also presented. The considered decomposition approach involves two stages: in the first phase, the raw material allocation and vehicle routing problems are solved through a MILP model, while in the second phase, fixing the route for each truck according to the results of the previous step, the scheduling of truck arrivals to both the harvest areas and the plants is solved through a new MILP model. The obtained results show that the proposed approach is very effective and could be easily applied in this industry. © 2020 by the authors; licensee Growing Science, Canada


Introduction
In recent years, the Argentine forest industry has shown significant growth, forcing companies to make greater efforts to improve the efficiency of their activities. This requires the development and implementation of tools to support operations management, due to the increased complexity of the decisions to be made. In this sense, transport-related operations acquire vital importance since they are a key element in the cost structures of firms and greatly affect the overall efficiency of the operations (Broz et al., 2018). This work is focused on primary transportation, i.e., the movement of raw material from the harvest areas to the primary production centers (plants), like sawmills and paper mills, on an daily operational planning horizon. This activity is crucial for a proper performance of all the links in the forest supply chain (D'amours et al., 2008). Besides, the corresponding cost is a key factor from the economic point of view considering the volumes that must be moved and the distances to be traveled. Therefore, enhancing efficiency in the transportation tasks improves significantly the performance of this industry.
The forest logistics problem is very wide and has several variants that depend on the particularities of each company and region (Audy et al., 2012). Some of them are related to: -The planning horizon: it can range from daily to weekly, where in the latter case, in addition to typical vehicle routing decisions, inventory must be also considered. -The truck fleet: it can be of homogeneous or heterogeneous characteristics (according to whether or not the trucks have the same load capacity); it can be of fixed or variable size (the number of trucks is fixed or variable between a minimum and a maximum number); the trucks can be housed in a single depot or multiple regional bases (the starting and ending points of the workday of the trucks may or may not be the same); it must satisfy different operational conditions (daily operating times, number of trips or cycles to be performed daily for each truck, etc.) and organizational policies (fleet belonging or not to the same owner, work cooperatives, etc.). -The type of trip: it can be with full-truckload or less-than-truckload capacity, transporting a single raw material or different materials in each trip. -The decision criteria (objective function): performance measures based on cost (according to distances traveled with and without load, use of trucks, among others) and time (idle or waiting times, maximum delay, among others).
Taking into account that this list is not exhaustive, the combination of the different alternatives leads to a wide variety of problems (Borges et. al, 2014). First of all, it is very difficult to tackle all these problems with a single approach. In addition, assuming that the resolution of these problems requires many computational resources, most approaches adjust the model to particular characteristics of the problem to improve performance. In the Argentine context, in general, a set of harvest areas provide different types of raw material to diverse plants. It is assumed that the raw material that can be obtained from a harvest area is enough to complete the capacity of a truck. Then, full-truckload trips with a single type of raw material at the same time are considered for the truck routing. On the other hand, unproductive waiting times could be generated when more than one truck arrives at the same time, both in the forest and in the plants, which occurs when loading and unloading resources are limited. Consequently, in order to increase efficiency in transportation planning, it is essential to consider the scheduling of truck arrivals at each node of the supply chain, since unproductive delays or waiting times can negatively impact on the total transportation cost. Therefore, in this context, the simultaneous resolution of the raw material allocation (i.e., which harvest area supplies each plant with the corresponding raw material), vehicle routing (i.e., sequence of trips to be performed by each truck) and scheduling (i.e., trucks arrivals programming at each node of the network) problems is critical for the efficient development of the forest activities. Most of published works address these problems separately: raw material allocation is first addressed and then vehicle routing and scheduling problems are solved (Audy et al., 2011). Due to the complexity of this type of mathematical formulations and the difficulty for obtaining the optimal solution in a reasonable computing time, many heuristic-based approaches were used to tackle the Vehicle Routing Problem (VRP) in forestry. El  propose a two-phase solution approach in which, in the first phase, a Constraint Programming (CP) model is used for solving the vehicle routing and scheduling problems and, in the second stage, an Integer Programming (IP) model is presented in order to minimize the traveled distances without load. In El Hachemi et al. (2013), the authors also propose a hierarchical approach in which in the first phase a tactical problem is solved (allocation problem), while in the second phase, vehicle routing and scheduling problems are addressed using two methods based on CP. In a similar fashion, El Hachemi et al. (2014) use the same resolution structure (allocation first, routing and scheduling later), but in the second phase, an IP model is used instead of CP based approaches.
Also, through the use of metaheuristics, allocation, routing and scheduling problems in the forest industry are separately approached. Flisberg et al. (2009) present a two-phase solution approach where first the allocation is decided and then, a Tabu Search (TS) method is used for the vehicle routing and scheduling problem. Gronalt and Hirsch, (2007) also apply a TS method for solving the vehicle routing and scheduling problems, with a predefined set of tasks to be attended (i.e., the raw material allocation is given). Haridass et al. (2014) and Derigs et al. (2012) use Simulated Annealing (SA) and Multilevel Neighborhood Search (MNS) strategies, respectively, for addressing the vehicle routing problem. Contreras et al. (2008) and Lin et al. (2016) use the Ant Colony Optimization (ACO) algorithm for the raw material allocation problem. In a recent and preliminary publication, Bordón et al. (2018) proposed a MILP model for solving a simplified version of the aforementioned problem, ignoring the scheduling decisions. That work posed an efficient representation for the simultaneous raw material allocation and vehicle routing problems, which allowed obtaining the optimal solution in short resolution times. Therefore, in this paper, the scheduling decisions are also included in the optimization model, extending the capacity (and the associated complexity) of the referred work. Two approaches are presented to address this problem. First, an exact representation is formulated through a MILP model. This contribution is significant since the raw material allocation, vehicle routing and scheduling problems are simultaneously considered. Although this alternative allows attaining the optimal resolution, the required resolution times are high enough to prevent its application to problems of large size. Then, in the second approach, a hierarchical scheme is proposed which allows reaching very efficient solutions in reasonable computing times. This last approach consists of two phases: in the first one, raw material allocation, trips generation and truck routing decisions are jointly considered using a MILP model; in the second one, using the results obtained in the previous stage, the scheduling of truck arrivals to both harvest areas and plants is solved through another MILP model. In the first stage, the objective is to minimize the total transportation cost, while in the later the objective is to minimize the waiting times (in both the harvest areas and the plants) and the excess over the maximum working time of each truck, i.e., the surplus time over maximum route duration. In this way, unlike the previous presented methodologies in the literature, the simultaneous optimization of raw material allocation, vehicle routing and scheduling problems is proposed, which provides the optimal solution for small and medium size problems. On the other hand, for large size problems, an efficient decomposition approach is developed in order to find the optimal solution in short computing times.
In the following section, the problem is described, while in section 3 the mathematical model for the simultaneous raw material allocation, vehicle routing and scheduling problem is presented. In section 4, the two-stage decomposition approach is explained, and in section 5, two study cases are proposed and solved through the full space model presented in section 3 and the methodology depicted in section 4. The obtained results are assessed and discussed, and finally, conclusions are detailed in section 6.

Problem statement
There is a set of plants i, i ∈ I, where each of them requires a single type of raw material m, m ∈ M. DEMi,m represents the quantity of raw material type m demanded by plant i (measured in full-truckloads). The plants demands must be fulfilled in the exact quantities and not by excess, due to space limitations in the log yards and the deterioration of raw materials due to weather conditions. These raw materials are provided by a set of harvest areas f, f ∈ F, which have a maximum available capacity of each raw material, OFf,m, also measured in full-truckloads. To transport the raw materials, a fleet of trucks c, c ∈ C, is available. The truck fleet is assumed to be homogeneous. Each truck c can transport a single type of raw material per trip (simultaneous hauling of different types of raw material is not allowed) and, due to transport regulations, trucks can make a limited number of trips per day. Besides, a set of regional bases p, p ∈ P, is available, where let Cp be the set of trucks c departing from the regional base p. For each truck, there is a fixed cost Ctruckc,p (regardless of the number of made trips and the kilometers traveled) and a maximum operation time MaxTc that cannot be exceeded. Moreover, additional cost due to unproductive time when truck must wait to load raw material at harvest area or unload at plant is considered (Cforestc and Cplantc, respectively). A single loading resource is available at each site: for loading tasks in harvest areas and for unloading tasks in plants. The loading times in the harvest areas (Loadc,f) and the unloading times in the plants (Unloadc,i) are known. These loading resources cannot perform two activities at the same time, i.e., serving two or more trucks simultaneously. Therefore, a key decision is to schedule the trucks arrivals in order to avoid overlaps and generate unproductive waiting times. The route definition stated by Bordon et al. (2018) is adopted. Each route is composed by a series of trips v, v  V, where each trip v is a sequence of different movements (Fig. 1). Many times the number of trips included in a route is limited by certain regulations or commercial agreements. For example, a route can include at most three trips or cycles, even though the truck has time to perform more trips. Four types of trips are defined: a) If the route is composed by only one trip v, it has a departure movement (unloaded) from the regional base p to the harvest area f, a loaded movement from the harvest area f to the plant i, and a return movement (unloaded) from that plant i to the regional base p. b) If the route has more than one trip, its first trip is composed by a departure movement (unloaded) from the regional base p to the harvest area f, a loaded movement from that harvest area f to the plant i, and an unloaded movement from that plant i to the harvest area f' (not necessarily equal to f). c) If the trip is neither the last one nor the first one of the route, then it is composed by a loaded movement from the harvest area f to the plant i and an unloaded movement from that plant i to the harvest area f' (not necessarily equal to f).
If the trip is the last one to be performed by the truck in the complete route but it is not the first one, then the trip is composed by a loaded movement from the harvest area f to the plant i and a return movement (unloaded) from that plant i to the regional base p. In Fig. 1, the involved binary variables are presented: , , takes value 1 if the truck c departs from the regional base p to the harvest area f during the first trip; , , , is equal to 1 if a loaded movement is performed by the truck c from the harvest area f to the plant i during the trip v, , , , takes value 1 if the unloaded movement performed by the truck c from the plant i to the harvest area f is completed during trip v, and , , , takes value 1 if the movement from the plant i to the regional base p is performed by the truck c during the trip v. As can be seen, the first two types of trips are made up by three movements, Unloaded movement Loaded movement two unloaded and a loaded one, meanwhile the two remaining trips are made up by two movements, one unloaded and one loaded. Therefore, according to the previous definition of trips, the proposed approach constructs the truck routes through the composition of different movements. Fig. 2 shows two routes composed by two and three trips, respectively. Each truck c can depart from the regional base p during the allowed time window [MinRc, MaxRc]. The distances and the required time to travel between the different nodes are known: DPFp,f and TDTp,f between the regional bases and the harvest areas, DFIf,i and TLTf,i between the harvest areas and the plants, DIFi,f and TUTf,i between the plants and the harvest areas, and DIPi,p and TRTp,i between the plants and the regional bases . The same happens with their respective costs (cost per traveled kilometer): CDp,f, CRp,i, CLf,i, and CUf,i. For each harvest area and plant, there is an opening and closing time (OpeningFf, OpeningIi, CloseFf, and CloseIi, respectively) during which trucks can arrive. Then, the problem consists in determining:  The raw material allocation, i.e., which harvest area supplies each plant with the corresponding raw material.  The assignment of trips to trucks.  The routing decisions, i.e., the sequence of trips to be performed by each truck.  The scheduling of trucks arrivals in each harvest area.  The scheduling of trucks arrivals in each plant.
The objective is to minimize the total transportation cost, composed by the costs per traveled kilometers, the fixed costs of trucks, and the costs for unproductive activities, i.e., waiting times in harvest areas and plants.

Loaded movement
Unloaded movement

Mathematical model
In this section, the detailed mathematical formulation, called [FullP], for the optimal daily transportation planning is presented. This formulation corresponds to the exact approach where the raw material allocation, the vehicle routing and the scheduling of trucks arrivals to both plants and harvest areas are simultaneously solved. The objective function is presented in Eq.
(1). The aim is the minimization of the total transportation costs composed by the variable costs per traveled distances with and without load, the fixed costs per used truck and the costs associated to the waiting times of trucks in the harvest areas and the plants: The variable Z represents the total transportation costs (in $), which involves the distance parameters previously defined, and their corresponding cost parameters (in $/kilometer), the fixed cost Ctruckc,p per used truck (in $/truck), and the costs Cforestc and Cplantc for waiting at harvest areas and plants (in $/hour), respectively. The first term of Eq. (1) represents the costs of making loaded movements between harvest areas and plants. The second term indicates the costs of unloaded movements from plants to harvest areas. The third term states the costs of departure movements from regional bases to harvest areas. The fourth term represents the costs of return movements from plants to regional bases. The fixed costs per used trucks are stated in the fifth term. Finally, the sixth term determines the costs of waiting at plants and harvest areas. The continuous variables WTIc,v and WTFc,v represent the waiting times (in hours) at plants and harvest areas, respectively. Following, the model constraints are sorted into two groups according to the decisions involved in each one: routing constraints and scheduling constraints.

Supply/demand constraints
Eq. (2) and Eq. (3) state that the number of loaded movements (in full-truckloads) must not exceed the available raw material at each harvest area and must fulfill the demand of each plant, respectively: where Im represents the set of plants that require the raw material m.

Routing generation and truck allocation constraints
If a truck is used, several constraints are considered in order to assure the appropriate movements included in each trip. If the truck c performs some loaded or unloaded movement, then it is used and consequently it must leave from the regional base. This condition is represented by Eq. (4) and Eq. (5), respectively: Eq. (6) states that, if the truck c is assigned to its first trip (i.e. v = 1) from the harvest area f to any plant, then it must necessarily leave from its regional base p to that harvest area f: If the truck c is used then it must depart and return to the regional base p where its route began (Eq. (7)) and it must perform at least one loaded movement (Eq. 8). In addition, if the truck c completes a loaded movement, then it can either perform an unloaded movement to perform a new loaded movement or it can return to the associated regional base (Eq. 9): Constraint (10) states that if the truck c during trip v does not perform a loaded movement from any harvest area f towards any plant i, it neither performs the associated unloaded movement: When the route includes more than one trip, Eq. (11) forces the completion of a loaded movement from the harvest area f to the plant i only if a previous unloaded movement arrives at the harvest area f:

Ordering constraints
Since the truck fleet is homogeneous, the following constraints are incorporated in order to avoid alternative solutions and therefore, accelerate the model resolution. Eq. (12) sorts the use of trucks belonging to the same regional base p. Eq. (13) defines the distance traveled by the truck c, while Eq. (14) assigns the longest routes to trucks in ascending order.
, , , Eqs. (16) and (17) state that if the truck c is not used, then no loaded/unloaded movement is done. Although these two equations are redundant, they help solve the model faster.

Slot based formulation
Regarding to the scheduling decisions, a continuous time representation based on time slots is used. In slot-based models, the planning horizon is divided into several unequal time intervals. Although in this approach slots duration is known in advance, the starting and ending times of slots must be determined. Thus, the scheduling constraints are based on the assignment of the trip v to a time slot, both in harvest areas and in plants. Let YSFc,v,f,sf be the binary variable that represents the assignment of the trip v of the truck c in the time slot sf of the harvest area f, and let YSIc,v,i,si be the binary variable that is defined in a similar fashion for the time slot si of the plant i. The assignment decisions of trips to time slots for each site are given by the binary variables WSFc,v,f,i,sf and WSIc,v,f,i,si , , , , = , , , , , , Sf and Si are the sets of time slots for harvest areas and plants, respectively. It worth to note that the number of time slots defined for each harvest area is equal to the available supply in that place. For example, if the harvest area f has 10 full-truckloads available, then 10 time slots are defined. In a similar fashion, the number of time slots defined for each plant, Si, is equal to the number of demanded fulltruckloads. As can be seen, the assignment decisions stated by Eq. (18) and Eq. (19) represent non-linear expressions. To achieve a linear formulation, these equations are replaced by constraints (20) to (25): , , , , , , , , , , , , Eq. (26) states that if the loaded movement corresponding to the trip v of the truck c is performed, then it must be assigned to a single slot sf of the corresponding harvest area f: , , , , In addition, the time slot sf of the harvest area f can be used at most once. Besides, a harvest area may not deliver its entire offer and thus unused time slots may remain: , , , , With regard to the plants, each loaded movement must be assigned to one time slot si of the plant i (Eq. (28)). In this case, all the time slots si associated with each plant i must be used, i.e., the plant demands must be fulfilled (Eq. (29)).
, , , , , , , , Eq. (30) and Eq. (31) are defined in order to accelerate the model resolution; these constraints state that the time slots of harvest areas and plants must be used in an ascending order: , , , , , , , ,

Timing constraints related to arriving times of trips of trucks in harvest areas
The trucks depart and return to their corresponding regional bases. Each truck can start its route within a certain time window [MinRc, MaxRc], i.e., its release time: where STCc represents the starting time of the truck c. Eq. (34) states that if the trip v of the truck c is the first one, then the arrival time (ATFc,v) to the first visited harvest area depends on the transportation time from the regional base to the harvest area and the starting time of the truck c: where TDTp,f is the required time to travel from the regional base p to the harvest area f. For the followings trips, the arrival time at the harvest area (ATFc,v) depends on the ending time at the plant visited in the previous trip and the time needed to travel to the respective harvest area (TUTf,i). This is defined by Eq.
For each truck, when the trip (v + 1) is performed, the starting time of the loading operation of that trip must be greater than or equal to the ending time of the previous trip: Each harvest area works a limited time. Therefore, Eq. (39) states that each truck during each trip must be loaded before the harvest area closes its activities (CloseFf): In a similar fashion, Eq. (40) defines that if the first trip of a truck is made, then that truck must be loaded after the harvest area starts its activities (OpeningFf):

Timing constraints related to arriving times of trips of trucks in plants
Eq. (43) defines the ending time of the unloading operation of the truck c during trip v at plant (ETIc,v), which is given by the time at which the truck begins to be unloaded and the duration of this activity: For each truck, when the trip (v + 1) is performed, the starting time of the unloading operation of that trip must be greater than or equal to the ending time of the previous trip: Eq. (45) states that all the trips must end before the closing time of the plant, while Eq. (46) establishes that, if the first trip v of the truck c is made, it must begin after the plant opens:

Timing constraints related to time slots
In previous sections, the starting times for loading and unloading activities for each truck and each trip were defined. Now, these times must be assigned to the time slots of each harvest area and plant. In the case of the plants, Eqs. (47) and (48) In order to avoid overlapping, the starting time of the time slots (sf + 1) and (si + 1) must be greater than or equal to the ending times of the previous ones:

Trucks utilization constraints
The workday of each truck is limited by the parameter MaxTc; therefore the time for the complete route of each truck must be calculated. The ending time of the truck c (ETCc) is given by Eq. (55).
where LASTc,i,p,v represents the ending time of the last trip performed by the truck c, and is defined by Eq. (56): In order to avoid non-linearity, Eq. (56) is replaced by Eqs. (57) to (59): where , is an upper bound for the routing time of the truck c (a sufficiently large parameter that can be equal to the maximum closing time of the plants plus the maximum required time to arrive to the corresponding regional base from any plant). The employed total time by the truck c (USEc) is defined by Eq. (60), which is calculated as the difference between the ending and starting times for the truck.
In Eq. (61), the duration for each route is limited by the parameter MaxTc, which represents the maximum allowed operation time for truck c: Finally, Eqs. (62) and (63)

Decomposition approach
Although the detailed representation of the problem through the [FullP] model allows solving simultaneously the raw material allocation, vehicle routing and scheduling problems, the proposed formulation requires an excessive computational time to obtain a solution for real size problems.  ,v,f,i,sf, WSIc,v,f,i,si, and LASTc,i,p,v are no longer needed and the equations that includes these variables must be rewritten. It should be noted that, since the variables corresponding to the routes conformation take fixed values, the linearity of the model is guaranteed; therefore, the Eqs. (20) to (25) and (57) to (59) (55) and (60). Eq. (61) must be rewritten to avoid infeasibilities that can arise by the addition of idle times to the routing times in the scheduling process. A slack variable (SLACKc) is incorporated to determine how much a truck exceeds its maximum allowed routing time. Therefore, the new constraint, Eq. (69), is given by:

Study cases
To illustrate the applicability and performance of the proposed approaches, two study cases are presented. Briefly, the first one corresponds to a small size problem, where both [FullP] and [H] formulations reach solutions with the same cost although different schedules, but the later one has a better performance since achieves this solution in an extremely lower computing time. In the second example, a real size problem is addressed, where the [H] algorithm allows obtaining a solution, while, through [FullP] model, no solution is found considering 15 minutes of computing time. The models are implemented and solved in GAMS (Rosenthal, 2017) 24.7.4 version, using CPLEX 12.6.3 solver in an Intel(R) Core(TM) i7-8700, 3.20 GHz, 16 GB RAM.

Case I
In this example, a study case of reduced dimensions is considered. The demands of 2 plants must be fulfilled, where each one requires different raw materials. To provide these raw materials, there are 2 harvest areas. In turn, there are 2 regional bases with a fleet of 5 available trucks each. The model parameters are shown in Table 1. It worth noting that Cslackc is not always a real cost; it is used in order to penalize the excess over the maximum available working time of the trucks. Many times, Cslackc is a parameter defined by managers in order to appropriately assess the solution performance. Somehow, this parameter balances the weight of the waiting cost against the cost of excess. Regarding fixed costs, different costs are assumed for trucks departing from different regional bases (all trucks can make at most 3 trips in its route). The fixed cost per used truck from p1 is 750 $/truck, while for trucks from p2 is 850 $/truck. The time required to reach one node from another depends on the distance between the nodes and the allowed average speed to cross that path (VDp,f, VLf,i, VLi,f and VRi,p for the corresponding nodes), for example, the time needed to go from the regional base p to the harvest area f is equal to TDTp,f = DPFp,f / VDp,f. It is assumed that the distances between the harvest areas and the plants are the same as between the plants and the harvest areas, but the time required is different because one path is traversed with load and the other without load, respectively. In Table 2 the distances (in kilometers) between the different nodes are shown, while in Table 3 the availability of raw material in each harvest area and the raw material demanded by plants are presented (both measured in full-truckloads). The number of available slots in each harvest area and plant depends on the full-truckloads supplies and demands respectively. Therefore, for the set Sf, 19 slots are defined (the maximum number of offered truckloads), while for Si, 9 slots (the maximum demand).   Table 4 and Table 5 the routes performed by each truck in both solutions are detailed. As can be noted, 5 trucks from p1 and 1 truck from p2 are used in both solutions, but different schedules are employed. Besides, the traveled distances (with and without load), the starting and the endings times of trucks, and the total truck usage are presented. In both approaches, the used trucks do not have to wait to be served.  In Table 6, the schedule of activities in each harvest area for both approaches is presented. In this table the arrival times (ATF), the starting (STF) and ending (ETF) times of the loading activity, and the waiting times (WTF) of the used trucks are detailed. The raw material transported (M) on each trip is also presented in this table. In a similar fashion, in Table 7, the schedules of activities in each plant are detailed.   A schematic representation of the scheduling of the trucks arrivals (and loading and unloading times) in each harvest area and plant for the [H] algorithm solution is presented in Fig. 3 (lines f1, f2, i1, and i2

Case II
The considered case is composed by 3 plants (i1: pulp and paper mill, i2 and i3: sawmills), which demand 2 types of raw material (m1: pulpable raw material, m2: sawable raw material). There are 10 harvest areas that provide these raw materials, and there are 5 regional bases where 10 trucks are housed in each one. The fixed cost per used truck belonging to each regional base is: 750, 850, 950, 1050, and 1150 $/truck for p1 -p5, respectively.
The distances between the nodes are stated in Table 8, while the raw material availability at harvest areas and the plant demands are shown in Table 9. Each truck can be in duty at most 8 hours and its earlier (MinRc) and latest (MaxRc) starting times are 4:00 h.   f 10  i1  ---5  --6  --4  i2  ----13  2  ---i 3  -5  -4  --5  --3 In Table 12, the waiting times of each truck during each trip in both the harvest areas and plants are presented. Relatively short waiting times can be observed with an average waiting time per trip of near 11 minutes and a total waiting time of 8.56 h. In the optimal solution, 47 trips are performed, which, for practical purposes, represents a very good solution. In addition, none of the used trucks exceeds the maximum working time.
-0:15 --0:15 - Fig. 4 shows the Gantt chart of the loading and unloading activities of each truck in each harvest area and plant, respectively. The scheduling of trucks arrivals for some trucks are presented and highlighted in order to emphasize the importance of scheduling activities: c15, c18, c17 y c11 are red, blue, yellow and black tiles, respectively. The remaining green tiles correspond to the rest of the trucks. Thus, combining the results from this figure and Tables 10 and 12, the route schedule for these trucks can be glimpsed. For example, the route traveled by truck c15 (red) begins at 5:18 h; it goes to the harvest area f2 where it does not have to wait to load the raw material m2 since there are no trucks at that moment; after to be loaded, the truck travels to the plant i3 and unloads the raw material (there are no waiting times); then it moves to the harvest area f7 and loads raw material m1 (there are no waiting times); later it travels to the plant i1 and unloads the raw material (there are no waiting times); after it returns to the harvest area f7 and loads raw material m2 where the truck must wait 15 minutes to be loaded; subsequently it travels to the plant i3, where it unloads the corresponding raw material (without waiting times). Finally, it returns to the regional base from which it departs (this path is not shown in the figure), where it arrives at 11:42 h. Another issue that can be remarked from Figure 4 is the activities at harvest area f5. As was previously mentioned, f5 depletes its offer due to its proximity to the plants, in particular to i2 (which is supplied entirely by f5). For this particular harvest area, the shipments are made by the trucks housed in the regional base p1 (c1 to c5). As can be observed in Table 12, those trucks have to wait for loading in the harvest area in almost all the trips. These waiting times appear to be unavoidable because the trucks have their latest starting times restricted and it is more convenient initiate their activities as late as possible in order to avoid longer waiting times. This situation highlights the importance of the proper scheduling of trucks arrivals to avoid overlapping and, consequently, to have shorter waiting times. This example shows the capability of the proposed solution approach in terms of solving real-size problems. Having a solution approach that is executed in competitive resolution times and obtaining very good approximate solutions are a key aspects since the decisions related to the scheduling of trucks arrivals are essential to improve the efficiency of the transport operation. Fig. 4. Loading times at harvest areas and unloading times at plants

Discussion
This algorithm can be improved by generating a schedule in a more efficient way. Thus, the improvements to the presented solution approach should focus on reducing the resolution times of the scheduling stage, which consumes most computational resources and clearly represents a bottleneck. A viable option to improve the resolution times of the scheduling stage is to modify the objective function of the [SP] model, such as, for example, minimizing the excess in the maximum route duration (and not penalize the waiting times in the objective function) and adding upper bounds for the waiting times allowed per trip and per truck in each harvest area and in each plant. In other words, replacing Eq. (72) by Eq. (73) Table 13. The total waiting time increases from 8.56 h to 19.1 h, with an average waiting time of almost 25 minutes. However, this increment in the waiting times is acceptable in the usual practice considering that the routing stage reaches the more profitable solution and no excess in the working time is obtained. This means that, although some trucks must wait to load and unload the raw material, they do not violate the working constraints. Evidently, the possibility of having a model for decision-making allows the firm management to consider many issues that can be analyzed with such a tool, beyond those mentioned here.

Conclusions
Transportation planning is a key activity for the economic development of the forest industry. From the engineering point of view, it is a challenging activity since involves complex decisions about raw material allocation, vehicle routing and scheduling of trucks arrivals to both harvest areas and the plants. In this work a MILP model was presented for solving this problem considering full-truckloads. This formulation involves an improvement over the formulation presented in Bordón et al. (2018) since the latter does not consider scheduling decisions. In this work, the simultaneous optimization is proposed, assessing the different tradeoffs among the included decisions and stating a more realistic scenario for the transportation problem in the forest industry. Two approaches were addressed: a full space [FullP] model where all decisions are integrated in an overall formulation, and a decomposition algorithm [H] that solves the allocation and routing problems in a first stage and then, the scheduling of the generated routes.
Through the examples, the capabilities of both approaches were evaluated, concluding that for small size problems, the two proposals achieve the solution in reasonable computing time. But, for large size problems, the [FullP] model is unsuitable since it cannot reach the optimal solution in short computing times. Considering that this type of problems is daily solved and these formulations represent a guide for planners to make decisions, it is desirable to obtain solutions in short computing times. Therefore, the developed [H] algorithm satisfies the required performance condition. Moreover, an improvement of this algorithm was proposed. The objective function of the scheduling stage [SP] was modified and the incorporation of upper bounds in the waiting times of each trip of each truck for each node of the network was considered. In this way, the resolution times of the scheduling phase were drastically reduced at the expense of an increase in the total (unproductive) waiting times. Thus, another tool for evaluating possible solutions for the forest transportation problem was provided.