An Introduction to the Use of Microcomputers for
Travel Demand Analysis Using the GNE and QRS II Software

Edward Beimborn and Alan Horowitz

Center for Urban Transportation Studies
University of Wisconsin--Milwaukee

Updated October 1998, September, 2000
for GNE for Windows Version 5.0 Professional and QRS II for Windows Version 5.0+


QRS II and GNE provide a means to carry out travel demand forecasting on a microcomputer, using interactive input of node and link data, with a wide range of user control over the forecasting process. These programs were developed by Professor Alan Horowitz of the University of Wisconsin-- Milwaukee to implement the quick response techniques originally found in NCHRP Report 187.

The purpose of this primer is to provide an introduction to these programs and to explain how data is entered and analyzed in the QRS II/GNE approach. The QRS II Reference Manual provides more detailed information.

The QRS II/GNE package has been widely adopted by transportation agencies and private organizations throughout the world. It is used for a variety of purposes -- regional transportation studies, site impact analysis, transit planning and database analy sis.

Two programs are needed.

GNE -- General Network Editor. Provides the means to input and read network based data (node and link characteristics).

QRS II -- Quick Response System II. Uses data prepared by GNE for travel demand forecasts.

The basic procedure is as follows:

1. Input data for a highway (and transit) network using GNE.

2. Analyze the networks using QRS II.

3. Display and interpret output using GNE, spreadsheets and other software.

This primer is based on GNE for Windows version 5.0, Professional and QRS II version 5.0. The primer is organized to explain how highway and transit networks are coded with the General Network Editor. Each type of link and node used in a highway networ k is described to help you code the network. The same is provided for transit networks in Part 2, which also shows how parameters are set in QRS II.

The General Network Editor

The General Network Editor is used to create transportation networks for later analysis. GNE allows you to locate links and nodes and to attach data to them. These data can be displayed using GNE in a wide variety of ways. GNE can also be used to perfo rm calculations on information attached to links and nodes and has some database functions.

When used for transportation planning, GNE is used to prepare networks for analysis by QRS II, a separate travel demand analysis program.

Starting GNE

GNE is started by double clicking on its icon in Windows or selecting it from the Start Menu. When it comes up there are two menu bars. The top bar with words has commands that can be used to bring files in and out of the program, to change the look of the network, to initialize values for links or nodes and to create reports. The second bar has a series of buttons that are used for drawing networks and adding data to links and nodes.

GNE is basically used to plot nodes and links. This is done as follows.

Plotting Nodes

1) Click the button on the button bar with a black square; this will allow you to plot a node.

2) Point to the location where you want the node to be, hit the left mouse button to set the coordinates of the node, and adjust it as necessary.

3) Hit the right mouse button to plot the node.

4) Press the "N" button on the button bar, point to the node and press the left mouse button.

A faster way: If you push the "N" button that has a small box on it you can plot a node and open it at the same time.

5) Enter a type for the node, give it a name and enter data on the Attributes dialog box.

An even faster way:You can also initialize a node with common data by using the Tools/Initialize/Nodes menus. Just choose node type, and enter attributes or nmaes or whatever you want. Each node plotted after you initialize will have the data. When you want to change something, reinitialize the node

A really fast way: You can use an image of a map and use it as a background for placing nodes and links at the proper locations. The image should be in jpeg format. Use the menus View/Backgrounds/jpeg and then import the image from a file. It will then appear on the screen. Adjust the scale as needed so it will be correct for your network. The example below shows a jpg map image with some nodes and links plotted

Plotting and Opening Links

1) Push the "L" button with the right mouse button.

2) Point to the first node for the link and click it, then point to the second node and click it. This should plot and open up the link for data entry.

3) Pick a link type, give it a name and click the Attributes button.

4) Enter data for the link. (Click OK to leave.)

A faster way:Use the "L" button with a small link to plot the link and open it at the same time. Links can also be initialized in the same way as nodes

Keyboard entries can also be used with GNE as follows:

GNE File menu

The File menu has a variety of options. You can get a directory of files by hitting Open and then indicating where you want to look for files. For example, use A: to give you a listing of all data files on the disk in drive A.

If you are using GNE for the first time, you begin by loading a special file called QRS50.DTA, which sets up GNE to accept highway network data. For subsequent use of the program you will load in the file you worked on the last time you used GNE.

