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.
In this course we will read primary literature on mathematical models of conflict and cooperation (game theory), and we will write computer programs to replicate reported results and explore related hypotheses. We will also discuss applications of game theory in many areas, possibly including economics, politics, war and peace, responses to climate change, and evolutionary biology. Prerequisite: Strong computer programming skills.
Can androids fall in love? Could a planet have a mind of its own? How might we communicate with alien life forms? Will it ever be possible for two people to "swap minds"? How about a person and a robot? Might we someday be able to buy memories, record dreams, or "read" books by eating pills? Cognitive science research can shed light on many of these questions, with answers that are often as strange and as wonderful as the inventions of science fiction authors. In this course we will read and view science fiction while simultaneously reading current scientific literature about the mind, the brain, and intelligent machines. The science fiction will provide a framework for our discussions, but the real goal of the course is to provide a tour of issues in cognitive science that will prepare students for more advanced cognitive science courses.
Students in this course will become members of research teams focusing on projects designated by the instructor. Projects will involve open research questions in artificial intelligence, artificial life, or computational models of cognitive systems. They will be oriented toward the production of publishable results and/or distributable software systems. Students will gain skills that will be useful for Division III project work and graduate-level research. Prerequisite detail: Strong computer programming skills
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.