# A Parallel Meta-Heuristic Approach to Reduce Vehicle Travel Time in Smart Cities

^{1}

^{2}

^{*}

## Abstract

**:**

## 1. Introduction

## 2. The Concern of Traffic Management in Smart Cities and Urban Environments

_{2}in urban environments. The system uses the gathered data to generate the necessary orders to traffic signs and panels that control the traffic circulation. In Kazmi et al. [10], a methodology is proposed that uses VITAL-OS, an IoT platform that enables collection, integration, and management of data streams coming from multifunctional IoT devices and data sources. The information gathered is analyzed to detect traffic noise events; if the noise level on a particular road is higher than a certain threshold, the required traffic signal junction is managed for traffic re-routing to alternative paths. In Kök et al. [11], a deep learning model is proposed for analyzing IoT smart city data. The model is based on Long Short Term Memory (LSTM) networks to predict future values of air quality. In Jabbarpour et al. [12], an IoT application called Intelligent Guardrails is shown. It uses vehicular networks to identify traffic situation of the roads, and incorporates electronic and mechanical techniques to increase the number of lanes of the congested side of a highway while decreasing the lanes on the non-congested side. In Singh et al. [13], a visual Big Data analytics framework for automatic detection of bikers who do not wear a helmet in city traffic is proposed. The paper discusses the issues involved in visual Big Data analytics for traffic control in a city on a surveillance data scope. In Pawłowicz et al. [14], an approach of a traffic management system is proposed. It includes 5G communication, RFID-based parking space monitoring, and cloud services for supervision and machine learning. In Rathore et al. [15], a system for a smart digital city that uses IoT devices for collecting city data and Big Data analytics for acquiring knowledge is proposed. A model is proposed to develop a system that can handle a large volume of city data and provide guidelines to the local authorities. The system implementation involves several stages, including data generation and gathering, aggregation, filtering, classification, preprocessing, computing, and decision making. The gathered data from smart components within the city is processed in real-time to achieve a smart service using Hadoop under Apache Spark. Data generated by smart homes, smart parking areas, weather systems, pollution monitoring sensors, and vehicle networks are used for analysis and testing. In the work of Behnke and Kirschstein [16], a study on the effect of path selection in emission-oriented urban vehicle routing is presented, which is composed of a heterogeneous road network with regard to speed and acceleration frequency. An algorithm to determine all means of emission minimization for pairs of origin and destination nodes given a specific vehicle is proposed and tested using the road network from the city of Berlin.

_{2}emissions in the routing of a fleet of capacitated vehicles in urban environments. A local search procedure, named the tabu search heuristic, is adapted to solve the problem. The research uses instances from a real road network dataset and 230 million speed observations. In Kramer et al. [20], a metaheuristic approach, called ILS-SOA-SP, is proposed to solve the PRP; this method integrates iterated local search (ILS) with a set partitioning (SP) procedure and a speed optimization algorithm (SOA). The proposed method has the benefit of performing combined route and speed optimization within several local search and integer programming components.

## 3. The Travelling Salesman Problem

_{1},…,v

_{n}} consists of a set of n vertices (nodes) and A = {(v

_{i}, v

_{j})/v

_{i}, v

_{j}∈ V, i ≠ j} is a set of edges with an associated non-negative cost (distance) matrix D = (d

_{ij}). The problem is symmetric if d

_{ij}= d

_{ji}for any pair of vertices (v

_{i}, v

_{j}) ∈ A, and it is said to be asymmetric (ATSP) otherwise.

_{i}in V, the TSP can be defined as obtaining the minimal result for the following calculation:

## 4. The TLBO Optimization Method

#### 4.1. Original TLBO Formulation

#### 4.1.1. Teacher Stage

_{best}). Then, teacher values are used to bring his disciples closer to him by following Equation (2), which also takes into account the mean values of the population. Thus, each individual will have its new (X

_{new}) solution.

