This thread will quickly show, step-by-step how to use GIS to plan protest escape routes, using the example of the last hour's confrontation in Bangkok. With some of the legwork already done (can be done at a city scale), this took 10min to adjust and process.
Essentially, this boils down to using the notion of assigning a cost to transversing each pixel, and letting computers work out what the most efficient routes are. Here's an example of that concept being used for Lord of the Rings.
In Bangkok, and pretty much every other major city in the world, we can cut out the tricky modelling of how difficult each part of a map is to walk through by turning to @Strava's heatmap, which shows approximately that, easier paths are travelled more.
You need to turn this into a format that can be read by the mapping programs though. By turning off the background, changing the colour ramp to blue and making it 100% opacity you get closer. I took a bunch of screenshots to cover bangkok and stitched them together in photoshop.
TIP: Strava only renders its heatmap to Zoom level 15, so although you can zoom in further on the map there is no extra detail, if you change this in the URL to 15 you can scroll pan around and take screenshots and always be at the peak zoom level.