After you have entered your data, don't forget to save your network using the File menu. Give your file a unique name, for example:


This will save your file on drive A as CUPCAKE.DTA.

The command "Save" on the File menu will save the network under the same name and overwrite previous versions. The command "Save As" will allow you to give the network a new name and keep the older version.

Check the directory of your disk to be sure your file is saved before leaving GNE by looking at the file list with the File Open command. If the program says, "Are you sure (Y/N)?" before leaving, it may mean you forgot to save your file.

Always back up your files!!

Always back up your files!!

Always back up your files!!

Always back up your files!!

Always back up your files!!

Always back up your files!!


The Schema menu in GNE contains a definition of the various types of links and nodes in a network. Loading in an initial network such as QRS50.DTA provides a definition of a particular type of network, in this case a highway network. You can change nam es of link or node types, their color and shape.

Changing the color of nodes or links is a way to reduce clutter in a drawing or to find certain types of links or nodes. If you change the color to white, they will not show up on the drawing.

Highway Networks

Highway networks are described as a series of links and nodes and values on a System Attributes dialog box. If you initially load the file QRS50.DTA or QRS504.DTA, then GNE will be set up to accept highway data. The basic process to use is to plot a sm all series of nodes and links and then enter data for each. Nodes are plotted by pointing to the appropriate location with the Plot Node command active (shown as a filled-in square in the upper left of the button bar). First the location of the node is se t using the left button of the mouse. This places a cross hair at a possible node location. When in the right place, the node is then plotted at that location using the right mouse button. Data is entered for a node by pointing to it with the "N" command active. This will bring up a dialog box where you can choose the type of node and enter other data. First designate the type of node. Then give it a name, if appropriate, and then enter data by first hitting the Attributes button.

Links are plotted with the Link Plot command (the second button from the left) active by clicking node to node. Data is entered on a link by using the "L" command and clicking each end of a link.

You should name nodes and links. This is important if you want to view your detailed results; otherwise they may not be in a form you can interpret. It is particularly important to name centroids if you are doing mode split, so highway and transit data can be brought together.

One quick way to enter a network is to make a clean overhead transparency of it and place it on the screen. Simply plot the points on the computer where they occur on the screen. Be careful, however, because the horizontal scale may not be the same as the vertical scale on some monitors. Adjust the monitor to flatten the screen as you enter points or use the transformation menu to adjust the x or y scale to correct for this problem. The location of points is important, since QRS II can compute travel t imes based on the distance between points on the screen.

Coordinates of nodes can be found with the left mouse button when Node Plot is active.

Highway Systems Attributes

You can enter system-wide highway network data using the System Attributes dialog box. These data are used if you do not enter certain data on certain link or node dialog boxes. The System Attributes dialog box is listed under the Schema menu.


The data items on the dialog box relate to both links and nodes.

Penalties. The first four items on the menu are base values for the amount of time that it takes for vehicles to pass through or make a turn at an intersection with penalties. These values are added to those at an indi vidual intersection to provide the proper turn penalty. Note these are not the same as default values in that they are added to (not replaced by) respective numbers you put on individual links. Penalties are in units of minutes.

Some typical values for penalties for a signalized intersection are as follows:

Map Scale. This is the scale of the network as drawn on the Sketch Pad in units of pixels per inch. The scale is used to estimate travel time if it is not provided directly as input on a link. To get the scale of a map, measure one mil e on the screen and find the number of pixels by subtracting the coordinates of two points a mile apart. You can get the coordinates by using the left mouse button when Node Plot is active. As an example, a base map with a scale of 1 inch = 2.5 miles has a scale value of about 32 pixels per mile on an 800 x 600 VGA monitor.

Note: If you want to use the metric system, simply enter distances and speeds in kilometers and km/hr and use a scale in pixels per kilometer. Proper travel times in minutes will then be calculated. You can also change names under the Schema menu to ha ve metric units.

Default Speed. This attribute is the assumed speed in miles per hour on all links in the network. It is used to calculate travel time on links, if speed or time is not given directly on a link.

Income (=0) or Autos/HH (=1). This tells QRS II which variable -- income or auto ownership -- should be used to calculate trip productions.

