scholarly journals Optimizing Software Modularity with Minimum Possible Variations

2018 ◽  
Vol 29 (1) ◽  
pp. 1135-1150
Author(s):  
Amarjeet Prajapati ◽  
Jitender Kumar Chhabra

Abstract Poor design choices at the early stages of software development and unprincipled maintenance practices usually deteriorate software modularity and subsequently increase system complexity. In object-oriented software, improper distribution of classes among packages is a key factor, responsible for modularity degradation. Many optimization techniques to improve the software modularity have been proposed in the literature. The focus of these optimization techniques is to produce modularization solutions by optimizing different design quality criteria. Such modularization solutions are good from the different aspect of quality; however, they require huge modifications in the existing modular structure to realize the suggested solution. Thus these techniques are costly and time consuming if applied at early stages of software maintenance. This paper proposes a search-based optimization technique to improve the modularity of the software system with minimum possible variation between the existing and produced modularization solution. To this contribution, a penalized fitness function, namely, penalized modularization quality, is designed in terms of modularization quality and the Move or Join Effectiveness Measure metric. Furthermore, this fitness function is used in both single-objective genetic algorithm (SGA) and multi-objective genetic algorithm (MGA) to generate the modularization. The effectiveness of the proposed remodularization approach is evaluated over five open-source and three random generated software systems. The experimentation results show that the proposed approach is able to generate modularization solutions with improved quality along with lesser perturbation compared to their non-penalty counterpart and at the same time it performs better with the MGA compared to the SGA. The proposed approach can be very useful, especially when total remodularization is not feasible/desirable due to lack of time or high cost.

Mathematics ◽  
2021 ◽  
Vol 9 (13) ◽  
pp. 1581
Author(s):  
Alfonso Hernández ◽  
Aitor Muñoyerro ◽  
Mónica Urízar ◽  
Enrique Amezua

In this paper, an optimization procedure for path generation synthesis of the slider-crank mechanism will be presented. The proposed approach is based on a hybrid strategy, mixing local and global optimization techniques. Regarding the local optimization scheme, based on the null gradient condition, a novel methodology to solve the resulting non-linear equations is developed. The solving procedure consists of decoupling two subsystems of equations which can be solved separately and following an iterative process. In relation to the global technique, a multi-start method based on a genetic algorithm is implemented. The fitness function incorporated in the genetic algorithm will take as arguments the set of dimensional parameters of the slider-crank mechanism. Several illustrative examples will prove the validity of the proposed optimization methodology, in some cases achieving an even better result compared to mechanisms with a higher number of dimensional parameters, such as the four-bar mechanism or the Watt’s mechanism.


2016 ◽  
Vol 2016 ◽  
pp. 1-9
Author(s):  
Fayiz Abu Khadra ◽  
Jaber Abu Qudeiri ◽  
Mohammed Alkahtani

A control methodology based on a nonlinear control algorithm and optimization technique is presented in this paper. A controller called “the robust integral of the sign of the error” (in short, RISE) is applied to control chaotic systems. The optimum RISE controller parameters are obtained via genetic algorithm optimization techniques. RISE control methodology is implemented on two chaotic systems, namely, the Duffing-Holms and Van der Pol systems. Numerical simulations showed the good performance of the optimized RISE controller in tracking task and its ability to ensure robustness with respect to bounded external disturbances.


Author(s):  
Shapour Azar ◽  
Brian J. Reynolds ◽  
Sanjay Narayanan

Abstract Engineering decision making involving multiple competing objectives relies on choosing a design solution from an optimal set of solutions. This optimal set of solutions, referred to as the Pareto set, represents the tradeoffs that exist between the competing objectives for different design solutions. Generation of this Pareto set is the main focus of multiple objective optimization. There are many methods to solve this type of problem. Some of these methods generate solutions that cannot be applied to problems with a combination of discrete and continuous variables. Often such solutions are obtained by an optimization technique that can only guarantee local Pareto solutions or is applied to convex problems. The main focus of this paper is to demonstrate two methods of using genetic algorithms to overcome these problems. The first method uses a genetic algorithm with some external modifications to handle multiple objective optimization, while the second method operates within the genetic algorithm with some significant internal modifications. The fact that the first method operates with the genetic algorithm and the second method within the genetic algorithm is the main difference between these two techniques. Each method has its strengths and weaknesses, and it is the objective of this paper to compare and contrast the two methods quantitatively as well as qualitatively. Two multiobjective design optimization examples are used for the purpose of this comparison.


