Machine Learning for Product Development (ML4PD)

Duration3 SWS
TermWintersemester 2023/24
Language of instructionEnglish


The module’s goal is to provide a general understanding of different machine learning methods and their implementation for product development. Students will also study basic probability theory and apply it to different product development tasks. After participating in the module, students are able to: • understand the fundamentals of machine learning, • apply these fundamentals in a targeted manner to quickly evaluate different designs, • analyze uncertainties associated with a design, • use probabilistic models for predictive maintenance and accelerating experiments, and • apply taught methods to model generators for design suggestions.


Machine learning is intensely used in computer science, e.g., for image classification, autonomous driving, and generating new text. The impact of machine learning with its advantages and applications is well known in those domains. For engineers though, it is often difficult to grasp how machine learning methods can be exploited for developing mechanical systems and where their limitations are. This lecture will demonstrate different machine learning methods that can be used for modeling, characterizing, optimizing, and monitoring mechanical systems, and identify their limitations. Various real case scenarios are highlighted, and simplified examples will be studied in computer exercises.


Knowledge in linear algebra and fundamentals of probability theory as well as basic programming skills (preferably in MATLAB or Python).

Teaching and learning methods

In the class, theoretical foundations will be taught using lecture slides, and handwritten notes on a tablet PC are used to derive and illustrate complex derivations providing deeper insights of the fundamentals of machine learning. Mentimeter and time for questions are introduced during the lectures giving the students the opportunity to speak up, interact with the lecturer and discuss complex problems. As an outcome, students will quickly understand the fundamentals of machine learning and simultaneously gain the skill to transfer the acquired know-how to other applications. Additionally, small programming examples will be coded in front of the class, and students will be provided with exercises to get practical experience and deepen their knowledge gained from the lecture. The exercises are primarily taken from a mechanical design context so that students get familiarized with problems occurring in the product development. By discussing each exercise during the weekly office hours, students can suggest different solutions and deepen their understanding of different concepts. Ultimately, the students will see different practical implementations of the theory and gain experience in applying the various methods taught in class, which are central learning outcomes of this module.


The student’s knowledge will be examined by a graded final exercise with coding tasks at the end of the semester including a written report. The final exercise is composed of multiple smaller tasks which are similar yet more elaborate than the exercises studied during the semester. The final exercise is personalized by using different parameter values, and each student has to submit their own report summarizing the results. The module grade is weighted according to the scores of each task. Additionally, 7% of the grade is based on the format, style of presenting the results, and readability of the report. In the report, students demonstrate that they are able to (1) solve Machine Learning tasks in the context of product development, (2) clearly present their outcomes, and (3) discuss the results. The deadline for submitting the report will be announced in class. It is typically 1-2 weeks after the last lecture. All aids, e.g., lecture notes, laptops, and codes, are permitted.

Recommended literature

C. Bishop, Pattern Recognition and Machine Learning, Springer Berlin, 2006.