#nAlgorithms
#dAdvanced data structures graph algorithms arithmetic algorithms geometric algorithms string problems parallel algorithms NP-completeness
#iViswanathan M
#t2008,spring
#nFormal Software Development Methods
#dMathematical models languages and methods for software specification development and verification
#iParthasarathy M 
#t2008,spring
#nTopics in Algorithms
#dTheoretical analysis of various algorithms: sorting searching selection polynomial evaluation matrix multiplication and multiplication of real numbers
#iChekuri C
#t2008,spring
#nTopics in Automated Deduction
#dAdvanced topics in computer-aided methods for formal deduction selected from areas of current research such as: resolution theorem proving strategies special relations equational reasoning unification theory rewrite systems mathematical induction program derivation hybrid inference systems and programming with logic
#iGunter E
#t2008,spring
#nComputational Complexity
#dTuring machines,determinism and non-determinism,time and space hierarchy theorems,speed-up and tape compression,Blum axioms,structure of complexity classes NP P NL L and PSPACE,complete problems,randomness and complexity classes RP RL and BPP,alternation polynomial-time hierarchy,circuit complexity parallel complexity NC and RNC,relativized computational complexity,time-space trade-offs
#iPrabhakaran M
#t2008,spring
#nEmbedded Systems
#dA survey of sampled data systems and embedded architecture,key concepts in common embedded system applications,signal processing and control,embedded microprocessor and device interface,time-critical I/O handling,data communications,real-time operating systems and techniques for the development and analysis of embedded real-time software,hands-on laboratory projects
#iCaccamo M
#t2008,spring
#nComputer System Organization
#dComputer system analysis and design. Organizational dependence on computations to be performed. Speed and cost of parts and overall machines. Instruction set design. Pipeline and vector machines. Memory hierarchy design
#iKloder S,Adve S
#t2008,spring
#nIntro to VLSI System Design
#dComplementary Metal-Oxide Semiconductor (CMOS) technology and theory,CMOS circuit and logic design,layout rules and techniques,circuit characterization and performance estimation,CMOS subsystem design,Very-Large-Scale Integrated (VLSI) systems design methods,VLSI Computer Aided Design (CAD) tools,laboratory experience in custom VLSI chip design on workstations using concepts of cell hierarchy,final project involving specification design and evaluation of a VLSI chip or VLSI CAD program,and written report and oral presentation on the final project
#iWong M
#t2008,spring
#nLogic Design
#dDesign of combinational networks hazards finite state machines design of sequential networks in fundamental mode and pulse mode state reduction state assignment and races and fault detection and testing
#iVasudevan S
#t2008,spring
#nParallel Computer Architecture
#dTheoretical aspects of parallel and pipeline computation,time and processor bounds on classes of computations,data alignment network speed and cost bounds,conflict-free access memories,overall computer system ideas
#iTorrellas J
#t2008,spring
#nFault-Tolerant Dig Syst Design
#dAdvanced concepts in hardware and software fault tolerance,topics addressed include fault models coding in computer systems module and system level fault detection mechanism reconfiguration techniques in multiprocessor systems and VLSI processor arrays and software fault tolerance techniques such as recovery blocks N-version programming checkpointing and recovery,survey of practical fault-tolerant systems
#iIyer R
#t2008,spring
#nArtificial Intelligence
#dMajor topics in and directions of research in artificial intelligence: AI languages (LISP and PROLOG) basic problem solving techniques knowledge representation and computer inference machine learning natural language understanding computer vision robotics and societal impacts
#iAmir E 
#t2008,spring
#nComputer Vision
#dExamines information processing approaches to computer vision algorithms and architectures for artificial intelligence and robotics systems capable of vision: inference of three-dimensional properties of a scene from its images such as distance orientation motion size and shape acquisition and representation of spatial information for navigation and manipulation in robotics
#iForsyth D 
#t2008,spring
#nMachine Learning in NLP
#dIntroduction to the central learning frameworks and techniques that have emerged in the field of natural language processing and found applications in several areas in text and speech processing: from information retrieval and extraction through speech recognition to syntax semantics and language understanding related tasks. Presents the theoretical paradigms -- learning theoretic probabilistic and information theoretic -- and the relations among them as well as the main algorithmic techniques developed within these and in key natural language applications
#iRoth D 
#t2008,spring
#nModels of Cognitive Processes
#dFormal models and concepts in vision and language,detailed analysis of computer vision language and learning problems,relevant psychological results and linguistic systems,survey of the state-of-the-art in artificial intelligence
#iDejong G
#t2008,spring
#nText Information Systems
#dIntroduction to the theory design and implementation of text-based information systems. Text analysis retrieval models (e.g. Boolean vector space probabilistic) text categorization text filtering clustering retrieval system design and implementation and applications to web information management
#iZhai C
#t2008,spring
#nDatabase Systems
#dExamines the logical organization of databases: the entity-relationship model,the hierarchical network and relational data models and their languages. Functional dependencies and normal forms. Design implementation and optimization of query languages,security and integrity,concurrency control and distributed database systems
#iWinslett M,Termehchy A,Kim J 
#t2008,spring
#nComputer-Assisted Instruction
#dComputer-assisted instruction (CAI) and its relation to classroom teaching,the teacher's role in development management and criticism of CAI lessons,treatment of topics including instructional capabilities of CAI systems instructional programming and the design of CAI lessons
#iTettegah S 
#t2008,spring
#nInteractive Computer Graphics
#dIntroduction to basic mathematical tools and computational techniques for modeling rendering and animating 3-D scenes
#iYu Y,Feng W
#t2008,spring
#nProduction Computer Graphics
#dAdvanced methods for representing displaying and rendering two- three- and four-dimensional scenes. General algebraic curves and surfaces splines Gaussian and bump-function representation fractals particle systems constructive solid geometry methods lighting models radiosity advanced ray-tracing methods surface texturing animation techniques data visualization methods
#iHart J
#t2008,spring
#nHuman-Computer Interaction
#dIn-depth coverage of advanced topics in human-computer interaction (HCI). Topics include applied models of human performance and attention design tools for creative design tasks interruptions and peripheral displays gestures and bimanual input and usability evaluation techniques. Students complete a research-oriented semester project of their choosing
#iBailey B 
#t2008,spring
#nParallel Programming: Sci and Engrg
#dIntroduction to fundamental issues in design and development of parallel programs for various types of parallel computers. Various programming models according to both machine type and application area. Cost models debugging and performance evaluation of parallel programs with actual application examples
#iKale L
#t2008,spring
#nProgramming Languages and Compilers
#dIntroduction to the structure of programming languages and their implementation. Basic language design principles,abstract data types,functional languages,type systems,object-oriented languages. Basics of lexing parsing syntax-directed translation semantic analysis and code generation
#iKamin S 
#t2008,spring
#nSoftware Engineering II
#dContinuation of CS 427. Software development management and maintenance. Topics include project and configuration management collaborative development models software quality assurance interoperability domain engineering and software reuse and software re-engineering
#iJohnson R 
#t2008,spring
#nSoftware Engineering II ACP
#dContinuation of CS 427
#iJohnson R 
#t2008,spring
#nFormal Software Development Methods
#dMathematical models languages and methods for software specification development and verification
#iParthasarathy M 
#t2008,spring
#nProgramming Language Semantics
#dThe theory of programming languages including functional programming meta-circular interpreters typed untyped and polymorphic lambda-calculi and denotational semantics
#iRosu G
#t2008,spring
#nConcurrent Programming Languages
#dIntroduction to the theory of concurrency and concurrent programming languages. Formal models of concurrent computation such as process algebras nets and actors,high level concurrent programming languages and their operational semantics,methods for reasoning about correctness and complexity of concurrent programs
#iAgha G 
#t2008,spring
#nAdvanced Compiler Construction
#dIncremental and interactive compiling error correction code optimization models of code generators
#iAdve V
#t2008,spring
#nMultimedia Systems
#dOrganization and structure of modern multimedia systems,audio and video encoding,quality of service concepts,scheduling algorithms for multimedia within OS and networks multimedia protocols over high-speed networks,synchronization schemes user-interface design,multimedia teleservices
#iNahrstedt K
#t2008,spring
#nOperating Systems Design
#dOrganization and structure of modern operating systems and concurrent programming concepts. Deadlock virtual memory processor scheduling and disk systems. Performance security and protection
#iCampbell R 
#t2008,spring
#nReal-Time Systems
#dExamples of real-time computing systems,real-time scheduling and resource management algorithms,analytical and efficient validation methods. Examples of real-time operating systems,temporal consistency of real-time data,formal methods for specification of and reasoning about timing constraints
#iSha L
#t2008,spring
#nDistributed Systems
#dProtocols specification techniques global states and their determination reliable broadcast transactions and commitment security and real-time systems
#iHu Y
#t2008,spring
#nWireless Network
#dOverview of wireless network architectures including cellular networks local area networks multi-hop wireless networks such as ad hoc networks mesh networks and sensor networks,capacity of wireless networks,medium access control routing protocols and transport protocols for wireless networks,mechanisms to improve performance and security in wireless networks,energy-efficient protocols for sensor networks
#iVaidya N
#t2008,spring
#nComputer Security I
#dFundamental principles of computer and communications security and information assurance: ethics privacy notions of threat vulnerabilities and risk in systems information warfare malicious software data secrecy and integrity issues network security trusted computing mandatory and discretionary access controls certification and accreditation of systems against security standards. Security mechanisms: authentication auditing intrusion detection access control cryptography security protocols key distribution
#iNicol D,Borisov N
#t2008,spring
#nAdvanced Operating Systems
#dAdvanced concepts in operating system design and coverage of recent research directions. Resource management for parallel and distributed systems. Interaction between operating system design and computer architectures. Process management virtual memory interprocess communication context switching parallel and distributed file system designs persistent objects process and data migration load balancing security protection
#iKing S
#t2008,spring
#nAdvanced Distributed Systems
#dPeer-to-peer systems sensor networks and fundamental/theoretical distributed computing. Reviews classical work in each and uses design methodologies to explore overlaps across the three otherwise scattered research areas. Studies revolve around protocol design systems issues and theory. Reading selections are roughly two-third classical to one-third contemporary which are updated every year. Students learn to write critiques make presentations and create a conference paper in a systematic manner
#iGupta I
#t2008,spring
#nIntro to Combinatorics
#dPermutations and combinations generating functions recurrence relations inclusion and exclusion Polya's theory of counting and block designs. Same as CS 413. 3 undergraduate hours. 3 or 4 graduate hours. 4 hours of credit requires approval of the instructor and completion of additional work of substance
#iVijay S 
#t2008,spring
#nNumerical Analysis
#dIntroduction to numerical analysis including linear system solvers optimization techniques interpolation and approximation of functions solving systems of nonlinear equations eigenvalue problems least squares and quadrature,numerical handling of ordinary and partial differential equations
#iHirani A
#t2008,spring
#nParallel Numerical Algorithms
#dIntroduction to numerical algorithms for parallel computers: parallel algorithms in numerical linear algebra (dense and sparse solvers for linear systems and the algebraic eigenvalue problem) numerical handling of ordinary and partial differential equations and numerical optimization techniques
#iHeath M,Gropp W 
#t2008,spring
#nAlgorithms
#dAdvanced data structures graph algorithms arithmetic algorithms geometric algorithms string problems parallel algorithms NP-completeness
#iBlatti C,Maji H,Nayyeri A,Chekuri C
#t2008,fall
#nProgram Verification
#dExamines formal methods for demonstrating correctness and other properties of programs. Invariant assertions,Hoare axiomatics,well-founded orderings for proving termination,structural induction,computational induction,data structures,parallel programs,an overview of predicate calculus
#iMeseguer J 
#t2008,fall
#nCombinatorial Mathematics
#dFundamental results on core topics of combinatorial mathematics: classical enumeration basic graph theory extremal problems on finite sets probabilistic methods design theory discrete optimization
#iWest D
#t2008,fall
#nTopics in Algorithms
#dTheoretical analysis of various algorithms: sorting searching selection polynomial evaluation matrix multiplication and multiplication of real numbers
#iErickson J
#t2008,fall
#nMethods of Combinatorics
#dCombinatorial methods and other mathematical methods for combinatorial problems. Enumeration by bijections and generating functions probabilistic methods for existence proofs and asymptotic analysis randomized algorithms Ramsey's theorem and related topics combinatorial designs and their applications geometric problems and methods
#iWest D
#t2008,fall
#nInformation Theory
#dMathematical models for channels and sources,entropy information data compression channel capacity Shannon's theorems and rate-distortion theory
#iColeman T
#t2008,fall
#nEmbedded Systems
#dA survey of sampled data systems and embedded architecture,key concepts in common embedded system applications,signal processing and control,embedded microprocessor and device interface,time-critical I/O handling,data communications,real-time operating systems and techniques for the development and analysis of embedded real-time software,hands-on laboratory projects
#iSha L,Young J 
#t2008,fall
#nComputer System Organization
#dComputer system analysis and design. Organizational dependence on computations to be performed. Speed and cost of parts and overall machines. Instruction set design. Pipeline and vector machines. Memory hierarchy design
#iTorrellas J
#t2008,fall
#nIntro to VLSI System Design
#dComplementary Metal-Oxide Semiconductor (CMOS) technology and theory,CMOS circuit and logic design,layout rules and techniques,circuit characterization and performance estimation,CMOS subsystem design,Very-Large-Scale Integrated (VLSI) systems design methods,VLSI Computer Aided Design (CAD) tools,laboratory experience in custom VLSI chip design on workstations using concepts of cell hierarchy,final project involving specification design and evaluation of a VLSI chip or VLSI CAD program,and written report and oral presentation on the final project
#iWong M
#t2008,fall
#nArtificial Intelligence
#dMajor topics in and directions of research in artificial intelligence: AI languages (LISP and PROLOG) basic problem solving techniques knowledge representation and computer inference machine learning natural language understanding computer vision robotics and societal impacts
#iDejong G
#t2008,fall
#nIntroduction to Robotics
#dFundamentals of robotics rigid motions homogeneous transformations forward and inverse kinematics velocity kinematics motion planning trajectory generation sensing vision and control
#iHutchinson S,Candido S
#t2008,fall
#nMachine Learning
#dTheory and basic techniques in machine learning. Presents the main theoretical paradigms and key ideas developed in machine learning in the context of applications such as natural language and text processing computer vision data mining adaptive computer systems and others. Reviews several supervised and unsupervised learning approaches: methods for learning linear representations,on-line learning Bayesian methods,decision-trees,features and kernels,clustering and dimensionality reduction
#iRoth D
#t2008,fall
#nIntroduction to Bioinformatics
#dAlgorithmic approaches in bioinformatics: (i) biological problems that can be solved computationally (e.g. discovering genes and interactions among different genes and proteins),(ii) algorithmic techniques with wide applicability in solving these problems (e.g. dynamic programming and probabilistic methods),(iii) practical issues in translating the basic algorithmic ideas into accurate and efficient tools that biologists may use
#iSinha S
#t2008,fall
#nDatabase Systems
#dExamines the logical organization of databases: the entity-relationship model,the hierarchical network and relational data models and their languages. Functional dependencies and normal forms. Design implementation and optimization of query languages,security and integrity,concurrency control and distributed database systems
#iWinslett M,Minami K
#t2008,fall
#nIntroduction to Data Mining
#dIntroduction to the concepts techniques and systems of data warehousing and data mining. Design and implementation of data warehouse and on-line analytical processing (OLAP) systems,data mining concepts methods systems implementations and applications
#iHan J
#t2008,fall
#nAdvanced Database Systems
#dAdvanced concepts in database management system design and implementation and an introduction to the major recent developments in the field. Relational roots distributed and parallel databases object databases and extensibility semistructured data and XML web research benchmarks and current directions in the field
#iChang K
#t2008,fall
#nInteractive Computer Graphics
#dIntroduction to basic mathematical tools and computational techniques for modeling rendering and animating 3-D scenes
#iHart J,Jones B,Chen A
#t2008,fall
#nProduction Computer Graphics
#dAdvanced methods for representing displaying and rendering two- three- and four-dimensional scenes. General algebraic curves and surfaces splines Gaussian and bump-function representation fractals particle systems constructive solid geometry methods lighting models radiosity advanced ray-tracing methods surface texturing animation techniques data visualization methods
#iYu Y
#t2008,fall
#nUser Interface Design
#dA project-focused course that covers fundamental principles of user interface design implementation and evaluation. Small teams work on a semester-long project that includes: analysis of the problem domain user skills and tasks,iterative prototyping of interfaces to address user needs,conducting several forms of evaluation such as cognitive walkthroughs and usability tests,implementation of the final prototype. Non-technical majors may enroll in the course as non-programmers who participate in all aspects of the projects with the possible exception of implementation
#iKarahalios K 
#t2008,fall
#nProgramming Languages and Compilers
#dIntroduction to the structure of programming languages and their implementation. Basic language design principles,abstract data types,functional languages,type systems,object-oriented languages. Basics of lexing parsing syntax-directed translation semantic analysis and code generation
#iGunter E 
#t2008,fall
#nCompiler Construction
#dCompiler structure syntax analysis syntax-directed translation automatically constructed recognizers semantic analysis code generation intermediate language optimization techniques
#iAdve V
#t2008,fall
#nSoftware Engineering I
#dSoftware process analysis and design. Topics include: software development paradigms system engineering function-based analysis and design and object-oriented analysis and design. Course will use team-projects for hands-on exercises
#iJohnson R
#t2008,fall
#nProgram Verification
#dExamines formal methods for demonstrating correctness and other properties of programs. Invariant assertions,Hoare axiomatics,well-founded orderings for proving termination,structural induction,computational induction,data structures,parallel programs,an overview of predicate calculus
#iMeseguer J
#t2008,fall
#nStochastic Processes and Applic
#dModeling and analysis of stochastic processes. Transient and steady-state behavior of continuous-time Markov chains,renewal processes,models of queuing systems (birth-and-death models embedded-Markov-chain models queuing networks),reliability models,inventory models. Familiarity with discrete-time Markov chains Poisson processes and birth-and-death processes is assumed
#iJacobson S
#t2008,fall
#nTopics in Software Engineering
#dFault-tolerant software software architecture software patterns multi-media software and knowledge-based approaches to software engineering. Includes a number of case studies
#iMarinov D
#t2008,fall
#nOperating Systems Design
#dOrganization and structure of modern operating systems and concurrent programming concepts. Deadlock virtual memory processor scheduling and disk systems. Performance security and protection
#iKing S
#t2008,fall
#nReal-Time Systems
#dExamples of real-time computing systems,real-time scheduling and resource management algorithms,analytical and efficient validation methods. Examples of real-time operating systems,temporal consistency of real-time data,formal methods for specification of and reasoning about timing constraints
#iAbdelzaher T 
#t2008,fall
#nDistributed Systems
#drotocols specification techniques global states and their determination reliable broadcast transactions and commitment security and real-time systems
#iNahrstedt K 
#t2008,fall
#nCommunication Networks
#dLayered architectures and the OSI Reference Model,design issues and protocols in the transport network and data link layers,architectures and control algorithms of local-area point-to-point and satellite networks,standards in networks access protocols,models of network interconnection,overview of networking and communication software
#iVaidya N 
#t2008,fall
#nComputer Security I
#dFundamental principles of computer and communications security and information assurance: ethics privacy notions of threat vulnerabilities and risk in systems information warfare malicious software data secrecy and integrity issues network security trusted computing mandatory and discretionary access controls certification and accreditation of systems against security standards. Security mechanisms: authentication auditing intrusion detection access control cryptography security protocols key distribution
#iHinrichs S
#t2008,fall
#nComputer Security II
#dProgram security trusted base privacy anonymity non-interference information flow confinement advanced auditing forensics intrusion detection key management and distribution policy composition and analysis formal approaches to specification and verification of secure systems and protocols and topics in applied cryptography
#iHu Y
#t2008,fall
#nComputer Systems Analysis
#dDevelopment of analytical models of computer systems and application of such models to performance evaluation,topics include scheduling policies paging algorithms multiprogrammed resource management and queuing theory
#iNicol D
#t2008,fall
#nSystems Modeling & Simulation
#dElements of computer simulations including modeling deterministic and stochastic systems generation of random numbers and variables and probability and statistics related to modeling validating running and of interpreting computer simulations
#iEngelbrecht-Wiggans R
#t2008,fall
#nIntro to Combinatorics
#dPermutations and combinations generating functions recurrence relations inclusion and exclusion Polya's theory of counting and block designs
#iBalog J 
#t2008,fall
#nNumerical Analysis
#dIntroduction to numerical analysis including linear system solvers optimization techniques interpolation and approximation of functions solving systems of nonlinear equations eigenvalue problems least squares and quadrature,numerical handling of ordinary and partial differential equations
#iBond S 
#t2008,fall
#nNumerical Fluid Dynamics
#dAddresses numerical techniques for solving linear and nonlinear differential equations in initial value fluid flow problems. Students receive a thorough background in the principles used to evaluate numerical methods the ability to critically interpret these methods as presented in the literature and in particular the practical application of these techniques in modeling multi-dimensional flow on high-performance computers. Temporal and directional splitting finite differencing/volume methods and adaptive nesting will be discussed
#iJewett B 
#t2008,fall
#nTopics in Numerical Analysis
#dAdvanced topics in numerical analysis selected from areas of current research
#iHirani A 
#t2008,fall
#nAlgorithms
#dAdvanced data structures graph algorithms arithmetic algorithms geometric algorithms string problems parallel algorithms NP-completeness
#iErickson J,Moseley B,Nayyeri A,Ene A
#t2009,spring
#nFormal Models of Computation
#dFinite automata and regular languages,pushdown automata and context-free languages,Turing machines and recursively enumerable sets,linear-bounded automata and context-sensitive languages,computability and the halting problem,undecidable problems,recursive functions,Chomsky hierarchy,computational complexity
#iLavalle S
#t2009,spring
#nFormal Software Development Methods
#dMathematical models languages and methods for software specification development and verification
#iViswanathan M
#t2009,spring
#nExtermal Graph Theory
#dExtremal problems and parameters for graphs. Distance and connectivity matching and factors vertex and edge colorings perfect and imperfect graphs intersection classes and intersection parameters Turan's theorem graph Ramsey theory graph decomposition and other extremal problems
#iWest D
#t2009,spring
#nTopics in Automated Deduction
#dAdvanced topics in computer-aided methods for formal deduction selected from areas of current research such as: resolution theorem proving strategies special relations equational reasoning unification theory rewrite systems mathematical induction program derivation hybrid inference systems and programming with logic
#iMeseguer J
#t2009,spring
#nComputational Complexity
#dTuring machines,determinism and non-determinism,time and space hierarchy theorems,speed-up and tape compression,Blum axioms,structure of complexity classes NP P NL L and PSPACE,complete problems,randomness and complexity classes RP RL and BPP,alternation polynomial-time hierarchy,circuit complexity parallel complexity NC and RNC,relativized computational complexity,time-space trade-offs
#iPrabhakaran M
#t2009,spring
#nEmbedded Systems
#dA survey of sampled data systems and embedded architecture,key concepts in common embedded system applications,signal processing and control,embedded microprocessor and device interface,time-critical I/O handling,data communications,real-time operating systems and techniques for the development and analysis of embedded real-time software,hands-on laboratory projects
#iSha L,AlMalkawi M
#t2009,spring
#nComputer System Organization
#dComputer system analysis and design. Organizational dependence on computations to be performed. Speed and cost of parts and overall machines. Instruction set design. Pipeline and vector machines. Memory hierarchy design
#iAdve S,Levine G,Kaushik R 
#t2009,spring
#nIntro to VLSI System Design
#dComplementary Metal-Oxide Semiconductor (CMOS) technology and theory,CMOS circuit and logic design,layout rules and techniques,circuit characterization and performance estimation,CMOS subsystem design,Very-Large-Scale Integrated (VLSI) systems design methods,VLSI Computer Aided Design (CAD) tools,laboratory experience in custom VLSI chip design on workstations using concepts of cell hierarchy,final project involving specification design and evaluation of a VLSI chip or VLSI CAD program,and written report and oral presentation on the final project
#iChen D
#t2009,spring
#nLogic Design
#dDesign of combinational networks hazards finite state machines design of sequential networks in fundamental mode and pulse mode state reduction state assignment and races and fault detection and testing
#iVasudevan S
#t2009,spring
#nParallel Computer Architecture
#dTheoretical aspects of parallel and pipeline computation,time and processor bounds on classes of computations,data alignment network speed and cost bounds,conflict-free access memories,overall computer system ideas
#iTorrellas J
#t2009,spring
#nArtificial Intelligence
#dMajor topics in and directions of research in artificial intelligence: AI languages (LISP and PROLOG) basic problem solving techniques knowledge representation and computer inference machine learning natural language understanding computer vision robotics and societal impacts
#iLevinson S 
#t2009,spring
#nComputer Vision
#dExamines information processing approaches to computer vision algorithms and architectures for artificial intelligence and robotics systems capable of vision: inference of three-dimensional properties of a scene from its images such as distance orientation motion size and shape acquisition and representation of spatial information for navigation and manipulation in robotics
#iForsyth D 
#t2009,spring
#nMachine Learning in NLP
#dIntroduction to the central learning frameworks and techniques that have emerged in the field of natural language processing and found applications in several areas in text and speech processing: from information retrieval and extraction through speech recognition to syntax semantics and language understanding related tasks. Presents the theoretical paradigms -- learning theoretic probabilistic and information theoretic -- and the relations among them as well as the main algorithmic techniques developed within these and in key natural language applications
#iRoth D 
#t2009,spring
#nModels of Cognitive Processes
#dFormal models and concepts in vision and language,detailed analysis of computer vision language and learning problems,relevant psychological results and linguistic systems,survey of the state-of-the-art in artificial intelligence
#iDejong G
#t2009,spring
#nText Information Systems
#dIntroduction to the theory design and implementation of text-based information systems. Text analysis retrieval models (e.g. Boolean vector space probabilistic) text categorization text filtering clustering retrieval system design and implementation and applications to web information management
#iZhai C
#t2009,spring
#nDatabase Systems
#dExamines the logical organization of databases: the entity-relationship model,the hierarchical network and relational data models and their languages. Functional dependencies and normal forms. Design implementation and optimization of query languages,security and integrity,concurrency control and distributed database systems
#iChang K 
#t2009,spring
#nData Mining Principles
#dAn advanced course on principles and algorithms of data mining. Data cleaning and integration,descriptive and predictive mining,mining frequent sequential and structured patterns,clustering outlier analysis and fraud detection,stream data web text and biomedical data mining,security and privacy in data mining,research frontiers
#iHan J
#t2009,spring
#nComputer-Assisted Instruction
#dComputer-assisted instruction (CAI) and its relation to classroom teaching,the teacher's role in development management and criticism of CAI lessons,treatment of topics including instructional capabilities of CAI systems instructional programming and the design of CAI lessons
#iTettegah S 
#t2009,spring
#nInteractive Computer Graphics
#dIntroduction to basic mathematical tools and computational techniques for modeling rendering and animating 3-D scenes
#iYu Y,Feng W
#t2009,spring
#nParallel Programming: Sci and Engrg
#dIntroduction to fundamental issues in design and development of parallel programs for various types of parallel computers. Various programming models according to both machine type and application area. Cost models debugging and performance evaluation of parallel programs with actual application examples
#iKale L
#t2009,spring
#nProgramming Languages and Compilers
#dIntroduction to the structure of programming languages and their implementation. Basic language design principles,abstract data types,functional languages,type systems,object-oriented languages. Basics of lexing parsing syntax-directed translation semantic analysis and code generation
#iKamin S 
#t2009,spring
#nProgramming Language Design
#dExploration of major language design paradigms using imperative and functional programming as unifying themes. Tools include both practical language processor construction and theoretical models
#iGunter E
#t2009,spring
#nSoftware Engineering II
#dContinuation of CS 427. Software development management and maintenance. Topics include project and configuration management collaborative development models software quality assurance interoperability domain engineering and software reuse and software re-engineering
#iJohnson R 
#t2009,spring
#nSoftware Engineering II ACP
#dContinuation of CS 427
#iJohnson R 
#t2009,spring
#nFormal Software Development Methods
#dMathematical models languages and methods for software specification development and verification
#iViswanathan M
#t2009,spring
#nConcurrent Programming Languages
#dIntroduction to the theory of concurrency and concurrent programming languages. Formal models of concurrent computation such as process algebras nets and actors,high level concurrent programming languages and their operational semantics,methods for reasoning about correctness and complexity of concurrent programs
#iAgha G 
#t2009,spring
#nAdvanced Compiler Construction
#dIncremental and interactive compiling error correction code optimization models of code generators
#iPadua D
#t2009,spring
#nMultimedia Systems
#dOrganization and structure of modern multimedia systems,audio and video encoding,quality of service concepts,scheduling algorithms for multimedia within OS and networks multimedia protocols over high-speed networks,synchronization schemes user-interface design,multimedia teleservices
#iNahrstedt K
#t2009,spring
#nOperating Systems Design
#dOrganization and structure of modern operating systems and concurrent programming concepts. Deadlock virtual memory processor scheduling and disk systems. Performance security and protection
#iCampbell R 
#t2009,spring
#nDistributed Systems
#dProtocols specification techniques global states and their determination reliable broadcast transactions and commitment security and real-time systems
#iMitra S
#t2009,spring
#nCommunication Networks
#dLayered architectures and the OSI Reference Model,design issues and protocols in the transport network and data link layers,architectures and control algorithms of local-area point-to-point and satellite networks,standards in networks access protocols,models of network interconnection,overview of networking and communication software
#iKravets R,Caesar M
#t2009,spring
#nWireless Network
#dOverview of wireless network architectures including cellular networks local area networks multi-hop wireless networks such as ad hoc networks mesh networks and sensor networks,capacity of wireless networks,medium access control routing protocols and transport protocols for wireless networks,mechanisms to improve performance and security in wireless networks,energy-efficient protocols for sensor networks
#iVaidya N
#t2009,spring
#nSecurity Laboratory
#dOperating systems security: access control least privilege mechancsm and malware techniques. Network security: firewalls sniffing tunnels intrusion detection AAA and worm structure. System security: forensics security architectures and attack/defend exercises
#iHinrichs S 
#t2009,spring
#nComputer Security I
#dFundamental principles of computer and communications security and information assurance: ethics privacy notions of threat vulnerabilities and risk in systems information warfare malicious software data secrecy and integrity issues network security trusted computing mandatory and discretionary access controls certification and accreditation of systems against security standards. Security mechanisms: authentication auditing intrusion detection access control cryptography security protocols key distribution
#iNicol D
#t2009,spring
#nComputer Security II
#dProgram security trusted base privacy anonymity non-interference information flow confinement advanced auditing forensics intrusion detection key management and distribution policy composition and analysis formal approaches to specification and verification of secure systems and protocols and topics in applied cryptography
#iGunter C
#t2009,spring
#nAdvanced Operating Systems
#dAdvanced concepts in operating system design and coverage of recent research directions. Resource management for parallel and distributed systems. Interaction between operating system design and computer architectures. Process management virtual memory interprocess communication context switching parallel and distributed file system designs persistent objects process and data migration load balancing security protection
#iKing S
#t2009,spring
#nAdvanced Distributed Systems
#dPeer-to-peer systems sensor networks and fundamental/theoretical distributed computing. Reviews classical work in each and uses design methodologies to explore overlaps across the three otherwise scattered research areas. Studies revolve around protocol design systems issues and theory. Reading selections are roughly two-third classical to one-third contemporary which are updated every year. Students learn to write critiques make presentations and create a conference paper in a systematic manner
#iGupta I
#t2009,spring
#nIntro to Combinatorics
#dPermutations and combinations generating functions recurrence relations inclusion and exclusion Polya's theory of counting and block designs. Same as CS 413. 3 undergraduate hours. 3 or 4 graduate hours. 4 hours of credit requires approval of the instructor and completion of additional work of substance
#iBalog J
#t2009,spring
#nNumerical Analysis
#dIntroduction to numerical analysis including linear system solvers optimization techniques interpolation and approximation of functions solving systems of nonlinear equations eigenvalue problems least squares and quadrature,numerical handling of ordinary and partial differential equations
#iHirani A
#t2009,spring
#nNumerical Methods II
#dOrthogonalization methods for least squares Krylov subspace methods non-linear equations and optimization in multiple dimensions initial and boundary value problems for ordinary and partial differential equations
#iHeath M
#t2009,spring
#nSimulation
#dIntroduction to the use of discrete-event simulation in the modeling and analysis of complex systems using a simulation package. Components of simulation software including data structures and event-list processing,verification and validation of simulation models,input modeling including selection of probability distributions and random variate generation,statistical analysis of output data
#iJacobson S
#t2009,spring
#nScientific Visualization
#dA detailed study of visualization techniques useful in analysis of engineering and scientific data. Physical models,methods of computational science,two- and three-dimensional data types,visual representation schemes for scalar vector and tensor data,isosurface and volume visualization methods,visual monitoring,interactive steering
#iHart J 
#t2009,spring
#nNumerical Methods for PDEs
#dIntroduction to numerical techniques for initial and boundary value problems in partial differential equations. Examines finite difference and finite element discretization techniques direct and iterative solution methods for discrete problems and programming techniques and usage of FORTRAN packages
#iBond S
#t2009,spring
#nIterative & Multigrid Methods
#dComprehensive treatment of algebraic and multigrid iterative methods to solve systems of equations primarily linear equations arising from discretization of partial differential equations
#iOlson L
#t2009,spring
#nAlgorithms
#dAdvanced data structures graph algorithms arithmetic algorithms geometric algorithms string problems parallel algorithms NP-completeness
#iFox K,Schreiber D,Chekuri C,Ene A
#t2009,fall
#nProgram Verification
#dExamines formal methods for demonstrating correctness and other properties of programs. Invariant assertions,Hoare axiomatics,well-founded orderings for proving termination,structural induction,computational induction,data structures,parallel programs,an overview of predicate calculus
#iMeseguer J 
#t2009,fall
#nCombinatorial Mathematics
#dFundamental results on core topics of combinatorial mathematics: classical enumeration basic graph theory extremal problems on finite sets probabilistic methods design theory discrete optimization
#iWest D
#t2009,fall
#nTopics in Algorithms
#dTheoretical analysis of various algorithms: sorting searching selection polynomial evaluation matrix multiplication and multiplication of real numbers
#iHar-Peled S
#t2009,fall
#nCoding Theory
#dCoding theory with emphasis on the algebraic theory of cyclic codes using finite field arithmetic decoding of BCH and RS codes finite field Fourier transform and algebraic geometry codes convolutional codes and trellis decoding algorithms
#iMilenkovic O
#t2009,fall
#nInformation Theory
#dMathematical models for channels and sources,entropy information data compression channel capacity Shannon's theorems and rate-distortion theory
#iBlahut R
#t2009,fall
#nEmbedded Systems
#dA survey of sampled data systems and embedded architecture,key concepts in common embedded system applications,signal processing and control,embedded microprocessor and device interface,time-critical I/O handling,data communications,real-time operating systems and techniques for the development and analysis of embedded real-time software,hands-on laboratory projects
#iSha L,Rahmaniheris M,Al-Nayeem A 
#t2009,fall
#nComputer System Organization
#dComputer system analysis and design. Organizational dependence on computations to be performed. Speed and cost of parts and overall machines. Instruction set design. Pipeline and vector machines. Memory hierarchy design
#iTorrellas J
#t2009,fall
#nIntro to VLSI System Design
#dComplementary Metal-Oxide Semiconductor (CMOS) technology and theory,CMOS circuit and logic design,layout rules and techniques,circuit characterization and performance estimation,CMOS subsystem design,Very-Large-Scale Integrated (VLSI) systems design methods,VLSI Computer Aided Design (CAD) tools,laboratory experience in custom VLSI chip design on workstations using concepts of cell hierarchy,final project involving specification design and evaluation of a VLSI chip or VLSI CAD program,and written report and oral presentation on the final project
#iWong M
#t2009,fall
#nFault-Tolerant Dig Syst Design
#dAdvanced concepts in hardware and software fault tolerance,topics include fault models coding in computer systems module and system level fault detection mechanism reconfiguration techniques in multiprocessor systems and VLSI processor arrays and software fault tolerance techniques such as recovery blocks N-version programming checkpointing and recovery,survey of practical fault-tolerant systems
#iKalbarczyk Z 
#t2009,fall
#nArtificial Intelligence
#dMajor topics in and directions of research in artificial intelligence: AI languages (LISP and PROLOG) basic problem solving techniques knowledge representation and computer inference machine learning natural language understanding computer vision robotics and societal impacts
#iDejong G
#t2009,fall
#nIntroduction to Robotics
#dFundamentals of robotics rigid motions homogeneous transformations forward and inverse kinematics velocity kinematics motion planning trajectory generation sensing vision and control
#iBretl T,Shemonski N,Candido S,Bretl T
#t2009,fall
#nMachine Learning
#dTheory and basic techniques in machine learning. Presents the main theoretical paradigms and key ideas developed in machine learning in the context of applications such as natural language and text processing computer vision data mining adaptive computer systems and others. Reviews several supervised and unsupervised learning approaches: methods for learning linear representations,on-line learning Bayesian methods,decision-trees,features and kernels,clustering and dimensionality reduction
#iRoth D
#t2009,fall
#nIntroduction to Bioinformatics
#dAlgorithmic approaches in bioinformatics: (i) biological problems that can be solved computationally (e.g. discovering genes and interactions among different genes and proteins),(ii) algorithmic techniques with wide applicability in solving these problems (e.g. dynamic programming and probabilistic methods),(iii) practical issues in translating the basic algorithmic ideas into accurate and efficient tools that biologists may use
#iSinha S
#t2009,fall
#nDatabase Systems
#dExamines the logical organization of databases: the entity-relationship model,the hierarchical network and relational data models and their languages. Functional dependencies and normal forms. Design implementation and optimization of query languages,security and integrity,concurrency control and distributed database systems
#iWinslett M,Minami K
#t2009,fall
#nIntroduction to Data Mining
#dIntroduction to the concepts techniques and systems of data warehousing and data mining. Design and implementation of data warehouse and on-line analytical processing (OLAP) systems,data mining concepts methods systems implementations and applications
#iHan J
#t2009,fall
#nAdvanced Database Systems
#dAdvanced concepts in database management system design and implementation and an introduction to the major recent developments in the field. Relational roots distributed and parallel databases object databases and extensibility semistructured data and XML web research benchmarks and current directions in the field
#iChang K
#t2009,fall
#nInteractive Computer Graphics
#dIntroduction to basic mathematical tools and computational techniques for modeling rendering and animating 3-D scenes
#iYu Y,Kamali Moghaddam 
#t2009,fall
#nProduction Computer Graphics
#dAdvanced methods for representing displaying and rendering two- three- and four-dimensional scenes. General algebraic curves and surfaces splines Gaussian and bump-function representation fractals particle systems constructive solid geometry methods lighting models radiosity advanced ray-tracing methods surface texturing animation techniques data visualization methods
#iForsyth D 
#t2009,fall
#nUser Interface Design
#dA project-focused course that covers fundamental principles of user interface design implementation and evaluation. Small teams work on a semester-long project that includes: analysis of the problem domain user skills and tasks,iterative prototyping of interfaces to address user needs,conducting several forms of evaluation such as cognitive walkthroughs and usability tests,implementation of the final prototype. Non-technical majors may enroll in the course as non-programmers who participate in all aspects of the projects with the possible exception of implementation
#iBailey B 
#t2009,fall
#nParallel Programming: Sci and Engrg
#dFundamental issues in design and development of parallel programs for various types of parallel computers. Various programming models according to both machine type and application area. Cost models debugging and performance evaluation of parallel programs with actual application examples
#iKale L,Geigner J
#t2009,fall
#nProgramming Languages and Compilers
#dIntroduction to the structure of programming languages and their implementation. Basic language design principles,abstract data types,functional languages,type systems,object-oriented languages. Basics of lexing parsing syntax-directed translation semantic analysis and code generation
#iGunter E 
#t2009,fall
#nCompiler Construction
#dCompiler structure syntax analysis syntax-directed translation automatically constructed recognizers semantic analysis code generation intermediate language optimization techniques
#iAdve V
#t2009,fall
#nSoftware Engineering I
#dSoftware process analysis and design. Topics include: software development paradigms system engineering function-based analysis and design and object-oriented analysis and design. Course will use team-projects for hands-on exercises
#iMarinov D
#t2009,fall
#nProgram Verification
#dExamines formal methods for demonstrating correctness and other properties of programs. Invariant assertions,Hoare axiomatics,well-founded orderings for proving termination,structural induction,computational induction,data structures,parallel programs,an overview of predicate calculus
#iMeseguer J
#t2009,fall
#nStochastic Processes and Applic
#dModeling and analysis of stochastic processes. Transient and steady-state behavior of continuous-time Markov chains,renewal processes,models of queuing systems (birth-and-death models embedded-Markov-chain models queuing networks),reliability models,inventory models. Familiarity with discrete-time Markov chains Poisson processes and birth-and-death processes is assumed
#iJacobson S
#t2009,fall
#nProgramming Language Semantics
#dTheory of programming languages including functional programming meta-circular interpreters typed untyped and polymorphic lambda-calculi and denotational semantics
#iRosu G
#t2009,fall
#nTopics in Software Engineering
#dFault-tolerant software software architecture software patterns multi-media software and knowledge-based approaches to software engineering. Includes a number of case studies
#iJohnson R
#t2009,fall
#nOperating Systems Design
#dOrganization and structure of modern operating systems and concurrent programming concepts. Deadlock virtual memory processor scheduling and disk systems. Performance security and protection
#iKing S
#t2009,fall
#nReal-Time Systems
#dExamples of real-time computing systems,real-time scheduling and resource management algorithms,analytical and efficient validation methods. Examples of real-time operating systems,temporal consistency of real-time data,formal methods for specification of and reasoning about timing constraints
#iAbdelzaher T 
#t2009,fall
#nDistributed Systems
#drotocols specification techniques global states and their determination reliable broadcast transactions and commitment security and real-time systems
#iNahrstedt K 
#t2009,fall
#nCommunication Networks
#dLayered architectures and the OSI Reference Model,design issues and protocols in the transport network and data link layers,architectures and control algorithms of local-area point-to-point and satellite networks,standards in networks access protocols,models of network interconnection,overview of networking and communication software
#iHajek B 
#t2009,fall
#nComputer Security I
#dFundamental principles of computer and communications security and information assurance: ethics privacy notions of threat vulnerabilities and risk in systems information warfare malicious software data secrecy and integrity issues network security trusted computing mandatory and discretionary access controls certification and accreditation of systems against security standards. Security mechanisms: authentication auditing intrusion detection access control cryptography security protocols key distribution
#iKhan F,Fatemieh S,Hinrichs S
#t2009,fall
#nComputer Security II
#dProgram security trusted base privacy anonymity non-interference information flow confinement advanced auditing forensics intrusion detection key management and distribution policy composition and analysis formal approaches to specification and verification of secure systems and protocols and topics in applied cryptography
#iHu Y
#t2009,fall
#nComputer Systems Analysis
#dDevelopment of analytical models of computer systems and application of such models to performance evaluation,topics include scheduling policies paging algorithms multiprogrammed resource management and queuing theory
#iNicol D
#t2009,fall
#nSystems Modeling & Simulation
#dElements of computer simulations including modeling deterministic and stochastic systems generation of random numbers and variables and probability and statistics related to modeling validating running and of interpreting computer simulations
#iEngelbrecht-Wiggans R
#t2009,fall
#nIntro to Combinatorics
#dPermutations and combinations generating functions recurrence relations inclusion and exclusion Polya's theory of counting and block designs
#iYong A 
#t2009,fall
#nNumerical Analysis
#dIntroduction to numerical analysis including linear system solvers optimization techniques interpolation and approximation of functions solving systems of nonlinear equations eigenvalue problems least squares and quadrature,numerical handling of ordinary and partial differential equations
#iBond S 
#t2009,fall
#nNumerical Fluid Dynamics
#dAddresses numerical techniques for solving linear and nonlinear differential equations in initial value fluid flow problems. Students receive a thorough background in the principles used to evaluate numerical methods the ability to critically interpret these methods as presented in the literature and in particular the practical application of these techniques in modeling multi-dimensional flow on high-performance computers. Temporal and directional splitting finite differencing/volume methods and adaptive nesting will be discussed
#iJewett B 
#t2009,fall
#nTopics in Numerical Analysis
#dAdvanced topics in numerical analysis selected from areas of current research
#iHirani A 
#t2009,fall
#nAlgorithms
#dAdvanced data structures graph algorithms arithmetic algorithms geometric algorithms string problems parallel algorithms NP-completeness
#iErickson J
#t2010,spring
#nFormal Software Development Methods
#dMathematical models languages and methods for software specification development and verification
#iMeseguer J
#t2010,spring
#nTopics in Automated Deduction
#dAdvanced topics in computer-aided methods for formal deduction selected from areas of current research such as: resolution theorem proving strategies special relations equational reasoning unification theory rewrite systems mathematical induction program derivation hybrid inference systems and programming with logic
#iGunter E
#t2010,spring
#nComputational Complexity
#dTuring machines,determinism and non-determinism,time and space hierarchy theorems,speed-up and tape compression,Blum axioms,structure of complexity classes NP P NL L and PSPACE,complete problems,randomness and complexity classes RP RL and BPP,alternation polynomial-time hierarchy,circuit complexity parallel complexity NC and RNC,relativized computational complexity,time-space trade-offs
#iPrabhakaran M
#t2010,spring
#nEmbedded Systems
#dA survey of sampled data systems and embedded architecture,key concepts in common embedded system applications,signal processing and control,embedded microprocessor and device interface,time-critical I/O handling,data communications,real-time operating systems and techniques for the development and analysis of embedded real-time software,hands-on laboratory projects
#iCaccamo M
#t2010,spring
#nComputer System Organization
#dComputer system analysis and design. Organizational dependence on computations to be performed. Speed and cost of parts and overall machines. Instruction set design. Pipeline and vector machines. Memory hierarchy design
#iAdve S
#t2010,spring
#nParallel Computer Architecture
#dTheoretical aspects of parallel and pipeline computation,time and processor bounds on classes of computations,data alignment network speed and cost bounds,conflict-free access memories,overall computer system ideas
#iTorrellas J
#t2010,spring
#nArtificial Intelligence
#dMajor topics in and directions of research in artificial intelligence: AI languages (LISP and PROLOG) basic problem solving techniques knowledge representation and computer inference machine learning natural language understanding computer vision robotics and societal impacts
#iAmir E 
#t2010,spring
#nComputer Vision
#dExamines information processing approaches to computer vision algorithms and architectures for artificial intelligence and robotics systems capable of vision: inference of three-dimensional properties of a scene from its images such as distance orientation motion size and shape acquisition and representation of spatial information for navigation and manipulation in robotics
#iForsyth D,Hoiem D
#t2010,spring
#nModels of Cognitive Processes
#dFormal models and concepts in vision and language,detailed analysis of computer vision language and learning problems,relevant psychological results and linguistic systems,survey of the state-of-the-art in artificial intelligence
#iDejong G
#t2010,spring
#nSeminar in Cognitive Science
#dIn-depth view of cognitive science: the study of mind and intelligence. Covers major areas of cognitive science including: anthropology artificial intelligence cognitive neuroscience cognitive psychology emotions linguistics and philosophy. Lectures focus on prominent questions and issues in each area highlighted by descriptions of current research. Also explores interconnections among these fields. Same as ANTH 514 CS 549 EPSY 551 LING 570 and PHIL 514. Prerequisite: Minimally second semester graduate standing in a cognitive science discipline including: anthropology computer science educational psychology electrical engineering linguistics philosophy psychology or consent of instructor
#iHummel J
#t2010,spring
#nText Information Systems
#dIntroduction to the theory design and implementation of text-based information systems. Text analysis retrieval models (e.g. Boolean vector space probabilistic) text categorization text filtering clustering retrieval system design and implementation and applications to web information management
#iZhai C
#t2010,spring
#nDatabase Systems
#dExamines the logical organization of databases: the entity-relationship model,the hierarchical network and relational data models and their languages. Functional dependencies and normal forms. Design implementation and optimization of query languages,security and integrity,concurrency control and distributed database systems
#iChang K 
#t2010,spring
#nData Mining Principles
#dAn advanced course on principles and algorithms of data mining. Data cleaning and integration,descriptive and predictive mining,mining frequent sequential and structured patterns,clustering outlier analysis and fraud detection,stream data web text and biomedical data mining,security and privacy in data mining,research frontiers
#iHan J
#t2010,spring
#nComputer-Assisted Instruction
#dComputer-assisted instruction (CAI) and its relation to classroom teaching,the teacher's role in development management and criticism of CAI lessons,treatment of topics including instructional capabilities of CAI systems instructional programming and the design of CAI lessons
#iTettegah S 
#t2010,spring
#nInteractive Computer Graphics
#dIntroduction to basic mathematical tools and computational techniques for modeling rendering and animating 3-D scenes
#iHart J 
#t2010,spring
#nHuman-Computer Interaction
#dIn-depth coverage of advanced topics in human-computer interaction (HCI). Applied models of human performance and attention design tools for creative design tasks interruptions and peripheral displays gestures and bimanual input and usability evaluation techniques
#iBailey B
#t2010,spring
#nProgramming Languages and Compilers
#dIntroduction to the structure of programming languages and their implementation. Basic language design principles,abstract data types,functional languages,type systems,object-oriented languages. Basics of lexing parsing syntax-directed translation semantic analysis and code generation
#iKamin S 
#t2010,spring
#nProgramming Language Design
#dExploration of major language design paradigms using imperative and functional programming as unifying themes. Tools include both practical language processor construction and theoretical models
#iRosu G
#t2010,spring
#nSoftware Engineering II
#dContinuation of CS 427. Software development management and maintenance. Topics include project and configuration management collaborative development models software quality assurance interoperability domain engineering and software reuse and software re-engineering
#iMarinov D
#t2010,spring
#nSoftware Engineering II ACP
#dContinuation of CS 427
#iMarinov D
#t2010,spring
#nFormal Software Development Methods
#dMathematical models languages and methods for software specification development and verification
#iMeseguer J
#t2010,spring
#nConcurrent Programming Languages
#dIntroduction to the theory of concurrency and concurrent programming languages. Formal models of concurrent computation such as process algebras nets and actors,high level concurrent programming languages and their operational semantics,methods for reasoning about correctness and complexity of concurrent programs
#iAgha G 
#t2010,spring
#nAdvanced Compiler Construction
#dIncremental and interactive compiling error correction code optimization models of code generators
#iAdve V
#t2010,spring
#nMultimedia Systems
#dOrganization and structure of modern multimedia systems,audio and video encoding,quality of service concepts,scheduling algorithms for multimedia within OS and networks multimedia protocols over high-speed networks,synchronization schemes user-interface design,multimedia teleservices
#iNahrstedt K
#t2010,spring
#nOperating Systems Design
#dOrganization and structure of modern operating systems and concurrent programming concepts. Deadlock virtual memory processor scheduling and disk systems. Performance security and protection
#iAbdelzaher T
#t2010,spring
#nDistributed Systems
#dProtocols specification techniques global states and their determination reliable broadcast transactions and commitment security and real-time systems
#iNagaraja S
#t2010,spring
#nCommunication Networks
#dLayered architectures and the OSI Reference Model,design issues and protocols in the transport network and data link layers,architectures and control algorithms of local-area point-to-point and satellite networks,standards in networks access protocols,models of network interconnection,overview of networking and communication software
#iCaesar M
#t2010,spring
#nWireless Network
#dOverview of wireless network architectures including cellular networks local area networks multi-hop wireless networks such as ad hoc networks mesh networks and sensor networks,capacity of wireless networks,medium access control routing protocols and transport protocols for wireless networks,mechanisms to improve performance and security in wireless networks,energy-efficient protocols for sensor networks
#iVaidya N
#t2010,spring
#nSecurity Laboratory
#dOperating systems security: access control least privilege mechancsm and malware techniques. Network security: firewalls sniffing tunnels intrusion detection AAA and worm structure. System security: forensics security architectures and attack/defend exercises
#iHinrichs S 
#t2010,spring
#nComputer Security I
#dFundamental principles of computer and communications security and information assurance: ethics privacy notions of threat vulnerabilities and risk in systems information warfare malicious software data secrecy and integrity issues network security trusted computing mandatory and discretionary access controls certification and accreditation of systems against security standards. Security mechanisms: authentication auditing intrusion detection access control cryptography security protocols key distribution
#iNicol D
#t2010,spring
#nComputer Security II
#dProgram security trusted base privacy anonymity non-interference information flow confinement advanced auditing forensics intrusion detection key management and distribution policy composition and analysis formal approaches to specification and verification of secure systems and protocols and topics in applied cryptography
#iGunter C
#t2010,spring
#nAdvanced Operating Systems
#dAdvanced concepts in operating system design and coverage of recent research directions. Resource management for parallel and distributed systems. Interaction between operating system design and computer architectures. Process management virtual memory interprocess communication context switching parallel and distributed file system designs persistent objects process and data migration load balancing security protection
#iKing S
#t2010,spring
#nAdvanced Distributed Systems
#dPeer-to-peer systems sensor networks and fundamental/theoretical distributed computing. Reviews classical work in each and uses design methodologies to explore overlaps across the three otherwise scattered research areas. Studies revolve around protocol design systems issues and theory. Reading selections are roughly two-third classical to one-third contemporary which are updated every year. Students learn to write critiques make presentations and create a conference paper in a systematic manner
#iGupta I
#t2010,spring
#nIntro to Combinatorics
#dPermutations and combinations generating functions recurrence relations inclusion and exclusion Polya's theory of counting and block designs. Same as CS 413. 3 undergraduate hours. 3 or 4 graduate hours. 4 hours of credit requires approval of the instructor and completion of additional work of substance
#iBalog J
#t2010,spring
#nNumerical Analysis
#dIntroduction to numerical analysis including linear system solvers optimization techniques interpolation and approximation of functions solving systems of nonlinear equations eigenvalue problems least squares and quadrature,numerical handling of ordinary and partial differential equations
#iBond S
#t2010,spring
#nNumerical Methods II
#dOrthogonalization methods for least squares Krylov subspace methods non-linear equations and optimization in multiple dimensions initial and boundary value problems for ordinary and partial differential equations
#iOlson L
#t2010,spring
#nSimulation
#dIntroduction to the use of discrete-event simulation in the modeling and analysis of complex systems using a simulation package. Components of simulation software including data structures and event-list processing,verification and validation of simulation models,input modeling including selection of probability distributions and random variate generation,statistical analysis of output data
#iJacobson S
#t2010,spring
#nParallel Numerical Algorithms
#dNumerical algorithms for parallel computers: parallel algorithms in numerical linear algebra (dense and sparse solvers for linear systems and the algebraic eigenvalue problem) numerical handling of ordinary and partial differential equations and numerical optimization techniques
#iHeath M
#t2010,spring
#nNumerical Methods for PDEs
#dIntroduction to numerical techniques for initial and boundary value problems in partial differential equations. Examines finite difference and finite element discretization techniques direct and iterative solution methods for discrete problems and programming techniques and usage of FORTRAN packages
#iHirani A
#t2010,spring
