Projektarbeit „Kidnapp’d“

Das sprachgesteuerte Escape-Room-Game

In einer Projektarbeit des Studiengangs Media Engineering wurde in Anlehnung an alte klassische Textadventures ein Escape Room konzipiert und realisiert, der völlig auf visuelle Elemente verzichtet und ausschließlich durch ein CUI (Converstional User Interface) mit Sprache gesteuert wird. Dazu wurde für Amazon „Alexa“ ein Skill implementiert.

Was ist ein Escape Room?

Der Escape Room ist eine neue Erscheinung, die sich mittlerweile einer großen Beliebtheit erfreut. Die Spieler werden dabei in einem Raum eingesperrt und müssen aus diesem entkommen, indem Rätsel gelöst werden. Escape Rooms sprechen jede Altersgruppe an. Eine der wichtigsten Fähigkeiten, um in so einem Raum zu bestehen, ist Teamfähigkeit. Viele Aufgaben müssen im Team gemeistert werden.

Die Escape Rooms sind je nach Setting verschieden eingerichtet. Ob königliches Schlosszimmer oder heruntergekommene Bruchbude – es ist alles möglich.

Rätsel können verschieden ausgelegt sein. Zum einen können Rätsel Nacheinander angeordnet sein so dass die Lösung eines Rätsels zu einem anderen führt. Die parallele Rätselbearbeitung ist ebenfalls möglich. So können zum Beispiel die Ergebnisse vieler einzelner Rätsel die Zahlenkombination eines Schlosses ergeben. Auch die Interaktion mit Gegenständen ist fester Bestandteil von Escape Rooms, wie das Drücken von Knöpfen, Verschieben von Möbeln, Öffnen von Schubladen oder Schränken etc

Story

Die Story handelt von einem namenlosen Protagonisten, der gekidnappt wurde und in einer unbekannten Umgebung aufwacht. Das ganze Setting soll dazu anregen, den Spieler auf der einen Seite neugierig auf die Umgebung zu machen und anderseits animieren die Situation des Protagonisten zu verbessen und aus den Räumen zu entkommen.

Der Alexa Skill

Die Alexa Developer Console ist das webbasierte Tool von Amazon, um Alexa Skills zu entwickeln. Über das Tool wird der End-Point eingetragen, das Interaction Model sowie die jeweilige Invocation eingetragen.

Amazon bietet 2 Möglichkeiten einen Skill zu betreiben.

1. Amazon Lambdafunktionen gehostet über den Amazon Web Service (AWS)

Amazon als einer der größten Anbieter von Cloudservices bietet die Möglichkeit seinen Skill komplett über die webbasierte Anwendung Aws-Services zu realisieren. Das bedeutet das die Skilllogik als Lambdafunktion bei Amazon hinterlegt ist und diese auch mit der Alexa Developer Console kommuniziert.

2. Hosting eines eigenen Servers

Wir haben uns dafür entschieden, dass wir den Amazon Web Service nicht nutzten wollen, sondern den Skill auf unserem eigenen Server zu hosten. Der Amazon Alexa Services kommuniziert über HTTPS mit unserem Server. Diese Kommunikation funktioniert über die Post Methode in der JSON Dateien geschickt werden.

Damit die Alexa Developer Console den Applicationserver findet, wird in der Alexa Developer Console die URL zum Server abgelegt.

Intents

Intents sind ein wichtiger Bestandteil des Amazon-Kommunikation-Models. Dieses Kommunikation-Model gibt den Aufbau der zu erwartenden Befehle an. Intents nehmen in diesem Model den Platz der Befehle ein, die dann in dem entsprechenden Code verarbeitet werden und eine Reaktion des jeweiligen provozieren.

Die Rückkehr der BOTS

Aufgrund des positiven Feedbacks aus dem Sommersemester 2018 kehren die BOTS auch 2019 auf den wundersamen Donut-Planeten zurück. In den Räumen von KURZDIGITAL in Fürth waren am 14.06.19 wieder EFI-Studierende gefordert, kniffelige Aufgaben in kleinen Teams zu lösen. Die besten Teams erhielten Preise, Essen und Trinken gab es für alle.

Endergebnis

Projektarbeit „Schafkopfzähler“

Motivation

Schafkopf ist, insbesondere in Bayern und Franken, ein sehr beliebtes Kartenspiel.  Dabei ist das Ziel eine bestimmten Punktzahl, um genau zu sein 61, durch Stechen zu erreichen.  Am Ende der Runde, wenn alle Karten ausgespielt wurden, werden die Punkte der Karten, die man durch Stiche erlangt hat, zusammengezählt. Mithilfe der App „Schafkopfzähler“ sollen die Spieler beim Zusammenzählen unterstützt werden.Insbesondere für Anfänger ist, neben dem eigentlichen Spiel an sich, das Punktzählen anhand der Karten schwierig. Beim Zusammenspiel mit erfahrenen Spielern wird deutlich, dass diese beim Punktzählen bedeutend schneller sind als ein Anfänger. Dieser behindert somit ein flüssiges Spiel und bei fehlerhafter Berechnung, kann es sogar zu Ungereimtheiten im Spielablauf kommen.

