About the Program
Choosing a Computer Science Path
There are two ways to study Computer Science (CS) at UC Berkeley:
- Be admitted to the Electrical Engineering & Computer Sciences (EECS) major in the College of Engineering (COE) as a freshman. Admission to the COE, however, is extremely competitive. This option leads to a Bachelor of Science (BS) degree. This path is appropriate for people who want an engineering education.
- Enter the College of Letters & Science (L&S) and, after successful completion of the courses required to declare with the minimum grade point average (GPA), petition to be admitted to the L&S Computer Science major. This path is appropriate for people who are interested in a broader education in the sciences and arts (such as double majoring in other L&S fields), and/or are not sure at the time of application that they can gain admission to EECS. This option leads to a Bachelor of Arts (BA) degree.
There is no difference in the CS course content between the BS and BA programs. The difference is in what else you take: mainly engineering, or mainly humanities and social sciences. In particular, an interest in hardware suggests the EECS route; an interest in double majoring (for example, in math or cognitive science) suggests the L&S route.
Bachelor of Science (BS) in Computer Science
For information regarding the BS degree, please see the Electrical Engineering and Computer Sciences program information in this Guide.
Bachelor of Arts (BA) in Computer Science
This CS major is for students enrolled in the College of Letters & Science (L&S). Berkeley emphasizes the science of computer science, which means much more than just computer programming. It includes the theory of computation, the design and analysis of algorithms, the architecture and logic design of computers, programming languages, compilers, operating systems, scientific computation, computer graphics, databases, artificial intelligence, and natural language processing. Our goal is to prepare students both for a possible research career and long-term technical leadership in industry. We must therefore look beyond today's technology and give students the primary ideas and the learning skills that will prepare them to teach themselves about tomorrow's technology.
Declaring the Major (BA only)
It is necessary to achieve a minimum prerequisite grade point average (GPA) in order to declare the Computer Science major. Information on this GPA and the process to petition for admission to the major can be found on the Petitioning to the Computer Science Major website.
Transfer students admitted to Berkeley must apply separately to the Computer Science major after matriculating and completing the missing prerequisite courses for declaration. Not all transfer students will meet the criteria required for the major. Therefore, we recommend that transfer students be prepared to pursue an alternative major at Berkeley. Questions may be directed to the CS advising office, 379 Soda Hall, 510-664-4436, or via email at cs-advising@cs.berkeley.edu.
Five-Year BS/MS Program
This program is geared toward students who would like to pursue an education beyond the BS/BA, allowing them to achieve greater breadth and/or depth of knowledge, and who would like to try their hand at research as well. For information, please see the Five-Year BS/MS Requirements tab on this page.
Honors Program
Computer Science majors with an overall GPA of 3.70 or above are eligible to apply to the EECS honors degree program.
Minor Program
A minor in Computer Science is available to all undergraduate students at Berkeley with a declared major, with the exception of EECS majors. For information regarding minor requirements, please see the Minor Requirements tab on this page.
Major Requirements (BA)
In addition to the University, campus, and college requirements, listed on the College Requirements tab, students must fulfill the below requirements specific to their major program.
General Guidelines
- All courses taken to fulfill the major requirements below must be 3 or more units and taken for a letter grade.
-
All courses for the major must be technical in nature. Courses numbered 199, 198, 197, 196, 195, plus select 194, 191, 190, and various seminars do not count. If you are unsure, please check with the CS advisers (cs-advising@cs.berkeley.edu).
- Only one upper division course may be used to simultaneously fulfill requirements for a student's major and minor programs. No more than two upper division courses can overlap between two majors.
- A minimum grade point average (GPA) of 2.0 must be maintained in both upper and lower division courses used to fulfill the major requirements.
For information regarding residence requirements and unit requirements, please see the College Requirements tab.
Lower Division Prerequisites
Code | Title | Units |
---|---|---|
COMPSCI 61A | The Structure and Interpretation of Computer Programs | 4 |
COMPSCI 61B | Data Structures | 4 |
COMPSCI 70 | Discrete Mathematics and Probability Theory | 4 |
Lower Division Requirement
Code | Title | Units |
---|---|---|
MATH 1A | Calculus | 4 |
MATH 1B | Calculus | 4 |
MATH 54 | Linear Algebra and Differential Equations 1 | 4 |
or EL ENG 16A | Designing Information Devices and Systems I | |
EL ENG 16B | Designing Information Devices and Systems II 1 | 4 |
COMPSCI 61C | Great Ideas of Computer Architecture (Machine Structures) | 4 |
1 | Students admitted before 2017 can choose from the following options:
|
Upper Division Requirements
Code | Title | Units |
---|---|---|
Select one design course from the following: | ||
EECS 149 | Introduction to Embedded Systems | 4 |
EECS 151 | Introduction to Digital Design and Integrated Circuits | 3 |
COMPSCI 152 | Computer Architecture and Engineering | 4 |
COMPSCI 160 | User Interface Design and Development | 4 |
COMPSCI 162 | Operating Systems and System Programming | 4 |
COMPSCI 164 | Programming Languages and Compilers | 4 |
COMPSCI 169 | Software Engineering | 4 |
COMPSCI 184 | Foundations of Computer Graphics | 4 |
COMPSCI 186 | Introduction to Database Systems | 4 |
EL ENG C106A | Introduction to Robotics | 4 |
EL ENG C106B | Robotic Manipulation and Interaction | 4 |
EL ENG C128 | Feedback Control Systems | 4 |
EL ENG 130 | Integrated-Circuit Devices | 4 |
EL ENG 140 | Linear Integrated Circuits | 4 |
EL ENG 143 | Microfabrication Technology | 4 |
EL ENG C149 | Course Not Available | 4 |
EL ENG 192 | Mechatronic Design Laboratory | 4 |
Select at least 8 units of upper division computer science courses from the following, or from the above list: | ||
COMPSCI 161 | Computer Security | 4 |
COMPSCI 168 | Introduction to the Internet: Architecture and Protocols | 4 |
COMPSCI 170 | Efficient Algorithms and Intractable Problems | 4 |
COMPSCI 172 | Computability and Complexity | 4 |
COMPSCI 176 | Algorithms for Computational Biology | 4 |
COMPSCI 186 | Introduction to Database Systems | 4 |
COMPSCI 188 | Introduction to Artificial Intelligence | 4 |
COMPSCI 189 | Introduction to Machine Learning | 4 |
COMPSCI C191 | Quantum Information Science and Technology | 3 |
COMPSCI 194 | Special Topics (8- Advanced Animation, 15-Parallel Computing, 16-Introduction to Data Science [discontinued], 26-Computational Photography, 30-Practical Networking, 73-Software Engineering for Scientific Computing, 126-PCP Design, and 133-Collaborative Intelligent Agents and The DARPA Spectrum Challenge) | 1-4 |
COMPSCI 261N | Internet and Network Security | 4 |
COMPSCI 262A | Advanced Topics in Computer Systems | 4 |
COMPSCI 262B | Advanced Topics in Computer Systems | 3 |
COMPSCI C267 | Applications of Parallel Computers | 3 |
COMPSCI 270 | Combinatorial Algorithms and Data Structures | 3 |
COMPSCI C280 | Computer Vision | 3 |
COMPSCI C281A | Statistical Learning Theory | 3 |
COMPSCI 288 | Natural Language Processing | 4 |
COMPSCI 294 | Special Topics (Only 84-Interactive Device Design or 129-Designing and Visualizing Neural Networks) | 1-4 |
Select an additional 8 units of upper division computer science courses from the following, or from the above list: | ||
EL ENG 105 | Microelectronic Devices and Circuits | 4 |
EL ENG 113 | Power Electronics | 4 |
EL ENG 117 | Electromagnetic Fields and Waves | 4 |
EL ENG 118 | Introduction to Optical Engineering | 3 |
EL ENG 120 | Signals and Systems | 4 |
EL ENG 121 | Introduction to Digital Communication Systems | 4 |
EL ENG 122 | Introduction to Communication Networks | 4 |
EL ENG 123 | Digital Signal Processing | 4 |
EECS 126 | Probability and Random Processes | 4 |
EECS 127 | Optimization Models in Engineering | 4 |
EL ENG C128 | Feedback Control Systems | 4 |
EL ENG 129 | Neural and Nonlinear Information Processing | 3 |
EL ENG 130 | Integrated-Circuit Devices | 4 |
EL ENG 134 | Fundamentals of Photovoltaic Devices | 4 |
EL ENG 137A | Introduction to Electric Power Systems | 4 |
EL ENG 137B | Introduction to Electric Power Systems | 4 |
EL ENG 140 | Linear Integrated Circuits | 4 |
EL ENG 142 | Integrated Circuits for Communications | 4 |
EL ENG 144 | Fundamental Algorithms for Systems Modeling, Analysis, and Optimization | 4 |
EL ENG C145B | Medical Imaging Signals and Systems | 4 |
EL ENG C145L | Introductory Electronic Transducers Laboratory | 3 |
EL ENG C145M | Introductory Microcomputer Interfacing Laboratory | 3 |
EL ENG C145O | Laboratory in the Mechanics of Organisms | 3 |
EL ENG 147 | Introduction to Microelectromechanical Systems (MEMS) | 3 |
Technical electives: In addition to the 20 units of required CS coursework above, 7 units of technical electives can be CS, EE, or from the list of approved non-computer science technical electives (see list below) for a total of 27 units for the major. | 27 |
Approved Non-Computer Science Technical Electives
Code | Title | Units |
---|---|---|
ARCH 122 | Principles of Computer Aided Architectural Design | 4 |
ARCH 129 | Special Topics in Digital Design Theories and Methods | 4 |
ARCH 222 | Principles of Computer Aided Architectural Design | 4 |
ARCH 229 | Special Topics in Digital Design Theories and Methods | 4 |
ART 178 | Game Design Methods | 4 |
ASTRON C162 | Planetary Astrophysics | 4 |
All technical upper division undergraduate and graduate courses in BIO ENG, except BIO ENG 100, C181, 190, 192, and 196 | ||
UGBA 102A | Introduction to Financial Accounting | 3 |
UGBA 103 | Introduction to Finance | 4 |
UGBA 104 | Analytic Decision Modeling Using Spreadsheets | 3 |
UGBA 119 | Leading Strategy Implementation | 3 |
UGBA 120AA | Intermediate Financial Accounting 1 | 4 |
UGBA 120AB | Intermediate Financial Accounting 2 | 4 |
UGBA 141 | Production and Operations Management | 3 |
UGBA 180 | Introduction to Real Estate and Urban Land Economics | 3 |
All technical upper division undergraduate and graduate courses in CHEM | ||
All technical upper division undergraduate and graduate courses in CHEM ENG, except CHEM ENG 180 and 185 | ||
All technical upper division undergraduate and graduate courses in CIV ENG, except CIV ENG 192, CIV ENG 252L, and CIV ENG 290R | ||
CMPBIO 175 | Introduction to Computational Biology and Precision Medicine | 3 |
COG SCI C100 | Basic Issues in Cognition | 3 |
COG SCI C101 | Cognitive Linguistics | 4 |
COG SCI C126 | Perception | 3 |
COG SCI C127 | Cognitive Neuroscience | 3 |
COG SCI 131 | Computational Models of Cognition | 4 |
ECON 100A | Economic Analysis--Micro | 4 |
ECON 100B | Economic Analysis--Macro | 4 |
ECON 101A | Economic Theory--Micro | 4 |
ECON 101B | Economic Theory--Macro | 4 |
ECON 136 | Financial Economics | 4 |
ECON 140 | Economic Statistics and Econometrics | 4 |
ECON 141 | Econometric Analysis | 4 |
ECON/DEMOG C175 | Economic Demography | 4 |
All technical upper division undergraduate and graduate courses in EL ENG | ||
All technical upper division undergraduate and graduate courses in ENGIN, except ENGIN 102, 125, 157AC | ||
EPS 104 | Mathematical Methods in Geophysics | 4 |
EPS 122 | Physics of the Earth and Planetary Interiors | 3 |
EPS C162 | Planetary Astrophysics | 4 |
FILM 140 | Special Topics in Film (Only Sound and Color Theory) | 4 |
GEOG 142 | Climate Dynamics | 4 |
GEOG 143 | Global Change Biogeochemistry | 3 |
GEOG 183 | Cartographic Representation | 5 |
GEOG C188 | Geographic Information Systems | 4 |
All technical upper division undergraduate and graduate courses in IND ENG, except IND ENG 171, 186, 190 series, and 191 series | ||
INFO 159 | Natural Language Processing | 3 |
INFO 213 | User Interface Design and Development | 4 |
INFO 214 | Needs and Usability Assessment | 3 |
INFO 234 | Information Technology Economics, Strategy, and Policy | 3 |
INFO 253 | Web Architecture | 3 |
INFO 256 | Applied Natural Language Processing | 3 |
INFO 257 | Database Management | 3 |
INFO C262 | Theory and Practice of Tangible User Interfaces | 4 |
INFO 290 | Special Topics in Information | 1-4 |
All technical upper division undergraduate and graduate courses in integrative biology | ||
LINGUIS C105 | Cognitive Linguistics | 4 |
LINGUIS 100 | Introduction to Linguistic Science | 4 |
LINGUIS 120 | Syntax | 4 |
LINGUIS 158 | Computational Methods | 3 |
All technical upper division undergraduate and graduate courses in MATH, except MATH 160 | ||
All technical upper division undergraduate and graduate courses in MECH ENG, except 191K | ||
All technical upper division undergraduate and graduate courses in MCELLBI | ||
MUSIC 108 | Music Perception and Cognition | 4 |
MUSIC 158 | Course Not Available | |
MUSIC 158A | Sound and Music Computing with CNMAT Technologies | 4 |
MUSIC 159 | Computer Programming for Music Applications | 4 |
MUSIC 209 | Advanced Topics in Computer Music | 4 |
All technical upper division undergraduate and graduate courses in PHYSICS | ||
NWMEDIA 190 | Special Topics in New Media (1/290-Critical Practices) | 4 |
NWMEDIA C203/MEC ENG C205 | Critical Making | 4 |
NWMEDIA 290 | Special Topics in New Media (Making Sense of Cultural Data) | 4 |
PB HLTH 252B | Modeling the Dynamics of Infectious Disease Processes | 2-4 |
PHILOS 140A | Intermediate Logic | 4 |
PHILOS 140B | Intermediate Logic | 4 |
PHILOS 143 | Modal Logic | 4 |
POL SCI C135 | Game Theory in the Social Sciences | 4 |
POL SCI W135 | Game Theory in the Social Sciences | 4 |
PSYCH 102 | Methods for Research in Psychological Sciences | 3 |
PSYCH 128/290Q | Topical Seminars in Cognitive Psychology | 3 |
PB HLTH 142 | Introduction to Probability and Statistics in Biology and Public Health | 4 |
PB HLTH 150A | Introduction to Epidemiology and Human Disease | 4 |
PB HLTH 162A | Public Health Microbiology | 3 |
All technical upper division undergraduate and graduate courses in STAT | ||
THEATER 177 | Sound Design for Performance | 4 |
VIS SCI 265 | Neural Computation | 3 |
Five-Year BS/MS
This program is geared toward students who would like to pursue an education beyond the BS/BA, allowing them to achieve greater breadth and/or depth of knowledge, and who would like to try their hand at research as well. It is not intended for students who have definitely decided to pursue a PhD immediately following graduation. Those students are advised to apply for a PhD program at Berkeley or elsewhere during their senior year. Students who have been accepted into the Five-Year BA/MS or BS/MS are free to change their minds later and apply to enter the PhD program or apply to a PhD program at another university. Note that admission is competitive with all our PhD applicants.
The program is focused on interdisciplinary training at a graduate level; with at least 8 units of course work outside EECS required. Students will emerge as leaders in their technical and professional fields.
- Focused on interdisciplinary study and more experience in aligned technical fields such as physics, materials science, statistics, biology, etc., and/or professional disciplines such as management of technology, business, law, and public policy.
- If admitted to the program, students must begin the graduate portion in the semester immediately following the conferral of the bachelor's degree.
- Only one additional year (two semesters) beyond the bachelor's degree.
- Only available to Berkeley EECS and L&S CS undergraduates.
- Participants in the program may serve as graduate student instructors (GSIs) with approval from their faculty research adviser and the Five-Year MS Committee.
- Participants in the program are self-funded.
For further information regarding this program, please see the department's website
Minor Requirements
Students who have a strong interest in an area of study outside their major often decide to complete a minor program. These programs have set requirements and are noted officially on the transcript in the memoranda section, but are not noted on diplomas.
General Guidelines
- All courses taken to fulfill the minor requirements below must be taken for graded credit.
- A minimum of three of the upper division courses taken to fulfill the minor requirements must be completed at UC Berkeley.
- A minimum grade point average (GPA) of 2.0 is required for courses used to fulfill the minor requirements.
- Courses used to fulfill the minor requirements may be applied toward the Seven-Course Breadth requirement, for Letters & Science students.
- No more than one upper division course may be used to simultaneously fulfill requirements for a student's major and minor programs.
- All minor requirements must be completed prior to the last day of finals during the semester in which you plan to graduate. If you cannot finish all courses required for the minor by that time, please see a College of Letters & Science adviser.
- All minor requirements must be completed within the unit ceiling. (For further information regarding the unit ceiling, please see the College Requirements tab.)
Requirements
Code | Title | Units |
---|---|---|
Lower Division Prerequisites | ||
COMPSCI 61A | The Structure and Interpretation of Computer Programs | 4 |
COMPSCI 61B | Data Structures | 4 |
or COMPSCI 61BL | Data Structures and Programming Methodology | |
COMPSCI 61C | Great Ideas of Computer Architecture (Machine Structures) | 4 |
COMPSCI 70 | Discrete Mathematics and Probability Theory | 4 |
Upper Division | ||
Select three upper division, technical courses in computer science |
College Requirements
Undergraduate students in the College of Letters & Science must fulfill the following requirements in addition to those required by their major program.
For detailed lists of courses that fulfill college requirements, please review the College of Letters & Sciences page in this Guide.
Entry Level Writing
All students who will enter the University of California as freshmen must demonstrate their command of the English language by fulfilling the Entry Level Writing requirement. Fulfillment of this requirement is also a prerequisite to enrollment in all reading and composition courses at UC Berkeley.
American History and American Institutions
The American History and Institutions requirements are based on the principle that a US resident graduated from an American university, should have an understanding of the history and governmental institutions of the United States.
American Cultures
American Cultures is the one requirement that all undergraduate students at Cal need to take and pass in order to graduate. The requirement offers an exciting intellectual environment centered on the study of race, ethnicity and culture of the United States. AC courses offer students opportunities to be part of research-led, highly accomplished teaching environments, grappling with the complexity of American Culture.
Quantitative Reasoning
The Quantitative Reasoning requirement is designed to ensure that students graduate with basic understanding and competency in math, statistics, or computer science. The requirement may be satisfied by exam or by taking an approved course.
Foreign Language
The Foreign Language requirement may be satisfied by demonstrating proficiency in reading comprehension, writing, and conversation in a foreign language equivalent to the second semester college level, either by passing an exam or by completing approved course work.
Reading and Composition
In order to provide a solid foundation in reading, writing, and critical thinking the College requires two semesters of lower division work in composition in sequence. Students must complete a first-level reading and composition course by the end of their second semester and a second-level course by the end of their fourth semester.
Breadth Requirements
The undergraduate breadth requirements provide Berkeley students with a rich and varied educational experience outside of their major program. As the foundation of a liberal arts education, breadth courses give students a view into the intellectual life of the University while introducing them to a multitude of perspectives and approaches to research and scholarship. Engaging students in new disciplines and with peers from other majors, the breadth experience strengthens interdisciplinary connections and context that prepares Berkeley graduates to understand and solve the complex issues of their day.
Unit Requirements
-
120 total units, including at least 60 L&S units
-
Of the 120 units, 36 must be upper division units
- Of the 36 upper division units, 6 must be taken in courses offered outside your major department
Residence Requirements
For units to be considered in "residence," you must be registered in courses on the Berkeley campus as a student in the College of Letters & Science. Most students automatically fulfill the residence requirement by attending classes here for four years. In general, there is no need to be concerned about this requirement, unless you go abroad for a semester or year or want to take courses at another institution or through UC Extension during your senior year. In these cases, you should make an appointment to meet an adviser to determine how you can meet the Senior Residence Requirement.
Note: Courses taken through UC Extension do not count toward residence.
Senior Residence Requirement
After you become a senior (with 90 semester units earned toward your BA degree), you must complete at least 24 of the remaining 30 units in residence in at least two semesters. To count as residence, a semester must consist of at least 6 passed units. Intercampus Visitor, EAP, and UC Berkeley-Washington Program (UCDC) units are excluded.
You may use a Berkeley Summer Session to satisfy one semester of the Senior Residence requirement, provided that you successfully complete 6 units of course work in the Summer Session and that you have been enrolled previously in the college.
Modified Senior Residence Requirement
Participants in the UC Education Abroad Program (EAP) or the UC Berkeley Washington Program (UCDC) may meet a Modified Senior Residence requirement by completing 24 (excluding EAP) of their final 60 semester units in residence. At least 12 of these 24 units must be completed after you have completed 90 units.
Upper Division Residence Requirement
You must complete in residence a minimum of 18 units of upper division courses (excluding EAP units), 12 of which must satisfy the requirements for your major.
UC and Campus Requirements
University of California Requirements
All students who will enter the University of California as freshmen must demonstrate their command of the English language by fulfilling the Entry Level Writing Requirement. Fulfillment of this requirement is also a prerequisite to enrollment in all reading and composition courses at UC Berkeley.
American History and American Institutions
The American History and Institutions requirements are based on the principle that a U.S. resident graduated from an American university should have an understanding of the history and governmental institutions of the United States.
Campus Requirement
American Cultures (AC) is the one requirement that all undergraduate students at UC Berkeley need to take and pass in order to graduate. The requirement offers an exciting intellectual environment centered on the study of race, ethnicity and culture in the United States. AC courses offer students opportunities to be part of research-led, highly accomplished teaching environments, grappling with the complexity of American Culture.
Plan of Study (BA)
For more detailed information regarding the courses listed below (e.g., elective information, GPA requirements, etc.,), please see the Major Requirements tab.
Freshman | |||||
---|---|---|---|---|---|
Fall | Units | Spring | Units | ||
COMPSCI 10 | 4 | COMPSCI 61A | 4 | ||
MATH 1A | 4 | MATH 1B | 4 | ||
Reading & Composition A | 4 | Reading & Composition B | 4 | ||
L&S Breadth | 3 | L&S Breadth | 3 | ||
15 | 15 | ||||
Sophomore | |||||
Fall | Units | Spring | Units | Summer | Units |
COMPSCI 61B | 4 | COMPSCI 61C | 4 | Internship | |
EL ENG 16A | 4 | COMPSCI 70 | 4 | OR | |
Lower/Upper Division Elective | 4 | L&S Breadth | 3 | Study Abroad | |
Lower Division Elective | 3 | American Cultures Reqt | 4 | ||
15 | 15 | 0 | |||
Junior | |||||
Fall | Units | Spring | Units | Summer | Units |
MATH 54 or EL ENG 16B | 4 | Upper Division CS major course (2 of 5) | 4 | Internship | |
UD CS major course (1 of 5) | 4 | Upper Division CS major course (3 of 5) | 4 | OR | |
L&S Breadth | 4 | Upper Division Elective major technical elective | 4 | Study Abroad | |
Lower/Upper Division Elective | 3 | Lower/Upper Division Elective | 3 | ||
15 | 15 | 0 | |||
Senior | |||||
Fall | Units | Spring | Units | ||
Upper Division CS major course (4 of 5) | 4 | Upper Division CS major course (5 of 5) | 4 | ||
L&S Breadth | 4 | Upper Division major technical elective | 4 | ||
UD L&S Elective | 4 | Lower/Upper Division Elective | 4 | ||
UD L&S Elective | 3 | Lower/Upper Division Elective | 3 | ||
15 | 15 | ||||
Total Units: 120 |
Course Definitions Upper Division major CS major course: course meeting the 20 units of upper division CS requirement (at least one of these must be a Design Course). Upper Division major technical elective: course meeting the 7 units of technical electives requirement. | |
• | NOTES This is a sample program plan. This plan assumes that the student has completed the Entry Level Writing, American History and Institutions, Quantitative Reasoning, and Foreign Language requirements prior to admission. |
• | Students are strongly advised to work with an academic adviser to determine a personal program plan. Your program plan will differ depending on previous credit received, your course schedule, and available offerings. |
• | COMPSCI 152, COMPSCI 162, COMPSCI 164, COMPSCI 169, COMPSCI 170, COMPSCI 184, and EECS 151 are known to have heavy workloads. It is not recommended to take these courses in combination. |
Accelerated Program Plans
For students considering graduating in less than four years, it's important to acknowledge the reasons to undertake such a plan of study. While there are advantages to pursuing a three-year degree plan such as reducing financial burdens, they are not for everyone and do involve sacrifices; especially with respect to participating in co-curricular activities, depth of study, and summer internships, which typically lead to jobs upon graduation. All things considered, please see the tables for three and three and a half year degree options.
Plan of Study (BS)
For more detailed information regarding the courses listed below (e.g., elective information, GPA requirements, etc.), please see the Major Requirements tab.
Freshman | |||
---|---|---|---|
Fall | Units | Spring | Units |
MATH 1A | 4 | MATH 1B | 4 |
COMPSCI 61A | 4 | COMPSCI 61B or 61BL | 4 |
Natural Science Elective1 | 3-5 | EL ENG 16A | 4 |
Reading and Composition course from List A | 4 | Reading and Composition course from List B | 4 |
15-17 | 16 | ||
Sophomore | |||
Fall | Units | Spring | Units |
MATH 53 | 4 | MATH 54 | 4 |
PHYSICS 7A | 4 | PHYSICS 7B | 4 |
EL ENG 16B | 4 | COMPSCI 61C or 61CL | 4 |
Humanities/Social Sciences course | 3-4 | Humanities/Social Sciences course | 3-4 |
15-16 | 15-16 | ||
Junior | |||
Fall | Units | Spring | Units |
COMPSCI 70 | 4 | EECS Upper Division Electives2 | 8 |
EECS Upper Division Electives2 | 8 | Humanities/Social Sciences course | 3-4 |
Humanities/Social Sciences course | 3-4 | Ethics/Social Implications of Technology3 | 1-4 |
Free Elective | 2 | ||
15-16 | 14-18 | ||
Senior | |||
Fall | Units | Spring | Units |
EECS Upper Division Elective2 | 4 | Technical Elective4 | 3 |
Technical Elective4 | 3 | Free Electives | 12 |
Free Electives | 8 | ||
15 | 15 | ||
Total Units: 120-129 |
1 | Students must complete one course from the following list: ASTRON 7A, ASTRON 7B, BIOLOGY 1A and BIOLOGY 1AL (must take both), BIOLOGY 1B, CHEM 1A and CHEM 1AL (must take both), CHEM 1B, CHEM 3A and CHEM 3AL (must take both), CHEM 3B and CHEM 3BL (must take both), CHEM 4A, CHEM 4B, MCELLBI 32 and MCELLBI 32L (must take both), PHYSICS 7C, or an upper-division course of 3 units or more in astronomy, biology, chemistry, earth and planetary science (other than EPS 170AC), integrative biology, molecular cell biology, physics, or plant & microbial biology. This requirement is listed in the freshman year curriculum, but many of the options would not be appropriate for a first year student. Complete this requirement in the semester when it is most appropriate to do so (i.e., take PHYSICS 7C after completing PHYSICS 7B). Your ESS or faculty adviser can help guide your selection on this requirement. |
2 | Students must complete a minimum of 20 units of upper division EECS courses. One course must provide a major design experience, and be selected from the following list: EECS 149, EL ENG C128, EL ENG 130, EL ENG 140, EL ENG 141, EL ENG 143, EL ENG C149, EL ENG 192, COMPSCI C149, COMPSCI 150, COMPSCI 160, COMPSCI 162, COMPSCI 164, COMPSCI 169, COMPSCI 184, COMPSCI 186, EECS 151 and EECS 151LA (must take both), EECS 151 and EECS 151LB (must take both). |
3 | Students must complete one course about engineering ethics or social implications of technology. This may be fulfilled by completing one of the following courses: BIO ENG 100*, COMPSCI 195, COMPSCI H195, ENE,RES C100*, ENGIN 125*, ENGIN 157AC*, IAS 157AC*, ISF 100D*. Courses marked with an asterisk fulfill both a humanities/social science requirement and the EECS ethics/social implication of technology requirement. |
4 | Students must complete a minimum of 45 units of engineering coursework. The 45 units of engineering courses cannot include:
|
Accelerated Program Plans
For students considering graduating in less than four years, it's important to acknowledge the reasons to undertake such a plan of study. While there are advantages to pursuing a three-year degree plan such as reducing financial burdens, they are not for everyone and do involve sacrifices; especially with respect to participating in co-curricular activities, depth of study, and summer internships, which typically lead to jobs upon graduation. All things considered, please see the tables for three and three and a half year degree options.
Student Learning Goals
Mission
- Preparing graduates to pursue postgraduate education in electrical engineering, computer science, or related fields.
- Preparing graduates for success in technical careers related to electrical and computer engineering, or computer science and engineering.
- Preparing graduates to become leaders in fields related to electrical and computer engineering or computer science and engineering.
Learning Goals for the Major
- An ability to apply knowledge of mathematics, science, and engineering.
- An ability to configure, apply test conditions, and evaluate outcomes of experimental systems.
- An ability to design systems, components, or processes that conform to given specifications and cost constraints.
- An ability to work cooperatively, respectfully, creatively, and responsibly as a member of a team.
- An ability to identify, formulate, and solve engineering problems.
- An understanding of the norms of expected behavior in engineering practice and their underlying ethical foundations.
- An ability to communicate effectively by oral, written, and graphical means.
- An awareness of global and societal concerns and their importance in developing engineering solutions.
- An ability to independently acquire and apply required information, and an appreciation of the associated process of lifelong learning.
- A knowledge of contemporary issues.
- An in-depth ability to use a combination of software, instrumentation, and experimental techniques practiced in circuits, physical electronics, communication, networks and systems, hardware, programming, and computer science theory.
Courses
Select a subject to view courses
Electrical Engineering and Computer Sciences
EECS 47D Completion of work in Electrical Engineering 16A 1 - 3 Units
Terms offered: Prior to 2007
This course allows students who have had a linear algebra and/or basic circuit theory course to complete the work in EE16A and be ready for EE16B or EE47E. The course focuses on the fundamentals of designing modern information devices and systems that interface with the real world and provides a comprehensive foundation for core EECS topics in signal processing, learning, control, and circuit design. Modeling is emphasized in a way that deepens mathematical maturity, and in both labs and homework, students will engage computationally, physically, and visually with the concepts being introduced in addition to traditional paper/pencil exercises.
Completion of work in Electrical Engineering 16A: Read More [+]
Rules & Requirements
Prerequisites: Math 1A, Math 1B or equivalent, CS 61A or equivalent (encouraged to be taken concurrently), College level courses in linear algebra and/or circuit theory, and consent of the instructor
Hours & Format
Fall and/or spring: 15 weeks - 2-8 hours of self-paced per week
Summer: 8 weeks - 4-13 hours of self-paced per week
Additional Details
Subject/Course Level: Electrical Engin and Computer Sci/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructors: Alon, Arcak, Ayazifar, Maharbiz, Niknejad, Ranade, Sahai, Subramanian, Tomlin
Completion of work in Electrical Engineering 16A: Read Less [-]
EECS 47E Completion of work in Electrical Engineering 16B 1 - 3 Units
Terms offered: Prior to 2007
This course allows students who have had a linear algebra and/or basic circuit theory course to complete the work in EE16B. The course focuses on the fundamentals of designing modern information devices and systems that interface with the real world and provides a comprehensive foundation for core EECS topics in signal processing (DFT), learning (SVD/PCA), feedback control, and circuit design. Modeling is emphasized in a way that deepens mathematical maturity, and in both labs and homework, students will engage computationally, physically, and visually with the concepts being introduced in addition to traditional paper/pencil exercises.
Completion of work in Electrical Engineering 16B: Read More [+]
Rules & Requirements
Prerequisites: Math 1A, Math 1B or equivalent, EE16A or EECS 47D or Math 54, CS 61A or equivalent, College level courses in linear algebra and/or circuit theory, and consent of the instructor
Hours & Format
Fall and/or spring: 15 weeks - 3-8 hours of self-paced per week
Summer: 8 weeks - 6-16 hours of self-paced per week
Additional Details
Subject/Course Level: Electrical Engin and Computer Sci/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructors: Alon, Arcak, Ayazifar, Maharbiz, Niknejad, Ranade, Sahai, Subramanian, Tomlin
Completion of work in Electrical Engineering 16B: Read Less [-]
EECS 47F Completion of work in Computer Science 70 1 - 3 Units
Terms offered: Prior to 2007
This course allows students who have had a discrete math and/or probability course to complete the work in CS70. Logic, infinity, and induction; applications include undecidability and stable marriage problem. Modular arithmetic and GCDs; applications include primality testing and cryptography. Polynomials; examples include error correcting codes and interpolation. Probability including sample spaces, independence, random variables, law of large numbers; examples include load balancing, existence arguments, Bayesian inference.
Completion of work in Computer Science 70: Read More [+]
Rules & Requirements
Prerequisites: Sophomore mathematical maturity, programming experience equivalent to that gained in 61A, a prior college level course on discrete math and/or probability, and consent of the instructor
Hours & Format
Fall and/or spring: 15 weeks - 3-8 hours of self-paced per week
Summer: 8 weeks - 6-16 hours of self-paced per week
Additional Details
Subject/Course Level: Electrical Engin and Computer Sci/Undergraduate
Grading/Final exam status: Letter grade. Final exam not required.
Instructors: Ranade, Rao, Sahai, Seshia, Vazirani, Walrand
EECS C106A Introduction to Robotics 4 Units
Terms offered: Fall 2018, Fall 2017
An introduction to the kinematics, dynamics, and control of robot manipulators, robotic vision, and sensing. The course covers forward and inverse kinematics of serial chain manipulators, the manipulator Jacobian, force relations, dynamics, and control. It presents elementary principles on proximity, tactile, and force sensing, vision sensors, camera calibration, stereo construction, and motion detection. The course concludes with current applications of robotics in active perception, medical robotics, and other areas.
Introduction to Robotics: Read More [+]
Rules & Requirements
Prerequisites: Electrical Engineering 120 or equivalent, consent of instructor
Credit Restrictions: Students will receive no credit for Electrical Engineering and Computer Science C106A/Bioengineering C106A after completing EE C106A/BioE C125, Electrical Engineering 206A, or Electrical Engineering and Computer Science 206A.
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture, 1 hour of discussion, and 3 hours of laboratory per week
Additional Details
Subject/Course Level: Electrical Engin and Computer Sci/Undergraduate
Grading/Final exam status: Letter grade. Alternative to final exam.
Instructor: Bajcsy
Also listed as: BIO ENG C106A
EECS C106B Robotic Manipulation and Interaction 4 Units
Terms offered: Spring 2018
This course is a sequel to EECS C106A/Bioengineering C106A, which covers kinematics, dynamics and control of a single robot. This course will cover dynamics and control of groups of robotic manipulators coordinating with each other and interacting with the environment. Concepts will include an introduction to grasping and the constrained manipulation, contacts and force control for interaction with the environment. We will also cover active perception guided manipulation, as well as the manipulation of non-rigid objects. Throughout, we will emphasize design and human-robot interactions, and applications to applications in manufacturing, service robotics, tele-surgery, and locomotion.
Robotic Manipulation and Interaction: Read More [+]
Rules & Requirements
Prerequisites: Electrical Engineering and Computer Science C106A/Bioengineering C106A or consent of the instructor
Credit Restrictions: Students will receive no credit for Electrical Engineering and Computer Science C106B/Bioengineering C106B after completing Electrical Engineering C106B/Bioengineering C125B, Electrical Engineering 206B, or Electrical Engineering and Computer Science 206B.
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture, 1 hour of discussion, and 3 hours of laboratory per week
Additional Details
Subject/Course Level: Electrical Engin and Computer Sci/Undergraduate
Grading/Final exam status: Letter grade. Alternative to final exam.
Instructors: Bajcsy, Sastry
Also listed as: BIO ENG C106B
EECS 126 Probability and Random Processes 4 Units
Terms offered: Fall 2018, Spring 2018, Fall 2017
This course covers the fundamentals of probability and random processes useful in fields such as networks, communication, signal processing, and control. Sample space, events, probability law. Conditional probability. Independence. Random variables. Distribution, density functions. Random vectors. Law of large numbers. Central limit theorem. Estimation and detection. Markov chains.
Probability and Random Processes: Read More [+]
Rules & Requirements
Prerequisites: CS 70 preferred but not required. Familiarity with linear algebra
Credit Restrictions: Students will receive no credit for EECS 126 after completing EE 126.
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture and 1 hour of discussion per week
Additional Details
Subject/Course Level: Electrical Engin and Computer Sci/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructor: Ramchandran
EECS 127 Optimization Models in Engineering 4 Units
Terms offered: Fall 2018, Spring 2018, Fall 2017
This course offers an introduction to optimization models and their applications, ranging from machine learning and statistics to decision-making and control, with emphasis on numerically tractable problems, such as linear or constrained least-squares optimization.
Optimization Models in Engineering: Read More [+]
Rules & Requirements
Prerequisites: EE 16A & 16B or consent of instructor
Credit Restrictions: Students will receive no credit for EECS 127 after taking EECS 227AT or Electrical Engineering 127/227AT.
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture and 1 hour of discussion per week
Additional Details
Subject/Course Level: Electrical Engin and Computer Sci/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructor: El Ghaoui
Formerly known as: Electrical Engineering 127
EECS 149 Introduction to Embedded Systems 4 Units
Terms offered: Fall 2018, Fall 2017, Fall 2016
This course introduces students to the basics of modeling, analysis, and design of embedded, cyber-physical systems. Students learn how to integrate computation with physical processes to meet a desired specification. Topics include models of computation, control, analysis and verification, interfacing with the physical world, real-time behaviors, mapping to platforms, and distributed embedded systems. The course has a strong laboratory component, with emphasis on a semester-long sequence of projects.
Introduction to Embedded Systems: Read More [+]
Objectives Outcomes
Course Objectives: To develop the skills to realize embedded systems that are safe, reliable, and efficient in their use of resources.
To learn how to model and design the joint dynamics of software, networks, and physical processes.
To learn to think critically about technologies that are available for achieving such joint dynamics.
Rules & Requirements
Prerequisites: EE 16A & B, or permission of instructor; CS 61C and CS 70
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture and 3 hours of laboratory per week
Additional Details
Subject/Course Level: Electrical Engin and Computer Sci/Undergraduate
Grading/Final exam status: Letter grade. Alternative to final exam.
Instructors: Seshia, Lee
EECS 151 Introduction to Digital Design and Integrated Circuits 3 Units
Terms offered: Fall 2018, Spring 2018, Fall 2017
An introduction to digital and system design. The material provides a top-down view of the principles, components, and methodologies for large scale digital system design. The underlying CMOS devices and manufacturing technologies are introduced, but quickly abstracted to higher-levels to focus the class on design of larger digital modules for both FPGAs (field programmable gate arrays) and ASICs (application specific integrated circuits). The class includes extensive use of industrial grade design automation and verification tools for assignments, labs and projects.
The class has two lab options: ASIC Lab (EECS 151LA) and FPGA Lab (EECS 151LB). Students must enroll in at least one of the labs concurrently with the class.
Introduction to Digital Design and Integrated Circuits: Read More [+]
Objectives Outcomes
Course Objectives: The Verilog hardware description language is introduced and used. Basic digital system design concepts, Boolean operations/combinational logic, sequential elements and finite-state-machines, are described. Design of larger building blocks such as arithmetic units, interconnection networks, input/output units, as well as memory design (SRAM, Caches, FIFOs) and integration are also covered. Parallelism, pipelining and other micro-architectural optimizations are introduced. A number of physical design issues visible at the architecture level are covered as well, such as interconnects, power, and reliability.
Rules & Requirements
Prerequisites: Electrical Engineering 16A & 16B
Credit Restrictions: Students must enroll concurrently in at least one the lab flavors EECS151LA or EECS151LB. Students wishing to take a second lab flavor next term can sign-up only for that Lab section and receive a Letter grade. The pre-requisite for “Lab-only” enrollment that term will be EECS151 from previous terms.
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture and 1 hour of discussion per week
Additional Details
Subject/Course Level: Electrical Engin and Computer Sci/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructors: Stojanovic, Wawrzynek
Introduction to Digital Design and Integrated Circuits: Read Less [-]
EECS 151LA Application Specific Integrated Circuits Laboratory 2 Units
Terms offered: Fall 2018, Spring 2018, Fall 2017
This lab lays the foundation of modern digital design by first presenting the scripting and hardware description language base for specification of digital systems and interactions with tool flows. The labs are centered on a large design with the focus on rapid design space exploration. The lab exercises culminate with a project design, e.g., implementation of a three-stage RISC-V processor with a register file and caches. The design is mapped to simulation and layout specification.
Application Specific Integrated Circuits Laboratory: Read More [+]
Objectives Outcomes
Course Objectives: Software testing of digital designs is covered leading to a set of exercises that cover the design flow. Digital synthesis, floor-planning, placement and routing are covered, as well as tools to evaluate timing and power consumption. Chip-level assembly is covered, including instantiation of custom blocks: I/O pads, memories, PLLs, etc.
Rules & Requirements
Prerequisites: Computer Science 61C, Electrical Engineering 16A & 16B, Electrical Engineering 105
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of laboratory per week
Additional Details
Subject/Course Level: Electrical Engin and Computer Sci/Undergraduate
Grading/Final exam status: Letter grade. Final exam not required.
Instructors: Stojanovic, Wawrzynek
Application Specific Integrated Circuits Laboratory: Read Less [-]
EECS 151LB Field-Programmable Gate Array Laboratory 2 Units
Terms offered: Fall 2018, Spring 2018, Fall 2017
This lab covers the design of modern digital systems with Field-Programmable Gate Array (FPGA) platforms. A series of lab exercises provide the background and practice of digital design using a modern FPGA design tool flow. Digital synthesis, partitioning, placement, routing, and simulation tools for FPGAs are covered in detail. The labs exercises culminate with a large design project, e.g., an implementation of a full three-stage RISC-V processor system, with caches, graphics acceleration, and external peripheral components. The design is mapped and demonstrated on an FPGA hardware platform.
Field-Programmable Gate Array Laboratory: Read More [+]
Rules & Requirements
Prerequisites: Electrical Engineering 16A & 16B; Electrical Engineering 105 recommended and Computer Science 61C
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of laboratory per week
Additional Details
Subject/Course Level: Electrical Engin and Computer Sci/Undergraduate
Grading/Final exam status: Letter grade. Final exam not required.
Instructors: Stojanovic, Wawrzynek
Computer Science
COMPSCI C8 Foundations of Data Science 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Summer 2018 8 Week Session, Spring 2018, Fall 2017
Foundations of data science from three perspectives: inferential thinking, computational thinking, and real-world relevance. Given data arising from some real-world phenomenon, how does one analyze that data so as to understand that phenomenon? The course teaches critical concepts and skills in computer programming and statistical inference, in conjunction with hands-on analysis of real-world datasets, including economic data, document collections, geographical data, and social networks. It delves into social and legal issues surrounding data analysis, including issues of privacy and data ownership.
Foundations of Data Science: Read More [+]
Rules & Requirements
Prerequisites: This course may be taken on its own, but students are encouraged to take it concurrently with a data science connector course (numbered 88 in a range of departments)
Hours & Format
Fall and/or spring: 15 weeks - 3-3 hours of lecture and 2-2 hours of laboratory per week
Summer: 8 weeks - 6 hours of lecture and 4 hours of laboratory per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Also listed as: INFO C8/STAT C8
COMPSCI C8R Introduction to Computational Thinking with Data 3 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Prior to 2007
An introduction to computational thinking and quantitative reasoning, preparing students for further coursework, especially Foundations of Data Science (CS/Info/Stat C8). Emphasizes the use of computation to gain insight about quantitative problems with real data. Expressions, data types, collections, and tables in Python. Programming practices, abstraction, and iteration. Visualizing univariate and bivariate data with bar charts, histograms, plots, and maps. Introduction to statistical concepts including averages and distributions, predicting one variable from another, association and causality, probability and probabilistic simulation. Relationship between numerical functions and graphs. Sampling and introduction to inference.
Introduction to Computational Thinking with Data: Read More [+]
Objectives Outcomes
Course Objectives: C8R also includes quantitative reasoning concepts that aren’t covered in Data 8. These include certain topics in: principles of data visualization; simulation of random processes; and understanding numerical functions through their graphs. This will help prepare students for computational and quantitative courses other than Data 8.
C8R takes advantage of the complementarity of computing and quantitative reasoning to enliven abstract ideas and build students’ confidence in their ability to solve real problems with quantitative tools. Students learn computer science concepts and immediately apply them to plot functions, visualize data, and simulate random events.
Foundations of Data Science (CS/Info/Stat C8, a.k.a. Data 8) is an increasingly popular class for entering students at Berkeley. Data 8 builds students’ computing skills in the first month of the semester, and students rely on these skills as the course progresses. For some students, particularly those with little prior exposure to computing, developing these skills benefits from further time and practice. C8R is a rapid introduction to Python programming, visualization, and data analysis, which will prepare students for success in Data 8.
Student Learning Outcomes: Students will be able to perform basic computations in Python, including working with tabular data.
Students will be able to understand basic probabilistic simulations.
Students will be able to understand the syntactic structure of Python code.
Students will be able to use good practices in Python programming.
Students will be able to use visualizations to understand univariate data and to identify associations or causal relationships in bivariate data.
Rules & Requirements
Credit Restrictions: Students who have taken COMPSCI/INFO/STAT C8 will receive no credit for COMPSCI/STAT C8R.
Hours & Format
Summer: 6 weeks - 4 hours of lecture, 2 hours of discussion, and 4 hours of laboratory per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructor: Adhikari
Also listed as: STAT C8R
Introduction to Computational Thinking with Data: Read Less [-]
COMPSCI 9A Matlab for Programmers 2 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Spring 2018, Fall 2017
Introduction to the constructs in the Matlab programming language, aimed at students who already know how to program. Array and matrix operations, functions and function handles, control flow, plotting and image manipulation, cell arrays and structures, and the Symbolic Mathematics toolbox.
Matlab for Programmers: Read More [+]
Rules & Requirements
Prerequisites: Programming experience equivalent to that gained in Computer Science 10; familiarity with applications of matrix processing
Repeat rules: Course may be repeated for credit up to a total of 4 units.Course may be repeated for a maximum of 4 units.
Hours & Format
Fall and/or spring: 15 weeks - 2 hours of self-paced per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Offered for pass/not pass grade only. Final exam required.
Instructor: Hilfinger
COMPSCI 9C C for Programmers 2 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Spring 2018, Fall 2017
Self-paced course in the C programming language for students who already know how to program. Computation, input and output, flow of control, functions, arrays, and pointers, linked structures, use of dynamic storage, and implementation of abstract data types.
C for Programmers: Read More [+]
Rules & Requirements
Prerequisites: Programming experience with pointers (or addresses in assembly language) and linked data structures equivalent to that gained in Computer Science 9B or 61A, or Engineering 7
Hours & Format
Fall and/or spring: 15 weeks - 2 hours of self-paced per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Offered for pass/not pass grade only. Final exam required.
Instructor: Hilfinger
COMPSCI 9D Scheme and Functional Programming for Programmers 2 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Spring 2016, Fall 2015, Spring 2015
Self-paced course in functional programming, using the Scheme programming language, for students who already know how to program. Recursion; higher-order functions; list processing; implementation of rule-based querying.
Scheme and Functional Programming for Programmers: Read More [+]
Rules & Requirements
Prerequisites: Programming experience similar to that gained in Computer Science 10 or Engineering 7
Hours & Format
Fall and/or spring: 15 weeks - 2 hours of self-paced per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Offered for pass/not pass grade only. Final exam required.
Instructor: Hilfinger
Scheme and Functional Programming for Programmers: Read Less [-]
COMPSCI 9E Productive Use of the UNIX Environment 2 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Spring 2018, Fall 2017
Use of UNIX utilities and scripting facilities for customizing the programming environment, organizing files (possibly in more than one computer account), implementing a personal database, reformatting text, and searching for online resources.
Productive Use of the UNIX Environment: Read More [+]
Rules & Requirements
Prerequisites: Programming experience similar to that gained in Computer Science 61A or Engineering 7; DOS or UNIX experience
Hours & Format
Fall and/or spring: 15 weeks - 2 hours of self-paced per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Offered for pass/not pass grade only. Final exam required.
Instructor: Hilfinger
COMPSCI 9F C++ for Programmers 2 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Spring 2018, Fall 2017
Self-paced introduction to the constructs provided in the C++ programming language for procedural and object-oriented programming, aimed at students who already know how to program.
C++ for Programmers: Read More [+]
Rules & Requirements
Prerequisites: Programming experience equivalent to that gained in Computer Science 9B or 61A, or Engineering 7
Hours & Format
Fall and/or spring: 15 weeks - 2 hours of self-paced per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Offered for pass/not pass grade only. Final exam required.
Instructor: Hilfinger
COMPSCI 9G JAVA for Programmers 2 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Spring 2018, Fall 2017
Self-paced course in Java for students who already know how to program. Applets; variables and computation; events and flow of control; classes and objects; inheritance; GUI elements; applications; arrays, strings, files, and linked structures; exceptions; threads.
JAVA for Programmers: Read More [+]
Rules & Requirements
Prerequisites: 9C or 9F or 61A plus experience with object-oriented programming or C-based language
Hours & Format
Fall and/or spring: 15 weeks - 2 hours of self-paced per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Offered for pass/not pass grade only. Final exam required.
Instructor: Garcia
COMPSCI 9H Python for Programmers 2 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Spring 2018, Fall 2017
Introduction to the constructs provided in the Python programming language, aimed at students who already know how to program. Flow of control; strings, tuples, lists, and dictionaries; CGI programming; file input and output; object-oriented programming; GUI elements.
Python for Programmers: Read More [+]
Rules & Requirements
Prerequisites: Programming experience equivalent to that gained in Computer Science 10
Hours & Format
Fall and/or spring: 15 weeks - 1 hour of self-paced per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Offered for pass/not pass grade only. Final exam required.
Instructor: Hilfinger
COMPSCI 10 The Beauty and Joy of Computing 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Summer 2018 8 Week Session, Spring 2018
An introduction to the beauty and joy of computing. The history, social implications, great principles, and future of computing. Beautiful applications that have changed the world. How computing empowers discovery and progress in other fields. Relevance of computing to the student and society will be emphasized. Students will learn the joy of programming a computer using a friendly, graphical language, and will complete a substantial team programming project related to their interests.
The Beauty and Joy of Computing: Read More [+]
Rules & Requirements
Credit Restrictions: Students will receive no credit for 10 after having taken W10, 61A, 61B, or 61C.
Hours & Format
Fall and/or spring: 15 weeks - 2 hours of lecture, 1 hour of discussion, and 4 hours of laboratory per week
Summer: 8 weeks - 4 hours of lecture, 2 hours of discussion, and 8 hours of laboratory per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructors: Garcia, Hug
COMPSCI W10 The Beauty and Joy of Computing 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2012
This course meets the programming prerequisite for 61A. An introduction to the beauty and joy of computing. The history, social implications, great principles, and future of computing. Beautiful applications that have changed the world. How computing empowers discovery and progress in other fields. Relevance of computing to the student and society will be emphasized. Students will learn the joy of programming a computer using a friendly, graphical language, and will complete a substantial team programming project related to their interests.
The Beauty and Joy of Computing: Read More [+]
Rules & Requirements
Credit Restrictions: Students will receive no credit for W10 after taking 10, 61A, 61B or 61C. A deficient grade in 10 may be removed by taking W10.
Hours & Format
Fall and/or spring: 15 weeks - 2 hours of web-based lecture and 5 hours of web-based discussion per week
Summer: 8 weeks - 4 hours of web-based lecture and 10 hours of web-based discussion per week
Online: This is an online course.
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructors: Garcia, Hug
COMPSCI 36 CS Scholars Seminar: The Educational Climate in CS & CS61A technical discussions 2 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Spring 2018
Computer Science 36 is a seminar for CS Scholars who are concurrently taking CS61A: The Structure and Interpretation of Computer Programs. CS Scholars is a cohort-model program to provide support in exploring and potentially declaring a CS major for students with little to no computational background prior to coming to the university. CS 36 provides an introduction to the CS curriculum at UC Berkeley, and the overall CS landscape in both industry and academia—through the lens of accessibility and its relevance to diversity. Additionally, CS36 provides technical instruction to review concepts in CS61A, in order to support CS Scholars’ individual learning and success in the CS61A course.
CS Scholars Seminar: The Educational Climate in CS & CS61A technical discussions: Read More [+]
Objectives Outcomes
Student Learning Outcomes: Students will know where to find several support services including tutoring, advising, counseling, and career advice.
Students will perform as well as possible in the CS61A prerequisite for the CS major. They will also have customized program plans for completing the major within four years.
Rules & Requirements
Prerequisites: Prerequisite satisfied Concurrently: Participating in the CS Scholars program, and concurrently taking Computer Science 61A
Hours & Format
Fall and/or spring: 15 weeks - 2 hours of seminar per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Offered for pass/not pass grade only. Alternative to final exam.
Instructor: Hunn
CS Scholars Seminar: The Educational Climate in CS & CS61A technical discussions: Read Less [-]
COMPSCI 39 Freshman/Sophomore Seminar 1.5 - 2 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2017, Spring 2017
Freshman and sophomore seminars offer lower division students the opportunity to explore an intellectual topic with a faculty member and a group of peers in a small-seminar setting. These seminars are offered in all campus departments; topics vary from department to department and from semester to semester. Enrollment limits are set by the faculty, but the suggested limit is 25.
Freshman/Sophomore Seminar: Read More [+]
Rules & Requirements
Prerequisites: Priority given to freshmen and sophomores
Repeat rules: Course may be repeated for credit when topic changes. Course may be repeated for credit when topic changes.
Hours & Format
Fall and/or spring: 15 weeks - 2-3 hours of seminar per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Offered for pass/not pass grade only. Final exam not required.
COMPSCI 39J Freshman/Sophomore Seminar 1.5 - 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2010, Spring 2010, Fall 2009
Freshman and sophomore seminars offer lower division students the opportunity to explore an intellectual topic with a faculty member and a group of peers in a small-seminar setting. These seminars are offered in all campus departments; topics vary from department to department and from semester to semester. Enrollment limits are set by the faculty, but the suggested limit is 25.
Freshman/Sophomore Seminar: Read More [+]
Rules & Requirements
Prerequisites: Priority given to freshmen and sophomores
Repeat rules: Course may be repeated for credit without restriction.
Hours & Format
Fall and/or spring: 15 weeks - 2-4 hours of seminar per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: The grading option will be decided by the instructor when the class is offered. Final exam required.
COMPSCI 39K Freshman/Sophomore Seminar 1.5 - 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Spring 2013, Spring 2011, Spring 2010
Freshman and sophomore seminars offer lower division students the opportunity to explore an intellectual topic with a faculty member and a group of peers in a small-seminar setting. These seminars are offered in all campus departments; topics vary from department to department and from semester to semester. Enrollment limits are set by the faculty, but the suggested limit is 25.
Freshman/Sophomore Seminar: Read More [+]
Rules & Requirements
Prerequisites: Priority given to freshmen and sophomores
Repeat rules: Course may be repeated for credit without restriction.
Hours & Format
Fall and/or spring: 15 weeks - 2-4 hours of seminar per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: The grading option will be decided by the instructor when the class is offered. Final exam required.
COMPSCI 39M Freshman/Sophomore Seminar 1.5 - 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2008
Freshman and sophomore seminars offer lower division students the opportunity to explore an intellectual topic with a faculty member and a group of peers in a small-seminar setting. These seminars are offered in all campus departments; topics vary from department to department and from semester to semester. Enrollment limits are set by the faculty, but the suggested limit is 25.
Freshman/Sophomore Seminar: Read More [+]
Rules & Requirements
Prerequisites: Priority given to freshmen and sophomores
Repeat rules: Course may be repeated for credit without restriction.
Hours & Format
Fall and/or spring: 15 weeks - 2-4 hours of seminar per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: The grading option will be decided by the instructor when the class is offered. Final exam required.
COMPSCI 39N Freshman/Sophomore Seminar 1.5 - 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2010, Fall 2009
Freshman and sophomore seminars offer lower division students the opportunity to explore an intellectual topic with a faculty member and a group of peers in a small-seminar setting. These seminars are offered in all campus departments; topics vary from department to department and from semester to semester. Enrollment limits are set by the faculty, but the suggested limit is 25.
Freshman/Sophomore Seminar: Read More [+]
Rules & Requirements
Prerequisites: Priority given to freshmen and sophomores
Repeat rules: Course may be repeated for credit without restriction.
Hours & Format
Fall and/or spring: 15 weeks - 2-4 hours of seminar per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: The grading option will be decided by the instructor when the class is offered. Final exam required.
COMPSCI 39P Freshman/Sophomore Seminar 1.5 - 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2013, Spring 2013, Fall 2012
Freshman and sophomore seminars offer lower division students the opportunity to explore an intellectual topic with a faculty member and a group of peers in a small-seminar setting. These seminars are offered in all campus departments; topics vary from department to department and from semester to semester. Enrollment limits are set by the faculty, but the suggested limit is 25.
Freshman/Sophomore Seminar: Read More [+]
Rules & Requirements
Prerequisites: Priority given to freshmen and sophomores
Repeat rules: Course may be repeated for credit without restriction.
Hours & Format
Fall and/or spring: 15 weeks - 2-4 hours of seminar per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: The grading option will be decided by the instructor when the class is offered. Final exam required.
COMPSCI 39Q Freshman/Sophomore Seminar 1.5 - 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2011
Freshman and sophomore seminars offer lower division students the opportunity to explore an intellectual topic with a faculty member and a group of peers in a small-seminar setting. These seminars are offered in all campus departments; topics vary from department to department and from semester to semester. Enrollment limits are set by the faculty, but the suggested limit is 25.
Freshman/Sophomore Seminar: Read More [+]
Rules & Requirements
Prerequisites: Priority given to freshmen and sophomores
Repeat rules: Course may be repeated for credit without restriction.
Hours & Format
Fall and/or spring: 15 weeks - 2-4 hours of seminar per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: The grading option will be decided by the instructor when the class is offered. Final exam required.
COMPSCI 39R Freshman/Sophomore Seminar 1.5 - 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Spring 2016, Spring 2013
Freshman and sophomore seminars offer lower division students the opportunity to explore an intellectual topic with a faculty member and a group of peers in a small-seminar setting. These seminars are offered in all campus departments; topics vary from department to department and from semester to semester. Enrollment limits are set by the faculty, but the suggested limit is 25.
Freshman/Sophomore Seminar: Read More [+]
Rules & Requirements
Prerequisites: Priority given to freshmen and sophomores
Repeat rules: Course may be repeated for credit without restriction.
Hours & Format
Fall and/or spring: 15 weeks - 2-4 hours of seminar per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: The grading option will be decided by the instructor when the class is offered. Final exam required.
COMPSCI 47A Completion of Work in Computer Science 61A 1 Unit
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Spring 2018, Fall 2017
Implementation of generic operations. Streams and iterators. Implementation techniques for supporting functional, object-oriented, and constraint-based programming in the Scheme programming language. Together with 9D, 47A constitutes an abbreviated, self-paced version of 61A for students who have already taken a course equivalent to 61B.
Completion of Work in Computer Science 61A: Read More [+]
Rules & Requirements
Prerequisites: 61B or equivalent, 9D, and consent of instructor
Credit Restrictions: Students will receive no credit for 47A after taking 61A.
Hours & Format
Fall and/or spring: 15 weeks - 0 hours of self-paced per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructor: Garcia
COMPSCI 47B Completion of Work in Computer Science 61B 1 Unit
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Spring 2018, Fall 2017
Iterators. Hashing, applied to strings and multi-dimensional structures. Heaps. Storage management. Design and implementation of a program containing hundreds of lines of code. Students with sufficient partial credit in 61B may, with consent of instructor, complete the credit in this self-paced course.
Completion of Work in Computer Science 61B: Read More [+]
Rules & Requirements
Prerequisites: A course in data structures, 9G or equivalent, and consent of instructor
Credit Restrictions: Students will receive no credit for 47B after taking 61B.
Hours & Format
Fall and/or spring: 15 weeks - 0 hours of self-paced per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructor: Garcia
COMPSCI 47C Completion of Work in Computer Science 61C 1 Unit
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Spring 2018, Fall 2017
MIPS instruction set simulation. The assembly and linking process. Caches and virtual memory. Pipelined computer organization. Students with sufficient partial credit in 61C may, with consent of instructor, complete the credit in this self-paced course.
Completion of Work in Computer Science 61C: Read More [+]
Rules & Requirements
Prerequisites: Experience with assembly language including writing an interrupt handler, 9C or equivalent, and consent of instructor
Credit Restrictions: Students will receive no credit for 47C after taking 61C.
Hours & Format
Fall and/or spring: 15 weeks - 0 hours of self-paced per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructor: Garcia
COMPSCI 61A The Structure and Interpretation of Computer Programs 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Summer 2018 8 Week Session, Spring 2018
An introduction to programming and computer science focused on abstraction techniques as means to manage program complexity. Techniques include procedural abstraction; control abstraction using recursion, higher-order functions, generators, and streams; data abstraction using interfaces, objects, classes, and generic operators; and language abstraction using interpreters and macros. The course exposes students to programming paradigms, including functional, object-oriented, and declarative approaches. It includes an introduction to asymptotic analysis of algorithms. There are several significant programming projects.
The Structure and Interpretation of Computer Programs: Read More [+]
Rules & Requirements
Prerequisites: Mathematics 1A (may be taken concurrently); programming experience equivalent to that gained in 3 or the Advanced Placement Computer Science A course
Credit Restrictions: Students will receive no credit for Computer Science 61A after completing Computer Science 47A or Computer Science 61AS. A deficient grade in Computer Science 61AS may be removed by taking Computer Science 61A.
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture, 1.5 hours of discussion, and 1.5 hours of laboratory per week
Summer: 8 weeks - 6 hours of lecture, 3 hours of discussion, and 3 hours of laboratory per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructors: Garcia, Hilfinger
The Structure and Interpretation of Computer Programs: Read Less [-]
COMPSCI 61AS The Structure and Interpretation of Computer Programs (Self-Paced) 1 - 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Spring 2016, Fall 2015, Summer 2015 8 Week Session
Introductory programming and computer science. Abstraction as means to control program complexity. Programming paradigms: functional, object-oriented, client/server, and declarative (logic). Control abstraction: recursion and higher order functions. Introduction to asymptotic analysis of algorithms. Data abstraction: abstract data types, type-tagged data, first class data types, sequences implemented as lists and as arrays, generic operators implemented with data-directed programming and with message passing. Implementation of object-oriented programming with closures over dispatch procedures. Introduction to interpreters and compilers. There are several significant programming projects. Course may be completed in one or two semesters. Students must complete a mimimum of two units during their first semester of 61AS.
The Structure and Interpretation of Computer Programs (Self-Paced): Read More [+]
Rules & Requirements
Prerequisites: Mathematics 1A (may be taken concurrently). Programming experience equivalent to that gained in 10 or the Advanced Placement Computer Science A course is recommended, but is not essential; students without this experience will begin at an earlier point in the online course
Credit Restrictions: Students will receive no credit for Computer Science 61AS after completing Computer Science 47A or Computer Science 61A. A deficient grade in Computer Science 61A may be removed by taking Computer Science 61AS.
Repeat rules: Course may be repeated for credit up to a total of 4 units.Course may be repeated for a maximum of 4 units.
Hours & Format
Fall and/or spring: 15 weeks - 6 hours of laboratory per week
Summer:
6 weeks - 15 hours of laboratory per week
8 weeks - 11 hours of laboratory per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructors: Garcia, Harvey, Hilfinger
The Structure and Interpretation of Computer Programs (Self-Paced): Read Less [-]
COMPSCI 61B Data Structures 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Spring 2018, Fall 2017
Fundamental dynamic data structures, including linear lists, queues, trees, and other linked structures; arrays strings, and hash tables. Storage management. Elementary principles of software engineering. Abstract data types. Algorithms for sorting and searching. Introduction to the Java programming language.
Data Structures: Read More [+]
Rules & Requirements
Prerequisites: Computer ScienceI 61A or Computer Science 88 or Engineering 7
Credit Restrictions: Students will receive no credit for Computer Science 61B after completing Computer Science47B or 61BL. A deficiency in Computer Science 61BL may be removed by taking Computer Science 61B.
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture, 1 hour of discussion, and 2 hours of laboratory per week
Summer: 8 weeks - 6 hours of lecture, 2 hours of discussion, and 4 hours of laboratory per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructors: Hilfinger, Shewchuk
COMPSCI 61BL Data Structures and Programming Methodology 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Summer 2018 8 Week Session, Summer 2017 8 Week Session, Summer 2016 8 Week Session
The same material as in 61B, but in a laboratory-based format.
Data Structures and Programming Methodology: Read More [+]
Rules & Requirements
Prerequisites: COMPSCI 61A or COMPSCI 88 or ENGIN 7
Credit Restrictions: Students will receive no credit for 61BL after taking 47B or 61B. Deficiency in 61B may be removed by taking 61BL.
Hours & Format
Fall and/or spring: 15 weeks - 1 hour of lecture and 6 hours of laboratory per week
Summer: 8 weeks - 2 hours of lecture and 12 hours of laboratory per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructor: Hilfinger
COMPSCI 61C Great Ideas of Computer Architecture (Machine Structures) 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Summer 2018 8 Week Session, Spring 2018
The internal organization and operation of digital computers. Machine architecture, support for high-level languages (logic, arithmetic, instruction sequencing) and operating systems (I/O, interrupts, memory management, process switching). Elements of computer logic design. Tradeoffs involved in fundamental architectural design decisions.
Great Ideas of Computer Architecture (Machine Structures): Read More [+]
Rules & Requirements
Prerequisites: 61A, along with either 61B or 61BL, or programming experience equivalent to that gained in 9C, 9F, or 9G
Credit Restrictions: Students will receive no credit for 61C after taking 47C or 61CL. Deficiency in 61C may be removed by taking 61CL.
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture, 1 hour of discussion, and 2 hours of laboratory per week
Summer: 8 weeks - 6 hours of lecture, 2 hours of discussion, and 4 hours of laboratory per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructors: Garcia, Katz, Stojanovic
Great Ideas of Computer Architecture (Machine Structures): Read Less [-]
COMPSCI 61CL Machine Structures (Lab-Centric) 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2009, Spring 2009, Fall 2008
The same material as in 61C but in a lab-centric format.
Machine Structures (Lab-Centric): Read More [+]
Rules & Requirements
Prerequisites: 61A, along with 61B or 61BL, or programming experience equivalent to that gained in 9C, 9F, or 9G
Credit Restrictions: Students will receive no credit for 61CL after taking 47C or 61C. Deficiency in 61C may be removed by taking 61CL.
Hours & Format
Fall and/or spring: 15 weeks - 2 hours of lecture, 1 hour of discussion, and 4 hours of laboratory per week
Summer: 8 weeks - 4 hours of lecture, 2 hours of discussion, and 8 hours of laboratory per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructors: Garcia, Patterson
COMPSCI W61A The Structure and Interpretation of Computer Programs (Online) 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Prior to 2007
An introduction to programming and computer science focused on abstraction techniques as means to manage program complexity. Techniques include procedural abstraction; control abstraction using recursion, higher-order functions, generators, and streams; data abstraction using interfaces, objects, classes, and generic operators; and language abstraction using interpreters and macros. The course exposes students to programming paradigms, including functional, object-oriented, and declarative approaches. It includes an introduction to asymptotic analysis of algorithms. There are several significant programming projects.
The Structure and Interpretation of Computer Programs (Online): Read More [+]
Rules & Requirements
Prerequisites: Mathematics 1A (may be taken concurrently)
Credit Restrictions: Students will receive no credit for Computer Science W61A after completing Computer Science 47A or Computer Science 61A. A deficient grade in Computer Science W61A may be removed by taking Computer Science 61A.
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of web-based lecture, 1.5 hours of laboratory, and 1.5 hours of web-based discussion per week
Online: This is an online course.
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructor: Denero
The Structure and Interpretation of Computer Programs (Online): Read Less [-]
COMPSCI W61B Data Structures (Online) 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Not yet offered
Identical to CS61B, but in an online format. Fundamental dynamic data structures, including linear lists, queues, trees, and other linked structures; arrays strings, and hash tables. Storage management. Elementary principles of software engineering. Abstract data types. Algorithms for sorting and searching. Introduction to the Java programming language.
Data Structures (Online): Read More [+]
Rules & Requirements
Prerequisites: Computer Science 61A or Computer Science W61A or Computer Science 88 or Engineering 7
Credit Restrictions: Students will receive no credit for Computer Science W61B after completing Computer Science 47B or or 61B or 61BL. A deficiency in Computer Science 61BL may be removed by taking Computer Science W61B.
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of web-based lecture, 2 hours of laboratory, and 1 hour of web-based discussion per week
Summer: 8 weeks - 6 hours of web-based lecture, 4 hours of laboratory, and 2 hours of web-based discussion per week
Online: This is an online course.
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructor: Hug
COMPSCI 70 Discrete Mathematics and Probability Theory 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Summer 2018 8 Week Session, Spring 2018
Logic, infinity, and induction; applications include undecidability and stable marriage problem. Modular arithmetic and GCDs; applications include primality testing and cryptography. Polynomials; examples include error correcting codes and interpolation. Probability including sample spaces, independence, random variables, law of large numbers; examples include load balancing, existence arguments, Bayesian inference.
Discrete Mathematics and Probability Theory: Read More [+]
Rules & Requirements
Prerequisites: Sophomore mathematical maturity, and programming experience equivalent to that gained in 3 or the Advanced Placement Computer Science A course
Credit Restrictions: Students will receive no credit for Computer Science 70 after taking Mathematics 55.
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture and 2 hours of discussion per week
Summer: 8 weeks - 6 hours of lecture and 4 hours of discussion per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructors: Rao, Vazirani, Wagner, Sahai
COMPSCI C79 Societal Risks and the Law 3 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Spring 2013
Defining, perceiving, quantifying and measuring risk; identifying risks and estimating their importance; determining whether laws and regulations can protect us from these risks; examining how well existing laws work and how they could be improved; evaluting costs and benefits. Applications may vary by term. This course cannot be used to complete engineering unit or technical elective requirements for students in the College of Engineering.
Societal Risks and the Law: Read More [+]
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture and 1 hour of discussion per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam not required.
Also listed as: POL SCI C79/STAT C79
COMPSCI 88 Computational Structures in Data Science 2 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Spring 2018, Fall 2016
Development of Computer Science topics appearing in Foundations of Data Science (C8); expands computational concepts and techniques of abstraction. Understanding the structures that underlie the programs, algorithms, and languages used in data science and elsewhere. Mastery of a particular programming language while studying general techniques for managing program complexity, e.g., functional, object-oriented, and declarative programming. Provides practical experience with composing larger systems through several significant programming projects.
Computational Structures in Data Science: Read More [+]
Objectives Outcomes
Course Objectives: Develop a foundation of computer science concepts that arise in the context of data analytics, including algorithm, representation, interpretation, abstraction, sequencing, conditional, function, iteration, recursion, types, objects, and testing, and develop proficiency in the application of these concepts in the context of a modern programming language at a scale of whole programs on par with a traditional CS introduction course.
Student Learning Outcomes: Students will be able to demonstrate a working knowledge of these concepts and a proficiency of programming based upon them sufficient to construct substantial stand-alone programs.
Rules & Requirements
Prerequisites: Math 1A. Also, this course is a Data Science connector course and may only be taken concurrently with or after COMPSCI C8/INFO C8/STAT C8. Students may take more than one Data Science connector (88) course if they wish, concurrent with or after having taken the C8 course
Credit Restrictions: Students may receive no credit for Computer Science 88 after completing Computer Science 61A.
Hours & Format
Fall and/or spring: 15 weeks - 1 hour of lecture and 2 hours of laboratory per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
COMPSCI 94 Special Topics 1 - 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2015
Topics will vary semester to semester. See the Computer Science Division announcements.
Special Topics: Read More [+]
Rules & Requirements
Prerequisites: Consent of instructor
Repeat rules: Course may be repeated for credit when topic changes. Course may be repeated for credit when topic changes.
Hours & Format
Fall and/or spring: 15 weeks - 1-4 hours of lecture per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
COMPSCI 97 Field Study 1 - 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2015, Spring 2015, Fall 2014
Students take part in organized individual field sponsored programs with off-campus companies or tutoring/mentoring relevant to specific aspects and applications of computer science on or off campus. Note Summer CPT or OPT students: written report required. Course does not count toward major requirements, but will be counted in the cumulative units toward graduation.
Field Study: Read More [+]
Rules & Requirements
Prerequisites: Consent of instructor (see department adviser)
Repeat rules: Course may be repeated for credit without restriction.
Hours & Format
Fall and/or spring: 15 weeks - 1-4 hours of fieldwork per week
Summer:
6 weeks - 2.5-10 hours of fieldwork per week
8 weeks - 2-7.5 hours of fieldwork per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Offered for pass/not pass grade only. Final exam not required.
COMPSCI 98 Directed Group Study 1 - 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2016, Fall 2015, Spring 2015
Seminars for group study of selected topics, which will vary from year to year. Intended for students in the lower division.
Directed Group Study: Read More [+]
Rules & Requirements
Prerequisites: Consent of instructor
Repeat rules: Course may be repeated for credit without restriction.
Hours & Format
Fall and/or spring: 15 weeks - 1-4 hours of directed group study per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Offered for pass/not pass grade only. Final exam not required.
COMPSCI 99 Individual Study and Research for Undergraduates 1 - 2 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2015, Fall 2014, Spring 2014
A course for lower division students in good standing who wish to undertake a program of individual inquiry initiated jointly by the student and a professor. There are no other formal prerequisites, but the supervising professor must be convinced that the student is able to profit by the program.
Individual Study and Research for Undergraduates: Read More [+]
Rules & Requirements
Prerequisites: GPA of 3.4 or better
Repeat rules: Course may be repeated for credit without restriction.
Hours & Format
Fall and/or spring: 15 weeks - 0 hours of independent study per week
Summer:
6 weeks - 1-5 hours of independent study per week
8 weeks - 1-4 hours of independent study per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Offered for pass/not pass grade only. Final exam not required.
Individual Study and Research for Undergraduates: Read Less [-]
COMPSCI C100 Principles & Techniques of Data Science 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Spring 2018, Fall 2017
In this course, students will explore the data science lifecycle, including question formulation, data collection and cleaning, exploratory data analysis and visualization, statistical inference and prediction, and decision-making. This class will focus on quantitative critical thinking and key principles and techniques needed to carry out this cycle. These include languages for transforming, querying and analyzing data; algorithms for machine learning methods including regression, classification and clustering; principles behind creating informative data visualizations; statistical concepts of measurement error and prediction; and techniques for scalable data processing.
Principles & Techniques of Data Science: Read More [+]
Rules & Requirements
Prerequisites: Computer Science/Information/Statistics C8 or Engineering 7; and either Computer Science 61A or Computer Science 88. Corequisite: Mathematics 54 or Electrical Engineering 16A
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture, 1 hour of discussion, and 1 hour of laboratory per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Also listed as: STAT C100
COMPSCI 146L Programmable Digital Systems Laboratory 2 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Spring 2015
Hardware description languages for digital system design and interactions with tool flows. Design, implementation, and verification of digital designs. Digital synthesis, partitioning, placement, routing, and simulation for Field-Programmable Gate Arrays. Large digital-system design concepts. Project design component – example, a full processor implementation with peripherals.
Programmable Digital Systems Laboratory: Read More [+]
Objectives Outcomes
Student Learning Outcomes: This course is a one-time offering to supplement the EE141 course offered in the Fall 2014, with a lab and project section that cover the design of larger digital systems on a programmable chip platform (FPGA). The EE141 lectures in the Fall 2014 already covered the necessary lecture material, so students who took the EE141 lab in the Fall of 2014 will have a chance to expand their skills into the area of FPGA Digital System Design. Hence the pre-requisite for this course is that a student has taken the EE141 course in the Fall 2014.
Rules & Requirements
Prerequisites: Computer Science 61C, Electrical Engineering 105 recommended and Electrical Engineering 141 (taken Fall 2014) - mandatory
Credit Restrictions: Students will receive no credit for Computer Science 146L after taking Fall 2014 version of Computer Science 150.
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of laboratory and 1 hour of discussion per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Offered for pass/not pass grade only. Final exam not required.
Instructor: Stojanovic
COMPSCI 152 Computer Architecture and Engineering 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Spring 2018, Fall 2016, Spring 2016
Instruction set architecture, microcoding, pipelining (simple and complex). Memory hierarchies and virtual memory. Processor parallelism: VLIW, vectors, multithreading. Multiprocessors.
Computer Architecture and Engineering: Read More [+]
Rules & Requirements
Prerequisites: 61C
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture and 2 hours of discussion per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Alternative to final exam.
Instructors: Asanovic, Culler, Kubiatowicz, Wawrzynek
COMPSCI 160 User Interface Design and Development 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Summer 2018 8 Week Session, Spring 2018
The design, implementation, and evaluation of user interfaces. User-centered design and task analysis. Conceptual models and interface metaphors. Usability inspection and evaluation methods. Analysis of user study data. Input methods (keyboard, pointing, touch, tangible) and input models. Visual design principles. Interface prototyping and implementation methodologies and tools. Students will develop a user interface for a specific task and target user group in teams.
User Interface Design and Development: Read More [+]
Rules & Requirements
Prerequisites: Computer Science 61B or 61BL
Credit Restrictions: Students will receive no credit for Computer Science 160 after taking Computer Science 260A.
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture and 1 hour of discussion per week
Summer: 8 weeks - 6 hours of lecture and 2 hours of discussion per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructors: Agrawala, Canny, Hartmann, Paulos
COMPSCI 161 Computer Security 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Spring 2018, Fall 2017
Introduction to computer security. Cryptography, including encryption, authentication, hash functions, cryptographic protocols, and applications. Operating system security, access control. Network security, firewalls, viruses, and worms. Software security, defensive programming, and language-based security. Case studies from real-world systems.
Computer Security: Read More [+]
Rules & Requirements
Prerequisites: 61C (Machine Structures), plus either 70 (Discrete Mathematics) or Mathematics 55
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture and 1 hour of discussion per week
Summer: 8 weeks - 6 hours of lecture and 2 hours of discussion per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructors: Paxson, Song, Tygar, Wagner
COMPSCI 162 Operating Systems and System Programming 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Spring 2018, Fall 2017
Basic concepts of operating systems and system programming. Utility programs, subsystems, multiple-program systems. Processes, interprocess communication, and synchronization. Memory allocation, segmentation, paging. Loading and linking, libraries. Resource allocation, scheduling, performance evaluation. File systems, storage devices, I/O systems. Protection, security, and privacy.
Operating Systems and System Programming: Read More [+]
Rules & Requirements
Prerequisites: Computer Science 61B, 61C, and 70
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture and 1 hour of discussion per week
Summer: 8 weeks - 6 hours of lecture and 2 hours of discussion per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructors: Joseph, Kubiatowicz, Stoica
COMPSCI 164 Programming Languages and Compilers 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Spring 2018, Fall 2017
Survey of programming languages. The design of modern programming languages. Principles and techniques of scanning, parsing, semantic analysis, and code generation. Implementation of compilers, interpreters, and assemblers. Overview of run-time organization and error handling.
Programming Languages and Compilers: Read More [+]
Rules & Requirements
Prerequisites: 61B and 61C
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture and 1 hour of discussion per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructors: Bodik, Hilfinger, Necula
COMPSCI 168 Introduction to the Internet: Architecture and Protocols 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Fall 2017, Fall 2016
This course is an introduction to the Internet architecture. We will focus on the concepts and fundamental design principles that have contributed to the Internet's scalability and robustness and survey the various protocols and algorithms used within this architecture. Topics include layering, addressing, intradomain routing, interdomain routing, reliable delivery, congestion control, and the core protocols (e.g., TCP, UDP, IP, DNS, and HTTP) and network technologies (e.g., Ethernet, wireless).
Introduction to the Internet: Architecture and Protocols: Read More [+]
Rules & Requirements
Prerequisites: Computer Science 61B and 162
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture and 1 hour of discussion per week
Summer: 8 weeks - 6 hours of lecture and 2 hours of discussion per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructors: Katz, Paxson, Ratnasamy, Shenker, Stoica
Introduction to the Internet: Architecture and Protocols: Read Less [-]
COMPSCI 169 Software Engineering 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2017, Summer 2017 8 Week Session, Fall 2016
Ideas and techniques for designing, developing, and modifying large software systems. Function-oriented and object-oriented modular design techniques, designing for re-use and maintainability. Specification and documentation. Verification and validation. Cost and quality metrics and estimation. Project team organization and management. Students will work in teams on a substantial programming project.
Software Engineering: Read More [+]
Rules & Requirements
Prerequisites: Computer Science 61B and 61C, and either Computer Science 70 or Mathematics 113
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture and 1 hour of discussion per week
Summer: 8 weeks - 6 hours of lecture and 2 hours of discussion per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructors: Brewer, Fox, Necula, Sen
COMPSCI 170 Efficient Algorithms and Intractable Problems 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Spring 2018, Fall 2017
Concept and basic techniques in the design and analysis of algorithms; models of computation; lower bounds; algorithms for optimum search trees, balanced trees and UNION-FIND algorithms; numerical and algebraic algorithms; combinatorial algorithms. Turing machines, how to count steps, deterministic and nondeterministic Turing machines, NP-completeness. Unsolvable and intractable problems.
Efficient Algorithms and Intractable Problems: Read More [+]
Rules & Requirements
Prerequisites: Computer Science 61B and 70
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture and 1 hour of discussion per week
Summer: 8 weeks - 6 hours of lecture and 2 hours of discussion per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructors: Demmel, Papadimitriou, Rao, Wagner, Vazirani
Efficient Algorithms and Intractable Problems: Read Less [-]
COMPSCI 172 Computability and Complexity 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Spring 2016, Fall 2015, Spring 2015
Finite automata, Turing machines and RAMs. Undecidable, exponential, and polynomial-time problems. Polynomial-time equivalence of all reasonable models of computation. Nondeterministic Turing machines. Theory of NP-completeness: Cook's theorem, NP-completeness of basic problems. Selected topics in language theory, complexity and randomness.
Computability and Complexity: Read More [+]
Rules & Requirements
Prerequisites: 170
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture and 1 hour of discussion per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructors: Papadimitriou, Seshia, Sinclair, Vazirani
COMPSCI 174 Combinatorics and Discrete Probability 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Spring 2018, Spring 2017, Spring 2016
Permutations, combinations, principle of inclusion and exclusion, generating functions, Ramsey theory. Expectation and variance, Chebychev's inequality, Chernov bounds. Birthday paradox, coupon collector's problem, Markov chains and entropy computations, universal hashing, random number generation, random graphs and probabilistic existence bounds.
Combinatorics and Discrete Probability: Read More [+]
Rules & Requirements
Prerequisites: 170
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture and 1 hour of discussion per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructors: Bartlett, Papadimitriou, Sinclair, Vazirani
COMPSCI 176 Algorithms for Computational Biology 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Fall 2017, Fall 2016
Algorithms and probabilistic models that arise in various computational biology applications: suffix trees, suffix arrays, pattern matching, repeat finding, sequence alignment, phylogenetics, genome rearrangements, hidden Markov models, gene finding, motif finding, stochastic context free grammars, RNA secondary structure. There are no biology prerequisites for this course, but a strong quantitative background will be essential.
Algorithms for Computational Biology: Read More [+]
Rules & Requirements
Prerequisites: Computer Science 70 and 170. Experience programming in a language such as C, C++, Java, or Python
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture and 1 hour of discussion per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructor: Song
COMPSCI 184 Foundations of Computer Graphics 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Spring 2018, Spring 2017, Fall 2016
Techniques of modeling objects for the purpose of computer rendering: boundary representations, constructive solids geometry, hierarchical scene descriptions. Mathematical techniques for curve and surface representation. Basic elements of a computer graphics rendering pipeline; architecture of modern graphics display devices. Geometrical transformations such as rotation, scaling, translation, and their matrix representations. Homogeneous coordinates, projective and perspective transformations. Algorithms for clipping, hidden surface removal, rasterization, and anti-aliasing. Scan-line based and ray-based rendering algorithms. Lighting models for reflection, refraction, transparency.
Foundations of Computer Graphics: Read More [+]
Rules & Requirements
Prerequisites: Computer Science 61B or 61BL; programming skills in C, C++, or Java; linear algebra and calculus
Credit Restrictions: Students will receive no credit for Comp Sci 184 after taking Comp Sci 284A.
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture and 1 hour of discussion per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructors: O'Brien, Sequin, Barsky, Ramamoorthi, Agrawala
COMPSCI 186 Introduction to Database Systems 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Spring 2018, Fall 2017
Access methods and file systems to facilitate data access. Hierarchical, network, relational, and object-oriented data models. Query languages for models. Embedding query languages in programming languages. Database services including protection, integrity control, and alternative views of data. High-level interfaces including application generators, browsers, and report writers. Introduction to transaction processing. Database system implementation to be done as term project.
Introduction to Database Systems: Read More [+]
Rules & Requirements
Prerequisites: 61B and 61C
Credit Restrictions: Students will receive no credit for Comp Sci 186 after taking Comp Sci 286A.
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture and 1 hour of discussion per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructors: Franklin, Hellerstein
COMPSCI 188 Introduction to Artificial Intelligence 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Summer 2018 8 Week Session, Spring 2018
Ideas and techniques underlying the design of intelligent computer systems. Topics include search, game playing, knowledge representation, inference, planning, reasoning under uncertainty, machine learning, robotics, perception, and language understanding.
Introduction to Artificial Intelligence: Read More [+]
Rules & Requirements
Prerequisites: Computer Science 61A; Computer Science 61B; Computer Science 70
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture and 1 hour of discussion per week
Summer: 8 weeks - 6 hours of lecture and 2 hours of discussion per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructors: Abbeel, Klein, Russell
COMPSCI 189 Introduction to Machine Learning 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Summer 2018 8 Week Session, Spring 2018
Theoretical foundations, algorithms, methodologies, and applications for machine learning. Topics may include supervised methods for regression and classication (linear models, trees, neural networks, ensemble methods, instance-based methods); generative and discriminative probabilistic models; Bayesian parametric learning; density estimation and clustering; Bayesian networks; time series models; dimensionality reduction; programming projects covering a variety of real-world applications.
Introduction to Machine Learning: Read More [+]
Rules & Requirements
Prerequisites: Mathematics 53 and 54; Computer Science 70 or consent of instructor
Credit Restrictions: Students will receive no credit for Comp Sci 189 after taking Comp Sci 289A.
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture and 1 hour of discussion per week
Summer: 8 weeks - 6 hours of lecture and 2 hours of discussion per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructors: Abbeel, Bartlett, Darrell, El Ghaoui, Jordan, Klein, Malik, Russell
COMPSCI C191 Quantum Information Science and Technology 3 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Spring 2017, Fall 2014, Spring 2012
This multidisciplinary course provides an introduction to fundamental conceptual aspects of quantum mechanics from a computational and informational theoretic perspective, as well as physical implementations and technological applications of quantum information science. Basic sections of quantum algorithms, complexity, and cryptography, will be touched upon, as well as pertinent physical realizations from nanoscale science and engineering.
Quantum Information Science and Technology: Read More [+]
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructors: Crommie, Vazirani, Whaley
Also listed as: CHEM C191/PHYSICS C191
COMPSCI 194 Special Topics 1 - 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Spring 2018, Fall 2017
Topics will vary semester to semester. See the Computer Science Division announcements.
Special Topics: Read More [+]
Rules & Requirements
Prerequisites: Consent of instructor
Repeat rules: Course may be repeated for credit when topic changes. Course may be repeated for credit when topic changes.
Hours & Format
Fall and/or spring: 15 weeks - 1-4 hours of lecture per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
COMPSCI 195 Social Implications of Computer Technology 1 Unit
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Spring 2018, Fall 2017
Topics include electronic community; the changing nature of work; technological risks; the information economy; intellectual property; privacy; artificial intelligence and the sense of self; pornography and censorship; professional ethics. Students will lead discussions on additional topics.
Social Implications of Computer Technology: Read More [+]
Rules & Requirements
Credit Restrictions: Students will receive no credit for 195 after taking C195/Interdisciplinary Field Study C155 or H195.
Hours & Format
Fall and/or spring: 15 weeks - 1.5 hours of lecture per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Offered for pass/not pass grade only. Final exam not required.
Instructor: Harvey
COMPSCI H195 Honors Social Implications of Computer Technology 3 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Spring 2014, Fall 2013, Spring 2013
Topics include electronic community; the changing nature of work; technological risks; the information economy; intellectual property; privacy; artificial intelligence and the sense of self; pornography and censorship; professional ethics. Students may lead discussions on additional topics.
Honors Social Implications of Computer Technology: Read More [+]
Rules & Requirements
Credit Restrictions: Student will receive no credit for H195 after taking 195 or C195.
Hours & Format
Fall and/or spring: 15 weeks - 1.5 hours of lecture and 1.5 hours of discussion per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Offered for pass/not pass grade only. Final exam not required.
Instructor: Harvey
Honors Social Implications of Computer Technology: Read Less [-]
COMPSCI H196A Senior Honors Thesis Research 1 - 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2016, Fall 2010, Spring 2010
Thesis work under the supervision of a faculty member. To obtain credit the student must, at the end of two semesters, submit a satisfactory thesis to the Electrical Engineering and Computer Science department archive. A total of four units must be taken. The units many be distributed between one or two semesters in any way. H196A-H196B count as graded technical elective units, but may not be used to satisfy the requirement for 27 upper division technical units in the College of Letters and Science with a major in Computer Science.
Senior Honors Thesis Research: Read More [+]
Rules & Requirements
Prerequisites: Open only to students in the computer science honors program
Hours & Format
Fall and/or spring: 15 weeks - 1-4 hours of independent study per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
COMPSCI H196B Senior Honors Thesis Research 1 - 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Spring 2010, Spring 2009, Fall 2008
Thesis work under the supervision of a faculty member. To obtain credit the student must, at the end of two semesters, submit a satisfactory thesis to the Electrical Engineering and Computer Science department archive. A total of four units must be taken. The units many be distributed between one or two semesters in any way. H196A-H196B count as graded technical elective units, but may not be used to satisfy the requirement for 27 upper division technical units in the College of Letters and Science with a major in Computer Science.
Senior Honors Thesis Research: Read More [+]
Rules & Requirements
Prerequisites: Open only to students in the computer science honors program
Hours & Format
Fall and/or spring: 15 weeks - 1-4 hours of independent study per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
COMPSCI 197 Field Study 1 - 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2016, Summer 2016 10 Week Session, Fall 2015
Students take part in organized individual field sponsored programs with off-campus companies or tutoring/mentoring relevant to specific aspects and applications of computer science on or off campus. Note Summer CPT or OPT students: written report required. Course does not count toward major requirements, but will be counted in the cumulative units toward graduation.
Field Study: Read More [+]
Rules & Requirements
Prerequisites: Consent of instructor (see department adviser)
Repeat rules: Course may be repeated for credit without restriction.
Hours & Format
Fall and/or spring: 15 weeks - 1-4 hours of fieldwork per week
Summer:
6 weeks - 2.5-10 hours of fieldwork per week
8 weeks - 2-7.5 hours of fieldwork per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Offered for pass/not pass grade only. Final exam not required.
COMPSCI 198 Directed Group Studies for Advanced Undergraduates 1 - 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Spring 2018, Fall 2017
Group study of selected topics in Computer Sciences, usually relating to new developments.
Directed Group Studies for Advanced Undergraduates: Read More [+]
Rules & Requirements
Prerequisites: 2.0 GPA or better; 60 units completed
Repeat rules: Course may be repeated for credit without restriction.
Hours & Format
Fall and/or spring: 15 weeks - 1-4 hours of directed group study per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Offered for pass/not pass grade only. Final exam not required.
Directed Group Studies for Advanced Undergraduates: Read Less [-]
COMPSCI 199 Supervised Independent Study 1 - 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2016, Fall 2015, Spring 2015
Supervised independent study. Enrollment restrictions apply.
Supervised Independent Study: Read More [+]
Rules & Requirements
Prerequisites: Consent of instructor and major adviser
Credit Restrictions: Enrollment is restricted; see the Introduction to Courses and Curricula section of this catalog.
Repeat rules: Course may be repeated for credit without restriction.
Hours & Format
Fall and/or spring: 15 weeks - 0 hours of independent study per week
Summer:
6 weeks - 1-5 hours of independent study per week
8 weeks - 1-4 hours of independent study per week
Additional Details
Subject/Course Level: Computer Science/Undergraduate
Grading/Final exam status: Offered for pass/not pass grade only. Final exam not required.
Electrical Engineering
EL ENG 16A Designing Information Devices and Systems I 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Spring 2018, Fall 2017
This course and its follow-on course EE16B focus on the fundamentals of designing modern information devices and systems that interface with the real world. Together, this course sequence provides a comprehensive foundation for core EECS topics in signal processing, learning, control, and circuit design while introducing key linear-algebraic concepts motivated by application contexts. Modeling is emphasized in a way that deepens mathematical maturity, and in both labs and homework, students will engage computationally, physically, and visually with the concepts being introduced in addition to traditional paper/pencil exercises. The courses are aimed at entering students as well as non-majors seeking a broad foundation for the field.
Designing Information Devices and Systems I: Read More [+]
Rules & Requirements
Prerequisites: Math 1A, Math 1B or equivalent (may be taken concurrently), CS 61A or equivalent (encouraged to be taken concurrently)
Credit Restrictions: Students will receive no credit for Electrical Engineering 16A after completing Electrical Engineering 20 or 40.
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture, 2 hours of discussion, and 3 hours of laboratory per week
Summer: 8 weeks - 6 hours of lecture, 4 hours of discussion, and 6 hours of laboratory per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructors: Alon, Arcak, Ayazifar, Maharbiz, Niknejad, Ranade, Sahai, Subramanian, Tomlin
EL ENG 16B Designing Information Devices and Systems II 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Spring 2018, Fall 2017
This course is a follow-on to Electrical Engineering 16A, and focuses on the fundamentals of designing and building modern information devices and systems that interface with the real world. The course sequence provides a comprehensive introduction to core EECS topics in circuit design, signals, and systems in an application-driven context. The courses are delivered assuming mathematical maturity and aptitude at roughly the level of having completed Math 1A-1B, and are aimed at entering students as well as non-majors seeking a broad introduction to the field.
Designing Information Devices and Systems II: Read More [+]
Rules & Requirements
Prerequisites: Electrical Engineering 16A, Designing Information Devices and Systems I
Credit Restrictions: Students will receive no credit for Electrical Engineering 16B after completing Electrical Engineering 20 or 40.<BR/>
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture, 2 hours of discussion, and 3 hours of laboratory per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructors: Alon, Ayazifar, Lustig, Maharbiz, Subramanian, Tomlin
EL ENG 24 Freshman Seminar 1 Unit
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2017, Spring 2017, Spring 2016
The Freshman Seminar Program has been designed to provide new students with the opportunity to explore an intellectual topic with a faculty member in a small seminar setting. Freshman seminars are offered in all campus departments, and topics may vary from department to department and semester to semester.
Freshman Seminar: Read More [+]
Rules & Requirements
Repeat rules: Course may be repeated for credit without restriction.
Hours & Format
Fall and/or spring: 15 weeks - 1 hour of seminar per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: The grading option will be decided by the instructor when the class is offered. Final exam required.
EL ENG 25 What Electrical Engineers Do--Feedback from Recent Graduates 1 Unit
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2011
A Berkeley Electrical Engineering and Computer Sciences degree opens the door to many opportunities, but what exactly are they? Graduation is only a few years away and it's not too early to find out. In this seminar students will hear from practicing engineers who recently graduated. What are they working on? Are they working in a team? What do they wish they had learned better? How did they find their jobs?
What Electrical Engineers Do--Feedback from Recent Graduates: Read More [+]
Hours & Format
Fall and/or spring: 15 weeks - 1 hour of lecture per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Offered for pass/not pass grade only. Final exam not required.
Instructor: Boser
What Electrical Engineers Do--Feedback from Recent Graduates: Read Less [-]
EL ENG 39 Freshman/Sophomore Seminar 2 - 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Fall 2017, Fall 2016
Freshman and sophomore seminars offer lower division students the opportunity to explore an intellectual topic with a faculty member and a group of peers in a small-seminar setting. These seminars are offered in all campus departments; topics vary from department to department and from semester to semester. Enrollment limits are set by the faculty, but the suggested limit is 25.
Freshman/Sophomore Seminar: Read More [+]
Rules & Requirements
Prerequisites: Priority given to freshmen and sophomores
Repeat rules: Course may be repeated for credit when topic changes. Course may be repeated for credit when topic changes.
Hours & Format
Fall and/or spring: 15 weeks - 2-4 hours of seminar per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: The grading option will be decided by the instructor when the class is offered. Final exam required.
EL ENG 42 Introduction to Digital Electronics 3 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2013, Summer 2013 8 Week Session, Spring 2013
This course serves as an introduction to the principles of electrical engineering, starting from the basic concepts of voltage and current and circuit elements of resistors, capacitors, and inductors. Circuit analysis is taught using Kirchhoff's voltage and current laws with Thevenin and Norton equivalents. Operational amplifiers with feedback are introduced as basic building blocks for amplication and filtering. Semiconductor devices including diodes and MOSFETS and their IV characteristics are covered. Applications of diodes for rectification, and design of MOSFETs in common source amplifiers are taught. Digital logic gates and design using CMOS as well as simple flip-flops are introduced. Speed and scaling issues for CMOS are considered. The course includes as motivating examples designs of high level applications including logic circuits, amplifiers, power supplies, and communication links.
Introduction to Digital Electronics: Read More [+]
Rules & Requirements
Prerequisites: Mathematics 1B
Credit Restrictions: Students will receive no credit for 42 after taking 40 or 100.
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture and 1 hour of discussion per week
Summer: 8 weeks - 6 hours of lecture and 2 hours of discussion per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
EL ENG 43 Introductory Electronics Laboratory 1 Unit
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2013, Summer 2013 8 Week Session, Spring 2013
Using and understanding electronics laboratory equipment such as oscilloscope, power supplies, function generator, multimeter, curve-tracer, and RLC-meter. Includes a term project of constructing and testing a robot or other appropriate electromechanical device.
Introductory Electronics Laboratory: Read More [+]
Rules & Requirements
Prerequisites: 42 (may be taken concurrently) or equivalent or consent of instructor
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of laboratory per week
Summer: 8 weeks - 3.5 hours of laboratory per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Offered for pass/not pass grade only. Final exam not required.
EL ENG 49 Electronics for the Internet of Things 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Spring 2018
Electronics has become pervasive in our lives as a powerful technology with applications in a wide range of fields including healthcare, environmental monitoring, robotics, or entertainment. This course teaches how to build electronic circuits that interact with the environment through sensors and actuators and how to communicate wirelessly with the internet to cooperate with other devices and with humans. In the laboratory students design and build representative samples such as solar harvesters, robots, that exchange information with or are controlled from the cloud.
Electronics for the Internet of Things: Read More [+]
Objectives Outcomes
Course Objectives: Electronics has become a powerful and ubiquitous technology supporting solutions to a wide range of applications in fields ranging from science, engineering, healthcare, environmental monitoring, transportation, to entertainment. The objective of this course is to teach students majoring in these and related subjects how to use electronic devices to solve problems in their areas of expertise.
Through the lecture and laboratory, students gain insight into the possibilities and limitations of the technology and how to use electronics to help solve problems. Students learn to use electronics to interact with the environment through sound, light, temperature, motion using sensors and actuators, and how to use electronic computation to orchestrate the interactions and exchange information wirelessly over the internet.
Student Learning Outcomes: Deploy electronic sensors and interface them to microcontrollers through digital and analog channels as well as common protocols (I2C, SPI),
Design, build and test electronic devices leveraging these concepts.
Interact with the internet and cloud services using protocols such as http, MQTT, Blynk,
Interface DC motors, steppers and servos to microcontrollers,
Represent information with voltage, current, power, and energy and how to measure these quantities with laboratory equipment,
To use and program low-cost and low-power microcontrollers for sensing, actuation, and information processing, and find and use program libraries supporting these tasks
Understand and make basic low-pass and high-pass filters, Wheatstone bridge etc.
Use electronics to sense and actuate physical parameters such as temperature, humidity, sound, light, and motion,
Rules & Requirements
Prerequisites: Engineering 7 or Computer Science 10 or equivalent background in computer programming (including Computer Science 61A, Data Science 8) Math 1a or equivalent background in Calculus
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture, 2 hours of discussion, and 3 hours of laboratory per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructor: Boser
EL ENG 84 Sophomore Seminar 1 or 2 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Fall 2017, Spring 2016
Sophomore seminars are small interactive courses offered by faculty members in departments all across the campus. Sophomore seminars offer opportunity for close, regular intellectual contact between faculty members and students in the crucial second year. The topics vary from department to department and semester to semester. Enrollment limited to 15 sophomores.
Sophomore Seminar: Read More [+]
Rules & Requirements
Prerequisites: At discretion of instructor
Repeat rules: Course may be repeated for credit when topic changes. Course may be repeated for credit when topic changes.
Hours & Format
Fall and/or spring:
5 weeks - 3-6 hours of seminar per week
10 weeks - 1.5-3 hours of seminar per week
15 weeks - 1-2 hours of seminar per week
Summer:
6 weeks - 2.5-5 hours of seminar per week
8 weeks - 1.5-3.5 hours of seminar per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: The grading option will be decided by the instructor when the class is offered. Final exam required.
EL ENG 97 Field Study 1 - 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Spring 2016, Fall 2015, Spring 2015
Students take part in organized individual field sponsored programs with off-campus companies or tutoring/mentoring relevant to specific aspects and applications of computer science on or off campus. Note Summer CPT or OPT students: written report required. Course does not count toward major requirements, but will be counted in the cumulative units toward graduation.
Field Study: Read More [+]
Rules & Requirements
Prerequisites: Consent of instructor (see department adviser)
Repeat rules: Course may be repeated for credit without restriction.
Hours & Format
Fall and/or spring: 15 weeks - 1-4 hours of fieldwork per week
Summer:
6 weeks - 2.5-10 hours of fieldwork per week
8 weeks - 2-7.5 hours of fieldwork per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Offered for pass/not pass grade only. Final exam not required.
EL ENG 98 Directed Group Study for Undergraduates 1 - 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2016, Spring 2016, Fall 2015
Group study of selected topics in electrical engineering, usually relating to new developments.
Directed Group Study for Undergraduates: Read More [+]
Rules & Requirements
Repeat rules: Course may be repeated for credit without restriction.
Hours & Format
Fall and/or spring: 15 weeks - 1-4 hours of directed group study per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Offered for pass/not pass grade only. Final exam not required.
EL ENG 99 Individual Study and Research for Undergraduates 1 - 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Spring 2016, Fall 2015, Spring 2015
Supervised independent study and research for students with fewer than 60 units completed.
Individual Study and Research for Undergraduates: Read More [+]
Rules & Requirements
Prerequisites: Freshman or sophomore standing and consent of instructor. Minimum GPA of 3.4 required
Credit Restrictions: Enrollment is restricted; see the Introduction to Courses and Curricula section of this catalog.
Repeat rules: Course may be repeated for credit without restriction.
Hours & Format
Fall and/or spring: 15 weeks - 1-4 hours of independent study per week
Summer:
6 weeks - 1-5 hours of independent study per week
8 weeks - 1-4 hours of independent study per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Offered for pass/not pass grade only. Final exam not required.
Individual Study and Research for Undergraduates: Read Less [-]
EL ENG 105 Microelectronic Devices and Circuits 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Spring 2018, Fall 2017
This course covers the fundamental circuit and device concepts needed to understand analog integrated circuits. After an overview of the basic properties of semiconductors, the p-n junction and MOS capacitors are described and the MOSFET is modeled as a large-signal device. Two port small-signal amplifiers and their realization using single stage and multistage CMOS building blocks are discussed. Sinusoidal steady-state signals are introduced and the techniques of phasor analysis are developed, including impedance and the magnitude and phase response of linear circuits. The frequency responses of single and multi-stage amplifiers are analyzed. Differential amplifiers are introduced.
Microelectronic Devices and Circuits: Read More [+]
Rules & Requirements
Prerequisites: EE 16A & B
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture, 1 hour of discussion, and 3 hours of laboratory per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
EL ENG C106A Introduction to Robotics 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2017, Fall 2016, Fall 2015
An introduction to the kinematics, dynamics, and control of robot manipulators, robotic vision, and sensing. The course covers forward and inverse kinematics of serial chain manipulators, the manipulator Jacobian, force relations, dynamics, and control. It presents elementary principles on proximity, tactile, and force sensing, vision sensors, camera calibration, stereo construction, and motion detection. The course concludes with current applications of robotics in active perception, medical robotics, and other areas.
Introduction to Robotics: Read More [+]
Rules & Requirements
Prerequisites: EE 120 or equivalent, consent of instructor
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture, 1 hour of discussion, and 3 hours of laboratory per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructor: Bajcsy
Formerly known as: Electrical Engineering C125/Bioengineering C125
Also listed as: BIO ENG C125
EL ENG C106B Robotic Manipulation and Interaction 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Spring 2017, Spring 2016
This course is a sequel to Electrical Engineering C106A/Bioengineering C125, which covers kinematics, dynamics and control of a single robot. This course will cover dynamics and control of groups of robotic manipulators coordinating with each other and interacting with the environment. Concepts will include an introduction to grasping and the constrained manipulation, contacts and force control for interaction with the environment. We will also cover active perception guided manipulation, as well as the manipulation of non-rigid objects. Throughout, we will emphasize design and human-robot interactions, and applications to applications in manufacturing, service robotics, tele-surgery, and locomotion.
Robotic Manipulation and Interaction: Read More [+]
Rules & Requirements
Prerequisites: Electrical Engineering C106A/Bioengineering C125 or consent of the instructor
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture, 1 hour of discussion, and 3 hours of laboratory per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Letter grade. Alternative to final exam.
Instructors: Bajcsy, Sastry
Also listed as: BIO ENG C125B
EL ENG 113 Power Electronics 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Spring 2018, Spring 2017, Spring 2016
Power conversion circuits and techniques. Characterization and design of magnetic devices including transformers, reactors, and electromagnetic machinery. Characteristics of bipolar and MOS power semiconductor devices. Applications to motor control, switching power supplies, lighting, power systems, and other areas as appropriate.
Power Electronics: Read More [+]
Rules & Requirements
Prerequisites: 105 or consent of instructor
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture and 3 hours of laboratory per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
EL ENG 117 Electromagnetic Fields and Waves 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Spring 2018, Spring 2017, Spring 2016
Review of static electric and magnetic fields and applications; Maxwell's equations; transmission lines; propagation and reflection of plane waves; introduction to guided waves, microwave networks, and radiation and antennas. Minilabs on statics, transmission lines, and waves. Explanation of cellphone antennas, WiFi communication, and other wireless technologies.
Electromagnetic Fields and Waves: Read More [+]
Rules & Requirements
Prerequisites: Electrical Engineering 16B, Mathematics 53, 54, Physics 7B, or equivalent that covers AC circuits and electromagnetics up to Maxwell's equations
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture, 1 hour of discussion, and 2 hours of laboratory per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructor: Yablonovitch
EL ENG 118 Introduction to Optical Engineering 3 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2017, Fall 2016, Fall 2015
Fundamental principles of optical systems. Geometrical optics and aberration theory. Stops and apertures, prisms, and mirrors. Diffraction and interference. Optical materials and coatings. Radiometry and photometry. Basic optical devices and the human eye. The design of optical systems. Lasers, fiber optics, and holography.
Introduction to Optical Engineering: Read More [+]
Rules & Requirements
Prerequisites: Math 53, and EE 16AB or Math 54
Credit Restrictions: Students will receive no credit for Electrical Engineering 118 after taking Electrical Engineering 218A. A deficient grade in Electrical Engineering 119 may be removed by taking Electrical Engineering 118.
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture and 1 hour of discussion per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructor: Waller
EL ENG 120 Signals and Systems 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Spring 2018, Fall 2017
Continuous and discrete-time transform analysis techniques with illustrative applications. Linear and time-invariant systems, transfer functions. Fourier series, Fourier transform, Laplace and Z-transforms. Sampling and reconstruction. Solution of differential and difference equations using transforms. Frequency response, Bode plots, stability analysis. Illustrated by analysis of communication systems and feedback control systems.
Signals and Systems: Read More [+]
Rules & Requirements
Prerequisites: EE 16A and 16B
Hours & Format
Fall and/or spring: 15 weeks - 4 hours of lecture and 1 hour of recitation per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
EL ENG 121 Introduction to Digital Communication Systems 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Spring 2016, Fall 2014, Fall 2013
Introduction to the basic principles of the design and analysis of modern digital communication systems. Topics include source coding, channel coding, baseband and passband modulation techniques, receiver design, and channel equalization. Applications to design of digital telephone modems, compact disks, and digital wireless communication systems. Concepts illustrated by a sequence of MATLAB exercises.
Introduction to Digital Communication Systems: Read More [+]
Rules & Requirements
Prerequisites: EE 16 A & B; CS 70
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture and 1 hour of discussion per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Introduction to Digital Communication Systems: Read Less [-]
EL ENG 122 Introduction to Communication Networks 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Spring 2018, Spring 2017, Spring 2016
This course focuses on the fundamentals of the wired and wireless communication networks. The course covers both the architectural principles for making these networks scalable and robust, as well as the key techniques essential for analyzing and designing them. The topics include graph theory, Markov chains, queuing, optimization techniques, the physical and link layers, switching, transport, cellular networks and Wi-Fi.
Introduction to Communication Networks: Read More [+]
Rules & Requirements
Prerequisites: Computer Science 70. Computer Science 70
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture and 1 hour of discussion per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
EL ENG 123 Digital Signal Processing 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Spring 2018, Spring 2017, Spring 2016
Discrete time signals and systems: Fourier and Z transforms, DFT, 2-dimensional versions. Digital signal processing topics: flow graphs, realizations, FFT, chirp-Z algorithms, Hilbert transform relations, quantization effects, linear prediction. Digital filter design methods: windowing, frequency sampling, S-to-Z methods, frequency-transformation methods, optimization methods, 2-dimensional filter design.
Digital Signal Processing: Read More [+]
Rules & Requirements
Prerequisites: 120
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture, 1 hour of discussion, and 1 hour of laboratory per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
EL ENG 126 Probability and Random Processes 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Spring 2017, Fall 2016, Spring 2016
This course covers the fundamentals of probability and random processes useful in fields such as networks, communication, signal processing, and control. Sample space, events, probability law. Conditional probability. Independence. Random variables. Distribution, density functions. Random vectors. Law of large numbers. Central limit theorem. Estimation and detection. Markov chains.
Probability and Random Processes: Read More [+]
Rules & Requirements
Prerequisites: EE 16A and 16B
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture and 1 hour of discussion per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
EL ENG C128 Feedback Control Systems 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Spring 2018, Fall 2017
Analysis and synthesis of linear feedback control systems in transform and time domains. Control system design by root locus, frequency response, and state space methods. Applications to electro-mechanical and mechatronics systems.
Feedback Control Systems: Read More [+]
Rules & Requirements
Prerequisites: EE 16A and either ME 132 or EE 120
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture, 1 hour of discussion, and 3 hours of laboratory per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Also listed as: MEC ENG C134
EL ENG 129 Neural and Nonlinear Information Processing 3 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Spring 2010, Fall 2009, Spring 2009
Principles of massively parallel real-time computation, optimization, and information processing via nonlinear dynamics and analog VLSI neural networks, applications selected from image processing, pattern recognition, feature extraction, motion detection, data compression, secure communication, bionic eye, auto waves, and Turing patterns.
Neural and Nonlinear Information Processing: Read More [+]
Rules & Requirements
Prerequisites: 120 or consent of instructor
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Letter grade. Final exam not required.
Instructor: Chua
EL ENG 130 Integrated-Circuit Devices 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Spring 2018, Fall 2017
Overview of electronic properties of semiconductor. Metal-semiconductor contacts, pn junctions, bipolar transistors, and MOS field-effect transistors. Properties that are significant to device operation for integrated circuits. Silicon device fabrication technology.
Integrated-Circuit Devices: Read More [+]
Rules & Requirements
Prerequisites: EE 16A and 16B
Credit Restrictions: Students will receive no credit for El Eng 130 after taking El Eng 230A.
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture and 1 hour of discussion per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
EL ENG 134 Fundamentals of Photovoltaic Devices 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Spring 2018, Spring 2017, Spring 2016
This course is designed to give an introduction to, and overview of, the fundamentals of photovoltaic devices. Students will learn how solar cells work, understand the concepts and models of solar cell device physics, and formulate and solve relevant physical problems related to photovoltaic devices. Monocrystalline, thin film and third generation solar cells will be discussed and analyzed. Light management and economic considerations in a solar cell system will also be covered.
Fundamentals of Photovoltaic Devices: Read More [+]
Rules & Requirements
Prerequisites: EE 16A and 16B
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture and 1 hour of discussion per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructor: Arias
EL ENG 137A Introduction to Electric Power Systems 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Fall 2017, Fall 2016
Overview of conventional electric power conversion and delivery, emphasizing a systemic understanding of the electric grid with primary focus at the transmission level, aimed toward recognizing needs and opportunities for technological innovation. Topics include aspects of a.c. system design, electric generators, components of transmission and distribution systems, power flow analysis, system planning and operation, performance measures, and limitations of legacy technologies.
Introduction to Electric Power Systems: Read More [+]
Rules & Requirements
Prerequisites: 16A & 16B or consent of instructor; Physics 7B
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture and 1 hour of discussion per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructor: von Meier
EL ENG 137B Introduction to Electric Power Systems 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Spring 2018, Spring 2017, Spring 2016
Overview of recent and potential future evolution of electric power systems with focus on new and emerging technologies for power conversion and delivery, primarily at the distribution level. Topics include power electronics applications, solar and wind generation, distribution system design and operation, electric energy storage, information management and communications, demand response, and microgrids.
Introduction to Electric Power Systems: Read More [+]
Rules & Requirements
Prerequisites: Electrical Engineering 137A or consent of instructor
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture and 1 hour of discussion per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructor: von Meier
EL ENG 140 Linear Integrated Circuits 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Spring 2018, Fall 2017
Single and multiple stage transistor amplifiers. Operational amplifiers. Feedback amplifiers, 2-port formulation, source, load, and feedback network loading. Frequency response of cascaded amplifiers, gain-bandwidth exchange, compensation, dominant pole techniques, root locus. Supply and temperature independent biasing and references. Selected applications of analog circuits such as analog-to-digital converters, switched capacitor filters, and comparators. Hardware laboratory and design project.
Linear Integrated Circuits: Read More [+]
Rules & Requirements
Prerequisites: Electrical Engineering 105
Credit Restrictions: Students will receive no credit for El Eng 140 after taking El Eng 240A.
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture, 1 hour of discussion, and 3 hours of laboratory per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructors: Alon, Sanders
EL ENG 142 Integrated Circuits for Communications 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Fall 2017, Spring 2016
Analysis and design of electronic circuits for communication systems, with an emphasis on integrated circuits for wireless communication systems. Analysis of noise and distortion in amplifiers with application to radio receiver design. Power amplifier design with application to wireless radio transmitters. Radio-frequency mixers, oscillators, phase-locked loops, modulators, and demodulators.
Integrated Circuits for Communications: Read More [+]
Rules & Requirements
Prerequisites: EE 16A & B; EE 105
Credit Restrictions: Students will receive no credit for El Eng 142 after taking El Eng 242A.
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture, 1 hour of discussion, and 3 hours of laboratory per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
EL ENG 143 Microfabrication Technology 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Spring 2018, Fall 2017
Integrated circuit device fabrication and surface micromachining technology. Thermal oxidation, ion implantation, impurity diffusion, film deposition, expitaxy, lithography, etching, contacts and interconnections, and process integration issues. Device design and mask layout, relation between physical structure and electrical/mechanical performance. MOS transistors and poly-Si surface microstructures will be fabricated in the laboratory and evaluated.
Microfabrication Technology: Read More [+]
Rules & Requirements
Prerequisites: Physics 7B or equivalent
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture and 3 hours of laboratory per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
EL ENG 144 Fundamental Algorithms for Systems Modeling, Analysis, and Optimization 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2015, Fall 2014, Fall 2013
The modeling, analysis, and optimization of complex systems requires a range of algorithms and design software. This course reviews the fundamental techniques underlying the design methodology for complex systems, using integrated circuit design as example. Topics include design flows, discrete and continuous models and algorithms, and strategies for implementing algorithms efficiently and correctly in software. Laboratory assignments and a class project will expose students to state-of-the-art tools.
Fundamental Algorithms for Systems Modeling, Analysis, and Optimization: Read More [+]
Rules & Requirements
Prerequisites: EE 16A; Computer Science 70 or consent of instructor
Hours & Format
Fall and/or spring: 15 weeks - 4 hours of lecture per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructors: Keutzer, Lee, Roychowdhury, Seshia
Fundamental Algorithms for Systems Modeling, Analysis, and Optimization: Read Less [-]
EL ENG C145B Medical Imaging Signals and Systems 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Fall 2017, Fall 2016
Biomedical imaging is a clinically important application of engineering, applied mathematics, physics, and medicine. In this course, we apply linear systems theory and basic physics to analyze X-ray imaging, computerized tomography, nuclear medicine, and MRI. We cover the basic physics and instrumentation that characterizes medical image as an ideal perfect-resolution image blurred by an impulse response. This material could prepare the student for a career in designing new medical imaging systems that reliably detect small tumors or infarcts.
Medical Imaging Signals and Systems: Read More [+]
Rules & Requirements
Prerequisites: Electrical Engineering 16A and 16B
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture and 1 hour of discussion per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructor: Conolly
Also listed as: BIO ENG C165
EL ENG C145L Introductory Electronic Transducers Laboratory 3 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2014, Fall 2013, Fall 2012
Laboratory exercises exploring a variety of electronic transducers for measuring physical quantities such as temperature, force, displacement, sound, light, ionic potential; the use of circuits for low-level differential amplification and analog signal processing; and the use of microcomputers for digital sampling and display. Lectures cover principles explored in the laboratory exercises; construction, response and signal to noise of electronic transducers and actuators; and design of circuits for sensing and controlling physical quantities.
Introductory Electronic Transducers Laboratory: Read More [+]
Hours & Format
Fall and/or spring: 15 weeks - 2 hours of lecture and 3 hours of laboratory per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructor: Derenzo
Also listed as: BIO ENG C145L
Introductory Electronic Transducers Laboratory: Read Less [-]
EL ENG C145M Introductory Microcomputer Interfacing Laboratory 3 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Spring 2013, Spring 2012, Spring 2011
Laboratory exercises constructing basic interfacing circuits and writing 20-100 line C programs for data acquisition, storage, analysis, display, and control. Use of the IBM PC with microprogrammable digital counter/timer, parallel I/O port. Circuit components include anti-aliasing filters, the S/H amplifier, A/D and D/A converters. Exercises include effects of aliasing in periodic sampling, fast Fourier transforms of basic waveforms, the use of the Hanning filter for leakage reduction, Fourier analysis of the human voice, digital filters, and control using Fourier deconvolution. Lectures cover principles explored in the lab exercises and design of microcomputer-based systems for data acquisitions, analysis and control.
Introductory Microcomputer Interfacing Laboratory: Read More [+]
Rules & Requirements
Prerequisites: EE 16A & 16B
Hours & Format
Fall and/or spring: 15 weeks - 2 hours of lecture and 3 hours of laboratory per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructor: Derenzo
Also listed as: BIO ENG C145M
Introductory Microcomputer Interfacing Laboratory: Read Less [-]
EL ENG C145O Laboratory in the Mechanics of Organisms 3 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Spring 2015, Spring 2014, Spring 2013, Spring 2012
Introduction to laboratory and field study of the biomechanics of animals and plants using fundamental biomechanical techniques and equipment. Course has a series of rotations involving students in experiments demonstrating how solid and fluid mechanics can be used to discover the way in which diverse organisms move and interact with their physical environment. The laboratories emphasize sampling methodology, experimental design, and statistical interpretation of results. Latter third of course devoted to independent research projects. Written reports and class presentation of project results are required.
Laboratory in the Mechanics of Organisms: Read More [+]
Rules & Requirements
Prerequisites: Integrative Biology 135 or consent of instructor; for Electrical Engineering and Computer Science students, Electrical Engineering 105, 120 or Computer Science 184
Credit Restrictions: Students will receive no credit for C135L after taking 135L.
Hours & Format
Fall and/or spring: 15 weeks - 6 hours of laboratory, 1 hour of discussion, and 1 hour of fieldwork per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Formerly known as: Integrative Biology 135L
Also listed as: BIO ENG C136L/INTEGBI C135L
EL ENG 146L Application Specific Integrated Circuits Laboratory 2 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Spring 2015
This is a lab course that covers the design of modern Application-Specific Integrated Circuits (ASICs). The labs lay the foundation of modern digital design by first setting-up the scripting and hardware description language base for specification of digital systems and interactions with tool flows. Software testing of digital designs is covered leading into a set of labs that cover the design flow. Digital synthesis, floorplanning, placement and routing are covered, as well as tools to evaluate design timing and power. Chip-level assembly is covered, instantiation of custom IP blocks: I/O pads, memories, PLLs, etc. The labs culminate with a project design – implementation of a 3-stage RISC-V processor with register file and caches.
Application Specific Integrated Circuits Laboratory: Read More [+]
Objectives Outcomes
Course Objectives: This course is a one-time offering to supplement the CS150 course offered in the Fall 2014, with a lab and project section that cover the Application-Specific Integrated Circuit Design. The CS150 lectures in the Fall 2014 already covered the necessary lecture material, so students who took the CS150 lab in the Fall of 2014 will have a chance to expand their skills into the area of Application-Specific Integrated Circuit design.
Hence the pre-requisite for this course is that a student has taken the CS150 course in the Fall 2014.
Rules & Requirements
Prerequisites: Electrical Engineering 40; Electrical Engineering 105 recommended and Computer Science 150 (taken Fall 2014) - mandatory
Credit Restrictions: Students will receive no credit for Electrical Engineering 146L after taking Fall 2014 version of Electrical Engineering 141/241A.
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of laboratory and 1 hour of discussion per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Offered for pass/not pass grade only. Final exam not required.
Instructor: Stojanovic
Application Specific Integrated Circuits Laboratory: Read Less [-]
EL ENG 147 Introduction to Microelectromechanical Systems (MEMS) 3 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Fall 2017, Fall 2016
This course will teach fundamentals of micromachining and microfabrication techniques, including planar thin-film process technologies, photolithographic techniques, deposition and etching techniques, and the other technologies that are central to MEMS fabrication. It will pay special attention to teaching of fundamentals necessary for the design and analysis of devices and systems in mechanical, electrical, fluidic, and thermal energy/signal domains, and will teach basic techniques for multi-domain analysis. Fundamentals of sensing and transduction mechanisms including capacitive and piezoresistive techniques, and design and analysis of micmicromachined miniature sensors and actuators using these techniques will be covered.
Introduction to Microelectromechanical Systems (MEMS): Read More [+]
Rules & Requirements
Prerequisites: Electrical Engineering 16A and 16B
Credit Restrictions: Students will receive no credit for El Eng 147 after taking El Eng 247A.
Hours & Format
Fall and/or spring: 15 weeks - 3 hours of lecture and 1 hour of discussion per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructors: Maharbiz, Nguyen, Pister
Introduction to Microelectromechanical Systems (MEMS): Read Less [-]
EL ENG 192 Mechatronic Design Laboratory 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Spring 2018, Spring 2017, Spring 2016
Design project course, focusing on application of theoretical principles in electrical engineering to control of a small-scale system, such as a mobile robot. Small teams of students will design and construct a mechatronic system incorporating sensors, actuators, and intelligence.
Mechatronic Design Laboratory: Read More [+]
Rules & Requirements
Prerequisites: EE120, EE16A+EE16B, CS61ABC
Hours & Format
Fall and/or spring: 15 weeks - 1.5 hours of lecture and 10 hours of laboratory per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
Instructor: Fearing
EL ENG 194 Special Topics 1 - 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Spring 2018, Spring 2017
Topics will vary semester to semester. See the Electrical Engineering announcements.
Special Topics: Read More [+]
Rules & Requirements
Prerequisites: Consent of instructor
Repeat rules: Course may be repeated for credit when topic changes. Course may be repeated for credit when topic changes.
Hours & Format
Fall and/or spring: 15 weeks - 1-4 hours of lecture per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Letter grade. Final exam required.
EL ENG H196A Senior Honors Thesis Research 1 - 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Spring 2016, Fall 2015, Spring 2015
Thesis work under the supervision of a faculty member. A minimum of four units must be taken; the units may be distributed between one and two semesters in any way. To obtain credit a satisfactory thesis must be submitted at the end of the two semesters to the Electrical and Engineering and Computer Science Department archive. Students who complete four units and a thesis in one semester receive a letter grade at the end of H196A. Students who do not, receive an IP in H196A and must enroll in H196B.
Senior Honors Thesis Research: Read More [+]
Rules & Requirements
Prerequisites: Open only to students in the Electrical Engineering and Computer Science honors program
Hours & Format
Fall and/or spring: 15 weeks - 1-4 hours of independent study per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Letter grade. This is part one of a year long series course. A provisional grade of IP (in progress) will be applied and later replaced with the final grade after completing part two of the series. Final exam required.
EL ENG H196B Senior Honors Thesis Research 1 - 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Spring 2016, Spring 2015, Spring 2014
Thesis work under the supervision of a faculty member. A minimum of four units must be taken; the units may be distributed between one and two semesters in any way. To obtain credit a satisfactory thesis must be submitted at the end of the two semesters to the Electrical and Engineering and Computer Science Department archive. Students who complete four units and a thesis in one semester receive a letter grade at the end of H196A. Students who do not, receive an IP in H196A and must enroll in H196B.
Senior Honors Thesis Research: Read More [+]
Rules & Requirements
Prerequisites: Open only to students in the Electrical Engineering and Computer Science honors program
Hours & Format
Fall and/or spring: 15 weeks - 1-4 hours of independent study per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Letter grade. This is part two of a year long series course. Upon completion, the final grade will be applied to both parts of the series. Final exam required.
EL ENG 197 Field Study 1 - 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Spring 2018, Spring 2016, Fall 2015
Students take part in organized individual field sponsored programs with off-campus companies or tutoring/mentoring relevant to specific aspects and applications of computer science on or off campus. Note Summer CPT or OPT students: written report required. Course does not count toward major requirements, but will be counted in the cumulative units toward graduation.
Field Study: Read More [+]
Rules & Requirements
Prerequisites: Consent of instructor (see department adviser)
Repeat rules: Course may be repeated for credit without restriction.
Hours & Format
Fall and/or spring: 15 weeks - 1-4 hours of fieldwork per week
Summer:
6 weeks - 2.5-10 hours of fieldwork per week
8 weeks - 2-7.5 hours of fieldwork per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Offered for pass/not pass grade only. Final exam not required.
EL ENG 198 Directed Group Study for Advanced Undergraduates 1 - 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Spring 2018, Spring 2017, Fall 2016
Group study of selected topics in electrical engineering, usually relating to new developments.
Directed Group Study for Advanced Undergraduates: Read More [+]
Rules & Requirements
Prerequisites: 2.0 GPA or better; 60 units completed
Repeat rules: Course may be repeated for credit without restriction.
Hours & Format
Fall and/or spring: 15 weeks - 1-4 hours of directed group study per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Offered for pass/not pass grade only. Final exam not required.
Directed Group Study for Advanced Undergraduates: Read Less [-]
EL ENG 199 Supervised Independent Study 1 - 4 Units
Offered through: Electrical Engin and Computer Sci
Terms offered: Fall 2018, Spring 2018, Fall 2017
Supervised independent study. Enrollment restrictions apply.
Supervised Independent Study: Read More [+]
Rules & Requirements
Prerequisites: Consent of instructor and major adviser
Credit Restrictions: Enrollment is restricted; see the Introduction to Courses and Curricula section of this catalog.
Repeat rules: Course may be repeated for credit without restriction.
Hours & Format
Fall and/or spring: 15 weeks - 0 hours of independent study per week
Summer:
6 weeks - 1-5 hours of independent study per week
8 weeks - 1-4 hours of independent study per week
Additional Details
Subject/Course Level: Electrical Engineering/Undergraduate
Grading/Final exam status: Offered for pass/not pass grade only. Final exam not required.
Contact Information
Department of Electrical Engineering and Computer Science
379 Soda Hall
Phone: 510-664-4436
Executive Director, Center for Student Affairs
Susanne Kauer
221 Cory Hall
Phone: 510-642-3694
Director of Undergraduate Matters and Computer Science Advising
Emerald Templeton
377 Soda Hall
Phone: 510-642-7214
Director of Undergraduate Student Instruction
Christopher Hunn
341C Soda
Phone: (510) 664-7546
CS Scholars Program Coordinator/CS Adviser
Charlene Hughes
203 Cory Hall
Phone: 510-642-2357
Course Scheduler & Joint Majors Project Analyst
Michael-David Sasson
379 Soda Hall
Phone: 510-643-6002