DARYN: A Distributed Decision-Making Algorithm for Railway Networks
A railway network typically consists of thousands of miles of tracks and hundreds to thousands of locomotives carrying goods and people from one place to another. For efficiency and modularity, usually, the tracks are divided into individual units, each of which may be controlled exclusively by the system. Thus, a train in propagating from location A to another location B may travel over several tracks. Given that two or more trains may need to use, at some time instant, the same track and that only one train may occupy a track at any time, the principal goal of the railway system is to allocate tracks to trains such that (i) collisions are avoided and (ii) the resources are utilized optimally.