# Concrete Vehicle Scheduling Based on Immune Genetic Algorithm

Authors: Jie Yang; Bin Yue; Feifei Feng; Jinfa Shi; Haoyang Zong; Junxu Ma; Linjian Shangguan; Shuai Li
Journal: Mathematical Problems in Engineering
 (2022)

---

## Abstract

At present, the demand for ready-mixed concrete (RMC) in construction industry is increasing day by day, and the supply mode of multiple delivery depots corresponding to multiple construction sites has been widely used. In order to further improve the joint distribution efficiency between various delivery depots, this research establishes a multiobjective optimal distribution model with time window constraints and demand postponement attributes for the problem that the subbatching plants need to work together. The model divides the reasons for demand postponement into two types: the constraint for timely unloading of trucks cannot be met on time and the constraint for timely pouring at the construction site cannot be met on time. This work improved the coding method of genetic algorithm based on the characteristics of the distribution model. Using hierarchical real-coding form, the coding operator of each layer can be evolved separately, which ensures the globality of the search, and, at the same time, an improved immune operator is added to ensure the local search performance. By comparison, the results obtained by improved GA are 7.05% higher than those of the standard GA, and the early convergence speed of improved GA is obviously better than that of the standard GA. The simulation experiments show that the total trucks’ waiting time during the process of providing delivery services from 5 concrete plants to 8 construction sites is 769 minutes, and the total waiting time of 8 construction sites is 507 minutes. Through practical case analysis, this work can enable RMC production enterprises and construction sites to effectively reduce the waiting time of corresponding operations, and the obtained results are close to the simulation results. The proposed method indeed improves the efficiency of RMC distribution.


---

## Body

## 1. Introduction

In the process of rapid modernization, China has a good economic development momentum, and all industries are developing at high speed especially in civic construction. Civic construction is regarded as a pillar industry in developing countries, and ready-mixed concrete is the most fundamental and widely used structural material in commercial and industrial buildings: houses, highway, bridges, and other structures [1]. The RMC industry in China recorded that about 2.6 billion cubic meters RMC were consumed in 2019, and the RMC output increased by 14.49% compared to the previous year [2]. A foreign research study shows that large amount of money spent each year in building and maintaining roads is only part of the total social cost of supporting road vehicle use [3]. A fully loaded mixing truck may contain up to 20 m3 of concrete. To reduce paving damage and road sludge caused by overloading of mixing truck, Ministry of Transport of People’s Republic of China implemented a mandatory weight limit to restrict RMC truck loads, which cannot exceed 10 m3. The result was that concrete plants had to increase the number of deliveries, with delivery costs rising accordingly. Therefore, the RMC plants need to achieve maximum savings in delivery costs by efficiently planning the use of mixing truck. At the same time, RMC industry has encountered greater potential transport barriers than any other manufacturing industry. In many developed countries, on-site mixing of concrete is no longer permitted because of pollution and consistency quality considerations. However, RMC is a perishable material and the quality of RMC structures depends on continuous close coordination between the RMC supplier and the construction site. This means that RMC must be unloaded from the mixing truck before it hardens [4]. The short life span of RMC means that RMC producers are obliged to organized production and delivery tasks based on the pull method for the flow of material according to the just-in-time conception [5]. RMC production and delivery schedules must match the demands and schedule of construction site. Since RMC plants incur similar manufacturing costs, distribution efficiency and distribution costs are the main competitive factors that differentiate plants and enable plants to achieve higher margins [6]. RMC plants must consider distribution costs to formulate efficient truck dispatch and scheduling based on the just-in-time conception.Theoretically, this resource allocation problem can be modeled mathematically. However, acquiring the optimal solution in such a complex problem is computationally intractable and is characterized as a classic NP-hard problem, and it has been proved that the RMC dispatching problem is an NP-hard problem [7]. This means that no exact solution can solve the problem in polynomial time. Soft computing and metaheuristics are often used to solve such problems. Soft computing and metaheuristics methods plays a key role in solving practical problems such as image processing [8] and construction management [9]. In resource allocation, finding a near-optimal solution for dispatching problems is a common issue with many disciplines such as logistics [10], computer science [11], construction management [12], and transportation problem [13]. From the previous related research, the dispatching problem is a broad area. In this research, the authors have focused solely on RMC delivery. Additionally, most of artificial intelligence algorithms use supervised learning methods to solve NP-hard problems such as VRP and variants of the VRP, but a large number of optimal path label datasets are required in the learning process of the model; this is more difficult in practical application; and the performance of the trained model is determined by the quality of the label provided, which means that its performance will never exceed the quality of the label solution. In contrast, the heuristics and metaheuristics do not need label solution for training and only need a set of random initialization solutions and the formulated search rules to obtain a near-optimal solution. Therefore, heuristic methods have been widely used in many literature. GA are heuristic search techniques inspired from the principles of survival of the fittest in natural evolution and genetics. They are known to search efficiently in a large search space, without explicitly requiring additional information about the objective function to be optimized. For this reason, in the last decade, they have been applied to many NP-hard problems, including scheduling and vehicle routing applications that are partially related to our problem. Nevertheless, traditional GA are generally slow. In this research, we use modified GA with improved immune operator and hierarchical coding to solve the mixing truck dispatching problem, and other heuristic methods and some artificial intelligence methods will also be discussed. Most of related research works have been devoted to mathematical modeling and heuristic methods. Actually, the RMC dispatching problem can be modeled as a special vehicle routing problem (VRPTW) [14], but RMC dispatching problem and normal VRP have clear differences that must be taken into account. The main differences are as follows: (1) a mixing truck can only supply RMC to one construction site on each trip, while in VRP a delivery truck normally can supply more than one customer, and (2) RMC cannot be hauled for a long time because RMC is a perishable material. Based on differences between RMC and VRP, a set of new constraints must be added to the original VRP formulation, and RMC dispatching problem clearly is an NP-hard problem. Therefore, to deal with this problem, heuristic methods such as GA have been widely used in related research. GA is widely used because of its good global search performance and parallel search ability. The implementation of GA has been highlighted more than other heuristic methods. Garcia et al. [15] modeled the RMC for a single depot and solved it by GA. However, some realistic constraints were not added in the dispatching model, so the approach is not practical in some scenarios. Feng et al. [16] also modeled a single depot RMC, but they added more realistic constraints into model and assumed some parameters such as loading unloading times as fixed parameters. However, the instances that have been considered by them are much smaller than the instances that are used in this paper. Liu et al. [17] presented an approach for improving the operations of production and delivery in RMC plants. A method is developed which applies a genetic algorithm in which the chromosome consists of three parts (construction site, delivery order, and vehicle number). This approach is evaluated by simulation of real cases and good effectiveness was demonstrated. Liu et al. [18] modeled a multidepot and penalizing the waiting times (loading and unloading times) in the objective function; they used heuristic algorithm to solve this problem. However, they used larger instances compared to previous research. Srichandum and Rujirayanyong [19] compared tabu search and GA in this context, and the result showed that the GA is better than the tabu search algorithm in the global search ability. Graham et al. [20] presented a neural network methodology to the modeling problem and outlined the two main architectures employed: a feedforward network and an Elman network. The results show that feedforward networks have better performance than Elman network and provided the best estimates of concrete placing productivity. However, the training process of this algorithm needs a large amount of labeled data. Maghrebi et al. implement machine learning techniques to measure the feasibility of performing RMC dispatching jobs; this approach can be applied in practice to match experts’ decisions. In this paper, the authors address reconstructing experts’ decisions as the only practical solution. However, the tested data was extracted from a simulation model and answered by human expert. Ma et al. [21] applied mutual information-based measures to input variable selection and incorporated them into optimized support vector regression for the displacement prediction of seepage-driven landslides. The result indicates that IVS-based optimized support vector regression can significantly improve predictions accuracy, and the authors suggest that the joint mutual information and double input symmetrical relevance criteria can achieve the best tradeoff between accuracy and stability. Wang et al. [22] compared several popular machine learning methods. The results show that PSO-KELM and PSO-LSSVM have the best tradeoff among all selected methods. Ma et al. [23] proposed a hybrid computational intelligence approach, copula-KSVMQP. This approach was demonstrated through a complex landslide in the Three Gorges reservoir area of China. The results show that the proposed approach has better ability of prediction of landslide displacement compared to other traditional methods such as Bootstrap-ELM-ANN. Maghrebi et al. [24] implemented machine learning techniques to automatically measure the feasibility of performing RMC dispatching jobs. The results show that this approach can be applied in practice to match experts’ decisions and address reconstructing experts’ decisions as the only practical solution.So far, a number of studies have been conducted on RMC delivery problems. Some heuristics such as GA, PSO, and TS are employed for solving related problems. However, compared to preceding research studies, this research takes more conjoint constraints into account and uses improved GA to solve the collaborative delivery problem of RMC plants with multiple mixing trucks. This research could enable RMC plants managers to select more appropriate scheduling.


