| COMPUTER SCIENCE |
| Note: Text highlighted
in red indicates that a change
has been made to the course listing. The red
text indicates the current, updated information. |
| 600.101 (E) |
COMPUTER
FLUENCY (4)
Houlahan Limit 15 per section This
course replaces the older version 600.101 Computer Literacy, and
will incorporate some topics from 600.113 Internet as well. Students
will become fluent with information technology through coverage
of basic underlying concepts and use of common applications. Concepts
will include the building blocks of computer systems and software,
as well as historical perspectives and social implications. Students
will learn basic and selected advanced skills with MS Office (word
processing, spreadsheets, presentations, databases), as well as
webpage design with programming in JavaScript, and unix operating
system basics. The goal is to empower students so that they remain
skilled computer users and will have confidence and success learning
and applying new technologies on their own in the future. |
Lec.
Sec. 01
02
03
04 |
MTW 11
Th 8 W 12
W 1
Th 9
F 10 |
| 600.102 (E)
|
CS FOUNDATIONS (4)
Froehlich Limit 15 per section Prereq: 600.101 or equiv. knowledge [Students
who previously may have taken 600.103 Intro to CS or 600.113 Internet
should consider this course instead.] This course is an introduction
to computer science for majors and non-majors. Students are exposed
to the discipline through vignettes of logic and algebra, computer
systems and networks, algorithms, programming languages, computation
theory, and selected applications. CS majors can only take
this course in their first year of CS coursework. Course canceled 5/05/06
|
Lec.
Sec. 01
02
|
MTW 1
Th 10
F 9
|
| 600.105 (E) |
M
& Ms: FRESHMEN EXPERIENCE (1) Houlahan Limit 20 Satisfactory/ Unsatisfactory only CS Freshman
only
This course is required for all freshmen
Computer Science majors. Transfers into the major and minors may
enroll by permission only. Students will attend three 4-week blocks
of meetings with different computer science professors, focused
on a central theme. Active participation is required. |
Sec. 01 |
Th 4 |
| 600.107 (E) |
INTRODUCTION
TO PROGRAMMING IN JAVA (3) Houlahan Limit 120. Prereq:
familiarity with computers This course introduces the fundamental
programming concepts and techniques in Java and is intended for
all who plan to use computer programming in their studies and
careers. Topics covered include control structures, arrays, functions,
recursion, dynamic memory allocation, simple data structures,
files, and structured program design. Elements of object-oriented
design and programming are also introduced. Students without experience
are strongly advised to also take 600.108. |
Sec. 01 |
MTW 3 |
| 600.108 (E) |
INTRODUCTORY
PROGRAMMING LAB (1)
Houlahan Satisfactory/Unsatisfactory
Limit 12 per section Coreq: 600.107
The purpose of this course is to give novice programmers extra
hands-on practice with guided supervision. Students will work
in pairs each week to develop working programs, with checkpoints
for each development phase. |
Sec. 01
02
|
W 5-8pm
Th 6-9pm 1-4 |
| 600.120
(E) |
INTERMEDIATE PROGRAMMING (4) Froehlich
Limit 25 per section Prereq: 600.107
or 600.109 This course covers
intermediate to advanced programming in both C and C++. The focus
of the course is on programming techniques, class design, and
the use of class libraries. Topics to be covered include: polymorphism,
overloading, inheritance, pointers, dynamic memory allocation,
templates, collections, exceptions, and others as time permits.
Students are expected to learn syntax and low-level language features
independently. Coursework involves significant programming projects
in both languages. |
Lec.
Sec. 01
02 |
MTW 2
Th 12
F 1 |
| 600.226 (E,Q) |
DATA
STRUCTURES (3)
Froehlich Limit 40 Prereq:
600.107 or 600.109 This course covers
the design and implementation of data structures including collections,
sequences, trees, and graphs. Other topics include sorting, searching,
and hashing. Course work involves both written homework and Java
programming assignments.
|
Sec. 01 |
ThF 2:30-3:45 |
| 600.271 (E,Q) |
AUTOMATA
& COMPUTATION THEORY (3) Kosaraju Limit 60
This course is an introduction to the theory of computing. Topics
include design of finite state automata, pushdown automata, linear
bounded automata, Turing machines and phrase structure grammars;
correspondence between automata and grammars; computable functions,
decidable and undecidable problems, P and NP problems, NP-completeness,
and randomization. |
Sec. 01 |
MTW 1 |
| 600.315
(E) |
DATABASE SYSTEMS (3) Yarowsky Limit 35 Prereq: 600.226
Students receive credit for 600.315 or 600.415, but not
both Introduction to database management
systems and database design, focusing on the relational and object-oriented
data models, query languages and query optimization, transaction
processing, parallel and distributed databases, recovery and security
issues, commercial systems and case studies, heterogeneous and
multimedia databases, and data mining. |
Sec. 01 |
ThF 2:30-3:45 |
| 600.321 (E) |
OBJECT ORIENTED SOFTWARE ENGINEERING (3) Smith Limit 30
Prereq: 600.226 and 600.120/121 Students receive credit for
600.321 or 600.421, but not both This course covers object-oriented software construction
methodologies and their application. The main component of the
course is a large team project on a topic of your choosing. Course
topics covered include object-oriented analysis and design, UML,
design patterns, refactoring, program testing, code repositories,
team programming, and code reviews. |
Sec. 01 |
ThF 1-2:15 |
| 600.324 (E) |
NETWORK
SECURITY (3) Monrose
Limit
20 Prereq: 600.344/444 and 600.226. 600.120 (or equivalent)
and 600.349/449 recommended. Students may receive credit for 600.324
or 600.424, not both. This course focuses on communication
security in computer systems and networks. The course is intended
to provide students with an introduction to the field of network
security. The course covers network security services such as
authentication and access control, integrity and confidentiality
of data, firewalls and related technologies, web security, anonymity,
and privacy. Course work involves implementing various security
techniques. A course project is required.
|
Sec. 01 |
MW 2-3:15 |
| 600.333 (E) |
COMPUTER
SYSTEM FUNDAMENTALS (3) Masson Limit 50 Prereq: 600.107/600.109
Students may receive credit for 600.333 or 600.433, but
not both. CSF addresses the design
and performance of the principal operational components of a reduced-instruction-set
computing system (RISC) which supports the efficient execution
of widely used instruction sets. Arithmetic and logic units, memory
hierarchy designs, state-machine controllers, and other related
hardware and firmware components are studied, and the qualities
of their combined processing capabilities are assessed by means
of execution times associated with a range of benchmark programs.
Assembly language programming projects, homework problems, and
exams are employed to assess a student's fundamental understanding
of the tradeoffs resulting from an assortment of variations in
digital system design decisions that ultimately characterize the
performance of the computing system architecture that is developed.
|
Sec. 01 |
MTW 10 |
| 600.337 (E) |
DISTRIBUTED SYSTEMS (3) Amir Limit 30 Prereq: 600.120/121, 600.226;
600.211 recommended. Students may receive credit for 600.337 or
600.437, but not both. This course teaches how to design
and implement protocols that enable processes to exchange information,
cooperate, and coordinate efficiently in a consistent manner over
a computer network. Topics include communication protocols, group
communication, distributed databases, distributed operating systems,
and security. |
Sec. 01 |
M 3
W 3-5 |
| 600.349 (E) |
INTERNET
PROTOCOLS (3) Terzis
Limit
20 Prereq: 600.120 & 600.344/444 Recommended: 600.211 Students may receive credit for 600.349 or
600.449, but not both. This course covers the most important
Internet protocols in detail. The goal is to get a solid technical
understanding of the Internet's foundations and a concrete example
of complete network protocol family. The course material will
be taken from the textbook but the students will also be required
to read the actual protocol specifications (RFCs). A major part
of this course is the two group projects where students are going
to implement realistic network protocols. In addition to the projects,
there will be homework assignments, a midterm and a final. |
Sec. 01 |
ThF 2:30-3:45 |
| 600.361 (E,Q) |
COMPUTER
VISION (3)
Hager Limit 30 Prereq: 600.226 This course
gives an overview of fundamental methods in computer vision from
a computational perspective. Methods include computation of 3-D
geometric constraints from binocular stereo, motion, texture,
shape-from-shading, and photometric stereo. E dge detection and
color perception are studied as well. Elements of machine vision
and biological vision are also included. Students may
receive credit for 600.361 OR 600.461 - not both. Course
added 5/05/06 |
Sec. 01 |
ThF 9-10:15 |
| 600.363 (E,Q) |
INTRODUCTION
TO ALGORITHMS (3)
Awerbuch Limit 30 Prereq: 600.226 or Perm.
Req’d. Students may receive credit for 600.363 or 600.463,
but not both. This course concentrates
on the design of algorithms and the rigorous analysis of their
efficiency. Topics include the basic definitions of algorithmic
complexity (worst case, average case); basic tools such as dynamic
programming, sorting, searching, and selection; advanced data
structures and their applications (such as union-find); graph
algorithms and searching techniques such as minimum spanning trees,
depth-first search, shortest paths, design of online algorithms
and competitive analysis. |
Sec. 01 |
MTW 9 |
| 600.392 (E) |
SENIOR
DESIGN PROJECT (3) Froehlich Limit 30 Prereq:
600.120, 600.226; 600.321 recommended. This
course will give senior CS majors an intensive capstone design
project experience. Students will work in groups with real world
customers to develop a working system. Project design, management
and communication skills will be emphasized. Software development
methodologies may also be presented. [General] |
Sec. 01 |
MTW 4 |
| 600.415
(E) |
DATABASE SYSTEMS (3) Yarowsky Prereq:
600.226 Limit 30 Students may receive credit for 600.315
or 600.415, but not both. Graduate level version of 600.315
Cross listed with Information Security Institute |
Sec. 01 |
ThF 2:30-3:45 |
| 600.421 (E) |
OBJECT ORIENTED SOFTWARE ENGINEERING (3) Smith Limit 30
Prereq: 600.226 and 600.120/121 Students may receive credit
for 600.321 or 600.421, but not both. Graduate level version
of 600.321. Cross listed with Information Security Institute |
Sec. 01 |
ThF 1-2:15 |
| 600.424 (E) |
NETWORK SECURITY (3) Monrose Limit 20 CS Graduate students
only Prereq: 600.344/444 and 600.226. 600.120 (or equivalent)
and 600.349/449 recommended. Students may receive credit for 600.324
or 600.424, not both. Graduate level version of 600.324.
Cross listed with Information Security Institute
|
Sec. 01 |
MW 2-3:15 |
| 600.433 (E) |
COMPUTER
SYSTEMS (3) Masson Limit 50 Students may
receive credit for 600.333 or 600.433, but not both. Graduate
version of 600.333.
Cross listed with Information Security Institute |
Sec. 01 |
MTW 10 |
| 600.437 (E) |
DISTRIBUTED
SYSTEMS (3) Amir Limit 30 Graduate version
of 600.337. Students may receive credit for 600.337 or 600.437,
but not both. |
Sec. 01 |
M 3, W 3-5 |
| 600.442 (E,Q) |
CRYPTOGRAPHY AND NETWORK SECURITY (3) Ateniese Limit 20 Prereq: 600.226 and 300-level or above
systems course; 600.271 and 550.171 or equivalent. This course
focuses on algorithms and protocols for secure network communication.
Topics include cryptographic algorithms (DES, Diffie-Hellman,
RSA), authentication, key management, secure networking, certification,
trust management, and secure electronic commerce.
Cross listed with Information Security Institute |
Sec. 01 |
ThF 1-2:15 |
| 600.445
(E) |
COMPUTER - INTEGRATED SURGERY I (4) Taylor Limit 40 Prereq: 600.120,
600.226 and linear algebra. Recmd: 600.457, 600.461, image processing
This course focuses on computer-based
techniques, systems, and applications exploiting quantitative
information from medical images and sensors to assist clinicians
in all phases of treatment from diagnosis to preoperative planning,
execution, and follow-up. It emphasizes the relationship between
problem definition, computer-based technology, and clinical application
and includes a number of guest lectures given by surgeons and
other experts on requirements and opportunities in particular
clinical areas. |
Sec. 01 |
ThF 1-2:15 |
| 600.449 (E) |
INTERNET
PROTOCOLS (3)
Terzis Limit 30 Prerequisites:
600.120 and 600.344/600.444. 600.211 is recommended Students receive credit for 600.349 or
600.449 but not both. Graduate version of 600.349
Cross listed with Information Security Institute |
Sec. 01 |
ThF 2:30-3:45 |
| 600.461 (E,Q) |
COMPUTER
VISION (3)
Hager Limit 50 30 60
Prereq: 600.226 This
course gives an overview of fundamental methods in computer vision
from a computational perspective. Methods include computation
of 3-D geometric constraints from binocular stereo, motion, texture,
shape-from-shading, and photometric stereo. Edge detection and
color perception are studied as well. Elements of machine vision
and biological vision are also included. |
Sec. 01 |
ThF 9-10:15 |
| 600.462 (E) |
ADVANCED
TOPICS IN COMPUTER VISION (3) Vidal Prereq: 600.461 and linear algebra or instructor's
permission. State-of-the-art methods in dynamic vision, with an
emphasis on segmentation, reconstruction and recognition of static
and dynamic scenes. Topics include: reconstruction of static scenes
(tracking and correspondence, multiple view geometry, self calibration),
reconstruction of dynamic scenes (2-D and 3-D motion sementation,
nonrigid motion analysis), recognition of visual dynamics (dynamic
textures, face and hand gestures, human gaits, crowd motion analysis),
as well as geometric and statistical methods for clustering and
unsupervised learning, such as K-means, Expectation Maximization,
and Generalized Principal Component Analysis. Applications in
robotics and biomedical imaging are also included. Co-listed
with 580.464 Course added 4/05/06 |
Sec. 01 |
TTh 4:30-6pm |
| 600.463 (E,Q) |
ALGORITHMS
I (3)
Awerbuch Limit 30 Prereq:
600.226 or Perm. Req'd. Students may receive credit for 600.463 or
600.363, but not both Graduate version of 600.363.Cross listed
with Information Security Institute |
Sec. 01 |
MTW 9 |
| 600.465 (E) |
NATURAL LANGUAGE PROCESSING (3) Eisner Limit 60
Prereq: 600.226 Previous exposure to probability or linguistics
may be helpful. This course is an in-depth overview of techniques
for processing human language. How should linguistic structure
and meaning be represented? What algorithms can recover them from
text? And crucially, how can we build statistical models to choose
among the many legal answers? The course covers methods for trees
(parsing and semantic interpretation), sequences (finite-state
transduction such as morphology), and words (sense and phrase
induction), with applications to practical engineering tasks such
as information retrieval and extraction, text classificati1on,
part-of-speech tagging, speech recognition and machine translation.
There are a number of structured but challenging programming assignments. |
Sec. 01 |
MTW 2 |
| 600.491 (E) |
COMPUTER
SCIENCE WORKSHOP I An applications-oriented,
computer science project done under the supervision and with the
sponsorship of a faculty member in the Department of Computer
Science. Perm. of faculty supervisor req'd
Sec.01 – Masson
Sec.02 – Kosaraju
Sec.03 – Awerbuch
Sec.04 – Taylor
Sec.05 – Smith
Sec.06 – Houlahan
Sec.07 – Lehmann
Sec.08 – Salzberg
Sec.09 – Hager
Sec.10 – Chirikjian
Sec.11 – Kumar
Sec.12 – Amir
Sec.13 – Yarowsky
Sec.14 – Cohen
Sec.15 – Burns
Sec.16 – Eisner
Sec.17 – Shapiro
Sec.18 – Scheideler
Sec.19 – Stanton
Sec.20 – Ateniese
Sec.21 – Rubin
Sec.22 – Monrose
Sec.23 – Terzis
Sec.24 – Scheinerman
Sec.25 – Winslow
Sec.26 – Kazhdan
Sec.27 – Jelinek
Sec.28 – Froehlich
Sec.29 – Szalay
|
|
|
| 600.501 |
INDEPENDENT
STUDY (FRESHMEN, SOPHOMORES) Individual, guided study
under the direction of a faculty member in the department. The
program of study, including the credit to be assigned, must be
worked out in advance between the student and the faculty member
involved. Permission required. See 600.491 for faculty section
numbers
|
|
|
| 600.503 |
INDEPENDENT
STUDY (JUNIORS, SENIORS) Individual guided study under the direction
of a faculty member in the department. The program of study, including
the credit to be assigned, must be worked out in advance between
the student and the faculty member involved. Permission required.
See 600.491 for faculty section numbers. |
|
|
| 600.507 |
INDEPENDENT RESEARCH Individual research
under the direction of a faculty member in the department. The
program of research, including the credit to be assigned, must
be worked out in advance between the student and the faculty member
involved. Permission required. See 600.491 for faculty section
numbers. |
|
|
| 600.509 |
COMPUTER SCIENCE INTERNSHIP Individual work in the
field with a learning component, supervised by a faculty member
in the department. The program of study and credit assigned must
be worked out in advance between the student and the faculty member
involved. Students may not receive credit for work that they are
paid to do. As a rule of thumb, 40 hours of work is equivalent
to one credit. Perm. Req’d. See 600.491 for faculty section numbers
|
|
|
| 600.519 |
SENIOR
HONOR THESIS (3) Prereq:
3.5 GPA in C.S. courses at end of junior year and permission of
faculty sponsor - C.S. majors only - See 600.491 for faculty section
numbers. The student will undertake a substantial independent
research project under the supervision of a faculty member, potentially
leading to the notation "Departmental Honors with Thesis"
on the final transcript. Students are expected to enroll in both
semesters of this course during their senior year. Project proposals
must be submitted and accepted in the preceding spring semester
(junior year) before registration. Students will present their
work publicly before April 1st of senior year. They will also
submit a first draft of their project report (thesis document)
at that time. Faculty will meet to decide if the thesis will be
accepted for honors. |
|
|
| 600.546 |
SENIOR
THESIS IN COMPUTER INTEGRATED SURGERY Taylor Prereq: 600.445 or Perm. Req’d. |
Sec. 01 |
TBA |
| 600.601 |
COMPUTER SCIENCE SEMINAR Eisner
Required for all full-time
CS Graduate students Limit 150 |
Sec. 01 |
ThF 10:30-12 |
| 600.619 |
ADVANCED
STORAGE & TRANSACTION PROCESSING SYSTEMS Burns Limit 20
Prereq: 600.419 or permission of instructor In this course,
we will examine advanced research topics in storage systems, file
systems, transaction processing, and network data management.
The readings are taken from the current research literature and
articles of historical significance. This course is intended for
graduate students interested in conducting research on or related
to these topics and for students who face management, availability
or performance issues with data in their own research. Students
will conduct a semester long research project and present their
results to the class. In addition to the scheduled meetings, students
will have weekly one-on-one meetings with the professor. [Systems]
|
Sec. 01 |
MW 1 |
| 600.643 |
ADVANCED
TOPICS IN COMPUTER SECURITY Rubin Limit
20 Prereq:
Any 400-level course in Security, including 600.442/443/424 or
Perm. Req’d. Topics will vary from year to year, but will focus
mainly on network perimeter protection, host-level protection,
authentication technologies, intellectual property protection,
formal analysis techniques, intrusion detection and similarly
advanced subjects. Emphasis in this course is on understanding
how security issues impact real systems, while maintaining an
appreciation for grounding the work in fundamental science. Students
will study and present various advanced research papers to the
class. There will be homework assignments and a course project.
[Systems or Applications]
Cross listed with Information Security Institute |
Sec. 01 |
ThF 2:30-3:45 |
| 600.651 |
HAPTIC
SYSTEMS FOR TELEOPERATION AND VIRTUAL REALITY Okamura Limit 40 Open
to Undergraduates with permission Graduate-level
introduction to the field of haptics, focusing on teleoperated
and virtual environments that are displayed through the sense
of touch. Topics covered include human haptic sensing and control,
design of haptic interfaces (tactile and force), haptics for teleoperation,
haptic rendering and modeling of virtual environments, control
and stability issues, and medical applications such as tele-surgery
and surgical simulation. Course work includes reading and discussion
of research papers, presentations, and a final project. Appropriate
for students in any engineering discipline with interests in robotics,
virtual reality, or computer-integrated surgical systems. Co-listed with 530.651
|
Sec. 01 |
MTW 11 |
| 600.660 |
FFT IN GRAPHICS AND VISION Kazhdan Limit 20 Prereq: Linear Algebra and comfort
with mathematical derivations In this course,
we will study the Fourier Transform from the perspective of representation
theory. We will begin by considering the standard transform defined
by the commutative group of rotations in 2D and translations in
two- and three-dimensions, and will proceed to the Fourier Transform
of the non-commutative group of 3D rotations. Subjects covered
will include correlation of images, shape matching, computation
of invariances, and symmetry detection. [Applications or Analysis] |
Sec. 01 |
MW 2-3:15 |
| 600.726 |
SEMINAR IN PROGRAMMING LANGUAGES Smith Perm.Req’d This seminar course
covers recent developments in the foundations of programming language
design and implementation. Topics covered vary from year to year.
Students will present papers orally. |
Sec. 01 |
W 11 |
| 600.745 |
SEMINAR IN COMPUTER INTEGRATED
SURGERY Fichtinger This weekly seminar will focus on research issues in computer-integrated
surgery, including subjects such as medical image analysis, statistical
modeling, visualization, vision/sensing, surgical planning, medical
robotics, and clinical applications. The purpose of the course
is to widen the knowledge and awareness of the participants in
current research in these areas, as well as to promote greater
awareness and interaction between multiple research groups within
the University and beyond. The format of the course is informal
presentation by a pre-eminent invited speaker, followed by free
discussion. |
Sec. 01 |
W 12-1:30 |
| 600.757 |
SEMINAR IN COMPUTER GRAPHICS Kazhdan Permission
Req'd. In this course we will review current research in computer graphics.
We will meet for an hour once a week and one of the participants
will lead the discussion for the week. |
Sec. 01 |
TBA |
| 600.765 |
SEMINAR IN NATURAL LANGUAGE PROCESSING
Eisner A reading group exploring
important current research in the field and potentially relevant
material from related fields. Enrolled students are expected to
present papers and lead discussion. Pass/Fail only |
Sec. 01 |
Th 4 |
| 600.801 |
DISSERTATION
RESEARCH
See 600.809 for faculty section numbers |
|
|
| 600.803 |
GRADUATE
RESEARCH Permission
of faculty supervisor req’d. Independent research for masters
or pre-dissertation PhD students. See 600.809 for faculty section
numbers |
|
|
| 600.809 |
INDEPENDENT
STUDY (graduate students) Permission required
Sec.01
– Masson
Sec.02 – Kosaraju
Sec.03 – Awerbuch
Sec.04 – Taylor
Sec.05 – Smith
Sec.06 – Houlahan
Sec.07 – Lehmann
Sec.08 – Sheppard Salzberg
Sec.09 – Hager
Sec.10 – Chirikjian
Sec.11 – Khudanpur Kumar
Sec.12 – Amir
Sec.13 – Yarowsky
Sec.14 – Cohen
Sec.15 – Burns
Sec.16 – Eisner
Sec.17 – Shapiro
Sec.18 – Scheideler
Sec.19 – Stanton
Sec.20 – Ateniese
Sec.21 – Rubin
Sec.22 – Monrose
Sec.23 – Terzis
Sec.24 – Scheinerman
Sec.25 – Winslow
Sec.26 – Kazhdan
Sec.27 – Jelinek
Sec.28 – Froehlich
Sec.29 – Szalay
|
|
|