Computer Science ETDs
Publication Date
5-1-2014
Abstract
People have an amazing ability to solve complex problems by performing a sequence of simpler operations (i.e: functions/procedures which take input variables and produce output variables). We are able to do so even when there exists a large number of possible choices for such operations and when the number of combinatoric ways that these operations can be chained together is astronomical. On the other hand, computers typically do not solve problems this way and have to be programmed with a precise set of instructions. What is it that allows us to perform such a feat while computers cannot? One of the major features that sets us apart from computers is our ability to draw upon our large range of knowledge and its connections to the problem at hand. Meta Concepts aims to use knowledge-based information in this way to enable the automated generation of code in order to solve problems in cases where solutions would otherwise be difficult to devise by hand. Meta Concepts is an object-oriented coding system whereby the user specifies and works with an ontology of concepts or types/classes which captures knowledge about their usage and metadata about their methods, how method calls can be chained together, and associated method parameters and constraints. By augmenting the code generation process with knowledge-based information, the system is able to significantly narrow and prioritize its search through the otherwise vast search space in order to quickly generate high-performing solutions.
Language
English
Keywords
artificial intelligence, code generation, compilers, evolutionary computing, knowledge bases
Document Type
Thesis
Degree Name
Computer Science
Level of Degree
Masters
Department Name
Department of Computer Science
First Committee Member (Chair)
Caudell, Thomas
Second Committee Member
McCormick, Pat
Recommended Citation
Moss, Nicholas. "Meta Concepts: A Knowledge-Based Code Generation System." (2014). https://digitalrepository.unm.edu/cs_etds/66