I have a street network and a subway network and I want to create a multi-modal network to analyze for Service Areas. The problem is that the two networks do not share nodes, and if a point is on one network, it cannot jump to the other.

I've been able to manually add lines between subway stations and the nearest intersection, and also manually specify a time to enter/exit the station, but is there a more automated way to do this? The task is rather mundane and takes a lot of time, especially when performing analyses on many networks.


I describe a raster-based method in the US patent Methods and Systems for Optimizing Network Travel Costs, US 8332247 B1 (published December 2012 with priority back to 1997). The idea is that a raster decomposition of the ambient space furnishes a dense mesh to which your network nodes can automatically be "snapped". Costs ("impedances") attached to the raster allow movement between the networks to be assessed with costdistance-like calculations carried out simultaneously on the networks and the raster. Additional applications include accounting for off-network travel time, automatically identifying shortcuts and optimal multi-modal connections, automatically cleaning network topologies, and extremely fast, accurate, and realistic calculation of travel time-based territories or service areas, zones of influence, and other related analyses.

(I originally developed this method in order to support large agent-based simulations in which, for example, millions of people within a state or country could individually be created, endowed with socioeconomic and locational attributes consistent with underlying GIS data, allowed to act according to hypothesized rules (which might depend on travel costs and times to access various geographically restricted resources), and tracked to study the emergent properties of this large, complex system.)

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.