Washington University, St. Louis Engineering
Register for these courses on WebSTAC
Dept # Course Name :  [Course Description On]  Credits
CSE 500 Independent Study 3
CSE 501N Programming Concepts and Practice 3
  This introductory course assumes no prior programming background and is intended for graduate students who desire significant programming and program design experience within a modern programming paradigm. Exploration of the enterprise of software design, creation, maintenance, and reuse. Abstraction as a vehicle for reducing the complexity of problems. Concepts of object-oriented programming. Internet-related programming including threads. Design and implementation of nontrivial algorithms in selected application areas. Prerequisites none. Credit 3 units. No credit toward CSE graduate degree. 
CSE 502N Fundamentals of Computer Science 3
  Formerly CS 514N. This course, intended for graduate students without a computer science background, covers the core components seen in a computer science undergraduate curriculum on which our graduate level courses rely. Topics include fundamental algorithms, data structures, proof techniques, computational models, machine organization, and software design and implementation. Prerequisites: graduate standing; CSE 501N or prior programming experience; some mathematical sophistication highly desirable. No credit towards CSE graduate degree. 
CSE 503N Rapid Prototype Development and Creative Programming 3
  This course introduces aspects of the rapid prototype development and creative thinking. Through this course, students acquire necessary skills to develop modern applications for the new world of Web 2.0 and beyond. The concepts covered include: LAMP (Linux, Apache, MySQL, PHP), AJAX (Asynchronous Javascript and XML), XML-RPC (Remote Procedure Calls), script languages for rapid prototyping (Perl, Python), CMSs (Content Management Systems), current web APIs and the new development tools and libraries. The course is in an interactive studio format, i.e., after a formal presentation of a topic, students develop a related project under the supervision of the instructor. This course cannot be counted towards a graduate degree in computer science or engineering. Prerequisite: CSE 132 or equivalent. 
CSE 504N Object-Oriented Software Development Laboratory 3
  Intensive focus on practical aspects of designing, implementing and debugging object-oriented software. Topics covered include developing, documenting, and testing representative applications using object-oriented and generic frameworks and C++. Design and implementation based on frameworks are central themes to enable the construction of reusable, extensible, efficient, and maintainable software. Prerequisites: CSE 132 and 241. 
CSE 506M Principle and Methods of Micro- and Nanofabrication 3
  An introduction to the fundamentals of micro- and nano-fabrication processes with emphasis on cleanroom practices. The physical principles of optical lithography, electron-beam lithography, alternative nanolithography techniques, and thin film deposition and metrology methods. The physical and chemical processes of wet and dry etching. Cleanroom concepts and safety protocols. Sequential micro-fabrication processes involved in the manufacture of microelectronic and photonic devices. Imaging and characterization of micro- and nano-structures. Examples of practical existing and emerging micro- and nano-devices. Prereqs: Chem 111A or consent from instructor. 
CSE 507A Technology Entrepreneurship 3
  This is a course for students who plan to be, or work with, entrepreneurs. An entrepreneurial mindset is needed to create or grow economically viable enterprises, be they new companies, new groups within companies, or new University laboratories. This course aims to cultivate an entrepreneurial perspective with particular emphasis on information technology (IT) - related activities. The course is jointly offered for business and CSE students, allowing for acculturation between these disciplines. In addition to an introductory treatment of business and technology fundamentals, course topics will include: business ethics, opportunity assessment, team formation, financing, intellectual property, and University technology transfer. The course will feature significant participant and guest instruction from experienced practitioners. Prereqs: None. 3 units. 
CSE 509A Digital Image Processing 3
  Formerly CS 554A. An introduction to the expanding fields of image processing and computer vision. Brief overview of the theoretical foundation of imaging, psychophysical properties of human vision, photometry and colorimetry. Image sampling, registration, quantization, transforms, enhancement, and compression. Segmentation, feature extraction and characterization, morphology. Feature pattern recognition and analysis. This offering of the course will be oriented towards extracting information from images (e.g. remote sensing, computer vision). Numerous images will be available and used for examples and exercises. There will be emphasis on design and analysis of algorithms. Prerequisites: CSE 240 (discrete math), CSE 241 (data structures), ESE 317 (engineering math); or equivalent courses. 
