Algorithm Engineering
This course presents techniques and methodologies for Algorithm Engineering. Students will learn best practices for developing efficient algorithms and easy- to-use, well-tested, and high-performance implementations of algorithms for real world use. Practical algorithm concerns include maintaining numerical precision, optimizing for realistic rather than worst case inputs, cache efficient computing for processing big data, analysis of parallel and GPU algorithms, predicting the results of design choices and running experiments to verify those choices. The course includes lectures, hands-on labs exploring each aspect, reading assignments and discussions, and a course project providing the opportunity to gain hands-on experience with algorithm engineering techniques. PREREQUISITES: CSCI 3110 with a grade of C or better.
Sources
- Course catalogue ↗2026-2027