My city's subway/elevated train system will be 30 years old this December. Train control is fully automated; there are no drivers on trains, and in normal operation there is no remote (human) operator either. It's been automated for 30 years. https://en.wikipedia.org/wiki/SkyTrain_(Vancouver)
(Side note: during the BART strike, some HN commenters suggested computers to replace drivers, and other commenters said that wouldn't be safe. Such hilarious technophobia on HN.)
I don't want to trivialize NYC's challenges and accomplishments: for one thing their system is far, far more complicated (468 stations on 34 lines, vs 47 stations on 3 lines), and for another we all know it's very hard to upgrade legacy systems.
But I'm astonished that they would work so hard to modernize their 1930s technology to 1970s standards in the 2010s.
Most likely its not a technical challenge its a bureaucratic problem. Not to mention the unions aren't going to let the transit authority obsolete their jobs.
Living in New York, the amazing thing about the subway system is how they keep it running. It's old and ridiculously complex, and despite what natives say, the MTA by and large does a good job running it. There's no political will to fix it right now. It's going to take trains becoming unsafe or costing so much to keep safe that people eventually notice and start making noise about it, I think.
And I'm not talking just the technology - they have 31 billion dollars of debt to service, and constantly get the shaft from Albany when it comes to funding. They continue to take on debt because they have mandated projects and lack the funding to complete them.
The only level crossing where another train might occupy the tracks is Queens-bound from the JMZ stop at Myrtle Ave & Broadway in Brooklyn. The M crosses at grade over the J/Z track.
Safe train control seems like it needs a little more sophistication than '60s or '70s tech was able to give. For one, it's common sense that a train that disappears from the system isn't really gone-- but the Metro system couldn't take that into account. Stuff like that should be pretty trivial today.
It was pretty trivial in the 1970s. Require the sensor for an adjacent segment to be engaged before the sensor for an active segment will disengage.
You can't do any computation with modern computers that you couldn't have done with relays in the 1970s, or the 1870s for that matter. Mechanical relays are slower, less reliable and more expensive than transistors... but they do the same thing.
The system was replaced a couple of years ago with a new one, to allow an even higher frequency of service.
NX, (for eNtry eXit), is probably the first system with an intelligent user interface. The dispatcher has a track map, with lights showing which blocks are occupied. To route a train through the controlled area, the dispatcher pushes a button on the track map at the current location of the train. Lights then come on for all the places the train can reach from there. This takes into account other trains present, other routes already set up, and track or switches locked out for maintenance. The dispatcher presses an exit button where the train is to go, which locks in the route. All the signals and switches are automatically set by that one button press, and conflicting changes and routes are locked out. As the train progresses through the control area, the switches and track behind it are released, and can be used for other trains.
It's designed to be fail-safe. There are "train stop" devices at every signal. These raise a big metal lever at the right of the rails. On the lead truck of each subway car, there's a big metal lever connected directly to an air valve for the air brakes. If a train passes a red signal, the air valve trip lever hits the train stop, which slams on the brakes and cuts power. The signal system even checks the position of the train stop devices; there are always at least two train stop devices up and locked between two trains, and train stops can't clear until the next one is up and locked.
It's a good system. The main problem is the sheer number of relays and the amount of wiring required.
Train detection is by checking if the rails are shorted together by wheels. In keeping with the fail safe concept, the power for that check is fed into one end of the block, and it's sensed at the other end. Thus, a rail break or a power supply failure causes the system to sense a train and set signals red. On electric railroads, the rails are also the power return for traction power. (The London system, with two power rails, is an exception.) So the sensing signals have to be different from traction power. They're usually audio frequency signals, with a different frequency used for adjacent blocks. At block ends, there's a low-pass filter capable of handling a few thousand amps, basically a big inductor. One of those failed in DC, causing a crash.
Washington, DC has a similar system, but on top of it, they have a computer-controlled system for dispatching. This is quite common - a dumb, reliable system based on trackside equipment for safety, and a computer-controlled system for scheduling and dispatching.
All this stuff has to handle snow, ice, snowplows, flooding, the huge traction currents (600VDC in New York), and lightning strikes on the rails as part of normal operation. So everything is in hulking iron and steel cases and very rugged.
There's a relay-level simulator for NX.[1] Runs on Windows.
[1] http://www.nycsubway.org/wiki/NXSYS,_Signalling_and_Interloc...