Path: blob/main/tests/complex/traci/trafficlight/constraints/swap/4/readme.md
169772 views
Startpositionen:
Urspr. Reihenfolge: t_0
, t_1
, t_2
, t_3
Aktion:
Es wird die Reihenfolge der oberen Fahrzeuge t_2
, t_0
sowie der unteren Fahrzeuge t_3
, t_1
getauscht.
Aktuelles Verhalten:
Aktuell sind ist an der Schnittstelle aller Fahrzeuge nach den Swaps nur noch das Constraints vorhanden, dass t_2
vor t_3
fahren darf. Die weitere Reihenfolge liegt in der Hand von SUMO und ist somit nicht mehr via swapConstraints steuerbar.
Gewünschtes Verhalten:
Es liegen an der Schnittstelle vollständige Constraints vor. Erwartet wird vermutlich am ehesten das Verhalten, dass nie grundlos weitere Fahrzeuge zur Deadlock-Verhinderung überholt werden:
überholt
t_3
das Fahrzeugt_1
, so sollte aucht_2
das Fahrzeugt_1
überholen (sonst Deadlock).überholt
t_2
das Fahrzeugt_0
, so sollte aucht_1
das Fahrzeugt_0
überholen (sonst Deadlock).
Somit gilt unabhängig von der Reihenfolge der Aufrufe die gleiche gewünschte Reigenfolge. Gerne nochmal verifizieren.
Gewünschte Reihenfolge:
t_2
, t_0
, t_3
, t_1
**Herleitung - Unabhängigkeit der Call-Reihenfolge - gerne überprüfen, ob hier ein Denkfehler vorliegt 😃 **
Version I:
Call I:
t_2
vort_0
->t_1
vort_0
(sonst Deadlock) ->t_1
,t_2
,t_0
,t_3
Call II:
t_3
vort_1
->t_2
&t_0
vort_1
(sonst Deadlock) ->t_2
,t_0
,t_3
,t_1
Version II:
Call I:
t_3
vort_1
->t_2
vort_1
(sonst Deadlock) ->t_0
,t_2
,t_3
,t_1
Call II:
t_2
vort_0
-> keine weiteren Swaps notwendig ->t_2
,t_0
,t_3
,t_1