next up previous contents index
Next: 4.5 Beispiel Up: 4.4 Schaltfunktionen Previous: 4.4.1 Allgemeines

Unterabschnitte

4.4.2 Schalten unter Zeitbewertung

In den folgenden Unterabschnitten finden Sie die für das ganze Programm gültige Beschreibung des Schaltens unter Zeitbewertung.


Zeitoption Dauer für Transitionen -- Schaltdauer

Transitionen, denen eine positive ganze Zahl als Schaltdauer zugeordnet ist, müssen schalten, sobald genügend Marken verfügbar sind. Wenn eine solche Transition t mit der Dauer d im Zeitpunkt $\tau$ schaltet, so werden die Eingabemarken im Zeitpunkt $\tau$ von ihren Vorplätzen abgezogen und ihre Ausgabemarken im Zeitpunkt $\tau+d$ auf ihren Nachplätzen verfügbar sein.

Eine Transition, die im Schalten begriffen ist, d.h. die Eingabemarken abgezogen, aber die Ausgabemarken noch nicht abgeliefert hat, kann in dieser Periode keinen zweiten Schaltvorgang beginnen, auch wenn noch genügend Marken auf ihren Vorplätzen liegen. Dementsprechend werden solche Netze in maximalen Schritten ausgeführt.

Bei solchen Schaltdauer-Netzen können transiente Zustände auftreten, d.h. Zustände, bei denen keine Transition schalten kann, aus denen aber durch Zeitverlauf ein Zustand entstehen, bei dem Aktionen möglich sind. Es kann sogar der Anfangszustand transient sein, wenn die initiale Uhrenstellung nicht identisch Null ist, d.h. einige Transitionen sind mitten beim Schalten.

Wenn der Anfangszustand transient ist, zeigt INA den nächsten stabilen Zustand an: Initial state is transient. Stabilisation time = 3 ist ein Beispiel für die Stabilisierung des Anfangszustandes. Im übrigen werden transiente Zustände durch Weiterstellen der Uhren und die damit verbundene Änderung des Zustandes stabilisiert: Transitional period from previous state = 2 z.B. zeigt an, daß zwei Takte seit dem letzten Zustand vergangen sind, in denen keine Transition schalten konnte.

Falls Sie einen Überblick über alle Zustände (also auch die transienten) gewinnen möchten, so fügen Sie im Editor mit <R> <A> eine Schleife ein (siehe Seite [*] im Kapitel 3.1). Die Schaltdauer der eingefügten Transition (loop-transition - normalerweise mit der Transitionsnummer 0 versehen) ist eins zu setzen. In jedem erreichbaren Zustand ist nun diese Transition schaltfähig, der Erreichbarkeitsgraph enthält keine toten oder transienten Zustände mehr.

Zeitoption Intervalle für Transitionen -- eft/lft

Jeder Transition ist ein ganzzahliges Intervall eft, lft zugeordnet. Die Uhr der Transition wird in Gang gesetzt in dem Moment, in welchem ihre Vorplätze ausreichend markiert sind. Die Transition darf schalten, sobald die von ihrer Uhr angezeigte Zeit mindestens gleich eft ist, sie muß schalten, wenn sie gleich lft ist, sofern sie nicht durch das Schalten anderer Transitionen die Konzession verliert. Das Schalten selbst kostet keine Zeit.

Wenn zwei Transitionen einen Vorplatz teilen, d.h. in einem statischen Konflikt stehen, und die eine der beiden schaltet, so wird die Uhr der anderen Transition abgestellt, wenn sie durch diesen Schaltvorgang die Konzession verliert, und sie wird auf Null zurückgestellt, wenn sie dabei Konzession behält.

Transiente Zustände sind Zustände, bei denen keine Transition schalten kann, aus denen aber durch Zeitverlauf ein Zustand entstehen kann, bei dem eine Transition schaltfähig ist. INA stabilisiert transiente Zustände automatisch.

Es gibt Zustände bei denen Transitionen schalten können, aber keine Transition schalten muß, weil ihre späteste Schaltzeit lft noch nicht erreicht ist. Das Weiterstellen aller Uhren um eine Einheit wird von INA durch eine Pseudotransition mit dem Namen timetick modelliert. Diese kann mit <t> ausgewählt werden. Die Markierung bleibt beim Schalten von timetick natürlich ungeändert.

Falls Sie einen Überblick über alle Zustände (also auch die transienten) gewinnen möchten, so fügen Sie im Editor mit <R> <A> eine Schleife ein (siehe Seite [*] im Kapitel 3.1). Für das Intervall der eingefügten Transition (loop-transition - normalerweise mit der Transitionsnummer 0 versehen) ist eft auf null und lft auf oo zu setzen. In jedem erreichbaren Zustand ist nun diese Transition schaltfähig, der Erreichbarkeitsgraph enthält keine toten oder transienten Zustände mehr.


Zeitoption Intervalle für Bögen -- Durchlaßfenster

Jedem Bogen, der von einem Platz zu einer Transition führt, ist ein Zeitfenster eft, lft zugeordnet. Auf jedem Platz steht eine Uhr, die jeweils die Wartezeit der jüngsten Marke auf diesem Platz anzeigt. Diese Uhr wird also auf Null gestellt in dem Moment, in dem eine Marke auf diesem Platz eintrifft, aber auch in dem Moment, in dem eine Marke von diesem Platz abgezogen wird. Eine Transition kann schalten, wenn alle ihre Vorplätze ausreichend markiert sind und die Uhr jedes Vorplatzes eine Zeit anzeigt, die im Intervall eft, lft liegt, das dem Bogen von diesem Vorplatz zur Transition zugeordnet ist. Wenn eine Transition schalten kann, dann muß sie schalten; dementsprechend werden solche Netze in Schritten ausgeführt. Das Schalten der Transitionen erfolgt ohne Zeitverbrauch. INA stabilisiert transiente Zustände automatisch.

Vor der ersten Schaltausführung wird eine Übersicht über die Zeiten ausgegeben, bei der die Uhr eines Platzes angehalten wird: Da eine Marke einen Platz nur über einen Bogen verlassen kann, wenn die Uhr des Platzes zwischen eft und lft des entsprechenden Bogens zeigt, kann die Uhr eines Platzes abgestellt werden, wenn die vergangene Zeit größer als das Maximum aller lft der von diesem Platz abgehenden Bögen ist. Danach kann keine Marke mehr von diesem Platz abgezogen werden, alle Uhrenstellungen des Platzes, die größer als dieses Maximum sind, sind gleichwertig. INA zeigt diese Zeiten als clock stop time an.

Bei Durchlaßfenstern ist ein Überblick über alle Zustände (also auch die transienten) nicht möglich. Einige transiente Zustände können Sie aber durch Einfügen einer Schleife mit <R> <A> im Editor (siehe Seite [*] im Kapitel 3.1) erhalten. Das Intervall des Bogens vom eingefügten Platz (loop-place - normalerweise mit der Platznummer 0 versehen) und der eingefügten Transition (loop-transition - normalerweise mit der Transitionsnummer 0 versehen) eft auf eins und lft auf oo zu setzen. Der Erreichbarkeitsgraph enthält aber unter Umständen noch transiente Zustände.


next up previous contents index
Next: 4.5 Beispiel Up: 4.4 Schaltfunktionen Previous: 4.4.1 Allgemeines

© 1996-98 Prof. Peter H. Starke (starke@informatik.hu-berlin.de) und Stephan Roch (roch@...)

INA Handbuch Version 2.1 zuletzt geändert: 1998-03-24