Autumn
Winter
Spring
Summer

201 - 210 of 366 results for: CS

CS 248A: Computer Graphics: Rendering, Geometry, and Image Manipulation

This course provides a comprehensive introduction to interactive computer graphics, focusing on fundamental concepts and techniques, as well as their cross-cutting relationship to multiple problem domains in interactive graphics (such as rendering, animation, geometry, image processing). Topics include: 2D and 3D drawing, sampling theory, interpolation, rasterization, image compositing, the real-time GPU graphics pipeline (and parallel rendering), VR rendering, geometric transformations, curves and surfaces, geometric data structures, subdivision, meshing, spatial hierarchies, image processing, time integration, physically-based animation, and inverse kinematics. The course will involve several in-depth programming assignments and a self-selected final project that explores concepts covered in the class. Prerequisite: CS 107, MATH 51.
Terms: Win | Units: 3-4
Instructors: Fatahalian, K. (PI) ; Karmali, T. (TA) ; Zhang, l. (TA) ; Zhou, F. (TA)

CS 248B: Fundamentals of Computer Graphics: Animation and Simulation

This course provides a comprehensive introduction to computer graphics, focusing on fundamental concepts and techniques in Computer Animation and Physics Simulation. Topics include numerical integration, 3D character modeling, keyframe animation, skinning/rigging, inverse kinematics, rigid body dynamics, deformable body simulation, and fluid simulation. Prerequisites: CS107 and MATH51.
Terms: Aut | Units: 3
Instructors: James, D. (PI) ; Liu, K. (PI) ; Li, Z. (TA) ; Yu, K. (TA)

CS 249I: The Modern Internet

Advanced networking course that covers how the Internet has evolved and operates today. Topics include modern Internet topology and routing practices, recently introduced network protocols, popular content delivery strategies, and pressing privacy, security, and abuse challenges. The course consists of a mixture of lecture, guest talks, and investigative projects where students will analyze how Internet operates in practice. Prerequisite: CS 144, EE 284, or equivalent.
Last offered: Winter 2025 | Units: 3

CS 250: Algebraic Error Correcting Codes (EE 387)

Introduction to the theory of error correcting codes, emphasizing algebraic constructions, and diverse applications throughout computer science and engineering. Topics include basic bounds on error correcting codes; Reed-Solomon and Reed-Muller codes; list-decoding, list-recovery and locality. Applications may include communication, storage, complexity theory, pseudorandomness, cryptography, streaming algorithms, group testing, and compressed sensing. As part of this course you will be writing mathematical proofs.
Last offered: Winter 2025 | Units: 3

CS 251: Cryptocurrencies and blockchain technologies

For advanced undergraduates and for graduate students.  The potential applications for Bitcoin-like technologies is enormous.  The course will cover the technical aspects of cryptocurrencies, blockchain technologies, and distributed consensus. Students will learn how these systems work, and how to engineer secure software that interacts with Blockchains like Bitcoin, Ethereum, and others. Prerequisite: CS110. Recommended: CS255.
Terms: Aut | Units: 3
Instructors: Argyropoulos, A. (PI) ; Boneh, D. (PI) ; Waitz, A. (PI) ; Yiorkadjis, P. (TA)

CS 253: Web Security

Principles of web security. The fundamentals and state-of-the-art in web security. Attacks and countermeasures. Topics include: the browser security model, web app vulnerabilities, injection, denial-of-service, TLS attacks, privacy, fingerprinting, same-origin policy, cross site scripting, authentication, JavaScript security, emerging threats, defense-in-depth, and techniques for writing secure code. Course projects include writing security exploits, defending insecure web apps, and implementing emerging web standards. Prerequisite: CS 142 or equivalent web development experience.
Last offered: Autumn 2021 | Units: 3

CS 254: Computational Complexity

An introduction to computational complexity theory. Topics include the P versus NP problem and other major challenges of complexity theory; Space complexity: Savitch's theorem and the Immerman-Szelepscényi theorem; P, NP, coNP, and the polynomial hierarchy; The power of randomness in computation; Non-uniform computation and circuit complexity; Interactive proofs. Prerequisites: 154 or equivalent; mathematical maturity.
Terms: Win | Units: 3

CS 254B: Computational Complexity II

A continuation of CS254 (Computational Complexity). Topics include Barriers to P versus NP; The relationship between time and space, and time-space tradeoffs for SAT; The hardness versus randomness paradigm; Average-case complexity; Fine-grained complexity; Current and new areas of complexity theory research. Prerequisite: CS254.
Terms: Spr | Units: 3
Instructors: Tan, L. (PI)

CS 255: Introduction to Cryptography

For advanced undergraduates and graduate students. Theory and practice of cryptographic techniques used in computer security. Topics: encryption (symmetric and public key), digital signatures, data integrity, authentication, key management, PKI, zero-knowledge protocols, and real-world applications. Prerequisite: basic probability theory.
Terms: Win | Units: 3
Instructors: Boneh, D. (PI) ; Aggarwal, A. (TA) ; Kim, J. (TA) ; Le, J. (TA) ; Litchev, Y. (TA) ; Sidhu, J. (TA)

CS 256: Algorithmic Fairness

Machine learning and data analysis have enjoyed tremendous success in a broad range of domains. These advances hold the promise of great benefits to individuals, organizations and society. Undeniably, algorithms are informing decisions that reach ever more deeply into our lives, from news article recommendations to criminal sentencing decisions to healthcare diagnostics. This progress, however, raises (and is impeded by) a host of concerns regarding the societal impact of computation. A prominent concern is that these algorithms should be fair. Unfortunately, the hope that automated decision-making might be free of social biases is dashed on the data on which the algorithms are trained and the choices in their construction: left to their own devices, algorithms will propagate - even amplify - existing biases of the data, the programmers, and the decisions made in the choice of features to incorporate and measurements of 'fitness' to be applied. Addressing wrongful discrimination by alg more »
Machine learning and data analysis have enjoyed tremendous success in a broad range of domains. These advances hold the promise of great benefits to individuals, organizations and society. Undeniably, algorithms are informing decisions that reach ever more deeply into our lives, from news article recommendations to criminal sentencing decisions to healthcare diagnostics. This progress, however, raises (and is impeded by) a host of concerns regarding the societal impact of computation. A prominent concern is that these algorithms should be fair. Unfortunately, the hope that automated decision-making might be free of social biases is dashed on the data on which the algorithms are trained and the choices in their construction: left to their own devices, algorithms will propagate - even amplify - existing biases of the data, the programmers, and the decisions made in the choice of features to incorporate and measurements of 'fitness' to be applied. Addressing wrongful discrimination by algorithms is not only mandated by law and by ethics but is essential to maintaining the public trust in the current computation-driven revolution.The study of fairness is ancient and multi-disciplinary: philosophers, legal experts, economists, statisticians, social scientists and others have been concerned with fairness for as long as these fields have existed. Nevertheless, the scale of decision making in the age of big-data, the computational complexities of algorithmic decision making, and simple professional responsibility mandate that computer scientists contribute to this research endeavor. This is an intro to this booming area of research. Prerequisites: CS 161. I will be assuming some mathematical maturity, CS 154 is recommended.
Terms: Aut | Units: 3
© Stanford University | Terms of Use | Copyright Complaints