| |
|
CS
101L |
Fundamentals of Computer Programming (Syllabus - PDF)
Introduction to the design of solutions to computer
solvable problems. Algorithm design, solution
implementation using a high-level programming
language, program correctness and verification.
Course Website: Massoud Ghyam
|
| |
|
CS
102L |
Data Structures (Syllabus - PDF)
Linear lists, strings, arrays, and orthogonal
lists; graphs, trees, binary trees, multilinked
structures, sorting techniques; dynamic storage
allocation; applications.
Prerequisite: CS 101L.
Course Website: Claire Bono |
| |
|
CS 105 |
Object-Oriented
Programming (Syllabus - PDF)
The principles of object-oriented programming
are examined using Java. Topics include graphics,
graphical user interfaces and multi-threaded programming.
Prerequisite: CSCI 101L.
|
| |
|
CS 106x |
Introduction
to Computer Engineering/Computer Science (Syllabus - PDF)
(Enroll in EE 106Lx)
Course Website: Claire Bono |
| |
| CS 180 |
Survey
of Digital Games and Their Technologies
Historical, technical, and critical approach to
the evolution of computer and video game architectures
and game design, from its beginnings to the present
day.
|
| |
|
CS
201L
|
Principles of Software Development (Syllabus - PDF)
How to program complex systems; a look at software
engineering and operating systems concepts; programming
projects based on existing applications emphasizing
concurrent programming and unit testing.
Prerequisite: CS 102L, CS 105
Languages: Java
Course Website: David Wilczynski |
| |
|
CS
271 |
Discrete Methods in Computer Science (Syllabus - PDF)
Models for discrete structures in computer science,
including selected applications of logic, induction,
recursion and graphs to program correctness, design
algorithms, programming language semantics and
databases.
Corequisite: CS 102L
Course Website: David Wilczynski |
| |
| CS/ITP 280x |
Video Game
Production
History of video games; overview of game genres;
phases of video game development (concept, preproduction,
production, post-production); roles of artists,
programmers, designers, and producers. |
| |
| CSCI 281 |
Pipelines for Games and Interactives
Explores the aesthetic development/technical implementation necessary to achieve unique,
compelling, intuitive visual design in games. Students will develop group visual game design portfolios.
Course Website: Scott Easley |
| |
|
CS
303 |
Design and Analysis of Algorithms (Syllabus - PDF)
Upper and lower bounds on sorting and order median.
Deterministic and random computation, data structures,
NP-completeness, cryptography, Turing machines
and undecidability.
Prerequisite: CS 102L and CS 271
Course Website: Leonard Adleman |
| |
|
CS
351 |
Programming and Multimedia on World Wide Web (Syllabus - PDF)
HTML programming for creating home pages, installation
and modification of Web server, writing programs
that offer enhanced services, manipulation of
graphics, video and sound.
Prerequisite: CS 201
Course Website: William Cheng |
| |
|
CSCI/EE
352L |
Computer Organization and Architecture
Computer organization & architecture. Concepts include: computer evolution & performance,
system busses, cache memory, internal and external memory, input/output, operating system support, computer arithmetic.
Prerequisite: CSCI 102 |
| |
|
CS
377 |
Introduction to Software Engineering (Syllabus - PDF)
Introduction of principles, methods, techniques
and tools for multi-person construction of multi-version
software systems.
Prerequisite: CS 102
Course Website: Nenad Medvidovic |
| |
|
CS
380x |
Video Game Programming (Syllabus - PDF)
Underlying concepts and principles required for programming video games
(topics include vectors, transformations, 3-D math, geometric primitives, matrices).
Prerequisite: CSCI 102 or ITP 165x |
| |
|
CS 390 |
Special
Problems
Supervised, individual studies. No more than one
registration permitted. Enrollment by petition
only. |
| |
|
CS
402 |
Operating Systems (Syllabus - PDF)
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. Prerequisite: CSCI 201L or CSCI
455x; EE 357.
Course Website: Michael Crowley |
|
|
CS
410x |
Translation of Programming Languages
Concepts of assemblers, compilers, interpreters
and their design; macro assemblers, Polish notation
and translation techniques; operator precedence
parsing, code generation. Not available for graduate
credit to computer science majors.
Prerequisite: CS 201
Corequisite: EE 357
Course Website: |
| |
|
CS
445 |
Introduction to Robotics (Syllabus - PDF) 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.
Prerequisite: CS 101L or C language programming
Course Website: Laurent Itti
|
| |
|
CS/EE
450 |
Introduction to Computer Networks (Syllabus - PDF)
Network architectures; layered protocols, network
service interface; local networks; long-haul networks;
internal protocols; link protocols; addressing;
routing; flow control; higher level protocols.
Prerequisite: junior standing.
Course Website: |
| |
|
CSCI/EE
452L |
Game Hardware Architectures
Architectural principles underlying modern game console hardware design;
introduction to the programming techniques, optimization strategies,
& hardware insights to create powerful games. Prerequisite: CSCI/EE 352L |
| |
|
CS
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 science majors, graduate
or undergraduate.
Prerequisite: departmental approval.
Course Website: |
| |
|
CS
459 |
Computer Systems & Applications Modeling Fundamentals
Techniques and tools needed to construct/evaluate
models of computer systems and applications. Analytical
and simulation methods, capacity planning, performance/reliability
evaluation, & decision-making.
Prerequisites: Math 225, CSCI 201
|
| |
|
CS
460 |
Introduction to Artificial Intelligence (Syllabus - PDF)
Concepts and algorithms underlying the understanding
and construction of intelligent systems. Agents,
problem solving, search, representation, reasoning,
planning, communication, perception, robotics,
neural networks. Junior standing.
Prerequisite: CS 102L or CS 455x.
Course Website: Laurent Itti |
| |
|
CS 464 |
Foundations of Exotic Computation
Introduction to new approaches to computation:
quantum -- inspired by quantum mechanics;
neural -- inspired by the study of the brain;
and
molecular -- inspired by the genome.
Prerequisite: MATH 225 or MATH 245 or EE 241.
|
| |
|
CS
477L |
Design and Construction of Large Software Systems
Programming methodologies; intra-group and inter-group
communication; software life-cycle; software economics.
A large software project is a central aspect of
the course. Laboratory.
Prerequisite: CS 201, CS 377 |
| |
|
CS
480 |
Computer Graphics (Syllabus - PDF)
Introduction to graphics display hardware and
applications, interactive techniques, 2D scan
conversion, 2D & 3D transformations, 3D viewing,
visible surface algorithms, illumination models,
smooth shading, ray tracing, shadows, transparency,
texture mapping.
Prerequisite: CS 102L
Course Website: Sathyanaraya Raghavachary |
| |
|
CS
485 |
File and Database Management (Syllabus - PDF)
File input/output techniques, basic methods for
file organization, file managers, principles of
databases, conceptual data models, and query languages.
Prerequisite: CS 201.
Course Website: Shahram Ghandeharizadeh |
| |
|
CSCI/ITP
486 |
Serious
Games
Develop applications of interactive technology that extend beyond the traditional videogame market:
education, health, training, policy exploration, analytics, visualization, simulation, the arts, and therapy.
Prerequisite: CTIN 488; Corequisite CSCI487/ITP485.
|
| |
|
CS 490x |
Directed
Research
Individual research and readings. Not available
for graduate credit.
Prerequisite: departmental approval. |
| |
|
CS
491aL |
Final Game Projects
Design, iterative prototyping, & development of a 1st playable level.
Prerequisite: CSCI 487/ITP 485 OR CTIN 484 or consent of instructor.
|
| |
|
CS 491bL |
Final Game Projects
Design, iterative stage 2 prototyping and development of a refined game.
Prerequisite: CSCI 491aL or Instructor's approval |
| |
|
CS 499 |
Special
Topics
|
| |
|
CS 503 |
Parallel Programming
Exploration of parallel programming paradigms, parallel computing architectures,
hands-on parallel programming assignments, contemporary and historical examples and their impact,
context with parallel algorithms.
Recommended preparation: CSCI 102 or CSCI 455; EE 452 or EE 457
|
| |
|
CS 510 |
Software Management and Economics
Theories of management and their application to
software projects. Economic analysis of software
products and processes. Software cost and schedule
estimation, planning and control.
Prerequisite: Graduate standing.
Course Website: Barry Boehm |
| |
|
CS 511 |
Personal Software Process (PSP) and Project
Personal Software Process (PSP) and Project: Individual
analysis, planning, development, and maintenance
of a software product or development artifact,
using principles and practices the Personal Software
Process. Analysis of project lessons learned.
Prerequisite: none. Recommended: Any software
project course or development experience.
|
| |
|
CS 520 |
Computer Animation
Fundamental techniques of computer animation
and simulation, knowledge and/or experience
in the design, scripting, production and post-production
stages of computer animation.
Pre-requisite: CSCI 480 or Permission of instructor.
|
| |
|
CS 522 |
Game Engine Development
The purpose of this course is to familiarize the student with the principles of
developing game engines targeted at modern PC and game console hardware.
Prerequisite: CSCI 487/ITP 485; CSCI 480 or CSCI 580
|
| |
|
CS 523 |
Networked Games
Design and implementation of networked games, from the origins of the supporting technologies in distributed systems,
visual simulations, networked virtual environments, and shipped games.
Prerequisite: CSCI 580.
|
| |
|
CS 524 |
Networked Artificial Intelligence
Networked game communication architectures, protocol development, architecting networked game AI clients/services. Character following,
knowledge representation & reasoning, dynamic play strategies, search, learning, & planning.
Prerequisite: CSCI 523 or consent of instructor.
|
| |
|
CS 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.
Prerequisite: CSCI 523
|
| |
|
CS 529a |
Advanced Game Projects
Team projects intended to address the multifaceted technical and creative challenges that are inherent to comprehensive game development.
Prerequisite: CSCI 487/ITP 485 OR CTIN 484 or consent of instructor.
|
| |
|
CS 529b |
Advanced Game Projects
This course provides students in various areas of game specialization the practice of design,
iterative stage 2 prototyping and development of a refined game.
Prerequisite: CSCI 529a
|
| |
|
CS 530 |
Security Systems
Protecting data and computing resources. Systems/
network/data security; cryptography; authentication;
authorization; intrusion prevention/detection/
response; Wireless technologies & security
implications.
Prerequisite: CSCI 402
Course Website: Clifford Neuman |
| |
|
CS 531 |
Applied Cryptography
This course will provide an intensive overview of the field
of cryptography, providing a historical perspective on early
systems, building to the number theoretic foundations of
modern day cryptosystems. This course does not emphasize on
mathematical proofs but emphasize on the applied side of
cryptography. Students will also learn through implementing
various parts of a cryptosystem in C/C++.
Prerequisite: CS 102L or graduate standing
Course Website: William Cheng |
| |
|
CS 534 |
Affective Computing
Overview of the theory of human emotion, techniques for recognizing and synthesizing emotional behavior,
and design application.
Prerequisite: CSCI 561 |
| |
|
CS 537 |
Immersive Environments
Design and implementation of immersive environments, from the origins of the supporting technologies in visual simulation,
to interactive 3D graphics and interfaces, and interactive games.
Prerequisite: CSCI 580 |
| |
|
CS 538 |
Human Performance Engineering
Tools and techniques for addressing issues related to of Human Performance Engineering (HPE) of computing systems.
Prerequisite: CSCI 537 or consent of instructor. |
| |
|
CS 541 |
Artificial Intelligence Planning
Foundations and techniques of automated planning,
including representations of actions and plans,
approaches to planning, controlling search, learning
for planning, and interaction with the environment.
Prerequisite: CS 561 |
| |
|
CS 542 |
Neural Computation with Artificial Neural Networks
The course will introduce fundamental and advanced
techniques of computation and adaptation in networks
of distributed interconnected processing unit.
Skills from this course will be beneficial for
applied and basic research in artificial intelligence
(e.g., robotics, machine learning, process control),
computational neuroscience (e.g., motor control,
functional brain modeling) and cognitive sciences
(e.g., perception, memory, reasoning).
Prerequisite: Basic knowledge in linear algebra,
calculus, and programming in C (or another language),
or permission by instructor.
Recommended preparation: basic statistics, linear
algebra
Course Website:
Stefan Schaal |
| |
|
CS 543 |
Software Multiagent Systems
Investigate computational systems in which several
software agents or software agents and humans
interact |
| |
|
CS 544 |
Natural Language Processing
Examination of the issues which enable computers
to employ and understand natural language; knowledge
representation, memory modeling, parsing, language
analysis, story understanding, and generation.
Prerequisite: CS 460 or CS 573 or departmental
approval.
Course Website: Eduard Hovy,Patrick Pantel |
| |
|
CS 545 |
Robotics
Fundamental skills for programming robots for
industrial applications; spatial transforms and
kinematics; geometric algorithms for identifying,
avoiding, grasping, and relocating objects; current
research issues.
Prerequisite: C-programming, basic algebra, calculus.
Course Website: Stefan Schaal
|
| |
|
CS 546 |
Intelligent Embedded Systems
Survey of techniques for the design of large-scale,
distributed, networked, embedded systems. Examples
include sensor/actuator networks, wearable computing,
distributed robotics and smart spaces.
Prerequisite: Graduate standing required.
Course Website: Gaurav Sukhatme |
| |
|
CS 547 |
Sensing and Planning in Robotics
Introduction to software methods in robotics including
sensing, sensor fusion, estimation, fault tolerance,
sensor planning, robot control architectures,
planning and learning.
Prerequisite: Graduate standing required.
Course Website: Gaurav Sukhatme
|
| |
|
CS 548 |
Information Integration on the Web
Foundations and techniques in information integration
as it applies to the Web, including view integration,
wrapper learning, record linkage, and streaming
dataflow execution.
Prerequisite: CSCI 561, CSCI 585.
Recommended preparation: CSCI 571, CSCI 573
Course Website: Craig Knoblock |
| |
|
CS 549 |
Nanorobotics
Introduction to nanotechnology. Nanorobotic systems:
sensing; actuation propulsion; control; communication;
power; programming and coordination of robot swarms.
Nanomanipulation and nanoassembly with atomic
force microscopres.
Prerequisites: Graduate standing in science or
engineering.
Course Website: Aristides Requicha |
|
CS
551
|
Computer Communications
Protocol design for computer communication networks,
network routing, transport protocols, internetworking.
Prerequisite: CS402, EE450 & C- language programming.
Course Website: William Cheng
Ramesh Govindan
|
| |
CS
555
|
Advanced Operating Systems
Advanced issues in computer organization, naming,
kernel design, protection mechanisms and security
policies, reliable computing, data base OS, secure
networks, systems specification, decentralized
systems, real time systems.
Prerequisite: CS 402x
Course Website: Clifford Neuman |
| |
CS
556
|
Introduction to Cryptography
Modern secret codes. Public key cryptosystems
of Rivest-Shamir-Adelman, Diffie-Hellman and others.
The underlying number theory and computational
complexity theory.
Prerequisite: CS 570 or CS 581
Course Website:
|
| |
CS
558L
|
Internetworking and Distributed Systems Laboratory
Students complete laboratory exercises in operating
system and network management, distributed systems,
TCP/IP, SNMP, NFS, DNS, etc. Term project required.
Prerequisite: CS 402 and EE/CS 450; Recommended
preparation: CS 551 and CS 555.
Course Website:
William Cheng |
| |
CS
561
|
Artificial Intelligence
Foundations of symbolic intelligent systems. Agents,
search, problem solving, representation, reasoning
and symbolic programming.
Prerequisite: For a: CS 455x.
Recommended preparation: good programming and
algorithm analysis skills.
Course Website: Sven Koenig
|
| |
CS
562 |
Empirical Methods in Natural Language Processing
Acquiring computer-tractable linguistic knowledge
has always been a bottleneck in building natural
language systems. We will examine statistical
techniques for extracting knowledge automatically
from online text.
Prerequisite: CS 561.
Course Website: David Chiang |
| |
CS
564
|
Brain Theory and Artificial Intelligence
Introduces neural modeling, distributed artificial
intelligence and robotics approaches to vision,
motor control and memory.
Prerequisite: graduate standing.
Prerequisite: Graduate Standing. |
| |
CS
565
|
Compiler Design
Formal grammar; parsing methods and lexical analysis;
code generation; local and global code optimization;
and dynamic allocation.
Prerequisite: CS 455x
Course Website: Pedro Diniz |
| |
CS
566
|
Neural Network Self-Organization
Differential equations for network pattern formation.
Dynamic link architecture. Simulation of brain
organization processes (retinotopy, orientation
columns) and face recognition by elastic matching.
Recommended preparation: CSCI 564 and either MATH
225 or MATH 245. |
| |
CS
567
|
Machine Learning
A broad exposure to the field that deals with
the issue of designing machines, algorithms and
tools which automatically improve with experience.
Topics include optimization and information theory,
explanation-based learning, analogy & discovery,
and connectionist learning - both supervised and
unsupervised. Should be of interest to anybody
who does research in learning/inference with data
(refer to web page for details).
Prerequisite: CSCI 573
Course Website: Sofus MacSkassy
|
| |
CS
569
|
Integrated Intelligent Systems
Approaches to solving the artificial intelligence
problem: combining components of intelligent behavior
?learning, problem solving, planning, knowledge,
language, perception, action ?into integrated
intelligent systems.
Prerequisite: CS 573 |
| |
|
CS
570
|
Analysis of Algorithms
This is a basic course in Algorithms, and should
be of interest both to graduate Computer Science
students and to students in other scientific disciplines
and in the industry. Check the linked page for
more information.
Course Website: Shahriar Shamsian
Ming-Deh Huang
|
| |
CS
571
|
Web Technologies
Advanced study of programming languages with application
to the Web. Languages for client-side and server-side
processing. Examples taken from: HTML, Java, JavaScript,
Perl, XML and others.
Prerequisite: graduate standing and knowledge
of at least two programming languages.
Recommended preparation: Knowledge of at least
two programming languages.
Course Website: Ellis Horowitz
Marco Papa
|
| |
CS
572
|
Information Retrieval and Web Search Engines
Search engines have become a critical application
on the World Wide Web. This course examines closely
the computer science techniques that make these
systems so valuable. Included in the course is
a study of Information Retrieval concepts and
Database concepts as employed by web search engines.
Also covered are advanced techniques for ranking
to produce high quality results. |
| |
CS
573
|
Advanced Artificial Intelligence
Advanced topics in AI, covering reasoning under
uncertainty, decision theory, POMDPs,knowledge-based
and inductive learning, Introduction to agents
Recommended preparation: a previous undergraduate
or graduate level course in AI. ( Duplicates credit
in former CSCI 561b.)
Course Website: Ram Nevatia |
| |
CS
574
|
Computer Vision
Description and recognition of objects, shape
analysis, edge and region segmentation, texture,
knowledge based systems, image understanding.
Prerequisite: CS 455x
Course Website: Ram Nevatia |
| |
CS
576
|
Multimedia Systems Design
This course covers the state-of-the-art technology
for networked multimedia systems. We will study
all the current media (images, video, audio, graphics
etc) related issues, algorithms and requirements
for modern distributed multimedia systems both
in terms of data processing and network communication.
We will also discuss efficient design solutions
and established standards for multimedia.
Recommended Preparation: familiarity with C or
C++.
Course Website:
Parag Havaldar |
| |
CS
577a
|
Software Engineering
Software life cycle processes; planning considerations
for product definition, development, test, implementation,
maintenance. Software requirements elicitation
and architecture synthesis. Team project. Software
development, test, implementation, and maintenance
methods. CASE tools and software environments.
Software product engineering, configuration management,
quality engineering, documentation. Application
via projects.
Prerequisite: graduate standing.
Course Website:
Barry Boehm, A Winsor Brown |
| |
CS
577b
|
Software Engineering II
Software Engineering II focuses on software product
creation, integration, test and maintenance with
an emphasis on quality software production. Much
of the content is organized around the key practices
in the SEI Integrated Capability Maturity Model
(CMMI).
Prerequisite: CS 577a.
|
| |
CS
578
|
Software Architectures
Software architecture has become an area of intense
research in the software engineering community.
A number of architecture modeling notations and
support tools, as well as new architectural styles,
have emerged. The focus of architecture-based
software development is shifted from lines-of-code
to coarser-grained building blocks and their overall
interconnection structure. Explicit focus on architecture
has shown tremendous potential to improve the
current state-of-the-art in software development
and alleviate many of its problems.
Course Website: Nenad Medvidovic
|
| |
CS
580
|
3D Graphics and Rendering
The process of creating images from 3D models.
Includes transformations, shading, lighting, rasterization,
texturing, and other topics.
Course Website: Ulrich Neumann |
| |
CS
581
|
Logic and its Applications
Formal systems, first order logic, truth, completeness,
compactness, Godel incompleteness, recursive functions,
undecidability. Selected applications, e.g., theorem
proving, artificial intelligence, program verification,
databases, computational complexity.
Prerequisite: CS 430 and MATH 470
|
| |
CS
582
|
Geometric Modeling
Mathematical models and computer representations
for three-dimensional solids; underlying topics
from set theory, geometry, and topology. Fundamental
algorithms; applications to CAD/CAM and robotics.
Prerequisite: EE 441 and CS 102 or equivalent
knowledge of linear algebra and data structures.
Course Website: Aristides Requicha
|
| |
CS
583
|
Computational Geometry
Geometric algorithms from graphics, vision, geometric
modeling, and optimization are studied in a unified
way. Topics include proximity, motion planning,
Voronoi diagrams, convex hulls.
Prerequisite: CS 303
Course Website: Shahriar Shamsian |
| |
CS
584
|
Control and Learning in Mobile Robots and Multi-Robot
Systems
Survey of control and learning methods from technical
papers. Control architectures, adaptation, learning,
cooperation, distributed vs. centralized approaches,
cooperative and competitive systems.
Prerequisite: CS 460 or CS 445 or CS 561 or CS547
Course Website: Maja Mataric |
| |
|
CS 585
|
Database Systems
Database system architecture; conceptual database
models; semantic, object-oriented, logic-based,
and relational databases; user and program interfaces;
database system implementation; integrity, security,
concurrency and recovery.
Prerequisite: CS485 or Departmental permission
Course Website: Dennis McLeod
Shahriar Shamsian
Farid Parvini
|
| |
CS
586
|
Database Systems Interoperability
Federated and multi-database systems, database
networking, conceptual and schematic diversity,
information sharing and exchange, knowledge discovery,
performance issues.
Prerequisite: CS 585
Course Website: Dennis Mcleod |
| |
CS
588
|
Specification and Design of User Interface Software
The design and implementation of user interface
software. Study of issues relating to human/ computer
interaction. Visual design and real-time interfaces.
Course Website: Suya You |
| |
CS
589
|
Software Engineering for Embedded System
Software Engineering methods and techniques for
embedded, resource constrained, and mobile environments.Application
to real-time operating systems and wireless networking
systems. Class project.
Prerequisite: CSCI 577a.
|
|
CS 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. Please
contact individual professor to register.
Center for Software Engineering DR Information:
http://sunset.usc.edu/classes/
|
| |
CS
591ab
|
Applied Software Engineering a:
Engineering software systems:negotiating
goals; defining life cycle and process; project
planning;defining requirements, architecture and
design; incorporating COTS; analyzing project
artifacts. b: Engineering
software systems:design, implement, test and maintain
software product; management of quality, configuration
and transition. Open to Software Engineering Certificate
Program students only. (Duplicate credit in CSCI
577ab.)
Recommended preparation: experience in software
development. |
| |
CS
592
|
Emerging Best Practices in Software Engineering
Perspective and experiences with emerging best
practices, including integrated maturity models,
distributed and mobile software, RAD, agile methods,
COTS, assessment and integration, portfolio and
product line management. Open to Software Engineering
Certificate Program students only.
Recommended preparation: CSCI 510. |
| |
CS 593
| Autonomous
Learning and Discovery Agents
Active systems, using their own actions, percepts,
and mental constructions, abstract a model from
an unfamiliar environment in order to accomplish
their missions.
Prerequisite: CS 573 |
| |
|
CS
594ab |
Master's Thesis
Credit on acceptance of thesis. Graded IP/CR/NC
Course Website: Master's Thesis details (PDF) |
| |
CS
595
|
Advanced Compiler Design
Compiler Analysis and Optimization for High-Performance
Architectures
Prerequisite: CS 565 |
| |
CS
596
|
Scientific Computing and Visualization
Particle and continuum simulations are used as
a vehicle to learn basic elements of high performance
scientific computing and visualization. Students
will obtain hands-on experience in: i) Formulating
a mathematical model to describe a physical phenomenon;
ii) discretizing the model, which often consists
of continuous differential or integral equations,
into algebraic forms in order to allow numerical
solutions on computers; iii) designing/analyzing
numerical algorithms to solve algebraic equations
efficiently on parallel computers; iv) translating
the algorithms into a program; v) performing a
computer experiment by executing a program; vi)
visualizing simulation data in an immersive and
interactive virtual environment; and vii) managing/mining
large datasets.
Prerequisite: basic knowledge of programming,
data structures, linear algebra, and differential
equations.
Course Website:Aiichiro Nakano |
| |
CS
597
|
Seminar in Computer Science Research
Introduction of Ph.D. students to a broad range
of computer science research.
Two semesters registration required. Open to Computer
Science doctoral students only.
Course Website: Laurent Itti |
| |
CS
599
| Advanced
Topics
|
| |
CS
653
|
High Performance computing and simulations
Provide students with advanced techniques that
are common to high performance computer simulations
in science and engineering. Both deterministic
and stochastic simulation algorithms for particles
and continuum will be implemented on massively
parallel and distributed Grid computing platforms
and the simulation datasets will be visualized
in immersive and interactive virtual environment.
Prerequisite: CSCI 596 or CSCI 580
Course Website: Aiichiro Nakano |
| |
CS
664
|
Neural Models for Visually Guided Behavior
Review of neural mechanisms of visuo-motor coordination,
and methods for constructing models of these mechanisms.
Topics include locomotion, cognitive maps, looking,
reaching and grasping.
Prerequisite: CS 564 |
| |
CS
674ab
|
Advanced Topics in Computer Vision
Selected topics from current active research areas
including image segmentation, shape analysis and
object recognition, inference of 3-D shape, motion
analysis, knowledge-based system, neural nets.
Prerequisite: CS 574 or CS 569 |
| |
CS
694ab
|
Topics in Computer Networks and Distributed Systems
Current topics in network and distributed systems;
verbal and written presentation skills, effective
critiquing, and evaluation.
Prerequisite: CS 551 or CS 555 or instructor's consent.
Course Website: Leana Golubchik
|
| |
CS 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. |
| |
CS 794abcdz
| Doctoral
Dissertation
Credit on acceptance of dissertation. Graded IP/CR/NC.
|