Tentatively Planned Program Electives for 2021-2022

Spring 2022

CS3450 Deep Learning

This course provides an in-depth introduction to the foundations of deep learning. Students will learn how to architect, train, and evaluate deep neural networks. Students will gain experience with backpropagation, a variety of network structures, and a variety of options for training networks. Practical applications will be covered such as health care, object recognition and tracking, natural language processing, and art.

CS4920 Information Security

This course provides a survey of computer security, consisting of the business case for security, principles of security, classes of vulnerabilities (e.g., buffer overrun), and the principles of cryptography. Cryptography topics are covered in depth, including secret and public key methods, stream ciphers, and related tools and standards such as Kerberos and PGP.

CS4980 An Engineering Approach to Game Theory and Economics

This course provides an engineering approach to economics using game theory that can be applied to study current economic issues. A brief introduction to game theory is given in the context of the engineering foundation that will be developed. An introduction to Mathematic's symbolic programming is provided. Mathematica is used to study both empirical trends as well as engineering model simulations based on the engineering extension of game theory. Finally, a review of the concepts from physics and mathematics that underlie the approach is given. Along with these introductory foundations, economic applications will be presented and shown to depend on aspects of modern theories of differential geometry. The student gains insight into these applications from engineering areas such as circuit theory.

CS4980 Game Development

This course provides an in depth look at game development, including development and design decisions that lead to successful games. Based on review of design elements of existing games, students design their own game and implement key features in a quarter-long project. Game projects are developed in current game engines such as Unity or Unreal Engine.

CS4980 Natural Language Processing

This course an in-depth introduction to various topics in Natural Language Processing, including sentiment analysis, text classification, and machine translation. Students will learn how to analyze text define grammars to build and train language models for various purposes and implement basic NLP systems.

CS4981 Competitive Programming

This course provides an exploration of algorithms and data structure with a focus on their use solving problems presented in programming competitions. A brief introduction to algorithm runtime and space complexity analysis will be given in the context of constraints presented by problems in a competitive programming environment. The course will then present how competitive programming problems can be categorized and solved by recognizing the appropriate algorithm and data structure to use. Lab sessions will consist of practice in solving problems along with writing new problems.

CS4981 Deep Learning in Signal Processing

This elective course provides an overview of deep learning methods and models as used in digital signal processing (DSP), including key DSP concepts that appear in and adjacent to such models in both real-time and off-line applications. Key topics include training pipelines, convolutional layers of various dimensions used on both time series and time-frequency representations of data, common network architectures, mitigation of overfitting, error metrics, and performance evaluation. Topics of student interest will be addressed by special lecture topics and course projects.

EE4980 Medical Imaging Technology: MRI & CT

This elective course provides an overview of diagnostic medical imaging technologies such as X-Ray, Computed Tomography (CT), and Magnetic Resonance Imaging (MRI). An introduction to image processing and analysis using MATLAB and deep learning to identify anomalous findings is provided.