## 2. Problem Description

The vehicle scheduling problem is generally defined as the problem of making vehicles pass through all demand points in an orderly manner by rational planning of transportation vehicle routes and travel times, while making the objective function optimal subject to the boundary conditions [25]. The distribution of RMC has the constraints of transportation time and start time, so this vehicle scheduling problem is a vehicle scheduling problem with time windows [26]. A mixing truck undergoes the following steps to perform a distribution and transportation task [27].(1)
The concrete mixing plant carries out the mixing and loading operation immediately after receiving the distribution order. The time point of starting loading is indicated by ZC, and the time required for these operations is indicated by HZT. After completing the mixing and loading work, the truck is dispatched to the designated construction site, and the time of dispatching is indicated by FC.(2)
The mixing truck is transported for a certain period of time and arrives at the construction site. The transport time is indicated by YST and the arrival time point is indicated by DD. The following situations may occur at this time:Situation 1: When the mixing truck arrives at the construction site, it coincides with the previous mixing truck which is carrying out the distribution task leaving the site after unloading and pouring, as shown in Figure1, and it is within the allowed pouring time of the construction site; then it starts unloading and pouring immediately. This is the ideal state of distribution, where neither the construction site nor the mixing truck is waiting.Situation 2: As shown in Figure2, the mixing truck arrives at the construction site just as the previous mixing truck carrying out the distribution task. Then the newly arrived mixing truck has to wait for the previous mixing truck to finish unloading and then starts unloading. In this case, there is a waiting time for the mixing truck, which is the difference between the departure time of the previous truck and the arrival time of the current truck. The time point to start unloading and pouring is denoted by KJ.Situation 3: As shown in Figure3, before the mixing truck arrives at the construction site, the previous mixing truck has already finished the unloading work and left the site for a period of time. In this case, the construction quality will be affected. Although the mixing truck can unload concrete immediately, the construction site has waited a period of time. The waiting time is the difference between the arrival time of the current mixing truck and the departure time of the last mixing truck.(3)
The mixing truck returns to the mixing plant after a period of unloading and pouring operation. JZT indicates the unloading and pouring time, and the time point of return is indicated by KF.Figure 1
Concrete batching plant distribution 1.Figure 2
Concrete batching plant distribution 2.Figure 3
Concrete batching plant distribution 3.


## 3. Mathematical Modeling of Concrete Vehicle Dispatching

RMC distribution problems are different from general materials distribution problems, since RMC is a perishable material. A feasible concrete vehicle dispatching solution for the construction site is the least waiting time for incoming materials to ensure the continuity of the construction site, and for the concrete mixing plant is the least waiting time for the vehicles to unload at the site, so that the vehicles can return to the mixing plant for reloading as early as possible to maximize the capacity of the mixing plant. Therefore, the key to the scheduling of concrete vehicles is to ensure the continuity of the site construction and to make the mixing plant maximize its production capacity.In order to facilitate the solution of this problem, the following assumptions need to be set:(1)
The truck capacity of the same mixing plant is the same.(2)
Each construction site requires the same grade of concrete.(3)
Only one mixing truck can unload at the same time at the construction site, and the next truck will start unloading immediately after the first truck has finished unloading.(4)
The concrete mixing plant can produce concrete continuously.(5)
The distance and travel time of concrete vehicles from each mixing plant to the construction site are set to fixed values, without considering special circumstances during transportation.(6)
Combine the time of material mixing and material loading time into one, and ignore the loading time; the moment when material mixing is completed is the departure time of concrete vehicle.


### 3.1. Definition of Model Parameters

The parameters and their corresponding meanings are shown in Table1.Table 1
Definition of model parameters.
NotationCorresponding meaningHZTiThe loading time of concrete mixing plantiZCijkThe moment of loading of thekth mixing truck dispatched from concrete mixing plant i to construction site jFCijkThe moment of departure of thekth mixing truck dispatched from concrete mixing plant i to construction site jDDijkThe moment of arrival of thekth mixing truck dispatched from concrete mixing plant i to construction site jKJijkThe moment when thekth mixing truck sent from concrete mixing plant i to construction site j starts pouringKFijkThe return moment of thekth mixing truck dispatched from concrete mixing plant i to construction site jYSTijTransportation time from concrete mixing planti to construction site jFHTijThe time required to return from construction sitej to concrete mixing plant iWETijkWaiting time of thekth vehicle dispatched from concrete mixing plant i to construction site j for unloadingWLSijkConstruction site waiting time for the mixing truck to deliver concretesJZTiThe unloading and pouring time of the mixing truck of concrete mixing plantiDMTThe maximum transport time of the mixing truck that is acceptable for the construction siteDGTThe maximum time interval between two consecutive deliveriesDThe set of delivery depotsKThe set of mixing trucks


### 3.2. The Objective Function of the Mathematical Model

In general, the operating costs of a commercial concrete company include the following: maintenance costs of concrete mixing equipment, maintenance costs of mixing trucks, depreciation, and fuel consumption, salaries of mixing plant staff and mixing truck drivers, penalty costs for early arrival of mixing trucks at construction sites, and penalty costs for late arrival at construction sites. Accordingly, equation (1) with the objective of maximizing the profit of the concrete producer is developed:(1)maxG=∑i=1nP⋅Xj−∑i=1nC⋅Xj−μ1∑i=1m∑j=1n∑k=1kijWETijk−μ2∑i=1m∑j=1n∑k=1kijWLSijk.In the above equation,G represents the total profit, P represents the profit earned per square of concrete, C represents the cost incurred to transport each square of concrete, Xj denotes the demand for concrete of each construction site, μ1 represents the penalty factor incurred by the early arrival of the mixing truck, μ2 represents the penalty factor incurred by the construction site waiting for the mixing truck to come in, m represents the number of concrete mixing plants, n represents the number of construction sites, and kij represents the number of deliveries from the mixing plant to site j, where the specific values of kij are taken in two cases as follows :(2)kij=XjLi,XjLi∈Z+XjLi+1,XjLi∉Z+.Because the profit per square of concrete and the cost incurred by transportation are determined, and every construction site is planning its construction plan in advance, the first two items in the above objective function are fixed, assuming thatμ1  =  μ2, so the above objective function is equivalent to the following :(3)fx=∑i=1m∑j=1n∑k=1kijWETijk+WLSijk.The above equation adds up the construction site waiting time and mixing truck waiting time to obtain an objective function that seeks the minimum value of the overall waiting time, so the original multiobjective optimization problem containing two optimization objectives can be transformed into a single-objective optimization problem by this equation.


### 3.3. Constraints of the Scheduling Model

#### 3.3.1. Assignment Constraints

