An improved brain storm optimisation algorithm for energy-efficient train operation problem