The following are last minute news you should be aware of ;-)
06/07/2017: Added past exam text 23/06/2017: Added slides on Convolution Aritmetics 20/06/2017: Added all slides on Deep Learnig and updated Behavior-based slides with hybrid architectures 12/06/2017: Added slides on Non verbal HRI, Feed Forward Neural Networks, and Deep learning 11/04/2017: Added slides on Behavior Based Robotics 11/04/2017: Added days for the lectures on Natural Language Processing 31/03/2017: Added slides on PDDL 31/03/2017: Swap of lectures between Bonarini and Matteucci on 19/5 and 26/5 27/03/2017: Added slides on Planning 19/03/2017: Added first classes pdf slides and some reference material (links and pdf) 07/03/2017: Course starts today!
Course Aim & Organization
This course addresses the methodological aspects of Cognitive Robotics. Cognitive Robotics is about endowing robots and embodied agents with intelligent behaviour by designing and deploying a processing architecture making them apt to deliberate, learn, and reason about how to behave in response to complex goals in a complex world. Perception and action, and how to model them in neural and symbolic representations are therefore the core issues to address. Inspiring models of Cognitive Robotics arise from different disciplines: the neural architectures from neuroscience, the basic behaviours from ethology, motivations and emotions from psychology, the multirobot behaviour from sociology. Those models could be implemented in terms of formal logic, probabilistic, and neural models turning into embodied computational agents.
The course is composed by a blending of theory and practice lectures from the course teacher and the teaching assistants (in order of appearance):
- Matteo Matteucci: the teacher
- Roberto Basili
- Andrea Bonarini
- Marco Ciccone
Course Program and Teaching Material
The course comprises theoretical lectures (30h regarding 1-3) and practical sessions (20h regarding 4-5):
- Cognitive Robotics introduction
- Cognition and the sense-plan-act architecture
- Deliberative, reactive, and hybrid approaches
- Deliberative systems for cognitive robots
- Symbolic planning and PDDL
- Bioinspired controllers for autonomous robots
- Behavior based architectures
- Neural networks and learning
- Human-Robot interaction
- Natural language processing
- Non verbal human robot interaction
- (Deep) learning for vision/nlp/control …
Detailed course schedule
A detailed schedule of the course can be found here; topics are just indicative while days and teachers are correct up to some last minute change (they will be notified to you by email).
Note: Lecture timetable interpretation * On Tuesday, in V.S8-A, starts at 08:15, ends at 10:15 * On Friday, in V.S8-A, starts at 10:15, ends at 13:15
|07/03/2017||Tuesday||08:15 - 10:15||V.S8-A||Matteo Matteucci||Course Introduction, Robotics and Cognitive Robotics|
|10/03/2017||Friday||10:15 - 13:15||--||--||-- No Lecture --|
|14/03/2017||Tuesday||08:15 - 10:15||--||--||-- No Lecture --|
|17/03/2017||Friday||10:15 - 13:15||V.S8-A||Matteo Matteucci||Cognitive architectures: Deliberative vs Reactive|
|21/03/2017||Tuesday||08:15 - 10:15||--||--||-- No Lecture --|
|24/03/2017||Friday||10:15 - 13:15||--||--||-- No Lecture --|
|28/03/2017||Tuesday||08:15 - 10:15||V.S8-A||Matteo Matteucci||Deliberative Models: Planning Introduction|
|31/03/2017||Friday||10:15 - 13:15||V.S8-A||Matteo Matteucci||Deliberative Models: Planning with GPS and Prodigy|
|04/04/2017||Tuesday||08:15 - 10:15||V.S8-A||Matteo Matteucci||Deliberative Models: Planning Examples|
|07/04/2017||Friday||10:15 - 13:15||V.S8-A||Matteo Matteucci||Deliberative Models: PDDL with Examples|
|11/04/2017||Tuesday||08:15 - 10:15||V.S8-A||Matteo Matteucci||Reactive Models: Behavior Based Robotics|
|14/04/2017||Friday||10:15 - 13:15||--||--||-- No Lecture --|
|18/04/2017||Tuesday||08:15 - 10:15||--||--||-- No Lecture --|
|21/04/2017||Friday||10:15 - 13:15||V.S8-A||Matteo Matteucci||Reactive Models: Subsumption Architecture|
|25/04/2017||Tuesday||08:15 - 10:15||--||--||-- No Lecture --|
|28/04/2017||Friday||10:15 - 13:15||--||--||-- No Lecture (suspension) --|
|04/05/2017||Thursday||15:00 - 18:00||V.08||Roberto Basili||Natural Language Processing|
|05/05/2017||Friday||09:30 - 12:30||V.08||Roberto Basili||Natural Language Processing|
|05/05/2017||Friday||13:30 - 15:30||V.08||Roberto Basili||Natural Language Processing|
|09/05/2017||Tuesday||08:15 - 10:15||V.S8-A||Andrea Bonarini||Non verbal human-robot interaction|
|12/05/2017||Friday||10:15 - 13:15||V.S8-A||Andrea Bonarini||Non verbal human-robot interaction|
|16/05/2017||Tuesday||08:15 - 10:15||V.S8-A||Andrea Bonarini||Non verbal human-robot interaction|
|19/05/2017||Friday||10:15 - 13:15||V.S8-A||Matteo Matteucci||Neural Models|
|23/05/2017||Tuesday||08:15 - 10:15||V.S8-A||Matteo Matteucci||Neural Models|
|26/05/2017||Friday||10:15 - 13:15||V.S8-A||Andrea Bonarini||Non verbal human-robot interaction|
|30/05/2017||Tuesday||08:15 - 10:15||V.S8-A||Matteo Matteucci||Neural Models|
|02/06/2017||Friday||10:15 - 13:15||--||--||-- No Lecture --|
|06/06/2017||Tuesday||08:15 - 10:15||V.S8-A||Marco Ciccone||(Deep) Learning Approaches|
|09/06/2017||Friday||10:15 - 13:15||V.S8-A||Marco Ciccone||(Deep) Learning Approaches|
|13/06/2017||Tuesday||08:15 - 10:15||V.S8-A||Marco Ciccone||(Deep) Learning Approaches|
|16/06/2017||Friday||10:15 - 13:15||V.S8-A||Marco Ciccone||(Deep) Learning Approaches|
|20/06/2017||Tuesday||08:15 - 10:15||--||--||-- No Lecture --|
|23/06/2017||Friday||10:15 - 13:15||V.S8-A||Matteo Matteucci||Student presentation|
|??/07/2017||TBD||TBD||TBD||Matteo Matteucci||Students presentation|
|??/09/2017||TBD||TBD||TBD||Matteo Matteucci||Students presentation|
The course grading is split in a standard written exam (70% of the grade) and a practical activity (30% of the grading):
- Written examination covering the whole program up to 25/32
- Small practical project or seminar on a course topic graded up to 7/32
- Final score will be the sum of the two grades up to 32/32
Possible course projects and seminar activities will be presented later during the semester.
The course material comprises slides from the teachers and scientific literature, both provided in the following.
In the following you can find the lecture slides used by the teacher and the teaching assistants during classes.
Here the lectures about classical cognitive architectures, i.e., deliberative and reactive approaches:
- [2016/2017] Cognitive Robotics Introduction: Course introduction and introduction to Robotics.
- [2016/2017] Cognitive Robotics Architectures: Cognitive Robotics definition and cognitive architectures: deliberative vs reactive approaches.
- [2016/2017] Planning Definitions and Algorithms: Definition of planning, state and action representation, linear vs. non linear planning, GPS and Prodigy.
- [2016/2017] Planning Domain Definition Language: The Planning Domain Definition Language rationale and syntax with examples.
- [2016/2017] Behavior Based Robotics: Introduction to behavior based robotics and the Subsumption Architecture with examples.
The following are the slides on Neural Networks and Deep Learning:
- [2016/2017] From Perceptron to Feed Forward Neural Networks: Introduction to neural networks, the perceptron model, feed forward architectures, backpropagation, generalization issues (early stopping and weight decay)
- [2016/2017] Deep Learning Introduction: Recap on neural networks and machine learning, deep learning introduction with applications, deep learning and the feature learning idea.
- [2016/2017] From linear models to deep networks: Linear models, neural networks, modern activation functions, tips and tricks for Deep Learning.
- [2016/2017] Convolutional Neural Networks: Convolutional neural network for image understandig
- [2016/2017] Recurrent Neural Networks: Recurrent neural network for structured learning, Long-Short Term Memory cells.
- [2016/2017] Convolutiona Aritmentics (kindly provided by Vincent Dumoulin and Francesco Visin)
The following are the slides on Natural Language Processing for Human Robot Interaction:
- [2016/2017] NLP Linguistic Background: Introduction to Natural Language Processing and the corresponding Linguistic Background
- [2016/2017] NLP and Machine Learning: On the use of Machine Learning techniques in Natural Language Processing
- [2016/2017] SVM for NLP: Introduction on the use of SVMs for Natural Language Processing with references to software tools and practical exercises.
The following are the slides on Non Verbal Human Robot Interaction:
- [2016/2017] Intro and Design Principles: Introduction to Non Verbal Human Robot interaction and its design principles.
- [2016/2017] Sensors and Actuators: Robot sensors and actuators for Human Robot interaction
- [2016/2017] Incidental Interaction: Human Robot Incidental Interaction
- [2016/2017] Time issues: Time issues in Human Robot Interaction
- [2016/2017] Emotions: Non verbal emotion expression
- [2016/2017] Design of interaction: Introduction to Design of Interaction principles and methods
- [2016/2017] Toys and Games: Applications of Human Robot interaction to Toys and Games
In the following you can find the slides presented to the class by students as part of their evaluation.
- [23/06/2017] Multi Robot Systems: Multi Robot Systems taxonomy, architectures, and applications.
Books and Papers
For some of the following paper I provide the link to the journal website. For the most of them you can access the PDF if you are connected to the polimi network or using the polimi proxy.
- Simon Russell, Peter Norvig. "Artificial Intelligence: A Modern Approach". Chapter 11: Planning, pages 375-416.Pearson, 2010. 
- Valentino Braitenberg. "Vehicles: Experiments in synthetic psychology". Cambridge, MA: MIT Press, 1984.
- Rodney A. Brooks. "Elephants don't play chess", Robotics and Autonomous Systems, Volume 6, Issues 1–2, June 1990, Pages 3-15. 
Exam Samples and Results
The following are few past exams, do not make any assumption on the topics you should prepare and about the level of details of the questions from these texts, they are not a statistically significan sample from the possible exams texts: