Winter Term 2016/17

Autonomous Navigation for Middle-size Robots Project

Tutor: Prof. Dr. Pedro José Marrón, Contact: Eduardo Ferrera

Nowadays, mobile robots are used in many applications, such as rescue missions, surveillance or people assistance. In these applications, robots usually need to operate in unknown environments, so they need to obtain information with their sensors and take intelligent decisions. In general, they proceed in a loop with several steps:

(i) Information is obtained with the sensors on board the robot;

(ii) Given the current information the best decision is made;

(iii) The decision is carried out by the robot autonomously.

Mainly, mobile robots need to know where they are located and how to navigate safely to other places. For that, they have to use external sensors (e.g., GPS, compass, laser, etc.), plan trajectories, avoid obstacles, etc.

In this project, the motivating application will be a rescue mission in an indoor building after a catastrophe. For that, a robotic simulator will be used in order to develop algorithms to localize a robot, to navigate avoiding obstacles, to build a map of the environment and find the victims and to report back the results. The Robotic Operating System (ROS) will be used in order to program
the robot and communicate to the simulator.

This course will be taught in English and will require programming in C++. The project is suitable for students at the bachelor and the master level. However, the course contents and the requirements for passing are different depending on the level. As a consequence, it is not possible to create mixed teams. If you want to participate in this project or further information, please contact Eduardo Ferrera.

LSF entry: Bachelor and Master

The kickoff meeting for this project will take place in Room S-A 126, from 14:00h to 16:00h, on Thursday, October 20th, 2016. It is mandatory to attend this meeting in order to participate in the project.

Context Recognition Seminar

Tutor: Dr. Marcus Handte 

Nowadays, most devices are equipped with different types of networking technology and a broad spectrum of sensors. Examples include gyroscopes, accelerometers, cameras, and microphones. To provide better task support, future applications will have to use the sensors of multiple devices to determine the state of their environment in an automated fashion. This requires novel software systems and signal processing algorithms to derive high-level context information from low-level sensor readings.

The seminar topics will cover a selection of systems and algorithms to recognize different types of context. Furthermore, they cover supportive architectures and protocols to recognize context in a distributed manner. Thereby, the seminar focuses on light-weight approaches that can be implemented on resource-poor devices. Participants will be able to select their topic of choice from the set of available topics.

Participants will have to do a literature research and they will have to create a high quality written report. Furthermore, they will have to give an oral presentation of their topic.

This seminar is suitable for students at the bachelor and master/diploma level. However, Master AI-SE students cannot chose it. Furthermore, depending on the number and type of participants, this seminar might be given in English and German. Please also note that the maximum number of participants is limited. If you have questions regarding this seminar, please contact

LSF entry: Seminar

The kickoff meeting for this seminar will take place on Thursday, 20.10.2016 between 9.00h and 11.30h in S-A 126. Participation in this meeting is mandatory.

Pervasive Computing

Lecturer: Dr. Marcus HandteExercises: Ngewi Fet  

This lecture at the Master level covers the fundamentals of past and recent pervasive computing research with a specific focus on the following four areas:

  • System-support and programming abstractions for adaptive distributed applications
  • Recognition, modelling and management aspects of contextual information
  • Privacy and security mechanisms and protocols for context-aware systems and applications
  • Novel user interface examples and guidelines for pervasive computing applications

Students participating in this course should have at least basic knowledge in the areas of networking and database technology. Knowledge in machine learning and human-computer-interaction could be beneficial but is not mandatory.

The practical exercises will focus system-support for adaptive distributed applications. As part of the exercises, students will be developing a communication middleware for spontaneously networked devices using an object-oriented programming language such as Java or C#.

Place and Time:

  • Lecture: Thursdays (starting in the first week of the lecture period), from 12:00h to 14:00h in SL 012
  • Exercises: Wednesdays (starting in the second week of the lecture period), from 14:00h to 16:00h in SA 018

LSF entry: Lecture und Excercise

Find the moodle here.

More Information:

Detailed information about the contents and organization of the course will be given out during the first lecture. If you have further questions, feel free to contact

Programmieren in C/C++

Dozent: Prof. Dr. Pedro José Marrón, Übungen: Ngewi Fet

Die Veranstaltung (2V+2Ü) setzt die in den vorherigen Semestern gelernten grundlegenden Konzepte und Methoden der objektorientierten Programmierung (OOP) in C++ um.

