2010-11 Catalog

Decorative graphic

2010-11 Undergraduate Index A-Z

Have questions about the curriculum? Contact Academic Advising
Tips for Using the Catalog

Computer Science [clear]


Title   Offering Standing Credits Credits When F W S Su Description Preparatory Faculty Days of Week Multiple Standings Start Quarters
Algebra to Algorithms

Richard Weiss

computer science mathematics philosophy of science 

  Program FR - SRFreshmen - Senior 16 16 Day SSpring We rely on mathematics as a powerful language for understanding the natural world and technology. Mathematical models allow predictions of complex systems, and modern computing has both magnified the power of those models and helped shape new models that increasingly influence our lives. Computer science, as a constructive branch of mathematics, relies on mathematics for its culture and language of problem solving, and it also enables the construction of both deterministic and statistical mathematical models. Patterns that appear in the natural world and are expressed in mathematical models can also be applied to the visual arts. We rely on mathematics as a powerful language for understanding the natural world and technology. Mathematical models allow predictions of complex systems, and modern computing has both magnified the power of those models and helped shape new models that increasingly influence our lives. Computer science, as a constructive branch of mathematics, relies on mathematics for its culture and language of problem solving, and it also enables the construction of both deterministic and statistical mathematical models. Patterns that appear in the natural world and are expressed in mathematical models can also be applied to the visual arts. In this program, we will explore connections between mathematics, computer science, the natural sciences, and graphic arts.  We will develop mathematical abstractions and the skills needed to express, analyze and solve problems arising in the sciences. In addition, we will explore how to program interesting visual shapes using simple geometry. The regular work of the program will include seminars, lectures, problem solving workshops, programming labs, problem sets, and seminar papers. The emphasis will be on fluency in mathematical and statistical thinking and expression along with reflections on mathematics and society. Topics will include concepts of algebra, algorithms, programming and problem solving, with seminar readings about the role of mathematics in modern education and society. This program is intended for students who want to gain a fundamental understanding of mathematics and computing before leaving college or before pursuing further work in the sciences or the arts. college algebra, introductory computer programming, problem solving, and mathematics and computing in society. Richard Weiss Freshmen FR Sophomore SO Junior JR Senior SR Spring
Art, New Media, and the Science of Perception

Richard Weiss and Naima Lowe

computer science mathematics media studies moving image physics psychology visual arts 

Signature Required: Winter 

  Program FR - SRFreshmen - Senior 16 16 Day FFall WWinter What is an image? How do we form them? What factors influence our perception of images? How are the history and practices of New Media related to social and cultural phenomena surrounding robotics, cybernetics, and networked culture? Cybernetics and reproducible images emerged almost simultaneously in the Western world and became markers of the post-modern era. The result was a rich interaction that developed between art, video and photography, robotics and image processing. The culture and history of New Media, visual perception and cognitive science will form the landscape for our explorations. In this program, we will investigate how images are formed and how we perceive them, as well as the theoretical underpinnings of reproducible images and the history of New Media. Both cultural and technological aspects will guide our examination of the entire sequence of events from how images are produced in a camera to how we perceive and react to images as informed by both our personal and social experiences. We will explore digital and non-digital images and image processing, as well as the cognitive science of how our eyes and brain process patterns of light. In the fall, we will study the concepts of editing, video production and photography, as well as the influences of culture and technology on art, printed media and electronic media in the age of the Internet. Robotics and image processing will lead us to geometric optics and color. Students will learn how to work with digital and non-digital images, image reproduction, the pinhole camera model, lenses, filtering images, and programming a simple mobile robot to take pictures. In winter, we will continue to develop and expand much of the work we started in the fall. We will expand our view of robotics to include more general, computer processor-based interactive art and the cognitive science of visual perception. Winter quarter will culminate in public presentations of student projects that integrate our studies. video production, media arts, computer science, mathematics, and cognitive science. Richard Weiss Naima Lowe Freshmen FR Sophomore SO Junior JR Senior SR Fall
