Decision support tools that employ the use of computational intelligence are natural candidates to tackle the problem of dispatching trains in a railroad, allowing for the construction of flexible algorithms that explore the solution space optimizing the result for a defined objective, besides supporting the insertion of knowledge to the solution search process.
We present a solution based on discrete-event simulation and heuristics to find feasible routes for all the trains. Decisions about passings and overtakings follow a set of heuristics that adhere to the railway circulation rules. Empirical results show that this algorithm runs in polynomial time.
Some possibilities for improving the results provided by the tool are discussed. The first is to collect information from one planning run to feed the next run and improve the subsequent result, this approach is called adaptive. We use a rules executing environment that process a set of facts collected from previous executions of the planning tool and alter the results based on the set of rules and collected facts. The second approach is based on the simultaneous execution of different algorithms, an architecture to support it is being developed and the goal is to be able to choose the best result provided by a set of planning algorithms and not just one.