CSE 511A Introduction to Artificial Intelligence 3
  The discipline of artificial intelligence (AI) is concerned with building systems that think and act like humans or rationally on some absolute scale. This course is an introduction to the field, with special emphasis on sound modern methods. The topics include knowledge representation, problem solving via search, game playing, logical and probabilistic reasoning, planning, machine learning (decision trees, neural nets, reinforcement learning, and genetic algorithms) and machine vision. Programming exercises will concretize the key methods. The course targets graduate students and advanced undergraduates. Evaluation is based on written and programming assignments, a midterm exam, and a final exam. Prerequisite: CSE 132, CSE 240, and CSE 241, or permission of the instructor. 
CSE 513T Theory of Artificial Intelligence and Machine Learning 3
  Mathematical foundations for Artificial Intelligence and Machine Learning. An introduction to the PAC-Semantics ("Probably Approximately Correct") as a common semantics for knowledge obtained from learning and declarative sources, and the computational problems underlying the acquisition and processing of such knowledge. We will emphasize the design and analysis of efficient algorithms for these problems, and examine for which representations these problems are known or believed to be tractable. Prerequisites: CSE 240, 241 and mathematical maturity. Any of the following related courses may be helpful, but are not required: CSE 511A, 417A, 517A, 441T/541T.  
CSE 514A Data Mining 3
  Many scientific computing problems are, by nature, statistical. Such problems appear in many domains, such as text analysis, data mining on the web, computational biology and various medical applications. Another source of the statistical nature of such problems is the lack of sufficient information of the problem domains as well as the specific problems at hand. What is available for a typical application is usually a set of data from observation or experiments. The main objective of this course is to gain experience of dealing with statistical data analysis problems by studying various statistical methods that can be used to make sense out of data, by reading and reviewing literature as well as by working on a specific statistical problem in a selected application domain. Prerequisites: CSE 241 and ESE 326 (or Math 320) or their equivalent, or permission of the instructor. 
  This course will cover machine learning from a Bayesian probabilistic perspective. Bayesian probability allows us to model and reason about all types of uncertainty. The result is a powerful, consistent framework for approaching many problems that arise in machine learning, including parameter estimation, model comparison, and decision making. We will begin with a high-level introduction to Bayesian inference, then proceed to cover more-advanced topics. These will include inference techniques (exact, MAP, sampling methods, the Laplace approximation, etc.), Bayesian decision theory, Bayesian model comparison, Bayesian nonparametrics, and Bayesian optimization. Prerequisites: a familiarity with machine learning (511A, 417A/517A), probability e.g., ESE 326, and mathematical maturity. 
CSE 516A Multi-Agent Systems 3
  This course introduces the fundamental techniques and concepts needed to study multi-agent systems, in which multiple autonomous entities with different information sets and goals interact. We will study algorithmic, mathematical, and game-theoretic foundations, and how these foundations can help us understand and design systems ranging from robot teams to online markets to social computing platforms. Topics covered may include game theory, distributed optimization, multi-agent learning and decision-making, preference elicitation and aggregation, mechanism design, and incentives in social computing systems. Prerequisites: CSE 240 and 241 and ESE 326 (or Math 320) or equivalents, or permission of instructor. Some prior exposure to artificial intelligence, machine learning, game theory, and microeconomics may be helpful, but is not required. 