Each delivery task can only be assigned to one delivery site:(4)∀i∈1,…,N∑d=1DYid=1,where N represents the number of delivery tasks, D represents the number of depots, and Yid indicates that the ith delivery task is completed by depot d.(5)∀i∈1,…,N,ifY0i=0,∑k=1kxik=1ifY0i=1,∑k=1kxik=0.Each delivery task can only be assigned to one truck, wherexik indicates that delivery task i is completed by truck k.(6)∀k∈1,…,K,∀m∈1,…,Mk−1∑i=1Nxikm+1≤∑i=1Nxikm≤1.Guaranteeing that, for themth task of any truck k, all the preceding tasks are assigned and all the succeeding tasks are not assigned, where mk represents the mth task of truck k,(7)si≥1.Constraint c4 describes that when a concrete mixing plant has a distribution task, the plant should currently have at least one mixing truck.


#### 3.3.2. Delivery Time-Window-Related Constraints

Each construction site has corresponding service time window requirements for each delivery task.(8)FCij1+YSTij≤ESTj.Constraint c5 describes that the first delivery task of construction sitej must be completed on time.(9)KJijk−FCijk=YSTijk+WLSijk≤DMTj.Constraint c5 describes that the time interval between the arrival of the mixing truck at the site and the start of the pouring from the completion of the loading cannot exceed the maximum time interval allowed for thejth site.(10)WLSijk≤DGTj.Constraint c6 describes that the time interval between two consecutive unloads must not exceed the maximum interruption interval allowed on the construction site for pouring.(11)FCk−FCk−1≥HZT.Constraint c7 describes that the time interval between two consecutive starts of the mixing truck cannot be less than the mixing truck loading time.


#### 3.3.3. Constraints between Different Trucks

(12)FCk−FCk−1≥HZT.Constraint c9 describes that the time interval between two consecutive delivery of mixing truck cannot be less than the mixing truck loading time.(13)∀i∈Ci,∑k=1kxik∗KFijk=∑k=1kxi+1k∗DDijk.Delivery tasks belonging to the same construction site must meet all delivery tasks before the current delivery task have been completed. This constraint ensures the continuity of construction on the construction site.


#### 3.3.4. Single Truck-Related Constraints

In order to clearly introduce the following constraints, Figure4 splits the distribution process into 6 parts.Figure 4
Splitting of concrete distribution process. T0: start time of a delivery task performed by a truck. ZC: start loading task of truck. FC: complete loading task and start delivery task. DD: arrive at construction site and wait for unloading. KJ: start unloading task. KF: complete unloading task and start trip toward depot. T1: arrive at depot and complete a delivery task.Mixing truck operation times must meet the constraints introduced subsequently.(14)∀k∈1,…,K,LWTk1=ZCk1−ZCk0,∀k∈1,…,K,∀m∈2,…,MkLWTkm=ZCkm−∑i=1Nxikm−1∗Tkm−11,ZCkm=Tkm0+LWTkm,FCkm=ZCkm+∑i=1Nxikm∗HZTi,DDkm=FCkm+∑i=1Nxikm∗YSTi,KFkm=KJkm+∑i=1Nxikm∗JZTi,Tkm1=KFkm+∑i=1N∑j=1,j≠iNxikm∗xjkm+1∗FHTij.


## 3.1. Definition of Model Parameters

The parameters and their corresponding meanings are shown in Table1.Table 1
Definition of model parameters.
NotationCorresponding meaningHZTiThe loading time of concrete mixing plantiZCijkThe moment of loading of thekth mixing truck dispatched from concrete mixing plant i to construction site jFCijkThe moment of departure of thekth mixing truck dispatched from concrete mixing plant i to construction site jDDijkThe moment of arrival of thekth mixing truck dispatched from concrete mixing plant i to construction site jKJijkThe moment when thekth mixing truck sent from concrete mixing plant i to construction site j starts pouringKFijkThe return moment of thekth mixing truck dispatched from concrete mixing plant i to construction site jYSTijTransportation time from concrete mixing planti to construction site jFHTijThe time required to return from construction sitej to concrete mixing plant iWETijkWaiting time of thekth vehicle dispatched from concrete mixing plant i to construction site j for unloadingWLSijkConstruction site waiting time for the mixing truck to deliver concretesJZTiThe unloading and pouring time of the mixing truck of concrete mixing plantiDMTThe maximum transport time of the mixing truck that is acceptable for the construction siteDGTThe maximum time interval between two consecutive deliveriesDThe set of delivery depotsKThe set of mixing trucks


## 3.2. The Objective Function of the Mathematical Model

In general, the operating costs of a commercial concrete company include the following: maintenance costs of concrete mixing equipment, maintenance costs of mixing trucks, depreciation, and fuel consumption, salaries of mixing plant staff and mixing truck drivers, penalty costs for early arrival of mixing trucks at construction sites, and penalty costs for late arrival at construction sites. Accordingly, equation (1) with the objective of maximizing the profit of the concrete producer is developed:(1)maxG=∑i=1nP⋅Xj−∑i=1nC⋅Xj−μ1∑i=1m∑j=1n∑k=1kijWETijk−μ2∑i=1m∑j=1n∑k=1kijWLSijk.In the above equation,G represents the total profit, P represents the profit earned per square of concrete, C represents the cost incurred to transport each square of concrete, Xj denotes the demand for concrete of each construction site, μ1 represents the penalty factor incurred by the early arrival of the mixing truck, μ2 represents the penalty factor incurred by the construction site waiting for the mixing truck to come in, m represents the number of concrete mixing plants, n represents the number of construction sites, and kij represents the number of deliveries from the mixing plant to site j, where the specific values of kij are taken in two cases as follows :(2)kij=XjLi,XjLi∈Z+XjLi+1,XjLi∉Z+.Because the profit per square of concrete and the cost incurred by transportation are determined, and every construction site is planning its construction plan in advance, the first two items in the above objective function are fixed, assuming thatμ1  =  μ2, so the above objective function is equivalent to the following :(3)fx=∑i=1m∑j=1n∑k=1kijWETijk+WLSijk.The above equation adds up the construction site waiting time and mixing truck waiting time to obtain an objective function that seeks the minimum value of the overall waiting time, so the original multiobjective optimization problem containing two optimization objectives can be transformed into a single-objective optimization problem by this equation.


## 3.3. Constraints of the Scheduling Model

### 3.3.1. Assignment Constraints

Each delivery task can only be assigned to one delivery site:(4)∀i∈1,…,N∑d=1DYid=1,where N represents the number of delivery tasks, D represents the number of depots, and Yid indicates that the ith delivery task is completed by depot d.(5)∀i∈1,…,N,ifY0i=0,∑k=1kxik=1ifY0i=1,∑k=1kxik=0.Each delivery task can only be assigned to one truck, wherexik indicates that delivery task i is completed by truck k.(6)∀k∈1,…,K,∀m∈1,…,Mk−1∑i=1Nxikm+1≤∑i=1Nxikm≤1.Guaranteeing that, for themth task of any truck k, all the preceding tasks are assigned and all the succeeding tasks are not assigned, where mk represents the mth task of truck k,(7)si≥1.Constraint c4 describes that when a concrete mixing plant has a distribution task, the plant should currently have at least one mixing truck.


### 3.3.2. Delivery Time-Window-Related Constraints

Each construction site has corresponding service time window requirements for each delivery task.(8)FCij1+YSTij≤ESTj.Constraint c5 describes that the first delivery task of construction sitej must be completed on time.(9)KJijk−FCijk=YSTijk+WLSijk≤DMTj.Constraint c5 describes that the time interval between the arrival of the mixing truck at the site and the start of the pouring from the completion of the loading cannot exceed the maximum time interval allowed for thejth site.(10)WLSijk≤DGTj.Constraint c6 describes that the time interval between two consecutive unloads must not exceed the maximum interruption interval allowed on the construction site for pouring.(11)FCk−FCk−1≥HZT.Constraint c7 describes that the time interval between two consecutive starts of the mixing truck cannot be less than the mixing truck loading time.


### 3.3.3. Constraints between Different Trucks

