Alas we make but a few baby steps to PTC
Not Positive Train Control
While this implementation is NOT a "Positive Train Control" (PTC) system as defined for the Prototype, we believe it does incorporate movement authorities and track speed control components of the PTC implementation challenge. Our implementation seems similar to the "Precision Control System" that UP and GE implemented in the 1990s. That system involved a "moving block operation, which adjusts a 'safe' zone' around a train based on its speed and location".
The PTC characteristics and this layout's compliance details are:
collision avoidance - collision avoidance is a goal of our robot trains
train separation - rear ending is avoided in signaled territory by our cascading signaling logic. Robots adhere to these signals, human operated trains not so much! When a train enters a signaled block, the trailing signal is set to RED thus requiring a trailing train to STOP. The block prior to this trailing block is set to YELLOW. We now force Robot trains to the restricted speed in this case. Multiple block dark territory is more likely subject to a trailing train rear-ending the train ahead of it. Currently all Robot trains adhere to the super block reservation system to stop the trailing train in the last signaled territory.
line speed enforcement - currently implement maximum and restricted speed limits for every track block in the database. Robot trains scripts set speed to block maximum for GREEN and to restricted speed for YELLOW signaled blocks.
temporary speed restrictions - do not currently have the capability to dynamically change maximum and restricted speed limits in each block - a database edit is required followed by recompilation.
rail worker wayside safety - blocks may be placed "Out of Service" in our database and in our script generator. Recompilation of a route with an "Out of Service" notice will fail! No dynamic re-routing except via existing runarounds. May add capability in the future in conjunction with "Bad Orders" issuance from Supervisor.