Difference between revisions of "Cognitive Robotics"

From Chrome
Jump to: navigation, search
(Course Program and Teaching Material)
(Teacher Slides)
 
(130 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
__FORCETOC__
 
__FORCETOC__
  
<!--The following are last minute news you should be aware of ;-)
+
The following are last minute news you should be aware of ;-)
  06/10/2011: the Soft Computing course starts today! -->
+
 +
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: Schedule updated
 +
  17/04/2018: Updated lecture schedule until the end of the semester
 +
  06/04/2018: 06/04/2018 lecture canceled due to an unexpected duty of the teacher
 +
  25/03/2018: Updated lecture schedule
 +
  11/03/2018: You can find here the [[Media:Grades_20180209.pdf|grades of the 09/02/2018 call]] 
 +
  27/02/2018: Course starts today!
  
I am the Teaching Assistant of the Cognitive Robotics course; the official site of the course is not maintained by me and it can be found [http://home.deib.polimi.it/gini/robot/lezionir2.htm here]. On this page I am publishing the material of my lectures for this class but you can find those also on the official course page.
+
  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).
 +
  22/07/2017: You can find here the [[Media:Grades_20170704.pdf|grades of the 04/07/2017 call]] blank scores are for missing projects (which can count up to 7).  
 +
  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==
 
==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.
Soft Computing includes technologies (Fuzzy Systems, Neural Networks, Stochastic Algorithms and models) to model complex systems and offers a powerful modeling tool for engineers and in general people needing to model phenomena. Among the application areas, we mention: data analysis, automatic control, modeling of artificial and natural phenomena, modeling of behaviors (e.g., of users and devices), decision support.  
+
  
The course will introduce rigorously the fundamentals of the different modeling approaches, will put in evidence the application possibilities, by comparing different models, examples and application cases, will introduce design techniques for systems based on these technologies.  
+
<!-- Implementation issues are approached and developed into an integrated middleware for robotics, to give students the experience of a quite professional way to develop and experiment robotics algorithms.-->
-->
+
  
 
===Teachers===
 
===Teachers===
  
The course is composed by a blending of lectures and exercises by the course teacher and the teaching assistant:
+
The course is composed by a blending of theory and practice lectures from the course teacher and the teaching assistants (in order of appearance):
  
* [http://www.dei.polimi.it/people/gini Giuseppina Gini]: the teacher
+
* [http://www.dei.polimi.it/people/matteucci Matteo Matteucci]: the teacher
* [http://www.dei.polimi.it/people/matteucci Matteo Matteucci]: the teaching assistant
+
* Andrea Bonarini
 +
* Simone Mentasti
  
 
===Course Program and Teaching Material===
 
===Course Program and Teaching Material===
  
The following are the lectures I am giving as Teaching Assistant of the Cognitive Robotics Course. Here you find a copy of the slide of the teaching assistant, the slides for the whole course are available [http://home.deib.polimi.it/gini/robot/lezionir2.htm here]
+
The course comprises theoretical lectures (30h) and practical sessions (20h):
  
* [[Media:CognitiveRobotics_01_PDDL.pdf | PDDL Language and Extensions]]: an introduction to the Planning Domain Description Language with some examples. You can download the [[Media:PDDL_Examples.tgz | PDDL code of the examples here]].
+
*Cognitive Robotics introduction
* [[Media:CognitiveRobotics_02_RoboticsMiddleware.pdf | Robotics Middleware]]: The idea of Middleware in Robotics plus a survey of state of the art in Robotics Middleware.
+
**Cognition and the sense-plan-act architecture
* [[Media:CognitiveRobotics_03_ROS_Introduction.pdf | ROS Introduction]]: an introduction to ROS taken from the ros tutorials of Hydro distribution. You can also download the [[Media:beginner_tutorials.tgz|sources for the examples]].
+
**Deliberative, reactive, and hybrid approaches
* [[Media:CognitiveRobotics_04_Motion_Planning.pdf | Robot Motion Planning]]: Trajectory planning (Search-based Planning Library) and trajectory following.
+
*Deliberative systems for cognitive robots
* [[Media:CognitiveRobotics_05_SLAM_with_Lasers.pdf | SLAM with Lasers]]: SLAM with lasers, EKF-SLAM, FastSLAM.
+
**Symbolic planning and PDDL
 +
*Bioinspired controllers for autonomous robots
 +
**Behavior based architectures
 +
**Neural networks and learning
 +
*Human-Robot interaction
 +
**Non verbal human robot interaction
  
 +
<!--
 +
* Deliberative systems for cognitive robots
 +
** reactive, cognitive, hybrid architectures
 +
** discrete and continuous planners: action representation and map representation
 +
** non linear planners, partial order planners, and random planners
 +
* Bioinspired controllers for autonomous robots
 +
** neural controllers and neural models of space and paths
 +
** learning mechanisms in robot and embodied agents 
 +
** deep learning architecture for action and perception
 +
* Probabilistic Robotics
 +
** localization and mapping: probabilistic models, sensor models, SLAM
 +
** action and learning: markov decision processes, POMDP, reinforcement learning
 +
* User/robot and robot/robot interaction
 +
** multisensorial interfaces: physical principles and telecontrol.
 +
** the environment as a communication medium: distributed sensing for robot/robot interaction.
 +
** interface to interact with real and virtual worlds.
 +
* Middleware and integration
 +
** the ROS (Robot Operating System) environment for robot simulation and control
 +
** robot models and sensor integration in ROS
 +
-->
  
<!-- ===Detailed course schedule===
+
===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).  
 
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
  
 
{| border="1" align="center" style="text-align:center;"
 
{| border="1" align="center" style="text-align:center;"
Line 40: Line 96:
 
|Date || Day || Time || Room || Teacher || Topic
 
|Date || Day || Time || Room || Teacher || Topic
 
|-
 
|-
|06/10/2011 || Thursday || 14:15 - 16:15 || E.G.6 || Andrea Bonarini || Introduction - Fuzzy sets
+
|26/02/2019 || Tuesday || 08:15 - 10:15 || V.S7-A || Matteo Matteucci || Course Introduction, Robotics and Cognitive Robotics
 
|-
 
|-
|10/10/2011 || Monday || 15:15 - 17:15 || S.1.3 || Matteo Matteucci || Intro to neural networks and Perceptron model
+
|01/03/2019 || Friday || 10:15 - 13:15 || --- || --- || -- No Lecture --
 
|-
 
|-
|13/10/2011 || Thursday || 14:15 - 16:15 || E.G.6 || Andrea Bonarini || Fuzzy sets
+
|07/03/2019 || Thursday || 08:15 - 10:15 || V.S7-A || Matteo Matteucci || Cognitive architectures: Deliberative vs Reactive
 
|-
 
|-
|17/10/2011 || Monday || 15:15 - 17:15 || S.1.3 || Matteo Matteucci || Hebbian learning, the xor problem, from perceptron to backpropagation
+
|08/03/2019 || Friday || 10:15 - 13:15 || V.S7-A || Matteo Matteucci || Cognitive architectures: Deliberative vs Reactive
 
|-
 
|-
|20/10/2011 || Thursday || 14:15 - 16:15 || E.G.6 || Andrea Bonarini || Fuzzy logic
+
|14/03/2019 || Thursday || 08:15 - 10:15 || V.S7-A || Matteo Matteucci || Deliberative architectures and Planning
 
|-
 
|-
|24/10/2011 || Monday || 15:15 - 17:15 || S.1.3 || Matteo Matteucci || Feedforward topologies and Backpropagation
+
|15/03/2019 || Friday || 10:15 - 13:15 || V.S7-A || Matteo Matteucci || Deliberative architectures and Planning
 
|-
 
|-
|27/10/2011 || Thursday || 14:15 - 16:15 || E.G.6 || Andrea Bonarini || Fuzzy rules - design of fuzzy systems
+
|21/03/2019 || Thursday || 08:15 - 10:15 || V.S7-A || Andrea Bonarini || Human-Robot (non-verbal) Interaction
 
|-
 
|-
|03/11/2011 || Thursday || 14:15 - 16:15 || --- || --- || ''No lecture today''
+
|22/03/2019 || Friday || 10:15 - 13:15 || V.S7-A || Andrea Bonarini || Human-Robot (non-verbal) Interaction
 
|-
 
|-
|07/11/2011 || Monday || 15:15 - 17:15 || S.1.3 || Matteo Matteucci || Neural Network exercises
+
|28/03/2019 || Thursday || 08:15 - 10:15 || V.S7-A || Andrea Bonarini || Human-Robot (non-verbal) Interaction
 
|-
 
|-
|10/11/2011 || Thursday || 14:15 - 16:15 || E.G.6 || Andrea Bonarini || Fuzzy systems – Applications
+
|29/03/2019 || Friday || 10:15 - 13:15 || V.S7-A || Andrea Bonarini || Human-Robot (non-verbal) Interaction
 
|-
 
|-
|14/11/2011 || Monday || 15:15 - 17:15 || S.1.3 || Matteo Matteucci || Overfitting limitation
+
|04/04/2019 || Thursday || 08:15 - 10:15 || V.S7-A || Matteo Matteucci || Behaviour based architectures
 
|-
 
|-
|17/11/2011 || Thursday || 14:15 - 16:15 || --- || --- || ''No lecture today''
+
|05/04/2019 || Friday || 10:15 - 13:15 || V.S7-A || Matteo Matteucci || Behaviour based architectures
 
|-
 
|-
|21/11/2011 || Monday || 15:15 - 17:15 || S.1.3 || Matteo Matteucci || Bayesian Networks
+
|11/04/2019 || Thursday || 08:15 - 10:15 || V.S7-A ||Simone Mentasti || Robot Operating System
 
|-
 
|-
|24/11/2011 || Thursday || 14:15 - 16:15 || E.G.6 || Andrea Bonarini || Fuzzy systems – Design
+
|12/04/2019 || Friday || 10:15 - 13:15 || V.S7-A || Simone Mentasti || Robot Operating System
 
|-
 
|-
|28/11/2011 || Monday || 15:15 - 17:15 || S.1.3 || Matteo Matteucci || Inference in Bayesian Networks
+
|18/04/2019 || Thursday || 08:15 - 10:15 || --- || --- || -- No Lecture --
 
|-
 
|-
|01/12/2011 || Thursday || 14:15 - 16:15 || E.G.6 || Andrea Bonarini || Fuzzy systems – Design
+
|19/04/2019 || Friday || 10:15 - 13:15 || --- || --- || -- No Lecture --
 
|-
 
|-
|05/12/2011 || Monday || 15:15 - 17:15 || S.1.3 || Matteo Matteucci || Bayesian Networks Demo/Exercises
+
|25/04/2019 || Thursday || 08:15 - 10:15 || --- || --- || -- No Lecture --
 
|-
 
|-
|12/12/2011 || Monday || 15:15 - 17:15 || S.1.3 || Andrea Bonarini || Reinforcement Learning I
+
|26/04/2019 || Friday || 10:15 - 13:15 || --- || --- || -- No Lecture --
 
|-
 
|-
|15/12/2011 || Thursday || 14:15 - 16:15 || E.G.6 || Matteo Matteucci || Bayesian Networks Demo/Exercises
+
|02/04/2019 || Thursday || 08:15 - 10:15 || V.S7-A || Simone Mentasti || Project work
 
|-
 
|-
|19/12/2011 || Monday || 15:15 - 17:15 || S.1.3 || Andrea Bonarini || Reinfocement Learning – Design
+
|03/05/2019 || Friday || 10:15 - 13:15 || V.S7-A || Matteo Matteucci || Neural Networks
 
|-
 
|-
|22/12/2011 || Thursday || 14:15 - 16:15 || E.G.6 || Andrea Bonarini || Reinfocement Learning – Applications
+
|09/05/2019 || Thursday || 08:15 - 10:15 || V.S7-A || Simone Mentasti || Project work
 
|-
 
|-
|09/01/2011 || Monday || 15:15 - 17:15 || S.1.3 || Andrea Bonarini || Evolutionary algorithms – Genetic Algorithms
+
|10/05/2019 || Friday || 10:15 - 13:15 || V.S7-A || Matteo Matteucci || Neural Networks
 
|-
 
|-
|12/01/2011 || Thursday || 14:15 - 16:15 || E.G.6 || Andrea Bonarini || Genetic Algorithms – Design
+
|16/05/2019 || Thursday || 08:15 - 10:15 || V.S7-A || Simone Mentasti || Project work
 
|-
 
|-
|16/01/2011 || Monday || 15:15 - 17:15 || S.1.3 || Andrea Bonarini || Genetic Algorithms – Applications
+
|17/05/2019 || Friday || 10:15 - 13:15 || V.S7-A || Matteo Matteucci || Neural Networks
 
|-
 
|-
|19/01/2011 || Thursday || 14:15 - 16:15 || E.G.|| Andrea Bonarini || Hybrid systems
+
|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
 
|-
 
|-
|23/01/2011 || Monday || 15:15 - 17:15 || S.1.3 || Andrea Bonarini || Closing remarks and exercises
 
 
|}
 
|}
 +
 +
<!--
 +
{| border="1" align="center" style="text-align:center;"
 +
|-
 +
|Date || Day || Time || Room || Teacher || Topic
 +
|-
 +
|27/02/2018 || Tuesday || 08:15 - 10:15 || V.S7-A || Matteo Matteucci || Course Introduction, Robotics and Cognitive Robotics
 +
|-
 +
|02/03/2018 || Friday || 10:15 - 13:15 || V.S7-A || Matteo Matteucci || Cognitive architectures: Deliberative vs Reactive
 +
|-
 +
|06/03/2018 || Tuesday || 08:15 - 10:15 || -- || -- || -- No Lecture --
 +
|-
 +
|09/03/2018 || Friday || 10:15 - 13:15 || V.S7-A || Matteo Matteucci || Cognitive architectures: Deliberative vs Reactive
 +
|-
 +
|13/03/2018 || Tuesday || 08:15 - 10:15 || V.S7-A || Andrea Bonarini || Non verbal human-robot interaction
 +
|-
 +
|16/03/2018 || Friday || 10:15 - 13:15 || V.S7-A || Andrea Bonarini || Non verbal human-robot interaction
 +
|-
 +
|20/03/2018 || Tuesday || 08:15 - 10:15 || V.S7-A || Andrea Bonarini || Non verbal human-robot interaction
 +
|-
 +
|23/03/2018 || Friday || 10:15 - 13:15 || V.S7-A || Andrea Bonarini || Non verbal human-robot interaction
 +
|-
 +
|27/03/2018 || Tuesday || 08:15 - 10:15 || V.S7-A || Matteo Matteucci || Planning
 +
|-
 +
|30/03/2018 || Friday || 10:15 - 13:15 || V.S7-A || -- || -- No Lecture --
 +
|-
 +
|03/04/2018 || Tuesday || 08:15 - 10:15 || V.S7-A || -- || -- No Lecture --
 +
|-
 +
|06/04/2018 || Friday || 10:15 - 13:15 || V.S7-A || -- || -- Lecture canceled --
 +
|-
 +
|10/04/2018 || Tuesday || 08:15 - 10:15 || V.S7-A ||Matteo Matteucci || Planning
 +
|-
 +
|13/04/2018 || Friday || 10:15 - 13:15 || V.S7-A || Matteo Matteucci || Planning
 +
|-
 +
|17/04/2018 || Tuesday || 08:15 - 10:15 || V.S7-A ||Matteo Matteucci || Planning
 +
|-
 +
|20/04/2018 || Friday || 10:15 - 13:15 || V.S7-A || Simone Mentasti || Introduction to ROS
 +
|-
 +
|24/04/2018 || Tuesday || 08:15 - 10:15 || V.S7-A ||Simone Mentasti || Introduction to ROS
 +
|-
 +
|27/04/2018 || Friday || 10:15 - 13:15 || V.S7-A || -- || -- No Lecture --
 +
|-
 +
|01/05/2018 || Tuesday || 08:15 - 10:15 || V.S7-A || -- || -- No Lecture --
 +
|-
 +
|04/05/2018 || Friday || 10:15 - 13:15 || V.S7-A || Simone Mentasti || Introduction to Gazebo
 +
|-
 +
|08/05/2018 || Tuesday || 08:15 - 10:15 || V.S7-A || Simone Mentasti || Introduction to Gazebo
 +
|-
 +
|11/05/2018 || Friday || 10:15 - 13:15 || V.S7-A || Matteo Matteucci || Behavior Based Robotics
 +
|-
 +
|15/05/2018 || Tuesday || 08:15 - 10:15 || V.S7-A || Matteo Matteucci || Behavior Based Robotics
 +
|-
 +
|18/05/2018 || Friday || 10:15 - 13:15 || V.S7-A || Matteo Matteucci || Behavior Based Robotics
 +
|-
 +
|22/05/2018 || Tuesday || 08:15 - 10:15 || V.S7-A || Matteo Matteucci || Neural Networks
 +
|-
 +
|25/05/2018 || Friday || 10:15 - 13:15 || V.S7-A || Matteo Matteucci || Neural Networks
 +
|-
 +
|29/05/2018 || Tuesday || 08:15 - 10:15 || V.S7-A || Matteo Matteucci || Neural Networks
 +
|-
 +
|01/06/2018 || Friday || 10:15 - 13:15 || V.S7-A || Matteo Matteucci || Neural Networks
 +
|-
 +
|05/06/2018 || Tuesday || 08:15 - 10:15 || V.S7-A || Matteo Matteucci || Neural Networks
 +
|-
 +
|}
 +
 +
|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: Marta Pagani
 +
|-
 +
|28/07/2017 || Friday || 14:30 - 17:30 || V07 || Matteo Matteucci || Students presentation: Florin Varga, Elcin Kulatu
 +
|-
 +
|14/09/2017 || Thursday || 09:30 - 17:30 || V.S8-B || Matteo Matteucci || Students presentation: Emanuele Dalla Longa, Davide Urzino, Roza Shafiei, Federico Milani, Ashok Kumar Yarramneni
 +
-->
  
 
===Course Evaluation===
 
===Course Evaluation===
  
The exam is a test done in regular sessions, starting from the end of the lessons. The test is partitioned in two parts, whose evaluation is averaged. For each of them 32 points are available and a minimum of 15 is needed. The average vote must be greater or equal to 18 to pass the exam. Some example from past years are available below. From year 2011 the format of the exam will change a little bit, but the type of questions will analogous. An example of the format for this year will be published later.
+
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
  
This course can be taken as a stand alone course or as a course integrated with Artificial Intelligence. In both cases, the course will be offered at the same time to students taking one or the other format. The exam will be also the same, but, in the case of integrated course, it will have to be passed together with the exam of Artificial Intelligence, as a unique exam, the same day. The same rules apply for the exam of the integrated course, and the marks obtained in SC and AI will be averaged. The difference between the two solutions is that the integrated course can be selected as a unique course in the study plan.
+
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==  
 
==Teaching Material==  
  
Right now, the official course website is maintained by Andrea Bonarini at [http://home.dei.polimi.it/bonarini/Didattica/SoftComputing/index.html]
+
The course material comprises slides from the teachers and scientific literature, both provided in the following.
  
 
===Teacher Slides===
 
===Teacher Slides===
  
In the following you can find the lecture slides used by the teacher and the teaching assistants during classes:
+
In the following you can find the lecture slides used by the teacher and the teaching assistants during classes.
  
* [[Media:Intro.pdf | Course introduction]]: introductory slides of the course with useful information about the grading, and the course logistics.
+
Here the lectures about classical cognitive architectures, i.e., deliberative and reactive approaches:
  
===Books and Papers===
+
* [[Media:CognitiveRobotics_01_Intro_2018.pdf|[2017/2018] Cognitive Robotics Introduction]]: Course introduction and introduction to Robotics, Cognitive Robotics definition.
 +
* [[Media:CognitiveRobotics_01_Architectures_2018.pdf|[2017/2018] Cognitive Robotics Architectures]]: Cognitive architectures: deliberative vs reactive approaches.
 +
* [[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_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
  
* ...
+
<!--
 +
* [[Media:DeepLearning101_2017_Introduction.pdf|[2016/2017] Deep Learning Introduction]]: Recap on neural networks and machine learning, deep learning introduction with applications, deep learning and the feature learning idea.
 +
* [[Media:DeepLearning101_2017_LinearModels_MLP_DeepNN.pdf|[2016/2017] From linear models to deep networks]]: Linear models, neural networks, modern activation functions, tips and tricks for Deep Learning.
 +
* [[Media:DeepLearning101_2017_CNN.pdf|[2016/2017] Convolutional Neural Networks]]: Convolutional neural network for image understandig
 +
* [[Media:DeepLearning101_2017_RNN.pdf|[2016/2017] Recurrent Neural Networks]]: Recurrent neural network for structured learning, Long-Short Term Memory cells.
 +
* [[Media:ConvolutionAritmetics_2017.pdf|[2016/2017] Convolutiona Aritmentics]] (kindly provided by Vincent Dumoulin and Francesco Visin)
  
===Useful Links===
+
The following are the slides on Natural Language Processing for Human Robot Interaction:
...
+
  
* ...
+
* [[Media:Intro_AI_and_NLP_2017_LingBackground_v1.1.pdf|[2016/2017] NLP Linguistic Background]]: Introduction to Natural Language Processing and the corresponding Linguistic Background
 +
* [[Media:Intro_AI_and_NLP_2017_MLmethods_v1.1.pdf|[2016/2017] NLP and Machine Learning]]: On the use of Machine Learning techniques in Natural Language Processing
 +
* [[Media:svm_kelp_practice_Excercise.pdf|[2016/2017] SVM for NLP]]: Introduction on the use of SVMs for Natural Language Processing with references to software tools and practical exercises.
 +
-->
  
===Software===
+
The following are the slides on Non Verbal Human Robot Interaction:
...
+
  
* ...
+
* [[Media:HRINoNL1IntroAndDesignPrinciples_2017.pdf| [2016/2017] Intro and Design Principles]]: Introduction to Non Verbal Human Robot interaction and its design principles.
 +
* [[Media:HRINoNL2SensorsAndActuators_2017.pdf | [2016/2017] Sensors and Actuators]]: Robot sensors and actuators for Human Robot interaction
 +
* [[Media:HRINoNL3IncidentalInteraction_2017.pdf | [2016/2017] Incidental Interaction]]: Human Robot Incidental Interaction
 +
* [[Media:HRINoNL4Time_2017.pdf | [2016/2017] Time issues]]: Time issues in Human Robot Interaction
 +
* [[Media:HRINoNL5Emotion_2017.pdf | [2016/2017] Emotions]]: Non verbal emotion expression
 +
* [[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
  
===Links to sites of other Soft Computing courses ===
+
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]]
 +
  
===Bibliographic resources===
+
<!--
...
+
===Students Slides===
  
* ...
+
In the following you can find the slides presented to the class by students as part of their evaluation.  
  
==Exam Samples and Results==
+
* [[Media:MultiRobotSystems_2017_MartaPagani.pdf | [23/06/2017] Multi Robot Systems]]: Multi Robot Systems taxonomy, architectures, and applications.
 +
* [[Media:MultiRobotSystems_2017_... | [28/07/2017] ]]: ...
 +
* [[Media:MultiRobotSystems_2017_... | [../09/2017] ]]: ...
 +
-->
  
===Past Exams and Sample Questions===
+
===Books, Papers, and Media===
These are the text of past exams to give and idea on what to expect during the class exam:
+
  
* ...
+
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.
  
===Exam Results===
+
* Simon Russell, Peter Norvig. "Artificial Intelligence: A Modern Approach". Chapter 11: Planning, pages 375-416.Pearson, 2010. [http://aima.cs.berkeley.edu/2nd-ed/newchap11.pdf]
 +
* 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]
 +
* 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]
  
From time to time, you can find here results for the Soft Computing exams, please refer to the official course website for up to date news:
+
==Exam Samples and Results==
  
* Follow this link to [[Media:Risultati_SC.pdf | the results of 14/07/2011 exam]].
+
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:CognitiveRobotics20180119.pdf| 19/01/2018]]
 +
* [[Media:CognitiveRobotics20170829.pdf| 29/08/2017]]
 +
* [[Media:CognitiveRobotics20170725.pdf| 25/07/2017]]
 +
* [[Media:CognitiveRobotics20170704.pdf| 04/07/2017]]

Latest revision as of 00:05, 11 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!!!

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):

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:


The following are the slides on Non Verbal Human Robot Interaction:

Here the slides about ROS and gazebo:


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.

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: