An intelligent iterated local search algorithm for software modularization problem | Research Square window.SnipcartSettings = { analytics: { enabled: false } }; (function() { var accessVector = localStorage.getItem('access_vector') || ''; window.dataLayer = window.dataLayer || []; if (accessVector) { window.dataLayer.push({ user: { profile: { profileInfo: { snid: accessVector } } } }); } })(); (function(w,d,s,l,i){w[l]=w[l]||[];w[l].push({'gtm.start':new Date().getTime(),event:'gtm.js'});var f=d.getElementsByTagName(s)[0],j=d.createElement(s),dl=l!='dataLayer'?'&l='+l:'';j.async=true;j.src='https://www.googletagmanager.com/gtm.js?id='+i+dl;f.parentNode.insertBefore(j,f);})(window,document,'script','dataLayer','GTM-K279D39R'); Browse Preprints In Review Journals COVID-19 Preprints AJE Video Bytes Research Tools Research Promotion AJE Professional Editing AJE Rubriq About Preprint Platform In Review Editorial Policies Our Team Advisory Board Help Center Sign In Submit a Preprint Cite Share Download PDF Research Article An intelligent iterated local search algorithm for software modularization problem Mahjoubeh Tajgardan This is a preprint; it has not been peer reviewed by a journal. https://doi.org/ 10.21203/rs.3.rs-7736073/v1 This work is licensed under a CC BY 4.0 License Status: Under Review Version 1 posted 9 You are reading this latest preprint version Abstract In the software maintenance process, finding modules in which artifacts have minimum coupling and maximum cohesion is one of the main concerns of software engineers. Modularization algorithms extract modules from source code for understanding software systems. Meta-heuristics such as evolutionary algorithms (EAs) have been employed to solve the software modularization problem due to its NP-hardness. EAs achieve a near-optimal solution, but they are stochastic and require considerable time and space, making them unsuitable for large-scale software systems. Iterated Local Search (ILS) is a well-known meta-heuristic that combines diversification and intensification methods within an iterative framework. It is a simple, modular, and robust approach with three main components: perturbation, local search, and acceptance criterion. When designing an ILS, an extensive experiment should be performed to find the best choices for its components. This paper presents an ILS based on a Hyper-Heuristic Approach named ILSHHA for software modularization that solves this ILS problem and converges to a high-quality solution in less time than stochastic methods by intelligently searching the space. To this end, at each iteration, ILS is automatically designed using a reinforcement learning-based hyper-heuristic approach. The experimental results on eleven small and medium-scale applications and ten folders of Mozilla Firefox as a large-scale software system and comparison with 21 state-of-the-art modularization methods demonstrate that the suggested algorithm is scalable and competitive with other existing methods in terms of modularization quality and running time. Software maintenance Modularization algorithms Iterated local search Hyper-heuristics Reinforcement learning Full Text Additional Declarations No competing interests reported. Cite Share Download PDF Status: Under Review Version 1 posted Editorial decision: Revision requested 04 Oct, 2025 Reviews received at journal 04 Oct, 2025 Reviewers agreed at journal 04 Oct, 2025 Reviews received at journal 04 Oct, 2025 Reviewers agreed at journal 04 Oct, 2025 Reviewers invited by journal 29 Sep, 2025 Editor assigned by journal 29 Sep, 2025 Submission checks completed at journal 29 Sep, 2025 First submitted to journal 28 Sep, 2025 You are reading this latest preprint version Research Square lets you share your work early, gain feedback from the community, and start making changes to your manuscript prior to peer review in a journal. As a division of Research Square Company, we’re committed to making research communication faster, fairer, and more useful. We do this by developing innovative software and high quality services for the global research community. Our growing team is made up of researchers and industry professionals working together to solve the most critical problems facing scientific publishing. Also discoverable on Platform About Our Team In Review Editorial Policies Advisory Board Help Center Resources Author Services Accessibility API Access RSS feed Manage Cookie Preferences © Research Square 2026 | ISSN 2693-5015 (online) Privacy Policy Terms of Service Do Not Sell My Personal Information {"props":{"pageProps":{"initialData":{"identity":"rs-7736073","acceptedTermsAndConditions":true,"allowDirectSubmit":false,"archivedVersions":[],"articleType":"Research Article","associatedPublications":[],"authors":[{"id":524735564,"identity":"255cec0d-0727-4663-aed9-a3edc12870db","order_by":0,"name":"Mahjoubeh Tajgardan","email":"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAZAAAAAyAQMAAABI0h/eAAAABlBMVEX///8AAABVwtN+AAAACXBIWXMAAA7EAAAOxAGVKw4bAAABDUlEQVRIie2RsUrEQBCGZ1nYas21uxDwCYQRYb0D0YcRrIJ3pXABY5MqnLWP4RvssZA0Oa4NeIUiXJUilQQ5D7N4WIgbLQX3K6aYmY9/YAA8nr+KsEUDebSV7ZrcvU8/FYr61wp8KExY5UcOksG8Gb6ejoNikU+beDUOBiVCG0N4nHyvKE2pkLPz0V15eVHpfD1KoUSS5cBDR2KngJAZRdSRqjQzyEiGsJcAF47DbEors2vEZa0metsplCN561eYEK1BrCIF87RTGEfam2KoGsqkQFnVR2IxWyPjbGLCXLiV4ub5QWymGCyjw+bqZYX7t+b+qY5PzlyKfQuV6Zem3r3XCWk2vXOPx+P577wDScRWy5pT+5EAAAAASUVORK5CYII=","orcid":"","institution":"University of Tabriz","correspondingAuthor":true,"prefix":"","firstName":"Mahjoubeh","middleName":"","lastName":"Tajgardan","suffix":""}],"badges":[],"createdAt":"2025-09-28 18:38:21","currentVersionCode":1,"declarations":"","doi":"10.21203/rs.3.rs-7736073/v1","doiUrl":"https://doi.org/10.21203/rs.3.rs-7736073/v1","draftVersion":[],"editorialEvents":[],"editorialNote":"","failedWorkflow":false,"files":[{"id":93192146,"identity":"e7750f86-7028-4e8e-87d9-50304ef65cc9","added_by":"auto","created_at":"2025-10-10 04:35:22","extension":"pdf","order_by":0,"title":"","display":"","copyAsset":false,"role":"acdc-reference","size":1845286,"visible":true,"origin":"","legend":"","description":"","filename":"softwarepaper.pdf","url":"https://assets-eu.researchsquare.com/files/rs-7736073/v1/b18a0307f7a7b842e7ec7dfe.pdf"},{"id":93192147,"identity":"afd4c696-9ecc-44dd-9d96-f0f3ed362052","added_by":"auto","created_at":"2025-10-10 04:35:22","extension":"json","order_by":1,"title":"","display":"","copyAsset":false,"role":"acdc-reference","size":3548,"visible":true,"origin":"","legend":"","description":"","filename":"b69e82f89d7a4cc9b36e9151e4109d0e.json","url":"https://assets-eu.researchsquare.com/files/rs-7736073/v1/50f25d9ad9076a6e684221e7.json"},{"id":93192496,"identity":"b49163ee-f590-45d4-9929-a1a6d2f808e8","added_by":"auto","created_at":"2025-10-10 04:43:24","extension":"pdf","order_by":1,"title":"","display":"","copyAsset":false,"role":"manuscript-pdf","size":1122690,"visible":true,"origin":"","legend":"","description":"","filename":"softwarepaper.pdf","url":"https://assets-eu.researchsquare.com/files/rs-7736073/v1_covered_343e5070-7ff1-4582-afc9-f9554edccf5c.pdf"}],"financialInterests":"No competing interests reported.","formattedTitle":"An intelligent iterated local search algorithm for software modularization problem","fulltext":[],"fulltextSource":"","fullText":"","funders":[],"hasAdminPriorityOnWorkflow":false,"hasManuscriptDocX":false,"hasOptedInToPreprint":true,"hasPassedJournalQc":"","hasAnyPriority":true,"hideJournal":false,"highlight":"","institution":"","isAcceptedByJournal":true,"isAuthorSuppliedPdf":true,"isDeskRejected":"","isHiddenFromSearch":false,"isInQc":false,"isInWorkflow":false,"isPdf":true,"isPdfUpToDate":true,"isWithdrawnOrRetracted":false,"journal":{"display":true,"email":"
[email protected]","identity":"iran-journal-of-computer-science","isNatureJournal":false,"hasQc":true,"allowDirectSubmit":false,"externalIdentity":"ircs","sideBox":"Learn more about [Iran Journal of Computer Science](https://link.springer.com/journal/42044)","snPcode":"42044","submissionUrl":"https://submission.nature.com/new-submission/42044/3","title":"Iran Journal of Computer Science","twitterHandle":"","acdcEnabled":true,"dfaEnabled":true,"editorialSystem":"em","reportingPortfolio":"Springer Hybrid","inReviewEnabled":true,"inReviewRevisionsEnabled":false},"keywords":"Software maintenance, Modularization algorithms, Iterated local search, Hyper-heuristics, Reinforcement learning","lastPublishedDoi":"10.21203/rs.3.rs-7736073/v1","lastPublishedDoiUrl":"https://doi.org/10.21203/rs.3.rs-7736073/v1","license":{"name":"CC BY 4.0","url":"https://creativecommons.org/licenses/by/4.0/"},"manuscriptAbstract":"In the software maintenance process, finding modules in which artifacts have minimum coupling and maximum cohesion is one of the main concerns of software engineers. Modularization algorithms extract modules from source code for understanding software systems. Meta-heuristics such as evolutionary algorithms (EAs) have been employed to solve the software modularization problem due to its NP-hardness. EAs achieve a near-optimal solution, but they are stochastic and require considerable time and space, making them unsuitable for large-scale software systems. Iterated Local Search (ILS) is a well-known meta-heuristic that combines diversification and intensification methods within an iterative framework. It is a simple, modular, and robust approach with three main components: perturbation, local search, and acceptance criterion. When designing an ILS, an extensive experiment should be performed to find the best choices for its components. This paper presents an ILS based on a Hyper-Heuristic Approach named ILSHHA for software modularization that solves this ILS problem and converges to a high-quality solution in less time than stochastic methods by intelligently searching the space. To this end, at each iteration, ILS is automatically designed using a reinforcement learning-based hyper-heuristic approach. The experimental results on eleven small and medium-scale applications and ten folders of Mozilla Firefox as a large-scale software system and comparison with 21 state-of-the-art modularization methods demonstrate that the suggested algorithm is scalable and competitive with other existing methods in terms of modularization quality and running time.","manuscriptTitle":"An intelligent iterated local search algorithm for software modularization problem","msid":"","msnumber":"","nonDraftVersions":[{"code":1,"date":"2025-10-10 04:35:17","doi":"10.21203/rs.3.rs-7736073/v1","editorialEvents":[{"type":"communityComments","content":0},{"type":"decision","content":"Revision requested","date":"2025-10-04T18:48:20+00:00","index":"","fulltext":""},{"type":"editorInvitedReview","content":"","date":"2025-10-04T18:47:49+00:00","index":"hide","fulltext":""},{"type":"reviewerAgreed","content":"39378895767080049054959145582958852240","date":"2025-10-04T18:45:37+00:00","index":"hide","fulltext":""},{"type":"editorInvitedReview","content":"","date":"2025-10-04T18:44:51+00:00","index":"hide","fulltext":""},{"type":"reviewerAgreed","content":"276496173000491693946281321811556466351","date":"2025-10-04T18:42:24+00:00","index":"hide","fulltext":""},{"type":"reviewersInvited","content":"","date":"2025-09-29T10:49:02+00:00","index":"","fulltext":""},{"type":"editorAssigned","content":"","date":"2025-09-29T10:30:10+00:00","index":"","fulltext":""},{"type":"checksComplete","content":"","date":"2025-09-29T09:36:28+00:00","index":"","fulltext":""},{"type":"submitted","content":"Iran Journal of Computer Science","date":"2025-09-28T18:33:12+00:00","index":"","fulltext":""}],"status":"published","journal":{"display":true,"email":"
[email protected]","identity":"iran-journal-of-computer-science","isNatureJournal":false,"hasQc":true,"allowDirectSubmit":false,"externalIdentity":"ircs","sideBox":"Learn more about [Iran Journal of Computer Science](https://link.springer.com/journal/42044)","snPcode":"42044","submissionUrl":"https://submission.nature.com/new-submission/42044/3","title":"Iran Journal of Computer Science","twitterHandle":"","acdcEnabled":true,"dfaEnabled":true,"editorialSystem":"em","reportingPortfolio":"Springer Hybrid","inReviewEnabled":true,"inReviewRevisionsEnabled":false}}],"origin":"","ownerIdentity":"6fd2ffbe-0072-4bba-b984-e00245cd2ae3","owner":[],"postedDate":"October 10th, 2025","published":true,"recentEditorialEvents":[],"rejectedJournal":[],"revision":"","amendment":"","status":"under-review","subjectAreas":[],"tags":[],"updatedAt":"2025-10-27T13:18:17+00:00","versionOfRecord":[],"versionCreatedAt":"2025-10-10 04:35:17","video":"","vorDoi":"","vorDoiUrl":"","workflowStages":[]},"version":"v1","identity":"rs-7736073","journalConfig":"researchsquare"},"__N_SSP":true},"page":"/article/[identity]/[[...version]]","query":{"redirect":"/article/rs-7736073","identity":"rs-7736073","version":["v1"]},"buildId":"8U1c8b4HqxoKbykW_rLl7","isFallback":false,"isExperimentalCompile":false,"dynamicIds":[84888],"gssp":true,"scriptLoader":[]}
Text is read by the "Ask this paper" AI Q&A widget below.
Extraction quality varies by source — PMC NXML preserves structure
cleanly, OA-HTML may include some navigation residue, and OA-PDF can
have broken hyphenation. The publisher copy
(via DOI)
is the canonical version.