Winter 2004
CS 2x9 Course Descriptions

COM SCI 219 CMP SYST MDLNG ANLY
LEC 1 LU, S.
ID Number Type Sec Days Start Stop Bldg Rm
587114200 LEC 1 MW 2:00P 3:50P BOELTER 5272
Description: TBA
Grade Basis: TBA
 
COM SCI 239 CMPTR PROG LANG&SYS
LEC 1 KRIEGER, M.M.
ID Number Type Sec Days Start Stop Bldg Rm
587232201 LEC 1 W 4:00P 5:50P BOELTER 3400
Description: Business and Entrepreneurship
Issues of launching, working in and growing a technology startup.  Insights on topics such as product selection and positioning; business models; funding strategies; personnel selection; immigration issues; competition, marketing, holding customers; adapting to today's business arena; management/operations/financial controls; equity compensation; positioning for growth, valuation, and exit; intellectual property, contracts and related legal matters are highlighted.  Not all topics covered in one quarter so students are encouraged to enroll in multiple quarters. Guest speakers include entrepreneurs and other experienced professionals.
Grade Basis:  Report or project in lieu of final exam.
Credit: 2 units (more by permission in special cases)
 
LEC 2 REIHER, P.L.
ID Number Type Sec Days Start Stop Bldg Rm
587232202 LEC 2 MW 8:00A 9:50A BOELTER 5280
Description: Computer Security
This course will provide an introduction to topics in the area of computer security, particularly as applied to securing operating systems and networks. The course will cover basic security concepts, access control and security policies, operating system security, basics of cryptography, cryptographic protocols, authentication mechanisms, malicious code, and securing networks against a variety of attacks. The class will also present some recent research in related security areas. Students taking this course are expected to be familiar with the fundamentals of operating systems and computer networks.
Grade Basis:
- Midterm Exam
- Final Exam
- Group Project
 
LEC 3 GUY, R.G.
ID Number Type Sec Days Start Stop Bldg Rm
587232203 LEC 3 TR 2:00P 3:50P BOELTER 5514
Description: Distributed Operating Systems
This course is a broad look at software issues of distributed systems, with a focus on OS aspects, including: processes, naming, synchronization, consistency/replication, fault tolerance, security, distributed file systems.  It relies heavily on Tanenbaum's "Distributed Systems Principles and Paradigms" textbook.
Grade Basis:
Independent, small-team project
Take-home final exam
Prerequisites:
- CS 111 (Operating Systems) and CS 118 (Computer Networking) or equivalents
- CS 239 (Advanced Operating Systems) would be helpful, but not required
 
LEC 4 PALSBERG, J.
ID Number Type Sec Days Start Stop Bldg Rm
587232204 LEC 4 MW 2:00P 3:50P MS 6201
Description: Programming Languages
Interpreters, operational semantics, type systems, type soundness, decision procedures for subtyping, type inference, principal types, typed assembly languages, continuation-passing-style transformation, closure conversion, flow analysis, method inlining.
Grade Basis:
Exams:
- One midterm, one final.
Homework (Implement):
- Interpreter for a subset of Java called MiniJava
- Decision procedure for a flexible subtype ordering on Java interfaces
- Translation of MiniJava to continuation passing style, that is, a form where all method calls are in tail position
- Type inference algorithm for a subset of Scheme
- Flow-directed inlining algorithm for MiniJava
Prerequisites:
- CS 132 (Compilers) or equivalent (informal prerequisite)
 
LEC 5 SARRAFZADEH, M.
ID Number Type Sec Days Start Stop Bldg Rm
587232205 LEC 5 TR 2:00P 3:50P ROLFE 2134
Description: Computational Geometry
The goal of the course is teach the fundamental paradigms for designing efficient algorithms dealing with collections of geometric objects (such as points, lines, line segments, planes, etc.). The course topics include the following: Convex hulls, Proximity problems and Voronoi diagrams, Geometric searching and planar point location, Planar decompositions and triangulations, Intersection and arrangement problems, Visibility and envelope problems, and Randomization in geometric algorithms.  Various applications of these techniques in engineering and science will be discussed.
Grade Basis:
- Midterm (50%)
- Final Project (50%)
Prerequisites:
- CS 180 (Intro to Algorithms) or equivalent
 
LEC 6 MELKANOFF, M.
ID Number Type Sec Days Start Stop Bldg Rm
587232206 LEC 6 TR 4:00P 5:50P MS 5138
Description:  Human and Computer Languages
The current trend toward human communication wherein the participants are further and further separated in time and space from each other represents a major change in human interactions, a revolution whose consequences may be far more dramatic than we can even suspect. The purpose of this course is to examine in some depth various aspects of human languages in order to gain a deeper understanding of the ways by which human beings communicate and interact, thereby preparing us to deal more effectively with the brave new world to which we are being hurled by the computer and the web.

