Abstract
Given dynamic variations in the scheduling environment for ready-mixed concrete vehicles, an advance schedule should be able to accommodate such changes. The authors studied the rescheduling characteristics of ready-mixed concrete vehicle fleet operations and measured the dynamics of randomly arriving customers’ requirements. Based on the study’s findings, a corresponding rescheduling strategy and a hybrid heuristic algorithm are proposed to optimize the rescheduling system for such vehicles. The simulation results validated the model and proved the effectiveness of the rescheduling strategy and the hybrid heuristic algorithm regarding the optimization of the rescheduling of ready-mixed concrete vehicles.
Keywords
Introduction
The scheduling of ready-mixed concrete vehicles (RMCVs) is a complex combinatorial optimization problem that includes vehicle sequencing, loading sequencing at the mixing plant, time-pressure from the construction industry, and just-in-time manufacturing issues. Because of transportation uncertainties, random delivery times and quantities, dynamic emergence of new customer demands, and other problems such as vehicle malfunctions, mixing plant malfunctions, pump malfunctions, and weather variations, the scheduling environment for RMCVs is dynamic. 1 To respond to these dynamic factors, rescheduling of RMCVs is important because otherwise, formulated plans may be delayed. This study focuses on the dynamics of random customers’ requirements and proposes a corresponding rescheduling strategy and a heuristic genetic algorithm (GA) to optimize it.
The RMCV scheduling problem can be viewed as a type of special truck and trailer routing problem (TTRP), among the most widely studied and important combinatorial optimization problems in the field of vehicle routing problems (VRPs). There exist many works on the stochastic demand for VRP and TTRP, along with the reviews of the same.2–9 The RMCV scheduling problem is different from VRP and TTRP because it includes not only time window constraints, timely placement constraints, and productivity limits but also RMCV limitations in that only one customer can be served per operation and in that each customer’s demand is to be satisfied sequentially.
Tommelein and Li 10 analyzed the production and delivery characteristics of the RMCV scheduling problem and indicated that it belonged to a special class of supply-chain management problems. Matsatsinis 11 reported that a special pumping device was needed to assist the unloading of concrete at the construction site and established the decision support system for RMC scheduling. Feng et al.12,13 constructed a simulation model for the scheduling of RMCVs in a single depot and used a generic algorithm to optimize the problem instances. Naso et al. 14 built a nonlinear programming model for the scheduling of RMCVs in multiple mixing plants and employed a two-phase algorithm to optimize the model. Yan et al.15–18 established an edge-constrained hydride integer network flow model for the scheduling of RMCVs by integrating the production sequence and vehicle scheduling sequence of the mixing plant into one network flow model. Asbach et al. 19 built a hydride integer planning model for RMCV scheduling using network flows and optimized the instances using neighborhood search. Schmid expanded the classical VRP and established an integer multi-commodity network flow model for the scheduling of the RMC integer. In addition, he optimized the concrete scheduling instances using a deterministic algorithm and variable neighborhood search.20–22
However, the above-mentioned studies only assess static scheduling. Durbin and Hoffman 1 employed a local time-horizon model to treat the dynamic variations in customer demand. However, the size of the time-horizon had much influence on the scheduling effect in his model: a small time-horizon yields an unfeasible albeit approximate optimal solution, while a large one postponed the consideration of dynamic events resulting in the low availability of the scheduling results. Thus, although many works do exist on rescheduling, this study proposed a rescheduling strategy and a hybrid heuristic algorithm to rapidly solve the RMCV scheduling problem in a dynamic environment.22–24
The rest of this article is organized as follows. Section “RMCV scheduling problem” proposes the model used for scheduling RMCVs. Section “Rescheduling strategy for RMCVs” measures the dynamic level of customer demand and presents a rescheduling strategy for RMCVs. Section “Hybrid GA” details the heuristic GA, and section “Empirical verification using real data” evaluates the same via an application. Section “Conclusion” concludes the article.
RMCV scheduling problem
At the start time of scheduling, there is a depot denoted by D, which has a vehicle fleet
A vehicle that arrives at customer c requires service time
Depot D also has a service time
Mathematical model
Using the parameters given in the previous section and on the basis of a mixed integer programming model, a network flow model G is defined. In the model, each possible delivery is conducted to a customer, and each possible reload at the depot, the starting point, and the ending point of the RMCV are presented as individual nodes. Graph
Depot D is represented by
For example,
Furthermore,
Edge
The remaining types of edges that are fit for scheduling are kept in the model and are described as follows.
Edges of type
To simplify notation, the article defines two sets:
Objective function (1) minimizes the total sum of the costs of the edges applied by a random vehicle so that through penalty costs
Rescheduling strategy for RMCVs
Any baseline plan for RMCVs would be unfeasible under customers’ dynamic demands, as shown in Figure 1. The dynamic needs of customers would lead to rescheduling. To consider this, first, the level of dynamic demands of customers given the status of the scheduling system at the time is measured, and then, the time at which the rescheduling operation needs to be executed is calculated using the parameters of the dynamic level, such as the average execution time of the algorithm.

