• Keine Ergebnisse gefunden

4   Petri Nets

4.2   Abbreviations and Extensions of the Basic Concepts

4.2.1   Capacitive Petri Nets

weights. Additionally, the maximum capacities of all output places may not be exceeded by adding the arc weights.

Definition 4.15 (activation capacitive Petri net)

The tuple , , , , , , , 0 is a capacitive Petri net. A transition ∈ is active with regard to a concrete marking if and only if

∀ ∈ : →

and

∀ ∈ : → .

A place in a capacitive Petri net can have two different conflicts, called general input conflict and general output conflict. A general output conflict occurs when the place has not enough tokens to enable all output transitions due to its minimum capacity and a general input conflict can appear when the place cannot receive tokens from all active input transitions due to its maximum capacity.

Definition 4.16 (general output conflict, general input conflict)

The tuple , , , , , , , is a capacitive Petri net. A place ∈ has a general output conflict with regard to a concrete marking if

, whereby the set contains two or more active output transitions.

A place ∈ has a general input conflict with regard to a concrete marking if

, whereby the set contains two or more active input transitions.

These conflict situations are resolved in this work by priorities or probabilities as previously mentioned (Definition 4.7 and Definition 4.8). Therefore, the enabling processes of Definition 4.9 and Definition 4.10 have been redefined to include the capacities.

Definition 4.17 (capacitive Petri net with priorities)

The tuple , , , G, , , , , is a capacitive Petri net with priorities if , , , G, , , , is a capacitive Petri net, : ∪ → 1,2, … , max , is a

priority function which assigns every arc from and to a place ∈ an enabling priority

→ and → , respectively, under the condition that each priority from 1 to is only used once for the output transtions of a place

→ → , ∀ , ∈ ,

that each priority from 1 to is only used once for the input transtions of a place

→ → , ∀ , ∈

and that 1 is the best priority and and , respectively, is the worst priority.

Definition 4.18 (capacitive Petri net with probabilities)

The tuple , , , , , , , , 0 is a capacitive Petri net with probabilities if , , , G, , , , is a capacitive Petri net, : 0,1 is a probability function which assigns every arc from and to a place ∈ an enabling probability → and

→ , respectively, under the condition that the sum of probabilities for the output and input transitions, respectively, is equal to one for every place

→ 1

, → 1

.

In a capacity Petri net with priorities, all output transitions of a place are provided with a priority from 1 to . The transition with the priority 1 is proven at first. It has to be active and the arc weight may not infringe the minimum capacity. Then, the second prioritized transition is checked. It has to be active and the removing of the arc weight sum may not violate the minimum capacity. The transition with the third priority is proven next and so on.

When all places have enabled their output transitions, they enable a subset of their active input transitions; but only those can be enabled which are already enabled by all input places.

All input transitions of a place are provided with a priority from 1 to . The transition with the priority 1 is proven at first. It has to be enabled by all input places and the arc weight may not infringe on the maximum capacity. Then, the second prioritized transition is checked. It has to be enabled by all input places and the addition of the arc weight sum may not violate the maximum capacity. Afterwards the transition with the third priority is proven and so on.

Definition 4.19 (enabling process capacitive Petri net with priorities)

The tuple , , , , , , , , is a capacitive Petri net with priorities. A place ∈ enables with regard to a concrete marking a subset, denoted by , of the

transitions in . If has no general output conflict according to Definition 4.16, it enables all transitions in , i.e.

≡ .

Otherwise, enables as many transitions of the set as possible according to the priorities → so that the condition

is still fulfilled.

After the enabling of output transitions, all places ∈ enable with regard to a concrete marking a subset, denoted by , of their active input transitions restricted to those that are already enabled by all their input places

∈ ∧ ∈ ∀ ∈ .

If has no general input conflict according to Definition 4.16, it enables all transitions in , i.e.

≡ .

Otherwise, enables as many transitions of the set as possible according to the priorities → so that the condition

is still fulfilled.

