I began by gathering data from a variety of sources. I collected data from the train operator's systems, as well as from public APIs. I then used this data to train a machine learning model. The machine learning model was able to learn the relationships between different factors, such as the train's speed, the track conditions, and the number of stops, and the train's arrival time.