19384

CMSC 112 Introduction to Computer Science: Graphics and Animation

Melvin Chen

. T . Th .

9:00 am 10:20 am

RKC 100

MATC

This course provides an introduction to the use of computer programming for creating and displaying a wide variety of objects, patterns, and digital images.  Students will learn to use a programming language and graphics interface to write algorithms that represent and render two-dimensional and three-dimensional geometrical objects, beginning with points and lines and extending three-dimensional solids.  Topics will include applied geometry, coordinate transformations, projection, perspective, object modeling, and basic animation. Prerequisite: MATH 110 Precalculus, eligibility for Q courses.

 

19336

CMSC 113 Introduction to Computing: Robotics

Rebecca Thomas

. T . Th .

10:30 -12:30 pm

RKC 107

MATC

Cross-listed: Cognitive Science This course introduces students to ideas that are fundamental to robotics and to computing in general. Teams of students will design and build shoebox-sized robots, with guidance from the instructor. These rather minimalist robots will be mobile and will have multiple sensors. The student teams will use a simple programming language to program their robots to carry out simple tasks, and will move to a more robust programming language and more complex tasks by the end of the semester. Prerequisite: successful completion of Q exam.

 

19337

CMSC 141 Object Oriented Programming

Sven Anderson

M . W . .

9:00 -10:20 am

RKC 100

MATC

 

 

 

LAB: F

9:00 -11:00 am

RKC 100

MATC

Cross-listed: Cognitive Science Creating computer software typically begins with an informal problem statement and perhaps a vague idea for a solution, and proceeds through progressive refinement of both our understanding of what the problem is and our understanding of how to solve it. In object-oriented programming, these two kinds of refinement often mesh as we design and build software objects that model important aspects of the problem and of its solution. This course, which is intended for students with prior programming experience, introduces students to the methodology of object-oriented design and development via guided student work, solving interesting problems drawn from such arenas as graphics and animation, simulation, and/or Internet applications. Good programming and documentation habits are emphasized. Prerequisite: any Introduction to Computing course or permission of the instructor.

 

19385

CMSC 242 Discrete Mathematics

Sven Anderson

. T . Th .

10:30 -11:50 am

RKC 101

MATC

This course will examine the field of discrete mathematics, especially the areas of importance in computer science, such as algorithms, combinatorics, probability, and graph theory. Equal time will be given to theory, computation, and applications.  Prerequisites: Math 110 or permission of the instructor.

 

19332

CMSC / MATH 303 Computational Geometry

Mary Krembs

. T . . .

1:00 pm -2:20 pm

RKC 100

MATC

See Mathematics section for description.

 

19588

PSY / CMSC 308 Seminar in Cognitive Science

Barbara Luka /

Sven Anderson

. . W . .

7:00 -9:00 pm

RKC 101

N/A

Cross-listed: Philosophy (2 credits)   Juniors and seniors concentrating in cognitive science are strongly urged to take this two-credit course.  Each student will present research in progress or a significant paper from the current literature.   The purpose of the seminar is to help students become familiar with a cross-section of current cognitive science research, including topics from cognitive psychology, neuroscience, computational modeling, philosophy of mind, linguistics, music cognition, and artificial intelligence.   In addition to helping juniors select a senior project topic, the seminar is intended to enhance communication among seniors about their research projects. Prerequisite: permission of the instructors. (Can be taken no more than twice for credit.)

 

19338

CMSC 312 Theory of Computation

Rebecca Thomas

M . . . F

3:00 pm -4:20 pm

RKC 111

MATC

The course will introduce several computational models that have been developed to formalize the notion of an algorithm. It will also discuss in detail several of the primary topics in the theory of computation including the theory of recursive functions, Turing machines, and several undecidable problems such as the Halting problem. Prerequisites: Computer Science 301 and Mathematics 231/ 235.

 

19386

CMSC 322 Graphics

Mary Krembs

. T . Th .

2:30 pm -3:50 pm

RKC 100

MATC

 

 

 

LAB: F

1:00 pm -3:00 pm

RKC 100

MATC

Computer graphics have become ubiquitous in today's society, from magazine ads to movies to video games.  In this course students explore the basic algorithms used to create and manipulate two- and three-dimensional graphic objects.  Among the topics covered are coordinate transformations, projection, hidden surfaces, shading, ray tracing, and texture mapping.  A strong mathematical and programming background is necessary. Prerequisites: Mathematics 242 or 331, Computer Science 201 and permission of the instructor.