SOW-MKI59
RobotLab Practical
Course infoSchedule
Course moduleSOW-MKI59
Credits (ECTS)3
Category-
Language of instructionEnglish
Offered byRadboud University; Faculty of Social Sciences; Artificial Intelligence;
Lecturer(s)
Coordinator
dr. B.J. Grzyb
Other course modules lecturer
Examiner
dr. B.J. Grzyb
Other course modules lecturer
Contactperson for the course
L.E.C. Jacques
Other course modules lecturer
Academic year2017
Period
PER2  (13/11/2017 to 04/02/2018)
Starting block
PER2
Course mode
full-time
Remarks-
Registration using OSIRISYes
Course open to students from other facultiesYes
Pre-registrationNo
Waiting listNo
Placement procedure-
Aims
Obtain an in-depth overview of Nao programming using the NaoQi framework, with the goal to provide a solid basis for developing interactive and autonomous robot applications as required for the master course MKI57 advances in cognitive robotics. Students will work individually and in groups to explore different paradigms of robot motion, auditory and visual information processing, speech production and gesture analysis and production. In particular:
  • Students will learn about the possibilities and limitations of both the NAO's and Pepper bodies, i.e., the different limbs/motors and sensors.
  • Students will master practices of concurrent programming in order to control multiple aspects of the robot simultaneously (e.g. continuously process audio for dialogue while at the same time analysing visual input to control head movement for face tracking).
  • Students will learn how to develop server/client structured software to divide computation intensive components of their concurrent programs over different computers.
  • Students will learn the in-depth working of several framework-provided modules, understanding how they work 'under the hood'.
  • Students will learn to replace or expand on those standard modules with self-built modules or modules from different libraries (e.g., OpenCV).
  • Students will learn how to read, store and process data (like joint trajectories, visual, audio, etc.) from the different robot sensors for real time analyses of robot behaviour and the environment.
  • Students will get experience debugging robot software, e.g., by using data they learned how to acquire.
Content
The NaoQi framework provides a well-organized API for programming Nao robots. In eight tutorial-like practicals (four hours each), we will explore one of the topics described below. During each practical, you will work individually on a corresponding assignment that must be demonstrated in the next lesson. Besides the four hours/week practicals, you are expected to further work on your assignments for an additional four hours/week (8x8=64 hours), until the end of November. In December and January, you will work in groups on a challenging final assignment, which you should demonstrate by the end of January.
Topics/lessons (preliminary)
1) Make Nao/Pepper move! We will start with understanding the Nao, Naoqi framework, Python, Java and other development platforms. During this lesson, you should develop your first software which makes your Nao move: head rotation, arm gestures and … walking!
2) Nao/Pepper sensors: overview. You will learn the different sensors and how to use built-in perception components, like isolated word recognition and face detection.
3) Vision (and OpenCV)
4) Speech (and wit.ai)
5) Gesture
6) Java, concurrency and client-server programming
7) Multimodality: fusion and fission
8) Gluing it together: multimodal human-robot interaction
Levels
AI-MA

Test information
Practical assignments, peer review.
The end grade is computed based on (i) the eight demonstrations of your robot performance, (ii) a judgement of your final project and (iii) a peer review containing the judgement of your work by your fellow students. 0.4*(i)+0.5*(ii)+0.1*(iii)

Prerequisites
Bachelor in AI or Computing Science. Other students are also welcome (e.g., from Cognitive Neuroscience), but programming skills are required (Python/Java).

Contact information
Dr. Beata Grzyb; E: b.grzyb@donders.ru.nl; T: 024-3616091

Required materials
Literature list
Selected papers and online manuals.

Instructional modes
Practical working hours

General
Tutorials, Nao/Pepper programming, group work.

Tests
Exam
Test weight1
OpportunitiesBlock PER2, Block PER3