„Nur ein Projektmitglied konnte Schafkopf spielen. Somit kann aus eigener Erfahrung gesagt werden, dass, neben den Regeln, das Punktezählen eine besondere Herausforderung ist.

Felix Kramer, Projektmitglied

Aus diesem Grund wurde im Rahmen einer studentischen Projektarbeit ein Prototyp einer App entwickelt, die dem Benutzer die Notwendigkeit des Punktezählens abnimmt. Dabei fotografiert der Spieler jede seiner Karten. Anschließend werden diese an einen django-Webserver gesendet und dort erkannt. Letztendlich wird dadurch die Punktzahl der Karte erkannt und auf die aktuelle Punktzahl des Spielers addiert.

Android-App Schafkopfzähler

Beim Starten der App sieht man, wie im Video dagestellt, einen Startbildschirm, auf welchem man durch das Drücken von „Los Geht´s“ zur Eingabe der Namen der Mitspieler kommt.

Diese werden reihum eingeben. Anschließend kommt man durch das Drücken des Buttons „Weiter“ zum Hauptlayout der App.

Jetzt kann die Ansage gemacht werden, die festlegt, welche Karten Trumpf sind. Dafür geht man im Hauptlayout auf „Neue Ansage“. Dort wählt man dann die gewünschte Spielart aus, bestätigt diese und kommt zurück in das Hauptlayout. Im Beispielvideo wurde „Blaue“ ausgewählt. Dabei handelt es sich um ein Sauspiel (Partnerspiel), bei dem das Blatt-Ass gerufen wird. Kurzgesagt spielt der Spieler, der das Blatt-Ass auf der Hand hat, mit dem Spieler zusammen, der das Spiel angesagt hat.

Wurden nun alle Karten ausgespielt, kann man seine Punkte mit Hilfe der App ermitteln. Dazu drückt der Spieler im Hauptlayout seinen Namen an, um in den Erkennungsmodus zu gelangen. Dort scannt er nacheinander seine Karten und erhält umgehend Rückmeldung vom Server. Dieser erkennt die Karten und die App errechnet daraufhin die Punktzahl des Stichs. Wurden nun alle Karten erfolgreich gescannt, kommt der Spieler über „Bestätigen“ wieder zurück in das Hauptlayout. Ebenda wird unter dem Namen des Spielers die Punktzahl angezeigt. Nun hat der nächste Spieler die Möglichkeit seine Karten zu scannen.

Alexa, Siri, Google Home und Chatbots

Im Rahmen des Nürnberg Digital Festival hat die Fakultät EFI der TH Nürnberg am 19.10.2018 ein aktuelles Thema aufgegriffen: die Nutzung natürlicher Sprache für die Interaktion mit Computern und Software. In Anlehung an die grafischen Benutzungsoberflächen (Graphical User Interfaces, GUI) spricht man hier von Conversational User Interfaces (CUI).

Chatbot & Co

Dabei ist es schon fast egal, ob gesprochene Sprache verwendet wird – wie bei Alexa, Google Home oder Siri – oder die Konversation mit geschriebener Sprache mit einem Chatbot erfolgt.

In einem ersten Schritt wurden Tools und Vorgehensweisen mithilfe von Fachvorträgen vorgestellt. Themen waren u.A.:

  • BOTS – Einsatzmöglichkeiten und Trends
  • Technologiestack für die Entwicklung von Chatbots
  • Wie konzipiere und entwickle ich einen Chatbot?
  • Verstehe Deine Nutzer – User Experience Design für Conversational Interfaces
  • Müssen die Großen immer mitreden?  OpenSource-Lösungen als Alternative
  • Atomic Intents – ein kompositioneller Ansatz für konversationsgestützte Anwendungen

Anschließend konnten die Teilnehmer in Kleingruppen das Gehörte ausprobieren. So wurde gemeinsam ein Voice Interface entwickelt und die Nutzung von DialogFlow erläutert.

Partner

Neben Mitarbeitern der TH Nürnberg standen Experten der adorsys GmbH & Co. KG und der BOTfriends GmbH für alle Fragen zur Verfügung.

„Unser Fokus liegt auf der Entwicklung von Chatbots für Messenger Plattformen und Voice Assistants mit der Hilfe von künstlicher Intelligenz. Wir sind spezialisiert auf die Entwicklung von Proof of Concepts bis hin zu hoch individuellen Konzernlösungen durch NLP, Machine Learning und API Integrationen. Jahrelange Erfahrung ermöglicht uns ein außerordentliches Conversational Design zu erstellen mit intensivem Blick auf die User Experience. Zu unseren Kunden zählen große Konzerne wie Porsche, s. Oliver oder Innogy aber auch internationale Unternehmen wie das Cookhouse Lab in Toronto.“

Daniel Rösch, CEO Products, BOTfriends GmbH