Inhalte im Einzelnen:

  • OO-Analyse, -Design und -Modellierung mit UML
  • C++ als Erweiterung von C
  • Zeigerkonzepte
  • Klassen, Klassen-Hierarchien, einfache und mehrfache Vererbung, Zugriffsschutzmechanismen, virtuelle Basisklassen, virtuelle Funktionen, statisches und dynamisches Binden, Typisierung und Typkonvertierungen
  • Funktions- und Operator-Überladen
  • Exception Handling
  • Templates
  • Modularität, Namespaces
  • Threads
  • Streams
  • Standard Template Library (z.B. Algorithmen, Iteratoren, Container)
  • kleine Projektbeispiele aus den Anwendungsbereichen der Ingenieurwissenschaften.

Die Veranstaltung findet auf deutsch statt.

Ort und Zeit:

  • Vorlesung: Wöchentlich Mittwochs 12:00-14:00 Uhr in SE 005.
  • Übung: Wöchentlich Mittwochs 18:00-20:00 Uhr in SE 005 


Um zur Prüfung zugelassen zu werden, sind 60% der möglichen Punkte in den Übungsaufgaben erforderlich. Bei 80-89% der Punkte erhält der Prüfling einen Notenbonus von 0,3/0,4, bei 90% der Punkte oder mehr einen Notenbonus von 0,6/0,7.

Einträge im LSF: Vorlesung und Übung
Der Zugangscode zur Moodle-Seite für Materialien und Übungsabgabe wird in der ersten Vorlesung bekanntgegeben.

Rechnerstrukturen und Betriebssysteme

Dozent: Prof. Dr. Pedro José Marrón, Übungen: Falk Brockmann

Die Vorlesung ist zweigeteilt. Die Vorlesungsinhalte mit dem Schwerpunkt Rechnerstrukturen werden vom Lehrstuhl Prof. Dr. Klaus Echtle vermittelt, die Inhalte mit dem Schwerpunkt Betriebssysteme vom Lehrstuhl Prof. Dr. Pedro Marrón.

Folgende Qualifikationen werden in der Vorlesung vermittelt

Die Studierenden

  • können den Aufbau und die Funktion von Rechen- und Betriebssystemen sowie die grundlegenden Konzepte erläutern
  • sind in der Lage, ein einfaches Hardwaresystem aus digitalen Basiskomponenten zu entwerfen und Grundfunktionen eines sehr einfachen Betriebssystems selbst zu entwickeln
  • können sich in vorgegebene Systeme einarbeiten, diese einordnen und ihre wesentlichen Eigenschaften erkennen
  • können die grundlegenden Aufgaben und Arbeitsweisen von Rechensystemen ebenso wie den prinzipiellen Aufbau aus digitalen Basiskomponenten erläutern
  • kennen kombinatorische Schaltungen, Bool’sche Funktionen, Schalter und einfache Gatter
  • sind vertraut mit der binären Arithmetik und Zahlendarstellung und können sie anwenden
  • verstehen, was Prozesse sind und können erläutern, wie sie verwaltet, ausgeführt und synchronisiert werden und wie eine Kommunikation zwischen Prozessen erfolgen kann
  • sind in der Lage zu erklären, wie Prozessor, Speicher und Ein-/Ausgabefunktionen verwaltet werden
  • sind befähigt, ein einfaches Hardwaresystem und Grundfunktionen eines sehr einfachen Betriebssystems selbst zu entwerfen
  • verfügen über die Fähigkeit, effizienzsteigernde Techniken in Hardware und Betriebssystem zu konzipieren
  • besitzen eine vertiefte Kenntnis von Rechnerstrukturen und sind in der Lage, diese praktisch anzuwenden
  • können maschinennahe Programme entwerfen, implementieren, diese auf geeignete Hardware portieren und ausführen, besitzen ein vertieftes Verständnis von Funktion und Aufbau von Hardware und zugehöriger Betriebssoftware, und können diese erläutern und zielgerichtet einsetzen

Ort und Zeit:

  • Vorlesung: Wöchentlich mittwochs 18:00-20:00 Uhr und donnerstags 18:00-19:30 Uhr in SH 601
  • Übung:Wöchentlich freitags 12:15-13:45 Uhr in SH 601


Zum Modul erfolgt eine modulbezogene Prüfung in der Gestalt einer Klausur über die gemeinsamen Ziele von Vorlesung und Übung (in der Regel: 90 bis 120 Minuten). Die erfolgreiche Teilnahme an der Übung ist als Prüfungsvorleistung Zulassungsvoraussetzung zur Modulprüfung.

