The undersigned certify that they have read, and
recommend to the Faculty of Graduate Studies for acceptance, a
dissertation entitled "Constraint Graphs: A Concept Map Meta-Language"
submitted by Robert Kremer in partial fulfillment of the requirements
for the degree of Doctor of Philosophy.
__________________________________________
Supervisor, Brian Gaines
Department of Computer Science
__________________________________________
Saul Greenberg
Department of Computer Science
__________________________________________
Dickson Lukose
Department of Computer Science
__________________________________________
Doug Norrie
Department of Mechanical Engineering
__________________________________________
External Reader, Tom Carey
University of Guelph
_____________________
Date
Concept maps are visual graphs, consisting of nodes, which represent concepts, and arcs, which represent relationships between the concepts. Concept maps are used in a wide variety of disciplines because of their ability to make complex information structures explicit. There are a wide variety of concept mapping languages ranging from informal to formal; all share the same fundamental structure (nodes and arcs), but they vary in many ways, including degree of formality (typing), allowable component types, component graphical attributes, inclusion of contexts, and miscellaneous constraints. There is a large design space in concept mapping languages and each design is difficult and time consuming to implement. A simple way to prototype new concept mapping languages (and modify old ones) would be a very useful tool.
Constraint Graphs is a system designed to address this problem. The idea is to define a minimal concept mapping system, then let the end-user build a language based on these fundamental components. The base system is a very flexible concept mapping tool which is unconstrained except for the very fundamentals of graph theory (even n-ary arcs are allowed). In addition to "vanilla" nodes and arcs the system has an "isa" arc type which can be used to create a type lattice within the map. Constraints based on the type lattice allow a user the flexibility to use informal concept maps, to use a wide variety of formalisms, or to gradually constrain an informal concept map into a formal one.
The properties of such a "meta-visual language"
avails itself to a variety of new applications including experimentation
in concept map formalisms and powerful type checking tools for
visual notations such as are used in knowledge modeling and decision
making.
This work has benefited from the support of many people. Thanks to my supervisor, Brian Gaines, for his timely advice, encouragement, and criticism throughout the development of this work. Thanks are also due to the people at the Knowledge Science Institute lab and the Computer Science Department at the University of Calgary. These people have been an endless source of inspiration and good discussion throughout the work. They include Mildred Shaw, Roberto Flores-Mendez, Lee Chen, Saul Greenberg, Mark Roseman, Carl Gutwin, Ted O'Grady, Pim van Leeuwen, and Robin Cockett. Special thanks to Graham Birtwistle (now at Leeds University) who first encouraged me in the areas of object-oriented programming principles, formal methods, and type theory. I've also learned a lot recently from Dickson Lukose who has been on sabbatical at KSI from the University of New England, Australia.
I could not have completed this research without the support of Smart Technologies Inc. and the National Science and Engineering Research Council of Canada. Smart Technologies' president, David Martin, has been particularly supportive. In addition, the many technical discussions with Tom Fukushima of Smart Technologies have made an important contribution.
Thanks to my wife, Carolyn, for her encouragement
and patience; and to my children, Cory, Chris and Sandra for their
understanding of Dad's long hours at the computer. The encouragement
and advice of my Dad and Mom has been greatly appreciated. My
brother, Andy Kremer, made a tremendous contribution by proofreading
my work.
Approval Page Abstract Acknowledgements Dedication Table of Contents List of Tables List of Figures
Constraint Graphs: A Concept Map Meta-Language (PhD Dissertation), Department of Computer Science