Semester: 5, 2025 Form of Examination: Regular grading
Name: Dr. Tobias Vlćek Email: vlcek@beyondsimulations.com
You can find the lecture dates in your myKLU calendar.
This module is assessed through a combination of:
-
Assignments (60%): Each assignment requires students to implement an algorithm for a specific decision problem, evaluate it using provided datasets, and present a comprehensive analysis. This analysis must include:
- Description of the algorithm and its implementation details
- Performance results covering both computational efficiency and solution quality
- Critical evaluation of limitations
- Recommendations for potential improvements
-
Final Presentation with Project (40%): Based on a self-chosen project in the field of management science. Students must present their technical results to a non-technical audience, with fellow students and the lecturer acting as managers. The goal is to communicate complex technical findings in an accessible way that convinces this management audience to support the proposed project.
Bonus Points: Students may earn bonus points by undertaking additional work beyond the core requirements. All bonus work must be pre-approved by the lecturer before submission.
Important: Specific assignments, presentation guidelines, and all submission deadlines will be announced during the course. Class time will be allocated for students to begin working on assignments and receive direct support from the lecturer.
Management Science (MS) is an interdisciplinary field that applies scientific methods to organizational problem-solving and decision-making. By leveraging mathematical modeling, statistics, and numerical algorithms, management science helps businesses achieve their strategic goals effectively.
This module equips students with the practical skills to solve complex decision-making problems through algorithmic approaches. Students will learn to implement algorithms, handle large-scale datasets, and address real-world business challenges. The module builds directly on knowledge gained in "Programming with Python," applying those skills to management science problems.
Upon completion of the course, students will:
- Master key combinatorial optimization problems and understand their business applications
- Design, implement, and run algorithms for solving optimization problems with large-scale datasets
- Develop heuristic and metaheuristic approaches for complex real-world problems
- Present findings to non-technical audiences, translating complex solutions into relevant insights
- Apply Python programming skills to practical management science challenges
- Bridge technical implementation with strategic decision-making
This hands-on module emphasizes practical implementation and real-world application, preparing students to tackle challenging optimization problems in their future careers.
Students must have successfully completed the "Programming with Python" module and possess a solid foundation in Python programming. Required competencies include:
- Writing and executing Python programs independently
- Working with variables, objects, and functions
- Implementing control structures including conditionals (if/else) and loops (for/while)
- Manipulating lists through operations such as sorting, filtering, and comprehension
- Managing data input/output through file reading and writing
- Processing strings using common operations (splitting, trimming, formatting)
Note: Students who lack confidence in these areas are encouraged to review their Python fundamentals before beginning this module, as the coursework assumes proficiency in these core programming concepts.
This course uses Python 3 as our primary programming language. To ensure everyone has a consistent development environment, we'll walk through the setup process together during our first session.
What You Need to Bring: Please bring your laptop to class. We'll guide you through the installation process step-by-step, regardless of whether you're using Windows, Mac, or Linux.
This foundational module provides a comprehensive introduction to mathematical optimization through the lens of Python programming. Students will develop proficiency in both computational thinking and mathematical modeling through hands-on experience.
In the second part, we will cover optimization based on different modeling concepts and meta-heuristics. We will start with the classic transport problem and vehicle routing problems and will continue to more advanced topics later.
In the third part of the course, student teams undertake a self-selected project addressing a real-world management science challenge. At the end, each team presents their findings in a simulated boardroom environment, where fellow students and the instructor assume the roles of senior management.
Note: The concrete topics and the number of assignments are tentative and subject to change depending on students' capabilities, needs, and interests. The planned schedule for each individual session will be provided at the start of the semester.
-
Zingaro, D. (2024). Algorithmic thinking, 2nd edition: Unlock your programming potential. No Starch Press.
-
Downey, A. B. (2024). Think Python: How to think like a computer scientist (Third edition). O'Reilly.
-
Downey, A. B. (2023). Modeling and Simulation in Python. No Starch Press. Available online: https://allendowney.github.io/ModSimPy/
-
Advent of Code: A wonderful website with daily challenges during Christmastime. Highly recommended to improve your skills playfully.
-
Codewars: A platform to strengthen your coding skills by solving challenges. You can compete with others, see how others solved the challenges, and learn from their code.
-
Tiny Python Projects: Interesting and fun projects to program to strengthen your programming skills.
Guidelines to be provided during the course
Information to be provided during the course