This research deals with analyzing dispatchers' decision process in inter-train conflict resolutions and developing a heuristic algorithm for rescheduling trains by modifying existing meet/pass plans in conflicting situations in a single-track railway. We described the railway traffic management briefly to establish a sufficient ground for the problem definition. Train dispatchers currently carry out the rescheduling process. In order to model decision behaviour of train dispatchers, we assumed that they use a utility function of some weighted attributes of each conflicting train to determine (dynamic) priorities pair wise, and that he/she resolves conflicts according to the calculated values of dynamic priorities of trains. We determined the weights by analyzing the previous decisions of train dispatchers. This analysis is important to determine the effectiveness of decisions of train dispatchers respecting other solution techniques and is usually omitted in studies of railway traffic control. We used a systems approach in construction of the heuristic algorithm, which is based on inter-train conflict management. The kernel of this algorithm is the immediate conflict and its two alternative resolutions. The algorithm chooses the best alternative resolution, which causes less total consequential delay in the system due to the conflicting train being stopped. One of the most important features of the algorithm is to consider the effects of potential conflicts by using a look-ahead method. In the end we tested the methods for hypothetical problem instances and evaluated the results. These tests showed that the algorithm produced "good enough" schedules efficiently and effectively in conflicting situations. (C) 1999 Elsevier Science Ltd. All rights reserved.