An algorithm/flowchart for surveying new areas on the fly

I survey by bike almost exclusively, and while I plan a lot of my trips, sometimes I want to extend a ride into a new neighborhood. However, I only run one camera, and I want to get both directions of every street. While riding today, I came up with a process to figure out what to do at each road intersection to achieve two-way coverage of every street without overlap.

This flowchart is designed for cycling or walking, because it does involve a lot of u-turns. It also involves checking your progress here and there, so basically, just don’t drive with this process.

Here’s the chart, then some more details:

Some caveats (mentioned on the chart as well): one-way streets break the route if you’re riding a bike legally. You may be able to ride on the sidewalk, but that depends on your jurisdiction. For biking, just ignore one-way streets altogether and you’ll be fine.

If you want to fill in long streets in one go, that’s not a problem. That would be great if you’re doing a grid and you want to go up and down all the streets instead of doing little loopy backtracks. As long as you are going down untraveled segments only (no second passes), and don’t cross your own line, the algorithm will work when you need it again.

Also, the last step is a little tough: if you have traveled the second time down one street to an intersection of streets that you have only gone down once so far, usually you will choose the right-most option of once-traveled streets, but technically you must choose the one you went down most recently. These criteria usually match, but not always. Unfortunately, it’s a lot easier to pick “right-most” than “most recent” on the fly, but in some edge cases this will leave some streets untraveled.

I’ve tested this in two real-world scenarios and a bunch of map checks. It might have some issues, so let me know if you find any errors or have any questions. This is a long rambly post that probably seems a bit mad… Hopefully it helps someone.


very good! i started using a similar method (i think) to this last year when i got a gopro to do the side view. its the best method i could think of to cover every street and direction. although it does mean you have to drive every street twice, i still prefer it because the other option would be to use 4 cameras but then you would be dealing with a lot of overlap or have to spend time pruning photos out

i mostly drive though (on the left) so i usually draw a quick plan first (in paint, very high tech!) and then have that on the dash as i drive around:

you could just wing it with this method though so its not really that necessary. the thing i keep in mind is that every time i take a turn, i have to come back to that turn at some point but also come back the exact way i came.

Very cool. I’m also primarily surveying by bike and was always thinking of how to do it best but never got around sitting down to figure it out. So thank you for sharing this.

I now still need to figure out how to best set up the app. But that is another topic (I will raise shortly).