Systematic Testing

This brief article describes how to test a control program systematically. VISSIM has been chosen as the simulation tool. An intersection in Kunming, China called "Xiao Ximen" has been chosen as the example.

Working with VISSIM

  • Define a VISSIM call in the VS-WorkSuite registers by defining
    • The location of the VISSIM exe file and ("File")
    • The location of the Xiao Ximen input file ("Parameter")
  • Call VISSIM
  • Set control type to VS-PLUS: Signal Control > Edit Signals > Edit > Type list
  • Push the "More…" button and configure the following parameters:
    • Program File – the VS-PLUS/SIM executable: vsp613.exe
    • Import File – the VS-PLUS parameter file: xiaoximen.vce
      Warning: the import file name must not contain spaces!
    • Program No: 1 (as set in the program definition)
  • Run the simulation!

Signal and detector recording

In order to obtain a diagram with the signal head and the detector states, the following window has to be configured before simulation and opened during or just before simulation.

  • Configure the signal times table: Signal Control > Edit Signals > Edit > SigTimTbl.Cfg
  • Configure the xxm.szp file by selecting the desired signal head and detector information. The example shows all signal heads and detector on channel 20.
  • Make the list shown: Options > Evaluations > Windows > Signal Times Table > Select All > Ok
  • Start the simulation

State recording

In order to obtain a protocol with additional state information, the following window has to be configured before simulation and opened during or just before simulation.

  • Configure the states table: Signal Control > Edit Signals > Edit > SCJ/Det.Rec

Unfortunately, this panel is still mixed German – English. In order to know the internal VS-PLUS states, the following variables have to be recorded:

  • Simulation second
  • Cycle second
  • Main pointer for priority element 1 (the only we are using right now) – in German "Hauptzeiger PE1"
  • For each signal head and traffic stream the following information (in our case for the numbers 1 to 10):
    • State of the traffic stream – in German "Zustand VS" Frame signal in the permissive period plan for the traffic stream – in German "Rahmen VS"
    • The signal display, i.e. the color shown by the signal head
  • You can add empty columns in order to make the protocol better read-able.
  • Make the list shown: Options > Evaluations > Windows > SCJ/Det.Record > Select All > Ok
  • Start the simulation
  • The states are shown in columns. See the next section for an explication of internal VS-PLUS states.
  • It is also possible to record this information into a file. Activate this logging function by Make the list shown: Options > Evaluations > Files > SCJ/Det.Record:

For a more comfortable view on this information, there is VS-VISTA with the VS-PLUS Monitor: The use of VS-VISTA is not described in this document.

Systematic control program testing

It is important that any control program is tested thoroughly with a simulator before being deployed to the intersection controller.

The tools we use are VISSIM and the previously introduced diagrams, together with the VS-WorkSuite. While optimizing and refining the parameter sets, the new parameters can immediately be tested after exporting them from VS-WorkSuite, by restarting a VISSIM simulation.
The systematic approach is as follows:

  • Test the program without traffic.
  • Test the program with continuous occupation of all detectors.
  • Test the program with simulated traffic.
  • In the case of fully traffic-dependent control, especially without a per-missive period plan, manual clicking on single detectors might be checked for correct functioning.
  • There are also hybrid testing scenarios where, especially for public transport functions, pre-recorded detector macros are played. We will not treat this feature here.

No traffic

  • Open a signal and detector recording window.
  • Go to VISSIM test mode: Test > Continuous
  • VISSIM goes to test mode showing all detectors and signal head states. Do not click on the detectors.
  • Look at the recording window. There should be a steady state signal plan serving all phases in a reasonable manner.

Continuous occupation

  • Open a signal and detector recording window.
  • Go to VISSIM test mode: Test > Single step
  • Double-click on all detectors in order to make them continuously occupied (light blue). Single clicking generates a detector impulse (blue) that can be used for individual detector testing.
     
  • Start the testing either step by step or continuously using the normal VISSIM buttons.
  • Look at the recording window. Again, there should be a steady state signal plan serving all phases in a manner that corresponds to the traffic flows under full load.

Simulated traffic

  • Open a signal and detector recording window.
  • Go to VISSIM simulation mode: Simulation > Continuous
  • Look at the recording window. There will be no steady state. Check if the resulting signal sequences correspond to what your intention was.
  • Sometimes you might be surprised because VS-PLUS generates signal sequences you never thought about before. Check if you want to accept them. If not, find the parameters to inhibit certain signal sequences and modify them.

  • Signal sequence: 1|2 – 2|6 – 1|5|9|10 – 3|7 – 4|8
    Normal signal sequence as defined in the static signal plan. Timing var-ies a bit between the two following cycles.

  • Signal sequence: 1|2 – 2|6 – 1|5|9|10 – 2|6 – 3|7 – 4|8
    There has been an extra 2|6 phase due to heavy left turn load on the west access.

  • Signal sequence: 1|2 – 2|6 – 1|5|9|10 – 2|6 – 1|9|10 – 3|7 – 4|8
    There has been an extra 2|6 phase and an extra bus phase, i.e. the buses have been served twice in a cycle.

  • Signal sequence: 1|2 – 2|6 – 1|5|9|10 – 1|2 – 2|6 – 3|7 – 4|8
    There has been an extra 1|2 phase, followed by an extra 2|6 phase in order to serve phase 2 more, even though phase 1 was running out of traffic.

  • Don't forget to check optically the resulting waiting queues and whether they do not exceed the maximum length you are willing to accept.

  • This screen dump shows VISSIM after 40 minutes of simulated time during rush hour. The queues look all very satisfying, so this VS-PLUS parameter set is ready to be deployed!