Detecting Dynamic Communities in Vehicle Movements Using Ant Colony Optimization
Abstract
:1. Introduction
- (1)
- We propose a new pheromone initialization strategy to upgrade an ant-colony-optimization-based spatial scan statistic (ACOScan) [15] to identify dynamic communities in vehicle movements. The proposed method can not only balance both partition quality and temporal partition coherence at each snapshot, but also identify irregular-shaped communities.
- (2)
- We construct a significance test to evaluate the statistical significance of the identified dynamic communities. Therefore, some weakly interacting or spurious communities can be eliminated.
- (3)
- The proposed method can be regarded as a spatial extension of evolutionary clustering. Compared with existing spatial community detection methods (e.g., ACOScan), the proposed method is useful for understanding spatiotemporal interactions in a city.
2. Methods
2.1. Spatial Scan Statistic for Spatially Embedded Graphs
2.2. Evolutionary Ant Colony Optimization Method
- (1)
- For each edge in community identified at the initial snapshot, we added an additional pheromone value at the current snapshot, where is the likelihood ratio value of at the initial snapshot, and is the sum of the likelihood ratio values of all communities at the initial snapshot.
- (2)
- When we determined whether two edges and should be combined at the current snapshot, a connectivity indicator was defined. If and were in the same community at the initial snapshot, ; otherwise, .
Algorithm 1: EACOScan (Graphs, α, β, M, parameters of ACO) |
StaticCommunities= Empty(); InitialCommunities = ACOScan(Graphs.Get(1), β);//Identify communities at the initial snapshot StaticCommunities.Add(InitialCommunities); InitialCommunities = FindSignificantCommunities(PreviousCommunities, α, M);//Evaluate the significance of communities for i = 1:t do Communities= ACO (InitialCommunities, Graphs.Get(i));//Identify communities at current snapshot Communities = FindSignificantCommunities(Communities, α, M); InitialCommunities = Communities; StaticCommunities.Add(Communities); end for DynamicCommunities = Match(StaticCommunities);//Identify the evolution process of communities |
2.3. Identification of Dynamic Communities
- (1)
- Continuation means that a community remains almost unchanged at the next time snapshot. If the similarity between two communities identified at continuous snapshots is greater than 0.9, then the evolution process is identified as continuation.
- (2)
- Splitting means that a community is split into multiple communities at the next time snapshot. If the sum of the similarity between multiple communities at and a community at is greater than 0.9, then the evolution process is identified as splitting.
- (3)
- Merging indicates that multiple communities merge into one community at the next time snapshot. If the sum of the similarity between a community at and multiple communities at is greater than 0.9, then the evolution process is identified as merging.
- (4)
- Growth indicates that the size of a community increases obviously at the next time snapshot. If the similarity between a community at t1 () and a community at () is greater than 0.75, and the size of is larger than that of , then the evolution process is identified as growth.
- (5)
- Contraction means that the size of a community decreases obviously at the next snapshot. If the similarity between and is greater than 0.75, and the size of is smaller than that of , then the evolution process is identified as contraction.
- (6)
- Birth occurs when a new community emerges without a predecessor. The unmatched communities at the next snapshot are identified as birth communities.
- (7)
- Death occurs when a community disappears without a successor. The unmatched communities at the previous snapshot are identified as death communities.
3. Experiments
3.1. Simulation Experiments
3.2. Case Study
3.2.1. Dynamic Communities during Morning Rush Hours
3.2.2. Dynamic Communities during Evening Rush Hours
4. Discussion
- (1)
- EACO can well consider the temporal partition coherence at each snapshot by using the newly built pheromone initialization method. The ACO-based community searching method used by EACO makes no assumptions about the shapes of communities. The path of an ant can be arbitrary; therefore, EACO is powerful for identifying communities of different sizes and shapes. The expectation-maximization method used by FacetNet and the genetic algorithms used by DYNMOGA actually belong to partitioning clustering methods. The Leiden algorithm used by RWLA is a hierarchical clustering method. It has been proven that partitioning clustering methods and hierarchical clustering methods usually tend to find spherical-shaped communities [42].
- (2)
- EACO can evaluate the statistical significance of communities. Therefore, some weakly interacting communities can be eliminated. In contrast, FacetNet, DYNMOGA, and RWLA can identify communities in a graph, even when there is not a natural community structure in that graph. For example, these two comparison methods all identified some weakly interacting communities in the suburbs of Beijing, where OD pairs were very sparse.
- (3)
- EACO is more robust to noise because it adds a spatial contiguity constraint to the optimization process. In Section 3.1, we show that FacetNet, DYNMOGA, and RWLA cannot accurately identify predefined communities from the datasets with noise. As shown in Section 3.2, FacetNet, DYNMOGA, and RWLA identified some spatially dispersed communities, which may be spurious patterns formed by random movements [21].
5. Conclusions
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Acknowledgments
Conflicts of Interest
References
- Li, Y.; Sun, Q.; Ji, X.; Xu, L.; Lu, C.; Zhao, Y. Defining the boundaries of urban built-up area based on taxi trajectories: A case study of beijing. J. Geovisu. Spat. Anal. 2020, 4, 8. [Google Scholar] [CrossRef]
- Zhu, D.; Wang, N.; Wu, L.; Liu, Y. Street as a big geo-data assembly and analysis unit in urban studies: A case study using beijing taxi data. Appl. Geogr. 2017, 86, 152–164. [Google Scholar] [CrossRef]
- Mucha, P.J.; Richardson, T.; Macon, K.; Porter, M.A.; Onnela, J.-P. Community structure in time-dependent, multiscale, and multiplex networks. Science 2010, 328, 876–878. [Google Scholar] [CrossRef] [PubMed]
- Jia, T.; Cai, C.; Li, X.; Luo, X.; Zhang, Y.; Yu, X. Dynamical community detection and spatiotemporal analysis in multilayer spatial interaction networks using trajectory data. Int. J. Geogr. Inf. Sci. 2022. [Google Scholar] [CrossRef]
- Lu, F.; Liu, K.; Duan, Y.; Cheng, S.; Du, F. Modeling the heterogeneous traffic correlations in urban road systems using traffic-enhanced community detection approach. Phys. A Stat. Mech. Appl. 2018, 501, 227–237. [Google Scholar] [CrossRef]
- Rossetti, G.; Cazabet, R. Community discovery in dynamic networks: A survey. ACM Comput. Surv. 2018, 51, 1–37. [Google Scholar] [CrossRef] [Green Version]
- Newman, M.E.J. Modularity and community structure in networks. Proc. Natl. Acad. Sci. USA 2006, 103, 8577–8582. [Google Scholar] [CrossRef] [Green Version]
- Blondel, V.D.; Guillaume, J.L.; Lambiotte, R.; Lefebvre, E. Fast unfolding of communities in large networks. J. Stat. Mech. Theory Exp. 2008, 155, e168. [Google Scholar] [CrossRef] [Green Version]
- Rosvall, M.; Bergstrom, C.T. An information-theoretic framework for resolving community structure in complex networks. Proc. Natl. Acad. Sci. USA 2007, 104, 7327–7331. [Google Scholar] [CrossRef] [Green Version]
- Rosvall, M.; Bergstrom, C.T. Maps of random walks on complex networks reveal community structure. Proc. Natl. Acad. Sci. USA 2008, 105, 1118–1123. [Google Scholar] [CrossRef] [Green Version]
- Bóta, A.; Krész, M.; Pluhár, A. Dynamic communities and their detection. Acta Cybern. 2011, 20, 35–52. [Google Scholar] [CrossRef]
- Palla, G.; Barabási, A.L.; Vicsek, T. Quantifying social group evolution. Nature 2007, 446, 664–667. [Google Scholar] [CrossRef] [Green Version]
- Chen, Z.; Wilson, K.A.; Jin, Y.; Hendrix, W.; Samatova, N.F. Detecting and tracking community dynamics in evolutionary networks. In Proceedings of the IEEE International Conference on Data Mining Workshops, Sydney, Australia, 13 December 2010. [Google Scholar]
- Falkowski, T.; Bartelheimer, J.; Spiliopoulou, M. Mining and visualizing the evolution of subgroups in social networks. In Proceedings of the IEEE/WIC/ACM International Conference on Web Intelligence, Hong Kong, China, 18–22 December 2006. [Google Scholar]
- Liu, Q.; Zhu, S.; Deng, M.; Liu, W.; Wu, Z. A Spatial Scan Statistic to Detect Spatial Communities of Vehicle Movements on Urban Road Networks. Geogr. Anal. 2022, 54, 124–148. [Google Scholar] [CrossRef]
- Bansal, S.; Bhowmick, S.; Paymal, P. Fast community detection for dynamic complex networks. Complex Netw. 2011, 116, 196–207. [Google Scholar]
- Agarwal, M.K.; Ramamritham, K.; Bhide, M. Real time discovery of dense clusters in highly dynamic graphs: Identifying real world events in highly dynamic environments. arXiv 2012, arXiv:1207.0138. [Google Scholar] [CrossRef]
- Chakrabarti, D.; Kumar, R.; Tomkins, A. Evolutionary clustering. In Proceedings of the 12th ACM SIGKDD International Conference on Knowledge Discovery and Data Mining, Philadelphia, PA, USA, 20–23 August 2006. [Google Scholar]
- Lin, Y.R.; Chi, Y.; Zhu, S.; Sundaram, H.; Tseng, B.L. Analyzing communities and their evolutions in dynamic social networks. ACM Trans. Knowl. Discov. Data 2009, 3, 1–31. [Google Scholar] [CrossRef]
- Folino, F.; Pizzuti, C. An evolutionary multiobjective approach for community discovery in dynamic networks. IEEE Trans. Knowl. Data Eng. 2014, 26, 1838–1852. [Google Scholar] [CrossRef]
- Guo, D.; Jin, H.; Gao, P.; Zhu, X. Detecting spatial community structure in movements. Int. J. Geogr. Inf. Sci. 2018, 32, 1326–1347. [Google Scholar] [CrossRef]
- Wang, T.C.; Phoa, F.K.H. A scanning method for detecting clustering pattern of both attribute and structure in social networks. Phys. A Stat. Mech. Its Appl. 2016, 445, 295–309. [Google Scholar] [CrossRef]
- Aynaud, T.; Guillaume, J.L. Multi-step community detection and hierarchical time segmentation in evolving networks. In Proceedings of the 5th Social Network Mining and Analysis Workshop, SNA-KDD workshop, San Diego, CA, USA, 21 August 2011. [Google Scholar]
- Gauvin, L.; Panisson, A.; Cattuto, C. Detecting the community structure and activity patterns of temporal networks: A non-negative tensor factorization approach. PLoS ONE 2014, 9, e86028. [Google Scholar] [CrossRef] [Green Version]
- Ghasemian, A.; Zhang, P.; Clauset, A.; Moore, C.; Peel, L. Detectability thresholds and optimal algorithms for community structure in dynamic networks. Phys. Rev. X 2016, 6, 031005. [Google Scholar] [CrossRef]
- Viard, T.; Latapy, M.; Magnien, C. Computing maximal cliques in link streams. Theor. Comput. Sci. 2016, 609, 245–252. [Google Scholar] [CrossRef]
- White, C.E.; Bernstein, D.; Kornhauser, A.L. Some map matching algorithms for personal navigation assistants. Transp. Res. Part C Emerg. Technol. 2000, 8, 91–108. [Google Scholar] [CrossRef]
- Chung, F.; Lu, L. Connected components in random graphs with given expected degree sequences. Ann. Comb. 2002, 6, 125–145. [Google Scholar] [CrossRef]
- Wang, B.; Phillips, J.M.; Schreiber, R.; Wilkinson, D.; Mishra, N.; Tarjan, R. Spatial scan statistics for graph clustering. In Proceedings of the 2008 SIAM International Conference on Data Mining, Atlanta, GA, USA, 24–26 April 2008; pp. 727–738. [Google Scholar]
- Benjamini, Y.; Yekutieli, D. The control of the false discovery rate in multiple testing under dependency. Ann. Stat. 2001, 29, 1165–1188. [Google Scholar] [CrossRef]
- Dorigo, M.; Stützle, V. Ant Colony Optimization; MIT Press: Cambridge, MA, USA, 2004. [Google Scholar]
- Dorigo, M.; Birattari, M.; Stutzle, T. Ant colony optimization. IEEE Comput. Intell. Mag. 2006, 1, 28–39. [Google Scholar] [CrossRef]
- Zhou, X.; Liu, Y.; Zhang, J.; Liu, T.; Zhang, D. An ant colony based algorithm for overlapping community detection in complex networks. Phys. A Stat. Mech. Its Appl. 2015, 427, 289–301. [Google Scholar] [CrossRef]
- Lipowski, A.; Lipowska, D. Roulette-wheel selection via stochastic acceptance. Phys. A Stat. Mech. Its Appl. 2012, 391, 2193–2196. [Google Scholar] [CrossRef] [Green Version]
- Pei, T.; Wan, Y.; Jiang, Y.; Qu, C.; Zhou, C.; Qiao, Y. Detecting arbitrarily shaped clusters using ant colony optimization. Int. J. Geogr. Inf. Sci. 2011, 25, 1575–1595. [Google Scholar] [CrossRef]
- Chakraborty, T.; Dalmia, A.; Mukherjee, A.; Ganguly, N. Metrics for community analysis: A survey. ACM Comput. Surv. 2017, 50, 1–37. [Google Scholar] [CrossRef]
- Wu, Z.; Cao, J.; Zhu, G.; Yin, W.; Cuzzocrea, A.; Shi, J. Detecting overlapping communities in poly-relational networks. World Wide Web 2015, 18, 1373–1390. [Google Scholar] [CrossRef]
- Traag, V.A.; Waltman, L.; van Eck, N.J. From Louvain to Leiden: Guaranteeing well-connected communities. Sci. Rep. 2019, 9, 5233. [Google Scholar] [CrossRef]
- Ahas, R.; Mark, Ü. Location based services—New challenges for planning and public administration? Futures 2005, 37, 547–561. [Google Scholar] [CrossRef]
- Yao, X.; Gao, Y.; Zhu, D.; Manley, E.; Wang, J.; Liu, Y. Spatial origin-destination flow imputation using graph convolutional networks. IEEE Trans. Intell. Transp. Syst. 2021, 22, 7474–7484. [Google Scholar] [CrossRef]
- Liu, K.; Gao, S.; Lu, F. Identifying spatial interaction patterns of vehicle movements on urban road networks by topic modelling. Comput. Environ. Urban Syst. 2019, 74, 50–61. [Google Scholar] [CrossRef]
- Tan, P.N.; Steinbach, M.; Kumar, V. Introduction to Data Mining; Pearson Education India: New Delhi, India, 2016. [Google Scholar]
Notations | Meaning |
---|---|
V | The set of vertices |
E | The set of edges |
W | The set of weights |
G | A spatially embedded graph |
S | The strength sequence of a graph |
The strength of a vertex | |
A spatial community in G | |
The sum of strengths of Z | |
The set of vertices in Z | |
p | The probability of the weights of edges in Z |
q | The probability of the weights of edges outside Z |
The likelihood ratio statistic for a spatial community Z | |
The likelihood function under the alternative hypothesis | |
The likelihood function under the null hypothesis | |
The sum of weights in Z | |
The sum of weights in G | |
The expected sum of weights of Z under the null hypothesis | |
The expected sum of weights of graph G under the null hypothesis | |
The weight of an edge | |
The neighborhood of a vertex | |
G′ | A random graph |
The p-value of community Z | |
The number of random graphs | |
An indicator variable in the th simulation | |
The likelihood ratio value of calculated in the random graph | |
α | The significance level for identifying spatial communities |
β | The significance level for identifying candidate road segments |
The likelihood ratio value of at the initial snapshot | |
The sum of the likelihood ratio values of all communities at the initial snapshot | |
The initial pheromone of each edge | |
The pheromone of determined based on the weight of at the current snapshot | |
The balance coefficient | |
L | The maximum size of a spatial community |
The number of ants | |
Ne | The number of elite ants |
Nite | The maximum number of iterations |
Mpe | The pheromone evaporation coefficient |
The community identified at snapshot t |
Parameter | Name | Value |
---|---|---|
Number of ants | Nant | Number of candidate edges |
Number of elite ants | Ne | 20 |
Maximum number of iterations | Nite | 500 |
Pheromone evaporation coefficient | Mpe | 0.1 |
Significance level for identifying spatial communities | α | 0.05 |
Significance level for identifying candidate road segments | β | 0.1 |
Number of random graphs | Nrep | 99 |
Method | Snapshot | γ = 0.1 | γ = 0.2 | γ = 0.3 | γ = 0.4 | γ = 0.5 | γ = 0.6 | γ = 0.7 | γ = 0.8 | γ = 0.9 |
---|---|---|---|---|---|---|---|---|---|---|
FacetNet [19] | 1 | 0.52 | 0.58 | 0.60 | 0.63 | 0.65 | 0.66 | 0.69 | 0.71 | 0.73 |
2 | 0.50 | 0.55 | 0.57 | 0.61 | 0.63 | 0.64 | 0.67 | 0.69 | 0.71 | |
3 | 0.49 | 0.51 | 0.53 | 0.57 | 0.61 | 0.63 | 0.64 | 0.68 | 0.70 | |
EACO | 1 | 0.96 | 0.95 | 0.97 | 0.96 | 0.98 | 0.97 | 0.96 | 0.97 | 0.97 |
2 | 0.94 | 0.94 | 0.94 | 0.95 | 0.95 | 0.96 | 0.96 | 0.97 | 0.96 | |
3 | 0.95 | 0.95 | 0.96 | 0.96 | 0.96 | 0.97 | 0.97 | 0.98 | 0.98 |
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2022 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/).
Share and Cite
Liu, Q.; Zhu, S.; Chen, M.; Liu, W. Detecting Dynamic Communities in Vehicle Movements Using Ant Colony Optimization. Appl. Sci. 2022, 12, 7608. https://doi.org/10.3390/app12157608
Liu Q, Zhu S, Chen M, Liu W. Detecting Dynamic Communities in Vehicle Movements Using Ant Colony Optimization. Applied Sciences. 2022; 12(15):7608. https://doi.org/10.3390/app12157608
Chicago/Turabian StyleLiu, Qiliang, Sancheng Zhu, Meihua Chen, and Wenkai Liu. 2022. "Detecting Dynamic Communities in Vehicle Movements Using Ant Colony Optimization" Applied Sciences 12, no. 15: 7608. https://doi.org/10.3390/app12157608
APA StyleLiu, Q., Zhu, S., Chen, M., & Liu, W. (2022). Detecting Dynamic Communities in Vehicle Movements Using Ant Colony Optimization. Applied Sciences, 12(15), 7608. https://doi.org/10.3390/app12157608