Programming: Everyday Decision-Making Algorithms

Kühne Logistics University - Winter 2025

Author

Dr. Tobias Vlćek and Dr. Nils Roemer

Course Description

This course explores the intersection of computer science and everyday life by examining how algorithms can be applied to improve decision-making in various contexts. Based on the book “Algorithms to Live By” by Brian Christian and Tom Griffiths, the course will cover topics such as optimal stopping, scheduling, caching, and game theory, providing both theoretical foundations and practical programming exercises. The course consists of lectures and exercises.

Learning Outcomes

Our broad goal is to equip students with the ability to get to grips with algorithmic thinking. We want to enable students, to indepently apply methods and concepts from algorithms to solve their everyday practical problems while also providing a brief introduction into programming with python.

Upon completion of the course, students will:

  • understand fundamental algorithms and their applications to everyday problems
  • develop the ability to model real-world scenarios using algorithmic thinking
  • implement simple algorithms in python to solve practical problems
  • analyze the efficiency and effectiveness of different algorithms in various contexts

Please note that this course is specifically designed for business students. That is, it is not required to have any advanced knowledge or experience in programming to attend this course. The teaching format will make it possible to account for different levels of programming skills such that every student can take the most out of the course.

Course Structure

The course is based on a hands-on approach with a two-fold structure:

  1. Lectures: In the lectures, we will introduce and discuss concepts and illustrate them in reproducible examples.
  2. Hands-on Tutorials: Students will apply the concepts from the lecture in jupyter notebooks, while simultaneously learning the basics of python.

The course is not graded and can only be passed/failed. The evaluation of the course will be based on the following components:

  1. Attendence: Students are expected to attend at least 75% of the lectures.
  2. Assignments: Students will have to hand in the assignments from 2 out of the 5 tutorials in this course. All are due by the end of the quarter, but earlier submissions of the assignments are highly encouraged. At least 50% of the solutions of the assignment must be correct.
  3. Presentation: Students will give a short presentation in groups of up to 3 students on an implemented prototype of a programm in the last lecture which are then discussed in class.

You can find more information on the course contents in the syllabus.

How to see the slides

  • This course is based on Quarto
  • It uses revealjs to render the slides
  • You find the slides for each lecture in the corresponding lecture
  • To see the slides, click on RevealJS in the top right corner

AI Policy

Course chatbot. A course chatbot is available on this website for exploratory study. It is designed to guide your problem-solving process rather than hand out answers: expect hints and questions back, not finished solutions. It runs on EU-hosted infrastructure (Mistral models, servers in Germany), and your conversations are not used to train models. Details are on the privacy page.

External AI tools. You may use external AI tools (e.g., ChatGPT, Claude, Mistral, Gemini). You are responsible for every line of code and every sentence you hand in: understand what the AI produced before you rely on it. Letting AI solve your tasks for you weakens exactly the skills this course exists to build, and running code you do not understand can introduce errors and security risks.

Disclosure. Every submission that used AI says so, in one honest line: what the tool was used for, in your own words (for example: “Used AI to explain the error message and to draft the plotting code, reworked by me.”). This is not about catching anyone out; being able to say clearly what a tool did for you is part of using it well.

Exam. In the examination itself, AI tools are not permitted unless your examination regulations or the exam instructions explicitly say otherwise.

Questions

If you have any questions regarding the course, please contact me under vlcek@beyondsimulations.com.