The course applies machine learning techniques to identify user needs, draw requirements, design, and evaluate user-adaptive systems. It also aims to introduce common techniques for user modelling and adaptation and apply them in practical recommender systems. Students will be presented with similarity metrics that can be applied in different contexts. Also, the course will show how a generated user model can be used in systems to adapt individual users or to groups of users. Generated user models can be used for adapting hypermedia systems based to users’ interests, needs preferences etc.