ZIM LogoBMWI Logo

CloudMath - Die Mathematik kommt in die Cloud

Die Anfänge heutiger Mathematiksoftware liegen in terminalbasierten Programmen, die in den 80er-Jahren des letzten Jahrhunderts auf Großrechnern in Rechenzentren gehostet wurden. Mit dem Aufkommen der PCs sowie fensterbasierter  Benutzeroberflächen migrierten diese Softwarepakete zu Anwendungen mit besserer Benutzerführung und umfassenden grafischen Visualisierungsmöglichkeiten. Der Kern besteht jedoch nach wie vor in einer Berechnungs-Engine, die über terminalbasierte Befehle gesteuert und bedient wird.

Mit dem Aufkommen des Cloud-Computings kehrt sich der Trend vom Rechenzentrum zum Einzel-PC wieder um, als Terminals stehen heute allerdings keine grünen oder bernsteinfarbenen Monitore mit geringer Auflösung mehr bereit, sondern Webbrowser, die über HTML5, CSS3 und JavaScript selbst bereits eine komplexe Anwendungsumgebung darstellen, die durchaus mit den Funktionen klassischer Windows-Systeme mithalten kann. Ein weiterer Trend des Cloud-Computing ist das Aufkommen sozialer Netzwerke. Anwendungen wie Facebook und Twitter, die eine bisher unerreichte Vernetzung und Kommunikation zwischen Benutzern weltweit ermöglichen, wären ohne leistungsstarke skalierbare Cloud-Systeme nicht denkbar. Es liegt daher nahe, diese Entwicklungen und Konzepte moderner Cloud-Dienste auch für mathematische Software zur Verfügung zu stellen: browserbasierte Terminalanwendungen greifen auf die zentralisierte Rechenleistung von Cloud-Systemen  zu, gleichzeitig entstehen durch dieses System Interaktions- und Kooperationsmöglichkeiten, welche die Benutzer von sozialen Netzwerken kennen und schätzen gelernt haben.

Diese Überlegungen bildeten im März 2013 den Ausgangspunkt für das Projekt CloudMath, das Dr. Hornecker zusammen mit dem Mathematischen Institut der Universität Kassel durchgeführt hat. Das Projekt wurde im Rahmen des ZIM-Programmes vom Bundesministerium für Wirtschaft und Technologie gefördert. Die Plattform liegt inzwischen als Prototyp vor und wird im Rahmen einer Betaphase getestet.       

Bereits nach dem Login präsentiert sich die Plattform als Schaltstelle sowohl für die mathematisch wissenschaftliche Arbeit als auch für die Interaktion mit anderen Nutzern der Plattform. Typische Möglichkeiten sozialer Netzwerke wie Blog, Chat und Foren sind implementiert bzw. vorbereitet. Zur mathematischen Arbeit dienen Projektverzeichnisse, bei CloudMath Solutions genannt. Innerhalb von Solutions können Worksheets angelegt werden, wie sie von der Arbeit mit wissenschaftlicher Software bekannt sind: auf die Eingabe eines Befehls antwortet das System mit dem Ergebnis der Kalkulation, einer Grafik, etc..

CloudMath Login Screen

Hinter den Kalkulationen verbergen sich serverseitige Webdienste, die jeweils eine mathematische Software als Dienst kapseln. Derzeit sind die freien Systeme SAGE (Computeralgebra), Octave (Numerik) und R (Statistik) abgebildet. Durch die Plugin-Architektur ist es jedoch möglich, auch weitere freie sowie kommerzielle Systeme einzubinden.
Die Arbeit in CloudMath erfolgt in der gleichen Weise wie es Benutzer von Desktopanwendungen gewohnt sind.

CloudMath Shell1

Verbunden sind die Systeme aus Benutzersicht über eine auf Python basierende Kommandosprache, welche auch unabhängig von den Plugins genutzt werden kann. Über diese übergreifende Ebene können auch Daten zwischen den einzelnen Systemen ausgetauscht werden. So ist es beispielsweise möglich, ein algebraisches System in SAGE zu definieren, in Octave numerisch zu berechnen und anschließend in R weiter zu analysieren und damit jeweils das Beste aus den vorhandenen Welten zu nutzen.

CloudMath Shell und Grafik

Ebenfalls auf der übergeordneten Ebene wurde die Visualisierungsbibliothek CloudMathPlot implementiert, welche die Ausgabe sowie die Interaktion mit 2D- und 3D-Grafiken im Browser ermöglicht.
Wie bereits erwähnt, wurde in CloudMath das mathematische Arbeiten um eine interaktive soziale Komponente erweitert. Auf Einladung hin kann weiteren angemeldeten Benutzern das Recht eingeräumt werden, an einem Worksheet mitzuarbeiten. Jedem Benutzer steht dann eine eigene Eingabezeile zur Verfügung, die Zugriff auf alle Daten des Worksheets hat. Ergebnisse werden wiederum gleichzeitig an alle beteiligten Benutzer übermittelt. Somit wird ein „mathematisches Chatten“ im Rahmen eines Dokumentes standort- und geräteunabhängig möglich.

English Version of this page

Dr. Hornecker Software-Entwicklung und IT-Dienstleistungen

Leo-Wohleb-Strasse 6
D-79098 Freiburg

+49 (0) 761 - 20 55 10 - 20

Dr. Hornecker Softwareentwicklung und IT-Dienstleistungen