The enabling process with probabilities is performed in a similar manner as that with priorities. The only difference is that the order by which the transitions are proven is determined at random. Thereby, the transition with the highest probability has the highest chance to be proven first.

Definition 4.20 (enabling process capacitive Petri net with probabilities)

The tuple , , , , , , , , is a capacitive Petri net with probabilities. A place

∈ enables with regard to a concrete marking a subset, denoted by , of the transitions in . If has no general output conflict according to Definition 4.16, it enables all transitions in , i.e.

≡ .

Otherwise, randomly enables as many transitions of the set as possible according to the probabilities → so that the condition

is still fulfilled.

After the enabling of output transitions, all places ∈ enable with regard to a concrete marking a subset, denoted by , of their active input transitions restricted to those that are already enabled by all their input places

∈ ∧ ∈ ∀ ∈ .

If has no general input conflict according to Definition 4.16, it enables all transitions

in , i.e.

≡ .

Otherwise, enables randomly as many transitions of the set as possible according to the probabilities → so that the condition

is still fulfilled.

Remark 4.2

All output transitions of a place are provided with a probability and the sum is equal to one. If not all output transitions are active, the probabilities have to be scaled by the following expression

→ →

→ .

Similarly, if not all input transitions are enabled by all input places, the probabilities have to be scaled by the following expression

→ →

→ .

It also possible to mix both concepts, enabling by priorities and probabilities, in one Petri net as mentioned before (see Definition 4.11). Then, every place can be assigned with its own resolution type.

Definition 4.21 (resolved capacitive Petri net)

The tuple , , , G, , , , , , is a resolved capacitive Petri net if , , , G, , , , is a capacitive Petri net, : → , is the resolution

function that assigns every place either the resolution type priority or probability, and

: ∪ → 1,2, … , max , : , 0,1 : is an enabling

function which assigns every arc from or to a place ∈ either an enabling priority or a probability according to the resolution type of the place and with the condition that each priority from 1 to for the output transitions and each priority from 1 to for the input transitions is only used once for each place with

→ → , ∀ , ∈

→ → , ∀ , ∈

and that 1 is the best priority and and , respectively, is the worst priority and that the sum of probabilities for the output and input transitions, respectively, is equal to one for each place with

→ 1

, → 1

.

A transition in a resolved capacitive Petri net is firable if it is enabled by all input and output places. The firing process of an enabled transition can be adopted from the basic concepts (Definition 4.13).

Definition 4.22 (firability capacitive Petri net)

The tuple , , , , , , , , , is a resolved capacitive Petri net. An active transition

∈ is firable if and only if

∀ ∈ ∶ ∈

and

∀ ∈ ∶ ∈ .

Example 4.5

Figure 4.9 shows a capacitive Petri net with the initial marking 2,3,0 . All transitions are active

- T1: 1 1 → 1 2 1 1 1 and 3 1 → 3 0 1

3 1

- T2: 2 2 → 2 3 1 2 2 and 3 2 → 3 0 1

3 1

- T3: 2 2 → 3 3 1 2 2 and 3 3 → 3 0 1

3 1.

At first, the places enable as many output transitions as their minimum capacities allow. 1 has no general conflict and enables 1 and 2 has a general output conflict and can either enable 2 or 3.

- Case 1: 2 enables 2

3 has a general input conflict due to its maximum capacity and can either enable 1 or 2. 3 is not an option because it is not enabled by its input place 2. If 3 enables 1, 1 is firable and fires by removing one token from 1 and adding one to 3 and on the other hand, if it enables 2, 2 is firable and fires by removing one token from 2 and adding one to 3.

- Case 2: 2 enables 3

3 has a general input conflict due to its maximum capacity and can either enable 1 or 3. 2 is not an option because it is not enabled by its input place 2. If 3 enables 1, 1 is firable and fires by removing one token from 1 and adding one to 3 and on the other hand, if it enables 3, 3 is firable and fires by removing one token from 2 and adding one to 3.

Figure 4.9: Capacitive Petri net with a general output conflict (Example 4.5)