Elsevier

Expert Systems with Applications

Volume 90, 30 December 2017, Pages 1-12
Expert Systems with Applications

A class of hybrid multilayer perceptrons for software development effort estimation problems

https://doi.org/10.1016/j.eswa.2017.07.050Get rights and content

Highlights

  • A class of multilayer neural network with hybrid processing units.

  • A gradient-based learning process to design the proposed model.

  • An experimental analysis using relevant datasets of software development effort estimation.

Abstract

The dilation-erosion-linear perceptron is a hybrid morphological neuron which has been recently proposed in the literature to solve some prediction problems. However, a drawback arises from such model for building mappings to solve tasks with complex input-output nonlinear relationships within effort estimation problems. In this sense, to overcome this limitation, we present a particular class of hybrid multilayer perceptrons, called the multilayer dilation-erosion-linear perceptron (MDELP), to deal with software development effort estimation problems. Each processing unit of the proposed model is composed of a mix between a hybrid morphological operator (given by a balanced combination between dilation and erosion operators) and a linear operator. According to Pessoa and Maragos’s ideas, we propose a descending gradient-based learning process to train the proposed model. Besides, we conduct an experimental analysis using relevant datasets of software development effort estimation and the achieved results are discussed and compared, according to MMRE and PRED25 measures, to those obtained by classical and state of the art models presented in the literature.

Introduction

Softwares have been developed to solve problems in several fields from human knowledge. High quality, delivery within deadline and costs within budget represent some of the main challenges for the development process of any software (Araújo, Oliveira, Soares, Meira, 2012c, Xu, Khoshgoftaar, 2004). Failures in these tasks can arise due to absence of project management before and after the project’ start (Muzaffar, Ahmed, 2010, Wittig, Finnie, 1997).

In this context, the estimation of software development effort represents one of the main issues to be solved in project management, because its overestimation implies in bidding loss, as well as its underestimation implies in delay and cost over-run, leading to project failure (Moosavi, Bardsiri, 2017, Wen, Li, Lin, Hu, Huang, 2012). Therefore, effort estimation is a fundamental step in early stages of the software’s development life cycle (Nassif, Azzeh, Capretz, & Ho, 2016). It is believed that failures in the estimation of software development effort have implied in annual losses around USD 75 billions only for the United States’ economy (Oliveira, Braga, Lima, Cornelio, 2010, Wen, Li, Lin, Hu, Huang, 2012).

Several approaches have been proposed in the literature trying to build a mapping able to represent the relationship between effort and software attributes: i) radial basis function neural network (Nassif, Azzeh, Capretz, Ho, 2016, Oliveira, 2006, Shin, Goel, 2000), ii) linear regression (Finnie, Wittig, Desharnais, 1997, Jorgensen, 2004, Oliveira, 2006), iii) support vector regression (Corazza, Martino, Ferrucci, Gravino, Sarro, Mendes, 2013, Oliveira, 2006, Oliveira, Braga, Lima, Cornelio, 2010), iv) multilayer perceptrons (Braga, Oliveira, Meira, 2007, Finnie, Wittig, Desharnais, 1997, Nassif, Azzeh, Capretz, Ho, 2016, Oliveira, Braga, Lima, Cornelio, 2010, Wittig, Finnie, 1997), v) regression trees (Braga, Oliveira, Meira, 2007, Oliveira, Braga, Lima, Cornelio, 2010), vi) bagging predictors (Braga et al., 2007), vii) neuro-fuzzy model (Huang, Ho, Ren, & Capretz, 2007), viii) fuzzy regression trees (Andreou & Papatheocharous, 2008), ix) wavelet neural network (Kumar, Ravi, Carr, & Kiran, 2008), x) multiple additive regression trees (Elish, 2009), xi) ensemble of neural networks with associative memory (Kultur, Turhan, & Bener, 2009), xii) shift-invariant morphological model (Araújo, Oliveira, & Meira, 2011), xiii) evolutionary feature selection method for prediction models (Oliveira et al., 2010), xiv) fuzzy logic models (Muzaffar, Ahmed, 2010, Xu, Khoshgoftaar, 2004), xv) morphological model (Araújo, 2012, Araújo, Oliveira, Soares, Meira, 2012c), xvi) evolutionary fuzzy models (Reddy & Hari, 2011), xvii) general regression neural network (Nassif et al., 2016), xviii) cascade correlation neural network (Nassif et al., 2016), hybrid evolutionary neuro-fuzzy model (Moosavi & Bardsiri, 2017), amongst other.

