What was happening? TfL explained that they were piloting the announcement for four weeks, to try to reduce the number of injuries sustained by passengers on moving buses - apparently of the order of 5000 each year. The timing of the announcement was based on the average time buses spent at each stop - I suspect by "average" they meant the mean.
The intention is laudable. But the problem with using a mean in situations like this is that it doesn't really tell you how long a particular bus will wait at a given stop. My bus home probably spends longer stopped at the railway station than at all the other stops put together. Just as most people earn less than the mean national salary, which is heavily influenced by the very small number of people earning millions each year, so I imagine most of the time a bus spends less time at a stop than the mean. So a system based on the mean time spent at a stop will result in the announcement usually being played after the us has left the stop, leading to ridicule.
Now, TfL are pretty good at maths - their planning of the transport around London during the 2012 Olympics was a very successful example of operational research in action. So did they really get this wrong? After all, one would think that a few tests would have shown the problem.
Certainly one result of the announcements was a great deal of publicity, which perhaps has made people more aware of the need for care when standing and moving on a bus. The announcements themselves may have a short-term effect, but in fact one very quickly ceases to notice them (or at least I have found that they very rarely impinged on my attention, after the first few instances on the first day). But perhaps the press coverage, and people talking about the announcements, had more impact than the announcements themselves.
But if the announcements are to continue, how can TfL avoid the absurdity of an announcement that the bus is about to move being broadcast after it has moved? The solution TfL have adopted (as well as apparently changing the timing) is simple. The wording of the announcement is now "Please hold on while the bus is moving". The timing no longer offers the possibility of absurdity. The solution to this problem was not mathematical modelling, but thoughtful use of language.