2014-2015 2015-2016 2016-2017 2017-2018 2018-2019
Browse
by subject...
    Schedule
view...
 

111 - 120 of 247 results for: CS

CS 239: Advanced Topics in Sequential Decision Making (AA 229)

Survey of recent research advances in intelligent decision making for dynamic environments from a computational perspective. Efficient algorithms for single and multiagent planning in situations where a model of the environment may or may not be known. Partially observable Markov decision processes, approximate dynamic programming, and reinforcement learning. New approaches for overcoming challenges in generalization from experience, exploration of the environment, and model representation so that these methods can scale to real problems in a variety of domains including aerospace, air traffic control, and robotics. Students are expected to produce an original research paper on a relevant topic. Prerequisites: AA 228/ CS 238 or CS 221.
Terms: not given this year, last offered Winter 2018 | Units: 3-4 | Grading: Letter or Credit/No Credit

CS 240: Advanced Topics in Operating Systems

Recent research. Classic and new papers. Topics: virtual memory management, synchronization and communication, file systems, protection and security, operating system extension techniques, fault tolerance, and the history and experience of systems programming. Prerequisite: 140 or equivalent.
Terms: Spr | Units: 3 | Repeatable for credit | Grading: Letter or Credit/No Credit
Instructors: Engler, D. (PI)

CS 241: Embedded Systems Workshop (EE 285)

Project-centric building hardware and software for embedded computing systems. Students work on an existing project of their own or join one of these projects. Syllabus topics will be determined by the needs of the enrolled students and projects. Examples of topics include: interrupts and concurrent programming, deterministic timing and synchronization, state-based programming models, filters, frequency response, and high-frequency signals, low power operation, system and PCB design, security, and networked communication. Prerequisite: CS107 (or equivalent).
Terms: not given this year, last offered Autumn 2017 | Units: 2 | Repeatable for credit | Grading: Letter or Credit/No Credit

CS 242: Programming Languages

This course explores models of computation, both old, like functional programming with the lambda calculus (circa 1930), and new, like memory-safe systems programming with Rust (circa 2010). Topics include type systems (polymorphism, algebraic data types, static vs. dynamic), control flow (exceptions, continuations), concurrency/parallelism, metaprogramming, and the semantic gap between computational models and modern hardware. The study of programming languages is equal parts systems and theory, looking at how a rigorous understanding of the syntax, structure, and semantics of computation enables formal reasoning about the behavior and properties of complex real-world systems. In light of today's Cambrian explosion of new programming languages, this course also seeks to provide a conceptual clarity on how to compare and contrast the multitude of programming languages, models, and paradigms in the modern programming landscape. Prerequisites: 103, 110.
Terms: Aut | Units: 3-4 | Grading: Letter or Credit/No Credit

CS 243: Program Analysis and Optimizations

Program analysis techniques used in compilers and software development tools to improve productivity, reliability, and security. The methodology of applying mathematical abstractions such as graphs, fixpoint computations, binary decision diagrams in writing complex software, using compilers as an example. Topics include data flow analysis, instruction scheduling, register allocation, parallelism, data locality, interprocedural analysis, and garbage collection. Prerequisites: 103 or 103B, and 107.
Terms: Win | Units: 3-4 | Grading: Letter or Credit/No Credit
Instructors: Lam, M. (PI)

CS 244: Advanced Topics in Networking

Classic papers, new ideas, and research papers in networking. Architectural principles: why the Internet was designed this way? Congestion control. Wireless and mobility; software-defined networks (SDN) and network virtualization; content distribution networks; packet switching; data-center networks. Prerequisite: 144 or equivalent.
Terms: Spr | Units: 3-4 | Grading: Letter or Credit/No Credit

CS 244B: Distributed Systems

Distributed operating systems and applications issues, emphasizing high-level protocols and distributed state sharing as the key technologies. Topics: distributed shared memory, object-oriented distributed system design, distributed directory services, atomic transactions and time synchronization, application-sufficient consistency, file access, process scheduling, process migration, and storage/communication abstractions on distribution, scale, robustness in the face of failure, and security. Prerequisites: CS 144.
Terms: not given this year, last offered Autumn 2017 | Units: 3 | Grading: Letter or Credit/No Credit

CS 245: Principles of Data-Intensive Systems

Architecture of data storage and processing systems, including relational databases, cluster computing systems, stream processing and machine learning systems. Topics include database system architecture, storage organization, query optimization, transaction management, fault recovery, and parallel processing, with a focus on the key design ideas shared across many types of data-intensive systems. Prerequisites: 145, 161.
Terms: Spr | Units: 3 | Grading: Letter or Credit/No Credit
Instructors: Zaharia, M. (PI)

CS 246: Mining Massive Data Sets

Availability of massive datasets is revolutionizing science and industry. This course discusses data mining and machine learning algorithms for analyzing very large amounts of data. The focus is on algorithms and systems for mining big data. nTopics include: Big data systems (Hadoop, Spark, Hive); Link Analysis (PageRank, spam detection, hubs-and-authorities); Similarity search (locality-sensitive hashing, shingling, minhashing, random hyperplanes); Stream data processing; Analysis of social-network graphs; Association rules; Dimensionality reduction (UV, SVD, and CUR decompositions); Algorithms for very-large-scale mining (clustering, nearest-neighbor search); Large-scale machine learning (gradient descent, support-vector machines, classification, and regression); Submodular function optimization; Computational advertising. Prerequisites: At least one of CS107 or CS145.
Terms: Win | Units: 3-4 | Grading: Letter or Credit/No Credit
Instructors: Leskovec, J. (PI)

CS 246H: Mining Massive Data Sets Hadoop Lab

Supplement to CS 246 providing additional material on Hadoop. Students will learn how to implement data mining algorithms using Hadoop, how to implement and debug complex MapReduce jobs in Hadoop, and how to use some of the tools in the Hadoop ecosystem for data mining and machine learning. Topics: Hadoop, MapReduce, HDFS, combiners, secondary sort, distributed cache, SQL on Hadoop, Hive, Cloudera ML/Oryx, Mahout, Hadoop streaming, implementing Hadoop jobs, debugging Hadoop jobs, TF-IDF, Pig, Sqoop, Oozie, HBase, Impala. Prerequisite: CS 107 or equivalent.
Terms: Win | Units: 1 | Grading: Satisfactory/No Credit
Filter Results:
term offered
updating results...
number of units
updating results...
time offered
updating results...
days
updating results...
UG Requirements (GERs)
updating results...
component
updating results...
career
updating results...
© Stanford University | Terms of Use | Copyright Complaints