INFO zu den Projektgruppen der Fakultät für Informatik mit Beginn im WiSe 2015/16 Malte Isberner Projektgruppen-Beauftragter OH 14 / Raum 107 Tel.: +49(231)755-5806 E-Mail: [email protected] Postadresse: Technische Universität Dortmund Lehrstuhl Informatik V 44221 Dortmund Inhalt • Vorbemerkungen • Projektgruppen WiSe 2015/16 und Termine der Einzelpräsentationen • Zum Auswahlverfahren • Anmeldung zu den Projektgruppen • Zur Stellung der Projektgruppen in den Prüfungsordnungen • Übersicht zu den Voraussetzungen der einzelnen Projektgruppen • Kurzbeschreibung der Projektgruppen Vorbemerkungen Projektgruppen gibt es an den Hochschulen der Bundesrepublik seit ca. 1970. Sie wurden im wesentlichen aufgrund der Forderungen von Studenten der 68-er und Nach-68-er Generation in Studienpläne und Prüfungsordnungen aufgenommen. Zentrale Forderungen waren: • selbstbestimmtes Lernen • interdisziplinäre Ausbildung • berufsbezogene Studiengänge wobei gesellschaftsbezogene Aspekte des Studiums besonders betont werden sollten. Wenn in der Fakultät für Informatik auch lediglich der „Berufspraxisbezug“ der Ausbildung die wesentliche Begründung für die Einführung der Projektgruppen bildete, erscheinen vor obigem Hintergrund die folgenden Überlegungen wichtig. Lernende und Lehrende kommen bei der Projektarbeit in eine völlig neue, ungewohnte und sicherlich teilweise schwierig zu akzeptierende Situation. Für die Studenten heißt das zunächst: weg von der Konsumentenhaltung aus Vorlesungen, weg vom Bearbeiten vorgegebener Aufgaben aus Übungen, Praktika und Seminaren – stattdessen selbständiges Strukturieren der Arbeit, selbständiges Erarbeiten von Problemen und eigenverantwortliches Lösen der Probleme. Für die Lehrenden heißt das: weg von der Rolle als nie versagende Wissensquelle, die auch in der schwierigsten Situation immer noch eine richtige Lösung hervorbringt – stattdessen auch Zugestehen von fachlicher Autorität an Studenten. Und das wiederum heißt zu akzeptieren, dass die Lehrenden weder für alle fachlichen Probleme fertige Lösungen, noch bei jeder persönlichen Auseinandersetzung ideale Ratschläge zur Verhinderung von Streitigkeiten haben. Zusammengefasst heißt das: Projektarbeit lebt vom Engagement der Projektgruppenmitglieder (Studenten und Veranstalter) und stirbt bei einem Mangel davon. Noch stärker als bei anderen Lehrveranstaltungsformen liegt es in der Verantwortung jedes Teilnehmers (auch hier Studenten und Veranstalter), was er für sich und die Gruppe daraus macht. Projektgruppen WiSe 2015/16 und Termine der Einzelpräsentationen Nr. Veranstalter Einzelpräsentation Krumm, Burkert 01.06.2015, 15:15 Uhr, OH16/205 B Big Data – Datenanalyse im großen Stil Morik, Bockermann 26.05.2015, 14:15 Uhr, OH12/4.013 C Solar Doorplate – Energiegewahre Systemsoftware für ubiquitäre Systeme Lochmann, Buschhoff, Spinczyk 01.06.2015, 16:00 Uhr, OH16/205 D Spielende kooperierende Agenten Quadflieg, Hildebrand, Eichhorn 21.05.2015, 14:1515:45 Uhr, OH12/3.013 E MoSAIC – Model-based Self-Adaption of Industry 4.0 Configurations Neubauer, Naujokat, Bauer, Steffen 28.05.2015, 14:15 Uhr, OH14/105 A Thema der Projektgruppe Gamification4Rehabilitation Zum Auswahlverfahren Bei der Anmeldung ist anzugeben, mit welcher Priorität Sie welche Projektgruppe wählen: 1=höchste Priorität 5=niedrigste Priorität 0=an dieser PG bin ich nicht interessiert Es ist nicht erlaubt, die gleiche Priorität mehrfach zu vergeben. Jeder Veranstalter erhält die Anmeldungen, bei denen seine Projektgruppe mit erster Priorität angegeben ist und wählt sich seine Teilnehmer nach fachlichen Gesichtspunkten aus. Nicht besetzte Plätze in einer Projektgruppe werden durch überzählige Studenten aus anderen Projektgruppen entsprechend den Prioritäten besetzt. Jede Projektgruppe muss mindestens 8 und darf höchstens 12 Teilnehmer haben. Die PG-Teilnehmer werden nach folgendem Verfahren ausgewählt und auf die PGs verteilt: 1. Die Projektgruppen-Bewerberinnen und Bewerber werden gemäß ihrer ersten Priorität denVeranstalterinnen und Veranstaltern zugeordnet. 2. Die Projektgruppen-Veranstalterinnen und Veranstalter wählen davon insgesamt maximal neun Teilnehmerinnen und Teilnehmer aus. 3. Weitere Teilnehmerinnen und Teilnehmer werden aus dem Bewerber-Pool mit ersten Priorität abhängig vom Zeitpunkt ihres Vordiploms bzw. Beginn des Master-Studiums (je weiter in der Vergangenheit, um so größere Priorität) bestimmt; bei gleichem Zeitpunkt entscheidet das Los. Wenn eine Bewerberin oder ein Bewerber bereits eine Projektgruppe aus Gründen, die sie oder er selbst zu verantworten hat, abgebrochen hat oder ausgeschlossen wurde, zählt der Zeitpunkt an dem diese Projektgruppe abgeschlossen wurde oder wird. 4. Ist die Gesamtzahl von zwölf Teilnehmerinnen und Teilnehmern in einzelnen Projektgruppen nicht erreicht, wird das Verfahren ab (2) gemäß der zweiten Priorität, in weiteren Runden gemäß der dritten Priorität etc. durchgeführt. 5. Die Projektgruppen-Beauftragten führen nach Abschluss des Vergabeverfahrens Nachrückerlisten aus denen die Veranstalterinnen und Veranstalter in Absprache mit den Projektgruppenbeauftragten eine Bewerberin oder einen Bewerber auswählen, um alle Projektgruppenplätze zu besetzen, wenn eine Teilnehmerin oder ein Teilnehmer einen Platz nicht in Anspruch nimmt. Anmeldung zu den Projektgruppen Vordiplom / begonnenes Master-Studium ist Voraussetzung (Stichtag: 03.06.2015) Die Anmeldung erfolgt bis zum 03.06.2015 (12:00 Uhr) online unter https://projektgruppen.cs.tu-dortmund.de Hier finden Sie auch weitere Informationen zu den Projektgruppen. Zur Stellung der Projektgruppen in der Prüfungsordnungen Master Die Projektgruppe stellt ein unbenotetes Pflichtmodul in den Masterstudiengängen Informatik und Angewandte Informatik dar. Kriterien zum Bestehen des Moduls sind in der Projektgruppenordnung näher erläutert. Diplom Die Teilnahme an einer Projektgruppe ist Pflicht für alle diejenigen Studenten, die im Hauptfach Informatik oder Ingenieur-Informatik studieren. Für die erfolgreiche Teilnahme gibt es einen Schein, der dem Antrag auf Zulassung zur letzten Diplomprüfung beigefügt werden muss. Kriterien zur Scheinvergabe sind in der Projektgruppenordnung näher erläutert. Projektgruppenordnung Die Projektgruppenordnung im Web unter dem folgenden Link abrufbar: http://projektgruppen.cs.tu-dortmund.de/ Hinweis zum Arbeitsaufwand in Projektgruppen: Immer wieder gibt es Diskussionen über den Arbeitsaufwand, der für eine Projektgruppe aufgebracht werden muss. Für die Studierenden ist es wichtig zu wissen, dass die im Vorlesungsverzeichnis genannten 8 SWS pro Semester NICHTS bzw. nur wenig mit dem tatsächlichen Arbeitsaufwand zu tun haben, der für die PG-Arbeit notwendig ist. In gleicher Weise, wie z. B. bei einer Lehrveranstaltung mit 6 SWS (4 SWS Vorlesung, 2 SWS Übung) erhebliche Vor- und Nacharbeit bis zum Bestehen der Prüfung notwendig ist, ist auch bei PGs deutlich mehr Zeit aufzubringen als etwa 8 Stunden pro Woche. Man rechnet für durchschnittlich begabte Studierende mit dem Faktor 2,5 über die gesamten 2 Semester, auch hier wie bei Prüfungen inkl. der vorlesungsfreien Zeit. Durchschnittlich begabte Studierende sollten mit einer tatsächlichen durchschnittlichen Arbeitsbelastung von etwa 15-20 Stunden pro Woche rechnen, weniger Begabte wie bei Prüfungen mit teilweise deutlich mehr, sehr Begabte mit deutlich weniger. Die Teilnahme an weiteren Lehrveranstaltungen ist entsprechend zu planen. Der Aufwand für die PG sollte etwa der Hälfte eines Vollzeitstudiums entsprechen. Ansprechpartner: Sollte es im Verlauf der Projektgruppenarbeit zu Schwierigkeiten, z. B. wegen zu hoher Anforderungen, zu großem Arbeitsaufwand oder ähnlichem kommen, steht der Projektgruppenbeauftragte der Fakultät für Informatik als Ansprechpartner zur Verfügung. Übersicht zu den Voraussetzungen der einzelnen Projektgruppen (V) Voraussetzung (W) wünschenswert (M) mindestens eine (2) mindestens zwei A: Gamification4Rehabilitation (Krumm, Burkert) • Kenntnisse im Bereich Rechnernetze und verteilte Systeme (V) • Kenntnisse in der objektorientierten Programmierung in Java (V) • Kenntnisse Service-orientierter Architekturen (W) B: Big Data - Datenanalyse im großen Stil (Morik, Bockermann) • Programmierkenntnisse in Java (V) • Kenntnisse in objektorientierter Modellierung und Programmierung (V) • DVEW – Vorlesung Darstellung, Verarbeitung und Erwerb von Wissen (W) • KI/ML – Vorlesung Künstliche Intelligenz/Maschinelles Lernen (W) • KDD – Vorlesung Wissensentdeckung in Datenbanken (W) • Vorlesung Verteilte Algorithmen (W) C: Solar Doorplate - Energiegewahre Systemsoftware für ubiquitäre Systeme (Lochmann, Buschhoff, Spinczyk) • Kenntnisse aus der Vorlesung „Betriebssystembau“, „Software ubiquitärer Systeme“ oder einer vergleichbaren, nachgewiesen durch erfolgreiche Prüfung oder Übungsteilnahme (einschließlich der laufenden Veranstaltung „Software ubiquitärer Systeme“) (V) • Verständnis englischsprachiger Artikel und Handbücher (V) • Unix-/Linux-Kenntnisse (W) • Programmierkenntnisse C/C++ (W) • Hardwarenahe Programmierung (W) D: Spielende kooperierende Agenten (Quadflieg, Hildebrand, Eichhorn) • Erfolgreicher Abschluss wenigstens einer der Veranstaltungen Darstellung, Verarbeitung und Erwerb von Wissen (DVEW) oder Einführung in die Computational Intelligence, oder Nachweis vergleichbarer Kenntnisse (V) • Erfahrungen im Umgang mit unixartigen Betriebssystemen (W) • Praktische Kenntnisse in objektorientierter Programmierung, z.B. in der Sprache C# (W) • Vorkenntnisse im Bereich Wissensrepräsentation und/oder Computational Intelligence, wie sie zum Beispiel durch Besuch der Master-Veranstaltungen Commonsense Reasoning oder Fortgeschrittene Themen der Wissensrepräsentation erworben werden können (W) • Vorkenntnisse zu Unity3D, z.B. aus dem Fachprojekt Digital Entertainment Technologies (W) E: MoSAIC - Model-based Self-Adaption of Industry 4.0 Configurations (Neubauer, Naujokat, Bauer, Steffen) • Fundierte Kenntnisse in mindestens einer objektorientierten Programmiersprache, zum Beispiel Java oder C(++|#) (V) • Elementare Kenntnisse über Modellierungstechniken, wie sie zum Beispiel in den Vorlesungen „Formale Methoden des Systementwurfs“, „Virtualisierung und Compilation“, „Softwarekonstruktion“ und „Dienstleistungsinformatik“ vermittelt werden (V) • Kenntnisse im Umgang mit Eclipse-Werkzeugen und -Programmierung (W) • Kenntnisse im Bereich der Automatisierungstechnik (W) 9 A) Gamification4Rehabilitation 1. Thema der Projektgruppe: Gamification4Rehabilitation 2. Zeitraum: WS 2015/2016 und SS 2016 3. Veranstalter: Prof. Dr. Heiko Krumm / M.Sc. Malte Burkert Fakultät für Informatik, LS IV, FG RvS, OH16, Raum 217/219, Tel. 4674/5427 4. Aufgabe In den letzten Jahren wurde die Entwicklung rund um die Erfahrung virtueller Welten immer weiter getrieben. Nachdem verschiedenste VideospielPlattformen kaum merkliche Weiterentwicklungen mehr hinsichtlich des Spieleerlebnis gemacht haben, wurde 2006 die Spielekonsole Wii auf den Markt gebracht. Der klassische Spielekontroller wurde durch einen bewegungssensitiven Kontroller ausgetauscht, Abbildung 1 Paperdude VR der Firma Globacore durch den die Steuerung von Videospielen durch Bewegungen möglich wurde. Es folgten 2010 die PlayStation-Move mit einem ähnlichen Ansatz sowie die Kinect-Kamera von Microsoft, durch die gänzlich auf einen Kontroller verzichtet werden kann. Durch die Kinect können Spiele auch ausschließlich durch Bewegungen des Körpers gesteuert werden. Neben der Entwicklung von unterschiedlichen Steuerungsmöglichkeiten wurde auch an der Wahrnehmung virtueller Realitäten gearbeitet. Ausgabegeräte, wie z.B. die Oculus Rift, Großbildleinwände oder den Betrachter umgebende Displays erzeugen ein Gefühl der Immersion. D.h. die betrachtende Person taucht immer weiter in die virtuelle Welt ein und hat ein verstärktes Gefühl ein Teil dieser Welt zu sein. Die Kombination der Kontrolle virtueller Realitäten über natürliche Körperbewegungen mit einer gesteigerten Immersion führt zu einer neuen Wahrnehmung virtueller Realitäten. Diese Wahrnehmung kann insbesondere bei der Umsetzung von Sportspielen ausgenutzt werden. Der reine Spielegedanke rückt in den Hintergrund und die sensorbasierte Spieleumgebung kann zum Beispiel für medizinisch motivierte sportliche Aktivitäten genutzt werden. Im medizinischen Umfeld führen sportliche Aktivitäten zum Beispiel nach einem Herzinfarkt oder einer Herzklappenoperation zur unmittelbaren Verbesserung der Lebensumstände, so dass Patienten so schneller in das alltägliche Leben zurückkehren können. Häufig sinkt im Alltag jedoch die Motivation für das regelmäßige Durchführen von Rehabilitationsmaßnahmen, obwohl diese notwendig wären. Eine sensorbasierte Spieleumgebung kann im Rehabilitationssport genutzt werden, um die langfristige und regelmäßige Durchführung notwendiger Übungen zu gewährleisten. Erhöhung des Immersionsgrades in einer sensorbasierten Spieleumgebung Ergometer werden nicht nur in Rehabilitationszentren oder Fitnessstudios, sondern häufig auch zu Hause für Rehabilitationsmaßnahmen oder aus rein sportlichen Gründen (Ausdauertraining im Winter) eingesetzt. Um Monotonie und abnehmender Motivation beim Training vorzubeugen, wird eine virtuelle Realität erzeugt, so dass ein regelmäßiges Training wahrscheinlicher ist. Der Spieler begibt sich hierfür in eine 3D-Welt, in der er Aufgaben löst und sich mit anderen Spielern/Spielständen messen kann. Ein reales mit Sensorik ausgestattetes Ergometer sowie die Körperbewegungen dienen der Steuerung des Spielgeschehens. Vorbild für die Aufgabe der 10 A) Gamification4Rehabilitation Abbildung 2 a) Flugsimulator für die Pilotenausbildung b) Aufbau des Hörorgans c) 4D-Kino mit sich bewegenden Sesseln d) Ergometer auf Bewegungsplattform 1 Projektgruppe ist das Projekt Paperdude VR der Firma Globacore (s. Abbildung 1). Hier wird ein Spielerlebnis mit Hilfe einer Kinect, der Oculus Rift sowie einem Ergometer erzeugt. Ein typisches Szenario eingebettet in den Kontext einer Rehabilitation könnte beispielsweise wie folgt aussehen: Frau D. ist 42 Jahre alt und wurde nach einer Vorsorgeuntersuchung als Risikokandidat für eine Herzerkrankung eingestuft. Um typischen Risikofaktoren für diese Erkrankung vorzubeugen nimmt sie an dem Pilotprojekt „Gamification4Rehabilitation“ teil. Dazu legt sie sich vor der Trainingseinheit medizinische Sensoren an, die für die Überwachung ihrer Vitalparameter benötigt werden und der Dokumentation des Trainingsfortschritts dienen. Anschließend setzt sie sich auf das mit weiterer Sensorik ausgestattete Ergometer, setzt sich die 3D-Brille auf und begibt sich für ihre Trainingsmaßnahme in eine virtuelle Realität. Frau D. wählt eingangs den Spielmodus Paperboy (ein Videospiel-Klassiker von 1984) aus, dessen Ziel es ist durch eine Straße mit Hindernissen zu fahren und Zeitungen zu verteilen. Die Zeitungen werden beim Vorbeifahren in Briefkästen und Einfahrten geworfen. Punkte gibt es für ausgewichene Gegenstände und mit Zeitungen getroffene Briefkästen und Einfahrten. Frau D. ist gut dabei und schafft es den meisten Hindernissen auszuweichen. Lediglich mit der Treffsicherheit läuft es noch nicht so gut. Die Koordination von Fahren und gleichzeitigem Werfen der Zeitungen erfordert Konzentration und ist ziemlich anstrengend für Frau D. Am Ende der Fahrt bekommt sie ihren Punktestand angezeigt und sieht, dass sie sich im Vergleich zu ihren letzten Fahrten verbessert hat. Sie hat einen neuen Highscore aufgestellt. Durch die Beschreibung wird klar, dass trotz 3D-Brille, Ergometer und Erkennung der Wurfbewegungen durch eine Kinect-Kamera ein wichtiger Punkt zur realistischen Wahrnehmung der virtuellen Fahrt fehlt. Für ein vollständiges immersives Fahrgefühl fehlt die Rückkopplung aus der virtuellen in die reale Welt. Es werden lediglich Bewegungen aus der realen in die virtuelle Welt übertragen. Es fehlt jedoch ein fehlendes mechanisches Feedback des Systems, welches im Rahmen der Projektgruppe durch eine Bewegungsplattform auf der das Ergometer (s. Abbildung 2d) angebracht ist, umgesetzt werden soll. Der gleiche Effekt wird bereits in der Ausbildung von Piloten in Flugsimulatoren (s. Abbildung 2a)2) oder in sogenannten 4D- bzw. 5D-Kinos (Kinositze befinden sich auf einer sich bewegenden 1 2 http://www.globacore.com/paperdude-vr/ http://www.flugsimulator.com/lufthansa-flugsimulator.html 11 A) Gamification4Rehabilitation 3 Plattform Abbildung 2c) eingesetzt. Die Bewegung, die im Flugsimulator oder im Kinosaal erzeugt wird, wird vom Menschen in den Bogengängen des Ohrs wahrgenommen (s. Abbildung 2b)4. Die in den Bodengängen befindliche Flüssigkeit schwappt umher und vermittelt den Bewegungseindruck. Technischer Hintergrund Im Rahmen der Projektgruppe sollen verschiedene aktuelle Themen aus der Informatik bearbeitet werden. Mit den einzelnen Komponenten, wie der Kinect oder der Oculus Rift hat sich die IT inzwischen schon relativ ausführlich beschäftigt. Die Kombination der Einzelkomponenten soll es ermöglichen eine spielgetriebene Rehabilitationsmöglichkeit zu schaffen. Ein aus vernetzten Komponenten bestehendes System das realle und virtuelle Elemente kombiniert wird auch als Cyper-Physical-System (CPS) bezeichnet. Die Schnittstelle zur virtuellen Realität besteht aus dem technisch modifizierten Ergometer (Lenkbewegung sowie Bremskraft ist über entsprechende Sensorik softwaretechnisch auswertbar), der Oculus Rift (Senorik für die Bewegung des Kopfes) sowie einer Kinect, die die Körperbewegungen des Patienten erfassen. Diese wird in der virtuellen Realität für die Steuerung des Spielgeschehens genutzt. Neben der visuellen Darstellung der virtuellen visuellen Realität über die Oculus Rift, ist ein spürbares Feedback des Systems einerseits durch die Bewegungsplattform, die mit Hilfe einer speicherprogrammierbaren Steuerung kontrolliert werden kann sowie andererseits durch die Kontrolle des Trittwiderstands vom Ergometer gegeben. So können z.B. verschiedene Untergrundbeläge, Hindernisse oder Steigungen in der Spielwelt in der realen Welt erfahrbar gemacht werden. Der Einsatz dieser Vielzahl an technisch unterschiedlichen Geräten bedingt die Auseinandersetzung mit der Kommunikation in verteilten System und somit der Anwendung verschiedener Kommunikationsprotokolle, Systementwürfe und Schnittstellen der Einzelsysteme untereinander. Mit einer möglichen Erweiterung zur Mehrspielerfähigkeit muss auch die erhöhte Komplexität eines solchen Systems im Systementwurf und bei der Umsetzung beachtet werden. Die 3D-Welt und die virtuelle Realität stellt eine weitere Basis für die spielbasierte Rehabilitationsmaßnahme dar. Sie bietet somit einen weiteren Teilbereich der Informatik mit dem sich die Projektgruppe auseinandersetzen muss. Es muss eine geeignete Spiele-Engine (z.B. Unity3D) gewählt werden, um ein immersives Spielerlebnis umsetzen zu können. Sensordaten müssen entsprechend aufbereitet und in der virtuellen Welt widergespiegelt werden. Außerdem müssen Spielereignisse und –Situationen entsprechend mit Hilfe von Bewegungsplattform und Trittwiderstand des Ergometers von der virtuellen in die reale Welt transformiert werden. Bei der Umsetzung ist kein sehr hoher Grad an Realitätsnähe erforderlich, da es primär um den Spaß für den Patienten bzw. Spieler geht. Industrielle Partner Die Umsetzung des Projekts geschieht in Kooperation mit verschiedenen Partnern aus Industrie und Gesundheitsweisen. Die Schüchstermann-Schiller’schen Kliniken, eines der großen Herzzentren Deutschlands, steht dem Projekt für medizinische Fragen zur Seite. Dazu wird die Projektgruppe die Klinik besuchen und vor Ort die Anforderungen an die Umsetzung des Projekts definieren. Der Großteil im Projekt verwendeten medizinischen Sensoren wird von der Firma Corscience bereitgestellt, die bei Klärungsbedarf zur Verfügung steht. 3 4 http://www.seereisedienst.de/uploads/pics/msc-orchestra-4d-kino.jpg http://www.apotheken-umschau.de/Ohren/Morbus-Meniere-Ursachen-148959_2.html 12 A) Gamification4Rehabilitation Ziele der Projektgruppe Ziel der PG ist es, Konzepte und Ideen für die Umsetzung eines Spieles für die Unterstützung von Rehabilitationsmaßnahmen zu erarbeiten. Hierbei soll eine sensorgestützte Spieleplattform entwickelt werden, die die folgenden Sensoren und Komponten zur immersiven Wahrnehmung umfassen soll: Kinect, Oculus Rift, auf Bewegungsplattform montiertes Ergometer. Das Ergometer sowie Körperbewegungen sollen primär die Steuerung des virtuellen Spielecharakters übernehmen, während die Oculus Rift und die Bewegungsplattform für die Erzeugung einer immersiven Wahrnehmung verwendet werden sollen. Außerdem sollen gezielt Sensoren für die Überwachung von Vitalparametern eingesetzt werden (wie z.B. Sensor für Herzfrequenz-Messung). Die geeignete Wahl und Einbettung in das Gesamtkonzept ist im Rahmen der Projektgruppe zu entwickeln. Als Ausgangsbasis für die Umsetzung dienen Technologien für die Spiele-Engine (z.B. Unity3D), für die Middleware (z.B. OSGi) und für die Bewegungsplattform, welche evaluiert und ausgewählt werden müssen. Die Minimalziele werden im Abschnitt 6 detailliert ausgeführt. Diese können durch die Umsetzung weiterer Spiele, Einbindung weiterer Sensoren oder Komponenten zur direkten Überwachung der Vitalparameter durch einen Arzt erweitert werden. 5. Teilnahmevoraussetzungen Voraussetzungen: Wünschenswert: Kenntnisse im Bereich Rechnernetze und verteilte Systeme Kenntnisse in der objektorientierten Programmierung in Java Kenntnisse Service-orientierter Architekturen 6. Minimalziel Das Minimalziel der Projektgruppe besteht aus folgenden Punkten Konzeptionierung und Umsetzung eines Spieles (z.B. Paperboy) unter Verwendung der oben genannten Sensorik (Kinect, Oculus Rift, erweitertes Ergometer inkl. Bewegungsplattform sowie medizinische Sensoren) Entwicklung eines Steuerungssystems, das Systemgrößen der virtuellen Welt auf die Bewegungsplattform überträgt Darstellung des Spielgeschehens für außenstehende Betrachter des Systems 7. Literatur a) Bücher und Artikel zum Einlesen b) Gerd Wütherich, Nils Hartmann, Bernd Kolb, Mathias Lübken: Die OSGi Service Plattform. dpunkt.verlag, 2008 Broy, Manfred.: Cyber-Physical Systems: Innovation durch softwareintensive eingebettete Systeme. Springer, 2010 Melzer, Ingo: Service-orientierte Architekturen mit Web Services: Konzepte – Standards – Praxis. Spektrum Verlag, 2010 Wissenschaftliche Publikationen Dobrev, Famolari, Kurzke, Miller: Device and service discovery in home networks with OSGi, Computer Magazine, IEEE, Aug 2002, Volume: 40, Issue: 8, S. 86-92 Lee, E.A., “Cyber Physical Systems: Design Challenges”, Object Oriented Real-Time Disitributed Computing (ISORC), 2008 11th IEEE International Symposium on, pp. 363-369, 5-7 May 2008 Myriam Lipprandt, Jan Krüger, Detlev Willemsen, Christoph Fiehe, Elmar Zeeb, et al.: “OSAMI-D: An Open Service Platform for Healthcare Monitoring Applications”, IEEE International Conference on Human System Interaction (HIS 2009), Catania, Italien, 2009 O. Schulzyk et al.: A Bicycle Simulator Based on a Motion Platform in a Virtual Reality Environment – FIVIS Project, Advances in Medical Engineering, Springer Proceedings in Physics Volume 114, 2007 8. Rechtlicher Hinweis Die Ergebnisse der Projektarbeit und die dabei erstellte Software sollen der Fakultät für Informatik uneingeschränkt für Lehr- und Forschungszwecke zur freien Verfügung stehen. Darüber hinaus sind keine Einschränkungen der Verwertungsrechte an den Ergebnissen der Projektgruppe und keine Vertraulichkeitsvereinbarungen vorgesehen. 13 B) Big Data Projektgruppenantrag 1. Thema Big Data – Datenanalyse im großen Stil 2. Zeitraum Wintersemester 2015/2016 und Sommersemester 2016 3. Umfang 8 SWS pro Semester 4. Veranstalter Prof. Dr. Katharina Morik Fachbereich Informatik Lehrstuhl 8 OH-12 Raum 4.007 Tel. 0231/755-5101 [email protected] Dipl.-Inf. Christian Bockermann Fachbereich Informatik Lehrstuhl 8 OH-12 Raum 4.019 Tel. 0231/755-6487 [email protected] 5. Aufgabe Die Aufgabe der Projektgruppe ist die Zusammenstellung und Implementierung einer Umgebung um Analyseprozesse f¨ ur große Datenmengen auf Basis moderner, verteilter Big Data Architekturen auszuf¨ uhren. Die Grundlage f¨ ur die Untersuchung solcher Architekturen bildet ein Anwendungsfall der Astro-Physik, bei dem jede Nacht Datenmengen im Terabyte-Bereich gesammelt werden. Motivation Die Verarbeitung großer Mengen von Daten ist zu einer Schl¨ usselqualifikation in der heutigen IT-Landschaft geworden. Waren bisher SQL Datenbanken gefragt, mangelt es Unternehmen heute immer mehr an Experten, die mit Big Data Technologien wie Map&Reduce, NoSQL, verteilten Key-Value Stores oder verteilten Streaming Engines umgehen k¨onnen. Dabei geht es nicht mehr nur um Datenmassen, die in riesigen Datencentern gespeichert liegen und darauf warten, analysiert zu werden, sondern immer mehr um die realzeitliche Verarbeitung von Daten: Je schneller das Ergebnis einer Analyse bereitsteht, um so schneller kann man darauf basierend Entscheidungen treffen. Die unterschiedlichen Anforderungen an die Analyse hat f¨ ur die Modellierung von Big Data Systemen in den letzten Jahren die sogenannte Lambda-Architektur hervorgebracht: λ-Architektur Speed Layer Serving Layer Batch Layer Basierend auf einer Dreiteilung in Serving-Layer, Batch-Layer und Speed-Layer sind moderne Big Data Systeme eine Zusammenstellung unterschiedlicher verteilter Komponenten. F¨ ur jede dieser Komponenten existieren m¨ achtige Open-Source Frameworks, wie beispielsweise die freie Implementierung des Map&Reduce Paradigmas [4] im Apache Hadoop Projekt. Mit Apache Kafka [8, 7] oder Apache Storm [5] gibt es hochskalierbare, clusterf¨ ahige Systeme f¨ ur die Echtzeitverarbeitung von Datenstr¨ omen. 1 14 B) Big Data Modellierung von Big Data Umgebungen Die Entwicklung der unterschiedlichen Big Data Komponenten erfordert ein hohes Maß an Expertenwissen, um die jeweiligen Umgebungen an einen bestimmten Anwendungsfall anzupassen. Es fehlt zudem ein vereinheitlichender Ansatz, um Big Data Systeme einfach zu modellieren. Der Sonderforschungsbereich SFB-876 der TU Dortmund widmet sich seit geraumer Zeit der Analyse von Daten im Rahmen von Big Data. Das am Lehrstuhl 8 entwickelten streams Framework bietet einen Ansatz in diese Richtung: Mit Hilfe eine Abstraktionsschicht (API), sowie einer XML Beschreibung lassen sich mit streams Datenfl¨ usse modellieren und in verschiedenen Komponenten einer Big Data Architektur ausf¨ uhren. Andere Ans¨ atze, wie RapidMiner Radoop, versuchen, bestehende Modellierungs- und Analysewerkzeuge wie RapidMiner [9] auf Big Data Systeme zu portieren. Big Data Analyse von Astrophysikalischen Experimenten Die Projektgruppe widmet sich genau diesem aktuellen Thema und wird die Konzepte moderner Big Data Architekturen nicht nur kennenlernen, sondern an einer realen, physikalischen Forschungsfrage erproben: Der Fachbereich Physik der TU Dortmund betreibt, zur Untersuchung kosmischer Strahlung [6], das FACT Teleskop [1] auf der Insel La Palma. Ziel derartiger Cherenkov Teleskope ist die Suche und Charakterisierung von Quellen kosmischer Strahlung anhand von Cherenkov-Strahlung, die als Effekt der Gamma-Strahlen meßbar ist. Durch langfristige Beobachtung k¨ onnen so Supernovaexplosionen, Kollisionen von Neutronensternen oder aktive galaktische Kerne (hinter denen supermassive Schwarze L¨ocher stecken) erkannt und untersucht werden [3]. Das FACT Teleskop stellt einen Prototypen f¨ ur mehrere, geplanten Arrays von Cherenkov Teleskopen dar (CTA Projekt). Das einzelne FACT Teleskop selbst erzeugt dabei je Nacht Daten von etwa 1 TB Umfang. F¨ ur die Untersuchung der kosmischen Strahlung basierend auf den Teleskop-Daten ist eine Datenvorverarbeitung auf dem riesigen Datenbestand notwendig (vgl. Abbildung 1). Calibration, Cleaning Feature Extraction Signal Separation Energy Estimation Abbildung 1: Verarbeitungsschritte der FACT Teleskop-Daten Die Physik entwickelt diese Verarbeitungskette auf einer sehr anwendungsspezifischen Ebene, ohne eine weitergehende Ber¨ ucksichtigung einer verteilten, hochskalierenden Umsetzung. Die Modellierung der FACT Vorverarbeitung erfolgt u ¨ber die XML Spezifikationen des streams Frameworks [2], das innerhalb des SFB-876 an der TU Dortmund entwickelt wurde. Im Rahmen dieser Projektgruppe sollen nun unterschiedliche Tools und Systeme untersucht werden, mit Hilfe derer die physikalischen Daten m¨ oglichst effizient verarbeitet werden k¨ onnen. Dazu m¨ ussen die XML-Prozessmodelle der Physiker auf verteilte Prozesse skalierbarer Clustersysteme abgebildet werden. Ein erster Prototyp f¨ ur die Ausf¨ uhrung von XML spezifizierten Prozessen auf Apache Hadoop existiert bereits und kann als Grundlage f¨ ur die Projektgruppe benutzt werden. 2 15 B) Big Data Mit dem Cluster des Sonderforschungsbereiches steht der Projektgruppe eine ComputingUmgebung bereit, um Big Data Anwendungen zu modellieren und umzusetzen. Das erm¨ oglicht den Teilnehmern • die Konzepte und Umsetzung verteilter Anwendungen in einem eigenen Cluster kennen zu lernen; • aktuelle Big Data Systeme in einer realen Umgebung zu testen; • Skalierungsproblematiken und Ausfallsicherheit zu untersuchen; • sich Schl¨ usselqualifikationen f¨ ur aktuelle Technologien anzueignen. Ziel ist dabei sowohl, dass die Teilnehmer sich eine Expertise im Umgang mit Big Data Architekturen aneignen, als auch die Entwicklung einer Plattform zum Modellieren von Big Data Anwendungen, basierend auf bestehender Software (Integration). Die Projektgruppe bietet damit die M¨oglichkeit, sich in einem extrem spannenden Umfeld mit den packenden Forschungsfragen aktueller IT-Systeme zu besch¨ aftigen und diese innerhalb der Datenanalyse eines realen Forschungsprojektes auszuprobieren. Die Ergebnisse der Projektgruppe sollen die Physiker dabei unterst¨ utzen, ihre Analysen in Zukunft noch effizienter durchzuf¨ uhren – ohne dabei selbst in die Tiefen der Big Data Technologien abtauchen zu m¨ ussen. Eine gute Umsetzung von z.B. streams Prozessen auf Cluster-Umgebungen soll nach M¨oglichkeit auch zur realzeitlichen Analyse der TeleskopDaten vor Ort genutzt werden. F¨ ur einen single-node Ansatz basierend auf streams ist dies bereits der Fall. 6. Teilnahmevoraussetzungen 1. Programmierkenntnisse in Java (V) 2. Kenntnisse in objektorientierter Modellierung und Programmierung (V) 3. DVEW - Vorlesung Darstellung, Verabeitung und Erwerb von Wissen (W) 4. KI/ML - Vorlesung K¨ unstliche Intelligenz /Maschinelles Lernen (W) 5. KDD - Vorlesung Wissensentdeckung in Datenbanken (W) 6. Vorlesung Verteilte Algorithmen (W) (V) – Voraussetzung; (W) – w¨ unschenswert. 7. Minimalziele Die Projektgruppe bietet den Teilnehmern ein hohes Maß an Flexibilit¨ at zur Ausgestaltung der beiden Semester. Die Folgenden Punkte sind als Minimalziel gesetzt: 1. Ausf¨ uhrung einfacher XML Prozessdefinitionen auf einem Hadoop Cluster 2. Umsetzung und Evaluierung der Datenvorverarbeitung von FACT Daten mit verschiedenen Big Data Systemen 3. Konzeptionierung, Entwurf und Implementierung eines generischen Modellierungstools f¨ ur Big Data Systeme 4. Erstellen eines Endberichts 3 16 B) Big Data 8. Rechtlicher Hinweis Die Ergebnisse der Projektarbeit und die dabei erstellte Software sollen den Fachbereichen der TU Dortmund uneingeschr¨ ankt f¨ ur Lehr- und Forschungszwecke zur freien Verf¨ ugung stehen. Dar¨ uber hinaus sind keine Einschr¨ ankungen der Verwertungsrechte an den Ergebnissen der Projektgruppe und keine Vertraulichkeitsvereinbarungen vorgesehen. Literatur [1] H. Anderhub et al. Fact - the first cherenkov telescope using a g-apd camera for tev gamma-ray astronomy. Nuclear Instruments and Methods in Physics Research A, 639:58–61, May 2011. [2] Christian Bockermann. The streams framework, 2012. [3] Bradley W. Carroll and Dale A. Ostlie. An Introduction to Modern Astrophysics. Addison-Wesley, San Francisco: Pearson, 2nd (international) edition, 2007. [4] Jeffrey Dean and Sanjay Ghemawat. Mapreduce: Simplified data processing on large clusters. Commun. ACM, 51(1):107–113, January 2008. [5] Nathan Marz et.al. nathanmarz/storm/. Twitter storm framework, 2011. https://github.com/ [6] B. Falkenburg and W. Rhode. From Ultra Rays to Astroparticles: A Historical Introduction to Astroparticle Physics. SpringerLink : B¨ ucher. Springer, 2012. [7] Ken Goodhope, Joel Koshy, Jay Kreps, Neha Narkhede, Richard Park, Jun Rao, and Victor Yang Ye. Building linkedin’s real-time activity data pipeline. IEEE Data Eng. Bull., 35(2):33–45, 2012. [8] Jay Kreps, Neha Narkhede, and Jun Rao. Kafka: a Distributed Messaging System for Log Processing. In Proceedings of the 6th International Workshop on Networking Meets Databases, 2011. [9] Ingo Mierswa, Michael Wurst, Ralf Klinkenberg, Martin Scholz, and Timm Euler. Yale: Rapid prototyping for complex data mining tasks. In Lyle Ungar, Mark Craven, Dimitrios Gunopulos, and Tina Eliassi-Rad, editors, KDD ’06: Proceedings of the 12th ACM SIGKDD international conference on Knowledge discovery and data mining, pages 935–940, New York, NY, USA, August 2006. ACM. 4 17 C) Solar Doorplate Projektgruppenantrag 1 Thema Solar Doorplate Energiegewahre Systemsoftware f¨ ur ubiquit¨are Systeme 2 Zeitraum WiSe 2015/16 und SoSe 2016 3 Veranstalter Alexander Lochmann, Informatik 12, OH-16, Raum E02, Tel. 6141, [email protected] Markus Buschhoff, Informatik 12, OH-16, Raum 103, Tel. 6317, [email protected] Olaf Spinczyk, Informatik 12, OH-16, Raum E01, Tel. 6322, [email protected] 4 Aufgabe Abbildung 1: Konzept-Visualisierung: So k¨ onnte das geplante T¨ urschild aussehen. 4.1 Motivation Ubiquit¨are Systeme und Wireless Sensor Networks (WSNs) sind kleinste eingebettete Systeme, die h¨ aufig in großer Anzahl eingesetzt werden, um Messaufgaben durchzuf¨ uhren oder um Einfluss auf das Lebensumfeld von Menschen zu nehmen. Solche Systeme werden f¨ ur verschiedene Zwecke eingesetzt, z.B. f¨ ur die Netzanbindung von intelligenten“ Waren und Alltagsartikeln (Internet of Things), die Identifizierung und Vernetzung von ” Waren in Produktion und Logistik (Industrie 4.0), die Komfort- und Sicherheitssteuerung in Geb¨ auden (Smart ¨ Home) und die Uberwachung von physikalischen Gr¨ oßen in Ger¨ aten, Versorgungsnetzen und Baukonstruktionen (Cyberphysical Systems). 1 18 C) Solar Doorplate Hierbei ist die Energieversorgung oft ein zentrales Problem, da solche Systeme einerseits nicht immer an Versorgungsnetze angeschlossen werden k¨onnen, z.B. wegen einer Ausbringung im Freien, andererseits aber auch ein Batteriebetrieb oft nicht m¨oglich ist, da ein Batteriewechsel bei einer großen Zahl von Systemen nicht praktikabel ist. Das Einsparen und Verwalten der Ressource Energie wird hier somit zu einer wichtigen Aufgabe: Der Energieertrag durch Solarzellen oder ¨ahnliche Harvesting-Technologien muss gr¨ oßer sein, als der Energieverbrauch der eingesetzten Komponenten. Dies muss nicht nur bei der Auswahl der Hardware, sondern auch beim Entwurf der Software ber¨ ucksichtigt werden [SK11]. Die dazu eingesetzten Techniken sind die Energie¨ uberwachung durch Hardware, das Energy-Accounting [KB09] durch Software und der verbrauchsorientierte Einsatz von Systemkomponenten [DBN12]. Dem zugrunde liegen Energiemodelle f¨ ur Peripherie und Komponenten, die so einfach strukturiert sein m¨ ussen, dass sie zur Berechnung des Energieverbrauchs auf dem eingebetteten System verwendet werden k¨onnen [KPMB08, ZTQ+ 10, BGS12]. Im Bereich der Software strebt man hierbei wiederverwendbare Komponenten an, die im Betriebssystem eines eingebetteten Systems untergebracht werden und dadurch allgemeing¨ ultig die Nutzung aller Komponenten u ¨berwachen und steuern [BMM13, ZELV02, Bus14]. Neben diesen Punkten muss auch der Umgang mit Daten in einer konkreten Anwendung genauer betrachtet werden. Hier ergeben sich die Fragen, wie h¨ aufig Daten erhoben und verarbeitet werden m¨ ussen und u ¨ber welche Kommunikationskan¨ale Daten ausgetauscht werden. Insbesondere beim Einsatz von energiezehrender Funktechnologie m¨ ussen Protokolle und Kommunikationspartner gut auf die Zielsetzung des Energiesparens abgestimmt werden, um sowohl die Verf¨ ugbarkeit der Daten als auch die Verf¨ ugbarkeit des angestrebten Dienstes zu gew¨ahrleisten [PSVP12]. Die hier angerissenen Techniken werfen die Frage auf, wie man Anwendungssoftware und eingebettete Betriebssysteme konzipiert, die diesen Anforderungen gerecht werden und dabei m¨ oglichst wenig Overhead erzeugen: Denn neben der Energie sind in solchen Systemen auch Speicher und Rechenkapazit¨ at knappe Ressourcen. 4.2 Aufgabenstellung Im Rahmen der Projektgruppe soll von den Studierenden exemplarisch f¨ ur die oben angesprochene Klasse von Systemen bzw. Anwendungen ein Netzwerk aus intelligenten T¨ urschildern konzipiert und prototypisch realisiert werden. Folgende Nutzungsszenarien sind daf¨ ur angedacht: Die T¨ urschilder sollen u ¨ber ein Display Auskunft u ber die aktuelle Raumbelegung geben. Bei B¨ u ros wird die Anwesenheit der jeweiligen Mitarbeiter oder der ¨ aktuelle Aufenthaltsort angezeigt. Ist ein Mitarbeiter beispielsweise gerade abwesend, kann ein Besucher durch Einstecken der UniCard einen Vermerk mit der Bitte um Kontaktaufnahme hinterlassen. Beim Einsatz f¨ ur einen Seminarraum wird auf dem Display die aktuelle Veranstaltung sowie die Dauer der Belegung angezeigt. Ein ¨ Raumadministrator soll u andern k¨ onnen. Die Anderungen ¨ber eine geeignete Schnittstelle die Raumbelegung ver¨ werden dann u urschilder weitergegeben. ¨ber ein Gateway an die verschiedenen T¨ Eine vergleichbare Funktionalit¨at wurde von der Universit¨ at Augsburg bereits im Rahmen eines Forschungsprojektes namens Smart Doorplate“ entwickelt. Dabei lag der wissenschaftliche Schwerpunkt jedoch auf den ” m¨oglichen Nutzungsszenarien. Im Rahmen unserer Projektgruppe soll es stattdessen prim¨ ar darum gehen, eine funktionierende Plattform zu konzipieren und zu realisieren, die vollkommen energieautark auf Basis von Solarzellen1 arbeitet. Dabei sollen allgemeine Erkenntnisse u ¨ber Struktur und Funktionsweise energiegewahrer Systemsoftware gewonnen werden. Als technische Basis f¨ ur den ersten Prototypen ist das inBin 2 [ERBtH12] vorgesehen. Es handelt sich dabei um eine Entwicklung des Fraunhofer Instituts f¨ ur Materialfluss und Logistik (IML), mit dem wir im Rahmen eines Forschungsprojekts kooperieren und das seine Unterst¨ utzung f¨ ur die Projektgruppe auf der Ebene der Hardware-Plattform zugesagt hat. Das inBin bezieht seine Energie aus einem Kondensator, der u ¨ber eine IndoorSolarzelle geladen wird. Die Systemsoftware muss den Energieverbrauch sowohl von einzelnen Hardware- als auch einzelnen Softwarekomponenten absch¨atzen k¨ onnen, um so die verbleibende Energie, und daraus resultierend die Restlaufzeit, ermitteln zu k¨onnen. Anhand solcher Informationen k¨ onnen beispielsweise die Funkparameter dynamisch gew¨ahlt werden oder optionale Komfortfunktionen“ deaktiviert werden, um den Energieverbrauch ” situationsabh¨angig zu reduzieren. Je nach Umgebungsbedingungen ist es jedoch nicht vermeidbar, dass die Versorgungsspannung unter einen kritischen Pegel f¨allt. F¨ ur diesen Fall muss die Systemsoftware imstande sein, das System wieder in einen betriebsbereiten Zustand zu bringen, sobald wieder hinreichend Energie verf¨ ugbar ist. In erster Instanz ist z.B. ein vollst¨andiger Neustart des Systems denkbar. Es k¨ onnen aber auch komplexere Mechanismen wie Checkpointing oder persistente Objekte in Erw¨agung gezogen werden. Als Ausgangspunkt f¨ ur die Software-Entwicklung soll das eingebettete Betriebssystem Kratos dienen, das derzeit von unserer Arbeitsgruppe entwickelt wird [Bus14]. 1 Zum Einsatz kommen sollen Solarzellen, die speziell f¨ ur den Betrieb im Innenraumbereich geeignet sind. of activity/automation embedded systems/Products/InBin.html 2 http://www.iml.fraunhofer.de/en/fields 2 19 C) Solar Doorplate Die Systemsoftware soll insbesondere auch einen energiegewahren Netzwerkprotokollstapel einschließen. Wie ¨ bereits erw¨ahnt, werden die T¨ urschilder u bei der Raumbelegung durch das Gateway informiert. ¨ber Anderungen Es muss sichergestellt werden, dass jeder Knoten u ¨ber ihn betreffende Modifikationen des Belegungsplans informiert wird. Hierbei muss die besondere Anordnung der T¨ urschilder ber¨ ucksichtigt werden. Unter Umst¨anden sind nicht alle Knoten direkt vom Gateway erreichbar. Da jedoch die T¨ urschilder station¨ ar sind, k¨ onnen einige beispielsweise als Relay-Station fungieren, um die Weiterleitung von Daten zu realisieren. Das Kommunikationsverhalten kann sich z.B. an dem Tag-Nacht-Zyklus oder an der Position eines Knotens innerhalb des Flures orientieren, um so die Energiepotentiale effizient ausnutzen. Gleichermaßen k¨ onnen die Kommunikationsparameter an die aktuelle bzw. zu erwartende Versorgungssituation angepasst werden. Bei Interesse kann in Kooperation mit dem Fraunhofer Institut eine erweiterte Hardwareplattform konzipiert und prototypisch realisiert werden. Hier sind beispielsweise die Anbindung eines SmartCard -Leseger¨ ates oder anderer Eingabem¨oglichkeiten denkbar. 5 Teilnahmevoraussetzungen 5.1 Voraussetzung • Kenntnisse aus der Vorlesung Betriebssystembau“, Software ubiquit¨ arer Systeme“ oder einer vergleich” ”¨ baren, nachgewiesen durch erfolgreiche Pr¨ ufung oder Ubungsteilnahme (einschließlich der laufenden Veranstaltung Software ubiquit¨arer System“). ” • Verst¨andnis englischsprachiger Artikel und Handb¨ ucher 5.2 Wu ¨ nschenswert • Unix-/Linux-Kenntnisse • Programmierkenntnisse C/C++ • Hardwarenahe Programmierung 6 Minimalziele • Realisierung einer einfachen T¨ urschildanwendung auf Basis von Kratos auf der inBin-Plattform • Funktionierende Kommunikation zwischen intelligenten T¨ urschildern und Gateway innerhalb eines Raumes mit einer starken Lichtquelle (einfaches Routing und Anwendungsprotokoll) • Erstellung der wichtigsten Energiemodelle (Solarzelle/Energiespeicher, Funk, Display) und Bereitstellung in der Systemsoftwareplattform • Realisierung einer einfachen Schnittstelle f¨ ur die Bedienung durch einen Raumadministrator 7 Literatur [BGS12] Markus Buschhoff, Christian G¨ unter, and Olaf Spinczyk. A unified approach for online and offline estimation of sensor platform energy consumption. In 8th InternationalWireless Communications and Mobile Computing Conference (IWCMC), pages 1154–1158, August 2012. [BMM13] Nicolas Berthier, Florence Maraninchi, and Laurent Mounier. Synchronous programming of device drivers for global resource control in embedded operating systems. ACM Transactions on Embedded Computing Systems (TECS), 12(1s):39:1–39:26, March 2013. [Bus14] Markus Buschhoff. Kratos - a resource aware, tailored operating system. In Katharina Morik and Wolfgang Rhode, editors, Technical report for Collaborative Research Center SFB 876 - Graduate School, number 10. December 2014. [DBN12] Soumya Kanti Datta, Christian Bonnet, and Navid Nikaein. Android power management: Current and future trends. In Enabling Technologies for Smartphone and Internet of Things (ETSIoT), 2012 First IEEE Workshop on, pages 48–53. IEEE, 2012. [ERBtH12] J Emmerich, Moritz Roidl, Tobias Bich, and Michael ten Hompel. Entwicklung von energieautarken, intelligenten Ladehilfsmitteln am Beispiel des inBin. Logistics Journal, 2012, 2012. 3 20 C) Solar Doorplate [KB09] Simon Kellner and Frank Bellosa. Energy accounting support in tinyos. PIK-Praxis der Informationsverarbeitung und Kommunikation, 32(2):105–109, 2009. [KPMB08] S. Kellner, M. Pink, D. Meier, and E.-O. Blass. Towards a realistic energy model for wireless sensor networks. In Fifth Annual Conference on Wireless on Demand Network Systems and Services, pages 97–100, January 2008. [PSVP12] U. Prathap, D.P. Shenoy, K.R. Venugopal, and L.M. Patnaik. Wireless sensor networks applications and routing protocols: Survey and research challenges. In Cloud and Services Computing (ISCOS), 2012 International Symposium on, pages 49–56, Dec 2012. [SK11] S. Sudevalayam and P. Kulkarni. Energy harvesting sensor nodes: Survey and implications. Communications Surveys Tutorials, IEEE, 13(3):443–461, Third 2011. [ZELV02] Heng Zeng, Carla S Ellis, Alvin R Lebeck, and Amin Vahdat. Ecosystem: Managing energy as a first class operating system resource. ACM SIGPLAN Notices, 37(10):123–132, 2002. [ZTQ+ 10] Lide Zhang, Birjodh Tiwana, Zhiyun Qian, Zhaoguang Wang, Robert P Dick, Zhuoqing Morley Mao, and Lei Yang. Accurate online power estimation and automatic battery behavior based power model generation for smartphones. In Proceedings of the eighth IEEE/ACM/IFIP international conference on Hardware/software codesign and system synthesis, pages 105–114. ACM, 2010. 8 Rechtlicher Hinweis Die Ergebnisse der Projektarbeit und die dabei erstellten Software sollen der Fakult¨ at f¨ ur Informatik und dem Sonderforschungsbereich SFB-876 uneingeschr¨ ankt f¨ ur Lehr- und Forschungszwecke zur freien Verf¨ ugung stehen. Dar¨ uber hinaus sind keine Einschr¨ankungen der Verwertungsrechte an den Ergebnissen der Projektgruppe und keine Vertraulichkeitsvereinbarungen vorgesehen. 4 21 D) Spielende kooperierende Agenten Spielende kooperierende Agenten Jan Quadflieg, LS 11 Lars Hildebrand, LS 1 Christian Eichhorn, LS 1 1 Thema Spielerische Umgebungen bieten in vielen Anwendungsgebieten eine gute Testumgebung zur Erprobung von Methoden. Hierbei sind einfache Computerspiele mit beliebig programmierbaren Umgebungen und den frei in ihrer Schwierigkeit steigerbaren Aufgaben besonders geeignet f¨ur die Erprobung von Ans¨atzen aus der Informatik. Die Projektgruppe Spielende kooperierende Agenten besch¨aftigt sich mit Softwareagenten, die als Spielfiguren in kooperativen Computerspielen mittels vordefinierter Regeln mit Ausnahmen einerseits und erlerntem Verhalten andererseits bekannte wie unbekannte Aufgaben (hier: Spielumgebungen, genannt Level) l¨osen. Hierzu werden verschiedene Methoden aus den Bereichen der Wissensrepr¨asentation und der Computational Intelligence untersucht und erprobt, um ein bestm¨ogliches Ergebnis zu erhalten. Durch die Auswahl von Ans¨atzen beider Gebiete werden gezielt Methoden kombiniert, die u¨ blicherweise getrennt voneinander angewendet werden, sodass sich die St¨arken der jeweiligen Ans¨atze erg¨anzen. Das oder die zu l¨osenden Spiele werden von den Teilnehmern mittels der Spielengine Unity3D [Tec15] selbst implementiert, wobei das kooperative Spiel Geometry Friends [RMP08, GAI15] als Inspiration und als Einstieg dient. 2 Zeitraum Wintersemester 2015/16 und Sommersemester 2016 3 Veranstalter Jan Quadflieg, Informatik 11, B Otto-Hahn-Straße 14, Raum 240, T + 49 231 755 7708, k [email protected] Lars Hildebrand, Informatik 1, B Otto-Hahn-Straße 12, Raum 3.018, T + 49 231 755 6375, k [email protected] Christian Eichhorn, Informatik 1, B Otto-Hahn-Straße 12, Raum 3.007, T + 49 231 755 6522, k [email protected] 4 Aufgabe Ziel dieser PG ist die Entwicklung und Evaluierung eines Multiagentenansatzes zur L¨osung von kooperativen Spielen. Hierzu werden unterschiedliche Ans¨atze verfolgt: Es wird eine Regelbasis aufgestellt, die erfolgreiche Spielz¨uge f¨ur allgemeine Situationen beschreibt. Dieses Wissen wird einer Planungskomponente zur Verf¨ugung gestellt, die f¨ur ein gegebenes Level einen m¨oglichst erfolgreichen Plan erstellt. Durch Einsatz von Lernverfahren und Methoden der Computational Intelligence (CI) wird zudem in Trainingsleveln Verhalten gelernt, das zus¨atzlich zum regelbasierten Wissen das Erreichen einer erfolgreichen L¨osung verbessert. Die durch diese Verfahren gewonnenen L¨osungen werden in den Trainingsleveln und in unbekannten Leveln getestet und der Erfolg mit geeigneten Maßen verglichen. Hierbei sind die Spieler/-figuren im verwendeten kooperativen Spiel als autonom agierende Softwareagenten zu realisieren, die nicht durch eine zentrale Einheit gesteuert werden, wobei Kommunikation zwischen den Agenten notwendig ist. Eine M¨oglichkeit f¨ur ein kooperatives Spiel, das eine geeignete Testumgebung f¨ur dieses Projekt darstellt, ist Geometry Friends, ein auf Kooperation ausgelegtes Jump ’n’ Run/Puzzle-Spiel f¨ur zwei Spieler. Jeder Spieler 22 D) Spielende kooperierende Agenten (a) Geometry Friends Spielfiguren (b) Level mit einfachen Hindernissen Abbildung 1: (a) Geometry Friends Spielfiguren Kugel und Rechteck mit Volumenver¨anderung (gepunktet, links) und Kantenl¨angenver¨anderung (gepunktet, rechts) und Bewegungsm¨oglichkeiten (Pfeile). (b) Beispiellevel von Geometry Friends, Rauten sind ,,einzusammelnde“ Objekte. kontrolliert dabei eine der beiden Figuren, einen Kreis und ein Rechteck, die unterschiedliche F¨ahigkeiten haben: Wie in Abbildung 1(a) dargestellt ist, kann der Kreis seinen Radius begrenzt a¨ ndern und das Rechteck kann bei konstantem Fl¨acheninhalt seine Seitenl¨angen anpassen und sich so in Breite oder H¨ohe ausdehnen. Beide Figuren k¨onnen sich horizontal u¨ ber Ebenen bewegen und der Kreis kann zus¨atzlich springen und das Rechteck ,,umwerfen“. Ziel des Spiels ist, in einer 2D Umgebung mit den zwei Spielfiguren in m¨oglichst kurzer Zeit eine Reihe von u¨ ber das Level verteilten Diamanten (Rauten) zu sammeln (siehe Abbildung 1(b), Quelle [GAI15]). Auf beide Figuren wirken Schwerkraft und Reibung und es gibt allgemeine Begrenzungen und Hindernisse. Komplexere Level enthalten Bereiche, in denen sich nur eine der beiden Spielfiguren bewegen kann. Um die Level, die sich durch die Anordnung der (sich u.U. auch bewegenden) Hindernisse, Diamanten und Startpositionen der Figuren unterscheiden, erfolgreich zu l¨osen, m¨ussen die Spieler folgende Schritte durchf¨uhren: Zu Beginn steht die Analyse, welche Diamanten durch den Kreis, welche durch das Rechteck und welche kooperativ erreicht werden k¨onnen. Dabei m¨ussen auch Abh¨angigkeiten in der Reihenfolge des Sammelns der Diamanten ber¨ucksichtigt werden. Aus dieser Analyse ergeben sich Handlungsauftr¨age f¨ur die beiden Spieler. Schließlich m¨ussen diese Auftr¨age unter Ber¨ucksichtigung der simulierten physikalischen Gesetze von beiden Spielern koordiniert ausgef¨uhrt werden. Geometry Friends ist seit 2013 Gegenstand von Wettbewerben im Rahmen der IEEE Konferenz Computational Intelligence in Games (CIG) und (seit 2015) der Genetic and Evolutionary Computation Conference (GECCO). Teilnehmer des Wettbewerbs sind aufgefordert, Agenten zu entwickeln, welche die Steuerung die beiden Spielfiguren u¨ bernehmen. Die Ergebnisse der ersten beiden Wettbewerbe 2013 & 2014 belegen die Komplexit¨at der Aufgabe: W¨ahrend die eingereichten Agenten in vorab bekannten Leveln brauchbare Ergebnisse erzielten, scheitern sie h¨aufig schon fr¨uhzeitig bei unbekannten Leveln. Ein Ziel der PG ist, zu erproben, ob ein auf den genannten Ans¨atzen beruhendes Verfahren hier bessere Ergebnisse liefert, insbesondere mit Hinblick auf die Generalisierbarkeit. ¨ Mogliches Vorgehen Um mehr Freiheiten bez¨uglich der Schnittstellen zum eingesetzten Spiel zu haben, soll die PG zuerst das Spiel Geometry Friends oder ein vergleichbares Spielkonzept mit Hilfe von Unity3D umsetzen. In der Seminarphase erwerben die Teilnehmer die n¨otigen Grundkenntnisse u¨ ber Inferenzen aus regelbasiertem Wissen, Methoden der Computational Intelligence und Planung, um sich f¨ur jeweils einen vielversprechenden Ansatz aus diesen Themengebieten entscheiden k¨onnen, der zur L¨osung des implementierten Spiel geeignet scheint. Ein m¨oglicher Startpunkt hierbei ist Fuzzy Logik, weil sie sowohl in CI, Schlussfolgerungs- als auch Planungsans¨atzen Anwendung findet und sich somit als ein erster, aufgaben¨ubergreifender Ansatz anbietet. In dieser Phase ist zudem ein passendes Wahrnehmungsmodell (insbesondere f¨ur den Levelaufbau) zu entwickeln. Gleichzeitig ist ein passendes Agentenmodell zu w¨ahlen, wobei sich eine Modellierung der Agenten als BDI-Agenten [Woo09] (Vgl. Abbildung 2) unter Verwendung des am LS 1 entwickelten Framework Angerona [KJKI14] anbietet. Da die Agenten nicht durch eine zentrale Instanz gesteuert werden sollen, ist ausserdem 23 D) Spielende kooperierende Agenten BDI-Agent Optionserzeugung Desires Filter Intentions Handeln Wahrnehmen Beliefs Umgebung Abbildung 2: BDI-Agentenmodell mit Handlungsschleife ein Modell der Kommunikation mit dem dazugeh¨origen Protokoll zu entwickeln. Darauf aufbauend werden Regeln f¨ur erfolgreiches Spielen durch eigene Praxis erworben, w¨ahrend gleichzeitig ein passender un¨uberwachter Lernansatz die ausgew¨ahlte CI-Methode trainiert. Mithilfe der Erfahrungen aus dieser Projektphase werden geeignete Qualit¨atsmaße f¨ur spielende Agenten entwickelt. In der folgenden PG-Phase werden dann weitere Methoden zur L¨osung der genannten Aufgaben implementiert und mittels der entwickelten Qualit¨atsmaße gegeneinander getestet, um schließlich die optimale Konfiguration der spielenden planenden Agenten zu erhalten. Die Erfolge und Erfahrungen der PG-Phasen werden in einem Zwischen- und einem Endbericht zusammengefasst. Seminarphase / Tutorien Um alle Teilnehmer/innen auf den gleichen Wissensstand bez¨uglich der in Frage kommenden Methoden zu bringen, findet zu Beginn der PG ein Blockseminar statt. Themen f¨ur die Seminarphase werden in der letzten Woche des Sommersemesters 2015 (KW 29) vergeben. In Absprache mit der Projektgruppe findet die Seminarphase als Blockveranstaltung in der ersten Vorlesungswoche des Wintersemesters 2015/16 (KW 43) oder in der vorlesungsfreien Zeit vor dem Wintersemester (KW 39) statt. Dieses Blockseminar wird nach M¨oglichkeit nicht an der Universit¨at, sondern in einem Tagungshaus in der n¨aheren Umgebung stattfinden. Weiterhin werden zu Beginn des Wintersemesters, begleitend zur Arbeit der Projektgruppe, kleinere Tutorien im Rahmen der regelm¨aßigen Treffen stattfinden. Diese werden von den PG Teilnehmer/innen gehalten und dienen dem gemeinsamen Erlernen wichtiger technischer F¨ahigkeiten, beispielsweise ,,C# f¨ur Java-Programmierer“, ,,LATEX“, ,,Angerona“ o.¨a., und komplettieren mit einem praktisch/prozeduralen Blickwinkel die eher als konzeptionell/theoretisch angelegten Seminare. 5 Teilnahmevoraussetzungen Notwendig: Erfolgreicher Abschluss wenigstens einer der Veranstaltungen • Darstellung, Verarbeitung und Erwerb von Wissen (DVEW) • Einf¨uhrung in die Computational Intelligence oder Nachweis vergleichbarer Kenntnisse. ¨ Wunschenswert: • Erfahrungen im Umgang mit unixartigen Betriebssystemen • Praktische Kenntnisse in objektorientierter Programmierung, z.B. in der Sprache C# 24 D) Spielende kooperierende Agenten • Vorkenntnisse im Bereich Wissensrepr¨asentation und/oder Computational Intelligence, wie sie zum Beispiel durch Besuch der Master-Veranstaltungen Commonsense Reasoning oder Fortgeschrittene Themen der Wissensrepr¨asentation erworben werden k¨onnen. • Vorkenntnisse zu Unity3D, z.B. aus dem Fachprojekt Digital Entertainment Technologies 6 Minimalziel Das Minimalziel der PG ist die exemplarische Implementierung eines geeigneten Spiels f¨ur Unity3D, inklusive einer Agentenkomponente, die in der Lage ist, die Spielfiguren zu steuern, sowie der Erstellung einer Wissensbasis mit Regeln f¨ur erfolgreiches Spielverhalten. Die Agentenkomponente muss, wenigstens prototypisch, ein Lernverfahren aus dem Bereich der Computational Intelligence, eine Komponente zur Ableitung von Wissen aus Regeln (Inferenzkomponente) und eine Planungskomponente realisieren. Ein Abschlussbericht dokumentiert die Ergebnisse und Erkenntnisse. Die Projektgruppe berichtet der Fakult¨at in einem Fachgespr¨ach u¨ ber Ablauf und Ergebnis ihrer Arbeit. 7 Literaturverzeichnis [BKI14] B EIERLE, Christoph ; K ERN -I SBERNER, Gabriele: Methoden wissensbasierter Systeme – Grundlagen, Algorithmen, Anwendungen. 5., u¨ berarbeitete und erweiterte. Heidelberg : Springer Vieweg, 2014 [EFL+ 00] E ITER, Thomas ; FABER, Wolfgang ; L EONE, Nicola ; P FEIFER, Gerald ; P OLLERES, Axel: Planning under Incomplete Knowledge. In: Proceedings of the First International Conference on Computational Logic (CL2000), volume 1861 of Lecture Notes in Computer Science, Springer, 2000, S. 807–821 [GA14] G EORGIEVSKI, Ilce ; A IELLO, Marco: An Overview of Hierarchical Task Network Planning. In: CoRR abs/1403.7426 (2014) [GAI15] GAIPS: Geometry Friends. http://gaips.inesc-id.pt:8081/geometryfriends/?page_ id=6, 2015 ¨ [KJKI14] K R UMPELMANN , Patrick ; JANUS, Tim ; K ERN -I SBERNER, Gabriele: Angerona - A Multiagent Framework for Logic Based Agents with Application to Secrecy Preservation / Technische Universit¨at Dortmund. 2014 (3). – Forschungsbericht [NGT04] NAU, Dana ; G HALLAB, Malik ; T RAVERSO, Paolo: Automated Planning: Theory & Practice. San Francisco, CA, USA : Morgan Kaufmann Publishers Inc., 2004 [RMP08] ROCHA, Jos´e B. ; M ASCARENHAS, Samuel ; P RADA, Rui: Game Mechanics for Cooperative Games. In: Zon Digital Games 2008. Porto, Portugal : Centro de Estudos de Comunicac¸a˜ o e Sociedade, Universidade do Minho, November 2008, S. 72–80 [RW12] ¨ R OPSTORFF , Sven ; W IECHMANN, Robert: Scrum in der Praxis: Erfahrungen, Problemfelder und Erfolgsfaktoren. 1. Auflage. dpunkt.verlag GmbH, 2012 [Ste11] S TERRER, Christian: pm k.i.s.s. Projektmanagement: keep it short and simple. 1. Auflage. Goldegg Verlag, 2011 [Tec15] T ECHNOLOGIES, Unity: Unity3D. http://www.unity3d.com, 2015 [Woo09] W OOLDRIDGE, Michael: An Introduction to MultiAgent Systems. 2nd Edition. Wiley Publishing, 2009 8 Rechtlicher Hinweis Die Ergebnisse der Projektarbeit und die dabei erstellten Software sollen der Fakult¨at f¨ur Informatik uneingeschr¨ankt f¨ur Lehr- und Forschungszwecke zur freien Verf¨ugung stehen. Dar¨uber hinaus sind keine Einschr¨ankungen der Verwertungsrechte an den Ergebnissen der Projektgruppe und keine Vertraulichkeitsvereinbarungen vorgesehen. 25 E) MoSAIC 1 Thema MoSAIC Model-based Self-Adaption of Industry 4.0 Configurations 2 Zeitraum Wintersemester 2015/2016 und Sommersemester 2016 3 Veranstalter Dr. Johannes Neubauer <[email protected]>, Tel. 7779 Dipl.-Inf. Stefan Naujokat <[email protected]>, Tel. 7734 Dipl.-Inf. Oliver Bauer <[email protected]>, Tel. 7752 Prof. Dr. Bernhard Steffen <[email protected]>, Tel. 5801 Informatik Lehrstuhl 5, Otto-Hahn-Straße 14, Raum 112/111/107/102 4 Aufgabe Selbstadaptierende Systeme, d.h. Systeme, die ihr Verhalten zur Erreichung definierter Ziele auf Basis von Beobachtungen von Weiterf¨uhrende Informationen und Umwelt- und Systemver¨anderungen selbstt¨ atig anpassen, haben Ank¨ undigungen finden sich auf unserer in den letzten Jahren vermehrte Aufmerksamkeit erhalten [6]. Webseite: https://v.gd/mosaic Praktische Relevanz erh¨alt das Thema durch das Ziel, CyberPhysical Systems (CPS) in der industriellen Produktion ( Cyber-Physical Production Systems“, ” CPPS), wie sie in dem Zukunftsprojekt Industrie 4.0“ der Bundesregierung vorgesehen werden [7], ” fortschreitend selbstadaptiv und selbstorganisierend zu gestalten. Ziel dieser Projektgruppe soll sein, einen modellbasierten Ansatz zur Industrie-4.0-Selbstadaption zu erarbeiten und zu implementieren, sowie diesen dann an einem praktisch relevanten Szenario aus der Industrie – der Automation von Verpackungsaufgaben – zu evaluieren. Abbildung 1: Beispielhafte Skizze f¨ ur den Projektaufbau 1 http://en.wikipedia.org/wiki/Delta robot 1 Verpackungsautomation hat sich zu einer eindrucksvollen Disziplin entwickelt, bei der spezialisierte Roboter in rasender Geschwindigkeit komplexe Verpackungsformen mit verschiedenen Produkten bef¨ ullen. Ein konkretes Beispiel hierf¨ ur 1 sind Deltaroboter f¨ ur sogenannte Pick ” and Place Packaging“-Aufgaben. Sie sind in der Lage, Produkte wie verschiedene Kekse oder Pralin´es auf einem Fließband visuell zu lokalisieren, zu identifizieren, zu greifen und in das daf¨ ur vorgesehenen Fach der Schachtel zu platzieren. Allerdings ist die Erstellung zuverl¨ assiger und effizienter Programme f¨ ur derartige Anlagen ein komplexes technisches Unterfangen, welches f¨ ur jedes Verpackungsszenario erneut erfolgen muss. Zudem ist es in der Regel nicht m¨ oglich, dynamisch auf Produktionsschwankungen zu reagieren oder den Ausfall einzelner Roboter zu kompensieren, da die Programmierung eines solchen Verhaltens mit den 26 E) MoSAIC zur Verf¨ ugung stehenden Mitteln [3, 9] nicht mit vertretbarem Aufwand zu realisieren w¨ are. Teure Ausfallzeiten oder ineffizientes Verhalten, das nicht auf die aktuelle Situation angepasst ist, sind die Folge. Um dieser g¨angigen Problematik in der Produktion entgegenzuwirken, m¨ ussen M¨ oglichkeiten ¨ geschaffen werden, die Entwicklung von Systemen, welche sich selbst m¨ oglichst optimal auf Anderungen von Rahmenbedingungen einstellen, einfach und effizient umzusetzen. Im Rahmen dieser Projektgruppe soll ein modellbasiertes selbstadaptierendes Framework entwickelt werden, das den laufenden Betrieb einer aus Deltarobotern bestehenden Verpackungsanlage ¨ u bewertet und das Ver¨ berwacht, Anderungen halten der Roboter dynamisch konfiguriert, ohne dass neuer Programmcode erzeugt und in Betrieb genommen werden muss. Hierbei kann auf den Ergebnissen der im SoSe 2014 und WiSe 2014/2015 stattgefundenen Projektgruppe InProX [5] aufgebaut werden, in deren Rahmen bereits eine dom¨ anenspezifische grafische Modellierungssprache, die Pick and Place Packaging Language“ ” (3PL, vgl. Abb. 2) entwickelt wurde. Programme in dieser von vielen technischen Details abstrahierender Spezifikationssprache k¨onnen vollautomatisch in ausf¨ uhrbaren Code f¨ ur Deltaroboter u ¨bersetzt werden. Unterst¨ utzt wird die Arbeit der Projektgruppe von den Spezialisten f¨ ur Verpackungsautomation der Firma Omron Europe B.V. (Standorte Barcelona und D¨ usseldorf), die den Fortschritt der PG verfolgen und die Anwendbarkeit der Konzepte in der Praxis beurteilen k¨onnen. Zudem stellen sie einen NJ“ Motion Controller, eine auf Roboter ” spezialisierte Speicherprogrammierbare Steuerung (SPS), und die entsprechende Entwicklungsumgebung Sysmac Studio“ zur Verf¨ ugung, sodass ” die von der PG entwickelten Komponenten unter praxisnahen Bedingungen eingesetzt werden k¨onnen. Abbildung 1 skizziert einen beispielhaften Aufbau eines selbst adaptierenden Robotersystems im Kontext der Verpackungsautomation mit Deltarobotern. Der dargestellte NJ Controller enth¨ alt Abbildung 2: Beispiel f¨ ur eine Verpackungsstrategie verschiedene Softwarekomponenten, die die grundmodelliert in der 3PL legenden Steuerungsbefehle der Roboter realisieren. Mittels des 3PL-Modells k¨onnen Verpackungsstrategegien f¨ ur Deltaroboter modelliert werden, die zur Laufzeit auf die NJ u ¨ bertragen werden sollen. So werden die Schritte der Codegenerierung, der Compilierung und des Deployments unn¨ otig, und damit die Anpassung des Verhalten zur Laufzeit m¨ oglich. Durch die visuelle Erfassung der Fließbandbelegung soll es m¨ oglich sein, das Vorgehen f¨ ur einen n¨ achsten Zeitabschnitt zu planen. Dabei soll darauf geachtet werden, dass bestimmte Kriterien, wie beispielsweise die m¨oglichst gleichm¨aßige Auslastung aller Deltaroboter, bei der Planung eingehalten werden. Aus diesen Pl¨anen soll dann die dynamische Konfiguration f¨ ur die NJ erzeugt werden. Die Entwicklung von Konzepten, wie aus den Aufzeichnungen von Fließbandbelegungen geeignete Verpackungstrategien geplant und inferiert werden k¨ onnen, bildet einen Hauptteil der PG. Sie sollen auf 2 27 E) MoSAIC Basis verschiedener formaler Methoden, insbesondere Maschinenlernen [8], Planen [11] und Synthesebasierter Vervollst¨andigung von Spezifikationen [10] realisiert werden. Ziele Zun¨ achst ist die von der PG InProX entwickelte dom¨ anenspezifische Sprache 3PL so zu erweitern, dass mit ihr modellierte Verpackungsstrategien auf dem NJ Motion Controller dynamisch ausgef¨ uhrt werden k¨onnen. Dann sind Kriterien f¨ ur eine optimale Ausf¨ uhrung von Verpackungsszenarien zu definieren. Hier ist es geplant, eine weitere Abbildung 3: Workflow f¨ ur das Planungs und 3PLdom¨ anenspezifische Sprache zu entwickeln, mit Inferenzsystem. welcher diese Kriterien formuliert werden k¨ onnen. Des Weiteren sollen Verfahren erarbeitet werden, die dazu geeignet sind, diese Kriterien auf ihre G¨ ultigkeit hin zu u ufen. Sollten diese Kriterien ¨ berpr¨ nicht erf¨ ullt sein, wird das weitere Vorgehen anhand von gemessenen Umgebungsparametern, wie beispielsweise die Fließbandbelegung, automatisch neu geplant und angepasst (vgl. Abb. 3). Durch die M¨ oglichkeit, die modellierten Verpackungsstrategien interpretiert auszuf¨ uhren, soll das Anhalten der Anlage vermieden werden. Technologien Im Laufe der Projektruppe InProX wurde auf Basis von Cinco [1, 12] die grafische Modellierungssprache 3PL entwickelt. Mit dieser DSL ist es m¨ oglich, Verpackungstrategien zu modellieren. Bestandteil dieser L¨ osung ist ein Codegenerator, der es erm¨ oglicht, modellierte Strategien in Programmcode f¨ ur eine Speicherprogrammierbare Steuerung (SPS), wie der NJ Motion Controller von Omron, zu u uber hinaus ist es m¨oglich, die Ausf¨ uhrung des Programmcodes mit der Simulations¨ bersetzen. Dar¨ und Visualisierungssoftware V-REP [4] darzustellen. Cinco selbst ist ein Werkzeug auf Basis des Eclipse Modeling Frameworks (EMF), mit dem aus einer Metamodell-Beschreibung einer DSL sehr leicht ein auf Eclipse basierendes Modellierungswerkzeug f¨ ur diese DSL generiert werden kann. Durch ein Meta-Plugin-Konzept lassen sich diese Werkzeuge erweitern, um beispielsweise Codegenerierung zu erm¨ oglichen. Die Firma Omron verf¨ ugt mit der NJ-Serie u ¨ ber eine Reihe von SPS-Controllern, die unter anderem f¨ ur Motion-Aufgaben wie die Steuerung von Deltarobotern verwendet werden. Das Sysmac Studio ist eine Entwicklungsumgebung, das f¨ ur die Programmierung verwendet wird. Da diese Controller in Industrieanlagen u ussen, verf¨ ugt die NJ u ¨ berwacht werden m¨ ¨ ber eine Webschnittstelle, mit der ¨ Uberwachungs- und Steuerungsbefehle u onnen. Die CX-Compolet API [2] kann ¨ bermittelt werden k¨ verwendet werden, um derartige Aufgaben zu l¨ osen. 5 Teilnahmevoraussetzungen Vorausgesetzt werden: • Fundierte Kenntnisse in mindestens einer objektorientierten Programmiersprache, zum Beispiel Java oder C(++|#) • Elementare Kenntnisse u ¨ber Modellierungstechniken, wie sie zum Beispiel in den Vorlesungen For” male Methoden des Systementwurfs“, Virtualisierung und Compilation“, Softwarekonstruktion“ ” ” und Dienstleistungsinformatik“ vermittelt werden. ” Hilfreich sind zudem: • Kenntnisse im Umgang mit Eclipse-Werkzeugen und -Programmierung • Kenntnisse im Bereich der Automatisierungstechnik 3 28 E) MoSAIC 6 Minimalziel Die Minimalziele der PG sind: • Erweiterung des 3PL-Tools um eine Komponente zur interpretierten Ausf¨ uhrung von 3PLProgrammen ¨ • Entwicklung einer Komponente zur Ubertragung von 3PL-Programmen zur Laufzeit auf die NJ • Erstellung eines Konzepts zur Erstellung von Pl¨ anen f¨ ur Verpackungsstrategien aus sensorisch erfassten Bandbelegungen • Erstellung einer dom¨anenspezifischen Sprache zur Beschreibung von Zielen f¨ ur die Planung • Entwicklung eines Frameworks zur Inferenz von 3PL-Programmen aus erstellten Pl¨ anen 7 Literatur [1] Cinco Website:. http://cinco.scce.info/. [2] CX-Compolet. http://www.ia.omron.com/products/family/63/. [3] IEC Standard 61131-3 - Programmable Controllers - Part 3: Programming Languages. http: //webstore.iec.ch/webstore/webstore.nsf/Artnum_PK/47556. [4] v-rep: virtual robot experimentation platform. http://www.coppeliarobotics.com/. [5] A. Berg, C. P. Donfak, J. Gaedecke, E. Ogkler, S. Plate, K. Schamber, D. Schmidt, Y. S¨ onmez, F. Treinat, J. Weckwerth, P. Wolf, and P. Zweihoff. PG 582 InProX: Industrial Programing by Example, 2015. Vorabversion auf PG-Webseite verf¨ ugbar: https://v.gd/mosaic. [6] R. de Lemos et al. Software engineering for self-adaptive systems: A second research roadmap. In Software Engineering for Self-Adaptive Systems II, volume 7475 of Lecture Notes in Computer Science, pages 1–32. Springer Berlin Heidelberg, 2013. [7] A. Hellinger, V. Stumpf, and C. Kobsda. Umsetzungsempfehlungen f¨ ur das Zukunftsprojekt Industrie 4.0. Promotorengruppe Kommunikation der Forschungsunion Wirtschaft – Wissenschaft and acatech – Deutsche Akademie der Technikwissenschaften e.V, 2013. [8] F. Howar, M. Isberner, M. Merten, and B. Steffen. LearnLib Tutorial: From Finite Automata to Register Interface Programs. In Proceedings of ISoLA (1), volume 7609 of Lecture Notes in Computer Science, pages 587–590. Springer Verlag, 2012. [9] K.-H. John and M. Tiegelkamp. IEC 61131-3: Programming Industrial Automation Systems: Concepts and Programming Languages, Requirements for Programming Systems, Decision-Making Aids. Springer, 2 edition, 2010. [10] A.-L. Lamprecht, S. Naujokat, T. Margaria, and B. Steffen. Synthesis-Based Loose Programming. In Proceedings of the 7th International Conference on the Quality of Information and Communications Technology (QUATIC 2010), Sept. 2010. [11] S. M. LaValle. Planning Algorithms. Cambridge University Press, Cambridge, U.K., 2006. Available at http://planning.cs.uiuc.edu/. [12] S. Naujokat, L.-M. Traonouez, M. Isberner, B. Steffen, and A. Legay. Domain-Specific Code Generator Modeling: A Case Study for Multi-faceted Concurrent Systems. In Proc. of the 6th Int. Symp. on Leveraging Applications of Formal Methods, Verification and Validation, Part I (ISoLA 2014), number 8802 in LNCS, pages 463–480. Springer, 2014. 8 Rechtlicher Hinweis Die Ergebnisse der Projektarbeit und die dabei erstellte Software sollen der Fakult¨ at f¨ ur Informatik uneingeschr¨ ankt f¨ ur Lehr- und Forschungszwecke zur freien Verf¨ ugung stehen. Dar¨ uber hinaus sind keine Einschr¨ ankungen der Verwertungsrechte an den Ergebnissen der Projektgruppe und keine Vertraulichkeitsvereinbarungen vorgesehen. 4
© Copyright 2024 ExpyDoc