I commute by train, and have a zone for work. Sometimes when I commute by train, it triggers the work zone. It is at the closest position about 500m from the zone. It can stay in the zone and leave it when the train is about 2-3km away from the zone.
I have the app in detailed postion, allowing background activity etc.
I was thinking more along the lines of doing something smart, if we could use som knowledge about speed, directions or if we have been in some location before the zone entrance it is probably false.