Author(s):  
Bhargav Appasani ◽  
Rahul Pelluri ◽  
Vijay Kumar Verma ◽  
Nisha Gupta

Genetic Algorithm (GA) is a widely used optimization technique with multitudinous applications. Improving the performance of the GA would further augment its functionality. This paper presents a Crossover Improved GA (CIGA) that emulates the motion of fireflies employed in the Firefly Algorithm (FA). By employing this mimicked crossover operation, the overall performance of the GA is greatly enhanced. The CIGA is tested on 14 benchmark functions conjointly with the other existing optimization techniques to establish its superiority. Finally, the CIGA is applied to the practical optimization problem of synthesizing non-uniform linear antenna arrays with low side lobe levels (SLL) and low beam width, both requirements being incompatible. However, the proposed CIGA applied for the synthesis of a 12 element array yields an SLL of [Formula: see text]29.2[Formula: see text]dB and a reduced beam width of 19.1[Formula: see text].


Author(s):  
Koushik Majumder ◽  
Debashis De ◽  
Senjuti Kar ◽  
Rani Singh

Mobile Ad hoc Networks (MANET) are wireless infrastructure less networks that are formed spontaneously and are highly dynamic in nature. Clustering is done in MANETs to address issues related to scalability, heterogeneity and to reduce network overhead. In clustering the entire network is divided into clusters or groups with one Cluster Head (CH) per cluster. The process of CH selection and route optimization is extremely crucial in clustering. Genetic Algorithm (GA) can be implemented to optimize the process of clustering in MANETs. GA is the most recently used advanced bio-inspired optimization technique which implements techniques of genetics like selection, crossover, mutation etc. to find out an improved solution to a problem similar to the next generation that inherits the positive traits and features of the previous one. In this chapter several genetic algorithm based optimization techniques for clustering has been discussed. A comparative analysis of the different approaches has also been presented. This chapter concludes with future research directions in this domain.


2011 ◽  
pp. 140-160
Author(s):  
Sheng-Uei Guan ◽  
Chang Ching Chng ◽  
Fangming Zhu

This chapter proposes the establishment of OntoQuery in an m-commerce agent framework. OntoQuery represents a new query formation approach that combines the usage of ontology and keywords. This approach takes advantage of the tree pathway structure in ontology to form queries visually and efficiently. Also, it uses keywords to complete the query formation process more efficiently. Present query optimization techniques like relevance feedback use expensive iterations. The proposed information retrieval scheme focuses on using genetic algorithms to improve computational effectiveness. Mutations are done on queries formed in the earlier part by replacing terms with synonyms. Query optimization techniques used include query restructuring by logical terms and numerical constraints replacement. Also, the fitness function of the genetic algorithm is defined by three elements, number of documents retrieved, quality of documents, and correlation of queries. The number and quality of documents retrieved give the basic strength of a mutated query.


2016 ◽  
Vol 58 (1) ◽  
pp. 51-77 ◽  
Author(s):  
S. BERRES ◽  
A. CORONEL ◽  
R. LAGOS ◽  
M. SEPÚLVEDA

This paper deals with the flux identification problem for scalar conservation laws. The problem is formulated as an optimization problem, where the objective function compares the solution of the direct problem with observed profiles at a fixed time. A finite volume scheme solves the direct problem and a continuous genetic algorithm solves the inverse problem. The numerical method is tested with synthetic experimental data. Simulation parameters are recovered approximately. The tested heuristic optimization technique turns out to be more robust than classical optimization techniques.


2004 ◽  
Vol 126 (2) ◽  
pp. 323-331 ◽  
Author(s):  
Frank Sieverding ◽  
Beat Ribi ◽  
Michael Casey ◽  
Michael Meyer