Computability and Language Theory

Sheryl Shulman, Jeffrey Gordon and Neal Nelson

computer science mathematics 

Signature Required: Winter Spring 

  Program SO - SRSophomore - Senior 16 16 Day FFall WWinter SSpring The computer is a tremendously useful tool. Is there anything it can't do? Through studying topics in advanced computer science, this program will explore what computers can do, how we get them to do it, and what computers still can't do. It is designed for advanced computer science students and students with an interest in both mathematics and computer science. Topics covered will include formal computer languages, systems of formal logic, computability theory, and programming language design and implementation. Students will also study a functional programming language, , learn the theoretical basis of programming languages and do an in-depth comparison of the properties and capabilities of languages in the four primary programming paradigms: functional, logic, imperative, and object-oriented. Program seminars will explore selected advanced topics in logic, language theory and computability. Topics will be organized around three interwoven themes. The theme will cover the theoretical basis of language definitions, concluding with a study of what is computable. The theme will cover traditional logic systems and their limits, concluding with some non-traditional logic systems and their applications to computer science. In the theme we will study both the theoretical basis and practical implementation of programming language definitions by comparing the implementations of the four programming language paradigms. Students will have an opportunity to conclude the program with a major project, such as a definition and implementation of a small programming language. computability theory, computer science, education, formal language theory, mathematical logic, mathematics, and programming language design. Sheryl Shulman Jeffrey Gordon Neal Nelson Sophomore SO Junior JR Senior SR Fall
Computer Science Foundations

Sheryl Shulman, Jeffrey Gordon and Neal Nelson

computer science consciousness studies mathematics 

Signature Required: Spring 

  Program FR - SRFreshmen - Senior 16 16 Day WWinter SSpring The goal of this program is to learn the intellectual concepts and skills that are essential for advanced work in computer science. Students will have the opportunity to achieve a deeper understanding of increasingly complex computing systems by acquiring knowledge and skills in mathematical abstraction, problem solving, and the organization and analysis of hardware and software systems. The program covers material such as algorithms, data structures, computer organization and architecture, logic, discrete mathematics and programming in a liberal arts computer science curriculum. In both quarters the program content will be organized around four interwoven themes. The theme covers concepts and structures of computing systems from digital logic to operating systems. The theme concentrates on learning how to design and code programs to solve problems. The theme helps develop mathematical reasoning, theoretical abstractions and problem solving skills needed for computer scientists. The theme explores social, historical or philosophical topics related to science and technology. Students who take the program Data and Information: Computational Linguistics in fall quarter, or who have equivalent experience, will be well prepared for this program. computer science and mathematics, including computer programming, discrete mathematics, algorithms, data structures, computer architecture, and topics in technology and society. Sheryl Shulman Jeffrey Gordon Neal Nelson Freshmen FR Sophomore SO Junior JR Senior SR Winter
Computers and Cognition

Ab Van Etten

computer science consciousness studies 

  Program FR - SRFreshmen - Senior 8 08 Evening SSpring What types of problems can be solved by computers? How do humans and computers differ in the types of problems they can solve? What is the future of computing, and will computers evolve an intelligence that includes what we would define as human thought? Can computers learn or create on their own? This program will explore the basics of computer science, how computers work, and their possibilities and limits. The program will include basic programming in Javascript, Web development, introductory computer electronics, and other computer science topics. We will contrast this with human cognition. We will then look at how computers will likely affect the way we live, work, and relate in the future.  In seminar we will explore the issues surrounding machine vs human consciousness and strong artificial intelligence. Ab Van Etten Tue Thu Freshmen FR Sophomore SO Junior JR Senior SR Spring
Data and Information: Computation and Language

Sheryl Shulman, Jeffrey Gordon and Neal Nelson

