# Math 322: Algorithm Design and Optimization 2

## Contents

## Catalog Information

### Title

Algorithm Design and Optimization 2

### (Credit Hours:Lecture Hours:Lab Hours)

(3:3:0)

### Offered

W

### Prerequisite

Math 320; concurrent with Math 346, Math 323

### Description

Algorithms used to solve dynamic programming problems and advanced computing problems. Topics include finite-horizon and infinite-horizon dynamic programming, discrete transforms, compressed sensing, heuristics, branch and bound, conditioning and stability.

## Desired Learning Outcomes

### Prerequisites

Math 320; concurrent with Math 346, Math 323

### Minimal learning outcomes

Students will have a solid understanding of the concepts listed below. They will be able to prove many of the theorems that are central to this material. They will understand the model specifications for the algorithms, and be able to recognize whether they apply in the context of a given application or not. They will be able to perform the relevant computations on small, simple problems. They will be able to describe the algorithms well enough that they could program simple versions of them, and will have a basic knowledge of the computational strengths and weaknesses of the algorithms covered.

- Dynamic Programming
- Finite-Horizon Problems
- Infinite-Horizon Problems
- Uncertain Stopping Times
- Value and Policy Iteration
- Numerical Techniques
- Applications

- Discrete Transforms
- z-Transforms
- Discrete Cosine Transform
- Fast Fourier Transform (FFT) (including convolutions)
- Shannon-Nyquist Theorem, including Gibbs Phenomenon
- Discrete Wavelet Transforms

- Advanced Algorithms
- Compressed Sensing
- Heuristics, Branch and Bound

- Conditioning and Stability
- Conditioning
- Forward Stability
- Backward Stability

### Textbooks

Possible textbooks for this course include (but are not limited to):