Regelkonformität oder Compliance ist eine wichtige Aufgabe, der Unternehmen ganze Abteilungen widmen. Diese Abteilungen müssen mitunter komplexe Abläufe anhand von Ereignisprotokollen oder Logdateien von beträchtlichem Umfang schnell und zuverlässig auf Einhaltung gegebener Regeln prüfen. Eine typische Regel für eine Bank könnte lauten: Kein Kunde darf mehr als 5000 Franken pro Woche abheben. Die Identifizierung einzelner Verstösse ist von grossem Wert.
Wir entwickeln Algorithmen, die kontinuierlich ankommende Daten auf Regelverstösse überprüfen. Je komplexer die Regel, desto grösser ist die Herausforderung, sie auf enormen Datenmengen effizient zu prüfen. Die Ausdrucksstärke der Eingabesprache beeinflusst die mögliche Komplexität der Regeln und damit auch die Effizienz der Algorithmen. Wir streben nach einer möglichst effizienten Regelüberprüfung für ausdrucksstarke und somit vielfältig einsetzbare Eingabesprachen.
Das Problem der automatisierten Regelüberprüfung kann von zwei Seiten angegangen werden. Einerseits verbessert die theoretische Forschung die Ausdrucksstärke der Eingabesprache für Regeln und entwickelt Algorithmen für diese Sprachen. Die Skalierbarkeit dieser Algorithmen auf grosse Datenmengen wird jedoch oft vernachlässigt. Andererseits implementiert die praktische Forschung skalierbare Algorithmen zur parallelisierten Ausführung in Rechenclustern. Dabei kommt der Entwurf der Eingabesprache oft zu kurz. Unser Projekt vereint beide Ansätze zum beidseitigen Nutzen