Urban Area Population. Some of the calculations in QRS II depend on the overall size of the city you are working with. Enter city size in thousands, i.e. 550 means an area population of 550,000 people.

Starting and Ending Hours. These attributes relate to the time period you want to analyze. Full hours are numbered from 0 to 23. Hour 0 starts at midnight; hour 23 starts at 11 p.m.. The 5 p.m. peak hour would have both a start and end of 17.

Highway Network Structure

The elements of a highway network are illustrated below along with the way in which they are connected together. (On the monitor different link types are shown in different colors rather than different patterns.) You should follow this basic arrangemen t when drawing a network; i.e., different roadway link types (one way street, two way street, etc.) are connected to intersections. Centroids (places where trips begin or end, i.e. residential zones, etc.) are connected to the network with special links c alled centroid connectors. Tags can be used to add special information to centroids. Tags are attached to centroids with piece of string links.

Highway Node Types

Once a node is plotted it can be "opened" to enter data (use the N command, point to a node and click the left mouse button). You will then see a dialog box which allows you to designate the type of node. There are several different types of nodes for a highway network.

A node can be designated as one of the following:

Intersection--without delay. Shows minor points or bends in roads.

Intersection with delay. Adds turn penalties for movements across the intersection or adds delay because of signals or stop signs.

Centroid. Shows the center of a traffic analysis zone. It is a place where trips begin or end and typically has characteristics such as dwelling units, employment, etc. Note that trips can only begin or end at a centroid and cannot pass through a centroid. Always connect them to the street network with a centroid connector.

Special generator centroid. Centroid that keeps P&A's (productions and attractions for trips) constant during the balancing process for trip generation. It is connected to the rest of the network with a centroid connector.

External station. A zone outside the study area where trips enter or leave your network. You need to specify P&A's. Connect it to the rest of the network with a centroid connector.

Production/attraction tag. Modifies P's and A's at the centroids for special needs. Connect it to a centroid with a piece of string link.

Seed tag. Marks the origin for a single minimum path (skim) tree. Only one can be used per network. Attach it to a centroid with a piece of string link.

District tag. Aggregates individual centroid zones, which are connected to the tag by pieces of string links.

Label holder. This node type is not part of the QRS II applications schema, but it is a useful option. It is a way to place labels on the network at any location; i.e. wherever you plot that node.

The data needed for each of these node types are described in the following sections.

Entering Highway Node Data

Once a node is plotted and opened you can enter data concerning that location. From the initial "node entities" dialog box, hit the Attributes button and a data input dialog box will appear. The type of data you enter depends upon the type of node. You can enter data directly in the appropriate box or use the Value button to change data. In some cases (intersections without delay, district tag) no data is needed so there is no dialog box for data entry. The data input for each node type is described be low.

Intersections with Delay

QRS II does a capacity analysis using procedures from the Highway Capacity Manual for any intersection where delay from traffic control or turning movements is likely to be encountered. To do this QRS II needs to know characteristics of the intersectio n itself, as well as the roads that connect into the intersection.

Items one to four on the dialog box are penalties that you can assign to the intersection for various movements. Data would be entered here if the intersection has unusual characteristics that make it differ from the values set on the System Attributes dialog box. The numbers you enter here will be ADDED to the values set on the System Attributes dialog box.

Cycle length is used to specify the total signal cycle time for the intersection, in seconds. This attribute must be greater than zero for the intersection to be considered signalized.

The minimum unsignalized capacity is used when there are some stop signs (no signals or no all-way stop) at an intersection. This is the minimum hourly capacity of a signed approach. A value is entered here only if you want to override the default valu e used by QRS II (33 vehicles per hour).

U turns allowed is set to either yes (1) or no (0) depending on what you want to permit at that location.


Characteristics of a centroid of traffic analysis zone is entered for the first five items on its Attribute dialog box. These value are used to calculate trip productions or attractions for each zone. You enter either income or autos/household, but not both, depending how the program is set up on the System Attributes dialog box.

A worksheet is given to calculate intrazonal travel time. To do this, first hit the Work button, then enter the speed within the zone and the gross area of the zone. Modify these data items as necessary, and the calculations will be performed.

Seed Tag

