Chapter 1 Stochastic Petri Nets
Stochastic Petri nets are one of many different diagrammatic languages people have evolved to study complex systems. Weāll see how theyāre used in chemistry, molecular biology, population biology and queuing theory, which is roughly the science of waiting in line. Hereās an example of a Petri net taken from chemistry:
It shows some chemicals and some reactions involving these chemicals. To make it into a stochastic Petri net, weād just label each reaction by a positive real number: the reaction rate constant, or Petri net for short.
Chemists often call different kinds of chemicals āspeciesā. In general, a Petri net will have a set of species, which weāll draw as yellow circles, and a set of transitions, which weāll draw as blue rectangles. Hereās a Petri net from population biology:
Now, instead of different chemicals, the species really are different species of animals! And instead of chemical reactions, the transitions are processes involving these species. This Petri net has two species: rabbit and wolf. It has three transitions:
⢠In birth, one rabbit comes in and two go out. This is a caricature of reality: these bunnies reproduce asexually, splitting in two like amoebas.
⢠In predation, one wolf and one rabbit come in and two wolves go out. This is a caricature of how predators need to eat prey to reproduce. Biologists might use ābiomassā to make this sort of idea more precise: a certain amount of mass will go from being rabbit to being wolf.
⢠In death, one wolf comes in and nothing goes out. Note that weāre pretending rabbits donāt die unless theyāre eaten by wolves.
If we labelled each transition with a number called a rate constant, weād have a āstochasticā Petri net.
To make this Petri net more realistic, weād have to make it more complicated. Weāre trying to explain general ideas here, not realistic models of specific situations. Nonetheless, this Petri net already leads to an interesting model of population dynamics: a special case of the so-called āLotkaāVolterra predatorprey modelā. Weāll see the details soon.
More to the point, this Petri net illustrates some possibilities that our previous example neglected. Every transition has some āinputā species and some āoutputā species. But a species can show up more than once as the output (or input) of some transition. And as we see in ādeathā, we can have a transition with no outputs (or inputs) at all.
But letās stop beating around the bush, and give you the formal definitions. Theyāre simple enough:
Definition 1. A Petri net consists of a set S of species and a set T of transitions, together with a function
saying how many copies of each species shows up as input for each transition, and a function
saying how many times it shows up as output.
Definition 2. A stochastic Petri net is a Petri net together with a function
giving a rate constant for each transition.
Starting from any stochastic Petri net, we can get two things. First:
⢠The master equation. This says how the probability that we have a given number of things of each species changes with time.
Since stochastic means ārandomā, the master equation is what gives stochastic Petri nets their name. The master equation is the main thing weāll be talking about in future chapters. But not right away!
Why not?
In chemistry, we typically have a huge number of things of each species. For example, a gram of water contains about 3 Ć 1022 water molecules, and a smaller but still enormous number of hydroxide ions (OHā), hydronium ions (H3O+), and other scarier things. These things blunder around randomly, bump into each other, and sometimes react and turn into other things. Thereās a stochastic Petri net describing all this, as weāll eventually s...