However, even with several models proposed in the literature to solve such problem, an expressive percentage of software projects are canceled (Group, 2004, Moosavi, Bardsiri, 2017, Nassif, Azzeh, Capretz, Ho, 2016, Oliveira, 2006, Oliveira, Braga, Lima, Cornelio, 2010, Wen, Li, Lin, Hu, Huang, 2012). The main reason for that are failures in software development effort estimation, which still remains an ongoing challenge for the project management field (Group, 2004, Jorgensen, 2004, Moosavi, Bardsiri, 2017, Nassif, Azzeh, Capretz, Ho, 2016, Oliveira, 2006, Oliveira, Braga, Lima, Cornelio, 2010). In this sense, the development of models for improving performance for effort estimation may be essential to assure software companies’ competitiveness (Araújo, Oliveira, Soares, Meira, 2012c, Corazza, Martino, Ferrucci, Gravino, Sarro, Mendes, 2013, Moosavi, Bardsiri, 2017, Nassif, Azzeh, Capretz, Ho, 2016, Oliveira, Braga, Lima, Cornelio, 2010).

Recently, a particular artificial neural network, called the morphological neural network (MNN) (Davidson, 1991, Davidson, Ritter, 1990, Davidson, Talukder, 1993, Ritter, Sussner, 1996), has been presented in the literature as solution for a relevant set of problems (Araújo, Oliveira, Meira, 2015, Esmi, Sussner, Bustince, Fernandez, 2014, Jamshidi, Kaburlasos, 2014, na, Chyzhyk, 2016). In this context, it is worth mentioning a hybrid morphological-linear processing unit, called the dilation-erosion-linear perceptron (DELP) (Araújo, Oliveira, Meira, 2012a, Araújo, Oliveira, Meira, 2012b), which was recently presented in the literature to deal with some prediction problems. It uses a combination between a hybrid morphological operator (given by a mix between dilation and erosion operators) and a linear operator.

Nevertheless, Araújo et al. (Araújo, Oliveira, Meira, 2012a, Araújo, Oliveira, Meira, 2012b) argue that only one processing unit is not able to produce mappings to solve tasks with complex input-output relationships from software development effort estimation problems, and this is the main drawback of the DELP model. In this sense, as future work, (Araújo, Oliveira, Meira, 2012a, Araújo, Oliveira, Meira, 2012b) have suggested the development of a neural network with multilayer structure using the DELP as fundamental processing unit to overcome these limitations.

In this sense, we intend to extend ideas presented by Araújo et al. (Araújo, Oliveira, Meira, 2012a, Araújo, Oliveira, Meira, 2012b) to a multilayer structure, called the multilayer dilation-erosion-linear perceptron (MDELP), to deal with software development effort estimation problems. Each processing unit within MDELP structure is represented by a mix between a hybrid morphological operator and a linear operator, followed by an activation function. Based on ideas from Pessoa and Maragos (Pessoa & Maragos, 2000), a descending gradient-based learning process is presented to train the MDELP model, where an smoothed rank-based approach is employed to overcome the nondifferentiability problem of hybrid morphological operator.

Furthermore, we conduct an experimental analysis with the proposed model using a relevant set of software development effort estimation problems (Albrecht, Cocomo, Desharnais, Kemerer, Kotengray and Nasa datasets), where MMRE and PRED25 measures are used to assess performance regarding classical and state of the art models presented in the literature.

This work is organized as follows. Section 2 presents the fundamentals of the software development effort estimation problem. Section 3 presents the formal definition of the proposed model. Section 4 presents the descending gradient-based learning process to train the proposed model. Section 5 presents simulations and experimental results. At the end, in Section 6, we present final remarks of this work.

Section snippets

The effort estimation problem

A software development effort estimation problem can be represented by a database built with features (usually related to products, processes and resources) from previous software projects (Finnie et al., 1997). According to Araújo (Araújo, 2012), the estimation (or prediction) term is applied when it used to predict a future attribute value, which is given by the effort, in terms of programmers-by-month, to conclude the software development or the time to deliver the product.

In this sense,

The proposed model

The model presented in this work, called the multilayer dilation-erosion-linear perceptron (MDELP), has a multilayer feed-forward architecture with processing units composed of a balanced combination between a hybrid morphological operator (dilation-erosion operator) and a linear operator, followed by an activation function. Notice that the proposed model is inspired on morphological-rank-linear neural network, originally proposed by Pessoa and Maragos (Pessoa & Maragos, 2000). Nevertheless,

The proposed learning process

The design of the MDELP requires the adjustment of an weight vector defined by wn(l)=(λn(l),θn(l),ρn(l),an(l),bn(l),cn(l)),in which n=1,,Nl and l=1,,L with L representing the amount of layers.

The descending gradient-based learning process proposed in this paper is a supervised training process to adjust the weight vector, which uses an error criterium in terms of a cost function J, given by J(i)=1Mm=1Mξ(m),in which ξ(m)=e(m)2,with e(m)2=n=1NL[en(m)]2,where M is the amount of training