_{m}). The factor T is a random integer value that can be valued at 1 or 2, and whose calculation is shown in Equation (3). After changing the values of each individual, the function is evaluated again (f(X

_{new}(i)). Only in the case that the evaluation offers a more optimal solution than the original one, the new values calculated for the individual i are taken.

#### 4.1.2. Learner Stage

_{new}from the original X(i) according to Equation (4). In case this proposal is more optimal than the original one, the new values calculated will replace the original ones for that individual.

#### 4.2. Discrete TLBO

#### 4.2.1. Representation of Individuals

_{0}, v

_{1}… v

_{7}), an individual could be represented as eight connected nodes that determine the next order of visit: v

_{7}→v

_{0}→v

_{1}→v

_{6}→v

_{4}→v

_{2}→v

_{5}→v

_{3}.

#### 4.2.2. DTLBO Teacher Stage

- Step 1:
- The number of times a place appears is counted. To store the places that appear more than once, the TempA vector is used. Each place is stored in the last position (higher index) that it occupies in the original unfeasible vector; in case a place does not appear or just appears once, the corresponding item remains empty (symbol -). In Figure 2, it can be observed that locations 3 and 5 appear in the last positions they occupied in the original unfeasible vector, that is, positions 5 and 6, respectively.
- Step 2:
- Search for the missing locations. Again, in Figure 2 it can be seen that places 1, 6, and 7 do not appear. The TempB vector is used to store these places. In this vector, the index of the place that does not appear is written in the associated item, leaving the remainder of the items empty.
- Step 3:
- A vector TempC is created to indicate the places that appear just once. In Figure 2, it can be observed that places 0, 2, and 4 appear in their corresponding positions within TempC.
- Step 4:
- Using the above mentioned vectors, a viable individual is constructed by adding to the empty items of TempA and TempC the places that do not appear in them and that are found in TempB.

Xnew(i) = X(i) ⊗ PartialTeacher(i)

Xnew(i)

**=**X(i) ⊗ Mean(i)

Xnew(i) = PartialTeacher(i) ⊗ Mean(i)

_{c}. The initial and final positions of the new individual are selected randomly and thus the new individual A

_{c}replaces the selected items by those of individual B. Logically, after this crossover is performed, the viability operation must be applied.

_{c}individual, initial and final positions are randomly selected; in the current example, these are positions 3 and 6. Once these positions are determined, the elements included in this sequence (items of positions 3, 4, 5, and 6) are inverted to create the mutated element A

_{cm}.

_{cm}(i) = ΘA

_{c}(i)

#### 4.2.3. DTLBO Learner Stage

_{new}(i) and then apply the mutation operator as described in the teacher stage.

## 5. Parallel TLBO Implementation on GPU

#### 5.1. Design of the Memory Organization

**Global memory**. This memory stores two main data blocks: an array that contains the required points for generating the individuals of the populations in each block; and an array that contains the whole set of pre-calculated distances between the different points. Global memory also stores the best individual of the whole population and its evaluation (global Teacher), which are globally calculated in each iteration to be used by every individual within the population. Much of the data stored in the global memory will be only read but never modified, and will be used to avoid computing the total distance travelled when evaluating each individual. Only the best evaluation (global Teacher) must be modified if required each iteration.

**Block memory**. This memory stores the data shared by a subpopulation. The memory is organized in a matrix; each row corresponds to an individual, and each column stores the index of an urban node. An extra column is in charge of storing the individual’s solution to avoid repeating the evaluation.

**Thread memory**. This consists of a private, local memory to each thread which is not shared with the remainder of individuals. The variables stored in this memory are used for the calculations needed at each stage of the DTLBO, and are updated during each of the iterations.

#### 5.2. Execution Flow

## 6. Experimentation

## 7. Conclusions

## Author Contributions

## Funding

## Institutional Review Board Statement

## Informed Consent Statement

## Data Availability Statement

## Conflicts of Interest

## References

