This blog post provides a numerical example for the previous blog post. Recall that we are given a before OD table, a before travel time matrix and an after travel time matrix. We want to find the after OD table.
A further goal of this problem is to avoid fancy software, so I have attempted to illustrate this technique solely in Excel. However, I later demonstrated the strength and weaknesses of the technique by comparing its results to travel demand forecasting software. I used the very familiar UTown test network in QRS II, starting with the outputted OD table and travel time matrix that comes from a “before” alternative of the model. The modification for the “after” alternative was a 15% increment of free speeds on the UTown freeway.
You have likely seen UTown in years past, but here is what it looks like in QRS II.
There are 5 zones, and there are many congested links. Should you want to replicate the complete example and the comparison, you can do so easily with the free demo edition of QRS II, downloadable from ajhassoc.com. The UTown network is included. Note: QRS II rounds travel times to the nearest whole minute for trip distribution calculations, so we will too in the spreadsheet.
The Data
QRS II was used for creating the “true” before case and the after travel time matrix. QRS II’s default trip distribution step is a doublyconstrained gravity model. All parameters were QRS II defaults, except I substituted 0.07 for the HBW coefficient of the gravity model, as suggested in Part 1 of this blog. I also ran 30 iterations of MSA with feedback. The UTown network was originally set up for a PM peak hour (much preferred), but it was changed to a 24hour time period for this example. UTown has three trip purposes – HBW, HBNW and NHB. The before OD table, rounded, is shown just below.
3 Northern 
4 Northwestern 
2 Central 
1 Eastern 
5 Southwestern 

3 Northern 
45035 
4927 
9033 
16753 
8723 
4 Northwestern 
4929 
11101 
3110 
6489 
4441 
2 Central 
9032 
3107 
28849 
20468 
5261 
1 Eastern 
16649 
6449 
20344 
49062 
14750 
5 Southwestern 
8750 
4451 
5279 
14849 
21046 
Note that this table is almost symmetrical, as expected. All spreadsheet calculations were performed using unrounded trips so that I could get a clean evaluation of the technique.
The rounded, before travel time matrix is shown next.
3 Northern 
4 Northwestern 
2 Central 
1 Eastern 
5 Southwestern 

3 Northern 
6 
23 
21 
30 
19 
4 Northwestern 
22 
6 
24 
33 
17 
2 Central 
20 
25 
5 
24 
22 
1 Eastern 
27 
31 
22 
6 
28 
5 Southwestern 
24 
24 
27 
36 
7 
And finally, the after travel time matrix is shown, also rounded.
3 Northern 
4 Northwestern 
2 Central 
1 Eastern 
5 Southwestern 

3 Northern 
6 
22 
21 
30 
18 
4 Northwestern 
22 
6 
24 
34 
17 
2 Central 
20 
25 
5 
24 
21 
1 Eastern 
27 
32 
22 
6 
28 
5 Southwestern 
23 
24 
26 
36 
7 
Only a few cells are affected by the speed change, given the rounding.
The Model
I factored the before OD table into 4 component tables: HBW, PA; HBW, AP; HBNW+NHB, PA; and HBNW+NHB, AP. Simple constant factors of 0.1, 0.1, 0.4, and 0.4, respectively, were used. Singlyconstrained gravity models (exponential form) were fitted to each table, conventionally. The process for the AP tables were almost exactly the transpose of the PA tables. That is, for the PA tables row totals were held constant and for the AP tables column totals were held constant. For example, the computed HBW, PA table is shown below.
3 Northern 
4 Northwestern 
2 Central 
1 Eastern 
5 Southwestern 

3 Northern 
4491 
486 
1241 
1067 
1161 
4 Northwestern 
703 
767 
482 
415 
641 
2 Central 
1327 
333 
2993 
1279 
741 
1 Eastern 
1257 
338 
1408 
6970 
753 
5 Southwestern 
1167 
415 
747 
643 
2465 
Observe that symmetry was no longer preserved, but symmetry is never expected in a P to A table or an A to P table, anyway.
The after case was calculated by changing the travel time matrix. The total before and total after OD matrices were then found by summing across purposes and by summing across PA and AP.
The Adjustments
Below is the total calculated before OD table.
3 Northern 
4 Northwestern 
2 Central 
1 Eastern 
5 Southwestern 

3 Northern 
53049 
5237 
10427 
7219 
10910 
4 Northwestern 
5343 
10828 
3513 
2434 
5739 
2 Central 
11237 
3402 
37247 
9816 
6558 
1 Eastern 
9211 
3036 
11838 
82654 
5796 
5 Southwestern 
8066 
3628 
4873 
3401 
27426 
Comparing the calculated and “true” before OD matrices revealed some large errors, particularly for the Eastern Zone, but the calculations seemed good enough to give reasonable sensitivities, so I continued.
Next I found the ratio of the calculated after table to the calculated before table. Numbers greater than 1 represent forecasted increases.
3 Northern 
4 Northwestern 
2 Central 
1 Eastern 
5 Southwestern 

3 Northern 
0.987109 
1.037067 
0.988521 
1.000678 
1.057502 
4 Northwestern 
1.037 
1.006882 
1.000194 
0.976218 
0.977942 
2 Central 
0.988516 
1.000166 
0.991816 
1.002809 
1.055211 
1 Eastern 
1.000671 
0.97618 
1.002801 
1.001599 
0.999468 
5 Southwestern 
1.057384 
0.97781 
1.055104 
0.999466 
0.966808 
Notice that the largest fractional increases corresponded to those cells that experienced significant travel time decreases. The remaining cells changed seemingly at random, but nothing is truly random in this problem.
The Forecast
The ratios were then applied to the original “true” OD table, recalling that the only relevant output of this exercise was the set of cell adjustment factors. Here, finally, is the computed after OD table.
3 Northern 
4 Northwestern 
2 Central 
1 Eastern 
5 Southwestern 

3 Northern 
44455 
5110 
8929 
16764 
9225 
4 Northwestern 
5112 
11177 
3111 
6335 
4343 
2 Central 
8928 
3108 
28613 
20525 
5551 
1 Eastern 
16660 
6295 
20401 
49141 
14742 
5 Southwestern 
9253 
4352 
5570 
14841 
20347 
Since, the total of all trips closely matches the “true” OD table, further scaling was not needed.
The Evaluation
When the QRS II after OD table (being the “true” result) was compared with the spreadsheet calculated OD table, the largest deviation in any cell value was less the 0.5 trip (a negligible amount). Thus, one could reasonably conclude that this techniques is a decent substitute for a full travel demand forecasting model run, with some provisos. Particularly important is the need for a good set of friction factors. In this experiment the good quality of the friction factors was assured, so it is likely that truly borrowed friction factors will not perform quite as well.
Perhaps this technique should be added to a revised NCHRP Report 765 or the Hawaii Guidelines.
Alan Horowitz, Whitefish Bay, March 29, 2017
Alan,
Your QRS II is a godsend for us professors who want to teach students principles with a simple project. This is the 6th time I am using QRS II Demo in my class. I noticed that you have updated to version 9 and 8.3.
Where can I download the manuals for the latest demo versions?
Thanks.
Mohan
Full reference manuals to QRS II and GNE are contained in the demo setup packages. After setup there should be a link to each reference manual on the start menu. I do not anticipate updating the reference manuals for QRS II 9.1 and GNE 8.4 when ready. You will need to refer to supplemental documentation when these new releases become available. Also, please look at the readme file for QRS II 9, since it mentions some important actions that might be needed when upgrading networks from version 8.
Alan