Professor of Computer Science
His main interests are artificial intelligence and the connections between cognition, computation, and evolution. He is also interested in the use of technology in music and other arts.
His recent research includes projects on the development of new genetic programming techniques, the use of artificial intelligence technologies in the study of quantum computation, the interdisciplinary study of human and machine cognition, and the development of technologies to support inquiry-based education.
Professor Spector is also an active editor, reviewer, and organizer for scientific journals and conferences. He recently received the highest honor bestowed by the National Science Foundation for excellence in both teaching and research, the NSF Director's Award for Distinguished Teaching Scholars. He has held the College's MacArthur Chair and has served as the dean of the School of Cognitive Science and as the elected faculty member of Hampshire's board of trustees.
This course is a gateway for the Five College Bio-mathematical Sciences Program and Certificate. It also provides an introduction to collaborative research across the Five College Biomath Consortium. The first four weeks of the course are devoted to practice with a software package (Matlab, Rstudio, etc.). Afterward, the two 4-week modules are presented by pairs of faculty including one from mathematical and statistical sciences, and one from the life sciences. Each pair provides the background and data that motivates the research, then introduces a question for students to investigate. Student work in groups to use the tools presented to explore the question. In the final week of each module, students present their finding and hear presentations about 5CBC research projects. Five College students: graded SU only.
Genetic programming is a computational technique that harnesses the mechanisms of natural evolution -- including genetic recombination, mutation, and natural selection -- to synthesize computer programs automatically from input/output specifications. It has been applied to a wide range of problems spanning several areas of science, engineering, and the arts. In this course students will explore several variations of the genetic programming technique and apply them to problems of their choosing. Prerequisite detail: One programming course (in any language).
Artificial Intelligence is a branch of computer science concerned with the development of computer systems that "think." In this course we will explore the core ideas of artificial intelligence through readings, presentations, discussions, and hands-on programming activities. A range of practical artificial intelligence techniques will be covered, and students will complete programming projects to demonstrate engagement with the themes of the course. Prerequisite detail: One programming course (in any language).
This course is an inquiry-based introduction to computer programming, designed for students with little or no prior experience with programming or computer science, but with interests in some area of science. Students will learn to write programs for data manipulation and scientific modeling in a general purpose programming language. Several of the core concepts of computer science that underlie computational work in the sciences (including the natural, cognitive, and social sciences) will be introduced.