(12)FCk−FCk−1≥HZT.Constraint c9 describes that the time interval between two consecutive delivery of mixing truck cannot be less than the mixing truck loading time.(13)∀i∈Ci,∑k=1kxik∗KFijk=∑k=1kxi+1k∗DDijk.Delivery tasks belonging to the same construction site must meet all delivery tasks before the current delivery task have been completed. This constraint ensures the continuity of construction on the construction site.


### 3.3.4. Single Truck-Related Constraints

In order to clearly introduce the following constraints, Figure4 splits the distribution process into 6 parts.Figure 4
Splitting of concrete distribution process. T0: start time of a delivery task performed by a truck. ZC: start loading task of truck. FC: complete loading task and start delivery task. DD: arrive at construction site and wait for unloading. KJ: start unloading task. KF: complete unloading task and start trip toward depot. T1: arrive at depot and complete a delivery task.Mixing truck operation times must meet the constraints introduced subsequently.(14)∀k∈1,…,K,LWTk1=ZCk1−ZCk0,∀k∈1,…,K,∀m∈2,…,MkLWTkm=ZCkm−∑i=1Nxikm−1∗Tkm−11,ZCkm=Tkm0+LWTkm,FCkm=ZCkm+∑i=1Nxikm∗HZTi,DDkm=FCkm+∑i=1Nxikm∗YSTi,KFkm=KJkm+∑i=1Nxikm∗JZTi,Tkm1=KFkm+∑i=1N∑j=1,j≠iNxikm∗xjkm+1∗FHTij.


## 3.3.1. Assignment Constraints

Each delivery task can only be assigned to one delivery site:(4)∀i∈1,…,N∑d=1DYid=1,where N represents the number of delivery tasks, D represents the number of depots, and Yid indicates that the ith delivery task is completed by depot d.(5)∀i∈1,…,N,ifY0i=0,∑k=1kxik=1ifY0i=1,∑k=1kxik=0.Each delivery task can only be assigned to one truck, wherexik indicates that delivery task i is completed by truck k.(6)∀k∈1,…,K,∀m∈1,…,Mk−1∑i=1Nxikm+1≤∑i=1Nxikm≤1.Guaranteeing that, for themth task of any truck k, all the preceding tasks are assigned and all the succeeding tasks are not assigned, where mk represents the mth task of truck k,(7)si≥1.Constraint c4 describes that when a concrete mixing plant has a distribution task, the plant should currently have at least one mixing truck.


## 3.3.2. Delivery Time-Window-Related Constraints

Each construction site has corresponding service time window requirements for each delivery task.(8)FCij1+YSTij≤ESTj.Constraint c5 describes that the first delivery task of construction sitej must be completed on time.(9)KJijk−FCijk=YSTijk+WLSijk≤DMTj.Constraint c5 describes that the time interval between the arrival of the mixing truck at the site and the start of the pouring from the completion of the loading cannot exceed the maximum time interval allowed for thejth site.(10)WLSijk≤DGTj.Constraint c6 describes that the time interval between two consecutive unloads must not exceed the maximum interruption interval allowed on the construction site for pouring.(11)FCk−FCk−1≥HZT.Constraint c7 describes that the time interval between two consecutive starts of the mixing truck cannot be less than the mixing truck loading time.


## 3.3.3. Constraints between Different Trucks

(12)FCk−FCk−1≥HZT.Constraint c9 describes that the time interval between two consecutive delivery of mixing truck cannot be less than the mixing truck loading time.(13)∀i∈Ci,∑k=1kxik∗KFijk=∑k=1kxi+1k∗DDijk.Delivery tasks belonging to the same construction site must meet all delivery tasks before the current delivery task have been completed. This constraint ensures the continuity of construction on the construction site.


## 3.3.4. Single Truck-Related Constraints

In order to clearly introduce the following constraints, Figure4 splits the distribution process into 6 parts.Figure 4
Splitting of concrete distribution process. T0: start time of a delivery task performed by a truck. ZC: start loading task of truck. FC: complete loading task and start delivery task. DD: arrive at construction site and wait for unloading. KJ: start unloading task. KF: complete unloading task and start trip toward depot. T1: arrive at depot and complete a delivery task.Mixing truck operation times must meet the constraints introduced subsequently.(14)∀k∈1,…,K,LWTk1=ZCk1−ZCk0,∀k∈1,…,K,∀m∈2,…,MkLWTkm=ZCkm−∑i=1Nxikm−1∗Tkm−11,ZCkm=Tkm0+LWTkm,FCkm=ZCkm+∑i=1Nxikm∗HZTi,DDkm=FCkm+∑i=1Nxikm∗YSTi,KFkm=KJkm+∑i=1Nxikm∗JZTi,Tkm1=KFkm+∑i=1N∑j=1,j≠iNxikm∗xjkm+1∗FHTij.


## 4. Solution of the Mixing Truck-Scheduling Model

### 4.1. Coding of Mixing Truck-Scheduling Programs

The common encoding methods in genetic algorithms are binary encoding, real encoding, and so forth. In contrast to binary encoding, real encoding is more suitable for some combinatorial optimization problems with constraints, so a specific two-level real encoding is used to initialize the solution space for the problem addressed in this paper.The first layer coding indicates the distribution times of mixing truck, and it is necessary to calculate the number of distributions required for each construction site according to the demand of concrete and the capacity of mixing truck at each construction site, and it is also necessary to arrange the numbers in order according to the order of the time window of concrete demand at the construction site, and if there is the same time, the numbering will be subjective according to the distance between the concrete mixing plant and the construction site. The second layer coding indicates the concrete mixing plant, which needs to be numbered according to the order of each mixing plant in order of dispatch, and these two levels of coding correspond one to another.The maximum loading capacity of the mixing trucks of different concrete mixing plants may be different, and the exact number of deliveries for each construction site cannot be determined in advance, and only a range value can be obtained, which can be expressed as in the following formula:(15)XjmaxLk≤kj≤XjminLkK∈S,where Xj denotes the concrete demand of construction site j, Lk denotes the maximum loading capacity of mixing truck k, kj denotes the number of times construction site j needs to be distributed, and S denotes the number of mixing trucks. Therefore, the length of the chromosome can be specified as the sum of the number of mixing trucks sent from each concrete mixing plant and the maximum number of mixing trucks distributed to each construction site. In the first iteration, the population is usually generated by randomly generating individuals.The encoding and decoding of chromosomes are shown in Figure5.Figure 5
Encoding and decoding of individuals.The site ID in the first layer of the code indicates the number of mixing truck delivery times, and the site ID in the second layer indicates the number of each concrete mixing plant, and the two correspond to each other.


### 4.2. Calculation of Individual Adaptation Values

The problem solved in this paper is a vehicle scheduling problem with a time window restriction, which requires the processing of constraints. In this paper, the constraints in the genetic algorithm are processed using a penalty function, which defines a penalty factor and adds it to the objective function to construct an augmented objective function with parameters. During the iteration of the algorithm, the augmented objective function changes as the penalty factor changes and the objective function value changes, eventually approximating the optimal solution of the original problem. The final form of the objective function is shown as follows:(16)Fx=fx+φX,xis not metting the constraints,fx,xis metting the constraints.Fx is the augmented objective function, φX represents the penalty factor, and fx is the original objective function.Two penalty values are designed for individuals that violate the constraints, and the specific implementation of the penalty functionφ (x) takes the form of multiplying the two objective values in the original objective function, as shown in the following:(17)φ1=∑i=1m∑j=1n∑k=1kijWETijk2.(18)φ2=∑i=1m∑j=1n∑k=1kijWLTijk2.When the sum of transportation time of the mixing truck and trucks’ waiting time exceeds the maximum allowed by construction site, penalty factorφ1 is introduced. Another penalty factor φ2 will be introduced when the waiting time of construction site exceeds the maximum unloading interval allowed by the site. Thus, the overall waiting time of individuals violating the constraints will become large and will be easily eliminated in the iterative evolution of the population.Since the multiobjective problem has been transformed into a single-objective problem, the inverse of the augmented objective function is directly used as the fitness function for fitness assessment, as shown in the following:(19)fitx=1Fx,where a larger value of fit (x) indicates that the smaller the value of the objective function is, the greater the affinity of the corresponding antibody for the antigen is, and the more its corresponding individual converges to the optimal solution.


