George M. Ferguson

Director of Programming and Operations
Ronald Rettner Hall for Media Arts and Innovation
University of Rochester
Rochester, NY 14627-8951

In my research career, I worked at the intersection of human-computer interaction and intelligent decision support—computer systems that interact naturally to help people solve problems. I have 20+ years of research experience developing such systems, as well as teaching courses; supervising students and colleagues; software development and system administration for Unix, Mac, Windows, and mobile platforms; and web development and administration. I have proposed, received, and managed multi-million dollar projects from agencies including DARPA, ONR, NSF, and NIH. I was Program Chair of AAAI-2004 and received an Outstanding Paper award at AAAI- 2007. I then ran the Media Arts and Innovation Center at the University of Rochester, where my focus was on putting together great interdisciplinary projects that took advantage of the Center’s facilities. Since 2015, I am back in Computer Science, teaching introductory and advanced courses and helping to run the burgeoning undergraduate program.

Ph. D.Computer ScienceUniversity of Rochester1995
M. Sc.Computer ScienceUniversity of Rochester1989
M. Sc.Computing ScienceUniversity of Alberta1989
B. Sc.Math & Computer Science
(Magna Cum Laude)
McGill University1987
2015- Senior Lecturer, Assoc. Director of Undergraduate Studies, Dept. of Computer Science, University of Rochester
2013-2015 Director of Programming and Operations, Ronald Rettner Hall for Media Arts and Innovation University of Rochester
1997-2013 Research Scientist, University of Rochester
1995-1997 Post-doctoral Researcher, Research Associate, University of Rochester
1990-1994 Research Assistant, University of Rochester
Developed Intelligent Conversational Assistants based on deep, formal models of natural language understanding and collaboration and applied these to problems ranging from logistics to health care to command and control.

Areas of Expertise: Artificial intelligence; Intelligent agents: agent communication languages, agent architectures; User interfaces: speech recognition, natural language understanding, dialogue, conversational agents; User-centered design; Temporal reasoning: representation, planning, scheduling; Semantic web: ontologies, knowledge-based systems; Medical informatics: electronic medical records, personal health records, patient-centered care, self-care technologies, decision support.

At the undergraduate level, I have regularly taught Introductory Programming (Java, Python, Javascript), Web Development, and Artificial Intelligence. I have taught a variety of subjects related to my research at the graduate level. I have also been involved in teaching computing to middle school and high school students, as well as helping high school teachers teach computing.
Professional Service