USC/USC-Course-Catalog huggingface dataset:
CHE 444cL: Chemical Engineering Laboratory 
Conduct experiments and analyze data to generate results used to solve chemical engineering problems. Communicate results, data, and solutions in written reports and oral presentations.
Units: (2.0 units)
Prerequisites: Prerequisite: CHE 330 and CHE 444B
Restrictions: Not available
Class type: Lecture
Days: Wednesday
Time: 8:30-9:50am
Instructor: Jincai Chang
CHE 447: Heat and Mass Transfer in Chemical Engineering Processes 
Differential and macroscopic equations of heat transfer; molecular and continuum approaches to diffusion and convection in fluids; simultaneous heat, mass and momentum transfer.
Units: (4.0 units)
Prerequisites: Prerequisite: MATH 245 and CHE 443
Restrictions: Not available
Class type: Lecture
Days: Mon, Wed
Time: 2:00-3:50pm
Instructor: Wade Zeno
CHE 464L: Modeling and Simulation of Subsurface Flow Systems 
Properties of reservoir fluids, volumetric and material balances for gas and oil reservoirs; reservoir modeling concepts.
Units: (4.0 units)
Prerequisites: Prerequisite: PTE 463
Restrictions: Not available
Class type: Lecture
Days: Friday
Time: 10:00-12:40pm
Instructor: Behnam Jafarpour
CHE 475: Physical Properties of Polymers 
Introduction to polymer physical properties and characterization, relationship to synthesis techniques and processing techniques, natural and synthetic materials, property optimization and modern applications.
Units: (4.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Mon, Wed
Time: 4:00-5:50pm
Instructor: Noah Malmstadt
CHE 480: Chemical Process and Plant Design 
Design and evaluate a chemical process/plant based on safety, economics, sustainability and engineering viability through the application of unit operations, thermodynamics, kinetics and separations.
Units: (4.0 units)
Prerequisites: Prerequisite: CHE 485
Restrictions: Restriction:  Registration open to the following class level(s): Senior
Class type: Lecture
Days: Mon, Wed
Time: 12:00-1:50pm
Instructor: Nicholas Graham,Pin Wang
CHE 490x: Directed Research 
Individual research and readings. Not available for graduate credit.
Units: (1.0-8.0 units, max 12)
Prerequisites: Not available
Restrictions: Restriction:  Registration open to the following class level(s): Junior, Senior
Class type: Lecture
Days: TBA
Time: TBA
CHE 491: Nanotechnology Research for Undergraduates 
Independent research in nanotechnology. Research project selected by the student in close consultation with a research advisor. Prerequisite: CHE 391L. Open only to juniors and seniors.
Units: (2.0 units, max 4)
Prerequisites: Prerequisite: CHE 391
Restrictions: Restriction:  Registration open to the following class level(s): Junior, Senior
Class type: Lecture
Days: TBA
Time: TBA
CHE 499: Special Topics 
Course content to be selected each semester from recent developments in chemical engineering and related fields.
Units: (2.0-4.0 units, max 8)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Friday
Time: 10:00-1:50pm
CHE 520: Mathematical Methods for Deep Learning 
Understanding deep learning: for students in engineering, physical and life sciences and computer science with mathematical background.
Units: (4.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Mon, Wed
Time: 4:00-5:50pm
Instructor: Zhenglu Li
CHE 530: Thermodynamics for Chemical Engineers 
Elements of classical and statistical thermodynamics. Molecular theory and property estimation, emphasis on multi-component multi-phase fluid systems. Advanced applications, including highly non-ideal solutions, polymers, electrolytes.
Units: (4.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Mon, Wed
Time: 2:00-3:50pm
Instructor: Kristian Jessen
CHE 550: Seminars in Chemical Engineering 
Seminars to cover recent developments in the field of chemical engineering given by invited speakers.
Units: (0.0-1.0 units, max 2)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Tuesday
Time: 4:00-5:20pm
Instructor: Malancha Gupta
CHE 586: Process Data Analytics and Machine Learning 
Topics include multi-linear regression, supervised learning, unsupervised learning, principal component analysis, partial least squares, canonical correlation analysis, clustering methods, lasso, neural networks, and deep learning. Applications include analysis of chemical process data, quality data, and indirectly measured data.
Units: (3.0 units)
Prerequisites: Not available
Restrictions: Restriction:  Registration open to the following class level(s): Doctoral Student, Master Student
Class type: Lecture
Days: Mon, Wed
Time: 12:00-1:20pm
Instructor: Jay Lee
CHE 590: Directed Research 
Research leading to the Master's degree. Maximum units which may be applied to the degree to be determined by the department. Graded CR/NC.
Units: (1.0-12.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: TBA
Time: TBA
CHE 594a: Master's Thesis 
Credit on acceptance of Thesis. Graded CR/NC.
Units: (2.0 units)
Prerequisites: Not available
Restrictions: Restriction:  Registration open to the following class level(s): Master Student
Class type: Lecture
Days: TBA
Time: TBA
CHE 594b: Master's Thesis 
Credit on accceptance of Thesis. Graded CR/NC.
Units: (2.0 units)
Prerequisites: Prerequisite: CHE 594A
Restrictions: Restriction:  Registration open to the following class level(s): Master Student
Class type: Lecture
Days: TBA
Time: TBA
CHE 594z: Master's Thesis 
Credit on acceptance of Thesis. Graded CR/NC.
Units: (0.0 units)
Prerequisites: Prerequisite: CHE 594B
Restrictions: Restriction:  Registration open to the following class level(s): Master Student
Class type: Lecture
Days: TBA
Time: TBA
CHE 790: Research 
Research leading to the doctorate. Maximum units which may be applied to the degree to be determined by the department. Graded CR/NC.
Units: (1.0-12.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: TBA
Time: TBA
CHE 794a: Doctoral Dissertation 
Credit on acceptance of Dissertation. Graded CR/NC.
Units: (2.0 units)
Prerequisites: Not available
Restrictions: Restriction:  Registration open to the following class level(s): Doctoral Student
Class type: Lecture
Days: TBA
Time: TBA
CHE 794b: Doctoral Dissertation 
Credit on acceptance of Dissertation. Graded CR/NC.
Units: (2.0 units)
Prerequisites: Prerequisite: CHE 794A
Restrictions: Restriction:  Registration open to the following class level(s): Doctoral Student
Class type: Lecture
Days: TBA
Time: TBA
CHE 794c: Doctoral Dissertation 
Credit on acceptance of Dissertation. Graded CR/NC.
Units: (2.0 units)
Prerequisites: Prerequisite: CHE 794B
Restrictions: Restriction:  Registration open to the following class level(s): Doctoral Student
Class type: Lecture
Days: TBA
Time: TBA
CHE 794d: Doctoral Dissertation 
Credit on acceptance of Dissertation. Graded CR/NC.
Units: (2.0 units)
Prerequisites: Prerequisite: CHE 794C
Restrictions: Restriction:  Registration open to the following class level(s): Doctoral Student
Class type: Lecture
Days: TBA
Time: TBA
CHE 794z: Doctoral Dissertation 
Credit on acceptance of Dissertation. Graded CR/NC.
Units: (0.0 units)
Prerequisites: Prerequisite: CHE 794D
Restrictions: Restriction:  Registration open to the following class level(s): Doctoral Student
Class type: Lecture
Days: TBA
Time: TBA
CE 107L: Introduction to Civil Engineering Graphics 
Graphic communication and drawing; Free-hand sketching; Use of CAD software; Drawing in 2-D, including lettering, dimensioning, and detailing; Drawing and modeling in 3-D.
Units: (2.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Monday
Time: 2:00-3:50pm
Instructor: Meida Chen
CE 108: Introduction to Computer Methods in Civil Engineering 
Computer programming, organization of problems for computational solution, flow charts, programming; numerical methods, analysis and solution of civil engineering problems.
Units: (2.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Tue, Thu
Time: 9:00-9:50am
Instructor: Roger Ghanem
CE 225: Mechanics of Deformable Bodies 
Analysis of stress and strain; axial, flexural, and torsional behavior of slender bars; elastic deflections; combined stresses; introduction to elastic stability and energy methods.
Units: (4.0 units)
Prerequisites: Prerequisite: CE 215
Restrictions: Not available
Class type: Lecture
Days: Mon, Wed
Time: 10:00-11:50am
Instructor: Qiming Wang
CE 309: Fluid Mechanics 
Fluid statics; relative velocity field; total acceleration; divergence theorem; conservation of mass, energy, and momentum applied to engineering problems in laminar and turbulent flow.
Units: (4.0 units)
Prerequisites: Prerequisite: 1 from (MATH 226 or MATH 229)
Restrictions: Not available
Class type: Lecture
Days: Mon, Wed
Time: 12:00-1:50pm
Instructor: Thomas Petersen
CE 363L: Water Chemistry and Analysis 
Chemistry of water purification technology and water pollution control, chemical processes in natural and engineering environments; physical/chemical and biological characterization of water and wastewater.
Units: (4.0 units)
Prerequisites: Prerequisite: ENE 200 and 1 from (CHEM 105B or CHEM 115B)
Restrictions: Not available
Class type: Lecture
Days: Tuesday
Time: 4:00-5:50pm
CE 402: Computer Methods in Engineering 
Application of computer-oriented numerical analysis methods and tools to a broad spectrum of practical science and engineering problems. Use of Python, R and computer algebra.
Units: (2.0 units)
Prerequisites: Prerequisite: CE 108 and MATH 245
Restrictions: Not available
Class type: Lecture
Days: Tuesday
Time: 11:00-12:50pm
Instructor: Thomas Petersen
CE 412: Construction Contracts and Law 
Legal aspects of property development and construction: land use, construction practices and specifications, architecture and engineering contracts, agency, subcontracting, professional registration, liability, insurance, liens, bonds.
Units: (2.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Tuesday
Time: 6:00-7:50pm
Instructor: Alan Croll
CE 430: Sustainable Transportation 
Sustainability practices in building and maintaining transportation infrastructure; interrelations between innovation, policies and regulations for improving mobility services while reducing the environmental impact.
Units: (2.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Friday
Time: 10:00-11:50am
Instructor: Eric Shen
CE 451: Water Resources and Coastal Engineering 
Control and utilization of inland and coastal water, quantitative hydrology, groundwater, probability concepts, extreme events, coastal hydrodynamics, wave-structures interactions, multiple purposes water projects, economic study.
Units: (4.0 units)
Prerequisites: Prerequisite: CE 309
Restrictions: Not available
Class type: Lecture
Days: Tue, Thu
Time: 9:00-10:50am
Instructor: Costas Synolakis
CE 457: Structural Design II 
Design of structural systems in wood, steel, concrete and masonry, and the performance of structural systems for wind and seismic forces.
Units: (4.0 units)
Prerequisites: Prerequisite: CE 358 and CE 456
Restrictions: Not available
Class type: Lecture
Days: Tue, Thu
Time: 4:00-5:50pm
Instructor: Maria Mohammed
CE 458: Computational Structural Analysis 
Computerized structural analysis; displacement method; force method; large scale structural systems; static analyses; structural dynamics of systems; earthquake engineering; nonlinear analysis; elastic stability and buckling.
Units: (4.0 units)
Prerequisites: Prerequisite: CE 358
Restrictions: Not available
Class type: Lecture
Days: Mon, Wed
Time: 12:00-1:50pm
Instructor: Botong Zheng
CE 460: Construction Engineering 
Introduction to the construction processes; estimating and bidding, construction administration, planning and scheduling, equipment and methods, labor relations, cost control systems, safety and ethics.
Units: (4.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Monday
Time: 10:00-1:50pm
Instructor: Henry Koffman
CE 461: Construction Estimating 
Fundamental principles and practices of advanced building cost estimating using Revit Models and industry standard databases.
Units: (4.0 units)
Prerequisites: Not available
Restrictions: Restriction:  Registration open to the following class level(s): Doctoral Student, Junior, Master Student, Senior
Class type: Lecture
Days: Tue, Thu
Time: 5:30-7:20pm
Instructor: Navneet Agrawal
CE 462: Construction Methods and Equipment 
Current procedures in selected fields of construction; organization and planning; equipment economics; machinery.
Units: (2.0 units)
Prerequisites: Not available
Restrictions: Restriction:  Registration open to the following class level(s): Doctoral Student, Junior, Master Student, Senior
Class type: Lecture
Days: Monday
Time: 2:00-3:50pm
Instructor: Henry Koffman
CE 465: Water Supply and Sewerage System Design 
Design of water supply systems, storm drains, sanitary sewers, and lift stations.
Units: (4.0 units)
Prerequisites: Prerequisite: CE 453
Restrictions: Not available
Class type: Lecture
Days: Tuesday
Time: 6:00-9:20pm
Instructor: Chun-Ching Wang
CE 467L: Geotechnical Engineering 
Fundamentals of geotechnical engineering; soil classification, seepage, stress-strain behavior, shear strength, consolidation, design of retaining structures and foundations, and slope stability. Soil testing. Duplicates credit in CE 464 and CE 468.
Units: (4.0 units)
Prerequisites: Prerequisite: CE 225
Restrictions: Not available
Class type: Lecture
Days: Tue, Thu
Time: 2:00-3:20pm
Instructor: Amy Rechenmacher
CE 480: Civil and Environmental Engineering Capstone Design 
Civil and Environmental Engineering capstone design project incorporating all disciplines of Civil Engineering and Environmental Engineering.
Units: (4.0 units)
Prerequisites: Prerequisite: CE 408 and 1 from (CE 456 or CE 457 or CE 476 or CE 485)
Restrictions: Not available
Class type: Lecture
Days: Monday
Time: 6:30-9:50pm
Instructor: Sunny Wang
CE 483: Engineering Economics in Civil Engineering 
Principles of engineering economics; modeling and evaluation of receipts and outlays timing; relevance to and applications within Civil and Environmental Engineering projects.
Units: (2.0 units)
Prerequisites: Prerequisite: CE 215
Restrictions: Not available
Class type: Lecture
Days: Monday
Time: 4:00-5:50pm
Instructor: Lucio Soibelman
CE 486b: Innovation in Engineering and Design for Global Crises 
Engineering innovation to design products, services and technologies with a human-centered approach to help solve the needs of people affected by global crises.
Units: (3.0 units)
Prerequisites: Prerequisite: CE 486A
Restrictions: Not available
Class type: Lecture
Days: Monday
Time: 6:30-9:20pm
Instructor: David Gerber,Daniel Druhora,Brad Cracchiola
CE 490x: Directed Research 
Individual research and readings. Not available for graduate credit.
Units: (1.0-8.0 units, max 12)
Prerequisites: Not available
Restrictions: Restriction:  Registration open to the following class level(s): Junior, Senior
Class type: Lecture
Days: TBA
Time: TBA
CE 501: Construction Practices 
Systems, processes, and constraints governing the initiation, direction, engineering, and delivery of major construction projects. Professional construction management, responsibilities, and practice.
Units: (4.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Wednesday
Time: 6:00-9:20pm
Instructor: Henry Koffman
CE 502: Construction Accounting, Finance and Strategy 
Fundamental accounting principles, financial analysis and financial control, strategic management and a review of alternative project delivery methods.
Units: (4.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Monday
Time: 3:30-6:50pm
Instructor: Ed Reynolds
CE 505: Data Management for Civil and Environmental Engineering 
The basics of databases and database management systems as applied to engineering problems. Introduction to data mining concepts, techniques and knowledge discovery in database principles.
Units: (2.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Tue, Thu
Time: 5:00-6:50pm
Instructor: Lucio Soibelman
CE 516: Geohydrology 
Fundamentals of flow and transport in porous media. Soil properties, Darcys law, flow equation, mass transport, reactive transport and uncertainty quantification.
Units: (4.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Mon, Wed
Time: 4:00-5:50pm
Instructor: Felipe De Barros
CE 525: Engineering Mathematical Analysis 
Engineering problems discussed on a physical basis with solutions via mathematical tools: Vector analysis; functions of complex variables, infinite series, residues and conformal mappings. Duplicates credit in the former CE 525a.
Units: (3.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Wed, Fri
Time: 2:00-3:20pm
Instructor: Athanassios Fokas
CE 526: Engineering Mathematical Methods 
Engineering problems discussed on a physical basis with solutions via mathematical tools: Fourier series; Fourier and Laplace transforms; partial differential equations, wave and Laplace equations.
Units: (4.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Mon, Wed
Time: 12:00-1:50pm
Instructor: Vincent Lee
CE 529: Finite Element Analysis 
Basic concepts; variational methods; isoparametric formulation; plane stress; plane strain; axisymmetric structures; plates and shells; structural dynamics; stability and buckling; computer applications; nonlinear analysis.
Units: (4.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Monday
Time: 6:00-9:20pm
Instructor: Abdel-Salam Niazy
CE 532: Data Analytics in Civil Engineering 
Application of Fourier series, wavelets, auto-regressive models and Markov models to civil engineering systems. Introduction to deep learning methods and applications to time series analysis.
Units: (2.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Wednesday
Time: 10:00-11:50am
Instructor: Roger Ghanem
CE 534: Design of Earth Structures 
This course is designed to provide a thorough understanding of the analytical and design principles underlying the construction of a broad range of earth structures.
Units: (3.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Tuesday
Time: 6:00-8:30pm
Instructor: Amy Rechenmacher
CE 537: Advanced Reinforced Concrete 
Advanced beam flexural analysis; shear behavior of beams; beam-columns and interaction diagrams; torsion; structural wall design; analysis of D-regions; nonlinear behavior of RC systems.
Units: (4.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Tue, Thu
Time: 2:00-3:50pm
Instructor: Bora Gencturk
CE 538: Prestressed Concrete 
Introduction to the concept, principles and applications of prestressed concrete; covers the analysis and design of prestressed concrete structures.
Units: (2.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Thursday
Time: 5:00-6:50pm
Instructor: Navid Nastar
CE 540: Modeling and Analysis of Tall and Special Structures 
Integration of structural modeling with the analysis and design of tall and special structures to resist earthquake motion through inelastic response.
Units: (2.0 units)
Prerequisites: Prerequisite: CE 529 and CE 541
Restrictions: Not available
Class type: Lecture
Days: Tuesday
Time: 4:00-5:50pm
Instructor: Farzad Naeim
CE 541: Dynamics of Structures 
Forced vibrations of discrete and distributed systems; energy methods; analytical dynamics; computational techniques; approximate methods; random vibration concepts; nonstationary response; structural control; nonlinear system response.
Units: (4.0 units)
Prerequisites: Not available
Restrictions: Restriction:  Registration open to the following class level(s): Doctoral Student, Master Student
Class type: Lecture
Days: Monday
Time: 12:00-3:50pm
Instructor: Sami Masri
CE 547: Earthquake Engineering: Response of Structures 
Develop skills for using current knowledge about structural response in the design of earthquake resistant structures.
Units: (4.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Wednesday
Time: 3:30-6:50pm
Instructor: Mihailo Trifunac
CE 568: Fundamental Concepts of Computing and Programming in Civil and Environmental Engineering 
Concepts of computing and programming related to engineering; Form and operation of modern computational devices; Data structures and algorithms that support CEE software applications.
Units: (2.0 units)
Prerequisites: Not available
Restrictions: Restriction:  Registration open to the following major(s): Civil Engineering, Civil Engineering (Transportation Engineering), Civil Engineering (Transportation Systems), Civil Engineering (Water and Waste Management), Construction Management, Civil Engineering (Construction Engineering), Environmental Engineering, Civil Engineering (Structural Engineering), Civil Engineering (Advanced Design and Construction,Technology)
Class type: Lecture
Days: Tue, Thu
Time: 5:00-6:50pm
Instructor: Lucio Soibelman
CE 569: Project Controls 
Project controls principles including costs and schedules, cost engineering concepts, schedule development, status evaluation, progress monitoring and responses to variances and changes.
Units: (4.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Thursday
Time: 6:00-9:40pm
Instructor: Devang Dedhia
CE 576: Invention and Technology Development 
This project-oriented course elaborates on the process of engaging creative thought, tools and techniques for invention, and issues involved in bringing inventions to the production phase.
Units: (3.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Thursday
Time: 6:30-9:10pm
Instructor: Berok Khoshnevis
CE 578: Technology-Enabled Architecture, Engineering and Constructio 
Integration of architecture, engineering and construction practices through the development of a construction project.
Units: (4.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Monday
Time: 11:00-2:20pm
Instructor: David Gerber
CE 582: Transportation System Security and Emergency Management 
Multimodal transportation resilience with emphasis on transit systems. Principles of emergency management, preparedness, vulnerability assessment, countermeasures. Related topics in policy and economics.
Units: (4.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Wednesday
Time: 6:00-9:20pm
Instructor: Shahed Rowshan
CE 583: Design of Transportation Facilities 
Planning, design, staging, construction, test and maintenance of the public works and facilities for land, water, and air transportation.
Units: (4.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Tue, Thu
Time: 9:00-10:50am
Instructor: Roxana Javid
CE 585: Traffic Engineering and Control 
Modern traffic engineering theory and practice; traffic streams; control techniques and policies for multiple traffic modalities; intersection signal timing; capacity and optimization; efficiency and safety.
Units: (4.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Tuesday
Time: 11:30-1:50pm
Instructor: Roxana Javid
CE 590: Directed Research 
Research leading to the master's degree. Maximum units which may be applied to the degree to be determined by the department. Graded CR/NC.
Units: (1.0-12.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: TBA
Time: TBA
CE 599: Special Topics 
Course content will be selected each semester to reflect current trends and developments in the field of civil engineering.
Units: (1.0-8.0 units, max 9)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Wed, Fri
Time: 4:00-5:50pm
Instructor: Athanassios Fokas
CE 633: Methods and Modeling Tools for Transportation Planning 
Background applications of established urban travel forecasting procedures; land use; trip-generation, trip-distribution, modal-choice, trip-assignment; evaluation; criticisms.
Units: (4.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Wednesday
Time: 6:00-9:20pm
Instructor: Emily Finkel
CE 790: Research 
Research leading to the Doctorate. Maximum units which may be applied to the degree to be determined by the department. Graded CR/NC.
Units: (1.0-12.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: TBA
Time: TBA
CE 794a: Doctoral Dissertation 
Credit on acceptance of Dissertation. Graded CR/NC.
Units: (2.0 units)
Prerequisites: Not available
Restrictions: Restriction:  Registration open to the following class level(s): Doctoral Student
Class type: Lecture
Days: TBA
Time: TBA
CE 794b: Doctoral Dissertation 
Credit on acceptance of Dissertation. Graded CR/NC.
Units: (2.0 units)
Prerequisites: Prerequisite: CE 794A
Restrictions: Restriction:  Registration open to the following class level(s): Doctoral Student
Class type: Lecture
Days: TBA
Time: TBA
CE 794c: Doctoral Dissertation 
Credit on acceptance of Dissertation. Graded CR/NC.
Units: (2.0 units)
Prerequisites: Prerequisite: CE 794B
Restrictions: Restriction:  Registration open to the following class level(s): Doctoral Student
Class type: Lecture
Days: TBA
Time: TBA
CE 794d: Doctoral Dissertation 
Credit on acceptance of Dissertation. Graded CR/NC.
Units: (2.0 units)
Prerequisites: Prerequisite: CE 794C
Restrictions: Restriction:  Registration open to the following class level(s): Doctoral Student
Class type: Lecture
Days: TBA
Time: TBA
CE 794z: Doctoral Dissertation 
Credit on acceptance of Dissertation. Graded CR/NC.
Units: (0.0 units)
Prerequisites: Prerequisite: CE 794D
Restrictions: Restriction:  Registration open to the following class level(s): Doctoral Student
Class type: Lecture
Days: TBA
Time: TBA
CSCI 102L: Fundamentals of Computation 
Fundamental concepts of algorithmic thinking as a primer to programming. Introduction to C++.
Units: (2.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Monday
Time: 3:00-4:50pm
Instructor: Mohammad Reza Rajati
CSCI 103L: Introduction to Programming 
Basic datatypes, assignments, control statements (if, switch, for, while), input/output (printf, scanf, cin, cout), functions, arrays, structures, recursion, dynamic memory, file handling. Programming in C/C++.
Units: (4.0 units)
Prerequisites: Prerequisite: CSCI 102
Restrictions: Not available
Class type: Lecture
Days: Tue, Thu
Time: 8:00-9:20am
Instructor: Mark Redekopp
CSCI 104L: Data Structures and Object Oriented Design 
Introduces the student to standard data structures (linear structures such as linked lists, (balanced) trees, priority queues, and hashtables), using the C++ programming language.
Units: (4.0 units)
Prerequisites: Prerequisite: CSCI 103 and CSCI 170
Restrictions: Not available
Class type: Lecture
Days: Tue, Thu
Time: 11:00-12:20pm
Instructor: Andrew Goodney
CSCI 170: Discrete Methods in Computer Science 
Sets, functions, series. Big-O notation and algorithm analysis. Propositional and first-order logic. Counting and discrete probability. Graphs and basic graph algorithms. Basic number theory.
Units: (4.0 units)
Prerequisites: Prerequisite: CSCI 102
Restrictions: Not available
Class type: Lecture
Days: Tue, Thu
Time: 9:30-10:50am
Instructor: Aaron Cote
CSCI 201: Principles of Software Development 
Object-oriented paradigm for programming-in-the-large in Java; writing sophisticated concurrent applications with animation and graphic user interfaces; using professional tools on team project. Prerequisite: CSCI 104L.
Units: (4.0 units)
Prerequisites: Prerequisite: CSCI 104
Restrictions: Not available
Class type: Lecture
Days: Tue, Thu
Time: 11:00-12:20pm
Instructor: Marco Papa
CSCI 270: Introduction to Algorithms and Theory of Computing 
Algorithm analysis. Greedy algorithms, divide and conquer, dynamic programming, graph algorithms. NP-completeness and basic recursion theory and undecidability. Sorting lower bounds. Number-theory based cryptography.
Units: (4.0 units)
Prerequisites: Prerequisite: CSCI 104 and CSCI 170
Restrictions: Not available
Class type: Lecture
Days: Mon, Wed
Time: 12:30-1:50pm
Instructor: David Kempe
CSCI 310: Software Engineering 
Introduction to the software engineering process and software lifecycle. Covers project management, requirements, architecture, design, implementation, testing, and maintenance phase activities in team based projects. Prerequisites: CSCI 201. Duplicates credit in former CSCI 377.
Units: (4.0 units)
Prerequisites: Prerequisite: CSCI 201
Restrictions: Not available
Class type: Lecture
Days: Mon, Wed
Time: 10:00-11:50am
Instructor: William Halfond
CSCI 350: Introduction to Operating Systems 
Basic issues in concurrency, deadlock control, synchronization scheduling, memory management, protection and access control, inter-process communication, and structured design. Laboratory experiences with Unix-like operating system. Duplicates credit in CSCI 402.
Units: (4.0 units)
Prerequisites: Prerequisite: CSCI 201 and 1 from (CSCI 356 or EE 354)
Restrictions: Not available
Class type: Lecture
Days: Friday
Time: 12:00-3:20pm
Instructor: Tanya Ryutov
CSCI 353: Introduction to Internetworking 
Global Internet: design principles, layering, protocol design/analysis.Networked applications, Internet structure/architecture,Protocols for transport/congestion control, network layer/routing,link layer/MAC. Network security. Prerequisites: CSCI 201. Recommended preparation: Familiarity with C and C++.Duplicates credit in EE 450.
Units: (4.0 units)
Prerequisites: Prerequisite: CSCI 201
Restrictions: Not available
Class type: Lecture
Days: Mon, Wed
Time: 12:00-1:50pm
Instructor: William Cheng
CSCI 356: Introduction to Computer Systems 
Computer organization; entity abstraction and representation; program execution; code optimization; memory usage; exception handling; processing control; computer performance; hands-on work done in C and assembly.
Units: (4.0 units)
Prerequisites: Prerequisite: CSCI 104
Restrictions: Not available
Class type: Lecture
Days: Tue, Thu
Time: 3:30-4:50pm
Instructor: Marco Paolieri
CSCI 360: Introduction to Artificial Intelligence 
Concepts and algorithms underlying the understanding and construction of intelligent systems. Agents, problem solving, search, representation, reasoning, planning, machine learning. Prerequisites: CSCI 104 and CSCI 170. Duplicates credit in former CSCI 460.
Units: (4.0 units)
Prerequisites: Prerequisite: CSCI 104 and CSCI 170
Restrictions: Not available
Class type: Lecture
Days: Mon, Wed
Time: 12:00-1:50pm
Instructor: Mohammad Reza Rajati
CSCI 368: Cross-Platform App Development 
Programming applications with dynamic graphical user interfaces. Topics include events, controls, resources, data bindings, styles and user experience.
Units: (4.0 units)
Prerequisites: Prerequisite: 1 from (ITP 265 or CSCI 103)
Restrictions: Not available
Class type: Lecture
Days: Tuesday
Time: 6:00-9:40pm
Instructor: Allen Almasi
CSCI 380: Video Game Programming 
Underlying concepts and principles required for programming video games (topics include vectors, transformations, 3-D math, geometric primitives, matrices). Prerequisite: CSCI-104 or ITP-365.
Units: (4.0 units)
Prerequisites: Prerequisite: 1 from (CSCI 104 or ITP 365)
Restrictions: Not available
Class type: Lecture-Lab
Days: Tue, Thu
Time: 7:00-8:50pm
Instructor: Clark Kromenaker
CSCI 401: Capstone: Design and Construction of Large Software Systems 
Group project with an outside stakeholder to develop real-world software solutions to large-scale problems. Topics include software engineering, professional preparation, and recent computer science research. Duplicates credit in CSCI 477a and CSCI 477b.
Units: (4.0 units, max 8)
Prerequisites: Prerequisite: (CSCI 270 and CSCI 310)
Restrictions: Not available
Class type: Lecture
Days: Mon, Wed
Time: 8:00-9:50am
Instructor: Victor Adamchik
CSCI 402: Operating Systems 
Concurrency, deadlock control, synchronization, process and thread scheduling, memory management, file systems, security and access control, communication and networking, distributed file systems, data management. Duplicates credit in CSCI 350.
Units: (4.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Mon, Wed
Time: 10:00-11:20am
Instructor: William Cheng
CSCI 420: Computer Graphics 
Computer graphics, OpenGL, 2D and 3D transformations, Bzier splines, computer animation, rendering including ray tracing, shading and lighting, artistic rendering, virtual reality, visualization.
Units: (4.0 units)
Prerequisites: Prerequisite: CSCI 104 and 1 from (MATH 225 or (EE 141 and MATH 126) or (EE 141 and MATH 127) or (EE 141 and MATH 129))
Restrictions: Restriction:  Registration closed to the following class level(s): Freshmen, Sophomore
Class type: Lecture
Days: Mon, Wed
Time: 10:00-11:50am
Instructor: Jernej Barbic
CSCI 426: Game Prototyping 
Developing games or technology based on current and relevant special topics.
Units: (4.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Wednesday
Time: 1:00-4:20pm
Instructor: Andrew Nealen
CSCI 430: Introduction to Computer and Network Security 
A broad overview of security threats and defenses, security systems and functionalities, as well as current security practices. Includes homeworks and in-class exercises to provide practical experience working with such systems. Prerequisite: CSCI 201.
Units: (4.0 units)
Prerequisites: Prerequisite: CSCI 201
Restrictions: Not available
Class type: Lecture
Days: Mon, Wed
Time: 4:00-5:50pm
Instructor: Genevieve Bartlett
CSCI 435: Professional C++ 
Applications of advanced concepts in C++ including lambda expressions, templates, secure coding, parallel programming, writing performant code, CMake and continuous integration.
Units: (4.0 units)
Prerequisites: Prerequisite: 1 from (CSCI 104 or ITP 365)
Restrictions: Not available
Class type: Lecture
Days: Mon, Wed
Time: 2:00-3:50pm
Instructor: Sanjay Madhav
CSCI 445L: Introduction to Robotics 
Designing, building and programming mobile robots; sensors, effectors, basic control theory, control architectures, some advanced topics, illustrations of state-of-the-art. Teamwork; final project tested in a robot contest. Junior standing or higher. Prerequisites: CSCI 103.
Units: (4.0 units)
Prerequisites: Prerequisite: CSCI 103
Restrictions: Restriction:  Registration open to the following class level(s): Junior, Senior
Class type: Lecture
Days: Tue, Thu
Time: 8:00-9:20am
Instructor: Erdem Biyik
CSCI 450: Introduction to Computer Networks 
Network architectures; layered protocols, network service interface; local, wide area, wireless networks; Internet protocols; link protocols; addressing; routing; flow control; software defined network; multimedia networks.
Units: (4.0 units)
Prerequisites: Not available
Restrictions: Restriction:  Registration closed to the following class level(s): Freshmen, Sophomore
Class type: Quiz
Days: Friday
Time: 5:00-6:50pm
Instructor: Ali Zahid
CSCI 452: Parallel and Distributed Computation 
Introduction to parallel programming techniques, models and optimization strategies; Application mapping to multi-core, accelerator, GPU and cloud platforms; High Performance Computing and Data Science applications.
Units: (4.0 units)
Prerequisites: Prerequisite: 1 from (EE 355 or CSCI 201)
Restrictions: Not available
Class type: Lecture
Days: Tue, Thu
Time: 2:00-3:20pm
Instructor: Viktor Prasanna
CSCI 455x: Introduction to Programming Systems Design 
Intensive introduction to programming principles, discrete mathematics for computing, software design and software engineering concepts. Not available for credit to computer sciencemajors, graduate or undergraduate.
Units: (4.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Tue, Thu
Time: 10:00-11:20am
Instructor: Claire Bono
CSCI 457: Computer Systems Organization 
Register Transfer level machine organization; performance; arithmetic; pipelined processors; exceptions, out-of-order and speculative execution, cache, virtual memory, multi-core multi-threaded processors, cache coherence.
Units: (4.0 units)
Prerequisites: Prerequisite: EE 354
Restrictions: Not available
Class type: Lecture
Days: Mon, Wed
Time: 2:00-3:50pm
Instructor: Gandhi Puvvada
CSCI 458: Numerical Methods 
Rounding errors in digital computation; solution of linear algebraic systems; Newton's method for nonlinear systems; matrix eigenvalues; polynomial approximation; numerical integration; numerical solution of ordinary differential equations.
Units: (4.0 units)
Prerequisites: Prerequisite: 1 from (MATH 225 or MATH 235 or MATH 245)
Restrictions: Not available
Class type: Lecture
Days: MWF
Time: 2:00-2:50pm
Instructor: Aykut Arslan
CSCI 467: Introduction to Machine Learning 
Methods for building intelligent and adaptive systems from statistical analyses; theoretical understanding of such methods and the computational implications.
Units: (4.0 units)
Prerequisites: Prerequisite: (CSCI 270 and MATH 225) and 1 from (EE 364 or MATH 407)
Restrictions: Not available
Class type: Lecture
Days: Tue, Thu
Time: 3:30-4:50pm
Instructor: Robin Jia
CSCI 475: Theory of Computation 
History of the theory of computing, foundational theorems and theoretical frameworks of computer science, solvable and unsolvable problems.
Units: (4.0 units)
Prerequisites: Prerequisite: CSCI 270
Restrictions: Not available
Class type: Lecture
Days: Mon, Wed
Time: 10:00-11:50am
Instructor: Aaron Cote
CSCI 487: Programming Game Engines 
Techniques for building the core components of a game engine; 2-D/3-D graphics, collision detection, artificial intelligence algorithms, shading, programming input devices. Prerequisite: ITP-380.
Units: (4.0 units)
Prerequisites: Prerequisite: ITP 380
Restrictions: Not available
Class type: Lecture-Lab
Days: Mon, Wed
Time: 10:00-11:50am
Instructor: Matthew Whiting
CSCI 490x: Directed Research 
Individual research and readings. Not available for graduate credit.
Units: (1.0-8.0 units, max 12)
Prerequisites: Not available
Restrictions: Restriction:  Registration open to the following class level(s): Junior, Senior
Class type: Lecture
Days: TBA
Time: TBA
CSCI 491bL: Final Game Project 
b: Design, iterative stage 2 prototyping and development of a refined game.
Units: (2.0 units)
Prerequisites: Prerequisite: CSCI 491A
Restrictions: Not available
Class type: Lecture-Lab
Days: Thursday
Time: 2:00-5:20pm
Instructor: Scott Easley
CSCI 495: Senior Project 
An original project will be constructed applying computer technology (in either hardware or software) to produce a result useful in the physics classroom or laboratory.
Units: (2.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture-Lab
Days: TBA
Time: TBA
Instructor: Vahe Peroomian
CSCI 499: Special Topics 
Selected topics in computer science.
Units: (2.0-4.0 units, max 8)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Mon, Wed
Time: 8:00-9:50am
Instructor: Souti Chattopadhyay
CSCI 501: Numerical Analysis and Computation 
Linear equations and matrices, Gauss elimination, error estimates, iteration techniques; contractive mappings, Newton's method; matrix eigenvalue problems; least-squares approximation, Newton-Cotes and Gaussian quadratures; finite difference methods. Prerequisite: linear algebra and calculus.
Units: (3.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: MWF
Time: 12:00-12:50pm
Instructor: Cymra Haskell
CSCI 502a: Numerical Analysis 
Computational linear algebra; solution of general nonlinear systems of equations; approximation theory using functional analysis; numerical solution of ordinary and partial differential equations.
Units: (3.0 units)
Prerequisites: Prerequisite: (MATH 425A and MATH 471)
Restrictions: Not available
Class type: Lecture
Days: MWF
Time: 9:00-9:50am
Instructor: Gary Rosen
CSCI 505b: Applied Probability 
Markov processes in discrete or continuous time; renewal processes; martingales; brownian motion and diffusion theory; random walks, inventory models, population growth, queuing models, shot noise.
Units: (3.0 units)
Prerequisites: Prerequisite: MATH 505A
Restrictions: Not available
Class type: Lecture
Days: MWF
Time: 1:00-1:50pm
Instructor: Ken Alexander
CSCI 520: Computer Animation and Simulation 
Fundamental techniques of computer animation and simulation, knowledge and/or experience in the design, scripting, production and post-production stages of computer animation. Prerequisite: CSCI-420 or CSCI-580. Recommendedpreparation: Familiarity with calculus, linear algebra, and numerical computation; C/C++ programming skills.
Units: (4.0 units)
Prerequisites: Prerequisite: 1 from (CSCI 420 or CSCI 580)
Restrictions: Not available
Class type: Lecture
Days: Mon, Wed
Time: 2:00-3:50pm
Instructor: Jernej Barbic
CSCI 522: Game Engine Development 
The principles of developing game engines targeted at modern PC and game console hardware.
Units: (4.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Monday
Time: 7:00-10:20pm
Instructor: Artjoms Kovalovs
CSCI 526: Advanced Mobile Devices and Game Consoles 
Explore the complex engineering process required to design and build a real-time graphics engine to support physical realism on mobile devices. Recommended preparation: CSCI 420 or CSCI 580 or an equivalent course in graphics.
Units: (4.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Tuesday
Time: 1:00-4:20pm
Instructor: Scott Easley
CSCI 529b: Advanced Game Projects 
Provides students in various areas of game specialization the practice of design, iterative stage 2 prototyping and development of a refined game.
Units: (2.0 units)
Prerequisites: Prerequisite: CSCI 529a
Restrictions: Not available
Class type: Lecture-Lab
Days: Thursday
Time: 2:00-5:20pm
Instructor: Andrew Nealen
CSCI 531: Applied Cryptography 
Intensive overview of cryptography for practitioners, historical perspective on early systems, number theoretic foundations of modern day cryptosystems and basic cryptanalysis.
Units: (4.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Wednesday
Time: 2:00-5:20pm
Instructor: Tanya Ryutov
CSCI 532: Innovation for Defense Applications 
Development of problem statements and innovative software prototypes for defense, intelligence and homeland security applications; team projects; hands-on experience.
Units: (4.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Thursday
Time: 3:30-6:50pm
Instructor: Clifford Neuman
CSCI 533: Algebraic Combinatorics 
Combinatorics motivated by Representation Theory and Algebraic Geometry. Topics may include: representations of the symmetric group, symmetric functions, Young tableaux and plane partitions, permutation enumeration.
Units: (3.0 units)
Prerequisites: Prerequisite: MATH 410 and MATH 532
Restrictions: Not available
Class type: Lecture
Days: MWF
Time: 1:00-1:50pm
Instructor: Sami Assaf
CSCI 534: Affective Computing 
Overview of the theory of human emotion, techniques for recognizing and synthesizing emotional behavior, and design application.
Units: (4.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Mon, Wed
Time: 2:00-3:50pm
Instructor: Jonathan Gratch
CSCI 535: Multimodal Probabilistic Learning of Human Communication 
Principles and techniques to understand, build, and utilize multimodal machine learning algorithms through automatically understanding, recognizing, and analyzing phenomena of human communication. Recommended preparation: CSCI 542 or CSCI 567 or CSCI 573 or equivalent.
Units: (4.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Tue, Thu
Time: 3:30-5:20pm
CSCI 536: Linear Programming and Extensions 
Linear programming models for resource allocation; simplex and revised simplex methods; duality; sensitivity; transportation problems; selected extensions to large scale, multiobjective and special structured models.
Units: (4.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Wednesday
Time: 2:00-5:20pm
Instructor: Monir Sabbaghtorkan
CSCI 544: Applied Natural Language Processing 
Introduction to key components of human language technologies, including: information extraction, sentiment analysis, question answering, machine translation.
Units: (4.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Tue, Thu
Time: 5:00-6:50pm
Instructor: Xuezhe Ma
CSCI 545: Robotics 
Fundamental skills for modeling and controlling of dynamic systems for robotic applications and graphics animations; control theory; kinematics; dynamics; sensor processing; real-time operating systems; robot labs. Recommended preparation: Basic knowledge in linear algebra (matrices and vectors), calculus, programming in C/C++ or any another language or permission of the instructor.
Units: (4.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Mon, Wed
Time: 4:00-5:50pm
Instructor: Daniel Seita
CSCI 547: Robot Dynamics and Control 
Introduction to dynamics and control of robotic systems including Model Predictive Control (MPC), Quadratic Program (QP)-based nonlinear control and trajectory optimization.
Units: (4.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Mon, Wed
Time: 10:00-11:50am
Instructor: Quan Nguyen
CSCI 550: Advanced Data Stores 
Selected topics on highly available, elastic data stores. Topics include non-relational data models, simple interfaces and query languages, weak consistency and benchmarking techniques. Prerequisite: CSCI 485 or CSCI 585.
Units: (4.0 units)
Prerequisites: Prerequisite: 1 from (CSCI 485 or CSCI 585)
Restrictions: Not available
Class type: Lecture
Days: Tue, Thu
Time: 10:00-11:50am
Instructor: Ibrahim Sabek
CSCI 554: Cyber-Physical Systems: A Computing Perspective 
Cyber-physical systems; models of computation; programming models; compiler analysis; automatic parallelization; heterogeneous computing and memory systems; multicores; interconnect; mapping; scheduling; real-time operating systems; reliability; fault-tolerance.
Units: (4.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Mon, Wed
Time: 8:00-9:50am
Instructor: Paul Bogdan
CSCI 555L: Advanced Operating Systems 
Advanced topics in operating system research: new OS structures, novel memory management, communication, file system, process management, reliability and security techniques.
Units: (4.0 units)
Prerequisites: Prerequisite: 1 from (CSCI 350 or CSCI 402)
Restrictions: Not available
Class type: Lecture
Days: Mon, Wed
Time: 2:00-3:50pm
Instructor: Harsha Madhyastha
CSCI 557: Computer Systems Architecture 
Computer architecture from a design perspective: Pipelined processors, speculative execution, VLIW, vector processors, GPU/GPGPU, memory technology and systems, interconnection networks, shared-memory and message-passing multiprocessors, chip multiprocessors.
Units: (4.0 units)
Prerequisites: Prerequisite: EE 457
Restrictions: Not available
Class type: Lecture
Days: Tue, Thu
Time: 2:00-3:50pm
Instructor: Murali Annavaram
CSCI 559: Machine Learning I: Supervised Methods 
Distribution-free and probabilistic methods for supervised classification and regression; learning algorithms; optimization techniques; feature-space transformations; parametric and nonparametric methods; Bayes decision theory; artificial neural networks.
Units: (4.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Mon, Wed
Time: 4:00-5:50pm
Instructor: Keith Jenkins
CSCI 561: Foundations of Artificial Intelligence 
Foundations of symbolic intelligent systems, search, logic, knowledge representation, planning, learning.
Units: (4.0 units)
Prerequisites: Not available
Restrictions: Not available
Class type: Lecture
Days: Mon, Wed
Time: 3:00-4:50pm
Instructor: Laurent Itti