### 4.3. Genetic Operators

#### 4.3.1. Selecting Operator

Using a roulette selection mechanism, the better individuals in the population were selected and used as parents in the next generation of the population. The probability of the individual being selected is calculated based on the adaptation value of each individual by the following:(20)Pi=fiti∑i=1nfiti,where i represents the individual number, n represents the population size, and fiti represents the adaption value of individual i.The fitness of each individual in the population is sorted in ascending order and its cumulative probability∑Pi is calculated; then a real number ε located in the interval (0, 1) is randomly generated and compared with the cumulative fitness of the individual; if ∑Pi>ε, the individual is selected and saved to the next-generation population; conversely, if ∑Pi<ε, the individual will be eliminated.


#### 4.3.2. Crossover Operator

A crossover operation is performed on two adjacent chromosomes in the population. Before the crossover operation, a random number located in the interval (0, 1) is generated first, and the random number is compared with the crossover probability. If the random number is smaller than the crossover probability, the crossover operation is performed on two individuals; that is, a point in the individual code is arbitrarily selected as the crossover point, and the genes after the crossover point are position swapped to complete the crossover operation.


#### 4.3.3. Mutation Operator

The mutation operation is an operation for individuals in a population that can increase the diversity of the population and also avoid the possibility of homogenization of individuals. However, in general, the probability of variation occurring is not very high [28], and the variation methods used in this paper for the two-level real number coding are inversion variation and taking inverse variation, respectively. The inversion variation is the random selection of two genes within an individual for swapping, as shown in Figure 6, and the inversion variation is the random selection of a gene within an individual for inversion operation, as shown in Figure 7.Figure 6
Inversion mutation.Figure 7
The mutation of fetching the opposite.


#### 4.3.4. Immune Memory Operator

The affinity [29] between antibodies reflects the degree of similarity between them. Therefore, it can be used as a basis to determine whether the antibody needs to be promoted or inhibited. Defining the affinity between two different antibodies ai and aj as Aij, indicating the degree of similarity between the two antibodies, the affinity between the two antibodies can be calculated using the information entropy [30] as shown in the following:(21)Aij=11+H2,where H2 denotes the average information entropy of the two antibodies, and the specific representation of H (N) is shown in the following:(22)HN=1l∑j=1l∑i=1l−pijlogpij,where N is the number of antibodies in the population, l indicates that each antibody has coding length of l, and pij indicates the probability of occurrence of allele i at position j on the antibody. If all alleles at position j are identical, then HjN  = 0. From the above equation, it is easy to confirm that the range of values of Aij is (0, 1], and the larger Aij means the higher the genetic similarity of the two antibodies, and when Aij = 1, it means that the two antibodies are identical.Once the affinity between antibodies is calculated, the concentration of antibodies in the population can be calculated based on this. During the evolution of the population, the concentration of antibodies with high affinity will be increased, and when it reaches a certain level, it will be suppressed. Conversely, the probability of selection of antibodies with low concentrations needs to be increased. This mechanism ensures the diversity of antibodies during the evolution of the population. Its antibody concentration C is defined as follows:(23)Ci=∑jSi,jN,where N is the number of antibodies and Si,j=0,Aij<λ1,Aij≥λ, and λ is the affinity threshold between antibodies and it takes values in the range of [0.9, 1]. The immunogenetic algorithm, when selecting antibodies using the roulette method, is based on the respective viability of the antibodies in the population, and the viability is the expected value E of the antibody to survive the selection operation, and the expectation is calculated as follows:(24)Ei=fitiCi.From the above equation, it can be seen that antibody production is promoted when the affinity of the antibody to the antigen is high. When antibody production continues until the concentration is too high, antibody production is inhibited.Individuals (antibodies) that have undergone mutation are decoded and substituted into the above antibody affinity calculation formula to calculate the affinity between antibodies and perform antibody evaluation. Based on the evaluation results, antibodies with affinity greater than the memory threshold and with different encoding are selected in each group of antibody population and added to the memory cell library. The antibody memory mechanism is an important feature of the immunogenetic algorithm, which can retain a certain scale of good antibodies obtained during the solving process after finishing the solution of a problem. Therefore, the antibodies retained in the memory bank can be used as the initial population when solving similar problems in the future, thus improving the speed of problem solving. The singularity of the standard genetic algorithm is overcome. The algorithm flow is shown in Figure8.Figure 8
The flow chart of the immune genetic algorithm.


## 4.1. Coding of Mixing Truck-Scheduling Programs

The common encoding methods in genetic algorithms are binary encoding, real encoding, and so forth. In contrast to binary encoding, real encoding is more suitable for some combinatorial optimization problems with constraints, so a specific two-level real encoding is used to initialize the solution space for the problem addressed in this paper.The first layer coding indicates the distribution times of mixing truck, and it is necessary to calculate the number of distributions required for each construction site according to the demand of concrete and the capacity of mixing truck at each construction site, and it is also necessary to arrange the numbers in order according to the order of the time window of concrete demand at the construction site, and if there is the same time, the numbering will be subjective according to the distance between the concrete mixing plant and the construction site. The second layer coding indicates the concrete mixing plant, which needs to be numbered according to the order of each mixing plant in order of dispatch, and these two levels of coding correspond one to another.The maximum loading capacity of the mixing trucks of different concrete mixing plants may be different, and the exact number of deliveries for each construction site cannot be determined in advance, and only a range value can be obtained, which can be expressed as in the following formula:(15)XjmaxLk≤kj≤XjminLkK∈S,where Xj denotes the concrete demand of construction site j, Lk denotes the maximum loading capacity of mixing truck k, kj denotes the number of times construction site j needs to be distributed, and S denotes the number of mixing trucks. Therefore, the length of the chromosome can be specified as the sum of the number of mixing trucks sent from each concrete mixing plant and the maximum number of mixing trucks distributed to each construction site. In the first iteration, the population is usually generated by randomly generating individuals.The encoding and decoding of chromosomes are shown in Figure5.Figure 5
Encoding and decoding of individuals.The site ID in the first layer of the code indicates the number of mixing truck delivery times, and the site ID in the second layer indicates the number of each concrete mixing plant, and the two correspond to each other.


## 4.2. Calculation of Individual Adaptation Values

The problem solved in this paper is a vehicle scheduling problem with a time window restriction, which requires the processing of constraints. In this paper, the constraints in the genetic algorithm are processed using a penalty function, which defines a penalty factor and adds it to the objective function to construct an augmented objective function with parameters. During the iteration of the algorithm, the augmented objective function changes as the penalty factor changes and the objective function value changes, eventually approximating the optimal solution of the original problem. The final form of the objective function is shown as follows:(16)Fx=fx+φX,xis not metting the constraints,fx,xis metting the constraints.Fx is the augmented objective function, φX represents the penalty factor, and fx is the original objective function.Two penalty values are designed for individuals that violate the constraints, and the specific implementation of the penalty functionφ (x) takes the form of multiplying the two objective values in the original objective function, as shown in the following:(17)φ1=∑i=1m∑j=1n∑k=1kijWETijk2.(18)φ2=∑i=1m∑j=1n∑k=1kijWLTijk2.When the sum of transportation time of the mixing truck and trucks’ waiting time exceeds the maximum allowed by construction site, penalty factorφ1 is introduced. Another penalty factor φ2 will be introduced when the waiting time of construction site exceeds the maximum unloading interval allowed by the site. Thus, the overall waiting time of individuals violating the constraints will become large and will be easily eliminated in the iterative evolution of the population.Since the multiobjective problem has been transformed into a single-objective problem, the inverse of the augmented objective function is directly used as the fitness function for fitness assessment, as shown in the following:(19)fitx=1Fx,where a larger value of fit (x) indicates that the smaller the value of the objective function is, the greater the affinity of the corresponding antibody for the antigen is, and the more its corresponding individual converges to the optimal solution.


