sustainability Article Optimal Scheduling of Rainwater Collection Vehicles: Mixed Integer Programming and Genetic Algorithms Mohammed Alnahhal 1, * , Nikola Gjeldum 2 and Bashir Salah 3 1 2 3 * Citation: Alnahhal, M.; Gjeldum, N.; Salah, B. Optimal Scheduling of Rainwater Collection Vehicles: Mixed Integer Programming and Genetic Algorithms. Sustainability 2023, 15, Mechanical and Industrial Engineering Department, American University of Ras Al Khaimah, Ras Al Khaimah P.O. Box 10021, United Arab Emirates Faculty of Electrical Engineering, Mechanical Engineering and Naval Architecture (FESB), University of Split, 21000 Split, Croatia; ngjeldum@fesb.hr Industrial Engineering Department, College of Engineering, King Saud University, P.O. Box 800, Riyadh 11421, Saudi Arabia; bsalah@ksu.edu.sa Correspondence: mohammed.alnahhal@aurak.ac.ae Abstract: Due to climate change, some areas in the world witnessed higher levels of heavy rain than the capacity of the wastewater system of the streets. Therefore, water tankers are used for the dewatering process to take the extra rainwater from the streets to keep a smooth flow of vehicles and to use the water in agriculture and industry. Water is taken to a water treatment plant. Performing the dewatering process as fast as possible, especially in crowded streets, was ignored by researchers. In this study, at first, the problem was solved using two mixed integer programming (MIP) models. A new variant of identical parallel machine scheduling with job splitting is proposed for the first time, where one or at most two tankers can work at the same flood location at the same time. This is performed in the second model. However, the first model considers dividing the dewatering processes into two phases, where the first one, which is more urgent, is to reduce the amount of floodwater. The second one is for dewatering the rest of the water. Then two genetic algorithms (GAs) were used to solve faster the two MIP models, which are NP-hard problems. At first, the MIP and GA models were applied to small-sized problems. Then GA was used for large practical data sets. Results showed that for small problems, MIP and GA gave optimal solutions in a reasonable number of iterations, while for larger problems, good solutions were obtained in a reasonable number of iterations. Keywords: water tankers; water treatment plant; flood; parallel machines scheduling; mixed integer programming; genetic algorithm 9252. https://doi.org/10.3390/ su15129252 Academic Editors: Eirini Aivazidou and Naoum Tsolakis Received: 30 April 2023 Revised: 23 May 2023 Accepted: 6 June 2023 Published: 8 June 2023 Copyright: © 2023 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https:// creativecommons.org/licenses/by/ 4.0/). 1. Introduction Because of climate change, some areas face rain levels more than expected. The infrastructure of some cities is not capable of dealing with such huge amounts of rainwater [1]. Therefore, water tankers are used in the winter to remove extra rainwater from the streets. The study focuses on a certain city that faces levels of rainwater that need to be evacuated from the streets to a water treatment plant in the city. Usually, water tankers offer a mobile solution to several bulk water needs. The problem of allocating different trucks to different water locations and the optimal scheduling of trucks was ignored in previous studies. Therefore, this study aims to fill in this gap of research. There are some similarities between the traditional job scheduling problem and the water tankers problem (WTP). However, there are some special conditions of WTP that make it different and need further investigation. The problem investigated in this study is similar to parallel machine scheduling with a job-splitting property (PMSJS) [2]. The machines here are water tankers. There are no setup times. The jobs are dewatering processes of flood spots on the main streets in a city. The main difference between PMSJS and WTP is the maximum job-splitting of only 2. In other Sustainability 2023, 15, 9252. https://doi.org/10.3390/su15129252 https://www.mdpi.com/journal/sustainability Sustainability 2023, 15, 9252 2 of 18 words, two trucks at maximum can work at the same flood location from two sides of the pool of water. To solve the problem, mixed integer programming (MIP) is used. Because it is NP-hard, a genetic algorithm (GA) is used to solve it. Two models are created, and each model adds some of the practical considerations to the problem in order to arrive at a solution. These models are as follows: 1. 2. Model 1: several trucks work together in the same area or city, but every location can be dewatered by only one truck. The problem combines parallel machine scheduling with job shop scheduling. In this case, some locations exist on very active streets, and flood level matters. Therefore, two phases for such a location are distinguished. The first phase of the deep flood, which is more important, must be performed before the second phase. Unlike job shop scheduling problems, parallel machine scheduling problems have no predefined routes for jobs on the machines. There is a single production stage for each job [3]. Model 2: it is similar to parallel machine scheduling with a job-splitting property but with a special condition of two water tankers per location at maximum. The objective will be to minimize the total weighted flow time. None of the previous studies investigated water tanker allocation and scheduling problems. Therefore, this study will investigate that problem. However, the study did not examine combining models 1 and 2, which is interesting for future research. This study is based on a practical case study in which digital tools used in Industry 4.0, such as sensors to measure the level of water, are not used because of budget limitations. The aim of this study is to provide algorithms to optimize the system based on the current conditions. However, future work can investigate the effect of such tools on the optimization methods and improve results. The remainder of this paper is structured as follows: a literature review of different types of machine scheduling is presented in the next section. Then, in Section 3, the methodology containing the two MIP and GA models is explained. In Section 4, the results and analysis are presented. Finally, conclusions, including study limitations and recommendations for future research, are presented. 2. Literature Review There are several methods of rainwater management used in the world and investigated in the literature, such as retention reservoirs, infiltration boxes, and green roofs. For example, the benefits of a green roof test bed for stormwater management were examined in a study by Qin et al. [4]. Such systems were found to be useful in tropical areas. Moreover, Eger et al. [5] asked how can the hydrologic processes influence stormwater infrastructure behavior. Zhang et al. [6] compared stormwater management in two cities: Singapore and Berlin. Different solutions for stormwater management were provided for the two cities. A cost analysis was provided. It was found that green roofs result in energy savings. Furthermore, various sustainable stormwater management solutions were evaluated by Alkhaledi et al. [7] using a multi-criteria decision-making model. The purpose is to guarantee public safety and adhere to runoff regulations. The scheduling problem was investigated in environments other than transportation, such as the production process. For example, Shevasuthisilp and Intawong [8] investigated the scheduling problem in production planning to reduce makespan error by suggesting the best sequencing process to reduce the total processing time. Moreover, Dupláková et al. [9] investigated the scheduling problem in the production process in which the optimal sequencing of parts to be machined is determined. They used different methods, such as simulation. In another study by Balog et al. [10], the scheduling of manufacturing was investigated using Scheduling Software Lekin. There are no publications about water tanker optimal schedules. There was a literature review that considered other problems. Stolk et al. [11] investigated water “tank” delivery schedules in Australia, which differs from water “tankers” in our study. The objective is to minimize the cost of delivering a given amount of sales value. Tankers in other fields, such as the petroleum and chemical industries, were investigated. Some studies considered Sustainability 2023, 15, 9252 3 of 18 coastal shuttle tanker scheduling, such as the study by Yang et al. [12]. They investigated the tanker scheduling plan model and considered the tanker fleet design. Cankaya et al. [13] investigated the scheduling of chemical tankers. The water tanker scheduling was not considered before. This study presents two models. They are more complicated than the single machine sequencing model which was considered in the study by Baker and Keller [14], whey they provided comparisons between several integer programming models. This study considers several trucks working in the same area. In many cases, the sequencing problem can be modeled as a traveling salesman problem (TSP). Some studies investigated multiple TSP where some salesmen visit all the cities [15]. This can be helpful for real-life applications [16]. In the first model of this study, two phases exist, where the first phase must be finished before the start of the second one. Generally, when tasks depend on each other, job shop scheduling is utilized. Job shop scheduling was used in several studies, such as with Bülbül and Kaminsky [17], who made a new heuristic for large practical problems. Moreover, Ku and Beck [18] evaluated four MIP models of traditional job shop problems. However, our study is not exactly a job shop problem because it has its unique conditions. This study is more similar to the identical parallel-machine scheduling but with zero setup time. Lee and Pinedo [19] considered identical machines in parallel and considered due dates. They took into consideration the setup time. Fanjul-Peyro et al. [20] used MIP to solve the unrelated parallel machine problem. In unrelated machines scheduling, the time needed for a given job depends on the machine. Tavakoli and Mahdizadeh [21] presented an integer-linear programming model for an identical parallel-machine scheduling problem. They proposed GA to solve the problem for large data sets. The objective was to minimize the total weighted flow time. The principles of natural evolution are the basis for GAs, which are search algorithms. GAs are useful for optimization problems, where the goal is to find the best solution out of a set of possible solutions. They are also applicable to problems that do not have a known solution, such as prediction problems. GAs can be employed to solve problems that are too complex for traditional algorithms [22]. A GA can evolve remarkably complex and interesting structures despite its highly simplified computational setting [23]. In GA, it is very important to define the input parameters, such as the crossover point [24]. Researchers can test different types of representations, crossover and mutation operators, and different methods of reproduction and selection. However, all these methods are inspired by Holland’s original GA and biological evolution [23]. Another study that used GA in identical parallel machine scheduling is the one by Chaudhry and Drake [25], who took into consideration the workers’ assignments. Moreover, Demirel et al. [26] also used GA in parallel machine scheduling to minimize total tardiness. On the other hand, Dell’Amico et al. [27] presented heuristic and exact algorithms for such problems. The same problem was considered in the study by Fleszar and Hindi [28], who considered the resource constraint. The secondary resource constraint was also studied by Vallada et al. [29], who used enriched metaheuristics to solve the problem. Furthermore, Abreu and Prata [30] used a hybrid meta-heuristic to solve the scheduling problem. Simulated annealing was presented for unrelated parallel machine scheduling by Jouhari et al. [31]. Furthermore, Yepes-Borrero et al. [32] presented two metaheuristics to solve the unrelated parallel machine scheduling. Fanjul-Peyro [33] investigated the problem where processing times and setups depend on both the machine and the job. They presented MIP and a three-phase algorithm to solve the problem. Alharkan et al. [34] presented Tabu search and particle swarm optimization algorithms to solve the scheduling of two parallel machines with a single server. However, in parallel machine scheduling problems, each job is assigned to exactly one machine. In our study, however, it can be assigned to two trucks at most in model 2. Therefore, a new variant, which is job splitting, is needed. Kim et al. [2] considered the problem where several sub-jobs could be processed separately on parallel machines by splitting a job. They suggested a two-phase heuristic algorithm. Sarıçiçek and Çelik, C. [35] investigated the parallel machine scheduling problem with job splitting where the objective Sustainability 2023, 15, 9252 4 of 18 is to reduce tardiness. Eroğlu et al. [36] solved the unrelated machine scheduling problem with job splitting using GA with the objective of reducing the makespan (completion time). They considered a real-life problem where each machine has its own processing time. Lee and Jang [3] investigated machine scheduling with job splitting and dedicated machines. Dedicated machines mean that jobs can only be processed on a specified set of machines. They assumed sequence-independent setup times. Oktafiani and Ardiansyah [37] investigated the scheduling problem of identical parallel machines with job splitting using MIP, where the objective is to reduce the makespan. Rainwater collection optimization was overlooked in the literature. Moreover, most of the above studies considered makespan or total tardiness as objectives. The main contribution of this study is to investigate an identical parallel machine with no setup time and with the objective of minimizing the total weighted flow time with job splitting in a real-life application where job splitting is limited to two machines (water tankers). Such a real-life application was ignored in the literature. Furthermore, the division of parallel machine scheduling into two phases is also new. 3. Materials and Methods The methodology of rainwater management proposed in this study was based on a real case study in the Middle East. Many projects of rainwater management can be strategic ones that need major changes in infrastructure and need large investment costs for a long period. However, the flood can come suddenly and needs immediate solutions on the operational level. This study investigates such an operational intervention. However, the main weakness of water tankers is that the needed time for the dewatering process using water tankers is much longer than what other methods need. The study tries to reduce that time by providing mathematical modeling that gives solutions in a reasonable time. Therefore, when enough fund is available in later stages, changes in the infrastructure are required. This paper proposes a customized way of GA that is suitable for identical parallel machine scheduling with job splitting where the maximum number of assigned machines for a job is two tankers. This new variant of identical parallel machine scheduling is proposed for the first time. The methodology depends on two MIP and GA models. The following assumptions were considered in this study: • • • • • • All the trucks are with the same capacity and the same loading and unloading rate. Therefore, the machines (trucks) are identical. For the first model, one truck is only capable of dewatering one location at a time. In the second model, two trucks can perform the job. Based on experts’ opinions and historical data, the exact number of truckloads of a certain water location is known with certainty. All the water will be taken to the same final location (the water treatment plant in the city). The penalty exists until the whole flood location is empty of water and the truck unloaded the last truckload in the water treatment plant. The available number of trucks is predetermined. Therefore, it is not a decision variable. WTP has unique conditions and, therefore, the following considerations need to be taken into account: • • • • • • Different locations have different traffic volumes, and therefore, they have different priorities. The dewatering process at some locations can be divided into two phases (deep water and shallow water). Different priorities are assigned to different phases. In this case, phase 1 must be done before Phase 2. There is no relationship between one location and another, and this means that the problem is not like the job shop scheduling, except for the two phases of model 1. No setup time is considered. In the second model, there is no idle time. The objective is to minimize total weighted flow time. Sustainability 2023, 15, 9252 and shallow water). Different priorities are assigned to different phases. In this case, phase 1 must be done before Phase 2. There is no relationship between one location and another, and this means that the problem is not like the job shop scheduling, except for the two phases of model 1. No setup time is considered. 5 of 18 In the second model, there is no idle time. The objective is to minimize total weighted flow time. To To take take the the above above considerations considerations into into account, account, two two MIP MIP models models were were presented. presented. Then Then they are solved by new special genetic algorithms. The WTP is presented for they are solved by new special genetic algorithms. The WTP is presented for the the first first time time to to the the scientific scientific community. community. Figure Figure 11 shows shows the the methodology methodology of of the the study. study. There There are are two two models: models: The The first first one one takes takes into into consideration consideration dividing dividing the the dewatering dewatering process process into into two two phases, one for fordeep deepwater waterand andthe thesecond second one is dewatering of the floodwater. phases, one one is dewatering thethe restrest of the floodwater. The The second model into consideration the splitting the dewatering process two second model takestakes into consideration the splitting of the of dewatering process by twoby trucks. trucks. Thatone means onetrucks or two trucks the dewatering forlocation. any flood loThat means or two can makecan the make dewatering process forprocess any flood Each cation. Each one has a different war of MIP and GA. If the number of locations, for examone has a different war of MIP and GA. If the number of locations, for example, is less than ple, is less than 10 locations flood, MIP is used.inAny situation in which we have 10 or 10 locations of flood, MIP is of used. Any situation which we have 10 or more locations, more locations, GA is used. The study, however, does not consider combining both modGA is used. The study, however, does not consider combining both models into one, as it els one, as it caninbe investigated caninto be investigated future research.in future research. Problem statement based on a case study Yes Deep flood exist? No Model 1 (two phases) Model 2 (job splitting) Low # of Low # of Yes Yes locations locations No GA 2 MIP 2 GA 1 MIP 1 Figure Figure 1. 1. Study Study Methodology. Methodology. The The two two models models are are as as follows: follows: MIP for Model 1 MIP for Model 1 There is more more than thanone onetruck trucktotoserve serveone onearea. area.However, However, a flood location only There is a flood location cancan only be be served by one truck all the time. In other words, preemption is not allowed. The alloserved by one truck all the time. In other words, preemption is not allowed. The allocation cation each to truck to different locations is considered a decision variable. Some locations of eachoftruck different locations is considered a decision variable. Some locations can have massive amounts of rainwater on important streets with large traffic volumes. In such locations, the first phase of rainwater removal is more important than the second phase. The first phase must be done before the second one. Each phase of each location must be performed by the same truck. Each location does not need to have two phases, because some streets are not with heavy traffic or because the level of rainwater is shallow. Table 1 shows an example of six flood locations. The time unit is the time needed for the dewatering of one truckload. Each location needs a different number of dewatering processes (truckloads). The dewatering process means sucking the rainwater from the Sustainability 2023, 15, 9252 6 of 18 street into the truck and unloading rainwater from the truck into the water treatment plant. If it is performed five times, then d = 5. For example, the truck must work on the first location for dewatering five times. Each time, transportation occurs. Therefore, the total time spent serving location 1 is 10 units of time which are (1 + t) d = 5 × (1 + 1). The unit of time is the average needed time to finish one truckload, including loading and unloading of rainwater, without considering transportation. The traffic volume is measured on a scale of 1 to 10, where 10 is very heavy traffic in the middle of the city, and 1 means very distant areas with lower importance. Therefore, the model gives more priority to areas in the middle of the city with p-values approaching 10. Table 1. Data of Model 1. Flood Location Truckloads (d) Transportation to and from Plant (t) Street Traffic (p) Deep/Shallow δ(β) 1 2 3 4 5 6 5 10 15 7 10 8 1 0.5 0.75 0.5 0.7 1 5 7 6 4 3 8 1 2(3) + 1(7) 2(7) + 1(8) 1 1 1 Table 1 shows some locations with massive amounts of water (e.g., locations 2 and 3). The importance of a location depends on how deep the water is. A deeper flood has higher importance. Therefore, the same location can be divided into two locations. The first phase of dewatering is more important. Assume there are two levels (deep and shallow). δ = 1 means shallow and δ = 2 means deep. The expression δ(β) = 2(3) means that the first three truckloads are in the first phase. For the second flood location, the first three truckloads are considered more important than the last seven truckloads in Phase 2. Therefore, Phase 1 has a higher p-value, for example (8), to increase the attention for these phases. The first phase (e.g., three truckloads in the second location) must be finished before the rest of the processes are complete. The two phases can be accomplished by two different trucks. Therefore, Table 1 can be rewritten as in Table 2. Table 2. A modified table for Model 1. Real Flood Location 1 2 3 4 5 6 Model Flood Location Truckloads (d) Transportation to and from Plant (t) Street Traffic (p) 1 2 3 4 5 6 7 8 5 3 7 7 8 7 10 8 1 0.5 0.5 0.75 0.75 0.5 0.7 1 5 7+1=8 7 6+2=8 6 4 3 8 Previous Model Flood Location (ν) 2 4 Mathematical modeling will depend on Table 2, assuming that we have eight locations instead of six. The due date is zero, which means that trucks must start immediately, and therefore, there is no holding cost. Holding cost occurs if the process is done too early. Loading and unloading needed times of water are assumed fixed. The decision variables of the study are: xj is the start time (in dewatering time units) for flood location j (measured from time zero). For example, x1 = 0 means that the truck will start from the flood location 1. wmj = 1, i f truck m is assigned to location j 0, otherwise Sustainability 2023, 15, 9252 7 of 18 ymij = 1, i f i precedes j using truck m 0, i f j precedes i using truck m T, which is an input parameter, is the total number of water tankers. The model can be written as follows: For example, y112 means that truck 1 will start serving location 1 before location 2. However, it does not mean that location 2 will immediately be after location 1. The model can be written as follows: N minimize z = ∑ p j s+j (1) j =1 Subject To xi − x j + Mymij − M wmi + wmj − 2 ≥ 1 + t j d j + M wmi + wmj − 2 ∀m = 1 . . . T, ∀i = 1 . . . N − 1, ∀ j = i + 1 . . . N − xi + x j − Mymij − M wmi + wmj − 2 ≥ (1 + ti )di − M + M wmi + wmj − 2 ∀m = 1 . . . T, ∀i = 1 . . . N − 1, ∀ j = i + 1 . . . N + x j + s− ∀j = 1 . . . N j − sj = − 1 + tj dj (2) (3) (4) M ∑ ∀m = 1 . . . T, ∀ j = 1 . . . N wmj = 1 (5) m =1 − x i + x i +1 ≥ (1 + t i ) d i − x j , s+ j , sj ≥ 0 ymij and wmj = (0, 1) ∀i ∈ ν ∀j = 1 . . . N ∀m = 1 . . . T, ∀i = 1 . . . N, ∀ j = 1 . . . N, i 6= j (6) (7) (8) where M is a large number. The objective function is the total weighted flow time for different locations. The flow time of a certain location means the time needed to finish all the truckloads of that location. In other words, it is the end time of that location. To find the objective function, the end time for each location is multiplied by the level of street traffic (p). Then the summation for all locations is found. Makespan was not considered as the objective because different flood locations have different levels of importance. s+ j is used to represent the end time of task j. This means that there is a penalty until the location is empty of water. Equations (2) and (3) are to guarantee that two locations cannot be served by one truck at the same time. The two terms − M wmi + wmj − 2 and + M wmi + wmj − 2 are added to these two constraints to enforce the model to consider these two constraints if the term is zero. In other words, if the locations i and j are served by the same truck, m, then they cannot be served at the same time. If one or the two of these locations are not served by the truck m, then the term − M w + w − 2 will be a large positive mi mj number, and the term M wmi + wmj − 2 be a large negative number, and therefore, the two constraints (2) and (3) will be redundant for the truck m. Equation (4) is to calculate the end time of dewatering. The end time here means that the truck made both the loading and unloading of water. Constraint (5) is added because we have only one truck for one location. Constraint (6) was added to guarantee that the first phase was finished before the second one. Equation (7) is the nonnegative constraint for the continuous variables − x j , s+ j , s j . The last Equation (8) is for ymij and wmj , which is binary. MIP for Model 2 This model represents an innovative variant of the job-sequencing model where the same job (dewatering of flood location) can be performed by one or two trucks simultane- Sustainability 2023, 15, 9252 8 of 18 ously or at different times. Two trucks on the two sides of the flood location can exist. It is not necessary that they work exactly at the same time. However, it is possible. In other words, the two trucks can work at the same time or at different times. This is important for some locations that are important in the middle of the city, assuming that there is enough space for two trucks. This is the main difference between the traditional parallel machine scheduling and WTP defined in this paper. The following two variables are introduced: • • Amj number of truckloads at location j performed by truck m. Moreover, xmj is used to represent the starting time in which truck m works on location j. The model can be written as follows: N Minimize z = ∑ p j s+j (9) j =1 Subject to the following: xmi − xmj + Mymij − M wmi + wmj − 2 ≥ 1 + t j Amj + M wmi + wmj − 2 = 1 . . . N − 1, ∀ j = i + 1 . . . N − x mi + xmj − Mymij − M wmi + wmj − 2 ≥ (1 + ti ) Ami − M + M wmi + wmj − 2 = 1 . . . N − 1, ∀ j = i + 1 . . . N xmj + 1 + t j Amj ≤ s+ j ∀m = 1 . . . T, ∀i ∀m = 1 . . . T, ∀i ∀m = 1 . . . T, ∀ j = 1 . . . N (10) (11) (12) M ∑ wmj ≤ 2 ∀j = 1 . . . N (13) m =1 T ∑ Amj ≥ d j ∀j = 1 . . . N (14) Amj ≤ Mwmj ∀m = 1 . . . T, ∀ j = 1 . . . N (15) Amj is integer ∀m = 1 . . . T, ∀ j = 1 . . . N (16) ∀j = 1 . . . N (17) m =1 − x j , s+ j , sj ≥ 0 yij = (0, 1) wmj = c(0, 1) ∀i = 1 . . . N, ∀ j = 1 . . . N, i 6= j ∀m = 1 . . . T, ∀ j = 1 . . . N (18) (19) The first two constraints (Equations (10) and (11)) contain Amj instead of dj , and xmi and xmj instead of xi and xj in the previous model. This is because a truck m can take some or all the demand for the location j. It is possible; however, it takes no jobs, and the other trucks can do the job. Constraint (12) is to find the end time of truck m on location j. Constraint (13) is to let two trucks at maximum work in the same location. Constraint (14) is to guarantee that all the truckloads served by all the trucks are exactly as the truckload found in the street (dj ). Constraint (15) is to enforce the model to assign 1 for wmj whenever Amj is greater than zero. This model contains all types of variables: continuous, integer, and binary, as shown in the last four constraints. Genetic Algorithms GA was used to solve the two MIP models in reasonable times. There are some steps of GA, such as selecting input parameters such as population size and mutation rate, chroSustainability 2023, 15, 9252 9 of 18 mosome formulations, mating process, and mutation process. Mating and mutation processes are repeated for a certain number of iterations or when a certain criterion is reached. Genetic Algorithms In this study, a certain number of iterations is predefined, such as 100 iterations, so that GA was used toThe solvereader the two MIP models in reasonable times. are some processing time is still reasonable. might refer to Haupt andThere Haupt [38]steps for of GA, such as selecting input parameters such as population size and mutation rate, more information about GA. The main contribution of this study about GA is the formuchromosome formulations, mating process, and mutation process. Mating and mutation lation of chromosomes that are take into consideration theofsequence ofwhen jobsaand thecriterion assignprocesses repeated for a certain number iterations or certain is reached. In study, a certain number of iterations is predefined, 100 iterations, ment of each job (location) tothis different tankers. Two GA models were such usedasfor the two so that processing time is still reasonable. The reader might refer to Haupt and Haupt [38] models. GA for Model 1 for more information about GA. The main contribution of this study about GA is the formulation of chromosomes that take into consideration the sequence of jobs and the assignment of each job (location) to different tankers. Two GA models were used for the the phases of some flood locations are used. The initial chromotwo two models. In this model, somes are built. Then, “repair” GAafor Model 1 function is needed if the second phase comes before the first one. The allocation of themodel, trucksthetotwo different exist theThe chromosomes. In this phases oflocations some floodmust locations arein used. initial chromoEach gene was chosen to are contain two anumbers: the sequence the truck. We call each somes built. Then, “repair” function is needed if and the second phase comes before the first one. The allocation of the trucks to different locations must exist in the chromosomes. one a sub-gene. Figure 2 shows how to interpret the chromosome for a certain parent (P1). Each gene was chosen to contain two numbers: the sequence and the truck. We call each Note that we can putone thea genes of each truck beside each other. It will not affect the meansub-gene. Figure 2 shows how to interpret the chromosome for a certain parent ing or the objective function value. (P1). Note that we can put the genes of each truck beside each other. It will not affect the meaning or the objective function value. Figure 2. Chromosomes Figure 2. Chromosomes meaning in GA. meaning in GA. For mating, the whole gene containing the sequence and the truck must stay in one Forcontaining example, if the crossover pointand is 3, then firstmust two genes subFor mating, thechromosome. whole gene the sequence the the truck stay(four in one genes) must be exchanged between the parents. For mutation, three different random chromosome. For example, if the crossover point is 3, then the first two genes (four subnumbers are generated: one for rows and two for columns. Then, a fourth random number genes) must be exchanged between the choose parents. mutation, threewill different random is generated to randomly if theFor sequence or the trucks be changed. If the random is greater sequence needs changed, and the two genes numbers are generated: onenumber for rows and than two0.5, forthe columns. Then,toabefourth random number must exchange their sequence. If it is less than 0.5, the truck numbers need to be exchanged. is generated to randomly choose if the sequence or the trucks will be changed. If the ranFigure 3 shows the mating and mutation. In the mutation of C1, the truck numbers of the dom number is greater than 0.5,fourth the genes sequence needs to be changed, and the two genes second and the were exchanged. Sustainability 2023, 15, x FOR PEERmust REVIEW exchange Sustainability 2023, 15, 9252 10 of need 19 their sequence. If it is less than 0.5, the truck numbers to b changed. Figure 3 shows the mating and mutation. In the mutation of C1, the truck 10 of 18 bers of the second and the fourth genes were exchanged. must exchange their sequence. If it is less than 0.5, the truck numbers need to be exchanged. Figure 3 shows the mating and mutation. In the mutation of C1, the truck numbers of the second and the fourth genes were exchanged. Figure 3. Mating and mutation in model 1. Figure3.3.Mating Mating and in model 1. Figure andmutation mutation in model 1. However, Table 2 contains eight flood locations to account for the two phases. Before However, Table 2 contains eight flood locations to account for the two phases. Before making the above mating and mutation, function istoneeded. Figure shows However, Table 2 contains eightaa “repair” flood locations account for 4the twothe phases. B making the above mating and mutation, “repair” function is needed. Figure 4 shows the “repair” function. For the same truck 2, location 2 (phase 1) must be served before location making aboveFor mating and mutation, a 2“repair” is needed. Figure 4 show “repair”the function. the same truck 2, location (phase 1) function must be served before location 3 (phase 2). 3 (phasefunction. 2). “repair” For the same truck 2, location 2 (phase 1) must be served before loc 3 (phase 2). Figure 4. Repaired chromosome in model 1. Figure 4. Repaired chromosome in model 1. For the following chromosome, the initial calculations of the costs are shown in Table 3. For the following chromosome, calculations of the costs are phase shown1in(3Table However, these calculations neglect the the initial fact that phase 2 must come after must 3. However, these calculations neglect the fact that some phaseadjustments 2 must comemust afterbephase 1 for (3 come after 2, and 5 must come after 4). Therefore, made Figure 4. Repaired chromosome in model 1. must come after 2, and 5 must come after 4). Therefore, some adjustments must be made these four locations, as in Table 4. for these four locations, as in Table 4. 5For the 1 following chromosome, the initial of4 the costs in 6 2 1 1 3 1 2 2calculations 8 2 2 7are shown 1 3. However, these neglect 24 must after phas 5 1 6 2 calculations 1 1 3 1 the 2 fact 2 that 8 phase 2 2 come 7 1 Table 3. Initial cost calculation in Model 1. must come after 2, and 5 must come after 4). Therefore, some adjustments must be 3. Initial cost calculation in Model 1. forTable these four locations, ast in Table 4.p d (1 + t)d End Time (s+ ) ps+ d t p Truck 1 5 8 0.75 Truck 11 5 6 2 1 1 36 1 5 1 5 8 0.75 65 3 7 0.5 7 1 5 1 5 10 0.7 Table 3.7Initial cost calculation in Model31. 32 7 0.5 7 Truck 7d 0.5 76 10 0.7 t 34 2 3 0.5 8 Truck 2 Truck 18 8 1 8 6 7 0.5 4 4 7 0.75 8 5 8 0.75 2 18 3 7 Truck 2 6 2 3 85 7 10 7 3 0.5 1 1 0.5 0.7 0.5 0.5 8 8 (1 + t)d 1 p 6 5 7 3 4 8 14 2 1410 10.5 1017 End Time (s+) 2 10.5 10.5 (1 17 4.5 16 10.5 12.25 4.5 16 + t)d 14 10 10.5 17 10.5 4.5 814 24 14 34.5 24 51.5 2 34.5 10.5 End 51.5 15 31 10.5 43.25 15 Sum 31 ps+ 4 84 120 84 241.5 120 154.5 2 241.5 42(s+) 154.5 Time 120 248 42 346 14 120 1356 24 248 34.5 51.5 10.5 15 7 ps 84 12 241 154 42 12 4 7 0.75 8 12.25 43.25 346 1356 Sum Table 4. The adjusted calculation for Table 3. Truck Location d t p (1 + t) d Start Time (x) The two phases’ locations 1 5 8 0.75 6 14 0 Table 4. The adjusted calculation for Table 3. 1 3 7 0.5 7 10.5 24 2 2 3 0.5 8 4.5 10.5 Truck Location d t p (1 + t) d Start Time (x) 2 4 7 0.75 8 12.3 31 The two phases’ locations Sorted1phases 5 8 0.75 6 14 0 0.5 8 7 4.5 10.5 24 12 3 2 7 3 0.5 10.5 21 2 3 3 7 0.5 4.5 10.5 0.5 7 8 10.5 24 22 4 4 7 7 0.75 8 12.3 31 0.75 8 12.3 31 Sorted phases 1 5 8 0.75 6 14 0 2 2 3 0.5 8 4.5 10.5 Adjusted 1 start and end 3 times 7 0.5 7 10.5 24 0.5 8 8 4.5 10.5 31 22 4 2 7 3 0.75 12.3 11 5 3 8 7 0.75 14 0 0.5 7 6 10.5 24 Adjusted start and end times 2 4 7 0.75 8 12.3 31 2 2 3 0.5 8 4.5 10.5 1 5 8 0.75 6 14 43.3 1 3 7 0.5 7 10.5 24 Sustainability 2023, 15, 9252 2 1 4 5 End Time (s11+)of 18 14 34.5 15 End Time (s+ ) 43.3 14 15 34.5 15 34.5 43.3 43.3 14 15 34.5 15 43.3 14 34.5 43.3 15 57.3 34.5 7 0.75 8 12.3 31 43.3 8The extra 43.3 0.75 is multiplied 6 by p-value,14 43.3 total cost is 1356 57.3+ 259.5 = which is 6. So the 1615.5. GA for 2 is multiplied by p-value, which is 6. So the total cost is 1356 + 259.5 = 1615.5. TheModel extra 43.3 First truck Second Truck First truck Second Truck In this model, one or two trucks can work on a location simultaneously or at different GA for Model 2 times. In the previous model, we used two sub-genes inside each gene to represent a loIn sequence this model, or two trucks canfive work on a location or at difcation andone truck. In this model, sub-genes will besimultaneously used for each location as ferent times. In the previous model, we used two sub-genes inside each gene to reprefollows: sent a location sequence and truck. In this model, five sub-genes will be used for each location as follows: % of truckload performed by the Sequence of the second Sequence of the first truck truckperformed by % of first truckload Sequencetruck of the second the first truck Sequence of the first truck truck To facilitate mating and mutation, the last two sub-genes will be kept as two random To facilitate mating and mutation, the last two sub-genes will be kept as two random variables between 0 and 1, and they are converted to integers in the “cost” function. Figure variables between 0 and 1, and they are converted to integers in the “cost” function. Figure 5 5 shows 6-location chromosomes in population matrix form and in the cost model form. shows 6-location chromosomes in population matrix form and in the cost model form. The second and the third rows in the figure are used in the cost function after converting The second and the third rows in the figure are used in the cost function after converting numbers between 0 and 1 into integers. The third row has the sequence and the truckload numbers between 0 and 1 into integers. The third row has the sequence and the truckload per truck in integer numbers. per truck in integer numbers. Figure Figure5.5.Chromosomes Chromosomesrepresentations representationsin inmodel model22in inthe thepopulation populationmatrix matrixand andthe thecost costfunction. function. In Inthe the first first row, row,the thesequence sequenceof ofthe thefirst firstand andsecond secondtrucks trucksisis represented representedas asaarandom random number. Then, in the second one, the random number is converted into an integer to number. Then, in the second one, the random number is converted into an integer to reprepresent the sequence. For example, for truck 1, the minimum random number was resent the sequence. For example, for truck 1, the minimum random number was 0.01560744 0.01560744 (only (only three three digits digits are are shown shown in inFigure Figure55as aso.016). o.016).Therefore, Therefore,the thefirst-served first-served location will be location 6. Even though the last sub-gene contains a different number location will be location 6. Even though the last sub-gene contains a different number (shown as 0.879), the gene is “repaired” so that if the two trucks are the same (e.g., truck 1 for the location 6), the two random numbers will be as the minimum one (0.01560744 in this case). Therefore, the truck will not leave for another location until it finishes the current flood location. Therefore, the rank of 1 is repeated for the last two sub-genes in the figure. Moreover, the ratio of truckload was converted from 0.51 to 1. The same is for the second and the third locations. After that, truck 1 will serve location 1, which has the rank of 2, with a random number of 0.21454631. Finally, location 4 then location 5 are served by truck 1. Sustainability 2023, 15, 9252 1 for the location 6), the two random numbers will be as the minimum one (0.01560744 in this case). Therefore, the truck will not leave for another location until it finishes the current flood location. Therefore, the rank of 1 is repeated for the last two sub-genes in the figure. Moreover, the ratio of truckload was converted from 0.51 to 1. The same is for the second and the third locations. After that, truck 1 will serve location 1, which has the rank 12 of 18 of 2, with a random number of 0.21454631. Finally, location 4 then location 5 are served by truck 1. Most probably, low random numbers (e.g., less than 0.20) and also large random Most(e.g., probably, low random numbers (e.g., less than 0.20) and also large random numbers greater than 0.8) will not be meaningful for two reasons: numbers (e.g., greater than 0.8) will not be meaningful for two reasons: 1. In the optimal solution, the model tries to balance the load as much as possible on In the optimal solution, the model tries to balance the load as much as possible on the 1. the two trucks. two trucks. 2. When converted into integers, the truckload for one vehicle might be zero or all the 2. When converted into integers, the truckload for one vehicle might be zero or all the truckload. For example, for location 4, if the percentage of truckload done by truck 3 truckload. For example, for location 4, if the percentage of truckload done by truck 3 is only 7%, the total truckload of location 3 is only 7, so 7×0.7 = 0.49, which can be is only 7%, the total truckload of location 3 is only 7, so 7 × 0.7 = 0.49, which can be rounded to zero. Therefore, the meaning of this is that only truck 1 serves location 4. rounded to zero. Therefore, the meaning of this is that only truck 1 serves location 4. Therefore, we generated random numbers between 0.2 and 0.8 to reduce the number Therefore, we generated random numbers between 0.2 and 0.8 to reduce the number of iterations to obtain the best solution. Table 5 shows the calculations of the end time for of iterations to obtain the best solution. Table 5 shows the calculations of the end time for truck 1 for the chromosome in Figure 5. truck 1 for the chromosome in Figure 5. Table5.5.Objective Objectivefunction functioncalculation calculationfor fortruck truck11ininFigure Figure5.5. Table Flood Location 6 6 11 44 55 Flood Location Amj 8 3 2 4 Amj t 8 3 2 4 1 1 0.5 0.7 t 1 1 0.5 0.7 p 8 5 4 3 p 8 5 4 3 (1 + t) Amj 16 16 66 33 6.8 6.8 (1 + t) Amj End Time (s+) End Time (s+ ) 16 16 22 22 25 25 31.8 31.8 worthmentioning mentioninghere herethat thatsplitting splittingthe thejob jobto tobe be performed performedby bytwo two trucks trucks affects affects ItItisisworth the objective function value (total weighted flow time). Figure 6 shows the effect. We asthe objective function value (total weighted flow time). Figure 6 shows the effect. We sumed that durations in in integer integer numbers. numbers. For For assumed thattransportation transportationtime timeisiszero zeroto to have have time time durations example, location 1 is dewatered by two trucks. A completion time of 11 will be considexample, location 1 is dewatered by two trucks. A completion time of 11 will be considered ered the calculation the objective function. is because the penalty be there in theincalculation of theofobjective function. ThisThis is because the penalty willwill be there as as long as there is flood water in the street. This is why we cannot calculate the objective long as there is flood water in the street. This is why we cannot calculate the objective function for for different different trucks trucks independently. independently. In In location location 5, 5, the the two two trucks trucks (1 (1 and and 2) 2) work work function simultaneouslymost mostof ofthe thetime. time. simultaneously Figure Figure6.6.Gantt Ganttchart chartfor forthe thesolution solutionin inFigure Figure5,5,with withzero zerotransportation transportationassumed. assumed. However, Figure 6 shows that different sequences can be for different trucks, but there is a general sequence usually found in the optimal solution. For example, for truck 1 the sequence is 6-1-4-5. Truck 2 has the sequence 2-5. For truck 3, the sequence is 1-3-4. That means that a general sequence such as 2-6-1-3-4-5 can satisfy all three sequences. Most probably, the optimal solution will have a general sequence that is appropriate for all the trucks. Based on that, we can unify the sub-genes 4 and 5 and give them the same value. This will reduce the search space and accelerate the GA. Based on the above discussion, two tactics are used to make GA faster. The first one is to generate random numbers for the truckload to be between 0.2 and 0.8 instead of generating random numbers between 0 and 1 the sequence is 6-1-4-5. Truck 2 has the sequence 2-5. For truck 3, the sequence is 1-3-4. That means that a general sequence such as 2-6-1-3-4-5 can satisfy all three sequences. Most probably, the optimal solution will have a general sequence that is appropriate for all the trucks. Based on that, we can unify the sub-genes 4 and 5 and give them the same value. This will reduce the search space and accelerate the GA. Based on the above dis13 of 18 cussion, two tactics are used to make GA faster. The first one is to generate random numbers for the truckload to be between 0.2 and 0.8 instead of generating random numbers between 0 and 1. The second tactic is to make sub-genes 4 and 5 have the same value so 1. The second tactic is to make sub-genes 4 and 5 have the same value so that one general that one general sequence will control all the trucks in one chromosome. sequence will control all the trucks in one chromosome. The mating process is straightforward. Figure 7 shows a mating process example The mating process is straightforward. Figure 7 shows a mating process example with with a crossover point of 4. a crossover point of 4. Sustainability 2023, 15, 9252 Figure 7. Mating example for model 2. Figure 7. Mating example for model 2. For mutation, several random numbers are needed for each mutation process. The first For mutation, several random numbers needed for each mutation The one determines the chromosome to mutate. A are random number between 1 andprocess. 5 is needed first one determines the chromosome to mutate. A random number between 1 and 5 is to determine which sub-gene to mutate. For the first sub-gene, a new random number needed to determine which sub-gene to mutate. For the first sub-gene, a new random between 0 and 1 is generated. If the number is below 0.5, a random vehicle number is number between 0 andthen 1 is2generated. If the number is 1below random vehicle numassigned. If it is larger, random numbers between and T0.5, are agenerated to determine ber is assigned. If it is larger, then 2 random numbers between 1 and T are generated to the location of the gene to exchange. Both the vehicle and its sequence are exchanged. Sustainability 2023, 15, x FOR PEER REVIEW 14 of 19 determine the location of thesteps gene using to exchange. Both the vehicle and sequence Figure 8 shows the mutation these random numbers. The its function Unifare (1,ex5) changed. Figure 8ashows thenumber mutation steps using random numbers. The function means generating random between 1 and these 5 using a uniform distribution. Unif (1, 5) means generating a random number between 1 and 5 using a uniform distribution. Select Chromosome Select Sub-gene: Unif (1, 5) Sub-gene 1 Sub-gene 2 Exchange Sub-gene 3 No Sub-gene 4 Sub-gene 5 Select gene to mutate: Unif (1, N) trucks Yes Select two genes to exchange: Unif (1, T) and Unif (1, T) Sub-gene 1 or 2: Sub-gene 3: Unif Sub-gene 4 or 5: Unif (1, T) (0.2, 0.8) Unif (0, 1) Figure 8. 8. Mutation 2. Figure Mutationsteps stepsof of Model Model 2. 4. Results andAnalysis Analysis 4. Results and The summary results of the four GA models of the given data in Tables 1–3 can be The summary results of the four GA models of the given data in Tables 1–3 can be found in Table 6. The number of iterations differs from one run to another. The shown found The number of iterations differs from run another. The shown onesin areTable those 6. obtained after running the model for the firstone time. It istopossible to obtain ones are those obtained afterFor running thefor model for1,the first iftime. It isitpossible tocan obtain a a lower or higher number. example, model maybe we run again, we lower or higher number. For example, for model 1, maybe if we run it again, we can obtain a lower number of iterations. In the first model, there are two trucks, and therefore, two sequences are shown. Model 2 has 3 trucks, and therefore, three sequences are shown. Having more trucks means faster work but at a higher cost. Model 2 has a lower objective Sustainability 2023, 15, 9252 14 of 18 obtain a lower number of iterations. In the first model, there are two trucks, and therefore, two sequences are shown. Model 2 has 3 trucks, and therefore, three sequences are shown. Having more trucks means faster work but at a higher cost. Model 2 has a lower objective function because there are three trucks and because job splitting can make work quicker. However, job splitting adds coordination complexity and needs further planning. Table 6. Models results. Model Number Objective Function Number of Iterations Until the Optimal Solution is Found Optimal Sequence 1 2 1141.5 571.95 208 61 4-1-5-7 and 2-3-8-6 1-6-4-2-3, 6-2-5, and 1-4-3-5 It is obvious that the number of iterations is reasonable. In Model 2, the optimal solution is not always guaranteed after a small number of iterations. However, a good solution was always obtained. The detailed results of Model 2 are in Tables 7 and 8. We assumed that the total number of available trucks is 3. Table 7 shows the results as can be shown in the chromosomes in the cost function if all the rows are set beside each other. The optimal solution indicates that each location is served by two trucks. Table 8 shows the results understandably. It shows that truck 1 has 5 locations to serve. Truck 2 has 4 locations to serve. Truck 3 has four locations to serve. For example, truck 1 has the sequence of 1-6-4-2-3. The numbers inside the parenthesis are the truckloads performed by the given truck. For example, truck 1 has two truckloads to load and unload in the first location. The sum of the truckloads must be the same as the estimated truckload of each location. Table 7. Model 2 result. Flood Location First Truck Second Truck Truckload of the First Truck Sequence of the First Truck Sequence of the Second Truck Location 1 Location 2 Location 3 Location 4 Location 5 Location 6 1 1 1 1 2 1 3 2 3 3 3 2 0.4 0.4 0.4 0.29 0.8 0.38 1 4 5 3 3 2 1 2 3 2 4 1 Table 8. Model 2 results in a meaningful form. Sequence * (Truckload) Truck 1 Truck 2 Truck 3 Sum of truckload 1 (2) 1 (3) 5 6 (3) 6 (5) 8 4 (2) 4 (5) 7 2 (4) 2 (6) 10 3 (6) 3 (9) 15 5 (8) 5 (2) 10 * General sequence: 1-6-4-2-3-5. Figure 9 shows the enhancements of the solution of model 2 over different iterations of GA. The y-axis shows the objective function value, which measures the total weighted flow time. It decreased from over 680 to 571.95. The solutions of model 2 converged quickly and achieved a better result in fewer iterations. Figure 10 shows the result of running Model 2 for 100 iterations when 30 flood locations exist with 5 trucks. The input data of d, p, and t were set randomly. Great improvements in objective function value were obtained during these iterations. The minimum value was 5711.3. Different random sets were tried and even better enhancements were found. Additionally, the solutions of Model 2 were robust and able to adapt to changing conditions. Sum of truckload 5 8 7 10 15 10 * General sequence: 1-6-4-2-3-5. Figure 9 shows the enhancements of the solution of model 2 over different iterations of GA. The y-axis shows the objective function value, which measures the total weighted of 18 flow time. It decreased from over 680 to 571.95. The solutions of model 2 15 converged quickly and achieved a better result in fewer iterations. Total weighted flow time Sustainability 2023, 15, 9252 Sustainability 2023, 15, x FOR PEER REVIEW 16 of 19 Figure 9. Solution of model 2 for the given data. Figure 10 shows the result of running Model 2 for 100 iterations when 30 flood locations exist with 5 trucks. The input data of d, p, and t were set randomly. Great improvements in objective function value were obtained during these iterations. The minimum value was 5711.3. Different random sets were tried and even better enhancements were found. Additionally, the solutions of Model 2 were robust and able to adapt to changing Figure 9. Solution of model 2 for the given data. conditions. 8000 Objective Function 7500 7000 6500 6000 5500 5000 0 20 40 60 Iterations 80 100 Figure10. 10.Result Resultof ofmodel model22for for30 30locations locationsand and55trucks. trucks. Figure • Thefollowing followingbenefits benefitsof ofthis thisstudy studyfor forscience scienceand andpractice practiceare areobtained: obtained: The Theresults resultsof ofthis thisstudy studyare aresignificant significantfor formunicipalities municipalities of of such such areas areasof offloods floodsto to The performthe thedewatering dewateringprocess processin inthe theright rightsequence sequencewith withthe theleast leastpenalty. penalty.This Thiswill will perform keep the the movements movements of of the thecars carson onthe thestreets streetsas assmooth smoothasaspossible. possible. By By properly properly keep managing the the dewatering dewatering process, process, municipalities municipalities can can ensure ensure that that the the roads roads are arenot not managing flooded able to to move around safely andand with minimal disruption. floodedand andthat thatvehicles vehiclesare are able move around safely with minimal disrupThis reduce the risk traffic delays, as well theasrisk flooding and tion.will Thishelp willto help to reduce theofrisk of traffic delays, as as well theof risk of flooding other damage to thetoroads. and other damage the roads. This study opens the door for future research in the same field, where the stochastic nature of the problem can be investigated. New algorithms can be developed that can better address the complexities of the problem. The results of the study can be used to help decision-makers in similar contexts. If the stochastic nature of the process is to be studied in the future, the dewatering process must be monitored and managed in order to keep the roads safe and efficient. Sustainability 2023, 15, 9252 16 of 18 • • • • This study opens the door for future research in the same field, where the stochastic nature of the problem can be investigated. New algorithms can be developed that can better address the complexities of the problem. The results of the study can be used to help decision-makers in similar contexts. If the stochastic nature of the process is to be studied in the future, the dewatering process must be monitored and managed in order to keep the roads safe and efficient. This can be achieved through the use of sensors and other technologies to detect and correct any potential issues. By doing so, the roads can remain safe and efficient for drivers. Moreover, the idea of this study can be applied to other fields in which tankers are used. For example, nondrinking water tankers are used extensively in the city for many purposes. The two models are new, and none of the previous studies considered the scheduling problem of rainwater tankers. Therefore, there are no previous studies to compare them with. 5. Conclusions In this study, we investigated for the first time the water tanker scheduling problem. The objective is to reduce the total weighted flow time. In other words, finishing the dewatering process faster in more crowded streets. This is useful for safety and for smooth movements on the street. We propose two MIP and GA models. The problem was divided into two phases in the first model, and in the second model, a special type of job splitting is proposed. Two tankers, at most, can work at the same location. New GA methods were proposed to solve faster the MIP models. When GA is used, at least for small problems, optimality is guaranteed. Results also showed that the number of iterations required to find an optimal/good solution is reasonable. There are, however, some limitations to the study. For example, the exactly needed truckloads are assumed to be known with certainty based on experts’ judgment. The number of trucks is assumed as an input parameter. Furthermore, the cost of more trucks was not taken into consideration. The number of trucks can be considered as a decision variable in future work. Future research can also look for faster algorithms for model 1. Another chance for future research is to merge models 1 and 2. Therefore, consider two phases and two trucks, at most, in the same model. Further, the penalty can be reduced whenever a truck finishes any amount of water on the road. Future research can also investigate the stochastic nature of the process. For example, during work, further rain can come and complicate the planning process. Author Contributions: Conceptualization, M.A.; methodology, M.A.; software, M.A.; validation, B.S. and N.G.; formal analysis, M.A.; investigation, M.A.; resources, B.S. and N.G.; data curation, M.A.; writing—original draft preparation, M.A.; writing—review and editing, B.S. and N.G.; visualization, B.S. and N.G.; supervision, B.S. and N.G.; project administration, M.A.; funding acquisition, B.S. All authors have read and agreed to the published version of the manuscript. Funding: This study received funding from King Saud University, Saudi Arabia, through researchers supporting project number (RSP2023R145). Additionally, the APCs were funded by King Saud University, Saudi Arabia, through researchers supporting project number (RSP2023R145). Institutional Review Board Statement: Not applicable. Informed Consent Statement: Not applicable. Data Availability Statement: Not applicable. Acknowledgments: Authors would like to thank King Saud University, Riyadh, Saudi Arabia, with researchers supporting project number RSP2023R145. Conflicts of Interest: The authors declare no conflict of interest. Sustainability 2023, 15, 9252 17 of 18 References 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. Semaan, M.; Day, S.D.; Garvin, M.; Ramakrishnan, N.; Pearce, A. Optimal sizing of rainwater harvesting systems for domestic water usages: A systematic literature review. Resour. Conserv. Recycl. X 2020, 6, 100033. [CrossRef] Kim, Y.D.; Shim, S.O.; Kim, S.B.; Choi, Y.C.; Yoon, H.M. Parallel machine scheduling considering a job-splitting property. Int. J. Prod. Res. 2004, 42, 4531–4546. [CrossRef] Lee, J.H.; Jang, H. Uniform parallel machine scheduling with dedicated machines, job splitting and setup resources. Sustainability 2019, 11, 7137. [CrossRef] Qin, X.; Wu, X.; Chiew, Y.M.; Li, Y. A Green Roof Test Bed for Stormwater Management and Reduction of Urban Heat Island Effect in Singapore. Br. J. Environ. Clim. Chang. 2012, 2, 410–420. [CrossRef] Eger, C.G.; Chandler, D.G.; Driscoll, C.T. Hydrologic processes that govern stormwater infrastructure behaviour. Hydrol. Process. 2017, 31, 4492–4506. [CrossRef] Zhang, D.; Gersberg, R.M.; Ng, W.J.; Tan, S.K. Conventional and decentralized urban stormwater management: A comparison through case studies of Singapore and Berlin, Germany. Urban Water J. 2017, 14, 113–124. [CrossRef] Alkhaledi, K.; Arnold, A.; Means, K.; Kim, I.-J.; Bendak, S. A Novel Multicriteria Decision Making Model for Sustainable Stormwater Management. Sustainability 2020, 12, 9508. [CrossRef] Shevasuthisilp, S.; Intawong, S. Improvement of Scheduling Efficiency Using Heuristic Methods and Simulation Technique in Electronic Assemblies Industry Production. In Proceedings of the International MultiConference of Engineers and Computer Scientists, Hong Kong, 18–20 March 2009; Volume 2. Dupláková, D.; Torokova, M.; Duplák, J.; Torok, J.; Hatala, M.; Steranka, J.; Radchenko, S. Determination of Optimal Production Process Using Scheduling and Simulation Software. Int. J. Simul. Model. 2018, 17, 609–622. [CrossRef] Balog, M.; Dupláková, D.; Szilagyi, E.; Mindas, M.; Knapčíková, L. Optimization of Time Structures in Manufacturing Management by using Scheduling Software Lekin. TEM J. 2016, 5, 319. Stolk, J.; Mann, I.; Mohais, A.; Michalewicz, Z. Combining vehicle routing and packing for optimal delivery schedules of water tanks. OR Insight 2013, 26, 167–190. [CrossRef] Yang, A.; Wang, R.; Sun, Y.; Chen, K.; Chen, Z. Coastal shuttle tanker scheduling model considering inventory cost and system reliability. IEEE Access 2020, 8, 193935–193954. [CrossRef] Cankaya, B.; Wari, E.; Eren Tokgoz, B. Practical approaches to chemical tanker scheduling in ports: A case study on the Port of Houston. Marit. Econ. Logist. 2019, 21, 559–575. [CrossRef] Baker, K.R.; Keller, B. Solving the single-machine sequencing problem using integer programming. Comput. Ind. Eng. 2010, 59, 730–735. [CrossRef] Bérczi, K.; Mnich, M.; Vincze, R. Efficient Approximations for Many-Visits Multiple Traveling Salesman Problems. arXiv 2022, arXiv:2201.02054. Kowalik, Ł.; Li, S.; Nadara, W.; Smulewicz, M.; Wahlström, M. Many-visits TSP revisited. J. Comput. Syst. Sci. 2022, 124, 112–128. [CrossRef] Bülbül, K.; Kaminsky, P. A linear programming-based method for job shop scheduling. J. Sched. 2013, 16, 161–183. [CrossRef] Ku, W.Y.; Beck, J.C. Mixed integer programming models for job shop scheduling: A computational analysis. Comput. Oper. Res. 2016, 73, 165–173. [CrossRef] Lee, Y.H.; Pinedo, M. Scheduling jobs on parallel machines with sequence-dependent setup times. Eur. J. Oper. Res. 1997, 100, 464–474. [CrossRef] Fanjul-Peyro, L.; Ruiz, R.; Perea, F. Reformulations and an exact algorithm for unrelated parallel machine scheduling problems with setup times. Comput. Oper. Res. 2019, 101, 173–182. [CrossRef] Tavakoli, M.R.; Mahdizadeh, E. A new ILP model for identical parallel-machine scheduling with family setup times minimizing the total weighted flow time by a genetic algorithm. Int. J. Eng. 2007, 20, 183–194. Lucasius, C.B.; Kateman, G. Understanding and using genetic algorithms Part 1. Concepts, properties and context. Chemom. Intel. Lab. Syst. 1993, 19, 1–33. [CrossRef] Forrest, S. Genetic algorithms. ACM Comput. Surv. (CSUR) 1996, 28, 77–80. [CrossRef] Mills, K.L.; Filliben, J.J.; Haines, A.L. Determining relative importance and effective settings for genetic algorithm control parameters. Evol. Comput. 2015, 23, 309–342. [CrossRef] Chaudhry, I.A.; Drake, P.R. Minimizing total tardiness for the machine scheduling and worker assignment problems in identical parallel machines using genetic algorithms. Int. J. Adv. Manuf. Technol. 2009, 42, 581–594. [CrossRef] Demirel, T.; Ozkir, V.; Demirel, N.C.; Taşdelen, B. A genetic algorithm approach for minimizing total tardiness in parallel machine scheduling problems. In Proceedings of the World Congress on Engineering, London, UK, 6–8 July 2011; Volume 2, pp. 6–8. Dell’Amico, M.; Iori, M.; Martello, S.; Monaci, M. Heuristic and exact algorithms for the identical parallel machine scheduling problem. INFORMS J. Comput. 2008, 20, 333–344. [CrossRef] Fleszar, K.; Hindi, K.S. Algorithms for the unrelated parallel machine scheduling problem with a resource constraint. Eur. J. Oper. Res. 2018, 271, 839–848. [CrossRef] Vallada, E.; Villa, F.; Fanjul-Peyro, L. Enriched metaheuristics for the resource constrained unrelated parallel machine scheduling problem. Comput. Oper. Res. 2019, 111, 415–424. [CrossRef] Sustainability 2023, 15, 9252 30. 31. 32. 33. 34. 35. 36. 37. 38. 18 of 18 Abreu, L.R.D.; Prata, B.D.A. A genetic algorithm with neighborhood search procedures for unrelated parallel machine scheduling problem with sequence-dependent setup times. J. Model. Manag. 2020, 15, 809–828. [CrossRef] Jouhari, H.; Lei, D.; AA Al-qaness, M.; Abd Elaziz, M.; Ewees, A.A.; Farouk, O. Sine-cosine algorithm to enhance simulated annealing for unrelated parallel machine scheduling with setup times. Mathematics 2019, 7, 1120. [CrossRef] Yepes-Borrero, J.C.; Villa, F.; Perea, F.; Caballero-Villalobos, J.P. GRASP algorithm for the unrelated parallel machine scheduling problem with setup times and additional resources. Expert Syst. Appl. 2020, 141, 112959. [CrossRef] Fanjul-Peyro, L. Models and an exact method for the unrelated parallel machine scheduling problem with setups and resources. Expert Syst. Appl. X 2020, 5, 100022. [CrossRef] Alharkan, I.; Saleh, M.; Ghaleb, M.A.; Kaid, H.; Farhan, A.; Almarfadi, A. Tabu search and particle swarm optimization algorithms for two identical parallel machines scheduling problem with a single server. J. King Saud Univ. Eng. Sci. 2020, 32, 330–338. [CrossRef] Sarıçiçek, İ.; Çelik, C. Two meta-heuristics for parallel machine scheduling with job splitting to minimize total tardiness. Appl. Math. Model. 2011, 35, 4117–4126. [CrossRef] Eroğlu, D.Y.; Özmutlu, H.C.; Köksal, S.A. A genetic algorithm for the unrelated parallel machine scheduling problem with job splitting and sequence-dependent setup times-loom scheduling. Text. Appar. 2014, 24, 66–73. Oktafiani, A.; Ardiansyah, M.N. Scheduling Splitable Jobs on Identical Parallel Machines to Minimize Makespan using Mixed Integer Linear Programming. Int. J. Innov. Enterp. Syst. 2023, 7, 41–54. [CrossRef] Haupt, R.L.; Haupt, S.E. Practical Genetic Algorithms, 2nd ed.; John Wiley & Sons, Inc.: Hoboken, NJ, USA, 2004. Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.