Computer Science and Engineering (CSE)
OFFICES:
Undergraduate Affairs 3402
Graduate Affairs 3402
Applied Physics and Mathematics Building, Muir College
http://www.cs.ucsd.edu
Professors
Courses
The Undergraduate Programs
The Department of Computer Science and Engineering offers computer science
and computer engineering curricula leading to the degrees in B.S. in Computer
Science, B.S. In Computer Engineering, B.A. In Computer Science, and B.S.
In Computer Science with a specialization in Bioinformatics. The courses
of study prepare students for graduate study in these fields as well as
immediate employment. The B.A. degree is intended to provide a more flexible
program of study allowing significant studies beyond computer science
and engineering.
These degrees are four-year endeavors. Students in the B.S. programs
need to enroll in no more than sixteen units per quarter during their
junior and senior years to meet their major requirements. The B.A. program
has fewer major requirements. In addition, each student must satisfy general-education
course requirements determined by the students college.
B.S. Computer Science Program
The lower-division B.S. computer science program is designed to provide
a strong foundation in mathematics, physics, electrical engineering, programming
methodology and skills, and computer organization. Upper-division core
courses deal with the theory and design of algorithms, hardware, and software.
Students can gain additional breadth and/or depth in computer science
and engineering by an appropriate selection of technical electives.
Students should have sufficient background in high school mathematics
so that they can take freshman calculus in their first quarter. Courses
in high school physics and computer programming, although helpful, are
not required for admission to the program.
The department requires a total of 134 units for the B.S. Computer science
program (not including the general-education requirements). There are
three varieties of requirements: lower-division, upper-division, and technical
electives.
1. Lower-Division Requirements
Students are expected to complete the following seventy units by the
end of their sophomore year.
Computer Science and Engineering: CSE 8B or 11, 12, 20 or Math.
15A, CSE 21 or Math. 15B, and CSE 30; twenty units.
Note: Students without any programming experience are advised
to take CSE 8A and then CSE 8B, instead of CSE 11. CSE 11 is a faster
paced version of CSE 8A and CSE 8B, and requires experience in programming
with a compiled language.
Mathematics: Math. 20A-B-C-D and 20F; twenty units.
Physics: Phys. 2A-B-C; 12 units. Math. 20A is a prerequisite for
Phys. 2A. Students whose performance on the Department of Mathematics
placement test permits them to start with Math. 20B or a higher course
may take Phys. 2A in the fall quarter of the freshman year; all others
will take Phys. 2A in the winter quarter of the freshman year. Students
who received high grades in both calculus and Physics in high school may
substitute the majors sequence, Phys. 4A-B-C for Phys. 2A-B-C.
Physics Lab: Phys. 2BL or 2CL or 2DL; two units. The lab course
should be taken concurrently with the Phys. 2 or Phys. 4 sequence.
Introduction to Electrical Engineering: ECE 53A-B; eight units.
ECE 53A-B are courses that give a comprehensive introduction to electrical
engineering.
Probability and Statistics: Math.183; four units.
Science/Mathematics Elective: Students are required to take one
of the following four-unit science/mathematics courses: Phys. 2D, Math.
20E(2F), Chem. 6A, BILD 1, 10, 12, 14, 30.
2. Upper-Division Requirements
All B.S. Computer science students are required to take CSE 100 or Math.
176, CSE 101 or Math. 188, CSE 105 or Math. 166, CSE 120, 130, 131A-B,
140, 140L, 141 and 141L; forty units.
Students are expected to complete almost all of these courses by the
end of their junior year. If students want to accelerate their program,
they should consider taking CSE 100 or Math. 176, CSE 105, and/or CSE
140 and 140L in the sophomore year.
3. Technical Electives
B.S. Computer science students are required to take six technical electives
for a total of twenty-four units. Four electives must be computer science
and engineering upper-division or graduate courses.
The remaining two technical electives can be chosen from the wider set
of courses that includes computer science and engineering upper-division
courses, graduate courses, and other electives as listed under the section
titled Electives. Other restrictions in the selection of technical
electives are also given in the section Electives.
4. B.S. Computer Science, Sample Program
FALL
|
WINTER
|
SPRING
|
|
FRESHMAN YEAR
|
|
|
CSE 8A or CSE 11
|
CSE 12
|
CSE 20 or Math. 15A
|
Math. 20A
|
Math. 20B
|
Math. 20C
|
GE
|
Phys. 2A
|
Phys. 2B
|
|
GE
|
GE
|
|
SOPHOMORE YEAR
|
|
|
CSE 21 or Math. 15B
|
Sci/Math. Elec.
|
CSE 30
|
Math. 20D
|
Math. 20F
|
Math. 183
|
GE
|
ECE 53A
|
Phys. 2BL or 2CL or 2DL
|
GE
|
Phys. 2C
|
ECE 53B
|
|
JUNIOR YEAR
|
|
|
CSE 100 or Math. 176
|
CSE 101 or Math. 188
|
CSE 120
|
CSE 140
|
CSE 141
|
CSE 130
|
CSE 140L
|
CSE 141L
|
CSE Tech. Elec.
|
CSE 105 or Math. 166
|
CSE Tech. Elec.
|
GE
|
GE
|
GE
|
|
|
SENIOR YEAR
|
|
|
CSE 131A
|
CSE 131B
|
CSE Tech. Elec.
|
CSE Tech. Elec.
|
Tech. Elec.
|
Tech. Elec.
|
GE
|
GE
|
GE
|
|
B.S. Computer Engineering Program
(Curriculum is the same in both the CSE and ECE departments.)
The B.S. Computer engineering program is jointly administered by the
Departments of Computer Science and Engineering and Electrical and Computer
Engineering. Students wishing to take the computer engineering program
must be admitted to one of the departments.
The lower-division computer engineering program is designed to provide
a strong foundation in mathematics, physics, electrical engineering, programming
methodology and skills, and computer organization. Upper-division core
courses deal with the theory and design of algorithms, hardware and software,
as well as electronic systems. Students can gain additional breadth and/
or depth in computer science and engineering by an appropriate selection
of technical electives.
Students should have sufficient background in high school mathematics
so that they can take freshman calculus in their first quarter. Courses
in high school physics and computer programming, although helpful, are
not required for admission to the program.
B.S. Computer engineering program requires a total of 146 units (not
including the general-education requirements). There are three varieties
of requirements: lower-division, upper-division, and technical electives.
1. Lower-Division Requirements
Students are expected to complete the following seventy units by the
end of their sophomore year.
Computer Science and Engineering: CSE 8B or 11, 12, 20 or Math.
15A, CSE 21 or Math. 15B, and CSE 30; twenty units.
Note: Students without any programming experience are advised
to take CSE 8A and then CSE 8B, instead of CSE 11. CSE 11 is a faster
paced version of CSE 8A and CSE 8B, and requires experience in programming
with a compiled language.
Mathematics: Math. 20A-B-C-D and 20F; twenty units.
Physics: Phys. 2A-B-C-D; sixteen units. Math. 20A is a prerequisite
for Phys. 2A. Students whose performance on the Department of Mathematics
placement test permits them to start with Math. 20B or a higher course
may take Phys. 2A in the fall quarter of the freshman year; all others
will take Phys. 2A in the winter quarter of the freshman year. Students
who received high grades in both calculus and physics in high school may
substitute the majors sequence, Phys. 4A-B-C-D for Phys. 2A-B-C-D.
Physics Lab: Phys. 2BL or 2CL or 2DL; two units. The lab courses
should be taken concurrently with the Phys. 2 or Phys. 4 sequence.
Introduction to Electrical Engineering: ECE 53A-B; eight units.
ECE 53A-B are courses that give a comprehensive introduction to electrical
engineering.
Probability and Statistics: ECE 109; four units. This course can
be taken in the sophomore year.
2. Upper-Division Requirements
All B.S. Computer engineering students are required to take CSE 100 or
Math. 176, CSE 101 or Math. 188, CSE 105 or Math. 166, CSE 120, 131A-B,
140, 140L, 141, and 141L; thirty-six units.
In addition, all B.S. Computer engineering students have to fulfill the
following upper-division ECE requirements.
Linear Systems: ECE 101, ECE 171A or 161A; eight units. The department
recommends that these courses be taken in the junior year.
Electronic Circuits and Systems: ECE 102, ECE 108; eight units.
The department recommends that these courses be taken in the junior year.
If students want to accelerate their program, they should consider taking
CSE 100 or Math. 176, CSE 105 or Math. 166, and/or CSE 140 and 140L in
the sophomore year.
3. Technical Electives
All B.S. Computer engineering students are required to take six technical
electives for a total of twenty-four units. One of these courses must
be either ECE 111 or ECE 118. Of the remaining five courses, four must
be computer science and engineering or electrical and computer engineering
upper-division or graduate courses.
The remaining course can be any computer science and engineering or electrical
and computer engineering upper-division or graduate course, or any other
course listed under the section titled Electives. Other restrictions
in the selection of technical electives are also given in the section
Electives.
4. B.S. Computer Engineering, Sample Program
FALL
|
WINTER
|
SPRING
|
|
FRESHMAN YEAR
|
|
|
CSE 8A or CSE 11
|
CSE 12
|
CSE 20 or Math. 15A
|
Math. 20A
|
Math. 20B
|
Math. 20C
|
GE
|
Phys. 2A
|
Phys. 2B
|
|
GE
|
GE
|
|
SOPHOMORE YEAR
|
|
|
CSE 21 or Math. 15B
|
Math. 20F
|
CSE 30
|
Math. 20D
|
ECE 53A
|
ECE 53B
|
Phys. 2C
|
ECE 109
|
Phys. 2D
|
GE
|
GE
|
Phys. 2BL or 2CL or 2DL
|
|
JUNIOR YEAR
|
|
|
CSE 100 or Math. 176
|
CSE 101 or Math. 188
|
CSE 105 or Math. 166
|
CSE 140
|
CSE 141
|
CSE 120
|
CSE 140L
|
CSE 141L
|
(Req. Tech. Elec.-ECE 111 or ECE 118)
|
ECE 102
|
ECE 108
|
GE
|
GE
|
GE
|
|
|
SENIOR YEAR
|
|
|
CSE 131A
|
CSE 131B
|
ECE 171A or 161A
|
ECE 101
|
CSE/ECE Tech. Elec.
|
CSE/ECE Tech. Elec.
|
CSE/ECE Tech. Elec.
|
CSE/ECE Tech. Elec
|
Tech. Elec.
|
GE.
|
GE
|
GE
|
|
B.S. Computer Science with a specialization in Bioinformatics
The explosion in biological knowledge spawned by the various genome projects
has created entirely new fields and industries, and a need for trained
computational biologists who are familiar with biology, mathematics, and
computer sciences. The Computer Science and Engineering Department offers
rigorous, interdisciplinary training in the new and rapidly evolving field
of bioinformatics. Bioinformatics refers to advanced computational and
experimental methods that model the flow of information (genetic, metabolic,
and regulatory) in living systems to provide an integrated understanding
of the system properties of organisms. This interdisciplinary major will
be offered by three other programs (Division of Biology, Department of
Chemistry and Biochemistry, and Department of Bioengineering). The computer
science and engineering requirements comprise of 152 units to be taken
from the divisions of physical sciences, biology, and engineering.
1. Lower-Division Requirements
Lower-division requirements, 64 units: Students are expected to complete
all lower-division requirements by the end of their sophomore year.
- Math. 20A, 20B, 20C, 20F, (16 units)
- Chemistry 6A, 6B, 6C, and one lab (15 units)
- BILD 1, BILD 2, and BILD 94 (9 units)
- CSE 11, CSE 12, and CSE 21 or Math. 15B (12 units)
- Physics 2A, 2B, 2C (12 units)
2. Upper-Division Requirements
Upper-division requirements, 88 units (includes five CSE technical electives)
- CSE 100 or Math. 176 (Data Structures), (4 units)
- CSE 101 or Math. 188 (Algorithms), (4 units)
- Chemistry 140A140B (Organic Chemistry), (8 units)
- Chemistry 114B (Biochemical Energetics and Metabolism) or BIBC 102
(Structural and Metabolic Biochemistry) (4 units)
- BIBC 103 (Biochemical Techniques), (4 units)
- BICD 100 (Genetics), (4 units)
- BIMM 100 (Molecular Biology) or Chemistry 114D (Molecular and Cellular
Biochemistry), (4 units)
- BIMM 101 (Recombinant DNA Lab), (4 units)
- BICD 110 (Cell Biology), (4 units)
- BIBC 110 (Physical Biochemistry) or Chemistry 127 (Physical Chemistry),
(4 units)
- Five additional CSE upper-division electives (electives 1, 2, 3,
4, and 5).
At least one course from each of the three groups for a total of five
electives:
Group I: CSE 30, 111, 131A, 131B, 134A
Group II: CSE 105, 150, 151, Math. 184A
Group III: CSE 132A, 132B, 133
The bioinformatics series comprised of the following six courses, 24
units:
- CSE 181 or BIMM 181 or BENG 181 (Molecular Sequence Analysis), (4
units)
- CSE 182 or BIMM 182 or BENG 182 or Chem. 182 (Biological Databases),
(4 units)
- BENG 183 (Applied Genomic Technologies), (4 units)
- CSE 184 or BIMM 184 or BENG 184 (Computational Molecular Biology),
(4 units)
- BIMM 185 (Bioinformatics lab), (4 units)
- Math. 186 (Probability and Statistics), (4 units)
3. B.S. Computer science with a specialization in bioformatics, sample
program
FALL
|
WINTER
|
SPRING
|
|
FRESHMAN YEAR
|
|
|
CSE 8A+8B or 111
|
CSE 12
|
BILD 942
|
Math. 20A
|
Math. 20B
|
Math. 20C
|
Chem. 6A
|
Chem. 6B
|
Chem. 6C
|
GE 1
|
Chem. 6BL
|
BILD 1
|
|
GE 2
|
GE 3
|
|
SOPHOMORE YEAR
|
|
CSE 21 or Math. 15B
|
Math. 20F
|
Chem. 140B
|
BILD 2
|
Phys. 2B
|
BIBC 103
|
Phys. 2A
|
Chem. 140A
|
Phys. 2C
|
GE 4
|
GE 5
|
GE 6
|
|
JUNIOR YEAR
|
|
|
CSE 100 or Math. 1763
|
CSE 101 or Math. 188
|
CSE 1814
|
BICD 100
|
Math. 186
|
BIMM 101 or Chem. 112B
|
GE 7
|
BIBC 102 or Chem. 114B
|
BICD 110
|
GE 8
|
BIMM 100 or Chem. 114D
|
Chem. 127
|
|
SENIOR YEAR
|
|
|
CSE 182
|
CSE 184
|
BIMM 185
|
BENG 183
|
Elec. 2
|
Elec. 4
|
Elec. 15
|
Elec. 3
|
Elec. 5
|
GE 9
|
GE 10
|
GE 11
|
|
1 Students may take the slower paced version, CSE 8A + CSE
8B, instead of CSE 11.
2 BILD 94 (1 unit seminar) is recommended in students first
spring quarter of study at UCSD. This course gives an overview of issues
and topics in bioinformatics.
3 CSE 30 prerequisite will be waived.
4 New courses for the bioinformatics program: CSE 181 is cross-listed
with BIMM 181 and BENG 181; CSE 182 is cross-listed with BIMM 182, Chem
182, and BENG 182; CSE 184 is cross-listed with BIMM 184 and BENG 184;
and (BENG 183, BIMM 185, and Math. 186 are also new courses but they are
not cross-listed with any other courses).
5 Students must complete five CSE technical electives from
the approved list.
B.A. Computer Science Program
The B.A. Computer science program gives students more latitude in designing
their course of study. The lower-division program is designed to provide
a strong foundation in mathematics, physics, programming methodology and
skills, and computer organization. Upper-division core courses deal with
the theory and design of algorithms, hardware, and software. Students
can gain additional breadth and/or depth in computer science and engineering
by an appropriate selection of technical electives. By requiring fewer
technical electives, the B.A. Computer science program serves those students
desiring more time for undergraduate studies outside their major subject.
The department requires a total of 104 units for the B.A. Computer science
program (not including the general-education requirements). There are
three varieties of requirements: lower-division, upper-division, and technical
electives.
1. Lower-Division Requirements
Students are expected to complete the following fifty-two units by the
end of their sophomore year.
Computer Science and Engineering: CSE 8B or 11, 12, 20 or Math.
15A, CSE 21 or Math. 15B, and CSE 30; twenty units.
Note: Students without any programming experience are advised to take
CSE 8A and then CSE 8B, instead of CSE 11. CSE 11 is a faster paced version
of CSE 8A and CSE 8B, and requires experience in programming with a compiled
language.
Mathematics: Math. 20A-B-C-D and 20F; twenty units.
Physics: Phys. 2A-B-C; twelve units. Math. 20A is a prerequisite
for Phys. 2A. Students whose performance on the Department of Mathematics
placement test permits them to start with Math. 20B or a higher course
may take Phys. 2A in the fall quarter of the freshman year; all others
will take Phys. 2A in the winter quarter of the freshman year. Students
who received high grades in both calculus and physics in high school may
substitute the majors sequence, Phys. 4A-B-C for Phys. 2A-B-C.
2. Upper-Division Requirements
All B.A. Computer science students are required to take CSE 100 or Math.
176, CSE 101 or Math. 188, CSE 105 or Math. 166, CSE 120, 131A, 131B,
140, 140L, 141, and 141L; thirty-six units.
Students are expected to complete almost all of these courses by the
end of their junior year. If students want to accelerate their program,
they should consider taking CSE 100 or Math. 176, CSE 105 or Math. 166,
and/or CSE 140 and 140L in the sophomore year.
3. Technical Electives
B.A. Computer science students are required to take four technical electives
for a total of sixteen units. Of these four electives, at least two must
be computer science and engineering upper-division or graduate courses.
The remaining two technical electives can be chosen from a wider set
of courses that includes computer science and engineering upper-division
courses, graduate courses, and other electives as listed under the section
titled Electives. Other restrictions in the selection of technical
electives are also given in the section Electives.
4. B.A. Computer Science, Sample Program
FALL
|
WINTER
|
SPRING
|
|
FRESHMAN YEAR
|
|
|
CSE 8A or CSE 11
|
CSE 12
|
CSE 20 or Math. 15A
|
Math. 20A
|
Math. 20B
|
Math. 20C
|
GE
|
Phys. 2A
|
Phys. 2B
|
|
GE
|
GE
|
|
SOPHOMORE YEAR
|
|
CSE 21 or Math. 15B
|
Math. 20F
|
CSE 30
|
Math. 20D
|
GE
|
GE
|
Phys. 2C
|
GE
|
GE
|
|
JUNIOR YEAR
|
|
|
CSE 100 or Math. 176
|
CSE 101 or Math. 188
|
CSE 120
|
CSE 140
|
CSE 141
|
CSE Tech. Elec.
|
CSE 140L
|
CSE 141L
|
GE
|
CSE 105 or Math. 166
|
GE.
|
GE
|
|
SENIOR YEAR
|
|
|
CSE 131A
|
CSE 131B
|
Tech. Elec.
|
CSE Tech. Elec.
|
Tech. Elec.
|
|
GE
|
|
|
|
Electives
The discipline of computer science and engineering interacts with a number
of other disciplines in a mutually beneficial way. These disciplines include
mathematics, electrical engineering, and cognitive science. The following
is a list of upper-division courses from these and other disciplines that
can be counted as technical electives.
At most four units of CSE 197, 198, or 199 may be used towards technical
elective requirements. CSE 195 cannot be used towards course requirements.
Undergraduate students must get instructors permission and departmental
stamp to enroll in a graduate course.
Students may not get duplicate credit for equivalent courses. The UCSD
General Catalog should be consulted for equivalency information and any
restrictions placed on the courses. Additional restrictions are noted
below. Any deviation from this list must be petitioned.
Mathematics: All upper-division courses except Math. 168A-B, 179A-B
(Math. 183Computer Engineering majors only), 184A-B, 189A-B, and
195199.
If a student has completed CSE 167, then he or she cannot get elective
credit for Math. 155A. Students may receive elective credit for only one
of the following courses: CSE 164A, Math. 174, Math. 173, Phys. 105A-B,
CENG 100, MAE 107. No credit for any of these courses will be given if
Math. 170A-B-C is taken. Students may receive credit for either one of
the following: Math. 166 or CSE 105 (but not both), Math. 188 or CSE 101
(but not both), Math. 176 or CSE 100 (but not both).
Credit will be given for only one of the following: ECE 109 or Math.
183 or Econ. 120A.
Electrical and Computer Engineering: All ECE upper-division courses
except 195-199.
Students may not get credit for both CSE 123A and ECE 158A or CSE 143
and ECE 165. Credit will be given for only one of the following: ECE 109
or Math. 183 or Econ. 120A.
Cognitive Science: Sensation and Perception 101A; Learning, Memory,
and Attention 101B, Language 101C, Distributed Cognition 102A, Cognitive
Ethnography 102B, Cognitive Engineering 102C, Neuroanatomy and Physiology
107A, Systems Neuroscience 107B, Cognitive Neuroscience 107C, Programming
Methods for Cognitive Science 108D, Neural Network Models of Cognitive
I 108E, Advanced Programming Methods for Cognitive Science 108F, Human
Computer Interaction 120, Human Computer Interaction Programming 121,
Semantics 150, Language Comprehension 153, Natural and Artificial Symbolic
Representational Systems 170, Neural Network Models of Cognition II 181,
Artificial Intelligence Modeling II 182.
Students may not get credit for both CSE 150 and Advanced Programming
Methods for Cognitive Science 108F or for both CSE 151 and Artificial
Intelligence Modeling II 182.
Mechanical and Aerospace Engineering: All upper-division MAE courses
except MAE 140 (ONLY Computer Science majors may take MAE 140)
and 195-199.
Students may receive elective credit for only one of the following courses:
CSE 164A, Math. 174, Math. 173, Phys. 105A-B, CENG 100, MAE 107. Students
may only get credit for one of the two courses, CSE 167 or MAE 152.
Economics: Microeconomics 100A-B, Game Theory 109, Macroeconomics
110A-B, Mathematical Economics 113, Econometrics 120A-B-C, Applied Econometrics
121, Management Science Microeconomics 170A-B, Decisions Under Uncertainty
171, Introduction to Operations Research 172A-B-C, Economic and Business
Forecasting 178.
Credit will be given for only one of the following: ECE 109 or Math.
183 or Econ. 120A.
Linguistics: Phonetics 110, Phonology I 111, Phonology II 115,
Morphology 120, Syntax I 121, Syntax II 125, Semantics 130, Mathematical
Analysis of Language 160, Computers and Language 163, Computational Linguistics
165, Principles of Discourse and Dialog 169, Psycholinguistics 170, Language
and the Brain 172, and Sociolinguistics 175.
Engineering: Team Engineering 101.
Music: Computer Music II 172, Audio Production: Mixing and Editing
173.
Psychology: Engineering Psychology 161
Minor and Program of Concentration
The CSE minor requires successful completion of a total of nine CSE courses.
To be admitted into the minor, students must have a 2.5 GPA and a C
or better in CSE 8B or 11, 12, 20, 21, 30. The remaining four CSE courses
are CSE 100, CSE 101, and two additional CSE upper-division courses subject
to enforcement of prerequisites. In order for the minor to be awarded
students must receive an average 2.0 GPA in the upper-division courses.
Note: Students without any programming experience are advised
to take CSE 8A and then CSE 8B, instead of CSE 11. CSE 11 is a faster
paced version of CSE 8A and CSE 8B, and requires experience in programming
with a compiled language.
Students should consult their college provosts office concerning
the rules for the minor or program of concentration. Because our undergraduate
program is highly impacted, winter or spring enrollment is recommended
for CSE 8A or CSE 8B or CSE 11.
Effective Fall 2000, Mathematics/Computer Science Majors will not be
allowed the Minor in Computer Science.
Computing Courses for Non-Majors
The department offers a slow-pace course providing a practical introduction
to computers, computation, and programming: CSE 5Aan introduction
to structured programming using the C/Java programming language. We also
offer an introduction in fluency in information technology:
CSE 3an introduction to basic information students need to deal
with information technology. It is more of a concepts course than a programming
course, but some simple programming will be done as part of the teaching
of concepts.
Admission to Major
Freshmen Students
Freshman students who have excelled in high school and have declared
CSE on their application will be directly admitted by the dean of the
School of Engineering into their major. The only way to become a computer
science (CS) or computer engineering (CE) major is to be directly admitted
as an entering freshman (transfer students see TRANSFER STUDENTS section
below) These students will be notified directly of their status.
Because of heavy student interest in departmental programs, and the limited
resources available to accommodate this demand, maintenance of a high
quality program makes it necessary to limit enrollments to the most qualified
students.
Admission to the department as a major, transfer, or minor is in accordance
with the general requirements established by the School of Engineering.
TRANSFER STUDENTS
The B.S. or B.A. In Computer Science and the B.S. In Computer Engineering
are heavily impacted majors and admission is limited to applicants who
have demonstrated a high level of achievement commensurate with the prospect
of success in these majors. Successful applicants must have completed
substantial training at the community college and must have achieved a
high level of academic performance there. For example, the required minimum
of 90 quarter transfer units must include 18 quarter units of calculus,
12 quarter units of calculus-based physics, and the highest level computer
science course offered at their community college.
Effective fall 2001 applicants seeking admission as transfer students
will be considered for direct admission into the Computer Science (CS)
or Computer Engineering (CE) majors in the Department of Computer Science
& Engineering (CSE). The only way to become a computer science (CS)
or computer engineering (CE) major is to be directly admitted as an entering
transfer student. Although the actual required GPA cutoff depends on the
number of openings, at least a 3.2 GPA in the community college transfer
courses, and a 3.4 GPA in math, physics and computer science courses,
are likely to be needed to gain admission. Transfer students who have
declared pre-CSE will be considered for direct admission to the major.
CONTINUING UCSD STUDENTS
Exceptional Admission Program
Space permitting and in its sole discretion, the computer science and
engineering department may periodically grant admission to the Computer
Science (CS) or Computer Engineering (CE) majors to a small number of
academically exceptional UCSD undergraduate students who were not admitted
to these majors as entering students. Exceptional admission will be considered
for students having an overall UCSD GPA of 3.5 or better who have taken
at least two CSE, math, or science courses demonstrating special aptitude
for the CS or CE curriculum. Applications for exceptional admission must
include submission of a course plan demonstrating ability to satisfy graduation
requirements and a personal statement addressing the applicants
motivation to join the CS or CE major, in addition to other criteria established
by the department. (For admission into the B.S. In Computer Science with
specialization in Bioinformatics, please see the following section: Admission
into B.S. In Computer Science with specialization in Bioinformatics).
Admission into B.S. In Computer Science with a specialization in Bioinformatics
Since the number of pre-majors and majors will be limited as described
in the section on bioinformatics, student demand may exceed capacity.
Therefore, admission to the specialization is not guaranteed and will
be based on academic excellence, as described below. Since bioinformatics
is an interdisciplinary major, a steering committee involving faculty
from the participating departments will select among the best candidates
applying and recommended through each department, while insuring active
participation of the departments and divisions offering the major. The
final decision on admission to the pre-major and major will be made by
the Bioinformatics Steering Committee, in consultation with the departments.
The application is found at http://www.cse.ucsd.edu/undergrad/admissions/admissionshome.html,
or see the CSE department at AP&M 3402.
Freshmen and Continuing Students
Students (freshmen or continuing UCSD students) will be admitted into
one of our existing undergraduate majors (B.A. Computer Science, B.S.
Computer Science, and B.S. Computer Engineering) through the direct admission
process or through the exceptional admission program. Students will then
have the option of trying to enter the bioinformatics program by applying
for the bioinformatics pre-major (while still retaining their current
major status) once they complete the first four screening courses (Math
20B, Math 21C, BILD 1, Chem 6A). Students will then formally apply to
the bioinformatics major upon completion of the remaining screening courses
CSE 11 and CSE 12. If admitted, students will become bioinformatics majors
in CSE. If not, they can continue in their current CSE major.
Transfer Students
Transfer students will be admitted into one of our existing undergraduate
majors (B.A. Computer Science, B.S. Computer Science, and B.S. Computer
Engineering) through the direct admission process or through the exceptional
admission program. Effective fall 2003, CSE transfer students can directly
apply to the bioinformatics major if they completed the following courses
prior to transferring to UCSD.
- A year of calculus (equivalent to Math 20A-B-C at UCSD)
- A year of general chemistry, with lab (equivalent to Chem 6A, 6B/6BL
and Chem 6C at UCSD)
- The highest level programming course offered at the community college
(equivalent to CSE 11 and CSE 12 at UCSD)
- One semester of cell biology (equivalent to BILD 1 and BILD 2 at
UCSD)
Those who have not completed the above courses may be admitted as bioinformatics
pre-majors and will be allowed a maximum of three quarters to complete
pre-major requirements. Students will then formally apply to the bioinformatics
major upon completion of the remaining screening courses CSE 11 and CSE
12. If admitted, students will become bioinformatics majors in CSE. If
not, they can continue in their current CSE major. Transfer students are
encouraged to complete these requirements at the community college.
Enrollment in CSE courses
Student demands exceed capacity in many CSE courses. Accordingly, many
CSE courses may have enrollment restrictions which give priority to students
in the following order:
- CSE majors, CSE M.S., and CSE Ph.D. students.
- CSE pre-majors, and ECE CE majors and pre- majors, and Math-CS majors.
CSE pre-major status is conferred to transfer students and to those
students admitted prior to fall 1998.
- Students fulfilling a non-elective requirement in another program.
- CSE minors.
- All other majors or pre-majors in other SOE departments.
- All others, with permission of the department of Computer Science
and Engineering.
Where these restrictions apply, the registrar will not enroll low-priority
students in the course.
ENROLLING IN UPPER-DIVISION COURSES
The Department of Computer Science and Engineering will attempt to provide
sufficient sections of all lower-division courses. Students will, however,
be screened to ensure that they meet all course enrollment restrictions.
Admission to upper-division courses will be restricted to students having
completed all prerequisites with a C- or better (or consent of the instructor.)
Courses have enrollment restrictions which give priority in the following
order: students admitted by the department to a major or minor curriculum;
students fulfilling a requirement for another major; all others. Within
these categories, priority is determined on the basis of graduation date
and/or credits completed. Where these restrictions apply, the registrar
will not enroll nonmajors except by department approval. Students who
are undeclared will not be admitted to upper-division computer science
and engineering courses.
Those students not in compliance with the above restrictions should be
forewarned that they will automatically be dropped from course rosters
(at any time during the quarter) when it comes to the attention of the
department that a student is enrolled in a course without being eligible
because of restrictions and/or the performance standards have not been
met. Admission to all computer science and engineering courses will require
obtaining either authorization through telephone registration or department
stamps on an add/drop card, and it will be given only by the student affairs
personnel.
Graduation Requirements
All major requirements and technical electives except CSE 197, 198, or
199 must be taken for a letter grade. To graduate, a grade-point average
of 2.0 will be required in upper-division courses in the major, including
technical electives. In addition, each student must satisfy general-education
course requirements determined by the students college, as well
as major requirements determined by the department. The five colleges
at UCSD require widely different numbers of general-education courses.
Each student should choose his or her college carefully, considering the
special nature of the college and breadth of education, realizing that
some colleges require considerably more courses than others.
Five-year BachelorsMasters Program
Undergraduate students in the Department of Computer Science and Engineering
who are enrolled in the B.S. Or B.A. Computer science or B.S. Computer
engineering degree programs, and who have a cumulative GPA of a 3.4 and
also a GPA of 3.4 in at least seven core courses, are eligible to apply
for the Five Year Bachelors-Masters Degree Program. The deadline
to apply is the fourth week of the fourth quarter before graduation. Acceptance
into this program is an honor which carries with it practical benefitsthe
graduate application process is simplified (no GREs required), students
accepted into this program can be admitted fall, winter, and spring quarter,
based upon availability of openings in the program. Advanced students
are given access to graduate level courses and have the opportunity to
do graduate level research earlier under the direct supervision of UCSDs
faculty, and students are able to complete the B.A., B.S., and M.S. degree
within a five-year time period. Courses taken can be used toward either
the B.A., B.S., Or M.S. degree, but not counted toward both degrees. Additional
information and applications can be obtained by contacting the CSE Student
Affairs Office, APM 3402.
The Graduate Program
The graduate program offers master of science and doctor of philosophy
degrees in computer science and computer engineering. To be accepted into
either course of study, a student must have a B.A./B.S. Degree in computer
science, computer engineering, or a related area.
The graduate program is concerned with fundamental aspects of computation;
emphasis is divided among the areas of theory, hardware, software systems,
and artificial intelligence. The computer engineering specialization places
a greater emphasis on hardware and the design of computer systems.
Admission to the graduate program is done through the Office of Graduate
Admissions, Department of CSE. Deadline for application is January 5.
Admissions are always effective the following fall quarter. For admission
requirements, please refer to the departmental Web page: http://www-cse.ucsd.edu/graduate/
Admission decisions for the M.S. and Ph.D. Programs are made separately.
An M.S. student who wishes to enter the Ph.D. Program must submit a new
application to the CSE admissions committee.
Computer Science Program
Master of Science Program
The department offers the master of science degree in computer science.
The degree can be pursued under either the Thesis Plan I or the Comprehensive
Examination Plan II. Each plan requires forty-nine units of work. For
full-time students, all the requirements must be completed within two
years. Students with an adequate background in computer science can complete
the M.S. program within four to five quarters of full-time study.
Thesis or Comprehensive Exam
There are two plans of study for the masters degree: Plan I, in
which the student writes a thesis, and Plan II, in which the student takes
a set of comprehensive exams.
Plan I: Thesis Option, No Comprehensive Exam
This plan involves both course work and research, culminating in the
preparation of a thesis. The student must take twelve units of CSE 298
(Independent Study) to fulfill the research requirement, and a thesis
based on research must be written and subsequently reviewed by the thesis
committee. This committee, which is appointed by the dean of Graduate
Studies and Research, consists of three faculty members, with at least
two members from within the CSE department.
Plan II: Comprehensive Examination, No Thesis
Under this plan, the student must pass a written comprehensive examination
designed to test the students knowledge in basic computer science
material. The examination can normally be passed with a thorough knowledge
of topics covered in the undergraduate and first-year graduate computer
science programs. It is offered every year in the first few weeks of the
fall quarter and in the first few weeks of the spring quarter. Each student
is allowed three attempts to pass the examination. The student must secure
at least a masters-level pass in the written comprehensive examination.
More information regarding the comprehensive examination can be found
in a separate document provided by the CSE graduate office.
In particular, the written examination is structured around the three
CSE core areas: algorithms and data structures; operating systems; and
computer architecture and digital logic design.
Required Courses
Students entering the M.S. Program in Computer Science will choose an area
of concentration from among twelve areas. Each concentration is an area
in which the faculty has significant research expertise.
The typical concentration is a collection of three courses which are
designed to give the student in-depth training in the chosen field. Additionally,
to ensure breadth, all students are required to take four core courses.
Core courses must be completed with an average grade of B and no grade
below B. The four core courses required of all students are as follows:
CSE 202. Algorithms Design and Analysis
CSE 221. Operating Systems
CSE 240A. Principles of Computer Architecture
CSE 292. Faculty Research Seminar
The department expects to offer concentrations in the following areas:
Artificial Intelligence
Communication Networks
Computer Architecture and Compilers
Cryptography and Security
Database and Information Retrieval
Design Automation for Microelectronic Designs
Distributed and Fault-Tolerant Computing
Multimedia Systems
Parallel and Scientific Computing
Software Engineering
Storage Systems
Ph.D. Preparation
The specific courses involved in each of the concentrations are detailed
in a separate bulletin which is available in the Graduate Student Affairs
Office, 3402 AP&M.
Project
Students electing Plan II are required to execute a project while enrolled
in four units of CSE 293.
Electives
In addition to completing the required core courses and fulfilling either
the thesis or comprehensive examination requirements described above,
the student must also complete additional approved courses to bring the
total number of units to forty-nine. The number of units of electives
depends upon whether the student chooses Plan I or Plan II. The electives
consist of other CSE graduate courses or courses from a list of approved
electives. Units obtained in the courses CSE 293, 298, 299, 500, 501,
599, and any of the seminar courses CSE 209, 229, 259, 269, 290, and 294
do not count toward the elective requirement.
Computer Engineering Program
Computer engineering, jointly administered between the CSE and ECE departments,
offers the master of science and doctoral degrees with the degree title
computer science and engineering (computer engineering). Computer engineering
explores the engineering analysis and design aspects of algorithms and
technology. Specific research areas include computer systems, signal processing
systems, architecture, networks, computer-aided design, fault tolerance,
and data storage systems.
Master of Science Program
The degree can be pursued under either the Thesis Plan I or the Comprehensive
Examination Plan II. Each plan requires forty-nine units of work. For
full-time students, all the requirements must be completed within two
years. Students with an adequate background in computer engineering can
complete the M.S. program within four to five quarters of full-time study.
Plan I: Thesis Option, No Comprehensive Exam
This plan of study involves both course work and research, culminating
in the preparation of a thesis. A total of forty-nine units of credit
is required, as follows:
Core Courses
The following core courses must be completed with an average grade of
B and no grade below B:
Three Software Courses:
CSE 202
CSE 221
CSE 231
Three Hardware Courses:
CSE 240A
ECE 260A
CSE 243A or ECE 251A or ECE 263A
Two Analysis Courses:
CSE 200
CSE 222A or ECE 257A
and:
CSE 292
Electives
Students must elect at least four technical units among graduate courses
within the Departments of AMES, CSE, ECE, Mathematics, and Physics.
Thesis
Twelve units of CSE 298 must be taken with a faculty member in CSE or
ECE who agrees to act as adviser for the thesis to fulfill the research
requirement.
A thesis based on research must be written and subsequently reviewed
by a committee, consisting of three faculty members, with at least two
members from within the CSE department. The committee is appointed by
the dean of Graduate Studies.
Plan II: Comprehensive Examination, No Thesis
In order to receive the M.S. degree in computer engineering under this
plan, a student must complete the course requirements listed below and
pass a written comprehensive examination.
The written examination is structured around the following three CSE
core areas: algorithms and data structures; operating systems; and computer
architecture and digital logic design.
Core Courses
Three Software Courses:
CSE 202
CSE 221
CSE 231
Three Hardware Courses:
CSE 240A
ECE 260A
CSE 243A or ECE 251A or ECE 263A
Two Analysis Courses:
CSE 200
CSE 222A or CSE 257A
and
CSE 292
Electives
Students must elect at least twelve technical units among graduate courses
within the Departments of MAE, CSE, ECE, Mathematics, and Physics.
Project
Four units of CSE 293.
Comprehensive Examination
The comprehensive examination is designed to test the students
knowledge in basic computer science and engineering material. The examination
can normally be passed with a thorough knowledge of topics covered in
the undergraduate and the first-year graduate computer science or computer
engineering programs.
It is offered every year in the first few weeks of the fall quarter and
in the first few weeks of the spring quarter. If fewer than seven people
sign up, then the department may cancel the examination in the spring
quarter. Each student is allowed three attempts to pass the examination.
The student must secure at least a masters-level pass in the written
comprehensive examination.
This examination is the same for both the computer science and the computer
engineering graduate programs. More information about the comprehensive
examination can be obtained in a separate document from the CSE graduate
office.
Doctoral Programs
Ph.D. Degree Programs in Computer Science and Computer Engineering
CSE offers doctor of philosophy degrees in computer science and in computer
engineering, providing a research-oriented education in preparation for
a research, industrial, or entrepreneurial career. These programs explore
both the fundamental aspects and application of computation, spanning
theory, software, hardware, and applications. Our particular areas of
research expertise include:
- algorithms
- artificial intelligence
- bioinformatics
- complexity theory
- computer architecture/compilers
- VLSI/CAD and embedded systems
- databases and information management
- distributed systems and networking
- graphics and vision
- high performance computing
- mobile computing
- security and cryptography
- software engineering
COMPETENCY REQUIREMENT
We consider command of the materials covered in the following courses
to be an adequate background for the Ph.D. Program The competency requirement
is intended to ensure that Ph.D. Students already have or acquire this
undergraduate background. Students, who do not have this background at
the time of entry, may be asked to either enroll in the following undergraduate
class or to study it independently and demonstrate their knowledge by
obtaining a B+ or better in the class or in the final exam.
CSE 101 (Algorithms)
CSE 105 (Theory of Computation)
CSE 120 (Principles of Computer Operating Systems)
Two of the following three courses:
CSE 130, 131A-B (Programming Languages/Compilers)
CSE 141 (Introduction to Computer Architecture)
COURSE REQUIREMENTS
The course requirement is intended to ensure that students are exposed
to fundamental concepts and tools (core requirement), a deep up-to-date
view of their research area (depth requirement), and advanced, up-to-date
view of the some topics outside their area (breadth requirement). Ph.D.
Students are expected to complete the core, depth, and breadth requirements
in the first two years of the program. All required coursework must be
taken for a letter grade except for CSE 291 (Topics in CSE), CSE 292 (Faculty
Research Seminar), CSE 299 (Research), and CSE 500 or CSE 501 (Teaching
Assistantship) for which only S/U grades are allowed.
Units obtained from a single course cannot count more than once towards
satisfying the requirement in each of the core, depth, breadth, and elective
areas. Ph.D. Students who have taken similar courses elsewhere may petition
for a waiver of the required courses or for substitution by alternative
courses.
Core Requirements
The core requirements ensure that the Ph.D. Students share knowledge
of fundamental concepts and tools. Each Ph.D. student must take these
courses for letter grade and maintain an overall core course GPA of 3.4
with no grade lower than a B- (except for CSE 292, for which a letter
grade is not assigned). A student will typically complete all the core
courses within the first year of graduate study, and must complete all
core courses within two years of entry.
CSE 202 (Algorithms)
CSE 221 (Operating Systems)
CSE 240A (Architecture)
CSE 200 (Complexity) for Computer Science
or CSE 241A (Introduction to Computing Circuitry) for Computer Engineering
CSE 292 (Faculty Research Seminar)
Depth Requirements
The depth requirement ensures that a Ph.D. Student has, early on in his
or her career, acquired some depth of knowledge in a general research
area. Each Ph.D. Student must select one of the following areas as his
or her major area. The student must take three courses (12 units) from
this major area. The student must take these courses for letter grade
and maintain an overall depth course GPA of 3.4 with no grade lower than
B- in these courses. One of these three courses can be Topics in CSE (CSE
291) or Independent Study (CSE 299), which are not taken for a letter
grade. The department will maintain a list of appropriate courses for
each major area.
The major areas are:
Theoretical Computer Science
Programming Languages, Compilers, and Software Engineering
Computer Systems
Database Systems
Computer Engineering
Artificial Intelligence
Breadth Requirements
Research in computer science and engineering is increasingly interdisciplinary,
and acquiring a broader view of the field in general is important. Each
Ph.D. Student must take three courses (12 units) from at least two other
areas different from the major area. Courses must be taken for letter
grade and students must maintain an overall breadth course GPA of 3.0
with no grade lower than B- in these courses. Units obtained in CSE 209
series, 229 series, 239 series, 249 series, 259 series, 269 series, 279
series, 289 series, 290, 292, 293, 294, 298, 291, 299, 500, 501, and 599
do not count toward the breadth requirement.
Electives
In addition to the above required course work, each student is expected
to take two additional courses (8 units). Students must obtain no grade
lower than C- in these courses. Undergraduate upper-division courses,
CSE 291, and CSE 299 may fulfill this requirement. Units obtained in CSE
209 series, 229 series, 239 series, 249 series, 259 series, 269 series,
279 series, 289 series, 290, 292, 293, 294, 298, 500, 501, and 599 do
not count toward the elective requirement.
RESEARCH EXAM REQUIREMENT
The research exam is intended to verify three components of the students
preparation for Ph.D. research: (1) breadth of comprehension sufficient
to enable computer science research in areas beyond the topic(s) of the
research exam and thesis; (2) ability to perform critical study, analysis,
and writing in a focused area; and (3) research experience.
The research exam has both an oral part and a written part. The oral
part of the research exam is distinct from, and cannot be combined with
the University Qualifying Exam. Grading criteria for each part, and standards
for passing, are available from the CSE department graduate office.
The research exam is conducted by a committee of three faculty members
approved by the Graduate Committee and the chair of the department. At
least two committee members must be CSE senate faculty, and the students
adviser must be a member of the committee. The normative time for passing
the research exam is by the end of the second year of study; the exam
must be passed by the end of the third year if the student is to continue
in the Ph.D. Program Passing the research exam enables a Ph.D. Student
to receive the M.S. degree. Ph.D. Students who do not pass the exam after
two attempts will be given the opportunity to write a thesis in order
to receive a terminal M.S. degree. The M.S. degree is only granted to those
students who do not already hold an M.S. degree prior to entering the CSE
department at UCSD.
TEACHING ASSISTANT REQUIREMENT
All students enrolled in the Ph.D. Program must have one quarter of training
as a teaching assistant. This is a formal degree requirement and must
be completed before the student is permitted to graduate. The requirement
is met by serving as a 50 percent teaching assistant and taking either
CSE 500 or CSE 501(Teaching Assistantship).
QUALIFYING EXAMINATION AND ADVANCEMENT TO CANDIDACY
The qualifying examination is a requirement for advancement to candidacy.
Prior to taking the qualifying examination a student must have satisfied
the departmental competency, course, and research exam requirements and
must have been accepted by a CSE faculty member as a Ph.D. thesis candidate.
All doctoral students are expected to advance to candidacy by the end
of their third year, and advancement is mandatory by the end of the fourth
year. The examination is administered by a doctoral committee appointed
by the dean of Graduate Studies and Research and consists of faculty from
CSE and other departments. More information on the composition of the
committee can be obtained from the CSE graduate office. The examination
is taken after the student and his or her adviser have identified a topic
for the dissertation and an initial demonstration of feasible progress
has been made. The candidate is expected to describe his or her accomplishments
to date as well as future work.
DISSERTATION
The dissertation defense is the final Ph.D. examination. A candidate
for the Ph.D. is expected to write a dissertation and defend it in an
oral examination conducted by the doctoral committee.
DEPARTMENTAL Ph.D. TIME LIMIT POLICIES
Students must be advanced to candidacy by the end of four years. Total
university support cannot exceed seven years. Total registered time at
UCSD cannot exceed eight years.
FINANCIAL AID
Financial support is available to qualified graduate students in the
form of fellowships, loans, and assistantships. Anticipated stipends for
half-time research assistantships are $1573 per month, with the possibility
of full-time employment during the summer months. For a half-time teaching
assistantship, the anticipated stipend will be $1571 per month. Requests
for application forms for admission and financial support should be directed
to the Department of Computer Science and Engineering.
Computer Science and Engineering (CSE)
|