## 4.3. Genetic Operators

### 4.3.1. Selecting Operator

Using a roulette selection mechanism, the better individuals in the population were selected and used as parents in the next generation of the population. The probability of the individual being selected is calculated based on the adaptation value of each individual by the following:(20)Pi=fiti∑i=1nfiti,where i represents the individual number, n represents the population size, and fiti represents the adaption value of individual i.The fitness of each individual in the population is sorted in ascending order and its cumulative probability∑Pi is calculated; then a real number ε located in the interval (0, 1) is randomly generated and compared with the cumulative fitness of the individual; if ∑Pi>ε, the individual is selected and saved to the next-generation population; conversely, if ∑Pi<ε, the individual will be eliminated.


### 4.3.2. Crossover Operator

A crossover operation is performed on two adjacent chromosomes in the population. Before the crossover operation, a random number located in the interval (0, 1) is generated first, and the random number is compared with the crossover probability. If the random number is smaller than the crossover probability, the crossover operation is performed on two individuals; that is, a point in the individual code is arbitrarily selected as the crossover point, and the genes after the crossover point are position swapped to complete the crossover operation.


### 4.3.3. Mutation Operator

The mutation operation is an operation for individuals in a population that can increase the diversity of the population and also avoid the possibility of homogenization of individuals. However, in general, the probability of variation occurring is not very high [28], and the variation methods used in this paper for the two-level real number coding are inversion variation and taking inverse variation, respectively. The inversion variation is the random selection of two genes within an individual for swapping, as shown in Figure 6, and the inversion variation is the random selection of a gene within an individual for inversion operation, as shown in Figure 7.Figure 6
Inversion mutation.Figure 7
The mutation of fetching the opposite.


### 4.3.4. Immune Memory Operator

The affinity [29] between antibodies reflects the degree of similarity between them. Therefore, it can be used as a basis to determine whether the antibody needs to be promoted or inhibited. Defining the affinity between two different antibodies ai and aj as Aij, indicating the degree of similarity between the two antibodies, the affinity between the two antibodies can be calculated using the information entropy [30] as shown in the following:(21)Aij=11+H2,where H2 denotes the average information entropy of the two antibodies, and the specific representation of H (N) is shown in the following:(22)HN=1l∑j=1l∑i=1l−pijlogpij,where N is the number of antibodies in the population, l indicates that each antibody has coding length of l, and pij indicates the probability of occurrence of allele i at position j on the antibody. If all alleles at position j are identical, then HjN  = 0. From the above equation, it is easy to confirm that the range of values of Aij is (0, 1], and the larger Aij means the higher the genetic similarity of the two antibodies, and when Aij = 1, it means that the two antibodies are identical.Once the affinity between antibodies is calculated, the concentration of antibodies in the population can be calculated based on this. During the evolution of the population, the concentration of antibodies with high affinity will be increased, and when it reaches a certain level, it will be suppressed. Conversely, the probability of selection of antibodies with low concentrations needs to be increased. This mechanism ensures the diversity of antibodies during the evolution of the population. Its antibody concentration C is defined as follows:(23)Ci=∑jSi,jN,where N is the number of antibodies and Si,j=0,Aij<λ1,Aij≥λ, and λ is the affinity threshold between antibodies and it takes values in the range of [0.9, 1]. The immunogenetic algorithm, when selecting antibodies using the roulette method, is based on the respective viability of the antibodies in the population, and the viability is the expected value E of the antibody to survive the selection operation, and the expectation is calculated as follows:(24)Ei=fitiCi.From the above equation, it can be seen that antibody production is promoted when the affinity of the antibody to the antigen is high. When antibody production continues until the concentration is too high, antibody production is inhibited.Individuals (antibodies) that have undergone mutation are decoded and substituted into the above antibody affinity calculation formula to calculate the affinity between antibodies and perform antibody evaluation. Based on the evaluation results, antibodies with affinity greater than the memory threshold and with different encoding are selected in each group of antibody population and added to the memory cell library. The antibody memory mechanism is an important feature of the immunogenetic algorithm, which can retain a certain scale of good antibodies obtained during the solving process after finishing the solution of a problem. Therefore, the antibodies retained in the memory bank can be used as the initial population when solving similar problems in the future, thus improving the speed of problem solving. The singularity of the standard genetic algorithm is overcome. The algorithm flow is shown in Figure8.Figure 8
The flow chart of the immune genetic algorithm.


## 4.3.1. Selecting Operator

Using a roulette selection mechanism, the better individuals in the population were selected and used as parents in the next generation of the population. The probability of the individual being selected is calculated based on the adaptation value of each individual by the following:(20)Pi=fiti∑i=1nfiti,where i represents the individual number, n represents the population size, and fiti represents the adaption value of individual i.The fitness of each individual in the population is sorted in ascending order and its cumulative probability∑Pi is calculated; then a real number ε located in the interval (0, 1) is randomly generated and compared with the cumulative fitness of the individual; if ∑Pi>ε, the individual is selected and saved to the next-generation population; conversely, if ∑Pi<ε, the individual will be eliminated.


## 4.3.2. Crossover Operator

A crossover operation is performed on two adjacent chromosomes in the population. Before the crossover operation, a random number located in the interval (0, 1) is generated first, and the random number is compared with the crossover probability. If the random number is smaller than the crossover probability, the crossover operation is performed on two individuals; that is, a point in the individual code is arbitrarily selected as the crossover point, and the genes after the crossover point are position swapped to complete the crossover operation.


## 4.3.3. Mutation Operator

The mutation operation is an operation for individuals in a population that can increase the diversity of the population and also avoid the possibility of homogenization of individuals. However, in general, the probability of variation occurring is not very high [28], and the variation methods used in this paper for the two-level real number coding are inversion variation and taking inverse variation, respectively. The inversion variation is the random selection of two genes within an individual for swapping, as shown in Figure 6, and the inversion variation is the random selection of a gene within an individual for inversion operation, as shown in Figure 7.Figure 6
Inversion mutation.Figure 7
The mutation of fetching the opposite.


## 4.3.4. Immune Memory Operator

The affinity [29] between antibodies reflects the degree of similarity between them. Therefore, it can be used as a basis to determine whether the antibody needs to be promoted or inhibited. Defining the affinity between two different antibodies ai and aj as Aij, indicating the degree of similarity between the two antibodies, the affinity between the two antibodies can be calculated using the information entropy [30] as shown in the following:(21)Aij=11+H2,where H2 denotes the average information entropy of the two antibodies, and the specific representation of H (N) is shown in the following:(22)HN=1l∑j=1l∑i=1l−pijlogpij,where N is the number of antibodies in the population, l indicates that each antibody has coding length of l, and pij indicates the probability of occurrence of allele i at position j on the antibody. If all alleles at position j are identical, then HjN  = 0. From the above equation, it is easy to confirm that the range of values of Aij is (0, 1], and the larger Aij means the higher the genetic similarity of the two antibodies, and when Aij = 1, it means that the two antibodies are identical.Once the affinity between antibodies is calculated, the concentration of antibodies in the population can be calculated based on this. During the evolution of the population, the concentration of antibodies with high affinity will be increased, and when it reaches a certain level, it will be suppressed. Conversely, the probability of selection of antibodies with low concentrations needs to be increased. This mechanism ensures the diversity of antibodies during the evolution of the population. Its antibody concentration C is defined as follows:(23)Ci=∑jSi,jN,where N is the number of antibodies and Si,j=0,Aij<λ1,Aij≥λ, and λ is the affinity threshold between antibodies and it takes values in the range of [0.9, 1]. The immunogenetic algorithm, when selecting antibodies using the roulette method, is based on the respective viability of the antibodies in the population, and the viability is the expected value E of the antibody to survive the selection operation, and the expectation is calculated as follows:(24)Ei=fitiCi.From the above equation, it can be seen that antibody production is promoted when the affinity of the antibody to the antigen is high. When antibody production continues until the concentration is too high, antibody production is inhibited.Individuals (antibodies) that have undergone mutation are decoded and substituted into the above antibody affinity calculation formula to calculate the affinity between antibodies and perform antibody evaluation. Based on the evaluation results, antibodies with affinity greater than the memory threshold and with different encoding are selected in each group of antibody population and added to the memory cell library. The antibody memory mechanism is an important feature of the immunogenetic algorithm, which can retain a certain scale of good antibodies obtained during the solving process after finishing the solution of a problem. Therefore, the antibodies retained in the memory bank can be used as the initial population when solving similar problems in the future, thus improving the speed of problem solving. The singularity of the standard genetic algorithm is overcome. The algorithm flow is shown in Figure8.Figure 8
The flow chart of the immune genetic algorithm.


