Cours et TD du 12/10/2023

Comment connaître si un réseau est borné ou non ?

q1
La création de jeton permet de créer un réseau non borné.

Rappel : Soit NN places dans le réseau, p1pNp_{1} \dots p_{N} est le marquage.

Nombre des marquages possibles dans un réseau de Petri bornée : (K+1)N(K+1)^{N} avec KK la borne et NN le nombre de marquages.

Pour répondre à la question, voici un exemple :
q_ex1
On a donc :
q_ex2
Si M1M_1 et M2M_2 sont deux marquages :
M1M2 SSI pPM1(p)M2(p)M_{1} \leqslant M_{2} \text{ SSI } \forall p \in P \quad M_{1}(p) \leqslant M_{2}(p)
Développer le graphe de marquages :


Rappel sur les transitions et ajout de l’arc inibiteur :
transi

Priorité

Ordre (partiel) sur les transitions :
t1<t2t_{1}< t_{2}
M\forall M, a partir de MM, t1t_{1} est exécutable uniquement si t2t_{2} ne l’est pas (parce que sinon on doit exécuté t2t_{2} et non t1t_{1})

prendre_rendre
Dans ce schéma, on ne veut jamais avoir les deux utilisations en même temps. On peut utiliser des priorités pour éviter ce conflit.

Le conflit est entre t1t_{1} rendre et t2t_{2} prendre.


Est-ce que c’est possible de transformer un réseau de Petri avec des arcs inhibiteurs vers un réseau de Petri avec des priorités ? Et inversement ?
qst_prio_inv
qst_prio_inv2
Exemple pour les TT-bornés : est-ce que c’est borné ?
t_borne
t_borne2
t_borne3