Background: The blade sections of industrial axial flow compressors require a wider range from surge to choke than typical gas turbine compressors in order to meet the high volume flow range requirements of the plant in which they operate. While in the past conventional blade profiles (NACA65 or C4 profiles) at moderate Mach number have mostly been used, recent well-documented experience in axial compressor design for gas turbines suggests that peak efficiency improvements and considerable enlargement of volume flow range can be achieved by the use of so-called prescribed velocity distribution (PVD) or controlled diffusion (CD) airfoils. Method of approach: The method combines a parametric geometry definition method, a powerful blade-to-blade flow solver and an optimization technique (breeder genetic algorithm) with an appropriate fitness function. Particular effort has been devoted to the design of the fitness function for this application which includes non-dimensional terms related to the required performance at design and off-design operating points. It has been found that essential aspects of the design (such as the required flow turning, or mechanical constraints) should not be part of the fitness function, but need to be treated as so-called “killer” criteria in the genetic algorithm. Finally, it has been found worthwhile to examine the effect of the weighting factors of the fitness function to identify how these affect the performance of the sections. Results: The system has been tested on the design of a repeating stage for the middle stages of an industrial axial compressor. The resulting profiles show an increased operating range compared to an earlier design using NACA65 profiles. Conclusions: A design system for the blade sections of industrial axial compressors has been developed. Three-dimensional CFD simulations and experimental measurements demonstrate the effectiveness of the new profiles with respect to the operating range.


2015 ◽  
Vol 24 (1) ◽  
pp. 85-97 ◽  
Author(s):  
Muchou Wang ◽  
Weifeng Pan ◽  
Bo Jiang ◽  
Chenxiang Yuan

AbstractThe original design of a software system is rarely prepared for every new requirement. Software systems should be updated frequently, which is usually accompanied by the decline in software modularity and quality. Although many approaches have been proposed to improve the quality of software, a majority of them are guided by metrics defined on the local properties of software. In this article, we propose to use a global metric borrowed from the network science to detect the moving method refactoring. First, our approach uses a bipartite network to represent classes, features (i.e., methods and fields), and their dependencies. Second, a new metric is introduced to quantify the modularity of a software system as a whole. Finally, a crossover-only evolutionary algorithm that uses the metric as its fitness function is introduced to optimize the class structure of a software system and detect the methods that should be moved. Empirical results on the benchmark Java projects show that our approach can find meaningful methods that should be moved with a high stability. The advantages of our approach are illustrated in comparison with some other approaches, specifically one refactoring approach, namely search-based refactoring approach (SBRA), and two community detection algorithms, namely a graph theoretic clustering algorithm (MCODE) and a fast algorithm for community detection (FG). Our approach provides a new way to do refactoring from the perspective of software structure.


Author(s):  
Amir A. Bracino ◽  
Jason L. Española ◽  
Argel A. Bandala ◽  
Elmer P. Dadios ◽  
Edwin Sybingco ◽  
...  

Unlike a media-filled aquaponic system, the nutrient film technique (NFT) and deep water culture (DWC) require the installation of an external biofilter to provide sufficient area for nitrifying bacteria colonization, which is essential for the conversion of toxic ammonia from fish waste into nitrate that is easily assimilated by plants. Given the importance of biofilters, it is imperative to properly design this tank to effectively support the nitrification process. Several factors need to be considered for the biofilter design. Thus, an optimization algorithm can be used to obtain combinations of the design parameters. The genetic algorithm (GA) is a heuristic solution search or optimization technique based on the Darwinian principle of genetic selection. The main goal of this study was to obtain the optimal biofilter size for a given fishpond volume and the amount of ammonia to be treated. The conversion coefficient in the Michaelis–Menten equation was used as the fitness function in this study. The parameters optimized using GA include the hydraulic loading rate, height of the biofilter, and predicted ammonia concentration. For the given assumption of a 60 kg feed introduced to the system and a 1500 L fishpond, the hydraulic loading rate, biofilter height, and final concentration of ammonia were 0.17437 m, 0.58585 m, and 0.01026 ppm, respectively. Using the values obtained from running the GA, the optimum biofilter volume for the system was 0.4608 m3, whereas the water flow rate was 0.03 L/min. For recommendations, multiple objective GAs can be used to add cost-related variables in the optimization because they have not yet been considered in the computation.


Sign in / Sign up

Export Citation Format

Share Document