## 5. Simulation Experiment and Case Analysis

### 5.1. Simulation Experiment

The dataset used in this paper is the actual data values of a commercial concrete producer and involves the collaborative operation between concrete mixing plants in five plants, the five plants are equipped with concrete mixing plants, and the mixing and loading speed of the mixing plant is roughly2m3/min. The construction site mostly adopts pumping discharge pouring method; usually the concrete pump truck discharge speed is 40m3/h. The actual configuration of each concrete mixing plant is shown in Table 2.Table 2
Configuration of each concrete mixing plant.
Mixing plant numberMixing truck capacity (m3)Mixing truck numberLoading time (min)Unloading time (min)A10162015B10182015C12162418D8131612E12202418The information related to each construction site is shown in Table3, using the distribution orders received by the enterprise on a certain day for the scheduling of distribution vehicles.Table 3
Demand and constraints of each construction site.
Construction site numberConcrete demand (m3)Allowable maximum transport time (min)Maximum time interval between two consecutive deliveries (min)Each construction site starting time115090409:00210890409:00322090409:25496904010:055172904010:406140904011:107267904013:008162904013:00Generally, the speed of mixing truck is roughly 40 km/h, from which the transportation time (min) from each concrete mixing plant to each construction site can be estimated, as shown in Table4.Table 4
Transportation time from plants to construction sites.
Construction site numberMixing plant AMixing plant BMixing plant CMixing plant DMixing plant E162533443324036133141320192442414333511313554652410266495813620742582514582447363515The size of the population will affect the final result of optimization and the efficiency of the genetic algorithm. When the population size is too small, the optimization performance of the genetic algorithm is generally not very good. A larger population size can reduce the probability of the genetic algorithm falling into local optimal solution, but larger population size means higher computational complexity. The general population size selection is between 10 and 200 [31]. Based on preliminary set of runs for algorithm configuration, the probability of crossover has been chosen to be equal to 0.8, and the probability of mutation was chosen to be equal to 0.01. These values agree with the values usually suggested in technical literature on GAs. The commonly used stopping criteria of genetic algorithm are as follows: (1) the number of iterations reaches the maximum value set in the program; (2) the optimal result obtained by successive iterations has not changed; (3) the simulation running time reaches the maximum value set in the program. Although stopping criterion 1 is simple, it is the most straightforward to demonstrate the convergence of the algorithm. Stopping criterion 2 will cause the algorithm to end the iteration early when the algorithm is stuck in a local optimal solution for several iterations. Theoretically, the greater the number of iterations, the better the convergence of algorithm, but too large number of iterations will also seriously affect the running time of the algorithm. Based on our preliminary set of runs for algorithm configuration, the number of iterations was chosen to be equal to 2000. The iterations curve of standard GA and improved GA iterations are shown in Figures 9 and 10.Figure 9
Iteration curve of standard GA.Figure 10
Iterations curve of improved GA.Figure9 shows the iterations curve of the standard GA; it can be seen that the standard GA has a slow convergence speed and is easy to fall into a local optimal solution in the later iteration. The optimal solution obtained by the standard GA is 1361 minutes, which are the sum of the total waiting time of mixing truck of 798 minutes and the total waiting time of all construction sites of 563 minutes. Figure 10 shows the iterations curve of the proposed algorithm; the iterations curve shows that the proposed algorithm, under the action of the memory bank, makes the population produce better individuals faster at the early stage of evolution and the population evolves faster. In the later stage of population evolution, the iteration curve gradually converges, the population individuals fluctuate less, and the optimal individual is finally obtained.The Gantt chart of casting time under the best scheduling scheme obtained by improved GA is shown in Figure11.Figure 11
Gantt chart of the construction site pouring time.The value of the objective function under this optimal scheduling scheme is∑i=1m∑j=1n∑k=1kijWETijk+WLSijk=1276, where ∑i=1m∑j=1n∑k=1kijWETijk=769, indicating that the total waiting time of mixing truck caused by the early arrival of the mixing truck at each construction site is 769 minutes. ∑i=1m∑j=1n∑k=1kijWLSijk=507 indicates that the total waiting time of all construction sites is 507 minutes.


### 5.2. Case Analysis

In order to verify the performance and effectiveness of the proposed algorithm for the RMC delivery problem, we choose the order accepted by the RMC manufacturer on a certain day as the test data and compare the actual test results with the results of the simulation experiment. The variables and parameters of calculation examples are shown in Table5.Table 5
Distribution data of a working day.
Variables and parametersExample 1Example 2Example 3Example 4Example 5Mixing plantABCDEMixing truck capacity101012812Number of mixing trucks1618151320Number of construction sites88888Total delivery (m3)240250300172372Specified latest completion time21:0021:2021:1020:3022:00The five calculation examples in Table5 are real distribution data of the five mixing plants under the same RMC company to eight construction sites on a working day. The delivery scheme obtained by the simulation experiment is shown in Table 6.Table 6
Results of the simulation experiment.
Mixing plantDelivery routeStart timeCompletion timeA2-2-2-2-2-5-5-6-5-3-5-1-4-6-7-7-7-7-7-3-3-3-7-68:2017:04B2-1-4-4-5-6-5-5-6-5-6-7-1-5-7-6-6-7-5-8-6-6-6-7-78:2017:46C1-1-3-1-1-1-1-1-2-1-8-8-5-6-5-8-8-7-7-7-7-6-8-8-88:2418:54D1-3-1-1-2-4-3-4-2-3-2-3-4-4-3-3-5-5-7-8-5-88:1614:49E2-3-3-3-3-4-4-3-3-4-3-3-3-3-5-5-6-7-8-8-7-7-7-8-7-8-8-7-7-7-78:2420:47Apply the dispatching plan of experimental results to actual operation. The test results are shown in Table7.Table 7
Actual cases test results.
Mixing plantNumber of construction sites served by mixing plantTotal delivery (m3)Cumulative waiting time of mixing trucks (min)Cumulative waiting time at construction site (min)Completion timeDelivery timesA724015110117:3424B72501089717:3225C830013911218:5025D717216310313:0422E737221111621:1731The completion time of each mixing plant in five test examples is far less than the latest completion time of each mixing plant. Moreover, the total waiting time of mixing trucks is 772 minutes and the total waiting time of construction sites is 529 minutes. The total waiting time of mixing trucks obtained by simulation experiment is 769 minutes, and the total waiting time of construction sites is 507 minutes. This show that the results obtained by applying the distribution scheme derived by simulation experiment to actual cases are consistent with the results of the simulation experiment. During actual test, each delivery task does not exceed the maximum delivery time specified by the construction site and the results show that the proposed method indeed improves delivery efficiency and construction efficiency to a certain extent.


