Font Size: a A A

A Study Of Evolutionary Algorithms For The Software Effort Estimating Problem

Posted on:2015-02-09Degree:MasterType:Thesis
Country:ChinaCandidate:Z PengFull Text:PDF
GTID:2298330422982051Subject:Computer software and theory
Abstract/Summary:PDF Full Text Request
The research of software effort estimation has become an important work in the fieldof software engineering. At present, there are3methods for the estimation of software effort,including discriminant technique based on experts, model based methods, and machinelearning based methods. The first two kinds of methods are now mature and have beenwidely applied. The last one is not very mature at present, but many pepole have studiedthis method and some good results have been obtained. Based on the previous studies, thispaper improves the case based reasoning algorithms, which belongs to the machine learningbased methods. As consequence, we developped two improved methods. One is thecombination of differential evolution algorithm and traditional case-based reasoning, andthe other is the combination of real coded genetic algorithm and case-based reasoning. Bothare proven to be efficient through experiment results.The paper first introduces the design process of case-based reasoning, then introducesthe case representation, case retrieval, similar case reuse and revise in detail. In the basiccase-based reasoning algorithm, it is assumed that the impact of project attributes’ value onsimilarity between software project is the same, namely the values of characteristicattributes weights are equal. However, in practice, they are often not the same. The twoimproved methods aim to find the optimal weight values of project characteristics attributes.Then combined with the basic case based reasoning algorithm, we conduct experiments ontwo classical data set. In the experiments of three kinds of case-based reasoningalgorithms, we analyze the parameter K (the number of similar project) in detail. andobtained the optimal parameter value. In addition,we implement another two methods,oneis neural netword, the other is linear regression. In the end, we analyze results of variousalgorithms,we conclude that the two improved case-based reasoning algorithms are betterthan other algorithms,the average relative errror is smaller and the probability of predicted range is bigger.
Keywords/Search Tags:software effort, case-based reasoning, genetic algorithm, differential evolutionalgorithm
PDF Full Text Request
Related items