Search-Based Parallel Refactoring Using Population-Based Direct Approaches

dc.authorid KILIC, HUREVREN/0000-0003-2647-8451
dc.authorwosid Kilic, Hurevren/V-4236-2019
dc.contributor.author Kilic, Hurevren
dc.contributor.author Koc, Ekin
dc.contributor.author Cereci, Ibrahim
dc.contributor.other Computer Engineering
dc.date.accessioned 2024-10-06T10:57:00Z
dc.date.available 2024-10-06T10:57:00Z
dc.date.issued 2011
dc.department Atılım University en_US
dc.department-temp [Kilic, Hurevren] Gediz Univ, Dept Comp Engn, Izmir, Turkey; [Koc, Ekin; Cereci, Ibrahim] Atilim Univ, Dept Comp Engn, Incek, Ankara, Turkey en_US
dc.description KILIC, HUREVREN/0000-0003-2647-8451 en_US
dc.description.abstract Automated software refactoring is known to be one of the "hard" combinatorial optimization problems of the search-based software engineering field. The difficulty is mainly due to candidate solution representation, objective function description and necessity of functional behavior preservation of software. The problem is formulated as a combinatorial optimization problem whose objective function is characterized by an aggregate of object-oriented metrics or pareto-front solution description. In our recent empirical study, we have reported the results of a comparison among alternative search algorithms applied for the same problem: pure random, steepest descent, multiple first descent, simulated annealing, multiple steepest descent and artificial bee colony searches. The main goal of the study was to investigate potential of alternative multiple and population-based search techniques. The results showed that multiple steepest descent and artificial bee colony algorithms were most suitable two approaches for an efficient solution of the problem. An important observation was either with depth-oriented multiple steepest descent or breadth-oriented population-based artficial bee colony searches, better results could be obtained through higher number of executions supported by a lightweight solution representation. On the other hand different from multiple steepest descent search, population-based, scalable and being suitable for parallel execution characteristics of artificial bee colony search made the population-based choices to be the topic of this empirical study. I In this study, we report the search-based parallel refactoring results of an empirical comparative study among three population-based search techniques namely, artificial bee colony search, local beam search and stochastic beam search and a non-populated technique multiple steepest descent as the baseline. For our purpose, we used parallel features of our prototype automated refactoring tool A-CMA written in Java language. A-CMA accepts bytecode compiled Java codes as its input. It supports 20 different refactoring actions that realize searches on design landscape defined by an adhoc quality model being an aggregation of 24 object-oriented software metrics. We experimented 6 input programs written in Java where 5 of them being open source codes and one student project code. The empirical results showed that for almost all of the considered input programs with different run parameter settings, local beam search is the most suitable population-based search technique for the efficient solution of the search-based parallel refactoring problem in terms of mean and maximum normalized quality gain. However, we observed that the computational time requirement for local beam search becomes rather high when the beam size exceeds 60. On the other hand, even though it is not able to identify high quality designs for less populated search setups, time-efficiency and scalability properties of artificial bee colony search makes it a good choice for population sizes >= 200. en_US
dc.description.woscitationindex Conference Proceedings Citation Index - Science
dc.identifier.citationcount 13
dc.identifier.endpage + en_US
dc.identifier.isbn 9783642237157
dc.identifier.isbn 9783642237164
dc.identifier.issn 0302-9743
dc.identifier.issn 1611-3349
dc.identifier.scopusquality Q3
dc.identifier.startpage 271 en_US
dc.identifier.uri https://hdl.handle.net/20.500.14411/8648
dc.identifier.volume 6956 en_US
dc.identifier.wos WOS:000306979300026
dc.institutionauthor Kılıç, Hürevren
dc.institutionauthor Cereci, İbrahim
dc.language.iso en en_US
dc.publisher Springer-verlag Berlin en_US
dc.relation.ispartof 3rd International Symposium on Search-Based Software Engineering, SSBSE 2011 -- SEP 10-12, 2011 -- Szeged, HUNGARY en_US
dc.relation.ispartofseries Lecture Notes in Computer Science
dc.relation.publicationcategory Konferans Öğesi - Uluslararası - Kurum Öğretim Elemanı en_US
dc.rights info:eu-repo/semantics/closedAccess en_US
dc.subject [No Keyword Available] en_US
dc.title Search-Based Parallel Refactoring Using Population-Based Direct Approaches en_US
dc.type Conference Object en_US
dc.wos.citedbyCount 13
dspace.entity.type Publication
relation.isAuthorOfPublication 27e7437e-ade6-4ff4-9395-851c0ee9f537
relation.isAuthorOfPublication 26c615ae-248b-4103-b8f9-2afcacddaff0
relation.isAuthorOfPublication.latestForDiscovery 27e7437e-ade6-4ff4-9395-851c0ee9f537
relation.isOrgUnitOfPublication e0809e2c-77a7-4f04-9cb0-4bccec9395fa
relation.isOrgUnitOfPublication.latestForDiscovery e0809e2c-77a7-4f04-9cb0-4bccec9395fa

Files

Collections