SONG: Simulator of Network Growth 1.0
Click here for a PDF version of this file.
-----------
SONG 1.0 is a simulator designed for simulating the process of transportation network growth. The growth or decline of transportation networks is normally treated as the result of top-down decision making in the long-range planning efforts of metropolitan planning organizations (MPOs). However, changes to transportation networks are essentially the results of numerous small decisions by property owners, firms, developers, towns, cities, counties, state department of transportation districts, MPOs, and states in response to market conditions and policy initiatives. These system behaviors demonstrate the characteristics of decentralized systems, where organized patterns and structures can emerge not because of centralized control, but because of the interactions among decentralized system components. This phenomenon of decentralization and self-organization occurs in many circumstances, such as bird flocks, ant colonies, life evolutions, neural networks. Increasingly research is applying decentralized models in different domains as a new way of viewing the world.
In SONG 1.0, transportation networks are treated as decentralized systems that demonstrate self-organizing patterns. By design, the simulator models behavior of individual system components and small decisions, and then demonstrates the patterns resulting from interactions of component models. The idea is that it is the actions of the components, not the whole that are controlled by the designer; the resulting patterns or structures, which often behave very differently than the elements that compose them, are not designed.
It is worth to notice that SONG 1.0 shows a different kind of simulation, called "soft simulation", which "provides qualitative understanding of a complex system by constructing a simple one that shares the same principle (Papert, 1992)." By developing the simulator, the focus is not on perfect reproductions of the real world, but rather to help people explore the "microworld" of transportation network systems and to stimulate new ways of thinking about the network growth process.
Simulation Models
-----------
SONG 1.0 simulates behaviors of individual links to explore the patterns of resulting network forms. In particular, each link is treated as autonomous agent and the simulation models individual link behaviors based on certain rules that determine link revenue, costs and investment decision. The model flowchart in Figure 1 provides a global view of the model structure; detailed descriptions of components models are followed after the flowchart.
Figure 1: Simulation flowchart

1. Land Use and Network Settings
The land use and network are treated as initial conditions input into the model. The land use is modeled as a layer of a grid of land blocks called land use cells. Transportation networks are modeled as directed graphs overlaying a land user layer.
The main objective of setting initial land use is to provide
input to transportation models. Information contained in the land use layer
includes: location, population density, and market density. It is assumed in
the simulation model that trips produced from a land use cell are directly
proportional to population density and trips attracted to a land use cell are
directly proportional to market density.
The model considers three land use patterns: (1) random initial land use, where trips
produced and attracted are randomly distributed; (2) uniform initial land use,
where trips are uniformed distributed, and it is a conceptual condition
designed to control the effect of land use on the formation of network; and (3)
bell-shaped land use, which is designed to replicate the distribution of land
use patterns with a Central Business District (CBD).
The transportation network is represented as a directed graph that connects nodes with directional arcs, links. The simulator applies a grid network structure.
2. Travel Demand Model
The travel demand model converts land use information (population and employment data) into link flows on a given transportation network through trip generation, trip distribution and route assignment models.
The trip generation model divides geographical area into zones centered on network nodes and converts land use properties of the zones into trips produced and attracted. The land use layer is modeled as a square, and it is assumed that the land use layer is static throughout the simulation.
The trip distribution model matches the generated trips by purpose between origin (O) and destination (D). Trips produced are differentiated according to destination; trips attracted to a zone are differentiated according to origins.
The traffic assignment model predicts the travelers’ choices of routes by the relationship between flow and travel time. In particular, it converts the OD matrix, from the trip distribution step, into flows on the links depending on the way travelers choose routes. By assumption, every traveler tries to optimize his travel time by choosing the quickest route to reach the destination.
3. Revenue Model
The network revenue model determines the revenue road providers can collect by providing the road services, depending on link speed, flow, and length. (From travelers’ perspective, it is the toll they pay for using the road.) The revenue model is a link-based model that calculates revenue for each link. Revenue is calculated by multiplying the toll and flow. Therefore, the higher the flow on the link, the higher is the revenue.
4. Cost Model
This model calculates the cost that is required to keep a link in its present usable condition depending on the flow, speed, and length.
![]()
where, Cia is the cost of maintaining the
road at its present condition,
m
is the (annual) unit cost of maintenance for a link,
a1, a2, a3 are coefficients indicating economies or diseconomies of scale
5. Investment Model
Depending on the available revenue, and
maintenance costs link changes its speed.
If the revenue generated by a link is insufficient to meet its maintenance
requirements its speed drops. If
the link has revenue left after maintenance it invests that remaining amount in
capital improvements, increasing its speed. A major assumption in this model is
that a link uses all the available revenue in a time step without saving for
the next time step.
![]()
With the new speed on the links the travel time changes and the whole process from the travel demand model is repeated to grow the transportation network.
As shown in Figure 2, the Interface of SONG 1.0 contains three portions of information: the parameter panel, the visualization panel, and the output panel.
Figure 2: Interface of SONG 1.0

