183.660 Mobile Robotics
This course is in all assigned curricula part of the STEOP.
This course is in at least 1 assigned curriculum part of the STEOP.

2018S, VU, 3.0h, 4.5EC


  • Semester hours: 3.0
  • Credits: 4.5
  • Type: VU Lecture and Exercise

Aim of course



This course teaches students the basic concepts and techniques used in the field of mobile robotics. Within the lecture we will analyse navigation challenges and present "state of the art" solutions. The presented techniques are universally usable but the course will focus on wheel robots for driving. Among other topics, we will discuss:

  • Sensors models (Laser Sensor)
  • Motion models (Differential Drive),
  • Vehicle localization (particle-filter and kalman filter)
  • SLAM
  • Path planning


Stage, a 2D Simulation (http://wiki.ros.org/stage), and ROS (http://wiki.ros.org), are used to provide the students with a simulated robotic hardware with laser range measurements.
Students have to implement first wanderer behaviour to get familiar with the environment, followed by a step- by- step implementation of a Monte Carlo particle filter and an Extended Kalman filter for self-localization. The final exercise is an "Open Challenge". Students can implement enhancements to their code and/or can try their program on a real robot.

Work environment:

Linux (Ubuntu 16.04), ROS, C++

A virutal box image with the working environment will be provided but a "root" installation is recommended.


There is the possibility to discuss problems with the simulation environment for the exercises after the first two lectures. Get everything up and running as soon as possible. The description how to install the environment is on the related TUWEL-course.

Subject of course

  • Behaviour Based Robotics (Breitenberg Vehicles)
  • Sensors (Laser Scanner)
  • Motion Model (Differential Drive)
  • Mapping and Map Representation
  • Self-localization:
    - Discrete Filter
    - Particle Filter
    - Extended Kalman Filter 
  • SLAM
    - Fast-SLAM
    - Kalman based SLAM
  • Planing
    - Local Planning (DWA, ...)
    - Global Planning (A*)

Workload estimation  (ECTS Breakdown): 112,5 Stunden = 4,5 ECTS

  • Lecture time + exam (20 Stunden)
  • Exercises (80 Stunden)
  • Preperation for exam (12,5 Stunden)


Additional information

Video: Particle filter for self-localization in a stage enviroment

Screenshot of an implemented particle fitler and the simulation used with in the course.




Course dates

Wed10:00 - 12:0007.03.2018Informatikhörsaal - ARCH-INF Preliminary talk and lecture
Wed09:00 - 11:0014.03.2018 - 27.06.2018FH Hörsaal 2 Lecture
Wed13:00 - 15:0025.04.2018Seminarraum Techn. Informatik Mobile Robotics: Competition, Last Robot Driving
Mobile Robotics - Single appointments
Wed07.03.201810:00 - 12:00Informatikhörsaal - ARCH-INF Preliminary talk and lecture
Wed14.03.201809:00 - 11:00FH Hörsaal 2 Lecture
Wed21.03.201809:00 - 11:00FH Hörsaal 2 Lecture
Wed11.04.201809:00 - 11:00FH Hörsaal 2 Lecture
Wed18.04.201809:00 - 11:00FH Hörsaal 2 Lecture
Wed25.04.201809:00 - 11:00FH Hörsaal 2 Lecture
Wed25.04.201813:00 - 15:00Seminarraum Techn. Informatik Mobile Robotics: Competition, Last Robot Driving
Wed02.05.201809:00 - 11:00FH Hörsaal 2 Lecture
Wed09.05.201809:00 - 11:00FH Hörsaal 2 Lecture
Wed16.05.201809:00 - 11:00FH Hörsaal 2 Lecture
Wed23.05.201809:00 - 11:00FH Hörsaal 2 Lecture
Wed30.05.201809:00 - 11:00FH Hörsaal 2 Lecture
Wed06.06.201809:00 - 11:00FH Hörsaal 2 Lecture
Wed13.06.201809:00 - 11:00FH Hörsaal 2 Lecture
Wed20.06.201809:00 - 11:00FH Hörsaal 2 Lecture
Wed27.06.201809:00 - 11:00FH Hörsaal 2 Lecture

Course registration

Begin End Deregistration end
29.01.2018 12:00 21.03.2018 12:00 21.03.2018 12:00


Study CodeObligationSemesterPrecon.Info
066 931 Logic and Computation Mandatory elective
066 932 Visual Computing Mandatory elective
066 937 Software Engineering & Internet Computing Mandatory elective
066 938 Computer Engineering Mandatory elective
066 938 Computer Engineering Mandatory elective
880 FW Elective Courses - Computer Science Mandatory elective


Probabilistic Robotics (2005)
Sebastian Thrun, Wolfram Burgard, Dieter Fox

LVA: Introduction to Mobile Robotics (2014)
Wolfram Burgard, Maren Bennewitz, Gian Diego Tipaldi, Luciano Spinello

Introduction to Autonomous Mobile Robots (2011)
Roland Siegwart, Illah Reza Nourbakhsh, Davide Scaramuzza

Principles of Robot Motion: Theory, Algorithms, and Implementations (2005)
Howie Choset, Kevin M. Lynch, Seth Hutchinson, George A. Kantor, Wolfram Burgard, Lydia E. Kavraki and Sebastian Thrun

Continuative courses