Repository logo
 

A study of genetic programming and grammatical evolution for automatic object-oriented programming.

dc.contributor.advisorPillay, Nelishia.
dc.contributor.authorIgwe, Kevin Chizoba.
dc.date.accessioned2017-05-16T11:42:09Z
dc.date.available2017-05-16T11:42:09Z
dc.date.created2016
dc.date.issued2016
dc.descriptionMaster of Science in Computer Science. University of KwaZulu-Natal, Pietermaritzburg 2016.en_US
dc.description.abstractManual programming is time consuming and challenging for a complex problem. For efficiency of the manual programming process, human programmers adopt the object-oriented approach to programming. Yet, manual programming is still a tedious task. Recently, interest in automatic software production has grown rapidly due to global software demands and technological advancements. This study forms part of a larger initiative on automatic programming to aid manual programming in order to meet these demands. In artificial intelligence, Genetic Programming (GP) is an evolutionary algorithm which searches a program space for a solution program. A program generated by GP is executed to yield a solution to the problem at hand. Grammatical Evolution (GE) is a variation of genetic programming. GE adopts a genotype-phenotype distinction and maps from a genotypic space to a phenotypic (program) space to produce a program. Whereas the previous work on object-oriented programming and GP has involved taking an analogy from object-oriented programming to improve the scalability of genetic programming, this dissertation aims at evaluating GP and a variation thereof, namely, GE, for automatic object-oriented programming. The first objective is to implement and test the abilities of GP to automatically generate code for object-oriented programming problems. The second objective is to implement and test the abilities of GE to automatically generate code for object-oriented programming problems. The third objective is to compare the performance of GP and GE for automatic object-oriented programming. Object-Oriented Genetic Programming (OOGP), a variation of OOGP, namely, Greedy OOGP (GOOGP), and GE approaches to automatic object-oriented programming were implemented. The approaches were tested to produce code for three object-oriented programming problems. Each of the object-oriented programming problems involves two classes, one with the driver program and the Abstract Data Type (ADT) class. The results show that both GP and GE can be used for automatic object-oriented programming. However, it was found that the ability of each of the approaches to automatically generate code for object-oriented programming problems decreases with an increase in the problem complexity. The performance of the approaches were compared and statistically tested to determine the effectiveness of each approach. The results show that GE performs better than GOOGP and OOGP.en_US
dc.identifier.urihttp://hdl.handle.net/10413/14500
dc.language.isoen_ZAen_US
dc.subject.otherGenetic programming.en_US
dc.subject.otherGrammatical evolution.en_US
dc.subject.otherAutomatic programming.en_US
dc.subject.otherObject-oriented programming.en_US
dc.titleA study of genetic programming and grammatical evolution for automatic object-oriented programming.en_US
dc.typeThesisen_US

Files

Original bundle
Now showing 1 - 1 of 1
Loading...
Thumbnail Image
Name:
Igwe_Kevin_Chizoba_2016.pdf
Size:
3.74 MB
Format:
Adobe Portable Document Format
Description:
License bundle
Now showing 1 - 1 of 1
No Thumbnail Available
Name:
license.txt
Size:
1.64 KB
Format:
Item-specific license agreed upon to submission
Description: