CORDIS - Forschungsergebnisse der EU
CORDIS

Computing with Infinite Data

Article Category

Article available in the following languages:

Mit unendlich vielen Daten rechnen

Die Forschenden des EU-finanzierten Projekts CID haben die Grundlage für die Entwicklung effizienter und vertrauenswürdiger Software für technische Anwendungen geschaffen, indem sie unser Verständnis über die Berechnung mit unendlich vielen Daten verbessert haben.

Digitale Wirtschaft icon Digitale Wirtschaft

Ob der Autopilot in einem Flugzeug, die Software zur Überwachung und Steuerung des Bahnverkehrs oder die Sensoren, die autonome Funktionen in unseren Autos unterstützen, sie alle hängen nicht nur von der Technik ab, sondern auch davon, dass diese Technik immer richtig funktioniert. „Immer mehr Anwendungen erfordern den Einsatz von Computern, aber in vielen Situationen können Computerprogramme Ungenauigkeiten aufweisen, zum Beispiel durch Rundungsfehler“, sagt Dieter Spreen, Mathematiker an der Universität Siegen in Deutschland. Wenn es zu Ungenauigkeiten kommt, kann das unerwartete Folgen haben. Ein Beispiel dafür ist, dass die erste Ariane-5-Rakete wegen einer solchen Ungenauigkeit nicht starten konnte. „Diese Ungenauigkeiten entstehen, wenn die mathematische Theorie und ihre Umsetzung in Computerprogramme auseinanderfallen“, fügt Spreen hinzu. Mit Unterstützung des EU-finanzierten Projekts CID ist die Universität Siegen führend bei der Entwicklung von Instrumenten, die zur Beseitigung dieser Ungenauigkeiten erforderlich sind. „Das Projekt bot einen hervorragenden Rahmen. Forschende konnten darin aus unterschiedlichen, aber verwandten Bereichen in einem sehr produktiven und freundlichen Umfeld zusammenarbeiten“, sagt Daniel Graça, Forscher an der Universität der Algarve, einer Projektpartnereinrichtung.

Daten mit unendlicher Genauigkeit einführen

An dem Projekt beteiligt sind 20 Partneruniversitäten und -einrichtungen aus Europa und der ganzen Welt. Ihr Ziel: die Entwicklung von Werkzeugen, mit denen sich die korrekte Funktion technischer Anwendungen formal beweisen lässt. „Software wird in der Regel mit einer Vielzahl von möglichen Szenarien getestet“, erklärt Spreen. „Dies ist jedoch keine Garantie dafür, dass die Software völlig sicher ist, da immer noch Schwachstellen vorhanden sein und diese unbeabsichtigte Folgen haben können – entweder durch Unfälle oder böswilliges Verhalten.“ Um dieses Manko zu beheben, wurde im Rahmen des Projekts auf Daten mit unendlicher Genauigkeit zurückgegriffen. „Obwohl dies nach einer physikalischen Unmöglichkeit klingt, kann man einen gewöhnlichen Computer so programmieren, dass er sich so verhält, als ob seine Datenstrukturen tatsächlich unendlich wären, obwohl in Wirklichkeit alle Daten eine endliche physikalische Repräsentation aufweisen“, sagt Alex Simpson, Forscher an der Universität Ljubljana, einer weiteren Partnereinrichtung des Projekts. Wie Spreen erläutert, ist dies sowohl praktisch sinnvoll, da es sich um einen realistischen Ansatz für die Datenverarbeitung handelt, als auch theoretisch, da es durch strenge mathematische Modelle gerechtfertigt ist. „Durch die Verwendung unendlicher Datenstrukturen werden Rundungsfehler vermieden, die bei Standardberechnungsmodellen, welche beispielsweise auf Gleitkomma- oder Doppelpräzisionszahlen basieren, allgegenwärtig sind“, kommentiert er. Durch die Berechnung mit unendlichen Daten konnte das Projekt Programmiersprachenunterstützung und Methoden entwickeln, um die Korrektheit von Programmen mit unendlichen Daten sicherzustellen. Darüber hinaus eröffnete sie Möglichkeiten für mathematische Modelle, die neue Anwendungen einbeziehen können.

Zu komplex, um sie zu lösen

Das Projekt befasste sich zudem mit verschiedenen Algorithmen, die in technischen Anwendungen eingesetzt werden. „Wir wollten verstehen, welche Probleme von Natur aus schwierig oder sogar unmöglich mithilfe von Computern zu lösen sind, und herausfinden, wie sich diese Probleme von einfacheren unterscheiden“, führt Spreen aus. Die Forschenden haben festgestellt, dass manche Probleme so komplex sind, dass es keine einfachen Verfahren gibt. Dieses Wissen ist für die Softwareentwicklung wichtig, denn es bedeutet, dass keine Zeit mehr mit der Suche nach Alternativen verbracht werden muss. „Wir haben uns für diese Fragen interessiert, weil wir erkannt haben, dass dynamische Systeme in vielen relevanten realen Anwendungen eingesetzt werden, aber in vielen Fällen zu komplex sind, um sie ohne den Einsatz von Computern zu analysieren“, schließt Graça. „Ein tieferes Verständnis für diese Fragen zu erlangen, war für uns ein wichtiger Erfolg.“

Schlüsselbegriffe

CID, Computer, Computerprogramme, Daten, Berechnung, technische Anwendungen, Technologie, mathematische Theorie, unendlich genaue Daten

Entdecken Sie Artikel in demselben Anwendungsbereich