Difference between revisions of "Cognitive Robotics"
(→Teacher Slides) |
|||
(28 intermediate revisions by the same user not shown) | |||
Line 2: | Line 2: | ||
The following are last minute news you should be aware of ;-) | The following are last minute news you should be aware of ;-) | ||
+ | |||
+ | 11/06/2019: Update version of slides on neural networks and convolutional neural networks | ||
+ | 02/04/1029: Updated calendar with behavious based architectures lectures | ||
+ | 03/03/1029: Change in schedule for the course and updated calendar with Bonarini's lectures | ||
+ | 26/02/2019: Here it comes a new edition of the course!!! | ||
+ | <!-- | ||
+ | 08/08/2018: [[Media:Grades_20180710.pdf|Here]] you find the grades from the July calls. They already include the project/seminar for students who have presented already | ||
+ | 07/07/2018: [[Media:Grades_20180621.pdf|Here]] you find the grades from the first call ... they do not include the project/seminar | ||
29/05/2018: Updated slides | 29/05/2018: Updated slides | ||
29/05/2018: Schedule updated | 29/05/2018: Schedule updated | ||
Line 10: | Line 18: | ||
27/02/2018: Course starts today! | 27/02/2018: Course starts today! | ||
− | |||
31/08/2017: Confirmed the date and room for the course presentations -> 14/09/2017 from 9:30 in V.S8-B | 31/08/2017: Confirmed the date and room for the course presentations -> 14/09/2017 from 9:30 in V.S8-B | ||
25/07/2017: You can find here the [[Media:Grades_20170725.pdf|grades of the 25/07/2017 call]] blank scores are for missing projects (which can count up to 7). | 25/07/2017: You can find here the [[Media:Grades_20170725.pdf|grades of the 25/07/2017 call]] blank scores are for missing projects (which can count up to 7). | ||
Line 43: | Line 50: | ||
===Course Program and Teaching Material=== | ===Course Program and Teaching Material=== | ||
− | The course comprises theoretical lectures (30h | + | The course comprises theoretical lectures (30h) and practical sessions (20h): |
*Cognitive Robotics introduction | *Cognitive Robotics introduction | ||
Line 55: | Line 62: | ||
*Human-Robot interaction | *Human-Robot interaction | ||
**Non verbal human robot interaction | **Non verbal human robot interaction | ||
− | |||
<!-- | <!-- | ||
Line 83: | Line 89: | ||
Note: Lecture timetable interpretation | Note: Lecture timetable interpretation | ||
− | * On | + | * On Thursday, in V.S7-A, starts at 08:15, ends at 10:15 |
* On Friday, in V.S7-A, starts at 10:15, ends at 13:15 | * On Friday, in V.S7-A, starts at 10:15, ends at 13:15 | ||
+ | {| border="1" align="center" style="text-align:center;" | ||
+ | |- | ||
+ | |Date || Day || Time || Room || Teacher || Topic | ||
+ | |- | ||
+ | |26/02/2019 || Tuesday || 08:15 - 10:15 || V.S7-A || Matteo Matteucci || Course Introduction, Robotics and Cognitive Robotics | ||
+ | |- | ||
+ | |01/03/2019 || Friday || 10:15 - 13:15 || --- || --- || -- No Lecture -- | ||
+ | |- | ||
+ | |07/03/2019 || Thursday || 08:15 - 10:15 || V.S7-A || Matteo Matteucci || Cognitive architectures: Deliberative vs Reactive | ||
+ | |- | ||
+ | |08/03/2019 || Friday || 10:15 - 13:15 || V.S7-A || Matteo Matteucci || Cognitive architectures: Deliberative vs Reactive | ||
+ | |- | ||
+ | |14/03/2019 || Thursday || 08:15 - 10:15 || V.S7-A || Matteo Matteucci || Deliberative architectures and Planning | ||
+ | |- | ||
+ | |15/03/2019 || Friday || 10:15 - 13:15 || V.S7-A || Matteo Matteucci || Deliberative architectures and Planning | ||
+ | |- | ||
+ | |21/03/2019 || Thursday || 08:15 - 10:15 || V.S7-A || Andrea Bonarini || Human-Robot (non-verbal) Interaction | ||
+ | |- | ||
+ | |22/03/2019 || Friday || 10:15 - 13:15 || V.S7-A || Andrea Bonarini || Human-Robot (non-verbal) Interaction | ||
+ | |- | ||
+ | |28/03/2019 || Thursday || 08:15 - 10:15 || V.S7-A || Andrea Bonarini || Human-Robot (non-verbal) Interaction | ||
+ | |- | ||
+ | |29/03/2019 || Friday || 10:15 - 13:15 || V.S7-A || Andrea Bonarini || Human-Robot (non-verbal) Interaction | ||
+ | |- | ||
+ | |04/04/2019 || Thursday || 08:15 - 10:15 || V.S7-A || Matteo Matteucci || Behaviour based architectures | ||
+ | |- | ||
+ | |05/04/2019 || Friday || 10:15 - 13:15 || V.S7-A || Matteo Matteucci || Behaviour based architectures | ||
+ | |- | ||
+ | |11/04/2019 || Thursday || 08:15 - 10:15 || V.S7-A ||Simone Mentasti || Robot Operating System | ||
+ | |- | ||
+ | |12/04/2019 || Friday || 10:15 - 13:15 || V.S7-A || Simone Mentasti || Robot Operating System | ||
+ | |- | ||
+ | |18/04/2019 || Thursday || 08:15 - 10:15 || --- || --- || -- No Lecture -- | ||
+ | |- | ||
+ | |19/04/2019 || Friday || 10:15 - 13:15 || --- || --- || -- No Lecture -- | ||
+ | |- | ||
+ | |25/04/2019 || Thursday || 08:15 - 10:15 || --- || --- || -- No Lecture -- | ||
+ | |- | ||
+ | |26/04/2019 || Friday || 10:15 - 13:15 || --- || --- || -- No Lecture -- | ||
+ | |- | ||
+ | |02/04/2019 || Thursday || 08:15 - 10:15 || V.S7-A || Simone Mentasti || Project work | ||
+ | |- | ||
+ | |03/05/2019 || Friday || 10:15 - 13:15 || V.S7-A || Matteo Matteucci || Neural Networks | ||
+ | |- | ||
+ | |09/05/2019 || Thursday || 08:15 - 10:15 || V.S7-A || Simone Mentasti || Project work | ||
+ | |- | ||
+ | |10/05/2019 || Friday || 10:15 - 13:15 || V.S7-A || Matteo Matteucci || Neural Networks | ||
+ | |- | ||
+ | |16/05/2019 || Thursday || 08:15 - 10:15 || V.S7-A || Simone Mentasti || Project work | ||
+ | |- | ||
+ | |17/05/2019 || Friday || 10:15 - 13:15 || V.S7-A || Matteo Matteucci || Neural Networks | ||
+ | |- | ||
+ | |23/05/2019 || Thursday || 08:15 - 10:15 || V.S7-A || Simone Mentasti || Project work | ||
+ | |- | ||
+ | |24/05/2019 || Friday || 10:15 - 13:15 || --- || --- || -- No Lecture -- | ||
+ | |- | ||
+ | |30/05/2019 || Thursday || 08:15 - 10:15 || V.S7-A || Simone Mentasti || Project Work | ||
+ | |- | ||
+ | |31/05/2019 || Friday || 10:15 - 13:15 || V.S7-A || Matteo Matteucci || Neural Networks | ||
+ | |- | ||
+ | |06/06/2019 || Thursday || 08:15 - 10:15 || --- || --- || -- No Lecture -- | ||
+ | |- | ||
+ | |07/06/2019 || Friday || 10:15 - 13:15 || V.S7-A || Matteo Matteucci|| Neural Network | ||
+ | |- | ||
+ | |} | ||
+ | |||
+ | <!-- | ||
{| border="1" align="center" style="text-align:center;" | {| border="1" align="center" style="text-align:center;" | ||
|- | |- | ||
Line 150: | Line 223: | ||
|} | |} | ||
− | |||
− | |||
|21/03/2017 || Tuesday || 08:15 - 10:15 || -- || -- || -- No Lecture -- | |21/03/2017 || Tuesday || 08:15 - 10:15 || -- || -- || -- No Lecture -- | ||
|- | |- | ||
Line 219: | Line 290: | ||
The course grading is split in a standard written exam and a seminar activity (to be done before the end of the course): | The course grading is split in a standard written exam and a seminar activity (to be done before the end of the course): | ||
* Written examination covering the whole program (including seminars) up to 27/32 | * Written examination covering the whole program (including seminars) up to 27/32 | ||
− | * Seminar on | + | * Seminar on one of the topics of the course graded up to 5/32 |
* Final score will be the sum of the two grades up to 32/32 | * Final score will be the sum of the two grades up to 32/32 | ||
Line 238: | Line 309: | ||
* [[Media:CognitiveRobotics_02_Planning_2018.pdf|[2017/2018] Planning Definitions and Algorithms]]: Definition of planning, state and action representation, linear vs. non linear planning, GPS and Prodigy. The Planning Domain Definition Language rationale and syntax with examples. | * [[Media:CognitiveRobotics_02_Planning_2018.pdf|[2017/2018] Planning Definitions and Algorithms]]: Definition of planning, state and action representation, linear vs. non linear planning, GPS and Prodigy. The Planning Domain Definition Language rationale and syntax with examples. | ||
* [[Media:CognitiveRobotics_03_Behaviors_2018.pdf|[2017/2018] Behavior Based Robotics]]: Introduction to behavior based robotics and the Subsumption Architecture with examples. Hybrid approaches. | * [[Media:CognitiveRobotics_03_Behaviors_2018.pdf|[2017/2018] Behavior Based Robotics]]: Introduction to behavior based robotics and the Subsumption Architecture with examples. Hybrid approaches. | ||
− | * [[Media:CognitiveRobotics_04_Neural | + | * [[Media:CognitiveRobotics_04_Neural Networks_2019_v2.pdf|[2018/2019] Neural Networks]]: 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) |
+ | * [[Media:CognitiveRobotics_05_IntroDeepLearnig_2019.pdf|[2018/2019] Introduction to Deep Learning]]: Introduction to Deep Learning and difference with respect to the classical approach in machine learning | ||
+ | * [[Media:CognitiveRobotics_06_ConvolutionalNeuralNetworks_2019_v2.pdf|[2018/2019] Convolutional Neural Networks]]: Convolutional neural networks introduction and basic architectures | ||
<!-- | <!-- | ||
Line 263: | Line 336: | ||
* [[Media:HRINoNL6DesigningInteraction_2017.pdf | [2016/2017] Design of interaction]]: Introduction to Design of Interaction principles and methods | * [[Media:HRINoNL6DesigningInteraction_2017.pdf | [2016/2017] Design of interaction]]: Introduction to Design of Interaction principles and methods | ||
* [[Media:HRINoNL7ToysAndGames_2017.pdf | [2016/2017] Toys and Games]]: Applications of Human Robot interaction to Toys and Games | * [[Media:HRINoNL7ToysAndGames_2017.pdf | [2016/2017] Toys and Games]]: Applications of Human Robot interaction to Toys and Games | ||
+ | |||
+ | Here the slides about ROS and gazebo: | ||
+ | |||
+ | * [[Media:Robotics_01_2018_Introduction.pdf| [2017/2018] Gazebosim and SDL]] | ||
+ | * [[Media:Robotics_02ex_2018_GazeboPlugins.pdf| [2017/2018] Model details]] | ||
+ | * [[Media:Robotics_03ex_2018_Middleware.pdf | [2017/2018] Robotics middlewares]] | ||
+ | * [[Media:L4.pdf| [2017/2018] ROS Commands]] | ||
+ | * [[Media:L5.pdf| [2017/2018] ROS Development]] | ||
+ | * [[Media:L6.pdf| [2017/2018] ROS - Gazebo Interaction]] | ||
+ | * [[Media:L7.pdf| [2017/2018] BAGs and TF]] | ||
+ | * [[Media:L8.pdf| [2017/2018] Robot Navigation]] | ||
+ | |||
<!-- | <!-- | ||
Line 274: | Line 359: | ||
--> | --> | ||
− | ===Books | + | ===Books, Papers, and Media=== |
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. | 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. | ||
Line 281: | Line 366: | ||
* Valentino Braitenberg. "[[Media:Vehicles.pdf|Vehicles: Experiments in synthetic psychology]]". Cambridge, MA: MIT Press, 1984. | * Valentino Braitenberg. "[[Media:Vehicles.pdf|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. [http://www.sciencedirect.com/science/article/pii/S0921889005800259] | * Rodney A. Brooks. "Elephants don't play chess", Robotics and Autonomous Systems, Volume 6, Issues 1–2, June 1990, Pages 3-15. [http://www.sciencedirect.com/science/article/pii/S0921889005800259] | ||
− | + | * Some interesting videos on feed forward neural networks and backpropagation by [http://www.3blue1brown.com/|3Blue1Brown]: | |
+ | ** Chapter 1: [https://www.youtube.com/watch?v=aircAruvnKk&t=2s&list=PLZHQObOWTQDNU6R1_67000Dx_ZCJB-3pi&index=2| But what is a Neural Network?] | ||
+ | ** Chapter 2: [https://www.youtube.com/watch?v=IHZwWFHWa-w&list=PLZHQObOWTQDNU6R1_67000Dx_ZCJB-3pi&index=2| Gradient descent, how neural networks learn] | ||
+ | ** Chapter 3: [https://www.youtube.com/watch?v=Ilg3gGewQ5U&index=3&list=PLZHQObOWTQDNU6R1_67000Dx_ZCJB-3pi| What is backpropagation really doing?] | ||
+ | ** Chapter 4: [https://www.youtube.com/watch?v=tIeHLnjs5U8&list=PLZHQObOWTQDNU6R1_67000Dx_ZCJB-3pi&index=4| Backpropagation calculus] | ||
==Exam Samples and Results== | ==Exam Samples and Results== | ||
Line 287: | Line 376: | ||
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: | 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: | ||
+ | * [[Media:CognitiveRobotics20180830.pdf| 30/08/2018]] | ||
+ | * [[Media:CognitiveRobotics20180710.pdf| 10/07/2018]] | ||
+ | * [[Media:CognitiveRobotics20180621.pdf| 21/06/2018]] | ||
* [[Media:CognitiveRobotics20180209.pdf| 09/02/2018]] | * [[Media:CognitiveRobotics20180209.pdf| 09/02/2018]] | ||
* [[Media:CognitiveRobotics20180119.pdf| 19/01/2018]] | * [[Media:CognitiveRobotics20180119.pdf| 19/01/2018]] |
Latest revision as of 23:05, 10 June 2019
The following are last minute news you should be aware of ;-)
11/06/2019: Update version of slides on neural networks and convolutional neural networks 02/04/1029: Updated calendar with behavious based architectures lectures 03/03/1029: Change in schedule for the course and updated calendar with Bonarini's lectures 26/02/2019: Here it comes a new edition of the course!!!
Contents
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.
Teachers
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
- Andrea Bonarini
- Simone Mentasti
Course Program and Teaching Material
The course comprises theoretical lectures (30h) and practical sessions (20h):
- 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
- Non verbal human robot interaction
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 Thursday, in V.S7-A, starts at 08:15, ends at 10:15 * On Friday, in V.S7-A, starts at 10:15, ends at 13:15
Date | Day | Time | Room | Teacher | Topic |
26/02/2019 | Tuesday | 08:15 - 10:15 | V.S7-A | Matteo Matteucci | Course Introduction, Robotics and Cognitive Robotics |
01/03/2019 | Friday | 10:15 - 13:15 | --- | --- | -- No Lecture -- |
07/03/2019 | Thursday | 08:15 - 10:15 | V.S7-A | Matteo Matteucci | Cognitive architectures: Deliberative vs Reactive |
08/03/2019 | Friday | 10:15 - 13:15 | V.S7-A | Matteo Matteucci | Cognitive architectures: Deliberative vs Reactive |
14/03/2019 | Thursday | 08:15 - 10:15 | V.S7-A | Matteo Matteucci | Deliberative architectures and Planning |
15/03/2019 | Friday | 10:15 - 13:15 | V.S7-A | Matteo Matteucci | Deliberative architectures and Planning |
21/03/2019 | Thursday | 08:15 - 10:15 | V.S7-A | Andrea Bonarini | Human-Robot (non-verbal) Interaction |
22/03/2019 | Friday | 10:15 - 13:15 | V.S7-A | Andrea Bonarini | Human-Robot (non-verbal) Interaction |
28/03/2019 | Thursday | 08:15 - 10:15 | V.S7-A | Andrea Bonarini | Human-Robot (non-verbal) Interaction |
29/03/2019 | Friday | 10:15 - 13:15 | V.S7-A | Andrea Bonarini | Human-Robot (non-verbal) Interaction |
04/04/2019 | Thursday | 08:15 - 10:15 | V.S7-A | Matteo Matteucci | Behaviour based architectures |
05/04/2019 | Friday | 10:15 - 13:15 | V.S7-A | Matteo Matteucci | Behaviour based architectures |
11/04/2019 | Thursday | 08:15 - 10:15 | V.S7-A | Simone Mentasti | Robot Operating System |
12/04/2019 | Friday | 10:15 - 13:15 | V.S7-A | Simone Mentasti | Robot Operating System |
18/04/2019 | Thursday | 08:15 - 10:15 | --- | --- | -- No Lecture -- |
19/04/2019 | Friday | 10:15 - 13:15 | --- | --- | -- No Lecture -- |
25/04/2019 | Thursday | 08:15 - 10:15 | --- | --- | -- No Lecture -- |
26/04/2019 | Friday | 10:15 - 13:15 | --- | --- | -- No Lecture -- |
02/04/2019 | Thursday | 08:15 - 10:15 | V.S7-A | Simone Mentasti | Project work |
03/05/2019 | Friday | 10:15 - 13:15 | V.S7-A | Matteo Matteucci | Neural Networks |
09/05/2019 | Thursday | 08:15 - 10:15 | V.S7-A | Simone Mentasti | Project work |
10/05/2019 | Friday | 10:15 - 13:15 | V.S7-A | Matteo Matteucci | Neural Networks |
16/05/2019 | Thursday | 08:15 - 10:15 | V.S7-A | Simone Mentasti | Project work |
17/05/2019 | Friday | 10:15 - 13:15 | V.S7-A | Matteo Matteucci | Neural Networks |
23/05/2019 | Thursday | 08:15 - 10:15 | V.S7-A | Simone Mentasti | Project work |
24/05/2019 | Friday | 10:15 - 13:15 | --- | --- | -- No Lecture -- |
30/05/2019 | Thursday | 08:15 - 10:15 | V.S7-A | Simone Mentasti | Project Work |
31/05/2019 | Friday | 10:15 - 13:15 | V.S7-A | Matteo Matteucci | Neural Networks |
06/06/2019 | Thursday | 08:15 - 10:15 | --- | --- | -- No Lecture -- |
07/06/2019 | Friday | 10:15 - 13:15 | V.S7-A | Matteo Matteucci | Neural Network |
Course Evaluation
The course grading is split in a standard written exam and a seminar activity (to be done before the end of the course):
- Written examination covering the whole program (including seminars) up to 27/32
- Seminar on one of the topics of the course graded up to 5/32
- Final score will be the sum of the two grades up to 32/32
Possible seminar topics will be presented later during the semester. A practical activity, to be discussed with the teacher, can substitute the seminar.
Teaching Material
The course material comprises slides from the teachers and scientific literature, both provided in the following.
Teacher Slides
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:
- [2017/2018] Cognitive Robotics Introduction: Course introduction and introduction to Robotics, Cognitive Robotics definition.
- [2017/2018] Cognitive Robotics Architectures: Cognitive architectures: deliberative vs reactive approaches.
- [2017/2018] Planning Definitions and Algorithms: Definition of planning, state and action representation, linear vs. non linear planning, GPS and Prodigy. The Planning Domain Definition Language rationale and syntax with examples.
- [2017/2018] Behavior Based Robotics: Introduction to behavior based robotics and the Subsumption Architecture with examples. Hybrid approaches.
- [2018/2019] Neural Networks: 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)
- [2018/2019] Introduction to Deep Learning: Introduction to Deep Learning and difference with respect to the classical approach in machine learning
- [2018/2019] Convolutional Neural Networks: Convolutional neural networks introduction and basic architectures
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
Here the slides about ROS and gazebo:
- [2017/2018] Gazebosim and SDL
- [2017/2018] Model details
- [2017/2018] Robotics middlewares
- [2017/2018] ROS Commands
- [2017/2018] ROS Development
- [2017/2018] ROS - Gazebo Interaction
- [2017/2018] BAGs and TF
- [2017/2018] Robot Navigation
Books, Papers, and Media
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. [1]
- 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. [2]
- Some interesting videos on feed forward neural networks and backpropagation by [3]:
- Chapter 1: But what is a Neural Network?
- Chapter 2: Gradient descent, how neural networks learn
- Chapter 3: What is backpropagation really doing?
- Chapter 4: Backpropagation calculus
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: