Course Coordinator: 
Jun Tani
Cognitive Neurorobotics

The primary objective of this course is to understand the principles of embodied cognition by taking a synthetic neurorobotics modeling approach. For this purpose, the course offers an introduction of related interdisciplinary knowledge in artificial intelligence and robotics, phenomenology, cognitive neuroscience, psychology, and deep and dynamic neural network models. Special focus is given to hands-on neurorobotics experiments and related term projects.

This course aims to provide an overview of the synthetic approach to understand embodied cognition by using deep dynamic neural network models and robotics platforms.
Detailed Syllabus: 

1. Introduction: cognitive neurorobotics study

2. Cognitism: compositionality and symbol grounding problem

3. Phenomenology: consciousness, free will and embodied minds

4. Cognitive neuroscience I: hierarchy in brains for perception and action

5. Cognitive neuroscience II: Integrating perception and action via top-down and bottom-up interaction

6. Affordance and developmental psychology

7. Nonlinear dynamical systems I: Discrete time system

8. Nonlinear dynamical systems II: Continuous time system

9. Neural network model I: 3-layered perceptron, recurrent neural network

10. Neural network model II: deep learning, variational Bayes

11. Neurorobotics I: affordance & motor schema

12. Neurorobotics II: higher-order cognition, meta-cognition, and consciousness

13. Neurorobotics III: hands-on experiments in lab

14. Paper reading for neurorobotics and embodied cognition I

15. Paper reading for neurorobotics and embodied cognition II

Course Type: 
Mid-term exam: 40%, final term project report: 60%.
Text Book: 
Exploring robotic minds: actions, symbols, and consciousness as self-organizing dynamic phenomena. Jun Tani (2016) Oxford University Press.
Prior Knowledge: 

Basic mathematical knowledge for the calculus of vectors and matrices and the concept of differential equations are assumed. Programming experience in Python, C or C++ is also required.