CSE 100 Fluency in Information Technology (5) QSR Introduces skills, concepts, and capabilities necessary to effectively use information technology. Includes logical reasoning, managing complexity, operation of computers and networks, and contemporary applications such as effective Web searching and database manipulation, ethical aspects, and social impacts of information technology. Not available for credit to students who have completed CSE 142 or ENGR 142. Offered: jointly with INFO 100. CSE 142 Computer Programming I (4) NW, QSR Basic programming-in-the-small abilities and concepts. Highlights include procedural and functional abstraction with simple built-in data type manipulation. Basic abilities of writing, executing, and debugging programs. Offered: AWSpS. Instructor Course Description: Martin Dickey CSE 143 Computer Programming II (5) NW, QSR Continuation of 142. Concepts of modularity and encapsulation, focusing on modules and abstract data types. Covers some basic data structures. Prerequisite: CSE 142. Offered: AWSpS. Instructor Course Description: Martin Dickey Sean D Sandys CSE 303 Concepts and Tools for Software Development (3) Introduction to key concepts and tools in the development of software not introduced in the introductory programming courses. Includes programming with explicit memory management and layout (e.g. C or C++), techniques for group software development, modern design, implementation, and testing patterns and strategies, and societal impact. CSE 321 Discrete Structures (4) Fundamentals of set theory, graph theory, enumeration, and algebraic structures, with applications in computing. Prerequisite: CSE 143; either MATH 126, MATH 129, or MATH 136. CSE 322 Introduction to Formal Models in Computer Science (3) Finite automata and regular expressions; context-free grammars and pushdown automata; nondeterminism; Turing machines and the halting problem. Emphasis on understanding models and their applications and on rigorous use of basic techniques of analysis. Induction proofs, simulation, diagonalization, and reduction arguments. Prerequisite: CSE 321. CSE 326 Data Structures (4) Data types, abstract data types, and data structures. Efficiency of algorithms. Sequential and linked implementation of lists. Binary tree representations and traversals. Searching: dictionaries, priority queues, hashing. Directed graphs, depth-first algorithms. Garbage collection. Dynamic storage allocation. Internal and external sorting. No credit to students who have completed CSE 373, CSE 374, or E E 374. Prerequisite: CSE 321. Instructor Course Description: Ashish Sabharwal CSE 341 Programming Languages (4) Basic concepts of programming languages, including abstraction mechanisms, types, and scoping. Detailed study of several different programming paradigms, such as functional, object-oriented, and logic programming. No credit if CSE 413 has been taken. Prerequisite: CSE 143. CSE 370 Introduction to Digital Design (4) Introductory course in digital logic and its specification and simulation. Boolean algebra, combinational circuits including arithmetic circuits and regular structures, sequential circuits including finite-state-machines, use of programmable logic devices. Simulation and high-level specification techniques are emphasized. CSE 373 Data Structures and Algorithms (3) Fundamental algorithms and data structures for implementation. Techniques for solving problems by programming. Linked lists, stacks, queues, directed graphs. Trees: representations, traversals. Searching (hashing, binary search trees, multiway trees). Garbage collection, memory management. Internal and external sorting. No credit to students who have completed 326, 374, or E E 374. Prerequisite: CSE 143. CSE 378 Machine Organization and Assembly Language (4) Differences and similarities in machine organization; central processors; fundamentals of machine language and addressing; assembly language programming, including macros; operating system interfaces. No credit to students who have completed 410. Prerequisite: CSE 143; CSE 370.. CSE 399 CSE Foreign Study (*) Upper division computer science or computer engineering course, taken through an approved study abroad program, which there are no direct University of Washington equivalents. Credit/no credit only. CSE 401 Introduction to Compiler Construction (3) Fundamentals of compilers and interpreters; symbol tables; lexical analysis, syntax analysis, semantic analysis, code generation, and optimizations for general purpose programming languages. No credit to students who have taken 413. Prerequisite: CSE 322; CSE 326; CSE 341; CSE 378. CSE 403 Software Engineering (4) Fundamentals of software engineering using a group project as the basic vehicle. Topics covered include the software crisis, managing complexity, requirements specification, architectural and detailed design, testing and analysis, software process, and tools and environments. Prerequisite: CSE 326; CSE 341; recommended: project experience in an academic or work setting. CSE 410 Computer Systems (3) Structure and components of hardware and software systems. Machine organization, including central processor and input-output architectures; assembly language programming; operating systems, including process, storage, and file management. No credit to students who have completed 378 or 451. Prerequisite: CSE 373. CSE 413 Programming Languages and Their Implementation (3) Concepts and implementation strategies for ALGOL-class languages, including Pascal, Modula, ALGOL 60, Ada. Compilers for ALGOL-class languages. Languages with late binding times, including LISP, APL, Smalltalk. No credit to students who have completed 341 or 401. Prerequisite: CSE 373. CSE 415 Introduction to Artificial Intelligence (3) NW Principles and programming techniques of artificial intelligence: LISP, symbol manipulation, knowledge representation, logical and probabilistic reasoning, learning, language understanding, vision, expert systems, and social issues. Not open for credit to students who have completed 473. Prerequisite: CSE 373. CSE 417 Algorithms and Computational Complexity (3) Design and analysis of algorithms and data structures. Efficient algorithms for manipulating graphs and strings. Fast Fourier Transform. Models of computation, including Turing machines. Time and space complexity. NP-complete problems and undecidable problems Prerequisite: CSE 373. CSE 421 Introduction to Algorithms (3) Techniques for design of efficient algorithms. Methods for showing lower bounds on computational complexity. Particular algorithms for sorting, searching, set manipulation, arithmetic, graph problems, pattern matching. Prerequisite: CSE 322; CSE 326. CSE 431 Introduction to Theory of Computation (3) Models of computation, computable and noncomputable functions, space and time complexity, tractable and intractable functions. Prerequisite: CSE 322. CSE 444 Introduction to Database Systems (3) Fundamental concepts, system organization, and implementation of database systems. Relational, hierarchical, and network data models; file organizations and data structures; query languages; query optimization; database design; concurrency control; security; issues involving distributed database systems. Prerequisite: CSE 326. CSE 450 Animation Production Seminar (1) Open to all students who have an interest in digital animation. Reviews and analyzes films, animated feature films, and television commercials. Emphasizes the technical and aesthetic basics of animation production in industry studio environments. CSE 451 Introduction to Operating Systems (4) Principles of operating systems. Process management, memory management, auxiliary storage management, resource allocation. No credit to students who have completed 410 or E E 474. Prerequisite: CSE 326; CSE 378. CSE 454 Advanced Internet and Web Services (5) Design of Internet search engines, including spider architecture, inverted indices, frequency rankings, latent semantic indexing, hyperlink analysis, and refinement interfaces. Construction of scalable and secure web services. Datamining Webserver logs to provide personalized and user-targeted services. Large project. Prerequisite: CSE 326. CSE 455 Computer Vision (4)) Introduction to image analysis and interpreting the 3D world from image data. Topics may include feature detection, image segmentation, motion estimation, image mosaics, 3D-shape reconstruction, object recognition, and image retrieval. Prerequisite: CSE 326. CSE 456 Story Design for Computer Animation (4) Animation principles and production for story development and design. Design, development, and production of several storyreels, which are a tool for the pre-production of animated features and shorts. Student use authoring tools to present finished work. CSE 457 Computer Graphics (4) Introduction to computer image synthesis, modeling, and animation. Topics may include visual perception, color theory, displays and framebuffers, image processing, affine and projective transformations, quaternions, hierarchical modeling, hidden surface elimination, shading, ray-tracing, anti-aliasing, texture mapping, curves, surfaces, particle systems, dynamics, realistic character animation, and traditional animation principles. Prerequisite: CSE 326. Instructor Course Description: Brian L. Curless David Henry Salesin CSE 458 Computer Animation (5) Introduction to basic principles of computer generated animation. Focus on the modeling and lighting of animated characters. Students from Art, CSE, and Music team up on projects to be built on commercially-available modeling and lighting packages. Prerequisite: either CSE 457, ART 380, or MUSIC 403. CSE 459 Pre-Production for Collaborative Animation (5) Pre-production of collaboratively designed animated shorts. In-depth analysis of classical and computer generated works. Character design and pre-planning, model sheets, character rigging, storyreel and animatics, character motion, design for multiple characters, and principles of animation as applied to character motion and effects. Prerequisite: CSE 458. CSE 460 Animation Capstone (5) Apply the knowledge gained in previous animation courses to produce a short animated film. Topics include scene planning, digital cinematography, creature and hard surface modeling, animatics and basics of character animation, and rendering techniques. Prerequisite: CSE 458, CSE 459. CSE 461 Introduction to Computer-Communication Networks (4) Computer network architectures, protocol layers, network programming. Transmission media, encoding systems, switching, multiple access arbitration. Network routing, congestion control, flow control. Transport protocols, real-time, multicast, network security. Prerequisite: CSE 143; either MATH 390/STAT 390, STAT 391, IND E 315, or CSE 321. Offered: jointly with E E 461. CSE 464 Advanced Topics in Digital Animation (5) Students design individual animated works for professional quality demo reels. 2- and 3-D animatics, special effects design, advanced character animation techniques, 3-D paint techniques and integration, short design, sequence planning, non-photorealistic rendering options, interactive animation for pre-planning, and advanced production techniques and strategies. Prerequisite: CSE 458. CSE 466 Software for Embedded Systems (4) Software issues in the design of embedded systems. Microcontroller architectures and peripherals, embedded operating systems and device drivers, compilers and debuggers, timer and interrupt systems, interfacing of devices, communications and networking. Emphasis on practical application of development platforms. Prerequisite: CSE 326; CSE 370; CSE 378. Instructor Course Description: Bruce Ray Hemingway CSE 467 Advanced Digital Design (4) Advanced techniques in the design of digital systems. Hardware description languages, combinational and sequential logic synthesis and optimization methods, partitioning, mapping to regular structures. Emphasis on reconfigurable logic as an implementation medium. Memory system design. Digital communication including serial/parallel and synchronous/asynchronous methods. Prerequisite: CSE 326; CSE 370. CSE 468 Very Large Scale Integration (5) Introduction to CMOS technology and circuit design; implementation of combinational and sequential logic; VLSI design methodologies; CAD tools for layout, simulation, and validation. Students design a VLSI chip using modern CAD tools. Prerequisite: CSE 370. CSE 471 Computer Design and Organization (4) CPU instruction addressing models, CPU structure and functions, computer arithmetic and logic unit, register transfer level design, hardware and microprogram control, memory hierarchy design and organization, I/O and system components interconnection. Laboratory project involves design and simulation of an instruction set processor. Prerequisite: CSE 370; CSE 378. CSE 472 Introduction to Computational Linguistics (5) NW/VLPA Hoard Introduction to computer applications of linguistic theory, including syntactic processing, semantic and pragmatic interpretation, and natural language generation. Prerequisite: LING 200; 203; 400; and 461 or CSE 321. Offered: jointly with LING 472. CSE 473 Introduction to Artificial Intelligence (3) Principal ideas and developments in artificial intelligence: theorem proving, problem-solving methods, representation of knowledge, natural language analysis and synthesis, programming languages for artificial intelligence. Not open for credit to students who have completed 415. Prerequisite: CSE 326; recommended: CSE 341. CSE 476 Embedded System Design (5) System building course to provide students with a complete experience in embedded system design. Students will design, simulate, construct, debug, and document a substantial project of their choosing. Lectures will focus on case studies and emerging components and platforms. Prerequisite: CSE 451; CSE 466. CSE 477 Digital System Design (5) Capstone design experience. Prototype a substantial project mixing hardware, software, and communication components. Focuses on use of embedded processors and programmable logic in digital system design, case studies, and emerging components and platforms. Provides a complete experience in embedded system design and management. Prerequisite: CSE 451; CSE 466; CSE 467. CSE 481 Capstone Software Design (5) Students work in teams to design and implement a software project involving multiple areas of the CSE curriculum. Emphasis is placed on the development process itself, rather than on the product. Prerequisite: CSE major; CSE 326; CSE 341; CSE 378 and substantial programming experience, such as in CSE 451 or 457. CSE 490 Special Topics in Computer Science and Engineering (1-5, max. 15) Lectures, discussions, and possibly labs on topics of current interest in computer science and engineering not covered by other CSE undergraduate courses. CSE 497 Undergraduate Research Seminar (1) Students prepare and give a public talk on their faculty-sponsored research projects. CSE 498 Senior Project ([1-9]-, max. 9) A report (and perhaps demonstration) describing a development, survey, or small research project in computer science or an application to another field. Objectives are: (1) integrating material from several courses, (2) introducing the professional literature, (3) gaining experience in writing a technical document, and (4) showing evidence of independent work. Work normally extends over more than one quarter, for a maximum of 6 credits for 498; 9 credits are required for 498H. CSE 499 Reading and Research (1-24, max. 24) Available in special situations for advanced computer science majors to do reading and research in field, subject to approval of undergraduate adviser and CSE faculty member. Free elective, but does not replace core course or computer science elective. Credit/no credit only. CSE 500 Computers and Society (2) Study of impact of computer technology on present and future society, including political, economic, cultural, social, and moral issues. Includes guest lecturers and discussion leaders. Each student is required to complete a term project. Credit/no credit only. Prerequisite: graduate standing in computer science or permission of instructor. CSE 501 Implementation of Programming Languages (3) Design of compilers and run-time systems for traditional and non-traditional programming languages. Intra- and interprocedural analyses and optimization. Compile-time and run-time implementation techniques for LISP-like, functional, and object-oriented languages. Students construct an optimizing compiler. Prerequisite: CSE major and CSE 401 and CSE 505. CSE 503 Software Engineering (3) Specification, implementation, and testing of large, multiperson, software systems. Topics include abstraction, information hiding, software development environments, and formal specifications. Prerequisite: CSE major and CSE 322, CSE 326, and CSE 378 or equivalents. CSE 504 Advanced Topic in Software Engineering (3) Topics vary but may include software design and evolution, formal methods, requirements specifications, software and system safety, reverse engineering, real-time software, metrics and measurement, programming environments, and verification and validation. Prerequisite: CSE major or permission of instructor. CSE 505 Concepts of Programming Languages (3) Data structures, types, control structures. Languages in the ALGOL family; functional, object-oriented, and logic programming languages. Prerequisite: CSE major, CSE 401 and a working knowledge of Pascal and LISP. CSE 506 Advanced Topics in Programming Languages (3) May include functional, object-oriented, parallel, and logic programming languages; semantics for languages of these kinds; type declaration, inference, and checking (including polymorphic types); implementation issues, such as compilation, lazy evaluation, combinators, parallelism, various optimization techniques. Implementation project required. Prerequisite: CSE major, CSE 501 which may be taken concurrently, and CSE 505. CSE 510 Advanced Topics in Human-Computer Interaction (3) Content varies, including interface issues for networks, embedded systems, education applications, safety and critical systems, graphics and virtual reality, databases, and computer-supported cooperative work.. CSE 515 Statistical Methods in Computer Science (3) Introduction to the probabilistic and statistical techniques used in modern computer systems. Probability theory, statistical estimation, graphical models, probabilistic inference, sequential models, decision theory, information theory. Prerequisite: undergraduate probability and statistics course (STAT 341, STAT 391, or equivalent) and graduate standing in computer science, or permission of instructor. Offered: alternate years. CSE 519 Current Research in Computer Science (1, max. 3) Weekly presentations on current research activities by members of the department. Only Computer Science graduate students may register, although others are encouraged to attend. Credit/no credit only. CSE 520 Computer Science Colloquium (1, max. 9) Weekly public presentations on topics of current interest by visiting computer scientists. Credit/no credit only CSE 521 Design and Analysis of Algorithms I (3) Principles of design of efficient algorithms: recursion, divide and conquer, balancing, dynamic programming, greedy method, data structure selection. Correctness and analysis of algorithms. Examples drawn from problems in sorting, searching, set manipulation, pattern-matching, graphs, matrices, polynomials, and integers. Prerequisite: CSE major and CSE 326 or equivalent. CSE 522 Design and Analysis of Algorithms II (3) Analysis of algorithms more sophisticated than those treated in 521. Content varies and may include such topics as algebraic algorithms, combinational algorithms, techniques for proving lower bounds on complexity, and algorithms for special computing devices such as networks or formulas. Prerequisite: CSE major and CSE 521. CSE 523 Computational Geometry (3) Algorithms for discrete computational geometry. Geometric computation, range searching, convex hulls, proximity, Vornoi diagrams, intersection. Application areas include VLSI design and computer graphics. Prerequisite: CSE major and CSE 521; recommended: CSE 457 or equivalent. CSE 524 Parallel Algorithms (3) Design and analysis of parallel algorithms: fundamental parallel algorithms for sorting, arithmetic, matrix and graph problems and additional selected topics. Emphasis on general techniques and approaches used for developing fast and efficient parallel algorithms and on limitations to their efficacy. Prerequisite: CSE major and CSE 521. CSE 527 Computational Biology (3) Introduces computational methods for understanding biological systems at the molecular level. Problem areas such as mapping and sequencing, sequence analysis, structure prediction, phylogenic inference, regulatory analysis. Techniques such as dynamic programming, Markov models, expectation-maximization, local search. Prerequisite: graduate standing in biological, computer, mathematical or statistical science, or permission of instructor. CSE 528 Computational Neuroscience (3) Introduction to computational methods for understanding nervous systems and the principles governing their operation. Topics include representation of information by spiking neurons, information processing in neural circuits, and algorithms for adaptation and learning. Prerequisite: elementary calculus, linear algebra, and statistics, or by permission of instructor. Offered: jointly with NEUBEH 528. CSE 531 Computability and Complexity (3) Computational models including deterministic and nondeterministic Turing machines, and techniques for analyzing them. Fundamentals of computability theory and undecidability. Fundamentals of computational complexity theory and NP-completeness. . Prerequisite: CSE majors only; CSE 322 or equivalent. CSE 532 Complexity Theory (3) Deterministic, nondeterministic, alternating, and probabilistic Turing machines. Time and space complexity, complexity classes, complexity hierarchies, and provably intractable problems. Prerequisite: CSE major and CSE 531. CSE 533 Advanced Topics in Complexity Theory (3) Topics in computational complexity more sophisticated than those treated in 532. Topics are expected to vary from year to year, but might typically focus on such areas as parallel complexity, probabilistic complexity, circuit- or automaton-based complexity, or logic. Prerequisite: CSE major. CSE 536 Theory of Distributed Computing (3) Formal approaches to distributed computing problems. Topics vary, but typically include models of distributed computing, agreement problems, impossibility results, mutual exclusion protocols, concurrent reading while writing protocols, knowledge analysis of protocols, and distributed algorithms. Prerequisite: CSE major. CSE 540 Discrete System Simulation (3) Principles of simulation of discrete, event-oriented systems. Model construction, simulation and validation. Distributed and parallel simulation techniques. Basic statistical analysis of simulation inputs and outputs. Use of C, an object-oriented language, and S, a statistical analysis package. Prior familiarity with the concepts of probability and statistics desirable. Prerequisite: CSE major. CSE 543 Computer System Performance (3) Emphasizes the use of analytic models as tools for evaluating the performance of centralized, distributed, and parallel computer systems. Prerequisite: CSE major and CSE 451. CSE 544 Principles of Database Systems (3) Data models and query languages (SQL, datalog, OQL). Relational databases, enforcement of integrity constraints. Object-oriented databases and object-relational databases. Principles of data storage and indexing. Query-execution methods and query optimization algorithms. Static analysis of queries and rewriting of queries using views. Data integration. Data mining. Principles of transaction processing. Instructor Course Description: Dan Suciu CSE 546 Data Mining (3) Methods for identifying valid, novel, useful, and understandable patterns in data. Induction of predictive models from data: classification, regression, and probability estimation. Discovery of clusters and association rules. CSE 548 Computer Systems Architecture (3) Notations for computer systems. Processor design (single chip, look-ahead, pipelined, data flow). Memory hierarchy organization and management (virtual memory and caches). Microprogramming. I/O processing. Multiprocessors (SIMD and MIMD). Prerequisite: CSE major and CSE 451. CSE 549 High-Performance Computer Architectures (3) Algorithm design, software techniques, computer organizations for high-performance computing systems. Selected topics from: VLSI complexity for parallel algorithms, compiling techniques for parallel and vector machines, large MIMD machines, interconnection networks, reconfigurable systems, memory hierarchies in multiprocessors, algorithmically specialized processors, data flow architectures. Prerequisite: CSE major and CSE 548 or permission of instructor. CSE 551 Operating Systems (3) Operating system design and construction techniques. Concurrent programming, operating system kernels, correctness, deadlock, protection, transaction processing, design methodologies, comparative structure of different kinds of operating systems, and other topics. Prerequisite: CSE major and CSE 451. CSE 552 Distributed and Parallel Systems (3) Principles, techniques, and examples related to the design, implementation, and analysis of distributed and parallel computer systems. Prerequisite: CSE major and CSE 551. CSE 553 Real-Time Systems (3) Design and construction of software for real-time computer systems. Software architectures. Requirements and specification methods. Scheduling algorithms and timing analysis. Real-time operating systems. Real-time programming languages. Selected case studies. Prerequisite: CSE major and CSE 451. CSE 557 Computer Graphics (3) Introduction to image synthesis and computer modeling, emphasizing the underlying theory required for undertaking computer graphics research. Topics include color theory, image processing, affine and projective geometry, hidden-surface determination, photorealistic image synthesis, advanced curve and surface design, dynamics, realistic character animation. Prerequisite: CSE major, solid knowledge of linear algebra. Instructor Course Description: Brian L. Curless David Henry Salesin CSE 558 Special Topics in Computer Graphics (3) Advanced topics in computer graphics not treated in CSE 557. Topics vary from year to year but typically include advanced aspects of image synthesis, animation, and 3D photography. Prerequisite: CSE major and CSE 557 or permission of instructor. Instructor Course Description: Brian L. Curless David Henry Salesin CSE 561 Computer Communication and Networks (3) Fundamentals of data transmission: coding, message formats, and protocols. Organization of computer networks. Examples of network implementations. Prerequisite: CSE or E E major and CSE 451 or equivalent. CSE 563 Fault Tolerant Computing (3) Faults and their manifestation, issues, theory, and techniques of reliable systems design, testing, design for testability, self-checking and fail-safe circuits, coding techniques, system-level fault diagnosis, fault-tolerant communication, reliable software design, and evaluation criteria. Prerequisite: basic knowledge of digital systems design or permission of instructor. Offered: jointly with E E 563. CSE 567 Principles of Digital Systems Design (3) Principles of logic design, combinational and sequential circuits, minimization techniques, structured design methods, CMOS technology, complementary and ratioed gates, delay estimation and performance analysis, arithmetic circuits, memories, clocking methodologies, synthesis and simulation tools, VLSI processor architecture. Prerequisite: CSE major and basic knowledge of logic design. CSE 568 Introduction to VLSI Systems (3) Introduction to CMOS technology and circuit design; combinational logic-design alternatives; register-design and system-clocking methodologies; datapath and subsystem design; VLSI system-design methodologies; CAD tools for synthesis, layout, simulation, and validation; design of a complex VLSI chip. Prerequisite: CSE 567 or permission of instructor. CSE majors only. CSE 571 AI-based Mobile Robotics (3) Overview of mobile robot control and sensing. Behavior-based control, world modeling, localization, navigation, and planning Probabilistic sensor interpretation, Bayers filters, particle filters. Projects: Program real robots to perform navigation tasks. Prerequisite: CSE major and CSE 473, or permission of instructor. CSE 573 Artificial Intelligence I (3) Introduction to computational models of thought and construction of intelligent information systems. Topics include search algorithms, data dependencies and truth-maintenance systems, approaches to knowledge representation, automated deduction, reasoning under uncertainty, and machine learning. Prerequisite: CSE 421 or equivalent; exposure to logic, LISP programming experience, CSE major. CSE 574 Artificial Intelligence II (3) Advanced topics in artificial intelligence. Subjects include planning, natural language understanding, qualitative physics, machine learning, and formal models of time and action. Students are required to do projects. Prerequisite: CSE major and CSE 573. CSE 576 Computer Vision (3) Overview of computer vision, emphasizing the middle ground between image processing and artificial intelligence. Image formation, preattentive image processing, boundary and region representations, and case studies of vision architectures. Prerequisite: CSE 573 or E E 562 or equivalent or permission of instructor. Offered: jointly with E E 576. CSE 577 Special Topics in Computer Vision (3) Topics vary and may include vision for graphics, probabilistic vision and learning, medical imaging, content-based image and video retrieval, robot vision, or 3D object recognition. Prerequisite: CSE/E E 576 or permission of instructor. Offered: jointly with E E 577. CSE 581 Parallel Computation in Image Processing (3) Parallel architectures, algorithms, and languages for image processing. Cellular array, pipelined and pyramid machines, instruction sets, and design issues. Parallel implementations of filtering, edge detection, segmentation, shape, stereo, motion, relaxation algorithms, multiresolution methods, and iconic-to-symbolic transforms. Students write and debug programs for parallel computers. Prerequisite: permission of instructor. CSE 590 Research Seminar (*) Several offerings each quarter, on topics of current interest. Prerequisite: permission of instructor. Instructor Course Description: Henry Kautz CSE 591 Group Projects in Computer Science (1-3, max. 3) Focuses on specialized topics and research activities in computer science. Credit/no credit only. CSE 597 Performance Analysis (4) Broad introduction to computer system performance evaluation techniques and their application. Includes measurement/benchmarking, stochastic and trace driven simulation, stochastic queuing networks, and timed Petri nets. Applications of the techniques are studied using case study papers. CSE majors only. Not open for credit to students who have completed CSE 543. CSE 599 Special Topics in Computer Science (1-3, max. 3) Studies of emerging areas and specialized topics in computer science. CSE 600 Independent Study or Research (*) Credit/no credit only. CSE 700 Master's Thesis (*) Credit/no credit only.. CSE 800 Doctoral Dissertation (*) Credit/no credit only. .