Dies sind die archivierten Webseiten des Lehrstuhls für Programmierung und Softwaretechnik (PST).
Die Seiten des Software and Computational Systems Lab (SoSy) finden Sie auf https://www.sosy-lab.org/.

Oberseminar 24.04.12

— abgelegt unter:

Studentenvorträge zu Projekt- und Abschlussarbeiten

Was
  • Oberseminar
Wann 24.04.2012
von 14:15 bis 15:45
Wo Raum 061 - 14:15
Termin übernehmen vCal
iCal

Studentenvorträge zu Projekt- und Abschlussarbeiten:

-------------------------------------------------------

Martin Burger: Mechanisms for Task Allocation in Swarm Robotics

Diplomarbeit - betreut von Annabelle Klarl, Christian Kroiß

In the research field of Swarm Robotics, engineers have to decide how to organize their robotic swarm. In this context, one of the most important decisions is which robot should execute which task in order to achieve a given global mission. The corresponding optimization problem is called Task Allocation and can be tackled by various mechanisms, e.g. auctions, which are based on research in game theory.

This thesis gives an overview of mechanisms for Task Allocation in Swarm Robotics. For this purpose, a new taxonomy is proposed that divides solution strategies into Heteronomous Task Allocation, Autonomous Task Allocation and Hybrid Task Allocation.

The experimental part of this thesis uses this system to develop solution methods for a concrete mission that is inspired by nature: similar to a swarm of bees, multiple robots are attached to a nest that is used to deposit food. Besides foraging, the artificial swarm needs to keep the nest's temperature close to an optimal value. Otherwise gathered food cannot be processed to energy.

This thesis focuses on one probabilistic, motivation-based approach and variants of centralized and decentralized reinforcement learning, which is a kind of machine learning that emphasizes the selection of actions under the observation of rewards. For comparison of the approaches, corresponding swarms are simulated in static and dynamic environments. In this context, static means that the aerial temperature and the food density are fixed.

For the execution of these experiments, the Swarmulator was developed, a simulation platform that is well suited for testing mechanisms for Task Allocation in Swarm Robotics. The Swarmulator features a modular design and batch processing. Statistical data is saved in tabular form and serves as a basis for the concluding analysis of the proposed solution methods.

-------------------------------------------------------

Jan Hennschen: Laufzeitaktualisierbarkeit von Softwaresystemen: Konsequenzen zur Systemkomplexität, Ressourcenanforderungen und Wartbarkeit

Bachelorarbeit - betreut von Dr. Andreas Schröder

Softwaresysteme, die 24 Stunden lang im Einsatz sind, bilden die Grundlage unserer global vernetzten Welt. Es besteht ein Interesse daran, daß solche Softwaresysteme nie oder nur äußerst selten ausfallen. Jedes Softwaresystem muss aber in regelmäßigen Abständen aktualisiert werden und dafür ist es in der Regel notwendig das Softwaresystem herunterzufahren. Somit entsteht eine Konflikt zwischen permanenter Verfügbarkeit und permanenter Aktualisierung. Es liegt also auf der Hand Softwaresysteme zu konstruieren, die zur Laufzeit aktualisiert werden können, so daß diese weiterhin permanent verfügbar sind. Ein solches Softwaresystem hat jedoch ganz bestimmte Konsequenzen für die Softwarearchitektur. Der Entwickler muss nun die Software modularisieren, Schnittstellen genau definieren und die Abhängigkeiten zwischen den Modulen modellieren.

Ein Framework, das speziell auf Laufzeitaktualisierung ausgelegt ist, ist Java OSGi. In OSGi können Module zur Laufzeit gestartet, gestoppt, ausgetauscht und aktualisiert werden. Um herauszufinden, welche Konsequenzen die Laufzeitaktualisierbarkeit in der Praxis mit sich bringt, wurde eine kleine Warenwirtschaft einmal modular mit Java OSGi und einmal nicht modular auf herkömmlicher Weise in Java implementiert. Die Warenwirtschaft besteht aus drei Modulen: Anwendungskern, Artikelverwaltung und Belegverwaltung. Sowohl die Artikelverwaltung als auch die Belegverwaltung können in der OSGi Variante beliebig zur Laufzeit gestartet, gestoppt und aktualisiert werden, ohne daß die komplette Software neugestartet werden muss. Im Vergleich zur nicht modularen Variante ist der Codeumfang deutlich höher (28 Klassen statt vorher 13 Klassen). Dies liegt vor allen Dingen daran, daß in der OSGi Variante die Abhängigkeiten zwischen den Modulen aufwendiger modelliert werden müssen. Am eigentlichen Quellcode für die Funktionalitäten der Artikel- und Belegverwaltung hat sich jedoch kaum etwas geändert.

Dennoch ist es aus Sicht des Entwicklers relativ leicht mit Java OSGi ein Softwaresystem zu konstruieren, das zur Laufzeit aktualisiert werden kann. Der leicht erhöhte Codeumfang bedingt durch die Abhängigkeiten zwischen den Modulen, fällt bei der Entwicklung nicht ins Gewicht und ist beherrschbar.

-------------------------------------------------------