Ein Haus am See im Browser - Interaktives Finden von geeigneten Orten

Hintergrund

Ziel der Arbeit ist es, ein Online-Tool auf Basis von OpenStreetMap zu entwickeln, das dem Benutzer die Möglichkeit gibt, Orte zu finden, die bestimmte Anforderungen an die Lebensqualität erfüllen - z.B. alle Häuser am Waldrand, in deren Nähe eine Bademöglichkeit, ein Supermarkt und ein Bahnhof sind, und wo man die Autobahn nicht so laut hört. Zu diesem Zweck kann der Benutzer einen Kartenbereich und verschiedene Parameter (Distanz zu bestimmten Landmarken, z.B. Spielplätze, Autobahn, Wasser, etc.) auswählen. Ein Ansatz zur Implementierung des Systems wäre, pro Parameter ein Graustufen-Bitmap zu erzeugen, das für einen Kartenausschnitt angibt, welchen Wert der Parameter wo hat. Diese Bitmaps können dann - verschieden gewichtet - übereinander gelegt werden, um einen Gesamtwert zu bilden.

In zwei früheren Abschlussarbeiten wurde die praktische Umsetzung als Standalone-Anwendung verifiziert (Ein Haus am See in den Bergen ohne Autolärm? Software-unterstützte visuelle Ortssuche in OpenStreetMap) und die Umsetzung als Web-Anwendung demonstriert (Ein Haus am See online - ein Suchwerkzeug für ideale Orte), wobei alle Berechnungen auf dem Server stattfanden. Damit das System besser skaliert, ist es notwendig, dass der Großteil der Berechnungen im Browser des Benutzers stattfindet.

Zielsetzung der Arbeit

Ziel dieser Arbeit ist es, auf Basis der vorhergehenden Arbeiten, eine browserbasierte OpenStreetMap-Visualisierung zu entwickeln, in der die Benutzer (entfernungsabhängige) Standorteigenschaften definieren können und eine Heatmap geeigneter Standorte angezeigt bekommen. Die Berechnung der Heatmaps soll effizient im Browser geschehen, ggf. mittels WebGL. Die Performance des Systems soll gemessen und mittels einer kleinen Benutzerstudie bewertet werden.

Konkrete Aufgaben

Einarbeitung in existierende Anwendungen und Algorithmen (vor Bearbeitungsbeginn)

Recherche und Evaluation geeigneter technischer Lösungsansätze (2 Wochen)

Literaturrecherche

Anfragen in Foren/Mailinglisten

Implementieren von kleinen Beispielanwendungen für verschiedene geeignete Technologien

Implementierung der Anwendung in HTML/JavaScript, z.B. auf Basis von Mapbox GL (3 Wochen)

Implementierung einer OpenStreetMap-Anwendung auf Basis eines bestehenden Frameworks

Implementierung eines Rendering-Systems für die Heatmaps

Implementierung einer Benutzeroberfläche zur Eingabe der Parameter und Anzeige der Heatmap

Optimierung der Performance, u.a. durch Caching von Zwischenergebnissen

Benchmarking der Performance (0.5 Wochen)

Kurze qualitative Evaluation der Benutzbarkeit (0,5 Wochen)

Dokumentation in einer schriftlichen Ausarbeitung (2 Wochen)

Erwartete Vorkenntnisse

gute Kenntnisse JavaScript-Programmierung

idealerweise Erfahrung mit OpenStreetMap

idealerweise Erfahrung mit WebGL / Computergrafik

Weiterführende Quellen

Ein Haus am See online - ein Suchwerkzeug für ideale Orte

Ein Haus am See in den Bergen ohne Autolärm? Software-unterstützte visuelle Ortssuche in OpenStreetMap

OSM: Vector Tiles

Mapbox GL Issue 4756: Proposal: Heatmap layer type

Heatmaps in Mapbox GL

Finding the perfect house using open data

Where I Should Live, According to Math

Hacker-News-Diskussion zu diesem Artikel

288 Cities