- Benevolo, C.; Dameri, R.P.; D’Auria, B. Smart Mobility in Smart City. In Empowering Organizations, Lecture Notes in Information Systems and Organisation; Torre, T., Braccini, A., Spinelli, R., Eds.; Springer: Cham, Switzerland, 2016; Volume 11. [Google Scholar]
- Rizwan, P.; Suresh, K.; Babu, M.R. Real-Time Smart Traffic Management System for Smart Cities by using Internet of Things and Big Data. In Proceedings of the 2016 International Conference on Emerging Technological Trends (ICETT), New York, NY, USA, 1–6 August 2016. [Google Scholar]
- Nikitas, A.; Michalakopoulou, K.; Njoya, E.T.; Karampatzakis, D. Artificial Intelligence, Transport and the Smart City: Definitions and Dimensions of a New Mobility Era. Sustainability
**2020**, 12, 2789. [Google Scholar] [CrossRef] [Green Version] - Cruz, C.O.; Sarmento, J.M. ‘Mobility as a Service’ Platforms: A Critical Path towards Increasing the Sustainability of Transportation Systems. Sustainability
**2020**, 12, 6368. [Google Scholar] [CrossRef] - Karampatzakis, D.; Avramidis, G.; Kiratsa, P.; Tseklidis, I.; Oikonomidis, C. A Smart Cargo Bike for the Physical Internet enabled by RFID and LoRaWAN. In Proceedings of the 2019 Panhellenic Conference on Electronics & Telecommunications (PACET), University of Thessaly, Volos, Greece, 8–9 November 2019. [Google Scholar]
- Department for Transport. Transport Statistics Great Britain: 2019 Summary. Available online: https://assets.publishing.service.gov.uk/government/uploads/system/uploads/attachment_data/file/870647/tsgb-2019.pdf (accessed on 8 April 2020).
- American Public Transportation Association. Public Transportation Facts. Available online: https://www.apta.com/news-publications/public-transportation-facts (accessed on 8 April 2020).
- Fernández-Ares, A.; Mora, A.; Arenas, M.G.; García-Sanchez, P.; Romero, G.; Rivas, V.; Castillo, P.; Merelo, J. Studying real traffic and mobility scenarios for a Smart City using a new monitoring and tracking system. Futur. Gener. Comput. Syst.
**2017**, 76, 163–179. [Google Scholar] [CrossRef] - Sendra, S.; Garcia-Navas, J.L.; Romero-Diaz, P.; Lloret, J. Collaborative LoRa-Based Sensor Network for Pollution Monitoring in Smart Cities. In Proceedings of the 2019 Fourth International Conference on Fog and Mobile Edge Computing (FMEC), Rome, Italy, 10–13 June 2019. [Google Scholar]
- Kazmi, A.; Tragos, E.; Serrano, M. Underpinning IoT for road traffic noise management in smart cities. In Proceedings of the 2018 IEEE International Conference on Pervasive Computing and Communications Workshops (PerCom Workshops), Athens, Greece, 19–23 March 2018. [Google Scholar]
- Kök, İ.; Şimşek, M.U.; Özdemir, S. A deep learning model for air quality prediction in smart cities. In Proceedings of the 2017 IEEE International Conference on Big Data (Big Data), Boston, MA, USA, 11–14 December 2017. [Google Scholar]
- Jabbarpour, M.R.; Nabaei, A.; Zarrabi, H. Intelligent Guardrails: An IoT application for vehicle traffic congestion reduction in smart city. In Proceedings of the 2016 IEEE International Conference on Internet of Things (Ithings) and IEEE Green computing and communications (Greencom) and IEEE Cyber, Physical and Social Computing (cpscom) and IEEE Smart Data (smartdata), Chengdu, China, 15–18 December 2016. [Google Scholar]
- Singh, D.; Vishnu, C.; Mohan, C.K. Visual Big Data analytics for traffic monitoring in smart city. In Proceedings of the 2016 15th IEEE international conference on machine learning and applications (ICMLA), Anaheim, CA, USA, 18–20 December 2016. [Google Scholar]
- Pawłowicz, B.; Salach, M.; Trybus, B. Smart city traffic monitoring system based on 5G cellular network, RFID and machine learning. In Proceedings of the KKIO Software Engineering Conference, Pultusk, Poland, 27–28 September 2018; pp. 151–165. [Google Scholar]
- Rathore, M.M.; Paul, A.; Hong, W.-H.; Seo, H.; Awan, I.; Saeed, S. Exploiting IoT and big data analytics: Defining Smart Digital City using real-time urban data. Sustain. Cities Soc.
**2018**, 40, 600–610. [Google Scholar] [CrossRef] - Behnke, M.; Kirschstein, T. The impact of path selection on GHG emissions in city logistics. Transp. Res. Part E Logist. Transp. Rev.
**2017**, 106, 320–336. [Google Scholar] [CrossRef] - Ehmke, J.F.; Campbell, A.M.; Thomas, B.W. Data-driven approaches for emissions-minimized paths in urban areas. Comput. Oper. Res.
**2016**, 67, 34–47. [Google Scholar] [CrossRef] - Suzuki, Y.A. dual-objective metaheuristic approach to solve practical pollution routing problem. Int. J. Prod. Econ.
**2016**, 176, 143–153. [Google Scholar] [CrossRef] - Ehmke, J.F.; Campbell, A.M.; Thomas, B.W. Vehicle routing to minimize time-dependent emissions in urban areas. Eur. J. Oper. Res.
**2016**, 251, 478–494. [Google Scholar] [CrossRef] - Kramer, R.; Subramanian, A.; Vidal, T.; Cabral, L.D.A.F. A matheuristic approach for the Pollution-Routing Problem. Eur. J. Oper. Res.
**2015**, 243, 523–539. [Google Scholar] [CrossRef] [Green Version] - Rego, C.; Gamboa, D.; Glover, F.; Osterman, C. Traveling salesman problem heuristics: Leading methods, implementations and latest advances. Eur. J. Oper. Res.
**2011**, 211, 427–441. [Google Scholar] [CrossRef] - Ilie, S.V. Survey on distributed approaches to swarm intelligence for graph search problems. Ann. Univ. Craiova-Math. Comput. Sci. Ser.
**2014**, 41, 251–270. [Google Scholar] - Karaboga, D.; Gorkemli, B. Solving Traveling Salesman Problem by Using Combinatorial Artificial Bee Colony Algorithms. Int. J. Artif. Intell. Tools
**2019**, 28, 1950004. [Google Scholar] [CrossRef] - Jabir, E.; Panicker, V.V.; Sridharan, R. Design and development of a hybrid ant colony-variable neighbourhood search algorithm for a multi-depot green vehicle routing problem. Transp. Res. Part D Transp. Envi.
**2017**, 57, 422–457. [Google Scholar] [CrossRef] - Gan, R.; Guo, Q.; Chang, H.; Yi, Y. Improved ant colony optimization algorithm for the traveling salesman problems. J. Syst. Eng. Electron.
**2010**, 21, 329–333. [Google Scholar] [CrossRef] - Shokouhifar, M.; Sabet, S. PMACO: A pheromone-mutation based ant colony optimization for traveling salesman problem. In Proceedings of the 2012 International Symposium on Innovations in Intelligent Systems and Applications, Trabzon, Turkey, 2–4 July 2012. [Google Scholar]
- Bai, J.; Yang, G.; Chen, Y.-W.; Hu, L.-S.; Pan, C.-C. A model induced max-min ant colony optimization for asymmetric traveling salesman problem. Appl. Soft Comput.
**2013**, 13, 1365–1375. [Google Scholar] [CrossRef] - Gła̢bowski, M.; Musznicki, B.; Nowak, P.; Zwierzykowski, P. Shortest Path Problem Solving Based on Ant Colony Optimization Metaheuristic. Image Process. Commun.
**2012**, 17, 7–17. [Google Scholar] [CrossRef] [Green Version] - Mahi, M.; Baykan, Ö.K.; Kodaz, H. A new hybrid method based on Particle Swarm Optimization, Ant Colony Optimization and 3-Opt algorithms for Traveling Salesman Problem. Appl. Soft Comput.
**2015**, 30, 484–490. [Google Scholar] [CrossRef] - Rao, R.V.; Savsani, V.J.; Vakharia, D.P. Teaching–learning-based optimization: A novel method for constrained mechanical design optimization problems. Comput. Des.
**2011**, 43, 303–315. [Google Scholar] [CrossRef] - Rao, R.V.; Patel, V. An elitist teaching-learning-based optimization algorithm for solving complex constrained optimization problems. Int. J. Ind. Eng. Comput.
**2012**, 3, 535–560. [Google Scholar] [CrossRef] - Rao, R.V.; Patel, V. Comparative Performance of an elitist Teaching-Learning-Based Optimization algorithm for solving unconstrained optimization problems. Int. J. Ind. Eng. Comput.
**2013**, 4, 29–50. [Google Scholar] [CrossRef] - Ebraheem, M.; Jyothsna, T.R. Comparative performance evaluation of Teaching Learning Based Optimization against genetic algorithm on benchmark functions. In Proceedings of the 2015 Power, Communication and Information Technology Conference (PCITC), Bhubaneswar, India, 15–17 October 2015; pp. 327–331. [Google Scholar]
- Shah, S.R.; Takmare, S.B. A Review of Methodologies of TLBO Algorithm to Test the Performance of Benchmark Functions. Program. Device Circuits Syst.
**2017**, 9, 141–145. [Google Scholar] - Wu, L.; Zoua, F.; Chen, D. Discrete Teaching-Learning-Based Optimization Algorithm for Traveling Salesman Problems. In Proceedings of the MATEC Web of Conferences 128, 02022 EDP Sciences (2017), Zhuhai, China, 23–24 September 2017. [Google Scholar]
- Arnautovic, M.; Curic, M.; Dolamic, E.; Nosovic, N. Parallelization of the ant colony optimization for the shortest path problem using OpenMP and CUDA. In Proceedings of the 2013 36th International Convention on Information and Communication Technology, Electronics and Microelectronics (MIPRO), Opatija, Croatia, 20–24 May 2013. [Google Scholar]
- Universität Heidelberg. Institut für Informatik. TSPLIB. Available online: http://comopt.ifi.uni-heidelberg.de/software/TSPLIB95/ (accessed on 8 April 2020).