A seed tag is used only if you want to see the minimum path tree from a single centroid. You attach a seed tag to the centroid of interest with a piece of string link. The seed tag Attributes dialog box asks you if you want to find the single tree only (yes=1) or to also find traffic volumes (no=0). You can view the minimum path tree in a file called RESULT.DTA.

Intersection Without Delay

You can designate minor intersections or bends in the road as intersections without delay. There are no attributes for this type of node.

External Station

If you have trips entering and leaving your study area from the outside, you represent this situation with a series of external stations located around your network. Enter the number of trip ends by purpose. Attach the external station to the network w ith a centroid connector link.

Special Generator Centroid

Special generator centroids use the same Attributes dialog box as regular centroids. However, the number of trip ends will be held constant when other trips are balanced between productions and attractions. This type of centroid would be used if you wa nted to tightly control how much trip making occurs at a zone.

Production/Attraction Tag

You can directly add trips to a centroid with a production/attraction tag (tie it to a centroid with a piece of string link). A production/attraction tag could be used to look at the impact of a proposed development for a site impact study. Attach the tag to a special generator centroid and directly input the trip making data. Data for the attached centroid should be set to zero if you want to represent the special generator, exclusively.

District Tag

District tags are used to combine zones into larger areas. The district tag is connected to a number of zones with pieces of string links. Data results can then be looked at later in district-to-district trip tables.

Label Holder

Label holders may be added to the network as an additional node type (add it under the Schema/Node Definition dialog box with zero attributes). It is a convenient way to place labels on a plot at any location. Plot a node where you want the label to ap pear and designate it as a label holder. To display the label use the View /Labels/Node Labels/label holder/first/name sequence of items from the main menu. If you don't want the dots for the label holder node to appear, change their color to white under the View/Entity Styles/Nodes dialog box.

Highway Link Types

GNE allows you to enter data for a variety of link types as shown on the Link Definition dialog box.

Two way street. Travel times can be entered several ways. Enter travel time directly on the Attributes dialog box. Enter speed for that link and travel time will be calculated for you. Distance is computed internally from the coordinates of the link ends and the scale of the map. Do nothing and a default speed will be used along with the distance to compute travel time.

Travel time for A to B and for B to A could be different.

One Way Street. Plot the link in the appropriate direction. Node A followed by Node B means that the street is one way in that sequence. One way links cause traffic to go in the direction they are originally plotted.

Centroid connector. Used to attach centroids, special generator centroids and external stations to the network. Set the excess travel time as if it were a two way street.

Two way, no left turn street. This is a two way street, but you can't turn left at the intersections. at either end.

Two-way dummy. Travel times are zero.

One-way dummy. Travel times are zero.

Centroid connector dummy. Travel times are zero.

Piece of string. Used to tie tags to other nodes.


Entering Highway Link Data

Once you plot a link and open it (with the plot link and open link commands), you can enter data concerning that link. Eight types of links are possible. For each type of link there may be an Attribute dialog box for the input of link data. You designa te the type of link on the first line of the Entity Designation dialog box and then hit the Attributes button. Different link types have slightly different dialog boxes (there is no Attribute dialog box for a piece of string).

Two Way Street

Approach Codes. Version 3.0 and above of QRS II use a sophisticated analysis procedure that calculates delay at intersections and simulates the timing of traffic signals and/or delay from stop signs. These calculations are based on the characteristics of links that connect to an intersection with delay as well as characteristics of the intersection node. Four pieces of information are coded for such links -- through traffic code, lane geometry and sign code, progression code, and funct ional class. They are entered as a string, for example 1S3M for an east-west major arterial with shared lanes and average progression.

A code of 0S3O can be used when the approach characteristics are unimportant.

If the geometry or other characteristics of a link differ on each end, it should be coded as two links, with an intersection without delay between them.

The components of the approach codes are as follows.

Through Traffic (Phase) Code (First Position). Through traffic codes on a link refer to their general direction. They are used by QRS II to determine if a turn penalty should be added in the path finding procedures. Streets that are ge nerally east-west should get a code of 1. Streets that are generally north-south should get a code of 2. Diagonal streets should get a code of 3 if they are from southwest to northeast or a code of 4 if they are from southeast to northwest. The codes 5-9 could be used if there are multiple diagonal streets. With a code of 0, QRS II will calculate the appropriate code based on the coordinates of the ends of the link.