Simulations and experimental results

A relevant set of software development effort estimation problems (Albrecht, Cocomo, Desharnais, Kemerer, KotenGray and Nasa) was used as a test bed for evaluation of the proposed MDELP. All datasets were normalized to lie within range [0,1]. Trying to establish a performance study, we compare our results with those obtained with linear regression (LINREG) (Kim, 2008, Oliveira, 2006), logistic regression (LOGREG) (Louzada, Ferreira-Silva, & Diniz, 2012), multilayer perceptrons (MLP) (Moosavi,

Conclusions

In this paper we have developed a hybrid multilayer perceptron to solve software development effort estimation problems. Each processing unit of the proposed model is composed of a mix between a hybrid morphological operator and a linear operator, followed by a sigmoid activation function. Also, a gradient-based learning process using the back-propagation algorithm was presented to train the proposed model, where an smoothed rank-based approach was used to overcome the nondifferentiability

References (65)

  • K.V. Kumar et al.

    Software development cost estimation using wavelet neural networks

    Journal of Systems and Software

    (2008)
  • G. Matheron

    Random Sets and Integral Geometry

    (1975)
  • M.G. na et al.

    Image understanding applications of lattice autoassociative memories

    IEEE Transactions on Neural Networks and Learning Systems

    (2016)
  • A.L.I. Oliveira

    Estimation of software project effort with support vector regression

    Neurocomputing

    (2006)
  • A.L.I. Oliveira et al.

    Ga-based method for feature selection and parameters optimization for machine learning regression applied to software effort estimation

    Information and Software Technology

    (2010)
  • L.F.C. Pessoa et al.

    Neural networks with hybrid morphological rank linear nodes: a unifying framework with applications to handwritten character recognition

    Pattern Recognition

    (2000)
  • L. Prechelt

    Proben1: A set of Neural Network Benchmark Problems and Benchmarking Rules

    Technical Report 21/94

    (1994)
  • J. Serra

    Image analysis and mathematical morphology

    (1982)
  • J. Serra

    Image analysis and mathematical morphology, volume 2: theoretical advances

    (1988)
  • P. Sussner et al.

    Grayscale morphological associative memories

    IEEE Transactions on Neural Networks

    (2006)
  • J.W. Tukey

    Comparing individual means in the analysis of variance

    Biometrics

    (1949)
  • Z. Xu et al.

    Identification of fuzzy models of software cost estimation

    Fuzzy Sets and Systems

    (2004)
  • S.A. Andreou et al.

    Software cost estimation using fuzzy decision trees

    Proceedings of the twenty-third IEEE/ACM international conference on automated software engineering

    (2008)
  • R.A. Araújo et al.

    A dilation-erosion-linear perceptron for bovespa index prediction

    In Proceedings of the international conference on intelligent data engineering and automated learning

    (2012)
  • R.A. Araújo et al.

    A hybrid model for s&p500 index forecasting

    In Proceedings of the international conference on artificial neural networks

    (2012)
  • R.A. Araújo et al.

    An increasing hybrid morphological-linear perceptron with pseudo-gradient-based learning and phase adjustment for financial time series prediction

    In Proceedings of the IEEE international joint conference on neural networks

    (2010)
  • G. Birkhoff

    Lattice theory

    (1993)
  • P.L. Braga et al.

    Software effort estimation using machine learning techniques with robust confidence intervals

    Proceedings of the IEEE international conference on tools with artificial intelligence (ICTAI)

    (2007)
  • A. Corazza et al.

    Using tabu search to configure support vector regression for effort estimation

    Empirical Software Engineering

    (2013)
  • R. Cuninghame-Green

    Minimax algebra and applications

  • J.L. Davidson

    Template learning in morphological neural nets

    Image algebra and morphological image processing II

    (1991)
  • J.L. Davidson et al.

    A theory of morphological neural networks

    Proc. SPIE

    (1990)
  • Cited by (23)

    • A deep increasing–decreasing-linear neural network for financial time series prediction

      2019, Neurocomputing
      Citation Excerpt :

      The proposed model in this work, called the deep increasing–decreasing-linear perceptron (DIDLP), has a deep layer architecture composed of increasing–decreasing-linear processing units given by a combination between a hybrid nonlinear morphological operator (an increasing–decreasing operator) and a linear operator (classical perceptron), followed by an activation function. It is worth mentioning that the proposed model is inspired by previous neural architectures proposed by Pessoa and Maragos [36] and de A. Araújo et al. [8,9]. However, instead of the use of morphological-rank-linear or dilation-erosion-linear processing units, respectively, we use increasing–decreasing-linear processing units.

    • Software Measurements Using Machine Learning Techniques-A Review

      2023, Recent Advances in Computer Science and Communications
    View all citing articles on Scopus
    View full text