Example of the RMCV rescheduling problem.
Status of the scheduling system at time
Before rescheduling, the state of the scheduling system at that time needs to be assessed. The state of scheduling system at time
The state of vehicles is represented by
Case 1: the vehicle is idle and is waiting at the depot.
Case 2: the vehicle is loading concrete at the depot.
Case 3: the vehicle is traveling to a customer.
Case 4: the vehicle is unloading at a construction site.
Case 5: the vehicle has finished an operation for a customer and is traveling to the depot for the next operation.

Possible positions of a vehicle.
To determine the time of availability for each vehicle in the rescheduling process, it is first necessary to determine which customers were served by the vehicle before
In any system state,
Measuring the dynamic level
Customers’ dynamic random demands involve two aspects: quantity of concrete and delivery time. If the scheduled time slot is very small, rescheduling needs to be executed in a timely manner; otherwise, it can be slowed until more dynamic demand arrives. When the change in quantity is large, a timely adjustment of the original scheduling plan is likely to be effective in saving operating costs; for example, if a customer cancels many deliveries, the number of vehicles used in the original schedule can be reduced by timely rescheduling. Before the imposition of dynamic demand, it is necessary to measure the dynamic level of this demand and determine the rescheduling method requirements according to the dynamic level so as to minimize the effects on the original plan.
Dynamic demand, across all types, contains a starting time window. If dynamic demand cancels r operations, the starting time window for this dynamic demand is directly calculated as
The level of dynamic random demand is decided by two aspects. One is the level of available depot nodes (noted as
The other level of dynamic random demand (labeled
Given parameters
Time to execute rescheduling
The time to execute rescheduling is decided by the state of the scheduling system and the dynamic level
For each customer
When generating the rescheduling plan, if there are n customers in the original scheduling plan, the available depot nodes and vehicles should be first assigned to these n customers and then to service other new customers. The rescheduling strategy is set so as to not affect the original customers, while looking for the best outcome for the new customers.
Hybrid GA
In this study, using the mixed integer programming model for RMCV scheduling, an improved GA comprising heuristic rules is proposed. In addition, the hash function search strategy is used to improve the execution efficiency of the GA, as shown below.
Heuristic hybrid genetic algorithm.
Encoding rules
As the loading capacity of all RMCVs is the same, the jobs of each customer are fixed as

Encoding of the genetic algorithm.
In our study, the minimum unit of time is a minute, and thus, the codes have natural numbers. Each solution displays a vector
Initialization
In the coding structure, each job of every customer is expressed as a time pair
Step 1: customers are sorted in a stochastic order as
Step 2: set
Step 3: given the produced
Step 4: to set
Calculation of objective value
The objective value of the model consists of the total cost of transportation and the penalty for unfinished jobs. To cover the cost of transportation, many jobs are completed. In the process, vehicles that completely fulfill their corresponding jobs need to be identified. Thus, first, jobs are included in the vehicles’ flow and then, this inclusion is used to calculate the objective value, as follows:
Step 1: rank all jobs of all customers in the increasing order of
Step 2: assign the first job to vehicle
Step 3: start from position
Step 4: to set
Step 5: given all vehicle flows, the number of unfulfilled jobs is ascertained. Accordingly, the penalty value for unfinished jobs is derived. The flow of vehicle k is expressed by time sequence
Crossover operator
The crossover operator plays a vital role in the evolution process because it imitates the mating process of the GA where some of the genes of the two paired chromosomes are exchanged to generate a new individual. The designed crossover operation is described in the following:
Step 1: judge if individual
Step 2: for each
Step 3: for each
Step 4: define a probability for each position of individual j, which is the inverse of the ratio between the number of searched individuals and population size. For example, if the number of searched individuals is 3 and population size is 10, the probability of position
Step 5: for each position where
Step 6: for
Mutation operator
The mutation operator defines the local search ability of the evolution process and is able to avoid missing information using the operation of selection and crossover. Thus, it maintains the variety of the population. The designed mutation operation is detailed in the following:
Step 1: judge if individual
Step 2: the mutation position of individual j is assigned as a random integer in interval
Step 3: when the mutation position is
Step 4: when the mutation position is
Step 5: for
Selection of operator
The selection of an operator involves the process of choosing strong individuals from the population to generate a new population. In this study, random competition and elitist preserved strategy are used; the best individual in the present population is preserved in the next population, and a gamble mechanism is used to choose individuals from the present population.
Hash function searching strategy
By using the hash function, the fitness data calculated in the process of optimization can be saved and applied. The key to the hash table is the superposition of the American Standard Code for Information Interchange (ASCII) code of every number. The methods adopted for constructing the hash function include the fold method and the division method: when the key is folded as the max-length of the no-symbol 64 integer, the position of the key in the hash table is found using the division method. In conflict resolution, all conflict data are recorded in a chain list, including the key and its value. When a key value is added into the sorted hash table, and if there are clashes, it is necessary to record the key value into the chain list, that is, behind the position of the clash. By searching using the key value, a clash is found at the position calculated by the hash function. When the search is continued on the chain list at this position and the relevant value is found, the value is returned; otherwise, a failure is returned.
Empirical verification using real data
To verify the proposed algorithm, real-world data obtained for a typical working week from an RMC distributing firm are applied to perform the test. The real-world data and constraints are modeled by the aforementioned Mixed Integer Programming Model (MIP) model. The test data contain 5-day customer demand data: instances 1–5 (Figure 4). Each customer demand data entry contains information such as customer ID, demand for RMC, and the distance between depot and construction site. There are 20 vehicles in the depot and the loading capacity of each vehicle is

Customers’ demand data for the baseline plan.

Customers’ dynamic demand data.
Results
The algorithm is validated using the five instances mentioned above. The results are shown in Table 1. The number of rescheduling times is abbreviated as RT, the time to execute the rescheduling operation is
Validation checks for dynamic data.
Rescheduling occurs twice. In the first rescheduling, two new customers’ demands (i.e. customers 5 and 6) are added. All former customers’ dynamic demands are handled in the subsequent rescheduling. Vehicle flow for instance 1 is given and the results of the algorithm are in the list structure. For example, in Figure 6, vehicle 1 reaches depot node

Vehicle flow under baseline plan for instance 1.

Vehicle flow at first rescheduling for instance 1.

Vehicle flow at second rescheduling for instance 1.
It can be seen in Figure 7 that at the time of executing the first rescheduling (8:48), four deliveries of customer 1 and all deliveries of customer 2 are finished, and six deliveries of customer 3 and three deliveries of customer 4 are started. The result of the first rescheduling shows that the last two deliveries of the new customer, customer 6, cannot be completed. This is because no depot nodes can be found for these two deliveries. Now, we demonstrate the time for rescheduling in the presence of new demands and analyze the results.
Analysis of the results
To achieve the results, we use a strategy (called “base strategy”) where the time of rescheduling is set to the time of dynamic demands. The result for instance 1 is shown in Table 2, and the results for instances 2–5 are shown in Table 3. It is seen that there are two deliveries of customer 6 that have not been completed yet, and the objective value of this result is consistent with the objective value obtained in the previous section. The result shows that this method is more time-consuming than the strategy we proposed, and the rescheduling operation is executed more times than the aforementioned strategy. If the dynamic needs of customers appear frequently, then the system reschedules frequently, which results in constant adjustment of the vehicles’ order in the depot. Consequently, the planning of vehicle movement cannot be conducted in a timely manner, causing delays in loading/unloading. In the aforementioned strategy, the execution time of rescheduling is postponed to a more reasonable range (or limit), thus enabling each rescheduling operation to deal with more dynamic demands, minimizing the impact on the original plan and rescheduling times, eventually minimizing the cost of vehicle order adjustments at the depot and the execution time of the algorithm. In addition, the results in Table 3 show that the operation times of rescheduling and the execution time of the algorithm are both greater than in our strategy.
Instance 1 by base strategy.
No. of reschedulings: 5; objective value: 19585.5; total execution time of algorithm: 1051.0149 s.
Instances 2–5 by base strategy.
Hash function search strategy of optimization
The hybrid GA is used to calculate the objective value. First, jobs are inserted into RMCV flows. Then, given vehicle flows, the objective value is calculated. This calculation process is relatively time-consuming, and thus, a hash function search strategy is used to save and use historical data to improve algorithm efficiency. Figure 9 shows the number of collisions when the search is made from the hash table for generation of the executing sequence of instance 1.

Number of collisions among individuals.
As seen in Figure 9, when all individuals are saved in a hash table, the population size of each generation is 30 individuals. The hash function search is an instant one: time spent is negligible as compared to the time spent in the calculation of the objective value. Without the hash function searching strategy, executing 2000 generations of instance 1 (shown in Figure 9, the total number of collisions here is 40,121) requires 1027.320130 s, while using the same takes only 289.301319 s. This is only 28.16% of the earlier computation time and saves about 13 min when the hash function search is used. It is found that the hash search strategy can effectively improve algorithm efficiency and mitigate the complexity in calculating the objective value.
Conclusion
RMCV scheduling faces a dynamically varying environment and various uncertainties. This study established an RMCV rescheduling system that can accommodate dynamically varying customer demands caused by uncertainties at construction sites. The proposed method executed rescheduling as per the dynamic level of demand and employed a heuristic hybrid GA to optimize the rescheduling of RMCVs given system state at that time. The proposed method’s effectiveness was confirmed via an application to real data. This study focused on uncertainties at the end-use point (i.e. at a construction site) as the causes of the variation in demand, while neglecting uncertainties in the transportation process. This is left for future research.
Footnotes
Appendix 1
Declaration of conflicting interests
The author(s) declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.
Funding
The author(s) received no financial support for the research, authorship, and/or publication of this article.
