# PhD Courses

- CS 780 -
*Compiler Design and Construction*
- Complete compiler for a small programming language is discussed. Topics covered are scanning, syntax analysis, and code generation.
- CS 784 -
*Programming Languages*
- Programming paradigms and concepts for high level programming languages. Techniques for formal specification.
- CEG 699 -
*Wireless Sensor Networks*
- Introduction to wireless sensor networks. Overview of fundamental problems and their solutions. Focus on data aggregation, dissemination, localization, power management, security, algorithms and protocol. Students develop applications using Micaz motes and sensors running TinyOS operating systems.
- CS 740 -
*Computational Complexity and Algorithms*
- Time complexity analysis of algorithms; computational complexity; NP completeness.
- STT 611 -
*Applied Time Series*
- Stochastic models for discrete time series in the time-domain, moving average processes, autoregressive processes, model identification, parameter estimation, and forecasting. Statistical computing software packages are used.
- CS 705 -
*Data Mining*
- Data forms, data preparation, cleaning, feature selection, discretization; high-level statistical analysis; associations; classification; clustering; data cubes; interestingness, cross validation; visualization; scalability; privacy and ethics; applications.
- CS 884 -
*Advanced Topics in Programming Languages*
- Continuation of CS 784. Emphasis on formal methods for specifying and defining both the syntax and the semantics of programming languages.
- STT 601 -
*Nonparametric Methods*
- Distribution-free estimation and hypothesis testing procedures. Includes methods for use in one- and two-sample location and dispersion problems, nonparametric alternatives to ANOVA and regression, goodness-of-fit tests, measures of association, and test for randomness.
- STT 646 -
*Statistical Methods I*
- Classical statistical techniques for analysis and interpretation of research data, with extensive use of statistical software. Includes review of basic statistics. Simple, multiple, and polynomial regression, and single factor analysis of variance are covered.
- CEG 820 -
*Computer Architecture II*
- Study of parallel architectures and parallel processing. Topics include multiprocessors, cache coherence, synchronization mechanisms, scalable architectures, and vectorization and parallelization.