Mixed-Integer Linear Programming Formulations for the Software Clustering Problem

被引:12
|
作者
Koehler, Viviane [1 ]
Fampa, Marcia [1 ]
Araujo, Olinto [2 ]
机构
[1] Univ Fed Rio de Janeiro, COPPE, BR-21945970 Rio De Janeiro, Brazil
[2] Univ Fed Santa Maria, CTISM, BR-97119900 Santa Maria, RS, Brazil
关键词
Mathematical programming formulation; Automatic clustering; Module dependency graph; MILP formulation; Software clustering problem; ALGORITHMS;
D O I
10.1007/s10589-012-9512-9
中图分类号
C93 [管理学]; O22 [运筹学];
学科分类号
070105 ; 12 ; 1201 ; 1202 ; 120202 ;
摘要
The clustering problem has an important application in software engineering, which usually deals with large software systems with complex structures. To facilitate the work of software maintainers, components of the system are divided into groups in such a way that the groups formed contain highly-interdependent modules and the independent modules are placed in different groups. The measure used to analyze the quality of the system partition is called Modularization Quality (MQ). Designers represent the software system as a graph where modules are represented by nodes and relationships between modules are represented by edges. This graph is referred in the literature as Module Dependency Graph (MDG). The Software Clustering Problem (SCP) consists in finding the partition of the MDG that maximizes the MQ. In this paper we present three new mathematical programming formulations for the SCP. Firstly, we formulate the SCP as a sum of linear fractional functions problem and then we apply two different linearization procedures to reformulate the problem as Mixed-Integer Linear Programming (MILP) problems. We discuss a preprocessing technique that reduces the size of the original problem and develop valid inequalities that have been shown to be very effective in tightening the formulations. We present numerical results that compare the formulations proposed and compare our results with the solutions obtained by the exhaustive algorithm supported by the freely available Bunch clustering tool, for benchmark problems.
引用
收藏
页码:113 / 135
页数:23
相关论文
共 50 条
  • [21] Mixed-integer linear programming algorithm for a computational protein design problem
    Zhu, Yushan
    INDUSTRIAL & ENGINEERING CHEMISTRY RESEARCH, 2007, 46 (03) : 839 - 845
  • [22] Compact mixed-integer programming formulations in quadratic optimization
    Beach, Benjamin
    Hildebrand, Robert
    Huchette, Joey
    JOURNAL OF GLOBAL OPTIMIZATION, 2022, 84 (04) : 869 - 912
  • [23] A Mixed-Integer Linear Programming Model for a Selective Vehicle Routing Problem
    Posada, Andrea
    Carlos Rivera, Juan
    Palacio, Juan D.
    APPLIED COMPUTER SCIENCES IN ENGINEERING, WEA 2018, PT II, 2018, 916 : 108 - 119
  • [24] Mixed-integer linear programming models for the paint waste management problem
    Wang, Juyoung
    Cevik, Mucahit
    Amin, Saman Hassanzadeh
    Parsaee, Amir Ali
    TRANSPORTATION RESEARCH PART E-LOGISTICS AND TRANSPORTATION REVIEW, 2021, 151
  • [25] A New Mixed-Integer Linear Programming Formulation for Multiple Responses Regression Clustering
    Angun, Ebru
    Altinoy, Alper
    2019 6TH INTERNATIONAL CONFERENCE ON CONTROL, DECISION AND INFORMATION TECHNOLOGIES (CODIT 2019), 2019, : 1634 - 1639
  • [26] Safe bounds in linear and mixed-integer linear programming
    Arnold Neumaier
    Oleg Shcherbina
    Mathematical Programming, 2004, 99 : 283 - 296
  • [27] Mixed-integer programming techniques for the minimum sum-of-squares clustering problem
    Jan Pablo Burgard
    Carina Moreira Costa
    Christopher Hojny
    Thomas Kleinert
    Martin Schmidt
    Journal of Global Optimization, 2023, 87 : 133 - 189
  • [28] Mixed-integer programming techniques for the minimum sum-of-squares clustering problem
    Burgard, Jan Pablo
    Moreira Costa, Carina
    Hojny, Christopher
    Kleinert, Thomas
    Schmidt, Martin
    JOURNAL OF GLOBAL OPTIMIZATION, 2023, 87 (01) : 133 - 189
  • [29] Safe bounds in linear and mixed-integer linear programming
    Neumaier, A
    Shcherbina, O
    MATHEMATICAL PROGRAMMING, 2004, 99 (02) : 283 - 296
  • [30] SelfSplit parallelization for mixed-integer linear programming
    Fischetti, Matteo
    Monaci, Michele
    Salvagnin, Domenico
    COMPUTERS & OPERATIONS RESEARCH, 2018, 93 : 101 - 112