1. Parameter panel
The parameter panel is located in the left side of the interface. It is where users can make changes to the values of certain variables and see the consequences on the network form. In doing so, users are able to examine the implications of alternative policies as represented by different values of the parameters.
The parameters shown on the interface include network types, speed, land use distributions, and sets of parameters contained in the component models for simulating travel demand, revenue, cost, and investment behaviors. Detailed description of each parameter will be provided in "parameters" section of this file.
Figure 3: Parameter Panel of SONG 1.0

2. Visualization panel
The simulator is designed to visualize network forms based on either different link flows or different link speeds. Visualization of the simulation is demonstrated on the right hand side of the interface, including the graph output, legend, running button, and status information.
Figure 4: Visualization panel of SONG 1.0

· Graphic output
Graphic output is shown on the grid network graph with different colors and thickness on each link representing different link speed or link flow.
· Legend
Different link flows and different link speeds of the network are represented with different colors of the links. In particular, the simulator follows the Red, Orange, Yellow, Green, Blue, Indigo, and Violet (ROYGBIV) spectrum with "Red" representing the highest speed or flow and "Blue" representing lowest values in speed or flow. The particular value of speed or flow for each color is indicated in the legend below the graph panel.
· Running button and status information
To run the simulation, users need to hit "evolve" button, and the running status will be displayed below the legend indicating the model running status. The simulation process stops either when equilibrium is reached, or when it reaches its 20th iteration[1].
3. Output panel
The output panel is located on the lower right hand side of the interface. It includes the following information:
· Speed and volume scroll down options
· Iteration period
· Statistics button for MOEs output
Figure 5: Output panel of SONG 1.0
![]()
![]()
Figure 6: MOEs output window

Parameters List
-----------
SONG 1.0 contains a set of variables that allow users to make adjustments. These include initial network types, network speed distribution, land use distribution and some model parameters. Figure 2 shows the interface of SONG 1.0 where users can adjust the parameters. A brief description of the variable default values, range, and real world interpretation is given in Table 1. Additionally, the full list of underlying model parameters (including those that are not shown in the interface) are also explained in this document.
Figure 2: Parameter panel of SONG 1.0

Table 1: SONG 1.0 Variable Table
|
|
Variable ID |
Default value |
Adjustable Range |
Interpretationa |
|||
|
Land
use, network settings |
|
|
|
||||
|
Network
types |
0 |
10x10 |
5x5~25x25 |
network
sizes |
|||
|
|
|
|
network
with river |
|
|||
|
Speed
distribution |
1 |
uniform |
uniform |
no
differentiation in link speeds cross the network |
|||
|
|
|
|
random |
randomly
distribute speed |
|||
|
|
|
|
prespecified
random |
repeat the
"same" random distribution |
|||
|
Speed
multiplier |
|
100% |
20% - 220% |
network
speed level |
|||
|
Land
use distribution |
2 |
uniform |
uniform |
|
|||
|
|
|
|
random |
|
|||
|
|
|
|
urban |
land use
with downtown |
|||
|
|
|
|
prespecified
random |
repeat the
"same" random distribution |
|||
|
Land
use multiplier |
|
100% |
20% - 220% |
land use
density |
|||
|
Travel
Demand |
|
|
|
|
|||
|
Value
of time |
5.1 |
1.0 |
0 - 5.0 |
hourly
time value |
|||
|
Friction
Factor |
5.2 |
0.01 |
0 - 1.0 |
willingness
to travel |
|||
|
Revenue |
|
|
|
|
|||
|
Toll
rate |
6.1 |
1.0 |
0.5 - 1.5 |
toll |
|||
|
Length
coefficient |
6.2 |
1.0 |
0 - 1.5 |
revenue
responsiveness to distance traveled |
|||
|
Speed
coefficient |
6.3 |
0.0 |
0 - 1 |
revenue
responsiveness to road speeds |
|||
|
Link
Maintenance Cost |
|
|
|
|
|||
|
Length
coefficient |
|
1.0 |
0 - 1.2 |
elasticity
of cost in response to road length |
|||
|
Flow
coefficient |
7.2 |
0.75 |
0 - 1.2 |
elasticity
of cost in response to link flow |
|||
|
Speed
coefficient |
7.3 |
0.75 |
0 - 1.2 |
elasticity
of cost in response to road speed level |
|||
|
Investment |
|
|
|
|
|||
|
Speed
improvement factor |
8.1 |
1.0 |
0 - 1 |
responsiveness
of link improvement (investment) to link performance (such as revenue/cost
ratio) |
|||
a Detailed variable interpretations can also be found from the model variable description below.
Initial Network Types, Speed
Distribution, and Land Use Distribution
1. Network types include options representing different sizes and types of
networks, e.g. users can choose grid networks with varying sizes from 5x5 to
25x25 as demonstrated in Figure 2; or network with a river crossing as
demonstrated in Figure 7.
Figure 7: Network with river crossing

2. Speed
distributions in the initial network can be set as random or uniform to see
how different (or similar) the evolved network form can be compared to the
initial one. Uniform speed
distribution means link speeds are uniform across the network; Random speed distribution distributes
the initial link speeds randomly across the network; and Pre-specified random speed distributes links speed randomly in a
pre-specified way, so that users can control the effects of speed distribution
and test the impacts of other variables. Speed
multiplier allows users to adjust the level of speeds across the whole
network. e.g. a value of 135% indicates the speed level is 135% of the default
speed level.
3. Land use
distributions at the initial stage of network development can be set as
random, uniform, pre-specified random, or with a CBD (call urban land
use). The idea is to explore if
orderly network structure can emerge from different initial land use
conditions. Additionally, a land use multiplier in the program
allows users to adjust the level of initial land use density cross the whole
network.
Model parameters
Corresponding to the simulation components models, simulation parameters will be explained in this section. Note that not all of the parameters explained below are visible in the interface, the user adjustable variables, as shown in the interface, will be marked with "***" sign.
1. Parameters from
travel demand model
The models
User adjustable parameters are associated two models simulating how trips are distributed in the network.
(a) Gravity model:
, where
=
is friction factor,
indicating people’s willingness to travel, and
is the generalized cost of commuting between two locations;
and
(b) Generalized travel cost model:
, where costs of commute are generalized to consist of: travel time in monetary value and toll (or user fees):
Description of parameters:
, friction factor ***
Value of time ***
2. Parameters from revenue
model
The model:
[
], or its simplified version: [
], assuming no relationship (
=0) between revenue and speed, and linear relationship
between link length and revenue (
=1)
From services providers’ perspective, toll paid by travelers equals to revenues made by the providers. So revenues are calculated in the same way that toll is calculated in the generalized travel cost model in the last section. Hence, parameters in the generalized cost model have the same values as defined in the revenue model here.
Description of parameters:
, a model parameter to scale flow annually (not shown on the interface)
, Tax (toll) rate ***
![]()
, Length power in revenue model ***
, Speed power in revenue model ***
3. Parameters from cost
model
The model:
[
]: the model calculates
, the cost of maintaining the road at its present condition
in time step t. This cost depicts the threshold cost of maintaining a link.
Description of parameters
, annual unit cost of maintenance for a link (Not shown on the interface)
, coefficients for length, indicating (dis)economies of scale
to road providers ***