Einträge im LSF: Vorlesung und Übung
Link zur Moodle-Seite

Remote Rendering of Geospatial Data Project

Tutor: Marcus Handte 

Fueled by the proliferation of mobile devices with built-in GPS receivers, location-based services and applications have become an important application domain. Due to the volume of the geospatial data that is required to generate detailed visualizations for larger areas, many location-based web and mobile applications are relying on a server-centric approach to map rendering in which a server takes care of data storage, indexing, retrieval and rendering. This reduces the client-side functionality to providing a dynamic viewport on the images that are made available through the server. While this approach has turned out to be effective for many use cases, the resulting lack of structured information can severely limit the interactivity of an application.

In this project, students will restructure an existing server-centric rendering pipeline to realize an alternative split of responsibilities. Thereby, the server shall take care of providing the geospatial data directly to the client and the client shall take care of the actual rendering process. For this, the server must be extended with suitable data models and interfaces that enable the dynamic retrieval of the underlying geospatial data for the current view port. Within this project, students will get in touch with geo spatial data models (e.g. OSM XML). They will use modern web frameworks to implement web services (e.g. JAX-RS) and they will learn the fundamentals of graphics and media frameworks (Java 2D, Java ImageIO).

The project is suitable for students at the master level. If you want to participate, please contact

Systemnahe Informatik (Systems Programming)

Lecturer: Prof. Dr. Pedro José Marrón, Lab Tutor: Hugues Smeets

This lecture and the associated practical lab convey the fundamentals of system-level application development. The lecture provides a brief review of embedded systems applications and hardware. The covered topics include: microcontroller architecture, busses, I/O, interrupts and timers, firmware development, peripheral driver development and examples of applications involving embedded systems and host system programming.

The lab exercises will provide hands-on experience in system programming to support a peripheral connected to a host using USB. Students are required to have basic knowledge about the C language. For more information about the lab exercises, please contact Hugues Smeets.

LSF entry: Lecture and lab

The first lecture will take place in Room SE 108 at 10:00h on Wednesday, October 19, 2016. The access key to the moodle page of the lecture/lab will be announced in the first lecture.

The first lab will take place in Room SA 018 at 16:00h on Thursday, October 20, 2016. The access key to the moodle page of the lab will be announced in the first lecture.


Wireless Sensor Network Application Development Project

Tutor: Dr. Matteo Ceriotti

Wireless Sensor Networks (WSNs) have been widely deployed in many application domains including environmental monitoring, surveillance, healthcare, automation control and more. A typical WSN consists of a set of low-powered and inexpensive embedded sensor devices with specific sensing modalities and with computation as well as communication capabilities. These devices collaborate with each other by exchanging data through energy-efficient, short-range radios. The application provides its services by manipulating the sensory data collected by the deployed WSN.

In this project, you will learn how to develop an integrated application providing services by making use of a WSN. The topics that will be covered include:

  • Wireless sensor system programming
  • Sensory data collection
  • Data delivery and communication through IEEE 802.15.4 networks
  • Interfacing between the user and the deployed WSN

This course will be taught in English. If you are not sure whether you fulfill the requirements or if you want to participate in the project, please send an email to

LSF entry: Bachelor and Master

You can find moodle here.

The kickoff meeting for this project will take place on Monday, 17.10.2016 between 11.00h and 12.00h in Room S-A 126. Please check this information for updates or send an email to to be notified about changes. Participation in this meeting is mandatory.  

Wireless Sensor Network Seminar

Tutor: Dr. Matteo Ceriotti

This seminar aims at familiarizing students with important research topics in Wireless Sensor Networks. The covered topics include, among others, routing, localization, sensing coverage and communication connectivity, multi-channel communication, sensor networks simulation, radio models, mobility models, sensing modalities, and camera sensor networks.

Participants will have to do a literature research and they will have to create a high quality written report. Furthermore, they will have to give an oral presentation of their topics.

This seminar is suitable for students at the bachelor and master/diploma level. However, it cannot be chosen by master AI-SE students. This seminar is given in English. Please also note that the maximum number of participants is limited. If you want to participate in this seminar or you have questions regarding it, please send an email to

LSF entry: Seminar

The kickoff meeting for this seminar will take place on Monday, 17.10.2016 between 13.00h and 14.00h in Room S-A 126Participation in this meeting is mandatory.