|
|
|
|
|
by FabGenovese
1972 days ago
|
|
The main difference is that a Petri net is basically an hypegraph, where you have directed edges connecting multiple vertexes both in the source and in the target. Graphs give you finite state machines in the obvious way: You mark the vertex you are in and walk the arrows. Hypergraphs give you Petri nets: You mark each vertex as many times as you want and walk the arrows to move marks around. This tells us two things:
1. Petri nets are a calculus of resources. The marking is not telling anymore "what state you are in". A state is an allocation of resources to each vertex in the net.
2. Petri nets are concurrent: you don't have to move stuff around by walking one edge at a time: Two different hyperedges in two different places of the hypergraph can "act at the same time", since the "what state you are in" thing makes no sense anymore. Anyway, this paper is pretty complicated and for sure there are waaaaay easier places to start. Such as this one:
https://arxiv.org/abs/1906.07629 |
|
Are any forms where the edges are weighted, or does each edge necessarily have the same weight?
Related to the previous question, if you have a finite number of tokens at a vertex with multiple outgoing edges, how do you choose which edges they follow? I suppose that for any given allocation there may be multiple succeeding allocations.
Finally, the structure seems very similar to neural nets. Are they actually similar, or very different?