Parallelization of genetic algorithms for software architecture recovery

被引:0
|
作者
Varol, Taha [1 ]
Elyasi, Milad [1 ]
Aktas, T. Huzeyfe [1 ]
Ozener, O. Orsan [1 ]
Sozer, Hasan [1 ]
机构
[1] Ozyegin Univ, TR-34794 Istanbul, Turkiye
关键词
Software architecture recovery; Software module clustering; Software modularity; Genetic algorithms; Parallel algorithms; MODULARIZATION; SYSTEMS; DESIGN;
D O I
10.1007/s10515-024-00479-0
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Software Architecture Recovery (SAR) techniques analyze dependencies between software modules and automatically cluster them to achieve high modularity. Many of these approaches employ Genetic Algorithms (GAs) for clustering software modules. A major drawback of these algorithms is their lack of scalability. In this paper, we address this drawback by introducing generic software components that can encapsulate subroutines (operators) of a GA to execute them in parallel. We use these components to implement a novel hybrid GA for SAR that exploits parallelism to find better solutions faster. We compare the effectiveness of parallel algorithms with respect to the sequential counterparts that are previously proposed for SAR. We observe that parallelization enables a greater number of iterations to be performed in the search for high-quality solutions. The increased efficiency achieved through parallel processing allows for faster convergence towards optimal solutions by harnessing the power of multiple processing units in a coordinated manner. The amount of improvement in modularity is above 50%, which particularly increases in the context of large-scale systems. Our algorithm can scale to recover the architecture of a large system, Chromium, which has more than 18,500 modules and 750,000 dependencies among these modules.
引用
收藏
页数:24
相关论文
共 50 条
  • [31] An architecture for distributing the computation of software clustering algorithms
    Mitchell, B
    Traverso, M
    Mancoridis, S
    WORKING IEEE/IFIP CONFERENCE ON SOFTWARE ARCHITECTURE, PROCEEDINGS, 2001, : 181 - 190
  • [32] Software Project Rescheduling with Genetic Algorithms
    Ge, Yujia
    2009 INTERNATIONAL CONFERENCE ON ARTIFICIAL INTELLIGENCE AND COMPUTATIONAL INTELLIGENCE, VOL I, PROCEEDINGS, 2009, : 439 - 443
  • [33] Using genetic algorithms in software optimization
    Ivan, Ion
    Boja, Catalin
    Vochin, Marius
    Nitescu, Iulian
    Toma, Cristian
    Popa, Marius
    PROCEEDINGS OF THE 6TH WSEAS INTERNATIONAL CONFERENCE ON TELECOMMUNICATIONS AND INFORMATICS (TELE-INFO '07)/ 6TH WSEAS INTERNATIONAL CONFERENCE ON SIGNAL PROCESSING (SIP '07), 2007, : 36 - +
  • [34] Software Project Scheduling with Genetic Algorithms
    Lv Jianhong
    Yang Zhigang
    ISTM/2009: 8TH INTERNATIONAL SYMPOSIUM ON TEST AND MEASUREMENT, VOLS 1-6, 2009, : 3567 - 3570
  • [35] A New Approach to Parallelization of Serial Nested Loops Using Genetic Algorithms
    Saeed Parsa
    Shahriar Lotfi
    The Journal of Supercomputing, 2006, 36 : 83 - 94
  • [36] A Mapping Study of Software Architecture Recovery for Software Product Lines
    Sinkala, Zipani Tom
    Blom, Martin
    Herold, Sebastian
    ECSA 2018: PROCEEDINGS OF THE 12TH EUROPEAN CONFERENCE ON SOFTWARE ARCHITECTURE: COMPANION PROCEEDINGS, 2018,
  • [37] Parallelization of algorithms in set@l language of architecture-independent programming
    Levin, Ilya I.
    Dordopulo, Alexey I.
    Pisarenko, Ivan V.
    Melnikov, Andrey K.
    Communications in Computer and Information Science, 2020, 1263 CCIS : 31 - 45
  • [38] A Distributed Pool Architecture for Genetic Algorithms
    Roy, Gautam
    Lee, Hyunyoung
    Welch, Jennifer L.
    Zhao, Yuan
    Pandey, Vijitashwa
    Thurston, Deborah
    2009 IEEE CONGRESS ON EVOLUTIONARY COMPUTATION, VOLS 1-5, 2009, : 1177 - +
  • [39] A new approach to parallelization of serial nested loops using genetic algorithms
    Parsa, S
    Lotfi, S
    JOURNAL OF SUPERCOMPUTING, 2006, 36 (01): : 83 - 94
  • [40] Parallelization and sustainability of distributed genetic algorithms on many-core processors
    Sato, Yuji
    Sato, Mikiko
    INTERNATIONAL JOURNAL OF INTELLIGENT COMPUTING AND CYBERNETICS, 2014, 7 (01) : 2 - 23