Motivation
Das Wohlbefinden und die Gesundheit unserer Mitarbeiter:innen liegt uns am Herzen. Der Weg zur Arbeit, der zum Beispiel mit dem Fahrrad bewältigt wird, macht häufig einen großen Anteil an der täglichen Bewegung aus. Unter diesem Aspekt haben wir uns die Frage gestellt:
Wie fit macht dich deine Stadt?
Umgebungsfaktoren, wie beispielsweise die Geographie der Stadt, haben einen maßgeblichen Einfluss darauf, wie herausfordernd der tägliche Arbeitsweg ist.
Diese und weitere Fragestellungen sind exemplarisch für Problemstellungen aus dem Bereich “Internet of Things”, kurz “IoT”, die durch die Vernetzung von physikalischen und virtuellen Gegenständen adressiert werden. Gestände des täglichen Lebens werden vermehrt mit Sensoren ausgestattet, um aus einer datengetriebenen Perspektive fundierte Entscheidungen herleiten zu können, die von persönlichen Empfehlungen bis zu Veränderungen der Unternehmensstrategien reichen. Im Folgenden stellen wir eines unser unternehmenseigenen Projekte vor.
Das Projekt
Sämtliche Apps auf unseren Smartphones machen es deutlich: Wir tragen tagtäglich Sensoren jeglicher Art mit uns, die auch für die Beantwortung unser Fragestellung hilfreich sind. Gemessen werden (natürlich unter festgelegten Privatsphäre-Einstellungen) unter anderem die zurückgelegte Strecke, die Geschwindigkeit, oder die Höhenmeter. Besonders letzterer Aspekt wird maßgeblich durch die Geographie der jeweiligen Stadt beeinflusst und gibt Aufschluss darüber, welchen Einfluss die Stadt selbst auf unsere Gesundheit hat.
Das Smartphone bietet neben den sensorischen Möglichkeiten den Vorteil, dass es als eigenständige Plattform leicht vernetzt werden kann. Nach der Verarbeitung und Sammlung der Massendaten, werden durch ein geeignetes Feature Engineering weitere Merkmale als Ableitung der vorhandenen Sensordaten ermittelt. Um zu bestimmten, wie anspruchsvoll der Arbeitsweg ist, kombinieren wir alle messbaren Merkmale und ermitteln wie viel Energie für den Arbeitsweg aufgewendet muss, um schlussendlich interpretierbare Ergebnisse zur Beantwortung unserer Fragestellung zu erlangen. Abschließend stellen wir diese in einer entsprechenden Visualisierungen zur Verfügung.
![Figure_1](https://static.codeanker.de/website/upload/2020/12/12134856/Figure_1.png)
Energiebedarf für fahrrad-fahrten
Zur Beantwortung der Fragestellung fokussieren wir uns auf den Energiebedarf für eine Fahrt mit dem Fahrrad. Die Berechnung des Energiebedarfs berechnet sich aus den drei folgenden Größen: der kinetische Energie, der Roll-Energie und der Energie, die zur Überwindung des Windwiderstandes aufgebracht werden muss. Die kinetische Energie beschreibt die Bewegungsenergie in Abhängigkeit von Steigung und Gewicht des Fahrers unter Einfluss der Erdanziehungskraft. Die Roll- und Windwiderstandsenergie bezeichnen wiederum die Energien, die aufgebracht werden müssen, um die jeweiligen Widerstände zu überwinden. Beide Faktoren stehen in Abhängigkeit zur Geschwindigkeit.
Die Daten zur Berechnung des Energiebedarfs unterteilen sich in statische als auch dynamische Daten. Alle statischen Daten, wie Gewicht und Rollwiderstand werden zu Beginn für den jeweiligen Fahrer bestimmt. Dynamische Größen, wie Steigung und Geschwindigkeit werden hingegen über die Zeit gemessen. Durch die hohe Abtastrate kommt schnell eine große Datenmenge zusammen, die eine Speicherung und Auswertung auf dem Gerät selbst ausschließen. Deshalb werden die dynamischen Daten in unserem Experiment mit dem Smartphone aufgezeichnet und zur Auswertung über das Internet an einen zentralen Endpunkt übermittelt.
ERFASSEN von Massendaten
Im IoT-Umfeld und immer dann, wenn Sensordaten erfasst und zentral gespeichert werden, wird ein Systemsetup entlang des MQTT-Protokolls angestrebt. Das MQTT-Protokoll eignet sich besonders für Anwendungsszenarien, in denen Sensoren Massendaten aufzeichnen. Klassischerweise senden Sensorpunkte, wie in unserem Fall Smartphones, Daten über das Protokoll an einen zentralen Broker, der diese Daten entgegennimmt und zur weiteren Verarbeitung ablegt.
Merkmale, die über die Zeit erfasst werden, werden als Zeitreihendaten bezeichnet. Um eine effiziente und schnelle Auswertung der Daten zu ermöglichen, haben sich Zeitreihendatenbanken etabliert. In unserem Setup persistieren wir Daten, die von den Sensorpunkten an den Broker übermittelt werden, in einer InfluxDB. Das Erfassen und das Auswerten von Massendaten wird oftmals in zwei Prozesse getrennt. Mit dem Ende einer Fahrrad-Fahrt zur Arbeit bzw. zurück nach Hause startet der Auswertungs-Prozess.
Auswertung & Visualisierung
Wir verzichten an dieser Stelle auf die Mathematik. Alle Merkmale werden kombiniert, um so den Energiebedarf in kcal auf der Tour zum Arbeitsplatz zu ermitteln. Der Energiebedarf in kcal ist dabei eine leicht interpretierbare, weit verbreitete und vergleichbare Messgröße.
Große Datenmengen können mitunter nicht immer direkt verstanden werden und bedürfen einer Visualisierung, um ein Verständnis für die Daten und Ergebnisse zu erlangen. Die obenstehende Abbildung gibt Aufschluss über die Korrektheit der Ergebnisse. Rote Punkte auf der Karte zeigen Streckenabschnitte, in denen sich einige der Merkmale stark verändern. Für jeden Streckenabschnitt wird so schlussendlich der Energiebedarf ermittelt. Grüne Balken in dem darunterliegenden Diagramm zeigen die Entwicklung der Energie eines jeden Abschnitts im Zusammenhang mit Steigung (schwarz) und Geschwindigkeit (grau).
Schnell wird deutlich, mit steigender Steigung nimmt der Energieaufwand durch eine maßgeblich höhere aufzubringende Bewegungsenergie zu. Mit fallender Steigung erhöht sich die Geschwindigkeit. Steigen Geschwindigkeit und Steigung, so wird der Fahrer zunehmend beansprucht und die Stadt hält den Fahrer fit.
Die Abbildung zeigt nur einen kleinen Streckenabschnitt. Bei der Betrachtung mehrerer Fahrer:innen mit unterschiedlichen Wegen wird schnell deutlich, dass sich unser Standort durch starke Steigungen und Gefälle als besonders anspruchsvoll herausstellt. Für den dargestellten Streckenausschnitt von 15 Minuten ist bereits für unseren Fahrer ein Energieaufwand von ca. 200kcal zu verzeichnen.