Die adorsys GmbH & Co. KG ist ein IT-Unternehmen, das im Bereich Digitalisierung innovative und signifikant nutzwertstiftende Software-Dienstleistungen für Unternehmen verschiedener Branchen mit Fokus auf Finanzdienstleistungen anbietet. Im Mittelpunkt der aktuellen Strategie von adorsys steht ganz zentral das Thema Innovation zur Steigerung der Attraktivität aus Endkundensicht. Die Erarbeitung, Evaluation und Optimierung von Prozessen rund um das Design und die Entwicklung von Conversational Interfaces stehen im Fokus des CUI-Labs der adorsys: UX-/Interaction-Design, Prototyping, Assistive Intelligence, Open-Source NLU, multimodale Lösungen, Continuous-Improvement-Workflows.

BOTS – Coding Night bei KURZ Digital

Geschafft! In der Nacht vom 15.6.2018 auf den 16.6.2018 haben 17 Studierende der Fakultät EFI an einer Coding Night zum Thema BOTS teilgenommen, die von KURZ Digital organisiert und ausgerichtet wurde. Um es kurz zu machen: es war super!

BOTS auf einem Donut

Spannendes Setup: Die Teilnehmer bildeten 2-er Teams und programmierten Algorithmen, die einen BOT auf einem fremden Planeten in Donut-Form steuerten. Dann traten im Laufe der Nacht die BOTs regelmäßig gegeneinander an, um auf dem Planeten verschiedene Aufgaben zu lösen. Die besten drei Teams konnten jeweils Punkte einheimsen. Am nächsten Morgen wurden schließlich die Gewinner der gesamten Nacht ermittelt.

 

 

 

Planeten-Server

Damit das ganz funktioniert, haben die Organisatoren richtig viel Vorarbeit geleistet. Neben der Vorbereitung der Räume und der Verpflegung haben sie auch einen Server implementiert, der die Aktionen der BOTs entgegennimmt und deren Auswirkungen berechnet. Das hat wunderbar funktioniert und der Server-Sourcecode steht auf Github zur freien Verwendung zur Verfügung.

 

 

 

Danke!

Die Coding Night hat allen Beteiligten viel Spaß gemacht. Aber das alles war nur möglich, weil die Kollegen von KURZ Digital so viel Zeit und auch Geld in die Vorbereitung und Durchführung investiert haben. Vielen Dank dafür, es hat sich definitiv gelohnt!

Interdisziplinäre Coding Night „Quantified Self“

In der Nacht vom 2.12.2016 zum 3.12.2016 fand im Gebäude Bahnhofstraße 90 (BB-Bau) die erste interdisziplinäre Coding Night der Fakultät EFI statt. Acht Teams zu je 4-5 Studierenden der Fakultäten BW, EFI und Informatik beschäftigten sich unter dem Motto

Quantified Self –
was tragbare Computer alles herausfinden können

mit den Möglichkeiten, die Smartphones, Smartwatches, Wearables etc. insbesondere im Hinblick auf medizintechnische Anwendungen bieten.

Interdisziplinäre Coding Night „Quantified Self“ weiterlesen

Nürnberg Web Week

An der Nürnberg Web Week, die vom 11. April 2016 bis zum 18. April 2016 stattfand, hat sich auch die Fakultät Elektrotechnik Feinwerktechnik Informationstechnik (EFI) der Technischen Hochschule Nürnberg Georg Simon Ohm beteiligt. Unser Angebot war ein Web Technology Workshop, in dem wir einige spannende Themen vorgestellt haben.

Nürnberg Web Week weiterlesen

Informationssicherheit im Studiengang Medizintechnik

Exkursion zum
Information Security Day

Im Wahlpflichtmodul „Entwicklung von Informationssystemen für die Medizintechnik“ nimmt der Themenbereich Informationssicherheit großen Raum ein. Insbesondere der Schutz personenbezogener Daten ist für medizinische Informationssysteme essentiell. Informationssicherheit im Studiengang Medizintechnik weiterlesen

Versionsverwaltung in der Medizintechnik

Versionsverwaltung

Wer kennt es nicht: Bei der Erstellung von Software ist gelegentlich mit Rückschlägen zu rechnen. Nicht selten möchte man auf den letzten funktionierenden Codestand zurücksetzen. Mit Hilfe eines Versionsverwaltungssystems kann jeder frühere Stand geladen werden, mit den aktuellen Entwicklungen verglichen werden und diese ggf. ersetzen.

Versionsverwaltungssystem GIT

Git VersionsverwaltungDas Open-Source-System GIT stellt heute in der Praxis einen Quasi-Standard für Versionsverwaltung dar und hat sich auch im Hochschulumfeld bewährt. Auch an der TH Nürnberg soll im Bereich der Medizintechnik auf GIT zurückgegriffen werden. Dazu können Studierende für Praktika und Abschlussarbeiten bei Bedarf entsprechende Repositories auf dem zentralen Server git.efi.th-nuernberg.de erstellen.

Versionsverwaltung in der Medizintechnik weiterlesen