Eintrag kommentierenErfahrung zum Thema berichtenEintrag bewerten
Dieser Eintrag wurde im Schnitt mit 0 von 5 Punkten bewertet
Verfahren
Model Checking (Zustandsexplosion)
Methode/Technik:4586
Externe Quellen zum Thema NEU: Externe Quellen zum Thema suchen 
Beschreibung
Ein wesentliches Problem bei der Anwendung des Model Checking auf realistische Systeme ist die sogenannte Zustandsexplosion: Durch die parallele Ausführung von Programmen in Software oder den parallelen Betrieb einzelner Schaltkreise vgl. Nebenläufige Systeme) wächst die Anzahl der möglichen Zustände exponentiell an, so dass eine Untersuchung des Gesamtsystems mit Hilfe des Model Checking immer schwieriger und zeitaufwendiger wird. Systeme mit unendlichen Zustandsmengen sind einer automatischen Verifikation mit Hilfe des Model Checking zunächst nicht zugänglich.

Es existieren jedoch bereits zahlreiche Ansätze aus der Forschung, um das Problem der Zustandsexplosion anzugehen, so dass sich mittlerweile viele praktisch relevante Modelle erfolgreich verifizieren lassen:

  • Ordered Binary Decision Diagrams
    Eine Klasse von Optimierungen betrifft das so genannte symbolische Model Checking, bei dem man Systemrepräsentationen nutzt, die im Vergleich zu Kripke-Strukturen viele Modelle vom Rechner schneller manipulieren lassen und beim Model Checking weniger Speicher verbrauchen. Symbolische Model-Checker basieren zumeist auf Ordered Binary Decision Diagrams (OBDD). Anstatt Zustände und Übergänge explizit zu speichern, wird die Struktur mittels BDD symbolisch dargestellt. Dadurch ist eine kompakte Speicherung und Analyse der Struktur möglich.
  • Abstraktion
    Neben der Nutzung von manipulierbaren Systemrepräsentationen nutzt man Verfahren zur Reduktion des Zustandsraumes. In diesem Zusammenhang bilden Abstraktionstechniken Zustandsmengen auf abstraktere Teilmengen ab Die zu verifizierende Eigenschaft sollte nicht direkt oder indirekt von einem der zu abstrahierenden Modellelemente abhängen. Abstraktionen lassen sich entweder manuell oder automatisch anwenden. Letztere untersuchen z.B. automatisch Berechnungsbeziehungen zwischen Variablen, um daraus Hinweise für eine Wertebereichsreduktion abzuleiten. Sie analysieren die Unabhängigkeit konkurrierend ausgeführter Transitionen zur Beschleunigung der Verifikation asynchroner nebenläufig ausgeführter Softwareprozesse (sog. „Partial Order Reduction“). Derartige Ansätze lassen sich unter dem Begriff “explizites“ Model Checking zusammenfassen.
  • Dekomposition des Systems
    Bei diesem Verfahren werden die einzelnen Komponenten des nebenläufigen Systems für sich verifiziert. Bei einer getrennten Analyse müssen für die Interaktion der Komponenten untereinander bestimmte Bedingungen gelten. Diese Bedingungen müssen von den beteiligten Komponenten oder deren Umgebungen wieder aufgelöst werden können. Zusätzliche Voraussetzungen, die in den Verifikationsprozess einfließen, beschreiben die Interaktion zwischen den Komponenten. Nur durch diese Annahmen ist gewährleistet, dass die lokal verifizierte Bedingung auch global gültig ist.
Weitere Lösungsansätze:

  • Ausnutzen von Symmetrien
  • Induktionsbeweise
finden sich hier.

Zurück zum Gliederungspunkt Model Checking (Motivation)
Externe Quellen zum Thema NEU: Externe Quellen zum Thema suchen 
 Eintrag kommentieren 
 Eintrag bewerten 
 Erfahrung zum Thema berichten 
Zu dieser Seite wurden noch keine Kommentare oder Bewertungen abgegeben.
 
Zum Seitenanfang Top Drucken Impressum AGB
Home

VSEK ©2001-2012