Lane Geometry and Sign (Second Position). This code is used to define the type of lanes at an intersection when QRS II calculates delay at a signal or stop sign. If the intersection at the end of the link is signalized, enter one of th e following codes:

If the link attaches to a stop sign controlled intersection, use the following codes:

Progression Code (Third Position). This code relates to the quality of progression of traffic along the link from a series of signals. It ranges from 1 (very poor progression, vehicles arrive at beginning of red) to 3 (random arrivals) to 5 (excellent progression, vehicles arrive at beginning of green).

Functional Class Code (Fourth Position). This code is used only to modify the delay characteristics along uncontrolled portions of highways. Choose from F (freeway), M (major arterial), m (minor arterial), c (collector), l (local) and O (other) .

Speed (miles/hour). If the speed on the link is different than the default speed, enter it here. QRS II can calculate travel time given the average speed, the positions of the ends of the links and the scale of the map.

Travel time A to B (minutes). If you leave the travel time A to B at zero the travel time will be calculated directly by QRS II from the link distance, map scale and speed on the link. Otherwise you can enter the travel time on a link directly. This is the initial travel time on the link and this value will change during capacity restrained trip assignment. You should also enter the free travel time for attribute number 8, which is the time necessary to traverse the link when traffic i s very light.

Travel time B to A (minutes). Use this attribute only if you have different travel times in the two directions on a link and if you have given a value to attribute number 3.

Base Volume A to B and Base Volume B to A. If you want a level of traffic on your network in all circumstances, then enter it here. This is useful if you are doing a site impact study or if you have traffic that passes completely throu gh the study area.

Capacity. This attribute should be set to the capacity of a link at level of service E. On urban streets it should be set to the saturation flow rate of all the through lanes at an intersection. A good first approximation of the lane capacity on urban streets is about 1600 vehicles per hour of green per lane.

Free travel time. This attribute is the travel time on a link when it is totally uncongested. If you want to enter travel time directly you should do it here as well as on attributes 3 and 4.

Volume A to B and Volume B to A. These attributes are reserved for the outputs from QRS II; leave them at zero.

One Way Streets

Attributes are the same for one way streets as for two way streets, except there are fewer of them. Make sure your one-way street is coded in the proper direction. Traffic flows in a direction from the A end to the B end. You can display link direction s by using the View/Shapes/link A end/arrow command.

Centroid Connector

Centroid connectors must be used to connect centroids, special generator centroids or external stations to the road network.

The travel times used here represent how long it takes to travel from the coded highway system to the center of the zone using local streets, and they can also be used to represent parking costs. If the values in the Attribute dialog box are left at ze ro, the times will be automatically calculated using link length and speed.

Speed. Speed within a zone can be directly entered or calculated using a worksheet. The worksheet will calculate an average speed using the percent of roadways that are used to travel to the centroid of the zone. These should total 100 percent. (A way to do this automatically is to enter 100 - v1 _ v5 for the last percent after clicking the Value button.)

Travel Time A to B. You can enter a value directly or have it calculated using a worksheet. With the worksheet you enter the airline distance from the network to the centroid; QRS II will calculate a travel time using a circuity factor . This was set as a parameter as part of the schema (under schema, link definition, centroid connector, attributes, speed, worksheet, constant, . . . 82.64 was found from 100/1.21.)

Parking Cost. Cost for parking or other needs at a centroid can be entered using the travel time worksheet for a centroid connector. Enter the daily out-of-pocket cost for parking in dollars in the worksheet. The schema assumes that $0 .10 of cost is equivalent to one minute of travel time, or a value of time of $6.00 per hour. (You can change this in the schema under Schema/Link Definition/centroid connector/attributes/travel time A to B/worksheet/out of pocket cost/parameter.) It shou ld also be reset under travel time B to A.

Two Way (No Left Turn) Street

If no left turns are permitted at either end of the link, code it as a two way, no left turn street. Data is entered the same as for a regular two way street.

Two Way Street Dummy, One Way Street Dummy

This is a street with zero travel time, used to display complex interchanges, etc. Only approach codes need be entered.

Centroid Connector Dummy

This forces the travel time on a centroid connector to be zero. No data is needed.

Piece of String

Used to connect "tags" to other nodes. Traffic cannot flow on a piece of string. No data is needed.