CSE 517A Machine Learning 3
  The field of machine learning is concerned with the question of how to construct computer programs that automatically improve with experience. Recently, many successful machine learning applications have been developed, ranging from data-mining programs that learn to detect fraudulent credit card transactions, to information-filtering systems that learn users' reading preferences, to autonomous vehicles that learn to drive. There have also been important advances in the theory and algorithms that form the foundation of this field. This course will provide a broad introduction to the field of machine learning. Prerequisites: CSE 241 and sufficient mathematical maturity (Matrix Algebra, probability theory / statistics, multivariate calculus). There is no enrollment limit, but the instructor will hold a take-home placement exam (on basic mathematical knowledge) that is due on the first day of class. You can download the exam from http://www.cse.wustl.edu/~kilian/resources/quiz0.pdf Only students who pass the placement exam will be enrolled in the course. Students interested in preparing for the exam are advised to work through the first three weeks of Andrew Ng's online course on machine learning ( https://www.coursera.org/course/ml ).  
CSE 519T Advanced Machine Learning 3
  This course provides a close look at advanced machine learning algorithms -- their theoretical guarantees (computational learning theory) and tricks to make them work in practice. In addition, this course focuses on more specialized learning settings, including unsupervised learning, semi-supervised learning, domain adaptation, multi-task learning, structured prediction, metric learning and learning of data representations. Learning approaches may include graphical models, non-parametric Bayesian statistics, and technical topics such as sampling, approximate inference and non-linear function optimization. Mathematical maturity and general familiarity of machine learning is required. Prerequisites: CSE 517A or 511A or 7100 and approval by instructor  
CSE 520S Real-Time Systems 3
  This course covers software technologies for real-time systems and networking such as distributed multimedia, telecommunication management, automobiles, avionics, and smart manufacturing. Topics include real-time scheduling, distributed embedded middleware, adaptive performance management and real-time wireless sensor networks. Prior knowledge on embedded and real-time systems is not required. Prerequisites: CSE 422S or equivalent. 
CSE 521S Wireless Sensor Networks 3
  Dense collections of smart sensors networked to form self-configuring pervasive computing systems provide a basis for a new computing paradigm that challenges many classical approaches to distributed computing. Naming, wireless networking protocols, data management, and approaches to dependability, real-time, security, and middleware services all fundamentally change when confronted with this new environment. Embedded sensor networks and pervasive computing are among the most exciting research areas with many open research questions. This class will study a large number of research papers that deal with various aspects of wireless sensor networks. Students will perform a project on a real wireless sensor network comprised of tiny devices each consisted of sensors, a radio transceiver, and a microcontroller. Prerequisites: CSE 422S. 
CSE 523S Systems Security 3
  This course examines the intersection between computer design and information security. While performance and efficiency in digital systems have improved markedly in recent decades, computer security has worsened overall in this time frame. To understand why, we will explore the role that design choices play in the security characteristics of modern computer and network systems. Students will use and write software to illustrate mastery of the material. Projects will include identifying security vulnerabilities, exploiting vulnerabilities, and detecting and defending against exploits. Prerequisites: CSE 361S or permission of instructor. 
CSE 530A Database Management Systems 3
  A study of data models and the database management systems that support these data models. The design theory for databases is developed and various tools are utilized to apply the theory. General query languages are studied and techniques for query optimization are investigated. Integrity and security requirements are studied in the context of concurrent operations on a database, where the database may be distributed over one or more locations. The unique requirements for engineering design databases, image databases, and long transaction systems are analyzed. Prerequisite: CSE 241. 
CSE 532S Advanced Multiparadigm Software Development 3
  Intensive focus on advanced design and implementation of distributed object computing (DOC) software. Topics covered include reuse of design patterns and software architectures, and developing representative applications using object-oriented and generic frameworks in C++. Design and implementation based on design patterns and frameworks are central themes to enable the construction of reusable, extensible, efficient, and maintainable DOC software. Prerequisites: CSE 332S or graduate standing and familiarity with C++, and CSE 432S, and CSE 422S or CSE 522S. 
CSE 538S Modeling and Performance Evaluation of Interconnected Computer Systems 3
  The increasing pervasiveness of networks, from chip-level to Internet-scale, means that modern computer systems are designed and built from interconnected components. Understanding the design trade-offs this involves and predicting performance under different operating conditions calls for rapidly and effectively evaluating the performance of multiple design combinations. The course reviews a number of analytical tools of relevance in this context (from queueing theory, to algorithms, to optimization, and possibly game theory if time permits). It explores their use in modeling resources sharing in interconnected systems, and estimating various performance metrics of relevance. Pre-requisite: Basic knowledge of probability theory.  
CSE 539S Concepts in Multicore Computing 3
  Nowadays, the vast majority of computer systems are built using multicore processor chips. This fundamental shift in hardware design impacts all areas of computer science --- one must write parallel programs in order to unlock the computational power provided by modern hardware.The goal of this course is to study concepts in multicore computing. We will examine the implications of the multicore hardware design, discuss challenges in writing high performance software, and study emerging technologies relevant to developing software for multicore systems. Topics include memory hierarchy, cache coherence protocol, memory models, scheduling, high-level parallel language models, concurrent programming (synchronization and concurrent data structures), algorithms for debugging parallel software, and performance analysis. Prerequisites: CSE 241 and either CSE 332S or CSE 361S and being comfortable with writing efficient programs in C/C++.  
CSE 541T Advanced Algorithms 3
  Provides a broad coverage of fundamental algorithm design techniques with the focus on developing efficient algorithms for solving combinatorial and optimization problems. The topics covered include: greedy algorithms, dynamic programming, linear programming, NP-completeness, approximation algorithms, lower bound techniques, and on-line algorithms. Throughout this course there is an emphasis on correctness proofs and the ability to apply the techniques taught to design efficient algorithms for problems from a wide variety of application areas. Prerequisites: CSE 241. 
CSE 542T Advanced Data Structures and Algorithms 3
  This course is concerned with the design and analysis of efficient algorithms, focusing principally on algorithms for combinatorial optimization problems. A key element in the course is the role of data structures in algorithm design and the use of amortized complexity analysis to determine how data structures affect performance. The course is organized around a set of core problems and algorithms, including the classical network optimization algorithms, as well as newer and more efficient algorithms. This core is supplemented by algorithms selected from the recent technical literature. Prerequisite: CSE 241. 
CSE 544T Special Topics in Computer Science Theory 3
  Cake-cutting algorithms consider the division of resources among a set of participants such that the recipients believe they have been treated fairly. In some cases, a given resource can be divided without loss of value, while in other cases, dividing a resource may lessen its value, perhaps significantly. Notions of fairness include proportionality, envy-freeness, and equitability. This course is organized around a rich set of fair-division problems, studying the correctness, complexity, and applicability of algorithms for solving such problems. The problems and algorithms studied span millennia and include recent technical literature.  
CSE 546T Computational Geometry 3
  Computational geometry is the algorithmic study of problems that involve geometric shapes such as points, lines, and polygons. Such problems appear in computer graphics, vision, robotics, animation, visualization, molecular biology, and geographic information systems. This course covers data structures that are unique to geometric computing, such as convex hull, Voronoi diagram, Delaunay triangulation, arrangement, range searching, KD-trees, and segment trees. Also covered are algorithms for polygon triangulation, shortest paths, the post office problem, and the art gallery problem. Prerequisite: CSE 241. 
CSE 547T Introduction to Formal Languages and Automata 3
  An introduction to the mathematical theory of languages and grammars. Topics include deterministic and nondeterministic finite state machines, push-down automata, and Turing machines; regular, context-free and recursive languages; closure properties of languages; the concepts of computability and undecidability. Prerequisite: CSE 240. 
CSE 549T Theory of Parallel Systems 3
  The course will cover parallel programming models, languages and algorithms. We will cover both classic and recent results in parallel computing. The list of topics includes scheduling theory, parallel algorithms (in various models such as PRAM, log P, etc.), cache-coherence protocols and external memory algorithms. The focus will be on design and performance analysis of algorithms. 
CSE 550A Mobile Robotics 3
  An introduction to the design and implementation of intelligent mobile robot systems. This course will cover the fundamental elements of mobile robot systems from a computational standpoint. Issues such as software control architectures, sensor interpretation, map building and navigation will be covered, drawing from current research in the field. Students will also design and build a small mobile robot and program it to perform simple tasks in real-world environments. Prerequisites: CSE 241 and either ESE 326 or Math 320. 
CSE 550S Mobile Robotics 3
  An introduction to the design and implementation of intelligent mobile robot systems. This course will cover the fundamental elements of mobile robot systems from a computational standpoint. Issues such as software control architectures, sensor interpretation, map building and navigation will be covered, drawing from current research in the field. Students will also design and build a small mobile robot and program it to perform simple tasks in real-world environments. Prerequisites: CSE 241 and either ESE 326 or Math 320. 
CSE 554A Geometric Computing for Biomedicine 3
  With the advance of imaging technologies deployed in medicine, engineering and science, there is a rapidly increasing amount of spatial data sets (images, volumes, point clouds, etc.) that need to be processed, visualized, and analyzed. This course will focus on a number of geometry-related computing problems that are essential in the knowledge discovery process in various spatial-data-driven biomedical applications. These problems include visualization, segmentation, mesh construction and processing, shape representation and analysis. The course consists of lectures that cover theories and algorithms, and a series of hands-on programming projects using real-world data collected by various imaging techniques (CT, MRI, electron cryo-microscopy, etc.). Prerequisite: CSE332 or approval by instructor. Suggested: CSE452A  
CSE 555A Computational Photography 3
  Computational Photography describes the convergence of computer graphics, computer vision, and the Internet with photography. Its goal is to overcome the limitations of traditional photography using computational techniques to enhance the way we capture, manipulate, and interact with visual media. In this course we will study many interesting, recent image based algorithms and implement them to the degree that is possible. Topics may include: cameras and image formation, human visual perception, image processing (filtering, pyramids), image blending and compositing, image retargeting, texture synthesis and transfer, image completion / inpainting, super-resolution, deblurring, denoising, image based lighting and rendering, high dynamic range, depth and defocus, flash / no flash photography, coded aperture photography, single / multi view reconstruction, photo quality assessment, non photorealistic rendering, modeling and synthesis using Internet data, and others. Pre-requisites: CSE 452A, CSE 554A, or CSE 559A. Permission of instructor required to enroll.  
CSE 556A Human-Computer Interaction Methods 3
  This course is designed to introduce tools and methods from Human-Computer Interaction that will enable you to create effective user interfaces. We will cover techniques that can be used at different stages in the softwaredevelopment cycle and techniques that can be used both with and without involving users. We will study how to maximize interface usability and efficiency as well as how to design for, and measure, things like fun and persuasiveness. You will gain experience applying HCI techniques through a group design, development, and evaluation project. Prerequisites: CSE 132 and at least one additional systems course. Students who enroll in this course are expected to be comfortable with the process of building user interfaces using Java JFC/Swing. 
CSE 559A Computer Vision 3
  Computer vision is the process of automatically extracting information from images and video. This course covers imaging geometry (camera calibration, stereo, and panoramic image stitching), and algorithms for video surveillance (motion detection and tracking), segmentation and object recognition. Final projects for the course will explore challenges in analysis of real-world data. Students with non-standard backgrounds (such as video art, or the use of imaging in physics and biology) are encouraged to contact the instructor. Projects in the course will utilize the C++ programming language. Prerequisites: CSE 241 and linear algebra. 
CSE 560M Computer Systems Architecture I 3
  An exploration of the central issues in computer architecture: instruction set design, addressing and register set design, control unit design, microprogramming, memory hierarchies (cache and main memories, mass storage, virtual memory), pipelining, bus organization, RISC (Reduced Instruction Set Computers), and CISC (Complex Instruction Set Computers). Architecture modeling and evaluation using VHDL and/or instruction set simulation. Prerequisites: CSE 361S and CSE 260M. 
CSE 561M Computer Systems Architecture II 3
  Advanced techniques in computer system design. Selected topics from: processor design (multithreading, VLIW, data flow, chip-multiprocessors, application specific processors, vector units, large MIMD machines), memory systems (topics in locality, prefetching, reconfigurable and special-purpose memories), system specification and validation, and interconnection networks. Prerequisites: CSE 560M or permission of instructor. 
CSE 562M Analog Integrated Circuits 3
  This course will focus on fundamental and advanced topics in analog and mixed-signal VLSI techniques. The first part of the course will cover graduate level materials in the area of analog circuit synthesis and analysis. The second part of the course will cover applications of the fundamental techniques for designing filters and sigma-delta modulators. Several practical aspects of mixed-signal design, simulation, layout and testing will be covered in this course and will be used for implementing a VLSI prototype. It is expected that the students complete the design and simulation of a prototype by the end of the course. Prerequisite: ESE 232 
CSE 563M Digital Integrated Circuit Design and Architecture 3
  This is a project oriented course on digital VLSI design. The course material will focus on bottom up design of digital integrated circuits, starting from CMOS transistors, CMOS inverters, combinational circuits and sequential logic designs. Important design aspect of digital integrated circuits such as propagation delay, noise margins and power dissipation will be covered in the class, as well as design challenges in submicron technology will be addressed. The students will design combinational and sequential circuits at various levels of abstraction using state-of-the-art CAD environment provided by Cadence Design Systems. The goal of the class is to design a microprocessor in 0.5micron technology that can be fabricated by a semiconductor foundry. Prerequisites: CSE260 and ESE 232 
CSE 565M Acceleration of Algorithms in Reconfigurable Logic 3
  Reconfigurable logic, in the form of Field-Programmable Gate Arrays (FPGAs), enables the deployment of custom hardware for individual applications. To exploit this capability, the application developer is required to specify the design at the register-transfer level. This course explores techniques for designing algorithms that are amenable to hardware acceleration as well as provides experience in actual implementation. Example applications are drawn from a variety of fields, such as networking, computational biology, etc. Prerequisites: Basic digital logic (CSE 260M) and some experience with a hardware description language (e.g., VHDL or Verilog). 
CSE 566S High Performance Computer Systems 3
  Many applications make substantial performance demands upon the computer systems upon which those applications are deployed. In this context, performance is frequently multidimensional, including resource efficiency, power, execution speed (which can be quantified via elapsed run time, data throughput, or latency), etc. Modern computing platforms exploit parallelism and architectural diversity (e.g., co-processors such as graphics engines and/or reconfigurable logic) to achieve the desired performance goals. This course addresses the practical aspects of achieving high performance on modern computing platforms. This includes questions ranging from how the computing platform is designed to how are applications and algorithms expressed to exploit the platform's properties. Particular attention is given to the role of application development tools. Prerequisite: graduate standing or permission of instructor. 
CSE 567M Computer Systems Analysis 3
  Comparing systems using measurement, simulation, and queueing models. Common mistakes and how to avoid them, selection of techniques and metrics, art of data presentation, summarizing measured data, comparing systems using sample data, introduction to experimental design, fractional factorial designs, introduction to simulation, common mistakes in simulations, analysis of simulation results, random number generation, random variate generation, commonly used distributions, introduction to queueing theory, single queues, and queueing networks. The techniques of the course can be used to analyze and compare any type of systems including algorithms, protocols, network, or database systems. Students do a project involving application of these techniques to a problem of their interest. Prerequisites: CSE 131 and CSE 260M. 
CSE 568M Imaging Sensors 3
  This course will cover topics on digital imaging sensors including basic operations of silicon photodetectors; CCD and CMOS passive and active sensor operation; temporal and spatial noise in CMOS sensors; spatial resolution and MTF; SNR and dynamic range; high dynamic range architectures and application specific imaging sensors such as polarization imaging and fluorescent imaging sensors. 
CSE 569M Parallel Architectures and Algorithms 3
  A number of contemporary parallel computer architectures are reviewed and compared. The problems of process synchronization and load balancing in parallel systems are studied. Several selected applications problems are investigated and parallel algorithms for their solution are considered. Selected parallel algorithms will be implemented in both a shared memory and distributed memory parallel programming environment. Prerequisites: graduate standing and knowledge of the C programming language. 
CSE 570S Recent Advances in Networking 3
  This course will cover the latest advances in networking. The topics include Data center networking, 40GB and 100GB Ethernet, Sustainability and energy issues in networking, Energy efficient Ethernet, Network virtualization, Networking for Cloud Computing, Networking for Big Data. Recent advances in wireless and mobile networking including white spaces, 4G and 5G will also be covered. Pre-requisite: CSE 473 or equivalent. 
CSE 571S Network Security 3
  A comprehensive treatment of network security. Topics include virus, root kits, malware, TCP/IP security attacks, operating systems security, secret key cryptography, modes of operation, hashes and message digests, public key algorithms, authentication systems, Kerberos, Public Key Infrastructures (PKI), IPsec, Internet Key Exchange (IKE), Secure Socket Layer (SSL), Transport Layer Security (TLS), e-mail security, virtual private networks, authentication, authorization, accounting (AAA), WiFi security, Domain Name System security (DNSSEC), intrusion detection systems. Prerequisite: CSE 473S. 
CSE 573S Protocols for Computer Networks 3
  An introduction to the design, performance analysis, and implementation of existing and emerging computer network protocols. Protocols include multiple access protocols (e.g., CSMA/CD, token ring), internetworking with the Internet Protocol (IP), transport protocols (e.g., UDP, TCP), high-speed bulk transfer protocols, and routing protocols (e.g., BGP, OSPF). General topics include error control, flow control, packet switching, mechanisms for reliable, ordered and bounded-time packet delivery, host-network interfacing and protocol implementation models. Substantial programming exercises supplement lecture topics. Prerequisite: CSE 473S or permission of the instructor. 
CSE 574S Wireless and Mobile Networking 3
  First course in wireless networking providing a comprehensive treatment of wireless data and telecommunication networks. Topics include Wireless Networking Trends, Key Wireless Physical Layer Concepts, Wireless Local Area Networks, Wireless Personal Area Networks, WiMAX (Physical layer, Media access control, Mobility and Networking), IEEE 802.22 Wireless Regional Area Networks, IEEE 802.21 Media Independent Handover, Wireless Cellular Networks: 1G and 2G, 2.5G, 3G, and 4G, Mobile IPv4, Mobile IPv6, TCP over Wireless Networks, Ad Hoc Networks - Issues and Routing, Wireless Sensor Networks, Wireless Mesh and Multi-Hop Relay Networks, Radio Frequency Identification (RFID). Prerequisites: CSE 473S or permission of the instructor. 
CSE 581T Approximation Algorithms 3
  Numerous optimization problems are intractable to solve optimally. The intractability of a problem could come from the problem's computational complexity, for instance the problem is NP-Hard, or other computational barriers. To cope with the inability to find an optimal algorithm, one may desire an algorithm that is guaranteed to return a solution that is comparable to the optimum. Such an algorithm is known as an approximation algorithm. Approximation algorithms are a robust way to cope with intractability and they are widely used in practice or are used to guide the development of practical heuristics. The area of approximation algorithms has developed a vast theory, revealing the underlying structure of problems as well as their different levels of difficulty. The majority of this course will focus on fundamental results and widely applicable algorithmic and analysis techniques for approximation algorithms.Prerequisite: CSE241  
CSE 582T Complexity Theory 3
  An introduction to the quantitative theory of computation with limited resources. The course examines the relative power of limited amounts of basic computational resources, such as time, memory, circuit size, and random bits, as well as parallel, nondeterministic, alternating, and interactive machine models. Models that capture special kinds of computational problems, such as counting problems or approximate solutions, will also be introduced and related to the standard models. This examination will emphasize surprising relationships between seemingly disparate resources and kinds of computational problems. The course will also discuss some meta-theory, illuminating the weaknesses of standard mathematical techniques of the field against its notorious open conjectures. Prerequisites: CSE 241 and mathematical maturity.  
CSE 584A Algorithms for Biosequence Comparison 3
  This course surveys fundamental algorithms for comparing and organizing biological sequences. Emphasis is placed on techniques that are useful for implementing biosequence databases and comparing long sequences, such as entire genomes. Many of these techiques are also of interest for more general string processing and for building and mining of textual databases. Algorithms will be presented rigorously, including proofs of correctness and running time where feasible. Topics include classical string matching, suffix trees, exclusion methods, multiple alignments and an the design of BLAST and related biosequence comparison tools. Students will complete written assignments and will implement advanced comparison algorithms to address problems in bioinformatics. This course does not require a biology background. Prerequisites: CSE 241, graduate standing, or permission of instructor. 
CSE 587A Algorithms for Computational Biology 3
  This course focuses on mathematical and algorithmic issues in systems biology and biological sequence analysis. The essential mathematics is introduced first. Systems biology topics include synthetic biology, dynamical systems modeling, mapping and modeling gene regulatory networks, constraint based approaches to predictive modeling of metabolic networks, and the integration of regulatory and metabolic models. Sequence analysis topics include, Hidden Markov Models, parameter inference, sequence alignment, and modeling transcription factor binding sites. This course will include a combination of paper and pencil homework assignments and programming labs. Prereqs: An introductory course in computer programming or equivalent experience and at least two semesters of calculus. 
CSE 591 Introduction to Graduate Study in CSE 3
  Introduces students to the different areas of research conducted in the department. Provides an introduction to research skills, including literature review, problem formulation, presentation, and research ethics. Lecture and discussion are supplemented by exercises in the different research areas and in critical reading, idea generation, and proposal writing. Prerequisites: standing as a doctoral student in CSE, or permission of the instructor.  
CSE 598 Masters Project 6
  Students electing the project option for their master's degree perform their project work under this course. Prerequisite: permission of adviser. 
CSE 599 Masters Research 6
  Prerequisite: permission of adviser. 
CSE 699 Doctoral Research 9
CSE 7100 Research Seminar on Machine Learning 1
  This seminar will focus on recent advances in the field of machine learning. Students will read, present, discuss, and implement recent work from the research literature. Emphasis will be placed on parallel ML algorithms, time series data, multi-task and transfer learning and others. Prereqs: CSE 517A or permission of instructor. 
CSE 7200 Research Seminar on Robotics and Human-Computer Interaction 1
  Research seminars examine publications, techniques, approaches, and strategies within an area of computer science and engineering. Seminars are highly participational: students are expected to take turns presenting material, to prepare for seminar by reading any required material, and to contribute to the group's discussions. The actual topics covered in a seminar will vary by semester and instructor. Interested students are encouraged to obtain a syllabus from the instructor's web page or by contacting the instructor. 
CSE 7300 Research Seminar on Software Systems 1
  Research seminars examine publications, techniques, approaches, and strategies within an area of computer science and engineering. Seminars are highly participational: students are expected to take turns presenting material, to prepare for seminar by reading any required material, and to contribute to the group's discussions. The actual topics covered in a seminar will vary by semester and instructor. Interested students are encouraged to obtain a syllabus from the instructor's web page or by contacting the instructor. Section 01 focuses on the area of wireless sensor networks and systems. Section 02 focuses on the area of real-time systems. 
CSE 7500 Research Seminar on Graphics and Vision 1
  Research seminars examine publications, techniques, approaches, and strategies within an area of computer science and engineering. Seminars are highly participational: students are expected to take turns presenting material, to prepare for seminar by reading any required material, and to contribute to the group's discussions. The actual topics covered in a seminar will vary by semester and instructor. Interested students are encouraged to obtain a syllabus from the instructor's web page or by contacting the instructor. Section 01 will focus on Graphics. Section 02 will focus on Vision. 
CSE 7600 Research Seminar on Computer Engineering 1
  This seminar explores contemporary topics in computer engineering. Each week, the seminar will focus on a selected topic or reading from the research literature; student-led presentations will summarize important contributions and guide the discussion. Particular emphasis will be placed on future research directions and opportunities. Section 01 will focus on computer systems architecture; section 02 will focus on polarization imaging. 
CSE 7700 Research Seminar on Networking and Communications 1
  Research seminars examine publications, techniques, approaches, and strategies within an area of computer science and engineering. Seminars are highly participational: students are expected to take turns presenting material, to prepare for seminar by reading any required material, and to contribute to the group's discussions. The actual topics covered in a seminar will vary by semester and instructor. Interested students are encouraged to obtain a syllabus from the instructor's web page or by contacting the instructor. 
CSE 7800 Research Seminar on Computational Systems Biology 1
  Research seminars examine publications, techniques, approaches, and strategies within an area of computer science and engineering. Seminars are highly participational: students are expected to take turns presenting material, to prepare for seminar by reading any required material, and to contribute to the group's discussions. The actual topics covered in a seminar will vary by semester and instructor. Interested students are encouraged to obtain a syllabus from the instructor's web page or by contacting the instructor. 
CSE 7800 Research Seminar in Computational and Systems Biology 1
  This seminar focuses on papers from the recent literature in computational biology, bioinformatics, and systems biology. Students read, present, and discuss recent works of interest in areas such as comparative genomics, proteomics, gene regulation, motif finding, and network reconstruction and modeling. Paper selection emphasizes new computational approaches and analysis of results from high-throughput experimental technologies.  
CSE 7900 Research Seminar on Parallel Computing 1
  This seminar will focus on classic and recent papers on parallel computing. Students will read, present, and discuss papers on parallel models, algorithms, and architectures from top conferences and journals. Focus will be placed on fundamental advances and theoretical models and algorithms, rather than on implementation papers. No prerequisites. Our first meeting is on Tuesday, September 6, 2011 from 11:00AM to 12:00PM. In that meeting, we will decide the time for subsequent meetings, based on the participant's schedule. If you would like to participate and can not make it on Tuesday from 11:00am-12:00pm, please let Dr.Agrawal know. 
CSE 883 Masters Continuing Student Status 0
CSE 884 Doctoral Continuing Student Status 0
CSE 885 Masters Nonresident 0
CSE 886 Doctoral Nonresident 0

Washington University in St. Louis School of Engineering & Applied Science, Department of Computer Science & Engineering

Bryan Hall, CB 1045, 1 Brookings Drive, Saint Louis, MO, USA 63130
Phone: (314) 935-6160, Fax: (314) 935-7302

Reduce Font SizeEnlarge Font SizePrint Page