**Figure 7.**CPU and graphics processing unit (GPU) times (in ms) from Berlin130 with respect to different populations (64 and 128) and iterations (1000, 5000, and 10,000).

**Figure 8.**Speedup when comparing CPU and GPU times from Berlin130 with respect to different populations (64 and 128) and iterations (1000, 5000, and 10,000).

**Figure 9.**CPU and GPU times (in ms) for Att48 with respect to different populations (64 and 128) and iterations (1000, 5000, and 10,000).

**Figure 10.**Speedup when comparing CPU and GPU times for Att48 with respect to different populations (64 and 128) and iterations (1000, 5000, and 10,000).

**Figure 11.**CPU and GPU times for Eil76 (in ms) with respect to different populations (64 and 128) and iterations (1000, 5000, and 10,000).

**Figure 12.**Speedup when comparing CPU and GPU times for Eil76 with respect to different populations (64 and 128) and iterations (1000, 5000, and 10,000).

**Figure 13.**CPU and GPU times (in ms) for Ch130 with respect to different populations (64 and 128) and iterations (1000, 5000, and 10,000).

**Figure 14.**Speedup when comparing CPU and GPU times for Ch130 with respect to different populations (64 and 128) and iterations (1000, 5000, and 10,000).

Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |

© 2021 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 (http://creativecommons.org/licenses/by/4.0/).

## Share and Cite

**MDPI and ACS Style**

Rico-Garcia, H.; Sanchez-Romero, J.-L.; Jimeno-Morenilla, A.; Migallon-Gomis, H.
A Parallel Meta-Heuristic Approach to Reduce Vehicle Travel Time in Smart Cities. *Appl. Sci.* **2021**, *11*, 818.
https://doi.org/10.3390/app11020818

**AMA Style**

Rico-Garcia H, Sanchez-Romero J-L, Jimeno-Morenilla A, Migallon-Gomis H.
A Parallel Meta-Heuristic Approach to Reduce Vehicle Travel Time in Smart Cities. *Applied Sciences*. 2021; 11(2):818.
https://doi.org/10.3390/app11020818

**Chicago/Turabian Style**

Rico-Garcia, Hector, Jose-Luis Sanchez-Romero, Antonio Jimeno-Morenilla, and Hector Migallon-Gomis.
2021. "A Parallel Meta-Heuristic Approach to Reduce Vehicle Travel Time in Smart Cities" *Applied Sciences* 11, no. 2: 818.
https://doi.org/10.3390/app11020818