Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
eclipse
GitHub Repository: eclipse/sumo
Path: blob/main/tests/complex/traci/trafficlight/constraints/swap/6/readme.md
169780 views

Startpositionen:

Urspr. Reihenfolge an W_0: t_0, t_1, t_3 Urspr. Reihenfolge an W_1: t_0, t_1, t_2, t_3

t_1, t_0 -------- | t_3 ----------[W_0]---------- | t_2 ----------------------[W_1]---------------

Aktion:

Es wird die Reihenfolge der oberen Fahrzeuge t_3, t_0 an W_0 geändert.

Aktuelles Verhalten:

Es entsteht ein Deadlock, vor W_0 und W_1, da t_3 auf t_1 und t_0 auf t_3 an W_0 wartet.

Gewünschtes Verhalten:

Es existieren weiterhin für alle Reihenfolgeentscheidungen Constraints. Es entsteht vermutlich eine der beiden Call-Sequenzen:

Variante I: swapConstraints("t_3 vor t_0 an W_0") [User-Input] |-> swapConstraints("t_3 vor t_1 an W_0") [Deadlock-Verhinderung Tiefe I] (sonst Deadlock an W_0, da t_1 nicht mehr t_0 passieren kann) |-> swapConstraints("t_2 vor t_1 an W_1") [Deadlock-Verhinderung Tiefe II] ('normaler' Folgeswap) |-> swapConstraints("t_2 vor t_0 an W_1") [Deadlock-Verhinderung Tiefe I] ('normaler' Folgeswap) Variante II: swapConstraints("t_3 vor t_0 an W_0") [User-Input] |-> swapConstraints("t_2 vor t_0 an W_1") [Deadlock-Verhinderung Tiefe I] ('normaler' Folgeswap) |-> swapConstraints("t_2 vor t_1 an W_1") [Deadlock-Verhinderung Tiefe II] (sonst Deadlock an W_1, da t_1 nicht mehr t_0 passieren kann) |-> swapConstraints("t_3 vor t_1 an W_0") [Deadlock-Verhinderung Tiefe I] (sonst Deadlock an W_0, da t_1 nicht mehr t_0 passieren kann)

Gewünschte Reihenfolge:

t_2, t_3, t_0, t_1 an W_1