CS 344: Topics in Computer Networks
Advanced material is often taught for the first time as a topics course, perhaps by a faculty member visiting from another institution. May be repeated for credit.
Last offered: Spring 2011
CS 345S: Data-intensive Systems for the Next 1000x
The last decade saw enormous shifts in the design of large-scale data-intensive systems due to the rise of Internet services, cloud computing, and Big Data processing. Where will we see the next 1000x increases in scale and data volume, and how should data-intensive systems accordingly evolve? This course will critically examine a range of trends, including the Internet of Things, drones, smart cities, and emerging hardware capabilities, through the lens of software systems research and design. Students will perform a comparative analysis by reading and discussing cutting-edge research while performing their own original research. Prerequisites: Strong background in software systems, especially databases (
CS 245) and distributed systems (
CS 244B), and/or machine learning (
CS 229). Undergraduates who have completed
CS 245 are strongly encouraged to attend.
Terms: Aut
| Units: 3-4
Instructors:
Bailis, P. (PI)
;
Wang, F. (TA)
CS 348A: Computer Graphics: Geometric Modeling & Processing
The mathematical tools needed for the geometrical aspects of computer graphics and especially for modeling smooth shapes. Fundamentals: homogeneous coordinates, transformations, and perspective. Theory of parametric and implicit curve and surface models: polar forms, Bézier arcs and de Casteljau subdivision, continuity constraints, B-splines, tensor product, and triangular patch surfaces. Subdivision surfaces and multi-resolution representations of geometry. Representations of solids and conversions among them. Surface reconstruction from scattered data points. Geometry processing on meshes, including simplification and parameterization. Prerequisite: linear algebra at the level of
CME103. Recommended: 248.
Terms: Win
| Units: 3-4
Instructors:
Guibas, L. (PI)
CS 348B: Computer Graphics: Image Synthesis Techniques
Intermediate level, emphasizing high-quality image synthesis algorithms and systems issues in rendering. Topics include: Reyes and advanced rasterization, including motion blur and depth of field; ray tracing and physically based rendering; Monte Carlo algorithms for rendering, including direct illumination and global illumination; path tracing and photon mapping; surface reflection and light source models; volume rendering and subsurface scattering; SIMD and multi-core parallelism for rendering. Written assignments and programming projects. Prerequisite: 248 or equivalent. Recommended: Fourier analysis or digital signal processing.
Terms: Spr
| Units: 3-4
Instructors:
Hanrahan, P. (PI)
CS 348C: Computer Graphics: Animation and Simulation
Core mathematics and methods for computer animation and motion simulation. Traditional animation techniques. Physics-based simulation methods for modeling shape and motion: particle systems, constraints, rigid bodies, deformable models, collisions and contact, fluids, and fracture. Animating natural phenomena. Methods for animating virtual characters and crowds. Additional topics selected from data-driven animation methods, realism and perception, animation systems, motion control, real-time and interactive methods, and multi-sensory feedback. Recommended:
CS 148 and/or 205A. Prerequisite: linear algebra.
Terms: Aut
| Units: 3
Instructors:
James, D. (PI)
;
Wang, J. (TA)
CS 349: Topics in Programming Systems
Advanced material is often taught for the first time as a topics course, perhaps by a faculty member visiting from another institution. May be repeated for credit.
Last offered: Winter 2006
| Repeatable
for credit
CS 352: Pseudo-Randomness
Pseudorandomness is the widely applicable theory of efficiently generating objects that look random, despite being constructed using little or no randomness. Since psudorandom objects can replace uniformly distributed ones (in a well-defined sense), one may view pseudorandomness as an extension of our understanding of randomness through the computational lens. We will study the basic tools pseudorandomness, such as limited independence, randomness extractors, expander graphs, and pseudorandom generators. We will also discuss the applications of pseudrandomness to derandomization, cryptography and more. We will cover classic result as well as cutting-edge techniques. Prerequisites:
CS 154 and
CS 161, or equivalents.
Terms: Spr
| Units: 3-4
Instructors:
Reingold, O. (PI)
CS 358: Topics in Programming Language Theory
Advanced material is often taught for the first time as a topics course, perhaps by a faculty member visiting from another institution. May be repeated for credit.
| Repeatable
for credit
CS 359: Topics in the Theory of Computation
Advanced material is often taught for the first time as a topics course, perhaps by a faculty member visiting from another institution. May be repeated for credit.
Last offered: Spring 2005
| Repeatable
for credit
CS 359C: Topics in Theory of Computation: Classics of Cryptography
This course will review some of the greatest discoveries in modern cryptography: zero-knowledge proofs, factoring algorithms, elliptic-curve cryptography, post-quantum cryptography, and more. Some of the topics we will cover have immediate practical applications. Other topics we will study for their potential future applications. And yet others we will study for the theoretical insights they provide. The course readings will be a combination of the original "classic" papers and more modern treatments of the same topics. Prerequisite:
CS 255, an equivalent course, or permission of instructors.
Terms: Spr
| Units: 3
Instructors:
Corrigan-Gibbs, H. (PI)
;
Wu, D. (PI)
Filter Results: