Procedural Modeling of Cities

Road Network Builder Extension

Main Page, CORE Model Page, Road Network Builder Page, Urban Modeling Suite, Papers & Publications

Download this model file, and use NetLogo to run or edit it: Road Network Builder.nlogo

Basic Layouts

There are two basic initial layout patterns for the road network -- a gridded layout (shown on the left) and a radial layout (shown on the right). The radial layout road network structure was previously unsupported by the Cities CORE model, until the advent of this extension.

Multiple Scales of Development

The size of the network can vary widely, from the simple small-scale network (on the left) with just 12 road segments to large-scale networks with thousands of road segments (on the right).

Adjust Road Network Density

The Road Network Builder extension model includes a special tool for making the whole network more sparse (as on the left), or more dense (as on the right). The Cities CORE simulator model supports two designations for roads -- primary roads and tertiary roads. This extension allows you to specify which roads in the network should be primary. Primary roads are thicker, and shown in blue.

Automated Positioning Tools

Both of the networks shown above have the same road connections as the sparse grid-layout example given on the left above. The network on the left has been manipulated with the perturbation tool, to give it a nightmarish slanted off-kilter look and feel. The network on the right was manipulated with the spreading-tool, which pushes and pulls roads in a fashion that often creates natural looking winding streets and courts. Notice that the road intersection nodes can be either hidden (as on the left) or visible (as on the right).

Manual modification

Automated tools that manipulate the whole network at once are a great way to quickly create a certain style of road network. However, if you have very specific ideas about the type of road network you want to build, or there's one road segment that "sticks out funny", then you need to have full manual control over the network being built. The Road Network Builder provides users with this level of freedom. Roads may be manipulated by moving, creating or deleting "road intersection nodes", or by adding or removing roads between these nodes.

Bringing it to life

After the road network has been satisfactorily created, it can be brought to life by using the Cities CORE simulator. First use the "save-network" button in the Road Network Builder model, and call the creation something like "". Then open the Cities model, click the "import-network" button, locate "", and the road network will be brought in. Run the Cities model by clicking GO, and the developers will start to build near your roadways. (Note that if you have any road developer agents, they are likelyto build additional roads of their own choosing!)