Digicampus
Seminar: Seminar zu Software- und Systems Engineering (Bachelor) - Details
Sie sind nicht in Stud.IP angemeldet.
Lehrveranstaltung wird online/digital abgehalten.

Allgemeine Informationen

Veranstaltungsname Seminar: Seminar zu Software- und Systems Engineering (Bachelor)
Veranstaltungsnummer INF-0126
Semester WS 2019/20
Aktuelle Anzahl der Teilnehmenden 3
maximale Teilnehmendenanzahl 6
Wartelisteneinträge 1
Heimat-Einrichtung Softwaretechnik
Veranstaltungstyp Seminar in der Kategorie Lehre
Vorbesprechung Montag, 14.10.2019 14:00 - 15:30
Erster Termin Montag, 14.10.2019 14:00 - 15:30, Ort: (3018 N)
Leistungsnachweis Schriftliche Ausarbeitung (ca. 10 Seiten) und Vortrag (30 Minuten)
Online/Digitale Veranstaltung Veranstaltung wird online/digital abgehalten.
Hauptunterrichtssprache deutsch
ECTS-Punkte 4

Räume und Zeiten

(3018 N)
Montag, 14.10.2019 14:00 - 15:30

Kommentar/Beschreibung

In dem Seminar werden aktuelle Themen aus dem Umfeld des Software- und Systems Engineering behandelt.

Der Schwerpunkt in diesem Jahr liegt auf Algorithmen für verteilte, dezentrale Systeme für Selbst-organisierende Systeme.
Dabei sollen die folgenden Themen genauer untersucht werden:

- Verteilte Datensynchronisation:
=========================
Greifen mehrere nebenläufige Prozesse schreibend auf eine gemeinsam genutzte Datenstruktur zu, so wird von verteilter Datensynchronisation gesprochen. Dabei muss sichergestellt werden, dass die gemeinsam genutzte Datenstruktur nicht in einen inkonsistenten Zustand geraten kann.
Ziel dieser Arbeit ist es, verschiedene Algorithmen zur Datensynchronisation gegenüberzustellen und zu vergleichen. Sie betrachtet nicht nur die Anzahl der benötigten Nachrichten, sondern auch die speziellen Probleme der einzelnen Algorithmen. Darüber hinaus beleuchtet sie, wo und wie Algorithmen zur Datensynchronisation in der Praxis eingesetzt werden.
Startpunkt der Literaturrecherche:
• Tanenbaum, A. S., & Van Steen, M. (2007). Distributed systems: principles and paradigms. Prentice-Hall.

- Verteilte Blackboard Ansätze / Verteilte Datenbanken:
==========================================
In verteilten Systemen können zum Austausch von Daten neben direkter Kommunikation auch geteilte, synchronisierte Speicher verwendet werden. In der Literatur der Multi-Agenten und Multi-Roboter Systeme werden Konzepte für diese synchronisierten Speicher auch als „Blackboard“ bzw. „verteiltes Blackboard“, in anderen Einsatzgebieten auch als verteilte Datenbanken bezeichnet.
Startpunkt der Literaturrecherche:
• A Distributed Blackboard Approach Based Upon a Boundary Node Concept. Jeremy Straub. 2015
• Spanner: Google’s Globally Distributed Database. JAMES C. CORBETT, JEFFREY DEAN, MICHAEL EPSTEIN, ANDREW FIKES, CHRISTOPHER FROST, J. J. FURMAN, SANJAY GHEMAWAT, ANDREY GUBAREV, CHRISTOPHER HEISER, PETER HOCHSCHILD, WILSON HSIEH, SEBASTIAN KANTHAK, EUGENE KOGAN, HONGYI LI, ALEXANDER LLOYD, SERGEY MELNIK, DAVID MWAURA, DAVID NAGLE, SEAN QUINLAN, RAJESH RAO, LINDSAY ROLIG, YASUSHI SAITO, MICHAL SZYMANIAK, CHRISTOPHER TAYLOR, RUTH WANG, and DALE WOODFORD. 2011
• CockroachDB https://www.cockroachlabs.com/ (kein Kandidat für die Implementierung, da bereits im Einsatz – kann aber als Vergleichstechnologie herangezogen werden)

