2024 | |
[1] | "An N-Way Model Merging Approach Based on Artificial Bee Colony Algorithm", In e-Informatica Software Engineering Journal, vol. 18, no. 1, pp. 240109, 2024.
DOI: , 10.37190/e-Inf240109. Download article (PDF)Get article BibTeX file |
Authors
Tong Ye, Gongzhe Qiao
Abstract
Background: In N-way model merging, model matching plays an important role. However, the N-way model matching problem has been recognized as NP-hard.
Aim: To search the optimal or near-optimal matching solution efficiently, this paper proposes an N-way model matching algorithm based on the Artificial Bee Colony (ABC) algorithm.
Method: This algorithm combines global heuristic search and local search to deal with the complexity of N-way model matching. We evaluated the proposed N-way model merging approach through case studies and we evaluated the proposed ABCMatch algorithm by comparing it with Genetic Algorithm (GA) and Elephant Herding Optimization (EHO).
Results: The experimental results show that ABCMatch can obtain more accurate model matching solutions in a shorter time, and the average model matching accuracy of ABCMatch is 2.7725% higher than GA and 1.8804% higher than EHO.
Conclusion: Results demonstrate that our method provides an effective way for software engineers to merge UML models in collaborative modeling scenarios.
Keywords
Model driven development, Tools for software researchers or practitioners, Project management
References
1. T. Stahl, M. Völter, J. Bettin, A. Haase, and S. Helsen, “Model-driven software development – technology, engineering, management,” 2006.
2. M. Franzago, D.D. Ruscio, I. Malavolta, and H. Muccini, “Collaborative model-driven software engineering: a classification framework and a research map,” IEEE Transactions on Software Engineering, 2017, pp. 1–1.
3. J.E. Rumbaugh, I. Jacobson, and G. Booch, “The unified modeling language reference manual,” 1999.
4. M. Koegel and J. Helming, “EMFStore: a model repository for EMF models,” in Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering-Volume 2, 2010, pp. 307–308.
5. E. Stepper, “CDO model repository,” 2010.
6. J. Rubin and M. Chechik, “N-way model merging,” 2013, pp. 301–311.
7. F.S. Gharehchopogh, “Advances in tree seed algorithm: A comprehensive survey,” Archives of Computational Methods in Engineering, Vol. 29, 2022, pp. 3281–3304.
8. H. Mohammadzadeh and F.S. Gharehchopogh, “A multi-agent system based for solving high-dimensional optimization problems: A case study on email spam detection,” International Journal of Communication Systems, Vol. 34, No. 3, 2021, p. e4670.
9. F.S. Gharehchopogh, I. Maleki, and Z.A. Dizaji, “Chaotic vortex search algorithm: Metaheuristic algorithm for feature selection,” Evolutionary Intelligence, Vol. 15, No. 3, 2022, pp. 1777–1808.
10. T.S. Naseri and F.S. Gharehchopogh, “A feature selection based on the farmland fertility algorithm for improved intrusion detection systems,” Journal of Network and Systems Management, Vol. 30, No. 3, 2022, p. 40.
11. H. Mohammadzadeh and F.S. Gharehchopogh, “Feature selection with binary symbiotic organisms search algorithm for email spam detection,” International Journal of Information Technology & Decision Making, Vol. 20, No. 01, 2021, pp. 469–515.
12. F.S. Gharehchopogh, “Quantum-inspired metaheuristic algorithms: Comprehensive survey and classification,” Artificial Intelligence Review, 2022, pp. 1–65.
13. S. Ghafori and F.S. Gharehchopogh, “Advances in spotted hyena optimizer: A comprehensive survey,” Archives of computational methods in engineering, 2021, pp. 1–22.
14. D. Karaboga, “Artificial bee colony algorithm,” scholarpedia, Vol. 5, No. 3, 2010, p. 6915.
15. S. Katoch, S.S. Chauhan, and V. Kumar, “A review on genetic algorithm: past, present, and future,” Multimedia Tools and Applications, Vol. 80, 2021, pp. 8091–8126.
16. S. Mirjalili, S.M. Mirjalili, and A. Lewis, “Grey wolf optimizer,” Advances in engineering software, Vol. 69, 2014, pp. 46–61.
17. M.Y. Cheng and D. Prayogo, “Symbiotic organisms search: a new metaheuristic optimization algorithm,” Computers & Structures, Vol. 139, 2014, pp. 98–112.
18. S. Mirjalili and A. Lewis, “The whale optimization algorithm,” Advances in engineering software, Vol. 95, 2016, pp. 51–67.
19. H. Shayanfar and F.S. Gharehchopogh, “Farmland fertility: A new metaheuristic algorithm for solving continuous optimization problems,” Applied Soft Computing, Vol. 71, 2018, pp. 728–746.
20. G.G. Wang, S. Deb, and L.d.S. Coelho, “Elephant herding optimization,” in 2015 3rd international symposium on computational and business intelligence (ISCBI). IEEE, 2015, pp. 1–5.
21. J. Xue and B. Shen, “A novel swarm intelligence optimization approach: sparrow search algorithm,” Systems science & control engineering, Vol. 8, No. 1, 2020, pp. 22–34.
22. S. Kaur, L.K. Awasthi, A. Sangal, and G. Dhiman, “Tunicate swarm algorithm: A new bio-inspired based metaheuristic paradigm for global optimization,” Engineering Applications of Artificial Intelligence, Vol. 90, 2020, p. 103541.
23. F.A. Hashim, E.H. Houssein, K. Hussain, M.S. Mabrouk, and W. Al-Atabany, “Honey badger algorithm: New metaheuristic algorithm for solving optimization problems,” Mathematics and Computers in Simulation, Vol. 192, 2022, pp. 84–110.
24. M. Dehghani, Š. Hubálovskỳ, and P. Trojovskỳ, “Northern goshawk optimization: a new swarm-based algorithm for solving optimization problems,” IEEE Access, Vol. 9, 2021, pp. 162 059–162 080.
25. F.S. Gharehchopogh, M. Namazi, L. Ebrahimi, and B. Abdollahzadeh, “Advances in sparrow search algorithm: A comprehensive survey,” Archives of Computational Methods in Engineering, Vol. 30, No. 1, 2023, pp. 427–455.
26. Y. Huo, Y. Zhuang, J. Gu, S. Ni, and Y. Xue, “Discrete gbest-guided artificial bee colony algorithm for cloud service composition,” Applied Intelligence, Vol. 42, 2015, pp. 661–678.
27. W.K.G. Assunção, S.R. Vergilio, and R.E. Lopez-Herrejon, “Discovering software architectures with search-based merge of UML model variants,” in ICSR, 2017.
28. D. Reuling, M. Lochau, and U. Kelter, “From imprecise N-way model matching to precise N-way model merging.” The Journal of Object Technology, Vol. 18, No. 2, 2019.
29. M. Koegel, H. Naughton, J. Helming, and M. Herrmannsdoerfer, “Collaborative model merging,” 2010, pp. 27–34.
30. H.K. Dam, A. Reder, and A. Egyed, “Inconsistency resolution in merging versions of architectural models,” 2014, pp. 153–162.
31. P. Buneman, S. Davidson, and A. Kosky, “Theoretical aspects of schema merging,” in International Conference on Extending Database Technology: Advances in Database Technology, 1992.
32. R. Pottinger and P.A. Bernstein, “Merging models based on given correspondences,” 2003, pp. 862–873.
33. M. Sharbaf and B. Zamani, “Configurable three-way model merging,” Software: Practice and Experience, Vol. 50, No. 8, 2020.
34. C. Thao and E.V. Munson, “Using versioned trees, change detection and node identity for three-way XML merging,” Computer Science – Research and Development, Vol. 34, No. 1, 2019, pp. 3–16.
35. C. Debreceni, I. Rath, D. Varro, X. De Carlos, X. Mendialdua et al., “Automated model merge by design space exploration,” 2016, pp. 104–121.
36. F. Schwagerl, S. Uhrig, and B. Westfechtel, “Model-based tool support for consistent three-way merging of EMF models,” ACME, 2013, p. 2.
37. A. Schultheiß, P.M. Bittner, L. Grunske, T. Thüm, and T. Kehrer, “Scalable n-way model matching using multi-dimensional search trees,” in 2021 ACM/IEEE 24th International Conference on Model Driven Engineering Languages and Systems (MODELS), 2021, pp. 1–12.
38. M.S. Kasaei, M. Sharbaf, and B. Zamani, “Towards a formalism for specifying n-way model merging rules,” in 2022 27th International Computer Conference, Computer Society of Iran (CSICC), 2022, pp. 1–7.
39. M. Boubakir and A. Chaoui, “A pairwise approach for model merging,” in Modelling and Implementation of Complex Systems, S. Chikhi, A. Amine, A. Chaoui, M.K. Kholladi, and D.E. Saidouni, Eds. Cham: Springer International Publishing, 2016, pp. 327–340.
40. Y. Jiang, S. Wang, K. Fu, W. Zhang, and H. Zhao, “A collaborative conceptual modeling tool based on stigmergy mechanism,” 2016, pp. 11–18.
41. J. Martinez, T. Ziadi, T.F. Bissyande, J. Klein, and Y.L. Traon, “Automating the extraction of model-based software product lines from model variants,” 2015, pp. 396–406.
42. A. Lanusse, Y. Tanguy, H. Espinoza, C. Mraidha, S. Gerard et al., “Papyrus UML: an open source toolset for MDA,” in Proc. of the Fifth European Conference on Model-Driven Architecture Foundations and Applications (ECMDA-FA 2009). Citeseer, 2009, pp. 1–4.
43. F.S. Gharehchopogh, M.H. Nadimi-Shahraki, S. Barshandeh, B. Abdollahzadeh, and H. Zamani, “CQFFA: A Chaotic Quasi-Oppositional Farmland Fertility Algorithm for Solving Engineering Optimization Problems,” Journal of Bionic Engineering, Vol. 20, No. 1, 2023, pp. 158–183.
44. F.S. Gharehchopogh, “An improved tunicate swarm algorithm with best-random mutation strategy for global optimization problems,” Journal of Bionic Engineering, Vol. 19, No. 4, 2022, pp. 1177–1202.
45. B. Abdollahzadeh and F.S. Gharehchopogh, “A multi-objective optimization algorithm for feature selection problems,” Engineering with Computers, Vol. 38, No. Suppl 3, 2022, pp. 1845–1863.
46. M. Samadi Bonab, A. Ghaffari, F. Soleimanian Gharehchopogh, and P. Alemi, “A wrapper-based feature selection for improving performance of intrusion detection systems,” International Journal of Communication Systems, Vol. 33, No. 12, 2020, p. e4434.
47. Ş. Öztürk, R. Ahmad, and N. Akhtar, “Variants of Artificial Bee Colony algorithm and its applications in medical image processing,” Applied soft computing, Vol. 97, 2020, p. 106799.
48. U. Mansoor, M. Kessentini, P. Langer, M. Wimmer, S. Bechikh et al., “MOMM: Multi-objective model merging,” Journal of Systems and Software, Vol. 103, 2015, pp. 423–439.
49. A. Anwar, A. Benelallam, M. Nassar, and B. Coulette, “A graphical specification of model composition with triple graph grammars,” Vol. 7706, 2012, pp. 1–18.
50. A. Koshima and V. Englebert, “RuCORD: Rule-based composite operation recovering and detection to support cooperative edition of (meta)models,” 2015, pp. 1–7.
51. H. Chong, R. Zhang, and Z. Qin, “Composite-based conflict resolution in merging versions of UML models,” 2016, pp. 127–132.
52. J. Rubin and M. Chechik, “Combining related products into product lines,” 2012, pp. 285–300.
53. P. Jaccard, “The distribution of the flora in the alpine zone. 1,” New phytologist, Vol. 11, No. 2, 1912, pp. 37–50.
54. D. Karaboga and B. Gorkemli, “A combinatorial artificial bee colony algorithm for traveling salesman problem,” 2011, pp. 50–53.
55. “N Way Model Merging Tool,” https://github.com/YETONG1219/NWay, accessed 7 Nov 2023.
56. M. Dorigo, M. Birattari, and T. Stutzle, “Ant colony optimization,” IEEE computational intelligence magazine, Vol. 1, No. 4, 2006, pp. 28–39.
57. J. Kennedy and R. Eberhart, “Particle swarm optimization,” in Proceedings of ICNN’95-international conference on neural networks, Vol. 4. IEEE, 1995, pp. 1942–1948.
58. S. Karimkashi and A.A. Kishk, “Invasive weed optimization and its features in electromagnetics,” IEEE transactions on antennas and propagation, Vol. 58, No. 4, 2010, pp. 1269–1278.
59. X.S. Yang and X. He, “Firefly algorithm: recent advances and applications,” International journal of swarm intelligence, Vol. 1, No. 1, 2013, pp. 36–50.
60. B. Xing, W.J. Gao, B. Xing, and W.J. Gao, “Fruit fly optimization algorithm,” Innovative Computational Intelligence: A Rough Guide to 134 Clever Algorithms, 2014, pp. 167–170.
61. X.S. Yang, M. Karamanoglu, and X. He, “Flower pollination algorithm: a novel approach for multiobjective optimization,” Engineering optimization, Vol. 46, No. 9, 2014, pp. 1222–1237.
62. S. Mirjalili, “Moth-flame optimization algorithm: A novel nature-inspired heuristic paradigm,” Knowledge-based systems, Vol. 89, 2015, pp. 228–249.
63. A. Askarzadeh, “A novel metaheuristic method for solving constrained engineering optimization problems: crow search algorithm,” Computers & structures, Vol. 169, 2016, pp. 1–12.
64. S. Mirjalili, “Dragonfly algorithm: a new meta-heuristic optimization technique for solving single-objective, discrete, and multi-objective problems,” Neural computing and applications, Vol. 27, 2016, pp. 1053–1073.
65. S.Z. Mirjalili, S. Mirjalili, S. Saremi, H. Faris, and I. Aljarah, “Grasshopper optimization algorithm for multi-objective optimization problems,” Applied Intelligence, Vol. 48, 2018, pp. 805–820.
66. G. Dhiman and V. Kumar, “Multi-objective spotted hyena optimizer: a multi-objective optimization algorithm for engineering problems,” Knowledge-Based Systems, Vol. 150, 2018, pp. 175–197.
67. G. Dhiman and V. Kumar, “Emperor penguin optimizer: a bio-inspired algorithm for engineering problems,” Knowledge-Based Systems, Vol. 159, 2018, pp. 20–50.
68. S. Arora and S. Singh, “Butterfly optimization algorithm: a novel approach for global optimization,” Soft Computing, Vol. 23, 2019, pp. 715–734.
69. C. Wohlin, P. Runeson, M. Höst, M.C. Ohlsson, B. Regnell et al., “Experimentation in software engineering: An introduction,” 2000.