Intelligent Systems

Computational Intelligence

Lecture (infCI-01a)

4 SWS, ECTS Credits: 8
Language of instruction: german
Winter term 2020-21
For more information UnivIS or in Modulinformationsystem


Exercise (ÜinfCI-01a)

Language of instruction: german
Winter term 2020-21


Emergence project

During the event, the students developed their own projects on the topic of emergence, presented their progress on an ongoing basis and then created a ranking list. These are some of the final results of the competition:

  1. Team 6 (Rabbits - Development of camouflages for prey animals)
    Project Abstract (PDF)
    Simulation of rabbit populations
  2. Team 2 (Voters - Political parties compete for the opinions of voters) 
    This is an naive voters model. In it, the political parties (turtles) compete for voters (turtles) opinion. Voters are easily manipulated by their neighbors (links). They take on the opinition that is predominantly represented in their enviroment.
    Netlogo Screenshot der Implementation. Hier ist der Verlauf der dynamischen Wählerbeeinflussung visualisiert. Dabei wird der Kommunikationsgraph sowie ein Emergenzwert (abgeleitet aus der Abnahme von Entropie) angezeigt.

  3. Team 3 (Prisoner's Dilemma)
  4. Team 14 (Covid Simulation)
    Simulation of inter-regional dynamics of Covid infections between crowded urban areas.
    Hier sieht man das dynamische Infektionsgeschehen in Netlogo.
  5. Team 5 (Fish Swarm)
    In the simulation of schools of fish, we can observe the three urges of swarms, i.e. cohesion, separation, and orientation.

    team 6 - emergence project - fish swarm - screenshot



Beispiel aus der aktuellen Serie: Wettbewerb zu Julia-Mengen

1. Platz: -0.811 + 0.1999i


2. Platz: -0.946 + 0.3i


3. Platz: 0.4 + 0.0125i



The term "Computational Intelligence" (CI) describes a sub-area of ​​artificial intelligence. Essentially, it summarizes three biologically motivated areas of information processing: Based on algorithms of fuzzy logic and artificial neural networks as well as on evolutionary algorithms, the aim is to master complex systems and combine them with other, typically biologically-inspired, processes. Originally coined in the 1990s by the Institute of Electrical and Electronics Engineers (IEEE), the term is now often used synonymously with soft computing. All sub-areas included have in common that they make mechanisms of natural (i.e. in particular biological, physical or social) problem-solving strategies usable for mathematical or engineering-technical questions. The aim is not a direct transfer or "technical copy", but an understanding and imitation of the basic mechanisms. The methods developed in this way are in contrast to exact mathematical methods - one rather freely follows the motto: "What works is allowed".


Learning goals

The aim of the event is to provide an initial overview of the field of computational intelligence in theory and practice. Building on this, students should be given a basic understanding and appropriate approaches so that the following goals in particular can be achieved:

  • The students have a basic understanding of the complexity of technical systems and know how it can be mastered.
  • The students know how seemingly complex relationships can be easily described with mechanisms of computational intelligence.
  • Techniques from the field of Computational Intelligence / Soft Computing and their advantages and disadvantages in comparison are known.



60 hours of lectures, 30 hours of face-to-face exercises, 150 hours of self-study

Intelligent Systems

Lecture (infInS-01a)

4 SWS, ECTS studies, ECTS credits: 8
Language of instruction: English
Winter term 2020-21
Für weitere Informationen UnivIS oder im Modulinformationsystem


Exercise (ÜinfInS-01a)

language of instruction: English
Winter term 2020-21


An "Intelligent system" is a computing system capable of operating under difficult conditions (e.g. time-varying environments, emergent situations or disturbances) by autonomously adapting its behaviour to changing conditions and learning autonomously. The main goal of engineering intelligent systems is to counter the challenges of complexity by means of integrating desired characteristics such as robustness, flexibility or resilience into technical systems. This is combined with a continuous improvement of the system behaviour. The improvement process is achieved by different approaches of machine learning, e.g. from the fields of reinforcing, active or semi-supervised learning. Besides these learning-related aspects, the design and organisation of large-scale intelligent systems consisting of a potentially large group of autonomous subsystems requires techniques for self-organisation as well as mechanisms for trust relations and fairness.

The lecture gives an introduction to the design and realisation of intelligent systems. It is based on the insights of research initiatives such as "Organic Computing" and "Autonomic Computing".


Learning goals

The overall goal of the course is to derive a basic understanding of the motivation, the general concept, and engineering methods of intelligent systems. Based on this, students will learn about machine learning techniques capable of gathering and describing the environmental and internal conditions of an intelligent systems as well as for improving the behaviour autonomously at runtime.

Particular goals are:

  • Students understand the motivation and the need for intelligent systems that act autonomously without (or with only limited) user intervention or guidance.
  • Students can define the terms "Intelligent System", "Organic Computing", and "Autonomic Computing"
  • Students are able to design intelligent systems by assessing and selecting a suitable basic model.
  • Students can implement selected methods for clustering and classifying situations based on data gathered by sensors.
  • Students can compare algorithms for learning from feedback and implement the most promising variant.
  • Students are capable of quantifying system aspects of large-scale organisations of autonomous intelligent systems with respect to characteristics such as robustness, emergence, self-organisation, autonomy, or adaptivity.



60 h lecture, 30 h exercise, 150 h self-study



Bachelor Seminar - Self-organised Systems

Seminar (infBSemIS-01a)

2 SWS, ECTS studies, ECTS credits: 4
Language of instruction: german
Time and place: online
For more Information UnivIS or in Modulinformationsystem



The seminar is dedicated to the topic of "Self-organised Systems". In the context of this seminar, this is understood to mean sets of autonomous and technical units that work together to achieve a common goal. Different questions arise that have to be mastered.

The seminar in the winter semester 2020/21 is dedicated to the consistent, fast and reliable storage and the associated finding of content within such self-organized systems. This is examined using algorithms from peer-to-peer computing.

The seminar in summer term 2021 is dedicated to the cooperation of autonomous intelligent systems and the associated interaction patterns within such self-organized systems. This is examined using examples from autonomic and organic computing.


Learning goals

The students learn to independently acquire complex issues using the compact presentation, as is customary in scientific publications (i.e. papers, articles or specialist books) and to prepare them in an understandable form.



30 hours of participation in the seminar, 90 hours of self-study

Master Project - Intelligent Systems

Exercise  (infMPInS-01a)

4 SWS, ECTS-Credits: 10
Language of instruction: The project is available in English and German, depending on the participants.
Winter term 2020-21
For more information UnivIS or Modulinformationssystem Informatik


This project is offered as a master project – a modified variant for bachelor students is possible (please ask)!


This project is offered as a group task; a team of 3 to 6 students is required (deliverables are adjusted based on a number of participants).



Robots are a perfect testbed for intelligent systems technology – and autonomous learning techniques in particular. Their mobility, their heterogeneity, and their different application areas define a variety of use cases where learning capabilities are required to initially solve and afterwards improve certain tasks.


What is your task as a group?

  • Set up the basic robot operating system for the robots, assemble robots (i.e., attach sensors, access sensor information, process sensor information).
  1.  We have the turtle bot 3 platform available at our group, which is used for this module. This includes the “TurtleBot3 Waffle Pi” and the “TurtleBot3 Burger” platforms with additional sensor/actuator equipment.
  2. There are a very popular framework and API available that need to be adapted for the scope of this project (framework and API come with comprehensive documentation, tutorials, and community).
  3. The API / framework are available in Python and C++, experimental libraries are also available in JAVA. The programming language is subject to negotiations.
  • Design and implement a framework for autonomous robot behaviour:
  1. Works on heterogeneous robots (i.e., waffle and burger bots with varying sensor and actuator equipment)
  2. Is modular in a way that novel intelligent behaviours can easily be added (and switched on/off)
  3. Follows the design concepts for intelligent systems and provides basic functionality for robot operation tasks
  4. Provides continuous logging of system states, environmental conditions, and actions taken for analysis purposes
  5. Consists of a variable set of autonomous robots and a “base station” with which the robots communicate and share their experiences


  • Use case: classification and novelty detection of environmental conditions
  1. Realise (hardware) scenarios for novel behaviour
    a) Here: environmental behaviour is modelled as different flooring/surface conditions
    b) Set up courses with changing conditions (carpet, stones, tiles, etc)
  2. Classification and novelty detection techniques
    a) Implement classification of floor conditions based on sensor information representations
    b) Implement techniques for novelty detection (abnormal behaviour) that generate an alarm in case of inappropriate classification(i.e., unknown floor)
    c) Apply techniques online and classify floor conditions with different robots
    d) Evaluate the success of the classification


Fundamentals of the module

  • Besides the actual development of the software, the module aims at practical experiences in the following aspects:
    - Specification and definition of “product” using standard software engineering tools
    - (Self-)Organisation as a team, management of the process, deadline supervision
    - Entire software development process until delivery to the customer
    - Documentation of the product
  • Your supervisors are continuously monitoring the process in the role of a customer, i.e. you are expected to regularly demonstrate the progress.


Interested students may contact the group (i.e., Prof. Tomforde at for more details.

There will be an initial appointment begin of the summer term, where the project is set up and students are registered for the module.