communications computer science language studies mathematics philosophy 

  Program FR - SRFreshmen - Senior 16 16 Day FFall Have you ever wondered how web searches work? It is often claimed that one can successfully search for web sites, maps, blogs, images...just by entering a few "key words". How do they do it? More generally, how can computers be programmed to interpret texts and data? This program will bring together faculty and students with interest and expertise in language and computer science with the goal of exploring these questions: When we (or Google's computers) read a text, how do we (or they) understand what the text means? We humans bring to our reading of the text three critical things: 1) knowledge of the language in which the text is written—its grammar and the meanings of the words, and how words are put together into sentences and paragraphs, 2) our understanding of how the world works and how humans communicate, and 3) our natural human intelligence. Even with these abilities, however, we often misinterpret text (or data) or are faced with too much information. The help a computer gives us, however, is sometimes different from how we naturally think about the words, images, maps or other information that we encounter. In this program we will explore how to use computing to understand language. Although the task is complex, an understanding of the abstract structure, logic and organization of language will guide us to successful computational processing of the more complex human languages. In logic, our work will include looking at the structure of words, sentences, and texts (syntax) as well as their meanings (semantics and reasoning). We will examine the underlying grammatical structure of language and its close connection to computing and computer programming. In addition, we will learn to program in Python and study how computers are used to "understand" texts and data. Lectures, seminar and case studies will examine how to make data from text and text or meaning from data. computer science, formal language study, mathematics, library science, information science and web development. Sheryl Shulman Jeffrey Gordon Neal Nelson Freshmen FR Sophomore SO Junior JR Senior SR Fall
Designing Languages cancelled

Susan Fiksdal and Brian Walter

communications computer science cultural studies international studies language studies linguistics writing 

Signature Required: Winter 

  Program FR - SRFreshmen - Senior 16 16 Day FFall WWinter Have you wondered about the ways languages work? How do our thoughts get translated into language? Have you explored differences between natural languages (such as English, Spanish, or French) and artificial languages (such as computer programming languages or Esperanto)? Do you know in what ways computer languages are similar to natural languages and the ways in which they differ? Are there differences between languages that have written records and those that do not? Have you ever invented your own language? In this two-quarter program, we will explore these questions by learning one natural language and one programming language, studying language evolution, artificial languages, language and culture, and designing a language. Specifically, you will study the structure and function of human language through an introduction to the field of linguistics. This will involve a study of phonetics, phonology, morphology, syntax, discourse, metaphor, and pragmatics. This work on language structure will inform your study of either French or Spanish, both of which will be taught within the program. Besides these natural languages, you will learn a programming language. We will work on the connections between natural and artificial languages, and consider the implications of language design. In our seminars we will discuss theories of language evolution and the interrelationship of culture and language. Finally, you will work collaboratively on a language design project over the two quarters, culminating in a final symposium on language design. Some students already at an intermediate level in French or Spanish should take the Evening/Weekend course fall and winter quarters. computer science, education, French, language and culture, law, linguistics, programming languages, Spanish, and writing. Susan Fiksdal Brian Walter Freshmen FR Sophomore SO Junior JR Senior SR Fall
Digital Audio and Music Composition

Arun Chandra

computer science music 

  Program FR - SRFreshmen - Senior 8 08 Day SuSummer This course will focus on using the computer to create and manipulate waveforms.  Students will learn how to use the "C" programming language to synthesize waveforms, while learning about their mathematical origins.  Students will create short compositions using FM, AM, granular, and other synthesis techniques.  We will listen to contemporary and historical experiments in sound synthesis and composition, and students will be asked to write a short paper on synthesis techniques.  Students will learn how to program in "C" under a Linux or OS X system. The overall emphasis of the class will be in learning how to address the computer in a spirit of play and experiment, and find out what composition can become.  There will be weekly readings in aesthetics, along with readings in synthesis techniques and programming.  Students of all levels of experience are welcome.    music composition and computer science Arun Chandra Mon Tue Wed Thu Freshmen FR Sophomore SO Junior JR Senior SR Summer
Geographic Information Systems Intern

Dylan Fischer and Rip Heminway

computer science ecology environmental studies geography 

Signature Required: Fall 

  Contract JR - SRJunior - Senior 16 16 Day FFall WWinter SSpring The GIS internship, based in the Computer Applications Lab, is focused on developing advanced knowledge and skills in spatial data management and analysis through development of campus GIS data, database administration, and the support of research projects such as the Evergreen Ecological Observation Network (EEON) project. Through this internship students will gain advanced understanding of working with GIS software, and specifically in using GIS for natural resource applications. Specific opportunities include working in detail with LiDAR data, high quality aerial images, assessing forest canopy structure, and identifying forest canopy type using GIS software and data. This intern will also build instructional and support skills by assisting in the instruction of GIS workshops and curricular programs. GIS, environmental studies, and computer science. Dylan Fischer Rip Heminway Junior JR Senior SR Fall
Individual Study: Legislative Processes, Regulatory Agencies and Environment

Cheri Lucas-Jennings

American studies communications community studies computer science cultural studies economics environmental studies gender and women's studies government health law and government policy law and public policy leadership studies media studies political science sustainability studies 

Signature Required: Spring 

  Contract JR - SRJunior - Senior 16 16 Day and Weekend SSpring Individual studies offers important opportunities for advanced students to create their own course of study and research. Prior to the beginning of the quarter, interested individuals or small groups of students must consult with the faculty sponsor to develop an outline of proposed projects to be described in an Individual Learning Contract. If students wish to gain internship experience they must secure the agreement and signature of a field supervisor prior to the initiation of the internship contract. This faculty wecomes internships and contracts in the areas of environmental health; health policy; public law; cultural studies; ethnic studies; the arts (including acrylic and oil painting, sculpture, or textiles); water policy and hydrolic systems; permaculture, economics of agriculture; toxins and brownfields; community planning, intranational relations. This opportunity is open to those who wish to continue with applied projects that seek to create social change in our community (as a result of work begun in fall 2010 and winter 2011 "Problems to Issues to Policies;" to those begining internship work at the State capitol who seek to expand their experience to public agencies and non-profit institutions; and to those interested in the study of low income populations and legal aid.  American studies, art, communications, community studies, cultural studies, environmental field studies, gender and women's health, history, law and government and public policy leadership Cheri Lucas-Jennings Junior JR Senior SR Spring
Individual Study: Mathematics, Computer Science

Brian Walter

computer science mathematics 

Signature Required: Spring 

  Contract SO - SRSophomore - Senior 4 04 Day SSpring Individual study offers students the opportunity to develop self-direction, to learn how to manage a personal project, and/or to learn how to learn technical material outside of the classroom.  Students interested in a self-directed project, research, or course of study in Mathematics or Computer Science are invited to present a proposal to Brian Walter for Spring Quarter 2011. Students with a lively sense of self-direction, discipline, and intellectual curiosity are strongly encouraged to apply. mathematics and computer science. Brian Walter Sophomore SO Junior JR Senior SR Spring
Natural Order

David McAvity

computer science mathematics physics 

  Program FR - SRFreshmen - Senior 16 16 Day WWinter The natural world is filled with a wonderful variety of forms and is shaped and transformed by complex interactions. Careful observation reveals that behind this complexity is an underlying order. The order manifests itself as spatial arrangements, such as spirals in shells, branching in rivers and hexagonal cells in beehives, and in temporal sequences, such as in patterns of growth, the interference of waves, and the motion of planets. In this program we will investigate the physical constraints and simple mathematical rules that make sense of this order. We will also explore the conditions under which this order is lost in the transition to chaos and randomness. The program will be structured around two main approaches to investigating order. First we will use nature as a guide to learn the mathematical methods for describing the patterns we see. Then we will learn the physical laws that give rise to order, from the clockwork universe of Newtonian dynamics to the strange world of quantum mechanics. In support of this study we will also learn how to model these natural phenomena by programming computer simulations. This program is introductory in nature and is well suited to students who want to investigate the mathematical and physical underpinnings of natural phenomena. Students of all background are welcome, but everyone should be prepared to spend a full quarter working with quantitative material in a spirit of curiosity and engaged inquiry. This program would serve as a good introduction and preparation for some of our foundation programs in mathematics and the sciences and for students interested in becoming teachers. teacher education, mathematics, and science. David McAvity Mon Mon Tue Tue Wed Thu Freshmen FR Sophomore SO Junior JR Senior SR Winter
Operating Systems Lab Intern

Rip Heminway and Sheryl Shulman

computer science mathematics 

Signature Required: Fall 

  Contract JR - SRJunior - Senior 16 16 Day FFall WWinter SSpring The Computer Science Intern develops skills in advanced topics of Computer Science through the coordination of the Operating Systems Lab (OSL). This intern develops advanced skills in operating systems, cluster computing, system administration and network topology design. The intern assists with lab coordination, hardware and software upgrades, creating instructional materials and lab documentation, and provides users with technical assistance. computer science and technology. Rip Heminway Sheryl Shulman Junior JR Senior SR Fall
Programming in C++ and Robotics

Richard Weiss

computer science 

  Program FR - SRFreshmen - Senior 8 08 Day SuSummer We will explore programming, image processing, and AI through robotics.  The robot we will use is the Scribbler by Parallax. Students will work on a project in groups after learning the basics about the robot.  They will also learn the fundamentals of programming in C++. This is ideal for students who have programmed in another language. Students will develop an understanding of concepts such as object-oriented programming, program design, problem solving, and pointers in C++. Computer Science Richard Weiss Mon Tue Wed Thu Freshmen FR Sophomore SO Junior JR Senior SR Summer
Undergraduate Research in Scientific Inquiry with D. McAvity

David McAvity

biology computer science mathematics 

Signature Required: Fall Winter Spring 

  Research SO - SRSophomore - Senior V V Day FFall WWinter SSpring Rigorous quantitative and qualitative research is an important component of academic learning in Scientific Inquiry. This independent learning opportunity allows advanced students to delve into real-world research with faculty who are currently engaged in specific projects. Students typically begin by working in apprenticeship with faculty or laboratory staff and gradually take on more independent projects within the context of the specific research program as they gain experience. Students can develop vital skills in research design, data acquisition and interpretation, written and oral communication, collaboration, and critical thinking that are valuable for students pursuing a graduate degree or entering the job market. (mathematics) is interested in problems in mathematical biology associated with population and evolutionary dynamics. Students working with him will help create computer simulations using agent-based modeling and cellular automata and analyzing non-linear models for the evolution of cooperative behavior in strategic multiplayer evolutionary games. Students should have a strong mathematics or computer science background theoretical biology, computer science, mathematics. David McAvity Sophomore SO Junior JR Senior SR Fall
Undergraduate Research in Scientific Inquiry with J. Cushing

Judith Cushing

computer science 

Signature Required: Fall Winter Spring 

  Research SO - SRSophomore - Senior V V Day FFall WWinter SSpring Rigorous quantitative and qualitative research is an important component of academic learning in Scientific Inquiry. This independent learning opportunity allows advanced students to delve into real-world research with faculty who are currently engaged in specific projects. Students typically begin by working in apprenticeship with faculty or laboratory staff and gradually take on more independent projects within the context of the specific research program as they gain experience. Students can develop vital skills in research design, data acquisition and interpretation, written and oral communication, collaboration, and critical thinking that are valuable for students pursuing a graduate degree or entering the job market. (computer science) studies how scientists might better use information technology in their research. She would like to work with students who have a background in computer science or one of the sciences (e.g., ecology, biology, chemistry or physics), and who are motivated to explore how new computing paradigms, such as object-oriented systems and new database technologies, can be harnessed to improve the individual and collaborative work of scientists. Judith Cushing Sophomore SO Junior JR Senior SR Fall
Undergraduate Research in Scientific Inquiry with N. Nelson

Neal Nelson

computer science 

Signature Required: Fall Winter Spring 

  Research SO - SRSophomore - Senior V V Day FFall WWinter SSpring Rigorous quantitative and qualitative research is an important component of academic learning in Scientific Inquiry. This independent learning opportunity allows advanced students to delve into real-world research with faculty who are currently engaged in specific projects. Students typically begin by working in apprenticeship with faculty or laboratory staff and gradually take on more independent projects within the context of the specific research program as they gain experience. Students can develop vital skills in research design, data acquisition and interpretation, written and oral communication, collaboration, and critical thinking that are valuable for students pursuing a graduate degree or entering the job market. (computer science)is interested in working with advanced computer topics and current problems in the application of computing to the sciences. His areas of interest include simulations of advanced architectures for distributed computing, advanced programming languages and compilers, programming languages for concurrent and parallel computing, and hardware modeling languages. Neal Nelson Sophomore SO Junior JR Senior SR Fall
Undergraduate Research in Scientific Inquiry with R. Weiss

Richard Weiss

computer science mathematics physics 

Signature Required: Fall Winter Spring 

  Research SO - SRSophomore - Senior V V Day FFall WWinter SSpring Rigorous quantitative and qualitative research is an important component of academic learning in Scientific Inquiry. This independent learning opportunity allows advanced students to delve into real-world research with faculty who are currently engaged in specific projects. Students typically begin by working in apprenticeship with faculty or laboratory staff and gradually take on more independent projects within the context of the specific research program as they gain experience. Students can develop vital skills in research design, data acquisition and interpretation, written and oral communication, collaboration, and critical thinking that are valuable for students pursuing a graduate degree or entering the job market. (computer science and mathematics) has several ongoing projects in computer architecture, vision, robotics, artificial intelligence and security. One of his projects in computer vision is recovering three-dimensional information from multiple images. He is also interested in applying machine learning to visual recognition problems, including facial expressions. One of the computer architecture problems that he has worked on is the simulation of hardware faults and techniques for fault correction. In addition, he is open to working with students who have their own ideas for projects in these and related areas.  Richard Weiss Sophomore SO Junior JR Senior SR Fall
Undergraduate Research in Scientific Inquiry with S. Shulman

Sheryl Shulman

computer science 

Signature Required: Fall Winter Spring 

  Research SO - SRSophomore - Senior V V Day FFall WWinter SSpring Rigorous quantitative and qualitative research is an important component of academic learning in Scientific Inquiry. This independent learning opportunity allows advanced students to delve into real-world research with faculty who are currently engaged in specific projects. Students typically begin by working in apprenticeship with faculty or laboratory staff and gradually take on more independent projects within the context of the specific research program as they gain experience. Students can develop vital skills in research design, data acquisition and interpretation, written and oral communication, collaboration, and critical thinking that are valuable for students pursuing a graduate degree or entering the job market. (computer science) isinterested in working with advanced computer topics and current problems in the application of computing to the sciences. Her areas of interest include simulations of advanced architectures for distributed computing, advanced programming languages and compilers, programming languages for concurrent and parallel computing, and hardware modeling languages. Sheryl Shulman Sophomore SO Junior JR Senior SR Fall
Web Design

Arlen Speights

computer science media arts 

  Course FR - SRFreshmen - Senior 4 04 Evening SuSummer This course is an introduction to HTML and CSS coding. We'll learn best practices for creating web page layouts. We'll briefly use graphics programs to create images for the web, and we'll get acquainted with how hand-coded web design is used in templates for generated content like blogs. Arlen Speights Mon Wed Freshmen FR Sophomore SO Junior JR Senior SR Summer
Web Scripting with Javascript

Arlen Speights

computer science media arts 

  Course FR - SRFreshmen - Senior 4 04 Evening SuSummer This course is an introduction to Document Object Model (DOM) scripting, using Javascript and CSS. We'll learn how to sort out the DOM and how to code interactivity and responsiveness, using best practices for accessibility and cross-browser compatibility. Arlen Speights Tue Thu Freshmen FR Sophomore SO Junior JR Senior SR Summer