290 Courses for Winter 2014
For help in enrolling in these courses, please contact the Undergraduate Advisor.
CS 290N Web Search and Advanced Internet Services
Instructor: Tao Yang
Class satisfies this area only: Applications
Enrollment Code: 53868
Location: Phelps 2510
Day and Time: TR 100-250
Units: 4.0, letter grade ONLY
Class website: http://www.cs.ucsb.edu/~tyang/class/290N14/
Description:
This course covers advanced topics on Internet search and information
systems. The topics include search engines and advertisements, web crawling,
classification, indexing and data serving, ranking and recommendation, user
behavior analysis, and online services. This course will also cover system
and middleware support for building related large-scale Internet services.
CS 290I/MAT 235 Mobile Imaging
Instructor: Matthew Turk
Class satisfies this area only: Applications
Enrollment Code: 53744
Location: HFH 1132
Day and Time: TR 100-300
Units: 4.0, letter grade ONLY
Class website: http://www.cs.ucsb.edu/~mturk/imaging
Description:
Mobile imaging is becoming increasingly important in computer- and
communication-related fields, especially in consumer-focused applications.
As computational power and bandwidth increase, more and more use is being
made of images, video, and 3D in all sorts of mobile applications and
environments. This course is about digital images (and video) on mobile
devices: how they are created, stored, compressed, transmitted, displayed,
processed, and used in various applications in the context of mobile
computing, including leveraging the other sensors and capabilities of a
mobile device. Topics will include applications in computational
photography, telecollaboration, and human-computer interaction. Students
will work on projects involving image-based applications on mobile devices.
CS 290B Special Topics in Image Synthesis
Instructor: Pradeep Sen
Class satisfies this area only: *Does not count towards one of the CS
core course requirements. (will not satisfy an area).*
Enrollment Code: 62539
Location: NH 1111
Day and Time: MW 1000-1150
Units: 4.0, letter grade ONLY
Class website:
Description:
Image synthesis, the process of generating an image from a scene
description, is one of the fundamental problems in computer graphics.
This course focuses on the theory of image synthesis as applied in modern
film studios today, and covers both high-end scanline rendering algorithms
as well as physically-based rendering systems such as ray tracing and
radiosity methods.
Topics include radiometry, stochastic ray tracing, the Rendering Equation, Monte Carlo integration, variance reduction techniques, photon mapping, reflection models, participating media, and advanced algorithms for light transport. For class assignments, students will have to program some of the algorithms discussed in class to generate their own images. Students are expected to be solid programmers in C/C++ in order to be successful in the class.
In this class, we will read, discuss, and gain hands on experience with recent advances in cloud computing technologies and related areas of computer science. Topic areas include research and technologies for infrastructure-as-a-service, and platform-as-a-service, as well as for cloud programming language support and frameworks. The course will consist of lectures, paper discussions, and student tutorial demonstrations of emerging public cloud systems and services.
CS 290F Data Intensive Computing Systems
Instructor: Ben Zhao
Class satisfies this area only: Applications
Enrollment Code: 53736
Location:Phelps 1401
Day and Time: TR 1100-1250
Units: 4.0, letter grade ONLY
Class website: http://www.cs.ucsb.edu/~ravenben/classes/290F/
Description:
Big data processing is changing every facet of technology in our daily lives, often without our explicit knowledge. This course will cover advanced topics related to data intensive computing and processing in a variety of fields and systems. We will study tools used in data intensive computing, its applications, and implications on areas such as networking, security, machine learning, and information retrieval. Coursework involves reading recent publications on related topics, gaining hands on experience with data processing tools, and carrying out a publication-quality, quarter-long original research project related to the topic of data intensive systems or applications.
CS 290G Introduction to Modern Cryptography
Instructor: Stefano Tessaro
Class satisfies this area only: Foundations
Enrollment Code: 62166
Location:Phelps 1401
Day and Time: TR 100-250
Units: 4.0, letter grade ONLY
Class website: http://www.cs.ucsb.edu/~tessaro/teaching/cs290w14/
Description:
Cryptography provides the basic technology to protect information and to communicate securely. This class is a self-contained graduate-level introduction to modern cryptography. We will study tools and techniques to design systems with provable security guarantees.
We will discuss basic cryptographic building blocks like RSA, AES, and SHA and their abstractions. More importantly, we will see how to combine these components to achieve richer functionalities, like key agreement, secret- and public-key encryption, secure identification, message authentication, and digital signatures.
A main high-level objective of the class is to learn how security of cryptographic algorithms is properly defined, and to understand security proofs and what type of guarantees they provide.
CS 290I/MAT 594A Physically Based Simulation and Animation
Instructor: Theodore Kim
Class satisfies this area only: Applications
Enrollment Code: TBA
Location: Elings 2003
Day and Time: TR 200-400
Units: 4.0, letter grade ONLY
Class website: http://mat.ucsb.edu/~kim/syllabus.pdf
Description:
Over the last decade, highly sophisticated numerical methods have been developed that compute visually compelling motion in movies, games, and training simulations. Such phenomena include fire, water, ice, cloth, smoke, rigid bodies such as those in Angry Birds, and deformable bodies such as human flesh. In this course, we will survey the most widely used techniques, as well as the most recently developed algorithms. We will implement several of these techniques in programming assignments, and implement a larger, non-trivial technique as a final project.