- Consensus-Mechanismen mit Fokus auf Leader Election für Multi-Roboter Systeme:
=================================================================
In verteilten Systemen, bestehend aus Einheiten mit homogenen Fähigkeiten, ist es oft nicht einfach zu entscheiden welche Einheit eine gewisse Aufgabe übernehmen soll (z.B. das Berechnen eines Jobs in einem verteilten Rechencluster, das Koordinieren eines Tasks bei Multi-Roboter Systems). Um eine Lösung für diese Entscheidung zu generieren eignen sich Consensus-Mechanismen und im speziellen Leader-Election Mechanismen.
Startpunkt der Literaturrecherche:
• Dynamic Leader Allocation in Multi-robot Systems Based on Nonlinear Model Predictive Control. Augusto de Holanda B. M. Tavares, Sarah Pontes Madruga, Alisson V. Brito, Tiago P. Nascimento. 2019
• Multi-Robot Fast-Paced Coordination with Leader Election. Ricardo Dias, Bernardo CunhaJosé Luis AzevedoArtur PereiraNuno Lau.2019

- Verteiltes Constraint Solving:
========================
Als verteiltes Constraint Solving oder distributed constraint satisfaction problems (DisCSPs) werden Entscheidungsprobleme bezeichnet, bei denen Variablen anhand bestimmter Einschränkungen (oder constraints) Werte zugewiesen werden. Im Gegensatz zu herkömmlichen constraint satisfaction problems werden hier mögliche Variablenbelegungen (oder Lösungen) nicht zentral errechnet, sondern auf mehrere Agenten verteilt.
In dieser Arbeit soll gezeigt werden, wie und mit welchen Tools DisCSPs gelöst werden können. Dazu sollen prototypische Probleme (z.B. Damenproblem), aber auch Probleme aus der Forschung (z.B. Rollenallokation in Produktionsanlagen) als DisCSPs umgesetzt werden.
Startpunkt der Literaturrecherche:
• Fioretto, F., Pontelli, E., & Yeoh, W. (2018). Distributed constraint optimization problems and applications: A survey. Journal of Artificial Intelligence Research
https://frodo-ai.tech/ - Ein Framework für die Verwendung von verschiedenen verteilten Constraint Solving Algorithmen
• Roussel, O., & Lecoutre, C. (2009). Xml representation of constraint networks: Format xcsp 2.1

- Aktuelle MAS Frameworks:
======================
In Multi-Agenten-Systemen (MAS) arbeiten mehrere Software-Agenten zusammen, um gemeinsam ein Problem zu lösen. Zur Umsetzung von Multi-Agenten-Systemen gibt es eine Reihe von Frameworks, Bibliotheken und Tools in verschiedenen Sprachen und mit unterschiedlichem Umfang.
Diese Arbeit soll verschiedene, aktuelle MAS-Frameworks recherchieren und vergleichen. Dabei soll sich die Arbeit an bestehenden Verfahren zur Bewertung von Software orientieren und auch die Erlernbarkeit (z.B. durch das Schreiben eines „Hello World“-Programms) beurteilen.
Startpunkt der Literaturrecherche:
• Deprez, J. C., & Alexandre, S. (2008). Comparing assessment methodologies for free/open source software: OpenBRR and QSOS. In International Conference on Product Focused Software Process Improvement (pp. 189-203). Springer, Berlin, Heidelberg.
• Dorri, A., Kanhere, S. S., & Jurdak, R. (2018). Multi-agent systems: A survey. IEEE Access, 6, 28573-28593.

- Kooperatives Multi-Agent Task-Planning:
================================
Im Kontext von Multi-Agenten und Multi-Roboter Systemen spielt häufig die Planung von Missionen eine große Rolle, um zielgerichtete Handlungen der Einheiten des Systems zu erzielen. Dabei können Pläne an zentraler Stelle geplant und danach an die einzelnen Einheiten verteilt werden oder die Pläne werden verteilt erstellt und danach migriert.
Startpunkt der Literaturrecherche:
• Cooperative Epistemic Multi-Agent PlanningWith Implicit Coordination. Engesser, Thorsten and Bolander, Thomas and Mattmüller, Robert and Nebel, Bernhard.2015
• Multi-robot planning with conflicts and synergies. Yuqian Jiang, Harel Yedidsion, Shiqi Zhang, Guni Sharon, Peter Stone. 2019
• Efficient approaches for multi-agent planning. Daniel Borrajo, Susana Fernández.2019
• A general, fully distributed multi-agent planning algorithm. R Nissim, RI Brafman, C Domshlak. 2010
• Hybrid Multi-agent Planning. Elkawkagy, Mohamed and Biundo, Susanne. 2011

Anmelderegeln

Diese Veranstaltung gehört zum Anmeldeset "Beschränkte Teilnehmeranzahl: Seminar zu Software- und Systems Engineering (Bachelor)".
Folgende Regeln gelten für die Anmeldung:
  • Es wird eine festgelegte Anzahl von Plätzen in den Veranstaltungen verteilt.
    Die Plätze in den betreffenden Veranstaltungen wurden am 01.10.2019 um 23:59 verteilt. Weitere Plätze werden evtl. über Wartelisten zur Verfügung gestellt.