FoodForecast

Eine Webseite welche mittels einem Prognosemodell und den vorherigen Verkaufszahlen die voraussichtliche Stückzahlen von Zimtschnecken für die nächsten Tage bereitstellt, für das Unternehmen Cinnamood.

Text

Ausgangslage

Die road2goat GmbH betreibt den „Cinnamood“-Store, der täglich hunderte bis über tausend frisch gebackene Zimtschnecken verkauft, deren Produktionsmenge derzeit manuell geplant wird. Ziel dieser Arbeit ist die Entwicklung eines datenbasierten Prognosemodells, das die Tagesnachfrage präzise vorhersagt und die Ergebnisse in einer Webapplikation visualisiert. Grundlage bilden kontinuierlich abrufbare Verkaufsdaten über eine Schnittstelle, um Echtzeit-Prognosen und Nachproduktionshinweise zu ermöglichen.

Zielsetzung

Die manuelle Produktionsplanung bei Cinnamood ist zeitaufwändig und fehleranfällig, da viele externe Faktoren wie Wetter oder Wochentag die Nachfrage beeinflussen. Ziel ist daher die Entwicklung eines automatisierten, datenbasierten Planungssystems, das präzise Nachfrageschätzungen ermöglicht, flexibel auf kurzfristige Veränderungen reagiert.

Bild 1

FHNW

Auf der Übersichtsseite sieht man die Prognose auf den jeweiligen Tag bezogen mit einer grünen Linie, welche den Durchschnitt der Verkaufszahlen an diesem Wochentag darstellt, und die gelbe Linie die Prognose, welche durch das Prognosemodell berechnet wurde. Blau sind die tatsächlichen Verkaufszahlen.

Bild 2

FHNW

Bei der Planungsseite kann man die Vorhersagen für die nächsten Tage anschauen und so schon im Voraus planen, wobei man auch die vergangenen Prognosen sieht und in wie fern sie mit den tatsächlichen Daten übereinstimmen.

Bild 3

FHNW

Die Datenseite stellt nochmals die Verkaufszahlen in tabellarischer Form dar.

* Die Verkaufszahlen sind Beispieldaten aus Datenschutzgründen

Ergebnisse

Im Verlauf des Projekts wurde eine webbasierte Prognoseanwendung entwickelt, die eine strukturierte und leicht verständliche Darstellung von Verkaufs- und Produktionsdaten ermöglicht. Die Applikation unterstützt die tägliche Produktionsplanung durch drei zentrale Ansichten: Übersicht, Planung und Daten. Dabei werden aktuelle Prognosen, historische Verkaufszahlen und externe Einflussfaktoren wie Wetterdaten miteinander kombiniert und visuell sowie tabellarisch aufbereitet.

Technisch basiert die Lösung auf einem modularen React-Frontend, das über eine REST-Schnittstelle mit einem Flask-Backend kommuniziert. Die Vorhersagemodelle nutzen unter anderem historische Verkaufsdaten, Feiertage und Wetterlagen. Die Anwendung bietet dynamische, stündlich aktualisierte Prognosen mithilfe einer S-Kurve und ermöglicht Vergleiche mit tatsächlichen Verkaufswerten. Viele zusätzliche Funktionen wie Umsatzprognosen, typenspezifische Analysen und eine Date Selector View wurden auf Wunsch des Kunden integriert.

Nicht alle ursprünglich geplanten Features wurden umgesetzt – etwa die Integration mehrerer Standorte oder manuelle Eingaben von Parametern – da diese in Abstimmung mit dem Kunden zugunsten relevanterer Funktionen zurückgestellt wurden. Insgesamt wurde eine funktionsreiche, praxistaugliche und mobiloptimierte Applikation realisiert, die durch Livetesting und direktes Feedback kontinuierlich verbessert wurde.

Technologien

Für die Umsetzung des Projekts kamen moderne Web- und Data-Science-Technologien zum Einsatz. Das Frontend wurde mit React entwickelt und nutzt Chart.js zur Darstellung interaktiver Diagramme. Diese Bibliothek ermöglichte eine flexible und übersichtliche Visualisierung der Prognose- und Verkaufsdaten. Die Kommunikation mit dem Backend erfolgt über eine REST-API.

Das Backend basiert auf Flask, einem leichtgewichtigen Python-Webframework, das sowohl die REST-Endpunkte bereitstellt als auch die Vorverarbeitung der Daten übernimmt. Für die Berechnung der Verkaufsprognosen wurde das statistische Modell SARIMAX verwendet, das sich gut für zeitabhängige Datenreihen eignet und externe Faktoren wie Wochentage oder Wetterdaten einbeziehen kann.

Technische Schlüsselbegriffe

  • ReactJavaScript-Bibliothek zur Erstellung modularer, interaktiver Webanwendungen
  • Graph-Ansicht (Charting)Visualisierung von Verkaufs- und Prognosedaten in Form von Linien- oder Balkendiagrammen
  • FlaskLeichtgewichtiges Webframework in Python, zur Bereitstellung von Endpunkten im Backend
  • KalenderintegrationErmöglicht die Auswahl und Anzeige vergangener Verkaufsdaten über eine intuitive Datumsauswahl
  • SARIMAX-ModellZeitreihenprognoseverfahren mit saisonalen und externen Einflussgrössen (z.B. Wetter, Feiertage)
  • REST-API-AnbindungStrukturierte Kommunikation mit dem Backend zur Abfrage von Live-Daten in Echtzeit
  • Live-DatenverarbeitungStatistische Spannbreite zur Angabe der Prognoseunsicherheit.
  • Responsive DesignGestaltung der Oberfläche für unterschiedliche Gerätegrössen, wie Tablet und Smartphone
  • PythonProgrammiersprache zur Umsetzung der Datenlogik, Modellberechnungen und API-Definitionen

Kunde

Logos

ROAD2GOAT GMBH
Luca Stehle
Freie Strasse 93
4051 Basel
einen Link zum Unternehmen

Team

Fabian Studer
Roy Aregger

Betreuer
Michael Henninger

Salomon Billeter