Karsten Schmidt
Institut furInformatik
Humboldt{Universitatzu Berlin
10099Berlin
e{mail:kschmidt@informatik.hu-berlin.de
6.August 1999
Zusammenfassung
LoLAisteinerreichbarkeitsgraphbasiertesWerkzeugfurStellen/Transitions{Netze.
HiergehtesumLoLAsFahigkeit,erreichbareZustandemitvorgegebenenEigenschaf-
tenzusuchenundim ErfolgsfalleinensolchenZustandmiteinemWegvonder An-
fangsmarkierung dorthin anzugeben. Die Besonderheit besteht darin, da wahrend
der Suchenur zwei Zustande gespeichert werden: der Anfangszustand und der ak-
tuelleZustand. AnstattalsodenZustandsraumsystematischzudurchmustern(und
dabeimeistamSpeicherendezuscheitern),navigiertLoLAohneKenntnisderschon
betretenenZustandedurchdenErreichbarkeitsgraph.DasietrotzdemihreAufgabe
erfolgreichlost,liegtanihrenspezischenFahigkeiten:Schnelligkeit,Bescheidenheit,
Zielstrebigkeit,NeugierundAusdauer.
1 Wer ist LoLA?
LoLAenstandmit demZielderValidierungvonReduktionstechnikenfurErreichbarkeits-
analyse. Sie kann Erreichbarkeits-und
Uberdeckbarkeitsgraphen (letztere wie beiKarp
undMiller[5],d.h.ohneFinkelsVerbesserungen[3])bauen,undzwarunterVerwendung
symmetrischerund/odersturerReduktion.Fursymmetrischreduzierte Graphen[4,2,9]
wirdeinpolynomiellgroesErzeugendensystemderNetzsymmetriegruppeberechnetund
zurGraphreduktionverwendet,indemzujeder
AquivalenzklassevonZustandenbezuglich
derSymmetrierelationjeweilsnureinVertretergespeichertwird(sieheauch[6]).Fursture
Reduktion[10]wirdinjedemZustandeineTeilmengevonTransitionenberechnetundnur
dieschaltbarenTransitionenausdieserMengeweiterverfolgt.DieMengeistsobeschaen,
dadiezuanalysierendeEigenschaftbewahrtwird.GegenwartigwerdenalsEigenschaften
ErreichbarkeiteinerMarkierung,BeschranktheitvonStellenbzw.desNetzes,toteTransi-
tionen,Reversibilitat,HomestatessowieFormelneinerbranching{time{temporal{logicmit
"
moglich\(CTL:EF)und
"
immer\(CTL:AG) alsTemporaloperatorenunterstutzt(siehe
[8,7]).
NebendiesenLeistungenkannLoLAnunauchalsPfadnderarbeiten.
2 Was ist ein Pfadnder?
EinPfadnderbekommteineZustandseigenschaftundhatdieAufgabe,unterdenerreich-
barenZustandeneinenmitdieserEigenschaftzundenunddenWegvomAnfangszustand
dorthinzuzeigen.Wirnennen ZustandemitdergesuchtenEigenschaftZielzustande.
aussagensind.EineElementaraussagehatdieFormsRk,wobeiseineStelledesNetzes,
ReinRelationssymbolausdemVorratf=;6=;<;>;;gundkeinenaturlicheZahlsind.
EinZustand m erfullt eineElementaraussages Rk,falls die Aussage m(s)Rk mit den
ublichen Interpretationen der Relationszeichen zu einer wahrenAussage wird. Damit ist
unmittelbarklar,wanneinZustandeinezusammengesetzteZustandsaussageerfullt.
WeilimVorratanRelationssymbolenzujedemSymbolauchdasnegierteSymbolauf-
taucht,kannman unter Verwendung vonde MorgansFormelnNegationszeichenin Zu-
standsaussagenkompletteliminieren.Wir werdendahernur ^und_ alslogischeOpera-
torenbetrachten.
3 LoLA ist bescheiden
DieseAussagebeziehtsichauf LoLAsUmgangmitSpeicherplatz.WahrendihrerPfadn-
dertatigkeitspeichertLoLAlediglich
dasNetzmitStellen,Transitionen,Bogen,Vor-,Nachbereichenundeinigenanderen
InformationeninderGroenordnungdesNetzes,diedemschnellenZugriaufhaug
verwendeteInformationengestatten;
denAnfangs- undden aktuellenZustand;
dieZustandsaussageinFormeinesBaumes;dabeiwerdenHintereinanderausfuhrun-
genvon^und_zuje einemKnotenzusammengefat;
denPfadbiszueinerLangeeinesnutzerdenierten WertesMAXPATH;
eineHashtabelle,diezujedemHashwerteinenaturlicheZahlspeichert.
BeieinemNetzvon90.000Knoten,MAXPATH=3.000.000undeinerHashtabellengroe
von655.360passenalleDatenstrukturenbequemineinen64MBHauptspeicher.
4 LoLA ist schnell
Alle wahrend einer Pfadsuche von LoLA auszufuhrenden Tatigkeiten erfordern Zugrie
nur in der naheren Umgebung (im Petrinetzsinn) einerTransition.Im einzelnen sind zu
eineraktuellen MarkierungfolgendeSchritteauszufuhren:
Formelwert bestimmen.VoneinerStellesaussindalleElementaraussagenzugreifbar,die
sich aufsbeziehenundwerdennurdann,wennsin derUmgebungderzuletztgeschalte-
tenTransitionliegt,
uberpruft. Nur,wenn sich der Wert eines Knotens
andert,wird der
daruberliegende Knoten neu
uberpruft. Die Knoten fur ^ und _ fuhren Buch
uber die
Anzahl der erfullten Teilaussagen. Diese Anzahl reicht aus, um deren Wahrheitswert zu
determinieren.
Menge der schaltbaren Transitionen bestimmen. Sei t die zuletzt geschaltete Transition.
Eine Transitiont 0
wird nur in zwei Fallen bei der aktuellen Markierung auf Konzession
gepruft. Der erste Fall liegt vor, wenn t 0
vor dem Schalten von t Konzessionhatte und
t Markenausdem Vorbereich vont 0
entfernt.Der zweite Fall liegt vor,wennt 0
vordem
Schalten von t keine Konzession hatte und t Marken im Vorbereich von t 0
erzeugt. Bei
allenanderenTransitionenkann sich Konzessioniertheit gegenuberder alten Markierung
nichtgeandert haben.
Einezu schaltendeTransition auswahlen.SiehehierzudieAbschnitte
uberZielstrebigkeit
undNeugier.
tenTransitionwerdenbeeinut.
DerneuenMarkierungeinenHashwertzuordnen.LoLAverwendeteinegewichteteMarken-
summe(modulo derTabellengroe)alsHashfunktion.Damit istdieWertanderungdurch
dasSchalteneinerTransitionkonstantundwirdbeiderTransitiongespeichert.
WegenderlokalenAusfuhrbarkeitallerOperationenbleibtdieGeschwindigkeitvonLo-
LA(gemessenin geschalteten TransitionenproSekunde, TR
s
)auchbeiwachsenderNetz-
groenahezugleich.
Der Verzicht auf die Speicherung und Verwaltung besuchter Markierungen beschleu-
nigt LoLAs Arbeit enorm (neben den netten Auswirkungen auf den Speicherplatz). Die
MarkierungsverwaltungistdieeinzigeTatigkeitinanderenLoLA{Komponenten,dienicht
inkrementell implementiert ist. So kann man den Zeitbedarf fur Markierungsverwaltung
etwaanfolgendenBeispielenablesen:FureinNetz mit 25StellenschatLoLA mit Mar-
kierungsverwaltungetwa25.000 TR
s
, furein Netz mit 5.000Stellen dagegennur400 TR
s .
OhneMarkierungsverwaltung,d.h.beimPfadnden,erreichtLoLAbeibeidenNetzenum
die500.000 TR
s
.Alle ZahlenbeziehensichaufLINUX, PentiumII,400MHz.
5 LoLA ist zielstrebig
Da LoLA keine Buchfuhrung
uber die schon besuchten Zustande betreibt, mu sie das
systematische Durchforsten des Zustandsraumes durch eine Intuition daruber ersetzen,
wo sich Zielzustandebenden konnten, und dann einfach in die entsprechendeRichtung
losmarschieren. Diese Intuition bezieht LoLA durch die Auswertung sturer Mengen [10]
in ihrer Versionfur Erfullbarkeitvon Zustandsaussagen [8]. Bei einer Markierungm ist
eine sture Menge eine Menge U von Transitionen mit der Eigenschaft, da unter den
kurzestenWegenzueinemZielzustandgarantierteinerist,dermiteinerTransitionausU
beginnt.Somit besteht derersteTeil vonLoLAs Intuition darin,einesolcheMengeU zu
berechnen(dasgehtsehreÆzient)undTransitionenauerhalbvonU ausjeglicherweiteren
Betrachtungauszuschlieen.
Daruberhinaus wertet LoLA aber die genauere Struktur der sturen Menge U aus.
Bei der Berechnung einer sturen Menge gehen wir davon aus, da die aktuelle Markie-
rungmselbstkein Zielzustandist (sonstwareLoLAlangstmit derErgebnisprasentation
beschaftigt).
Eine sture Mengewird inkremetell berechnet. Manstartet mit einerAttraktormenge
U
0
, diedie Eigenschaft hat,da jeder Weg zueinem Zielzustand garantiert Transitionen
aus U
0
enthalt. Eine solche Menge kann man in der Tat aus aktueller Markierung und
Zustandseigenschaftbestimmen,wiediefolgendeTabellezeigt(beachte,daeinrekursiver
Abstiegnur innichterfullteTeilformeln vorkommt,alsonachwievordavonausgegangen
werdenkann,daderaktuelleZustanddie(Teil){formelnnichterfullt).
s<k s
sk s
s=k s
,fallsm(s)>k,
s,fallsm(s)<k
s>k
s
sk
s
s6=k
s[s
1
^
2 U
1
,falls
1
nichterfullt ist,
U
2
,falls
2
nichterfullt ist
1 _
2 U
1 [U
2
Die Attraktormenge wird anschlieend iterativ zu einer schwach sturen Menge ver-
groert,wobeiin jedemIterationsschrittzujederkonzessioniertenTransitionalledazuim
Konikt stehenden Transitionen undzu jeder nicht konzessionierten Transitiondie Vor-
transitioneneinernichtausreichendmarkierten Stellehinzugenommen werden.
MankannnunTransitionenin dersturenMengedanachklassizieren,inwelchemIte-
rationsschrittsieindiestureMengeaufgenommenwurden(Attraktormenge=Aufnahme
inSchritt0).
Dann kann man erstens beobachten,da durch Schalten von Transitionen auerhalb
der Attraktormenge ein Nichtzielzustand garantiert in einen Nichtzielzustand
uberfuhrt
wird.ZweitenskannsichanderSchaltfahigkeiteinerimIterationsschrittiaufgenommenen
TransitionnurdurchSchalteneinerspatestensimSchritti+1aufgenommenenTransition
etwas
andern.Umalsoeine
AnderungdesGesamtformelwertesmoglichstschnellzuprovo-
zieren(und worumsonst gehtes?),liegt esnahe,fruhindie stureMengeaufgenommene
TransitionengegenuberspataufgenommenenTransitionenzubevorzugen.
DieseGreedy-Heuristik istderKernvonLoLAs Intuitionuber dieRichtungvon Ziel-
zustanden. Sie wird implementiert, indemTransitionenin derReihenfolge,in der siebe-
rechnetwerden,alsKandidatenzumSchaltenvorgeschlagenwerden.ZujedemKandidaten
wird(siehe Neugier)eineMunzegeworfen,diedaruberentscheidet,obderKandidatsich
alszuschaltendeTransitionqualiziert.IsteineTransitionselektiert,kanndieBerechnung
dersturenMengeunterbrochenwerden,sodaauchhierwegendermeisthohenPrioritat
fruherTransitionennormalerweisenurlokalerBerechnungsaufwandbesteht.
6 LoLA ist neugierig
BevorsicheinKandidatalsSchalttransition qualiziert,
uberpruftLoLA,wieinteressant
eineFortsetzungmit dem Kandidatenseinkonnte.HierkommtdieHashtabelleins Spiel.
Sie speichert zu jedem Hashwert, wie oft eine Markierung mit diesem Hashwert schon
aktuelle Markierung war. Fuhrt die Kandidatentransition zu einem noch nie besuchten
Hashwert,soistderFolgezustandgarantiertneuundLoLAsNeugierlatsiedenKandida-
tenmit Wahrscheinlichkeit1selektieren.JegroerdieZahldervorangegangenenBesuche
beieinemHashwertist,destoeherliegtesnahe,daderFolgezustandschoneinmalbesucht
wurde,undLoLAsInteresse(d.h.Auswahlwahrscheinlichkeit)sinkt.WennhderHashwert
derdurchdasSchaltendesKandidatententstehendenMarkierungist,soselektiertLoLAt
mitWahrscheinlichkeit K
K+h
.DabeiistK einefestimplementierteKonstante,diesteuert,
wiestark LoLAs Interessedurch steigendeBesuchszahlenabsinken soll.Experimente fur
eineglucklicheWahlvonK stehennochaus.
IstdieListederKandidatenerschopft,ohnedaLoLAeinendavonselektierthat,wird
ausderMengeallerabgelehntenKandidateneineTransition(gleichverteilt)gewahlt.
Mit Zielstrebigkeit und Neugier
uberlagern sich zwei Heuristiken, deren Dominanz
sich imLaufe der Zeit verschiebt. Zu Anfang, d.h. bei kleinen Besuchszahlen, bestimmt
die Oberhand bekommt. Sind schlielich die Besuchszahlen so gro, da alle Kandida-
ten abgelehntwerden, dominiert die ungewichtete zufallige Auswahl, d.h. es ndet nach
demVersagenderHeuristikenletztendlichblindeSucheim(immernochsturreduzierten)
Erreichbarkeitsgraphenstatt.
7 LoLA hat Ausdauer
InvielenFallenfuhrenZielstrebigkeitundNeugierdazu,daLoLAihrZielaufAnhieber-
reicht.Garantierenkanndasnaturlichniemand.DeshalbwirdbeimErreicheneinernutzer-
deniertenMaximalpfadlangedie SucheabgebrochenundeineneueSuchegestartet(also
zurAnfangsmarkierungzuruckgesetzt).Als Lehreaus dem gescheiterten Versuchwerden
dieinderHashtabellevermerktenBesuchszahlenbeibehalten, sodaaufgrundgeanderter
Wahrscheinlichkeiten(undwegenderZufallsnatur)neueWegebeschrittenwerden.Erreicht
LoLAeinenDeadlock,wirdebenfallsneugestartet.
Wie dem auch sei, LoLA wird niemals aufgeben. Wirdsieauf eine Eigenschaft ange-
setzt, die gar nicht durch erreichbare Markierungenerfullt wird, wird sie dieseTatsache
nie und nimmer zur Kenntnis nehmen, sondern immer wieder von vorn neue Pfadn-
deversuche starten, bis da der Anwender sie dabei unterbricht. Es gibt naturlich auch
erreichbareZielzustande,beidenen LoLAsIntuitionsieindieIrrefuhrt undsieerstnach
astronomischerVersuchszahlndenlat.Daherlautet alsoLoLAs Antwortspektrum
"
Ja,
der Zustand ist denitiv erreichbar und ich kann sogarsagen, wie\ bzw.
"
Hm, ich kann
nicht sagen, ob der Zustand erreichbarist\. Dies ist genau das duale Antwortspektrum
zuMethoden,dieaufderAuswertungderPetrinetz{ZustandsgleichungmitMethodender
linearenProgramnmierungberuhen(dort: nein/vielleicht).
8 Erste Erfahrungen
DasbishergrotegetesteteSystemhatte90.000Knoten(50.000Stellen,40.000Transitio-
nen).DieEigenschaftwareineKonjunktionaus9.999Elementaraussagen.DasSystemhat
3 10:000
1erreichbareZustande. Genaueiner davonerfulltdie Eigenschaft. Derkurzeste
PfadzudiesemZustand hatdieLange29.997.
LoLA meisterte die gestellte Aufgabe (mit 400MHz auf 64MB unter LINUX) in 80
Sekunden. Dabei entelen 70 Sekundenauf dasEinlesen von Netz und Eigenschaft, nur
wenigmehrals0SekundenaufdieeigentlichePfadsucheund10SekundenaufdasSchreiben
desetwa50.000TransitionenlangenPfades.
EinSuchverfahrenmit klassischerMarkierungsverwaltungmutevermutlichselbstbei
perfekter Reduktion wenigstens die etwa 30.000 Markierungen speichern, die auf einem
kurzestenWegzurZielmarkierungliegen.Dassindbei1BitproStelleundMarkierung(das
Netzistsicher)alsomindestens3000050000Bitoder187,5MB. DiesesSpeichervolumen
istmitdenobengenanntenHardwarevoraussetzungennichtsinnvollzubeherrschen.
DurchihreBescheidenheitkannLoLAalsoProblemeangehen,dieauerhalbderReich-
weitevonsystematischerSucheliegen.DerPreisdafuristdasreduzierteAntwortspektrum.
DenNachteilderUnkenntnisschonbesuchter ZustandeversuchtLoLAdurchihreSchnel-
ligkeitundihreIntuition(Zielstrebigkeit/Neugier)zukompensieren.
BDD-basierte Methoden ([1]) konnen im Prinzip groe Zustandsraume beherrschen.
Derzeitige Methoden durften aber mit einer Stellenzahl von 50:000 und einer Suchtiefe
von30.000auchnochihreSchwierigkeitenhaben.DanebenerfordertdiePfadbestimmung
in BDD-basierten (symbolischen) Verfahren einen gewissen Rechenaufwand, wahrend in
LoLAeinPfadaufkanonischeWeisemitgeliefert wird.
fundenen Zustand. Manchmal enthalt ersogarKreise. Dennoch istder Pfadoft deutlich
kurzer als Pfade, die durch tiefensuchbasierte Verfahren geliefert werden. KurzerePfade
verbesserndieNutzbarkeitfurSimulationenodersuboptimaleSchedulings.
UmLoLAsUnfahigkeitzunegativenAntwortenzukompensieren,konnteLoLAwettbe-
werbsparallel mit anderenWerkzeugen (Pfadndern undNichterreichbarkeitsfeststellern)
betriebenwerden.
Literatur
[1] J.R. Burch, E.M. Clarke, K.L. McMillan, D.L. Dill, and J. Hwang. Symbolic mo-
del checking: 10 20
states and beyond. Fifth Annual IEEE Symposium on Logic in
ComputerScience,1990.
[2] G.Chiola,C. Dutheillet, G. Franceschinis,and S. Haddad. Onwell{formedcolored
netsandtheirsymbolicreachabilitygraph.Proc.ofthe11thInt.Conf.onApplication
andTheory ofPetriNets,1990.
[3] A.Finkel.AminimalcoverabilitygraphforPetrinets.Proc.ofthe11thInternational
ConferenceonApplication andTheory ofPetri nets,pages1{21,1990.
[4] Huber,A. Jensen,Jepsen, and K.Jensen. Towards reachabilitytrees for high{level
Petrinets. InAdvancesin PetriNets1984, LNCS188,pages215{233,1984.
[5] R. M. Karp and R. E. Miller. Parallel programmschemata. Journ. Computer and
SystemSciences4,pages147{195,1969.
[6] K.Schmidt.HowtocalculatesymmetriesofPetrinets.AcceptedforActaInformatica.
[7] K. Schmidt. Stubborn sets for modelchecking the AG/EF fragment of CTL.
Informatik-Bericht123,Humboldt{UniversitatzuBerlin,1999.
[8] K.Schmidt. Stubbornsets forstandardproperties. 20th Int.Conf. Application and
Theory ofPetriNets,LNCS1639, pages46{65,1999.
[9] P.Starke. ReachabilityanalysisofPetrinetsusingsymmetries. J.Syst.Anal. Model.
Simul.,8:294{303,1991.
[10] A. Valmari. Errordetection bureduced reachabilitygraph generation. Proc. of the
9thEuropean Workshop onApplication andTheory ofPetri Nets,Venice,1988.