The material covered by this course will include the following topics:
• the primary functions of human language including communication and social bonding;
• the acquisition of language;
• the evolutionary road to language;
• spoken versus written languages;
• semiotics, the theory of signs;
• formal models of language (from classical logic to the new grammars);
• animal languages (natural and artificial);
• the relationship between human and computer languages.
Grade Basis:
 - 50% Term Project (with in-class presentation)
 - 50% Final Exam (typical questions will be distributed)
Prerequisites: Consent of Instructor. Students from all disciplines are welcome.
 
LEC 7 MAJUMDAR, R.
ID Number Type Sec Days Start Stop Bldg Rm
587232207 LEC 7 MW 12:00P 1:50P MS 5225
Description: Computer-Aided Verification
The course introduces the theory and practice of formal methods for the design and analysis of concurrent and embedded systems. The emphasis is on the underlying logical and automata-theoretic concepts, the algorithmic solutions, and heuristics to cope with the high computational complexity. Topics include
     • Models and semantics of reactive systems: states vs. events, nondeterminism vs. concurrency, synchrony vs. asynchrony, safety vs. liveness, open systems.
     • Verification algorithms: temporal logic model checking, theory of omega automata, realizability and control, minimization.
     • Verification techniques: symbolic model checking, on-the-fly model checking, state space reduction methods, compositional and hierarchical reasoning, abstract interpretation, counterexample-guided refinement.
For more information, visit the course webpage.
Grade Basis:
Grades will be awarded on the basis of a few homework assignments and a project paper. Instead of a final exam, there will be presentations of the project papers.
Prerequisites:
The course requires basic knowledge of algorithms, data structures, automata theory, computational complexity, and propositional logic.
- CS 180 (Intro to Algorithms) or equivalent
- CS 181 (Formal Languages and Automata) or equivalent
 
COM SCI 259 Advanced Topics in Microprocessor Design
LEC 1 REINMAN, G.D.
ID Number Type Sec Days Start Stop Bldg Rm
587357200 LEC 1 MW 2:00P 3:50P BUNCHE 3211
Description: Study of current research in general purpose microarchitecture. The processor pipeline will be explored in detail, with attention to performance, complexity, cycle time, power, and area. Recent real world architectures will be used for illustration, along with on-going research efforts in topics that will include branch prediction, load speculation, simultaneous multithreading, cache design/prefetching, register file design, and various techniques to combat processor scaling trends.
Grade Basis:
- Weekly written assignments on research papers in microprocessor architecture.
- Lab assignments using both a functional simulator and a cycle accurate microprocessor simulator.
- One oral presentation on a recent real world processor design.
- A written proposal for a group research project that can optionally be continued in CS259: Microprocessor Simulation (Offered in the Spring).
Prerequisites:
- CS 251A ("very informal but recommended" pre-requisite)
 
COM SCI 269 ARTIFICL INTELLIGNC
SEM 1 SOATTO, S.
ID Number Type Sec Days Start Stop Bldg Rm
587410200 SEM 1 TR 2:00P 3:50P BOELTER 5420
Description: This seminar course will cover the state of the art in visual recognition.
The prototype problem will consist in detecting and recognizing objects, or classes of objects, in images. This is a fundamental and yet open problem, for which there exists no accepted solution. We will review current literature and discuss ideas and directions. This is a discussion-based course, so students are expected to actively contribute to the discussion.  This is an evolving course, so it can be repeated for credit.  For more information, view the course syllabus (may need to be updated).
Grade Basis: Grading is based on participation in the discussion, and in presenting a subset of the literature. Reading material will be assigned and distributed on the first day of class (organizational meeting).
 
SEM 2 FALOUTSOS, P.
ID Number Type Sec Days Start Stop Bldg Rm
587410210 SEM 2 MW 4:00P 5:50P MS 5225
Description:  The purpose of this course is to cover a variety of state of the art techniques in computer animation.  The course will focus on physics-based animation techniques for character animation and it will include the following topics: kinematic animation, procedural animation, physics-based simulation, behavioral animation, deformable models, virtual agents, believable agents, particle system techniques, natural phenomena, fluid simulation and texture synthesis.
Grade Basis:  Participants will be required to present 4-5 papers during the course and complete a project. Paper presentation will count for 30%, project proposal 10% and the project itself 60%.
 
COM SCI 282A CRYPTOGRAPHY
LEC 1 OSTROVSKY, R.
ID Number Type Sec Days Start Stop Bldg Rm
587497200 LEC 1 MW 4:00P 5:50P MS 5138
Description: For details, visit the following link: http://www.cs.ucla.edu/~rafail/TEACHING/282A.html
 
COM SCI 289RA RANDOMIZD ALGORITHM
LEC 1 KOUTSOUPIAS, E.
ID Number Type Sec Days Start Stop Bldg Rm
587562200 LEC 1 TR 2:00P 3:50P KINSEY 184
Description: How to use, design, and analyze randomized algorithms.
Grade Basis: Homework, exam(s)