Home > Courses/Curricula by Dept. >
Electrical Engineering and Computer Sciences
(College of Engineering)
Department Office: 231 Cory Hall #1770, (510) 642-3214
Faculty Lists and Departmental Web Sites
The Department of Electrical Engineering and Computer Sciences (EECS) offers one of the strongest research and instructional programs in this field anywhere in the world. Our key strength is in cross-disciplinary team-driven projects. The integration of electrical engineering (EE) and computer science (CS) forms the core, with strong interactions that extend into biological sciences, mechanical and civil engineering, physical sciences, chemistry, mathematics, and operations research. Our programs have been consistently ranked in the top three nationwide and worldwide by various organizations that rank academic programs.
Each year, top students from all parts of the world are attracted to Berkeley by the excellence of the faculty, the breadth of educational opportunities in EECS and campus-wide, the proximity to the vibrant California high-tech economy, and the Berkeley environment. The department's close ties to industry, coupled to its commitment to engineering research and education, ensure that students get a rigorous, relevant, and broad education.
Faculty members at Berkeley are committed to research and discovery at the highest level, informed and creative teaching, and the creative desire to excel. The distinction of the EECS faculty has been recognized in a long list of prestigious honors and awards, including two National Medals of Science, three ACM Turing Awards, three IEEE Medals of Honor, 36 members of the National Academy of Engineering, seven members of the National Academy of Sciences, 14 fellows of the American Academy of Arts and Sciences, etc.
Unlike many institutions of similar stature, regular faculty teaches the vast majority of our courses, and the most exceptional teachers are often also the most exceptional researchers. The department's list of active teaching faculty includes 7 winners of the prestigious Berkeley Campus Distinguished Teaching Award.
The mission of the Department of Electrical Engineering and Computer Sciences has three parts:
(1) educating future leaders in academia, government, industry, and entrepreneurial pursuit, through a rigorous curriculum of theory and application that develops the ability to solve problems, individually and in teams;
(2) creating knowledge of fundamental principles and innovative technologies, through research within the core areas of EECS and in collaboration with other disciplines, that is distinguished by its impact on academia, industry and society; and
(3) serving the communities to which we belong, at local, national, and international levels, with a deep awareness of our ethical responsibilities to our profession and to society.
Our strategy to accomplish this mission is simple: recruit and retain the very best faculty, students, and staff, and then empower them to direct and drive the creation and dissemination of knowledge. We know that we have succeeded in this mission when our students succeed, becoming leaders and serving society.
Electrical Engineering began on the Berkeley campus more than a century ago, with the hiring of the first electrical engineer, Clarence Cory, into the College of Mechanics. The early days focused on electric power production and distribution, and Cory’s laboratory, in fact, provided the first light and power to the entire campus.
The evolution since then has been dramatic, accelerating rapidly in the latter half of the 20th century. The development of our world-class computer science faculty followed naturally from the synergies between electronics, systems theory, and computing. In the 21st century, EECS has become a broader field, defined more by its intellectual approach to engineering problems than by particular technical solutions. Broadly, EECS harnesses physical processes to perform logical functions, and hence easily extends beyond its core technology base in electronics to, for example, biological systems.
Current strengths in biosystems and computational biology, nanotechnology, artificial intelligence, concurrent and distributed systems, embedded systems, novel devices (such as organic semiconductors), robotics, advanced networking, computer security and trusted computing, energy, and sensor networks, complement beautifully our traditional strengths in physical electronics, integrated circuits, operating systems and networking, graphics and human-computer interaction, communications systems, computer architecture, control theory, signal processing, the theory of computing, programming languages, scientific computing, electronic design automation, power systems, and database management systems. Many of our current research projects are focused on enormous societal challenges and opportunities such as energy efficiency, network intelligence, transportation systems, security, and health care. More than any other engineering discipline, EECS bridges the physical world and the semantic one, creating technologies to serve humanity.
Organizationally, the Department of Electrical Engineering and Computer Sciences smoothly integrates its world-class faculty with dedicated staff and extremely active and involved student groups. Our undergraduate programs recognize the daunting intellectual breadth of the field by offering a great deal of flexibility. These programs are accredited by ABET, Inc., 111 Market Place, Suite 1050, Baltimore, MD 21202-4012, (410) 347-7700, and by the CAC, the Computing Accreditation Commission of ABET, Inc.
Our graduate programs emphasize research, preparing students for leadership positions in industrial labs, government, or academia. Our laboratory and computing facilities are among the best anywhere, and have conceived many transformative inventions. Our research programs are well funded, and nearly all of our graduate students receive full financial support.
See the College of Engineering Announcement: A Guide to Undergraduate and Graduate Study at coe.berkeley.edu/college-of-engineering-announcement for more information.
Under the auspices of the College of Engineering, EECS offers two undergraduate programs: Electrical and Computer Engineering (ECE) and Computer Science and Engineering (CSE). The CSE program puts a greater emphasis on computer science, whereas the ECE program puts a greater emphasis on electrical engineering. Both programs require the same set of five lower-division core courses in EECS (EE 20N, 40; CS 61A, 61B, and 61C) and nearly the same math and science courses. After satisfying program requirements at the lower-division level, students are free to choose from a variety of elective upper-division courses. To guide students into a coherent choice of courses, we ask students to choose from one of five "options." The choice of option affects the assignment of a faculty adviser, and the options provide sample programs that suggest reasonable tracks.
The options are:
• Physical Electronics (Option 1): For students interested in integrated circuits, electronic devices, nanotechnology, electromagnetics, micro and nano fabrication, photonics and optoelectronics, microelectromechanical systems (MEMS), electronic design automation (EDA), high power circuits, and applications to biomedicine, micro-robotics, sensors, actuators, energy production, storage, and conservation, and silicon structures.
• Communication, Networks, and Systems (Option II): For students interested in networks, control systems, digital and analog communications, information theory, signal processing, and systems modeling, design, verification, and optimization, together with applications to robotics, biomedicine, wireless communications systems, multimedia systems, multi-sensor fusion, and machine intelligence.
• Computer Systems (Option III): For students interested in machine architecture and logic design, communication networks, computer security, operating systems, database systems, programming systems and languages, embedded software, and/or digital devices and circuits, together with applications to networked computing, embedded systems, computer games, and information systems.
• Computer Science (Option IV): For students interested in the foundations of computing, which includes the theory of computation, the design and analysis of algorithms, complexity theory, the architecture and logic design of computers, programming languages, compilers, operating systems, scientific computation, computer graphics, database systems, artificial intelligence and natural language processing, and cryptography and computer security.
• General Course of Study (Option V): Enables students whose interests are broad or who have yet to focus on a specific field to explore several topics in the areas mentioned above.
Students in the ECE program typically select options I, II, III, or V, whereas students in the CSE program typically select options III or IV. Students are not obliged to follow any of these options precisely, but are free to plan an individual program to suit their special needs or interests, subject to meeting the requirements detailed below.
Diplomas received by students in both the ECE and CSE program state that the students received a Bachelor of Science from the University of California, Berkeley College of Engineering. The diploma does not indicate the option or the ECE or CSE program. The student's transcript indicates whether the program was ECE or CSE.
Curriculum and Requirements for the Bachelor's Degree
Students must complete a minimum of 120 units, in which they must satisfy the University of California and Berkeley campus requirements outlined in this catalog. In addition, students must complete the requirements for the College of Engineering. Full details on these requirements can be found in the College of Engineering Announcement: A Guide to Undergraduate and Graduate Study available online at coe.berkeley.edu/college-of-engineering-announcement and the "EECS Undergraduate Notes" at eecs.berkeley.edu/Programs/Notes/index.shtml. Please also see the Options section in the "EECS Undergraduate Notes" for suggested programs of study.
EECS Honors Degree Program
The Honors Degree Program is designed to provide very talented undergraduate students with more flexibility at the undergraduate level. Honors students select an academic concentration outside of EECS. In addition, students receive a special faculty adviser, engage in research, receive official notation of the honors degree on their Berkeley transcript, and are invited to special events with faculty and EECS Honors alumni.
For more information, read about the Honors Degree Program at eecs.berkeley.edu/Programs/honors.html.
Joint Major Programs
The joint major programs are designed to qualify students for employment in either of two major fields of engineering, or for positions where competence in both fields is required. Both majors are listed on the student's transcript. Two such majors are currently established:
• EECS/Materials Science and Engineering: For students interested in materials and devices. The program combines the study of materials from a broad perspective, as taught in MSE, with the study of their applications in electronic devices and circuits, as taught in EECS. Students selecting this double major have two faculty advisers, one from each major.
• EECS/Nuclear Engineering: Combines the traditional EE program with that in Nuclear Engineering, both of which share a concern for electrical power generation, automatic control, computer sciences, and plasmas. Students selecting this double major have two faculty advisers, one from each major.
Computer Science Leading to the Bachelor of Arts Degree
In addition to a CS major through the College of Engineering, which confers the B.S. degree, the Computer Science Division also offers the major through the College of Letters and Science, which confers the B.A. degree. An essential difference between the two majors is that the EECS program requires a greater number of math and science courses than the CS program, which requires a greater number of non-technical, or breadth, courses. The computer science major under L&S is not accredited. For further information about L&S computer science programs and requirements, see eecs.berkeley.edu/csugrad.
Details about the computer science major offered through the College of Letters and Science also may be found under the course listings for Computer Science in this catalog.
Computing Service Courses
Students may earn a total of at most 5 units of credit toward graduation for courses labeled as "computing service" courses, which include CS 3, 3L, 3S; the CS 9 courses; and Engineering 110. Students will receive no more than 1 unit of credit for each computing science course taken after the first or after any of the CS 61 courses. Any units beyond these limits will not count toward graduation, although they will count for the sole purpose of determining whether the study list falls within the minimum and maximum unit loads.
Course Materials Fee
The Department of Electrical Engineering and Computer Sciences charges a course materials fee for Electrical Engineering 143. The amount of the fee is listed in the online Schedule of Classes.
Advanced Degree Programs
The Five-Year Bachelor/Master's Program in EECS (B.A./M.S. or B.S./M.S.): The combined Bachelor/Master's program is designed to take outstanding EECS and CS L&S undergraduates immediately into an intensive two-semester program conferring the Master of Science degree. This combined program promotes interdisciplinary focus and is best suited to those who are more "professionally oriented," as opposed to those wishing to pursue a more traditional research-based, and discipline-specialized advanced course of study. As such, a distinguishing feature of this five-year program is its emphasis upon extended study in interdisciplinary, though allied, technical fields, such as physics, biology, and statistics, or in professional disciplines, such as business, law, or public policy. The program is aptly entitled, "Educating Leaders for the Emerging Global Economy," and reflects a growing need for those who are technically skilled and also possess an understanding of the business, legal, and social context of technology development and use.
Conferral of the degree requires either writing a thesis (Plan I) or reporting on a project (Plan II), as is required of our other master's students.
Complete information is available at eecs.berkeley.edu/FiveYearMS.
The EECS Graduate Program offers a comprehensive program geared toward research and teaching (Master of Science and Doctor of Philosophy). The Master of Science Program requires three to four semesters of study, while the Doctor of Philosophy Program is normally completed in five to six years. Admission into the graduate program is extremely competitive, but once admitted, students have a wide variety of cluster areas from which to choose an affiliation, and a large number of courses and seminars taught by leaders in their fields from which to design their study programs. Students apply to either the Electrical Engineering Division or to the Computer Science Division, although once they have been admitted to the department, the boundaries between the divisions are fluid. Students should apply to the division most appropriate to their principal area of interest.
Students whose principal interests are in the following areas should apply to Electrical Engineering:
• Communications and Networking: Includes information theory and coding (multiterminal problems, feedback, adversarial models, separation theorems and layering, low density parity check codes, VLSI implementation of codes, algorithms for decoding, message passing algorithms), wireless and sensor networks (ad-hoc, mobile and vehicular networks, multiple antennas, opportunistic communication, cognitive radio and spectrum sharing distributed source coding, distributed estimation, spatial sampling), network design and analysis (optical networking, market-based architectures, incentive compatibility, auction design, peer-to-peer networks, Quality of Service, communication for control, cross-layer optimization, network coding, and simulation tools, secure wired and wireless links, network availability and resilience, market based approaches, authentication).
• Control, Intelligent Systems, and Robotics. Concerned with the general problem of modeling systems and machines, and then making them respond appropriately to inputs. Optimization and mathematical techniques play a key role, especially as systems of interest grow in scale. Control ranges from applications in semiconductor process control to hybrid and networked control to nonlinear and learning control, and includes interactions with faculty in Mechanical Engineering and Integrative Biology, as well as between Electrical Engineering and Computer Sciences. Robotics is interpreted broadly to include mobile autonomous systems from millimeter-sized mobile robots to three meter rotor span helicopters, fixed autonomous systems for assembly, as well as human augmentation capabilities, such as telepresence and virtual reality. Providing robots with image understanding capabilities is one of the key research areas, as well as using computer vision to assist humans.
• Design of Electronic Systems: Includes electronic design automation (computer-aided design and optimization of complex hardware and software systems), embedded software systems (models of computation, specification languages, real-time systems, and hardware and software synthesis and compilation technologies), and modeling and verification (models of hardware and software systems together with analysis techniques that identify design flaws, performance problems, and vulnerabilities).
• Energy: Includes new devices and energy sources (solar thermal electric generation, vibration energy harvesters, bio energy generation, biofuels, fusion energy simulations, plasma physics, ultra low power delivery systems, power electronics, and electrical machines), on-device energy (on-chip power supplies, power management for mobile electronics, intermittent energy storage, organic semiconductor photovoltaics, and nonconventional actuation), sensor networks (distributed power management, ambient power, energy management for microrobotics), system-wide issues (advanced power metering, stability of the power grid, preventing catastrophic failures, power grid security, large scale power network energy management, and demand response), and public policy (energy infrastructure in developing countries, energy issues in scaling device technology to low cost devices, and pricing policy and economic models).
• Integrated Circuits: Includes applications (analog-to-digital and digital-to-analog conversion, automotive electronics, biosystems, computation, consumer electronics, instrumentation, medical systems, signal processing, ubiquitous electronics, and wireless communications), circuit design (high-speed digital and high-frequency analog circuits, microwave circuits, memories, nanoscale analog circuits, precision measurement, timing, voltages and currents, robust circuit design, and system architecture), devices and technology (bio/silicon interfaces, integrated sensors, mixed signal systems, mixed material systems, and microelectromechanical systems), and energy management (high-power circuits, on-chip power distribution, power/performance tradeoffs, ultra-low-power circuits, and ultra-low-voltage circuits).
• Micro-Electro and Mechanical Systems (MEMS): Includes microelectromechanical systems (electronic and biomedical applications, micro-robotics, resonators, sensors and actuators, and silicon structures), nanotechnology (carbon nanotubes, nanowires, molecular-scale structures, quantum dots, and biological materials), and optoelectronics (lasers, light emitting diodes, optical detectors, optical tweezers, optical communication, and solar cells).
• Physical Electronics: Includes electromagnetics (high frequency integrated circuit design, simulation, waveguides, and wireless channels), electronic devices (integrated circuit devices, organic electronics, semiconductor technologies, and superconductive devices), micro/nano fabrication (fabrication technologies for semiconductor, electromechanical, photonics, and other micrometer and nanometer-scale systems, advanced processing modules, integration of heterogeneous systems, process modeling and simulation, lithography, and advanced metrology and manufacturing systems).
• Signal Processing: Includes theory and algorithms (adaptive signal processing, machine learning, and signal modeling; indexing, searching, and retrieval; multirate and multi-channel processing; restoration and enhancement; signal analysis, identification, spectral estimation, and understanding; signal representation, compression, coding, quantization and sampling; statistical signal processing, detection, estimation, and classification; watermarking, encryption, and data hiding; wavelets, filter banks, time frequency techniques), signal processing applications (audio, speech, image, and video processing; graphics; biological and biomedical signals; computer vision; radar and lidar; geophysical signals; synthetic signals; and astronomical signals), signal processing systems (VLSI architectures; embedded and real-time software; capture, acquisition, and sensing; sensor networks; imaging; and auditory enhancement).
Students whose principal interests are in the following areas should apply to Computer Science:
• Artificial Intelligence: Includes knowledge representation and reasoning (logical and probabilistic formalisms and combinations thereof), machine learning and probabilistic inference (graphical models and statistical and computational learning theory), decision making (problem solving search, planning, games, Markov decision processes, and reinforcement learning), search and information retrieval (collaborative filtering, information extraction, image and video search, intelligent information systems), speech and natural language processing (parsing, machine translation, information extraction), speech recognition, computer vision, and robotics.
• Computer Architecture and Engineering: Includes processor and system design (multicore, parallel, and cluster computing architectures), domain-specific architectures, reconfigurable computing, memory hierarchies, performance analysis (theoretical analysis, simulation, and emulation hardware), low-power design, VLSI implementation, compiler technology, network interfaces, storage systems, and quantum computing architectures.
• Database Management Systems: Includes scalable techniques for data acquisition (sensor tasking, sampling), data integration and cleaning (federated databases, deep web, structure induction, anomaly detection), query processing and search (structured data, text and web repositories, personal information, data streams), distributed and parallel data management (cluster computing, peer-to-peer Internet software, wireless sensor networks and RFID), storage (transaction management, indexing, stream archiving), inference and mining (probabilistic databases, data reduction, sketching), data security and privacy (verifiable and privacy-preserving multiparty query execution), declarative data-intensive systems (declarative networking, sensor tasking, inference), data visualization (visual querying, data display, interactive data analysis and cleaning), and theoretical foundations (query optimization, indexability, stream algorithms).
• Graphics: Includes geometric modeling (splines, subdivision surfaces, rapid prototyping, computer aided design, and surface optimization), rendering (real-time rendering, global illumination, monte carlo sampling, image-based rendering, inverse rendering, and vision-simulation, fluid simulation, video games), imaging (computational photography and video, texture synthesis, appearance acquisition).
• Human-Computer Interaction: Includes visualization (multivariate data visualization, cartographic visualization, 3D visualization, graphical perception, collaborative analysis), context-aware computing (activity analysis, smart spaces, location-aware systems, privacy technologies), perceptual interfaces (vision-based interfaces, speech and discourse interfaces), and collaboration and learning (pattern-based authoring tools, English as a second language learning, group collaboration technologies).
• Operating Systems and Networking: Includes internet architecture (overlay architectures, distributed hashing, naming, next generation network design, peer to peer networking, mobile and ad-hoc networking), security (malware detection, secure routing, testbeds for security, operating systems security, intrusion detection, availability, and authentication), distributed systems (experimental testbeds, distributed logging, distributed software systems, time synchronization), operating systems (OS for sensor networks, monitoring OS behavior for malware, detection, performance analysis, programming languages for systems, and power aware computing), network economics (price of anarchy, game theory), and technology for developing regions.
• Programming Systems: Includes programming language design and implementation (compiler optimization, semantics), programming environments and tools (monitoring, debugging), program analysis and verification (model checking, static analysis, theorem proving), and software design and synthesis (software design for parallel computing, embedded systems, numerical computing, symbolic computing, and distributed computing).
• Scientific Computing: Includes parallel computing (parallel high speed libraries, architectures), computer algebra (symbolic mathematical computation), mesh generation, matrix computing (language design for scientific computing, algorithms for memory and cache optimization for numerical linear algebra, grid based computing, extended precision arithmetic, redundant arithmetics), numerical methods (extended precision arithmetic, reliable floating point standards, architectural and run time implications of floating point standards, programming language implications of floating point standards), and animation (simulation and visualization of physical processes).
• Security and Privacy: Spans the development of mechanisms and systems designed for operation in the presence of adversaries who either seek to subvert the correct operation of the system, misuse its capabilities, or unduly extract information from it. Includes security and privacy in the context of software, languages, operating systems, networking, distributed/mobile/embedded systems, malware analysis and defense, usability, human factors, anonymity, threat evolution, economic and legal issues, and cryptography.
• Theory: Includes computational complexity (intractability, complexity classes, completeness, approximability, randomness), parallel and distributed computation, design and analysis of algorithms (including Monte Carlo algorithms, optimization algorithms), quantum computation, computational learning theory, computational geometry, computational biology, cryptography, and logic and concurrency theory.
Students with interests in the following areas can apply to either division:
• Biosystems: Includes systems neuroscience (sensory motor control, vision, audition, biomimetics, brain-machine interfaces, and computational neuroscience), biomedical systems (sensors, healthcare systems, physiological modeling, medical imaging and bioimage analysis), cellular systems (protein structure modeling; gene regulatory networks; synthetic biology; computational systems biology; cellular signaling pathways, transport, and metabolism; and self-assembling systems), and bioinformatics (comparative genomics, genetic analysis, phylogenetics, molecular evolutionary modeling, and gene regulatory networks).
• Education: Includes aspects of computer science and engineering education (especially at the high school and undergraduate levels), gender issues of science education, and the teaching of technology.
With the exception of those in the Five-Year Bachelor/Master's Program, most who enter the graduate program do so with the expectation of pursuing their doctorates. The department does, however, accept "M.S. Only" students and offers three types of degrees, discussed below.
Master of Science (M.S.)
The department awards two types of Master of Science degrees in:
• Engineering—EECS: For EE students with a B.S. degree from an accredited engineering program, or for those who have the equivalent of a B.S. degree as determined by the department.
• Computer Science: For CS students with a B.S. in computer science, or an equivalent as determined by the department.
Students may choose to pursue Plan I, which requires writing a thesis, or they may pursue Plan II, which requires a report on a project. In either case, earning the Master of Science degree usually takes from 1.5 to 2 years to achieve.
Doctor of Philosophy (Ph.D.)
The department offers two types of Ph.D. degrees, awarded to students under the same conditions as the corresponding M.S. degrees, above:
• Computer Science
The principal requirements for the Ph.D. are:
(1) coursework from a major subject area and two minor subject areas;
(2) the departmental preliminary requirement, consisting of an oral exam and breadth courses, which differ for EE and CS;
(3) the qualifying exam; and
(4) the dissertation.
There is no foreign language requirement. The median time for completion for the Ph.D. is 5.5 years.
For further information on establishing major and minor subject areas, division-specific requirements for prelims and breadth requirements, qualifying exam, and the dissertation, please refer to the Graduate Handbook prepared by the Graduate Admissions Office at eecs.berkeley.edu/Gradnotes for more information.
Designated Emphasis: In keeping with the departmental priority given to cross-disciplinary applications of engineering and computer science, graduates may also choose to add a designated emphasis to their program. A designated emphasis is a specialization offered by existing Ph.D. programs that provides multi-disciplinary training and research opportunities outside of EECS proper, but in areas that share overlapping interests and goals. At present, five such designated emphases are available to our doctoral students in:
• Communication, Computation and Statistics
• Computational and Genomic Biology
• Computational Science and Engineering
• Nanoscale Science and Engineering
• New Media
Students who pursue a DE receive recognition of their specialization on their transcript and diploma are well positioned to compete for preferred jobs in academia and industry.
The Management of Technology (MOT) Certificate Program:
This program is a joint effort between the College of Engineering, the Haas School of Business, and the School of Information (SI) at UC Berkeley. The program focuses on the set of management activities associated with bringing high-tech products to market. It is the most popular interdisciplinary program at UCB, with classes and fellowship programs made up of roughly an equal number of Haas MBAs, and SI and EECS M.S. and Ph.D. students. The MOT Certificate Program allows graduate students to specialize in the Management of Technology as they obtain their degrees.
Copyright 2009 UC Regents. All rights reserved. Contact us.
* * * * * * * * * *