30768 - ALGORITHMIC THINKING: FOUNDATIONS OF PROBLEM SOLVING
Department of Computing Sciences
Course taught in English
JAROSLAW BLASIOK
Suggested background knowledge
Mission & Content Summary
MISSION
CONTENT SUMMARY
- Solving problems using Discrete math and probability techniques
- Randomness: an unexpected computational resource
- Noise is your friend: processing private data and planning for unknown future
- Big data processing: can a single machine analyze whole internet?
- Improving algorithms with Machine Learning
Intended Learning Outcomes (ILO)
KNOWLEDGE AND UNDERSTANDING
- State computational, combinatorial, and probabilistic phenomena behind classical algorithmic results
- Describe classical algorithmic techniques used to solve problem in the discussed computational models
APPLYING KNOWLEDGE AND UNDERSTANDING
- Translate real-world problems into formal representations that can be addressed using algorithmic techniques.
- Apply classical algorithmic techniques to solve algorithmic problems
- Implement algorithms in Python with the help of AI
Teaching methods
- Lectures
- Individual works / Assignments
DETAILS
Individual assignments: Students will use AI to implement algorithms based on course topics to solve sample algorithmic problems. Lectures will adopt a hybrid proof-and-experiment approach, where students can decide either to perform an experimental evaluation of the algorithm’s properties with the help of AI, or to follow a rigorous mathematical proof presented by the instructor.
Assessment methods
| Continuous assessment | Partial exams | General exam | |
|---|---|---|---|
|
x | ||
|
x |
ATTENDING AND NOT ATTENDING STUDENTS
Written exam (70% of the final grade) consists of open and closed answer questions aimed to assess theoretical understanding of key concepts in algorithmic theory, ability to formulate complex computational problems, ability to describe the main algorithmic techniques covered.
Individual assignments (30% of the final grade) consist of 3 programming assignments to implement algorithms and solve sample algorithmic problems.
Teaching materials
ATTENDING AND NOT ATTENDING STUDENTS
The textbooks are communicated prior to the start of the course.