## 5.1. Simulation Experiment

The dataset used in this paper is the actual data values of a commercial concrete producer and involves the collaborative operation between concrete mixing plants in five plants, the five plants are equipped with concrete mixing plants, and the mixing and loading speed of the mixing plant is roughly2m3/min. The construction site mostly adopts pumping discharge pouring method; usually the concrete pump truck discharge speed is 40m3/h. The actual configuration of each concrete mixing plant is shown in Table 2.Table 2
Configuration of each concrete mixing plant.
Mixing plant numberMixing truck capacity (m3)Mixing truck numberLoading time (min)Unloading time (min)A10162015B10182015C12162418D8131612E12202418The information related to each construction site is shown in Table3, using the distribution orders received by the enterprise on a certain day for the scheduling of distribution vehicles.Table 3
Demand and constraints of each construction site.
Construction site numberConcrete demand (m3)Allowable maximum transport time (min)Maximum time interval between two consecutive deliveries (min)Each construction site starting time115090409:00210890409:00322090409:25496904010:055172904010:406140904011:107267904013:008162904013:00Generally, the speed of mixing truck is roughly 40 km/h, from which the transportation time (min) from each concrete mixing plant to each construction site can be estimated, as shown in Table4.Table 4
Transportation time from plants to construction sites.
Construction site numberMixing plant AMixing plant BMixing plant CMixing plant DMixing plant E162533443324036133141320192442414333511313554652410266495813620742582514582447363515The size of the population will affect the final result of optimization and the efficiency of the genetic algorithm. When the population size is too small, the optimization performance of the genetic algorithm is generally not very good. A larger population size can reduce the probability of the genetic algorithm falling into local optimal solution, but larger population size means higher computational complexity. The general population size selection is between 10 and 200 [31]. Based on preliminary set of runs for algorithm configuration, the probability of crossover has been chosen to be equal to 0.8, and the probability of mutation was chosen to be equal to 0.01. These values agree with the values usually suggested in technical literature on GAs. The commonly used stopping criteria of genetic algorithm are as follows: (1) the number of iterations reaches the maximum value set in the program; (2) the optimal result obtained by successive iterations has not changed; (3) the simulation running time reaches the maximum value set in the program. Although stopping criterion 1 is simple, it is the most straightforward to demonstrate the convergence of the algorithm. Stopping criterion 2 will cause the algorithm to end the iteration early when the algorithm is stuck in a local optimal solution for several iterations. Theoretically, the greater the number of iterations, the better the convergence of algorithm, but too large number of iterations will also seriously affect the running time of the algorithm. Based on our preliminary set of runs for algorithm configuration, the number of iterations was chosen to be equal to 2000. The iterations curve of standard GA and improved GA iterations are shown in Figures 9 and 10.Figure 9
Iteration curve of standard GA.Figure 10
Iterations curve of improved GA.Figure9 shows the iterations curve of the standard GA; it can be seen that the standard GA has a slow convergence speed and is easy to fall into a local optimal solution in the later iteration. The optimal solution obtained by the standard GA is 1361 minutes, which are the sum of the total waiting time of mixing truck of 798 minutes and the total waiting time of all construction sites of 563 minutes. Figure 10 shows the iterations curve of the proposed algorithm; the iterations curve shows that the proposed algorithm, under the action of the memory bank, makes the population produce better individuals faster at the early stage of evolution and the population evolves faster. In the later stage of population evolution, the iteration curve gradually converges, the population individuals fluctuate less, and the optimal individual is finally obtained.The Gantt chart of casting time under the best scheduling scheme obtained by improved GA is shown in Figure11.Figure 11
Gantt chart of the construction site pouring time.The value of the objective function under this optimal scheduling scheme is∑i=1m∑j=1n∑k=1kijWETijk+WLSijk=1276, where ∑i=1m∑j=1n∑k=1kijWETijk=769, indicating that the total waiting time of mixing truck caused by the early arrival of the mixing truck at each construction site is 769 minutes. ∑i=1m∑j=1n∑k=1kijWLSijk=507 indicates that the total waiting time of all construction sites is 507 minutes.


## 5.2. Case Analysis

In order to verify the performance and effectiveness of the proposed algorithm for the RMC delivery problem, we choose the order accepted by the RMC manufacturer on a certain day as the test data and compare the actual test results with the results of the simulation experiment. The variables and parameters of calculation examples are shown in Table5.Table 5
Distribution data of a working day.
Variables and parametersExample 1Example 2Example 3Example 4Example 5Mixing plantABCDEMixing truck capacity101012812Number of mixing trucks1618151320Number of construction sites88888Total delivery (m3)240250300172372Specified latest completion time21:0021:2021:1020:3022:00The five calculation examples in Table5 are real distribution data of the five mixing plants under the same RMC company to eight construction sites on a working day. The delivery scheme obtained by the simulation experiment is shown in Table 6.Table 6
Results of the simulation experiment.
Mixing plantDelivery routeStart timeCompletion timeA2-2-2-2-2-5-5-6-5-3-5-1-4-6-7-7-7-7-7-3-3-3-7-68:2017:04B2-1-4-4-5-6-5-5-6-5-6-7-1-5-7-6-6-7-5-8-6-6-6-7-78:2017:46C1-1-3-1-1-1-1-1-2-1-8-8-5-6-5-8-8-7-7-7-7-6-8-8-88:2418:54D1-3-1-1-2-4-3-4-2-3-2-3-4-4-3-3-5-5-7-8-5-88:1614:49E2-3-3-3-3-4-4-3-3-4-3-3-3-3-5-5-6-7-8-8-7-7-7-8-7-8-8-7-7-7-78:2420:47Apply the dispatching plan of experimental results to actual operation. The test results are shown in Table7.Table 7
Actual cases test results.
Mixing plantNumber of construction sites served by mixing plantTotal delivery (m3)Cumulative waiting time of mixing trucks (min)Cumulative waiting time at construction site (min)Completion timeDelivery timesA724015110117:3424B72501089717:3225C830013911218:5025D717216310313:0422E737221111621:1731The completion time of each mixing plant in five test examples is far less than the latest completion time of each mixing plant. Moreover, the total waiting time of mixing trucks is 772 minutes and the total waiting time of construction sites is 529 minutes. The total waiting time of mixing trucks obtained by simulation experiment is 769 minutes, and the total waiting time of construction sites is 507 minutes. This show that the results obtained by applying the distribution scheme derived by simulation experiment to actual cases are consistent with the results of the simulation experiment. During actual test, each delivery task does not exceed the maximum delivery time specified by the construction site and the results show that the proposed method indeed improves delivery efficiency and construction efficiency to a certain extent.


## 6. Conclusion

Several works have been done in this research. (1) An RMC truck collaborative scheduling model was proposed; the RMC plants’ manager can schedule RMC trucks more effectively. (2) An improved genetic algorithm with hierarchical coding and improved immune operator was proposed. The algorithm proposed in this research has high stability, which can generate the optimal schedule plan. (3) This research proposed a user-friendly computer program, which makes the proposed model more applicable to the RMC plants. However, there are still several issues up in the air and they need to be solved and improved in the future study.(1)
The current research is mainly to solve the operation problems of small- and medium-sized ready-mixed concrete enterprises. In future research, reference solutions can be provided for large-scale ready-mixed concrete production enterprises by increasing the diversity of mixing truck and the number of RMC manufacturers and more construction sites.(2)
In the coming era of comprehensive green energy, distribution vehicles will be completely replaced by electric vehicles; therefore, in future study, the distribution of electric vehicles and energy supplementation should be considered jointly.(3)
Future research could also consider yield management practices that stimulate demand by incorporating linear or nonlinear quantity price discounts.(4)
At present, we study the distribution of RMC. In future research, we will combine the production and distribution of RMC to form a complete and specific supply process.



---

*Source: 4100049-2022-06-03.xml*