<%BANNER%>

Next Generation Algorithms for Railroad Crew and Locomotive Scheduling

Permanent Link: http://ufdc.ufl.edu/UFE0021180/00001

Material Information

Title: Next Generation Algorithms for Railroad Crew and Locomotive Scheduling
Physical Description: 1 online resource (191 p.)
Language: english
Creator: Vaidyanathan, Balachandran
Publisher: University of Florida
Place of Publication: Gainesville, Fla.
Publication Date: 2007

Subjects

Subjects / Keywords: Industrial and Systems Engineering -- Dissertations, Academic -- UF
Genre: Industrial and Systems Engineering thesis, Ph.D.
bibliography   ( marcgt )
theses   ( marcgt )
government publication (state, provincial, terriorial, dependent)   ( marcgt )
born-digital   ( sobekcm )
Electronic Thesis or Dissertation

Notes

Abstract: Our research concerns optimal railroad crew and locomotive management. Crew scheduling entails assigning crews to trains while complying with union rules, so that the crew costs are minimal and train delays due to crew unavailability are minimized. Locomotive scheduling ensures the correct number and type of locomotives are attached to each train such that a train has sufficient pulling power while satisfying a variety of business constraints and minimizing locomotive costs. Locomotive routing involves routing each locomotive unit on a cyclic sequence of trains so that it can be fueled and serviced as necessary. These problems are difficult to solve NP-Complete problems and the North American locomotive and crew scheduling problems have not yet been solved satisfactorily. However, solving these problems has the potential to save railroads several million dollars a year. First, we examine the North American railroad crew scheduling problem (CSP). We develop a network-flow based crew-optimization model and design efficient algorithms using problem decomposition and relaxation techniques. Next, we extend the earlier attempts to solve the locomotive planning problem (LPP) on several dimensions by considering new constraints desired by locomotive directors. We develop additional formulations necessary to transition solutions of our models to practice and report computational tests of these models on the data provided to us by a major US railroad. Next, we study the locomotive routing problem (LRP). The LRP is a very large-scale combinatorial optimization problem and has previously been unstudied and unsolved. We formulate the LRP as an integer programming problem on a suitably constructed space-time network and develop fast aggregation-disaggregation based methods to solve this problem. Finally, we study the multicommodity flow problem (MCFP). MCFPs have found application in wide variety of domains. The LPP and the CSP are indeed special cases of the MCFP. However, the integer version of this problem is NP-Complete. We propose a novel aggregation-disaggregation framework to solve a class of large-scale integer MCFPs.
General Note: In the series University of Florida Digital Collections.
General Note: Includes vita.
Bibliography: Includes bibliographical references.
Source of Description: Description based on online resource; title from PDF title page.
Source of Description: This bibliographic record is available under the Creative Commons CC0 public domain dedication. The University of Florida Libraries, as creator of this bibliographic record, has waived all rights to it worldwide under copyright law, including all related and neighboring rights, to the extent allowed by law.
Statement of Responsibility: by Balachandran Vaidyanathan.
Thesis: Thesis (Ph.D.)--University of Florida, 2007.
Local: Adviser: Ahuja, Ravindra K.

Record Information

Source Institution: UFRGP
Rights Management: Applicable rights reserved.
Classification: lcc - LD1780 2007
System ID: UFE0021180:00001

Permanent Link: http://ufdc.ufl.edu/UFE0021180/00001

Material Information

Title: Next Generation Algorithms for Railroad Crew and Locomotive Scheduling
Physical Description: 1 online resource (191 p.)
Language: english
Creator: Vaidyanathan, Balachandran
Publisher: University of Florida
Place of Publication: Gainesville, Fla.
Publication Date: 2007

Subjects

Subjects / Keywords: Industrial and Systems Engineering -- Dissertations, Academic -- UF
Genre: Industrial and Systems Engineering thesis, Ph.D.
bibliography   ( marcgt )
theses   ( marcgt )
government publication (state, provincial, terriorial, dependent)   ( marcgt )
born-digital   ( sobekcm )
Electronic Thesis or Dissertation

Notes

Abstract: Our research concerns optimal railroad crew and locomotive management. Crew scheduling entails assigning crews to trains while complying with union rules, so that the crew costs are minimal and train delays due to crew unavailability are minimized. Locomotive scheduling ensures the correct number and type of locomotives are attached to each train such that a train has sufficient pulling power while satisfying a variety of business constraints and minimizing locomotive costs. Locomotive routing involves routing each locomotive unit on a cyclic sequence of trains so that it can be fueled and serviced as necessary. These problems are difficult to solve NP-Complete problems and the North American locomotive and crew scheduling problems have not yet been solved satisfactorily. However, solving these problems has the potential to save railroads several million dollars a year. First, we examine the North American railroad crew scheduling problem (CSP). We develop a network-flow based crew-optimization model and design efficient algorithms using problem decomposition and relaxation techniques. Next, we extend the earlier attempts to solve the locomotive planning problem (LPP) on several dimensions by considering new constraints desired by locomotive directors. We develop additional formulations necessary to transition solutions of our models to practice and report computational tests of these models on the data provided to us by a major US railroad. Next, we study the locomotive routing problem (LRP). The LRP is a very large-scale combinatorial optimization problem and has previously been unstudied and unsolved. We formulate the LRP as an integer programming problem on a suitably constructed space-time network and develop fast aggregation-disaggregation based methods to solve this problem. Finally, we study the multicommodity flow problem (MCFP). MCFPs have found application in wide variety of domains. The LPP and the CSP are indeed special cases of the MCFP. However, the integer version of this problem is NP-Complete. We propose a novel aggregation-disaggregation framework to solve a class of large-scale integer MCFPs.
General Note: In the series University of Florida Digital Collections.
General Note: Includes vita.
Bibliography: Includes bibliographical references.
Source of Description: Description based on online resource; title from PDF title page.
Source of Description: This bibliographic record is available under the Creative Commons CC0 public domain dedication. The University of Florida Libraries, as creator of this bibliographic record, has waived all rights to it worldwide under copyright law, including all related and neighboring rights, to the extent allowed by law.
Statement of Responsibility: by Balachandran Vaidyanathan.
Thesis: Thesis (Ph.D.)--University of Florida, 2007.
Local: Adviser: Ahuja, Ravindra K.

Record Information

Source Institution: UFRGP
Rights Management: Applicable rights reserved.
Classification: lcc - LD1780 2007
System ID: UFE0021180:00001


This item has the following downloads:


Full Text
xml version 1.0 encoding UTF-8
REPORT xmlns http:www.fcla.edudlsmddaitss xmlns:xsi http:www.w3.org2001XMLSchema-instance xsi:schemaLocation http:www.fcla.edudlsmddaitssdaitssReport.xsd
INGEST IEID E20101114_AAAADD INGEST_TIME 2010-11-14T11:07:29Z PACKAGE UFE0021180_00001
AGREEMENT_INFO ACCOUNT UF PROJECT UFDC
FILES
FILE SIZE 2166 DFID F20101114_AABCMA ORIGIN DEPOSITOR PATH vaidyanathan_b_Page_080.txt GLOBAL false PRESERVATION BIT MESSAGE_DIGEST ALGORITHM MD5
fc767784850b304fee54264c6c96a884
SHA-1
b443baea15399a538b6b029e8ae7c61fe7462dd1
2060 F20101114_AABCLM vaidyanathan_b_Page_066.txt
94497b393c38e12c381f5e94727e0625
e9edef017401c60f17e10a1b74fc5241a83b41b1
2111 F20101114_AABCKX vaidyanathan_b_Page_051.txt
cf806bd507f6a94843588805faaa2d37
398afdddc4680f2caef3e07ce2c908b0899f2a1e
69764 F20101114_AABBHV vaidyanathan_b_Page_036.jpg
dbcc25e2bfad2ebaf6afbc50c102a215
0f47b44f8327494652bc1624d96cb68db0a72d29
15044 F20101114_AABBIK vaidyanathan_b_Page_052.jpg
a192e8abb0ea5119b7f89400a05177e4
daebe9dd5b72fced8ee7d0311aac8cfdc050e026
2159 F20101114_AABCMB vaidyanathan_b_Page_081.txt
78c3f111710ade8e1ffcb567aefde229
1c78cc4e7eb99e9090b37930d1768025b2c8c8c6
1972 F20101114_AABCLN vaidyanathan_b_Page_067.txt
e61f1c8278ee09bd4a8102d94a609d8e
28fb9f25176219c27b5c0d81dc58eb0596a32081
213 F20101114_AABCKY vaidyanathan_b_Page_052.txt
cabf1a9bff44dfcd06e06aafa5a013fa
feea1b746c6dc480a9294a33e06c200fadb925ff
78201 F20101114_AABBHW vaidyanathan_b_Page_037.jpg
2fc4c8eab5cfd13babae4a4d9974791d
70c2a9805c8a7a6333e82d4815c94f6f326506be
22593 F20101114_AABBIL vaidyanathan_b_Page_053.jpg
c11a8af6dd43f3cf17599f78cb81b52a
cdd49a800d2fad009aaacaf5515f97b946b12894
1871 F20101114_AABCMC vaidyanathan_b_Page_082.txt
5e59696a211aa519e8cfe8cd620b49c9
ace60aa61a2e755fb5c0d4a4a92b6fd227fc5512
2087 F20101114_AABCLO vaidyanathan_b_Page_068.txt
47df8cd461c3a3eac791fc71a1dc4393
1093937f474ccc5bb6266736ecb7f53789582255
1242 F20101114_AABCKZ vaidyanathan_b_Page_053.txt
bf90281ce51e1d0fdf18f3eaef24d1cc
171534d4c7729ee06b384dc361c2c7558270dadf
90925 F20101114_AABBHX vaidyanathan_b_Page_038.jpg
a878a05b8f5b818b148dd7b73e690079
4c1e00c4dfdf6e77e52c53d399058ebb67c32fb8
73869 F20101114_AABBJA vaidyanathan_b_Page_069.jpg
0de9d7eb381df1293cd9011b0035aa27
3dd6e8dfbddc827c048b7f5998b27a14c9b0b80c
48777 F20101114_AABBIM vaidyanathan_b_Page_054.jpg
73ed1150639fe6b5dcb4d6660c705afe
4968fb9545e53e9a77fef5d1043cfd45784bd8da
2174 F20101114_AABCMD vaidyanathan_b_Page_083.txt
4a20b2e4bf25f3f0a1913cfd7f5e6c7d
e54747a2c0a2d831f90f9ba64296bdda96e02f14
2081 F20101114_AABCLP vaidyanathan_b_Page_069.txt
22ebc8909726a5be9b27863f7fc30365
4dc4c6cf7922706c0fa3c71ca704511a49c577b1
76992 F20101114_AABBHY vaidyanathan_b_Page_039.jpg
258d955d85cac711c28f5cdf08c4d0cb
f00427279990523ad62222bcd679e9cfdc4d4b09
75221 F20101114_AABBJB vaidyanathan_b_Page_070.jpg
00833d28f3775ed425328cdd6bc045c1
d3fb5ac869153c29de9a9ac0be5edb3023269409
49639 F20101114_AABBIN vaidyanathan_b_Page_055.jpg
871e9f569f755388af92f770e6bdbaa3
691149d8b50b7f47828903f7464f3126a795f0d6
2045 F20101114_AABCME vaidyanathan_b_Page_084.txt
da7dc5e548d59bb4864d20a61581b22b
71b28283e8e76fa63a1166c2d3a506f2c5021760
2123 F20101114_AABCLQ vaidyanathan_b_Page_070.txt
0c7ffa7ab4a7199df7c65dc8a468c10d
16468eb07166e3b593e12c962a1a17ed6b681ba1
72981 F20101114_AABBHZ vaidyanathan_b_Page_040.jpg
46c1893a38135224572b18d876cc1171
749772175d76ce6d5cfc54deea325ac2146850fb
75332 F20101114_AABBJC vaidyanathan_b_Page_071.jpg
5bf7fed604488e8bb56ffea238293fb0
9d313562c39f54af23a776c4f1c36a3b5b25efed
22466 F20101114_AABBIO vaidyanathan_b_Page_056.jpg
e3a5102f1b71f43f1be37296692f99b0
362e287f8734a36d9a63fa89929497ff827eb2b0
2203 F20101114_AABCMF vaidyanathan_b_Page_085.txt
67769a593df1cd1bb1a8d4322e43c8fc
7a937f106439b95b783c2cc92729a0595b93322c
73600 F20101114_AABBJD vaidyanathan_b_Page_072.jpg
52abaeea804734ad396e9d6d834f5ba0
e6b5f869e6b01b279e9939da02eda3eca55693ea
2167 F20101114_AABCMG vaidyanathan_b_Page_086.txt
807c3aa025a38f1dbb533fab0bab5bfb
14df0b0f6a7383c126ccf8985945b723ff4b9acf
2107 F20101114_AABCLR vaidyanathan_b_Page_071.txt
bfc99b616885243aa67bd913ff26ca0d
420ec87cc2172df4a5545549e6d197b1dd43e31a
54431 F20101114_AABBJE vaidyanathan_b_Page_073.jpg
e10145c58daf1373477c968be636e7c0
ff6423c47f7a82d201e4567fb7a480561814b3aa
48838 F20101114_AABBIP vaidyanathan_b_Page_057.jpg
ff9b4ff0b7ed69d187d55358560638eb
27cf8c910bab362854e736cb479f4dfda77123c3
F20101114_AABCMH vaidyanathan_b_Page_087.txt
0f4226a4a53cbbec500163e965f505b4
b5e15a5c07ed61108abbd1858bc5306ec359febc
2088 F20101114_AABCLS vaidyanathan_b_Page_072.txt
f5c275812f5732500df2efbef6748a2d
ef443742847dda4514f86354e47ed08ada89a4f7
49320 F20101114_AABBJF vaidyanathan_b_Page_074.jpg
7638db62a11d18ac0ecba25d7e53d10b
04f7159db11ea6bdc8b71e0b3f4f277dcaf554ce
43222 F20101114_AABBIQ vaidyanathan_b_Page_058.jpg
730f532f7a2e3bec8c2db13961bdb2d8
424ea353be8fb15f0c3b76f0efb95e1fd8cb3b8b
1994 F20101114_AABCMI vaidyanathan_b_Page_088.txt
77c34fce9d6274ff64cee8ba77aee16a
261143dcfd3308bd1dd6d82220e7d5e1556d38e3
1543 F20101114_AABCLT vaidyanathan_b_Page_073.txt
6613a00f625aad55227b8bb6ee16adfc
e1f9ca462970de39f50c62c7e0152689e91414a5
79310 F20101114_AABBJG vaidyanathan_b_Page_075.jpg
f94677c8a5261452a8c86f90daba80ca
5188be693462384e1c3b5df1a6d251ba7ad8c9c1
34442 F20101114_AABBIR vaidyanathan_b_Page_059.jpg
f7ed51dac435cac00a2fc42528411745
0b1f8593c533ec52bc71d4f2dd19cf09f6f1023f
F20101114_AABCMJ vaidyanathan_b_Page_089.txt
5fc73d04eadd97b8c63ef7959a76c7e3
0989c023736be7873f6913c3f48828161379497f
1558 F20101114_AABCLU vaidyanathan_b_Page_074.txt
a9be87d898bfdda1d90c619dea1de35b
debbd37c6a443d42c927ec32c78ef9c1bdd1afcf
75338 F20101114_AABBJH vaidyanathan_b_Page_076.jpg
ce47b73efe6bf8721d650e5a28946400
c32bfc9d0edd83a1a9daade1022f38aad3e7db96
22788 F20101114_AABBIS vaidyanathan_b_Page_060.jpg
bb7d362058e13cc3b4959a39612a4ef9
af0f10bcc22135adbe4c1097673ef6e49a10f206
2052 F20101114_AABCMK vaidyanathan_b_Page_090.txt
56d78ca6112738125ea0774b34f5edea
f36ed00b4410145534c409bf28ccb45a108def69
2190 F20101114_AABCLV vaidyanathan_b_Page_075.txt
dab2b604092537cb6b880082a8ef33d9
f7e3458321f7b463b93fab7bdeb494dc4333a226
62296 F20101114_AABBJI vaidyanathan_b_Page_077.jpg
07af55e6d2c019e96f74235bfaf8ea66
0e82a12956eb2ff6d3e5b0efb8f39331ecc71a5a
77457 F20101114_AABBIT vaidyanathan_b_Page_061.jpg
ee2e784dd1a7dba4be7a2608f3205140
c56de1759e44dad9e522cca7e5819597042b4fdb
1422 F20101114_AABCML vaidyanathan_b_Page_091.txt
ea75ad9413be91f72ec139881dcf225f
109b4c2a78c60798dfaa2e2228df39255b04f13a
2122 F20101114_AABCLW vaidyanathan_b_Page_076.txt
ce075e2a5a47923abb6bf6f6dc489dd6
256d41a50b1b3350dc044cd10df5e52ef7ce80de
55466 F20101114_AABBJJ vaidyanathan_b_Page_078.jpg
2382f1ed75d335057e13685fdbb61b83
56a54faf501748e2fca51e08a7936b15ade7478a
94849 F20101114_AABBIU vaidyanathan_b_Page_063.jpg
4e9012cea48aba390aa309b5d2f04a0d
0f1cc9c17c2d2af20e3f3130d2d07a7a7cf5c5bb
1800 F20101114_AABCNA vaidyanathan_b_Page_106.txt
74c2604409606e976b299090131a0a4c
81fbea87e7621b331ee60049306a1fb5baa2275f
2286 F20101114_AABCMM vaidyanathan_b_Page_092.txt
6c4a4d5b86782a0c24345ad46bb1f79b
9b155baf9f5e606838e8a3b9a4836c8d4bcef2fd
1865 F20101114_AABCLX vaidyanathan_b_Page_077.txt
1702380f2932bf37a7596b2872fa89f0
d3da82f3dfcc25b368cc0702e3de7e8cce3b64ad
67246 F20101114_AABBJK vaidyanathan_b_Page_079.jpg
a29f75ba51c06a301ac538418fc73dd9
5343dc1f936ad1ea4b097d1aeb26fe2aa0669238
65876 F20101114_AABBIV vaidyanathan_b_Page_064.jpg
4b0b4d0e67e263d3463661ad4407e42c
33695d631e85bfc05848e0c3fef272b8dd95ef0c
2246 F20101114_AABCNB vaidyanathan_b_Page_107.txt
fc6130089035150943c695467aeb34fd
8d8299ae17e2a5a28399dfc4435eb37bd64db114
1661 F20101114_AABCMN vaidyanathan_b_Page_093.txt
edd5cb6701a7134f740c953f846c7c05
5cce4ddbe118d8d0c6efeb1478aacec9ea3c91d1
1693 F20101114_AABCLY vaidyanathan_b_Page_078.txt
acb6527ffaa8a06051cb6c6e63d5f322
4c886a808d0d739f9d1d71434bb5109e60105a17
76439 F20101114_AABBJL vaidyanathan_b_Page_080.jpg
4f5b362276491833bf275f1b0b70985a
bc92a64d3cd2b5ea1ad7207403e9ac73315bcf5c
58475 F20101114_AABBIW vaidyanathan_b_Page_065.jpg
69863b6843c0eaed3f781e160755151e
7fc6b18421dc8344ab077d6bbdf6872c858e10d4
2125 F20101114_AABCNC vaidyanathan_b_Page_108.txt
4106bc6561158c1e53a8fe5e7aa0b523
69e49dee4a9c3f37bb558f3706965bf578f897a9
1535 F20101114_AABCMO vaidyanathan_b_Page_094.txt
0d78bdd28323ff1b913d39c12ac61051
3359c8a3f7a8e5ed91d494746124d67d37bd534b
1858 F20101114_AABCLZ vaidyanathan_b_Page_079.txt
1dde0326e1d4749b4f2aaa6de90c6bec
d7476ccc61ff9bd465b3084b7ee748d62c2e16b2
41938 F20101114_AABBKA vaidyanathan_b_Page_096.jpg
3185f66864fce499f2f85c5464f47f56
4c851062175376770c46769aa95d483b82fc3be1
70863 F20101114_AABBJM vaidyanathan_b_Page_081.jpg
82241e6ea3503f47084d845b679fe903
8c5cd3b0df4f77ac6d1822cec1420efa3f374f2e
71995 F20101114_AABBIX vaidyanathan_b_Page_066.jpg
8adf952c79d68943b120d2c7b397d11e
27266ed7ac258029176c9047145951f33a1f48ef
F20101114_AABCND vaidyanathan_b_Page_109.txt
a796c2af8a01652610888cac7f352399
b70e391037641061d644c848165fc8660a53c145
857 F20101114_AABCMP vaidyanathan_b_Page_095.txt
18b183ac7ba3834c23ec5cc592a99b81
15dbd30e8014328869c7365d19a6d4041a2e7576
30398 F20101114_AABBKB vaidyanathan_b_Page_097.jpg
716ad1a485cd35b85ebd37bcf99bca50
2f5bd854e8bb5ec638b0ce691475dfaf508d45b0
65710 F20101114_AABBJN vaidyanathan_b_Page_082.jpg
56c0aa96806f689dea27e747dc526358
58753814d9f48b4ab925182107d7cb873b7760f1
69412 F20101114_AABBIY vaidyanathan_b_Page_067.jpg
49e0a0e8d494e6a1f03ece9fe75cdec3
575f3bb43aabd7708c9feacde181f04736c521ca
2049 F20101114_AABCNE vaidyanathan_b_Page_110.txt
56fd265823116d59e543d14e9621d023
301697b9e01a56dee2f1defa4fd7d769a9a49880
1272 F20101114_AABCMQ vaidyanathan_b_Page_096.txt
4c8aff4fa4adb7b6a700bb1efcf53476
bc33b4603412b2af76bbb761f96f9a78a10bc363
29484 F20101114_AABBKC vaidyanathan_b_Page_098.jpg
9db5222970c890ef12acdd1ce05bd5e0
f48169e2e0542b7810ac840be291cdc02a80b482
77378 F20101114_AABBJO vaidyanathan_b_Page_083.jpg
75ac876ecbd5b9fa061ed89bfd544c6c
110a3aa564b3cf270241ad98756133ee3d50926c
73692 F20101114_AABBIZ vaidyanathan_b_Page_068.jpg
33a8a8238bf5f4365b09bcf06d7e2bb3
db876a27b6aec0d34510ae83de12b24a0860ad04
2083 F20101114_AABCNF vaidyanathan_b_Page_111.txt
e9fd34aae75020d8090968bb001abd63
f1e5c3992b0086c05b94d8f041cbdf2ee08e5719
640 F20101114_AABCMR vaidyanathan_b_Page_097.txt
541dcb23ec0ee24202efe07b51ae34ab
7a9d547e07f3358d5ffc54cd0b19cdee36d39a85
77936 F20101114_AABBKD vaidyanathan_b_Page_099.jpg
26081940226dd5faf4771030b7fd4f47
1e668b642fc2797cc842d5912ead1c541af9babe
73295 F20101114_AABBJP vaidyanathan_b_Page_084.jpg
e7642fc7f12bb579599cd10a316763fe
0dd6a6380de8267180829d0c3247f93d237126d2
2004 F20101114_AABCNG vaidyanathan_b_Page_112.txt
3e0be85a14c0bac488e1ee5edbe66e1e
a0a9da4716a28d7f83af2e8134dc396ee6f04c04
77824 F20101114_AABBKE vaidyanathan_b_Page_100.jpg
23645ee98cd9e08ed9052ebbcebb9566
71cd797d6e18e22b8ed3070e3c904c03b897a39c
1495 F20101114_AABCNH vaidyanathan_b_Page_113.txt
0dddd8b33aa913edd804e218d41224f5
a3a75d84fcfd9c446b30d39592ecbebc77d77e17
488 F20101114_AABCMS vaidyanathan_b_Page_098.txt
25685637c6b0938d99795b7c6b0de343
06e8ca1d54fb9d9b40b32bdf6bed5c37b1575dc5
79631 F20101114_AABBKF vaidyanathan_b_Page_101.jpg
53348d37b7d07b3dd5053a35f2e9f4ca
ddd97977fe56329d3af2c470ca443eb454b98896
77946 F20101114_AABBJQ vaidyanathan_b_Page_085.jpg
f8ef4888077cc4df4991b5270f0f62e6
a4049b381cfa8f44b3bc67f79a5a819ea3edb2c6
1607 F20101114_AABCNI vaidyanathan_b_Page_114.txt
7378f1658a63b9d486b1f4e9ce352910
f9c8f623a2e7671e224801390ff9095f4430bac4
2256 F20101114_AABCMT vaidyanathan_b_Page_099.txt
fe3520bfa4bdd39c8b42da869e67b849
995bb45d1fa7a96c0fc7c01164810ca4869750d1
80556 F20101114_AABBKG vaidyanathan_b_Page_102.jpg
50a872bd446210a4777a83bb6d66077c
338033f2a4cdf875db74bdc9e2fb1673ed1d202e
77608 F20101114_AABBJR vaidyanathan_b_Page_086.jpg
538ad3f6d9f84cd886ee374364fb7636
6b45a4874acfca22c6d2d9a9b4767022acb6ce61
1737 F20101114_AABCNJ vaidyanathan_b_Page_115.txt
908aa3d2607b230026feb973e77a969a
93ff023d4e046a05951e43492c2883812dbcbab9
2143 F20101114_AABCMU vaidyanathan_b_Page_100.txt
b848337096eeee5729d5bdefc8a30906
cb31471996da67eca7954b146980806ce864c355
82327 F20101114_AABBKH vaidyanathan_b_Page_103.jpg
adce1deda14b81693e4c54f8c9dcbc1f
d19527f4b2130917268938cde45b6024163e90fa
71666 F20101114_AABBJS vaidyanathan_b_Page_087.jpg
fb92e02c31ffd2d03251a7858a446194
f710c71e7650271b4ad2a1a1ed128d4caf1ec331
2142 F20101114_AABCNK vaidyanathan_b_Page_116.txt
4bc94d9cbb341f193ce72e504ef8576b
1336577806c8c7265decbff2456c5496c8c54d57
2216 F20101114_AABCMV vaidyanathan_b_Page_101.txt
b0b89307718c42d86890d5561aa8c273
ccaf4ba3a7f7d0803ad7e27ff4d0eca124478a15
78328 F20101114_AABBKI vaidyanathan_b_Page_104.jpg
6174be6b305d47e2bf87eeb9c42e1ad2
4569a92b669da5e34b6072a373c4575421720a47
72131 F20101114_AABBJT vaidyanathan_b_Page_088.jpg
d2ec0e3f0b1558ea3da33b50bb8278a7
e4e5ee0c7abf0e0abcf66cfc175a609a59709b36
2263 F20101114_AABCNL vaidyanathan_b_Page_117.txt
652dfdbe2c432361ca3cee3bd77928fa
6d70a5e302c3f2e5a081180f35388f1b7deb1cca
2262 F20101114_AABCMW vaidyanathan_b_Page_102.txt
343f4c6a436069ab4db585224d5e374b
226cfe756d31433c08a232e5c46e1b6613f17192
68149 F20101114_AABBKJ vaidyanathan_b_Page_105.jpg
05f684666aafa6c6417efce217758d03
9c8711af6551ac64d723168ebc4b054283f2b2b9
74014 F20101114_AABBJU vaidyanathan_b_Page_089.jpg
16d9e1579bb705883a9e1320424f95ae
7785517950247a2d9a79b4b745423614a73b6917
2311 F20101114_AABCOA vaidyanathan_b_Page_132.txt
91bd87bdcd0bc4d57d53ec2ff376a7b1
d24b9d2023778cd3cddf1d3f609ff2d11a6baf6f
2388 F20101114_AABCNM vaidyanathan_b_Page_118.txt
cd64412972e6850c05ee3fda53e851ad
011872b98f5b1ceb70b5c49c093d182422e358b9
2278 F20101114_AABCMX vaidyanathan_b_Page_103.txt
342cd33e14e9c53bab2351a31467edc2
57fa86ea2f1fcc64ebb948f284721703b89156ea
64466 F20101114_AABBKK vaidyanathan_b_Page_106.jpg
36aadcb28ed927eabbb4e445b5805886
61be7e57ede1f303e24a1d3934af92c10daac4dd
72742 F20101114_AABBJV vaidyanathan_b_Page_090.jpg
06f663fa80b5d4f3783fcddf65d5b21c
277865cac031ad8e4b9fe798c8f4f831b3f26eb7
F20101114_AABCOB vaidyanathan_b_Page_133.txt
c0c6c93a01bdb1061b6faee656098317
7561ecee39702502da3d4a5ef8c1ecace5ac5967
2046 F20101114_AABCNN vaidyanathan_b_Page_119.txt
fc61d2138d6e82d4fa041b5afab56199
202b11d4d4fad2ab0052a636d530346082b3bba3
2220 F20101114_AABCMY vaidyanathan_b_Page_104.txt
9cae20350830956f076ab54656fe2a1c
7e981bb290d26aed5227128e216dc0661ad52595
78846 F20101114_AABBKL vaidyanathan_b_Page_107.jpg
fe294d20e3a1fd7ac84a792ce709e1bf
f79ee1dd82421432ca71c36f09a4c936dc482c7d
53555 F20101114_AABBJW vaidyanathan_b_Page_091.jpg
c910c61c8e592d37693a06d10f3be436
2f10a78a6e8fc06da7f2a8bd845f4169e2e2b29e
1889 F20101114_AABCOC vaidyanathan_b_Page_135.txt
4e0a7c3f99fb6ff32a352fc3487fed87
0a93ea7317377e73a8c95dbbc22a53326e997a4b
2138 F20101114_AABCNO vaidyanathan_b_Page_120.txt
b23dcb63ec808f377dd2c10305a7b7fd
66321cf7ce18147dadd65d97fe166ebdc6b9ebc4
1923 F20101114_AABCMZ vaidyanathan_b_Page_105.txt
d7a48197ba8f9b2c596ba1a4a0df94a4
ee96d9a5595dac33a6ceb0e536f7fe2a713560ef
75184 F20101114_AABBKM vaidyanathan_b_Page_108.jpg
0e85cd10d12c89699e83868a483243a2
d863fe8437c3511fcdad26bfb260e970471eeb29
86185 F20101114_AABBJX vaidyanathan_b_Page_092.jpg
f13141c67d1dfe23c07563cb16b74b75
60a5a40dab416880587d3d7c4399ad9eb5ec65d9
73851 F20101114_AABBLA vaidyanathan_b_Page_122.jpg
db4a99d69f1e3db695a65c73f7ce94a4
abf6925bec8dcf4bdd26d182a91cf96dc358a024
744 F20101114_AABCOD vaidyanathan_b_Page_137.txt
69ceab1b3313f8fa2c477d5663454adb
048e040555552f222e2c4cb8baed1368de8acaf4
2223 F20101114_AABCNP vaidyanathan_b_Page_121.txt
9cd0278180fc9187320b4fc36ffa231d
8040da15de0b04f8a3c305fa68a92b53af615241
70363 F20101114_AABBKN vaidyanathan_b_Page_109.jpg
260aeda5ba35235cf6deb0dc8bbfe42d
bb836d6fbda03419b9f1a1f9d832bf5a809b418c
46733 F20101114_AABBJY vaidyanathan_b_Page_094.jpg
137fbfa3cedb2ebc1aa3e78302c3f6dc
b84d50ac9039c17c70504a0da12d3de7c554a491
76655 F20101114_AABBLB vaidyanathan_b_Page_123.jpg
bfc2d09484899a2ac388ded8d4c41358
ef1909357da9d3373d2e2371bc4bf7bc21e969ad
862 F20101114_AABCOE vaidyanathan_b_Page_138.txt
94eb6890a12bed90b453583a4f951905
7a041a8b41df56994b912225ec50929962285629
2097 F20101114_AABCNQ vaidyanathan_b_Page_122.txt
fee3d1c8e4687e6b712cd01f04d85caf
6e2bde0d3bc0554cdc816e881f789b11588879f9
69724 F20101114_AABBKO vaidyanathan_b_Page_110.jpg
d5ecb70d2391f01865e0409921689294
247c43ec1323e01397686afc76f69a15fc1216fa
34404 F20101114_AABBJZ vaidyanathan_b_Page_095.jpg
54096486eaf4904edec4c78e467cd2b2
b55b4a2fb210531398016c8e09fca79f5dd49b81
54582 F20101114_AABBLC vaidyanathan_b_Page_124.jpg
6129ba798955d2cb186362a77c7175c1
6a3a33b1e4a0ea34ec6e3a1fac87a787d677e0b3
963 F20101114_AABCOF vaidyanathan_b_Page_139.txt
8c92466b24ad8882f6e7799d9e523c0e
dde69f77caf9f03df216be2e31b539fd0c60a1ab
2168 F20101114_AABCNR vaidyanathan_b_Page_123.txt
dfeab397dd6c8b112054113801552e37
d0dbe2bc4b4a0f3aeaf235ec607544e66e2d48b7
74447 F20101114_AABBKP vaidyanathan_b_Page_111.jpg
7cb2a985ad1d87e849aea5e02f2fcee1
527f43c5a02ce24ddc7be02d6e2a9b7e49ddc65d
61455 F20101114_AABBLD vaidyanathan_b_Page_125.jpg
7854605c6e4a0264d31881bcfded7fae
9e52caf2e42c0b15d915c1b5df717bcc88a00693
318 F20101114_AABCOG vaidyanathan_b_Page_140.txt
1c7d41fde414b5d6351eee2593c64b27
2afe396a80691ff7e9f731323976be24e4e4a68d
1461 F20101114_AABCNS vaidyanathan_b_Page_124.txt
1fc84a9682ecfb75aec80bf3d2f0ce12
b6a5cfcac19864cc38665ed56f7728f77f35e206
70229 F20101114_AABBKQ vaidyanathan_b_Page_112.jpg
682639986d1efddc555149c8e2fbabdd
8b12713953092ce6e26dcbe00857b4454f689c34
72342 F20101114_AABBLE vaidyanathan_b_Page_126.jpg
0b0b7b88ff591d5398e8662f16f01b55
3ad4459ed7e7864e63b492355d9c4ff6f84feb2f
907 F20101114_AABCOH vaidyanathan_b_Page_141.txt
6ac1ce5c50fc7056e8aaf2a882b33a96
c201439528fbddc631578506186d3090b4002ce7
93581 F20101114_AABBLF vaidyanathan_b_Page_127.jpg
ef0f01658d3e0989d04660064316db6a
a288b8902ccef0d2724a4aeec4b453783f591892
240 F20101114_AABCOI vaidyanathan_b_Page_142.txt
66605849e46cf61e2b68cd75fb5ba9d5
3cd63a65e026b3b3e740dcf1dbef702d7f2cf74d
1811 F20101114_AABCNT vaidyanathan_b_Page_125.txt
0a1993c13b8928dcde59106dd4497ece
246eb1ad364c8438e26909327918891f24f82286
55292 F20101114_AABBKR vaidyanathan_b_Page_113.jpg
41dbd3a5df983c09cb31350452d649c2
4e2153bd87b438954f01795c5fc28cbc876eaa59
72690 F20101114_AABBLG vaidyanathan_b_Page_128.jpg
da93520b71be3bc3a110856f59a77a75
159ec0082e3d3258fe02e0eca490dabfc1b7feab
790 F20101114_AABCOJ vaidyanathan_b_Page_143.txt
ce8429c32a3f17617236266a6df2cb77
3a1b7781f1fc66204d8c148ccd235f36c889dcfd
F20101114_AABCNU vaidyanathan_b_Page_126.txt
9e591644ca97c010fc23189c320bc5bc
533c2e366ba77b7f1b8b08fc2fb2e3882d4d450c
56186 F20101114_AABBKS vaidyanathan_b_Page_114.jpg
5568926e9aa5a324da173d910e86060d
447ce92b2d75ee670b0f4a14a46c0392bdb0bc81
69190 F20101114_AABBLH vaidyanathan_b_Page_130.jpg
45a0c96d0c1a99fcb2ffd4303dd03a18
fe2113d98c2ce2f12b33b8c15f0d2a788cad4201
322 F20101114_AABCOK vaidyanathan_b_Page_144.txt
009290329571973491ce08ff11fc6b77
7bb656be147a3e9e548390fe64f6cc235e846885
2830 F20101114_AABCNV vaidyanathan_b_Page_127.txt
cf5fc49e95aa05bc5a029542404ae6e4
8c0ad674f84f75d7c48ba7c55d0cbac34d7da222
63522 F20101114_AABBKT vaidyanathan_b_Page_115.jpg
7074a5a8228a95e068ee98767f5b2202
28b06aef777abfbc24b6230a255ed4d3a466aa6d
81903 F20101114_AABBLI vaidyanathan_b_Page_131.jpg
d41da0395b1ae480adcaf0228fba92cb
a63520225e2de103a431a7e4e14178c1394557fe
2211 F20101114_AABCOL vaidyanathan_b_Page_145.txt
9c19bef01d797dacea5d848c75d26a07
dd019001a50d6b6bdf060f0e2f25b1a428756ce9
2156 F20101114_AABCNW vaidyanathan_b_Page_128.txt
c1605c3d21601649e13ffd8a81d015b2
2134de1eb9631ac00aa64d7b199574fb5f6b3fac
76468 F20101114_AABBKU vaidyanathan_b_Page_116.jpg
b8c4a15d93765b9203a7e621d50cbca3
dc338ee344065fdff798250d32f80d7c1294afed
78879 F20101114_AABBLJ vaidyanathan_b_Page_132.jpg
034013efbab5b87723a5463c02e8327a
eba2dcf7cdb8548f4f538b02cd7a643b05ff9119
2109 F20101114_AABCPA vaidyanathan_b_Page_160.txt
2ab8f5d294a05a2cf6cf99e01e2c0338
f81944042c608365bdf7d0d55b5b4b121f6315ed
2075 F20101114_AABCOM vaidyanathan_b_Page_146.txt
d7ec64f6021d606ba832db05af516cdb
4d6269a1c3dd429fd5e36b7f12e239786b4534eb
1913 F20101114_AABCNX vaidyanathan_b_Page_129.txt
3726d1c00cc26213165aeac18be7c8be
ec674dc7abb4a3556d99021937db4f954788229d
81652 F20101114_AABBKV vaidyanathan_b_Page_117.jpg
b5461d093ee82c6c6b0aac4143fd6547
7697671a4e9ab016d6bd6d322de4ee7565a18540
78865 F20101114_AABBLK vaidyanathan_b_Page_133.jpg
09263d21420da75831dcd8aac1342d2c
626dcf2a98aeb7f22ba277d2ae537456a3b59228
2145 F20101114_AABCPB vaidyanathan_b_Page_161.txt
a35ff870835753094d9b2cc7fffd63be
db5d437249dbfc453696e3794850f1866f11431d
2148 F20101114_AABCON vaidyanathan_b_Page_147.txt
ff6ea64e6d82d0f9384242eb46d0b316
2415c8b473903f796ae0ebb54c921f0bb405462b
1959 F20101114_AABCNY vaidyanathan_b_Page_130.txt
94ac28289c15a1202e74ea8b919c05a6
b14c75871cbd555a5efa8a6c9a337c261d9a1b5f
83844 F20101114_AABBKW vaidyanathan_b_Page_118.jpg
8de18a6b7d76d02486973ffb1c329fd9
4114f1dc814c3a5094350cb9d0433dc1007c68df
16368 F20101114_AABBLL vaidyanathan_b_Page_134.jpg
b4e10350da482addc5645388015e8e51
5d8454ccf3d7188b88555152afdb0af3453eda41
1668 F20101114_AABCPC vaidyanathan_b_Page_163.txt
2a9ad5676c507479a92d51edbaab1cae
ecba344cbd31404716dd68020d9b4d4a2baf1818
2210 F20101114_AABCOO vaidyanathan_b_Page_148.txt
41a97716c6ba354488cc4b2a88f485c1
664e215c842b9b977ef8e3ff1aeb1e8c98640ff5
2327 F20101114_AABCNZ vaidyanathan_b_Page_131.txt
8388dbb9ffe0a58defa21c592bf0e037
3bc6653d87f6883c21140f4d6ebb441453bd8c92
74439 F20101114_AABBKX vaidyanathan_b_Page_119.jpg
43560385206ce75194f434eed1612a75
f3b2f7328c7b825d34afe8cb3c1e19e8fa61c225
75035 F20101114_AABBMA vaidyanathan_b_Page_149.jpg
79573c54d853f43df9f1912f4ca9c42d
acf2ec062a490524edf0bd3959727aef8e2ae616
67303 F20101114_AABBLM vaidyanathan_b_Page_135.jpg
b600eb0c9fb80f17a566c3f38b91a667
53ffe4ec5b6f198303d162c73bdac35e958803cc
2146 F20101114_AABCPD vaidyanathan_b_Page_164.txt
22ed6d3f40f273ac690c3536db65b9cb
7c4a357edc03a06be6914718ebbe38363e0a9bb0
2120 F20101114_AABCOP vaidyanathan_b_Page_149.txt
d70d1f8865a933e1fc9486fc67e51dce
a1d149922a934ee739cb054b5d84b509b1360fcd
76031 F20101114_AABBKY vaidyanathan_b_Page_120.jpg
968990c91e7b9521d96289c906d49b3b
da6335c4e812afc4aefa981cb4b8d712c1a94de5
66537 F20101114_AABBMB vaidyanathan_b_Page_150.jpg
ed1f621b765b2a5ef3f4828a0edba2e2
521683b73572c40667ba4c6aa5e83a46c0ebd514
28441 F20101114_AABBLN vaidyanathan_b_Page_136.jpg
96229644a349e802da18bc3b83078927
b7aa13eeb2913922a83a18361dfd06093db885f3
2093 F20101114_AABCPE vaidyanathan_b_Page_165.txt
9e997280c22d8d871467b4a317911d38
a31303ba16a68a30d882427d676bed0e3f012b78
1803 F20101114_AABCOQ vaidyanathan_b_Page_150.txt
936efc18496c35093d21a670b622e6ab
ebbfe53d1f1f8f792ee896e041954c81bfdad391
78401 F20101114_AABBKZ vaidyanathan_b_Page_121.jpg
bc87202ec4251048b8655245b586a8b4
c398dff73d3ca9da55c6720e802958612091eeb4
65161 F20101114_AABBMC vaidyanathan_b_Page_151.jpg
8ee9e4d4825bb37f866df30fe4bcdc70
f9c363c056fbb831c03dfb4f85df3fc19399af0a
34400 F20101114_AABBLO vaidyanathan_b_Page_137.jpg
b34140dd3287e6c245947943f06e5473
ec00d013099445f958fa26733da0dc046ee7d6a7
F20101114_AABCPF vaidyanathan_b_Page_166.txt
1102c1c82f88aadf06827cc17daf824b
305340d4890d073bd0973afda7b977f0fc8ada9c
1725 F20101114_AABCOR vaidyanathan_b_Page_151.txt
1e8795bbe0e3e527d200ce8a882223ad
8c0f9adfd548193419fa6baa80ed490d80a4f2ae
54280 F20101114_AABBMD vaidyanathan_b_Page_152.jpg
af0741850419e19f775ab17f0e1ec08b
70faf4bbdfb62a173512ba8962f9e976795da644
26340 F20101114_AABBLP vaidyanathan_b_Page_138.jpg
ae72eee1fa0d7c73a786515e738c3722
7dbfcd252e0facb35f1c388dc10423eb1a3ba11a
2096 F20101114_AABCPG vaidyanathan_b_Page_167.txt
02f23ca8fbaedead60997c94af339592
1f6901ae5b98906787bf991b693f7b06fb314d0f
1636 F20101114_AABCOS vaidyanathan_b_Page_152.txt
c6469c0f0a07538c6fa8fc007f1fdfe1
f587952b84bd349a9486993821b9734b1dce2d67
79324 F20101114_AABBME vaidyanathan_b_Page_153.jpg
550d5af1b3cc65fc718457ddbd440939
45a293071ca865bb50552ce8a4b0719793bd27fc
27261 F20101114_AABBLQ vaidyanathan_b_Page_139.jpg
e176fd96fb19342089dc072d19164357
8dc7d5df813ba50a5345e792b09267ae89d3e23b
2115 F20101114_AABCPH vaidyanathan_b_Page_168.txt
a8d82f47090e1cadc582e53d30f2826e
e6e440ab6efd99d13a294b7a52b57b1e4e082b5d
2193 F20101114_AABCOT vaidyanathan_b_Page_153.txt
701b8eae61bd1712e76e24751bdb8d3c
22020a0734bf4df6117ce85dc36be37a57475789
75379 F20101114_AABBMF vaidyanathan_b_Page_154.jpg
15f184ca7d7d938eee4abd1a36fa9e22
3991d024e0335d87a352f84ea4066008a125894d
38379 F20101114_AABBLR vaidyanathan_b_Page_140.jpg
f69385593ce51ae6abca516b7a07a529
22128cadbc3ba77243ec1ae3d945779b1e8a63bf
2035 F20101114_AABCPI vaidyanathan_b_Page_169.txt
f7964eb023a80d93e91a03634e43f133
45d1d2bfdb65ed4f4cd292fe980e88a1fc2e43bf
81949 F20101114_AABBMG vaidyanathan_b_Page_155.jpg
f91251f0aecce7c2474f6a8e6d37ee19
4aa6258473105f9ef10d06309ce32113316f4152
2201 F20101114_AABCPJ vaidyanathan_b_Page_170.txt
ddf46344e93ce45ff19d5c2e832a4ac1
ac981725b8d7ef1748855ac548aaee3629af4fdd
2108 F20101114_AABCOU vaidyanathan_b_Page_154.txt
f4645a031425dce6051eb5ea696200a5
5206d4f5d81d29f17e5ab56267503af93cfa575f
54530 F20101114_AABBMH vaidyanathan_b_Page_156.jpg
90c5ddf13d95a6589e724275b3555656
a047a92a0fc3df3b34cde17fa34a62338e4b2b2f
34133 F20101114_AABBLS vaidyanathan_b_Page_141.jpg
15acc8f1c683b9e5a23978faf8929451
d7faf896053ef07b118c9718b8fe233bcc1bde0a
2161 F20101114_AABCPK vaidyanathan_b_Page_171.txt
e68a5eed486caba1d3640e55112cffe7
091daaa87121c90599b4082c543d9b4206ccc5c8
2251 F20101114_AABCOV vaidyanathan_b_Page_155.txt
e26c592bc5a3e98c527aba76b97f1fa6
78e396ef58db10bf6f34c5ac608eb9199c5e6415
62480 F20101114_AABBMI vaidyanathan_b_Page_157.jpg
8415af83401664a1a641a0cb7d6c518a
1c0480ee9c1a9cd7d0cbf1aefa765f72738f53fe
22538 F20101114_AABBLT vaidyanathan_b_Page_142.jpg
8515bcac536a4d46f62b8af5d86415b8
affcb2f18260f99ee6ee06b11aad4c90c2aa5d58
2250 F20101114_AABCPL vaidyanathan_b_Page_172.txt
65d7a22bd2c800b514e1178c871d7578
b7fb5b944c60bf8eef5236da4625d62a5277e48a
1529 F20101114_AABCOW vaidyanathan_b_Page_156.txt
dc2c0c70d764d7d19befb318a649a63d
83d8c5bcf05f4e0209a3aa11e14b17fe56c2dd7f
76898 F20101114_AABBMJ vaidyanathan_b_Page_158.jpg
04077826c2b7b8821ba329382434bfcf
8679369d3a90de488099ffb4e21128dee9bf4a81
33652 F20101114_AABBLU vaidyanathan_b_Page_143.jpg
786942c4dfbdd0edfe9bf664c19b92cd
e250d0f17d8ec97c2cc4eb6b687075dc53a1e0fb
2413 F20101114_AABCQA vaidyanathan_b_Page_188.txt
ec879e4f3c7690f6cb0ac056c72ec99e
73620ba8ce614c554a8ab49c7cef5db0018b9f30
1863 F20101114_AABCPM vaidyanathan_b_Page_173.txt
86296628be264e99f81ac6e58a11f7e8
9265394825c6a1276a4b8e5725149900f0de6637
1795 F20101114_AABCOX vaidyanathan_b_Page_157.txt
4dd3173edd4396e03a1893914b6803bf
e3d897d75c06f22102500af6e5a8ff1fdd037671
71119 F20101114_AABBMK vaidyanathan_b_Page_159.jpg
c17186ed88fbfefefd2a458501bbe742
428019091c9f134cfc92ede476f8c1807e268c48
22306 F20101114_AABBLV vaidyanathan_b_Page_144.jpg
500da803a34ba4077cfa072855df8c6b
07b855ea72cf10a6dc2bcbe050b7e1f1a32589c0
2404 F20101114_AABCQB vaidyanathan_b_Page_189.txt
dcc1bebde243b37fec3961acc032491f
b645a7400cb2d74b9e5ec8c6c86488f7a9dc10a9
F20101114_AABCPN vaidyanathan_b_Page_174.txt
f639947034b043c10e9dc6a89772183d
1d58c6c3ad7f079c49a414cdcdcc9d64783227f6
2155 F20101114_AABCOY vaidyanathan_b_Page_158.txt
ade0c1d1aacf9696312209bf91c25329
d82e057ff06e2da23ea7e137205555cdf4799a7f
75998 F20101114_AABBML vaidyanathan_b_Page_160.jpg
2b42c14ff9eeb036861d4a69715088c2
c0f7df783dbcf8afd4b9fb4790e6e47738a8b8a0
79802 F20101114_AABBLW vaidyanathan_b_Page_145.jpg
1f548ba5ceb682717efc8cecfda08334
b731164a44867b534b876fa5fc992262a37a8365
179 F20101114_AABCQC vaidyanathan_b_Page_190.txt
165d52b59527a0b0c13f08ffe70fae13
3a0f8c1f4165b8108d5192e81ceb594efc00ccd2
2227 F20101114_AABCPO vaidyanathan_b_Page_175.txt
de26dcb0038631499291079f402874c0
900df3a8fe4b4f6ecfab8b3c210fd9a75b2d81ce
2025 F20101114_AABCOZ vaidyanathan_b_Page_159.txt
56fc9ba9421a0e7a3b2e7be75118bfb7
9fd1dcbe6141222392e4d47882880cbc70aea636
76621 F20101114_AABBNA vaidyanathan_b_Page_176.jpg
92970ffd8729f2641cca189e88adb362
864c5406fd0daa220c686b165d90373b2511acd2
78475 F20101114_AABBMM vaidyanathan_b_Page_161.jpg
2aae3ebc628f489d9af3c6b597eafebf
327eb4928fa39617340bdef497291bfa67a7d7eb
78636 F20101114_AABBLX vaidyanathan_b_Page_146.jpg
d776507cb41b789ea48685d38a5b9073
978dce483587431c3143e0626c8ee45c6fcb6583
935 F20101114_AABCQD vaidyanathan_b_Page_191.txt
937b67ad643b41b0a66fa3e03850e701
4050d95b175c6ae8a6eb6556414e7b38a036c412
F20101114_AABCPP vaidyanathan_b_Page_176.txt
75f9b30909aa58c90a9d5cc67193a108
975f6b474bc716e0d7f2bbd0128d4c2217dbe0bd
76585 F20101114_AABBNB vaidyanathan_b_Page_177.jpg
bf224ee4ffebda368cee5ce0dbd1a917
65baec5a65dd05a163a0c8f046239b4e630acb4e
76279 F20101114_AABBMN vaidyanathan_b_Page_162.jpg
c054a60a60f26a0eb81b2812f95346aa
5cd1fd4cb622a5d222da10f544f803bb0763f6fb
80686 F20101114_AABBLY vaidyanathan_b_Page_147.jpg
54024b587c025a642188432ce4a86100
c6903cbed8478e983bf69010a5d65f553e67f579
2358 F20101114_AABCQE vaidyanathan_b_Page_001thm.jpg
d8c34d1a95858c6eeb74ddf6183b2041
ce6e67649dc084a09c665c774db5adc940cfdfbe
F20101114_AABCPQ vaidyanathan_b_Page_177.txt
c29e5414c801bb58936d879fe3c264d8
120b9e0a17cf29568d7246fe76f6f5a48b9b1899
79371 F20101114_AABBNC vaidyanathan_b_Page_178.jpg
f36ed576497edf382dcebe69be31cf3d
de15fedc8188a7f2e657b62a127a813c1e62f0d2
59737 F20101114_AABBMO vaidyanathan_b_Page_163.jpg
a5ad5a9c54aabed54fb7bf608183df63
7a965356bff3b33d9592a089522a3d45e43ddf32
78842 F20101114_AABBLZ vaidyanathan_b_Page_148.jpg
4841506a93a101055300a43adfa8f5d9
0e9eed39e090cab75d234fb070a8baaf52c9b5a6
737961 F20101114_AABCQF vaidyanathan_b.pdf
c7e0d64f33d4a0e5291a338718db552a
414c54cc915471416787a14028efbea5b915ad17
2209 F20101114_AABCPR vaidyanathan_b_Page_178.txt
eded27cea27ff880fd15b5898c7c0305
0038233fb687b7103c1f4eac63d3903bad06bc02
53699 F20101114_AABBND vaidyanathan_b_Page_179.jpg
79b87b4322853d3c3b44920a9d4f7145
d6319eae6f7b29746eea4606c0e0708847eb886f
75911 F20101114_AABBMP vaidyanathan_b_Page_164.jpg
5a813dd2fbec09446b8689eafae4abce
691dcd6d20ded88528c11fad7a46d3f69ee09193
7481 F20101114_AABCQG vaidyanathan_b_Page_001.QC.jpg
064a069a2b1d534d77653449ff614825
63ea931c439bb6b49f35f44d2d93a7fe1b582a88
1414 F20101114_AABCPS vaidyanathan_b_Page_179.txt
d544ea60a52257b1b4198e27caf72892
6bf6df4ed0976a13d25c02b7422948bb9bb5d529
30614 F20101114_AABBNE vaidyanathan_b_Page_180.jpg
79104c03e6ce6c3e4e3c7b29bb89c41c
c57003ed755b7dc2dd43ee8fdb6bd6435fa33dcf
76896 F20101114_AABBMQ vaidyanathan_b_Page_165.jpg
8e24cac896c5fe39db1ffacbb6309c88
ec67557c15551b9fb6b2fa314cc9025400d9f146
3165 F20101114_AABCQH vaidyanathan_b_Page_002.QC.jpg
037c9ce3250c292dcf4bb007d58faabb
19f884e942b660177673abced3b861b080027de4
801 F20101114_AABCPT vaidyanathan_b_Page_181.txt
1cf47aa9ed4767b1ab54ab6e36e67168
0e2a73db6681591bbba0c3e4c899177885026ce8
34073 F20101114_AABBNF vaidyanathan_b_Page_181.jpg
bb44430fd96039a7580a4063cc78cafd
747cfa4ba5f655574806024cf0d2a600ae936081
74622 F20101114_AABBMR vaidyanathan_b_Page_166.jpg
83344abdb2c3d7130576965a5ec5d547
92e694a9e308acea7fbe8435d8bce93d6d692780
1349 F20101114_AABCQI vaidyanathan_b_Page_002thm.jpg
e3970715ee1d9087e5e8bc75387fb5fe
e31614c5c695caa026a79150ebbe51695d525823
416 F20101114_AABCPU vaidyanathan_b_Page_182.txt
a200354978315adf2486d86fef328990
54ad699af565dcd22b6ce2268223b12dfd432da5
76741 F20101114_AABBMS vaidyanathan_b_Page_167.jpg
f05b8dbdae13b9fabf905a3a9752a7f3
f729453bb76258a822f3f2c350a00356666f6c23
21806 F20101114_AABBNG vaidyanathan_b_Page_182.jpg
c3f17abcbb30d455d6dc0b131d0b689d
2869ebf7221db41dc94018f0c74c86be98d6030d
2961 F20101114_AABCQJ vaidyanathan_b_Page_003.QC.jpg
bbf686dcc723330dea0fa0bd77eea0ea
172f392dd590a64a821e71b5c2614e5eadbc9878
85115 F20101114_AABBNH vaidyanathan_b_Page_184.jpg
7ff7ae794818d3eb1c107338b0979f09
1181b85676284019e58d2c32e8575679c3cb2a95
1305 F20101114_AABCQK vaidyanathan_b_Page_003thm.jpg
da32310022f06ba198495b415705ec8a
f42f09c7a32fc582c2d125aa2195384862626f2f
2468 F20101114_AABCPV vaidyanathan_b_Page_183.txt
58ba338ed45e61b0c875a60c51bc9f98
89f237c1dcc17b5fe91edb40f415dac641e59fc0
73320 F20101114_AABBMT vaidyanathan_b_Page_169.jpg
2f933b22fb2dfb38ccae3912db64a42c
ad544ab8ddd1256cf76938ebde1724ae96d0c5b9
90124 F20101114_AABBNI vaidyanathan_b_Page_185.jpg
e0bba2cc3ee4291d224a19089f9439bb
6bfb0413cb52e6c374e756dbb20ae42082c35363
17426 F20101114_AABCQL vaidyanathan_b_Page_004.QC.jpg
6fbc3b49de6204bacbbfe8b4613cd5d2
d762c54516a0e1d6c207f18d986e2d1bc9dcbd96
2389 F20101114_AABCPW vaidyanathan_b_Page_184.txt
c7972a43cde401bc34b8849b3f5d31d1
a516eb71df30ec0850d48ebbec33387d64afa515
79583 F20101114_AABBMU vaidyanathan_b_Page_170.jpg
75cdf07e6261c53ed890e495b02d3be9
9ec0d129fc70bf80a2bf0e804dfa68cc4101a0d3
81730 F20101114_AABBNJ vaidyanathan_b_Page_186.jpg
62c985ee434ba8f12295d73baebac1ba
0c65a3f3acb2ddc2f08924fa0669cca7242b0e08
6314 F20101114_AABCRA vaidyanathan_b_Page_011thm.jpg
e1626d9cb146a240ddeef6c6ef90c9be
a74aa1eeacd498218cc1636744e2cc84e2a1c9b2
4930 F20101114_AABCQM vaidyanathan_b_Page_004thm.jpg
a633b92c75f1ed6bf741198289ef2a6c
6dedd635f00fbf7b58d135dbf5760577e6a8ad1c
2543 F20101114_AABCPX vaidyanathan_b_Page_185.txt
a4a4275a1aa2ffc06e311f41cfa9f7df
c1748a05c1ba09504a7f15f4b5284688082e6580
77431 F20101114_AABBMV vaidyanathan_b_Page_171.jpg
2cea5e1f246f1b5a0dac1258f45f37da
8b70a73766ffef7cb80d73fe9d85a1ea86c86bc8
84271 F20101114_AABBNK vaidyanathan_b_Page_187.jpg
cbd836e3572756a7ff7be9f87381d3f6
46444e9936ddf44bdf77fdfba5a51f8b03845383
11141 F20101114_AABCRB vaidyanathan_b_Page_012.QC.jpg
cba4cc1907f339a390fea491103003d6
76213ee3be6be55ed746d96097c1d23c69616c31
21756 F20101114_AABCQN vaidyanathan_b_Page_005.QC.jpg
4cf9181518c1bb47411872ae08390c9a
564e0bead15f2991764b8247f4ef54c7de7f7786
2346 F20101114_AABCPY vaidyanathan_b_Page_186.txt
d8ff65e11388f7df2ab434458a4c8c6c
ea61585df23f6206cb44d072bf69cd5e6a66d69a
80529 F20101114_AABBMW vaidyanathan_b_Page_172.jpg
c426fa604f5736f9f6faf082ffd927cc
6085a84a83bee315440a1ea45a6502504c930bb7
86313 F20101114_AABBNL vaidyanathan_b_Page_188.jpg
618cb535d8e5037f3ad54f0197707158
4336a6bd6f89a491184e2ca1c8d93317e39d8ff1
3335 F20101114_AABCRC vaidyanathan_b_Page_012thm.jpg
02093c72c294014eb362de5ae4656fe7
9173308b95ade5a7d50e9839a47c685afb6679c4
5578 F20101114_AABCQO vaidyanathan_b_Page_005thm.jpg
7a22367e25adc58332727af0c971d385
7f76b12bf278477c2a5a81113f15ce9c11cfb3e7
2465 F20101114_AABCPZ vaidyanathan_b_Page_187.txt
c2feeb7c16fc269baa9f49782af22a02
a4ebd5ae3a573d99fcdc33a23db1a7efdf83b5e3
65680 F20101114_AABBMX vaidyanathan_b_Page_173.jpg
8a7b7fbae4101c9eb579f2bf21ec50e1
cf4ee541fa88f134db5a3d08252e9a9845111c21
117011 F20101114_AABBOA vaidyanathan_b_Page_013.jp2
fceab0c894326d50e19b5e82be3ee9a2
fbcf2b818caa5b365e4f249dc717193f603673c7
84611 F20101114_AABBNM vaidyanathan_b_Page_189.jpg
380e0ee3fbe4350462d6a48ba025fcdb
9da8aae050e8e522270f067f0448594f5007f78e
25463 F20101114_AABCRD vaidyanathan_b_Page_013.QC.jpg
908a1e179b952c74860bb74e4a853955
3f34082397fe406e17131480f93fcc08b087e74f
27474 F20101114_AABCQP vaidyanathan_b_Page_006.QC.jpg
2bb76cca3471d0d5574ce4299f0536a2
87e8835a865c91b2dcc19a1f83c002eb34ef8c99
78595 F20101114_AABBMY vaidyanathan_b_Page_174.jpg
870c2e53fc63b17dfd445446d9cf3b58
a9585e3bf7eca104c5e12c4460ba9bb40c5a6359
114088 F20101114_AABBOB vaidyanathan_b_Page_014.jp2
5b949320357dc7283043976ba08d9562
27b03f7e10ad60777ba5d04de904b04a1ea484e0
14233 F20101114_AABBNN vaidyanathan_b_Page_190.jpg
e693389452e3ccf0937baccb410446f0
5420d38c9dd9d57398b0b05295a4dc197c7064e2
6921 F20101114_AABCRE vaidyanathan_b_Page_013thm.jpg
d46068eca5861b79b10d7613ec71f735
df0e45df96fb7e6e3d56526fb7cf141efb5f5aa6
6550 F20101114_AABCQQ vaidyanathan_b_Page_006thm.jpg
9ed22336afbefe87e56cf6043f6c0658
1dc01c5df0299dd7cf322a56f30e290d53f5a1f2
79572 F20101114_AABBMZ vaidyanathan_b_Page_175.jpg
1839aac4a7d3c9c81806a8b58570a108
c7bbbfc15a66628320ec0cb424615982225dcd80
46365 F20101114_AABBOC vaidyanathan_b_Page_015.jp2
6f3aefdd82946b18bc4095b78d5033ea
f92ec9213bc3c08acc27135e44c4a8747213fd5e
38938 F20101114_AABBNO vaidyanathan_b_Page_191.jpg
69c8c4d6019c38b3b41bcdc424ee1b6c
eb90ccc6faa53ef15d74e4b4b2f6c157d0141a76
24596 F20101114_AABCRF vaidyanathan_b_Page_014.QC.jpg
42a192f1aa84474a6846989a6c3934fd
7a66ce169fb59fa7dd6c3df9876ab62a55c7b793
8122 F20101114_AABCQR vaidyanathan_b_Page_007.QC.jpg
2dea7034368aaeef913a4b54454ce665
3dab8435c82e6315164c5ad6b5601ff740b2090d
112483 F20101114_AABBOD vaidyanathan_b_Page_016.jp2
8d2481945dcc033f01658ff8882e9c88
5e54018435fb77f62ebc3217f86955f91c9ed1df
25514 F20101114_AABBNP vaidyanathan_b_Page_001.jp2
72a20b37f15f1a20543c6330ac5a5b72
bf41287f09f65b694833e56b7884bc7899de2049
6786 F20101114_AABCRG vaidyanathan_b_Page_014thm.jpg
2f706359be89e4be261c0bd33f2965f5
3a745dde754a7580fabe8925a0856a95d1d29c7e
2434 F20101114_AABCQS vaidyanathan_b_Page_007thm.jpg
fb5ad9178b74da8ff8adf48edbcfee8d
2670ff9d695a4932a516dceff652cd3ae4fb0dc7
118635 F20101114_AABBOE vaidyanathan_b_Page_017.jp2
cc6ef2a966a4b43dd08f5e28a75e02b0
7993b078512a5d669caa72b783bca4366d1950b1
6160 F20101114_AABBNQ vaidyanathan_b_Page_002.jp2
0b7ccf7220517674512e1d4b8fcd3516
a861604009a08b8f28873c7d9c85f5f481eab5a2
10809 F20101114_AABCRH vaidyanathan_b_Page_015.QC.jpg
e9a10f68a82f2980fbfe12394b50f0f2
56ffb28d357d876a4fdb81f8c3a2d3e296d14cbc
17558 F20101114_AABCQT vaidyanathan_b_Page_008.QC.jpg
598882d6f4d3226c2447e7281b1e0211
be7e470c554c03fb48a4b91b7096a3fc673e3850
121614 F20101114_AABBOF vaidyanathan_b_Page_018.jp2
51bb6a3e04266eadb188dd49808ed802
02d07b5b31d160be92ca0dee787b878967b013ea
75085 F20101114_AABBNR vaidyanathan_b_Page_004.jp2
3d86c75ae9ed6bd59848f850052f8576
8b163b736a4a32897645477c80bea711f75a9284
F20101114_AABCRI vaidyanathan_b_Page_015thm.jpg
c4b1c2b57a82a4ef842f30698fe64fa9
b9990c638fd1b168ba9bea1f2a97426cdf64a607
4393 F20101114_AABCQU vaidyanathan_b_Page_008thm.jpg
d68f0686f4cbc5b54737b81e685d4aec
0e3b77cc71740c833c327901c21076fe657b6749
119651 F20101114_AABBOG vaidyanathan_b_Page_019.jp2
c30e222c9f15644ba3ac2247f712c2ee
5be6a2194d37813a6ccfa35f8b29f4b757553e9e
1051945 F20101114_AABBNS vaidyanathan_b_Page_005.jp2
11c1abfe6d251650695f5cc24cae1630
0ec4d0593691ee4ab0ca8402b58a7b9851507951
25068 F20101114_AABCRJ vaidyanathan_b_Page_016.QC.jpg
ee96eb3dc07d86f2de627729aea60d58
dd00611b1d10c07011a6a2bc7a56d51ae0fec42f
22088 F20101114_AABCQV vaidyanathan_b_Page_009.QC.jpg
db463d0dfd48f5549030e3c2ada2da3e
fa5de8bcf6930769ae6f14db48b263a42e6bc2f8
114717 F20101114_AABBOH vaidyanathan_b_Page_020.jp2
10d96b3367fb97c13191b2bc0b4caaa6
06db3378eac6d81d9cfee69251848e6f6bd5c66b
1051981 F20101114_AABBNT vaidyanathan_b_Page_006.jp2
cfacb1aba9568f797f6f986bbc34d021
b46a51c021336cc50f5eaf5476aa9d3fc66039e4
6699 F20101114_AABCRK vaidyanathan_b_Page_016thm.jpg
6e5e9cce46e019a0a4e63b55fe54e5f2
3b69eaa7d4747d7977fac4940238de3607957b57
142977 F20101114_AABBOI vaidyanathan_b_Page_021.jp2
7a4036e5ea2a3b5fa5832199da295202
b028e52068e0e87c698bf785b8943b78c4803b96
25723 F20101114_AABCRL vaidyanathan_b_Page_017.QC.jpg
fe7e9569b59e78db00536c9a8f43b477
599a2d6c37f75c4a3be9b66f1167c3be2ea5d9b5
5565 F20101114_AABCQW vaidyanathan_b_Page_009thm.jpg
a4c0e4efe0156664c2bca9786b0da133
b79c779d10f05fae62f9acf1449096a942fb04dd
131568 F20101114_AABBOJ vaidyanathan_b_Page_022.jp2
aba865681dd6d297d3a44c909d1e512a
dae598fe99acb5ae258743b4d03a63a5e0924dcc
696802 F20101114_AABBNU vaidyanathan_b_Page_007.jp2
205f45c0e423cfbc2b54750808327021
f388768a67830ada42192f46a6c35b0d7cc0da34
6577 F20101114_AABCSA vaidyanathan_b_Page_025thm.jpg
d1b7cdde8bb121e3a0070db7256a1960
7d836b719b29c8a1bf49c8a856db842490cfeffc
6803 F20101114_AABCRM vaidyanathan_b_Page_017thm.jpg
910f1bc1c83829e92e414a11665ffa07
0ae27b1ca1129e7012ffcfc426e44b77262d6a6d
5517 F20101114_AABCQX vaidyanathan_b_Page_010.QC.jpg
9f5d3ce35481c2622bd72762ad4206df
f326befbc08e143e00f4bb1e92bac27cf68e58a5
113838 F20101114_AABBOK vaidyanathan_b_Page_023.jp2
e8911a49228a11cab1a67d7382b7545a
ec881b46ee89a2a8038de4fb0feef3d71af4b5c1
1051967 F20101114_AABBNV vaidyanathan_b_Page_008.jp2
3d4fad09916c4c68122704e4c285fd67
9df535a5c8aa2d32c12995a546ebefbde5ab6e15
25672 F20101114_AABCSB vaidyanathan_b_Page_026.QC.jpg
762368fb11ff0aa0494691c0c1917fb7
c039b05ed8b4c0fb700bf7b2b1a5494b4924b81e
26025 F20101114_AABCRN vaidyanathan_b_Page_018.QC.jpg
160269426c6b911aa27517c691a0b13c
5058ceb4a3a333b584f015df8a9923f6c0acfa8b
1906 F20101114_AABCQY vaidyanathan_b_Page_010thm.jpg
a1f3c5f43b70c04b81fe00db26ed18e3
1acd8cd85e97ef3dbed36a48b69e9763965cbc3d
114510 F20101114_AABBOL vaidyanathan_b_Page_024.jp2
61c7dd044cfb64b6f9851e1c811d3ac5
f7e73eddf10498478f2d24027e6b70aa17438476
1051980 F20101114_AABBNW vaidyanathan_b_Page_009.jp2
35e60bd9bbc6457941d51b5bf924c1a0
c74019cccea52471e07d7b5c2db41ac1b3de162f
6924 F20101114_AABCSC vaidyanathan_b_Page_026thm.jpg
26a5dd4ba6d2b43955b827f1d35c4fad
799d81e6a4aeef67e06edeaf0e1a0c4428d25021
7051 F20101114_AABCRO vaidyanathan_b_Page_018thm.jpg
8b4e741c49b9b0c69e8af40688ea5f5c
4c21720039f901d1184e702c24e479a32474dcc2
22407 F20101114_AABCQZ vaidyanathan_b_Page_011.QC.jpg
dca9dc56229921ac3ffe3c83d0f413a8
b0cf2ab38c721894b1aa257966ce88ed9bfdd912
110157 F20101114_AABBPA vaidyanathan_b_Page_040.jp2
2f634cf1a672db828f4e690e9b10aa3c
8e8ee3ddf79fe50bd2cfef565586c868676bf540
106765 F20101114_AABBOM vaidyanathan_b_Page_025.jp2
fc417e9d0f4f6d375117b87c14c85880
139391d76a948541f0bb8f9c71d80b8d1bc814d4
332121 F20101114_AABBNX vaidyanathan_b_Page_010.jp2
57d5025326d8f345938f4fc5643b04fa
c9bdb2f8ee3f285db50fa8da539648352c746f91
24897 F20101114_AABCSD vaidyanathan_b_Page_027.QC.jpg
91380114f605465decb1bbbe59d2bbcb
ebd63cf9460eab4b29d536bc9c459229a0dfb28d
6950 F20101114_AABCRP vaidyanathan_b_Page_019thm.jpg
81963ea71b575117ef1cf801cedfb462
174aa4613915baa293174505c628a47d6cff2484
117476 F20101114_AABBPB vaidyanathan_b_Page_041.jp2
a731acbbf9f35849420998d51ebeb5e6
449e948e032ab72336b7a4313ca6ad215b1ff363
123269 F20101114_AABBON vaidyanathan_b_Page_026.jp2
a48e15f97b5d14986dbc73fb3580c391
3718cff1c0d72422cc8b37b8a4627c596a6e2ff6
105190 F20101114_AABBNY vaidyanathan_b_Page_011.jp2
f8bee7a90b0ed29a0f3b949ad4a45ef1
09981e90c0b66c34127b9a194ed7abb52207cd28
6591 F20101114_AABCSE vaidyanathan_b_Page_027thm.jpg
cf1ab899d7856d93efa97c46977930aa
5a7ea2f7efe5d321493db11f53d5d84973cd1cf0
25020 F20101114_AABCRQ vaidyanathan_b_Page_020.QC.jpg
1f8c37bbe434622ef212445c17f345e2
f0c5fb9fcfa19c60908166778e8e9ef4ff3b2b7c
111487 F20101114_AABBPC vaidyanathan_b_Page_042.jp2
c7df9cd67de22cc871d1026a2d42ccc2
9fecb8e4bcd24239f81db53ac91e04b1aa39410d
121086 F20101114_AABBOO vaidyanathan_b_Page_027.jp2
120bfe5f6ef8a6831a2b55958b91b509
bbcbf514b90dad0fe1fd0980ff0030f91eee007a
46087 F20101114_AABBNZ vaidyanathan_b_Page_012.jp2
5d8c3a0e0795de627d143fe709e68166
e0e54c77b95b35ae2fc611fc3e36bebcacd1539c
24118 F20101114_AABCSF vaidyanathan_b_Page_028.QC.jpg
43b9a366044b0a3c40d63dfb72b7c555
0c2a78756ebae323f6da4f3247001998cf7c4a29
6854 F20101114_AABCRR vaidyanathan_b_Page_020thm.jpg
1dc796482eff71dfedfbd81a84647dc2
b8cab9fabf84faca922239777f3d1808c9497b00
102309 F20101114_AABBPD vaidyanathan_b_Page_043.jp2
8a8ec8fecb6a33d2c067b035e8ee39b3
2d0db59dc76c19d3e31136f1551d2a820811d751
114652 F20101114_AABBOP vaidyanathan_b_Page_028.jp2
45322507fe323a7d76e772e42e4a7754
27a2627eedaebd0afb26bc375a2a9430258c52d8
7123 F20101114_AABCSG vaidyanathan_b_Page_028thm.jpg
893d2512887c0ad481681305841d711e
e39ba2f4f5af2a892fff6f6c1531d4fcb075473d
28139 F20101114_AABCRS vaidyanathan_b_Page_021.QC.jpg
01336832508af0d097bbf2867ba63a37
5115672932f4fd0b71675cede9462482afe306be
115523 F20101114_AABBPE vaidyanathan_b_Page_044.jp2
eb74397ef74a2528daedfd3753540758
0e42ddfe8de5449cba25a286fd711b2332b7671d
115205 F20101114_AABBOQ vaidyanathan_b_Page_029.jp2
7e8c3ed7f6c030a07b39f1a3208d87d6
426b9f414060a14db10b24f2fcd754e607f60cad
25670 F20101114_AABCSH vaidyanathan_b_Page_029.QC.jpg
a4db2648d66447daacb3e0f0ec8a25f2
1c3072eabd448023072e2e30b0475aeafa3a9f0b
7140 F20101114_AABCRT vaidyanathan_b_Page_021thm.jpg
dc2e30b000d51f2e5469d955894340f9
ff79e0ca64c9c475676d62fa643dedd780dae438
109668 F20101114_AABBPF vaidyanathan_b_Page_045.jp2
768215278401ae11e4765a51432a76db
b3f61d6e0a4e3e4ff4a4443ff89b4753ceafce9b
121817 F20101114_AABBOR vaidyanathan_b_Page_030.jp2
3d58012d5e60ef2c510406050511d1fa
ea148d4cd5ad68c052891ad6a9ccf1af0aa85508
6855 F20101114_AABCSI vaidyanathan_b_Page_029thm.jpg
48226bfd59087fbc6e32b7dfa3d27d35
9ec77d08450614f3049827d8753361d671b4d258
26929 F20101114_AABCRU vaidyanathan_b_Page_022.QC.jpg
94deab5b67d08bde0888b6506e686ca3
83a5757f0fedf5d0215f5e2633c4ef0462436f0a
109200 F20101114_AABBPG vaidyanathan_b_Page_046.jp2
e526ee4896b9d668c5bb2f8d1113aef6
41ad867615ca0d9af95ff3acfdc284f874b3574f
94842 F20101114_AABBOS vaidyanathan_b_Page_031.jp2
0f998b62623dbc8c3dd7ebdbb6f3839f
d76839847ce2381df256a32a0dc476f0c29dab63
26345 F20101114_AABCSJ vaidyanathan_b_Page_030.QC.jpg
f66e07315de2ef88bc7760225d424913
26cedc8ea71c872a460379e075314898dba69065
24016 F20101114_AABCRV vaidyanathan_b_Page_023.QC.jpg
8a47a36f2f25545d38576cdc450b2e28
ea0e1cc3f6e5907b2dc3ac3dd0f2c3ef347c8ccb
123279 F20101114_AABBPH vaidyanathan_b_Page_047.jp2
090f700836272310f48b44c94158892f
6e3839c4188c0128fe6304f57c747b0549bf2af3
77703 F20101114_AABBOT vaidyanathan_b_Page_033.jp2
c3a3968cde71c83581ef0306d31119c8
4971a547e4349787fd2d73e6ad708b5876a19e34
7119 F20101114_AABCSK vaidyanathan_b_Page_030thm.jpg
22c511604cc3ba1043e4877a3e01c9ab
f971e63ec40f2c16a05cbf3a3b02dcca84c1dd44
6589 F20101114_AABCRW vaidyanathan_b_Page_023thm.jpg
db30b257d23a670bdc6d3abcea961229
86022fbc2c27605994c077f7b9dcb773e7bd873b
117630 F20101114_AABBPI vaidyanathan_b_Page_048.jp2
7d27b49c3b0b054bd7639727e82c8cd9
f4a4020fdc8c2f6c6351aeb2c719aadebf4454b3
107237 F20101114_AABBOU vaidyanathan_b_Page_034.jp2
880b8aa8cf1dd953afcf7e9458e242a1
acda088efb6bb9dc3d2d934c297171745d488aab
21617 F20101114_AABCSL vaidyanathan_b_Page_031.QC.jpg
d5217586d3853d57e9a62e5c26671887
9bc3a09b79444d3da8da097f720f5a81ecec4c7a
124260 F20101114_AABBPJ vaidyanathan_b_Page_049.jp2
3ffe2f8b634cb9e264b4119ecf40f7b6
1e509f69ca357ac75798e5b30d3e3e88add092ce
6904 F20101114_AABCTA vaidyanathan_b_Page_038thm.jpg
3cede5dd9f4b08ba9c5a286aebb836cd
e649aec726c81c6481784d7a32927e5bea134d64
6094 F20101114_AABCSM vaidyanathan_b_Page_031thm.jpg
0908ebc2b57234f8554be91f058bcde8
3713771e687a1c3049bb3db924b0c58be72d3949
25027 F20101114_AABCRX vaidyanathan_b_Page_024.QC.jpg
4aca515894e45ee986ec3ff184396e22
fb68d4405805a33c8394b8494ba95522462585c2
99927 F20101114_AABBPK vaidyanathan_b_Page_050.jp2
67863bdc8cc4ffff414f4161e1bce3aa
eabc25be684a66788fc44df0092e6a2aa05ce8a7
111562 F20101114_AABBOV vaidyanathan_b_Page_035.jp2
3014feb226e002dedf5da0f2c1c7c847
2890af8956076a5a402513155e6bca1ade602ca3
25930 F20101114_AABCTB vaidyanathan_b_Page_039.QC.jpg
e7ba0693b7783584048a163500a8ce32
c243c27cd092ac0c5c4750b7cdbc8e045eb6d62c
12231 F20101114_AABCSN vaidyanathan_b_Page_032.QC.jpg
7ecef4f119f6cbaee4ab2cdbeb57511e
525b0815b13c5987a21ea5bc627c997a5347e47a
6740 F20101114_AABCRY vaidyanathan_b_Page_024thm.jpg
ba61c7a07533222c7324e2ac87f62a00
17d58d351dd02a7749c348b05cb171274195236f
113608 F20101114_AABBPL vaidyanathan_b_Page_051.jp2
a5c4968a7226091a11f08b986653119b
6ae12230c19c2138676692d9556be3811e32c750
107350 F20101114_AABBOW vaidyanathan_b_Page_036.jp2
63c3f1a7c91ec34cac51dc505d17db4d
f8a78a95544a9248ed7d83d86980634b910afa52
6960 F20101114_AABCTC vaidyanathan_b_Page_039thm.jpg
4ee1a683aa38e15313928b3ff8c299b1
8f6788755a0bebcce27bff6cd6dd9126fe52edd7
4021 F20101114_AABCSO vaidyanathan_b_Page_032thm.jpg
bae09577b22654bcd2c2ef8d351919e2
18a19f5b3dc4e8db31bbb27aa65be79604086a1e
23715 F20101114_AABCRZ vaidyanathan_b_Page_025.QC.jpg
c3831b02bacedefa4b7e840b3f65d7ac
fe71fa395c0592383311ddb10667c7424073ff2e
14536 F20101114_AABBPM vaidyanathan_b_Page_052.jp2
8f72fd8ca10cd37b8b39a17da9a83db2
ccbbf070852f1012b9088d09e9de549b8b5afeb9
117488 F20101114_AABBOX vaidyanathan_b_Page_037.jp2
883a92850740024fa0618ae392cce127
463aded2927e647b0fad29bb37bd18d3c349e307
105659 F20101114_AABBQA vaidyanathan_b_Page_067.jp2
f21f381f228cce78f43a5bfaaaea73eb
0c17a90665159d1dc83673ab5ab0a34d5dcca613
23545 F20101114_AABCTD vaidyanathan_b_Page_040.QC.jpg
f85d84c52a2e61d5c960525ed62818c6
0cd88b14848a2cd7d0f7d293e2cbc8e03deef85e
18264 F20101114_AABCSP vaidyanathan_b_Page_033.QC.jpg
21c5054caa58b1e571f87ddc61a4e5a1
35e97ce3864131e35c84654fa273330798c9e5d8
51999 F20101114_AABBPN vaidyanathan_b_Page_053.jp2
d3ec6bb443b21f1460aa0772e18755ad
f8d9f23cc30f3a3d0e5451e9421fb5d6fa090940
133001 F20101114_AABBOY vaidyanathan_b_Page_038.jp2
598b9a702dedf78d1c664e8e5f00e62e
e51f895b558dd6db0f4cb926e88f4362275fd0db
112703 F20101114_AABBQB vaidyanathan_b_Page_068.jp2
d48f8d5f85cd354ec288dc74934403cf
1a0656e30c2dcf5c6fddf80bce416881a3f96e0f
6890 F20101114_AABCTE vaidyanathan_b_Page_040thm.jpg
206b57cf2c67ef6c701f584c900af5f0
5eef2b81e617506a85ffbc699dc7f7ed7a0cab26
5374 F20101114_AABCSQ vaidyanathan_b_Page_033thm.jpg
dd4a4cd78d4ac6671b89807fdc17d9bb
bac32d425aeaa0b5b501c9c8e553094e70594407
69373 F20101114_AABBPO vaidyanathan_b_Page_054.jp2
37a83a2be8e345b2b36d09904b9dc146
b9005c9627a425bbc1a884fecc9dcaf8495afc87
115185 F20101114_AABBOZ vaidyanathan_b_Page_039.jp2
78ccd150dca29f6f500190c817f08c41
2dad3e7f3221a9344febc3d79c3ed6485f38f7e9
112094 F20101114_AABBQC vaidyanathan_b_Page_069.jp2
c1ab4873489d1b18d8ebd453270dfb6d
310eba75db6652fbfc6d8ec229ccbaa57449ec06
25970 F20101114_AABCTF vaidyanathan_b_Page_041.QC.jpg
6eab61941ea8d8a76ddd7c02f298aa39
339f8ffb7577b1a64d0e8d8ba10c87b346c66dc7
23865 F20101114_AABCSR vaidyanathan_b_Page_034.QC.jpg
0ccb87b3c561fb4838cd34fe130bca7a
7d4fdebd027dfc664e10382010ce6da998600176
71374 F20101114_AABBPP vaidyanathan_b_Page_055.jp2
141bfae709ea06629eee79b8dd58dcc4
d8d9dffdda4acdd5edf3ae63acf51ba2b4d3b51a
113721 F20101114_AABBQD vaidyanathan_b_Page_070.jp2
7b6869f031e07f4b98692a53f82eb172
00ea1abf2792b255e49e93ae3684c5e0a65384d5
F20101114_AABCTG vaidyanathan_b_Page_041thm.jpg
118e8de5bb37ce324fa39533be08fa25
88bef5acf494c939d3e161e3e7c8df908b92bb72
6753 F20101114_AABCSS vaidyanathan_b_Page_034thm.jpg
5d01db87b1a43bec44be97faa36acc50
8e05cd7c7ee770f36af17cdd5c1fa7d07b603b90
23109 F20101114_AABBPQ vaidyanathan_b_Page_056.jp2
c7046bba72666c52200f106445e73de1
4cf287219d500d7c48479c774d3c909bde59883b
113509 F20101114_AABBQE vaidyanathan_b_Page_071.jp2
9a8481cf34cfc563424f9bab70181bcb
478c91fa18dc4dd6efd6d248a39a7c3b64d6ccec
6584 F20101114_AABCTH vaidyanathan_b_Page_042thm.jpg
05fb3b90a8c8879c1a790579fae9f863
3f6c4a9d2995b96d003426f667de87d2c1b4f231
24476 F20101114_AABCST vaidyanathan_b_Page_035.QC.jpg
e6306e3a4ab281bd9bf32018604e5587
5bf34db42324016855afbc3f682bcb1bacae1f0f
1000280 F20101114_AABBPR vaidyanathan_b_Page_057.jp2
188eb2ccda0b621f81d3366c2462ac7d
1badd27d90faafeb0edd252854e6e9e401208a14
113000 F20101114_AABBQF vaidyanathan_b_Page_072.jp2
ccbbf8c58d8a66aa6f48e85eef503379
1873dda486d9b677467210445460d3ce0748e9a0
22213 F20101114_AABCTI vaidyanathan_b_Page_043.QC.jpg
cace51590599418ac90e8b03f10a5d8f
357885d632621880d2cb351f8a80c8377218bd51
6984 F20101114_AABCSU vaidyanathan_b_Page_035thm.jpg
a17f49e3fb166ecf9e90c2a11f4d89c5
3cf4388590d17bb7b0f6b7a4d0dcf268ad13020a
765875 F20101114_AABBPS vaidyanathan_b_Page_058.jp2
40e8cd99c2bfb23db622a449df11b80f
4cb045f8943c777784cf6b263ec25db32d53113f
82507 F20101114_AABBQG vaidyanathan_b_Page_073.jp2
17ddd36494e13b4075c8d40be679b4f2
5da4a76abd7f579214016f304fde4ecac7b52b86
F20101114_AABCTJ vaidyanathan_b_Page_043thm.jpg
71d69e377d34365f2ca052b393ed3af2
04eb5dbc6374914f976a77e42186c192cc4deb23
23385 F20101114_AABCSV vaidyanathan_b_Page_036.QC.jpg
ff29ad7ba0258d38a5836f86240529e6
370578f1380eae09a08054e8f45dd1b3331be07d
546695 F20101114_AABBPT vaidyanathan_b_Page_059.jp2
374b3bca96d070ef164a61e851ca0f7a
f27bca94e62335a2e12dea2d9dc41ec4643229da
73210 F20101114_AABBQH vaidyanathan_b_Page_074.jp2
ebc33da7c73613e053885e6622851af8
8152582747cd3489fbb3fc57a22ea6881427f4f5
25480 F20101114_AABCTK vaidyanathan_b_Page_044.QC.jpg
dde80cd2a58e4e70f1de9f1bcb901f76
dcd5cfa7dffc7508c338375549881e14153edda5
6497 F20101114_AABCSW vaidyanathan_b_Page_036thm.jpg
a0a8c374a032854a04602abb23615424
3acdec06043d2d9662d435420f4f15aa18eb75bf
116569 F20101114_AABBPU vaidyanathan_b_Page_061.jp2
099a30636f412613d32e113bd514609b
7cab7fcbe7c2b62a76ab319ce5b33b5601b5c97c
119174 F20101114_AABBQI vaidyanathan_b_Page_075.jp2
ea72748a08a165e41846d01919d82215
18984b5ebe645f70cf63f1962ad1fdcd03a8ac63
6746 F20101114_AABCTL vaidyanathan_b_Page_044thm.jpg
237f543752ddaf4d0c9358186a340399
b3210f6432916b90045812fd12c4921b41c0a45a
24676 F20101114_AABCSX vaidyanathan_b_Page_037.QC.jpg
eac13adc067e6520e4ec68090bb9902f
4e7d3679ba5d2807f486dabeb867884dba96d06b
117242 F20101114_AABBPV vaidyanathan_b_Page_062.jp2
c9b37db969fe87a3f808239482acdb43
75e7bdabde5c6e57753d9897d1b11a545dbf4d5e
112905 F20101114_AABBQJ vaidyanathan_b_Page_076.jp2
be0b7462e198d9a2f120be21e941d37b
c96b887a939ad7d8f8a2a4940931cc41235ef8f3
1834 F20101114_AABCUA vaidyanathan_b_Page_052thm.jpg
409aba353e8b57c8d685b36e001e82d1
adb65c2194dbfa0d8fdfcdd54496c17a0debd9b9
23822 F20101114_AABCTM vaidyanathan_b_Page_045.QC.jpg
a3186590dd9a3fe99f318fcbfd6bcfa2
824744204851f3f07f0f8e23387062a40c153385
93400 F20101114_AABBQK vaidyanathan_b_Page_077.jp2
3ad522ced2674eb63eb75cdffd69d6ce
4b45644dfe43d6e90670e8ca48ae62d73be4e488
7030 F20101114_AABCUB vaidyanathan_b_Page_053.QC.jpg
5643f9e3cb638961b586b42505081965
5773bf22057b8eccc6c9a5723e4085cfb4fb8f51
6827 F20101114_AABCTN vaidyanathan_b_Page_045thm.jpg
d3e5c1de49c8b92a79469964c4e96173
85c1e69c0ceb1ab55d360688de460e8fdbbab9fb
6851 F20101114_AABCSY vaidyanathan_b_Page_037thm.jpg
f3db44f1f5132d5a64316d1e037d7b10
0781cd0ff969f55e3b9d83ffdba63a8cd0fe73da
144494 F20101114_AABBPW vaidyanathan_b_Page_063.jp2
801b40bb95d58f0e686705b98d0c8ba2
a9088b7e72c3c004f22bc6c6afda958494aca07a
82352 F20101114_AABBQL vaidyanathan_b_Page_078.jp2
a7dfa057aa3a46ea19773fe76e141940
991eacc5d3f8e4465c73dfe3f5c618ff57535a19
2282 F20101114_AABCUC vaidyanathan_b_Page_053thm.jpg
4b41b5dc9397bb5b3efe9ec72b5f4569
070da9af26344e2b3455d9060a43decc3f0144df
23469 F20101114_AABCTO vaidyanathan_b_Page_046.QC.jpg
970e34096578c7182577cb6a35d90f2b
4f7e9bd05509b8c6d52db03d9ad812cd711dbed2
26205 F20101114_AABCSZ vaidyanathan_b_Page_038.QC.jpg
f2b34746511d4899e3b24c1f36be9416
d83f3f6d00f523d2d0772e346b92cf8626369cac
98733 F20101114_AABBPX vaidyanathan_b_Page_064.jp2
fb2811317c1a28c419e1f91fbe7c0e40
5948d2f7f3322351dd66f9d8d9aa66c20fe684af
68423 F20101114_AABBRA vaidyanathan_b_Page_093.jp2
ef4a50efd46836a7c405f1fa46836518
5461a2ed216e7b799fa309a2dd45d2ccf17a5222
101313 F20101114_AABBQM vaidyanathan_b_Page_079.jp2
a5f21158645b0d11dba9c52a404416d2
9d75a2fac93f39da251c36eceb5daba422112a3b
15213 F20101114_AABCUD vaidyanathan_b_Page_054.QC.jpg
6f97503b627cb286f0387e17c4339023
070c9eac277cc388eea2e3c643b168d4ea3dc04f
6526 F20101114_AABCTP vaidyanathan_b_Page_046thm.jpg
dfd723ac3ba2663c5b32b67ca62efeca
e542254c3f53d2725582cf229f1afebf8910c259
86811 F20101114_AABBPY vaidyanathan_b_Page_065.jp2
185996514c0ac73ac739baae542adbbe
aca134c4a6b36fcf89ba6224406de49077107ba0
61771 F20101114_AABBRB vaidyanathan_b_Page_094.jp2
3e357bd31bdce99ec496d36ee95ad055
7d5d9a1fb1da0adb41b4d62ebf91a5d6be650aef
115802 F20101114_AABBQN vaidyanathan_b_Page_080.jp2
e9a5c40e37da542ef7a705a550b36406
b9c9a7615da7a71313e480107761583769806c0c
4556 F20101114_AABCUE vaidyanathan_b_Page_054thm.jpg
ac3b0bd61e3380856639edc18fb1f7ca
72a1a898110bc1c5f0ef9509cfadb879687399c7
24407 F20101114_AABCTQ vaidyanathan_b_Page_047.QC.jpg
aa3d713c00e925fc9e50d6e50f72b7c9
258e19d52977719e62dffe7c71f48c217fc78a5d
110123 F20101114_AABBPZ vaidyanathan_b_Page_066.jp2
29f8f763fdb459030dd96da7744d5841
80c79ac7622089468b4de27b28f396026828ffdf
621351 F20101114_AABBRC vaidyanathan_b_Page_095.jp2
8082c0e6c21b3fa5dfec4d9e1f1c01b5
9fa70958670847c0a5fa31fb51378d06e194c869
107684 F20101114_AABBQO vaidyanathan_b_Page_081.jp2
2eca6ba3baf1ed2bb5cb7edf6077ca4b
468b1668ae9a33e90bead6ea3e87b2d0cd7cc5d2
6896 F20101114_AABDAA vaidyanathan_b_Page_133thm.jpg
ad6690bd4f2c8b59835836ae6ae00591
f12ca2803495f7408e9123111c26b7f003ccc4ad
15647 F20101114_AABCUF vaidyanathan_b_Page_055.QC.jpg
d4e9c8c8075830b21379eb0728ae0138
71a0e595bcc09a2d90ad2fd7ee991da35925e735
24475 F20101114_AABCTR vaidyanathan_b_Page_048.QC.jpg
4234e47bfcc4aff9ae4b18d4b13c2133
ff525d3cdad89072c24aaf506f4a5ac5c1f5dbb6
468428 F20101114_AABBRD vaidyanathan_b_Page_096.jp2
87c861714a15421c74ed8ea796f7576c
ae51344b8df7752afa2b489d1ab490967f20a241
95268 F20101114_AABBQP vaidyanathan_b_Page_082.jp2
ce6e49e4965cd14f97317a8b571e43ea
98a36b8b33bfcc38cfb858838ffa06c40a5aac76
5696 F20101114_AABDAB vaidyanathan_b_Page_134.QC.jpg
c2e1ba7ccf036809e28560501d0f23f9
36361f8b155188b492e63ff7e45108436a04cbff
4642 F20101114_AABCUG vaidyanathan_b_Page_055thm.jpg
e44ac4b991e66de8e31fc16b2a5f25c2
9df8130ed423f7b5df3a0f5c0a44f99781298826
6732 F20101114_AABCTS vaidyanathan_b_Page_048thm.jpg
187c7f598386be606b43b03aaf038341
b51cfa69b742fa931a29735f70129144286488bb
369633 F20101114_AABBRE vaidyanathan_b_Page_097.jp2
6bf8610a6e5adfb492b6b62b70f0eafa
e48bbe080c0735691dc17ecea9ada24ece3372ef
118359 F20101114_AABBQQ vaidyanathan_b_Page_083.jp2
a23f8ae6cc3f1d61eb506e3e252b77ea
6d96366109d21dfb80945f268e7c2e3d6e102987
1978 F20101114_AABDAC vaidyanathan_b_Page_134thm.jpg
53c1c09cdf336797b028994e9f3b7bc7
37f7a9d72ae43bd0f7993d07cc3d337542756c52
7091 F20101114_AABCUH vaidyanathan_b_Page_056.QC.jpg
2d6e3a9bbe96e416719774beed49514e
85c6e361ffca84f473cb11b5d1d9c899cd37b0a9
26153 F20101114_AABCTT vaidyanathan_b_Page_049.QC.jpg
a080e46fb72a19bf0416a152daf7237a
61afc4f8ca0cbfb0f2475305a24c21a635c290d5
364938 F20101114_AABBRF vaidyanathan_b_Page_098.jp2
ac3cf5ce718210096fdf1ba9feee42f4
f6af0553a3ca3cff52f41a5849097445d85543ae
109863 F20101114_AABBQR vaidyanathan_b_Page_084.jp2
49493e56ee6c8f164773140824ab1b32
c90b30dbec962bbfd9a809eec422813701591bcd
19782 F20101114_AABDAD vaidyanathan_b_Page_135.QC.jpg
811c4a6a237b23f5d3a0ae702b30ac6e
30a47c5b29e0dfc4c9cc09611039e35160090fe9
2352 F20101114_AABCUI vaidyanathan_b_Page_056thm.jpg
e1e957d05da29fa429182f229f12ef70
56296261231e8dc15c20b4cc85197d0115567745
6977 F20101114_AABCTU vaidyanathan_b_Page_049thm.jpg
798c9ceff2dda00290e57ffdad20f00f
ed944a0f52016f3e3c408f2935de85fbdef60c33
115885 F20101114_AABBRG vaidyanathan_b_Page_099.jp2
d0ca2e2154c6eb51eab66f07bfdeb842
db7a8f4dd128ebfcca8beb568170773a02471862
118750 F20101114_AABBQS vaidyanathan_b_Page_085.jp2
2f3e70be11a9041c780b8608dab2d1b4
ecf101a840d0789f07cbd70d322eadf19a64c8f4
8502 F20101114_AABDAE vaidyanathan_b_Page_136.QC.jpg
80a98693316aa99e60ff5718839f3318
9819d5a26ad860676f0f18431eb05a67d32171e0
16167 F20101114_AABCUJ vaidyanathan_b_Page_057.QC.jpg
7774c11aaf0dd6b6cdd44b1f0c7cb0ae
af2a10d9ece8ff021dbdfe4e71baf4b7bbf34669
21469 F20101114_AABCTV vaidyanathan_b_Page_050.QC.jpg
5f19d834ab000ec0786df4b9bb366a88
a788e5e1283ba85682fba980df8a84998004e339
117425 F20101114_AABBRH vaidyanathan_b_Page_100.jp2
2a243e3edd1aa0e7dc318c0282c05519
de82fa580cccc5e257ef1c7da83186573a7f6edc
114599 F20101114_AABBQT vaidyanathan_b_Page_086.jp2
126d020c5181a2616a74d15b4c1bebbe
f6fc5478cca6cf9e770d3e5158523029cf6cb3ee
4882 F20101114_AABCUK vaidyanathan_b_Page_057thm.jpg
e0b7aecff918c240d23087ed127174e5
b5338e9544218462ce4fbbd9c898134339024e1a
6110 F20101114_AABCTW vaidyanathan_b_Page_050thm.jpg
a05dab2475e7c14422a1c2cf612e0f45
3c3abd8a2f9f66ff56938f85759e0a69ec7aafe6
120074 F20101114_AABBRI vaidyanathan_b_Page_101.jp2
46aa95a893d0bc86e1b08ff92c2e1134
5b642beb179dfb9e48475ab064fca2d2f23acd39
108191 F20101114_AABBQU vaidyanathan_b_Page_087.jp2
81cbda277f88d0a5841b8f6f0d3761d7
8d8ff9140e5991926e5fec550efa0f0252810836
2802 F20101114_AABDAF vaidyanathan_b_Page_136thm.jpg
928ffa355c16168e20fd3b1e7064f6a3
674bfd6e27361d92509e9ad22f42722fe17315e0
4479 F20101114_AABCUL vaidyanathan_b_Page_058thm.jpg
1318b687d9774d7e9bb122158f959921
47c78e4a4bcb960fcb4ecf0e73d4f7ed8cf9918c
24998 F20101114_AABCTX vaidyanathan_b_Page_051.QC.jpg
d0d288400e5addd8635fa1c1b5d90593
dee9c8315ae61cba5837c7764f6a0955d8a3b851
121671 F20101114_AABBRJ vaidyanathan_b_Page_102.jp2
edd48ee7a59b1c2775795edff39ea084
38df7368e84e872aa00b648574713093b8c07ec9
106712 F20101114_AABBQV vaidyanathan_b_Page_088.jp2
76cd1caf150e7f2ebecebc1e84223138
a8461687c69a8cd3c7da4b7461e2973e85608946
10352 F20101114_AABDAG vaidyanathan_b_Page_137.QC.jpg
e3104af11474042008fb6fabc9bd0cc8
2b175d9dd2cf956fea2d9ad392bd0544c6b6548d
6951 F20101114_AABCVA vaidyanathan_b_Page_066thm.jpg
71040e47c16776a10ede0c2151b4d7fe
bcb30181e503872df9f916a3590ec354e427e34d
12477 F20101114_AABCUM vaidyanathan_b_Page_059.QC.jpg
cf2ab592396d7c08b8167bf7d966d29a
12252923f0188789d0278020a8b52508ac007c7b
F20101114_AABCTY vaidyanathan_b_Page_051thm.jpg
9a6e230af378ca4c732b56a88e1960e7
55cf7fcc8cb0d0de836a513d14ef9ad2e10728a8
122388 F20101114_AABBRK vaidyanathan_b_Page_103.jp2
121c6b125fd0c5af4ac4704446d49ba0
f36a7a9ca56d69b203fcacc910f9160decfeef75
112759 F20101114_AABBQW vaidyanathan_b_Page_089.jp2
934ec5df55db18338913ae3c0052a33c
1b795c5a25210cc2308d28ddda7331d72aa27f12
3285 F20101114_AABDAH vaidyanathan_b_Page_137thm.jpg
7fd670d5a7a70012321d92ff8448db9d
2ec07ae11cc5411911eafc832ca444fb154973d8
23352 F20101114_AABCVB vaidyanathan_b_Page_067.QC.jpg
185c493efba110ec0c92798fbf3bf6d7
95bae4a39513c03a4490797080055afca52e4bc9
4112 F20101114_AABCUN vaidyanathan_b_Page_059thm.jpg
fc1f3f520bb096b3edf519455760cc5e
990d4c1a2f357a6848bb5f00f4da0e5bcf92efaa
117740 F20101114_AABBRL vaidyanathan_b_Page_104.jp2
91f39b7fdce7dc47343fe7eef4e49574
801711f9bb11f2294d53f98ca670510202752308
8017 F20101114_AABDAI vaidyanathan_b_Page_138.QC.jpg
26fda6fe7f74a7517acd90abc3e7ccb5
e1f8fdf34a595999557b58cf4e60d5c7d1a256ea
6747 F20101114_AABCVC vaidyanathan_b_Page_067thm.jpg
e2a0c60284fe38be4bb37a5f96c4e9c2
c1a964c860aee8a987cb66fe928f60fdb8ee6cd8
8089 F20101114_AABCUO vaidyanathan_b_Page_060.QC.jpg
68db9fa940e06d2f657e5784d2dbbc81
1723110ca700ce065fb381e575f34d6866b77ab0
5204 F20101114_AABCTZ vaidyanathan_b_Page_052.QC.jpg
fbdcd9bb967d1707955194a5f7f2e73a
3b5940863a4a3225acfbbf443a6226f1578f472e
111695 F20101114_AABBSA vaidyanathan_b_Page_119.jp2
d25699c39e85736ce7cba646d9565a62
1dd5060fdcb257061f4ed522981c68da12cad37d
102132 F20101114_AABBRM vaidyanathan_b_Page_105.jp2
b337fe47f1b40e56fad462d0d001d7cb
d0e6a78fa1fb1218b9d80fdaac147cd8e30f7339
108278 F20101114_AABBQX vaidyanathan_b_Page_090.jp2
459e8a5c7099f5d6c11c3afae5c8d613
a29189214b6a3db1eb4aaed485802f2dbaf14692
2683 F20101114_AABDAJ vaidyanathan_b_Page_138thm.jpg
d1fc11d9540b021b3c5d793aeff6998f
2c66d13edf9cd2e8d3c83a6a14d2f93773614276
24747 F20101114_AABCVD vaidyanathan_b_Page_068.QC.jpg
1abe4ff6817777fbcbc9101b25e9cc61
4b1245f5ca97b68ffa91acd9d55a02cbf4ffc9c0
2643 F20101114_AABCUP vaidyanathan_b_Page_060thm.jpg
f25b8a34586536c257fc7b833e040e6a
32b0ee6baf5ce44c6011a4100fefdc456c0155cf
115631 F20101114_AABBSB vaidyanathan_b_Page_120.jp2
438b5d985a8e9ab118326d0d38f3d38c
19b426e7394eff088faadbb1777111e57a4081f7
95568 F20101114_AABBRN vaidyanathan_b_Page_106.jp2
24454e8a60bb22ae8cb77b720557cbc3
b423400019d3ac2aff3b17245f0220f70d0c38ef
78524 F20101114_AABBQY vaidyanathan_b_Page_091.jp2
9ef921323ed110d7f9c9c90ae0995ea6
e0f3bddcec69138f85acb5e72427a467768dd9d9
8631 F20101114_AABDAK vaidyanathan_b_Page_139.QC.jpg
c3efdfbd4d826a428662dbbcf251ac94
2bb90334e9748aa06287521b560129c40144d587
6804 F20101114_AABCVE vaidyanathan_b_Page_068thm.jpg
d8587171ed331f55ad531baf24d3486a
f464b351f8946568fb29eb1342c71637960325c5
25540 F20101114_AABCUQ vaidyanathan_b_Page_061.QC.jpg
1debe4b2bb1acdbe7b40514da7a582f8
354cb0ea4d43631947cad024e046882299b7ef47
117013 F20101114_AABBSC vaidyanathan_b_Page_121.jp2
d86a040a9e9ab9f5e68ab1c01aa3130d
a91758e371421b69158c801c3f46ff88bb283f6f
116407 F20101114_AABBRO vaidyanathan_b_Page_107.jp2
73ed63026d092926b4daff9836b76e4b
220a3035700da8f2c17b46b51068e4f4eb9caafa
121585 F20101114_AABBQZ vaidyanathan_b_Page_092.jp2
4e0b2c3bba8238d7b513e96019f164ff
faaf5952880951d7f488aabb79821da48a7dcdb2
26348 F20101114_AABDBA vaidyanathan_b_Page_147.QC.jpg
9c08b4f5e5051186283016513b30fb9b
7f002b5e41d994f8fc0aee4fbd134c51d8d3b516
2947 F20101114_AABDAL vaidyanathan_b_Page_139thm.jpg
a0995c7a65595e4190af31d47679beee
0b752520580e4400f14f24489ac04ace56df2692
24755 F20101114_AABCVF vaidyanathan_b_Page_069.QC.jpg
3276cf67bb8c2a83b7ceb7bdfe6c6577
9c0a417f23943c023d9becbd2b16a0eda674f5b2
6810 F20101114_AABCUR vaidyanathan_b_Page_061thm.jpg
6275567eb90c98a7b35a1cfa1cb94a49
6c60aa8b011d7ecfd40ed5bde52c2976f4852471
110992 F20101114_AABBRP vaidyanathan_b_Page_108.jp2
654405f66c90e4c37814ef2ebe792d07
f38a15da63db45f449fee634493150fb1e2fa884
114519 F20101114_AABBSD vaidyanathan_b_Page_122.jp2
22c377db803203fbd954497b4a601da3
8bc9b2af7accac5788c39eb6327525b7c2ab805a
6996 F20101114_AABDBB vaidyanathan_b_Page_147thm.jpg
d16befc6b2d9b783b2a8ba53ccc6841d
568773619e03e5179f036918a66bca4337ca9999
12859 F20101114_AABDAM vaidyanathan_b_Page_140.QC.jpg
f9a93f3a2f9341ce7e5ea9e8e7616453
755696d0e13f6faebaa4e90a5f232f7e15786ae6
6833 F20101114_AABCVG vaidyanathan_b_Page_069thm.jpg
45971cc0f16f3e2ae31ff07130870120
4f7caae9c0b4888262306518972b5d44d86d1d7e
25982 F20101114_AABCUS vaidyanathan_b_Page_062.QC.jpg
151a8d4f05a6e90fe046f1c4c249de3a
f4007f3a403dd0d90d84241179b59b1b02a7c055
106992 F20101114_AABBRQ vaidyanathan_b_Page_109.jp2
c80b8f25f7f9eeec6e447b4d56f87afc
83f1ad47884179603830ffab51fc8cd7c2739d23
117818 F20101114_AABBSE vaidyanathan_b_Page_123.jp2
ac4b2c5d98a055202e9f09fa8b8b1b83
df7069c3c29491c0c42640c5bb5d229cab69d1a4
24347 F20101114_AABDBC vaidyanathan_b_Page_148.QC.jpg
11aab340be1809a97d19b2e5ae7d423f
ead35d093c86fc6d0caeca0cd5bebc4493ab803a
4082 F20101114_AABDAN vaidyanathan_b_Page_140thm.jpg
7128e964a8a7cfcdb2ff7f826684373b
575dcf97dfbdf16bc4a88ba6685ada0ee6bf58de
24643 F20101114_AABCVH vaidyanathan_b_Page_070.QC.jpg
d428b0ada47d2cdf28792562b817a64d
0c8f769418056739dfb8c19e5ca82bbf9d36e560
F20101114_AABCUT vaidyanathan_b_Page_062thm.jpg
426fa3ae0e1343606890ccdb8c8f3703
888cb358ba0b6c1ac3412b11f80e2535307d632f
107537 F20101114_AABBRR vaidyanathan_b_Page_110.jp2
95e3dade6cfa18090d2f3967d04a7424
e6b0e0645b44e874cef5f70af0916add9a74330d
79753 F20101114_AABBSF vaidyanathan_b_Page_124.jp2
b6a8620b595178005d809df7b51fbf4f
1ea72aec34684d4e358d3fb58c2d54c5c02d4667
6828 F20101114_AABDBD vaidyanathan_b_Page_148thm.jpg
d7f61698eadb1a8ed37a631479829983
bb4790c22c9d3efcb6c77fa20d582b794d3eed1e
10695 F20101114_AABDAO vaidyanathan_b_Page_141.QC.jpg
ae44ca0bc95efa773e82c26c533f2fcd
461db80500af764a8d85fcc54df66f12c5374199
6918 F20101114_AABCVI vaidyanathan_b_Page_070thm.jpg
88d3b199d52a17886b16d9cdef3ff0f2
0d0c90d8b2bb9d5cc2c8b2500dd0c0f4172cdf65
27630 F20101114_AABCUU vaidyanathan_b_Page_063.QC.jpg
40407a3d77c65f21d6d3902f85fa5a96
4d13163e7215c62b725de1fa60e312524ae24ca2
110668 F20101114_AABBRS vaidyanathan_b_Page_111.jp2
f1d3ac0cb835836766e84de73e72f18b
f751c9a2e8f01fca838f13e3bb5a9d6d3b82d50c
89281 F20101114_AABBSG vaidyanathan_b_Page_125.jp2
a733cb887fb80d60832a2e2080536208
0d1c2fb81778aa925718b8cea2be63bd7953a943
24708 F20101114_AABDBE vaidyanathan_b_Page_149.QC.jpg
0d7b9c3640cc234a2b7cf4436ad7a5d2
70c926fc2bdbeec3ec088c871e65833854d50406
3426 F20101114_AABDAP vaidyanathan_b_Page_141thm.jpg
ce3dde07e9f42cd6bbd6c5a9cbd86609
d07155c1087158129adaf45add5a3777b428a1a7
24844 F20101114_AABCVJ vaidyanathan_b_Page_071.QC.jpg
4460820e3b62c10b446ab2ca9d9f26bb
9fbea1145a2dafaf8147d4e559dd0cda9cce6600
7515 F20101114_AABCUV vaidyanathan_b_Page_063thm.jpg
36e0b8f3293ece20b21fb1846d814762
ed9d89094d9b905f69d0899b148bb945c3803de6
105867 F20101114_AABBRT vaidyanathan_b_Page_112.jp2
f5c771c6af0fad4e1d93fbc991769a19
dd45c665f11cc93c5d80b97c35f833eb64160080
110061 F20101114_AABBSH vaidyanathan_b_Page_126.jp2
72f909546236096c9646a7abf1cb8d16
353b9d1d9a7fd1bd2b34c7ffd0208c074131feb4
6597 F20101114_AABDBF vaidyanathan_b_Page_149thm.jpg
a9711d39f8f54456d06b14bd803d8d8e
80e4b9a96f85b61c5767095a6b966042a90d207f
7535 F20101114_AABDAQ vaidyanathan_b_Page_142.QC.jpg
c135111ca3fc136b0f667076391d2e2b
04f1b44721c2bdb0e18b68369cd2b07e3aa9b333
6642 F20101114_AABCVK vaidyanathan_b_Page_071thm.jpg
28d3ae7d05482a23cfde7c4b8d27a36c
e6712b203bf1f25ad58104f9a3ea268e75b73aa0
22164 F20101114_AABCUW vaidyanathan_b_Page_064.QC.jpg
f994197daca40aa1d5fcc35f72022a2e
c2329bcdb595db8720ded6d70b02bc1e3bb38385
79810 F20101114_AABBRU vaidyanathan_b_Page_113.jp2
7ad9c86ab1f87c10b3bee9f04f6521e7
6691d97548fc68ca577c0a3642fe7b963c34c86d
142123 F20101114_AABBSI vaidyanathan_b_Page_127.jp2
69ae399ff2a5035f1a3b6af1653af651
58d050aec6871191ce2c8191e2bc04be2b8f5262
2712 F20101114_AABDAR vaidyanathan_b_Page_142thm.jpg
5efc94c56fd2162e53e117fc4d0dc11d
2ffda22ec521d7a20323a1cd7a0bcdad96b31b33
24268 F20101114_AABCVL vaidyanathan_b_Page_072.QC.jpg
37b3f2bee95149bb48fba95ce06ca4a5
3dfa50e0a5e56946fa10bdb1a8be52c4c6b46338
5962 F20101114_AABCUX vaidyanathan_b_Page_064thm.jpg
33192d19bfd954c65cf0140dd7135dd3
fc28050f7aa1b50e9f82331dbfcbf993915ab84c
82704 F20101114_AABBRV vaidyanathan_b_Page_114.jp2
fd2bb4e0c649052ba583dc196826318b
f8dba8e859e26472394e5d756b46b12e0999b995
109234 F20101114_AABBSJ vaidyanathan_b_Page_128.jp2
32dcea62c4f789d183ec5652f2801692
287ee5525a4aca7b0a3fece61bd8477cc78abacd
22087 F20101114_AABDBG vaidyanathan_b_Page_150.QC.jpg
b19f1d3b628f7b0b8bf95e0b7a6bea91
69dbc495a439d2bd83c4231905be0059f851ebef
11140 F20101114_AABDAS vaidyanathan_b_Page_143.QC.jpg
ba0dc76c9772f13dd7db2d2d77e071aa
375b502c3c643d6da3a6f860ef6654687991da85
6127 F20101114_AABCWA vaidyanathan_b_Page_079thm.jpg
a7dbb96e066c0fdf53e47719c098f681
824c60e98995272bd690649aee099b875961a247
6554 F20101114_AABCVM vaidyanathan_b_Page_072thm.jpg
57e29bc886c3bae5ebfccd295c9d28d1
78e9b1145bc2a62564af096c83e04d53406a42e9
19631 F20101114_AABCUY vaidyanathan_b_Page_065.QC.jpg
2988a55ad951068b2952b86f01150070
4ffa77432ac6ee4d5000e26b8ad6cdab9b81b230
93387 F20101114_AABBRW vaidyanathan_b_Page_115.jp2
294231f92fd1aa7422e2701b499ff0e0
9d9efacbe74b953693e00ec3a9959c623990570f
103646 F20101114_AABBSK vaidyanathan_b_Page_129.jp2
25dd64e46608c2941428d3e844fa2c52
3c482e761f6d380886b80baf343af6a2f1151257
6217 F20101114_AABDBH vaidyanathan_b_Page_150thm.jpg
0e59388b6418f84ada91e4d002e75a3e
310f950211ffb38d2b9015def94258a5ebc54933
3954 F20101114_AABDAT vaidyanathan_b_Page_143thm.jpg
263e122912c58667d4b02b9165cc9ad7
e07e0f1bc752d04f470eace5bd786ef6e0483114
25251 F20101114_AABCWB vaidyanathan_b_Page_080.QC.jpg
dd5e0a00a515867934def7b9a7deaeb9
789a79e8ffcc2668464cc04e45fda7aef94fd8f7
19605 F20101114_AABCVN vaidyanathan_b_Page_073.QC.jpg
7ae4575fdc74df0f47e9c33d6e682d99
8b753a6ac22adcc511ddffa269b73bee39f6003e
5547 F20101114_AABCUZ vaidyanathan_b_Page_065thm.jpg
65c2734bd6438c8699af59d2fed8ab9a
13d3c261abb822471e365fb3c96dd76bbce1e321
116574 F20101114_AABBRX vaidyanathan_b_Page_116.jp2
4a63f13875fbc70d1433fb04b7cbf09d
09cae8309b7a3b0a7113d82e4c52cee559fb092b
120270 F20101114_AABBSL vaidyanathan_b_Page_131.jp2
8adcfd2933adf8586539eddf583f8b77
3a7c290b656aeb6da84aa22dee849b46f18c3950
18608 F20101114_AABDBI vaidyanathan_b_Page_151.QC.jpg
a191236902409d84f1280f6952a5e743
8694e59e36ec1cef60e11e38aeb8263880a98c8b
7095 F20101114_AABDAU vaidyanathan_b_Page_144.QC.jpg
fcb735827c23fd806bbf403a30860af0
dc1bbd92edc2f5c14d25be75c062215fa93be3b9
7069 F20101114_AABCWC vaidyanathan_b_Page_080thm.jpg
74c532c0b5847ad61598b8571a9d9199
146edc55858cc2315bea1520dcc429cbbd9ba34a
5439 F20101114_AABCVO vaidyanathan_b_Page_073thm.jpg
8a403abbd18bb1e5616599be9ee3c935
a11789e93ed51635b8d7d5346299396bc01d4c0d
119247 F20101114_AABBTA vaidyanathan_b_Page_146.jp2
85d6186374c635c59606d6ca8ada3e3d
1e8917d06c6eff794d00066400a284fceffbfeb2
119216 F20101114_AABBSM vaidyanathan_b_Page_132.jp2
7a6f37190ec27ae399242195dd6f8c55
b5bc82ec35f3d0e51ee3fda708781f292a0c2422
6047 F20101114_AABDBJ vaidyanathan_b_Page_151thm.jpg
cabe619ff83d31dd2419e1af741a7faf
cde4f959e40b23539275597bcc9bc90750f40e38
2497 F20101114_AABDAV vaidyanathan_b_Page_144thm.jpg
46542c5a47993faa1220e3262ca1bfa5
b8cba14b97d4b5b67d1493c078cf626ac7543265
21511 F20101114_AABCWD vaidyanathan_b_Page_081.QC.jpg
d9e7dd5ec2d7be200b0c048c0e1594b6
428fdb45f37508ce6026e7064962706feec41673
16914 F20101114_AABCVP vaidyanathan_b_Page_074.QC.jpg
7801b2e4ec19a51a35abd5a62aa61a0b
81014662402388870512ccc3f7cd512486bd2946
123901 F20101114_AABBRY vaidyanathan_b_Page_117.jp2
e77d2ec26dd754b81f6f640863d36645
43d78512635345799ff38b7345d1d1230de17f6c
122283 F20101114_AABBTB vaidyanathan_b_Page_147.jp2
4f12a4a9f3c9806d26b7828d0932f1d0
75862701b3ab5580b3f35deb509c4e376175dd4a
119169 F20101114_AABBSN vaidyanathan_b_Page_133.jp2
ff73216f68078c0c1009436439fcd769
9f997d1ffefaa9c93c7f58d63899aaa9ede2f5b1
18694 F20101114_AABDBK vaidyanathan_b_Page_152.QC.jpg
697a5e90d54d5fa5700deadaa549e4f3
2f2cbe212af9155e3161b38a84289aa7ede4fcb4
26331 F20101114_AABDAW vaidyanathan_b_Page_145.QC.jpg
4ddb290562e35a4da924febb63063f97
462e686a2eb2583eda09ac8eaff63f8e246d3e56
6147 F20101114_AABCWE vaidyanathan_b_Page_081thm.jpg
15c3fd877c2372c502321e8aac8aa7d8
79d6fbd33c0d40d5015aaa91feb8584453a022c6
5136 F20101114_AABCVQ vaidyanathan_b_Page_074thm.jpg
d892e442dd3707684aaf1917cb35b943
be52cd68aa4a1d0fbb154629af317818ed112aa0
129979 F20101114_AABBRZ vaidyanathan_b_Page_118.jp2
491fc18d1e692785a04f7e8a076fb9a8
9b56a2ae7acadc505b240ea145b9c4150649a680
118767 F20101114_AABBTC vaidyanathan_b_Page_148.jp2
389506a5acf5e23b2b8d07d3866bb5ae
d4e45a8dc31ed4f96b9beb4dd69acc7c0a0278ae
17259 F20101114_AABBSO vaidyanathan_b_Page_134.jp2
ad2a81c562b50842ec7708f7cf33dcec
b4e487c4740cb48987696496a7f73b04b8780469
24971 F20101114_AABDCA vaidyanathan_b_Page_160.QC.jpg
9a7be259038a2bc1ba48425920c2c4fd
129d68d8aa63761ec8a183705bfeb81cb7f22f3b
5433 F20101114_AABDBL vaidyanathan_b_Page_152thm.jpg
51ccf7b88c3f674381a3e702c5a9ed94
9af02420acdc4d79533106f3aab10a1b14c86abd
7024 F20101114_AABDAX vaidyanathan_b_Page_145thm.jpg
e53237b37fca10ef17c193eeb2bd1b13
cd057f4686771c5f81c4655da1939ebb47a89420
22247 F20101114_AABCWF vaidyanathan_b_Page_082.QC.jpg
37ee4e5978b1aa0de8ee8882c799eda0
0a9dab042a32b0cde2a0b70893702ea855f78bda
25113 F20101114_AABCVR vaidyanathan_b_Page_075.QC.jpg
9cdcc0dfc961ae6392f09a3a60b6ffa6
662aabe758a5a0b5f5a770c18a2e9075ea4d919d
95972 F20101114_AABBTD vaidyanathan_b_Page_150.jp2
5713dc245d1279100dae001cd260d5af
88cfe6ba5cf7089915b7d9bbade2d3cfacd003b6
93592 F20101114_AABBSP vaidyanathan_b_Page_135.jp2
686e0f0057d0e374909c0c917fbf9c4d
e153b87b75ca8946a285dee39379fcd3ff18afed
6683 F20101114_AABDCB vaidyanathan_b_Page_160thm.jpg
27b3db7ab0433f19924b72b4cad07f0b
2ebef5ecacd0f2102748971c48648e8983de5442
25905 F20101114_AABDBM vaidyanathan_b_Page_153.QC.jpg
d11ea5719f610e8355ee7d685612044a
6758e4235efd223ad2adf9b4fdb9cc7e75ad4cb1
25790 F20101114_AABDAY vaidyanathan_b_Page_146.QC.jpg
d207cb3d2804d87a78226228e9a68654
e7409691d6f681c4c9a0293e3e42fa7498e4ae49
6003 F20101114_AABCWG vaidyanathan_b_Page_082thm.jpg
18e113b1747f21d0b0d33297dcc611f3
50fcc060aca190a063b0f365ba17ac4518b803cb
7137 F20101114_AABCVS vaidyanathan_b_Page_075thm.jpg
a7c40032c7e694d0c68606747b62f872
c8bf636dc1311ea0166435a9fb4c1b60f1de6d73
78288 F20101114_AABBTE vaidyanathan_b_Page_152.jp2
837b8c9a39780f8ed7f7c043163105a6
4b272d490f19e6e70d83ce25b4431bd70cbdd9ad
34024 F20101114_AABBSQ vaidyanathan_b_Page_136.jp2
e6c2989770af28eb71a5c8df30c4bdae
90bd2ca836dcbe5ba6ea660a89c8655758266d69
25849 F20101114_AABDCC vaidyanathan_b_Page_161.QC.jpg
35cee28115479073c7bf998d41b93600
519ac44570849f82f7b5e8e458a0f89374b8d3e3
6852 F20101114_AABDBN vaidyanathan_b_Page_153thm.jpg
958e4ca30358d785b932d91b4d33e51e
a162dd939da9c40a1607263af085b5c4fd06423d
6798 F20101114_AABDAZ vaidyanathan_b_Page_146thm.jpg
342710b4f9d6cdef922d5813107c4fe1
b041cae8911307671bcffb96598aecf2b25f06c7
25412 F20101114_AABCWH vaidyanathan_b_Page_083.QC.jpg
d26fe4717b6d116bfb4dd80944220f7a
fde477fa678a9a6be4c2662448a6265f68d9fe91
25059 F20101114_AABCVT vaidyanathan_b_Page_076.QC.jpg
2bcc1c3503a8f1044dab532b27288397
d33d303a6f9f17a5d22bf9b71cbfa6485f7e1e02
118596 F20101114_AABBTF vaidyanathan_b_Page_153.jp2
ccba12b3c4878d4a472c144c046f9f59
1ea1cc7080f0e78d6920f4dc99142302fadc9401
38635 F20101114_AABBSR vaidyanathan_b_Page_137.jp2
460523ca55572ecd4e506d6dddc986e5
23c4f43920fe1ce0e9671f5a27817ef30d8cd71e
6902 F20101114_AABDCD vaidyanathan_b_Page_161thm.jpg
afb91f2d9ae27c48da91fd40ed26b789
ab41cdecc51969110373f5e5354d8a2fec835e89
25181 F20101114_AABDBO vaidyanathan_b_Page_154.QC.jpg
5a4ce1b050ae50198aca105e0a6645b9
caec90e6b36d4e2026246aee94116e0098f9b97b
6859 F20101114_AABCWI vaidyanathan_b_Page_083thm.jpg
1916e5aa2425cfa4a2ef9c299763c6ff
1046421239f87177751ccd7f7a1dcdae440de9f8
6853 F20101114_AABCVU vaidyanathan_b_Page_076thm.jpg
c13f84fdad21a6e37bf317437674d3bd
407618176680881d6e5c26e3db2cd52abf941d50
115497 F20101114_AABBTG vaidyanathan_b_Page_154.jp2
1c5817078c62ec596290399becce4d50
b690da35c6c1713b8663de8ae4c3f55f9c19de20
31503 F20101114_AABBSS vaidyanathan_b_Page_138.jp2
69f9ae4242ed2ee929dcf31287568380
72df1073159f4ad3c3c7b67031f39e20cb5cb35b
24734 F20101114_AABDCE vaidyanathan_b_Page_162.QC.jpg
d300c62fab775cd2becd478f84cb264e
58a10a30945c108913913abe927a1a7542491c46
6930 F20101114_AABDBP vaidyanathan_b_Page_154thm.jpg
38eaaa9eedff4f3a11e8233c9a1833e1
fc9f58518b38cfab2acd8c020a8ff2345caed203
24681 F20101114_AABCWJ vaidyanathan_b_Page_084.QC.jpg
99fd05e664dfb4d7f0389fe3f0afb085
a0afff3df477f895ad78dcf0d4a314460802e4ff
20182 F20101114_AABCVV vaidyanathan_b_Page_077.QC.jpg
198d427de3b1f3761f676a2c6c203c26
5e974c88b1895a0b804aab91c695c9e1ed5acb5c
124318 F20101114_AABBTH vaidyanathan_b_Page_155.jp2
5c17bbcedd645654dd2f42fb87bda6d8
10f2183dbddec887883be966754053db267d9f6c
36334 F20101114_AABBST vaidyanathan_b_Page_139.jp2
1d6379382269022d7699774600bb0359
de7118b339323264e131498cb72cd1b7685afb54
6948 F20101114_AABDCF vaidyanathan_b_Page_162thm.jpg
a5ecc306e205de0addb38c3755854ba0
b6f451106f8d182eba366dfe68041fb564237119
26246 F20101114_AABDBQ vaidyanathan_b_Page_155.QC.jpg
5a8cf0470b6058ac25d85b1491e0a1b3
e9d4fe539a7daf3c8fb3fe9638b50194c14f86dc
6757 F20101114_AABCWK vaidyanathan_b_Page_084thm.jpg
0e492fae8efdafd10a6a0c3eac6398bd
fca28bc97b6166dc61cff99c2f8574f667566f58
6059 F20101114_AABCVW vaidyanathan_b_Page_077thm.jpg
43baeec75c3a42c9186e1ba234f1413d
2ef0b232781c53e2845af10e8e750d99e22b27bc
78394 F20101114_AABBTI vaidyanathan_b_Page_156.jp2
c4c9a81d4d30ab0957509a14da73247c
5b4824152e66139007cf03cfb41d3b0f1f5152dd
470075 F20101114_AABBSU vaidyanathan_b_Page_140.jp2
4b1cacd7d3069a2bcc5002eef264e2a0
82ab5344f518b1321f05b5ce19f5c8a321fb7370
19816 F20101114_AABDCG vaidyanathan_b_Page_163.QC.jpg
e8d0aee88380c9c46df7b1ad9c232a09
b19813ae61f4f89766692e21dbab73ea52920a9a
7252 F20101114_AABDBR vaidyanathan_b_Page_155thm.jpg
341c171c4fc891f5154efaf8aa07ba14
bdbb92758e53647ac53e0b83ea558e0d0e41e1d2
25858 F20101114_AABCWL vaidyanathan_b_Page_085.QC.jpg
2362ab172c76898fa73d3218f2462aa0
7a89c59207cd6547e1ce1e054ae152625519fe00
17721 F20101114_AABCVX vaidyanathan_b_Page_078.QC.jpg
dff3318d85a2bf93060e592bab5d5239
bdbfd3ffd0d0d344603bed8522c5faf45d12eb99
93260 F20101114_AABBTJ vaidyanathan_b_Page_157.jp2
e0ece01f12ed7d888ccc3ff34e3070f1
5f352a79118db380012656b15c5abf2adb668ff8
45972 F20101114_AABBSV vaidyanathan_b_Page_141.jp2
93fe212987d8afc21ed51d1244613aab
3876a7b7616cd141020e42f9eafbaa0c336fd58b
18019 F20101114_AABDBS vaidyanathan_b_Page_156.QC.jpg
4e263fa27dc62fa1fe140908504ac392
771c98865bbeff831570b492beeae959cc525381
14885 F20101114_AABCXA vaidyanathan_b_Page_093.QC.jpg
53d572ebcf515bd94a903a74b9101cc5
82f89cb51ac35d96c2d3d684284217e44a1168e9
6914 F20101114_AABCWM vaidyanathan_b_Page_085thm.jpg
fde9b16919cc62c3744031af0501118a
cdf5d1aa1efc44012f40083c1536d95ea07d9735
5513 F20101114_AABCVY vaidyanathan_b_Page_078thm.jpg
59360679e0d3722a0ad5ea1f9321f638
eaa3aa2d5e9dc7fe80eb8e066a9597e4005ee8cc
117183 F20101114_AABBTK vaidyanathan_b_Page_158.jp2
fdf89f09794cc9b6ce1ffa546efa8488
db04420661d1fb88c4e5960a2e0d32cb3ffd32ee
242043 F20101114_AABBSW vaidyanathan_b_Page_142.jp2
62a8aa2d1f9c471beae6e19f09484577
9b7fee4c06e100ab9c9f2100a2bcd75a6033e163
5609 F20101114_AABDCH vaidyanathan_b_Page_163thm.jpg
c1d9c0a4c72fe636ebfce0f8494bff18
1e60907f4f0f3fae128e241dc54315004502a17a
5403 F20101114_AABDBT vaidyanathan_b_Page_156thm.jpg
ccc7872da792ec2d752a83278c5b069e
851dd53502b5eb2815ccace62ecf7ba3839937aa
3955 F20101114_AABCXB vaidyanathan_b_Page_094thm.jpg
a0b769d447a99a058de62c769267631e
0d05411a61d17cf1d1343cd8ae173aedc7b68815
24641 F20101114_AABCWN vaidyanathan_b_Page_086.QC.jpg
f8c37b0a5ea601167f01dac11023f386
12e2ea79fd5bbd8f03bb676dd901ed25ffb099c4
22665 F20101114_AABCVZ vaidyanathan_b_Page_079.QC.jpg
da752f597311d1d63e6c4556dc6f7340
60f45b95093c87bb9c2ad1ae136fbf8c06c35e51
109274 F20101114_AABBTL vaidyanathan_b_Page_159.jp2
fb23f2d35469cd8c523830e5cc6375c3
98461ddac870c87a73530dd36ec1cf2b44418676
400171 F20101114_AABBSX vaidyanathan_b_Page_143.jp2
0face3ceda180a5c7301855052246663
d8d690d5ecce8e7858af91692a27d9cc3f0bca59
25416 F20101114_AABDCI vaidyanathan_b_Page_164.QC.jpg
94c25188b64276748613565a6e8f18fc
05a2f7b655d166f6b7acc6e9889f036aa83f8bb1
20058 F20101114_AABDBU vaidyanathan_b_Page_157.QC.jpg
37bb3f0daf05237bb6f715e58ceabd72
84898e6df9ae22eea91b15496a38b90bc8e90fb1
10174 F20101114_AABCXC vaidyanathan_b_Page_095.QC.jpg
b37678ea74f403f066fc74d4a05678ca
b10abb3b1d3131dbb85fd45c43c08e661df3f159
6963 F20101114_AABCWO vaidyanathan_b_Page_086thm.jpg
c951dd0152a5a7a68e4ff6b0e9d190eb
6445dc0c2605268a657f1c876f9600cc21245686
118929 F20101114_AABBUA vaidyanathan_b_Page_174.jp2
d3e00e30142fb824faef741b5b246886
563b19f5dc70856618153eec9521c2bd45dd1d3f
115264 F20101114_AABBTM vaidyanathan_b_Page_160.jp2
54e6ef4329e579c58b53f48076c49409
b431c848c671f9291591d3af21579ac12694d0ea
221222 F20101114_AABBSY vaidyanathan_b_Page_144.jp2
392f4f28a714eff6499145497b79e91f
87e8ef0e19ce68f74bd3bf68897339a660f34054
7029 F20101114_AABDCJ vaidyanathan_b_Page_164thm.jpg
9d9819af3ae5bc88be71bba8eea284a3
199e1005d5f7c2dde8081b64e2ffdbd40b9272c8
5771 F20101114_AABDBV vaidyanathan_b_Page_157thm.jpg
7bebd292ed192b4ca57ad5f120400dc2
4fc576a901c3c5fe9e748f5ac313d6f61bd767f8
3234 F20101114_AABCXD vaidyanathan_b_Page_095thm.jpg
63a3cc8bb4a953518b49ca8fc96f74a6
110a52d7b6008c4a44f853a423d1b6e3e6f56db6
23753 F20101114_AABCWP vaidyanathan_b_Page_087.QC.jpg
f7e656934bfad28353e2b38d06b02170
013e43ca3a4cb1c6d3db0f5c8126659c066a3bc2
119624 F20101114_AABBUB vaidyanathan_b_Page_175.jp2
0ce441d127d22a70da05b0fa8e8a924b
d3045f0b007b1fb6a17e99ba55670a4c09b46fbb
118205 F20101114_AABBTN vaidyanathan_b_Page_161.jp2
fafb66265af3be42fabb1b80f959c295
4d76e5e41a204019d1807ebe1ff868b60125703c
25428 F20101114_AABDCK vaidyanathan_b_Page_165.QC.jpg
458dd461c84447f3bd98be8a0e59161f
9282535219363a94b2cd4b79fe804fb3c9e1f743
24504 F20101114_AABDBW vaidyanathan_b_Page_158.QC.jpg
43cc30bb0318da33a244402e7fff8f84
979da371ca65774078a41e155533ca12d17371d4
14651 F20101114_AABCXE vaidyanathan_b_Page_096.QC.jpg
bc12ffd0892df61f9c966eaf1b2bb637
d0448cac582a0f484d812ecb3e620da035f3b205
6437 F20101114_AABCWQ vaidyanathan_b_Page_087thm.jpg
42bb468f066eb1a44f3023afc005d68a
0967981aa762052c90b5b3e3a54da135d563b763
117127 F20101114_AABBUC vaidyanathan_b_Page_176.jp2
85ea3fe4954a4193575d5f89bc538a11
ae53365e42c5e4a956df688194c7bc1ed12becac
114040 F20101114_AABBTO vaidyanathan_b_Page_162.jp2
4501408c171b134038333e1c1bdca4a8
6dac98cd43ca20200a6e3d67ad05fd9c2077b3ca
119306 F20101114_AABBSZ vaidyanathan_b_Page_145.jp2
b9c8c26b4e49ace244c945b6ffc55e69
911ae3f0849ae172aaff7154c6d7e0963d892495
21038 F20101114_AABDDA vaidyanathan_b_Page_173.QC.jpg
dbb4c0c029086d98f124f2d179b8bfcc
092ca33f494921c26ee4e1d7b4f7c07aacea785e
6880 F20101114_AABDCL vaidyanathan_b_Page_165thm.jpg
d6811afcf8d44922908d8d702232b66b
cd7c833c9c82fa5952afa737e7b3868b7e00fbc0
6886 F20101114_AABDBX vaidyanathan_b_Page_158thm.jpg
915098ef246d048b877f375dd21340cb
66c4761e8493facd78b08171d2b298cbe5b984b9
4773 F20101114_AABCXF vaidyanathan_b_Page_096thm.jpg
38c158cac70b8392d9a0653c65396b54
59f82dbdfc928e32d85582c2242e027add20142c
F20101114_AABCWR vaidyanathan_b_Page_088thm.jpg
12aa620109c474c86120b9a5e80b75d1
587c9ba3685addd04ae595cc54cf168862763d0b
115254 F20101114_AABBUD vaidyanathan_b_Page_177.jp2
81deb30928221d3284d93ec8350e19e7
439f331f18950889910790f112fe64bace4e11f4
88042 F20101114_AABBTP vaidyanathan_b_Page_163.jp2
0adcb5b48f08ac852a039e17f4a89142
f52383f6859de651b297a7e356016a5928d95a56
6261 F20101114_AABDDB vaidyanathan_b_Page_173thm.jpg
7b8ae5c1c89d54e813e141cb13cec83d
64a0c64cf122ed83fa3c262a827bff49065f2335
F20101114_AABDCM vaidyanathan_b_Page_166.QC.jpg
81be57834210ed3f82fe192569493bf7
2eaf8c1a8a2646075c5a7d1523327b7a37efe528
23979 F20101114_AABDBY vaidyanathan_b_Page_159.QC.jpg
30fea744f5df7407650a940aa6ef5680
3a27551f2132018962a497a3ab52b7d3c78808a6
10199 F20101114_AABCXG vaidyanathan_b_Page_097.QC.jpg
2bc46b042fbfa0a25d13c82e0c785d25
bb02b87ed0c837c23a39fd1b5dd6e4621d36adcd
23840 F20101114_AABCWS vaidyanathan_b_Page_089.QC.jpg
201ba10661fd946e6b6252db5b2196d8
14e2393349089de82547c6751f5f496b93fc7cd7
119898 F20101114_AABBUE vaidyanathan_b_Page_178.jp2
c6e4ee7613587dbda031eb07bd6f9058
8f4de88b2d202809667135f10d28cb890668dc41
115026 F20101114_AABBTQ vaidyanathan_b_Page_164.jp2
2867323736fe351ca9cc2adc95e9e3f3
722d3c06a5c952e658fa487bc8dbe49b7f7fa59d
25433 F20101114_AABDDC vaidyanathan_b_Page_174.QC.jpg
b2bf07c4918a00e0b1ef79d808f019c0
d51cbfce9c49421082812e1e58eb5d5d86ba401d
6807 F20101114_AABDCN vaidyanathan_b_Page_166thm.jpg
e9a46e8eb50b54f40e7d91afbf72c07c
1d5c7b6027cc93c7bcab09a9e5c789ca0690131e
6576 F20101114_AABDBZ vaidyanathan_b_Page_159thm.jpg
bf7180723b5612074fa5bf9c86e8daff
496d728e042449ba56157abcbb02f54bb214707b
3471 F20101114_AABCXH vaidyanathan_b_Page_097thm.jpg
e2442d3716efdcc0cec3c2b98cb18896
e655958857c65aaa4fa2c73ac3890c1117369f2a
6725 F20101114_AABCWT vaidyanathan_b_Page_089thm.jpg
8e28ad08bc982b55637cec15f4655c2b
0f12ed2f5d7a9bf8ea3407516db43bcdf8c8f0d5
78682 F20101114_AABBUF vaidyanathan_b_Page_179.jp2
51b4d1361c894553a0cf03fa4deaffba
23581b8e4a11d1c8b2ac268542aa4b34d948a27f
115110 F20101114_AABBTR vaidyanathan_b_Page_165.jp2
0769ebe5c37a3d3154e7f458334cde7c
19d70b9fc43b4613e056684e36a377e8b907850c
1053954 F20101114_AABCAA vaidyanathan_b_Page_146.tif
5de727af692649b85113d02efdbd5ab7
044de02e2e35500b8c470aae0d9a09ac6967558a
6876 F20101114_AABDDD vaidyanathan_b_Page_174thm.jpg
888d447219c1d6c1739dd068d55b6485
f3a9cc9f5cbf87d8788b046b406487037bfffde6
24718 F20101114_AABDCO vaidyanathan_b_Page_167.QC.jpg
6b583d49fdf863c3189c788afec31e7d
1d443245adee3ed3d1cbf28bd074fc50c84d9d42
10070 F20101114_AABCXI vaidyanathan_b_Page_098.QC.jpg
34f79f61e205f8c4e8012364c2049e6b
be0514d4acff343ac559061f4e5c07e2aa390ade
23285 F20101114_AABCWU vaidyanathan_b_Page_090.QC.jpg
5a89f7cc8c22ba0799768d1cf60af231
e6db80b0daf9e2efd538b2903bab99d78903173b
63376 F20101114_AABBUG vaidyanathan_b_Page_180.jp2
9fb2ec943616fb9167175033b155ca7d
0b6b0a042b05ea249ef029059874d17b4503e38a
111370 F20101114_AABBTS vaidyanathan_b_Page_166.jp2
7758abc4b10a58226968bce6c2ae9d93
1e850bdb0f452786aa361da027d13a30023af1ef
F20101114_AABCAB vaidyanathan_b_Page_147.tif
f9ca130663a61d9ac72a0b29035bd630
4e1b366fd74bffa2bf309d0e8f3221f02404f115
26206 F20101114_AABDDE vaidyanathan_b_Page_175.QC.jpg
d7536c39ddaeca952affcf4aa870dff9
54b016f08b6effe0c8dca9d8da326e32c84f4e08
6662 F20101114_AABDCP vaidyanathan_b_Page_167thm.jpg
2aa7f74a8c701b885ce1543abe1617ac
9d8bedaeab89e8f5fb6af2bdba9f3d2f6e912105
3182 F20101114_AABCXJ vaidyanathan_b_Page_098thm.jpg
576e6599229a37c65245162b4f670641
f97823a164dc808e490032a7e95cafb1efd404c0
6695 F20101114_AABCWV vaidyanathan_b_Page_090thm.jpg
fa1524c96def02c956c81e2b0a756a4d
a7fe0e952edf02f5f08cc6a57900032478f42ba0
367494 F20101114_AABBUH vaidyanathan_b_Page_181.jp2
13023ebf594d86b7c549baca3df7dc6e
77fa329afbc52d40a0dcb20d1ca8aabd267d56be
115698 F20101114_AABBTT vaidyanathan_b_Page_167.jp2
c21bb8aca7addcd572ff8c93a0a51a10
9f5339c60bae32b06aaebd9415a73e29287c6a00
F20101114_AABCAC vaidyanathan_b_Page_148.tif
d82fda2d03366a262825f796bb351d2f
cc8596221d48f6f35d826f998761641f390e30ce
F20101114_AABDDF vaidyanathan_b_Page_176.QC.jpg
da3744418803a0d0a4c0fea2514cbc86
04c49e9462ab0982e19818977e8a5ff7efd2f2a2
24310 F20101114_AABDCQ vaidyanathan_b_Page_168.QC.jpg
27f6349c40f02c4378690ff3d54e5fb5
b73a5c30f990c864dc0d01a612bf0bc568464436
25444 F20101114_AABCXK vaidyanathan_b_Page_099.QC.jpg
50176c54ae8ffd029de75ee72fcdd7d7
4faf1577e9f6cb80b711ac9fc1844a2d5ea8c796
17910 F20101114_AABCWW vaidyanathan_b_Page_091.QC.jpg
8ffa280a5976c693f96863429f014184
1551b70cebd604a9275ed846b250e4161b052223
274872 F20101114_AABBUI vaidyanathan_b_Page_182.jp2
65df5b935698507369fa1263f0adfc1a
c26a97d471baf029ee10998d361cb1f0dfb2a6ac
116392 F20101114_AABBTU vaidyanathan_b_Page_168.jp2
4ba48fe69c305f8fade172579ad4d628
cba3ad3559110edd772b7cb34357fe5d47909d5a
F20101114_AABCAD vaidyanathan_b_Page_149.tif
0e5250e7c0a2be8d81fa628fd4b189ca
ceb18118e27ab74ebdc5fe372f4e303b120530c2
6702 F20101114_AABDDG vaidyanathan_b_Page_176thm.jpg
0341b2be5855b62bd78f44b929a14681
c870611f8dad8b1af01cf40b8b00ecc92f67e4bb
6940 F20101114_AABDCR vaidyanathan_b_Page_168thm.jpg
168a398c811fd56c79b23bf34d842846
7b6bb01836a1ee4cb797ed3a776d4671bffb6d70
6870 F20101114_AABCXL vaidyanathan_b_Page_099thm.jpg
719b4499708a682e78a33ab37b2e67b8
c3f239540683ab3b8c9d0edef3cfaa1ea1ca9c8e
5004 F20101114_AABCWX vaidyanathan_b_Page_091thm.jpg
afb96f4429612140d6c5a09dd66c9de7
d620dd675e4ee7116bc6a6fe47766c6f38881523
126012 F20101114_AABBUJ vaidyanathan_b_Page_183.jp2
472c60b30cfea6fe0432e5eea715e7a3
c87c23a68c06eea29a9ab7af4a415405319df496
110279 F20101114_AABBTV vaidyanathan_b_Page_169.jp2
0c3c6ad012d6f0ba2a7fa1ed9b3f9280
7735e7ab1ffb722bdb04080c16e539f1279dc7ff
F20101114_AABCAE vaidyanathan_b_Page_150.tif
e612fe3988cf278b2f3be02b2347df64
7ae6c3b77082e98636509c6921ea22fa3b97b71a
24668 F20101114_AABDDH vaidyanathan_b_Page_177.QC.jpg
e8bbab4f303b0a53f2c2360c2c1dedb1
3877547c278d3018cdd7c628ae67e26a3511b750
23551 F20101114_AABDCS vaidyanathan_b_Page_169.QC.jpg
42127cfca16f9ad4b5af6462612f1c26
e962a6da65ddfefcadd423fff5717c9cec72e372
25823 F20101114_AABCYA vaidyanathan_b_Page_107.QC.jpg
417ab54166abecaf556c740ad98c1a1d
1d73736b854b71198a131f70afb536021e927bca
25391 F20101114_AABCXM vaidyanathan_b_Page_100.QC.jpg
c842bf48084821d87bf2b731cd3c8028
1133c32888fd6f90fea5bd926d157bfd70a8e475
24389 F20101114_AABCWY vaidyanathan_b_Page_092.QC.jpg
c574c3c72dd21adfde51742c64947ed7
81f36b49cc0145238250e98d5503365220d66248
127619 F20101114_AABBUK vaidyanathan_b_Page_184.jp2
f2fbb825cae7d6f9d68d94b258fed473
2c3d6ef746877fdd5d5168c82b4f7ea4aab10bab
120328 F20101114_AABBTW vaidyanathan_b_Page_170.jp2
f6708f70d3b22188e669111bc9f49329
7da45af96f79e615c49918a1a4c36747b9685e20
F20101114_AABCAF vaidyanathan_b_Page_151.tif
52edc4432dd72605e0f2824f566681a5
7f997c998fe3a0023dcd26883d41fa9970b49380
6718 F20101114_AABDCT vaidyanathan_b_Page_169thm.jpg
fb04ebe62606f1ad359906916c01ad6c
42532d849317077eb89b389fd653226750ff4121
7053 F20101114_AABCYB vaidyanathan_b_Page_107thm.jpg
51a8631fee29b1ee71724a77a440a99c
e736dbc6c5562e7d6a52bdf90dd394b33e3fe8b0
6979 F20101114_AABCXN vaidyanathan_b_Page_100thm.jpg
6ecf2fbe3abf15a35426df4a20df2ace
22df3c4df664d76b295dc33924aa85eaa6b1c57c
6419 F20101114_AABCWZ vaidyanathan_b_Page_092thm.jpg
dd22a715ff80f2a58819b3fffb9fe4cf
660c6abe7687c68f77ec82d3b4200a8e7f2f1a1e
134085 F20101114_AABBUL vaidyanathan_b_Page_185.jp2
857c5ff65957a064e534e015cf01b638
7d12efc016e6556e8d17b4056c443c9876b609df
118062 F20101114_AABBTX vaidyanathan_b_Page_171.jp2
e717a7a7ef9deac460dafdea06fa6741
003914f095d4b4ff61dc03aeb5ec969d5b005ebb
6785 F20101114_AABDDI vaidyanathan_b_Page_177thm.jpg
ddcd6a597b2dfd362809a318677771c3
6f19bf26a1b82d7963235429510506e29b413d6f
26552 F20101114_AABDCU vaidyanathan_b_Page_170.QC.jpg
e030126319cd8d798153dfacd9807fe9
3e981b7797d1ab02fe834d8094d1099eea7786a0
24709 F20101114_AABCYC vaidyanathan_b_Page_108.QC.jpg
695296838cd79a024f4a433e5ca3853c
0fb23dcba98dd71f263ebefe4d8d4e4634944023
25878 F20101114_AABCXO vaidyanathan_b_Page_101.QC.jpg
d40e89f6066e93df4a258f8c8ba636cc
a950c4f1a8f09d7ed5c6e2d7859f513ecf2c191e
127302 F20101114_AABBUM vaidyanathan_b_Page_186.jp2
ea5964a5e629968ecfe961a531bacf62
8eb3ccd6694ed871aae803b33e2c0ad43c8334ea
122799 F20101114_AABBTY vaidyanathan_b_Page_172.jp2
483f0413a6dc3fd9a165c240ff3672ce
c1620686680ffd5aeb03d4d18783633a42fa0dcb
F20101114_AABCAG vaidyanathan_b_Page_152.tif
8099588074bca44279518151c3bb332a
8e02d39fc32c48f4889e2a2010d36ce1c9879dbd
25271604 F20101114_AABBVA vaidyanathan_b_Page_010.tif
f92bb50db870f997e8d6a800a9408fe1
5326296b4b7b1b7d2afa319fe7f9e9d010015f5a
25710 F20101114_AABDDJ vaidyanathan_b_Page_178.QC.jpg
cc063d7496200252b2ddfb9537083a82
08ef97134a9e82b2133ea9212a88b3ba5bd03ac3
7103 F20101114_AABDCV vaidyanathan_b_Page_170thm.jpg
a5d41fcb47d0adaf35a593818666cc37
6876c71fd287c1232fda0e1e10bfb9625f60b68d
6634 F20101114_AABCYD vaidyanathan_b_Page_108thm.jpg
153bce8f8acc0388c9d5f071648a900e
0628e2d39146c4a3d6624d6c57db55493302588e
7041 F20101114_AABCXP vaidyanathan_b_Page_101thm.jpg
28ea57757c03cf1600970354d2e4957e
43d6173c5c46c01aa3cfa16cdea5e886a52983d0
134087 F20101114_AABBUN vaidyanathan_b_Page_187.jp2
55de9190695de74d1630ba66ecbb906f
3bab1f61bdbdfa4e6aaeebeaa10be4cf3b60bd81
100959 F20101114_AABBTZ vaidyanathan_b_Page_173.jp2
a619e3eac7829a641fb8feef52503f67
b472b2df8e79a2733d710f1cb67d02b9458c10e2
F20101114_AABCAH vaidyanathan_b_Page_153.tif
fbdb8fce2b91499e9d0838ccacae6e5d
2475dace25d414e20c9ecd1ec13c240a3af9b1d5
F20101114_AABBVB vaidyanathan_b_Page_011.tif
a74490ec2577cb509a1b1241c57c9f40
0389138441bfa3a1bbdc3d861ce6b18670d52869
17879 F20101114_AABDDK vaidyanathan_b_Page_179.QC.jpg
9e49bcd5571b88f61552bf7969ba7807
4c0b44f483f6639e3dde88c17e0bfde48943160a
25986 F20101114_AABDCW vaidyanathan_b_Page_171.QC.jpg
a056d7d274b9c2739ca205fa919b6a3c
c1ca7f1f5ee894806ff8d5ef2378f9e746787fb1
23334 F20101114_AABCYE vaidyanathan_b_Page_109.QC.jpg
5bef7d308c7b0fb52bc3d82b07faf883
ee5b1ae219899110ce6bb73d7644aeb8e6f9b85b
26352 F20101114_AABCXQ vaidyanathan_b_Page_102.QC.jpg
f934bd4ff2fccee47a209e25694a1242
c31e4482b201b63d65ab259cb7a9f5fbc693b4ca
128659 F20101114_AABBUO vaidyanathan_b_Page_188.jp2
362bb8bd5a704d7dd69d5b50d9f9ac62
e11bbb0fcb1e7c386e4ef19e40eac9e4107b6ea6
F20101114_AABCAI vaidyanathan_b_Page_154.tif
7b751523bf8d08245db4732a24e783a8
061b6da73e0e304a8e77c10de444ff5780121e5f
F20101114_AABBVC vaidyanathan_b_Page_012.tif
056e60f356dcd9ee6d7bb4ec1e0ef659
6d665c1bfc1a629d4b38a2d9e1c8897cf9643766
25992 F20101114_AABDEA vaidyanathan_b_Page_187.QC.jpg
1324d94158ff9c6323bcbbad3142e1b9
a028258ba377238dcb6128b7a297b5a7652718ce
5152 F20101114_AABDDL vaidyanathan_b_Page_179thm.jpg
98e575d4fe7c57267ce9995f33aaceb2
5be8114fb928d8aeddca64eee5ad0dfe967b5a45
6975 F20101114_AABDCX vaidyanathan_b_Page_171thm.jpg
a879df306153ad4bb677aa6bffa3c60c
d39b41f2a0fce18fe12eae24eac095bffcf74226
6563 F20101114_AABCYF vaidyanathan_b_Page_109thm.jpg
498213a1694dfb9cd952c7454200f791
bbe9d9546da7d86173c1c40cc09cad283613b8c2
6999 F20101114_AABCXR vaidyanathan_b_Page_102thm.jpg
0e02269723350cb86cabc3830c390473
1fc3f266ee5c6462dc07f0f405bcfb73ab1bad7b
130171 F20101114_AABBUP vaidyanathan_b_Page_189.jp2
d3f381dea5d528b103f0ca213d1ca7e9
4a67a888892e929394c07119d02270e1cd9ff1f8
F20101114_AABCAJ vaidyanathan_b_Page_155.tif
804c9bfbfc1ac51f6b5d07a83c491d73
10dd386e6f669e6e6fc0efc89f5bc23b8a23a502
F20101114_AABBVD vaidyanathan_b_Page_013.tif
68fcc86f968c9074b59c17c81b6a05b4
c94b943b5901a5071b8c56e58794acebece33e1a
7291 F20101114_AABDEB vaidyanathan_b_Page_187thm.jpg
ed0a19710b216404d9ff15840c38dbef
51d52d9a052d9c114b8b42ca8d03be29838a1bb8
8807 F20101114_AABDDM vaidyanathan_b_Page_180.QC.jpg
4d614f56c5ded000a5704d400ed13afe
ae453613168bcc44b0a528919cfc0d06daaf0362
27079 F20101114_AABDCY vaidyanathan_b_Page_172.QC.jpg
bcbf63330fa971ba153b72f6fe0d9688
c37625f956cf512fca1a27ba980ed2268b26ee82
22770 F20101114_AABCYG vaidyanathan_b_Page_110.QC.jpg
c4627772300da9a70e0ffe7e4f1fe9ab
d4fe7d5d194e1e638cbcceb67ca1405ccb76ee53
25187 F20101114_AABCXS vaidyanathan_b_Page_103.QC.jpg
d53c3fcbd4ab8bff8e0cd14aa23a3969
47e88e2fdb8966ac3d2326320a7176a253c0aa82
13057 F20101114_AABBUQ vaidyanathan_b_Page_190.jp2
57e102c85f6dc71b485a5ed680eb5f57
fee6cf99e79d61cba93f3c486b5fb8e593e8b178
F20101114_AABCAK vaidyanathan_b_Page_156.tif
8230eb1b7f9e95d9c7f57375531a0854
bb3d1e56cb1a5cf10e6e55d30c510498a6de5048
F20101114_AABBVE vaidyanathan_b_Page_014.tif
82aa259a77d5f385bb699f63cc5b178e
e6cb09da558892580404aeda9557ab995ed8ebea
25654 F20101114_AABDEC vaidyanathan_b_Page_188.QC.jpg
9f6c51138f3addf28aa081791a632f85
83e6496b61e1d29f7b30604ceaa7b9e78d591e43
2495 F20101114_AABDDN vaidyanathan_b_Page_180thm.jpg
9aa53ba78aaded12a671aebe636042b2
573ed0f3ca4bb7724694f8bed5a66b510794bcb1
7193 F20101114_AABDCZ vaidyanathan_b_Page_172thm.jpg
0d6ebdb130d7b6c224603fd922994f95
0de68a07fdfd1e99c4821d75d86a2c3c3feee688
6381 F20101114_AABCYH vaidyanathan_b_Page_110thm.jpg
e5bf7500896b17163d846a9d3ce2ac45
8a19618d679254c6a99df0e0c71ad57cd09b4198
7044 F20101114_AABCXT vaidyanathan_b_Page_103thm.jpg
ef47db82583ff00fcdfd7d703be91f1e
6bc13397baf3f07b235fbbeba0c2a55997a761b2
53729 F20101114_AABBUR vaidyanathan_b_Page_191.jp2
1c4e4870e78b33ced1462e1a2de46df5
a95265a65715c121e2a4807c3b03bb9da3c734d2
F20101114_AABCBA vaidyanathan_b_Page_172.tif
2b29b372309697597b3bf1fa1897f1d9
945c0b1ce3f7ae21a86e1552c8b6e383b178bedf
F20101114_AABCAL vaidyanathan_b_Page_157.tif
5f9f45d96704f618ed0b01ea28da72b7
f8c2b4f3ae54bef3e828fcc3ef2b0b792b7e24d5
F20101114_AABBVF vaidyanathan_b_Page_015.tif
2cdf1c7ebe817452e3ee28ff4db06467
8e3a7dae556d31c43990f2a04f5774aa46b4eff8
6812 F20101114_AABDED vaidyanathan_b_Page_188thm.jpg
0aa67836572f26f0081716a8a50f4392
c619a1236b6dd5db2bfb8a6cbac57671da1ec536
10702 F20101114_AABDDO vaidyanathan_b_Page_181.QC.jpg
12717d21d9f1f683f98e0120953706d9
b0a5f058b2c5eb1b1dd2e1be50cbceb49f1aa10f
24782 F20101114_AABCYI vaidyanathan_b_Page_111.QC.jpg
8287d65148e98ac4663aaaff764554c5
63b6de1f20ce54b92f5b99d7a3f96bcaf3b1f1e4
26375 F20101114_AABCXU vaidyanathan_b_Page_104.QC.jpg
d31975baf95d12875dc87daa8cb70a9f
28df507b9fa4e343cd337154bf7edecd26fc7b1f
F20101114_AABBUS vaidyanathan_b_Page_002.tif
c131a4af4274e82869657fb190d7ec62
02179988bf71577c1574f9f4064dcac5dcd30713
F20101114_AABCBB vaidyanathan_b_Page_173.tif
33bf9c254af72ca8fc1f00c1a9bb3ee4
bd5c0f98392fc3147ecce705b4549ff0b414dde5
F20101114_AABCAM vaidyanathan_b_Page_158.tif
ec86268557f4b438c9e32ff112e16364
d774c00ef6a54a578fd8048e344503969fc97763
F20101114_AABBVG vaidyanathan_b_Page_016.tif
4075b9f4d70d38c477794731da099760
344b08b3a33a86b4bd87a2e8512c67a93afb5e42
26240 F20101114_AABDEE vaidyanathan_b_Page_189.QC.jpg
f5e517ba339a2efd6428a162c7e3e7d4
15447a84b861fca2c2d5d9959af629dc1e9f6f4b
3379 F20101114_AABDDP vaidyanathan_b_Page_181thm.jpg
ee61236c97d6c10bd62d4dec7375cb15
fe7c5d221a3754b741d53a8b25b53ac45d78ed22
6673 F20101114_AABCYJ vaidyanathan_b_Page_111thm.jpg
d809c0546a61b6b6094645925073fafd
6f61800cf0fc5d96e80ab46809dff9aeae24aad3
7004 F20101114_AABCXV vaidyanathan_b_Page_104thm.jpg
6079b5304ce186e75ece676e8db06198
9601121224cfdbe8493aeaf1d4ba8815e2526a06
F20101114_AABBUT vaidyanathan_b_Page_003.tif
b09265a319cb660e8da153cd7da3da6f
9ee9c4e0d8c26a1771b1fa223eae5c6650f2972b
F20101114_AABCBC vaidyanathan_b_Page_174.tif
b8e478e03729e3430ee32196ef142c06
c6a3bd22788eecdaab1af8c1e1327802ff343ebc
F20101114_AABCAN vaidyanathan_b_Page_159.tif
855297ea135da74ba3de7eea1ae812f8
5002a4fad4766e3c1517a8f02df9adacfc8ec13d
F20101114_AABBVH vaidyanathan_b_Page_017.tif
0c482117024b76a50974f510ca75fc7f
11f8763fc2034f900bfc8c9eef5f8a88ecc69352
F20101114_AABDEF vaidyanathan_b_Page_189thm.jpg
03f2458019e55d53ec146945607b2aba
7a6ce8236222a2cfe93bfd739514881d9189a8cb
7642 F20101114_AABDDQ vaidyanathan_b_Page_182.QC.jpg
4484ce6f9b992c97f34f796b1c9340be
d1dbe71f56c43bd6aef47a9533f992332187c9d8
22315 F20101114_AABCYK vaidyanathan_b_Page_112.QC.jpg
361d20a1abe022886727ba7c884345d1
36a3ab38136dc717ea4511267920f578b0853d8e
23371 F20101114_AABCXW vaidyanathan_b_Page_105.QC.jpg
f41bb829c29d4da5cf35356305d579bb
3c4dd9e76b4766abb6f6a311de862880838e4a87
F20101114_AABBUU vaidyanathan_b_Page_004.tif
2c9edce69ad1ddb6de8e5b7a06b4b434
bc55a0740166119b9ee762e737b4edff02e1155a
F20101114_AABCBD vaidyanathan_b_Page_175.tif
5a6558155b3e6c259b1cbde94e122e81
c22107e1c773c14f1378395a9f0fa3207fc70fad
F20101114_AABCAO vaidyanathan_b_Page_160.tif
ddc75313a37adaca734445846857c573
a576245f7cb3ab6ecfef04add2a59980f6dfc9e8
F20101114_AABBVI vaidyanathan_b_Page_018.tif
ccf03ac2e9daff0b88dcc8c83ed42c29
c1c6c840176c11f08cb3e6712c7db064cbe73b31
4590 F20101114_AABDEG vaidyanathan_b_Page_190.QC.jpg
2b8f789d2d1b131d566b4062b70def4e
ba049fa8ae29bd9b4191517e739b636d38115bdf
2679 F20101114_AABDDR vaidyanathan_b_Page_182thm.jpg
7fa6dea6a49d5fc1baa0956aafbb1d6a
7eb621b493f8586c7bc0101cbaef14113861af83
6727 F20101114_AABCYL vaidyanathan_b_Page_112thm.jpg
44efd1a43c27dbc7d3d5a28cbac62792
2b1d9a3c533ee881746c27b4b9913365ccba8b13
6547 F20101114_AABCXX vaidyanathan_b_Page_105thm.jpg
be5cf021200e043e5379042f4f8b90e0
37392ef5b420e149bf608084099d400b59d62342
F20101114_AABBUV vaidyanathan_b_Page_005.tif
76f8b04be8c32cf564ae212a7978fb07
e8b3ec5034e8a97c383c3bd02e9b67eaf0319077
F20101114_AABCBE vaidyanathan_b_Page_176.tif
f04032bd0ff4f959322c880bd0d3a614
d33523cf1fddf19f72a5c312b145506c69fd0827
F20101114_AABCAP vaidyanathan_b_Page_161.tif
924072dcaf2c709fb561f395488019c2
76d54b933ff1568e70abf3ad83758106420226f2
F20101114_AABBVJ vaidyanathan_b_Page_019.tif
f1f49f557dc9e259234b2b1789d0fd98
1541ff68e35c5748b9bf2fa8bd038f4c284aa522
1631 F20101114_AABDEH vaidyanathan_b_Page_190thm.jpg
44051ec7d2b34b0160371e8d6aace8e8
eef1132494d6b8879f436686b7d3634c7f09bc11
25357 F20101114_AABDDS vaidyanathan_b_Page_183.QC.jpg
c78c32be49725c89186535bcf7c3a9b9
7462d4bf51b2a7645f53fc9c7f78b819a136a18e
25242 F20101114_AABCZA vaidyanathan_b_Page_120.QC.jpg
2ee1a53b6fca65eddf0aca8e505991c9
3261030588a6c4d0254a3fa45d92e4b8d53dacdc
17831 F20101114_AABCYM vaidyanathan_b_Page_113.QC.jpg
7dd06eb9fda0034b1ffcdfcfc336664f
d3e7907a0b8f4bfc8331d13d1d47f8541c8eaf93
21213 F20101114_AABCXY vaidyanathan_b_Page_106.QC.jpg
05a0bd9aca6a6f111400a55c04667ea6
b475955a2944d5a816f02bf861227e031064d1a0
F20101114_AABBUW vaidyanathan_b_Page_006.tif
8a1aa428848ea3ca3fe2df5a2c57c14d
f0fd5c9852f0cb4b4c3fda000ad0dc82073197c4
F20101114_AABCBF vaidyanathan_b_Page_177.tif
c2d421e91c259f7abe47c1192738545c
898fefb4c849479cae59aee45ea78877951e7b06
F20101114_AABCAQ vaidyanathan_b_Page_162.tif
5922ea9867d2de1a98a913c00b16c971
1692edfb15adaac500ed38dc5e25a761ab41e861
F20101114_AABBVK vaidyanathan_b_Page_020.tif
b282382a74689f2d16019f9236434db9
116e72d13cd1d96fb0fcf67b6af68102afcb1154
12789 F20101114_AABDEI vaidyanathan_b_Page_191.QC.jpg
d245f48c0525294045177cb7fb299646
7331234ed82b4bc7f7638002d339339da404f598
7090 F20101114_AABDDT vaidyanathan_b_Page_183thm.jpg
81d3356686e93e9b8eb181f07c572152
47a97d6728c073c3a3e116b05a02d6023c4faebc
24797 F20101114_AABCZB vaidyanathan_b_Page_121.QC.jpg
9dfdb0a55dcda8b86e8b1566152102cd
9daa0bfc19dc8cb4363c79e493da9810ace1a039
5124 F20101114_AABCYN vaidyanathan_b_Page_113thm.jpg
0d528578e81ccbfb81f319e8e25d0f64
e7c05d85c477cabbcf6d8ace13ab3ed4dff2dc82
6219 F20101114_AABCXZ vaidyanathan_b_Page_106thm.jpg
a27d5f856f4146186cc50de9ed74df35
186cc39566ee13691065323b015f33f90f5d2fae
F20101114_AABBUX vaidyanathan_b_Page_007.tif
e2fbd901d99db9e484277a55c474a9e0
b0b71449c4b891f4c63961149d2acf08466021e4
F20101114_AABCBG vaidyanathan_b_Page_178.tif
20b8cce0e51411521e9af783e1d1520c
51335e23c3d09325b7972a5995538da5efd91c0a
F20101114_AABCAR vaidyanathan_b_Page_163.tif
b4d4ed8b3e9c71b75a7dd77dd4b87296
c16d7eb529725c3961b52650b9c7e04d7d0f2641
F20101114_AABBVL vaidyanathan_b_Page_021.tif
5558107ce9b88d4edc73e5dbebcefa3e
3dc7d3d98f0f9a124131219bf975efb7a8352047
25090 F20101114_AABDDU vaidyanathan_b_Page_184.QC.jpg
b710aa56a22f8cb12108ffa1b60c8a95
cb2a27dcc242e89fbfb17d7089c908bf62065f55
7161 F20101114_AABCZC vaidyanathan_b_Page_121thm.jpg
d6a30f37c07a6ead3db4e9df792cc0cb
5cf0a14e6fc5c292373a67a7b19e1838a171a15e
18932 F20101114_AABCYO vaidyanathan_b_Page_114.QC.jpg
691a39e2e2462c12d65deb67a4284455
d87e11417ac403927b5a45afe46527488c154e1e
F20101114_AABBUY vaidyanathan_b_Page_008.tif
22621a5d23701a91463037a8c6717b88
fa64549111f1039b69eeafb32719a1f47096f5df
F20101114_AABBWA vaidyanathan_b_Page_037.tif
1a4023f2da726829d13b5427dc1c3d9c
d521501a157d4babdf56749575cf92949c59d7da
F20101114_AABCAS vaidyanathan_b_Page_164.tif
880927bbf66277f7bc9ccb7fb7af9508
bc96b528b8b681048865808327d6df1a26c9055b
F20101114_AABBVM vaidyanathan_b_Page_023.tif
cb903bbe02a3a0e75cf3f996682a27a3
ebc28cf16b8775cf21e842b27adff2e2dd374b5d
3703 F20101114_AABDEJ vaidyanathan_b_Page_191thm.jpg
ac47b962738e84d868ca4b2bffe9b95f
77044a8827e924875d7f3659c107e5068f7facce
6815 F20101114_AABDDV vaidyanathan_b_Page_184thm.jpg
ecb55b96672b8c1f12ea222659b99469
8df29d7698ebfc69072e3fb8acc0367e5bf975ba
24766 F20101114_AABCZD vaidyanathan_b_Page_122.QC.jpg
e3b884f69e046a638b3359894a2fa3c5
f22b2f7a675f3a149116e34bd8feb8e3d108060e
5394 F20101114_AABCYP vaidyanathan_b_Page_114thm.jpg
d156b9f134403f912eeb17760ecd0e09
8536eb65431924456c9abcda8c1d2bd9da626f4d
F20101114_AABBUZ vaidyanathan_b_Page_009.tif
8f4f15fc57d2a887e0313a34f9fb33c0
e96dacbebe04d8790eadbdf303de0fed98e77cb5
F20101114_AABCBH vaidyanathan_b_Page_179.tif
12f210f523b6a5e46b579ecb42819984
f346bdde464273102ee9dd185ca9d705d122cdfe
F20101114_AABBWB vaidyanathan_b_Page_038.tif
f2abd3f5b1c61fe4dbed824222390ca1
1090b9e04b09af494335290fc3c30304768dae5f
F20101114_AABCAT vaidyanathan_b_Page_165.tif
4f95358f9eecb7baec68c9f71af52ff3
16bc2e6dbff1120ec903c27ab0e69b7a6593c53b
F20101114_AABBVN vaidyanathan_b_Page_024.tif
72c50f2aa92d118897d06e2fda695990
3f20aff7a14e17e57a848ee7a0b6847ddbba6c27
225320 F20101114_AABDEK UFE0021180_00001.mets FULL
7b5e0cee91ab74128556a0dbca7ffb68
023f82b4f4615ad3535d23a32c2d7878f13e6306
27324 F20101114_AABDDW vaidyanathan_b_Page_185.QC.jpg
1138c8c91ac0233ef3cf0e1d5fbfb4d3
0bb7b0d74a243c0207b28990dd5d3fd6a0a0a3f2
6893 F20101114_AABCZE vaidyanathan_b_Page_122thm.jpg
63068a4b06c909e49dd71cc7dbd2a22f
8b516625e9aa76bfad014b3b2da95d8b61a61fc5
20192 F20101114_AABCYQ vaidyanathan_b_Page_115.QC.jpg
1c24aa5c3120224d1e3800c7f0960775
10c9af9387aff21eb069daf95e2365f6bcb5109b
1054428 F20101114_AABCBI vaidyanathan_b_Page_180.tif
fa50edb7e61a526a702b9cf720b754b6
45914aa3a73ae60e5847d3e38e2e8a886403253e
F20101114_AABBWC vaidyanathan_b_Page_040.tif
aa0922c2c4f4856eac5515c3b392dc9f
107b2ce3c6b91116ea033aece0432df1a449f49f
F20101114_AABCAU vaidyanathan_b_Page_166.tif
0f434df23ebf1d380f6ae6e8677d73e2
18d6718b787abd52e1edba1a2797cf91cc7304ea
F20101114_AABBVO vaidyanathan_b_Page_025.tif
5bac4dc8fb1cacf6c5f6bb8f0c9575ae
a63cccecca053478ff4ee12e764844c35535ea7b
7358 F20101114_AABDDX vaidyanathan_b_Page_185thm.jpg
db240597ef610276944fcb637c421ba6
9f222bcb551c64a328612197ae63b265608c5def
26216 F20101114_AABCZF vaidyanathan_b_Page_123.QC.jpg
fd0a86c7fa626954baec63f21287e847
e84723d9e93824f41b1cb2eb7a6088f20de8246e
5925 F20101114_AABCYR vaidyanathan_b_Page_115thm.jpg
c0f8a8abf0b8e94d819e6f93d5d40d4d
ac7d26710fbe65241663f0e7ee59b8b43c30c64e
8423998 F20101114_AABCBJ vaidyanathan_b_Page_181.tif
186667b175fb6abb7237b051ed88c4d8
23c3a121a57daf1e7d33070cd36f0ace1e9aa22c
F20101114_AABBWD vaidyanathan_b_Page_041.tif
93d093e2f97c5852f9490e02ff7f277c
46376fb5d6d17474ec1617cf470bc787f12e352b
F20101114_AABCAV vaidyanathan_b_Page_167.tif
9024f7b5f7ac2e79dcd8084bb932238e
8d1fc79e4ed80d69142d276bff47725343216e07
F20101114_AABBVP vaidyanathan_b_Page_026.tif
e6bf05fbe664f3c5d0ef53b4269c5006
d5eeeefccb1f8924875a72d8ff22cf4b43e0e1b9
24899 F20101114_AABDDY vaidyanathan_b_Page_186.QC.jpg
c2fb00e8f771a4a96ea9d8736756184f
ff53c37786d6c45d4ced5da8f4be0c9a5199f69a
7003 F20101114_AABCZG vaidyanathan_b_Page_123thm.jpg
c1b77266458d9a28da94ce8696abf6ee
262af6163d7d5da49d8344c9a6560ffaf7847657
F20101114_AABCYS vaidyanathan_b_Page_116.QC.jpg
de13eeb79344113a6aa73f009cb4bdf4
774ef4d93cd72025cd15837e34aa9bbf18c87c5b
F20101114_AABCBK vaidyanathan_b_Page_183.tif
229072a2715e5759523b95479e7e4b68
994b7d252e7a671a2cdd625b814b8339821242e2
F20101114_AABBWE vaidyanathan_b_Page_042.tif
fb7d4d535ce054ba018b6d98cbc5f493
8de78458b2003b04e308d44bdfaf2230905cafc2
F20101114_AABCAW vaidyanathan_b_Page_168.tif
4aa9a8aa72c170f1bc6b758a8c7154ae
1d034f5c9c4487884a290ee68c1ae67a7dab65bc
F20101114_AABBVQ vaidyanathan_b_Page_027.tif
44a275ac65748c57d59ede1ebf702a6a
18f802e05fcd76dd6a2aa494c53c7abcebe8268f
6846 F20101114_AABDDZ vaidyanathan_b_Page_186thm.jpg
1c5c9fb5eb52c94e9f7812ae115eac7e
fdbd312765bbdb315d7f309aeae3cb10d545bec4
17874 F20101114_AABCZH vaidyanathan_b_Page_124.QC.jpg
cd9b38f0834094dfb206d4d540d3f3ba
74b7f4497f163e183ad55357c38f088b1e1171c5
6897 F20101114_AABCYT vaidyanathan_b_Page_116thm.jpg
0c1be76c8bda88cfe8812ac05eba28b9
948dbd1c7162af68f56ed339bf3bddd077ec6e3c
F20101114_AABCBL vaidyanathan_b_Page_184.tif
3ff3023cef8ae2ef41eb70a5fb32528b
e8d2a7918ca3c821ac997a8220e0f531bc404029
F20101114_AABBWF vaidyanathan_b_Page_043.tif
fd8d68fe9ef54a621131498560ce13a1
48dd8ceac7869d9f318bba2ece4c61590568a453
F20101114_AABCAX vaidyanathan_b_Page_169.tif
c003dfc2f91be21af66c14e357db3466
5f7ff364ed2c6d8ac57960d3b468010a7062de61
F20101114_AABBVR vaidyanathan_b_Page_028.tif
d369b6994794ba1062dbc703cced4b93
424c8e509cad1ab257f7cecd4e184b76d643d56b
46591 F20101114_AABCCA vaidyanathan_b_Page_008.pro
cc03515c3aa579a053f9347576cb6781
289e5c7126d73ec7a4b849ee2f27bde4469c558f
5475 F20101114_AABCZI vaidyanathan_b_Page_124thm.jpg
df053aeb3bca59a97d7b4ffca34f76bb
68e1ff55fb9774a226b8572c6ce8210d2463b1af
26655 F20101114_AABCYU vaidyanathan_b_Page_117.QC.jpg
9aafea44c27aa04c6b86ee12fcf62530
bf4dffcb7960bce38a34e0d495039d1f0f6a3a89
F20101114_AABCBM vaidyanathan_b_Page_185.tif
aede0a5f89157906117b0e5290656d51
4a6235693e932978a7df5955cfec46dea89f53fd
F20101114_AABBWG vaidyanathan_b_Page_045.tif
26d64616b2f19be500752e74ef09b3d5
fdede1e4859b16acbbde3c6df10c68e0df9442ee
F20101114_AABCAY vaidyanathan_b_Page_170.tif
e61126a08e26c4506b56f0a4972ada8a
bab28f25fefba0bbb240bf33cbefc23e35064936
F20101114_AABBVS vaidyanathan_b_Page_029.tif
d1e4e69628a9e474dc7f0e5836204c33
46862a31eff246690b940a1a419fdda1e95f7dcf
60395 F20101114_AABCCB vaidyanathan_b_Page_009.pro
65168daf33c04f800d77c042123fb677
8486635fb33e1ed71920c3ce4c1ae92f923b2fc6
19525 F20101114_AABCZJ vaidyanathan_b_Page_125.QC.jpg
f84dd91ad2b5a2464f67adcde24bfa02
7efc5c2f8be1aa8632fd527fa7d38c4f8c22583a
7114 F20101114_AABCYV vaidyanathan_b_Page_117thm.jpg
8cef2e46a1435490a92c95301fbe3499
432d28ba160204c6ddbde4c7876d1988985b5f8b
F20101114_AABCBN vaidyanathan_b_Page_186.tif
f9f2f88f1d9dff7a40209b24359de557
58f7bcd11bfc643988ae39974ee68eb02d06306f
F20101114_AABBWH vaidyanathan_b_Page_046.tif
d93a875f1c1069320b986bcff5e35bb0
f35f7fda2665fdbd387c4ef1bd2704b0666d883d
F20101114_AABCAZ vaidyanathan_b_Page_171.tif
a76298b84e5b84112569adecb21f4a29
c72aa0856820ecfa39bdf40e5d04835fdba32bb1
F20101114_AABBVT vaidyanathan_b_Page_030.tif
b11f7c1196f0f7cc22f99c89bd5e971a
f9a2059f9151edd1c3dacb58dcb3f410a7687f37
9515 F20101114_AABCCC vaidyanathan_b_Page_010.pro
98cf55f62a0d6d0abe1c4d624a4131a6
1077b1baddcfbebb873c4d4fb3bbf26df6f7922a
5738 F20101114_AABCZK vaidyanathan_b_Page_125thm.jpg
cf1de541a4d45688c0e035c5814fa6e3
d7236721af60b7847e07e4a15031473a73676c95
27061 F20101114_AABCYW vaidyanathan_b_Page_118.QC.jpg
0698e9c5236a782374b3cbfb224fb4bd
cf2921d7aafd3ef0fa305e0e87daa42d55dc46a4
F20101114_AABCBO vaidyanathan_b_Page_187.tif
42cbcc2838fabfa49554b423f3e550b4
7b9de3147c26a4095abdf90b2b161df369775a52
F20101114_AABBWI vaidyanathan_b_Page_047.tif
fdd7dc6c7e6ebffd57b3ca769c51a18c
3b0cee2440b3954ab46306cf75d37c6d6722278d
F20101114_AABBVU vaidyanathan_b_Page_031.tif
e94b9ca88a418c9058009ba2b9e9e282
5311540fca1e3dc425e00a6d3578d36a6226988c
47540 F20101114_AABCCD vaidyanathan_b_Page_011.pro
298afe1490d7b596ff95a0b0e978b32c
6dd4ae1b326d1c427bfb4b14206a3e08e7ec7f33
23825 F20101114_AABCZL vaidyanathan_b_Page_126.QC.jpg
1105b4e60fa2b8cd75307783fac16ae4
d8d78cfdaaa01ba15620c8503afa8f1e52d014ae
7197 F20101114_AABCYX vaidyanathan_b_Page_118thm.jpg
887e676ff3434df1fe6350993bb2f504
a048ef09b2c97f454f7996f20b39bc96a286da18
F20101114_AABCBP vaidyanathan_b_Page_188.tif
28630f7754f11e283d6cf710d84937a7
8a13be38c959f06e5fa1898b5ff3e900e26acc7b
F20101114_AABBWJ vaidyanathan_b_Page_048.tif
20e50c5f8fb79d9cb79c8e62b653c520
a4693af6829a280b816940ccc6fcc0514882b996
F20101114_AABBVV vaidyanathan_b_Page_032.tif
700e2de1d61c7c1e89f2dda1f3656b75
0fd3d71df11179d414e669124c5f952688b2cb2a
19218 F20101114_AABCCE vaidyanathan_b_Page_012.pro
506ba2cca225e0af6d55ffea7ee19bae
d8812fef813b323b2bf344f80f05938bc55547d6
6721 F20101114_AABCZM vaidyanathan_b_Page_126thm.jpg
f6eade069869e388561865accc3b99e1
1725d25dfcf0160135b544bfe8330b3b9744b366
24051 F20101114_AABCYY vaidyanathan_b_Page_119.QC.jpg
fb717b445815c91ee67dd6ae7832aa6a
1def9452f1f533f408cca573c7169c43a636bbb4
F20101114_AABCBQ vaidyanathan_b_Page_189.tif
b08ce3edc7dfaf0def3f93090be7fe16
02fc559f8d2d6cea3fc2a3def7911a2347da7b24
F20101114_AABBWK vaidyanathan_b_Page_049.tif
8a58747dbcdb7d9f44b1ff5d873a75ea
f42b041068ebaa21ab20faf80f4ac340410847eb
F20101114_AABBVW vaidyanathan_b_Page_033.tif
fe867e0217400aa5f106d988bc280f0e
dc4fc2e5bab79149b5eb8a23428f8f790d8123f1
54666 F20101114_AABCCF vaidyanathan_b_Page_013.pro
163a23c78f55830b84ea283ec4e80e9f
90aee8e9c68c3908e6c654a8cc4fe3a9ef25cb7f
28393 F20101114_AABCZN vaidyanathan_b_Page_127.QC.jpg
065e3f4dee6cac8e2dd399a9d20f84df
d5290246025033628ba714554264b54ac0625168
6604 F20101114_AABCYZ vaidyanathan_b_Page_119thm.jpg
d8f21b1b410751984d89082256f6781b
9cdfb1bf8656a80ced9206773c3ed1dea09b1fb5
F20101114_AABCBR vaidyanathan_b_Page_190.tif
aaf918e0e2a872270166d091630aee7a
465b03b825b0a0c1bd3901bb9ac058403f3a62c0
F20101114_AABBWL vaidyanathan_b_Page_050.tif
970298366a06d47e259b79fbcce1cea1
827055c42b65f7f39e1016a73ebce941805333a8
F20101114_AABBVX vaidyanathan_b_Page_034.tif
aa138432b494ce7edbef207361dcc6ae
96c777b287b2594f6c50430e52315883b0434d5a
53213 F20101114_AABCCG vaidyanathan_b_Page_014.pro
c6ad0c481ec3693f4f03134acb4f1a32
f6bd4a09bfb6799700687da926c5b84ba641c4ae
7431 F20101114_AABCZO vaidyanathan_b_Page_127thm.jpg
5723a1a4c8a2b045ffc330248696dfd5
49d50998d6077e5c0b68d49b40c81b99ece604ff
F20101114_AABCBS vaidyanathan_b_Page_191.tif
7a4ad843310832b30e2b1b671e32ed2b
22c95128ba18d8dc96d20c1f137355be3f1e8c79
F20101114_AABBWM vaidyanathan_b_Page_051.tif
ff6bad5ee1c6d37c3f70d2d497a5b5a2
c2d522fdba0adf100f299f70d83638e1e57c0942
F20101114_AABBVY vaidyanathan_b_Page_035.tif
883a37ff7aa36fb1726cc125f6f02aa4
620c678de62656a44b17f9807ff51292c3701dbb
19597 F20101114_AABCCH vaidyanathan_b_Page_015.pro
646474ea80a44a8e755d8febb3c0ac7b
0cd9bb7e3e9184e816cbf2b87b8e93d89fcf0fc8
F20101114_AABBXA vaidyanathan_b_Page_065.tif
435260475145509a0a347f46adaba5b1
a8eff598e7467368d2f90adcf14d3b21e3424831
22078 F20101114_AABCZP vaidyanathan_b_Page_128.QC.jpg
e5d3a46a50a309e0301a2e83b1d6520d
bf960286c9ee0e6726c22bc5167bb8c4ee00cbda
7973 F20101114_AABCBT vaidyanathan_b_Page_001.pro
06f30d21b5acce850b772b4b88a4d6e0
f0eeebfd3bafbfe2729b6f87b1a6a2f799691f2e
F20101114_AABBWN vaidyanathan_b_Page_052.tif
811e8feb8cda6b949b19ff56e89c44c7
b1029fa23983f88732b5485a10a70da62fe37de5
F20101114_AABBVZ vaidyanathan_b_Page_036.tif
8737ae679fef4a03847ce5222889e94f
32103659572151e70b05b9dcd1c0e0a6e435bf6d
F20101114_AABBXB vaidyanathan_b_Page_066.tif
1d813e35b07d12d20ee93f2827a1d9e0
17edf5e27392e294bb3d74d4f393af7acf9f78cd
6045 F20101114_AABCZQ vaidyanathan_b_Page_128thm.jpg
c04b3d48dad1466517b1f482169051fd
8fdfff932ed760fa7059247908adf83ae69fe9be
1096 F20101114_AABCBU vaidyanathan_b_Page_002.pro
ae5c1bd8fa1d301aba586337778d0f97
71e1b633ef0548753449fa2b07d7c003b997cd10
F20101114_AABBWO vaidyanathan_b_Page_053.tif
080dd5193fb47134b322cede9e3693e7
9139bb5cfca16f949c4313328eea50fcb153477b
51969 F20101114_AABCCI vaidyanathan_b_Page_016.pro
e250fd13db0907e6953cb02ae7835203
a856a15c0d9db5861344bd0328e150c4529da215
F20101114_AABBXC vaidyanathan_b_Page_067.tif
e9faf1404ee8383b9e42a82c16005101
6dcf31a37db8956ab6d75a6e38523078da536017
23647 F20101114_AABCZR vaidyanathan_b_Page_129.QC.jpg
2c3ecdba3d23cec3e4cff6c93e6316a1
9437ac1bf3fe3b6baf68ed09518af616d4d2e74c
628 F20101114_AABCBV vaidyanathan_b_Page_003.pro
149e5e74f594c06ed10ad0fa83a12160
68128c36a2409dc0cd123b4228e33d3a82e1c693
F20101114_AABBWP vaidyanathan_b_Page_054.tif
fd75add7886bb20d5152fcede3537f8c
f0f3e5acba382945eaeec9e815c06a99f4a58842
55331 F20101114_AABCCJ vaidyanathan_b_Page_017.pro
45005f7ab776d4a0c245b2f6c469eb81
2ad6a29ca76916a0cc205644fb0f3c4cb8e9af65
F20101114_AABBXD vaidyanathan_b_Page_068.tif
55965a206cc1f2593a4516ca820fbe71
20f60429f8be2777a143e6863e1e6fc88c840855
6561 F20101114_AABCZS vaidyanathan_b_Page_129thm.jpg
2fd7faf21234ba8197c0516d3c79ec73
bbedaf3bc7219cce812661ae6cbfc90072e6d9c4
33429 F20101114_AABCBW vaidyanathan_b_Page_004.pro
5afd4644dc2037dd49a0c175cb1bbe8c
af5e40659864ced47d793c443b75608a60662a32
F20101114_AABBWQ vaidyanathan_b_Page_055.tif
f137ce834992823d906047d067dd7fd7
457c7ee56911d087b63a68fb5764b33bf4c872bb
56399 F20101114_AABCCK vaidyanathan_b_Page_018.pro
4da201337ca43331ca91c8aff8b9d2f5
3c98b27fcad417a63c5a45fcc31384d8672132c2
F20101114_AABBXE vaidyanathan_b_Page_069.tif
f0a404c05ae961e599d170b278b7b41c
1292e946bfd4b66c5cb3d2618d61d216d8889fd5
22661 F20101114_AABCZT vaidyanathan_b_Page_130.QC.jpg
642634f1a2bb30cba1e536590d1e7e01
bae9002a7466dc3bb2f16e054716f3e6510dc6a2
73224 F20101114_AABCBX vaidyanathan_b_Page_005.pro
172e570274d8b2c44d4cfa6642fb074c
4b3e537b1726b9c199aaf4c946289205d88679b1
F20101114_AABBWR vaidyanathan_b_Page_056.tif
7772e221b63d83e8d5cc2fec6abdda10
cd132ae6502fd6aebae0e8890f6fc9763376757c
52142 F20101114_AABCDA vaidyanathan_b_Page_034.pro
335de02e0286d58e4a4414ad2371b3b9
67576a15a6a46885dc1e0536789ab711c9c8558b
55675 F20101114_AABCCL vaidyanathan_b_Page_019.pro
721c7e4132efa25ab42e9b9cc3b66374
89abe7271fc65f2543bc3321ac46da6cb621597d
F20101114_AABBXF vaidyanathan_b_Page_070.tif
90baa0af9d36b4c3927c10c22f01dc93
58f0c6b89a15edc97d806b28a890d061df5f0566
6517 F20101114_AABCZU vaidyanathan_b_Page_130thm.jpg
e9a465720e94d8afd4e5fe85e335ea19
f7a930ad28f4ce99fb3a7153f4a0d375fcea561f
97625 F20101114_AABCBY vaidyanathan_b_Page_006.pro
3e3d3cc50dc56f1fb9bac955b954d509
ed1a4c40f78abf85c85f3d289f9c44f97096a047
F20101114_AABBWS vaidyanathan_b_Page_057.tif
56b463b5e0bcf4634569c019b8965d11
eb103a676b6f3f690a0e084a58fc7593454565f4
52876 F20101114_AABCDB vaidyanathan_b_Page_035.pro
85238843b1f9f251441b76fa7ed14a1f
d3a6074372aa7ae8ecd7e061dc50d43acff2ffbf
52581 F20101114_AABCCM vaidyanathan_b_Page_020.pro
ca274b430b77e3d6188a37c6d0500b69
6f264a27b56b80c110ef62507c42dab67ce88d18
F20101114_AABBXG vaidyanathan_b_Page_071.tif
1ab4c068f395dc9bb2b1a24e897c35b7
cf29a48884ecf7cfa3bc3efad34576f15e32f688
25379 F20101114_AABCZV vaidyanathan_b_Page_131.QC.jpg
78b7f77e0cdd7b6d0d73f254a6b5efb1
fa3540581e7c2f8af1d05a58ca4d357971c5d9a9
F20101114_AABBWT vaidyanathan_b_Page_058.tif
7ab943edbffdfa10bad0a550a13499dd
cc665a908ac4844396c80dfeb9163e598ed794b1
50069 F20101114_AABCDC vaidyanathan_b_Page_036.pro
bae6d73b01923169cd8828e94162200c
33f2d282ca9b61272f1e6afc65f214264a1fff11
70549 F20101114_AABCCN vaidyanathan_b_Page_021.pro
7a2da50eff75001722a3f42ccda8974a
3d6886c256750097ee35ab6c2beea9e839b7e416
F20101114_AABBXH vaidyanathan_b_Page_072.tif
3c43bb29ea1b2339866b3be75d44450b
96c2ce107cf13e5c093f3da90d6d8e89aede7ef9
20795 F20101114_AABCBZ vaidyanathan_b_Page_007.pro
6ead03708ecad9225f38b0c148937a7a
070382db8ccdc91c69c5491f79f13a58a369d887
6861 F20101114_AABCZW vaidyanathan_b_Page_131thm.jpg
b3b95cfc0c5fda70125cf2ca6ff961e8
dee7e93c50728be32621bacb212df7d62ed15119
F20101114_AABBWU vaidyanathan_b_Page_059.tif
fc3d005e57a5626ad399be5e6a0dd8ce
9d933131d2c657b6458f83aa84913fd85c1bec62
56126 F20101114_AABCDD vaidyanathan_b_Page_037.pro
859cb115ec9d10cf49e4150df69127d1
6742b07363a75e5a774176555232927400e0537e
62599 F20101114_AABCCO vaidyanathan_b_Page_022.pro
5c2be7a1e21dbee7f741b2c1fff756cf
1f8af4c83152279ddc4a29500a97b656cc88029d
F20101114_AABBXI vaidyanathan_b_Page_073.tif
df6f0806c7a9f1b00855a2868a94a44b
46547e6a169202bce126ad4ffce912bb125c38fc
24569 F20101114_AABCZX vaidyanathan_b_Page_132.QC.jpg
746d1b139c0a43075090229dcc0dea13
fae3741fa96158b1384c01a1bd23cecd8992edad
F20101114_AABBWV vaidyanathan_b_Page_060.tif
4b04a0557c3df7a82a8aac7086a3ae43
12f71f9e8b8022545e792febc28f5fdfce269ada
65882 F20101114_AABCDE vaidyanathan_b_Page_038.pro
170dc78f57e113813e061deb95e35a3f
1a0fbaa4f00f36f3f77fb581779e42e3b7c04b7b
54311 F20101114_AABCCP vaidyanathan_b_Page_023.pro
6dd2f22930e97f40aa048549bddaa1a5
9658de24333b9046bd1765e8a9b72ce1bf98b3e1
F20101114_AABBXJ vaidyanathan_b_Page_074.tif
50d704d7807b526d0271f91cc20f1b73
a7ebcc4d797228582f6398d1000add8cc7b96ab6
6788 F20101114_AABCZY vaidyanathan_b_Page_132thm.jpg
89625e1de2b59da6f47377058d8a55cb
ebabf378047ca786a04f21c3a0e47549538fd983
F20101114_AABBWW vaidyanathan_b_Page_061.tif
566dbe7e69fc92a12e6df0cfdc459ae9
0d3ac7d65247c74a08bf0b7645215631f3051330
54448 F20101114_AABCDF vaidyanathan_b_Page_039.pro
44e79e364ce248287b2f727f4e10a0d6
7572d197cafb2bf1e9334833dffa0e63b571e9f6
54254 F20101114_AABCCQ vaidyanathan_b_Page_024.pro
1f7ccc5acc77cfef2a0d334dc646f296
3236fe9f325c0b7f581afc42b29a1dd4e84cd2b1
F20101114_AABBXK vaidyanathan_b_Page_075.tif
e932d34d6bf15351f17b0c584bbab01a
2e86d58e9539e652f419d66344ae7f1618c8ef9e
25705 F20101114_AABCZZ vaidyanathan_b_Page_133.QC.jpg
fe2461c2a0daa09db722e52f85c7fc07
09abd8a77ed80bcddff7098a96c5042758640949
F20101114_AABBWX vaidyanathan_b_Page_062.tif
d59135a6aaada91fab36d39ade5e6c34
25555ed7d6c909777185eecb0fa2e6685b0b28b2
51989 F20101114_AABCDG vaidyanathan_b_Page_040.pro
41297344f1312f75deb942fb0320a13c
93d2dff0989d815629680b8cdb2547a23d587e52
50793 F20101114_AABCCR vaidyanathan_b_Page_025.pro
259c435285085012be0b8b004c9688f5
4cabe49825a45a746dcc182dea3ff5c118646172
F20101114_AABBXL vaidyanathan_b_Page_076.tif
2a76a62fa071e316b082419a2a5ca7ad
db97bba00a48d263564fb43e3772c84622a8bf76
F20101114_AABBWY vaidyanathan_b_Page_063.tif
4891130a06b56e5acaf5e902ddce5028
d72f156595571d5376b4ab395a42fa1fd6128bec
55951 F20101114_AABCDH vaidyanathan_b_Page_041.pro
508e0a4f041a6bf5ce35948dbfeca951
91110bf5fc2bc981dbc459059b31e9960d37dcbc
F20101114_AABBYA vaidyanathan_b_Page_091.tif
a7aaaa5f244f06a13ec255de2db65cdc
f5b643c95bac1ab896acb3a36ad26d7028499b27
59255 F20101114_AABCCS vaidyanathan_b_Page_026.pro
13763e2d86ae158c9b3414d77e6af3c1
197e00bef0d7375c76a9cd13f3016684a34f95ae
F20101114_AABBXM vaidyanathan_b_Page_077.tif
b4cbd7cd6f4a74573cb65027fdf97120
168a39ffeab37491b37fd58a569298862125d67f
F20101114_AABBWZ vaidyanathan_b_Page_064.tif
f4512dd9727aa293e7dbf6657b633196
8828d050cba816096052a0acbcb691155a8d0b65
52311 F20101114_AABCDI vaidyanathan_b_Page_042.pro
f6dc559b04234771737f38b85d8c99ea
77cb0c0c7dddad5295861e487f001d61c770e637
F20101114_AABBYB vaidyanathan_b_Page_092.tif
7b6f4cb7c6cf82451a03d6e908e5025c
3e876ace957f042cc8e9b52c446f9a637f954f98
60262 F20101114_AABCCT vaidyanathan_b_Page_027.pro
2c6d9a0434a7b53e1d2552dd9867d53a
afe4e3fef634f36c9e3d60457e2558671fc393f3
F20101114_AABBXN vaidyanathan_b_Page_078.tif
1dcad3b9417b733f44771a0abdac0453
7f81a7a52ead7c1ea05dd1c10c126c2e03f2a3ef
F20101114_AABBYC vaidyanathan_b_Page_093.tif
6a28f6975c26d01db3efa16fb5d478da
c676b2c9c5aa67621ee0ab51ad9d4375605ea69f
54221 F20101114_AABCCU vaidyanathan_b_Page_028.pro
16c29aa16507c3ec1fcb360a61034732
2b380fb38dbde58c20ebf875191d877c409d27b7
F20101114_AABBXO vaidyanathan_b_Page_079.tif
3d3142c7373dc51ddc7585163dd378d6
47da9080ea36f8fa2154cf0c2143338b22aa3d51
47059 F20101114_AABCDJ vaidyanathan_b_Page_043.pro
182b355cfcfd3343ec78dadf15a5e144
be4c81ae44c67adee67a1dc47d80abcc00c66a8b
F20101114_AABBYD vaidyanathan_b_Page_094.tif
ddab6ebc0eb40f6d6def4723e030ad9e
0f419fe4b0551821dd50081042ab8c79b5cd23b0
55979 F20101114_AABCCV vaidyanathan_b_Page_029.pro
2437da80044cc20b7b5c544eac8fc83c
6040f7c7d46bfcb6b23dc7c22360434e54a45f50
F20101114_AABBXP vaidyanathan_b_Page_080.tif
8769b70b37854636f5f2faa04d68222e
4e5a5482f9459b5ef4bb9e9f3ea6040ecc7f2b8b
53905 F20101114_AABCDK vaidyanathan_b_Page_044.pro
547f27599e196dad5ad749c3a24f017b
8b7cd2375cf1f82ae93dea5c0e256873ab6960e0
F20101114_AABBYE vaidyanathan_b_Page_095.tif
1912165fc78b92461af89518e1b86fc3
7546f924f7bac8907415aa5c0b34b213820ea0d8
58051 F20101114_AABCCW vaidyanathan_b_Page_030.pro
24565262d7c0e87c1670bb673be1b390
c7af2afb9520c4e2a14b11565c6fd4c5ac8d0d46
F20101114_AABBXQ vaidyanathan_b_Page_081.tif
ea7297c42bcc6e285992670597ccd3c0
95edb89b862006d291fad1640cbf67bed866e723
51455 F20101114_AABCDL vaidyanathan_b_Page_045.pro
db3094c2d22dc459e3069e07fb3275ba
36744dbb5a8d8b8473644fa19200b06c7faf8710
F20101114_AABBYF vaidyanathan_b_Page_096.tif
5d76299926167124ee86d1198032c983
48761c429356429a348eadf5b7dc553c1d07f737
43446 F20101114_AABCCX vaidyanathan_b_Page_031.pro
76b539c0397f21ec0d11e4cee028a11b
021f51262d7381f3eeed0046c3c87191cd498204
F20101114_AABBXR vaidyanathan_b_Page_082.tif
c43cacc167a390d98f4a4e8cbf15eae1
68724baa7d20712515281282886455d1873cd93e
4346 F20101114_AABCEA vaidyanathan_b_Page_060.pro
beb1e3827c7992b95f6780558c0dfef5
956ea81321c074ce7996b1973cac4f5f842cbb62
50421 F20101114_AABCDM vaidyanathan_b_Page_046.pro
deed4e575178fbeb3b048f4a7eac733f
7a9090267758514308cca97ec124113ac8378399
F20101114_AABBYG vaidyanathan_b_Page_097.tif
54539c49cf0985b662287664b8641ef4
6bcdf613d2f15bd4fa2f9fd767dfbed717325634
23861 F20101114_AABCCY vaidyanathan_b_Page_032.pro
61204e42f8165eec53b4acd8ec040e8f
a4a9c3a899287f8468d5cefc4d70a7e245f957d5
F20101114_AABBXS vaidyanathan_b_Page_083.tif
381b61fe834f7478825c429c0dea6ba3
18f93c1245ce54b1f5750b6767d579d5b1ab5ee4
54410 F20101114_AABCEB vaidyanathan_b_Page_061.pro
db1aaf7a6c837aadb28b36e53f49ebe0
ad97dd16e4706c8f3452ca0b04d018582b313bff
60294 F20101114_AABCDN vaidyanathan_b_Page_047.pro
17769d91fe3233629bff7a2d9133cfed
3d284327124f406236f06a7e32f165ec21000c60
F20101114_AABBYH vaidyanathan_b_Page_098.tif
b2b6c3cee6b23216e062ad189a17edfb
c4ee18d2d815c2f8409fa1cb72f236051e9eb7f6
36892 F20101114_AABCCZ vaidyanathan_b_Page_033.pro
edb6f5a8963baba3a738d25bcfc5d8d8
039a44f7fdbe6031089dbc4106eec93e52d6ee4c
F20101114_AABBXT vaidyanathan_b_Page_084.tif
5160e40e80450e583758fcfaf5329863
30cd2daaa797c5176612397ec07fca107e472a28
54095 F20101114_AABCEC vaidyanathan_b_Page_062.pro
517349dfa7fddf572ed1b67907f8215d
8c83f64fb9b57dde8a56605c092d92f9753e8c6d
55369 F20101114_AABCDO vaidyanathan_b_Page_048.pro
6e850af982dcdeb7db91454cc76e0318
4e0b0c581ad29d2d36b62ff96eda2c5235c52f13
F20101114_AABBYI vaidyanathan_b_Page_099.tif
1a3b409797eda154afd42b2d153e0806
e9d8adc68fa6f19a193a03ae3f7d79cdf66e69a2
F20101114_AABBXU vaidyanathan_b_Page_085.tif
bd491c14abc87b1648c513f82ad156c0
a63eae9fcf6547f9d18d62fbca84df8b5f126f1b
46582 F20101114_AABCED vaidyanathan_b_Page_064.pro
70db023489d1149c3904cb39a18d274f
33c2092d2d13f2b53f631afe6a73bd41c93a834a
60308 F20101114_AABCDP vaidyanathan_b_Page_049.pro
a8b30b5148cfbe4b60fced6d4fc0975d
989eda44c7996195ba05fb03fc24570883568171
F20101114_AABBYJ vaidyanathan_b_Page_100.tif
d47fbe437ca11523d3071652c7532004
b4baa8ec79813d2411d6ebf838721bdb7c704b3f
F20101114_AABBXV vaidyanathan_b_Page_086.tif
caa46f90b7c9247b4f17fa3b388eb967
44e057964fdcff8a5649ea9748bb4ab33639927a
40862 F20101114_AABCEE vaidyanathan_b_Page_065.pro
28816bf5f7f5554f09aacd388218b6bc
5fbde5c6aa4510cb9760cd63cf13f48ac8f07646
47414 F20101114_AABCDQ vaidyanathan_b_Page_050.pro
8ef21f1d15f88db1d891aadc2bed861a
0da1625820aac8b0d5523ccc57d52e2dafb9587d
F20101114_AABBYK vaidyanathan_b_Page_101.tif
c183f6312ad95a82ed97dc4a809e01d1
d85f59d7ff30f6c97c40f04a861ff9373c59d7bf
F20101114_AABBXW vaidyanathan_b_Page_087.tif
321778cce716f98f6bd1595bb64f1d41
ee008b087b6dbb384685e70bf280bb5212f2dac0
51776 F20101114_AABCEF vaidyanathan_b_Page_066.pro
9179e240b05e47ec1fa125320bbaa091
5517e847a46ac142dc51a3e79518c239792e8134
52679 F20101114_AABCDR vaidyanathan_b_Page_051.pro
3f28bc7f08376ff1cf6453b12fe1807f
a0c174afe6f14ebf4155347c08bfc3632428972c
F20101114_AABBYL vaidyanathan_b_Page_102.tif
58404df8474c6dadcaf8e2760b7b20f4
6b54dd667fa15378c1f25ecdac0f9cca02a13363
F20101114_AABBXX vaidyanathan_b_Page_088.tif
6da4729ce80ae26b13f423c990174af9
e6c76e5388727fda21592c37266de887cab676fb
49122 F20101114_AABCEG vaidyanathan_b_Page_067.pro
3a20605845a964be6a977ccfb3101b7e
7f5781b4c3285b9bf998652c030b0532a0bb7960
F20101114_AABBZA vaidyanathan_b_Page_117.tif
9c907128e36d68d1c309a0bdf76e3fea
13db75dae59339552f023687d8f9034032872aad
5271 F20101114_AABCDS vaidyanathan_b_Page_052.pro
39c8863e2f332fe1c7956ac42745574c
f30e88fd94a420872a1dfe293ef5ac7b37a2ee4a
F20101114_AABBYM vaidyanathan_b_Page_103.tif
092857adf61afae02deb543ebe11f84a
32aaad0284dfb3942dfc986bc8be464d78c3cc5c
F20101114_AABBXY vaidyanathan_b_Page_089.tif
f43082705a11c401e4526607ab828530
3acde955096ee47048a70e0e5b61a4f6e00c417a
52809 F20101114_AABCEH vaidyanathan_b_Page_068.pro
4adfb7f752d471e80cb9c7c5e819b735
b5ac41bf7c7e694583e8f7ee4eacb4420eded8dc
F20101114_AABBZB vaidyanathan_b_Page_118.tif
f4dddaa2217ceef20d2ee2bd2d7990fd
050efaaad26704d5c8be5d587801d4186ee34a09
26853 F20101114_AABCDT vaidyanathan_b_Page_053.pro
b82d7ac172ae10e53ac5c46198b08f0a
317af1ab6e7e2e9c921e444e0255941bb1ee462b
F20101114_AABBYN vaidyanathan_b_Page_104.tif
0194da55db4f9d9a1c5dae454371b00a
a23f884d4c621e57f294ea3b9a4a22a38741f79d
F20101114_AABBXZ vaidyanathan_b_Page_090.tif
8b8f867a96b5055b8cf904a2a484dd4d
28c128a3d9871e4dd3bceb9a4dc6a0a5ad17ffb6
52289 F20101114_AABCEI vaidyanathan_b_Page_069.pro
4227858fba4c18598e3d4221d7880b07
f8a1ae1085eeaded6d30ea279d85c7b74d792a22
F20101114_AABBZC vaidyanathan_b_Page_119.tif
5859ea07c37e8e7e23d035e3b81d2f9e
34bbc9dbfa16e6364fab7b95cbe2d3a848869ef3
28489 F20101114_AABCDU vaidyanathan_b_Page_054.pro
2a4e2e30d7ebb7df9c538ed0fbf5dc9e
b2ea5f23d2362b3f0dfb5b6310170b8df49934a0
F20101114_AABBYO vaidyanathan_b_Page_105.tif
c81d10551e364ef88a4b2439c6dd39a6
2d94a8a8dbce457f822a14dba272a6e35bf25e5f
54017 F20101114_AABCEJ vaidyanathan_b_Page_070.pro
434ba1b096b0f24fd4b9a8775fb61a84
3f76250103627d1351da32e52d6cb47e8be05c96
F20101114_AABBZD vaidyanathan_b_Page_120.tif
85a7e77fd8dde37bf593c9d3b6e48a6e
db01cc25c2b1a433cd81cf0cf7c2e090f98b414c
29614 F20101114_AABCDV vaidyanathan_b_Page_055.pro
446fff0f5b7f82cea5e13ba7eaaf3955
202e9a7dac6b3aa0e71e1abc0ed727905793e486
F20101114_AABBYP vaidyanathan_b_Page_106.tif
600acd151fcbc70d120b671ab58e96cd
141a543fb614ec8cf304e89dce652e1d88500e34
F20101114_AABBZE vaidyanathan_b_Page_121.tif
12e82e1b052878c8587f4ef92bc4afe7
48d164b4b3014eada76d465308322f00aeff4687
8475 F20101114_AABCDW vaidyanathan_b_Page_056.pro
b74c8f3c1cb579606ddab2b62c32051c
3acd32d813920c934cb9411ac46be24855740038
F20101114_AABBYQ vaidyanathan_b_Page_107.tif
ccbc3d2316293f0c7b14a4075f361f35
62595258ced179392c797c71b42031010dad1dce
53486 F20101114_AABCEK vaidyanathan_b_Page_071.pro
a324920ee2cfa0db35e234210d566561
9b59c75324ceb206a0bfe8141984aec13f53407a
F20101114_AABBZF vaidyanathan_b_Page_123.tif
fcea621421999f562a14c9bf6b045075
5ec339a557faf86d1c0a0c930fb3ef1ac9f9beac
6477 F20101114_AABCDX vaidyanathan_b_Page_057.pro
e08a62c272d5e38a2372ed5d0fc89854
aedf092bebfdb53c5c3180572fc6e997c32da85e
F20101114_AABBYR vaidyanathan_b_Page_108.tif
e58a7996026a52a0530904c9696c03d6
d29bbcbf7fd0c6ba7528f7b4af0b2c833cd63824
50072 F20101114_AABCFA vaidyanathan_b_Page_088.pro
04ba3f1d0964fe0ff8f550e631a4ae42
9d4b4275fbdffd2b57bc774660df635d72aedd58
53003 F20101114_AABCEL vaidyanathan_b_Page_072.pro
2f8f63cde66ce52a83a9c81fc925176a
6235780bbab0485d7b57a4512c4f0d2798b2e7cd
F20101114_AABBZG vaidyanathan_b_Page_124.tif
6bf0934d3df5b66317e04866b0c31570
554b20a2e851330c6de5606fa5ca3a54a8801d9d
8441 F20101114_AABCDY vaidyanathan_b_Page_058.pro
02465ed984445756c24d843f1957e19c
ad342fcd956a30cd054c3bb6c8acec2b1169947d
F20101114_AABBYS vaidyanathan_b_Page_109.tif
44c842136dcb35c1fa177c84c49c5c0c
9e7d95609d0b9d2828b5d2a3ce56dd411264d13d
52944 F20101114_AABCFB vaidyanathan_b_Page_089.pro
9ee01d77831afe8a8fda0029b34a0437
cdbc4993872bdfd7e3ce8a20e54f1425efbec710
36309 F20101114_AABCEM vaidyanathan_b_Page_074.pro
282ff2c6cc4fe3df14b6ea77d0f41162
4f26678248ad481e2090628134ce2371a9e38822
F20101114_AABBZH vaidyanathan_b_Page_125.tif
cbcc2a43fa56097ab8b0e61b547f0aec
7939b3e1e61be3690e912501ecd681662be8e906
11741 F20101114_AABCDZ vaidyanathan_b_Page_059.pro
77599916d0470783b41de6a3b01ed2b2
ec6096dce3d3b5a81096b7b99bde0fe7c2ffeffd
F20101114_AABBYT vaidyanathan_b_Page_110.tif
240e587d1fc829b2ffc81ea8881a6f71
21214b9b8ad01f449ac9281d6c88fe651119fbb7
50857 F20101114_AABCFC vaidyanathan_b_Page_090.pro
01a69a39508b577885b9546dd0d5ee25
c1c9f2814c874bf5f735ca008c92be32ad1477b2
55989 F20101114_AABCEN vaidyanathan_b_Page_075.pro
0a1bdf897994b728692026b223c4c24d
4685c3c1f11e692b6cf616dc35abdbf6d2271e55
F20101114_AABBZI vaidyanathan_b_Page_127.tif
efc271cf0ca602219cb3c4a2b457cb6e
a8f41c1f929149e3903185fae97a7a2672e15c4a
F20101114_AABBYU vaidyanathan_b_Page_111.tif
af995c2db3e283fc0f1e6cafdf06563b
b6e997dbf11387cf0baeeec8cd92df0d1bf270b1
35728 F20101114_AABCFD vaidyanathan_b_Page_091.pro
21d28aee91bf37729e688f29fa08aa2e
9a1ce60181d1dbb2b5996fbadc6386b47f98bff4
54022 F20101114_AABCEO vaidyanathan_b_Page_076.pro
38eebb70dd9a98b2297311b8add883b0
4a2825213c70f2aea6f5f592e6bb75992127cc40
F20101114_AABBZJ vaidyanathan_b_Page_128.tif
cda6516a8ff7f240385939a006e66bc2
c008bb09888bd20125abbcc843cbf1817db92af2
F20101114_AABBYV vaidyanathan_b_Page_112.tif
f3cebe7c0ba0880c170895cd14f3e43c
c4dc514109d1223dcc2db4b55d5bca7eaddfc25c
54341 F20101114_AABCFE vaidyanathan_b_Page_092.pro
36a12b0a913b109f6d2393fb375efc6e
d5e5276ade02b326eeefc7064f2094fe10119944
44674 F20101114_AABCEP vaidyanathan_b_Page_077.pro
48e6c1c24ae84260df56e87e2dc0b876
d0424f1570929c38bf28114810f924407dcf8c44
F20101114_AABBZK vaidyanathan_b_Page_129.tif
45ad738a3167a4e5714abf4598f73588
cf337f0890796abcd85b7362afe64c08b2b148ca
F20101114_AABBYW vaidyanathan_b_Page_113.tif
de624c67192283b1372a565e281e1bcf
c7bce105e250419aa7603e9b86742bc62f56a724
30818 F20101114_AABCFF vaidyanathan_b_Page_093.pro
3c372e1c84609cd37d7a8fe299186a74
b09c5e7b6167faf11df31f0f0fc4ed5ec6b8b006
40115 F20101114_AABCEQ vaidyanathan_b_Page_078.pro
889480fbf901c67b5fafb5a30e9b1ab6
6a40149868f0b52b45994875438acde61d539b9a
F20101114_AABBZL vaidyanathan_b_Page_131.tif
a3783c3a6d0cdc25d986cc9e000fdb06
0127a1ea0d6c0194f1ed7392ff426c88855955db
F20101114_AABBYX vaidyanathan_b_Page_114.tif
af276e5ab7e5006363e81afa7d698d19
a8a687e4280efb1ae82e174b6f6e071ac96b3005
27325 F20101114_AABCFG vaidyanathan_b_Page_094.pro
09da911cef87326facc00646b98afe39
6bfc082d29fb68c733db0965ef1a54ff7befcfb5
46911 F20101114_AABCER vaidyanathan_b_Page_079.pro
ba71c3c7b3b52ab5f816c5bc7f25c24a
aa9d1b7f295b5e3022d2bdfae410a133980540d5
F20101114_AABBZM vaidyanathan_b_Page_132.tif
124dad073162c89cc6262babc7b31870
c2b8fa54dc4ae1c7c66b98fa16390dddd4a69f6a
F20101114_AABBYY vaidyanathan_b_Page_115.tif
dad0a8e1de8a2d06f448e6136a2ddc28
bd5f84e02628d7f7fb5d0a9c04ec5cf1853dbfb0
16052 F20101114_AABCFH vaidyanathan_b_Page_095.pro
d76ddbad1150bcf5f3f20939f8c05284
03aca5af3dc07305a4087e9c21119ef5e54d7303
54244 F20101114_AABCES vaidyanathan_b_Page_080.pro
abe3662281e46119141a48eeaabdc0ba
54eea08a446a6c575c96b3f1061b2a133281fbeb
F20101114_AABBZN vaidyanathan_b_Page_133.tif
fea63d0ba0dd9e753e094df03145036f
9e2d4b1d31f153b1f8a0d6288202302b5ea7ce1c
F20101114_AABBYZ vaidyanathan_b_Page_116.tif
4537ec0ccae9cffdab63b4094b538dec
64efd69737a564b7bcce451be28c25fcaf0976cf
13397 F20101114_AABCFI vaidyanathan_b_Page_096.pro
2b22b82243cac1cff73753970c1e6fac
83a21053379124e71c50c4331d89fd548ec78586
52146 F20101114_AABCET vaidyanathan_b_Page_081.pro
45fd86dda75759b268cf15db8f4a4faa
105a59f5fcea5804e64ad3e6d5a0afd96d75e6d4
F20101114_AABBZO vaidyanathan_b_Page_134.tif
2006e331498065ddc7fceb4b8210ea8a
c9a63cda5402f8520b382ae5fd3741a1fa1d33d1
10074 F20101114_AABCFJ vaidyanathan_b_Page_097.pro
1890a07773f9a21e0e5554837180e841
342bf47d16f5da2e2b47b283a7bb38615b0cbe2e
45142 F20101114_AABCEU vaidyanathan_b_Page_082.pro
ae75e5a240d86a0728978d3462e63ec4
19b196828dd5d12cda1341e7b03602da415a9565
F20101114_AABBZP vaidyanathan_b_Page_135.tif
53425a1e118204afb0a478eaaeadbbeb
8bfd4b47c176c553b2933ba12237456a290a3584
7266 F20101114_AABCFK vaidyanathan_b_Page_098.pro
47b7d83cf7921c75face10eefedf3907
dc28f0ef13cd9a044f0e7368e2280d0ba26f8230
55395 F20101114_AABCEV vaidyanathan_b_Page_083.pro
b796ed7f6ff156a80f974d61335c9bd8
0eedfe652a6ae07ca9c78f4508c6f6c961c0447a
F20101114_AABBZQ vaidyanathan_b_Page_136.tif
df5abde585868f662d0cfc3ea22fdd29
64e757ec2023bfa2b3cc17377658f34d5ffc76b5
52067 F20101114_AABCEW vaidyanathan_b_Page_084.pro
ca14f76f63e493cff3fe07e490de0927
655e68fecd97c45df3dc28de9c7f474c72d60399
F20101114_AABBZR vaidyanathan_b_Page_137.tif
1d7f9c287d57c5e0e32bdf6dc87582dc
76e5c5ac2c2c803cb08fcb3de7c566e390e3a462
43582 F20101114_AABCGA vaidyanathan_b_Page_115.pro
3945b59f99ffb9d88ff0b196b8599ba1
6081c14335d7a3e17f6e327da3d9392697c0dadc
54963 F20101114_AABCFL vaidyanathan_b_Page_099.pro
609ed0c299661f40b043cd0b2539ef0d
f988608321b610ea504ff56336181fadf0b59588
55299 F20101114_AABCEX vaidyanathan_b_Page_085.pro
9b716cf6bfa27119ad17a956ab9043e2
a10eccc99f27bebfee461b19ea2c86f729ab4887
F20101114_AABBZS vaidyanathan_b_Page_138.tif
917f7e6f0c5cea0ff868880c0c756d1a
706c8d539e521ac5fdacac3faa5fea54e13d4f70
53872 F20101114_AABCGB vaidyanathan_b_Page_116.pro
671df0f8df4c6975296c7b5e69b5062d
45559aeeee4dc4537958ea66803061abb2cf270c
54627 F20101114_AABCFM vaidyanathan_b_Page_100.pro
55c85ad7b3bbd04bd6458ed30724fac7
7c0832510b645c18427743a35e070e214a63e714
54315 F20101114_AABCEY vaidyanathan_b_Page_086.pro
d92423cfb85b13d318cdb3b78c28ca3b
7ea70f58ace6dc39dca0275c7d16e10d69ea0782
F20101114_AABBZT vaidyanathan_b_Page_139.tif
d1aceb924cf215ecc9bc8cd979efa4bc
60656a54647e9aec0f5a782b49d28129f9a107d9
57820 F20101114_AABCGC vaidyanathan_b_Page_117.pro
dd4978494e93e1c2a04e5f437de77adc
f83501987bbf95dbd34b1a81b77bed9f91076507
56490 F20101114_AABCFN vaidyanathan_b_Page_101.pro
608c7cf8424eb13cb4e2d8a144b6857a
ab3e7f27259a4640b0933cadce8579eada7d4a44
51178 F20101114_AABCEZ vaidyanathan_b_Page_087.pro
302cac406ab328041da1c1cb71c52011
a7aafb6bad1df2d61a6b7872bf84c69dae72a817
F20101114_AABBZU vaidyanathan_b_Page_140.tif
601ad60b653761708e5bee0a118b51fc
bdb916abaf8152bfa54279f8c583864f4fc82ef4
60513 F20101114_AABCGD vaidyanathan_b_Page_118.pro
efc3167c2c2ef789d5e456d5218e2e68
7e209aaacce5a96bd518c468015492611facd533
57827 F20101114_AABCFO vaidyanathan_b_Page_102.pro
365afaefd91fa740f22d400b2c1b8703
211be7a6e7f8d5dd5316721c01f4c3bea5df6a9a
F20101114_AABBZV vaidyanathan_b_Page_141.tif
bc3752ad157797c990fc5aea6321ceda
c32bfe48bff506db231b89a6a8391c577811a435
51739 F20101114_AABCGE vaidyanathan_b_Page_119.pro
b7208588d510f2af70b6687613c754c9
c56d42253933b8082cd38e443fc5168074de9a70
56774 F20101114_AABCFP vaidyanathan_b_Page_103.pro
f7a9651f409aba0912cfb8832aa27370
8696aa900a306faae0e1ac5597dc41605cc7b234
F20101114_AABBZW vaidyanathan_b_Page_142.tif
ce4a49d4b9a9fc152d31c990c4d8d027
f713a385c711ec6a2084733c4ae94fc0499ef744
53781 F20101114_AABCGF vaidyanathan_b_Page_120.pro
fd916ec6bcb1209de54173ad5ec62e13
fff9262700fd06d5f5388e2cfa369f387b81a5ce
55687 F20101114_AABCFQ vaidyanathan_b_Page_104.pro
88d42f7ff2799604067798dc6d1dda72
47271b1df7c88d6c54d102549384d13726b32777
F20101114_AABBZX vaidyanathan_b_Page_143.tif
9f6b897028a67fb4f7e76c74b889d060
c5a6fb5a7d7dccdeb8303c44be8c93ed0ce5d912
55235 F20101114_AABCGG vaidyanathan_b_Page_121.pro
3ca9accb662daa1c036e219e6a5ab265
528e913e18dd3798b16e39c45700c200b5a605ea
47794 F20101114_AABCFR vaidyanathan_b_Page_105.pro
9f7cacc2c2cc5ee8f5af0cd228db53e5
4d4f497e03a46cc915ad992f52e478c321323e1e
F20101114_AABBZY vaidyanathan_b_Page_144.tif
7ee55672862fd23e9ddb6d95b761b5e5
c79cf39f49d551a2b4becdfaa6b747a31b6f5f0e
53299 F20101114_AABCGH vaidyanathan_b_Page_122.pro
e514ec52c578a3023ae5bd2faed17c87
a61c20b9c435f6f84433e2efdb5a9ed1ecb7d6f1
43571 F20101114_AABCFS vaidyanathan_b_Page_106.pro
415a5797f2e467840cb64951f8bb860a
235dcfb663ef008eb207434a9e997a77bf18c1e4
54868 F20101114_AABCGI vaidyanathan_b_Page_123.pro
50670f08176c3d7e4064a598f416a1d4
f3daa296042e54bc6f4d397e9168a4cc14fdc890
56666 F20101114_AABCFT vaidyanathan_b_Page_107.pro
89bba15fffaf262a36bc44c776e99bd4
3007744fe301a374c8ea0b824009a819fd942e76
F20101114_AABBZZ vaidyanathan_b_Page_145.tif
1ea8ffaa925eea0dcd4b113280abdfd1
5ec6b9f46e38c43db9feb54cb6333e0c86461d05
36405 F20101114_AABCGJ vaidyanathan_b_Page_124.pro
02afcdeb94338a1c748665364a6e0f83
15e95808d6655eb77b877d43c9d7ece878e35156
53408 F20101114_AABCFU vaidyanathan_b_Page_108.pro
2c51ae345faf5b590f52cb1f762d062d
d41fe2c5b1b1c3343df7d01906767ab90234c45f
42641 F20101114_AABCGK vaidyanathan_b_Page_125.pro
231ab600e053c1a6ce58ed6358b87d3a
1be0cb2ccdf40533a843519678b091d719174897
51779 F20101114_AABCFV vaidyanathan_b_Page_109.pro
379ee5c545694287187f2671310d1130
28a106f9b58d95840740c1810beda83492a732ef
51168 F20101114_AABCGL vaidyanathan_b_Page_126.pro
46721bc25b4b7ddfa58ae206ff9634ec
b349674fe1b24d7afe150b2fab3ccdf288026f6f
51115 F20101114_AABCFW vaidyanathan_b_Page_110.pro
2a05600df4784a7347ebf69fc44c3a56
80d4092cdaf7d9e1502abeec268e081976599000
50409 F20101114_AABCFX vaidyanathan_b_Page_112.pro
d6cf1b5a0d72e905573ff295f05fc3cf
7686df1e3788b85a389dd3e57dcadac5daa56b79
19678 F20101114_AABCHA vaidyanathan_b_Page_141.pro
88254b43adac2775b42621b94b0769da
45d1c94c889405c1108122d734830398fe4d31b2
71396 F20101114_AABCGM vaidyanathan_b_Page_127.pro
85ff88c1c2647a98c6d062032a992003
5c81a8fb0ca0036925fe24858f0b2a726086fc78
37372 F20101114_AABCFY vaidyanathan_b_Page_113.pro
73bad843350cc8387180c94fda63e4b2
c05018f86d1ec13fc5a459f1f32bf1ebe72010c3
3132 F20101114_AABCHB vaidyanathan_b_Page_142.pro
9b0eddf06b54043d19e4cd358d01bf4f
ba87b116a39199df97d9a508cd89b8a16b9df48c
52856 F20101114_AABCGN vaidyanathan_b_Page_128.pro
dafd29341d73376c15aa3264509ef9a4
35ee7bb701e3056ee62bdca4293f81f07193172a
39448 F20101114_AABCFZ vaidyanathan_b_Page_114.pro
973d5b461ab89c84baafe9f0bc608d5b
59ee96883ef69c5e3f45b96640dc44abbf559a0a
11811 F20101114_AABCHC vaidyanathan_b_Page_143.pro
9568808216b837fbce11d989bdecef82
b616c9c5fd05e6f8e0abec506611dbfaef405c6e
47257 F20101114_AABCGO vaidyanathan_b_Page_129.pro
004420abcb61b906015f56dfb703716a
0366cb32ec4366a6fab55ed7aff99337b61bcae9
5277 F20101114_AABCHD vaidyanathan_b_Page_144.pro
5f74fe9e5e592d5b2cc49dd52a2c0879
6b7967481a3678293fac3e8c3912862024c5b115
48868 F20101114_AABCGP vaidyanathan_b_Page_130.pro
0a171fe2868f3f68545277180543470a
aaaf265bd96a63640d3e17e7696477fd872588a4
53761 F20101114_AABCHE vaidyanathan_b_Page_145.pro
60f0bb49da13493dd160f1b72c3f2a80
00541dbac997192435022a51c9db6d162194ead2
58152 F20101114_AABCGQ vaidyanathan_b_Page_131.pro
bafc5a19064de82b7faab0fbdd582508
d6dc270ad385a47dc8d874dc111e502897c953a0
52850 F20101114_AABCHF vaidyanathan_b_Page_146.pro
d62e131b62ef4ef71a9e551a68cabc00
c60251da5c78db4341bc17070b360cc418abdb74
56972 F20101114_AABCGR vaidyanathan_b_Page_132.pro
81e50cacfb54bc0fe31364c10624bc73
c1ad131c750ca6209a4d5f9b6047366873be552f
54870 F20101114_AABCHG vaidyanathan_b_Page_147.pro
102d6aedb7946c8b87540fcdb842471b
5f6802164ca9ad26c317940923759291d07a2fe9
54981 F20101114_AABCGS vaidyanathan_b_Page_133.pro
d0d470c02a6ef7011ec8cb77894d30a9
7e2ce27204669bd7a0ac05712410b8a5a6f8866e
55169 F20101114_AABCHH vaidyanathan_b_Page_148.pro
c8c2e697a06a2532078b45f16ef9c692
00276a8003c8948eb8c1b215ca294c5e12653e0c
6222 F20101114_AABCGT vaidyanathan_b_Page_134.pro
607515bf03f1cd4cf5f346671ad73d60
3435ae36d7d240421760d99cc3a9f64fa121ec64
53182 F20101114_AABCHI vaidyanathan_b_Page_149.pro
0bc44c8bd2890241aa43362b04107c4b
771244f2b660d0aa0e2bc493a903fa3580bc8c50
43388 F20101114_AABCGU vaidyanathan_b_Page_135.pro
00d5cc82d5d2c33c1297b2cf9547a8a1
c8118b9f978ca4bdccf4a0abd9ce0448714fff09
44676 F20101114_AABCHJ vaidyanathan_b_Page_150.pro
314859223f78beb68bc279a595892bbc
5ce2849dadedd20bc4f624029f71daad93576a2a
14643 F20101114_AABCGV vaidyanathan_b_Page_136.pro
23fc75a3b751915befa703a5b8deb904
4393ff482bf23e0f33762031c4a71b08b413dd15
43270 F20101114_AABCHK vaidyanathan_b_Page_151.pro
7a720ea25584f4405f7f16235db879ad
398ed8def1e3e0c038b9e2434f58f8956a676235
38416 F20101114_AABCHL vaidyanathan_b_Page_152.pro
786a041fddeb0fa9e3422e1bf5d43cde
cda6cb830f08ee351b47e2a06982cffe4361db11
16499 F20101114_AABCGW vaidyanathan_b_Page_137.pro
0f82841dcb9f15a3f3b507444984d165
171ec0ec02e509cec16f4645512a2e2b3ee50b32
53275 F20101114_AABCIA vaidyanathan_b_Page_167.pro
b066743968b3670080ff3be5a603e74e
0a8133799f286d4dffd805e7444a250dcefbf63f
55238 F20101114_AABCHM vaidyanathan_b_Page_153.pro
f9c15bd6afeb392889c68b3d7afa314f
1c6b383e221257bb33da74220ef294c6e987ea67
14556 F20101114_AABCGX vaidyanathan_b_Page_138.pro
75bfec6876dfad699320fa9208ac054b
1e4f0e1d9e2acd03c51da25129841a4f5593e27c
53749 F20101114_AABCIB vaidyanathan_b_Page_168.pro
f587e70801a5b8e43f97224661e11a8c
3d6a4a16979fab60c8257f2096bdf81cafdf77e1
16807 F20101114_AABCGY vaidyanathan_b_Page_139.pro
067271a5650e893ef4b54c439e2ef48d
f180c08e3f871818e133b653d04746b2cd92ba72
F20101114_AABBFA vaidyanathan_b_Page_001.tif
915a64c3bdeb1eda0b97e8af17be57ab
8f3c72d08b0760e7ff10b1bdbd22935ba70be804
51658 F20101114_AABCIC vaidyanathan_b_Page_169.pro
c89595709324059827ee5bf9e05e6822
6431a885df9c8889526b64ad8844c9fde4d347ed
53514 F20101114_AABCHN vaidyanathan_b_Page_154.pro
a3a05faa389d9f56ec16fecffe3580ef
e7352797a94c4f5285edbd97053584aafa572749
F20101114_AABCGZ vaidyanathan_b_Page_140.pro
72308ca36c57947339b2ffe0025e47af
e0517e364a8b637bc13e7c476df5ca000aae0d0c
23949 F20101114_AABBFB vaidyanathan_b_Page_066.QC.jpg
a8ea2b0d79c4182a9ec172eb9780fbac
6e8f4c2204d6588a204491b634627be759374b11
55892 F20101114_AABCID vaidyanathan_b_Page_170.pro
ce0ef4ea94cec247e4868453e0d95219
2f387f16a980437f8d263fe55ed5eedf72f50dff
57595 F20101114_AABCHO vaidyanathan_b_Page_155.pro
2e84be38c622a722b6d9bb445e667a65
733d111d5165e2a676c80f3d11417d87b736654b
F20101114_AABBFC vaidyanathan_b_Page_182.tif
67181413597a3741b55a3c4491faa8a9
640810d49065182d85de9e359c58f4440c56bf07
55054 F20101114_AABCIE vaidyanathan_b_Page_171.pro
7a98caceb984ab04eb4843d503c51f20
dbdeeb9c1f6331d55a29769988d463eaa6d537ea
36410 F20101114_AABCHP vaidyanathan_b_Page_156.pro
2794bb5f94c8e008883716209bb6f15c
6c79e46aed3608d7eb7857de3cc7628d5ef056c7
1053 F20101114_AABBFD vaidyanathan_b_Page_180.txt
8bd33df2f5636ce41827806567ab6fba
572da40ff80d1aec9cbc9557d6239718112a502c
F20101114_AABCIF vaidyanathan_b_Page_172.pro
85ecaa6c48629f47d144f69294b6951b
cc9959382a224731898c8d2b5360b72419d1f2b2
44450 F20101114_AABCHQ vaidyanathan_b_Page_157.pro
9b0a64501d338c294fc058f1c14e0b8e
92bbe8b28e0ac6a58562f8fe05887ace3951032c
94203 F20101114_AABBFE vaidyanathan_b_Page_151.jp2
c94a2a99a9e78c7c7fbea255ab1de76d
28f4743baa4c8d3ccabbab3f78a52409e31ffe2c
47007 F20101114_AABCIG vaidyanathan_b_Page_173.pro
335ececc5ec6f8413f6994e5dca94cf6
d05313c1499319ac551cdccc76055cfff0be1a11
54430 F20101114_AABCHR vaidyanathan_b_Page_158.pro
6878e4ce79e4cd07ec99fbcfa36b530d
babd2ad49d18baba8efddae49b0c393015de4642
104121 F20101114_AABBFF vaidyanathan_b_Page_130.jp2
6eb917f9806736184c8e8b7e88ee211a
14b474ad299927e86b90f3dde87a8c399015b22c
54856 F20101114_AABCIH vaidyanathan_b_Page_174.pro
0f969773806dd06273d1a90e37ce9da2
164cd300f2a9832188d7483522e91e52c3b445cb
50906 F20101114_AABCHS vaidyanathan_b_Page_159.pro
3e6d0b55a2daac759d77f253bbe693ee
ef93723a71226bd33ea05fa94c9103ea0dd37a1a
112376 F20101114_AABBFG vaidyanathan_b_Page_149.jp2
f9580d6d00e2c7bb31dc321ec2d521e5
f9555cfed642600fa287c0d0073c02c9a6cee61e
56909 F20101114_AABCII vaidyanathan_b_Page_175.pro
7f0baf7e50584dbd6485e2fb113900df
0af8108b19eaf52020f698cc914c8c4bc0f68b2f
53532 F20101114_AABCHT vaidyanathan_b_Page_160.pro
2d99f0910d924f45f281e8d249ce5041
a21190c006f34cf0d34c15a2dd34dffd52a0090e
6800 F20101114_AABBFH vaidyanathan_b_Page_120thm.jpg
98728b8e27c1653c0f38164cff5bdc14
2bcf2cb0f6cb4d26b3eb523c773a084f5c26b89f
54670 F20101114_AABCIJ vaidyanathan_b_Page_176.pro
9b416ed3229165eccde6d5db1451021b
6c56b54c301033b392600063b1e2786a3e8e3a47
54413 F20101114_AABCHU vaidyanathan_b_Page_161.pro
7f44a5750ee990521df30e13ccee34f1
2393333c6301da42bbaf0c020650984b02e53e9f
4624 F20101114_AABBFI vaidyanathan_b_Page_093thm.jpg
64dac4dd890a28232fe03bf5832c36c8
a5a6601aa0bb0ab6e817bca2985a06db17bdb5b4
53274 F20101114_AABCIK vaidyanathan_b_Page_177.pro
e6880f1ffab40569a5b4646613ad9e50
9d72a294fd4c891d9927f8ec950a397981ee0e95
52656 F20101114_AABCHV vaidyanathan_b_Page_162.pro
197e7a685d8603971e10bcea656f9830
348194468f94b7396369f0384d5d63b9ff88301a
50344 F20101114_AABBFJ vaidyanathan_b_Page_093.jpg
081eb72f5b8adb3fc300fe737a19dda2
d28dda5d3df0623d0dc2c2fafc2412e8f7ce3edd
55470 F20101114_AABCIL vaidyanathan_b_Page_178.pro
6aa6928a09843c46c8999b56e6be2852
baa31c1d78ac5372480e6d268e3e697836939d76
41102 F20101114_AABCHW vaidyanathan_b_Page_163.pro
151785f83d88230a8d8c54f0f349f2a6
32e4c2806a07e410922c665ac90a65758cd67268
F20101114_AABBFK vaidyanathan_b_Page_039.tif
107fccc609cd84dd68e54f5f614a19ce
f006dc27b9171467a196c7a813eaa0afddc9d689
35519 F20101114_AABCIM vaidyanathan_b_Page_179.pro
200afd8ce7141e94573a38fb9e9e58fd
054ca941613f3dc50eb70a4f5517a0e1870f291c
252 F20101114_AABBEV vaidyanathan_b_Page_134.txt
7b2dbef6ca1088f78a80f71e1be5e088
c8303eb0f9d68270f8456f5f168f75f882f4e483
54016 F20101114_AABCHX vaidyanathan_b_Page_164.pro
6ea4d52a85017eab49d69da156af8763
7f3b37c70ed2fab6b76553128d809baa066916c1
96 F20101114_AABCJA vaidyanathan_b_Page_002.txt
c17fe9c27cc46754552c8bb8460949b9
8f41609d9d13320f4eca8ad0dbeb2640b846b165
80 F20101114_AABCJB vaidyanathan_b_Page_003.txt
dc77786b5c1717680485a503fcd825e0
a72f5bf28ffda001d0ca8e46418fa440af4a57c9
7099 F20101114_AABBFL vaidyanathan_b_Page_178thm.jpg
6f8845f498822d84eddec550b7ce721a
8388b3848374f7c59b3d3a12ce03b379c785dce5
26945 F20101114_AABCIN vaidyanathan_b_Page_180.pro
7518a6cdaee8ca81d0a667dac27f12d3
ff980728f9a51eb4379714ac42664940c6787959
6941 F20101114_AABBEW vaidyanathan_b_Page_175thm.jpg
1d46512beab1e690661683657cdfb12e
a9f7b6a18caff7344caa635f787510e5f4d7f953
53294 F20101114_AABCHY vaidyanathan_b_Page_165.pro
63d5507761264ffcb34bdabc6149fcb2
2513e11f4837123b80b6c41513dd35b0ced7b3a9
1374 F20101114_AABCJC vaidyanathan_b_Page_004.txt
e85b6f2045e29805d53756a7945e1cd7
5db88bb158a9baa633a63a9b7b6da15d62a2184d
6494 F20101114_AABBEX vaidyanathan_b_Page_047thm.jpg
a8814ad88d655559e45944aecd44816f
376114ad2766362bf19c8178263ee524216cf0d7
52357 F20101114_AABCHZ vaidyanathan_b_Page_166.pro
1222c4e9e62a945db69888b6ad7158a8
ff3e00a8cee7f4ddbd746f4a5364970e545e64b8
4426 F20101114_AABBGA vaidyanathan_b_Page_003.jp2
26c9cd99843bf6b7b84387cca28d9533
9ab6e3a2c3698d1ad084d4debeef342bb1852d0c
3218 F20101114_AABCJD vaidyanathan_b_Page_005.txt
9d7261600c394fe4a52b86727ad83106
631de1ccbdd90c0a6ba03339eb34e82d97cd4f86
23422 F20101114_AABBFM vaidyanathan_b_Page_088.QC.jpg
1ba01bda6b618f1fa8fc5dd4d6ab7261
f7d37415c7d06146013c80f9fbe62b691c157115
8292 F20101114_AABCIO vaidyanathan_b_Page_181.pro
f1ab03d0c86d6fb09e7e3a315998bfa1
093e357e88874f55051bdf49b7abbb687031563b
24433 F20101114_AABBEY vaidyanathan_b_Page_042.QC.jpg
1ca2abbeaad02f232c1c772633de5186
c7a2563065250ce10ce20a75e9b499cff09eb408
77901 F20101114_AABBGB vaidyanathan_b_Page_062.jpg
b9b01b50568837ff9c44321654b52cfe
6aabd012cc176d7fdfccf62dc64d16f7670fee31
4091 F20101114_AABCJE vaidyanathan_b_Page_006.txt
13b7c4ed56c49d40bd181ae2ab8a9c99
8fd17c39cd2079d421d6b9008e25586db37801e3
51478 F20101114_AABBFN vaidyanathan_b_Page_032.jp2
e707cbc6e1ba13260daed9eee4586ac1
fa591ffb55e3461325dc241d72f04174b93d4008
6713 F20101114_AABCIP vaidyanathan_b_Page_182.pro
b073626380000e4a7697ba8ba41730e0
50052ff039690ef417b0c2d62a7934b2e47dcad8
14377 F20101114_AABBEZ vaidyanathan_b_Page_058.QC.jpg
7b04217b79dfefabe49418dd8e511ab5
8cd6207234fa20bb4ef4f8f16c9f450a14d1e946
F20101114_AABBGC vaidyanathan_b_Page_022.tif
900e3b7c71acf14f449b67dc58001664
db2e7ef4e0ed44bfc967c0f4c1b2abb1aee6ab5b
890 F20101114_AABCJF vaidyanathan_b_Page_007.txt
59deaef5e841393148e279250dd9248f
ded5a62c5325651c96d2dd9dc869a233bfe715d3
69075 F20101114_AABBFO vaidyanathan_b_Page_129.jpg
3a9a79e7afad5431ea2b23eeecbd1e8c
4760e0ee41d9e023591ccad825a5b56a0266420f
59599 F20101114_AABCIQ vaidyanathan_b_Page_183.pro
83b6e3b03f287df8c1f1b70ce1df1d77
77c5ba431e56f8df47d04124d01c53b5d2622f08
52313 F20101114_AABBGD vaidyanathan_b_Page_111.pro
7fe589d7a180b531461b72eeca0a13e6
d2b7b01054caceb5919ba82f6938d533e1134f53
1961 F20101114_AABCJG vaidyanathan_b_Page_008.txt
d6f116e628ef62cd49a49db77f86063b
9e3ed0bfee264907dd71f722e55a1645e55d5aef
F20101114_AABBFP vaidyanathan_b_Page_122.tif
03faa79ccc8e3e36433e7c9032c16e2d
3e23afdac38653b8fdef8773450e4bdadb804948
59156 F20101114_AABCIR vaidyanathan_b_Page_184.pro
a0bd1cf6684399f1e85aad240f7f3680
34c90a3441129cca2d119a65283ef556c17bf4cd
F20101114_AABBGE vaidyanathan_b_Page_126.tif
3e517b8ea4ab8d2bf87b6a6dafac03c0
34c4a872cfac28158f28dbc27b15efb7132c6393
F20101114_AABCJH vaidyanathan_b_Page_009.txt
75d6031643823e9c0296654a3bad3402
9cb0c67d651496b6e38d4dd14a8151a95c33028f
296001 F20101114_AABBFQ vaidyanathan_b_Page_060.jp2
2a58817cfcd116f1819012010f705ec0
2f1f96039cd1f8fb72d0f95d5c8b20715d174a3a
62994 F20101114_AABCIS vaidyanathan_b_Page_185.pro
c26fe8fe8c8267550fa5260e9257d2be
7baebfbbeb4c682825581f5f87674b17d8e748fb
38928 F20101114_AABBGF vaidyanathan_b_Page_073.pro
1c54e9870e9373f8cc84fa93c5ed3953
39e2f463a6d18aa98e00f9143b68a608b0dbfe40
422 F20101114_AABCJI vaidyanathan_b_Page_010.txt
28b6f1f04b7ecc8ae12ac509226decff
266d769db82715881b944126244b8f64a0a35e81
85749 F20101114_AABBFR vaidyanathan_b_Page_183.jpg
e85f0390e30208dcb6befdd34f2d1894
26db6c7a2acf35ea360052cfea7aa772565faa67
58022 F20101114_AABCIT vaidyanathan_b_Page_186.pro
4cec0dde024a3f652f91619acf5e8625
0be74c47105cb1a3d539bb96f381c40729887806
F20101114_AABBGG vaidyanathan_b_Page_044.tif
d5e6c9ab7db9bb8efadea9173e6fd710
f5e027181ed108b0d7eedf43dc273b574848737f
2076 F20101114_AABCJJ vaidyanathan_b_Page_011.txt
29dd610a6241c9fe5d6e8f98c85afb85
d1a976313af457d64a627d27f019354f7d704dc8
77124 F20101114_AABBFS vaidyanathan_b_Page_168.jpg
6883151b8e85ea8f5f2c2699983e2ffc
ba606242869da2ef403b3e07f54695df4034f03c
61002 F20101114_AABCIU vaidyanathan_b_Page_187.pro
84b3e5a4a7695606492ceae895a49f52
dba9966d87b68a676ea512358f87b4d6f2341b3c
70447 F20101114_AABBGH vaidyanathan_b_Page_063.pro
af8900cec7dcdeee6c7a99375c63cc77
1ed2e9180ea68e2559a5b38ebc4265be08f4b597
764 F20101114_AABCJK vaidyanathan_b_Page_012.txt
2b0f7e9e7737f57d767fdbd865bd7065
f3f4db923b50fc9403ccd88b44bf02b54c561c1d
6937 F20101114_AABBFT vaidyanathan_b_Page_022thm.jpg
a23fe50b37a12c80f6b56f715c580373
aaf4ab239f1022a43a11ffab10b4cdb09f2e659e
59422 F20101114_AABCIV vaidyanathan_b_Page_188.pro
f8b91df1425bac4564c34cce87a9ca69
ab2ed803c1998a7d9fa7917ba4574fc56cae28e9
14345 F20101114_AABBGI vaidyanathan_b_Page_094.QC.jpg
e1a400199d565c9e25b8e95a2d6fcb96
dcc6bb2fc4047b807ffdf3131418af50b1907ac3
2221 F20101114_AABCJL vaidyanathan_b_Page_013.txt
44b4f015e855f3eedcbceb0df9be87ca
85afbc0625632d8223d975d22e40eefdfa5734e4
26099 F20101114_AABBFU vaidyanathan_b_Page_019.QC.jpg
f8b5d4af668f64b58ff99f07c5be937f
f47cd6d09a1e8ec3d9af09b5cb6143a6fa6efb99
59659 F20101114_AABCIW vaidyanathan_b_Page_189.pro
c45b044ff08c1ab338701cb570304db2
14fe17cc587b3d604b8f7caed63f55e632d14da4
292478 F20101114_AABBGJ UFE0021180_00001.xml
f9738f40ea9877a18d234fcab67eb0c1
5ecdaa3e9d398c4014bbd6a686e0ab3ae112577f
2199 F20101114_AABCKA vaidyanathan_b_Page_028.txt
f6724505110e13744e426225f7a655f6
b537ebe875449ac187ec990273fd6222c02a95ba
2089 F20101114_AABCJM vaidyanathan_b_Page_014.txt
c020b50b735cb0d4d1128eb5d37e2520
b33585762a6d45fcdc354ed43a7e042e33f2facb
F20101114_AABBFV vaidyanathan_b_Page_162.txt
2b985dbfb1c24fc2a664e00cb70e2218
60715054df5d9d0e47646568da6043b8352655b3
4309 F20101114_AABCIX vaidyanathan_b_Page_190.pro
d527983bec4c2710b28616b1c15dfe80
ed4bbbdca4d0181c2de5c12034916a8d6dcdf786
2206 F20101114_AABCKB vaidyanathan_b_Page_029.txt
b0fc6e8f0b39329e5ca0069b0dfa4f24
8fccc80a06216f3fa6d894c72fd4d2f2b8cd7296
785 F20101114_AABCJN vaidyanathan_b_Page_015.txt
5b75d0ff539ddbd77b45fa5acf995651
356bc84dc05db1b347d50d08183cdf44ddcf9232
F20101114_AABBFW vaidyanathan_b_Page_135thm.jpg
109acd46ab0aefc301ea81873e685e9e
26689cda723c035e591efc60f0144a482bfa414a
F20101114_AABCIY vaidyanathan_b_Page_191.pro
b45ee034afb067e9aadbb481fe09824a
aaed2891d753914100abb7f24e309dd3e0e9ac4b
2272 F20101114_AABCKC vaidyanathan_b_Page_030.txt
96978ea2451debb27e25ddcd3e2a91a4
35058521573f6575d69490bc36e841a2f9ab95ee
F20101114_AABCJO vaidyanathan_b_Page_016.txt
7d7bea4a8752748309efefedbbebc5a6
694b453175b064f1df72770f23fa7d70a72e78ef
77458 F20101114_AABBFX vaidyanathan_b_Page_041.jpg
342d89ade66aead6d8be403dabf324c7
b701dc276af8f6ac851e9eb67217ea71921b5ca6
481 F20101114_AABCIZ vaidyanathan_b_Page_001.txt
5fb6abbd81244dad46d629fef261e63a
831f9989c1441381bbd268a824d014c58032ec2b
33649 F20101114_AABBHA vaidyanathan_b_Page_015.jpg
b3fe4b7cff3714fe94973804b13e7e6f
a007846c858f4a047cc4ffec4ae936c43af8f4a3
24714 F20101114_AABBGM vaidyanathan_b_Page_001.jpg
c0ef56a473309f2141a1fed8b88bb79e
a8e233dc363bbcb4f3b51bf5e3ab12e8c4813c91
1738 F20101114_AABCKD vaidyanathan_b_Page_031.txt
ac1e1cf2c1ac82fa0ba85c39d3b6c130
4e1950459ab1516639f08b82fbe97f75b99bcf24
669 F20101114_AABBFY vaidyanathan_b_Page_136.txt
8006a37b75e3caf8eeaa30cc29dcbbcb
d15eb34004e200cca31767179065887b8b1a4736
75286 F20101114_AABBHB vaidyanathan_b_Page_016.jpg
9e6a7a68aa780fae1bcc12f501ec7154
a050908ba9f302219107e5a0a7f0dd2b084a9a94
1030 F20101114_AABCKE vaidyanathan_b_Page_032.txt
9001e657d474e099ee9cc00fd035c138
366883c337369671e1cdd9af8026f0cc92268ee5
2175 F20101114_AABCJP vaidyanathan_b_Page_017.txt
732144031fe9209e7a85358070fb6bc6
530ee94d11e08968ac4d6a51f9b81be72d61ec20
F20101114_AABBFZ vaidyanathan_b_Page_130.tif
a18760afc75b5fba66d9067403e438a8
2452dae511fe14564997bef6b430e63a04cc6de6
77571 F20101114_AABBHC vaidyanathan_b_Page_017.jpg
8f472828f189eac919b78c776ae90079
5019ea20e1b6674cf66e0b6e8be3405ae67ab115
10342 F20101114_AABBGN vaidyanathan_b_Page_002.jpg
9b1d426d11a29bbf790a308a2225b671
9c5bf0eaff6e3a452b76b0d55ce9e3f55a0fc2c6
1474 F20101114_AABCKF vaidyanathan_b_Page_033.txt
86999f092709de6766a203524927c9d8
1304e2080a98ed2850b645ea63ce2d7755db8082
2208 F20101114_AABCJQ vaidyanathan_b_Page_018.txt
a19031f9049a7d28be3ba9fd5d16c94d
12bba14f96792a7cd2f6d27b87f8d5150ad50f0a
79607 F20101114_AABBHD vaidyanathan_b_Page_018.jpg
9455c38c4e86ae9e38a72b0b242ccf6f
1ffb201b373cad40e55c8588388b5d84dc986d21
9456 F20101114_AABBGO vaidyanathan_b_Page_003.jpg
f95aa478a59b39da5dbd625d1e93e568
cec82597df1abe522eda8000dc5fcd1c23f416b1
2069 F20101114_AABCKG vaidyanathan_b_Page_034.txt
fb58ef2f2c7cf493427cea9129b7bf8c
c546f716285920410f132b2a0ccedf556a4e168b
2184 F20101114_AABCJR vaidyanathan_b_Page_019.txt
60fbedc8be78a9258014a7c6fb3d4b9c
3c3c84eb36567d69fbe7f1d8964442ca129436e2
78772 F20101114_AABBHE vaidyanathan_b_Page_019.jpg
5ba32e7fa488755a08244c3f517d7f1d
6c4a3bb386e428fc2fe09d206d06233479dbda16
53578 F20101114_AABBGP vaidyanathan_b_Page_004.jpg
df4342df3ade4b79712bda7152551b07
9f81901e169730236a3efe3fe0451345d4c808e6
F20101114_AABCKH vaidyanathan_b_Page_035.txt
8e0c54f059545e23f4dc721108650ee1
bc0e327a0647d40d58e082fa4e46278cae424c3e
2074 F20101114_AABCJS vaidyanathan_b_Page_020.txt
cd53deec903510a628bee72f9405d9ad
f3c311f7ed4fee9e43a13907d2fdae6edf194d38
76391 F20101114_AABBHF vaidyanathan_b_Page_020.jpg
24dfb3c2968d40a174d6e0a0edde67f1
0f74ef4b5c3dbfbb72bf9cff24856f91ad30c9b7
87239 F20101114_AABBGQ vaidyanathan_b_Page_005.jpg
e706db0731f2a0d61ed7720498d585db
cf2c79b60309ed418b51197e0ff5fd51b1d66ba6
1986 F20101114_AABCKI vaidyanathan_b_Page_036.txt
db018e46a8dbdfb3f0149fc9d96c1272
8566cd03fc86d63b39a21b952f3e26051b87204a
2845 F20101114_AABCJT vaidyanathan_b_Page_021.txt
78e8310b6d0caad4aeadb8592857e337
b76f8891d622f9046f419013396e2dae9933d4bc
94120 F20101114_AABBHG vaidyanathan_b_Page_021.jpg
8ad7a4b348c6bb4ef762cc91e31e557a
c335c762672bd7443fe15f0ed749972dc00ef1ba
109419 F20101114_AABBGR vaidyanathan_b_Page_006.jpg
25e793f4b4bee3946b9d6090ca8f8d0e
886ba6ac3d6c95e5e7b53eea634fbdb8b9ab07cd
2257 F20101114_AABCKJ vaidyanathan_b_Page_037.txt
257875661ac746d54ddf6e330c33e412
8d4c02e16de4725a48124eecaa5c536e3ee4b0a0
2493 F20101114_AABCJU vaidyanathan_b_Page_022.txt
bae2025a449bb584a912e4387adfe113
967c7c91b9f9942a2109c5c5c30ac013ab0d1bc2
87109 F20101114_AABBHH vaidyanathan_b_Page_022.jpg
5bc9f503ff412ea114ea3a1fe1f6d119
e01a700e0ab80b70724b8b3883cf5e039df4f962
30378 F20101114_AABBGS vaidyanathan_b_Page_007.jpg
7d9a76a838ed48b24d444bd800dd548c
ea2be2797f19045aaf4a40c0c766e0fcae2be249
2664 F20101114_AABCKK vaidyanathan_b_Page_038.txt
705f43937d79c7b44ea0242654e337a1
777b94bc05a6ca78ffeca90d5237026ad4dadc8a
2191 F20101114_AABCJV vaidyanathan_b_Page_023.txt
f1035401eccbc1eda7f5f8e0c9fa09cb
4f7b04d4bec9b2fd8b86d5261785dafff38d0058
76260 F20101114_AABBHI vaidyanathan_b_Page_023.jpg
db98a34c58dd831647bcb12d98316899
0462cb32c143667f8e07325be80ed7f4d97fbc96
59222 F20101114_AABBGT vaidyanathan_b_Page_008.jpg
e3af9614aa29076e5e8b6ca475499e4d
14bdde03719e25790608d5b47ec83b1402d63e8e
F20101114_AABCKL vaidyanathan_b_Page_039.txt
58b63f4682a425552646b18d40ad61e4
db45664f055c3eb0dd30050479546922f0418fd6
2139 F20101114_AABCJW vaidyanathan_b_Page_024.txt
a1647f9c0d95e25664e683e0493a9f7f
c1e447fc49d818438de55873ec650a34b92b7088
75742 F20101114_AABBHJ vaidyanathan_b_Page_024.jpg
240b0d13e5ca741507eae3db02e4c946
549276f0751c50f4086e4a9b8137e67feff44237
75762 F20101114_AABBGU vaidyanathan_b_Page_009.jpg
551de7048aa18312e688e50c7ae4f2f2
908df3c50233341c46a1df673d8f7f4a1aea86e0
F20101114_AABCLA vaidyanathan_b_Page_054.txt
4ceac2d10aa34e8c0a39d3dc3c07dfca
f4030eb31e6f1ef0c017c45b133974dd8a49931f
F20101114_AABCKM vaidyanathan_b_Page_040.txt
239ade54777ed6e5142d56f5ed9460b3
ace9a6df064aa99256bf1a1cc9aafc504ae41d60
2008 F20101114_AABCJX vaidyanathan_b_Page_025.txt
cdc00a4ce06fec48eb761a914e2a0b89
27ad863256f11cd89412526c34f104000994de7a
70648 F20101114_AABBHK vaidyanathan_b_Page_025.jpg
3bc3695304630cc26642b29d2a484b96
033dc2df53f444fb3f8aa287b73168c45452adfa
18375 F20101114_AABBGV vaidyanathan_b_Page_010.jpg
a1c96d7b1a4e1fab42ae0db483610bdd
94414c1549303f19bbe3374ae04d863af35708c6
1585 F20101114_AABCLB vaidyanathan_b_Page_055.txt
e7ed4ed9bbc2432381d02ce893b63e21
ba8e6c456388f048353fa7717dbcdab0082653dc
F20101114_AABCKN vaidyanathan_b_Page_041.txt
9c525ed8498edd68f9bf9f8e486150b8
6ead8440edde833b6dd77871393f17c7dbc3e790
2368 F20101114_AABCJY vaidyanathan_b_Page_026.txt
008537d59993179885837c5ac9a01ab5
43a44c523f03a0656b1244d740cbda6601e13ac5
80724 F20101114_AABBHL vaidyanathan_b_Page_026.jpg
6925e8714f5c9ac4037cb53e40b9cea7
0966d21c64b65b45aafd3b2fb486725c11a914eb
72009 F20101114_AABBGW vaidyanathan_b_Page_011.jpg
1d57bf9213d3e27995e55e99c79d5725
700a0d8ca7734ac79f4bd4e35ee6ff169768bf56
438 F20101114_AABCLC vaidyanathan_b_Page_056.txt
e95d6fb0318a58591155dd2eb60389cc
0ecd148d8ac598202d656f13e843dec1d158e769
2084 F20101114_AABCKO vaidyanathan_b_Page_042.txt
412ae06f54f57db71f843b94275454cc
ec9a937790f1ed7895090bd1b729d3148b30f516
2481 F20101114_AABCJZ vaidyanathan_b_Page_027.txt
7517665e224bf0d5efd810560fc7ab2c
e1c3ef886fbde44979f0adf0d562bbc2cc39e9b2
73029 F20101114_AABBIA vaidyanathan_b_Page_042.jpg
cb4b1a12dcbad8cfd22a49fcc1fe7670
9af5458f8f2990af1a66cadf6dc8c0ef86f4e43e
82221 F20101114_AABBHM vaidyanathan_b_Page_027.jpg
35621b84b341eb755d5c2a1f8acefcbb
36b2aa347a61c1fd50e4996971a21224d03c3bd0
33754 F20101114_AABBGX vaidyanathan_b_Page_012.jpg
da0b4029236c9e134045d9c071ba9550
41a47abd89eb8cd2877affb85fa6ff42dd440fb3
273 F20101114_AABCLD vaidyanathan_b_Page_057.txt
dd650198b0730915ce2f5fb054a38975
161db7f4ad3bd71074da97b564e88eae682e6067
1882 F20101114_AABCKP vaidyanathan_b_Page_043.txt
dcb21952c7e7c436bf1d37cc622796be
aa496b741a401de634b6ea76ff275a267144a51c
67888 F20101114_AABBIB vaidyanathan_b_Page_043.jpg
e88f1122bffb9475b3a9b7b54e52e36b
06ee064b5304e6a946679599fd3761be65d6f0e0
75136 F20101114_AABBHN vaidyanathan_b_Page_028.jpg
c8fe10bbf459f927badcfc9bf7e12c31
f9716cc4e5e939978843fd3fabac1f1e78a7b748
78131 F20101114_AABBGY vaidyanathan_b_Page_013.jpg
0a884d37d94dac559c2f836399390202
dcfbc306dc8c76baae5d5abb19de71dee7b72130
384 F20101114_AABCLE vaidyanathan_b_Page_058.txt
73fe43bd9971e999b8ab73da192885e4
a49c3e77db889881867267a5aa20aa2a1ce8341d
76302 F20101114_AABBIC vaidyanathan_b_Page_044.jpg
f825eda1dc8aba91883640ac732a2c72
3477e9d4f8ff2024e16e8d45c2cc1ac556121447
75966 F20101114_AABBGZ vaidyanathan_b_Page_014.jpg
75d5383e4eb197f1db6290ac0fcf50b9
c241c4d8b05745ed6d3718399bf28152914b3eff
608 F20101114_AABCLF vaidyanathan_b_Page_059.txt
dd6a3b71f545d1695fd3e227dd62debb
8013afe48eba119f7942ae4f7476566024236299
F20101114_AABCKQ vaidyanathan_b_Page_044.txt
744f4019a0d8f38d6bf1bdcc1a6cbe6e
8b8f1587c3817f9c05928649a8f06f001ce8f7fe
73346 F20101114_AABBID vaidyanathan_b_Page_045.jpg
00804302dd05d6fd99dba31d4a47f379
c0083705eac589d444a57c53a1b9f9b3232ec030
76995 F20101114_AABBHO vaidyanathan_b_Page_029.jpg
80629f1e0d702f2d21a6a270b8b092e2
176b0583c56b7031e5b16be0dd4c3ffc4a0a5892
261 F20101114_AABCLG vaidyanathan_b_Page_060.txt
82f63bcdf2f10b93e64aca29313e383d
3832d8b69a6dc8f8e5bb1622b681fc2bbb332962
2037 F20101114_AABCKR vaidyanathan_b_Page_045.txt
13bf96bbdb7dfb3dee378b9394286d0d
80afc3a70cf2c1b4968e4d9a68940e607a1cac9b
72960 F20101114_AABBIE vaidyanathan_b_Page_046.jpg
c103d2f704ff34ec86a00c85245e2776
a60ed9c8e36dfc88dcbf6a587623a02379307f3a
79873 F20101114_AABBHP vaidyanathan_b_Page_030.jpg
9fc0abb899e3c9ae139edfa3ccbc5954
58669a9c24150d9b36afd33eab5397263fd28b56
2248 F20101114_AABCLH vaidyanathan_b_Page_061.txt
63ff179278165c5fa48378b6a8614a59
cb76ecff80b1a83719ca51e29070b94888adec57
2027 F20101114_AABCKS vaidyanathan_b_Page_046.txt
65f68cdc43ad6dd123806c2762753f3d
3432a401c627f7a920cd908618fe88dc7db064d4
81797 F20101114_AABBIF vaidyanathan_b_Page_047.jpg
635a38695f0bbb85334e273487d0ad09
46a4688d5600a39d5f5c355572b71e900ca26f07
62954 F20101114_AABBHQ vaidyanathan_b_Page_031.jpg
6486c0649f7f907a3a9c5b8a4e8fc07e
cd2ff5285ad146537307f3328d7697f28ca33d96
2126 F20101114_AABCLI vaidyanathan_b_Page_062.txt
f72a6cf9dfd2996b9019b1c1c5449b88
643bafc34ff48c207e226d283fee2412e45b6a88
2443 F20101114_AABCKT vaidyanathan_b_Page_047.txt
a7337459ec834ef49ed548d609fac458
6e7c600fd90ea7630b98e4f90866b9cfdfbabde4
78318 F20101114_AABBIG vaidyanathan_b_Page_048.jpg
41df6ad534725c9cef9f2442c63fb605
9ccda6e450330ffddaf831d486cb95c214bfb4ad
34440 F20101114_AABBHR vaidyanathan_b_Page_032.jpg
29f008dedbc577d8e22c1b1fe907a61d
a5a5a9a66a050ba201cf76d7c379bd7f6e60dd31
2820 F20101114_AABCLJ vaidyanathan_b_Page_063.txt
ddf709de853a753031ab98833872a9f3
2c4d374ab75c537a8bfec17aeacb53f252138ea3
2215 F20101114_AABCKU vaidyanathan_b_Page_048.txt
e56a32be8729fafddae99ed630404682
635abcaa5e307ffd1560d250c1afa2b5edf2c89d
83515 F20101114_AABBIH vaidyanathan_b_Page_049.jpg
6418899bfbea226bc2c02129cfe0749f
f07848a83d7630bcd4e0b8edd9ae4d72e7f82fd5
53668 F20101114_AABBHS vaidyanathan_b_Page_033.jpg
29fc3d55b3c8390cf9fa446cfdcd9fc1
87fc9cbc1e4758e9dcc2834bf6398de9b943e1ff
F20101114_AABCLK vaidyanathan_b_Page_064.txt
144589d517de4e35d3a380fd5819a52b
0d428118bcd338f927c0e6241c9e2f56f90096d2
2417 F20101114_AABCKV vaidyanathan_b_Page_049.txt
25986b3f99bf46fed3888bd0b4c78923
4d384fc96c3b4a33395acd335a7a273f668ea90c
65241 F20101114_AABBII vaidyanathan_b_Page_050.jpg
be1b4e991eae1ecdec5f1c836ff7f6fe
9f14404bd04ac847aacac8f0bf3bc3e62e30268a
71067 F20101114_AABBHT vaidyanathan_b_Page_034.jpg
6c796e716a384adf347b06b89dfe30a7
79cf8835c8e9ba8bc5d63cacce25430f2d3fafc5
1618 F20101114_AABCLL vaidyanathan_b_Page_065.txt
c7cca15380b573978fb362e4612375c3
83dfc875af1f169cf1db741214e2204d190fdaa6
1912 F20101114_AABCKW vaidyanathan_b_Page_050.txt
e7a37cc276e426090b15eedac0b1e33d
790e40efee4545cded585abcecd075a6ad5331d9
75479 F20101114_AABBHU vaidyanathan_b_Page_035.jpg
9fb39de9e62173ec98e7759468c3405f
2e298e55a47f787aba7bceb20a061285eef945b7
76187 F20101114_AABBIJ vaidyanathan_b_Page_051.jpg
38ae4e82d244c996a63753831c73665f
9715dbf452e4fa3e8b4cd4bf26706dbc3a655a61







NEXT GENERATION ALGORITHMS FOR RAILROAD CREW AND LOCOMOTIVE
SCHEDULING




















By

BALACHANDRAN VAIDYANATHAN


A DISSERTATION PRESENTED TO THE GRADUATE SCHOOL
OF THE UNIVERSITY OF FLORIDA IN PARTIAL FULFILLMENT
OF THE REQUIREMENTS FOR THE DEGREE OF
DOCTOR OF PHILOSOPHY

UNIVERSITY OF FLORIDA

2007

































02007 Balachandran Vaidyanathan


































To my parents









ACKNOWLEDGMENTS

First, I thank my advisor Dr. Ravindra K. Ahuj a who has been a great supervisor and

mentor through my study at the University of Florida. His drive, enthusiasm, and sense of

purpose have been exemplary, and his advice and support extremely helpful. I also express my

gratitude to Dr. Joseph P. Geunes, Dr. Donald W. Hearn, and Dr. Sartaj Sahni for serving as my

supervisory committee members and giving me thoughtful suggestions.

My special acknowledgement goes to my friend and professor Dr. G. Srinivasan who

inspired me to take up Operations Research as a career. I thank all my collaborators, colleagues,

and friends, especially, Dr. James B. Orlin, Dr. Jian Liu, Dr. Krishna Jha, Dr. Arvind Kumar, Dr.

Guvenc Sahin, Mr. Larry A. Shughart, Sailash Mani, Ashwin Arulselvan, Suchandan Guha,

Ibrahim Karakayali, Ismail Bakal, and Ashish Nemani.

I acknowledge my entire family and friends for their support. My utmost appreciation goes

to my parents who taught me some of the most valuable lessons in life, to my sister whose

energy and enthusiasm are limitless, and to my grandparents for always believing in me. Finally,

I thank my wife, Sirisha, for her unwavering support which was instrumental in the completion

of my research and dissertation.












TABLE OF CONTENTS


page

ACKNOWLEDGMENTS .............. ...............4.....


LIST OF TABLES .........__.. ..... .__. ...............8....


LIST OF FIGURES .............. ...............9.....


AB S TRAC T ............._. .......... ..............._ 1 1..


CHAPTER


1 INTRODUCTION ................. ...............13.......... ......


2 THE RAILROAD CREW SCHEDULING PROBLEM ................. .......... ................1 6


2. 1 Introducti on ................. ...............16........... ...
2.2 Problem Description ................ ...............23........... ....
2.2.1 Terminology .............. ......... .................2
2.2.2 Regulatory and Contractual Requirements ................. ..............................26
2.2.3 Problem Inputs............... .... .. ............2
2.2.4 Constraints and Objective Function .............. ...............28....
2.3 Mathematical Modeling............... ...............28
2.3.1 Space-Time Network ................. .............. ...............28.....
2.3.2 Integer Programming Formulation (IPF) ................. ...............31..............
2.4 Solution Approaches................ .. ........ .. ..............3
2.4. 1 Successive Constraint Generation (SCG) Algorithm ............ .. ...._.._..........37
2.4.2 Quadratic Cost-Perturbation (QCP) Algorithm .........._..._. ....._.__ ................39
2.5 Significances and Uses of the Model............... ...............42.
2.5.1 Tactical Crew Scheduling............... ...............4
2.5.2 Crew Planning .............. ...............43....
2.5.3 Crew Strategic Analysis .............. ...............44....
2.6 Computational Results ................. ...............46........... ....
2.6. 1 Comparison of Algorithms ................. ...............46........... ...
2.6.2 Case Study ................. ...............48..............
2.7 Summary and Conclusions .............. ...............51....

3 REAL-LIFE LOCOMOTIVE PLANNING: NEW FORMULATIONS AND
COMPUTATIONAL RESULTS................ ...............61


3 .1 Introducti on ................. .......... ...............61.....
3.2 Notation and Terminology ................. ...............64........... ...
3.2. 1 Notation ................ ...............64...............
3.2.2 Hard Constraints ................. ...............66................
3.2.3 Soft Constraints .............. ...............67....
3.2.4 Previous Research .............. ...............68....












3.3 Mathematical Modeling............... ...............69
3.3.1 Space-Time Network .................. ........_ .._ ...............69....
3.3.2 Consist Flow Formulation for the LPP ........._..._. ....._... ...._..... ......7
3.3.3 Hybrid Formulation for the LPP................ ...............76..
3.3.4 Identifying Good Consists ........._..._. ....._... ...............79...
3.4 Incorporating Practical Requirements .............. ...............80....
3.4.1 Incremental Locomotive Planning .............. ...............80....
3.4.2 Cab Signal Requirements .............. ...............82....
3.4.3 Foreign Power Requirements .............. ...............84....
3.5 Computational Results ........._..._. ....._... ...............85....
3.5.1 Comparison of Formulations ........._..._. .. ...............86._.._._ ..
3.5.2 Identifying Good Consists ........._..._. ....._... ...............86...
3.5.3 Incremental Locomotive Planning .............. ...............87....
3.5.4 Case Study ........._..._.._ ...............87........ ...
3.6 Summary and Conclusions .............. ...............90....

4 THE LOCOMOTIVE ROUTING PROBLEM .............. ...............99....


4. 1 Introducti on ................. .......... ...............99.....
4.2 Notations and Terminology .............. ...............104....
4.3 Overview of Our Approach ................... ........... ...............106.....
4.4 The Locomotive Planning Problem (LPP) .............. ...............106....
4.5 Fuel and Service String Enumeration Algorithms............... ..............10
4.6 String Decomposition Problem (SDP) ................. ...............111..............
4.6. 1 Space-Time Network ................. ...............111...............
4.6.2 Integer Programming Formulation .................. ............ ............... 113 ....
4.7 A Tractable Solution Approach: Aggregation and Disaggregation .............. ..............116
4.7. 1 Aggregated Model ........._.___..... .__. ...............117...
4.7.2 Disaggregation Model .............. ...............122....
4.8 Handling Infeasibilities............... ............12
4.9 Computational Results .............. ..... ....__ ......._ ............12
4.9. 1 Testing the Performance of the Algorithm ......____ ..... ... ._ .............. ..129
4.9.2 Case Study ............ ..... ._ ...............130..
4. 10 Summary and Conclusions ............ ..... .__ ...............132.

5 AGGREGATION FRAMEWORK TO SOLVE LARGE-SCALE INTEGER
MULTICOMMODITY FLOW PROBLEMS ................ ...............145................


5 .1 Introducti on ................... .... ........ .. .......... ...........14
5.2 Problem Definition, Notation, and Formulation ................. ..............................149
5.2. 1 Network ................. ...............149......... .....
5.2.2 Constraints ................. ...............150................
5.2.3 Formulation .............. ....... ........ .... .........5
5.2.4 Reducibility Property of the Network ................. ...............153........... ..
5.3 Aggregation and Disaggregation Algorithm .............. ...............153....
5.3.1 Aggregated Multicommodity Flow Problem ................. ......... ................1 54
5.3.2 Disaggregation............... ............16











5.4 Applications of the Aggregation Framework ................. ...............164........... ..
5.4. 1 Locomotive Planning Problem ................ ...............164..............
5.4.2 Airline Fleet Assignment Problem ................ ...............170..............
5.4.3 Airline Crew Scheduling Problem ................. ...............172........... ..
5.4.4 Locomotive and Aircraft Routing Problems .............. ..... ............... 17
5.5 Computational Results ................. ...............177........... ...
5.6 Summary and Conclusions ................ ...............178........... ...

LIST OF REFERENCES ................. ...............183................


BIOGRAPHICAL SKETCH ................. ...............191......... ......











LIST OF TABLES

Table page

2-1 Comparison of algorithmic performance. .............. ...............53....

2-2 Effect of varying crew pool sizes ................. ...............54........... ..

2-3 Effect of varying deadhead cost ................. ...............54...............

2-4 Effect of varying minimum rest time at home location. ................ .........................55

2-5 Effect of varying detention cost. .....___................. ...............55. ...

2-6 Effect of varying detention time. ................ ...............56...............

3-1 Set of input consists. ................ ................... .................. ...............92

3-2 Comparison of formulations: Scenario 1 .............. ...............92....

3-3 Comparison of formulations: Scenario 2 ................. ....__ ....__ .............. .92

3-4 Computational results of incremental locomotive planning ................ .. ......___.........93

3-5 Effect of varying the minimum connection time. ..........._ ..... .__ ................ ...93

3-6 Effect of varying transport volumes. ................................ ...........9

3-7 Effect of varying train travel times. ............. ...............94........... ...

4-1 Performance of the locomotive routing algorithm ....._____ ............ ............._..13 5

4-2 Effect of varying servicing distance threshold. ................. ....___ .............. .....13

4-3 Effect of varying number of fueling stations. ..........._ ..... .__ .............. .....13

4-4 Effect of varying the number of servicing stations. ....._____ ............. ...............136

5-1 Performance of the aggregation algorithm. ............. ...............180....











LIST OF FIGURES


Figure page

2-1 Space-time network for a single-ended district with a single crew type. ..........................57

2-2 Illustration of the First-In-First-Out (FIFO) rule. ................ ...............58......___ ..

2-3 Crew assignments are made in (a) Non-FIFO manner, and (b) FIFO manner ..................5 8

2-4 Solution cost vs. number of crews. ............. ...............59.....

2-5 Solution cost vs. minimum rest time at home ................. ...............59........... .

2-6 Solution cost vs. detention time. .............. ...............60....

3-1 Overview of the locomotive scheduling algorithm ................. ............... ......... ...95

3-2 A part of the space-time network ................. ...............96........... ..

3-3 Solution cost of the consist formulation vs. number of consists ................. ................. .96

3-4 Solution cost vs. number of consists ................. ...............97........... ..

3-5 Solution cost vs. minimum connection time ................. ...............97........... ..


3-6 Solution cost vs. transport volumes. ............. ...............98.....

3-7 Solution cost vs. % increase in travel time. ............. ...............98.....


4-1 Flowchart of the fuel and service routing algorithm ................. ...........................137

4-2 Fuel string enumeration algorithm............... ...............13

4-3 Service string enumeration algorithm ................. ...............139........... ...

4-4 A part of the space-time network at a particular service station ................. ................. 140

4-5 Disaggregated strings and corresponding aggregated string. ............. ......................4

4-6 Disag greg ation al gorithm............... .............. 14

4-7 Example of infeasibility ................. ...............141...............

4-8 Performance of the locomotive routing algorithm ................. .............................142

4-9 Solution cost vs. servicing threshold. ............. ...............143....

4-10 Solution cost vs. number of fueling locations ................. ...............143.............












4-11 Solution cost vs. number of servicing locations. ............. ...............144....


5-1 Network ................. ...............18. 1...............


5-2 Potential train connections ................. ...............181...............


5-3 Performance of the aggregation algorithm. ............. ...............182....









Abstract of Dissertation Presented to the Graduate School
of the University of Florida in Partial Fulfillment of the
Requirements for the Degree of Doctor of Philosophy

NEXT GENERATION ALGORITHMS FOR RAILROAD CREW AND LOCOMOTIVE
SCHEDULING

By

Balachandran Vaidyanathan

August 2007

Chair: Ravindra K. Ahuja
Major: Industrial and Systems Engineering

Our research concerns optimal railroad crew and locomotive management. Crew

scheduling entails assigning crews to trains while complying with union rules, so that the crew

costs are minimal and train delays due to crew unavailability are minimized. Locomotive

scheduling ensures the correct number and type of locomotives are attached to each train such

that a train has sufficient pulling power while satisfying a variety of business constraints and

minimizing locomotive costs. Locomotive routing involves routing each locomotive unit on a

cyclic sequence of trains so that it can be fueled and serviced as necessary. These problems are

difficult to solve NP-Complete problems and the North American locomotive and crew

scheduling problems have not yet been solved satisfactorily. However, solving these problems

has the potential to save railroads several million dollars a year.

First, we examine the North American railroad crew scheduling problem (CSP). We

develop a network-flow based crew-optimization model and design efficient algorithms using

problem decomposition and relaxation techniques. Next, we extend the earlier attempts to solve

the locomotive planning problem (LPP) on several dimensions by considering new constraints

desired by locomotive directors. We develop additional formulations necessary to transition

solutions of our models to practice and report computational tests of these models on the data










provided to us by a maj or US railroad. Next, we study the locomotive routing problem (LRP).

The LRP is a very large-scale combinatorial optimization problem and has previously been

unstudied and unsolved. We formulate the LRP as an integer programming problem on a suitably

constructed space-time network and develop fast aggregation-disaggregation based methods to

solve this problem. Finally, we study the multicommodity flow problem (MCFP). MCFPs have

found application in wide variety of domains. The LPP and the CSP are indeed special cases of

the MCFP. However, the integer version of this problem is NP-Complete. We propose a novel

aggregation-di saggregation framework to solve a class of large-scale integer MCFPs.









CHAPTER 1
INTTRODUCTION

US railroads carry millions of railcars annually accounting for 40% of the nation' s intercity

ton-miles. US freight tonnage is expected to double in volume over the next 20 years (Florida

Department of Transportation Report (2005)). Policy makers and corporate leaders are very

concerned about the ability of the nation' s infrastructure to handle this growth. Congestion has

increasingly become a major economic barrier to the free flow of goods across the nation, with

highways, airports, and railroads all laboring under record levels of volume, high energy costs,

employee shortages, reduced funding, and additional challenges of security and severe weather.

A number of recent studies from policy think tanks, government agencies, and academic

associations have shown that the railroad industry must do more to avert crippling gridlock. It is

thus incumbent on us as a society to work together to discover new and innovative techniques

whereby all transportation providers, including the railroads, can improve the utilization,

productivity, and reliability of the existing infrastructure. In this study, we have considered two

very important problems related to railroad operations: crew scheduling and locomotive

planning. We have developed robust optimization techniques to solve these problems quickly

and to near optimality. In our research, we have placed a large emphasis on "implementability"

of solutions, which refers to the ability of a solution to be used in real-life. Our algorithms for

locomotive and crew scheduling are designed to produce implementable solutions which can be

used by railroads to realize potential savings.

Railroads decompose their planning and scheduling problems into a number of stages. A

blocking plan specifies how a set of cars with different origin-destination pairs be consolidated

into relatively large groups (blocks) of cars to reduce handling. These blocks then travel over

the train network. The train schedule prescribes the number of trains to assemble, the origin, the









destination, the route of each train, the arrival and departure times of each train at each station,

and the days of operation of each train. Once the train schedules have been finalized,

locomotives and crews must be assigned to each train. Locomotive scheduling ensures the

correct number and type of locomotives are attached to each train such that every train has

sufficient pulling power, while simultaneously satisfying a variety of business constraints and

minimizing locomotive costs. Crew scheduling entails assigning crews to trains in each crew

district, while complying with union rules, so that the crew costs are minimal and train delays

due to crew unavailability are minimized.

The railroad blocking problem and the train scheduling problem are well studied problems.

Some recent references for the blocking problem are Newton, Barnhart, and Vance (1998),

Barnhart, Jin, and Vance (2000b), and Ahuja, Jha, and Liu (2007). Ahuja, Jha, and Liu (2007)

conduct the most comprehensive study of the blocking problem. They developed a very large

scale neighborhood search (VLSN) algorithm to solve this problem. This algorithm was applied

to data provided by several railroads producing excellent computational results. Their algorithms

have also been licensed by two Class I railroads in the United States. Given a blocking plan,

developing a train schedule is the next operational planning task faced by a railroad. The train

scheduling problem is to identify train routes, their frequencies (how often they run in a week),

and their timetables so as to minimize the cost of carrying cars from their origins to their

destinations. The train schedule developed is repeated every period (mostly weekly). Some

recent research on this problem is due to Farvolden and Powell (1994), Campbell (1996), Kraft

(1998), Brannlund et al. (1998), and Jha (2004). Once the train schedule and blocks are fixed,

then next problem that needs to be solved is the block-to-train assignment problem. This problem









has been studied by Crainic, Ferland, and Rousseau (1984), Haghani (1989), Keaton (1989,

1992), and Jha (2004).

In our research, we focus on the crew planning problem, the locomotive planning problem,

and the LRP. These problems are large-scale NP-Complete problems which have not yet been

solved satisfactorily. Solving these problems has the potential to save the railroads millions of

dollars and make a significant impact on the bottomline. We develop novel optimization

techniques to generate realistic and implementable solutions to these problems, employing robust

algorithms. We have extensively applied theory from network optimization, linear programming,

integer programming, and heuristic optimization to solve these problems.









CHAPTER 2
THE RAILROAD CREW SCHEDULING PROBLEM

2.1 Introduction

Crew scheduling problems consist of assigning crews to trains and creating rosters for each

crew, while satisfying a variety of Federal Railway Administration (FRA) regulations and trade-

union work rules. The obj ectives are to minimize the cost of operating trains on one hand and to

improve the crew quality-of-life on the other hand. Improved quality of crew life leads to more

productive employees, less employee turnover, and much safer operations. Although airline

CSPs have been well studied and well solved, and railroad CSPs for European and Asian

railroads have also been addressed to some extent, CSPs for North American railroads, due to

various union and regulatory complexities, are unique and remain unsolved. Our focus is on

developing efficient network flow optimization models that can form a backbone for all

important aspects of crew scheduling for North American railroads: tactical, planning and

strategic analysis. Henceforth, unless otherwise specified, the CSP is referred to in the context of

North American railroads.

US freight tonnage is expected to double in volume over the next 20 years (Florida

Department of Transportation Report (2005)). Railroad executives are very concerned about their

ability to attract, train, and retain sufficient semi-skilled labor necessary to staff the increased

number of train starts that will be needed to support this growth. Railroads pay train crew

employees very high salaries (around $70,000 per year plus benefits) and yet have difficulty

attracting a high quality work force. Operating a train as an engineer or managing a train as a

conductor is not an easy job. This is further complicated by the fact that crews are seldom

assigned to trains based on a fixed schedule. Generally the company telephones the next

available crew and gives them their assignment two hours before a train departs. The crew takes









the train to an away location where they rest at a hotel and then return on another train as their

turn is reached. Consequently, train crews do not know from one day to the next, let alone a

week or a month ahead, when they will be working. Train crews spend inordinate amounts of

time on call, waiting for assignment and away from their homes and families. The irregular

work-style of railroad crews makes attracting potential employees to this career harder.

Also, railroads are not very profitable, typically earning less than 10% return on capital,

and are constrained from raising already high wages to attract more employees. To close the

supply and demand gap for train crews, railroads must raise productivity of their existing crews

and change the historical pattern of operations to improve employees' quality-of-life. Success on

both fronts will be required to ensure that railroads can continue to profitably grow their

businesses. Labor costs, the largest component of a railroad' s operating expense, account for a

large percentage of the total revenue. Depending on the size of their network, each Class I

railroad (a Class I railroad, as defined by the Association of American Railroads, has an

operating revenue exceeding $319.3 million) employs around 15,000 to 25,000 locomotive

engineers, conductors, and brakemen (Surface Transportation Board, US DOT, Bureau of

Accounts). Consequently, improving the efficiency and effectiveness of train crews has the

potential to dramatically reduce the cost of transportation. We propose a network-flow model

and algorithms for assigning crews to trains that will make a significant impact on a railroad's

on-time performance, crew utilization and productivity, while also improving both quality-of-

lives for crew and railroad safety.

In a large Class I railroad, various divisions are tasked with analyzing train crews. Each

group is interested in a different aspect of crew planning and scheduling. These perspectives can

generally be characterized based on the planning horizon of the issue at hand. Crew issues faced










by railroads can be broadly classified into three categories: 1) Tactical Decisions that must be

made immediately to support real-time train operations. Tactical problems have a planning

horizon of 24 to 48 hours. 2) Planning Decisions that must be made as a part of the crew

schedule design process. Typically, railroads make adjustments to their network operating plan

every month, with significant changes two or three times a year to account for both long-run and

seasonal changes in traffic patterns. 3) Strategic Decisions that must be made well in advance

(more than a year) of implementation to ensure sufficient lead time is available to properly

prepare and implement a new business practice. The models and algorithms proposed have

applications in all these areas of decision making.

Crew scheduling is one of the important mathematical problems in the rich set of planning

and scheduling problems that can be modeled and solved using mathematical optimization

techniques (Assad (1981, 1983), and Cordeau, Toth, and Vigo (1998b)). Crew scheduling is a

well known problem in operations research and has been historically associated with airlines and

mass-transit companies. Several papers on crew scheduling management have appeared in the

past literature; most notable among these are due to Wren (1981), Bodin et al. (1983), Carraresi

and Gallo (1984), Wise (1995), and Desrosiers et al. (1995). All these articles explore a set

covering based approach to solve the CSP. Crew scheduling is conventionally divided into two

stages: (1) Crew pairing: A crew pairing is a sequence of connected segments that start and end

at the same crew base and satisfy all legality constraints. The obj ective is to Eind the minimum-

cost set of crew pairings such that each flight or train segment is covered. (2) Crew rostering:

The obj ective here is to assign individual crew members to trips or sequences of crew pairings.

This pairing and rostering approach uses a set covering formulation and is generally solved using

column generation embedded in a branch-and-bound framework (also called branch-and-price).









The pairing and rostering approach has gained wide acceptance and application in the

airline industry. Gopalakrishnan and Johnson (2005) in a recent survey paper discuss the state-

of-the-art in solution methodologies for the airline crew pairing and rostering problem. There

have also been some applications of this approach in the railroad industry. Caprara et al. (1997),

Ernst et al. (2001), and Freling, Lentink, and Wagelmans (2004) describe the application of this

approach to railroad crew management. Caprara et al. (1997) describe the solution techniques

adopted at an Italian railroad. They consider several business rules that are specific to European

railroads and develop a heuristic algorithm to generate rosters. Ernst et al. (2001) consider the

CSP faced by Australian railroads and develop an optimization model which constructs crew

parings and rosters. While they consider several business rules, they still solve a relaxed version

of the problem and mention the necessity for an exact method in their conclusions. Freling,

Lentink, and Wagelmans (2004) develop a decision support system for airline and railroad crew

planning using a branch-and-price solution approach to solve the integrated problem of pairing

and rostering. They show that the integrated approach provides significant benefits over the

sequential approach of solving the pairing problem and then the rostering problem. Other articles

which describe applications of the pairing and rostering approach include Barnhart et al. (1994,

2003).

Other research in the area of railroad crew scheduling which uses a different approach is

due to Chu and Chan (1998), and Walker, Snowdon, and Ryan (2005). Chu and Chan (1998)

consider the problem of crew scheduling for light rail transit in Hong Kong. They decompose the

problem into two stages, the first one involving partitioning of driving blocks into pieces, and the

second one involving the combination of pieces into runs. With added localized optimization

heuristics, they were able to solve the problem in less than half an hour of computational time.









However, their approach could not model the problem completely and the solution could only be

used as a guideline for crew schedule generation. Walker, Snowdon, and Ryan (2005) develop an

integer programming based method for simultaneous disruption recovery of train timetable and

crew roster in real time in the context of New Zealand railroads. The crew rules that they

consider are relatively simplistic and can be expressed in the form of integer programming

constraints. They solve the problem using a column and constraint generation algorithm.

While there have been several papers devoted to the study of the railroad CSPs in Europe,

Asia, and Australia, North American railroad CSPs are yet to be addressed satisfactorily. The

only application of optimization methods to North American railroad crew scheduling is due to

Gorman and Sarrafzadeh (2000). They studied crew balancing in the context of a maj or North

American Railroad, Burlington Northern Santa Fe (BNSF) Railway and developed a dynamic

programming approach to solve the problem. The maj or short-coming of their research was that

they did not consider the possibility of different crew types; each governed by a different set of

rules. Another drawback is that their approach could handle only a particular crew district

configuration (single-ended crew district). While most crew districts in North America are

single-ended, there are several which are double-ended or even more complex. The

multicommodity network flow approach described models all the rules considered by Gorman

and Sarrafzadeh (2000) and also handles the case where different crew pools have different sets

of rules. It is also applicable to all the crew district configurations encountered in North America

(in Section 2.2, we describe these configurations).

From our extensive review of the literature, we observe that the crew pairing and rostering

approaches which use column generation have been the predominantly successful method to









solve CSPs. However, this approach cannot be used for North American railroads due to the

following reasons:

* The rail network of North American railroad is divided into several crew districts. As a
train follows its route, it goes from one crew district to another, picking up and dropping
off crew at crew change terminals. Almost all crew districts consist of two or three
terminals. Hence, a pairing and rostering approach is needlessly complex and not required
since most pairings would consist of two trains, an outbound train from home to away and
an inbound train from away to home. Also rail networks typically consist of 200-300 crew
districts and the emphasis is on an approach which is simple and fast, and column
generation techniques which are computationally very intensive are not appropriate.

* The FRA regulations governing North American railroads are extremely complex. The
most complicating of these rules is First-In-First-Out (FIFO) requirement. FIFO constraints
require that crews should be called on duty in the order in which they become qualified for
assignment at a location. The reader may note that none of the past research handles
constraints of this kind. While this constraint is extremely easy to state, explicitly modeling
these constraints make the problem computationally intractable. The success of all
approaches using column generation or branch-and-price algorithms is dependant on the
ease of solving the sub-problem. Addition of the FIFO side constraints to the problem
would spoil the special structure of the sub-problem and blow up the computational times.
Since our model needs to be fast enough to be used in a real-time environment, this
approach is once again not suitable.

While there has been significant work in the area of crew scheduling for European, Asian,

and Australian railroads as well as in the area of airline crew scheduling, there is no modeling

approach that is flexible enough to tackle CSPs faced by North American railroads. Our

approach (Vaidyanathan, Jha, and Ahuj a (2007a)), is the first of its kind and is a novel

contribution to the application of innovative optimization techniques to solve real-world

problems.

We model the CSP as a multicommodity network flow problem on an underlying space-

time network. In this model, crew pools (set of crews governed by same business rules in a crew

district) represent commodities, and the flow of individual crew represents their assignments.

The space-time network is constructed in such a way that flow of crew automatically satisfies all

FRA regulations and trade-union rules other than the First-In-First-Out (FIFO) requirement. We









formulate the CSP as an integer multicommodity flow problem on a space-time network and the

FIFO constraints are modeled as side constraints to the multicommodity flow problem. We show

that solving the integer programming formulation using standard branch-and-bound

methodology is computationally intractable. On the other hand, the same problem with relaxed

FIFO constraints can be solved very efficiently using branch-and-bound. We refer to the CSP

with relaxed FIFO constraints as the Relaxed Problem, and a solution to this problem provides a

lower bound to the optimal solution of the CSP. We develop an algorithm, called Successive

Constraint Generation (SCG) algorithm, which starts with the solution of the Relaxed Problem

and then iteratively adds constraints to remove FIFO violations. We also develop another

algorithm, called Quadratic Cost Perturbation (QCP) algorithm, which perturbs arc costs in the

space-time network to penalize FIFO violations, and we prove that this approach guarantees

FIFO compliance. We also show that the QCP approach produces optimal solutions in most

cases and less than 0.2% gap for a few cases, with running times in the order of minutes.

Our maj or research contributions are:

* We develop a space-time network so that the flow of crews on this network automatically
satisfies all the FRA regulations and trade-union rules other than the First-In-First-Out
(FIFO) requirement. The network-construction procedure is flexible enough to handle
several combinations of rules and regulations and also various different crew district
configurations. It is also flexible enough to handle costs which are non-linear functions of
arc durations.

* We formulate the CSP as an integer-programming problem on the space-time network,
enforcing the FIFO requirements by adding side constraints. We prove the one-to-one
correspondence between solutions to this integer program and solutions to the CSP.

* We show that the FIFO requirement, if handled by the integer-programming approach,
complicates the structure of the problem and makes it computationally intractable.

* We develop an exact algorithm called Successive Constraint Generation (SCG), which first
solves the relaxed version of the integer program (without FIFO constraints) and then
iteratively adds constraints in order to eliminate FIFO infeasibilities.










* We develop an approach based on a Quadratic Cost Perturbation (QCP) that perturbs the
cost of arcs in the space-time network in such a way as to penalize violations of the FIFO
constraints. We prove that this method guarantees FIFO compliance for the problem that
we study and also show that it produces the optimal solution in most cases.

* We present extensive computational results and case studies of our algorithms on the real-
life data.

2.2 Problem Description

2.2.1 Terminology

Crew District: The rail network of a railroad is divided into crew districts that constitute a

subset of terminals (nodes). Each crew district is typically a geographic corridor over which

trains can travel with one crew. A typical railroad network for a maj or railroad in the US may be

divided into as many as 200 to 300 crew districts. As a train follows its route, it goes from one

crew district to another, picking up and dropping off crew at crew change terminals. Contrary to

the airline industry, where certain crews have the flexibility to operate over a large territorial

domain, in the North American railroad industry, crews are qualified to operate only in certain

specific geographic territories. The physics of operating a train depend on the track geometry,

which is defined by the hills and curves in the route and by signaling and interlocking systems

that control the movement of trains. A crew must be intimately familiar with all aspects of a

route to safely operate a train on that route. Consequently, most crews are qualified to operate on

a limited number of routes.

Crew Pools: Within a crew district, there are several types of crews called crew pools or

crew types, which may be governed by different trade-union rules and regulations. For example,

a crew pool may have preference over the trains operated in a pre-specified time window.

Similarly, a crew pool consisting of senior crew personnel is assigned only to pre-designated

trains so that crews in that pool know their working hours ahead of time. The multiple crew










pools within each district with different constraints make CSPs complex and difficult to model

mathematically.

Home and Away Terminals: The terminals where crews from a crew pool change trains

are designated either as home terminals or away terminals. The railroad does not incur any

lodging cost when a crew is at its home terminal. However, the railroad has to make

arrangements for crew accommodation at their away terminals. Different crew districts have

different combinations of home and away terminals. A crew district with one home terminal and

one away terminal is called a single-ended crew district. In such crew districts, typically, a crew

operates a train from its home location to an away location, rests in a hotel for at least eight

hours, operates another train back to its home terminal, rests for ten to twelve hours, and repeats

this cycle. The other type of crew district is a double-ended crew district, in which more than one

terminal is a home terminal for different crew pools. Some of the other crew district

configurations are crew districts with one home terminal and several away terminals, and crew

districts with several home terminals and corresponding sets of away terminals.

Crew Detention: Once a crew reaches its away terminal and rests for the prescribed hours,

the crew is ready to head back to its home terminal. However, if there is no train, then the crew

may have to wait in a hotel. According to the trade-union rules, once a crew is at the away

terminal for more than a pre-specified number of hours (generally 16 hours), the crew earns

wages (called detention costs) without being on duty. For example, if a crew is waiting for

assignment at the away terminal for 18 hours, it is paid detention charges for two hours.

Crew Deadheading: Crew deadheading refers to the repositioning of crew between

terminals. A crew normally operates a train from its home terminal to an away terminal, rests for

a designated time, and then operates another train back to its home terminal. Sometimes, at the










away terminal, there is no return train proj ected for some time, or there is a shortage of crews at

another terminal. Thus, instead of waiting for train assignment at its current terminal, the crew

can take a taxicab or a train (as a passenger) and deadhead to the home terminal. Similarly, the

crew may also deadhead from a home terminal to an away terminal in order to rebalance and

better match the train demand patterns and avoid train delays. Crew deadheading is expensive as

the crew is considered to be on-duty while deadheading and earns wages, and railroads also incur

taxi expenses. Each year, a maj or freight railroad may spend tens of millions of dollars in crew

deadheading.

On-duty and Tie-up Time: Whenever a crew is assigned to a train, it performs some tasks

to prepare the train for departure, and hence crews are called on duty before train departure time.

The time at which the crew has to report for duty is called the on-duty time. Similarly, a crew

performs some tasks after the arrival of the train at its destination, and hence crews are released

from duty after the train arrival. The time at which the crew is released from duty is called tie-up

time. We refer to the duty duration before train departure as duty-before-departure and the duty

duration after train arrival as duty-after-arrival. Hence, the total duty time (or duty-period) of a

crew assigned to a train is the sum of the duty-before-departure, the duty-after-arrival, and the

travel time of the train.

Duty Period: In most cases, duty-period of a crew assigned to a train is the total duration

between the on-duty time and the tie-up time. In some cases when a crew rests for a very short

time at an away location before getting assigned to a train, the rest time and the duration of the

second train may also included in the duty period of the crew. (Section 2.2.2 describes

calculation of duty period in more detail.)









Dead Crews: By federal law, a train crew can only be on duty for a maximum of 12

consecutive hours, at which time the crew must cease all work and it becomes dead or dog-

lawed. Dead crews are a frequent consequence of delayed trains, congestion, mechanical

breakdowns, etc. In these cases, crew dispatchers must send a relief crew by taxi or another train

so that the dead crew can be relieved. The dead crew must then get sufficient rest before

becoming available to operate another train.

Train Delays: When a train reaches a crew change location and there is no available crew

qualified to operate this train, the train must be delayed. Each train delay disrupts the operating

plan and causes further delays due to the propagating network effect. Train delays due to crew

unavailability are quite common among railroads. These delays are very expensive (some

estimate $1,000 per hour) and can be reduced significantly through better crew scheduling and

train scheduling.

2.2.2 Regulatory and Contractual Requirements

Assignment of crews to trains is governed by a variety of Federal Railway Administration

(FRA) regulations and trade-union rules. These regulations range from the simple to the

complex. The regulations also vary from district to district and from crew pool to crew pool. We

list below some examples of these kinds of constraints and their typical parameter values:

* Duty-period of a crew cannot exceed 12 hours. Duty-period of a crew on a train is usually
calculated as the time interval between the on-duty time and tie-up time of the train.

* Whenever a crew is released from duty at the home terminal or has been deadheaded to the
home terminal, they can resume duty only after 12 hours (10 hours rest followed by 2
hours call period) if duty-period is greater than 10 hours, and after 10 hours (8 hours rest
followed by 2 hours call period) if duty-period is less than or equal to 10 hours.

* Whenever a crew is released from duty at the away terminal, they must go for a minimum
8 hours rest, except for these circumstances:

0 If the total time period corresponding to the last travel time from the home
terminal followed by a rest time of less than 4 hours plus travel time of the next










assignment back home is shorter than 12 hours (in this case, duty-period = travel
time on inbound train + rest time at away location + travel time on outbound);

o If the total time corresponding to the last travel time from the home terminal plus
travel time of the next assignment back home is less than 12 hours when the rest
time in between the assignments is more than 4 hours (in this case, duty-period =
travel time on inbound train + travel time on outbound train)

* Crews belonging to certain pools must be assigned to trains in a FIFO order.

* A train can only be operated by crews belonging to pre-specified pools.

* Every train must be operated by a single crew.

* Crews are guaranteed a certain minimum pay per month regardless of whether or not they
work.

As the regulations for crew assignment can vary from district to district and crew pool to

crew pool, it is a mathematical challenge to build a unified model to formulate and solve this

problem. This partly explains why these problems remain unsolved and no commercial

optimization product has been deployed yet at railroads. Also, due to low margins in the railroad

industry, investment in research funding is viewed as a luxury despite a potentially high return

on investment in automated decision support systems.

2.2.3 Problem Inputs

The inputs that go into the mathematical formulation of the CSP include:

* Train Schedule: The train schedule provides information about the departure time, arrival
time, on-duty time, tie-up time, departure location, and arrival location for every train in
each crew district it passes through. We do not consider stochasticity in the train schedule
and assume that train delays are only due to the unavailability of crew and not due to train
cancellations or other disruptions.

* Crew Pool Attributes: This includes attributes of various crew types, namely their home
locations, their away locations, minimum rest time, train preferences, etc.

* Crew Initial Position: This provides the position of crew at the beginning of the planning
horizon and includes information of the terminal at which a crew is released from duty, the
time of release, the number of hours of duty done in the previous assignment, and the crew
pool the crew belongs to.










* Train-Pool Preferences: The train-pool preferences, if any, give us information about the
set of trains that can be operated by a crew pool.

* Away Terminal Attributes: This gives us information about the away terminals for each
crew pool. It also includes the rest rules and detention rules for each crew pool and at each
away terminal.

* Deadhead Attributes: This gives us the time taken to travel by taxi between two terminals
in a crew district.

* Cost Parameters: Cost parameters are used to set up the obj ective function for the CSP.
They consist of crew wage per hour, deadhead cost per hour, detention cost per hour, and
train delay cost per hour.

2.2.4 Constraints and Objective Function

The CSP involves making decisions regarding the assignment of crews to trains,

deadheading of crews by taxi, and train delays. The constraints can be categorized into two

groups: operational constraints and contractual requirements. The operational constraints ensure

that every train gets a qualified crew to operate it while a crew is not assigned to more than one

train at the same time. These also include assignment of certain crew pools to pre-specified

trains. Assignment of crews to trains must, in addition, satisfy the contractual requirements

described in Section 2.2.2. In our mathematical model, the operational constraints of the model

are handled by the integer multicommodity flow formulation described in Section 2.3.2, and the

contractual restrictions are honored in the network construction phase described in Section 2.3.1.

The obj ective function of the CSP is to minimize the total cost of crew wages, the cost of

deadheading, the cost of crew detentions, and the cost of train delays.

2.3 Mathematical Modeling

2.3.1 Space-Time Network

The CSP is formulated as an integer multicommodity flow problem with side constraints

on a space-time network. We can decompose the CSP into an independent problem for each crew

district and construct the space-time network for a particular crew district. In the network, each










node corresponds to a crew event and has two defining attributes: location and time. The events

that we model while constructing the space-time network for the CSP are departure of trains,

arrival of trains, departure of deadheads, arrival of deadheads, supply of crew, and termination of

crew duty to mark the end of the planning horizon. All the arcs in the network facilitate the flow

of crews over time and space. Figure 2-1 presents an example of the space-time network in a

crew district. Note that for the sake of clarity, this network only represents a subset of all the

arcs.

For each crew, we create a supply node whose time corresponds to the time at which this

crew is available for assignment, and whose location corresponds to the terminal from which the

crew is released for duty. Each supply node is assigned a supply of one unit and corresponds to a

crew member. We also create a common sink node for all crews at the end of the planning

horizon. This sink has no location attribute and has the time attribute equal to the end of the

planning horizon. The sink node has a demand equal to the total number of crew supplied. The

supply and sink nodes ensure that all the crews that flow into the system at the beginning of the

planning horizon are accounted for and flow out of the system at the end of the planning horizon.

For each train (say 1) passing through a crew district, we create a departure node (say 1') at

the first departing station of the train in the crew district and an arrival node (say 1") at the last

arriving station of the train in the crew district. Each arrival or departure node has two attributes:

place and time. For example, place (1') = departure-station (1) and time (1') = on-duty-time (1); and

similarly, place (1") = arrival-station (1) and time (1") = tie-up-time (1).

In the network, we create a train arc (1', 1") for each train I connecting the departure node

and arrival node of train 1. We create deadhead arcs to model the travel of crew by taxi. A

deadhead arc is constructed between a train arrival or crew supply node at a location and a train










departure node at another location. All the deadhead arcs which satisfy the contractual rules and

regulations are created. We construct rest arcs to model resting of a crew at a location. A rest arc

is constructed between a train arrival node or a crew supply node at a location and a train

departure node at the same location. Rest arcs are created in conformance to the contractual rules

and regulations. All rest arcs which satisfy the contractual rules and regulations are constructed.

Since the contractual regulations are often crew pool specific, deadhead arcs and rest arcs are

created specific to a crew pool. This implies that only crew belonging to a particular crew pool

can flow on a particular rest arc or a deadhead arc. For example, suppose a supply node

corresponds to crew belonging to crew pool A, then all the arcs which emanate from this node

can only carry crew belonging to crew pool A. Finally, we create demand arcs from all train

arrival nodes and crew supply nodes to the sink node. Each arc has an associated cost equivalent

to the crew wages, deadhead costs, or detention costs, as the case might be. Also in the network,

the time at the tail of an arc is always less than the time at the head of an arc, which ensures the

forward flow of commodities on the time scale. It can be noted that all contractual requirements

other than the FIFO constraint are easily handled in the network construction.

The space-time network described above models the flow of crews while honoring all the

contractual constraints except the FIFO rule. However, it does not model the case when qualified

crews are not available for assignment to a train causing train delays. Next, we present the

construction of additional arcs incorporating train delays. At a location, we create rest arcs and

deadhead arcs which do not honor the rest regulations and penalize them to ensure that flows on

these arcs occur only when qualified crews are not available for assignment. The flows on these

arcs denote that the train will be delayed until crew becomes qualified for train operation.

However, as the delay of a train may have propagating effect in the availability of crews in










subsequent assignments, we assume here that the crew assigned to a delayed train has sufficient

slack in the rest time at the train arrival node to make it qualified for subsequent assignments.

Thus, the additional rest arcs and deadhead arcs model the train delays, with the assumption that

the effect of train delays is only local.

The reader may also note that honoring contractual regulations while constructing the

network reduces the number of constraints in the integer program significantly. Now, we present

the multicommodity integer programming formulation of the CSP.

2.3.2 Integer Programming Formulation (IPF)

We formulate the CSP as an integer multicommodity flow problem on the space-time

network described in Section 2.3.1. In our formulation, each crew pool represents a commodity.

Crew enters the system at crew supply nodes, and hence every supply node corresponds to a

supply of one crew. The crew takes a sequence of connected train, rest, and deadhead arcs before

Einally reaching the sink. While flow of more than one crew type can take place on a train arc,

rest and deadhead arcs can have flow of only one type because the business rules for rest and

deadhead are crew pool specific. Next we present the integer programming formulation of the

problem.

We use the following notation in our formulation:

N: Set of nodes in the space time network

L: Set of train arcs in the network, indexed by 1

D: Set of deadhead arcs in the network, indexed by d

R: Set of rest arcs in the network, indexed by r

A: Set of arcs in the space-time network, indexed by a

G(N, A): Space-time network

Ns: Set of crew supply nodes










Nd: Sink node

C: Set of crew pools in the system, indexed by c

i' : Set of outgoing arcs at node i

i : Set of incoming arcs at node i

ic : Set of outgoing arcs specific to crew pool c at node i


ic : Set of incoming arcs specific to crew pool c at node i

Ar: Set of arcs on which flow will violate FIFO constraint if there is flow on rest arc r

f: Total number of available crew

M: A very large number

cle : Cost of crew wages for crew pool c EC on train arc l EL

cd : COst of deadhead arc d ED

c : Cost of rest arc r ER


tail(1): The node from which arc 1 originates

head(1): The node at which arc 1 terminates

The decision variables are:


xic : Flow of crew pool c EC on each train arc l EL


xd : Flow on deadhead arc d ED

xy : Flow on rest arc r ER

We formulate the CSP as follows:


Mzin ciCxic + cdx dC r r (2.1a)
leL ctC dtD reR


Sxic = 1, for all l EL (2.1b)
ctC









Sxn = 1, for all i E N, (2.1c)


Cx, = f (2.1d)


x = C xo, for all leL, ceC (2.1le)


xf = C xa, for all Ile ceC (2.1If)
athead(l):

x ,, -M(1-xi )< 0,for all r E R (2.1Ig)


xe E (0, 1) and integer, for all l E L, c E C (2.1h)

xd a (0,1\ andl i~ntegr for all deDr (2.1i)


xy E (0, 1) and integer, for all r ER (2.1Ij)

Constraint (2.1b) is the train cover constraint, which ensures that every train is assigned a

qualified crew to operate it. Constraint (2.1c) ensures flow balance at a crew supply node.

Constraint (2.1d) ensures the flow balance at the sink node. Constraints (2.1e) and (2.1f),

respectively, ensure flow balance at train departure and arrival nodes. The flow balance

constraints at a train arrival node ensure that the crew which is assigned to a train is subsequently

assigned to a rest arc, a deadhead arc, or a sink arc which emanates from the arrival node of the

train. Flow balance constraints at a train departure node ensure that the crew which is assigned to

the train has been assigned to a rest arc, a deadhead arc, or a supply arc which terminates at the

departure node of the train. Constraint (2.1Ig) ensures that the crew assignment honors the FIFO

constraint. Constraints (2.1Ih), (2.1ii), and (2.1Ij) specify that all the decision variables in the

model are binary. The obj ective function (2.1la) is constructed to minimize the total cost of crew










wages, deadheading, detentions, and train delays. Note that the detention and delay costs are

taken into account while calculating the cost of rest arcs.

Now we show how Constraint (2.1g) enforces FIFO requirements. Figure 2-2 illustrates

crew assignments in two situations: one in which FIFO is satisfied and the other in which FIFO

is violated. In case (a), the crew on train 1-3 arrives at Terminal 2 first and also leaves first, and

hence FIFO requirement is satisfied. In case (b), FIFO requirement is violated because the crew

on train 1-3 enters terminal 2 first, but leaves after the other crew. Therefore in the solution, if

there is flow on arc (4, 5), there should not be any flow on arc (3, 6).

Let us consider the following cases for Constraint (2.1g) with respect to flow on arc (4, 5):

Case 1: x(4,5) = 1 : The constraint becomes C xy, < 0 -> xi, = 0 Vry A(4,5) This ensures


that if there is flow on rest arc (4, 5), then there cannot be flow on any arc belonging to the

prohibited set A(4,5) and hence there will not be any flow on arc (3, 6).

Case 2: x(4,5) = 0: The constraint becomes C x, <; M2 Vr s A(4,5) Which essentially


means that the constraint is relaxed.

Let us now estimate the size of a typical instance of the CSP in a crew district. Most crew

districts have two terminals, and a typical train schedule has around 500 trains running in a

couple of weeks in a crew district. Each crew district could have two to four crew types and

around 50 crews. Therefore, the space-time network could have around 50 + 2 x 500 = 1,050

nodes. The number of arcs in the network could be very large if we construct all feasible rest arcs

and deadhead arcs. To restrict the number of arcs constructed, we place a limit on the maximum

duration of rest arcs. For example, if the train schedule stretches over a period of ten days, it is

unrealistic for a crew to rest for more than three days. In this case, we can restrict the maximum









rest arc duration to three days. After the space-time network of a typical problem is pruned based

on this rule, the number of deadhead arcs is typically around 25,000, and the number of rest arcs

is around 100,000.

Since the number of rest arcs for a typical problem is of the order of 100,000, and as each

rest arc has one FIFO constraint, the number of FIFO constraints in the model would be 100,000,

which is too large. We would therefore be losing one of the main advantages of the network flow

formulation, which is, by honoring all business rules in the network construction phase; we keep

the number of constraints small. Our computational results also confirm that handling FIFO

constraints explicitly in this manner makes the problem computationally intractable.

Let us now consider the Integer Programming Formulation where we relax the FIFO

Constraint (2.1g); we call this problem the Relaxed Problem. This problem typically has more

than 100,000 variables and several thousand constraints, which make it a large optimization

problem. Integer programs of this size are usually very difficult to solve to optimality or near-

optimality in a reasonable amount of time. But we were able to solve this problem to optimality

in a matter of minutes using commercial branch-and-bound based MIP solver provided by

CPLEX 9.0. We believe that this is due to the special structure of the Relaxed Problem, which

helps speed up the solution time significantly. All variables in the formulation are binary

variables, and this leads to the MIP engine exploring fewer branches on the branch-and-bound

tree compared to the case where variables are integer variables. Whenever the engine branches

on a non-integer variable, the value on one branch is set to zero and on the other branch is set to

one. Hence, at each level of the tree, one variable' s value is prefixed and can be eliminated from

the model. Consequently, it is very likely that a feasible integral solution is obtained early on,









and nodes in the branch-and-bound tree are fathomed much earlier than while solving a general

mnteger program.

Another benefit of the network flow based approach is that even though we do not

explicitly model each crew, the space-time network and the constraints are such that from the

Einal solution of the model, we can easily extract the set of trains a crew takes over the entire

planning horizon. In order to do this, we start at the supply node of a particular crew and identify

a path from this supply node to the sink node that has positive flow on it. Note that due to the

commodity specific flow balance constraints at each node, every crew will have a unique path

with positive flow from its supply node to the sink node.

Theorem 2.1. There is a one-to-one correspondence between a feasible flow on the space-

time network satisfying constraints (2.1la)-(2.1Ij) and a feasible solution to the CSP.

Proof: Consider a feasible flow on the space-time network. We have seen above how the

path of each crew can be extracted from the solution using a simple run-through procedure. Due

to the network construction methodology, the extracted path of each crew has to satisfy all the

business and contractual rules. Hence, we see that every feasible solution on the space-time

network corresponds to a feasible crew schedule. We can also show that the reverse

transformation from a feasible crew schedule to a feasible flow on the space-time network is

possible, hence establishing the result.

Hence, we have shown the one-to-one correspondence between feasible solutions to the

integer programming formulation and feasible solutions to the CSP and thus have established the

validity of our integer programming approach. In the next section, we describe various

algorithms to solve the CSP, which are centered on handling FIFO constraints in a

computationally efficient manner.









2.4 Solution Approaches

In this section, we present our approaches to solve the CSP. As the FIFO constraints are

the ones which complicate the nature of the integer programming formulation, our solution

approaches are centered on effective ways to handle this constraint. We develop a constraint-

generation based exact approach and a cost-perturbation based heuristic approach to solve the

problem. While the constraint-generation based approach performs significantly better than the

direct approach to solve the integer programming formulation, its application in a real-time

environment may be restricted due to long running times. On the other hand, the cost-

perturbation scheme produces good quality FIFO compliant solutions very efficiently and hence

is better suited for the real-time environment.

2.4.1 Successive Constraint Generation (SCG) Algorithm

The SCG algorithm works by iteratively pruning out crew assignments which violate the

FIFO constraints from the current solution of a more relaxed problem. We considered the

following two methods for implementing constraint generation: (1) A branch-and-bound

algorithm where constraints are added to the LP relaxation that is solved at each node of the

branch-and-bound tree until FIFO violations are eliminated (branch-and-cut); and (2) An

iterative method where we run branch-and-bound algorithm on the relaxed problem, solve it to

optimality, and then add constraints to remove infeasibilities which is followed by another run of

branch-and-bound on the more constrained problem and so on.

However, on further deliberation, we chose to implement the second method over the first

for the following reasons:

*Since the LP relaxation of the relaxed problem can have fractional flows on the rest arcs,
the number of rest arcs with positive flow in the LP relaxation will be more than the
number of rest arcs with positive flow in an integral version. Also, larger the number of
rest arcs with positive flow, greater is the possibility of FIFO violations. Hence, more
FIFO constraints are likely to be added to a non-integral solution.










* SCG implemented using method (2) allows us to stop at any point when we feel that the
level of FIFO infeasibility is reasonably small. We are able to do that because after the
addition of a set of constraints, we obtain an integral solution at regular intervals of less
than a minute. On the other hand, in the branch-and-cut method, the addition of constraints
at a node on the branch-and-bound tree would only guarantee FIFO compliance of the LP
relaxation which will not be an integral solution in general. Hence, we do not have the
option to prematurely terminate until a point when we obtain at least one integral solution
to the LP relaxation and consequently we do not have control over the quality of
intermediate solutions in terms of number of FIFO violations.

* We show in our computational results that QCP does an excellent j ob in enforcing FIFO
constraints for the current set of business rules, but we also mention that QCP does not
guarantee FIFO compliance when there is priority in assigning crews to trains. We believe
that the real benefit of SCG could come from being used in conjunction with QCP. In this
approach, we would first apply QCP to obtain a solution with very few FIFO violations.
SCG is then applied on this solution to prune out the small number of remaining
infeasibilities. A branch-and-cut approach in this context would be unnecessarily
complicated since when a small number of constraints are added, the problem can be re-
optimized within a few seconds using SCG.

The SCG algorithm starts with the optimal solution of the Relaxed Problem, which may

have several violations of the FIFO rule. In each iteration, the algorithm scans the rest arcs in the

current solution which have positive flow, and for each such rest arc assignment which violates

FIFO constraints, it adds the corresponding FIFO constraints. We then re-solve the problem and

re-check for FIFO infeasibilities. This process is repeated until all FIFO infeasibilities are

removed.

Algorithm-SCG

Step 1: Solve the Relaxed Problem. If a feasible solution exists, then proceed to Step 2.

Otherwise STOP as the problem is infeasible.

Step 2: Examine all the rest arcs with positive flow in the solution of Step 1. Add FIFO

constraints to the integer program on those rest arcs assignments which violate FIFO

requirements.

Step 3: If FIFO constraints are added in Step 2, re-optimize the modified integer program and go

to Step 2. Otherwise STOP as we have the optimal solution.









Note that the final solution of SCG satisfies all the constraints of the Integer Programming

Formulation (IPF), and the constraints of SCG are a subset of the constraints of IPF. Hence, the

SCG algorithm is an exact algorithm guaranteeing optimal solution to the original problem.

However, in the worst case, SCG could add all the FIFO constraints to the integer program and

would hence become an intractable approach. Fortunately this seldom happens in practice. Our

computational results show that the number of constraints added is usually much less than the

total number of rest arcs in the network.

While the SCG is an exact algorithm and produces provably optimal solutions, the running

time of this algorithm could be quite high. In our computational experiments, in some instances,

SCG had a running time in the order of minutes while in others it had a running time in the order

of hours. While these running times are acceptable in the planning environment, they would

restrict the applicability of this algorithm in the real-time environment. In the next section, we

describe a cost-perturbation based algorithm which produces very good quality FIFO-compliant

solutions with running times comparable to that of the Relaxed Problem.

2.4.2 Quadratic Cost-Perturbation (QCP) Algorithm

In the previous section, we describe a successive constraint-generation based approach to

remove the FIFO violations iteratively. In this section, we present an algorithm which penalizes

the FIFO violations in a solution. We show that this method guarantees zero FIFO violations in

the case where there is no priority in assigning crews to trains and serves as a heuristic method

for the other case when there are priority restrictions. Cost perturbation not only enforces FIFO

constraints but also retains the special network flow structure of the problem leading to fast

computational times. The basic intuition behind this approach is that we perturb the costs of arcs

while solving the Relaxed Problem in such a way as to guarantee FIFO compliance.









We present our cost perturbation strategy through the illustration shown in Figure 2-3 for

the case when there is only one crew pool type. In case 2-3 (a), crew assignments are made in a

non-FIFO manner, and in case 2-3 (b), the assignments are made in a FIFO manner. Now

consider the case when crews are detained at the Terminal 2. Then, due to the nature of detention

costs, the cost of the assignment 2-3 (b) would definitely be less than or equal to the cost of

assignment 2-3 (a), and hence the solution to the Relaxed Problem would honor FIFO

constraints. On the other hand, suppose all the rest arcs had a cost of zero; then both the

assignments would have the same cost, and the Relaxed Problem would have no cost incentive to

choose assignment 2-3 (b) over assignment 2-3 (a). Thus, a solution to the Relaxed Problem may

violate the FIFO constraints. In order to provide an incentive to the Relaxed Problem to choose

case 2-3 (b) over case 2-3 (a), we perturb the cost assignments on rest arcs so that the solution of

the Relaxed Problem has assignments of type 2-3 (b) and not assignments of type 2-3 (a).

The cost perturbation scheme that we use is a function of the duration of rest arcs. Suppose

that the time duration between events corresponding to nodes 2 and 4, 4 and 5, and 5 and 7 are a,

b, and c, respectively. Consider a cost assignment which is proportional to the square of the

duration of rest arcs. The constant of proportionality is represented by k.

Then,

Cost of assignment 2-3 (a) = k(duration of arc (2, 7))2 + k(duration of arc (4, 5))2

= k(a +b+ c)2 + kb2 = k(a2 + 2b2 + 2 + 2ab +2bc +2ca)

Cost of assignment 2-3 (b) = k(duration of arc (2, 5))2 + k(duration of arc (4, 7))2

= k(a +b)2 + k(b +c)2 = k(a2 + 2b2 + 2 + 2ab +2bc)

It can be observed that the cost of assignments in case 2-3 (b) is less than that in case 2-3

(a). Hence, when the rest arcs have zero costs, the quadratic cost perturbation scheme in the









Relaxed Problem will give FIFO compliant assignments, when there will be only one crew pool

type. The observation made here can also be generalized for multiple crew pools unless there is

priority of crew pools in assignments to trains. If there is a priority assigned to crews in

assignments to trains, then a crew can have FIFO-violated assignment to gain the priority

assignments. We state our observations here as the following theorem.

Theorem 2.2. Quadratic Cost Perturbation applied to the Relaxed Problem guarantees

FIFO compliant crew assignments, if there is no priority in assigning crews to the trains.

Proof: In the space-time network, rest arcs may have one of three costs assigned to them:

(a) zero costs, (b) detention costs, or (c) train delay costs. For e.g., If all the rest arcs in Figure 2-

3 had zero costs, then as shown above, the Relaxed Problem will choose the FIFO compliant

assignment because it is cheaper. If the rest arcs in Figure 2-3(a) had detention costs on them,

then the FIFO assignment shown in Figure 2-3(b) will either have the same level of detention or

lesser detention. Hence, the perturbation scheme will work in this case too. A similar argument

would also work for train delay costs because FIFO assignments will always have equal or lesser

train delays than non-FIFO assignments.

Since we do not want to change the cost structure of the original problem by a large extent,

we set the value of k to a very small value and perturb the cost of each rest arc by a value which

is computed as described above. Our computational tests in Section 2.6.1 show that this method

works very well, and the solutions produced by Quadratic Cost Perturbation are indeed FIFO-

compliant in the case where there are no priorities. The solution time of this method is very short

and is comparable to that of the Relaxed Problem. Note that in the case where there are priorities,

this approach could be used to obtain a solution with a small number of violations and then the

SCG algorithm can be used to prune out these violations. Another interesting observation is that









for most of the instances tested, this method produces solutions with obj ective function values

same as those for the Relaxed Problems. This implies that FIFO constraints can be satisfied with

little or no impact on the solution cost. Hence, using this approach, we are able to obtain

excellent quality of solutions using much less computational time. Due to its attractive running

times and high solution quality, this method has the potential to be used in both the planning and

the real-time environment.

2.5 Significances and Uses of the Model

In the introduction, we mention that the crew scheduling model has applications in the

tactical, planning and strategic environments. In this section, we elaborate and provide specific

examples of how the model can be used as an effective tool for decision making.

2.5.1 Tactical Crew Scheduling

The defining problem in tactical crew scheduling is to determine which crew should be

assigned to operate each train. However, there are a number of sub-problems and issues that

must be considered before assigning crews to trains. Railroads have around-the-clock crew

calling centers with the responsibilities of monitoring the status of each crew and the status of

each train and anticipating when a particular crew should be called to operate a particular train.

A typical crew-calling center employs 200-300 clerks (crew callers) to call crews and answer

inbound telephone queries from management and the crews. First, a crew caller looks at the

proj ected lineup (crew assignment) of outbound trains at a particular crew change location. With

a projection of train departure times, say 13:30, 15:00, and 16:00, the crew caller then goes

through a number of checks before assigning a crew to a train: Is this train covered by a

designated assigned pool, or is it to be covered by FIFO assignment from the general pool?

When is the next qualified crew rested and available to operate this train? The actual rules are










very complex, and the combinations of solutions that must be considered can overwhelm a

person.

Our model has several applications in the tactical scheduling environment. Some of these

applications are given below:

Assignment of crews to trains: The output of our model tells us how to assign crews to

tramns.

Recommend which crews to place in hotels and which crews to deadhead home: When

a crew arrives at an away terminal, the crew callers have to decide whether the crew should

deadhead back home or go to a hotel for rest. The model can be used to mathematically look

ahead and systematically make the trade-off between different cost categories of crew wages,

deadhead costs, detention costs, and rest violation costs.

Minimize trains delayed due to shortage of crew: Train delays are potentially very

costly because the delay of a train may lead to the unavailability of crew to operate another train

in the future and may have a negative domino effect on network-wide operations. By creating

several deadhead arcs while constructing the space-time network, we ensure that such a situation

is avoided.

Disruption management: The crew scheduling model can be used as a tool to bring back

disrupted operations to normalcy. Suppose at some point in time the operations are disrupted.

The current state or snapshot of the system gives us the location of each crew and the hours of

duty already done. Using this information and the information about the future train schedule, the

crew scheduling models can be used to optimally re-assign crew to trains.

2.5.2 Crew Planning

The essence of the crew planning problem for operations or planning is to determine how

many crews should be in each crew pool. It can be noted that as each position is guaranteed a










minimum number of work hours per month, it is quite costly to overestimate the number of

positions required to staff a pool. Currently, railroads solve the pool sizing problem based on

historical precedent and rules-of-thumb, through negotiation with the union, and by trial and

error. The network flow model can satisfy the need for a structured approach that captures all of

the considerations, quantifies the various costs, and recommends the best way to define and staff

crew pools. Some of the applications of the model in the planning environment are described

next.

Develop and evaluate crew schedules: The crew scheduling model can also be used to

compare the current crew schedule used with the model-generated schedule on the basis of

several criteria such as average rest time at the home location, average rest time at the away

location, average deadhead time, etc. By suitably changing the model cost parameters, we can

obtain schedules with different characteristics. For example, if we want to minimize detention,

we can set the detention cost to a very large value and run the model.

Size of crew pools: Using the crew scheduling model, we can study the impact of varying

the crew pool size on the solution quality. For example, suppose our objectives is to minimize the

number of crew used. While formulating the problem, we give large cost incentives to flow on

the sink arcs from crew supply nodes to the sink node. This would lead to the model's producing

a crew schedule which uses the minimum number of crew.

2.5.3 Crew Strategic Analysis

Strategic management involves development of policies and plans and allocating resources

so as to implement these plans. The timeframe of strategic management extends over several

months or even years. Strategic crew problems include forecasting future head-count needs and

evaluating maj or policy changes such as negotiating changes to trade-union rules or changing the

number and location of crew change points on a network. The railroad industry is now










experiencing unprecedented traffic growth. Therefore, it is very important to be able to quantify

the expected impact on manpower needs as traffic grows since it takes 18 to 24 months to hire,

train, and qualify train crew personnel. Recently, corporate strategists have been struggling with

the trade-off between crew costs and train delays. Our model can be used to quickly calibrate

efficient frontiers for each crew district and show what number of crews minimizes the sum of

train delay costs and crew costs. If railroad management is dissatisfied with that level of train

performance, one can simply increase the cost of train delay, and the model will request

additional crews such that a new cost-minimizing solution is obtained.

Some of the applications of the network flow model in the strategic environment are listed

below.

Determining the number of crew districts and territory of crew districts: We can use

the crew scheduling model to re-optimize and test different crew district configurations. For

example, suppose crew district 1 operates trains between location A and location B, and crew

district 2 operates trains between location B and location C. Merging all three stations into a

single crew district could give us better opportunity to optimize costs.

Effect of changing crew trade-union rules: The CSP is a complex optimization problem

due to strict trade-union rules related to crew operation. The change of any of these rules will

face a lot of resistance from the labor union. At the same time, change of any of these rules has

the potential to impact crew costs substantially. Using the crew scheduling model, we can

evaluate the impact of changing the trade-union rules on the crew cost. For example, suppose we

want to know the impact of changing the mandatory rest time at home from 12 hours to 10 hours.

We can run the model with the parameter setting of 10 hours and measure the change in crew

cost.










Forecasting crew requirement: Based on the forecasted train schedule, we can use the

model to help us forecast crew requirement. We first run the model assuming that a very large

number of crew is available. Since the crew supply is much more than what is required, many

crews will directly flow from the crew supply to the sink node. The total crew supply minus the

number of unused crews will give an idea of the number of crews required based on the

forecasted train schedule.

In this section, we have seen that the crew scheduling model has several real-life

applications in the tactical, planning, and strategic environments. If put into production, the

model has the potential to enable railroad professionals to improve their day-to-day operations

and to plan effectively in order to achieve their long-term organizational goals.

2.6 Computational Results

In this section, we present computational results of our algorithms on several problem

instances, and we also present a case study done on a representative instance. We implemented

our algorithms in Visual Basic .NET programming language and tested them on the data

provided by a maj or Class I railroad. We modeled our integer programs using Concert

Technology 2.0 modeling language and solved them using the CPLEX 9.0 solver. We conducted

all computational tests on a Pentium IV, 512 IVB RAM and 2.4 GHz processor desktop

computer.

2.6.1 Comparison of Algorithms

In this section, we compare the performances of the Relaxed Problem, the exact Integer

Programming Formulation (IPF), the Successive Constraint Generation (SCG) algorithm, and the

Quadratic Cost Perturbation (QCP) algorithm on several real-life instances. Our problem

instances consist of train schedules over a period of one to four weeks. In one instance, the

number of crew pools is one, making the problem a single-commodity flow problem. In the other









set of instances, the number of crew pools is two, and the problem is formulated as a

multicommodity flow problem. For each instance, we measure the solution cost, the solution

time, the number of FIFO constraints added to the formulation, and the number of FIFO

constraints violated in the final solution. It can be noted that no FIFO constraints are added while

solving the Relaxed Problem and the Quadratic Cost Perturbation (QCP). The results of our

computational tests are presented in Table 2-1.

We draw the following conclusions from the computational results:

* The solutions to the Relaxed Problem have the highest number of FIFO violations.
However, the solution times are also the fastest.

* The Integer Programming Formulation (IPF) has several thousand FIFO constraints. These
constraints make the problem computationally intractable, and we could not obtain feasible
solution for any of the instances in one hour of computational time.

* The Successive Constraint Generation (SCG) algorithm starts with the solution to the
Relaxed Problem as the initial solution and progressively reduces the number of
infeasibilities. However, the amount of computational time taken by this algorithm is still
quite large. We were able to obtain a FIFO-compliant solution for two instances, and for
all other instances, we terminated the algorithm when the iteration that was running at the
30th minute of computational time was complete.

* The Quadratic Cost Perturbation (QCP) algorithm produces FIFO-compliant crew
schedules for all instances. Also, in six instances out of eight, the obj ective function values
are equal to that of the Relaxed Problem. Since the Relaxed Problem provides a lower
bound to the optimal solution, QCP algorithm produces the optimal solution in six
instances out of eight, and the optimality gap is less than 0.2% for the other two instances.
This algorithm also has very fast solution times, which are comparable to that of the
Relaxed Problem.

Thus, we conclude that the QCP algorithm outperforms the other algorithms in terms of

both solution quality and solution time. It produces optimal or near-optimal solutions in a few

minutes of running time, and it therefore has the potential to be used in both the planning and

real-time environments.









2.6.2 Case Study

In this section, we conduct a case study to illustrate how the crew scheduling model can be

used to derive useful information and drive decision making at a railroad. We perform the case

study on a representative two-week data set which has 326 trains, 2 crew pools, and 48 crews,

and we run the computational tests using the Quadratic Cost Perturbation (QCP) algorithm. The

various aspects of the problem that we observe in this case study are as follows: (i) Effect of

varying the number of available crews, (ii) Effect of varying deadhead cost, (iii) Effect of

varying minimum rest time at the home location, (iv) Effect of varying detention time, and (v)

Effect of varying detention cost.

Effect of varying the number of available crews

In this study, we quantify the effect of varying the number of available crews on the

overall solution quality. We start with a set of 42 available crews and reduce the number of

crews available until the problem becomes infeasible. Table 2-2 presents the computational

results, and Figure 2-4 plots a chart between the number of available crews and solution cost.

We draw the following observations from this study:

* As the number of available crews decreases, the model tries to compensate for the lack of
crews by increasing the level of deadheading and train delays.

* Initially, reducing the number of available crews does not have an adverse effect on the
solution cost, but as more crews are removed, the solution cost rises steeply. For example,
reducing the number of crews available from 42 to 26 (3 8% reduction) has an insignificant
impact on the solution cost, but reducing the number of crews from 24 to 22 leads to the
solution cost jumping up by more than $59,000 (20% increase).

The reader should note that the obj ective function in this case study is not a function of the

number of crews used and is only a function of total deadhead, detention and delay. This

explains why solutions using different number of crews have identical cost provided their total

deadhead, detention and delay are the same.










Effect of varying deadhead cost

In this study, we quantify the effect of varying deadhead cost on the number of deadheads,

total detention hours, total train delay hours, and overall solution cost. The default cost of

deadheading used by the railroad is $144 per hour. We start with a deadhead cost of $0 per hour

and then progressively increase deadhead cost while measuring the impact on the solution as

shown in Table 2-3.

We make the following observations from this study:

* As the deadhead cost increases, the number of deadheads in the solution decreases.
However, after a certain point, there is no significant decrease in the number of deadheads.
For example, even for a very high deadhead cost of $10,000, the solution has 33
deadheads. From this observation we can conclude that there is an inherent imbalance in
the system that necessitates deadheading.

* As the deadhead cost increases, the solution of the model has fewer deadheads and more
train delays. This behavior of the model gives us the insight that if the deadhead cost
increases at some point in time, then the railroad needs to adapt by allowing far more
flexibility in terms of the train delays. Alternatively, the management can also negotiate
with crew unions and reduce the minimum rest hour requirements.

Effect of varying minimum rest time at the home location

In this study, we quantify the effect of varying the minimum rest time at the home location

on the average rest time at the home location, train delays at the home location, average rest time

at the away location, train delays at the away location, and the overall solution cost. The default

value of minimum rest time used by the railroad is 12 hours. We start with a minimum rest

requirement of zero hours and progressively increase the value of this parameter while

measuring the impact on the solution as shown in Table 2-4 and Figure 2-5.

From this study we observe that the minimum rest time at home can be increased to 16

hours without a significant increase in the solution cost. However, any increase beyond 16 hours

leads to a steep increase in the solution cost. The railroad management can use these inputs to

effectively negotiate rest times with the union. For example, if the union wants the minimum rest









time to be increased from 12 hours to 14 hours, then the management can use the model to

quantify the impact of this change and negotiate appropriately.

Effect of varying detention cost

The railroad pays detention charges for each hour of crew rest beyond 16 hours at an away

location. In this study, we quantify the effect of varying the detention cost on the total detention

hours, number of deadheads, total train delay hours, and overall solution cost as presented in

Table 2-5. The default value of detention cost used by the railroad is $140 per hour.

We make the following observations from this study:

* As the detention cost per hour increases, the number of detention hours in the solution
decreases.

* As the detention cost per hour increases, the solution has a greater number of deadheads
and train delays. This behavior of the model gives us the insight that if the detention cost
increases at some point in time, then the railroad needs to adapt by allowing more
flexibility in terms of train delays and crew deadheading.

Effect of varying detention time on the solution

In this study, we quantify the effect of varying the detention time (the minimum rest time

at the away location after which a crew becomes eligible for detention allowance) on the average

rest time at the away location, detention hours, and overall solution cost. The default value of

detention time provided by the railroad is 16 hours. We present our results in Table 2-6 and

Figure 2-6.

This study shows that increasing the detention time has an impact on the solution cost, but

it diminishes as the detention time increases. We observe that increasing the detention time from

0 to 20 hours reduces the solution cost, but increasing it beyond 20 hours has almost no impact

on the solution quality.









2.7 Summary and Conclusions

In our research, we develop a network flow-based approach to solve the railroad CSP in

the context of North American railroads. The CSP for North American railroads is governed by

several Federal Railway Administration (FRA) regulations and trade-union work rules. In order

to develop a good crew schedule, in addition to satisfying these regulations, we also need to

minimize the total wage costs, train delay costs, deadhead costs, and detention costs. The railroad

divides the network into a number of crew districts, and each crew district has several crew

pools. Each crew pool at a district could have a different set of operating rules. These factors

make this a complex problem to model and solve.

The network flow formulation for the CSP that we develop is both flexible and robust and

can be easily manipulated to represent each of the possibilities encountered in real-life. We

formulate the CSP as an integer program on a space-time network. The network is constructed in

such a way that all FRA regulations and trade-union work rules other than FIFO constraints are

enforced during the network construction phase itself. The operational constraints are handled in

the integer programming formulation. We develop two approaches to handle FIFO constraints.

The first approach is a Successive Constraint Generation approach where constraints are

generated iteratively to cut out FIFO violations. The second approach, which is called Quadratic

Cost Perturbation, relies on perturbing the obj ective function to generate FIFO-compliant

solutions. We provide extensive computational results comparing the performance of various

approaches and show that the perturbation approach outperforms the other approaches both in

terms of solution time and solution quality.

We believe that this research will eventually lead to the deployment of crew planning

models and algorithms at North American railroads, replacing the current manual process and, in










doing so, make a significant impact on the railroad's on-time performance, crew utilization, and

productivity, while also improving the quality-of-life for crew and improving railroad safety.












Table 2-1. Comparison of algorithmic performance.
# of # of Relaxed Problem 2. Exact Integer Programming
week crew Formulation
spools Cost($) Time # of FIFO Cost Time # of FIFO
(Sec) constraints ($) (Sec) constraints


3. Successive Constraint Generation

Cost($) Time # of FIFO
(Sec) constraints
Added Violated


4. Quadratic Cost Perturbation

Cost ($) Time # of FIFO
(Sec) constraints
violated


violated

73
148
225
274
64
118
173
226


Added Violated


3,600 11,062 N/A
3,600 23,527 N/A
3,600 35,976 N/A
3,600 48,797 N/A
3,600 17,999 N/A
3,600 40,623 N/A
3,600 63,215 N/A
3,600 86,477 N/A


130,952
265,284
399,816
531,378
132,495
267,130
402,045
533,694


10.8
30.3
57.2
91.8
17.7
55.6
112.0
187.3


132,022
267,067
399,816
532,091
132,495
267,316
405,227
538,039


2,015 958
1,981 1,492
1,908 1,657
2,326 1,805
347 478
2,423 1,068
4,858 1,321
3,928 1,745


25 130,952
95 265,284
151 399,816
226 531,378
0 132,495
0 267,221
25 402,678
25 534,327


10.9
31.4
60.0
97.4
17.7
60.9
125.0
210.7










Table 2-2. Effect of varying crew pool sizes.
Num. of crew Num. of Num. of
available crew used deadheads
42 31 38
40 30 38
38 29 38
36 29 40
34 29 40
32 28 40
30 28 41
28 28 41
26 26 43
24 24 43
22 22 44
20 --

Table 2-3. Effect of varying deadhead cost.
Deadhead Number of Detention
Cost/hr ($/hr) deadheads Hours
0 42 34.55
100 38 37.00
200 38 37.00
300 37 40.33
400 37 40.33
500 36 40.33
600 36 40.33
700 36 40.33
800 36 40.33
900 36 40.33
1,000 35 36.80
10,000 33 36.80


Detention
hours
37.00
37.00
37.00
37.00
37.00
37.00
37.00
37.00
30.65
17.50
6.37


Train Delay
hours
8.77
8.77
8.77
7.85
7.85
7.85
7.85
7.85
30.38
154.83
417.12


Solution
cost ($)
262,838
262,838
262,838
263,340
263,340
263,340
263,697
263,697
268,704
295,486
354,610
Infeasible


Increase in
cost

0
0
502
0
0
357
0
5,007
26,782
59,115


Train delay
hours
5.45
8.77
8.82
9.48
9.57
13.13
13.13
13.13
13.13
13.18
22.95
55.13


Solution
cost ($)
253,079
260,051
266,396
272,733
278,918
284,955
290,955
296,955
302,955
308,967
314,935
813,771










Table 2-4. Effect of varying minimum rest time at home location.
Minimum Average rest at Train Delays at Average rest at Train Delays at
rest (hrs) home (hrs) home (hrs) away (hrs) away (hrs)
0 10.02 0.00 12.83 8.77
2 11.60 0.00 12.99 8.77
4 12.86 0.00 13.12 8.77
6 14.37 0.00 13.12 8.77
8 15.16 0.00 13.15 8.77
10 16.81 0.00 13.31 8.77
12 18.51 0.00 13.33 8.77
14 20.48 0.00 13.25 8.77
16 21.53 0.07 13.09 8.77
18 23.98 1.23 13.18 9.52
20 28.33 3.78 13.09 17.40


Solution cost
($)
262,838
262,838
262,838
262,838
262,838
262,838
262,838
262,838
262,853
263,294
265,337


Table 2-5. Effect of varying detention cost.
Detention Detention Number of
cost/hr ($/hr) hours deadheads
0 305.45 35
40 64.57 37
80 40.33 37
120 37.00 38
160 34.55 39
200 30.77 39
240 23.32 39
280 23.32 39
320 18.67 39
360 11.10 39
400 1.93 40
500 1.93 40
600 1.93 40
700 1.93 40


Train delay
hours
1.17
3.32
8.77
8.77
8.77
11.97
18.50
18.50
24.18
35.53
49.23
49.23
49.23
49.23


Solution
cost($)
254,840
258,630
260,528
262,098
263,542
264,904
265,849
266,782
267,534
268,167
268,452
268,645
268,838
269,032









Table 2-6. Effect of varying detention time.
Detention Avg. rest at away Detention Solution
time (hours) location hours cost ($)
0 8.95 1,136.60 460,558
4 8.95 633.18 390,079
8 10.41 331.60 324,478
12 11.12 83.17 280,491
16 13.33 37.00 262,838
20 14.20 3.67 256,561
24 14.78 1.52 255,620
28 15.82 0.00 254,840











Ho~me
ternnual


Away
tema~nal


Node legend

O Supply
O Arrival
O Departrure
$ Demand


Ar~c legend
- Train
-Rest
-Deadhead
-Demand


Figure 2-1. Space-time network for a single-ended district with a single crew type.










Terminail 2


"Terminl 1


Termainl 2


Figure 2-2. Illustration of the First-In-First-Out (FIFO) rule.

Tenrmmtal 1 Tenuinarl 2 Termnal '1


Terminl 2


A-ssi nmentr A slsignent
(a) (b)


Figure 2-3. Crew assignments are made in (a) Non-FIFO manner, and (b) FIFO manner


Ter~mial 1


Time--















-


-





-





I I I I I I I I I I I


-


-


-


-


I I I I I I I I I I


450,i000


400,000


350,n000





;250,000


200,000


150,000 I


20 2 2 24 26 28 30 32 34 36 8 40 42 44
NunberP of crewrs


Figure 2-4. Solution cost vs. number of crews.


L65,500


265,i000


264,500


_64,000


263,500


263,000


2652,500


0 2 4 6 8 10 12 14 16 18 20 2
Miniamu rest timne l(hr)


Figure 2-5. Solution cost vs. minimum rest time at home.


















i~350,(000

300,000-

250,000-

200,000
0 2 4 6 3 10 12 14 116 18 20 2 2 24 76 28 30 32
Dletent~ion tune Ill)

Figure 2-6. Solution cost vs. detention time.









CHAPTER 3
REAL-LIFE LOCOMOTIVE PLANNING: NEW FORMULATIONS AND
COMPUTATIONAL RESULTS

3.1 Introduction

Locomotive scheduling involves optimally assigning a set of locomotives to trains

satisfying a variety of business constraints and minimizing the total scheduling cost. Everyday,

railroad managers must assign hundreds of locomotives to hundreds of different trains. These

problems are notoriously difficult NP-hard (Ahuj a et al. (2005)) transportation problems that

have not yet been solved satisfactorily. But solving these problems effectively is of critical

importance since a large US railroad has several billions of dollars of capital investment in

locomotives. Our research is motivated by the need to develop effective and practical solution

techniques to solve this complex optimization problem.

Locomotive scheduling problems arise at two levels: planning and dynamic assignment. A

railroad has several locomotive types with different characteristics, such as, horsepower, tonnage

pulling capacity, and costs. The locomotive planning problem (LPP) assigns sets of locomotives,

called consists, to each train in a pre-planned weekly train schedule so that each train gets

sufficient power to pull its load and the total cost of locomotive usage is minimized. The

resulting plan must honor a variety of business rules, cannot require more locomotives than what

is available in the total fleet, and must result in a plan that is relatively simple and repeatable.

Another important feature of the LPP is that locomotives may deadhead on trains. Deadhead

locomotives do not pull the train but are repositioned by the active locomotives from one place to

another place. Deadheading plays an important role in locomotive planning, enabling extra

locomotives to be moved from surplus locations to locations where locomotives are in short

supply. Locomotives also light travel; that is, a set of locomotives forms a group, and one

locomotive in the group pulls others from an origin station to a destination station. Light travel is









not limited by the train schedule thus making it much faster than deadheading. However, light

travel is more costly as a crew is required and the move does not generate any revenue as there

are no cars attached. A locomotive plan specifies which types of locomotives will pull each train,

and how locomotives will deadhead or light travel to obtain overall network wide efficiency. The

locomotive plan gives the "ideal locomotive assignment" in the absence of any disruptions, and

this plan is further refined and adjusted in real-time to obtain the dynamic locomotive

assignment. We focus on the planning version of the problem.

LPPs are notoriously hard combinatorial optimization problems. The paper by Cordeau,

Toth, and Vigo (1998b) presents an excellent survey of existing locomotive planning models and

algorithms for this problem. There are two kinds of locomotive planning models: Single and

Multiple. Single locomotive planning models assume that there is only one type of locomotive

available for assignment. These models can be formulated as minimum cost flow problems with

side constraints; some papers on single locomotive planning models are due to Wright (1989),

Forbes, Holt, and Watts (1991), Booler (1980, 1995), and Fischetti and Toth (1997). Single

locomotive assignment models may be appropriate for some European railroads but are not

suited for US railroads since most trains are assigned multiple types of locomotives. Such

multiple locomotive assignment models have been studied by Florian et al. (1976), Ramani

(1981), Smith and Sheffl (1988), Chih et al. (1990), Nou, Desrosiers, and Soumis (1997),

Cordeau, Soumis, and Desrosiers (1998a), and Ziarati et al. (1997, 1999). The most

comprehensive and recent multiple locomotive assignment models are due to Ahuj a et al. (2005)

which is the starting point of our current research.

In our past research, described in Ahuj a et al. (2005), we formulate the LPP as a mixed

integer multicommodity flow problem with side constraints on an underlying network and









develop solution methodologies that use problem decomposition, integer programming, greedy

heuristics, and neighborhood search (Refer to Section 3.2.4 for an overview). About two years

ago, we started working with the locomotive division at CSX Transportation (Class I US

railroad) to get the locomotive flow-based model developed by Ahuj a et al. (2005) implemented.

The locomotive division was very interested but wanted some additional features to be added to

our methodology to ensure that the solution is more implementable. Also, we were able to find

instances of the LPP where the first approach did not yield feasible solutions in several hours of

computational time. In order to eliminate these difficulties, we developed robust methods

described to obtain realistic solutions that can be used for practical locomotive planning. Our

maj or contributions are listed below:

* Robust Approach: We were able to find instances for the LPP where we could not obtain
a feasible solution in over 10 hours of computational time using the locomotive flow-based
formulation (Ahuj a et al. (2005)). In our computational results, we show that using the
consist-flow formulation, we can obtain near-optimal solutions to the same instances
within a few minutes of computational time.

* Minimize Consist Bustings: Consist-busting involves mixing of locomotives from
inbound trains and regrouping them to form new consists. This is undesirable due to
several reasons described in Section 3.3.2. We propose a consist-based formulation where
consists flow over the network instead of individual locomotives. This formulation reduces
consist busting to zero. We also develop a second formulation called the hybrid
formulation, which is used to benchmark the performance of the consist-based formulation.

* Incremental Locomotive Planning: Zero based approaches which develop a locomotive
plan from scratch are almost impossible to implement. We describe how we can use the
models developed for planning incrementally.

* Cab Signal Requirements: Federal law requires that trains operating in certain territories
called cab signal territory must have a lead locomotive that is outfitted with the cab signal
system. We describe a method to incorporate the cab signal requirements in our
formulations.

* Foreign Power Requirements: Different railroads in North America often cooperate with
one-another and allow direct trains, called run-through-trains, from the origin station on
one railroad to the destination station on another railroad in order to reduce cost by
eliminating unnecessary intermediate switching at the interchange stations. We describe a










method to structure the model to allow locomotives to go to and come from foreign
railroads.

*Computational Tests: We present extensive computational results and case studies on
several instances and derive meaningful conclusions.

Though our research has been conducted in collaboration with CSX Transportation, the

models proposed are applicable in general (with possible minimal contextual changes) to all

North American railroads.

3.2 Notation and Terminology

We give the notation and terminology related to the LPP. We also describe the constraints

in terms of these notations. The constraints can be classified into two groups: hard constraints

(which each locomotive plan must satisfy) and soft constraints (which are highly desirable but

not always required to be satisfied).

3.2.1 Notation

Locomotives pull a set of trains from their origins to their destinations. The train schedule

is a weekly cyclic schedule. Trains have different weekly frequencies; some trains run every day,

while others run less frequently. We consider the same train running on different days as

different trains; that is, if a train runs fiye days a week, we will consider it as Hyve different trains

for which all data is the same except that they will have different departure and arrival time on

the seven day clock. Each train has a required horsepower (HP) and tonnage. Tonnage represents

the minimum pulling power required to pull the train and the HP has a direct bearing on the

speed at which the train can travel. Each train I has the following attributes associated with it:

dep-time(1): The departure time of train I

arr-time(1): The arrival time of train I

dep-station(1): The departure station of train I

arr-station(1): The arrival station of train I









7: Tonnage requirement for train I

p,: HP per tonnage requirement for train 1

E,: The penalty for using single locomotive consist on train 1

A railroad also has several types of locomotives. Let K denote the set of all locomotive

types and k a particular locomotive type in this set. Locomotives which provide power and pull

trains are called active locomotives and those which are being repositioned on a train are called

deadheading locomotives. For every k E K we have the following attributes:

hk : HP of a locomotive of type k

ak : Number of axles on a locomotive of type k

Gk : Ownership cost of a locomotive of type k

Bk : Fleet-size of a locomotive of type k

cl : COst of assigning an active locomotive of type k to train I

dlk : COst of deadheading a locomotive of type k on train I

tl : Tonnage provided by a locomotive of type k to train 1

The tonnage provided by a locomotive k depends on the train to which it is assigned. This

is because different trains have different ruling grades or slopes and the pulling power of a

locomotive depends on the ruling grade. Each train I has three sets of locomotives that could be

assigned to it. MostPreferred[1] contains the locomotive types which are preferred on this train,

LessPreferred[1] contains the locomotive types which are accepted on this train with a certain

penalty and Prohibited[1] contains the locomotive types which are not allowed on this train.

Locomotives are assigned to these three groups for each train based on the business rules of the

railroad.










Light travel refers to the travel of locomotives on their own from one location to another.

Light travel is a fast though expensive way to reposition locomotives. Each light travel has a

fixed cost which is a function of the distance of light travel (since we need a crew) and it also has

a variable cost based on the number of locomotives light traveling and the duration of light

travel .

Consist is a collective term for the set of locomotives assigned to a train. Consist busting

refers to the breaking up of an incoming consist at a station and the assignment of the

locomotives in it to more than one outgoing train. Consist busting has a fixed cost B associated

with it and also a variable component which depends upon the number of locomotives involved

in consist busting. An efficient locomotive schedule can help us reduce consist busting greatly. A

train-train connection refers to the direct transfer of a consist from an inbound train to an

outbound train at the same station. Train-train connections are highly desirable since they reduce

consist busting. Whenever a consist goes from one train to another train, it needs some minimum

time to make this connection; we refer to this time as the minimum connection time.

3.2.2 Hard Constraints

Hard constraints are mandatory constraints which have to be satisfied for a locomotive

assignment plan to be feasible.

Power requirement for trains: Each train must be assigned locomotives with at least the

required tonnage and horsepower.

Locomotive class to train type: Each train type (e.g., auto train, or merchandise train, or

intermodal train) is targeted to use specific classes of locomotive types. For example, we may

specify that auto trains can be assigned only AC44 or AC60 type locomotives.

Geographic: Each geographic region permits the travel of only specific locomotive types.

For example, we may specify that Atlanta can only use: C40, AC44, and AC60 locomotives.









Locomotive balance constraints: The number of incoming locomotives of each type into

a station must be equal to the number of outgoing locomotives of that type at that station.

Active axle constraints: Each train must be assigned locomotives with at most 24 active

axles. This business rule is designed to protect the standard couplers used in North America.

Exceeding 24 powered axles may overstress the couplers and cause a train separation.

Consist size constraints: Each train can be assigned at most 12 locomotives including

both the active and deadheading locomotives. This business policy reduces risk exposure if the

train were to suffer a catastrophic derailment.

Fleet size constraints: The number of assigned locomotives of each type is at most the

number of available locomotives of that type.

Repeatability of the schedule: The assignment of locomotives to trains should be such

that the number of locomotives of each type at each station at the end of the week should be

equal to the number of locomotives of each type at each station at the beginning of the next week

so that the plan is repeatable every week.

3.2.3 Soft Constraints

These constraints are flexible constraints and they define characteristics which are

preferred but not mandatory.

Consistency in locomotive assignment: A train should be assigned the same consist each

day that it runs. Railroads believe that crews will perform more efficiently and more safely if

they operate the same equipment on a particular route and train. As the crews learn the operating

nuances associated with each combination, they will adjust their throttle and braking control

accordingly.

Consistency in train connections: If locomotives traveling on a train to its destination

station connect to another train originating at that station, then they should preferably make the









same connection on each day that both of the trains run. This allows station managers to

optimize their sub-processes associated with arriving and departing trains.

Avoid consist busting: Since consist busting involves the use of more resources, it is

preferable to avoid consist busting.

Avoid single locomotive consists: If a single locomotive is assigned to a train and this

locomotive breaks down, then the train will get stranded.

3.2.4 Previous Research

In the previous research reported in Ahuj a et al. (2005), we developed an integrated

planning model that determines the set of active and deadheading locomotives for each train,

light traveling locomotives from power sources to power sinks, and train-to-train connections

(specifying which inbound train and outbound trains can directly connect). We first developed a

mixed integer programming (MIP) formulation of the LPP. This MIP formulation, the

locomotive flow model, is a multicommodity flow problem where each locomotive type

represents a commodity and assignment of locomotives to trains is transformed into the flow of

locomotives on a seven-day or weekly space-time train network. There were two maj or

difficulties in solving the MIP formulation. First, the problem size was too large to be solved by

the available commercial-grade MIP software as it contains hundreds of thousands of decision

variables and comparable number of constraints. Secondly, the solution obtained using this

formulation was not likely to be consistent; that is, the optimal solution may have different

consist assignments to the same train on different days of the week. In a plan, railroads want the

same consist assignment to a train each day it runs.

Our maj or contribution in the previous research was to handle both these difficulties

effectively by proposing a two-phase approach. In the first phase, we assumed that trains run

every day of the week, and determined the locomotive assignments under this assumption. (This









assumption is not a bad assumption in practice as most trains run every day). In the second

phase, we considered the actual train schedule and re-optimized the locomotive assignment of

the first phase by solving a sequence of single commodity flow problems. Assuming that trains

run every day of the week reduces the weekly locomotive assignment problem to a daily (or one

day) locomotive assignment problem (thus reducing problem size by a factor of seven thereby

making it more tractable) and replicating the locomotive assignment each day of the week gives

us a perfectly consistent assignment. We give a brief overview of this two-phase approach in

Figure 3-1.

We formulate the problem is such a way that determining train-train connections is no

longer a modeling issue. We focus our attention on the one-day LPP. While keeping the other

features of the model identical to what they were before; we change our approach to model the

one day LPP and consider flows of consists over the network instead of flows of individual

locomotives. In the next section, we give a detailed description and motivation for the consist-

based approach. In the rest of the chapter when we refer to LPP, we are referring to the one-day

LPP.

3.3 Mathematical Modeling

3.3.1 Space-Time Network

The LPP is formulated as an integer multicommodity flow problem with side constraints

on a space-time network. Each consist type defines a commodity in this network. We denote the

space-time network as G (N, A), where N denotes the node set and A denotes the arc set. The

space-time network is constructed as follows. We create a train arc (1', 1") for each train 1; the tail

node 1' of the arc denotes the event for the departure of train I at dep-station(1) and is called a

departure node. The head node 1" denotes the arrival event of train I at arr-station(1) and is called

an arrival node. Each arrival or departure node has two attributes: place and time. For example,










place(l') = dep-station(1) and time(l') = dep-time(1). Similarly, place(l") = arr-station(1) and

time(l") = arr-time(1). Some trains are called forward trains and some trains are called backward

trains. Forward trains are those trains for which dep-time(1) < arr-time(1) and backward trains are

those trains for which dep-time(1) > arr-time(1).

To allow the flow of locomotives from inbound trains to outbound trains, we introduce

ground nodes and connection arcs. For each train arrival node, we create a corresponding arrival-

ground node with the same place and time attribute as that of the arrival event. Similarly, for

each train departure event, we create a departure-ground node with the same place and time

attribute as that of the departure node. We connect each arrival node to the associated arrival-

ground node by a directed arc called the arrival-ground connection arc. We connect each

departure-ground node to the associated departure node through a directed arc called the ground-

departure connection arc. Next, we sort all the ground nodes at each station in the chronological

order of their time attributes, and connect each ground node to the next ground node in this order

through directed arcs called ground arcs. (We assume without any loss of generality that ground

nodes at each station have distinct time attributes) The ground nodes at a station represent the

pool (or storage) of locomotives at the station at different instants of times. As trains arrive, they

bring in locomotives to the pool through arrival-ground connection arcs. As trains depart, they

draw locomotives from the pool through ground-departure connection arcs. The ground arcs

allow inbound locomotives to stay in the pool as they wait to be connected to the outbound

trains. We also connect the last ground node of the week at a station to the first ground node of

the week at that station through a ground arc; this ground arc models the ending inventory of

locomotives for a day becoming the starting inventory for the following day.









We also allow the possibility of light travel, that is, several locomotives forming a group

and traveling on their own from one station to another. We assume that the set of light travel

possibilities is given to us. We create a light arc in the weekly space-time network corresponding

to each light travel possibility. Each light arc originates at a ground node (with a specific time

and at a specific station) and also terminates at a ground node. Each light arc has a fixed charge

which denotes the fixed cost incurred to assign a crew to that light travel. We denote this fixed

charge for a light travel arc 1 by Fl. The light arc also has a variable cost which depends upon the

number of entities light traveling on it.

The space-time network G = (N, A) has three types of nodes arrival nodes (ArrNodes),

departure nodes (DepNodes), and ground nodes (GrNodes); and four kinds of arcs train arcs

(TrArcs), connection arcs (CoArcs), ground arcs (GrArcs), and light travel arcs (LiArcs). Let

AllNodes = ArrNodes u DepNodes u GrNodes, and AllArcs = TrArcs u CoArcs u GrArcs u

LiArcs. In Figure 3-2, we show a part of the space-time network at a particular station, which

illustrates the various kinds of arcs.

3.3.2 Consist Flow Formulation for the LPP

Consist busting refers to the process of decomposing inbound consists at a station into

several locomotives and the assignment of these locomotives to several outgoing trains. Railroad

managers prefer to minimize consist-busting as much as possible due to the following reasons.

(1) Consist-busting often results in outbound trains getting their locomotives from several

inbound trains. If any of these inbound trains is delayed, the outbound train is also delayed,

which potentially propagates further delays down the line; and (2) Consist busting is an

extremely labor, cost, and time intensive operation. Additional crews are required to transfer (or

hostile) locomotives between the rail yard and the shop facility where consists are busted and










reassembled. Moving locomotives across a station creates incremental moves for the yard

masters to worry about; the hostlers block tracks so car switching activity must be paused; and

train movements must be coordinated between transportation and mechanical departments (as

opposed to train-to-train connections which are entirely within the purview of transportation).

Consequently, consist busting consumes between two to six additional hours per locomotive

within the station.

We develop a formulation for LPP that almost completely eliminates consist busting; we

call this formulation the consist flow formulation. This formulation is an extension of the

locomotive flow formulation described in Ahuj a et al. (2005), which defines each locomotive

type as a commodity and routes locomotives on the train network. In the consist flow

formulation, we define each consist type (that is, a group of locomotives) to be a single

commodity and route consists on the train network. Thus, the consist flow formulation differs

from the locomotive flow formulation in the sense that locomotive types are replaced by the

consist types. Observe that each feasible solution of the consist flow formulation has a

corresponding feasible solution of the locomotive flow formulation with the same cost, but the

converse is not true. Thus, the reader might be led to believe that consist formulation is quite

restrictive and may produce significantly inferior solutions compared to the flow formulation.

However, our computational results reveal that if the number and types of consists are

judiciously chosen, then both formulations produce solutions with comparable quality. In the

formulation described next, we assume that the consist types are pre-specified; we describe later

in Section 3.3.4 how to determine good consist types.

The consist flow formulation is a multicommodity integer program formulated on the

space-time network. We next describe the additional notations used in this formulation.










C: Denotes the set of consist types available for assignment and c EC represent a particular

consist.

F, :Fixed charge cost for using the light arc 1.

cic: Cost of assigning an active consist of type c EC to train 1.

di : Defined for every arcle AllArcs For a train arcl E TrArcs, dic captures the cost of

deadheading a consist of type c E C on arc 1. For a light arc l e LiArcs, do captures the cost of

traveling for a consist type c EC on arc 1. For an arcl e CoArcs v GrArcs do captures the cost of

idling for a consist type c EC on arc 1.

ack : Number of locomotives of type k E K in consist type c EC.

Iii]: Set of arcs entering node i.

O[i]: Set of arcs leaving node i.

S:Set of overnight arcs or arcs that cross the midnight timeline. (We choose midnight as the time

for counting the number of locomotives used in our solution)

day(1): Number of times an arc 1 crosses the midnight timeline. Suppose, a train I leaves at 8 AM

on day 1 and arrives at 2 AM on day 2, then day(1) = 1; whereas suppose it leaves at 8 AM on

day 1 and arrives at 2 AM on day 3, then day(1) = 2.

The decision variables are:

xy : Binary variable representing the number of active consists of type c eC on arcl e TrArcs .

y," : Integer variable representing the number of non-active consists (deadheading, light-traveling

or idling) of type c eC on arcl e AllArcs .

zz :Binary variable which takes value 1 if at least one consist flows on arc l e LiArcs and 0

otherwise.










sk Integer variable indicating the number of unused locomotives of type k E K .

We formulate the problem as follows:

minz = cCI"xic+ C dicyt + C Ezl CGkSk
leTrArcs ceC leAl/Arcs ceC leLArcs keK


Sxe = 1, for all I ETrArcs,
ctC


a C c(x," + Yf) 12, for all l e TrArcs,
ceC keK


S(xic + y")- = (xic + y,"), for all i E AllNodes, c e C,
lel[ ] leo[l]


aCck~Y Ic 12z,, for all let LiArc~s,
keK ceC


aCck(l Ic Ic)day(1) +sk =Bk, for all k EK,
leS ceC

xc e {0,1}, for all leTrArcs, c C,


yze 0 and integer, for all l E AllArcs, c e C,


(3.1a)


(3.1b)


(3.1c)


(3.1d)


(3.1e)


(3.1f)


(3.1g)


(3.1h)


1i)

1j)


z, a (0, 1), for all l E LiArcs, (3.

sk 0, for all k K. (3.

Constraint (3.1b) ensures that every train I is assigned exactly one active consist.

Constraint (3.1c) ensures that the locomotive flow upper-bound on each train arc is satisfied.

Constraint (3.1d) ensures that flow is balanced at every node for every consist type. Constraint

(3.1e) ensures that the locomotive flow upper-bound on each light arc is satisfied. Constraint

(3.1f) ensures that the number of locomotives of each fleet type used is no more than the fleet

Size.

While the locomotive flow based formulation (Ahuja et al. (2005)) did not converge to

feasible solutions for some instances in over 10 hours of computational time, the consist based









formulation was able to optimally solve the same instances within a few minutes of

computational time. The reasons for this superior computational performance are: (1) In the

locomotive flow formulation, we need to explicitly specify constraints that each train gets

required tonnage, horsepower and does not exceed the 24-active axle requirement. However,

these constraints are implicitly handled in the consist-based formulation using much lesser

number of constraints. We handle the active axle constraint by not creating consists which have

more than 24 active axles. We handle the tonnage and horsepower constraints implicitly in the

following way; if assigning consist c EC as an active consist to train l E TrArcs violates the

tonnage or horse power constraints, we set xy = 0 thus disallowing the assignment of consist c to

train 1. Thus, the consist flow formulation has 2 |TrArcs| lesser number of side constraints

compared to the locomotive flow formulation; (2) All active consist assignment variables, xf are

binary variables, whereas in the locomotive flow formulation active flow variables are general

integer variables. The MIP optimization engine, which is typically a branch-and-bound

algorithm, is likely to explore lesser branches for a binary integer program compared to a general

integer program as there are lesser options to pursue; and (3) Each time branching occurs on a

binary variable it is either pre-fixed to zero or to one in the subsequent problems. Hence, as the

algorithm progresses down the branch-and-bound search tree, the problem size and complexity

of the linear programs solved at each node reduces.

The consist based formulation also has practical advantages. Railroads often impose

complex rules on what locomotive types may be combined into ideal consists. Some locomotives

do not work well together. Some railroads segregate AC powered locomotives and DC powered

locomotives. These requirements are often very hard or impossible to honor in the locomotive

flow formulation but are rather trivial in the consist flow formulation. Further, in the locomotive









flow formulation, an outbound train often obtains its planned consist from locomotives coming

from multiple trains and if any of these inbound trains is delayed, the outbound train is delayed

as well. But in the consist flow formulation, all outbound trains derive their active consist only

from one inbound train (but may derive their deadhead consists from other trains) thus reducing

the impact of train delays.

The consist flow formulation is superior to the previous locomotive flow formulation

because (1) solution speed and robustness are greatly improved, (2) consist busting is reduced to

zero, and (3) constraints are more easily incorporated, resulting in more practical solutions. Our

computational tests show that while the consist flow formulation may have its optimal obj ective

function value as much as 5% higher than that of the locomotive flow formulation, the solution is

far superior in terms of consistency, simplicity, and robustness. Thus, it may be easier to comply

with and may need overall fewer locomotives in practice (considering train delays, for example).

And, the consist flow solution still requires far fewer locomotives than the manually generated

plans currently in use by most railroads.

3.3.3 Hybrid Formulation for the LPP

In order to evaluate the performance of the consist based formulation, we need to ideally

compare it to the solution of the flow formulation (Ahuj a et al. (2005)). However, for some

instances, the flow formulation does not converge to a feasible solution after several hours of

computational time and this is hence not possible. We develop a hybrid formulation which can

be used to benchmark the performance of the consist formulation. The hybrid formulation retains

the structural properties of the consist formulation while also allowing total flexibility to bust

consists at no additional cost. We realize that this is not a realistic assumption, but this model

allows us to determine the impact on solution cost if consist busting is allowed. Hence, it serves










as a good benchmark for the solution of the consist flow formulation. Also, since it retains some

of the structural properties of the consist formulation, it is also computationally robust.

In the hybrid formulation, we allow active locomotives on trains to travel as consists but

the deadheading locomotives travel as individual locomotives. At the ground nodes, where

inbound trains bring their consists, they are broken into individual locomotives. These individual

locomotives flow on ground arcs. When outbound trains need active locomotives, they draw only

the pre-specified consists from the ground pool; but when they need deadhead locomotives, they

can draw individual locomotives. The reader can observe that the solution space of the hybrid

formulation is a subset of the solution space of the locomotive flow formulation but a super set

of the solution space of the consist flow formulation. We next give the MIP formulation of this

hybrid version.

The decision variables are:


xte: Binary variable representing the number of active consists of type c eC on arcl e TrArcs .

yfk : Integer variable representing the number of non-active locomotives (deadheading, light-

traveling or idling) of type k E K on arc e AllArcs .

zz :Binary variable which takes value 1 if at least one locomotive flows on arc l e LiArcs and 0

otherwise.

sk : Integer variable indicating the number of unused locomotives of type k E K .

We formulate the problem as follows:

minz = cCCxic + C d~lk I Fz- CGkSk (3.2a)
leTrArcs ceC leAl/Arcs keK leLArcs keK


x ec = 1, for all I e~rArcsr, (3.2b)
ceC


1ac kX, Ic +~ f y<12, for all l e TrArcs, (3.2c)
ceC keK keK










Cackc + J = C ~:, for all leTrArcsr,k eK, (3.2d)
ceC heO(head(1))


Cack c Ik = C y, for all leTrArcs, k K, (3.2e)
ceC hel(tall(1))


Syr yl = 0, for all i E GrNodes, k E K, (3.2f)
lel(r) leo(r)


yf~ < 12z,, for all le LiArc~s, (3.2g)
keK


acXLk~i~rSII~/ cday(1) + ~ yYda( +k=Bfor all k E K, (3.2h1)
leS ceC leS


xic E {0,1), for all l E TrArcs, c e C, (3.2i)


y, 0 and integer, for all l E AllArcs, k E K, (.j


z, a (0, 1), for all l E LiArcs, (3.2k)

sk 0, for all k K. (3.21)

The constraints in this formulation are similar to those in the consist flow formulation. The

only difference is we have to construct the flow balance equations for train arrival and departure

nodes (3.2d) and (3.2e) differently (with multipliers) because active locomotives flow as consists

on trains and locomotives flow as individual locomotives on the connection arcs and ground

arcs. In this formulation also, we enforce the tonnage, active axles and the horse power

constraints implicitly and hence share some of the advantages that the consist formulation has

over the flow formulation.

The computational results presented in Section 3.5.1 show that consist flow formulation

gives comparable solutions to the hybrid formulation, thereby demonstrating that disallowing

consist busting does not come at a big cost. We also observe that hybrid formulation takes much

more time compared to the consist flow formulation as the flexibility to break and reassemble










consists, increases the solution space significantly and the decision variables have multipliers

associated with them which makes the MIP harder to solve.

3.3.4 Identifying Good Consists

During our computational testing of the consist-based and hybrid formulations, we

observed that the performance critically depends on the number and types of consists. The

greater the number of consists with different horsepower and tonnages, the better the quality of

the solution since there are more potential matches between need and availability. However,

from implementation perspectives, we would like to use the minimum number of consists as it

keeps the solution simple and provides greater opportunities for substitution between different

consist types which is done when trains run late. We are thus faced by the problem of finding a

small set of good consist types which provide as good a solution as a large number of consist

types. We show that using a minor change in our existing formulations, we can choose a small

set of p good consist types from a given larger superset of potential consist types C. We

accomplish it by introducing the following decision variables:

ze = Binary variable which takes a value 1 if consist type c EC is used, and a value 0 otherwise

and add the following constraints to the formulations:

C(xic + yl) <: Mzc, for all c EC ,





where M is a sufficiently large number. The first constraint sets ze = 1 whenever a consist

type is used, and the second constraint ensures that no more than p such variables are set to 1, or

no more than p consist types are used. These constraints will ensure that the model picks a set of

p optimal consists from the pre-defined superset of consists C that minimizes the overall solution

cost.










3.4 Incorporating Practical Requirements

We describe several additional requirements that a locomotive planning model must satisfy

which we did not incorporate in our previous research reported in Ahuj a et al. (2005). These

features are necessary to generate an implementable locomotive plan.

3.4.1 Incremental Locomotive Planning

Our formulations described in Section 3.3 generate a locomotive plan for a given train

schedule from scratch or zero-base. However, over time, train schedules change in response to

shifts in traffic patterns, to free up tracks for periodic repair and replacement, and because of

network outages such as hurricanes, floods, and winter blizzards. These changes include some

trains being added or removed, or changes in train frequencies, train timings, and train tonnages.

We can use our locomotive planning model to generate a brand new optimal locomotive plan for

the modified train schedule. But, the former plan and the new plan could potentially be quite

different requiring managers to reposition power from the old cycles to the new cycles causing

much disruption to operations. Consequently, an additional challenge to locomotive planning is

the development of implementation strategies for introducing new plans to an organization. Our

research shows that the optimal (or near-optimal) frontier of solutions for the LPP is quite broad

and quite flat, which means that there are a very high number of combinations of locomotive

plans that produce similar values for the model obj ective function. Consequently, it would be

desirable to choose a new locomotive plan that closely resembles the current locomotive plan,

minimizing the number of tactical repositioning moves required to transition from one plan to

another.

The incremental locomotive planning algorithm takes in the current locomotive plan and

changes in the train schedule, and produces a new, incrementally different locomotive plan. The

current weekly train schedules and their currently planned locomotive assignments are inputs to










this problem. Since the current plan need not conform to pre-specified consists, this model is a

locomotive flow based model. The algorithm consists of the following steps:

* Take the current weekly plan and obtain a current daily plan. The trains which are
considered a part of the daily problem are those trains which have a frequency greater than
p (usually p = 4). The current daily flows for these trains are taken to be the most frequent
locomotive assignment on the seven-day trains corresponding to this daily train in the
current solution. For example, if a train is assigned an active flow of 2 SD40 for five days
of a week and an active flow of 2 AC44 for one day, then the corresponding daily train will
be assigned a flow of 2 SD40 in the current daily plan.

* Solve the incremental one-day flow formulation.

* Use the output of the incremental one-day flow problem and transition back to the seven-
day problem by using the standard approach suggested in Ahuj a et al. (2005). Since
consistency is enforced while moving from the one-day to the seven-day solution; the
incremental model's output is likely to be similar to the current weekly plan.

The incremental one-day flow formulation has the following decision variables:

xf : Integer variable representing the number of active locomotives of type k E K on the arc

lE TrArcs .

yfk : Integer variable indicating the number of non-active locomotives (deadheading, light-

traveling or idling) of type k e K on the arcl E AllArcs .

afk :Positive deviation from the current flow for locomotive type k.

af:Negative deviation from the current flow for locomotive type k.

zz :Binary variable which takes value 1 if at least one locomotive flows on arc l e LiArcs and 0

otherwise.

sk : Integer variable indicating the number of unused locomotives of type k E K .

The obj ective function and constraints are:

miz ckx +dly?-GkSk+ Iak'+ k-)P (3.3a)
leTrArcs keK leAl/Arcs keK keK leTrArcs keK









We consider the same constraint set as that in the flow formulation (Ahuja et al. (2005))

with the following additional constraint:

afr af =xI + y (x, + yf ),foalv l ~le rcs ,L (3.3b)

af ,a~ >0. (3.3c)

where P is the penalty for deviating from the current daily plan's assignment, and

x k, yl are the current daily flows on arc 1. This in effect sets a~k and afk to the positive and

negative deviations from the current daily plan respectively. By varying the value of parameter

P, we can get solutions which differ from the current daily plan and hence the current weekly

plan by different degrees.

We measure the difference between the output of the incremental planning model and the

current plan as:

Number of trains for which the model assignment differs from the current plan
% difference = x 100
Total number of trains

Note that while it is not possible to directly control the percentage difference (above). By

suitably modifying P we can obtain solutions which differ from the current plan by varying

degrees (Increase in the value of P leads to a decrease in the percentage difference). Incremental

planning enables the railroad to make a sequence of incremental improvements and arrive at the

optimal locomotive plan without huge transition costs.

3.4.2 Cab Signal Requirements

Each locomotive in the fleet is equipped with specialized equipment that may enable it to

operate in certain restricted territories while at the same time disqualify it from operating in other

territories. Some of this equipment is required to enable the locomotive to be the first in a

consist or the lead locomotive. Other equipment may be required by union rules or regulatory









rules unique to certain geography. Some of these constraints are handled during tactical (real-

time) assignment of locomotives to trains. However, one particular constraint, which we call the

cab signal constraint, must be a part of the locomotive plan.

Railroad corridors are equipped with signaling systems to control the movement of trains.

Most corridors are outfitted with wayside signals only; the crew in the locomotive observes the

signal and slows, stops, or proceeds depending on it. To increase safety, some corridors do not

have wayside signals but instead are equipped with cab signal systems, where the signal is

displayed inside the locomotive. Not only do cab signals aid the crew in foggy weather or in

cases where the wayside signal may be obscured but the cab signal systems also interface with

the locomotive throttle and brake and in cases where a crew does not honor the signal, the system

will automatically slow down and then stop the train to avert a possible collision. Federal law

requires that all consists operating in cab signaled territory must have a lead locomotive that is

outfitted to interface with the cab-signal system. For planning purposes, railroads like to have all

locomotives in a consist equipped with cab signals so that suppose the lead locomotive breaks

down, the units can be swapped on the line of road and the train will continue; or, at the end of

the line, the consist can reverse direction without being turned. Outfitting a locomotive with cab

signals costs in excess of $100,000 and there are increased maintenance and inspection

requirements as well. Consequently, railroads do not equip every locomotive with cab signals

since that is too costly.

To incorporate the cab signal logic, we partition each consist type into two consist types,

one with the cab signal capability and the other without the cab signal capability. For example,

consist type 2-[SD40] can be decomposed into the categories: 2-[SD40-Normal] and 2-[SD40-

Cab]. Similarly, we decompose the fleet-size requirements for SD40 locomotives into two parts:









SD40-Normal and SD40-Cab (this decomposition is an input provided by the railroad). For each

train 1, which operates in a cab signal corridor, we ensure that the all the consist flow variables


on it, that is, x;f ,y; are zero when c is not a cab signal compatible consist. This change guarantees

that all the trains in cab signal corridors are assigned cab signal consists, but those in normal

corridors can be assigned either kind of consist. While this change does not change the nature of

our model, it increases the number of consists which increases the number of decision variables

and constraints proportionately, and leads to consequently longer run times. While the

locomotive flow formulation (Ahuj a et al. (2005)) which suffers from intractability cannot

handle the increased problem size, the consist based formulation is also able to solve this larger

problem quickly.

3.4.3 Foreign Power Requirements

Railroads often cooperate to run trains directly from the origin station on one railroad to

the destination station on another railroad. These trains are called run-through trains. By

allowing locomotives from the originating railroad to stay with the train through to destination,

the cooperating companies eliminate queuing of trains and locomotives at the interchange

stations that would otherwise occur as one railroad would have to move extra locomotives to the

interchange point in anticipation of the train arrival, or the train would have to sit at the

interchange waiting for locomotives. Over the week, several inbound run-through trains bring in

foreign power into the network and several outbound run-through trains return foreign power to

other railroad networks. However, the inbound and outbound run-through train schedules are not

perfectly balanced and the foreign power often flows back to other interchange locations or on

direct or indirect trains. But, at the end of the week, each company is obligated to return as many









locomotives that it receives from each connecting carrier in order to maintain the overall balance

of power across North America.

The foreign power requirement is incorporated by making appropriate changes to the

space-time network. The network is augmented in such a way that solving the LPP would

automatically guarantee a plan which accommodates foreign power. We create the augmented

space-time network in the following manner. We first create the space-time network for the LPP

as described in Section 3.3.1. Then, we create a pseudo super station for each of the foreign

railroads. All the trains which bring in foreign power into the system originate at their respective

super stations and terminate at their respective destinations. All the trains which send foreign

power out of the system originate at their respective origins and terminate at their respective

super stations. Due to the flow balance constraints, the number of locomotives (or consists) of a

particular type entering a super node will be equal to the number of locomotives (or consists) of

the same type leaving the same super node. However, the model may use the super station as a

short-cut between two geographic stations. For e.g. a consist that needs to travel between

Chicago and Memphis may be routed from Chicago to a super station and then from the super

station to Memphis because it is cheaper to do so. To prevent this kind of short-cutting, we set

the costs on ground arcs at the super node to a large value. This ensures that the solution does not

misuse the super node as a short-cut between two geographic stations and that only essential

foreign power movement takes place between railroads.

3.5 Computational Results

We now present computational results on several problem instances. We also present the

results of case studies and draw insightful conclusions. We implemented our algorithms in

Visual Basic .NET programming language and tested them on the data provided by a maj or Class

I railroad. We modeled our integer programs using Concert Technology 2.0 modeling language










and solved them using the CPLEX 9.0 solver. We conducted all computational tests on a

Pentium IV, 512 MB RAM and 2.4 GHz processor desktop computer.

3.5.1 Comparison of Formulations

We compare the performances of the consist based formulation and the hybrid formulation

on real-life instances while varying the pre-specified input consist set as shown in Table 3-1. The

first row of the table shows three input consists. Each subsequent row adds two more consists to

the previous set of consists. We ran both the consist and hybrid formulations with these consist

compositions and noted the running time and solution cost on two different real-life scenarios

given to us by the railroad. Table 3-2, Table 3-3, and Figure 3-3 present the results of the

comparison.

We make the following observations from this study:

* As we increase the number of consists used, the solution becomes progressively better. An
increase from three to nine consists leads to an improvement of more than 17% whereas an
increase from nine to seventeen consists gives an improvement of less than 3%
demonstrating the law of diminishing returns.

* The obj ective function of the hybrid formulation for all cases is only marginally (< 5 %)
better than that of the consist formulation.

We also applied the original flow formulation developed in Ahuj a et al. (2005) to these

two scenarios but it did not converge to a feasible solution even after 10 hours computation time.

From these tests, we conclude that the consist formulation is an excellent way to model the LPP

and we need a small number of consists (less than 10) to obtain good solutions.

3.5.2 Identifying Good Consists

In Section 3.3.4 we described a method to select a set of p optimal consists from a larger

candidate set of consists. Here, we consider an instance of the LPP and a set of 15 candidate

consists. We then determine the optimal set of consists as described in Section 3.3.4, varying the

parameter p from 3 through 15, and note the obj ective function values of the problem for each









case. We also compare these obj ective function values to the obj ective function value obtained

when we use the set of eleven consist types specified by the railroad (blue line in the figure).

Figure 3-4 presents these computational results.

We draw the following conclusions from these results:

* As the number of consists used increases, the solution quality improves. However, there
are diminishing returns as we add more consists.

* Using just five consists, we are able to match the solution obtained by using the eleven
consists specified by the railroad.

* Six consists, if chosen judiciously, can give as good a solution as fifteen consists. This is a
gratifying observation as railroads desire five or six consists to ensure plan simplicity and
plan compliance.

3.5.3 Incremental Locomotive Planning

In this study, we present computational results of the method described in Section 3.4. 1 to

solve the planning problem incrementally. In the incremental planning problem, we are given a

possibly non-optimal feasible solution xo and we wish to incrementally optimize it. Let x* denote

the optimal solution of the LPP. We present the results of this test in Table 3-4. We start with

solution xo and make incremental changes to it so that it gets closer to the optimal solution and

we control the extent of changes. Observe that as we increase the extent of change allowed by

decreasing the penalty, we progressively obtain improved solutions which differ from xo by a

greater extent but use lesser number of locomotives. Also note that the solution when the penalty

is zero is largely different from the current solution xo

3.5.4 Case Study

We conduct a case study to demonstrate the usefulness of the model to assist decision

making. The various aspects of the problem that we test in this case study are as follows: (1)

Effect of varying minimum connection time on solution cost, (2) Effect of varying transport










volumes on key transport performance characteristics; and (3) Effect of varying train times on

key transport performance characteristics.

Effect of varying minimum connection time on solution cost

Freight trains do not run on time and often arrive later than their planned arrival time,

which makes it difficult for locomotive dispatchers to adhere to the locomotive plan. One

method commonly recommended to improve plan compliance is to increase the train-train

minimum connection times (defined in Section 3.2.1). Although increasing the minimum

connection time may improve plan adherence, it also increases locomotive costs as more

locomotives will be held in inventory at terminals. We quantify the impact of increasing the

minimum connection times. We performed the test for a representative instance where we varied

connection times from zero hours to ten hours and noted the total cost incurred by each solution.

This test was done twice, first with an input set of nine consists and then with an input set of

eleven consists. We present the results of the test in Table 3-5 and Figure 3-5.

We draw the following conclusions from the study:

* The minimum connection time could have a significant impact on the number of
locomotives used and the solution cost.

* The solution cost increases linearly with the increase in connection times at the rate of
around $200,000 per hour.

Depending upon the train lateness and the willingness of railroad planners to improve

locomotive plan compliance, appropriate connection times can be used. In this study, we

assumed same connection times system-wide. Railroads may want to experiment with station-

dependent connection times based on historical lateness performance of trains. As shown in this

study, railroads can use the model to quantify the trade-off between decreasing minimum

connection times and increasing solution costs.










Effect of varying transport volume on key performance characteristics

We measure the impact of varying transport volumes (or train tonnages) on the following

key transport characteristics: number of locomotives used, solution cost, mean pulling power of a

consist, and mean miles traveled per consist. We start with a solution with specified tonnages on

each train. We then proceed to decrease tonnages by steps of five percent and measure the

impact on transport characteristics. We then repeat the test but this time increasing tonnages by

steps of five percent. The results of these tests are presented in Table 3-6 and Figure 3-6. The

consist flow formulation was able to solve all instances in less than two minutes of

computational time.

We draw the following conclusions from this study:

* As the transport volume (mean tonnage) increases, the solution cost tested increases as a
quadratic function with an increasing slope

* The mean pulling power of each consist and the number of locomotives used increase as
expected; however, the average number of miles traveled by each consist remains roughly
the same.

* The consist flow formulation is robust since it solves all the instances in less than two
minutes of computational time.

As we demonstrate, railroads can use the model as a generic approach for modeling the

optimal number of locomotives needed or the cost as a function of the rail freight transport

volume over the entire network.

Effect of varying train speed on key performance characteristics

We measure the impact of varying train speeds on the following key transport

characteristics: number of locomotives used, solution cost, mean pulling power of a consist, and

mean miles traveled per consist. We start with a solution with specified travel times on each

train. We then proceed to decrease travel times by steps of five percent and measure the impact

on the transport characteristics. We then repeat the test but this time increasing travel times by










steps of five percent. The results of these tests are presented in Table 3-7 and Figure 3-7. The

consist flow formulation was able to solve all these instances in less than two minutes of

computational time.

We draw the following conclusions from this study:

* As the train travel times increase, the solution cost increases as a quadratic function with
an increasing slope.

* The number of locomotives used also increases as shown in the table; however, the mean
miles per consist remains roughly constant.

* The consist flow formulation is robust since it solves all the instances in less than two
minutes of computational time.

Increasing train speeds improves efficiency of the network and leads to lesser scheduling

costs. However, it may also lead to an increase in other costs like fuel consumption cost, safety,

etc. The railroad can use the model to perform cost-benefit analysis to trade-off the increase in

cost of operations with the savings in scheduling costs and consequently determine their optimal

strategy .

3.6 Summary and Conclusions

Our research builds upon our previous work on railroad locomotive scheduling. We focus

on improving the planning version of the problem, where we assign locomotive types to various

trains. We extend the approach on several dimensions by adding new constraints to the planning

problem required by the railroads, and by developing additional formulations necessary to

transition solutions of our models to practice. The maj or contribution is to suggest a new

approach of routing consists (a group of locomotives) rather than routing individual locomotives.

We show through our computational tests that even though routing of consists seems to restrict

the solution space of the LPP, if we create good consists, we can get almost as good solutions as

with the earlier formulations. This is a very important observation since solutions of the consist










formulation are much easier to implement, cause less train delays, and allow greater flexibility

for mix-and-match for locomotive dispatchers. Further, we found that the consist formulation

runs faster and is more robust than the earlier flow-based formulations. Another important

contribution in the chapter is to enable a railroad to progressively move towards an optimal

locomotive plan in several smaller and realistic steps by solving a sequence of incremental LPPs.

Finally, we also added important practical features such as accounting for foreign power and

cab-signal locomotives, which are critical to generating implementable locomotive plans.

The locomotive planning model creates a blueprint for use by managers to assist them in

making day-to-day decisions regarding locomotive assignments. We demonstrate the usefulness

of this model by performing extensive case studies to evaluate the impact of varying minimum

connection times, freight transport volumes, and train speeds (or travel times). In the future, we

hope to develop tools for use by tactical locomotive dispatchers to assign locomotives by specific

tail numbers. This real-time model will strive to return the network to plan, while maintaining

fluidity and minimizing overall costs. The locomotive planning models described will form the

core of the real-time locomotive models.









Table 3-1. Set of input consists.
Index # Consists Consist Set Horsepower
1 3 2[SD40], 3 [SD40], 3 [CW40-8] 6000, 9000, 12000
2 5 & 2[CW60AC], 2[CW40-8]+1[SD40] 12000, 11000
3 7 & 1[CW40-8] + 2[SD40], 2[CW44AC] 10000, 8800
4 9 & 2[CW40-8], 2[SD40] + 1[SD60I] 8000, 9800
5 11 & 2[CW40-8] + 1[CW60AC], 1[CW40-8] + 1[SD40] 14000, 7000
6 13 & 1[SD60I] +1[GP40], 1[CW44AC] +1[SD40] 6800, 7400
7 15 & 4[SD40], 2[GP40] 12000, 6000
8 17 & 2[SD60I], 3[GP40] 7600, 9000

Table 3-2. Comparison of formulations: Scenario 1


Table 3-3. Comparison of formulations: Scenario 2
382 trains, 6 locomotive types, 87 stations
Consist formulation Hybrid formulation
# of Locos Locos
consists used Cost ($) Time (sec) Status Used Cost ($) Time (sec) Status


388 trains, 6 locomotive types, 87 stations
Consist formulation


Hybrid formulation
Locos


# of
consi sts
3
5
7
9
11
13
15
17


Locos
used
1,376
1,330
1,183
1,051
1,047
1,045
1,047
1,047


Cost ($) Time (sec)


used
1,338
1,285
1,141
1,052
1,051
1,057
1,058
1,056


Cost ($)
9,671,012
9,402,383
8,337,573
8,164,544
7,994,043
7,923,847
7,833,838
7,833,073


Time (sec)
120.0 (e
120.0

450.0
600.0
600.0
1,000.0
1,000.0
1,500.0


Status
Optimal
Optimal
Optimal
Optimal
Optimal
Optimal
Optimal
0.1% gap


Status
0.4% gap
0.1% gap
0.6% gap
4.1% gap
1.7% gap
8.6% gap
6.4% gap
6.7% gap


9,991,949
9,789,957
8,597,982
8,221,321
8,118,454
8,062,075
7,995,065
7,995,065


2.9
45.0
10.8
4.8
9.1
92.6
114.0
120.0


Optimal
Optimal
Optimal
Optimal
0.1% gap
0.6% gap
1.8% gap
1.7% gap
(c)


1,361
1,312
1,166
1,060
1,056
1,066
1,071
1,071


9,813,393
9,573,504
8,517,248
8,282,831
8,179,846
8,112,917
7,990,316
7,990,300


347.0
450.0
450.0
600.0
600.0
1,200.0
1,200.0
1,800.0


Optimal
0.4% gap
1.4% gap
2.6% gap
2.3% gap
8.1% gap
4.2% gap
4.9% gap


1,388 10,071,804


120.0
13.1
11.4
34.6
120.1
450.0
450.0
450.0


1,343
1,201
1,064
1,062
1,056
1,062
1,063


9,871,203
8,731,696
8,383,781
8,301,766
8,247,947
8,204,256
8,204,160










Table 3-4. Computational


results of incremental locomotive planning.


Penalty
Value
1,800
1,600
1,400
1,200
1,000
800
600
500
400
300
200
100
0


Difference
5.5%
5.5%
6.3%
7.0%
7.4%
10.5%
19.4%
22.1%
26.4%
28.3%
36.8%
60.6%
81.0%


Locos
Used
1,463
1,463
1,430
1,393
1,382
1,352
1,214
1,175
1,159
1,141
1,146
1,130
1,128


Time (min)
10.0
10.0
10.0
10.0
10.0
10.0
10.0
10.0
10.0
10.0
10.0
10.0
10.0


Table 3-5. Effect of varying the minimum connection time.
Min Scenario 1: 9 Consist Types Scenario 2: 11 Consist Types
Connection


Time (hrs)
0
1
2
3
4
5
6
7
8
9
10


Cost ($) Locos Used


Time (sec)
19.8
7.5
4.0
2.6
2.9
10.0
14.3
7.2
23.2
20.6
12.3


Cost ($)
7,408,113
7,628,916
7,832,533
8,010,123
8,218,477
8,392,475
8,617,059
8,778,249
9,042,940
9,165,863
9,306,191


Locos Used
903
943
973
1,009
1,047
1,083
1,131
1,164
1,221
1,245
1,274


Time (sec)
38.3
3.3
16.3
5.5
4.2
4.2
9.7
34.6
86.8
57.7
37.7


7,497,798
7,734,067
7,926,831
8,112,888
8,330,598
8,506,699
8,732,819
8,896,129
9,163,605
9,277,919
9,439,117


903
947
977
1,015
1,049
1,081
1,127
1,159
1,221
1,245
1,277










Table 3-6. Effect of varying transport volumes.
% increase in Mean tonnage Locos
tonnage of trains Used
-20 6,183 1,026
-15 6,570 1,026
-10 6,956 1,042
-5 7,342 1,040
0 7,729 1,049
5 8,115 1,079
10 8,502 1,117
15 8,888 1,171
20 9,275 1,214

Table 3-7. Effect of varying train travel times.


Solution
Cost ($)
7,502,802
7,588,421
7,726,579
7,910,331
8,120,134
8,437,334
8,812,467
9,296,423
9,635,790


Mean pulling
power/consist
10,099
10,373
10,464
10,841
11,093
11,457
11,828
12,483
12,715


Mean miles/
consist
405.05
405.04
404.17
405.14
403.73
403.86
405.27
403.98
405.12


% increase in
travel time
-20
-15
-10
-5
0
5
10
15
20


Locos
Used
915
937
975
1,003
1,049
1,073
1,111
1,148
1,171


Solution
Cost ($)
6,959,179
7,189,839
7,531,424
7,778,318
8,120,834
8,383,096
8,702,847
8,967,099
9,194,210


Mean pulling
power/consist
11,237
11,236
11,199
11,157
11,093
11,197
11,151
11,056
11,038


Mean miles/
consist
403.20
404.67
407.52
404.78
403.73
405.00
404.07
405.12
404.92












One-Day Scheduling Problem:
Transform the problem to the _
one-day scheduling problem
and solve it.


Seven-Day Scheduling
Problem: Reoptimize one-day
locomotive schedule to
determine the seven-day
schedule.


Determine light travel Determine a seven-day
assignments (possibly infeasible) solution.

Determine train-train Solve a sequence of single-
connections commodity flow problem to
obtain a feasible seven-day
Determine active & deadhead solution.
assignments
Improve solution using VLSN
search
Improve solution using VLSN
search



Figure 3-1. Overview of the locomotive scheduling algorithm











Train Arcs Ground Nodes

/ 1 Train Arcs
Arrival /
Nodes 1C
O ~ ~Train 1> ------ Deaur V
INodes
Time ~Train 4 O


O ~ ~Train 2>0 -----




...L.. Train 5 O
I
Train3



... ..... Train 6>O


Train arcs:

Connection arcs: ..........

Ground arcs: - )


Figure 3-2. A part of the space-time network.





-- Scertrio 1 Serario 2




Samonm






3 5 7 9 11 13 15 17 19
NaItmer of Consists

Figure 3-3. Solution cost of the consist formulation vs. number of consists.























Consist Optimization Problem





8,500,000



8 000 000



7,500,000




O 2 4 6 8 10 12 14 16

Number of Consists




Figure 3-4. Solution cost vs. number of consists.

$10o,000,000o


S9 consist types
11 Iconsisttypes


$9,500,000



$9,OOO, OOO



$8,500,000




$8,OOO, OOO



$7,500,000



$7,OOO, OOO


O 123456789101

Mininurn Cornection tirne~ (hr~)



Figure 3-5. Solution cost vs. minimum connection time.














10.000.000


9,500,000





S8,500,000
O
8,000,000


7,500,000



6,000 6,500 7,000 7,500 8,000 8,500 9,000 9,500

Mean tonnage




Figure 3-6. Solution cost vs. transport volumes.



y=11D1.7X2+556+E0








-2 -5 -1 5 1 5

% icras i tavl im


Fiue37 ouincs s.%ices ntae ie









CHAPTER 4
THE LOCOMOTIVE ROUTINTG PROBLEM

4.1 Introduction

The obj ective of the LPP is to assign locomotive types to trains in a cyclic train schedule,

while honoring several operational constraints and minimizing the overall cost of assignment.

Our models to solve the LPP, described in Chapter 3, assign locomotive types to trains in the

schedule ensuring that every train in the weekly repeating schedule gets sufficient pulling power,

locomotive flows are balanced, and several other operational constraints are satisfied; however,

they do not account for the fueling and servicing feasibility of individual locomotive units. We

bridge this gap and develop methods that can be used to route locomotive units on fueling and

servicing friendly cycles. Locomotive plans or schedules are blue prints based on which the

railroads manage their operations in real-time; our research is hence a vital cog in the area of

locomotive management since it makes the blue-print more realistic and implementable.

The LRP involves routing each locomotive unit on a cyclic sequence of trains so that it can

be fueled and serviced as necessary; while at the same time satisfying all other business and

operational constraints considered in the LPP. We refer to the sequence of trains on which a

locomotive unit travels as a locomotive route. Fueling feasibility requires that each locomotive

route has sufficient fueling opportunities to ensure that the locomotive does not run out of fuel

(out-of-fuel event). This translates to the constraint that every locomotive needs to have a fueling

opportunity at least once for every F miles (900 miles) of travel. Similarly, servicing feasibility

requires that each locomotive route has sufficient servicing opportunities and this translates to

the constraint that every locomotive needs to have a servicing opportunity at least once for every

S miles (3,000 miles) of travel. Suppose all the stations in the network support fueling and

servicing, any feasible solution to the LPP could be trivially decomposed into a fueling and









servicing friendly routing of locomotives using a straight forward polynomial-time cycle

decomposition algorithm (Ahuja, Magnanti, and Orlin (1993)). However, typically only 50% of

the stations on the train network support fueling and 30% of the stations support servicing, and

this makes the LRP an extremely complex combinatorial optimization problem. Indeed, this

problem remains practically unstudied and unsolved, and our chapter reports the first attempt to

model and solve the LRP using optimization methods.

The LPP (Ahuj a et al. (2005), Vaidyanathan et al. (2007b)) is analogous to the well studied

airline fleet assignment problem (Abara (1989), Talluri (1996), and Rexing et al. (2000)) and the

LRP is analogous to the well studied aircraft maintenance routing problem (Clarke et al. (1997),

Gopalan and Talluri (1998), Barnhart et al. (1998), and Talluri (1998)). Integrating airline fleet

assignment and maintenance routing into a single problem makes the problem very hard to solve.

Hence, the predominant approach adopted is sequential; i.e. the fleet assignment problem is

solved first to fix the assignment of aircraft types to flights, and the aircraft routing problem is

solved next to route individual aircraft. Several researchers have worked on the aircraft routing

problem. Clarke et al. (1997) present a mathematical formulation for the aircraft routing problem

and discuss its similarity with the asymmetric traveling salesman problem. Gopalan and Talluri

(1998), and Talluri (1998) describe methods to generate aircraft routings that satisfy the four-day

maintenance requirement. In another study with a different obj ective, Feo and Bard (1989) study

the maintenance location problem to find the minimum number of maintenance stations required

to meet the specified 4-day maintenance requirements for a proposed flight schedule. The only

study which considers the integrated fleet assignment and aircraft routing problem is due to

Barnhart et al. (1998). They use a branch-and-price based approach to solve the integrated airline









fleet assignment and aircraft routing problem. However, even for small problems with 150-200

flights their approach takes 3-4 hours of computational time.

The study of various locomotive scheduling models has also been reported in the literature;

however none of these consider the fueling and servicing requirements of locomotive units. In

Chapter 3, we survey the pre-existing research on the LPP. The most comprehensive multiple

locomotive planning models are due to Ahuj a et al. (2005) and Vaidyanathan et al. (2007b). The

only existing railroad research which considers maintenance requirements is due to Maroti and

Kroon (2005). They consider the problem of routing locomotive units that require maintenance

in the next one to three days and propose a multicommodity flow model to solve this problem.

Their problem definition does not consider fueling requirements and this reason among several

others makes their problem less general than the LRP that we consider.

The existing methods in the literature for aircraft routing cannot be directly applied to the

LRP. This is because the LRP is more complex than the aircraft routing problem due to the

following reasons: (a) Every airport on the airline network supports fueling, making fueling

feasibility a non-issue; however every station on a railroad network does not support fueling; (b)

Airlines do not operate during the night and this gives added flexibility to satisfy maintenance

requirements whereas railroads operate round the clock; (c) Flight legs on the airline network are

assigned to only one aircraft whereas trains on a railroad network are usually assigned several

locomotive units; and (d) Aircraft routing problems are typically solved for a few hundred flights

whereas the LRPs need to be solved for schedules with a few thousand trains. Also, note that the

integrated approach used by Barnhart et al. (1998) takes 3-4 hours of computational time even

for a problem with 150-200 flights; this is a very small problem from the railroad perspective.

Due to these reasons, we adopt a two stage decomposition approach to solve the problem. In the









first stage we solve the LPP, using existing methods, to obtain an assignment of locomotive

types to trains (locomotive schedule). In the second stage, we use the methods described in this

chapter to solve the LRP and route locomotive units on fueling and servicing friendly cyclic

routes (locomotive routes). While solving the LRP, we fix the assignment of locomotive types to

trains based on the output of the LPP, and use the flexibility of varying the connections of

locomotives between trains (train connections) to achieve fueling and servicing feasibility. We

illustrate the importance of train connections through the following example. Consider a

locomotive that arrives at a station on train A having traveled 500 miles after its last fueling. Let

this locomotive have the option to connect to either train B or train C. While train B has a length

of 300 miles and terminates at a fueling location, train C has a length of 500 miles and also

terminates at a fueling location. If the locomotive connects from train A to C, then the total

length of travel between fueling opportunities becomes 1,000 miles (> 900 miles) and leads to an

out-of-fuel event. On the other hand, if the same locomotive connects from train A to B, the total

length of travel between fueling opportunities is 800 miles and the locomotive route is fueling

feasible. However, note this example considers a local single connection (or two trains) case but

fueling and servicing feasibility is often related to more than one connection (or a sequence of

trains). We formalize this notion by introducing the concept of strings. Strings enable us to

account for the fueling and servicing feasibility of a sequence of trains on which a locomotive

unit travels. Hence, each locomotive route is made up of a sequence of strings.

Since we fix the assignment of locomotive types to trains, the LRP can be solved as an

independent problem for each locomotive type. Our solution approach for the LRP involves the

following steps. First, we enumerate alternative fueling and servicing feasible paths (or strings)

between service stations in the train network using dynamic programming. Once we enumerate










the strings, we formulate an integer program called string decomposition problem (SDP) on a

suitably defined space-time network to decompose the locomotive schedule into flows on strings.

The output of the SDP can then be assembled into fueling and servicing friendly cycles using the

standard polynomial-time cycle decomposition algorithm (Ahuj a, Magnanti, and Orlin (1993)).

However, SDP is NP-Complete and has millions of decision variables. We develop an

aggregation-di saggregation based method to solve thi s problem efficiently. Our aggregation-

disaggregation method involves two steps. In the first step, we formulate and solve a much

smaller aggregated SDP and in the second step we disaggregate the solution of the first stage to

obtain a solution to the original problem. Finally, we develop necessary constraints that can be

added to the LPP so that the planning model also considers fueling and servicing constraints to

some extent.

Our maj or research contributions are:

* We develop a modeling framework and a multi-stage decomposition solution approach for
the LRP which is a previously unstudied and unsolved problem. This problem is more
complex than the well studied analogous aircraft routing problem.

* We formulate the LRP as an integer programming string decomposition problem (SDP) on
a suitably defined space-time network and prove that the problem is NP-Complete.

* We develop efficient dynamic programming algorithms to enumerate strings which are the
decision variables in the SDP.

* Due to the combinatorial nature of strings, the SDP has close to a million decision
variables. We develop an aggregation-di saggregation based algorithm to solve thi s
extremely large NP-Complete problem to near optimality within a few minutes of
computational time.

* We present extensive computational results to validate the performance of our approach
and present case studies of our algorithms on real-life data provided by a Class I US
railroad.

We present the first comprehensive study of the LRP, which has remained practically

unstudied and unsolved. We model the LRP using network based integer programming









techniques and design efficient algorithms to solve it. Our computational results demonstrate the

efficacy of our algorithms; the algorithms that we present produce near optimal solutions within

5 minutes of computational time on several real-life instances obtained from a Class I US

railroad. We also demonstrate the usefulness of our model to perform strategic analysis through

suitable case studies. We believe that this research is a crucial step in our overall obj ective of

enabling railroads to manage their locomotive resources more efficiently through optimization

techniques.

4.2 Notations and Terminology

Train Schedule: The train schedule (or train network) contains the set of trains which

operate every week. Each train has the following attributes: train ID, departure station, departure

time of the week, arrival station, arrival time of the week, and duration. Railroads typically have

a train schedule that is periodic. We assume that the train schedule is weekly periodic and hence

we refer to trains in the weekly train schedule as weekly trains. Each weekly train is identified by

the unique combination of its train ID and day of operation. For e.g. Train ID TR0 1 which

operates on Monday, Tuesday, and Thursday corresponds to three weekly trains, TR01-Monday,

TR01-Tuesday, and TR01-Thursday. TR01 is also referred to as a daily train.

Locomotive Schedule: The locomotive schedule specifies the assignment of locomotive

types to all trains in the week such that all operational constraints, other than the fueling and

servicing requirements, are satisfied. These constraints include pulling effort and horse power

constraints for each train, flow balance for each locomotive type, fleet-size constraints, flow

upper and lower bounds on each train, and weekly repeatability of locomotive assignments.

Decomposed Locomotive Schedule: The locomotive schedule can be decomposed with

respect to the different locomotive types in the fleet. The decomposed locomotive schedule

which corresponds to a particular locomotive type considers only the trains that carry that










locomotive type and also considers only assignments of that particular locomotive type. For e.g.

Suppose we consider a schedule with three trains, TR0 1 has an assignment of one unit of type A

and one unit of type B, TRO2 has an assignment of two units of type A, and TRO3 has an

assignment of two units of type B. Then, the decomposed locomotive schedule corresponding to

locomotive type A will contain TR0 1 with as assignment of one unit and TRO2 with an

assignment of two units; and the decomposed locomotive schedule corresponding to locomotive

type B will contain TR01 with an assignment of one unit and TRO3 with an assignment of two

umits.

Decomposed Train Schedule: The set of trains in a decomposed locomotive schedule of a

particular locomotive type constitutes the decomposed train schedule of that locomotive type.

Fueling Station: A fueling station is a station that supports fueling of locomotives. Every

fueling station has an associated fueling time and fueling cost per gallon.

Servicing Station: A servicing station is a station that supports servicing of locomotives.

All servicing stations are also fueling stations. Each servicing station has an associated servicing

time and servicing cost.

Train Connection: Refers to transfer of locomotives from an inbound train at a particular

station to an outbound train at the same station.

Minimum Connection Time: This refers to the minimum time required for a train

connection to be made. It is a function of the station at which the connection is made.

String: A string is a connected sequence of trains t, t2 -. tn ; i.e. the destination of train


t, is the same as origin of train toI

Fuel String: A fuel string is a connected sequence of trains such that a locomotive unit

traveling on this sequence can be fueled feasibly.










Service String: A service string is a connected sequence of trains such that a locomotive

traveling on this sequence can be fueled and serviced feasibly.

4.3 Overview of Our Approach

We present our approach to solve the fueling and servicing friendly LRP in Figure 4-1.

This flowchart presents the various steps in our approach and how these steps relate to each

other. In subsequent sections, we then elaborate on details. Note that step 1 involves solving the

LPP and steps 2-4 constitute solving the LRP. The LRP is solved as an independent problem for

each locomotive type

4.4 The Locomotive Planning Problem (LPP)

Our approach to solve the fueling and servicing routing problem is a two stage

decomposition approach where in the first stage we solve the LPP and in the second stage we

solve the LRP. The locomotive schedule obtained from the LPP is hence one of the inputs that

goes into the LRP. In Chapter 3, we present our research on the LPP. The models developed

there give us a locomotive plan that satisfies all constraints other than the fueling and servicing

constraints.

We develop methods to incorporate fueling and servicing constraints. We fix the

assignments of locomotive types to trains based on the solution to the LPP and solve the LRP

which uses the flexibility of modifying train connections to enforce fueling and servicing

feasibility of locomotive routes. Since we fix the assignment of locomotive types to trains after

the LPP, the LRP can be solved as an independent problem for each locomotive type. In our

description of the LRP in Sections 4.5-4.8, we therefore assume that there is only one locomotive

type.









4.5 Fuel and Service String Enumeration Algorithms

In the introduction, we mentioned that the LRP uses the flexibility of switching train

connections in order to achieve fueling and servicing feasibility. In this section, we formalize this

notion by defining the concept of strings and also developing algorithms to enumerate strings.

The obj ective of the LRP is to route locomotive units in cycles in such a way that each unit has

sufficient fueling and servicing opportunities. Consider a unit that travels on one such cycle. This

locomotive will visit several stations, some which are servicing stations, some which are fueling

stations, and some which are neither. Suppose this cycle is a fueling and servicing friendly cycle.

Then, by definition this would imply that the sequence of trains that the locomotive takes

between fueling stops is a fuel string and the sequence of trains that the locomotive takes

between servicing stops is a service string. This observation is the basis of our approach to solve

the LRP. Our approach involves enumerating strings and then decomposing the locomotive

schedule into flows on strings. In this section, we develop algorithms to enumerate strings

efficiently. We next formally define fuel strings and then describe methods to enumerate them.

Fuel string

* A fuel string is a sequence of trains t, t2 -... tn Which satisfies the following properties:
* It is connected i.e. arrival station of t = departure station oft, I
* Departure station of tz and arrival station of tn are fueling stations.
* Length of the sting is less than F miles.
* The string is minimal; i.e., a fuel string cannot pass through an intermediate fueling station
or a fuel string cannot contain another fuel string as a sub-sequence.
* No train repeats in the string.

Valid fuel sequence and algorithmic logic

We define a valid fuel sequence as a sequence of trains which satisfies all the properties of

a fuel string except that it does not terminate at a fueling station. Thus, a valid fuel sequence can

be obtained from any fuel string by deleting the last train from it. Conversely, any fuel string can









be represented as a valid fuel sequence plus one last train which terminates at a fueling station.

Our dynamic programming algorithm uses this property to enumerate fuel strings. The algorithm

starts with a seed set of trivial valid sequences and iteratively builds longer sequences from this

set. The algorithm is based on repeated application of the following inductive logic: Consider a

situation when we have the set of all valid fuel sequences of length k where length represents the

number of trains in the sequence. Consider a train that departs from the destination of the last

train in the valid sequence. When this train is added to the valid sequence to create an augmented

sequence, the following possibilities could occur:

* The augmented sequence is a valid fuel sequence in which case we store it in the set of
valid fuel sequences of length k+1.

* The train which is being added to the valid fuel sequence is already a part of the valid fuel
sequence in which case we do not store the augmented sequence in the set of valid fuel
sequences of length k+1.

* The length of the augmented sequence is greater than F miles in which case we do not
store it in the set of valid fuel sequences of length k+1.

* The augmented sequence is a fuel string in which case we store it in the set of fuel strings.

Fuel string enumeration

The fuel string enumeration (FSE) algorithm starts with a set of valid fuel sequences of

length one. By definition the set of valid sequences of length one contains all trains which

originate at a fueling station and do not terminate at a fueling station. The algorithm then

iteratively generates longer fuel strings until all such possibilities have been enumerated. We

now give the notation and description of the algorithm.

Let Pk denote the set of valid fuel sequences of length k, FS denote the set of fuel strings,

and Trains denote the set of weekly trains in the schedule. Then, the fuel string enumeration

algorithm can be formally written as shown in Figure 4-2.










The number of valid sequences and fuel strings is finite. Each execution of the inner-most

loop produces a longer valid sequence, a fuel string, or fathoms that particular valid fuel

sequence. Hence, FSE terminates in a Einite number of steps. We now define service strings and

extend the dynamic programming approach to enumerate service strings.

Service string

A service string is a sequence of trains t, t2 -... tn Which is characterized by the

following properties,

* It is connected i.e. arrival station of t = departure station oft, I
* Departure station of tz and arrival station of tn are service stations.
* Length of the string is less than S miles.
* The string is minimal; i.e., a service string cannot pass through an intermediate servicing
station. This implies that a service string cannot contain another service string as a sub-
sequence.
* No train repeats in the string.
* The string is also fueling feasible.

Since all service stations in the network also support fueling, it follows that for the last

condition to be satisfied, every service string has to be constructed from one or more connected

fuel strings.

Valid service sequence and algorithmic logic

We define a valid service sequence as a sequence of trains which satisfies all properties of

a service string except that it does not terminate at a service station. Therefore, any service string

can be represented as a valid service sequence plus one fuel string which terminates at a

servicing station. Our dynamic programming algorithm uses this property to enumerate service

strings. The algorithm starts with a seed set of trivial valid sequences and iteratively builds

longer sequences from this set. Consider a situation when we have the set of all valid service

sequences of length k where length represents the number of fuel strings in the sequence.

Consider a fuel string that departs from the destination of the last fuel string in the valid










sequence. When this fuel string is added to the valid sequence to create an augmented sequence,

the following possibilities could occur:

* The augmented sequence created is a valid service sequence in which case we store it in
the set of valid service sequences of length k+1.

* A train which belongs to the added fuel string is already a part of valid service sequence of
length k in which case we do not store the augmented sequence in the set of valid service
sequences of length k+1.

* The length of augmented sequence is greater than S miles in which case we do not store it
in the set of valid service sequences of length k+1.

* The augmented sequence forms a service string in which case we store it in the set of
service strings.

Service string enumeration

The service string enumeration (SSE) algorithm starts with a set of valid fuel sequences of

length one. By definition the set of valid sequences of length one contains all fuel strings which

originate at a service station but do not terminate at a service station. The algorithm then

iteratively generates longer service strings until all such possibilities have been enumerated. We

now give the formal description of the algorithm.

Let Pk denote the set of valid service sequences of length k, FS denote the set of fuel

strings, SS denote the set of service strings, Trains denote the set of weekly trains in the

schedule, and Trains(1) denote the set of weekly trains that are a part of string 1. Then, the fuel

string enumeration algorithm can be formally written as shown in Figure 4-3.

The proof for finiteness of SSE follows in a similar manner to that of FSE. However, since

the number of fuel and service strings is an exponential function of the problem size, both these

algorithms are exponential time algorithms. Next, we formulate the string decomposition

problem which is used to decompose a locomotive schedule into flows on service strings.









4.6 String Decomposition Problem (SDP)

In the previous section, we described methods to enumerate service strings. These service

strings are the decision variables in the SDP. The obj ective of the SDP is to determine the

minimum cost decomposition of a locomotive schedule into flows on service strings. Due to the

manner in which service strings are constructed, it follows that a locomotive schedule when

decomposed into flows on service strings will give fueling and servicing compliant locomotive

routings. We formulate the SDP as an integer programming problem on a suitably defined space-

time network. We first describe the construction of space-time network and then the integer

programming formulation. We also show that string decomposition is NP-Complete by a

polynomial-time reduction from the set partitioning problem which is known to be NP-Complete

(Garey and Johnson (1979)).

4.6.1 Space-Time Network

We denote the space-time network by G (N, A) where N is the set of nodes and A is the set

of arcs in the network. Each node in the network represents an event. The events that we

consider are the arrival of weekly trains at service stations and departure of weekly trains from

service stations. For each train arrival at a service station, we create a train-arrival node at that

station. Once a locomotive arrives at a station, it needs a minimum connection time before being

assigned to the next train; i.e., the time at which a locomotive on a train is available for future

assignment is the arrival time of the train plus the minimum connection time. We call this time

the ready time of the train. To each train-arrival node we assign a time attribute equal to the

ready time of the corresponding train. For every train which departs from a service station, we

create a train-departure node at the departure station of the train. To each train-departure node,

we assign a time attribute equal to the departure time of the corresponding train.










We now describe the construction of arcs on the network. Let S be the set of service strings

enumerated using the methods described in the previous section. Let first(s) denote the first train

in string s and last(s) denote the last train in string s ES Since every service string s E S by

definition, originates at a service station and also terminates at a service station, the space-time

networks contains a train-departure node n, E N that corresponds to first(s) and a train-arrival

node n2 E N that corresponds to last(s). For each string s, we construct an arc between its

corresponding nodes n, and n2 The other set of arcs on the network are train connection arcs.

At each service station we construct train connection arcs (CoArcs) between all combination of

inbound train and outbound train to model the different possibilities of inbound locomotives

being assigned to outbound trains.

The following important property directly follows from the construction of the space-time

network.

Property 4.1. A locomotive which travels on a cycle in the space-time network given

above can be fueled and serviced feasibly.

Proof: Consider a cycle on the space-time network G (N, A). The cycle will consist of a

service string, a connection arc, another service string, and so on until it loops back to the first

service string. Since by definition, a locomotive traveling on a service string can be fueled and

serviced feasibly, the result follows. *

In Figure 4-4, we illustrate a part of the space-time network at a particular service station.

This station has two incoming trains (two train-arrival nodes), two outgoing trains (two train-

departure nodes), four incoming strings, seven outgoing strings, and four train connections. Note

that the overall space-time network contains one such component at each service station and the

strings connect these components to each other.









4.6.2 Integer Programming Formulation

We formulate the SDP as an integer programming problem on the space-time network. The

obj ective of this formulation is to partition the locomotive assignment on each train (locomotive

schedule) into flows on the service strings that pass through it while ensuring locomotive flow

balance at each station. We now layout the notation and formally define this problem.

Trains: Set of all weekly trains. Indexed by 1.

CoArcs: Set of all train connection arcs.

S: Set of service strings.

et,a : Event corresponding to the arrival of train I at a service station.


1,d : Event corresponding to the departure of train I from a service station.

S, : Set of service strings ending with train 1.

St : Set of service strings beginning with train 1.

at~s = 1 if train I is a part of string s E S O otherwise.

cs : Cost of a locomotive unit traveling on string s ES .

f : Number of locomotives assigned on train I in the locomotive schedule.

O: Set of arcs which cross the count-time. The count-time is a reference time at which we count

the number of locomotives in the system. It is usually set as Sunday mid-night.

r : Number of times string s ES crosses the count-time.

The decision variables are as follows:

x, : Number of locomotives assigned to string s ES .


y, : Number of locomotives assigned on train connection arc j e CoArcs.

G: Ownership cost of a locomotive.










The obj ective function is:

M~inI c,x,+ + Gr,x, + 1G
sES st(OnS) JE(OnCoArcs)

The constraints are the following:

al~sxs = J, for all l E Trauins,
as


x = y for all lE Trains4,
seS; Jel(head(1))


Sxs = y ,, for all lE Trains,
stS ]EO(tail(1))


y .


(4.1a)


(4.1b)


(4.1c)



(4.1d)


xs 0 integer,
y, >0


(4.1e)


Constraint (4.1b) is the set partitioning constraint that ensures that the locomotive

assignment on each train is distributed completely on the service strings that pass through it.

Constraints (4.1c) and (4.1d) are the flow balance constraints at each node on the space-time

network and they ensure that the total flow entering a node is equal to the total flow leaving a

node. The obj ective function (4.1la) is set up to minimize the total cost of fueling and servicing

and also the ownership cost of locomotives used. Railroads operate in such a way that whenever

a locomotive fuels, its tank is topped off. Based on this assumption and the average fuel burn rate

of each locomotive, the cost of each service string cs can be computed considering the cost of

servicing and fueling at the final station in the string and the costs of fueling at the other fueling

stations encountered en-route. Note that once we obtain a solution to the SDP, the arc flows can

be converted into flows on cycles using a standard polynomial time cycle decomposition

algorithm (Ahuja, Magnanti, and Orlin (1993)). From Property 4.1, it directly follows that each









of these cycles will be fueling and servicing friendly cycles and hence, constitute a solution to

the LRP.

We now prove that the SDP is NP-Complete. Clearly, a certificate for the SDP can be

verified in polynomial time. We next describe a polynomial-time reduction from the set

partitioning problem which is known to be NP-complete (Garey and Johnson (1979)) to a special

case of the SDP. The set partitioning problem is defined as follows "Given a universe U of n

elements, a collection of subsets of U, S = {S,,...,Sk), does there exist a sub-collection of S that

covers all the elements of U exactly once?" This problem can be formulated mathematically as

follows :

xs : Binary variable which indicates whether a set s ES is chosen or not

;( 1, if element l EU is contained in set s ES0 tews



als x, = 1, for all le U ,
sE S

xs E (0, 1) .

We reduce the set partitioning problem to a special case of the SDP as follows. For each

l EU we create a train I which departs from and also arrives at service station A. Let the set of

strings S be train sequences corresponding to the sets in S. For e.g., If S, = (13,1 3,...,1 ly then the

correpondil~ng strinngo isp the lnr seu ncof trains {1,3,.,. We create a pace-time network for


these set of input trains and strings and set the flow (/) on each train to one. Now, note that for

this specially constructed SDP, Constraint (4.1Ib) is identical to set partitioning constraint given

above and the flow balance constraints are automatically satisfied because each string originates

and terminates at the same station, and can therefore be relaxed. Hence, there is a one-to-one









correspondence between the set partitioning problem and the special case of SDP that we have

constructed and the result follows. We state this result in the form of the following theorem:

Theorem 4.2. The string decomposition problem (SDP) is NP-Complete.

In the next section, we address the computational complexities of the problem and also

describe algorithmic approaches to solve this problem in an efficient manner.

4.7 A Tractable Solution Approach: Aggregation and Disaggregation

A typical weekly train schedule has around 3,000 trains and the railroad network has

around 100 stations out of which roughly 50% support fueling and 30% support servicing. For a

problem of this size, the number of service strings runs into several million. Hence, a direct

application of string enumeration to this large problem is not promising in terms of

computational time and tractability. Another serious computational issue is the inherent

complexity of the SDP. In addition to being NP-Complete, this problem has around a million

decision variables, one corresponding to each service string. Hence, a direct branch-and-bound

approach using commercial software to solve the SDP is not a viable approach.

In this section, we develop a tractable solution approach to solve the LRP. We use the

concept of aggregation and disaggregation. The basic idea behind this approach is that instead of

solving a large problem directly, we divide our algorithm into two stages. In the first stage, we

construct a smaller aggregated model which can be solved quickly. Once we obtain the solution

to the aggregated model, we use this information to disaggregate the solution and obtain a

solution to the original problem. While this idea is quite intuitive to grasp, there are some issues

which need to be considered to ensure that the solution produced using this approach in close to

the global optimal solution. We next present our aggregation-disaggregation based algorithm and

describe how we use this approach to effectively solve the LRP.









4.7.1 Aggregated Model

The aggregated model is an approximation of the original model. However, this

approximate model is much smaller than the original problem and is hence solvable more

quickly. This leads to the issue of trading-off between the degree of approximation and the ease

of solution, i.e., an aggregate model may solve very quickly but may not produce good solutions

or the aggregate model may be almost exact but may take a very long time to produce a good

solution. The performance of an aggregated model depends on a few factors which need to be

addressed while designing the aggregated model. The first question that needs to be asked while

designing an aggregated model is "which entities to aggregate?" The second question that needs

to be asked is "how to ensure that the aggregated model is as close as possible to the original

problem?" The closer the aggregated model is to the original problem, the easier it will be to

disaggregate the aggregate solution and obtain near optimal solutions to the original problem. In

the rest of this section, we focus on answering these questions and developing a good

aggregation model. We divide our discussion into two parts: we first focus on the feasibility

aspect of the problem and in the process address the first question. Then, we focus on the

optimality of the problem and in the process address the second question.

The locomotive schedule gives an assignment of locomotive types to weekly trains and is

an input to the SDP. The weekly train schedule consists of a set of daily trains, each with a pre-

specified frequency varying between one and seven. Note that all instances of a daily train in the

week are similar in terms of origin station, destination station, departure time of the day, arrival

time of the day, and duration. The only factors which differentiate these trains are the departure

day of the week, arrival day of the week, and possibly their locomotive type assignments. Based

on this observation, we aggregate all the instances of a daily train in the week (weekly trains)

into a single aggregated daily train. Each aggregated train departs at the corresponding departure









time of the day and arrives at the corresponding arrival time of the day. The total flow on each

daily aggregated train represents the total flow on all weekly trains corresponding to it. The

locomotive schedule obtained after aggregation is called the aggregated locomotive schedule and

the set of trains in this schedule constitute the aggregated train schedule. For e.g., suppose daily

train TR0 1 has a weekly frequency of three and operates on Monday, Tuesday, and Thursday

(TR01-Monday, TR01-Tuesday, and TR01-Thursday) and suppose each of these weekly trains

carries a flow of one locomotive of type A and one of type B. Then in the aggregated locomotive

schedule, aggregated daily train TR0 1 will have a flow of three units of type A and three units of

type B. We refer to a string which is made up of daily trains as an aggregated string.

We formulate an aggregated string decomposition model to decompose the aggregated

locomotive schedule into flows on aggregated strings. The decision variables (or aggregated

strings) of the aggregated model are enumerated using the aggregated train schedule (instead of

the weekly train schedule). We next list the steps to formulate the aggregated string

decomposition model:

* Enumerate the set of service strings using the aggregated train schedule as input and the
service string enumeration algorithm described in Section 4.4.

* Construct a space-time network as described in Section 4.5 but considering the aggregated
strings (instead of strings) and the aggregated train schedule (instead of the train schedule).

* Formulate the aggregated string decomposition problem as described in Section 4.5 but
using the aggregated locomotive schedule (instead of the locomotive schedule) and the
aggregated strings (instead of strings).

Note that the aggregated model is identical in structure to the original model. However, the

size of the aggregated model is several times smaller. The reason for that is aggregation happens

at two levels: (1) decision variables, and (2) constraints. For e.g., consider an aggregated string

made up of daily trains A, B, and C. Let each of these trains have a frequency of four. Then,

there are 4 x 4 x 4 = 64 different strings possible in the original network using the weekly trains









corresponding to A, B, and C (Refer Figure 4-5). However, the aggregated formulation considers

only one aggregate string instead of the 64 strings. Hence, the flow on the aggregated string in

this case represents the cumulative flow on these 64 strings. The decision variables

corresponding to the connection arcs (CoArcs) are also aggregated in a similar manner. Using

this method of variable aggregation, we are able to reduce the number of variables to a few

thousand. Also, in the aggregated model we have only one partitioning constraint for every daily

train instead of one for every weekly train in the original model. Since the average frequency of

daily trains is close to Hyve, the number of partitioning constraints becomes roughly one-fifth that

of the original model. Also, since the number of trains in the aggregated model decreases by a

factor of one-fifth, the number of flow balance constraints also reduces by the same factor. Thus,

the aggregation of variables and constraints results in a very compact formulation and

consequently very fast run times.

We now proceed to state and prove two important properties relating the feasibility of the

aggregated problem and the feasibility of the original problem.

Property 4.3. There exists a feasible solution to the string decomposition problem only if

there exists a feasible solution to the aggregated string decomposition problem.

Proof: Consider a feasible solution F to the string decomposition problem. We can obtain

a feasible solution to the aggregated string decomposition problem by assigning each aggregated

string a flow equal to the total flow on all strings corresponding to it in F. Since F partitions the

flow on all weekly trains and satisfies flow balance at each station, it follows that the assignment

to each aggregated string computed above will partition the flow on each aggregated train and

also satisfies flow balance at each station. The result follows. *










Property 4.4. There exists a feasible solution to the aggregated string decomposition

problem only if there exists a feasible solution to the string decomposition problem.

Proof: Consider a feasible solution F to aggregated string decomposition. We can obtain a

feasible solution to string decomposition by distributing the flow on each aggregated string in F

on the strings corresponding to it in the original network in such a way that the flow on all

weekly trains is partitioned. Since, we merely re-distribute the flows on the aggregated strings,

the total flow entering a station and the total flow leaving a station in both the aggregated

solution and the new solution will be the same. Hence, flow balance at each station is also

satisfied and the result follows. *

We state the results of Property 4.3 and Property 4.4 in the form of the following theorem.

Theorem 4.5. There exists a feasible solution to the string decomposition problem if and

only if there exists a feasible solution to the aggregated string decomposition problem.

We have thus showed the equivalence between the feasibility version of the SDP and the

feasibility version of the much smaller aggregated SDP and have hence addressed the feasibility

aspect of the problem mentioned at the start of this section. The other aspect we need to address

is optimality. The obj ective function of the SDP minimizes total fueling and servicing costs and

the ownership costs of locomotives. We now describe methods to ensure that the aggregated

model takes these costs into consideration.

When we create an aggregated model for a problem, we lose some information about the

original problem. The biggest approximation in the aggregated string decomposition model is

that the information about departure day of the week and the arrival day of the week of weekly

trains are lost. This could lead to the aggregated problem generating bad solutions in terms of

locomotive usage. For e.g. Consider a weekly train A which arrives at a station on Monday at









10:00 AM and another weekly train B that departs from the same station at 11:00 AM on

Sunday. The optimal solution of the SDP is not likely to use the connection between these

weekly trains to route locomotives because the idling time of the locomotive would be extremely

high (six days and one hour). On the other hand, in the aggregated train network, since we do not

consider the arrival and departure days of trains and only consider the arrival and departure

times, the connection time between the corresponding aggregated trains will be just one hour and

hence it is very likely to be used in the solution since it seems to represent an efficient use of the

locomotive resource. However, this is an incorrect representation of reality. We hence define an

estimated connection time for each train connection on the aggregated network. The estimated

connection time between daily trains A and B is computed to represent the most probable

connection time if a locomotive connects between a weekly train corresponding to train A and a

weekly train corresponding to train B. Note that we cannot compute this value exactly unless

both A and B have a frequency of one. We represent the estimated connection time of a train

connection j by t, Each string is made up of possibly several train connections. We estimate the

duration of an aggregated string (t ) by adding the exact durations of the trains belonging to it

and the estimated connection times ( t, ) for the connections that are a part of it. We next describe

how to use these estimated durations to improve the aggregated model.

Consider the objective function of the SDP. The first term c,x, represents the cost of


fueling and servicing for the locomotives traveling on strings. The computation of cs is a

function of the stations encountered en-route, the cost of fueling or servicing at these stations,

and the length of trains that belong to the string and this logic is hence directly applicable to the

aggregated strings. The second part of the objective function C Gr~xS + C y
st(Or S) JE(Or Co.4rcs)









minimizes the total ownership cost of locomotives by counting the number of locomotives

traveling on overnight arcs. Note that in the aggregated problem, it is not straight-forward to

determine the set of overnight arcs or the number of times an aggregated string crosses the count-

time ( rs ). This is because the daily trains do not have arrival and departure day information. We

handle this difficulty in the following manner. We first re-write the objective function of the SDP

in a slightly different though equivalent form. Instead of minimizing the ownership cost of

locomotives flowing on overnight arcs, we now construct the obj ective function in terms of

minimizing the total cost of locomotive-minutes used on all arcs. In the aggregated SDP, since

we cannot know the exc durations, we use the estimated duration of train connections ( t, ) and

the estimated duration of strings (t ) described in the previous paragraph to set up the obj ective

function. The obj ective function now becomes:

M/in Ccrx,+C G tpx, + C G t, y,= [cbx, + C G t y,.
stS stS JECoAvcs stS JECoAvcs

Using this objective function in the aggregated model makes it a much better

approximation of the original problem. Next, we focus on the second stage of our approach

which concerns the disaggregation of the aggregated solution.

4.7.2 Disaggregation Model

We now consider the problem of disaggregating the solution to the aggregated problem to

obtain a solution to the original problem. The proof of Property 4.4 describes a straightforward

method to obtain a feasible string decomposition starting with a solution to the aggregated

problem; however this method may give solutions which use a high number of locomotives and

are hence not optimal. The method we describe in this section disaggregates the solution while

minimizing the number of locomotives used. Note, that after the aggregation stage, the total

fueling and servicing costs are already fixed and do not change in the disaggregation stage.









The inputs to the disaggregation model are:

* Locomotive schedule: This gives the assignment of locomotive types to weekly trains.
* Solution of the aggregated model: This gives the aggregated strings and their locomotive
assignments.

The obj ective of the disaggregation model is to obtain a near optimal solution to the string

decomposition problem; i.e. the obj ective is to re-distribute the flow on each aggregated string on

the strings corresponding to it in the original network while ensuring that the assignment on each

weekly train is covered and minimizing the total number of locomotives used. We next formulate

the disaggregation model as an integral multicommodity flow problem with side constraints on a

suitably defined network.

We denote the network as G (N, A) where N is the set of nodes and A is the set of arcs in

the network. Each node on the network corresponds to an event. The events that we consider are

the arrival of weekly trains at stations and departure of weekly trains from stations. We create a

train-arrival node corresponding to each train arrival and a train-departure node corresponding to

each train departure. We also construct one supply node and one demand node corresponding to

each aggregated string with positive flow ( xs > 0) and define a commodity corresponding to this

string. We set the supply of the corresponding commodity at each supply node to xs and the

supply of all other commodities to zero. Similarly, we set the demand of the corresponding

commodity at each demand node to xs and the demand of all other commodities to zero.

We now describe how to construct arcs. For each weekly train, we construct an arc

connecting its train-departure node and train-arrival node. We also construct connection arcs

(CoArcs) between train-arrival nodes and train-departure nodes at each station to model the

different possibilities for train connections. Let first(s) be the set of weekly trains corresponding

to the first daily train in aggregated string s, last(s) be the set of weekly trains corresponding to









the last daily train in aggregated string s, and trains(s) be the set of weekly trains corresponding

to all the daily trains in s. For each aggregated string s with positive flow( (x > 0 ), we connect its

supply node to the departure nodes of all the trains in first(s) and we also connected the arrival

nodes of all trains in last(s) to the demand node corresponding to s. The disaggregation model

can be formulated as a multicommodity flow problem with side constraints (MCFSC) on the

network constructed above.

N: Set of nodes in the network.

A: Set of arcs in the network. We represent each arc by (i, j).

Trains: Set of weekly trains in the network. Indexed by 1.

CoArcs: Set of connection arcs in the network.

K: Set of commodities indexed by k. We define one commodity for each aggregated string s with

positive flow.

s(k): Represents the aggregated string corresponding to commodity k E K .

Trains(s): Set of weekly trains corresponding to the daily trains in s.

S: Total locomotive assignment on weekly train l E Trains in the locomotive schedule.

bk : Supply/demand vector of commodity k E K .

u : Upper bound on the flow of commodity k E K on arc (i, j) E A .


0, if (i, j) E Trains and (i, j) a s(k)
u =f~,, if (i, j) E Trains and (i, j) E s(k)
00 c, otherwise


t : Duration of arc (i, j) E A .

N: Arc adj acency matrix of G(N,A).

The decision variables are:










xxk: Flow of commodity k E K on arc (i, j) E A .

The obj ective function is

Min t,,x,. (4.2a)
ktK (I 7)& 4

The constraints are:


x k = J for all (i, j) E Tra11ins, (4.2b)
ktK

Nxk = bk, for all k E K, (4.2c)


0 < xxk~ ,, xk integer. (4.2d)

Note that the flow balance constraints at supply nodes, demand nodes, and transshipment

nodes (Constraint 4.2c), and also setting flow upper-bounds on trains as described above ensures

that the flow on each aggregated string is redistributed completely on the strings corresponding

to it. Also, Constraint (4.2b) ensures that the total flow on each weekly train is partitioned among

the disaggregated strings that pass through it. Hence, MCFSC is a valid formulation for the

disaggregation problem. The obj ective function is set up to minimize the total number of

locomotive minutes used.

Theorem 4.6 There is a one-to-one correspondence between feasible solutions to the

disaggregation problem and feasible solution to MCFSC.

The MCFSC is an integral multicommodity flow problem and it is hence NP-Complete

(Garey and Johnson (1979)). Note that Constraints (4.2) are the bundling constraints which link

more than one commodity together and complicate the model and if these constraints were

relaxed, then this problem reduces to |K|I independent minimum cost flow problems. We hence

adopt a sequential commodity-by-commodity approach to obtain a feasible solution to the

disaggregation problem. We first sort the aggregated strings with positive flow in the decreasing









order of their lengths, where length is defined as the number of trains in the string. The reason

we do this is that the aggregated stings with longer lengths have a larger impact on the obj ective

function cost and we would like to optimize them first before moving to shorter strings. For each

aggregated string s, we consider the sub-graph G(Nk(s), Ak(s)) Which contains only those train

arcs for which u r") > 0 and /f~ > 0 We solve a minimum cost flow problem on this sub-graph,

extract out the flows on the disaggregated strings, and update the total unaccounted flow on each

train( (4). This is repeated until the flow on all aggregate strings is disaggregated. The

disaggregation algorithm is formally stated in Figure 4-6.

The algorithm for disaggregation solves |K|I independent minimum cost flow problems

sequentially and is hence a polynomial time algorithm. The feasibility correctness of this

algorithm follows from the fact that it is a special implementation of the general method

described in the proof of Property 4.3 for obtaining a feasible solution to string decomposition

problem starting from a feasible solution to the aggregated string decomposition problem. The

following result is hence immediate.

Theorem 4.7. The disaggregation algorithm produces a feasible solution to the string

decomposition problem starting from a feasible solution to the aggregated string decomposition

problem, in polynomial time.

Our computational results show that the aggregation-di saggregation method solves the

fueling and servicing problem very quickly and produces near optimal solutions.

4.8 Handling Infeasibilities

The infeasibilities that are encountered while solving the fueling and servicing LRP can be

of two kinds: hard infeasibilities and soft infeasibilities. Hard infeasibilities are due to the nature

of the train schedule and cannot be fixed without modifying the data. For example, consider a









situation where the train schedule is such that there does not exist a service string passing

through a particular train. This implies that any locomotive unit which is assigned to this train

cannot be serviced and fueled feasibly. Since fixing this infeasibility requires modifying the train

schedule, we do not consider this kind of infeasibility in our research.

Soft infeasibilities are introduced due to the two stage decomposition approach to solve the

fueling and servicing LRP, i.e. we first solve the LPP and then the LRP, instead of solving the

integrated problem. Since, the LPP completely ignores the fueling and servicing constraints, this

may lead to the locomotive schedule being fueling and servicing incompatible while solving the

LRP. Soft infeasibilities can manifest themselves in the following two ways:

* A train which has a service string passing through it in the train network does not have a
service string passing through it in the decomposed train network corresponding to a
particular locomotive type assigned on it.

* A train has service strings passing through it but in the decomposed network but the
problem is still infeasible due to the nature of the set partitioning constraints.

In order to handle this problem, we develop side-constraints that can be added to the LPP

so that it accounts for fueling and servicing feasibility to a greater extent. These constraints

ensure that some necessary conditions for fueling and servicing feasibility are satisfied. We refer

the reader to Ahuj a et al. (2005) and Vaidyanathan et al. (2007b) for more details about the

locomotive planning model; here we describe the side-constraints that we add to the model.

* We enumerate a large number of service strings and only allow the set of train connections
R contained in them while solving the LPP. Any locomotive which makes a train
connection that is not a part of R cannot be fueled and serviced feasibly. Therefore, while
solving the LPP, we ensure that only those connections which are a part of R are allowed.
This approach eliminates local infeasibilities. For e.g. suppose the length of train A + the
length of train B is more than the fueling threshold F, then the connection between these
two trains will not be a part of R and will hence not be constructed.

* Consider a situation where a set of trains have only one string passing through them. Let
train A be one such train and s be the string passing through it. From the first case, it is
clear that all train connections which are a part s will be allowed in the planning problem.
Note that if the flow on any of these train connections is less than the flow on train A, then









the locomotives assigned on train A cannot fueled and serviced feasibly. We therefore add
side-constraints to ensure that this does not happen; i.e. we ensure that the flow on each
connection in s is greater than the flow on train A.

*The first method handles local infeasibilities. However, it does not take into account higher
level infeasibilities which are a function of more than one train connection. For e.g.
Consider a train A which has two strings passing through it as shown in Figure 4-7. The
first string contains the sequence 11-A-12 and the second string contains the sequence 21-
A-22 as shown in the Eigure (numbers represent train connections and letters represent
trains). Note that the first method would allow all four train connections to be used in the
LPP and the LPP has no constraints which prevent a locomotive from being routed along
the sequence 11-A-22 or 21-A-12, even though these sequences are not feasible
sequences. We now formally define constraints that we add to the planning problem to
ensure that flow does not occur on these kinds of infeasible sequences.

I(A): Set of incoming train connections at the tail node of train A.

O(A): Set of outgoing connections at the head node of train A.

C: Set of all locomotive types. Indexed by c.


Yf: Flow of locomotive type c on connection j.

FO(j): Set of fueling and servicing feasible outgoing connections in set O(A) which correspond

to jE I(A)

FI(j): Set of fueling and servicing feasible outgoing connections in set I(A) which correspond to

jE O(A)

We add the following constraints to the planning model for each train:

y~ < C yic, for all jE I(A), cE C,
ItFO(J)

ye < C 720, for all jE O(A),ce C (.
leFI(J)

These constraints help eliminate higher level infeasibilities which are a function of two train

connections.

Our computational results show that the necessary conditions described in this section are

very effective in ensuring that the locomotive schedule can be decomposed into a fueling and










servicing friendly routing. In the next section, we present computational results to demonstrate

the performance of all the algorithms developed and show that our approach is indeed a quick

and effective approach to solve the locomotive fueling and servicing problem.

4.9 Computational Results

In this section, we provide computational results of our algorithms on several instances and

also some case studies on a representative instance. We implemented our algorithms in the

Microsoft Visual Basic programming language and tested them on the data provided by a maj or

Class I US railroad. We modeled our integer programs using ILOG Concert Technology 2.0

modeling language and solved them using the CPLEX 9.0 solver. We conducted all our

computational tests on an Intel Pentium 4, 512-MB RAM, and 2.4-GHz processor desktop

computer.

4.9.1 Testing the Performance of the Algorithm

We test the performance of our locomotive routing algorithm on instances with different

transport volumes. In order to estimate the performance of our algorithms, we first solve the LPP

to obtain a locomotive schedule. Next, we solve the LRP using this locomotive schedule as a

starting point and evaluate the locomotive routing cost as defined in the LPP (we do not consider

fueling and servicing costs). Note that the solution cost of the LRP will always be greater than

that of the LPP. However, the smaller the difference in cost between these two solutions, the

better our algorithmic approach. We use this measure to estimate the performance of our

algorithms and conduct our computational tests in the following sequence of steps for each

instance:

* Solve the LPP to obtain a locomotive schedule

* Run the LRP on the locomotive schedule obtained from the LPP and compare the solution
cost










Notice that, suppose the difference in cost between the solution of the LRP and solution of

the LPP is small, then this implies that the fueling and servicing algorithms are performing well

since we are able to enforce the fueling and servicing constraints without a significant increase in

the solution cost. The percentage difference in cost hence serves as an upper bound on the

optimality gap of the LRP.

In Table 4-1 and Figure 4-8, we present the results of our computational tests. From our

computational tests, we draw the following conclusions:

* We are able to achieve a fueling and servicing friendly routing on all instances with less
than 2.2% increase in the locomotive routing cost.

* The performance of our locomotive routing algorithm is consistent with a computational
time of less than 5 minutes on all instances.

* The locomotive routing algorithm is able to achieve a 100% fueling and servicing friendly
routing on all instances.

4.9.2 Case Study

We present a case study to demonstrate the uses of the locomotive routing model. We

perform this case study on a representative instance with 2,824 trains, 77 stations, 39 fueling

stations, 28 servicing stations, and 6 locomotive types. The various aspects of the problem that

we study are reported in the following sections.

Effect of varying the servicing distance threshold (S)

In this study, we quantify the effect of varying the maximum distance that can be traveled

before servicing (S) on the solution cost of the LRP. While fueling is a hard constraint since tank

capacities of locomotives are well defined, servicing constraints are soft constraints since

maintenance of units can usually be delayed to a later time. Table 4-2 presents the computational

results, and Figure 4-9 shows the relationship between the servicing threshold and the solution

cost.










From our computational tests we draw the following conclusions:

* As the servicing threshold is increased from 1,800 miles to 3,000 miles, the initial increase
has a large impact on the solution quality, but subsequently the law of diminishing returns
is observed.

* Beyond a servicing threshold of around 2,000 miles there is almost no impact of increasing
the servicing threshold on the solution cost.

* The performance of our locomotive routing algorithm is consistent with a computational
time of around 5 minutes on all instances.

Effect of adding/removing fueling facilities

In this study, we quantify the impact of varying the number of fueling facilities on the

solution cost of the LRP. We start with the initial set of 39 fueling stations. To this set we add (or

remove) fueling stations one-by-one and measure the impact on the cost of locomotive routing.

When we add fueling stations, we add them in the decreasing order of number of inbound trains.

On the other hand, when we remove fueling stations, we remove them in the increasing order of

number of inbound trains. The reason we add and remove fueling stations in this manner is

because when we add fueling stations, we want to first add those stations which are likely to

have a greater impact on the solution cost. On the other hand, when we remove fueling stations,

we want to first remove those stations which are likely to have a smaller impact on the solution

cost. Table 4-3 presents the computational results, and Figure 4-10 shows the relationship

between the number of fueling stations and the solution cost.

From our computational tests we draw the following conclusions:

* As the number of fueling stations is increased from 33 to 43, the initial additions have a
large impact on the solution cost, but subsequently the law of diminishing returns is
observed.

* Solution cost remains constant for the number of fueling stations varying between 35 and
40. This suggests that we could bring down the number of fueling stations from the current
value of 39 to 35 without compromising much on the cost of locomotive routing. This
could potentially translate into savings of several million dollars.










* The performance of our locomotive routing algorithm is consistent with a computational
time of around 5 minutes on all instances.

Effect of adding/removing servicing facilities

In this study, we quantify the impact of varying the number of servicing facilities on the

solution cost of the LRP. We start with the initial set of 28 servicing stations. To this set we add

(or remove) servicing stations one-by-one and measure the impact on the cost of locomotive

routing. When we add servicing stations, we add them in the decreasing order of number of

inbound trains. On the other hand, when we remove servicing stations, we remove them in the

increasing order of number of inbound trains. The reason we add and remove servicing stations

in this manner is that when we add servicing stations, we want to first add those stations which

are likely to have a larger impact on the solution cost. On the other hand, when we remove

servicing stations, we want to first remove those stations which are likely to have a smaller

impact on the solution cost first. Table 4-4 presents the computational results, and Figure 4-11

shows the relationship between the number of servicing stations and the solution cost.

From our computational tests we draw the following conclusions:

* As the number of servicing facilities is increased from 21 to 32, the initial additions have a
large impact on the solution cost, but subsequently the law of diminishing returns is
observed.

* Solution cost remains constant for the number of servicing stations varying between 24 and
28. This suggests that we could bring down the number of servicing stations from the
current value of 28 to 24 without compromising much on the cost of locomotive routing.
This could potentially translate into savings of several million dollars.

* The performance of our locomotive routing algorithm is consistent with a computational
time of around 5 minutes for all instances.

4.10 Summary and Conclusions

Our previous research on locomotive planning focused on creating locomotive schedules

which satisfy several business and operational constraints. While that research on the LPP has









several potential benefits, it has the drawback that it totally neglects fueling and servicing

requirements and may hence generate solutions which are not implementable. We bridge this gap

by considering fueling and servicing constraints and also develop optimization techniques in

order to incorporate the fueling and servicing logic in our methodology to generate

implementable locomotive routing.

Due to the inherent complexity of the integrated problem of locomotive planning and

locomotive routing, we decompose our approach to achieve fueling and servicing feasibility into

two stages. The first phase involves solving the LPP (LPP) using the algorithms described in

Ahuj a et al. (2005) and Vaidyanathan et al. (2007b). Once we have the solution to the LPP, we

fix the assignment of locomotive types to trains and use the flexibility of train connections in

order to enforce fueling and servicing feasibility in the second locomotive routing phase. We

adopt the following approach to solve the LRP in the second phase. We enumerate the set of

fueling and servicing feasible paths (or strings) on the network using dynamic programming

algorithms and formulate the LRP as a string decomposition integer programming problem. Due

to its prohibitive size and NP-Complete nature, this problem cannot be directly solved using

commercial optimization software. We handle this computational complexity by developing an

aggregation-di saggregation based approach to solve thi s problem. Our computational results on

real-life instances demonstrate that our algorithms enforce the fueling and servicing requirements

with a run-time in the order of minutes and with less than 2.2 % increase in the locomotive

routing costs. We also demonstrate the usefulness of the model to perform strategic analysis and

give examples of the kind of insights that can be drawn from such analysis.

We believe that this research is a vital stepping stone in our overall obj ective of enabling

railroads to manage their locomotive operations more efficiently through optimization methods










which produce practical and implementable solutions. We believe that our collective research in

this area will lead to the large scale deployment of optimization based locomotive management

software at North American railroads.










Table 4-1. Performance of the locomotive routing algorithm.
SNo Mean Locomotive Locomotive Routing Problem %


tonnage Planning Problem
Cost ($) # of
locos


Increase
Time in cost


Cost ($) # of # of
locos infeasib
ilities
6,192,415 1,566 0
6,565,983 1,632 0
6,982,995 1,687 0
7,317,678 1,733 0
7,755,512 1,738 0
8, 184,696 1,785 0
8,687,484 1,774 0


5,700
6,080
6,460
6,840
7,220
7,600
7,980


6,068,767
6,444,686
6,861,699
7,161,102
7,598,937
8,025,096
8,501,004


1,520
1,591
1,646
1,683
1,688
1,738
1,717


3 m 41 s
4 m 07 s
3 m 59 s
4 m 20 s
4 m 07 s
3 m 55 s
4 m 07 s


2.04
1.88
1.76
2.19
2.06
1.99
2.19


Table 4-2. Effect of varying servicing distance threshold.


SNo Threshold
S (miles)
1 1,800
2 1,900
3 1,950
4 2,000
5 2,200
6 2,400
7 2,600
8 2,800
9 3,000


Cost ($)

8,752,593
8,600,418
8,422,679
8,201,159
8,201,159
8,192,759
8,195,447
8,195,447
8,179,319


# of
locos
1,679
1,695
1,736
1,775
1,775
1,776
1,777
1,777
1,771


# of
infeasibilities
121
100
52
0
0
0
0
0
0

stations.
# of
infeasibilities
14
14
0
0
0
0
0
0
0
0
0


Time

4 m 59 s
4 m 40 s
4 m 39 s
4 m 40 s
5 m11 s
4 m 40 s
4 m 44 s
4 m 30 s
4 m 32 s


Table 4-3. Effect of varying number of fueling
SNo Number of Cost ($) # of
facilities locos
1 33 8,253,831 1,767
2 34 8,253,831 1,767
3 35 8,179,319 1,771
4 36 8,179,319 1,771
5 37 8,179,319 1,771
6 38 8,179,319 1,771
7 39 8,179,319 1,771
8 40 8,179,319 1,771
9 41 8,173,943 1,769
10 42 8,168,567 1,767
11 43 8,168,567 1,767


Time

4 m 56 s
4 m 59 s
4 m 45 s
4 m 40 s
5 m 05 s
5 m 12 s
4 m 41 s
5 m 03 s
4 m 36 s
4 m 47 s
5 m 10 s










Table 4-4. Effect of varying the number of
SNo Number of Cost ($) # of
facilities locos
1 21 8,490,764 1,748
2 22 8,319,852 1,770
3 23 8,306,412 1,765
4 24 8,182,704 1,763
5 25 8,179,139 1,771
6 26 8,179,139 1,771
7 27 8,179,319 1,771
8 28 8,179,319 1,771
9 29 8,158,151 1,759
10 30 8,147,063 1,759
11 31 8,130,935 1,753
12 32 8,112,119 1,746


servicing stations.
# of
infeasibilities
44
16
16
4
0
0
0
0
0
0
0
0


Time

4 m 22 s
4 m 40 s
4 m 26 s
4 m 35 s
4 m 47 s
4 m 50 s
4 m 36 s
4 m 32 s
3 m 27 s
3 m 28 s
3 m 29 s
3 m 43 s












Start



1. Solve the LPP using the methods in Section 4.4 to
obtain a locomotive schedule.




2. Enumerate the set of fuel and service strings on the
network using the enumeration methods in Section 4.5.




3. Formulate the String Decomposition Problem (SDP)
described in Section 4.6 and solve it using the aggregation-
disaggregation algorithm in Section 4.7.


;--- LRP


4. Decompose the solution of the SDP into fueling and
servicing friendly cyclic locomotive routes using a
polynomial-time cycle decomposition algorithm (Ahuja et
al. (1993)).


Stop



Figure 4-1. Flowchart of the fuel and service routing algorithm.











algorithm fuel string enumeration;
begin
k= 1;
FS = #;
P' #;
for each E Trains do
if I is a fuel string, FS = FS + 1;
else if origin(1) is a fueling station then P' = P' +1I;
while Pk fa do
begin
Pk+1 ~
for all pe Pk do
let r = last train in valid sequence p;
for all l E Trains : destination(r) = origin(1) do
if length(p ul) <; F and I 0 p then
begin
if destination(p ulI) is a fueling station do
FS = FS +(p ul) ;
else
Pk+1 = Pk+1 P )
end
end-for
end-for
k=k+1;
end
return FS;
end

Figure 4-2. Fuel string enumeration algorithm.










algorithm service string enumeration;
begin
k= 1;
SS = #;
P' #;
Run the FSE algorithm to obtain the set of fuel strings FS;
for each l E FS do
if I is a service feasible string, SS = SS +1;
else if origin(1) is a servicing station then P' = P' +1I;
while Pk fa do
begin
Pk+1 ~
for all pe Pk do
let r = last train in valid sequence p;
for all l E FS : destination(r) = origin(1) and Trains(1) 0 p do
if length(p ul) <: S then
begin
if destination(p ulI) is a servicing station do
FS = FS +(p ul) ;
else
Pk+1 = Pk+1 P )
end
end-for
end-for
k = k+ 1;
end
return SS;
end

Figure 4-3. Service string enumeration algorithm.























Train arrival node String
O Train departure node ----- Connection arcs

Figure 4-4. A part of the space-time network at a particular service station.


~-A

Bc-


C


Figure 4-5. Disaggregated strings and corresponding aggregated string.











begin
Let S represent the set of aggregated service strings with positive flow. Let this set be indexed by

Let SS = # represent the set of disaggregated service strings:
Sort S in decreasing order of string length;
for each s ES do
Let k = K (s) :
Consider the sub-graph of G;(N\A) induced by trains I for which ulk > 0 and .f, > 0 Let this
sub-graph be denoted by G(Nk, Ak)
Solve a minimum cost flow problem on this sub-graph. Let the flow on each are in the optimal
solution be x :
Decompose x~ into flows on paths P. Let SS = S~S UP:

Update the uncovered flow on each train .fl = / x for all (i, j) E Trauins ;
end for
return SS:
end


Figure 4-6. Disaggregation algorithm.


11 12 ,y



-^21 22


Figure 4-7. Example of infeasibility.





































5,500 6,000 6,500 7,000 7,500 8,000
IVkan tonnage



Figure 4-8. Performance of the locomotive routing algorithm.













8,800,000


8,700,000


8,600,000


8,0,0

8,400,000


8,300,000


8,200,000


8,100,000


1,800 2,000 2,200 2,400 2,600 2,800 3,000
Servicing threshold (miles)




Figure 4-9. Solution cost vs. servicing threshold.


8,270,000

8,260,000

8,250,000

8,240,000

8,230,000

);8,220,000

8,21 0,000

8,200,000

8,190,000

8,180,000

8,170,000

8,160,000
33 35 37 39
Number of fueling locations


Figure 4-10. Solution cost vs. number of fueling locations.


41 43













8,550,000


ti8,300,000-

8,250,000-

8,200,000-

8,150,000-

8,100,000-

8,050,000
21 23 25 27 29 31 33
Number of servicing locations


Figure 4-11. Solution cost vs. number of servicing locations.









CHAPTER 5
AGGREGATION FRAMEWORK TO SOLVE LARGE-SCALE INTEGER
MULTICOMMODITY FLOW PROBLEMS

5.1 Introduction

The multicommodity flow problem (MCFP) is a generalization of the classical minimum

cost flow problem. These problems are frequently encountered in application domains like

communication networks, railroad transportation networks, and distribution networks where

numerous physical commodities, vehicles, or messages, each governed by their own network

flow constraints, share the same underlying network. The obj ective of the MCFP is to send

several commodities that reside at one or more points in a network (sources or supplies) with arc

capacities to one or more points on the network (sinks or demands), incurring minimum cost.

The arc capacities are one way in which the flows of all commodities are bound together. Note

that if the commodities do not interact with each other, then the integer version of the MCFP can

be solved as several independent single commodity minimum cost flow problems. But, since this

is not valid in general, this problem is a difficult problem and in fact belongs to the class of NP-

Complete problems (Garey and Johnson (1979)). However, the MCFP problem has numerous

applications and hence solving this problem efficiently has been an important area of research.

We consider the integer version of MCFP, which we refer to henceforth by MCFP, and we

propose an aggregation framework that can be used to efficiently solve a class of MCFPs.

Researchers have proposed a number of basic approaches for solving both the integral

version and the continuous version of the MCFP. The three classical approaches, all based upon

exploiting network flow substructure, and selected references are: (1) Price-directive

decomposition algorithm (Cremeans, Smith, and Tyndall (1970), Swoveland (1971), Chen and

Dewald (1974), Assad (1980a), Mamer and McBride (2000), Holmberg and Yuan (2003), and

Larsson and Yuan (2004)); (2) Resource-directive decomposition algorithm (Geoffrion and









Graves (1974), Kennington and Shalaby (1977), and Assad (1980a)); and (3) Basis partitioning

(Graves and McBride (1976), Kennington and Helgason (1980), and Castro and Nabona (1996)).

Ford and Fulkerson (1958) and Tomlin (1966) first suggested the column generation approach.

The first of these papers was the forerunner to the general Dantzig-Wolfe (1960) decomposition

procedure of mathematical programming. The excellent survey papers by Assad (1978) and by

Kennington (1978) describe all of these algorithms and several standard properties of MCFPs.

The book by Kennington and Helgason (1980) and the doctoral dissertation by Schneur (1991)

are other valuable references on this topic.

Other approaches to solve the MCFP are due to Gersht and Shulman (1987), Barnhart

(1988), Pinar and Zenios (1990), Barnhart (1993), Barnhart and Sheffl (1993), Farvolden, Powell,

and Lustig (1993), Frangioni and Gallo (1999), and Detlefsen and Wallace (2002). Schneur

(1991), and Schneur and Orlin (1998) applied scaling techniques to solve the MCFP. Matsumoto,

Nishizeki, and Saito (1985) gave a polynomial-time combinatorial algorithm for solving a MCFP

in s-t planar networks. Radzig (1997) developed approximation algorithms for the MCFP.

Barnhart, Hane, and Vance (2000a) developed a column generation model and an integer

programming based branch-and-price-and-cut algorithm for integral MCFPs, and Brunetta,

Conforti, and Fischetti (2000) investigated polyhedral approaches and branch-and-cut algorithms

for the integral version.

Multicommodity network flow models have found extensive applications in several areas.

The routing of multiple commodities has been studied by Golden (1975), and Crainic, Ferland,

and Rousseau (1984), and the multi-vehicle tanker scheduling problem by Bellmore, Bennington,

and Lubore (1971). Other applications are due to Kaplan (1973), Evans (1977), Geoffrion and

Graves (1974), Bodin et al. (1980), Assad (1980b), Korte (1988). In some recent research,









Gautier and Granot (1995) formulate the forest management problem as a multicommodity flow

problem, Lin and Yuan (2001) construct a multicommodity flow network reliability model and

apply it to the container loading transportation problem, Ouaj a and Richards (2004) propose a

hybrid algorithm for traffic engineering which uses Lagrangian relaxation and constraint

programming, Ahuj a et al. (2005) solve the LPP using using problem decomposition, integer

programming, greedy heuristics, and neighborhood search, Vaidyanathan, Jha, and Ahuja

(2007a) formulate the CSP as a integer multicommodity network flow problem and solve it using

branch-and-bound based heuristic methods, Vaidyanathan et al. (2007b) formulate the LPP as an

integer multicommodity flow problem on a space-time network and solve it using branch-and-

bound methods, and Vaidyanathan, Ahuj a, and Orlin (2007c) solve the LRP using an aggregation

based algorithm. The book by Ahuj a, Magnanti, and Orlin (1993) provides extensive coverage of

applications of network and multicommodity flows.

The predominant approaches that have been adopted to solve the integer MCFP are column

generation, Dantzig-Wolfe decomposition, Lagrangian relaxation, resource directive

dec omp ositi on, integer programmi ng (b ran ch-and-b ound and b ranch- and-pri ce- and- cut),

polyhedral approaches, very large scale neighborhood search (VLSN), and other heuristic

methods. To the best of our knowledge, nobody has applied an aggregation based approach to

solve the MCFP. We develop an aggregation framework to solve large-scale integral MCFPs

which satisfy some special properties. Our approach to solve the MCFP works in the following

manner. Instead of solving the large-scale MCFP directly, we decompose our approach into two

stages. In the first stage, we consider an approximate aggregated MCFP which is several times

smaller than the original problem. We construct the aggregated MCFP in such a way that it is a

very good approximation of the original problem. Since the aggregated MCFP is much smaller









than the original problem, we can obtain the optimal solution to this problem very quickly. In the

second stage, we use the solution to the aggregated MCFP as a starting point, and then

disaggregate this solution to obtain near optimal solutions to the original problem. We

demonstrate the efficacy of our approach by applying it to solve the LPP, which is a large-scale

MCFP. Our computational tests demonstrate that the aggregation framework proposed produces

near optimal solutions to the LPP in a fraction of the original computational times. Finally, we

also outline methods to apply the framework to effectively solve other real-world optimization

problems.

Our maj or contributions are:

* We develop a novel aggregation based framework to solve a class of MCFPs.

* We formulate an aggregated version of the MCFP which is several times smaller than the
original problem and can hence be solved efficiently using standard branch-and-bound
techniques.

* We discuss methods by which we can ensure that the aggregated MCFP is a very good
approximation of the original problem.

* We develop fast disaggregation methods which are used to obtain a solution to the original
MCFP from the solution of the aggregated problem.

* We discuss application of the aggregation framework to solve other integer programming
problems like the airline fleet assignment problem, the airline CSP, the LRP, and the
aircraft routing problem.

* We test the aggregation framework on the LPP and demonstrate that the approach
produces near optimal solutions (less than two percent optimality gap) to the LPP while
only taking a fraction (around one-fifteenth) of the original computational times.

Summarizing, we present the first attempt at developing an aggregation framework to

solve a class of large-scale MCFPs. From our experience, we believe that the framework

developed has the potential to be a useful tool to solve many real-world problems including

airline fleet assignment, airline crew scheduling, railroad locomotive routing, aircraft

maintenance routing, and ship scheduling.










5.2 Problem Definition, Notation, and Formulation

The aggregation framework proposed can be used to solve a class of MCFPs. In this

section, we give the notation and terminology and also lay out properties of the underlying

network, the constraints, and the obj ective function for this class of problems. We also formulate

the MCFP as an integer programming problem on the network.

5.2.1 Network

In this section, we describe properties that need to be satisfied by the underlying network.

We denote the network by G(N, A) where N represents the set of nodes and A the set of arcs.

This network has only two types of arcs. We call the two types of arcs load arcs (L) and free arcs

(F). Load arcs are arcs on which flow is constrained. For example, in the airline fleet assignment

problem, the flight legs to which aircraft need to be assigned are load arcs, and in the LPP, the

trains to which locomotives need to be assigned to provide sufficient pulling power are load arcs.

Free arcs are those arcs on which there is no restriction or constraint on the flow. Free arcs

originate at the head node of a load arc and terminate at the tail node of another load arc. For

example, in the railroad network, train connection arcs which are constructed between trains

which arrive at a station and trains which depart from the same station are free arcs. Free arcs

allow commodities to flow from one load arc to the next load arc. Each load arc 1 has the

following four attributes associated with it: (1) A departure time represented by dep-time(1); (2)

An arrival time represented by the arr-time(1); (3) A departure location represented by dep-

location(1); and (4) An arrival location represented by arr-location(1).

We are now in a position to describe the construction of the network. For each load arc we

create an arrival (head) node and a departure (tail) node. We represent the set of arrival nodes by

N, and the set of departure nodes by Nd The arrival node corresponding to load arc 1 is at










location arr-location(1) and the departure node corresponding to a load arc 1 is at location dep-

location(1). Next, we construct free arcs between all arrival nodes at a location and all departure

nodes at the same location. Note that due to the manner in which we construct the network, any

walk on the network G(N,A) will contain alternate load and free arcs. Also, by construction, both

the in-degree of any arrival node and the out-degree of any departure node are one. Let C refer to

the different commodities that need to be assigned to load arcs. These commodities need to be

routed on G(N,A) in such a way as to satisfy a set of constraints while incurring minimal cost. In

Figure 5-1, we present an example of the network that has five load arcs and eight free arcs. In

this figure, the solid lines represent load arcs and the dotted lines represent free arcs.

5.2.2 Constraints

In this section, we describe the constraints governing the class of MCFPs.

Power requirement for load arcs: Each load arc 1 must be assigned a single unit of a

particular commodity to provide sufficient power.

Commodity to load are preferences: Only certain commodities are allowed to flow on

certain load arcs.

Flow balance constraints: The total incoming flow of a particular commodity at each

node on the network must be equal to the total outgoing flow of the same commodity at that

node.

Arc flow lower bounds: Each load arc l EL should be assigned at least LB, units of flow.

Arc flow upper bounds: Each load arc l EL can be assigned at most UB, units of flow.

Fleet-size constraints: The number of units of each commodity used should be less than

the fleet-size of that commodity Be.









5.2.3 Formulation

In this section, we mathematically formulate the general class of MCFPs that can be solved

using the aggregation framework. We formulate the MCFP on the network constructed as

described in Section 5.2.1, and consider the constraints described in Section 5.2.2. Let I(i) denote

the set of incoming arcs and O(i) denote the set of outgoing arcs at node i E N In order to count

the total number of units of each commodity used in a solution, we set an arbitrarily chosen time

as the count-time and count the total flow on all arcs that cross this count-time. We denote the set

of arcs that cross the count-time by S. Each load arc l EL can have two kinds of flow of a

particular commodity c e C : active flow ( x, )which represents those units which provide power

on the load arc, and deadhead flow ( y,")which represents those units which do not provide

power but are repositioning on the load arc using the power of the active flow. We represent the

cost of assigning an active unit of commodity c EC to load arc l EL by c{, the cost of


assigning a deadhead unit of commodity c EC to load arc l EL by do, the cost of assigning a

unit of commodity c EC on free arc f e F by d and the ownership cost of a unit of

commodity cEC by G"

The decision variables in the MCFP are:

x : Binary variable representing the active flow of commodity c EC on load arc l EL .


y : Integer variable representing the deadhead flow of commodity c EC on load arc l EL .

y : Integer variable representing the flow of commodity c EC on free arc fe F .

s" : Number of unused units of commodity c E C.

The MCFP is formulated as follows:










minf Cf~ cri Cd4F dcte + d;i y Gs' (5.1a)
leL ceC leL ceC feF ceC ceC


Sxic = 1, for all I EL, (5.1b)
ctC


L~t (xc I ) : UB, fr al l L,(5.1c)
ceC


xic + Pl = y;, for all let L, ce C, (5.1d)
feO[head(1)]


Sy = xc+ ye, for all leL ce C, (5.1e)
fel[tad(1)]


C(x + y )+ s" = B", for all ce C (5.1f)
atS


xe E { 0,1}), for all l E L, c E C, (5.1g)


yH > 0 and integer, for all a s A, c E C, (5.1h)


s" > 0, for all c E C. (5.1i)

Constraint (5.1b), which is the power requirement constraint for load arcs, ensures that

every load arc 1 is assigned one unit which provides sufficient power. Constraint (5.1c), which is

a flow bound constraint, ensures that the flow upper and lower bounds on each load arc 1 are

satisfied. Constraint (5.1d) and (5.1e), which are flow balance constraints, ensure that flow is

balanced at each arrival and departure node for each commodity type. Constraint (5.1f), which is

the fleet-size constraint, ensures that the number of units of each commodity used is no more

than the available fleet-size of that commodity. Note that the Formulation (5.1) is the general

formulation and several of the applications described are special cases or minor variations of this

formulation. We now describe another important property that needs to be satisfied by the set of

load arcs in the underlying network so that the aggregation framework can be applied to solve

the MCFP.









5.2.4 Reducibility Property of the Network

The reducibility property is the most crucial property that needs to be satisfied by the set of

load arcs L in the underlying network G(N,A) for the problem to fall in the class of MCFPs that

can be solved using the aggregation framework proposed. The reason for this is that reducibility

of the network is the property which allows us to aggregate and shrink the original problem. The

set of load arcs L is said to satisfy the reducability property if it can be partitioned into several

sets R such that the load arcs in each set r ER share several common properties. The load arcs

in each set r ER have identical origin location, destination location, duration, power

requirements, and flow bounds and only differ in their departure and arrival times. For each set

r ER we consider an aggregated load arc and we denote the set of aggregated load arcs by L'.

Hence, each aggregated load arc l' s L' has several arcs corresponding to it in the set L. Let the

set of load arcs corresponding to aggregated load arc l' be represented by L(l').

5.3 Aggregation and Disaggregation Algorithm

The integer MCFP formulated in Section 5.2 is NP-Complete and hence large-scale

MCFPs cannot be solved using commercial integer programming software. In this section, we

develop an aggregation-disaggregation based approach to solve this problem. The basic idea

behind this approach is that instead of solving a large problem directly, we divide our algorithm

into two stages. In the first stage, we construct a smaller aggregated model which can be solved

quickly. Once we obtain the solution to the aggregated model, we use this information to

disaggregate the solution and obtain a solution to the original problem. While this idea is quite

intuitive to grasp, there are some issues which need to be considered to ensure that the solution

produced using this approach in close to the global optimal solution. We next present our

aggregation-di saggregation based algorithm and describe how we use thi s approach to

effectively solve the MCFP.









5.3.1 Aggregated Multicommodity Flow Problem

The aggregated MCFP is an approximation of the original MCFP. However, this

approximate model is much smaller than the original problem and is hence solvable more

quickly. This leads to the issue of trading-off between the degree of approximation and the ease

of solution, i.e., (1) The aggregate model may be solvable very quickly but may not produce

good solutions; or (2) The aggregate model may be almost exact but may take a very long time to

produce a good solution. Hence, the performance of an aggregated model depends on a few

factors that need to be addressed while constructing the model. The first issue that needs to be

addressed while designing an aggregated model is which entities to aggregate. The second issue

that needs to be addressed is how to ensure that the aggregated model is as close as possible to

the original problem. The closer the aggregated model is to the original problem, the easier it will

be to disaggregate the aggregate solution and obtain near optimal solutions to the original

problem. In the rest of this section, we focus on answering these questions and developing a

good aggregation model. We divide our discussion into two parts: we first focus on the

feasibility aspect of the problem and, in the process, address the first question. Next, we focus on

the optimality of the problem and, in the process, address the second question.

Consider a network G(N,A) that satisfies the reducibility property (defined in Section 2.4).

The set of load arcs L on this network can be partitioned into several sets L(l') where l' E L'.

Note that the set of load arcs L can be written as L = U L(l') Similarly, the cardinality of the


set of load arcs can be written as | L |= [| L(l ') |. We refer to the cardinality of set L(l') as the


frequency of aggregated arc l' and denote it by /, Hence, the load arcs can be considered to be

made up of a set of aggregated load arcs, each with a pre-specified frequency. We refer to the set









of arcs in the set L(l') as the instances of aggregated load arc i'. Due to the reducability property

of the network, all instances of an aggregated load arc are similar in terms of their origin

location, destination location, power requirements, flow bounds, and duration. They only differ

in their departure times and arrival times. Based on this observation, in the aggregated network,

we aggregate all instances of an aggregated load arc in the original network into a single

aggregated load arc. The flow on an aggregated load arc l' s L' represents the total flow on all

the instances corresponding to it (L(l')). Also, the total power requirement of an aggregated

loaded arc is computed by adding up the total power requirements on all the load arcs

corresponding to it. For example, suppose an aggregated load arc has a frequency of four and all

the load arcs corresponding to it have a power requirement of T, then the power requirement of

the aggregated load arc is 4T. Similarly, we define the flow bounds on each aggregated loaded

arc by adding up the flow bounds on all the instances corresponding to it.

We denote the aggregated network by G'(N' A') where N' represents the set of nodes and

A' the set of arcs. This network has two kinds of arcs: aggregated load arcs (L') and aggregated

free arcs (F'). The aggregated load arcs are obtained as described above. Each aggregated load

arc l' has: (1) A departure location represented by dep-location(l'); (2) An arrival location

represented by arr-location(l'). For each aggregated load arc we create an arrival (head) node and

a departure (tail) node. We represent the set of arrival nodes by Nk and the set of departure

nodes by N Next, we construct aggregated free arcs between all arrival nodes at a location and

all departure nodes at the same location. Aggregated free arcs allow commodities to flow from

one aggregated load arc to the next aggregated load arc. Note that due to the manner in which we

construct the network, any path on G'(N',A') will contain alternate aggregated load arcs and

aggregated free arcs. Also, the in-degree of any arrival node and the out-degree of any departure









node are one. We consider a set of commodities (C) which need to be assigned to aggregated

load arcs and flow on the network to satisfy a set of constraints at minimal cost.

We use the following additional notation in our formulation:

LB,, : Lower bound on total flow on aggregated load arc l'E L This lower bound is obtained by

adding up the lower bounds on all instances of aggregated load arc i'.

UB,,: Upper bound on total flow on aggregated load arc l'E L This upper bound is obtained by

adding up the upper bounds on all instances of aggregated load arc i'.

t,, : Duration of aggregated load arc l' s L' .

tf,: Estimated duration of aggregated free arc f F'.

R": Total number of time units of commodity c EC available.

The decision variables in the aggregated MCFP are:

x : Integer variable representing the active flow of commodity c EC on aggregated load arc

l'EL'.

yl : Integer~ varIialeU representinglf the, deadheadL flowV of commodVity cEC on aggregated load arc

l'EL'.


y ,: Integer variable representing the flow of commodity c EC on aggregated free arc f F'.

s" : Number of unused time units of commodity c EC .

We formulate the aggregated MCFP as follows:

min Cc~ xC + dI~Y + Cd), y (5.2a)
1 tL ctC I'tL' ctC f'tF' ctC


Sx~ = J;,, for all I' EL ', (5.2b)


LB,, < (x; + 4';;)1 < B,,, for all 1' L L', (5.2c)










xti + J'r = y Y,, for all I' t L ', c e C:, (5.2d)
feO[head(l')]


Sy = xfi + y~i, for all I'EL I', c E C, (5.2e)


Sti, (xt + Pr)+ tf y + so = RC, for all c E C, (5.2f)
I'eL' f 'eF'

0 <; x~i < f, and integer, for all I' E L ', c E C, (5.2g)


y~i > 0 and integer, for all i' E A ', c E C, (5.2h)

s" > 0, for all c E C. (5.2i)

Constraint (5.2b), which is the aggregated power requirement constraint, ensures that each

aggregated load arc is assigned sufficient power. Constraint (5.2c), which is the aggregated flow

bound constraint, ensures that the flow bounds on each aggregated load arc are honored.

Constraint (5.2d) and (5.2e), which are flow balance constraint, ensures that flow is balanced at

each arrival and departure node for each commodity type. Constraint (5.2f), which is the fleet-

size constraint, limits the total number of commodity-time units used for by commodity type. In

order to measure the total number of commodity minutes used, we cumulatively add up the

commodity minutes used by commodities assigned on each aggregated load arc and the

commodity minutes used by commodities assigned on each aggregated free arc. We then ensure

that the total number of commodity minutes used is less than the total number of commodity

minutes available.

The reader may note that the aggregated MCFP is similar in structure to the MCFP but

could be several times smaller in size. Also, the fleet-size constraints (5.2f) in the aggregated

model are constructed in an equivalent though different manner to the fleet-size constraint (5.1f)

of the MCFP. The reason for this is that in the original network, it is quite straight forward to









determine whether a free arc crosses the count-time; however, in the aggregated network since

we consider aggregated load arcs, it is not possible to state with certainty whether an aggregated

free arc crosses the count-time. For the time being, we assume that we know the duration of

aggregated free arc. In the later part of this section, we discuss the importance of having good

estimates for the duration of aggregated free arcs.

The size of the aggregated MCFP is several times smaller than the MCFP. The reason for

that is aggregation happens at two levels: (1) decision variables, and (2) constraints. For

example, consider an aggregated load arc which has a frequency of four. In the MCFP, this

aggregated load arc will have 4|C| active flow decision variables corresponding to it and 4|C|

deadhead flow decision variables corresponding to it. However, the aggregated MCFP will have

only |C| active flow decision variables and |C| deadhead flow decision variables. Hence, the flow

on the aggregated load arc in this case represents the cumulative flow on the four load arcs that

correspond to it. The decision variables corresponding to the free arcs are also aggregated in a

similar manner. Using this method of variable aggregation, we are able to reduce the number of

variables. Also, in the aggregated MCFP we have:

* One power requirement constraint (5.2b) for every aggregated load arc instead of one
(5.1b) for every load arc in the MCFP.
* One set of flow bound constraints (5.2c) for every aggregated load arc instead of one (5.1c)
for every load arc in the MCFP.
* One set of flow balance constraints (5.2d) and (5.2e) for each aggregated load arc arrival
and departure node, instead of one for each load arc arrival and departure in the MCFP.


Suppose the average frequency of aggregated load arcs is close to five. Then, the total

number of constraints in the aggregated model is roughly one-fifth that of the original model and

the total number of variables is a fraction of that in the original model. Thus, the aggregation of









variables and constraints has the potential to result in a very compact aggregated formulation and

consequently very fast solution times.

We now proceed to state and prove a few important properties relating the feasibility of the

aggregated MCFP and the feasibility of the MCFP.

Property 5.1: For any assignment of flows on load arcs such that the total flow of a

commodity entering a location is equal to the total flow of the same commodity leaving the same

location and satisfying the power requirement constraints (5.1b) and flow bound constraints

(5.1c), there exists a solution to the MCFP satisfying all constraints other than fleet-size

constraint (5.1If).

Proof: Consider the assignment of flows on load arcs which satisfies the conditions stated

above. Consider the set of inbound load arcs entering a particular location, the set of outbound

load arcs leaving the same location, and the set of free arcs between these inbound load arcs and

outbound load arcs. Since free arcs are constructed between all inbound load arcs and outbound

load arcs at a particular location and since flow on these arcs is unrestricted, it follows that we

can enforce flow balance constraints (5.1d) and (5.1e) at all nodes at that location by a simple

run-through method. Repeating the same procedure at all locations in the network gives us a

solution to MCFP satisfying all constraints other than possibly the fleet-size constraint (5.1f). *

Property 5.2: There exists a feasible solution to the MCFP only if there exists a feasible

solution to the aggregated MCFP satisfying all constraints other than the fleet-size Constraint

(5.2f).

Proof: We prove this property by construction. Consider a feasible solution to the MCFP.

We can compute flows on arcs in the aggregated network by: (1) Assigning each aggregated load

arc active flow equal to the total active flow on all load arcs corresponding to it; (2) Assigning









each aggregated load arc deadhead flow equal to the total deadhead flow on all load arcs

corresponding to it; (3) Computing the flow on all aggregated free arcs using the procedure

described in the proof of Property 5.1. Note that, due to the manner in which we formulate the

aggregated MCFP, the constructed solution satisfies the aggregated power requirement constraint

(5.2a) and the aggregated flow bound constraints (5.2b). Further, from Property 5.1, it follows

that the assignment will also satisfy the flow balance constraints (5.2c) and (5.2d). The result is

immediate. *

Property 5.3: There exists a feasible solution to the aggregated MCFP only if there exists

feasible solution to the MCFP satisfying all constraints other than the fleet-size constraints (5.1f).

Proof: We prove this property by construction. Consider a feasible solution to the

aggregated MCFP. We can compute flows on arcs in the original network by: (1) Distributing the

total active flow on each aggregated load arc among the load arcs corresponding to it (one unit

per load arc), (2) Distributing the total deadhead flow on each aggregated load arc among the

load arcs corresponding to it in such a way that the flow bound constraints (5.1c) are not

violated, (3) Computing the flow on all free arcs using the procedure described in the proof of

Property 5.1. The constructed solution satisfies the power requirement constraints (5.1b) and the

flow bound constraints (5.1c). Also, the total flow of a commodity entering a location is equal to

the total flow of the same commodity leaving the same location. Hence, from Property 5.1, the

result follows. *

We have thus showed the equivalence between the feasibility version of the MCFP and the

feasibility version of the aggregated MCFP and have hence addressed the feasibility aspect of the

problem mentioned at the start of this section. The other aspect we need to address is optimality.

The obj ective function of the MCFP minimizes total active assignment cost, deadhead










assignment cost, idling cost, and ownership cost. We now describe methods to ensure that the

aggregated model serves as a good approximation of the original problem.

In the aggregated MCFP, we do not consider the individual load arcs and only consider

aggregated load arcs. Due to the abstraction of information, the aggregated MCFP is an

approximation of the MCFP. Consider the aggregated MCFP. Suppose we were somehow able to

accurately determine the time duration for each commodity assigned on each free arc accurately,

then the aggregated MCFP would indeed model the original MCFP exactly. However, the only

way in which this information can be obtained is from the solution to the MCFP which is what

we set out to determine in the first place. Hence, it is not possible to accurately determine the

durations accurately. Hence, our goal is to devise an intelligent method to provide good estimates

for the duration of free arcs. Also, since the number of free arcs could be quite large, the method

needs to run very quickly. The right way to estimate the durations is a function of the problem

being studied. In Section 5.4. 1, we describe a method to estimate the duration of free arcs (or

train connections) while solving the LPP.

Note that the aggregated MCFP is similar in structure to the original MCFP. In other

words, our method of aggregation shrinks the problem size while leaving the structure virtually

unaltered. Hence, the existing state-of-the-art algorithms for the MCFP may often be directly

applicable to solve the aggregated problem. We now describe the second stage of our approach

which involves disaggregation of the solution.

5.3.2 Disaggregation

In this section, we show how the solution of the aggregated MCFP can be used to obtain a

solution to the original MCFP. The approaches proposed use the solution of the aggregated

MCFP to restrict the search space of the MCFP in order to speed-up computational times. We

propose three different methods to disaggregate the solution and we now describe these methods.









Restricted multicommodity approach: Method 1

In the restricted multicommodity approach, we reduce the solution space of the MCFP

formulated in Section 5.2.3 in the following manner. On every load arc, we allow only those

commodities that are assigned as active commodities in the solution to aggregated MCFP to be

assigned as active commodities. For example, suppose an aggregated load arc carries only

commodities A and B, then all the load arcs that correspond to it are also restricted to only

having those commodities as active commodities. By using this method, we can reduce the

solution space of the MCFP by a large extent leading to very fast computational times.

Multicommodity approach which partitions the aggregated active and deadhead flows

Method 2

Note that the solution to the aggregated MCFP satisfies flow balance at each location, i.e.,

in the solution to the aggregated MCFP, the total number of units of a particular commodity

entering a location is equal to the total number of commodities of the same type leaving the

location. In this method, we exploit this fact to solve the MCFP. Also, as long as the total flow

on all instances of an aggregated train is equal to the total flow on the corresponding aggregated

train, the total flow of a particular commodity between any pair of locations in the MCFP is

equal to the total flow between the same pair of locations in the solution to the aggregate MCFP.

Hence by Property 1, flow balance constraints for the MCFP are easily satisfied. Therefore, our

goals are (1) To redistribute the active assignments on each aggregated load arc among the load

arcs corresponding to it; (2) To redistribute the deadhead assignments on each aggregated load

arc among all the load arcs corresponding to it.

Let L'(1) refer to the aggregated load arc corresponding to load arc 1 and L(l') represent all

load arcs corresponding to aggregated load arc i'. We write these constraints mathematically in

the following manner:










Sxe = xic, for all l'E L', c E C,
leL(1')


yC ~= z, for alll'E L ',c EC(.
leL(1')

The right-hand side of these equations is obtained from the solution of the aggregated

MCFP. These constraints, when added to the MCFP, restrict the solution space to a larger extent

than the first method. Hence, the solution obtained using this method is slightly worse than that

obtained using the first method; however, the computational times are faster.

Method 3

In this method, while the aggregated active flows are redistributed as described in the

previous method, the aggregated deadhead flows are handled differently. Observe that as long as

the total flow between any pair of locations in the MCFP is equal to the total flow between any

pair of locations in the solution to the aggregate MCFP, the total number of consists of a

particular type which enter a station will be equal to the total number of consists of the same type

which leave the same station. By Property 5.1, flow balance constraints for the MCFP are easily

satisfied. We use this fact to restrict the solution space of the MCFP.

First, we introduce some additional notation. Let Fe be the total deadhead flow of


commodity c EC between station p and station q in the solution to the aggregated MCFP and let

H represent the set of all locations. Let Lpq be the set of all load arcs that originate from location

p and terminate at location q. We then write these constraints mathematically in the following

manner:

Sxe = xi, for all l'E L',c E C,
leL(l')


Syze = Fp for all p)E H, qI E H,ce C.









The right-hand side of these equations is obtained from the solution of the aggregated

MCFP. These constraints are added to the MCFP to restrict the solution space and speed-up

computational time. Note that the previous method is more restrictive and is also a special case

of this method. This method gives less flexibility than the restricted multicommodity approach

but more flexibility than the method 2.

5.4 Applications of the Aggregation Framework

As we mentioned in the introduction, the aggregation framework can be used an effective

tool in solving several optimization problems. In this section, we outline some applications of the

aggregation framework to solve large-scale real-world optimization problems. The problems

considered include the LPP, the airline fleet assignment problem, the airline CSP, the LRP, and

the aircraft routing problem. We go into details of how we use customize this framework to solve

the LPP and present computational results to demonstrate the performance of the aggregation

algorithm. We also outline how the aggregation framework can be used to solve all the other

problems mentioned above but do not present computational studies of the performance of our

algorithms on these problems.

5.4.1 Locomotive Planning Problem

The LPP involves the assignment of sets of locomotives, called consists, to each train in a

pre-planned weekly train schedule so that each train gets sufficient power to pull its load and the

total cost of locomotive usage is minimized. The resulting plan must honor a variety of business

rules, cannot require more locomotives than what is available in the total fleet, and must result in

a plan that is relatively simple and repeatable. Another important feature of the LPP is that

locomotives may deadhead on trains. Deadhead locomotives do not pull the train but are

repositioned by the active locomotives from one place to another place. Deadheading plays an

important role in locomotive planning, enabling extra locomotives to be moved from stations









with a surplus to stations with a defecit. A locomotive plan specifies which types of locomotives

will pull each train, and how locomotives will deadhead to obtain overall network wide

efficiency.

We present an extensive review of research in the area in Chapter 3. The most

comprehensive multiple locomotive planning models are due to Ahuj a et al. (2005) and

Vaidyanathan et al. (2007b). In Ahuj a et al. (2005), we formulate the LPP as an integer MCFP

with side constraints on an underlying space-time network and develop solution methodologies

that use problem decomposition, integer programming, greedy heuristics, and neighborhood

search. In Vaidyanathan et al. (2007b), we developed new formulations and approaches to make

our planning model more implementable. The maj or outcome of that paper was a philosophy

shift in the routing of locomotives. We showed that assigning consists (or a group of locomotives

which are never broken up) to trains, instead of individual locomotives has the potential to

generate implementable solutions without compromising much on the solution cost. We call this

formulation of the LPP the consist-based formulation.

The algorithms that we developed in our research in the past were able to effectively solve

weekly LPPs where the train schedule repeats every week. These weekly train schedules

typically have around 3,000 trains and our algorithms were able to solve these problems within

10-60 minutes of computational time. However, subsequently railroads have expressed the need

to solve much larger planning problems. One such problem is the 28-day LPP, where the train

schedule repeats only once in 28 days. The reason for this is that the weekly repeating schedule

assumption may not be a good assumption in certain cases. These 28-day train schedules have 3-

5 times more number of trains than the weekly train schedules, and hence the associated LPPs

are significantly larger optimization problems. Due to this fact and the additional fact that the









LPP is NP-Complete, our previous approaches are likely to be intractable when applied to these

problems. Hence, there is a need for a novel scalable approach to solve the LPP and the

aggregation framework addresses this need.

We consider the consist-based formulation of the weekly LPP introduced in Vaidyanathan

et al. (2007b) and apply the aggregation framework to solve this problem. We now show how the

LPP is a special case of the MCFP formulated in Section 5.2.3. The trains in the weekly train

schedule are analogous to the load arcs and the train connections, which allow the transfer of

locomotives from inbound trains at a station to outbound trains at the same station, are analogous

to the free arcs. Hence, the LPP can be formulated on a network as described in Section 2.1

which contains only two kinds of arcs: train arcs, and connection arcs. The consists are the

commodities which flow on this network. Also, the weekly train schedule is such that it can be

considered to be made up of a set of aggregated trains, each with a pre-specified frequency

varying between one and seven. These aggregated trains are analogous to aggregated load arcs.

Note that all instances of an aggregated train in the week are similar in terms of origin station,

destination station, departure time of the day, arrival time of the day, and duration. The only

factors which differentiate these trains are the departure day of the week, and arrival day of the

week. From these observations, it follows that the underlying network satisfies the reducability

property. The LPP is also governed by power requirement constraints, flow bounds on all train

arcs, flow balance constraints, and fleet-size constraints which are similar in structure to

constraints (5.1b), (5.1c), (5.1d), (5.1e), and (5.1f) respectively. Hence, the LPP falls into the

class of MCFPs that can be solved using the aggregation framework. We now proceed to

estimate the size of a typical instance of the LPP.









Problem size

A typical weekly train schedule has around 3,000 trains and eight consist types. Hence, the

space-time network will contain around 3,000 train arcs, and more than 500,000 connection arcs

for a total of more than 500,000 arcs. The number of nodes on this network will be 3,000 train

arrival nodes, 3,000 train departure nodes, for a total of 6,000 nodes. On each arc, we consider

decision variables for the flow of each of the eight commodities. Hence, the number of variables

in the formulation is around 500,000 x 8 = 4,000,000 variables. There are 3,000 train power

requirement constraints (5.1b), 3,000 train flow bound constraints (5.1c), 6,000 x 8 = 48,000

flow balance constraints corresponding to each commodity at each node (5.1d and 5.1e), and 8

fleet-size constraints (5.1f) giving a total of around 55,000 constraints. Hence, the LPP is a large-

scale integer MCFP with 55,000 constraints and millions of decision variables. Integer

programming problems of this size are intractable when solved using commercial integer

programming software. However, the aggregated LPP which is similar in structure to the

aggregated MCFP, is much smaller. Suppose the average frequency of each train is five, then the

aggregated LPP would roughly have only one-fifth the number of constraints and a small fraction

of the number of decision variables as the original problem. The aggregation of variables and

constraints results in a very compact aggregated formulation which can consequently be solved

very quickly using commercial software.

In Section 5.3.1, we mentioned that the estimation of the duration of free arcs is crucial to

ensure that the aggregated problem is a good approximation of the original problem. We now

describe a method to estimate durations of train connection arcs. This step is a crucial part of our

algorithmic approach and we empirically converged at the following method after a significant

amount of research and computational testing of various possibilities.









Estimating train connection times

The biggest approximation in the aggregated LPP is that the departure day of the week and

the arrival day of week information of trains are not considered. This could lead to the

aggregated problem generating bad solutions in terms of locomotive usage. For e.g. Consider a

weekly train A which arrives at a station on Monday at 10:00 AM and another weekly train B

that departs from the same station at 1 1:00 AM on Sunday. The optimal solution of the LPP is

not likely to use the connection between these weekly trains to route locomotives because the

idling time of the locomotive would be extremely high (six days and one hour). On the other

hand, in the aggregated network, since we do not consider the arrival and departure days of

individual trains, the connection between the corresponding aggregated trains could be used in

the solution. We handle this problem in the following manner. We define an estimated

connection time for each train connection on the aggregated network. The estimated connection

time between aggregated trains A and B is computed to represent the probable connection time if

a consist connects between a instance of aggregated train A and an instance of aggregated train

B. Note that we cannot compute this value exactly unless both A and B have a frequency of one.

We represent the estimated connection time of a train connection j by t, Note that since the

aggregated problem has several thousand train connections and the method used to estimate train

connection times needs to be run once for every connection, this method has to be very efficient

so as to not blow up overall computational times. Next, we describe the method used to estimate

the train connection times.

Consider an inbound aggregated train i and outbound aggregated train j at a particular

station. In order to compute the estimated connection time between these two aggregated trains,

we consider the trains corresponding to them and the complete set of connections between these









trains. Each connection is assigned time duration equal to the duration of that connection on the

original network. For example, suppose the inbound aggregated train has a frequency of four and

the outbound aggregated train has a frequency three, then we have the possibilities for

connections between corresponding seven day trains as shown in Figure 5-2.

In a general case, let the frequency of train i be represented by f(i). Let the actual

connection times between the corresponding weekly trains be represented as matrix M of

dimensions f(i) x f(j). We divide the computation of train connection times into two cases:

Case 1: | f(i) f(j)|<; 1

This case is when the inbound aggregated train and the outbound aggregated train have

similar frequencies. In this case the estimated connection time is computed by solving an

assignment problem between the inbound weekly trains and the outbound weekly trains. The

connection times in the matrix M represent the obj ective function of this problem, i.e., the

element M(i, j) represents the cost of assigning the ith inbound train to the jth outbound train. Let

the optimal obj ective function of this problem be obj. We then compute the estimated connection

time of the connection as obj/ min (f(i), f(j)).

Case 2: | f(i)- f(j)|> 1

This case is when the inbound aggregated train and outbound aggregated train have

frequencies which are quite different. Suppose the method described in case 1 were used in this

case, it may not give realistic estimates of connection times. For example, suppose the inbound

aggregated train had a frequency of one and arrives at 11 AM on Monday, and the outbound

aggregated train has a frequency of seven and departs at 1 1:30 AM every day of the week. Then,

if we were to compute the connection time based on the method in case 1, then we will obtain an

estimated connection time of 30 minutes. However, this value is over optimistic since there is no









guarantee that the connection between the inbound train on Monday and the outbound train on

Monday will be made. Based on our empirical analysis, we found that in this case we using the

average of all the connection times in M gives a good estimate of the connection time.

We were able to solve the aggregated LPP in a few seconds of computational time. We

applied the three methods of disaggregation described in Section 3 with the following results: (1)

The restricted multicommodity approach (method 1) produced solutions to the LPP that were

less than 1% away from the optimal solution in around 10 seconds of computational time; (2)

Method 2 produced solutions to the LPP that were around 1.75% away from the optimal solution

in around 2 seconds of computational time; (3) Method 3 produced solutions to the LPP that

were around 1.5% away from the optimal solution in around 2 seconds of computational time.

Our computational results section demonstrates the success of the aggregation framework as an

effective tool to solve the LPP. We were able to obtain near optimal solutions (less than two

percent gap) while consuming only one-fifteenth of the original computational times.

5.4.2 Airline Fleet Assignment Problem

The obj ective of the airline fleet assignment problem is to assign aircraft belonging to

different fleet types to flight legs to minimize the assignment cost and subj ect to the following

three types of constraints: (1) Covering constraints: Each flight leg must be assigned exactly one

aircraft; (2) Flow balance constraints: An aircraft must land before take-off; and (3) Fleet-size

constraints: For each fleet type, the number of aircraft used must not exceed the number of

aircraft available. A model which solves the problem described above is called a basic fleet

assignment model (FAM).

The fleet assignment problem has been well studied (Abara (1989), Hane et al. (1995),

Talluri (1996), Rexing et al. (2000), Barnhart, Kniker, and Lohatepanont (2002), and Ahuj a et al.

(2004)). Predominant approaches to solve this problem include integer programming algorithms,









branch-and-bound methods, and very large scale neighborhood search techniques. However, to

the best of our knowledge, none of the research of the past has employed aggregation methods to

solve this problem. Most US airlines have the same flight schedule for five days of the week and

a subset of the week day schedule in the weekend. Thus, airlines typically solve a daily fleet

assignment model whose solution is then repeated on each day of the week. Their approach

assumes that the flight schedule is the same on all days, which, strictly speaking does not hold

for most airline schedules. Also, the additional constraint that the fleet assignment should repeat

daily gives less flexibility to the model to assign aircraft to flight legs and may hence lead to

sub-optimal solutions.

US airlines typically operate 2,000 flights daily and the computational times using existing

methods for daily fleet FAMs are of the order of hours. Given the fact that these problems are

NP-Complete, it is very likely that the computational times will explode if the existing

approaches were applied to problems say five times larger. In order to demonstrate the

applicability of the aggregation based framework to solve larger FAMs, we consider the 5-day

fleet assignment problem or the weekday fleet assignment problem. Note that the 5-day flight

schedule can be considered to be made up of a smaller aggregated flight schedule where each

aggregated flight has a pre-specified frequency varying between one and five.

We now show how the FAM is a special case of the MCFP formulated in Section 2.3. The

flight legs in the flight schedule are analogous to the load arcs and the aircraft connections,

which allow the transfer of aircraft from inbound flights at an airport to outbound flight at the

same airport, are analogous to the free arcs. Hence, the FAM can be formulated on a network as

described in Section 2. 1 which contains only two kinds of arcs: flight arcs, and aircraft

connection arcs. The various aircraft types in the fleet are the commodities which flow on this









network. Also, the flight schedule, as mentioned in the previous paragraph, is such that it can be

considered to be made up of a set of aggregated flight legs, each with a pre-specified frequency

varying between one and five. These aggregated flight legs are analogous to aggregated load

arcs. Note that all instances of an aggregated flight leg in the week are similar in terms of origin

airport, destination airport, departure time of the day, arrival time of the day, and duration. The

only factors which differentiate these flight legs are the departure day of the week, and arrival

day of the week. From these observations, it follows that the underlying network satisfies the

reducability property. The FAM is governed by covering constraints which are similar to the

power requirement constraints (lb), flow balance constraints which are similar to constraints

(ld) and (le), and fleet-size constraints which are similar in structure to constraints (1f). Hence,

the FAM is a special case of MCFPs that can be solved using the aggregation framework. The

reader may also note that the FAM is in fact simpler than the LPP and the MCFP since aircraft

cannot deadhead on flight legs whereas multiple units can deadhead on load arcs. Also, note that

the aggregated FAM will have a similar structure to the daily FAM. Hence, it is quite possible

that the existing state-of-art algorithms to solve the daily FAM can be also be directly employed

to solve the aggregated FAM.

5.4.3 Airline Crew Scheduling Problem

The obj ective of airline crew scheduling is to assign individual crew members to flights in

a pre-specified schedule to minimize assignment costs and satisfy all governmental and

contractual restrictions such as maximum daily working hours, minimum overnight rest period,

maximum time away from a crew base, etc. In practice, airline crew scheduling is sequentially

divided into two stages: crew pairing and crew rostering. Among all the airports served by

airlines, some are called crew bases. Each crew belongs to a specific base. A crew pairing is a

connected sequence of flight segments that starts and ends at the same base location and also









satisfies all the legality constraints. The crew rostering problem then assigns individual crew

members to pairings.

The airline CSP is a well studied problem (Hoffman and Padberg (1993), Barnhart et al.

(1994, 2003), Vance et al. (1997), and Gopalakrishnan and Johnson (2005)). Predominant

approaches to solve this problem include column generation, zero-one programming, branch-

and-cut, and other integer programming approaches. In this section, we give a description of the

basic version of the problem and outline how the aggregation framework can be used to solve it.

Given a set of feasible crew pairings, the airline CSP can be formulated as the problem of

finding the best collection of crew pairings such that each flight leg is covered exactly once. This

problem is essentially a set partitioning problem and can be formulated in the following manner:

Mlin C clxj
]=1 to n

Ax = em,,

x, E (0, 1) for all j= -1ton


where em, is a vector having m entries equal to 1 and n is the number of crew pairings

considered. The matrix A is an m x n matrix where each row represents a flight leg and the

matrix is constructed in such a way that ar = 1 if flight leg i is covered by rotation j, and 0

otherwise. This problem is an NP-Complete problem with millions of decision variables and

hence almost all existing research deals with handling this computational complexity in an

efficient manner. To the best of our knowledge, none of the existing research has explored

aggregation as a means to solve this problem. We next outline our aggregation based approach to

solve this problem. Note that this problem does not exactly fall in the class of MCFP since there

is no underlying network and it is also not a multicommodity flow problem. However, due to the









reducability property of the flight schedule, it still lends itself to the aggregation framework

proposed.

In the previous section, we observed that 5-day flight schedule can be considered as an

aggregated flight schedule where each flight has a pre-specified frequency varying between one

and five. This gives us the intuition that instead of solving the larger CSP directly, we can adopt

an aggregation approach. We aggregate all instances of a flight in the week into a single

aggregated flight. Each aggregated flight now has a crew demand which is equal to its frequency

in the week (instead of one in the original model). We also consider pairings which are now

made up of aggregated flights and refer to these pairings as aggregated pairings. These

aggregated pairings are the decision variables in the aggregated CSP. The aggregated CSP can be

formulated as a set partitioning problem where the right hand side is now the frequency of the

corresponding aggregated flight.

The aggregated CSP is identical in structure to the original model. However, the size of the

aggregated model could be several times smaller. The reason for that is aggregation happens at

two levels: (1) decision variables, and (2) constraints. The flow on each aggregated pairing

represents the cumulative flow on several crew pairings in the original network. Also, in the

aggregated model we have only one partitioning constraint for every aggregated flight instead of

one for every flight in the original model. This aggregation of variables and constraints results in

a very compact formulation and consequently has the potential to be solvable quickly. Once we

obtain the solution to the aggregated model, we can use this solution to obtain a near optimal

solution to the original problem using suitably designed disaggregation methods.

5.4.4 Locomotive and Aircraft Routing Problems

The LRP involves routing each locomotive unit on a cyclic sequence of trains so that it can

be fueled and serviced as necessary; while at the same time satisfying all other business and










operational constraints considered in the LPP. We refer to the sequence of trains on which a

locomotive unit travels as a locomotive route. Fueling feasibility requires that each locomotive

route has sufficient fueling opportunities to ensure that the locomotive does not run out of fuel

(out-of-fuel event). This translates to the constraint that every locomotive needs to have a fueling

opportunity at least once for every F miles (900 miles) of travel. Similarly, servicing feasibility

requires that each locomotive route has sufficient servicing opportunities and this translates to

the constraint that every locomotive needs to have a servicing opportunity at least once for every

S miles (3,000 miles) of travel. The LRP, until very recently, was a practically unstudied

problem. Our recent research reported in Vaidyanathan, Ahuj a, and Orlin (2007c) and Chapter 4

considers the LRP. In that paper and in Chapter 4, we develop an aggregation-di saggregation

approach to solve the LRP. In this section, we give an overview of our research and refer the

interested reader to that paper for more details.

We use the concept of strings to formulate the LRP. A string is a connected sequence of

trains such that any locomotive which travels on this sequence can be fueled and serviced as

necessary. We formulate the LRP as an integer programming string decomposition problem

(SDP) on a suitably defined space-time network. The obj ective is to partition the locomotive

assignment (obtained from the planning model) on each train in the schedule into flows on

strings while simultaneously minimizing the solution costs. The SDP is essentially a set

partitioning problem with side constraints and is NP-Complete. The number of strings (decision

variables) in this problem runs to several million. Hence, a direct approach to solve this problem

is not likely to be tractable. Note that the LRP like the airline CSP does not exactly fall in the

class of MCFP described. However, due to the reducability property of the train schedule, it still

lends itself to the aggregation framework. We next summarize our aggregation based approach to









solve this problem and refer the reader to Vaidyanathan, Ahuj a, and Orlin (2007c) for further

details.

The train schedule satisfies the reducability property. Hence, in a similar manner to the

LPP, we aggregate all the instances of a train in the week into a single aggregated train. The flow

on each aggregated train represents the total flow on all weekly trains corresponding to it. We

also consider strings which are now made up of aggregated flights and refer to these strings as

aggregated strings. These aggregated strings are the decision variables in the aggregated LRP.

Using this method of variable aggregation, we are able to reduce the number of variables from

close to a million, to several thousand. Also, in the aggregated LRP we have only one

partitioning constraint for every aggregated train instead of one for every train in the original

model. Since the average frequency of aggregated trains is close to five, the number of

partitioning constraints becomes roughly one-fifth that of the original model. Also, since the

number of aggregated trains is one-fifth the number of original trains, the number of flow

balance constraints also reduces by the same factor. Thus, the aggregation of variables and

constraints results in a very compact formulation and consequently very fast run times. We also

developed a disaggregation algorithm using which this solution can be disaggregated to obtain

near optimal solutions to the original problem. Our computational results demonstrated that the

aggregation approach was able to solve a number of different instances of the LRP within five

minutes of computational time and with less than a 2.2 % optimality gap.

Another routing problem of interest is the aircraft maintenance routing problem. Several

researchers have worked on this problem (Feo and Bard (1989), Clarke et al. (1997), Gopalan

and Talluri (1998), Talluri (1998), Barnhart et al. (1998)). Barnhart et al. (1998) use a branch-

and-price based approach to solve the aircraft routing problem. Their formulation has a lot of









similarities to the formulation of the LRP described above. However, even for small problems

with 150-200 flights their approach takes 3-4 hours of computational time. Since the aircraft

routing problem is very similar in nature to LRP and is in fact simpler in several ways (described

in Vaidyanathan, Ahuj a, and Orlin (2007c)), we believe that the aggregation framework has the

potential to be a useful speed-up tool to solve this problem too.

5.5 Computational Results

In this section, we provide computational results of our algorithms on several instances of

the LPP with varying transport volumes. We implemented our algorithms in the Microsoft Visual

Basic programming language and tested them on the data provided by a maj or Class I US

railroad. We modeled our integer programs using ILOG Concert Technology 2.0 modeling

language and solved them using the CPLEX 9.0 solver. We conducted all our computational tests

on an Intel Pentium 4, 512-MB RAM, and 2.4-GHz processor desktop computer.

In order to test the performance of the aggregation framework, we first solve the LPP

exactly using the consist based formulation proposed in Vaidyanathan et al. (2007b) and measure

the solution cost and computational times. We then use the aggregation approach to solve this

problem and tabulate the performance of the three disaggregation approaches described in

Section 5.3. We present the results of our computational test in Table 5-1 and Figure 5-3.

From our computational tests we make the following conclusions:

* The aggregation based methods proposed were able to solve all instances of the LPP to less
than 2% optimality gap in less than one-fifteenth the original computational time.

* The difference between method 1 and method 2 is close to 1% in terms of optimality gap.
However, the difference in performance between methods 2 and 3 is only marginal.

* The aggregation based framework is able speed-up the solution times of all instances of the
LPP from a few minutes to a few seconds.









5.6 Summary and Conclusions

We develop an aggregation framework that that can be applied to solve a class of large-

scale integer multicommodity flow problems (MCFP). We define the terminology and describe

the properties of this class of problems in terms of the underlying network, the objective

function, and the constraints. The basic philosophy behind the aggregation approach is that

instead of solving a large-scale problem directly, we divide our approach into two stages. In the

first stage, we solve a much smaller aggregated model to optimality. Then, in the next stage we

disaggregate the solution of the first stage to obtain a near optimal solution to the original

problem.

We formulate the class of MCFP as an integer programming problem on a network and

describe the constraints in this problem. We also identify the properties that the network has to

satisfy for the aggregation framework to be applicable. We formulate the aggregated version of

the MCFP and show that it is much smaller in size than the original problem in terms of number

of decision variables and constraints. We establish the relationship between the feasibility of the

original MCFP and the feasibility of the aggregated MCFP, and also describe the importance of

estimating the duration of arcs to ensure that the aggregated model is a good approximation of

the original model. Finally, we describe three methods by which we can disaggregate the

solution to obtain the near optimal solutions to the original problem.

We demonstrate the applicability of the aggregation framework to solve several problems.

We first describe an application of the aggregation framework to solve the LPP. We show that

the LPP is a special case of the MCFP. Due to the nature of the aggregated LPP, its performance

depends critically on the estimation of train connection times. While the train connection times

in the original network can be computed trivially, in the aggregated network this information is

not readily available. This is because, in the aggregated network, we abstract out the information










regarding the operating day of a train and only consider its frequency and arrival and departure

times of the day. We describe methods to estimate train connection times on the aggregated

network in such a way that the aggregated model is a very good approximation of the original

model. Since the aggregated problem is much smaller in size than the original problem, it can be

solved to optimality quickly. We provide extensive computational results on the LPP to

demonstrate the efficacy of our approach. The computational results demonstrate that the

aggregation algorithm is able to obtain near optimal solutions (less than two percent gap) while

consuming only one-fifteenth the original computational times. We also outline applications of

the aggregation framework to solve airline fleet assignment problem, airline CSPs, LRPs, and

aircraft routing problems.

We believe that the aggregation framework described has the potential to be effectively

applied to solve large-scale optimization problems. The main benefit of this approach is the fact

aggregation shrinks the problem size leaving its structure virtually unaltered. Hence, the existing

state-of-the-art algorithms may be directly applied to the aggregated problem. Due to this reason,

it can be used as a tool to speed-up existing solution techniques to a wide variety of problems.










Table 5-1. Performance of the aggregation algorithm.
SNo Tonnage Exact Formulation Aggregation method 1 Aggregation method 2 Aggregation method 3

Cost Time Con. Cost Time Con. Gap Cost Time Con. Gap Cost Time Con. Gap

1 5,700 5,911,644 3m 20s 94.82 5,936,426 20.18s 94.82 0.42 5,998,630 5.54s 95.47 1.47 5,985,253 5.74s 95.14 1.23
2 6,080 6,325,823 8m 52s 95.14 6,369,353 27.31s 95.79 0.69 6,439,583 5.8s 94.89 1.80 6,414,983 6.22s 94.78 1.39
3 6,460 6,693,232 5m 57s 94.85 6,719,490 25.41s 94.46 0.39 6,825,278 6.87s 93.85 1.97 6,795,265 7.20s 93.92 1.50
4 6,840 6,994,761 6m 41s 94.93 7,035,412 16.79s 95.43 0.48 7,113,596 6.43s 94.82 1.70 7,088,953 8.44s 94.93 1.33
5 7,220 7,444,726 6m 41s 94.75 7,519,868 23.57s 94.10 1.01 7,588,132 5.57s 94.28 1.93 7,588,063 5.74s 94.21 1.89
6 7,600 7,848,320 7m 09s 94.96 7,895,066 34.47s 95.29 0.60 7,982,082 6.09s 93.81 1.70 7,965,902 6.29s 93.59 1.48
7 7,980 8,295,953 6m 01s 94.64 8,369,668 20.05s 93.99 0.89 8,458,740 6.09s 92.88 1.96 8,442,541 6.50s 93.31 1.74
























I
I
I
I
I
I

I
I


,


I \
\I
~I I
\I
L I
I \
I \









ii
i I
r
r ,
i I
,I









Load are




Free are


O


Arrival node




Departure node


Figure 5-1. Network.


OTrain 1-Mon
--- Train 2-Mon






STrain 1-Tue


Tri 2-e

O~~~ Tri -e





O --- Train 2-Thr


Figure 5-2. Potential train connections.














































Figure 5-3. Performance of the aggregation algorithm.


'


00


8,500,000



8,000,000



7,500,000



7,000,000



6,500,000



6,000,000 -



5,500,000 -
5,5(


-- Exact
-m-e INthod 1
-A- INbthod 2


6,000


6,500


7,000

Tonnage


7,500


8,000


8,500










LIST OF REFERENCES

Abara, J. 1989. Applying integer linear programming to the fleet assignment problem. Interfaces
19 20-28.

Ahuja, R.K., K.C. Jha, J. Liu. 2007. Solving real-life railroad blocking problems.1interfaces
forthcoming.

Ahuja, R.K., J. Liu, J. Goodstein, A. Mukherjee, J.B. Orlin. 2004. A neighborhood search
algorithm for the combined through and fleet assignment model with time windows.
Networks 44 160-171.

Ahuja, R.K., T.L. Magnanti, J.B. Orlin. 1993. Network Flows: Theory, Algorithms, and
Applications. Prentice Hall, Englewood Cliffs, NJ.

Ahuja, R.K., J. Liu, J.B. Orlin, D. Sharma, L.A. Shughart. 2005. Solving real-life locomotive
scheduling problems. Transportation Science 39 503-517.

Assad, A.A. 1978. Multicommodity network flows A survey. Networks 8 37-91.

Assad, A.A. 1980a. Solving linear multicommodity flow problems. Proceedings of the IEEE
International Conference on Circuits and Computers, 157-161.

Assad, A.A. 1980b. Models for rail transportation. Transportation Research 14A 205-220.

Assad, A.A. 1981. Analytical models in rail transportation: an annotated bibliography. INFOR
19 59-80.

Assad, A.A. 1983. Analysis of rail classification policies. INFOR 21 293-3 14.

Bamhart, C. 1988. A network-based primal-dual solution methodology for the multicommodity
network flow problem. Ph. D. Dissertation, Dept. of Civil Engineering, MIT, Cambridge,
MA.

Bamnhart, C. 1993. Dual-ascent methods for large-scale multi-commodity flow problems. Naval
Research Logistics 40 305-324.

Bamnhart, C., N.L. Boland, L.W. Clarke, E.L. Johnson, G.L. Nemhauser, R.G. Shenoi. 1998.
Flight string models for aircraft fleeting and routing. Transportation Science 32 208-220.

Bamhart, C., C.A. Hane, P.H. Vance. 2000a. Using branch-and-price-and-cut to solve origin-
destination integer multicommodity flow problems. Operations Research 48 318-326.

Bamnhart, C., H. Jin, P.H. Vance. 2000b. Railroad blocking : A network design application.
Operations Research 48 603-614.

Bamhart, C., E. L. Johnson, R. Anbil, L. Hatay. 1994. A column generation technique for the
long-haul crew assignment problem. T. Ciriano, R. Leachman, eds. Optimization in
Industry: Volume II. John Wiley and Son, England, UK, 7-22.


183










Bamnhart, C., E. L. Johnson, G. L Nemhauser, P. H. Vance. 2003. Crew scheduling. R.W. Hall,
eds. Handbook of Transportation Science. Kluwer Academic Publisher, Norwell, MA, 493-
521.

Bamnhart, C., T.S. Kniker, M. Lohatepanont. 2002. Itinerary-based airline fleet assignment.
Transportation Science 36 199-217.

Bamnhart, C., Y. Sheffi. 1993. A network-based primal-dual heuristic for the solution of
multicommodity network flow problems. Transportation Science 27 102-117.

Bellmore, M., G. Bennington, S. Lubore. 1971. A multivehicle tanker scheduling problem.
Transportation Science 5 36-47.

Bodin, L., B. Golden, A.A. Assad, M. Ball. 1983. Routing and scheduling of vehicles and crews:
The state of the art. Computer and' Operations Research 10 63-21 1.

Bodin, L.D., B.L. Golden, A.D. Schuster, W. Rowing. 1980. A model for the blocking of trains.
Transportation Research 14B 115-120.

Booler, J.M.P. 1980. The solution of a railway locomotive scheduling problem. Journal of the
Operational Research Society 31 943-948.

Booler, J.M.P. 1995. A note on the use of Lagrangean relaxation in railway scheduling. Journal
of the Operational Research Society 46 123-127.

Brannlund, U., P.O. Lindberg, A. Nou, J.E. Nilson. 1998. Railway timetabling using Lagrangian
relaxation. Transportation Science 32 358-369.

Brunetta, L., M. Conforti, M. Fischetti. 2000. A polyhedral approach to an integer
multicommodity flow problem. Discrete Applied]\ AubeinalltliL 101 13-36.

Campbell, K.C. 1996. Booking and revenue management for rail intermodal services. PhD
Dissertation. Department of Systems Engineering, University of Pennsylvania,
Philadelphia, PA.

Caprara, A., M. Fischetti, P. Toth, D. Vigo, P.L. Guida. 1997. Algorithms for railway crew
management. Mathematical Programming 79 124-141.

Carraresi, P., G. Gallo. 1984. Network models for vehicle and crew scheduling. European
Journal of Operational Research 16 139-1 51 .

Castro, J, N. Nabona. 1996. An implementation of linear and nonlinear multicommodity network
flows. European Journal of Operational Research 92 37-53.

Chen, H., C.G. Dewald. 1974. A generalized chain labeling algorithm for solving
multicommodity flow problems. Computers and' Operations Research 1 437-465.










Chih, K.C., M.A. Hornung, M. S. Rothenberg, A.L. Kornhauser. 1990. Implementation of a real
time locomotive distribution system. T.K.S. Murthy, R.E. Rivier, G.F. List, J. Mikolaj, eds.
Computer Applications in Railway Plan2ning and Management. Computational Mechanics
Publications, Southampton, UK, 39-49.

Chu, C.K., C.H. Chan. 1998. Crew scheduling of light rail transit in Hong Kong: From modeling
to implementation. Computer and' Operations Research 25 887-894.

Clarke, L., E. Johnson, G. Nemhauser, Z. Zhu. 1997. The aircraft rotation problem. Annals of
Operations Research 69 33-46.

Cordeau, J.F., F. Soumis, J. Desrosiers. 1998a. A Benders decomposition approach for the
locomotive and car assignment problem. Technical Report G-98-35, GERAD, Ecole des
Hautes Etudes Commerciales de Montreal, Canada.

Cordeau, J.F., P. Toth, D. Vigo. 1998b. A survey of optimization models for train routing and
scheduling. Transportation Science 32 380-404.

Crainic, T.G., J.A. Ferland, J.M. Rousseau. 1984. A tactical planning model for rail freight
transportation. Transportation Science 18 165-184.

Cremeans, J.E., R.A. Smith, G.R. Tyndall. 1970. Optimal multicommodity network flows with
resource allocation. Naval Research Logistics Quarterly 17 269-280.

Dantzig, G.B., P. Wolfe. 1960. Decomposition principle for linear programs. Operations
Research 8 101-111.

Desrosiers, J., Y. Dumas, M.M. Solomon, F. Soumis. 1995. Time-constrained routing and
scheduling. M.O. Ball, eds. Handbooks in OR & M~S, Vol. 8. Elsevier Science, 35-139.

Detlefsen, N.K., S.W. Wallace. 2002. The simplex algorithm for multicommodity networks.
Networks 39 15-28.

Ernst, A.T., H. Jiang, M. Krishnamoorthy, H. Nott, D. Sier. 2001. An integrated optimization
model for train crew management. Annals of Operations Research 108 2 1 1-224.

Evans, J.R. 1977. Some network flow models and heuristics for multiproduct production and
inventory planning. AIIE Transactions 9 75-81.

Farvolden, J.M., W.B. Powell. 1994. Subgradient methods for service network design problem.
Transportation Science 28 256-272.

Farvolden, J.M., W.B. Powell, I.J. Lustig. 1993. A primal partitioning solution for the arc-chain
formulation of a multicommodity network flow problem. Operations Research 41 669-
693.

Feo, T.A., J.F. Bard. 1989. Flight scheduling and maintenance base planning. Management
Science 35 1415-1432.










Fischetti, M., P. Toth. 1997. A package for locomotive scheduling. Technical Report DEIS-OR-
97-16, University of Bologna, Italy.

Florian, M., G. Bushell, J. Ferland, G. Guerin, L. Nastansky. 1976. The engine scheduling
problem in a railway network. INFOR 14 121-138.

Florida Department of Transportation Report. 2005. Freight rail component of the Florida Rail
Plan. Technical Report.

Freling, R., R.M. Lentink, A.P.M. Wagelmans. 2004. A decision support system for crew
planning in passenger transportation using a flexible branch-and-price algorithm. Annals of
Operations Research 127 203-222.

Forbes, M.A., J.N. Holt, A.M. Watts. 1991. Exact solution of locomotive scheduling problems.
Journal of Operational Research Society 42 825-83 1.

Ford, L.R., D.R. Fulkerson. 1958. A suggested computation for maximal multicommodity
network flow. Management Science 5 97-101.

Frangioni, A., G. Gallo. 1999. A bundle type dual-ascent approach to linear multicommodity
min-cost flow problems. INFORM~S Journal on Computing 11 370-393.

Garey, M.R., D.S. Johnson. 1979. Computers and intractability: A guide to the theory ofNP-
completeness. W.H. Freeman, New York, NY.

Gautier, A., F. Granot. 1995. Forest management: A multicommodity flow formulation and
sensitivity analysis. Management Science 41 1654-1688.

Gersht, A., A. Shulman. 1987. A new algorithm for the solution of the minimum cost
multicommodity flow problem. Proceedings of the IEE Conference on Decision and
Control 26, 748-758.

Goeffrion, A.M., G.W. Graves. 1974. Multicommodity distribution system design by Benders
decomposition. Management Science 20 822-844.

Golden, B.L. 1975. A minimum cost multicommodity network flow problem concerning imports
and exports. Networks 5 331-356.

Gopalakrishnan, B., E. Johnson. 2005. Airline crew scheduling: State-of-the-art. Annals of
Operations Research 140 305-337.

Gopalan, R., K.T. Talluri. 1998. The aircraft maintenance routing problem. Operations Research
46 260-272.

Gorman, M.F., M. Sarrafzadeh. 2000. An application of dynamic programming to crew
balancing at Burlington Northern Santa Fe Railway.1International Journal of Services
Technology and Management 1 174-187.










Graves, G.W., R.D. McBride. 1976. The factorization approach to large scale linear
programming. Mathematical Progrananing 10 91-110.

Hane, C.A., C. Barnhart, E.L. Johnson, R.E. Marsten, G.L. Nemhauser, G. Sigismondi. 1995.
The fleet assignment problem: Solving a large-scale integer program. Mathematical
Progrananing 70 211-232.

Haghani, A.E. 1989. Formulation and solution of a combined train routing and makeup, and
empty car distribution model. Transportation Research 23B 433-452.

Hoffman, K.L, M. Padberg. 1993. Solving airline crew scheduling problems by branch-and-cut.
Management Science 39 657-682.

Holmberg, K., D. Yuan. 2003. A multicommodity network-flow problem with side constraints
on paths solved by column generation. INFORM~S Journal on Computing 15 42-57.

Jha, K.C. 2004. Very large-scale neighborhood search heuristics for combinatorial optimization
problems. Department of Industrial and Systems Engineering, University of Florida,
Gainesville, FL.

Kaplan, S. 1973. Readiness and the optimal redeployment of resources. Naval Research
Logistics Quarterly 20 625-63 8.

Keaton, M.H. 1989. Designing optimal railroad operation plans: Lagrangian relaxation and
heuristic approaches. Transportation Research 23B 415-431.

Keaton, M.H. 1992. Designing optimal railroad operating plans: A dual adjustment method for
implementing Lagrangian relaxation. Transportation Science 26 262-279.

Kennington, J.L., R.V. Hel gason. 1980. Algorithms for Network Progrananing. Wiley-
Interscience, NY.

Kennington, J.L. 1978. Survey of linear cost multicommodity network flows. Operations
Research 26 209-236.

Kennington, J.L., M. Shalaby. 1977. An effective subgradient procedure for minimal cost
multicommodity flow problems. Management Science 23 994-1004.

Korte, B. 1988. Applications of combinatorial optimization. Technical Report No. 88541-OR.
Institute fiir Okonometrie und Operations Research, Nassestrasse 2, D-5300, Bonn, West
Germany.

Kraft, E.R. 1998. A reservation-based railway network operations management system. PhD
Dissertation. Department of Systems Engineering, University of Pennsylvania,
Philadelphia, PA.

Larsson, T., D. Yuan. 2004. An augmented Lagrangian algorithm for large scale
multicommodity routing. Computational Optimization and Applications 27 187-215.










Lin, Y., J. Yuan. 2001. On a multicommodity flow network reliability model and its application
to a container-loading transportation problem. Journal of Operations Research Society of
Japan 44 366-377.

Lohatepanont, M., C. Barnhart. 2004. Airline schedule planning: integrated models and
algorithms for schedule design and fleet assignment. Transportation Science 38 19-32.

Mamer, J.W., R.D. McBride. 2000. A decomposition-based pricing procedure for large-scale
linear programs: An application to the linear multicommodity flow problem. Management
Science 46 693-709.

Maroti, G., L. Kroon. 2005. Maintenance routing for train units: the transition model.
Transportation Science 39 518-525.

Matsumoto, K., T. Nishizeki, N. Saito. 1985. An efficient algorithm for finding multicommodity
flows in planar networks. SIAM~Journal on Computing 14 289-302.

Newton, H.N., C. Barnhart, P.M. Vance. 1998. Constructing railroad blocking plans to minimize
handling costs. Transportation Science 32 330-345.

Nou, A., J. Desrosiers, F. Soumis. 1997. Weekly locomotive scheduling at Swedish State
Railways. Technical Report G-97-3 5, GERAD, Ecole des Hautes Etudes Commerciales de
Montreal, Canada.

Ouaj a, W., Richards, B. 2004. A hybrid multicommodity routing algorithm for traffic
engineering. Networks 43 125-140.

Pinar, M.C., S.A. Zenios. 1990. Parallel decomposition of multicommodity network flows using
smooth penalty functions. Technical Report 90-12-06, Department of Decision Sciences,
Wharton School, University of Pennsylvania, Philadelphia, PA.

Radzig, T. 1997. Fast deterministic approximation for the multicommodity flow problem.
Mathematical Progrananing 78 43-58.

Ramani, K.V. 1981. An information system for allocating coach stock on Indian Railways.
Interfaces 11 44-51.

Rexing, B., C. Barnhart, T. Kniker, A. Jarrah, N. Krishnamurthy. 2000. Airline fleet assignment
with time windows. Transportation Science 34 1-20.

Schneur, R. 1991. Scaling algorithms for multicommodity flow problems and network flow
problems with side constraints. Ph.D. Dissertation, Department of Civil Engineering, MIT,
Cambridge, MA.

Schneur, R., J.B. Orlin. 1998. A scaling algorithm for multicommodity flow problems.
Operations Research 46 23 1-246.










Smith, S., Y. Sheffi. 1988. Locomotive scheduling under uncertain demand. Transportation
Research Records 1251 45-53.

Surface Transportation Board, US Department of Transportation, Bureau of Accounts,
Employment Data, 2006.

Swoveland, C. 1971. Decomposition algorithms for the multi-commodity distribution problem.
Working Paper No. 184, Westemn Management Science Institute, University of California,
Los Angeles.

Talluri, K.T. 1996. Swapping applications in daily airline fleet assignment. Transportation
Science 30 237-248.

Talluri, K.T. 1998. The four-day aircraft maintenance routing problem. Transportation Science
32 43-53.

Tomlin, J.A. 1966. A linear programming model for the assignment of traffic. Proceedings of the
3rd C'onference of the Aurstrarlianr Road Researrch Board 3, 263-271.

Vaidyanathan, B., K.C. Jha, R.K. Ahuj a. 2007a. Multicommodity network flow approach to the
railroad crew-scheduling problem. IBM~Journal ofResearch andDevelopnzent 51 325-344.

Vaidyanathan, B., R.K. Ahuja, J. Liu, L.A. Shughart. 2007b. Real-life locomotive planning: new
formulations and computational results. Transportation Research B forthcoming.

Vaidyanathan, B., R.K. Ahuja, J.B. Orlin. 2007c. The locomotive routing problem. Working
paper, Department of Industrial and Systems Engineering, University of Florida,
Gainesville, FL.

Vance, P.H., C. Bamnhart, E.L. Johnson, G.L. Nemhauser. 1997. Airline crew scheduling: A new
formulation and decomposition algorithm. Operations Research 45 188-200.

Walker, C.G., J. N. Snowdon, D. M. Ryan. 2005. Simultaneous disruption recovery of train
timetable and crew roster in real time. Computer and Operations Research 32 2077-2094.

Wise, T. H. 1995. Colwnn Generation and Polyhedral Combinatorics for Airline Crew
Scheduling. Ph.D. Dissertation, Comell University, Ithaca, NY.

Wren, A. 1981. Computer Scheduling of Public Transport. North-Holland, Amsterdam.

Wright, M.B. 1989. Applying stochastic algorithms to a locomotive scheduling problem. Journal
of the Operational Research Society 40 187-192.

Ziarati, K., F. Soumis, J. Desrosiers, S. Gelinas, A. Saintonge. 1997. Locomotive assignment
with heterogeneous consists at CN North America. European Journal of Operational
Research 97 281-292.










Ziarati, K., F. Soumis, J. Desrosiers, M.M. Solomon. 1999. A branch-first, cut-second approach
for locomotive assignment. Management Science 45 1156-1168.









BIOGRAPHICAL SKETCH

Balachandran Vaidyanathan is from India and he received his early education in the coastal

city of Chennai. He received his bachelor' s degree in naval architecture and ocean engineering

from the Indian Institute of Technology, Madras, India in 2002. Since August 2003, he has been

pursuing his doctoral degree at the Department of Industrial and Systems Engineering,

University of Florida. His academic interests include mathematical modeling and design of

algorithms to solve real-world problems. He has made contributions in the areas of railroad crew

and locomotive scheduling and has been awarded INFORMS 2004 and 2006 Honorable

Mentions in their annual student paper competition on Management Science in Railroad

Applications. He also received the Graduate Student Best Paper Award 2007 from the

Transportation Research Forum.





PAGE 1

1 NEXT GENERATION ALGORITHMS FO R RAILROAD CREW AND LOCOMOTIVE SCHEDULING By BALACHANDRAN VAIDYANATHAN A DISSERTATION PRESENTED TO THE GRADUATE SCHOOL OF THE UNIVERSITY OF FLOR IDA IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF DOCTOR OF PHILOSOPHY UNIVERSITY OF FLORIDA 2007

PAGE 2

2 Balachandran Vaidyanathan

PAGE 3

3 To my parents

PAGE 4

4 ACKNOWLEDGMENTS First, I thank my advisor Dr. Ravindra K. Ahuja who has been a great supervisor and mentor through my study at the University of Fl orida. His drive, enthusiasm, and sense of purpose have been exemplary, and his advice and support extremely helpful. I also express my gratitude to Dr. Joseph P. Geunes, Dr. Donald W. Hearn, and Dr. Sa rtaj Sahni for serving as my supervisory committee members and giving me thoughtful suggestions. My special acknowledgement goes to my frie nd and professor Dr. G. Srinivasan who inspired me to take up Operations Research as a career. I thank all my collaborators, colleagues, and friends, especially, Dr. James B. Orlin, Dr. Jian Liu, Dr. Kris hna Jha, Dr. Arvind Kumar, Dr. Guvenc Sahin, Mr. Larry A. Shughart, Sailash Mani, Ashwin Arulselvan, Suchandan Guha, Ibrahim Karakayali, Ismail Bakal, and Ashish Nemani. I acknowledge my entire family and friends for their support. My utmost appreciation goes to my parents who taught me some of the most valuable lessons in life, to my sister whose energy and enthusiasm are limitless, and to my gr andparents for always believing in me. Finally, I thank my wife, Sirisha, for her unwavering su pport which was instrumental in the completion of my research and dissertation.

PAGE 5

5 TABLE OF CONTENTS page ACKNOWLEDGMENTS...............................................................................................................4 LIST OF TABLES................................................................................................................. ..........8 LIST OF FIGURES................................................................................................................ .........9 ABSTRACT....................................................................................................................... ............11 CHAPTER 1 INTRODUCTION..................................................................................................................13 2 THE RAILROAD CREW SCHEDULING PROBLEM........................................................16 2.1 Introduction............................................................................................................... ........16 2.2 Problem Description........................................................................................................ .23 2.2.1 Terminology...........................................................................................................23 2.2.2 Regulatory and Contractual Requirements.............................................................26 2.2.3 Problem Inputs........................................................................................................27 2.2.4 Constraints and Objective Function.......................................................................28 2.3 Mathematical Modeling....................................................................................................28 2.3.1 Space-Time Network..............................................................................................28 2.3.2 Integer Programming Formulation (IPF)................................................................31 2.4 Solution Approaches........................................................................................................ .37 2.4.1 Successive Constraint Generation (SCG) Algorithm.............................................37 2.4.2 Quadratic Cost-Perturbation (QCP) Algorithm......................................................39 2.5 Significances and Uses of the Model................................................................................42 2.5.1 Tactical Crew Scheduling.......................................................................................42 2.5.2 Crew Planning........................................................................................................43 2.5.3 Crew Strategic Analysis.........................................................................................44 2.6 Computational Results......................................................................................................46 2.6.1 Comparison of Algorithms.....................................................................................46 2.6.2 Case Study..............................................................................................................48 2.7 Summary and Conclusions...............................................................................................51 3 REAL-LIFE LOCOMOTIVE PLA NNING: NEW FORMULATIONS AND COMPUTATIONAL RESULTS............................................................................................61 3.1 Introduction............................................................................................................... ........61 3.2 Notation and Terminology................................................................................................64 3.2.1 Notation................................................................................................................. .64 3.2.2 Hard Constraints.....................................................................................................66 3.2.3 Soft Constraints......................................................................................................67 3.2.4 Previous Research..................................................................................................68

PAGE 6

6 3.3 Mathematical Modeling....................................................................................................69 3.3.1 Space-Time Network..............................................................................................69 3.3.2 Consist Flow Formulation for the LPP...................................................................71 3.3.3 Hybrid Formulation for the LPP.............................................................................76 3.3.4 Identifying Good Consists......................................................................................79 3.4 Incorporating Practical Requirements..............................................................................80 3.4.1 Incremental Locomotive Planning.........................................................................80 3.4.2 Cab Signal Requirements.......................................................................................82 3.4.3 Foreign Power Requirements.................................................................................84 3.5 Computational Results......................................................................................................85 3.5.1 Comparison of Formulations..................................................................................86 3.5.2 Identifying Good Consists......................................................................................86 3.5.3 Incremental Locomotive Planning.........................................................................87 3.5.4 Case Study..............................................................................................................87 3.6 Summary and Conclusions...............................................................................................90 4 THE LOCOMOTIVE ROUTING PROBLEM......................................................................99 4.1 Introduction............................................................................................................... ........99 4.2 Notations and Terminology............................................................................................104 4.3 Overview of Our Approach............................................................................................106 4.4 The Locomotive Planning Problem (LPP).....................................................................106 4.5 Fuel and Service String Enumeration Algorithms..........................................................107 4.6 String Decomposition Problem (SDP)............................................................................111 4.6.1 Space-Time Network............................................................................................111 4.6.2 Integer Programming Formulation.......................................................................113 4.7 A Tractable Solution Approach: Aggregation and Disaggregation................................116 4.7.1 Aggregated Model................................................................................................117 4.7.2 Disaggregation Model..........................................................................................122 4.8 Handling Infeasibilities...................................................................................................126 4.9 Computational Results....................................................................................................129 4.9.1 Testing the Performance of the Algorithm...........................................................129 4.9.2 Case Study............................................................................................................130 4.10 Summary and Conclusions...........................................................................................132 5 AGGREGATION FRAMEWORK TO SO LVE LARGE-SCALE INTEGER MULTICOMMODITY FLOW PROBLEMS......................................................................145 5.1 Introduction............................................................................................................... ......145 5.2 Problem Definition, Notation, and Formulation.............................................................149 5.2.1 Network................................................................................................................149 5.2.2 Constraints............................................................................................................150 5.2.3 Formulation..........................................................................................................151 5.2.4 Reducibility Property of the Network..................................................................153 5.3 Aggregation and Disa ggregation Algorithm..................................................................153 5.3.1 Aggregated Multicommodity Flow Problem........................................................154 5.3.2 Disaggregation......................................................................................................161

PAGE 7

7 5.4 Applications of the Aggregation Framework.................................................................164 5.4.1 Locomotive Planning Problem.............................................................................164 5.4.2 Airline Fleet Assignment Problem.......................................................................170 5.4.3 Airline Crew Scheduling Problem........................................................................172 5.4.4 Locomotive and Aircraft Routing Problems........................................................174 5.5 Computational Results....................................................................................................177 5.6 Summary and Conclusions.............................................................................................178 LIST OF REFERENCES.............................................................................................................183 BIOGRAPHICAL SKETCH.......................................................................................................191

PAGE 8

8 LIST OF TABLES Table page 2-1 Comparison of algorithmic performance...........................................................................53 2-2 Effect of varying crew pool sizes.......................................................................................54 2-3 Effect of varying deadhead cost.........................................................................................54 2-4 Effect of varying minimum rest time at home location.....................................................55 2-5 Effect of varying detention cost.........................................................................................55 2-6 Effect of varying detention time........................................................................................56 3-1 Set of input consists...................................................................................................... .....92 3-2 Comparison of formulations: Scenario 1...........................................................................92 3-3 Comparison of formulations: Scenario 2...........................................................................92 3-4 Computational results of incremental locomotive planning..............................................93 3-5 Effect of varying the minimum connection time...............................................................93 3-6 Effect of varying transport volumes..................................................................................94 3-7 Effect of varying train travel times....................................................................................94 4-1 Performance of the lo comotive routing algorithm...........................................................135 4-2 Effect of varying se rvicing distance threshold.................................................................135 4-3 Effect of varying number of fueling stations...................................................................135 4-4 Effect of varying the number of servicing stations..........................................................136 5-1 Performance of the aggregation algorithm......................................................................180

PAGE 9

9 LIST OF FIGURES Figure page 2-1 Space-time network for a single-ende d district with a single crew type...........................57 2-2 Illustration of the FirstIn-First-Out (FIFO) rule...............................................................58 2-3 Crew assignments are made in (a) Non-FIFO manner, and (b) FIFO manner..................58 2-4 Solution cost vs. number of crews.....................................................................................59 2-5 Solution cost vs. minimum rest time at home....................................................................59 2-6 Solution cost vs. detention time.........................................................................................60 3-1 Overview of the loco motive scheduling algorithm............................................................95 3-2 A part of the space-time network.......................................................................................96 3-3 Solution cost of the consist fo rmulation vs. number of consists........................................96 3-4 Solution cost vs. number of consists..................................................................................97 3-5 Solution cost vs. minimum connection time......................................................................97 3-6 Solution cost vs. transport volumes...................................................................................98 3-7 Solution cost vs. % in crease in travel time........................................................................98 4-1 Flowchart of the fuel and service routing algorithm........................................................137 4-2 Fuel string enumeration algorithm...................................................................................138 4-3 Service string enumeration algorithm..............................................................................139 4-4 A part of the space-time network at a particular service station......................................140 4-5 Disaggregated strings and corresponding aggregated string...........................................140 4-6 Disaggregation algorithm.................................................................................................141 4-7 Example of infeasibility.................................................................................................. .141 4-8 Performance of the lo comotive routing algorithm...........................................................142 4-9 Solution cost vs. servicing threshold...............................................................................143 4-10 Solution cost vs. number of fueling locations..................................................................143

PAGE 10

10 4-11 Solution cost vs. number of servicing locations..............................................................144 5-1 Network................................................................................................................... .........181 5-2 Potential train connections...............................................................................................181 5-3 Performance of the aggregation algorithm......................................................................182

PAGE 11

11 Abstract of Dissertation Pres ented to the Graduate School of the University of Florida in Partial Fulfillment of the Requirements for the Degree of Doctor of Philosophy NEXT GENERATION ALGORITHMS FO R RAILROAD CREW AND LOCOMOTIVE SCHEDULING By Balachandran Vaidyanathan August 2007 Chair: Ravindra K. Ahuja Major: Industrial and Systems Engineering Our research concerns optimal railroad crew and locomotive management. Crew scheduling entails assigning crews to trains while complying with union rules, so that the crew costs are minimal and train delays due to cr ew unavailability are minimized. Locomotive scheduling ensures the correct number and type of locomotives are attached to each train such that a train has sufficient pulli ng power while satisfying a variety of business constraints and minimizing locomotive costs. Locomotive rou ting involves routing each locomotive unit on a cyclic sequence of trains so that it can be fuel ed and serviced as necessary. These problems are difficult to solve NP-Complete problems and the North American locomotive and crew scheduling problems have not yet been solved satisfactorily. However, solving these problems has the potential to save railroads several million dollars a year. First, we examine the North American ra ilroad crew scheduling problem (CSP). We develop a network-flow based crew-optimizatio n model and design efficient algorithms using problem decomposition and relaxati on techniques. Next, we extend th e earlier attempts to solve the locomotive planning problem (LPP) on severa l dimensions by considering new constraints desired by locomotive directors. We develop ad ditional formulations necessary to transition solutions of our models to practice and report co mputational tests of th ese models on the data

PAGE 12

12 provided to us by a major US railroad. Next, we study the locomotive ro uting problem (LRP). The LRP is a very large-scale combinatorial optimization problem and has previously been unstudied and unsolved. We formul ate the LRP as an integer programming problem on a suitably constructed space-time network and develop fast aggregation-disaggregation based methods to solve this problem. Finally, we study the multic ommodity flow problem (MCFP). MCFPs have found application in wide variety of domains. Th e LPP and the CSP are indeed special cases of the MCFP. However, the integer version of th is problem is NP-Complete. We propose a novel aggregation-disaggregation framework to solv e a class of large-scale integer MCFPs.

PAGE 13

13 CHAPTER 1 INTRODUCTION US railroads carry millions of railcars annuall y accounting for 40% of the nations intercity ton-miles. US freight tonnage is expected to double in volume over the next 20 years (Florida Department of Transportation Report (2005)). Po licy makers and corporate leaders are very concerned about the ability of the nations infrastructure to handle this growth. Congestion has increasingly become a major ec onomic barrier to the free flow of goods across the nation, with highways, airports, and railroads all laboring under record levels of volume, high energy costs, employee shortages, reduced funding, and additional challenges of security and severe weather. A number of recent studies from policy thi nk tanks, government agencies, and academic associations have shown that the railroad industry must do more to avert crippling gridlock. It is thus incumbent on us as a society to work t ogether to discover new and innovative techniques whereby all transportation provi ders, including the railroads, can improve the utilization, productivity, and reliability of the existing infrast ructure. In this study, we have considered two very important problems related to railro ad operations: crew scheduling and locomotive planning. We have developed robust optimization techniques to solve these problems quickly and to near optimality. In our research, we ha ve placed a large emphasi s on implementability of solutions, which refers to the ability of a solu tion to be used in real-life. Our algorithms for locomotive and crew scheduling are designed to produce implementable solutions which can be used by railroads to re alize potential savings. Railroads decompose their planning and sche duling problems into a number of stages. A blocking plan specifies how a set of cars with di fferent origin-destination pairs be consolidated into relatively large groups (blocks) of cars to reduce handlings. These blocks then travel over the train network. The train schedu le prescribes the number of trai ns to assemble, the origin, the

PAGE 14

14 destination, the route of each train, the arrival an d departure times of each train at each station, and the days of operation of each train. Once the train schedules have been finalized, locomotives and crews must be assigned to each train. Locomotive scheduling ensures the correct number and type of locomotives are atta ched to each train such that every train has sufficient pulling power, while simultaneously sa tisfying a variety of business constraints and minimizing locomotive costs. Crew scheduling enta ils assigning crews to trains in each crew district, while complying with union rules, so th at the crew costs are minimal and train delays due to crew unavailability are minimized. The railroad blocking problem and the train scheduling problem are well studied problems. Some recent references for the blocking probl em are Newton, Barnhart, and Vance (1998), Barnhart, Jin, and Vance (2000b), and Ahuja, Jha, and Liu (2007). Ahuja, Jha, and Liu (2007) conduct the most comprehensive study of the bl ocking problem. They developed a very large scale neighborhood search (VLSN) algorithm to so lve this problem. This algorithm was applied to data provided by several railroads producing ex cellent computational re sults. Their algorithms have also been licensed by two Class I railroads in the United States. Given a blocking plan, developing a train schedule is the next operationa l planning task faced by a railroad. The train scheduling problem is to identify train routes, their frequencies ( how often they run in a week), and their timetables so as to minimize the cost of carrying cars from their origins to their destinations. The train schedule developed is repeated every period (mostly weekly). Some recent research on this problem is due to Fa rvolden and Powell (1994), Campbell (1996), Kraft (1998), Brannlund et al. (1998), and Jha (2004). On ce the train schedule an d blocks are fixed, then next problem that needs to be solved is the block-to-train assignment problem. This problem

PAGE 15

15 has been studied by Crainic, Ferland, and Rousseau (1984), Haghani (1989), Keaton (1989, 1992), and Jha (2004). In our research, we focus on the crew pla nning problem, the locomotive planning problem, and the LRP. These problems are large-scale NP-Complete problems which have not yet been solved satisfactorily. Solving these problems has th e potential to save the railroads millions of dollars and make a significant impact on the bottomline. We devel op novel optimization techniques to generate realistic and implementab le solutions to these problems, employing robust algorithms. We have extensively applied theory from network optimization, linear programming, integer programming, and heuristic optim ization to solve these problems.

PAGE 16

16 CHAPTER 2 THE RAILROAD CREW SCHEDULING PROBLEM 2.1 Introduction Crew scheduling problems consist of assigning crews to trains and creating rosters for each crew, while satisfying a variety of Federal Railway Administrati on (FRA) regulations and tradeunion work rules. The objectives are to minimize the cost of operating trains on one hand and to improve the crew quality-of-life on the other hand. Improved quality of crew life leads to more productive employees, less employee turnover, and much safer opera tions. Although airline CSPs have been well studied and well solve d, and railroad CSPs for European and Asian railroads have also been addressed to some exte nt, CSPs for North American railroads, due to various union and regulatory complexities, are unique and remain unsolved. Our focus is on developing efficient network flow optimizati on models that can form a backbone for all important aspects of crew scheduling for Nort h American railroads: tactical, planning and strategic analysis. Henceforth, unl ess otherwise specified, the CSP is referred to in the context of North American railroads. US freight tonnage is expected to double in volume over the next 20 years (Florida Department of Transportation Report (2005)). Railr oad executives are very concerned about their ability to attract, train, and retain sufficient semi -skilled labor necessary to staff the increased number of train starts that will be needed to support this growth. Railroads pay train crew employees very high salaries (around $70,000 per y ear plus benefits) and yet have difficulty attracting a high quality work for ce. Operating a train as an engi neer or managing a train as a conductor is not an easy job. This is further co mplicated by the fact th at crews are seldom assigned to trains based on a fixed schedule. Generally the company telephones the next available crew and gives them their assignment tw o hours before a train departs. The crew takes

PAGE 17

17 the train to an away location where they rest at a hotel and then return on another train as their turn is reached. Consequently, train crews do not know from one day to the next, let alone a week or a month ahead, when they will be wo rking. Train crews spend inordinate amounts of time on call, waiting for assignment and away fr om their homes and families. The irregular work-style of railroad crews makes attracti ng potential employees to this career harder. Also, railroads are not very profitable, typica lly earning less than 10% return on capital, and are constrained from raising already high wa ges to attract more employees. To close the supply and demand gap for train crews, railroads must raise productivity of their existing crews and change the historical pattern of operations to improve employees quality-of-life. Success on both fronts will be required to ensure that rail roads can continue to profitably grow their businesses. Labor costs, the largest component of a railroads operating expense, account for a large percentage of the total revenue. Depe nding on the size of thei r network, each Class I railroad (a Class I railroad, as defined by th e Association of American Railroads, has an operating revenue exceeding $319.3 million) employs around 15,000 to 25,000 locomotive engineers, conductors, and brakemen (Surface Transportation Board, US DOT, Bureau of Accounts). Consequently, improving the efficiency and effectiveness of train crews has the potential to dramatically redu ce the cost of transportation. We propose a network-flow model and algorithms for assigning crews to trains that will make a significant impact on a railroads on-time performance, crew utilization and produ ctivity, while also impr oving both quality-oflives for crew and railroad safety. In a large Class I railroad, various divisions are tasked with analyzing train crews. Each group is interested in a different aspect of crew planning and sc heduling. These perspectives can generally be characterized based on the planning horizon of the issue at hand. Crew issues faced

PAGE 18

18 by railroads can be broadly classifi ed into three categories: 1) Tac tical Decisions that must be made immediately to support real-time train ope rations. Tactical problems have a planning horizon of 24 to 48 hours. 2) Planning Decisions that must be made as a part of the crew schedule design process. Typically, railroads make adjustments to their network operating plan every month, with significant changes two or thre e times a year to account for both long-run and seasonal changes in traffic patterns. 3) Strategic Decisions that must be made well in advance (more than a year) of implementation to ensure sufficient lead time is available to properly prepare and implement a new bus iness practice. The models a nd algorithms proposed have applications in all thes e areas of decision making. Crew scheduling is one of the important mathem atical problems in th e rich set of planning and scheduling problems that can be modeled and solved using mathematical optimization techniques (Assad (1981, 1983), and Cordeau, Tot h, and Vigo (1998b)). Crew scheduling is a well known problem in operations research and has b een historically associat ed with airlines and mass-transit companies. Several papers on crew scheduling management have appeared in the past literature; most notable among these are due to Wren (1981), Bodin et al. (1983), Carraresi and Gallo (1984), Wise (1995), and Desrosiers et al. (1995). All these ar ticles explore a set covering based approach to solve the CSP. Crew scheduling is conventionally divided into two stages: (1) Crew pairing: A crew pairing is a sequence of connected segments that start and end at the same crew base and satisfy all legality constraints. The objective is to find the minimumcost set of crew pairings such th at each flight or train segment is covered. (2) Crew rostering: The objective here is to assign in dividual crew members to trips or sequences of crew pairings. This pairing and rostering appro ach uses a set covering formulati on and is generally solved using column generation embedded in a branch-and-b ound framework (also called branch-and-price).

PAGE 19

19 The pairing and rostering approach has gain ed wide acceptance and application in the airline industry. Gopalakrishnan a nd Johnson (2005) in a recent su rvey paper discuss the stateof-the-art in solution methodologies for the air line crew pairing and rostering problem. There have also been some applications of this approa ch in the railroad indus try. Caprara et al. (1997), Ernst et al. (2001), and Freling, Lentink, and Wagelmans (2004) desc ribe the application of this approach to railroad crew ma nagement. Caprara et al. (1997) describe the solution techniques adopted at an Italian railroad. They consider several business rules that are specific to European railroads and develop a heuristic algorithm to generate rosters. Ernst et al. (2001) consider the CSP faced by Australian railroads and develop an optimization model which constructs crew parings and rosters. While they consider several business rules, they still solve a relaxed version of the problem and mention the necessity for an exact method in their conclusions. Freling, Lentink, and Wagelmans (2004) deve lop a decision support system for airline and railroad crew planning using a branch-and-price solution approach to solve the integrated problem of pairing and rostering. They show that the integrated ap proach provides signifi cant benefits over the sequential approach of solving th e pairing problem and then the rostering problem. Other articles which describe applications of the pairing and rostering approach include Barnhart et al. (1994, 2003). Other research in the area of railroad crew scheduling which uses a different approach is due to Chu and Chan (1998), and Walker, Snowdon, and Ryan (2005). Chu and Chan (1998) consider the problem of crew scheduling for light rail transit in Hong K ong. They decompose the problem into two stages, the first one involving pa rtitioning of driving blocks into pieces, and the second one involving the combination of pieces into runs. With added localized optimization heuristics, they were able to so lve the problem in less than half an hour of computational time.

PAGE 20

20 However, their approach could not model the pr oblem completely and th e solution could only be used as a guideline for crew schedule generatio n. Walker, Snowdon, and Ryan (2005) develop an integer programming based method for simultaneous disruption recovery of train timetable and crew roster in real time in th e context of New Zealand railroad s. The crew rules that they consider are relatively simplistic and can be expressed in the form of integer programming constraints. They solve the problem using a column and constraint generation algorithm. While there have been several papers devoted to the study of the railroad CSPs in Europe, Asia, and Australia, North American railroad CS Ps are yet to be addressed satisfactorily. The only application of optimization methods to North American railroad crew scheduling is due to Gorman and Sarrafzadeh (2000). They studied crew balancing in the context of a major North American Railroad, Burlington Northern Santa Fe (BNSF) Railway and developed a dynamic programming approach to solve the problem. The major short-coming of their research was that they did not consider the possibi lity of different crew types; each governed by a different set of rules. Another drawback is that their approach could handle only a particular crew district configuration (single-ended crew district). While most crew districts in North America are single-ended, there are several which ar e double-ended or even more complex. The multicommodity network flow approach described models all the rules considered by Gorman and Sarrafzadeh (2000) and also handles the case where different crew pools have different sets of rules. It is also applicable to all the crew district configurat ions encountered in North America (in Section 2.2, we describe these configurations). From our extensive review of the literature, we observe that the crew pairing and rostering approaches which use column generation have been the predominantly successful method to

PAGE 21

21 solve CSPs. However, this approach cannot be used for North American railroads due to the following reasons: The rail network of North American railroad is divided into several crew districts. As a train follows its route, it goes from one crew district to another, picking up and dropping off crew at crew change terminals. Almost all crew districts cons ist of two or three terminals. Hence, a pairing and rostering appr oach is needlessly complex and not required since most pairings would consist of two tr ains, an outbound train from home to away and an inbound train from away to home. Also rail networks typically consist of 200-300 crew districts and the emphasis is on an approach which is simple and fast, and column generation techniques which are computationa lly very intensive are not appropriate. The FRA regulations governing North Ameri can railroads are extremely complex. The most complicating of these rules is First-In-F irst-Out (FIFO) requirement. FIFO constraints require that crews should be called on duty in the order in which they become qualified for assignment at a location. The reader may not e that none of the past research handles constraints of this kind. While this constraint is extremely easy to state, explicitly modeling these constraints make the problem computa tionally intractable. The success of all approaches using column generation or bran ch-and-price algorithms is dependant on the ease of solving the sub-problem. Addition of the FIFO side constr aints to the problem would spoil the special structure of the subproblem and blow up th e computational times. Since our model needs to be fast enough to be used in a real-time environment, this approach is once again not suitable. While there has been significant work in the area of crew scheduling for European, Asian, and Australian railroads as well as in the area of airline crew scheduling, there is no modeling approach that is flexible enough to tackle CSPs faced by North American railroads. Our approach (Vaidyanathan, Jha, and Ahuja (2007a )), is the first of its kind and is a novel contribution to the application of innovative optimization techniques to solve real-world problems. We model the CSP as a multicommodity ne twork flow problem on an underlying spacetime network. In this model, crew pools (set of crews governed by same business rules in a crew district) represent commodities, and the flow of individual crew represents their assignments. The space-time network is constructe d in such a way that flow of crew automatically satisfies all FRA regulations and trade-union ru les other than the First-In-Fir st-Out (FIFO) requirement. We

PAGE 22

22 formulate the CSP as an integer multicommodity flow problem on a space-time network and the FIFO constraints are modeled as side constraint s to the multicommodity flow problem. We show that solving the integer programming fo rmulation using standard branch-and-bound methodology is computationally intractable. On th e other hand, the same problem with relaxed FIFO constraints can be solved very effici ently using branch-and-bound. We refer to the CSP with relaxed FIFO constraints as the Relaxed Pr oblem, and a solution to this problem provides a lower bound to the optimal solution of the CSP. We develop an algorithm, called Successive Constraint Generation (SCG) algor ithm, which starts with the so lution of the Relaxed Problem and then iteratively adds constraints to rem ove FIFO violations. We also develop another algorithm, called Quadratic Cost Perturbation (QCP ) algorithm, which pertur bs arc costs in the space-time network to penalize FIFO violations, and we prove that this approach guarantees FIFO compliance. We also show that the QCP approach produces optim al solutions in most cases and less than 0.2% gap for a few cases, wi th running times in the order of minutes. Our major research contributions are: We develop a space-time network so that the flow of crews on this network automatically satisfies all the FRA regulations and trade-uni on rules other than th e First-In-First-Out (FIFO) requirement. The netw ork-construction procedure is flexible enough to handle several combinations of rules and regulations and also vari ous different crew district configurations. It is also fl exible enough to handle costs wh ich are non-linear functions of arc durations. We formulate the CSP as an integer-progr amming problem on the space-time network, enforcing the FIFO requirements by adding si de constraints. We prove the one-to-one correspondence between solutions to this integer program a nd solutions to the CSP. We show that the FIFO requirement, if ha ndled by the integer-programming approach, complicates the structure of the problem and makes it computationally intractable. We develop an exact algorithm called Successive Constraint Generati on (SCG), which first solves the relaxed version of the integer program (without FIFO constraints) and then iteratively adds constraints in orde r to eliminate FIFO infeasibilities.

PAGE 23

23 We develop an approach based on a Quadratic Cost Perturbation (QCP ) that perturbs the cost of arcs in the space-time network in such a way as to penalize violations of the FIFO constraints. We prove that this method guara ntees FIFO compliance for the problem that we study and also show that it produces the optimal solution in most cases. We present extensive computational results a nd case studies of our algorithms on the reallife data. 2.2 Problem Description 2.2.1 Terminology Crew District: The rail network of a rail road is divided into crew districts that constitute a subset of terminals (nodes). Each crew distri ct is typically a geogr aphic corridor over which trains can travel with one crew. A typical railroad network for a ma jor railroad in the US may be divided into as many as 200 to 300 crew districts. As a train follo ws its route, it goes from one crew district to another, picki ng up and dropping off crew at crew change terminals. Contrary to the airline industry, where certain crews have the flexibility to operate over a large territorial domain, in the North American railroad industr y, crews are qualified to operate only in certain specific geographic territories. The physics of operating a train depend on the track geometry, which is defined by the hills and curves in th e route and by signaling and interlocking systems that control the movement of trains. A crew must be intimately familiar with all aspects of a route to safely operate a train on that route. Consequently, most crews are qualified to operate on a limited number of routes. Crew Pools: Within a crew district, there are seve ral types of crews called crew pools or crew types, which may be governed by different trade-union rules and regulations. For example, a crew pool may have preference over the trai ns operated in a pre-specified time window. Similarly, a crew pool consisting of senior crew personnel is a ssigned only to pre-designated trains so that crews in that pool know their working hours ahead of time. The multiple crew

PAGE 24

24 pools within each district with different constr aints make CSPs complex and difficult to model mathematically. Home and Away Terminals: The terminals where crews from a crew pool change trains are designated either as home terminals or away terminals. The railroad does not incur any lodging cost when a crew is at its home terminal. However, the railroad has to make arrangements for crew accommodation at their aw ay terminals. Different crew districts have different combinations of home and away terminal s. A crew district with one home terminal and one away terminal is called a single-ended crew dist rict. In such crew districts, typically, a crew operates a train from its home location to an aw ay location, rests in a hot el for at least eight hours, operates another train back to its home term inal, rests for ten to twelve hours, and repeats this cycle. The other type of crew district is a double-ended crew district, in which more than one terminal is a home terminal for different cr ew pools. Some of the other crew district configurations are crew district s with one home terminal and several away terminals, and crew districts with several home terminals a nd corresponding sets of away terminals. Crew Detention : Once a crew reaches its away terminal and rests for the prescribed hours, the crew is ready to head back to its home termin al. However, if there is no train, then the crew may have to wait in a hotel. According to the trade-union rules, once a crew is at the away terminal for more than a pre-specified number of hours (generally 16 hours), the crew earns wages (called detention costs) without being on duty. For example, if a crew is waiting for assignment at the away terminal for 18 hours, it is paid detention charges for two hours. Crew Deadheading : Crew deadheading refers to th e repositioning of crew between terminals. A crew normally operates a train from its home terminal to an away terminal, rests for a designated time, and then operate s another train back to its home terminal. Sometimes, at the

PAGE 25

25 away terminal, there is no return train projected fo r some time, or there is a shortage of crews at another terminal. Thus, instead of waiting for trai n assignment at its curre nt terminal, the crew can take a taxicab or a train (a s a passenger) and deadhead to the home terminal. Similarly, the crew may also deadhead from a home terminal to an away terminal in order to rebalance and better match the train demand patterns and avoid tr ain delays. Crew deadheading is expensive as the crew is considered to be on-duty while deadheading and earns wages, and railroads also incur taxi expenses. Each year, a major freight railroad may spend tens of millions of dollars in crew deadheading. On-duty and Tie-up Time : Whenever a crew is assigned to a train, it performs some tasks to prepare the train for departure, and hence cr ews are called on duty before train departure time. The time at which the crew has to report for dut y is called the on-duty ti me. Similarly, a crew performs some tasks after the arrival of the trai n at its destination, and hence crews are released from duty after the train arrival. The time at whic h the crew is released from duty is called tie-up time. We refer to the duty duration before train departure as duty-before-departure and the duty duration after train arrival as dut y-after-arrival. Hence, the tota l duty time (or duty-period) of a crew assigned to a train is the sum of the dutybefore-departure, the duty-after-arrival, and the travel time of the train. Duty Period: In most cases, duty-period of a crew a ssigned to a train is the total duration between the on-duty time and the tie-up time. In so me cases when a crew rests for a very short time at an away location before getting assigned to a train, the rest time a nd the duration of the second train may also included in the duty period of the crew. (S ection 2.2.2 describes calculation of duty period in more detail.)

PAGE 26

26 Dead Crews : By federal law, a train crew can only be on duty for a maximum of 12 consecutive hours, at which time the crew mu st cease all work and it becomes dead or doglawed. Dead crews are a frequent consequen ce of delayed trains, congestion, mechanical breakdowns, etc. In these cases, cr ew dispatchers must send a relief crew by taxi or another train so that the dead crew can be relieved. The d ead crew must then get sufficient rest before becoming available to operate another train. Train Delays : When a train reaches a crew change lo cation and there is no available crew qualified to operate this train, th e train must be delayed. Each train delay disrupts the operating plan and causes further delays due to the propagating network eff ect. Train delays due to crew unavailability are quite common among railroad s. These delays are very expensive (some estimate $1,000 per hour) and can be reduced sign ificantly through better crew scheduling and train scheduling. 2.2.2 Regulatory and Contractual Requirements Assignment of crews to trains is governed by a variety of Federal Railway Administration (FRA) regulations and trade-uni on rules. These regulations ra nge from the simple to the complex. The regulations also vary from district to district and from cr ew pool to crew pool. We list below some examples of these kinds of c onstraints and their typical parameter values: Duty-period of a crew cannot exceed 12 hours. Du ty-period of a crew on a train is usually calculated as the time interval between th e on-duty time and tie-up time of the train. Whenever a crew is released from duty at the home terminal or has been deadheaded to the home terminal, they can resume duty only after 12 hours (10 hours rest followed by 2 hours call period) if duty-period is greater than 10 hours, and after 10 hours (8 hours rest followed by 2 hours call period) if duty-peri od is less than or equal to 10 hours. Whenever a crew is released from duty at th e away terminal, they must go for a minimum 8 hours rest, except for these circumstances: o If the total time period corresponding to the last travel time from the home terminal followed by a rest time of less th an 4 hours plus travel time of the next

PAGE 27

27 assignment back home is shorter than 12 hours (in this case, duty-period = travel time on inbound train + rest time at aw ay location + travel time on outbound); o If the total time corresponding to the last tr avel time from the home terminal plus travel time of the next assignment back home is less than 12 hours when the rest time in between the assignments is more than 4 hours (in this case, duty-period = travel time on inbound train + travel time on outbound train) Crews belonging to certain pools must be assigned to trains in a FIFO order. A train can only be operated by crew s belonging to pre-specified pools. Every train must be ope rated by a single crew. Crews are guaranteed a certain minimum pay pe r month regardless of whether or not they work. As the regulations for crew assi gnment can vary from district to district and crew pool to crew pool, it is a mathematical challenge to build a unified model to formulate and solve this problem. This partly explains why these problems remain unsolved and no commercial optimization product has been deployed yet at railro ads. Also, due to low margins in the railroad industry, investment in research funding is viewed as a luxury despite a potentially high return on investment in automated decision support systems. 2.2.3 Problem Inputs The inputs that go into the mathematic al formulation of the CSP include: Train Schedule: The train schedule provides informa tion about the departure time, arrival time, on-duty time, tie-up time, departure loca tion, and arrival locati on for every train in each crew district it passes through. We do not c onsider stochasticity in the train schedule and assume that train delays are only due to th e unavailability of crew and not due to train cancellations or other disruptions. Crew Pool Attributes: This includes attributes of various crew types, namely their home locations, their away locations, minimu m rest time, train preferences, etc. Crew Initial Position : This provides the position of crew at the beginning of the planning horizon and includes information of the terminal at which a crew is released from duty, the time of release, the number of hours of duty done in the previous assignment, and the crew pool the crew belongs to.

PAGE 28

28 Train-Pool Preferences: The train-pool preferen ces, if any, give us information about the set of trains that can be operated by a crew pool. Away Terminal Attributes: This gives us information about the away terminals for each crew pool. It also includes the rest rules and detention rules for each crew pool and at each away terminal. Deadhead Attributes: This gives us the time taken to travel by taxi between two terminals in a crew district. Cost Parameters: Cost parameters are used to set up the objective function for the CSP. They consist of crew wage per hour, deadhead cost per hour, detenti on cost per hour, and train delay cost per hour. 2.2.4 Constraints and Objective Function The CSP involves making decisions regardi ng the assignment of crews to trains, deadheading of crews by taxi, and train delays. The constraints can be categorized into two groups: operational constraints and contractual requirements. The operational constraints ensure that every train gets a qualified cr ew to operate it while a crew is not assigned to more than one train at the same time. These al so include assignment of certa in crew pools to pre-specified trains. Assignment of crews to trains must, in addition, satisf y the contractual requirements described in Section 2.2.2. In our mathematical model, the operat ional constraints of the model are handled by the integer multicommodity flow formulation described in Section 2.3.2, and the contractual restrictions are honor ed in the network construction phase described in Section 2.3.1. The objective function of the CSP is to minimize the total cost of crew wages, the cost of deadheading, the cost of crew detent ions, and the cost of train delays. 2.3 Mathematical Modeling 2.3.1 Space-Time Network The CSP is formulated as an integer multicom modity flow problem with side constraints on a space-time network. We can decompose the C SP into an independent problem for each crew district and construct the spacetime network for a particular crew district. In the network, each

PAGE 29

29 node corresponds to a crew event and has two defi ning attributes: location and time. The events that we model while constructing the space-time network for the CSP are departure of trains, arrival of trains, departure of deadheads, arrival of deadheads, supply of crew, and termination of crew duty to mark the en d of the planning horizon. All the arcs in the network facilitate the flow of crews over time and space. Figure 2-1 presents an example of the space-time network in a crew district. Note that for the sake of clarity, this network only represen ts a subset of all the arcs. For each crew, we create a supply node whose time corresponds to the time at which this crew is available for assignment, and whose locat ion corresponds to the te rminal from which the crew is released for duty. Each supply node is assigned a supply of one unit and corresponds to a crew member. We also create a common sink node for all crews at the end of the planning horizon. This sink has no location attribute and ha s the time attribute equa l to the end of the planning horizon. The sink node has a demand equa l to the total number of crew supplied. The supply and sink nodes ensure that a ll the crews that flow into the system at the beginning of the planning horizon are accounted for a nd flow out of the system at the end of the planning horizon. For each train (say l) passing through a crew di strict, we create a departure node (say l) at the first departing station of the train in the crew district and an arrival node (say l") at the last arriving station of the train in the crew district. Each arrival or departure node has two attributes: place and time. For example, place (l ') = departure-station (l) and time (l') = on-duty-time (l); and similarly, place (l") = arrival-station (l) and time (l") = tie-up-time (l). In the network, we create a trai n arc (l', l") for each train l connecting the departure node and arrival node of train l. We create deadhead arcs to model the travel of crew by taxi. A deadhead arc is constructed betw een a train arrival or crew suppl y node at a location and a train

PAGE 30

30 departure node at another location. All the deadhe ad arcs which satisfy th e contractual rules and regulations are created. We construc t rest arcs to model resting of a crew at a location. A rest arc is constructed between a train arrival node or a crew supply node at a location and a train departure node at the same locati on. Rest arcs are created in conf ormance to the contractual rules and regulations. All rest arcs which satisfy the contractual rules and regu lations are constructed. Since the contractual regulations are often crew pool sp ecific, deadhead arcs and rest arcs are created specific to a crew pool. This implies th at only crew belonging to a particular crew pool can flow on a particular rest arc or a dea dhead arc. For example, suppose a supply node corresponds to crew belo nging to crew pool A, then all the arcs which emanate from this node can only carry crew belonging to crew pool A. Finally, we create demand arcs from all train arrival nodes and crew supply nodes to the sink node. Each arc has an associated cost equivalent to the crew wages, deadhead cost s, or detention costs, as the cas e might be. Also in the network, the time at the tail of an arc is always less than the time at the head of an arc, which ensures the forward flow of commodities on the time scale. It can be noted that all co ntractual requirements other than the FIFO constraint are eas ily handled in the network construction. The space-time network described above models the flow of crews while honoring all the contractual constraints ex cept the FIFO rule. However, it does not model the case when qualified crews are not available for assignment to a tr ain causing train delays. Next, we present the construction of additional arcs in corporating train delays. At a lo cation, we create rest arcs and deadhead arcs which do not honor th e rest regulations a nd penalize them to ensure that flows on these arcs occur only when qualified crews are no t available for assignment. The flows on these arcs denote that the train will be delayed until crew becomes qualified for train operation. However, as the delay of a train may have propa gating effect in the availability of crews in

PAGE 31

31 subsequent assignments, we assume here that the crew assigned to a delayed train has sufficient slack in the rest time at the train arrival node to make it qualified for subsequent assignments. Thus, the additional rest arcs and deadhead arcs model the train delays, with the assumption that the effect of train delays is only local. The reader may also note that honoring cont ractual regulations wh ile constructing the network reduces the number of constraints in th e integer program significantly. Now, we present the multicommodity integer programming formulation of the CSP. 2.3.2 Integer Programming Formulation (IPF) We formulate the CSP as an integer multic ommodity flow problem on the space-time network described in Section 2.3.1. In our formul ation, each crew pool represents a commodity. Crew enters the system at crew supply nodes, and hence every supply node corresponds to a supply of one crew. The crew takes a sequence of connected train, rest, and deadhead arcs before finally reaching the sink. While flow of more than one crew type can take place on a train arc, rest and deadhead arcs can have flow of only one type because the business rules for rest and deadhead are crew pool specific. Next we pres ent the integer programmi ng formulation of the problem. We use the following notati on in our formulation: N: Set of nodes in the space time network L: Set of train arcs in the network, indexed by l D: Set of deadhead arcs in the network, indexed by d R: Set of rest arcs in the network, indexed by r A: Set of arcs in the space-time network, indexed by a G(N, A): Space-time network Ns: Set of crew supply nodes

PAGE 32

32 Nd: Sink node C: Set of crew pools in the system, indexed by c i: Set of outgoing arcs at node i i: Set of incoming arcs at node i ci: Set of outgoing arcs specifi c to crew pool c at node i ci: Set of incoming arcs specifi c to crew pool c at node i Ar: Set of arcs on which flow will violate FIFO constraint if there is flow on rest arc r f: Total number of available crew M: A very large number c lc: Cost of crew wages for crew pool cC on train arc lL dc : Cost of deadhead arc dD rc : Cost of rest arc rR tail(l): The node from which arc l originates head(l): The node at which arc l terminates The decision variables are: c l x : Flow of crew pool cC on each train arc lL d x : Flow on deadhead arc dD r x : Flow on rest arc rR We formulate the CSP as follows: Min cc llddrr lLcCdDrRcxcxcx (2.1a) 1c l cCx, for all lL (2.1b)

PAGE 33

33 1a aix, for all s iN (2.1c) da aN x f (2.1d) (),cc la ataill x xfor all lLcC (2.1e) (),cc la aheadl x xfor all ,lLcC (2.1f) '(1)0,rrr rAxMxfor all rR (2.1g) 0,1c lx and integer, for all lLcC (2.1h) 0,1dx and integer, for all dD (2.1i) 0,1rx and integer, for all rR (2.1j) Constraint (2.1b) is the train cover constraint which ensures that every train is assigned a qualified crew to operate it. Constraint (2.1c) ensures flow balance at a crew supply node. Constraint (2.1d) ensures the flow balance at the sink node. Constraint s (2.1e) and (2.1f), respectively, ensure flow balance at train departure and arrival nodes. The flow balance constraints at a train arrival node ensure that the crew which is assigned to a train is subsequently assigned to a rest arc, a deadhead arc, or a sink arc which emanates from the arrival node of the train. Flow balance constraints at a train departure node ensure that the crew which is assigned to the train has been assigned to a rest arc, a dead head arc, or a supply arc which terminates at the departure node of the train. Constraint (2.1g) ensures that the crew assignment honors the FIFO constraint. Constraints (2.1h), (2 .1i), and (2.1j) specify that a ll the decision variables in the model are binary. The objective f unction (2.1a) is constructed to minimize the total cost of crew

PAGE 34

34 wages, deadheading, detentions, and train delays. Note that th e detention and delay costs are taken into account while calcula ting the cost of rest arcs. Now we show how Constraint (2.1g) enforces FIFO requirements. Figure 2-2 illustrates crew assignments in two situations: one in which FIFO is satisfied and the other in which FIFO is violated. In case (a), the crew on train 1-3 arrive s at Terminal 2 first and also leaves first, and hence FIFO requirement is satisfied. In case (b), FIFO requirement is violated because the crew on train 1-3 enters terminal 2 firs t, but leaves after the other crew Therefore in the solution, if there is flow on arc (4, 5), there s hould not be any flow on arc (3, 6). Let us consider the following cases for Constrai nt (2.1g) with respect to flow on arc (4, 5): Case 1: (4,5)1 x: The constraint becomes(4,5)''(4,5) '00 rr rA x xrA. This ensures that if there is flow on rest arc (4, 5), then there cannot be flow on any arc belonging to the prohibited set(4,5)A, and hence there will not be any flow on arc (3, 6). Case 2: (4,5)0 x: The constraint becomes (4,5)'(4,5) r rA x MrAwhich essentially means that the constraint is relaxed. Let us now estimate the size of a typical instance of the CSP in a crew district. Most crew districts have two terminals, and a typical train schedule ha s around 500 trains running in a couple of weeks in a crew distri ct. Each crew district could ha ve two to four crew types and around 50 crews. Therefore, the space-time network could have around 50 + 2 x 500 = 1,050 nodes. The number of arcs in the ne twork could be very large if we construct all feasible rest arcs and deadhead arcs. To restrict the number of arcs constructed, we place a limit on the maximum duration of rest arcs. For example, if the train schedule stretches over a pe riod of ten days, it is unrealistic for a crew to rest for more than three days. In this case, we can restrict the maximum

PAGE 35

35 rest arc duration to thre e days. After the space-time network of a typical problem is pruned based on this rule, the number of deadhead arcs is ty pically around 25,000, and the number of rest arcs is around 100,000. Since the number of rest arcs for a typical problem is of the order of 100,000, and as each rest arc has one FIFO constraint the number of FIFO constraint s in the model would be 100,000, which is too large. We would therefore be losing one of the main advantages of the network flow formulation, which is, by honori ng all business rules in the netw ork construction phase; we keep the number of constraints small. Our computati onal results also confir m that handling FIFO constraints explicitly in this manner makes the problem computationally intractable. Let us now consider the In teger Programming Formulati on where we relax the FIFO Constraint (2.1g); we call this problem the Re laxed Problem. This probl em typically has more than 100,000 variables and seve ral thousand constraints, whic h make it a large optimization problem. Integer programs of this size are usually very difficult to solve to optimality or nearoptimality in a reasonable amount of time. But we were able to solve this problem to optimality in a matter of minutes using commercial branch-and-bound based MIP solver provided by CPLEX 9.0. We believe that this is due to th e special structure of th e Relaxed Problem, which helps speed up the solution time significantly. Al l variables in the fo rmulation are binary variables, and this leads to the MIP engine exploring fewer branches on the branch-and-bound tree compared to the case where variables are inte ger variables. Whenever the engine branches on a non-integer variable, th e value on one branch is set to zero and on the other branch is set to one. Hence, at each level of the tr ee, one variables value is prefix ed and can be eliminated from the model. Consequently, it is very likely that a feasible integral solu tion is obtained early on,

PAGE 36

36 and nodes in the branch-and-bound tree are fathomed much earlier than wh ile solving a general integer program. Another benefit of the netw ork flow based approach is that even though we do not explicitly model each crew the space-time network and the c onstraints are such that from the final solution of the model, we can easily extract the set of trains a cr ew takes over the entire planning horizon. In order to do th is, we start at the s upply node of a particul ar crew and identify a path from this supply node to the sink node that has positive fl ow on it. Note that due to the commodity specific flow balance constraints at each node, every crew will have a unique path with positive flow fr om its supply node to the sink node. Theorem 2.1. There is a one-to-one correspondence be tween a feasible flow on the spacetime network satisfying constraints (2.1a)-(2.1 j) and a feasible solution to the CSP. Proof: Consider a feasible flow on the space-time network. We have seen above how the path of each crew can be extracted from the so lution using a simple run-through procedure. Due to the network construction met hodology, the extracted path of each crew has to satisfy all the business and contractual rules. Hence, we see th at every feasible solution on the space-time network corresponds to a feasib le crew schedule. We can al so show that the reverse transformation from a feasible crew schedule to a feasible fl ow on the space-time network is possible, hence establishing the result. Hence, we have shown the one-to-one corres pondence between feasible solutions to the integer programming formulation an d feasible solutions to the CSP and thus have established the validity of our integer program ming approach. In the next se ction, we describe various algorithms to solve the CSP, which are cen tered on handling FIFO constraints in a computationally efficient manner.

PAGE 37

37 2.4 Solution Approaches In this section, we present our approaches to solve the CSP. As the FIFO constraints are the ones which complicate the nature of the integer programming form ulation, our solution approaches are centered on effective ways to hand le this constraint. We develop a constraintgeneration based exact approach and a cost-perturbation based he uristic approach to solve the problem. While the constraint-gen eration based approach performs significantly better than the direct approach to solve the in teger programming formulation, its application in a real-time environment may be restricted due to long running times. On the other hand, the costperturbation scheme produces good quality FIFO co mpliant solutions very efficiently and hence is better suited for th e real-time environment. 2.4.1 Successive Constraint Ge neration (SCG) Algorithm The SCG algorithm works by iteratively pruning out crew assignments which violate the FIFO constraints from the current solution of a more relaxed problem. We considered the following two methods for implementing constr aint generation: (1 ) A branch-and-bound algorithm where constraints are added to the LP re laxation that is solved at each node of the branch-and-bound tree until FIFO violations are eliminated (branch-and-cut); and (2) An iterative method where we run branch-and-bound algorithm on the relaxed problem, solve it to optimality, and then add constraints to remove in feasibilities which is followed by another run of branch-and-bound on the more constrained problem and so on. However, on further deliberation, we chose to implement the sec ond method over the first for the following reasons: Since the LP relaxation of the relaxed problem can have fractional flows on the rest arcs, the number of rest arcs with positive flow in the LP relaxation will be more than the number of rest arcs with positive flow in an integral version. Also, larger the number of rest arcs with positive flow, greater is the possibility of FIFO violations. Hence, more FIFO constraints are likely to be added to a non-integral solution.

PAGE 38

38 SCG implemented using method (2) allows us to stop at any point when we feel that the level of FIFO infeasibility is reasonably small. We are able to do that because after the addition of a set of constraints, we obtain an integral solution at regular intervals of less than a minute. On the other hand, in the bran ch-and-cut method, the addition of constraints at a node on the branch-and-bound tree would only guarantee FI FO compliance of the LP relaxation which will not be an integral solu tion in general. Hence, we do not have the option to prematurely terminate until a point wh en we obtain at least one integral solution to the LP relaxation and consequently we do not have control over the quality of intermediate solutions in terms of number of FIFO violations. We show in our computational results that QCP does an excellent job in enforcing FIFO constraints for the current set of business ru les, but we also mention that QCP does not guarantee FIFO compliance when there is priority in assigning crews to trains. We believe that the real benefit of SCG c ould come from being used in conjunction with QCP. In this approach, we would first apply QCP to obtain a solution with very few FIFO violations. SCG is then applied on this solution to prune out the small number of remaining infeasibilities. A branch-and-cut approach in this context would be unnecessarily complicated since when a small number of c onstraints are added, the problem can be reoptimized within a few seconds using SCG. The SCG algorithm starts with the optimal solution of the Relaxed Problem, which may have several violations of the FI FO rule. In each iteration, the al gorithm scans the rest arcs in the current solution which have positive flow, and for each such rest arc assignment which violates FIFO constraints, it adds the co rresponding FIFO constraints. We then re-solve the problem and re-check for FIFO infeasibilities. This process is repeated until all FI FO infeasibilities are removed. Algorithm-SCG Step 1: Solve the Relaxed Problem. If a feasible solution exists, then proceed to Step 2. Otherwise STOP as the problem is infeasible. Step 2: Examine all the rest arcs with positive flow in the solution of Step 1. Add FIFO constraints to the integer program on those rest arcs assignments which violate FIFO requirements. Step 3: If FIFO constraints are added in Step 2, re-optimize th e modified integer program and go to Step 2. Otherwise STOP as we have the optimal solution.

PAGE 39

39 Note that the final solution of SCG satisfies all the constraints of the Integer Programming Formulation (IPF), and the constraints of SCG are a subset of the constraints of IPF. Hence, the SCG algorithm is an exact algorithm guaranteeing optimal solution to the original problem. However, in the worst case, SCG could add all th e FIFO constraints to the integer program and would hence become an intractable approach. Fort unately this seldom happens in practice. Our computational results show that the number of constraints ad ded is usually much less than the total number of rest ar cs in the network. While the SCG is an exact algorithm and pr oduces provably optimal solutions, the running time of this algorithm could be quite high. In our computational experiments, in some instances, SCG had a running time in the order of minutes while in others it had a running time in the order of hours. While these running tim es are acceptable in the pla nning environment, they would restrict the applicability of this algorithm in the real-time envir onment. In the next section, we describe a cost-perturbation based algorithm wh ich produces very good quality FIFO-compliant solutions with running times comparable to that of the Relaxed Problem. 2.4.2 Quadratic Cost-Perturbation (QCP) Algorithm In the previous section, we describe a succes sive constraint-generation based approach to remove the FIFO violations iterati vely. In this section, we present an algorithm which penalizes the FIFO violations in a solution. We show that this method guarantees zero FIFO violations in the case where there is no prior ity in assigning crews to trains and serves as a heuristic method for the other case when there are priority restri ctions. Cost perturbation not only enforces FIFO constraints but also retains the special network flow structure of the problem leading to fast computational times. The basic intu ition behind this approach is that we perturb the costs of arcs while solving the Relaxed Problem in such a way as to guarantee FIFO compliance.

PAGE 40

40 We present our cost perturba tion strategy through the illust ration shown in Figure 2-3 for the case when there is only one crew pool type. In case 2-3 (a), crew assignments are made in a non-FIFO manner, and in case 2-3 (b), the as signments are made in a FIFO manner. Now consider the case when crews are de tained at the Terminal 2. Then, due to the nature of detention costs, the cost of the assignment 2-3 (b) would definitely be less than or equal to the cost of assignment 2-3 (a), and hence the solution to the Relaxed Problem would honor FIFO constraints. On the other hand, suppose all the rest arcs had a cost of zero; then both the assignments would have the same cost, and the Relaxed Problem would ha ve no cost incentive to choose assignment 2-3 (b) over as signment 2-3 (a). Thus, a solu tion to the Relaxed Problem may violate the FIFO constraints. In order to provide an incentive to the Relaxed Problem to choose case 2-3 (b) over case 2-3 (a), we pe rturb the cost assignments on rest arcs so that the solution of the Relaxed Problem has assignments of type 23 (b) and not assignments of type 2-3 (a). The cost perturbation scheme that we use is a function of the duration of rest arcs. Suppose that the time duration between ev ents corresponding to nodes 2 and 4, 4 and 5, and 5 and 7 are a, b, and c, respectively. Consider a cost assignm ent which is proportional to the square of the duration of rest arcs. The constant of proportionality is represented by k. Then, Cost of assignment 2-3 (a) = 22( (2,7))( (4,5)) kdurationofarckdurationofarc = 22222()(2222)kabckbkabcabbcca Cost of assignment 2-3 (b) = 22( (2,5))( (4,7)) kdurationofarckdurationofarc = 22222()()(222)kabkbckabcabbc It can be observed that the cost of assignments in case 2-3 (b) is less than that in case 2-3 (a). Hence, when the rest arcs have zero cost s, the quadratic cost perturbation scheme in the

PAGE 41

41 Relaxed Problem will give FIFO compliant assign ments, when there will be only one crew pool type. The observation made here can also be ge neralized for multiple crew pools unless there is priority of crew pools in assignm ents to trains. If there is a priority assigned to crews in assignments to trains, then a crew can have FIFO-violated assignment to gain the priority assignments. We state our observations here as the following theorem. Theorem 2.2. Quadratic Cost Perturbation applied to the Relaxed Problem guarantees FIFO compliant crew assignments, if there is no priority in assigning crews to the trains. Proof: In the space-time network, rest arcs may have one of three co sts assigned to them: (a) zero costs, (b) detention costs, or (c) train dela y costs. For e.g., If all the rest arcs in Figure 23 had zero costs, then as shown above, the Re laxed Problem will choose the FIFO compliant assignment because it is cheaper. If the rest arcs in Figure 2-3(a) had detention costs on them, then the FIFO assignment shown in Figure 2-3(b) w ill either have the same level of detention or lesser detention. Hence, the perturbation scheme will work in this case too. A similar argument would also work for train delay costs because FIFO assignments will always have equal or lesser train delays than non-FIFO assignments. Since we do not want to change the cost structure of the orig inal problem by a large extent, we set the value of k to a very small value and perturb the cost of each rest arc by a value which is computed as described above. Our computationa l tests in Section 2.6.1 show that this method works very well, and the solutions produced by Quadratic Cost Perturba tion are indeed FIFOcompliant in the case where there are no priorities. The solution time of this method is very short and is comparable to that of the Relaxed Problem. Note that in the case where there are priorities, this approach could be used to obtain a solution with a small number of violations and then the SCG algorithm can be used to prune out these vi olations. Another interes ting observation is that

PAGE 42

42 for most of the instances tested this method produces solutions with objective function values same as those for the Relaxed Problems. This implies that FIFO constraints can be satisfied with little or no impact on the solution cost. Hence, using this approach, we are able to obtain excellent quality of solutions using much less computational time. Due to its attractive running times and high solution quality, this method has the potential to be used in both the planning and the real-time environment. 2.5 Significances and Uses of the Model In the introduction, we mention that the cr ew scheduling model has applications in the tactical, planning and strategic environments. In this section, we elabor ate and provide specific examples of how the model can be used as an effective tool for decision making. 2.5.1 Tactical Crew Scheduling The defining problem in tactical crew sche duling is to determine which crew should be assigned to operate each train. However, there are a number of sub-problems and issues that must be considered before assigning crews to trains. Railroads have around-the-clock crew calling centers with the responsibilities of monito ring the status of each crew and the status of each train and anticipating when a particular crew should be called to operate a particular train. A typical crew-calling ce nter employs 200-300 cler ks (crew callers) to call crews and answer inbound telephone queries from management and the crews. First, a crew caller looks at the projected lineup (crew assignment) of outbound trains at a particular crew change location. With a projection of train departure times, say 13:30, 15:00, and 16:00, the crew caller then goes through a number of checks before assigning a cr ew to a train: Is this train covered by a designated assigned pool, or is it to be covere d by FIFO assignment from the general pool? When is the next qualified crew rested and avai lable to operate this train? The actual rules are

PAGE 43

43 very complex, and the combinations of soluti ons that must be cons idered can overwhelm a person. Our model has several applications in the tact ical scheduling environm ent. Some of these applications are given below: Assignment of crews to trains: The output of our model tells us how to assign crews to trains. Recommend which crews to place in hotels and which crews to deadhead home: When a crew arrives at an away term inal, the crew callers have to decide whether the crew should deadhead back home or go to a hotel for rest. The model can be used to mathematically look ahead and systematically make the trade-off betw een different cost categories of crew wages, deadhead costs, detention costs, and rest violation costs. Minimize trains delayed due to shortage of crew: Train delays are potentially very costly because the delay of a trai n may lead to the unavailability of crew to operate another train in the future and may have a negative domino effect on network-wide operations. By creating several deadhead arcs while constr ucting the space-time network, we ensure that such a situation is avoided. Disruption management: The crew scheduling m odel can be used as a tool to bring back disrupted operations to normalcy. Suppose at so me point in time the operations are disrupted. The current state or snapshot of the system gi ves us the location of each crew and the hours of duty already done. Using this information and the in formation about the future train schedule, the crew scheduling models can be used to optimally re-assign crew to trains. 2.5.2 Crew Planning The essence of the crew planning problem for operations or planning is to determine how many crews should be in each crew pool. It can be noted that as each pos ition is guaranteed a

PAGE 44

44 minimum number of work hours per month, it is quite costly to overe stimate the number of positions required to staff a pool. Currently, rail roads solve the pool sizing problem based on historical precedent and rulesof-thumb, through negotiation with the union, and by trial and error. The network flow model can satisfy the need for a structured approach that captures all of the considerations, quantifies the various costs, and recommends the best way to define and staff crew pools. Some of the applic ations of the model in the pl anning environment are described next. Develop and evaluate crew schedules: The crew scheduling mode l can also be used to compare the current crew schedule used with the model-generated schedule on the basis of several criteria such as average rest time at the home locatio n, average rest time at the away location, average deadhead time, etc. By suitably changing the model cost parameters, we can obtain schedules with different ch aracteristics. For example, if we want to minimize detention, we can set the detention cost to a very large value and run the model. Size of crew pools: Using the crew scheduling model, we can study the impact of varying the crew pool size on the solution quality. For example, suppose our objective is to minimize the number of crew used. While formulating the prob lem, we give large cost incentives to flow on the sink arcs from crew supply nodes to the sink node. This woul d lead to the models producing a crew schedule which uses th e minimum number of crew. 2.5.3 Crew Strategic Analysis Strategic management involves development of policies and plans a nd allocating resources so as to implement these plans. The timeframe of strategic manageme nt extends over several months or even years. Strate gic crew problems include forecas ting future head-count needs and evaluating major policy changes such as negotiati ng changes to trade-union rules or changing the number and location of crew change points on a network. Th e railroad industry is now

PAGE 45

45 experiencing unprecedented traffic growth. Therefore, it is very important to be able to quantify the expected impact on manpower needs as traffi c grows since it takes 18 to 24 months to hire, train, and qualify train crew personnel. Recently, corporate strategists have been struggling with the trade-off between crew costs and train delays Our model can be used to quickly calibrate efficient frontiers for each crew district and sh ow what number of crews minimizes the sum of train delay costs and crew costs. If railroad mana gement is dissatisfied with that level of train performance, one can simply increase the cost of train delay, and the model will request additional crews such that a new co st-minimizing solution is obtained. Some of the applications of the network flow model in the strategic environment are listed below. Determining the number of crew distri cts and territory of crew districts: We can use the crew scheduling model to re-optimize and test different crew distri ct configurations. For example, suppose crew district 1 operates trains between loca tion A and location B, and crew district 2 operates trai ns between location B and location C. Merging all three stations into a single crew district coul d give us better opportun ity to optimize costs. Effect of changing crew trade-union rules: The CSP is a complex optimization problem due to strict trade-union rules re lated to crew operation. The cha nge of any of these rules will face a lot of resistance from the labor union. At the same time, change of any of these rules has the potential to impact crew costs substantially. Using the crew scheduling model, we can evaluate the impact of changi ng the trade-union rules on the crew cost. For example, suppose we want to know the impact of changing the manda tory rest time at home from 12 hours to 10 hours. We can run the model with the parameter settin g of 10 hours and measure the change in crew cost.

PAGE 46

46 Forecasting crew requirement: Based on the forecasted train schedule, we can use the model to help us forecast crew requirement. We first run the model assuming that a very large number of crew is available. Since the crew supply is much mo re than what is required, many crews will directly flow from th e crew supply to the sink node. The total crew supply minus the number of unused crews will give an idea of the number of crews required based on the forecasted train schedule. In this section, we have seen that the crew scheduling model has several real-life applications in the tactical, pl anning, and strategic environments. If put into production, the model has the potential to enable railroad professionals to improve their day-to-day operations and to plan effectively in order to ac hieve their long-term organizational goals. 2.6 Computational Results In this section, we present computational results of our algorithms on several problem instances, and we also present a case study done on a representa tive instance. We implemented our algorithms in Visual Basic .NET program ming language and tested them on the data provided by a major Class I railroad. We m odeled our integer programs using Concert Technology 2.0 modeling language a nd solved them using the CPLEX 9.0 solver. We conducted all computational tests on a Pentium IV, 512 MB RAM and 2.4 GHz processor desktop computer. 2.6.1 Comparison of Algorithms In this section, we compare the performan ces of the Relaxed Problem, the exact Integer Programming Formulation (IPF), the Successive Constraint Gene ration (SCG) algorithm, and the Quadratic Cost Perturbation (QCP) algorithm on several real-life inst ances. Our problem instances consist of train schedules over a peri od of one to four weeks. In one instance, the number of crew pools is one, ma king the problem a single-commod ity flow problem. In the other

PAGE 47

47 set of instances, the number of crew pools is two, and the problem is formulated as a multicommodity flow problem. For each instance we measure the solution cost, the solution time, the number of FIFO constraints added to the formulation, and the number of FIFO constraints violated in the final solution. It can be noted that no FIFO c onstraints are added while solving the Relaxed Problem and the Quadratic Cost Perturbation (QCP). The results of our computational tests are pres ented in Table 2-1. We draw the following conclusions from the computational results: The solutions to the Relaxed Problem have the highest number of FIFO violations. However, the solution times are also the fastest. The Integer Programming Formulation (IPF) ha s several thousand FIFO constraints. These constraints make the problem co mputationally intractable, and we could not obtain feasible solution for any of the instances in one hour of computational time. The Successive Constraint Generation (SCG) algorithm starts with the solution to the Relaxed Problem as the initial solution and progressively reduces the number of infeasibilities. However, the amount of comput ational time taken by this algorithm is still quite large. We were able to obtain a FIFO -compliant solution for two instances, and for all other instances, we terminated the algorith m when the iteration that was running at the 30th minute of computational time was complete. The Quadratic Cost Perturbation (QCP) al gorithm produces FIFO-compliant crew schedules for all instances. Also, in six inst ances out of eight, the objective function values are equal to that of the Relaxed Problem. Since the Relaxed Problem provides a lower bound to the optimal solution, QCP algorithm produces the optimal solution in six instances out of eight, and the optimality gap is less than 0.2% for the other two instances. This algorithm also has very fast solution times, which are comparable to that of the Relaxed Problem. Thus, we conclude that the QCP algorithm out performs the other algo rithms in terms of both solution quality and solution time. It produces optimal or near-optimal solutions in a few minutes of running time, and it therefore has the po tential to be used in both the planning and real-time environments.

PAGE 48

48 2.6.2 Case Study In this section, we conduct a ca se study to illustra te how the crew scheduling model can be used to derive useful information and drive de cision making at a railroad. We perform the case study on a representative two-week data set which has 326 trains 2 crew pools, and 48 crews, and we run the computational tests using the Qu adratic Cost Perturbation (QCP) algorithm. The various aspects of the problem that we observe in this case study are as follows: (i) Effect of varying the number of available crews, (ii) Effect of varying deadhead cost, (iii) Effect of varying minimum rest time at the home location, (iv) Effect of varying detention time, and (v) Effect of varying detention cost. Effect of varying the number of available crews In this study, we quantify th e effect of varying the numbe r of available crews on the overall solution quality. We start with a set of 42 available crews and reduce the number of crews available until the problem becomes infeasible. Table 2-2 presents the computational results, and Figure 2-4 plots a chart between the numb er of available crews and solution cost. We draw the following observa tions from this study: As the number of available crews decreases, the model tries to compensate for the lack of crews by increasing the level of deadheading and train delays. Initially, reducing the number of available crews does not have an adverse effect on the solution cost, but as more crews are removed, the solution cost rises steeply. For example, reducing the number of crews available from 42 to 26 (38% reduction) has an insignificant impact on the solution cost, but reducing the number of crews from 24 to 22 leads to the solution cost jumping up by more than $59,000 (20% increase). The reader should note that the objective function in this case study is no t a function of the number of crews used and is only a function of total deadhead, detention and delay. This explains why solutions using diffe rent number of crews have iden tical cost provided their total deadhead, detention and delay are the same.

PAGE 49

49 Effect of varying deadhead cost In this study, we quantify the effect of varying deadhead co st on the number of deadheads, total detention hours, total train delay hours, an d overall solution cost. The default cost of deadheading used by the railroad is $144 per hour. We start with a deadhead cost of $0 per hour and then progressively increase deadhead cost while measuring the impact on the solution as shown in Table 2-3. We make the following observations from this study: As the deadhead cost increases, the number of deadheads in th e solution decreases. However, after a certain point, there is no significant decrease in the number of deadheads. For example, even for a very high dea dhead cost of $10,000, the solution has 33 deadheads. From this observation we can conclu de that there is an inherent imbalance in the system that necessitates deadheading. As the deadhead cost increases, the solution of the model has fewer deadheads and more train delays. This behavior of the model give s us the insight that if the deadhead cost increases at some point in time, then the railroad needs to adap t by allowing far more flexibility in terms of the train delays. Alte rnatively, the management can also negotiate with crew unions and reduce the minimum rest hour requirements. Effect of varying minimum rest time at the home location In this study, we quantify the effect of varying the minimum rest time at the home location on the average rest time at the home location, trai n delays at the home location, average rest time at the away location, train dela ys at the away location, and th e overall solution cost. The default value of minimum rest time used by the railro ad is 12 hours. We star t with a minimum rest requirement of zero hours and progressively in crease the value of this parameter while measuring the impact on the solution as shown in Table 24 and Figure 2-5. From this study we observe that the minimum rest time at home can be increased to 16 hours without a significant incr ease in the solution cost. Howe ver, any increase beyond 16 hours leads to a steep increase in the solution cost. Th e railroad management can use these inputs to effectively negotiate rest times with the union. For example, if the union wants the minimum rest

PAGE 50

50 time to be increased from 12 hours to 14 hours, then the management can use the model to quantify the impact of this cha nge and negotiate appropriately. Effect of varying detention cost The railroad pays detention charges for each hour of crew rest beyond 16 hours at an away location. In this study, we quantif y the effect of varying the dete ntion cost on the total detention hours, number of deadheads, total train delay hou rs, and overall solution cost as presented in Table 2-5. The default value of detention cost used by the railroad is $140 per hour. We make the following observations from this study: As the detention cost per hour increases, the number of detention hours in the solution decreases. As the detention cost per hour increases, th e solution has a greater number of deadheads and train delays. This behavior of the model gi ves us the insight that if the detention cost increases at some point in time, then th e railroad needs to adapt by allowing more flexibility in terms of train delays and crew deadheading. Effect of varying detention time on the solution In this study, we quantify the effect of varying the detentio n time (the minimum rest time at the away location after which a crew becomes eligible for dete ntion allowance) on the average rest time at the away location, detention hours, and overall solution cost. The default value of detention time provided by the railroad is 16 hour s. We present our results in Table 2-6 and Figure 2-6. This study shows that increasi ng the detention time has an im pact on the solution cost, but it diminishes as the detention time increases. We observe that increasing the detention time from 0 to 20 hours reduces the soluti on cost, but increasing it beyo nd 20 hours has almost no impact on the solution quality.

PAGE 51

51 2.7 Summary and Conclusions In our research, we develop a network flow-bas ed approach to solve the railroad CSP in the context of North American ra ilroads. The CSP for North Amer ican railroads is governed by several Federal Railway Administ ration (FRA) regulations and trade-union work rules. In order to develop a good crew schedule, in addition to satisfying these regulations, we also need to minimize the total wage costs, train delay costs, d eadhead costs, and detention costs. The railroad divides the network into a number of crew districts, and each cr ew district has several crew pools. Each crew pool at a distri ct could have a different set of operating rules. These factors make this a complex probl em to model and solve. The network flow formulation for the CSP that we develop is both fl exible and robust and can be easily manipulated to re present each of the possibilities encountered in real-life. We formulate the CSP as an integer program on a spacetime network. The network is constructed in such a way that all FRA regulations and trade-un ion work rules other than FIFO constraints are enforced during the network construction phase it self. The operational cons traints are handled in the integer programming formulatio n. We develop two approaches to handle FIFO constraints. The first approach is a Successive Constraint Generation approach where constraints are generated iteratively to cut out FIFO violations. The second appr oach, which is called Quadratic Cost Perturbation, reli es on perturbing the objective func tion to generate FIFO-compliant solutions. We provide extensive computational results compari ng the performance of various approaches and show that the perturbation approach outperforms the other approaches both in terms of solution time and solution quality. We believe that this research will eventually lead to the deployment of crew planning models and algorithms at North Am erican railroads, replacing the current manual process and, in

PAGE 52

52 doing so, make a significant imp act on the railroads on-time perf ormance, crew utilization, and productivity, while also improving the quality-of-life for crew and improving railroad safety.

PAGE 53

53Table 2-1. Comparison of algorithmic performance. Relaxed Problem 2. Ex act Integer Programming Formulation 3. Successive Constraint Generati on 4. Quadratic Cost Perturbation # of FIFO constraints # of FIFO constraints # of week s # of crew pools Cost($) Time (Sec) # of FIFO constraints violated Cost ($) Time (Sec) Added Violated Cost($) Time (Sec) Added Violated Cost ($) Time (Sec) # of FIFO constraints violated 1 1 130,952 10.8 73 3,600 11,062 N/ A 132,022 2,015 958 25 130,952 10.9 0 2 1 265,284 30.3 148 3,600 23,527 N/ A 267,067 1,981 1,492 95 265,284 31.4 0 3 1 399,816 57.2 225 3,600 35,976 N/ A 399,816 1,908 1,657 151 399,816 60.0 0 4 1 531,378 91.8 274 3,600 48,797 N/ A 532,091 2,326 1,805 226 531,378 97.4 0 1 2 132,495 17.7 64 3,600 17,999 N/A 132,495 347 478 0 132,495 17.7 0 2 2 267,130 55.6 118 3,600 40,623 N/ A 267,316 2,423 1,068 0 267,221 60.9 0 3 2 402,045 112.0 173 3,600 63,215 N/ A 405,227 4,858 1,321 25 402,678 125.0 0 4 2 533,694 187.3 226 3,600 86,477 N/ A 538,039 3,928 1,745 25 534,327 210.7 0

PAGE 54

54 Table 2-2. Effect of va rying crew pool sizes. Num. of crew available Num. of crew used Num. of deadheads Detention hours Train Delay hours Solution cost ($) Increase in cost 42 31 38 37.008.77262,838 40 30 38 37.008.77262,838 0 38 29 38 37.008.77262,838 0 36 29 40 37.007.85263,340 502 34 29 40 37.007.85263,340 0 32 28 40 37.007.85263,340 0 30 28 41 37.007.85263,697 357 28 28 41 37.007.85263,697 0 26 26 43 30.6530.38268,704 5,007 24 24 43 17.50154.83295,486 26,782 22 22 44 6.37417.12354,610 59,115 20 --Infeasible Table 2-3. Effect of varying deadhead cost. Deadhead Cost/hr ($/hr) Number o f deadheads Detention Hours Train delay hours Solution cost ($) 0 42 34.555.45253,079 100 38 37.008.77260,051 200 38 37.008.82266,396 300 37 40.339.48272,733 400 37 40.339.57278,918 500 36 40.3313.13284,955 600 36 40.3313.13290,955 700 36 40.3313.13296,955 800 36 40.3313.13302,955 900 36 40.3313.18308,967 1,000 35 36.8022.95314,935 10,000 33 36.8055.13813,771

PAGE 55

55 Table 2-4. Effect of varying mini mum rest time at home location. Minimum rest (hrs) Average rest at home (hrs) Train Delays at home (hrs) Average rest at away (hrs) Train Delays at away (hrs) Solution cost ($) 0 10.02 0.0012.838.77 262,838 2 11.60 0.0012.998.77 262,838 4 12.86 0.0013.128.77 262,838 6 14.37 0.0013.128.77 262,838 8 15.16 0.0013.158.77 262,838 10 16.81 0.0013.318.77 262,838 12 18.51 0.0013.338.77 262,838 14 20.48 0.0013.258.77 262,838 16 21.53 0.0713.098.77 262,853 18 23.98 1.2313.189.52 263,294 20 28.33 3.7813.0917.40 265,337 Table 2-5. Effect of varying detention cost. Detention cost/hr ($/hr) Detention hours Number o f deadheads Train delay hours Solution cost($) 0 305.45 351.17254,840 40 64.57 373.32258,630 80 40.33 378.77260,528 120 37.00 388.77262,098 160 34.55 398.77263,542 200 30.77 3911.97264,904 240 23.32 3918.50265,849 280 23.32 3918.50266,782 320 18.67 3924.18267,534 360 11.10 3935.53268,167 400 1.93 4049.23268,452 500 1.93 4049.23268,645 600 1.93 4049.23268,838 700 1.93 4049.23269,032

PAGE 56

56 Table 2-6. Effect of varying detention time. Detention time (hours) Avg. rest at away location Detention hours Solution cost ($) 0 8.95 1,136.60460,558 4 8.95 633.18390,079 8 10.41 331.60324,478 12 11.12 83.17280,491 16 13.33 37.00262,838 20 14.20 3.67256,561 24 14.78 1.52255,620 28 15.82 0.00254,840

PAGE 57

57 Figure 2-1. Space-time network for a singleended district with a single crew type.

PAGE 58

58 Figure 2-2. Illustration of the Fi rst-In-First-Out (FIFO) rule. Figure 2-3. Crew assignments are made in (a) Non-FIFO manner, and (b) FIFO manner

PAGE 59

59 Figure 2-4. Solution cost vs. number of crews. Figure 2-5. Solution cost vs. minimum rest time at home.

PAGE 60

60 Figure 2-6. Solution cost vs. detention time.

PAGE 61

61 CHAPTER 3 REAL-LIFE LOCOMOTIVE PLANNING: NEW FORMULATIONS AND COMPUTATIONAL RESULTS 3.1 Introduction Locomotive scheduling involves optimally assi gning a set of locomotives to trains satisfying a variety of business constraints and minimizing the to tal scheduling cost. Everyday, railroad managers must assign hundreds of locomo tives to hundreds of di fferent trains. These problems are notoriously difficult NP-hard (Ahuja et al. (2005)) trans portation problems that have not yet been solved satisfactorily. But so lving these problems eff ectively is of critical importance since a large US railroad has several billions of dollars of capital investment in locomotives. Our research is motivated by the n eed to develop effectiv e and practical solution techniques to solve this complex optimization problem. Locomotive scheduling problems arise at two levels: planning and dynamic assignment. A railroad has several loco motive types with different characteris tics, such as, horsepower, tonnage pulling capacity, and costs. The locomotive planni ng problem (LPP) assigns sets of locomotives, called consists, to each train in a pre-planned weekly train sc hedule so that each train gets sufficient power to pull its load and the total cost of locomotive usage is minimized. The resulting plan must honor a variet y of business rules, cannot require more locomotives than what is available in the total fleet, and must result in a plan that is relatively simple and repeatable. Another important feature of the LPP is that locomotives may deadhead on trains. Deadhead locomotives do not pull the train but are repositio ned by the active locomotives from one place to another place. Deadheading play s an important role in loco motive planning, enabling extra locomotives to be moved from surplus locations to locations where locomotives are in short supply. Locomotives also light travel; that is, a se t of locomotives forms a group, and one locomotive in the group pulls others from an origin station to a destination st ation. Light travel is

PAGE 62

62 not limited by the train schedule thus making it much faster than deadheading. However, light travel is more costly as a crew is required a nd the move does not generate any revenue as there are no cars attached. A locomotive plan specifies which types of locomotives will pull each train, and how locomotives will deadhead or light travel to obtain overall networ k wide efficiency. The locomotive plan gives the ideal locomotive assignment in the absence of any disruptions, and this plan is further refined and adjusted in real-time to obtain the dynamic locomotive assignment. We focus on the plan ning version of the problem. LPPs are notoriously hard combinatorial op timization problems. The paper by Cordeau, Toth, and Vigo (1998b) presents an excellent survey of existing locomotive planning models and algorithms for this problem. There are two kinds of locomotive planning models: Single and Multiple. Single locomotive planning models assume that there is only one type of locomotive available for assignment. These models can be fo rmulated as minimum co st flow problems with side constraints; some papers on single loco motive planning models are due to Wright (1989), Forbes, Holt, and Watts (1991), Booler (1980, 1995), and Fischetti and Toth (1997). Single locomotive assignment models ma y be appropriate for some Eu ropean railroads but are not suited for US railroads since most trains are assigned multiple types of locomotives. Such multiple locomotive assignment models have be en studied by Florian et al. (1976), Ramani (1981), Smith and Sheffi (1988), Chih et al. (1990), Nou, Desrosiers, and Soumis (1997), Cordeau, Soumis, and Desrosiers (1998a), and Ziarati et al. (1997, 1999). The most comprehensive and recent multiple locomotive assi gnment models are due to Ahuja et al. (2005) which is the starting point of our current research. In our past research, describe d in Ahuja et al. (2005), we formulate the LPP as a mixed integer multicommodity flow problem with si de constraints on an underlying network and

PAGE 63

63 develop solution methodologies th at use problem decomposition, integer programming, greedy heuristics, and neighborhood search (Refer to Section 3.2.4 for an overview). About two years ago, we started working with the locomotiv e division at CSX Transportation (Class I US railroad) to get the lo comotive flow-based model developed by Ahuja et al. ( 2005) implemented. The locomotive division was very in terested but wanted some additi onal features to be added to our methodology to ensure that the solution is more implementable. Also, we were able to find instances of the LPP where the fi rst approach did not yield feasib le solutions in several hours of computational time. In order to eliminate th ese difficulties, we developed robust methods described to obtain realistic solu tions that can be used for pr actical locomotive planning. Our major contributions are listed below: Robust Approach: We were able to find instances fo r the LPP where we could not obtain a feasible solution in over 10 hours of computational time using the locomotive flow-based formulation (Ahuja et al. (2005)). In our computational result s, we show that using the consist-flow formulation, we can obtain nea r-optimal solutions to the same instances within a few minutes of computational time. Minimize Consist Bustings: Consist-busting involves mixing of locomotives from inbound trains and regrouping them to form new consists. This is undesirable due to several reasons described in Section 3.3.2. We propose a c onsist-based formulation where consists flow over the network instead of indi vidual locomotives. This formulation reduces consist busting to zero. We also devel op a second formulation called the hybrid formulation, which is used to benchmark the performance of the consist-based formulation. Incremental Locomotive Planning: Zero based approaches which develop a locomotive plan from scratch are almost impossible to implement. We describe how we can use the models developed for planning incrementally. Cab Signal Requirements: Federal law requires that trains operating in certain territories called cab signal territory must have a lead lo comotive that is outfitted with the cab signal system. We describe a method to incor porate the cab signal requirements in our formulations. Foreign Power Requirements: Different railroads in North America often cooperate with one-another and allow direct tr ains, called run-through-trains, from the origin station on one railroad to the destination station on a nother railroad in order to reduce cost by eliminating unnecessary intermediate switching at the interchange sta tions. We describe a

PAGE 64

64 method to structure the model to allow loco motives to go to and come from foreign railroads. Computational Tests: We present extensive computati onal results and case studies on several instances and derive meaningful conclusions. Though our research has been conducted in co llaboration with CSX Transportation, the models proposed are applicable in general (with possible minimal contextual changes) to all North American railroads. 3.2 Notation and Terminology We give the notation and terminology related to the LPP. We also desc ribe the constraints in terms of these notations. The constraints can be clas sified into two groups: hard constraints (which each locomotive plan must satisfy) and so ft constraints (which are highly desirable but not always required to be satisfied). 3.2.1 Notation Locomotives pull a set of trains from their origins to their destinations. The train schedule is a weekly cyclic schedule. Trai ns have different weekly frequenc ies; some trains run every day, while others run less frequently. We consider the same train running on different days as different trains; that is, if a train runs five days a week, we will consider it as five different trains for which all data is the same except that they will have different depa rture and arrival time on the seven day clock. Each trai n has a required horsepower (HP) and tonnage. Tonnage represents the minimum pulling power required to pull the tr ain and the HP has a direct bearing on the speed at which the train can travel. Each train l has the following attributes associated with it: dep-time(l): The depart ure time of train l arr-time(l): The arrival time of train l dep-station(l): The depart ure station of train l arr-station(l): The arrival station of train l

PAGE 65

65lT: Tonnage requirement for train l l : HP per tonnage requirement for train l lE: The penalty for using single locomotive consist on train l A railroad also has several types of locomotives. Let K denote the set of all locomotive types and k a particular locomotiv e type in this set. Locomotives which provide power and pull trains are called active locomotives and those wh ich are being repositioned on a train are called deadheading locomotives. For everykK we have the following attributes: kh: HP of a locomotive of type k k : Number of axles on a locomotive of type k kG: Ownership cost of a locomotive of type k k B : Fleet-size of a locomotive of type k k lc: Cost of assigning an active locomotive of type k to train l k ld: Cost of deadheading a loco motive of type k on train l k lt: Tonnage provided by a locomo tive of type k to train l The tonnage provided by a locomotive k depends on the train to which it is assigned. This is because different trains have different ruli ng grades or slopes and the pulling power of a locomotive depends on the ruling grade. Each train l has three sets of locomotives that could be assigned to it. MostPreferred[l] contains the locomotive types whic h are preferred on this train, LessPreferred[l] contains the locomotive types wh ich are accepted on this train with a certain penalty and Prohibited[l] contai ns the locomotive types which are not allowed on this train. Locomotives are assigned to these three groups fo r each train based on the business rules of the railroad.

PAGE 66

66 Light travel refers to the travel of locomotiv es on their own from one location to another. Light travel is a fast though expensive way to reposition locomotives. Each light travel has a fixed cost which is a function of the distance of light travel (since we need a crew) and it also has a variable cost based on the number of locomotiv es light traveling and the duration of light travel. Consist is a collective term for the set of lo comotives assigned to a train. Consist busting refers to the breaking up of an incoming cons ist at a station and the assignment of the locomotives in it to more than one outgoing train. Consist busting has a fi xed cost B associated with it and also a variable component which depends upon the number of locomotives involved in consist busting. An efficient locomotive sche dule can help us reduce consist busting greatly. A train-train connection refers to the direct transfer of a cons ist from an inbound train to an outbound train at the same station. Train-train connections are hi ghly desirable since they reduce consist busting. Whenever a cons ist goes from one train to anothe r train, it needs some minimum time to make this connection; we refer to this time as the minimum connection time. 3.2.2 Hard Constraints Hard constraints are mandatory constraints wh ich have to be satisfied for a locomotive assignment plan to be feasible. Power requirement for trains: Each train must be assigned locomotives with at least the required tonnage and horsepower. Locomotive class to train type: Each train type (e.g., auto tr ain, or merchandise train, or intermodal train) is targeted to use specific cla sses of locomotive types. For example, we may specify that auto trains can be assi gned only AC44 or AC60 type locomotives. Geographic: Each geographic region permits the tr avel of only specific locomotive types. For example, we may specify that Atlanta can only use: C40, AC44, and AC60 locomotives.

PAGE 67

67Locomotive balance constraints: The number of incoming locomotives of each type into a station must be equal to the number of outgoing locomotives of that type at that station. Active axle constraints: Each train must be assigned locomotives with at most 24 active axles. This business rule is de signed to protect the standard couplers used in North America. Exceeding 24 powered axles may overstress th e couplers and cause a train separation. Consist size constraints: Each train can be assigned at most 12 locomotives including both the active and deadheading locomotives. This business policy reduces risk exposure if the train were to suffer a catastrophic derailment. Fleet size constraints: The number of assigned locomotives of each type is at most the number of available locomotives of that type. Repeatability of the schedule: The assignment of locomotives to trains should be such that the number of locomotives of each type at each station at the end of the week should be equal to the number of locomotives of each type at each station at the beginning of the next week so that the plan is repeatable every week. 3.2.3 Soft Constraints These constraints are flexible constraints and they define characteristics which are preferred but not mandatory. Consistency in locomotive assignment: A train should be assigned the same consist each day that it runs. Railroads believe that crews will perform more efficiently and more safely if they operate the same equipment on a particular route and train. As the crews learn the operating nuances associated with each combination, they will adjust their throttle and braking control accordingly. Consistency in train connections: If locomotives traveling on a train to its destination station connect to another train originating at that station, then they s hould preferably make the

PAGE 68

68 same connection on each day that both of the tr ains run. This allows station managers to optimize their sub-processes associated with arriving and departing trains. Avoid consist busting: Since consist busting involves th e use of more resources, it is preferable to avoid consist busting. Avoid single locomotive consists: If a single locomotive is a ssigned to a train and this locomotive breaks down, then the train will get stranded. 3.2.4 Previous Research In the previous research re ported in Ahuja et al. (2005), we developed an integrated planning model that determines the set of activ e and deadheading locomotives for each train, light traveling locomotives from power sources to power sinks, and train-to-train connections (specifying which inbound train a nd outbound trains can directly c onnect). We first developed a mixed integer programming (MIP) formulation of the LPP. This MIP formulation, the locomotive flow model, is a multicommodity flow problem where each locomotive type represents a commodity and assignment of locomotives to trains is transformed into the flow of locomotives on a seven-day or weekly space-time train netw ork. There were two major difficulties in solving the MIP formulation. First, the problem size was too large to be solved by the available commercial-grade MIP software as it contains hundreds of thousands of decision variables and comparable number of constraints. Secondly, the solution obtained using this formulation was not likely to be consistent; that is, the optimal solution may have different consist assignments to the same tr ain on different days of the week In a plan, railroads want the same consist assignment to a train each day it runs. Our major contribution in the previous re search was to handle both these difficulties effectively by proposing a two-pha se approach. In the first phase, we assumed that trains run every day of the week, and determined the loco motive assignments under th is assumption. (This

PAGE 69

69 assumption is not a bad assumption in practice as most trains run ever y day). In the second phase, we considered the actual train schedule and re-optimized the locomotive assignment of the first phase by solving a sequence of single co mmodity flow problems. Assuming that trains run every day of the week reduces the weekly locomotive assignment problem to a daily (or one day) locomotive assignment problem (thus reduci ng problem size by a factor of seven thereby making it more tractable) and rep licating the locomotive assignment each day of the week gives us a perfectly consistent assignment. We give a brief overview of this two-phase approach in Figure 3-1. We formulate the problem is such a way that determining train-train connections is no longer a modeling issue. We focus our attenti on on the one-day LPP. While keeping the other features of the model identical to what they we re before; we change our approach to model the one day LPP and consider flows of consists ov er the network instead of flows of individual locomotives. In the next section, we give a de tailed description and motivation for the consistbased approach. In the rest of the chapter when we refer to LPP, we are referring to the one-day LPP. 3.3 Mathematical Modeling 3.3.1 Space-Time Network The LPP is formulated as an integer multicommodity flow problem with side constraints on a space-time network. Each consist type define s a commodity in this network. We denote the space-time network as G (N, A), where N denotes the node set and A denotes the arc set. The space-time network is constructed as follows. We crea te a train arc (l', l") for each train l; the tail node l' of the arc denotes the even t for the departure of train l at dep-station(l) and is called a departure node. The head node l" denotes the arrival event of train l at arrstation(l) and is called an arrival node. Each arrival or departure node has two attributes: place and time. For example,

PAGE 70

70 place(l') = dep-station(l) and time(l') = dep-time (l). Similarly, place(l") = arr-station(l) and time(l") = arr-time(l). Some trains are called forw ard trains and some trai ns are called backward trains. Forward trains are those tr ains for which dep-time(l) < arr-time(l) and backward trains are those trains for which dep-time(l) > arr-time(l). To allow the flow of locomotives from inbound trains to outbound trains, we introduce ground nodes and connection arcs. For each train a rrival node, we create a corresponding arrivalground node with the same place and time attribute as that of the arrival event. Similarly, for each train departure event, we create a de parture-ground node with the same place and time attribute as that of the depart ure node. We connect each arrival node to the associated arrivalground node by a directed arc ca lled the arrival-ground connecti on arc. We connect each departure-ground node to the asso ciated departure node through a directed arc called the grounddeparture connection arc. Next, we sort all th e ground nodes at each station in the chronological order of their time attributes, and connect each ground node to the next ground node in this order through directed arcs called ground arcs. (We a ssume without any loss of generality that ground nodes at each station have distin ct time attributes) The ground nodes at a station represent the pool (or storage) of locomotives at the station at different instants of times. As trains arrive, they bring in locomotives to the pool through arrival-ground c onnection arcs. As trains depart, they draw locomotives from the pool through grounddeparture connection ar cs. The ground arcs allow inbound locomotives to stay in the pool as they wait to be c onnected to the outbound trains. We also connect the last ground node of the week at a st ation to the firs t ground node of the week at that station thr ough a ground arc; this ground arc m odels the ending inventory of locomotives for a day becoming the starting inventory for the following day.

PAGE 71

71 We also allow the possibility of light travel, that is, seve ral locomotives forming a group and traveling on their own from one station to another. We assume that the set of light travel possibilities is given to us. We create a light arc in the weekly space-time network corresponding to each light travel possibility Each light arc originates at a ground node (with a specific time and at a specific station) and also terminates at a ground node. Each light arc has a fixed charge which denotes the fixed cost incurr ed to assign a crew to that li ght travel. We denote this fixed charge for a light travel arc l by Fl. The light arc also has a vari able cost which depends upon the number of entities li ght traveling on it. The space-time network G = (N, A) has thre e types of nodes arrival nodes (ArrNodes), departure nodes (DepNodes), a nd ground nodes (GrNodes); and four kinds of arcs train arcs (TrArcs), connection arcs (CoArcs), ground arcs (G rArcs), and light travel arcs (LiArcs). Let AllNodes = ArrNodes DepNodes GrNodes, and AllArcs = TrArcs CoArcs GrArcs LiArcs. In Figure 3-2, we show a part of the sp ace-time network at a particular station, which illustrates the various kinds of arcs. 3.3.2 Consist Flow Formulation for the LPP Consist busting refers to the process of decomposing inbound consists at a station into several locomotives and the assignment of these locomotives to several outgoing trains. Railroad managers prefer to minimize consist-busting as much as possible due to the following reasons. (1) Consist-busting often result s in outbound trains getting thei r locomotives from several inbound trains. If any of these i nbound trains is delayed, the ou tbound train is also delayed, which potentially propag ates further delays down the line ; and (2) Consist busting is an extremely labor, cost, and time intensive operation. Additional crews are required to transfer (or hostle) locomotives between the ra il yard and the shop facility wh ere consists are busted and

PAGE 72

72 reassembled. Moving locomotives across a sta tion creates incremental moves for the yard masters to worry about; the hostlers block tracks so car switching activity must be paused; and train movements must be coordinated between transportation and mechan ical departments (as opposed to train-to-train connect ions which are entirel y within the purview of transportation). Consequently, consist busting consumes between two to six additiona l hours per locomotive within the station. We develop a formulation for LPP that almost completely eliminates consist busting; we call this formulation the consist flow formulatio n. This formulation is an extension of the locomotive flow formulation described in Ahuj a et al. (2005), which defines each locomotive type as a commodity and routes locomotives on the train ne twork. In the consist flow formulation, we define each consist type (t hat is, a group of locomotives) to be a single commodity and route consists on the train network. Thus, the c onsist flow formulation differs from the locomotive flow formulation in the sense that locomotive types are replaced by the consist types. Observe that each feasible solu tion of the consist flow formulation has a corresponding feasible solution of the locomotive flow formulati on with the same cost, but the converse is not true. Thus, the reader might be le d to believe that consist formulation is quite restrictive and may produce significantly inferior solutions co mpared to the flow formulation. However, our computational results reveal th at if the number and types of consists are judiciously chosen, then both formulations pr oduce solutions with comparable quality. In the formulation described next, we assu me that the consist types are pre-specified; we describe later in Section 3.3.4 how to de termine good consist types. The consist flow formulation is a multico mmodity integer program formulated on the space-time network. We next describe the add itional notations used in this formulation.

PAGE 73

73 C: Denotes the set of consist types available for assignment and cC represent a particular consist. :lFFixed charge cost for using the light arc l. c lc: Cost of assigning an active consist of type cC to train l. c ld: Defined for every arclAllArcs For a train arclTrArcs c ldcaptures the cost of deadheading a consist of typecC on arc l. For a light arc lLiArcs c ldcaptures the cost of traveling for a consist type cC on arc l. For an arclCoArcsGrArcs c ldcaptures the cost of idling for a consist type cC on arc l. ck : Number of locomotives of type kK in consist typecC I[i]: Set of arcs entering node i. O[i]: Set of arcs leaving node i. S:Set of overnight arcs or arcs that cross the midnight timeline. (We choose midnight as the time for counting the number of locomo tives used in our solution) day(l): Number of times an arc l crosses the midni ght timeline. Suppose, a train l leaves at 8 AM on day 1 and arrives at 2 AM on day 2, then day( l) = 1; whereas suppose it leaves at 8 AM on day 1 and arrives at 2 AM on day 3, then day(l) = 2. The decision variables are: c l x : Binary variable representing the nu mber of active consists of type cC on arclTrArcs c ly: Integer variable representing the number of non-active consis ts (deadheading, light-traveling or idling) of type cC on arclAllArcs lz: Binary variable which takes value 1 if at least one consist flows on arc lLiArcs and 0 otherwise.

PAGE 74

74k s : Integer variable indicating the num ber of unused locomotives of typekK We formulate the problem as follows: mincccckk llllll lTrArcscClAllArcscClLiArcskKzcxdyFzGs (3.1a) for all1, ,c l cC x lTrArcs (3.1b) ()12,forall,ckcc ll cCkK x ylTrArcs (3.1c) [][]()(),forall,,cccc llll lIilOi x yxyiAllNodescC (3.1d) 12, for all ,c ckll kKcCyzlLiArcs (3.1e) ()(),forall,ckcckk ll lScC x ydaylsBkK (3.1f) {0,1},forall,,c l x lTrArcscC (3.1g) 0 and integer, for all ,c lylAllArcscC (3.1h) 0,1 for all ,,lzlLiArcs (3.1i) 0, for all .k s kK (3.1j) Constraint (3.1b) ensures that every trai n l is assigned exactly one active consist. Constraint (3.1c) ensures that the locomotiv e flow upper-bound on each train arc is satisfied. Constraint (3.1d) ensures that flow is balanced at every node for every consist type. Constraint (3.1e) ensures that the locomotive flow upperbound on each light arc is satisfied. Constraint (3.1f) ensures that the number of locomotives of each fleet type used is no more than the fleet size. While the locomotive flow based formulati on (Ahuja et al. (2005)) did not converge to feasible solutions for some instances in over 10 hours of co mputational time, the consist based

PAGE 75

75 formulation was able to optimally solve th e same instances within a few minutes of computational time. The reasons for this superi or computational perfor mance are: (1) In the locomotive flow formulation, we need to explic itly specify constraint s that each train gets required tonnage, horsepower and does not exceed the 24-active axle requirement. However, these constraints are implicitly handled in th e consist-based formulation using much lesser number of constraints. We handl e the active axle constraint by not creating consists which have more than 24 active axles. We handle the tonnag e and horsepower constraints implicitly in the following way; if assigning consist cC as an active consist to train lTrArcs violates the tonnage or horse power constraints, we set 0c lx thus disallowing the assi gnment of consist c to train l. Thus, the consist flow formulation has 2 |TrArcs| lesser number of side constraints compared to the locomotive flow formulation; (2) All active consist assignment variables, ,c l x are binary variables, whereas in the locomotive flow formulation active flow variables are general integer variables. The MIP optimization e ngine, which is typical ly a branch-and-bound algorithm, is likely to explore lesser branches for a binary integer program compared to a general integer program as there are lesser options to pursue; and (3) Each time branching occurs on a binary variable it is either prefixed to zero or to one in the su bsequent problems. Hence, as the algorithm progresses down the br anch-and-bound search tree, the problem size and complexity of the linear programs solv ed at each node reduces. The consist based formulation also has pr actical advantages. Railroads often impose complex rules on what locomotive types may be combined into ideal consists. Some locomotives do not work well together. Some railroads segr egate AC powered locomotives and DC powered locomotives. These requirements are often very hard or impossible to honor in the locomotive flow formulation but are rather trivial in the cons ist flow formulation. Further, in the locomotive

PAGE 76

76 flow formulation, an outbound tr ain often obtains its planned c onsist from locomotives coming from multiple trains and if any of these inbound trains is delayed, the outbound train is delayed as well. But in the consist flow formulation, all outbound trains derive their active consist only from one inbound train (but may deri ve their deadhead consists from other trains) thus reducing the impact of train delays. The consist flow formulation is superior to the previous locomotive flow formulation because (1) solution speed and robustness are grea tly improved, (2) consis t busting is reduced to zero, and (3) constraints are more easily incorpor ated, resulting in more practical solutions. Our computational tests show that while the consist flow formulation may have its optimal objective function value as much as 5% higher than that of the locomotive flow formulation, the solution is far superior in terms of consistency, simplicity, and robustness. Thus, it may be easier to comply with and may need overall fewer locomotives in practice (considering train delays, for example). And, the consist flow solution still requires far fewer locomotives than the manually generated plans currently in use by most railroads. 3.3.3 Hybrid Formulation for the LPP In order to evaluate the performance of the c onsist based formulation, we need to ideally compare it to the solution of the flow formula tion (Ahuja et al. (2005)). However, for some instances, the flow formulation does not converge to a feasible solution after several hours of computational time and this is hence not possi ble. We develop a hybrid formulation which can be used to benchmark the performance of the cons ist formulation. The hybrid formulation retains the structural properties of the consist formula tion while also allowing total flexibility to bust consists at no additional cost. We realize that th is is not a realistic assumption, but this model allows us to determine the impact on solution cost if consist busting is allowed. Hence, it serves

PAGE 77

77 as a good benchmark for the solution of the consist flow formulation. Also, since it retains some of the structural properties of the consist fo rmulation, it is also computationally robust. In the hybrid formulation, we allow active loco motives on trains to travel as consists but the deadheading locomotives travel as indivi dual locomotives. At the ground nodes, where inbound trains bring their consists they are broken into individua l locomotives. These individual locomotives flow on ground arcs. When outbound trai ns need active locomotives, they draw only the pre-specified consists from the ground pool; but when they need deadhead locomotives, they can draw individual locomotives. The reader ca n observe that the solution space of the hybrid formulation is a subset of the solution space of the locomotive flow formulation but a super set of the solution space of the consist flow formulati on. We next give the MIP formulation of this hybrid version. The decision variables are: c l x : Binary variable representing the nu mber of active consists of type cC on arclTrArcs k ly: Integer variable representi ng the number of non-active lo comotives (deadheading, lighttraveling or idling) of type kK on arclAllArcs lz: Binary variable which takes value 1 if at least one locomotive flows on arc lLiArcs and 0 otherwise. k s : Integer variable indicating the number of unused locomotives of typekK We formulate the problem as follows: mincckkkk llllll lTrArcscClAllArcskKlLiArcskKzcxdyFzGs (3.2a) 1, for all ,c l cC x lTrArcs (3.2b) 12,forall,ckck ll cCkKkK x ylTrArcs (3.2c)

PAGE 78

78(()), for all ,,ckckk llh cChOheadl x yylTrArcskK (3.2d) (()), for all ,,ckckk llh cChItaill x yylTrArcskK (3.2e) ()()0, for all ,,kk ll lIilOiyyiGrNodeskK (3.2f) 12, for all ,k ll kKyzlLiArcs (3.2g) ()(), for all ,ckckkk ll lScClS x daylydaylsBkK (3.2h) 0,1, forall,,c l x lTrArcscC (3.2i) 0 and integer, for all ,k lylAllArcskK (3.2j) 0,1 for all ,,lzlLiArcs (3.2k) 0, for all .k s kK (3.2l) The constraints in this formulation are similar to those in the consist flow formulation. The only difference is we have to construct the flow balance equations for trai n arrival and departure nodes (3.2d) and (3.2e) differently (with multipliers) because active locomotives flow as consists on trains and locomotives flow as individual locomotives on the connection arcs and ground arcs. In this formulation also, we enforce the tonnage, active axles and the horse power constraints implicitly and hence share some of the advantages th at the consist formulation has over the flow formulation. The computational results presented in Secti on 3.5.1 show that consist flow formulation gives comparable solutions to the hybrid formul ation, thereby demonstrating that disallowing consist busting does not come at a big cost. We also observe that hybrid formulation takes much more time compared to the consist flow formula tion as the flexibility to break and reassemble

PAGE 79

79 consists, increases the solution space significantly and the decision variables have multipliers associated with them which makes the MIP harder to solve. 3.3.4 Identifying Good Consists During our computational testing of the c onsist-based and hybrid formulations, we observed that the performance critically depends on the number and types of consists. The greater the number of consists with different hor sepower and tonnages, the better the quality of the solution since there are more potential matc hes between need and availability. However, from implementation perspectives, we would like to use the minimum number of consists as it keeps the solution simple and provides greater opportunities for substitu tion between different consist types which is done when trains run la te. We are thus faced by the problem of finding a small set of good consist types which provide as good a solution as a large number of consist types. We show that using a minor change in our existing formulations, we can choose a small set of p good consist types from a given larger superset of potential consist types C. We accomplish it by introducing the following decision variables: cz= Binary variable which take s a value 1 if consist typecC is used, and a value 0 otherwise and add the following constrai nts to the formulations: (), forallcc llc lS x yMzcC, ,c cCzp where M is a sufficiently large number. The first constraint sets zc = 1 whenever a consist type is used, and the second constraint ensures that no more than p such variables are set to 1, or no more than p consist types are used. These constr aints will ensure that the model picks a set of p optimal consists from the pre-defined superset of consists C that minimizes the overall solution cost.

PAGE 80

803.4 Incorporating Practical Requirements We describe several additional requirements that a locomotive planning model must satisfy which we did not incorporate in our previous research reporte d in Ahuja et al. (2005). These features are necessary to generate an implementable locomotive plan. 3.4.1 Incremental Locomotive Planning Our formulations described in Section 3.3 ge nerate a locomotive plan for a given train schedule from scratch or zero-ba se. However, over time, train sc hedules change in response to shifts in traffic patterns, to free up tracks for periodic repair and repla cement, and because of network outages such as hurricanes, floods, and winter blizzards. These changes include some trains being added or removed, or changes in train frequencies, train timings, and train tonnages. We can use our locomotive planning model to ge nerate a brand new optimal locomotive plan for the modified train schedule. But, the former pl an and the new plan could potentially be quite different requiring managers to reposition power from the old cy cles to the new cycles causing much disruption to operations. Consequently, an additional cha llenge to locomotive planning is the development of implementati on strategies for introducing new plans to an organization. Our research shows that the optimal (or near-optimal) frontier of solutions for the LPP is quite broad and quite flat, which means that there are a ve ry high number of combinations of locomotive plans that produce similar values for the model objective functi on. Consequently, it would be desirable to choose a new locomotive plan that closely resembles the current locomotive plan, minimizing the number of tactical repositioning m oves required to transition from one plan to another. The incremental locomotive planning algorithm takes in the current locomotive plan and changes in the train schedule, and produces a ne w, incrementally different locomotive plan. The current weekly train schedules and their currently planned loco motive assignments are inputs to

PAGE 81

81 this problem. Since the current plan need not c onform to pre-specified consists, this model is a locomotive flow based model. The algorithm consists of the following steps: Take the current weekly plan and obtain a current daily plan. The trains which are considered a part of the daily problem are thos e trains which have a frequency greater than p (usually p = 4). The current daily flows for th ese trains are taken to be the most frequent locomotive assignment on the seven-day trains corresponding to this daily train in the current solution. For example, if a train is as signed an active flow of 2 SD40 for five days of a week and an active flow of 2 AC44 for one day, then the corresponding daily train will be assigned a flow of 2 SD40 in the current daily plan. Solve the incremental one-day flow formulation. Use the output of the incremental one-day flow problem and transition back to the sevenday problem by using the standard approach suggested in Ahuja et al. (2005). Since consistency is enforced while moving from the one-day to the seven-day solution; the incremental models output is likely to be similar to the current weekly plan. The incremental one-day flow formulati on has the following decision variables: k l x : Integer variable representing the nu mber of active locomotives of type kK on the arc lTrArcs k ly: Integer variable indicating the number of non-active locomotives (deadheading, lighttraveling or idling) of type kK on the arclAllArcs :k lPositive deviation from the curren t flow for locomotive type k. :k lNegative deviation from the current flow for locomotive type k. lz: Binary variable which takes value 1 if at least one locomotive flows on arc lLiArcs and 0 otherwise. k s : Integer variable indicating the number of unused locomotives of typekK The objective function and constraints are: min()kkkkkkkk llllll lTrArcskKlAllArcskKkKlTrArcskKzcxdyGsP (3.3a)

PAGE 82

82 We consider the same constraint set as that in the flow formula tion (Ahuja et al. (2005)) with the following additional constraint: (), for all kkkkkk llllll x yxylTrArcs, (3.3b) ,0.kk ll (3.3c) where P is the penalty for deviating from the current daily plans assignment, and ,kk ll x yare the current daily flows on arc l. This in effect sets k l and k l to the positive and negative deviations from the current daily plan respectively. By varying the value of parameter P, we can get solutions which differ from the current daily plan and hence the current weekly plan by different degrees. We measure the difference between the output of the incremental planning model and the current plan as: Number of trains for which the model assignment differs from the current plan % difference = 100 Total number of trains Note that while it is not possi ble to directly control the pe rcentage difference (above). By suitably modifying P we can obtain solutions wh ich differ from the current plan by varying degrees (Increase in the value of P leads to a decrease in the per centage difference). Incremental planning enables the railroad to make a sequence of incremental improvements and arrive at the optimal locomotive plan wit hout huge transition costs. 3.4.2 Cab Signal Requirements Each locomotive in the fleet is equipped with specialized equipment that may enable it to operate in certain restricted territories while at the same time disqualify it from operating in other territories. Some of this equipment is required to enable the locomotive to be the first in a consist or the lead locomotive. Other equipmen t may be required by union rules or regulatory

PAGE 83

83 rules unique to certain geography. Some of thes e constraints are handle d during tactical (realtime) assignment of locomotives to trains. Howeve r, one particular constr aint, which we call the cab signal constraint, must be a part of the locomotive plan. Railroad corridors are equipped with signaling systems to cont rol the movement of trains. Most corridors are outfitted with wayside signal s only; the crew in the locomotive observes the signal and slows, stops, or proc eeds depending on it. To increas e safety, some corridors do not have wayside signals but instea d are equipped with cab signal systems, where the signal is displayed inside the locomotive. Not only do cab signals aid the crew in foggy weather or in cases where the wayside signal may be obscured but the cab signal system s also interface with the locomotive throttle and brake and in cases wh ere a crew does not honor the signal, the system will automatically slow down and then stop the train to avert a possible collision. Federal law requires that all consists operating in cab signaled territory must have a lead locomotive that is outfitted to interface with the cab-s ignal system. For planning purposes, railroads like to have all locomotives in a consist equipped with cab signa ls so that suppose the lead locomotive breaks down, the units can be swapped on the line of road and the train will conti nue; or, at the end of the line, the consist can revers e direction without being turned Outfitting a locomotive with cab signals costs in excess of $100,000 and there are increased maintenance and inspection requirements as well. Consequently, railroads do not equip every locomotive with cab signals since that is too costly. To incorporate the cab signal logic, we parti tion each consist type into two consist types, one with the cab signal capability and the other without the cab signal capabi lity. For example, consist type 2-[SD40] can be decomposed into the categories: 2-[SD 40-Normal] and 2-[SD40Cab]. Similarly, we decompose the fleet-size requ irements for SD40 locomotives into two parts:

PAGE 84

84 SD40-Normal and SD40-Cab (this decomposition is an input provided by the railroad). For each train l, which operates in a cab si gnal corridor, we ensure that th e all the consist flow variables on it, that is, ,cc ll x yare zero when c is not a cab signal comp atible consist. This change guarantees that all the trains in cab signa l corridors are assigned cab sign al consists, but those in normal corridors can be assigned either kind of consist. While this change does not change the nature of our model, it increases the number of consists which increases the number of decision variables and constraints proportionately, and leads to consequently longer run times. While the locomotive flow formulation (Ahuja et al. ( 2005)) which suffers from intractability cannot handle the increased problem size, the consist based formulation is also able to solve this larger problem quickly. 3.4.3 Foreign Power Requirements Railroads often cooperate to r un trains directly from the orig in station on one railroad to the destination station on another railroad. These trains are called run-through trains. By allowing locomotives from the orig inating railroad to stay with the train through to destination, the cooperating companies eliminate queuing of trains and locomotives at the interchange stations that would otherwise occu r as one railroad would have to move extra locomotives to the interchange point in anticipation of the train arrival, or the tr ain would have to sit at the interchange waiting for locomotives. Over the we ek, several inbound run-through trains bring in foreign power into the network and several outbo und run-through trains retu rn foreign power to other railroad networks. However, the inbound and outbound run-through tr ain schedules are not perfectly balanced and the foreign power often fl ows back to other inte rchange locations or on direct or indirect trains. But, at the end of the week, each company is obligated to return as many

PAGE 85

85 locomotives that it receives from each connecting car rier in order to maintain the overall balance of power across North America. The foreign power requirement is incorporat ed by making appropriate changes to the space-time network. The network is augmented in such a way that solving the LPP would automatically guarantee a plan which accommodate s foreign power. We create the augmented space-time network in the following manner. We fi rst create the space-time network for the LPP as described in Section 3.3.1. Then, we creat e a pseudo super station for each of the foreign railroads. All the trains which bring in foreign po wer into the system originate at their respective super stations and terminate at their respective destinations. All the trains which send foreign power out of the system originate at their resp ective origins and terminate at their respective super stations. Due to the flow balance constraint s, the number of locomotives (or consists) of a particular type entering a super node will be equal to the number of locomotives (or consists) of the same type leaving the same super node. However, the model may use the super station as a short-cut between two geographic stations. For e. g. a consist that needs to travel between Chicago and Memphis may be routed from Chica go to a super station and then from the super station to Memphis because it is cheaper to do so. To prevent this kind of short-cutting, we set the costs on ground arcs at the supe r node to a large value. This en sures that the solution does not misuse the super node as a short-cut between tw o geographic stations a nd that only essential foreign power movement takes place between railroads. 3.5 Computational Results We now present computational results on seve ral problem instances. We also present the results of case studies and dr aw insightful conclusions. We implemented our algorithms in Visual Basic .NET programming lan guage and tested them on the data provided by a major Class I railroad. We modeled our integer programs using Concert Technology 2.0 modeling language

PAGE 86

86 and solved them using the CPLEX 9.0 solver We conducted all computational tests on a Pentium IV, 512 MB RAM and 2.4 GHz processor desktop computer. 3.5.1 Comparison of Formulations We compare the performances of the consist based formulation and the hybrid formulation on real-life instances while varyi ng the pre-specified input consist set as shown in Table 3-1. The first row of the table shows three input consists. Each subsequent row adds two more consists to the previous set of consists. We ran both the co nsist and hybrid formulations with these consist compositions and noted the running time and solu tion cost on two differen t real-life scenarios given to us by the railroad. Table 3-2, Table 3-3, and Figure 3-3 present the results of the comparison. We make the following observations from this study: As we increase the number of consists used, the solution becomes progr essively better. An increase from three to nine consists leads to an improvement of more than 17% whereas an increase from nine to seventeen consists gives an improvement of less than 3% demonstrating the law of diminishing returns. The objective function of the hybrid formulation for all cases is only marginally (< 5 %) better than that of the consist formulation. We also applied the original flow formulation developed in Ahuja et al. (2005) to these two scenarios but it did not converg e to a feasible solution even after 10 hours computation time. From these tests, we conclude that the consist formulation is an excellent way to model the LPP and we need a small number of consists (less than 10) to obtain good solutions. 3.5.2 Identifying Good Consists In Section 3.3.4 we described a method to select a set of p optimal consists from a larger candidate set of consists. Here, we consider an instance of the LPP a nd a set of 15 candidate consists. We then determine the optimal set of cons ists as described in S ection 3.3.4, varying the parameter p from 3 through 15, and note the objec tive function values of the problem for each

PAGE 87

87 case. We also compare these objective function values to the objective function value obtained when we use the set of eleven consist types sp ecified by the railroad (blue line in the figure). Figure 3-4 presents these computational results. We draw the following conclusions from these results: As the number of consists used increases, the solution quality improves. However, there are diminishing returns as we add more consists. Using just five consists, we are able to ma tch the solution obtained by using the eleven consists specified by the railroad. Six consists, if chosen judicious ly, can give as good a solution as fifteen consists. This is a gratifying observation as railroads desire five or six consists to ensure plan simplicity and plan compliance. 3.5.3 Incremental Locomotive Planning In this study, we present com putational results of the method described in Section 3.4.1 to solve the planning problem increm entally. In the incremental planning problem, we are given a possibly non-optimal feasible solution x0 and we wish to incrementally optimize it. Let x* denote the optimal solution of the LPP. We present the results of this test in Table 3-4. We start with solution x0 and make incremental changes to it so that it gets closer to the optimal solution and we control the extent of changes. Observe that as we increase the extent of change allowed by decreasing the penalty, we progressively obt ain improved solutions which differ from x0 by a greater extent but use le sser number of locomotives. Also note that the solution when the penalty is zero is largely different from the current solution x0. 3.5.4 Case Study We conduct a case study to demonstrate the us efulness of the model to assist decision making. The various aspects of the problem that we test in this case study are as follows: (1) Effect of varying minimum connection time on so lution cost, (2) Effect of varying transport

PAGE 88

88 volumes on key transport performance characteristic s; and (3) Effect of varying train times on key transport performance characteristics. Effect of varying minimum connection time on solution cost Freight trains do not run on tim e and often arrive later than their planned arrival time, which makes it difficult for locomotive dispatch ers to adhere to the locomotive plan. One method commonly recommended to improve plan co mpliance is to increase the train-train minimum connection times (defined in Secti on 3.2.1). Although increasing the minimum connection time may improve plan adherence, it also increases locomotive costs as more locomotives will be held in inventory at termin als. We quantify the impact of increasing the minimum connection times. We performed the test for a representative instance where we varied connection times from zero hours to ten hours and noted the total cost incurred by each solution. This test was done twice, first with an input set of nine consists and then with an input set of eleven consists. We present the results of the test in Table 3-5 and Figure 3-5. We draw the following conclusions from the study: The minimum connection time could have a significant impact on the number of locomotives used and the solution cost. The solution cost increases linearly with the increase in connection times at the rate of around $200,000 per hour. Depending upon the train lateness and the willin gness of railroad planners to improve locomotive plan compliance, appropriate connec tion times can be used. In this study, we assumed same connection times system-wide. Rail roads may want to experiment with stationdependent connection times based on historical la teness performance of trains. As shown in this study, railroads can use the m odel to quantify the trade-off between decreasing minimum connection times and increasing solution costs.

PAGE 89

89Effect of varying transport volume on key performance characteristics We measure the impact of varying transport volumes (or train tonnages) on the following key transport characteristics: number of locomoti ves used, solution cost, mean pulling power of a consist, and mean miles traveled per consist. We start with a solution wi th specified tonnages on each train. We then proceed to decrease tonnages by steps of five percent and measure the impact on transport characteristics. We then repeat the test but this time increasing tonnages by steps of five percent. The results of these test s are presented in Table 3-6 and Figure 3-6. The consist flow formulation was able to solve all instances in less than two minutes of computational time. We draw the following conclusions from this study: As the transport volume (mean tonnage) increases the solution cost te sted increases as a quadratic function with an increasing slope The mean pulling power of each consist and th e number of locomotives used increase as expected; however, the average number of m iles traveled by each consist remains roughly the same. The consist flow formulation is robust since it solves all the instances in less than two minutes of computational time. As we demonstrate, railroads can use the m odel as a generic approach for modeling the optimal number of locomotives needed or the co st as a function of the rail freight transport volume over the entire network. Effect of varying train speed on key performance characteristics We measure the impact of varying trai n speeds on the following key transport characteristics: number of locomotives used, solu tion cost, mean pulling power of a consist, and mean miles traveled per consist. We start with a solution with specified travel times on each train. We then proceed to decrease travel time s by steps of five percent and measure the impact on the transport characteristics. We then repeat the test but this time increasing travel times by

PAGE 90

90 steps of five percent. The results of these test s are presented in Table 3-7 and Figure 3-7. The consist flow formulation was able to solve a ll these instances in le ss than two minutes of computational time. We draw the following conclusions from this study: As the train travel times increase, the soluti on cost increases as a quadratic function with an increasing slope. The number of locomotives used also increases as shown in the table; however, the mean miles per consist remains roughly constant. The consist flow formulation is robust since it solves all the instances in less than two minutes of computational time. Increasing train speeds improves efficiency of the network and lead s to lesser scheduling costs. However, it may also lead to an increase in other costs like fuel consumption cost, safety, etc. The railroad can use the model to perform co st-benefit analysis to trade-off the increase in cost of operations with the savings in schedulin g costs and consequently determine their optimal strategy. 3.6 Summary and Conclusions Our research builds upon our previous work on railroad locomotive scheduling. We focus on improving the planning version of the problem, where we assign locomotive types to various trains. We extend the approach on several dimens ions by adding new constr aints to the planning problem required by the railroads, and by deve loping additional formulations necessary to transition solutions of our models to practice. The major contribution is to suggest a new approach of routing consists (a group of locomotives) rather th an routing individual locomotives. We show through our computational tests that even though routing of consists seems to restrict the solution space of the LPP, if we create good consists, we can get almost as good solutions as with the earlier formulations. This is a very im portant observation since so lutions of the consist

PAGE 91

91 formulation are much easier to implement, cause less train delays, and allow greater flexibility for mix-and-match for locomotive dispatchers. Fu rther, we found that the consist formulation runs faster and is more robust than the earlie r flow-based formulations. Another important contribution in the chapter is to enable a rail road to progressively move towards an optimal locomotive plan in several smaller and realistic steps by solving a sequence of incremental LPPs. Finally, we also added important practical features such as accounting for foreign power and cab-signal locomotives, which are critical to generating implementable locomotive plans. The locomotive planning model creates a bluepr int for use by managers to assist them in making day-to-day decisions regarding locomotiv e assignments. We demonstrate the usefulness of this model by performing extensive case studies to evaluate the impact of varying minimum connection times, freight transport volumes, and tr ain speeds (or travel times). In the future, we hope to develop tools for use by tactical locomo tive dispatchers to assign locomotives by specific tail numbers. This real-time model will strive to return the network to plan, while maintaining fluidity and minimizing overall costs. The loco motive planning models described will form the core of the real-time locomotive models.

PAGE 92

92 Table 3-1. Set of input consists. Index # Consists Consist Set Horsepower 1 3 2[SD40], 3[SD40], 3[CW40-8] 6000, 9000, 12000 2 5 & 2[CW60AC], 2[CW40-8]+1[SD40] 12000, 11000 3 7 & 1[CW40-8] + 2[SD40], 2[CW44AC] 10000, 8800 4 9 & 2[CW40-8], 2[SD 40] + 1[SD60I] 8000, 9800 5 11 & 2[CW40-8] + 1[CW60AC], 1[CW40-8] + 1[SD40] 14000, 7000 6 13 & 1[SD60I] + 1[GP40], 1[CW44AC] + 1[SD40] 6800, 7400 7 15 & 4[SD40], 2[GP40] 12000, 6000 8 17 & 2[SD60I], 3[GP40] 7600, 9000 Table 3-2. Comparison of formulations: Scenario 1 388 trains, 6 locomotive types, 87 stations Consist formulation Hybrid formulation # of consists Locos used Cost ($) Time (sec)Status Locos usedCost ($)Time (sec) Status 3 1,376 9,991,949 2.9Optimal1,3389,671,012120.0 0.4% gap 5 1,330 9,789,957 45.0Optimal1,2859,402,383120.0 0.1% gap 7 1,183 8,597,982 10.8Optimal1,1418,337,573450.0 0.6% gap 9 1,051 8,221,321 4.8Optimal1,0528,164,544600.0 4.1% gap 11 1,047 8,118,454 9.1Optimal1,0517,994,043600.0 1.7% gap 13 1,045 8,062,075 92.6Optimal1,0577,923,8471,000.0 8.6% gap 15 1,047 7,995,065 114.0Optimal1,0587,833,8381,000.0 6.4% gap 17 1,047 7,995,065 120.00.1% gap1,0567,833,0731,500.0 6.7% gap Table 3-3. Comparison of formulations: Scenario 2 382 trains, 6 locomotive types, 87 stations Consist formulation Hybrid formulation # of consists Locos used Cost ($) Time (sec)Status Locos Used Cost ($)Time (sec) Status 3 1,388 10,071,804 120.0Optimal1,3619,813,393347.0 Optimal 5 1,343 9,871,203 13.1Optimal1,3129,573,504450.0 0.4% gap 7 1,201 8,731,696 11.4Optimal1,1668,517,248450.0 1.4% gap 9 1,064 8,383,781 34.6Optimal1,0608,282,831600.0 2.6% gap 11 1,062 8,301,766 120.10.1% gap1,0568,179,846600.0 2.3% gap 13 1,056 8,247,947 450.00.6% gap1,0668,112,9171,200.0 8.1% gap 15 1,062 8,204,256 450.01.8% gap1,0717,990,3161,200.0 4.2% gap 17 1,063 8,204,160 450.01.7% gap1,0717,990,3001,800.0 4.9% gap (c)

PAGE 93

93 Table 3-4. Computational results of incremental locomotive planning. Penalty Value % Difference Locos Used Time (min) 1,800 5.5% 1,463 10.0 1,600 5.5% 1,463 10.0 1,400 6.3% 1,430 10.0 1,200 7.0% 1,393 10.0 1,000 7.4% 1,382 10.0 800 10.5% 1,352 10.0 600 19.4% 1,214 10.0 500 22.1% 1,175 10.0 400 26.4% 1,159 10.0 300 28.3% 1,141 10.0 200 36.8% 1,146 10.0 100 60.6% 1,130 10.0 0 81.0% 1,128 10.0 Table 3-5. Effect of varyi ng the minimum connection time. Scenario 1: 9 Consist Types Scenario 2: 11 Consist Types Min Connection Time (hrs) Cost ($) Locos Used Time (sec) Cost ($) Locos Used Time (sec) 0 7,497,798 90319.87,408,11390338.3 1 7,734,067 9477.57,628,9169433.3 2 7,926,831 9774.07,832,53397316.3 3 8,112,888 1,0152.68,010,1231,0095.5 4 8,330,598 1,0492.98,218,4771,0474.2 5 8,506,699 1,08110.08,392,4751,0834.2 6 8,732,819 1,12714.38,617,0591,1319.7 7 8,896,129 1,1597.28,778,2491,16434.6 8 9,163,605 1,22123.29,042,9401,22186.8 9 9,277,919 1,24520.69,165,8631,24557.7 10 9,439,117 1,27712.39,306,1911,27437.7

PAGE 94

94 Table 3-6. Effect of varying transport volumes. % increase in tonnage Mean tonnage of trains Locos Used Solution Cost ($) Mean pulling power/consist Mean miles/ consist -20 6,1831,0267,502,80210,099 405.05 -15 6,5701,0267,588,42110,373 405.04 -10 6,9561,0427,726,57910,464 404.17 -5 7,3421,0407,910,33110,841 405.14 0 7,7291,0498,120,13411,093 403.73 5 8,1151,0798,437,33411,457 403.86 10 8,5021,1178,812,46711,828 405.27 15 8,8881,1719,296,42312,483 403.98 20 9,2751,2149,635,79012,715 405.12 Table 3-7. Effect of varying train travel times. % increase in travel time Locos Used Solution Cost ($) Mean pulling power/consist Mean miles/ consist -20 915 6,959,17911,237403.20 -15 937 7,189,83911,236404.67 -10 975 7,531,42411,199407.52 -5 1,003 7,778,31811,157404.78 0 1,049 8,120,83411,093403.73 5 1,073 8,383,09611,197405.00 10 1,111 8,702,84711,151404.07 15 1,148 8,967,09911,056405.12 20 1,171 9,194,21011,038404.92

PAGE 95

95 Figure 3-1. Overview of the locomotive scheduling algorithm Seven-Day Scheduling Problem : Reoptimize one-day locomotive schedule to determine the seven-day schedule. One-Day Scheduling Problem : Transform the problem to the one-day scheduling problem and solve it. Determine train-train connections Determine active & deadhead assignments Improve solution using VLSN search Solve a sequence of singlecommodity flow problem to obtain a feasible seven-day solution. Determine light travel assignments Determine a seven-day (possibly infeasible) solution. Improve solution using VLSN search

PAGE 96

96 Figure 3-2. A part of the space-time network. $7,500,000 $8,000,000 $8,500,000 $9,000,000 $9,500,000 $10,000,000 $10,500,000 135791113151719Number of Consists Scenario 1 Scenario 2 C os t ($) Figure 3-3. Solution cost of the consis t formulation vs. number of consists. Train arcs: Connection arcs: Ground arcs: Train Arcs Train 1 Train 4 Train 5 Arrival Nodes Train 2 Train 3 Train 6 Departure Nodes Train Arcs Ground Nodes Time

PAGE 97

97 7,000,000 7,500,000 8,000,000 8,500,000 9,000,000 9,500,000 10,000,000 0246810121416 Consist Optimization Problem Railroad solution Number of Consists Figure 3-4. Solution cost vs. number of consists. $7,000,000 $7,500,000 $8,000,000 $8,500,000 $9,000,000 $9,500,000 $10,000,000 01234567891011Minimum Connection time (hr) 9 consist types 11 consist types Figure 3-5. Solution cost vs. minimum connection time.

PAGE 98

98 y = 0.1844x2 2144.7x + 1E+077,000,000 7,500,000 8,000,000 8,500,000 9,000,000 9,500,000 10,000,000 6,0006,5007,0007,5008,0008,5009,0009,500Mean tonnageCost ($) Figure 3-6. Solution cost vs. transport volumes. y = 1101.7x2 + 54516x + 8E+067,000,000 7,500,000 8,000,000 8,500,000 9,000,000 9,500,000 10,000,000 -25-20-15-10-50510152025% increase in travel timeCost ( $ ) Figure 3-7. Solution cost vs. % increase in travel time.

PAGE 99

99 CHAPTER 4 THE LOCOMOTIVE ROUTING PROBLEM 4.1 Introduction The objective of the LPP is to assign locomotive types to trains in a cyclic train schedule, while honoring several operational constraints and minimizing the overall cost of assignment. Our models to solve the LPP, described in Chap ter 3, assign locomotive types to trains in the schedule ensuring that every train in the weekly repeating schedule gets sufficient pulling power, locomotive flows are balanced, and several other operational constraints ar e satisfied; however, they do not account for the fueling and servicing feasibility of individual locomotive units. We bridge this gap and develop met hods that can be used to route locomotive units on fueling and servicing friendly cycles. Locomotive plans or schedules are blue prints based on which the railroads manage their operations in real-time; our research is hence a vital cog in the area of locomotive management since it makes the blue-p rint more realistic and implementable. The LRP involves routing each locomotive unit on a cyclic sequence of trains so that it can be fueled and serviced as necessary; while at the same time satisfying all other business and operational constraints considered in the LPP. We refer to th e sequence of trains on which a locomotive unit travels as a locomotive route. Fu eling feasibility requires that each locomotive route has sufficient fueling opportun ities to ensure that the loco motive does not run out of fuel (out-of-fuel event). This translates to the constr aint that every locomotive needs to have a fueling opportunity at least once for every F miles (900 mile s) of travel. Similarly, servicing feasibility requires that each locomotive route has sufficient servicing opportunities and this translates to the constraint that every locomotive needs to ha ve a servicing opportunity at least once for every S miles (3,000 miles) of travel Suppose all the stations in the network support fueling and servicing, any feasible solution to the LPP coul d be trivially decomposed into a fueling and

PAGE 100

100 servicing friendly routing of locomotives us ing a straight forwar d polynomial-time cycle decomposition algorithm (Ahuja, Magnanti, and Orlin (1993)). However, typically only 50% of the stations on the train network support fueling and 30% of the stations support servicing, and this makes the LRP an extremely complex comb inatorial optimization problem. Indeed, this problem remains practically unstudied and unsolved, and our chapter reports the first attempt to model and solve the LRP using optimization methods. The LPP (Ahuja et al. (2005), Vaidyanathan et al. (2007b)) is analogous to the well studied airline fleet assignment problem (A bara (1989), Talluri (1996), a nd Rexing et al. (2000)) and the LRP is analogous to the well studied aircraft ma intenance routing proble m (Clarke et al. (1997), Gopalan and Talluri (1998), Barnha rt et al. (1998), and Talluri (1998)). Integr ating airline fleet assignment and maintenance routing into a single pr oblem makes the problem very hard to solve. Hence, the predominant approach adopted is se quential; i.e. the fleet assignment problem is solved first to fix the assignment of aircraft types to flights, an d the aircraft routing problem is solved next to route individual ai rcrafts. Several researchers have worked on the aircraft routing problem. Clarke et al. (1997) present a mathemati cal formulation for the aircraft routing problem and discuss its similarity with the asymmetric traveling salesman problem. Gopalan and Talluri (1998), and Talluri (1998) describe methods to generate aircraft routings that satisfy the four-day maintenance requirement. In another study with a different objective, Feo and Bard (1989) study the maintenance location problem to find the mini mum number of maintena nce stations required to meet the specified 4-day maintenance requir ements for a proposed flight schedule. The only study which considers the integrat ed fleet assignment and aircra ft routing problem is due to Barnhart et al. (1998). They use a branch-and-price based approach to solve the integrated airline

PAGE 101

101 fleet assignment and aircraft routing problem However, even for small problems with 150-200 flights their approach takes 34 hours of computational time. The study of various locomotive scheduling models has also been reported in the literature; however none of these consider the fueling and servicing requirements of locomotive units. In Chapter 3, we survey the pre-existing research on the LPP. The most comprehensive multiple locomotive planning models are due to Ahuja et al. (2005) and Vaidyanath an et al. (2007b). The only existing railroad research which considers maintenance requi rements is due to Maroti and Kroon (2005). They consider the problem of rout ing locomotive units that require maintenance in the next one to three days and propose a multicommodity flow model to solve this problem. Their problem definition does not consider fuel ing requirements and this reason among several others makes their problem less genera l than the LRP that we consider. The existing methods in the lite rature for aircraft routing canno t be directly applied to the LRP. This is because the LRP is more complex than the aircraft routing problem due to the following reasons: (a) Every airport on the airl ine network supports fu eling, making fueling feasibility a non-issue; however every station on a railroad network does not support fueling; (b) Airlines do not operate dur ing the night and this gives added flexibility to satisfy maintenance requirements whereas railroads opera te round the clock; (c) Flight le gs on the airline network are assigned to only one aircraft wher eas trains on a railroad networ k are usually assigned several locomotive units; and (d) Aircraft routing problems are typically solved for a few hundred flights whereas the LRPs need to be solved for schedules with a few thousand trains. Also, note that the integrated approach used by Bar nhart et al. (1998) takes 3-4 hours of computational time even for a problem with 150-200 flights; this is a very small problem from the railroad perspective. Due to these reasons, we adopt a two stage decom position approach to solve the problem. In the

PAGE 102

102 first stage we solve the LPP, using existing me thods, to obtain an assignment of locomotive types to trains (locomotive schedule). In the seco nd stage, we use the methods described in this chapter to solve the LRP and r oute locomotive units on fueling and servicing friendly cyclic routes (locomotive routes). While solving the LRP, we fix the assignment of locomotive types to trains based on the output of the LPP, and use the flexibility of varying the connections of locomotives between trains (train connections) to achieve fueling and servicing feasibility. We illustrate the importance of train connections through the following example. Consider a locomotive that arrives at a station on train A ha ving traveled 500 miles afte r its last fueling. Let this locomotive have the option to connect to either train B or train C. Wh ile train B has a length of 300 miles and terminates at a fueling locati on, train C has a length of 500 miles and also terminates at a fueling location. If the locomo tive connects from train A to C, then the total length of travel between fueli ng opportunities becomes 1,000 miles (> 900 miles) and leads to an out-of-fuel event. On the other hand, if the same locomotive connects from train A to B, the total length of travel between fueli ng opportunities is 800 m iles and the locomotive route is fueling feasible. However, note this example considers a local single connection (or two trains) case but fueling and servicing feasibility is often relate d to more than one connection (or a sequence of trains). We formalize this notion by introducing the concept of strings. Strings enable us to account for the fueling and servicing feasibility of a sequence of trains on which a locomotive unit travels. Hence, each locomotive rout e is made up of a sequence of strings. Since we fix the assignment of locomotive type s to trains, the LRP can be solved as an independent problem for each locomotive type. Ou r solution approach for the LRP involves the following steps. First, we enumerate alternative fueling and servicing feas ible paths (or strings) between service stations in the train network using dynamic programming. Once we enumerate

PAGE 103

103 the strings, we formulate an integer program called string decompos ition problem (SDP) on a suitably defined space-time network to decompose the locomotive schedule into flows on strings. The output of the SDP can then be assembled into fueling and servicing frie ndly cycles using the standard polynomial-time cycl e decomposition algorithm (Ahuja, Magnanti, and Orlin (1993)). However, SDP is NP-Complete and has millions of decision variables. We develop an aggregation-disaggregation base d method to solve this problem efficiently. Our aggregationdisaggregation method involves two steps. In the first step, we formulate and solve a much smaller aggregated SDP and in the second step we disaggregate the solution of the first stage to obtain a solution to the original problem. Finally we develop necessary co nstraints that can be added to the LPP so that the planning model also considers fueling and se rvicing constraints to some extent. Our major research contributions are: We develop a modeling framework and a multi-stage decomposition solution approach for the LRP which is a previously unstudied a nd unsolved problem. This problem is more complex than the well studied anal ogous aircraft routing problem. We formulate the LRP as an integer progr amming string decompos ition problem (SDP) on a suitably defined space-time network and pr ove that the problem is NP-Complete. We develop efficient dynamic programming algor ithms to enumerate strings which are the decision variables in the SDP. Due to the combinatorial nature of strings, the SDP has close to a million decision variables. We develop an aggregation-di saggregation based algorithm to solve this extremely large NP-Complete problem to near optimality within a few minutes of computational time. We present extensive computational results to validate the performance of our approach and present case studies of our algorithms on real-life da ta provided by a Class I US railroad. We present the first comprehensive study of the LRP, which has re mained practically unstudied and unsolved. We model the LRP using network based integer programming

PAGE 104

104 techniques and design efficient algorithms to solv e it. Our computational results demonstrate the efficacy of our algorithms; the algor ithms that we present produce near optimal solutions within 5 minutes of computational time on several re al-life instances obtained from a Class I US railroad. We also demonstrate the usefulness of our model to perform strategic analysis through suitable case studies. We believe that this research is a crucial step in our overall objective of enabling railroads to manage their locomotive resources more efficiently through optimization techniques. 4.2 Notations and Terminology Train Schedule: The train schedule (or train network) contains the set of trains which operate every week. Each train has the following at tributes: train ID, depart ure station, departure time of the week, arrival station, arrival time of the week, and duration. Railroads typically have a train schedule that is periodic. We assume th at the train schedule is weekly periodic and hence we refer to trains in the weekly train schedule as weekly trains. Each weekly train is identified by the unique combination of its tr ain ID and day of operation. For e.g. Train ID TR01 which operates on Monday, Tuesday, and Thursday corre sponds to three weekly trains, TR01-Monday, TR01-Tuesday, and TR01-Thursday. TR01 is also referred to as a daily train. Locomotive Schedule: The locomotive schedule specifies the assignment of locomotive types to all trains in the week such that all operational constrai nts, other than the fueling and servicing requirements, are satisfied. These cons traints include pulling e ffort and horse power constraints for each train, flow balance for each locomotive type, fleet-size constraints, flow upper and lower bounds on each train, and weekly repeatability of locomotive assignments. Decomposed Locomotive Schedule: The locomotive schedule can be decomposed with respect to the different locomotive types in the fleet. The decomposed locomotive schedule which corresponds to a particular locomotive type considers only the trai ns that carry that

PAGE 105

105 locomotive type and also considers only assignments of that particular locomotive type. For e.g. Suppose we consider a schedule w ith three trains, TR01 has an assignment of one unit of type A and one unit of type B, TR02 has an assignment of two units of type A, and TR03 has an assignment of two units of type B. Then, th e decomposed locomotive schedule corresponding to locomotive type A will contain TR01 with as assignment of one unit and TR02 with an assignment of two units; and the decomposed locomotive schedule corresponding to locomotive type B will contain TR01 with an assignment of one unit and TR03 with an assignment of two units. Decomposed Train Schedule: The set of trains in a decomposed locomotive schedule of a particular locomotive type constitutes the decom posed train schedule of that locomotive type. Fueling Station: A fueling station is a station that supports fue ling of locomotives. Every fueling station has an associated fuel ing time and fueling cost per gallon. Servicing Station: A servicing station is a station that supports se rvicing of locomotives. All servicing stations are also fueling stations. E ach servicing station has an associated servicing time and servicing cost. Train Connection: Refers to transfer of locomotives from an inbound train at a particular station to an outbound train at the same station. Minimum Connection Time: This refers to the minimum time required for a train connection to be made. It is a function of the station at which the connection is made. String: A string is a connected sequence of trains 12...nttt ; i.e. the destination of train it is the same as origin of train 1it. Fuel String: A fuel string is a connected sequence of trains such that a locomotive unit traveling on this sequence can be fueled feasibly.

PAGE 106

106 Service String: A service string is a connected sequence of trains such that a locomotive traveling on this sequence can be fueled and serviced feasibly. 4.3 Overview of Our Approach We present our approach to solve the fueli ng and servicing friendly LRP in Figure 4-1. This flowchart presents the various steps in our approach and how these steps relate to each other. In subsequent sections, we then elaborate on details. Note that step 1 involves solving the LPP and steps 2-4 constitute solving the LRP. The LRP is solved as an independent problem for each locomotive type 4.4 The Locomotive Planning Problem (LPP) Our approach to solve the fueling and se rvicing routing problem is a two stage decomposition approach where in the first stage we solve the LPP and in the second stage we solve the LRP. The locomotive schedule obtained fr om the LPP is hence one of the inputs that goes into the LRP. In Chapter 3, we present our research on the LPP. The models developed there give us a locomotive plan that satisfies al l constraints other than the fueling and servicing constraints. We develop methods to incorporate fueli ng and servicing constraints. We fix the assignments of locomotive types to trains ba sed on the solution to the LPP and solve the LRP which uses the flexibility of modifying train connections to enforce fueling and servicing feasibility of locomotive routes. Since we fix the assignment of locomotive types to trains after the LPP, the LRP can be solved as an indepe ndent problem for each locomotive type. In our description of the LRP in Sections 4.5-4.8, we therefore assume that there is only one locomotive type.

PAGE 107

107 4.5 Fuel and Service String Enumeration Algorithms In the introduction, we mentioned that the LRP uses the flexibility of switching train connections in order to achieve fueling and servici ng feasibility. In this section, we formalize this notion by defining the concept of strings and also developing algorithms to enumerate strings. The objective of the LRP is to route locomotive units in cycles in such a way that each unit has sufficient fueling and servicing oppo rtunities. Consider a unit that tr avels on one such cycle. This locomotive will visit several stations, some which are servicing stations, some which are fueling stations, and some which are neither. Suppose this cy cle is a fueling and servicing friendly cycle. Then, by definition this would imply that the sequence of trains that the locomotive takes between fueling stops is a fuel string and the sequence of trains that the locomotive takes between servicing stops is a servic e string. This observation is the basis of our approach to solve the LRP. Our approach involves enumerating strings and then decomposing the locomotive schedule into flows on strings. In this section, we develop algorithms to enumerate strings efficiently. We next formally de fine fuel strings and then desc ribe methods to enumerate them. Fuel string A fuel string is a sequence of trains 12...nttt which satisfies the following properties: It is connected i.e. arrival station of it= departure station of1it Departure station of 1tand arrival station of ntare fueling stations. Length of the sting is less than F miles. The string is minimal; i.e., a fuel string cannot pass through an intermediate fueling station or a fuel string cannot contain anothe r fuel string as a sub-sequence. No train repeats in the string. Valid fuel sequence and algorithmic logic We define a valid fuel sequence as a sequence of trains which satisfies all the properties of a fuel string except that it does not terminate at a fueling station. Thus, a valid fuel sequence can be obtained from any fuel string by deleting the last train from it. Conversely, any fuel string can

PAGE 108

108 be represented as a valid fuel se quence plus one last train which te rminates at a fueling station. Our dynamic programming algorithm uses this property to enumerate fuel strings. The algorithm starts with a seed set of trivial valid sequences and iteratively builds longer sequences from this set. The algorithm is based on repeated applicat ion of the following induc tive logic: Consider a situation when we have the set of all valid fuel sequences of length k where length represents the number of trains in the sequence. Consider a trai n that departs from the destination of the last train in the valid sequence. When this train is added to the valid sequence to create an augmented sequence, the following po ssibilities could occur: The augmented sequence is a valid fuel sequence in which case we store it in the set of valid fuel sequences of length k+1. The train which is being added to the valid fuel sequence is already a pa rt of the valid fuel sequence in which case we do not store the au gmented sequence in the set of valid fuel sequences of length k+1. The length of the augmented sequence is great er than F miles in which case we do not store it in the set of valid fu el sequences of length k+1. The augmented sequence is a fuel string in which case we store it in the set of fuel strings. Fuel string enumeration The fuel string enumeration (FSE) algorithm star ts with a set of valid fuel sequences of length one. By definition the set of valid sequences of length one contains all trains which originate at a fueling station and do not terminate at a fuelin g station. The algorithm then iteratively generates longer fuel strings until al l such possibilities have been enumerated. We now give the notation and desc ription of the algorithm. Let kPdenote the set of valid fuel sequences of length k, FS denote the set of fuel strings, and Trains denote the set of weekly trains in the schedule. Then, the fuel string enumeration algorithm can be formally written as shown in Figure 4-2.

PAGE 109

109 The number of valid sequences and fuel strings is finite. Each execu tion of the inner-most loop produces a longer valid sequence, a fuel stri ng, or fathoms that particular valid fuel sequence. Hence, FSE terminates in a finite numbe r of steps. We now defi ne service strings and extend the dynamic programming approach to enumerate service strings. Service string A service string is a sequence of trains 12...nttt which is characterized by the following properties, It is connected i.e. arrival station of it= departure station of1it Departure station of 1tand arrival station of ntare service stations. Length of the string is less than S miles. The string is minimal; i.e., a service string ca nnot pass through an in termediate servicing station. This implies that a service string cannot contain another se rvice string as a subsequence. No train repeats in the string. The string is also fueling feasible. Since all service stations in the network also support fueling, it follows that for the last condition to be satisfied, every service string has to be construc ted from one or more connected fuel strings. Valid service sequence and algorithmic logic We define a valid service sequence as a sequence of trains which satisf ies all properties of a service string except that it does not terminate at a service station. Therefore, any service string can be represented as a valid service sequence plus one fuel string which terminates at a servicing station. Our dynamic programming algor ithm uses this property to enumerate service strings. The algorithm starts with a seed set of trivial valid sequences and iteratively builds longer sequences from this set. Consider a situat ion when we have the set of all valid service sequences of length k where length represents the number of fuel strings in the sequence. Consider a fuel string that depa rts from the destination of the last fuel string in the valid

PAGE 110

110 sequence. When this fuel string is added to th e valid sequence to create an augmented sequence, the following possibilities could occur: The augmented sequence created is a valid se rvice sequence in which case we store it in the set of valid service sequences of length k+1. A train which belongs to the added fuel string is already a part of va lid service sequence of length k in which case we do not store the augmented sequence in the set of valid service sequences of length k+1. The length of augmented sequence is greater th an S miles in which case we do not store it in the set of valid service sequences of length k+1. The augmented sequence forms a service string in which case we store it in the set of service strings. Service string enumeration The service string enumeration (SSE) algorithm st arts with a set of valid fuel sequences of length one. By definition the set of valid sequences of length one contains all fuel strings which originate at a service station but do not termin ate at a service stati on. The algorithm then iteratively generates longer service strings until all such possibilities have been enumerated. We now give the formal description of the algorithm. Let kPdenote the set of valid service sequences of length k, FS denote the set of fuel strings, SS denote the set of service strings, Tr ains denote the set of weekly trains in the schedule, and Trains(l) denote the set of weekly trai ns that are a part of string l. Then, the fuel string enumeration algorithm can be form ally written as shown in Figure 4-3. The proof for finiteness of SSE follows in a si milar manner to that of FSE. However, since the number of fuel and service strings is an e xponential function of the problem size, both these algorithms are exponential time algorithms. Ne xt, we formulate the string decomposition problem which is used to decompose a locomo tive schedule into flows on service strings.

PAGE 111

111 4.6 String Decomposition Problem (SDP) In the previous section, we described methods to enumerate service strings. These service strings are the decision variables in the SDP. The objective of the SDP is to determine the minimum cost decomposition of a locomotive sche dule into flows on service strings. Due to the manner in which service strings are constructed, it follows th at a locomotive schedule when decomposed into flows on service strings will give fueling and servicing compliant locomotive routings. We formulate the SDP as an integer programming problem on a suitably defined spacetime network. We first describe the constructi on of space-time network and then the integer programming formulation. We also show th at string decomposition is NP-Complete by a polynomial-time reduction from the set partitioning problem which is known to be NP-Complete (Garey and Johnson (1979)). 4.6.1 Space-Time Network We denote the space-time network by G (N, A) where N is the set of nodes and A is the set of arcs in the network. Each node in the netw ork represents an event. The events that we consider are the arrival of weekly trains at service stations and departure of weekly trains from service stations. For each train arri val at a service station, we crea te a train-arrival node at that station. Once a locomotive arrives at a station, it needs a minimum conne ction time before being assigned to the next train; i.e., the time at which a locomotive on a train is available for future assignment is the arrival time of the train plus the minimum connection time. We call this time the ready time of the train. To each train-arri val node we assign a time attribute equal to the ready time of the corresponding trai n. For every train which depart s from a service station, we create a train-departure node at th e departure station of the train. To each train-departure node, we assign a time attribute equal to the de parture time of the corresponding train.

PAGE 112

112 We now describe the construction of arcs on the network. Let S be the set of service strings enumerated using the methods described in the prev ious section. Let first( s) denote the first train in string s and last(s) denot e the last train in stringsS Since every service string sS by definition, originates at a service station and also terminates at a service station, the space-time networks contains a train-departure node 1nN that corresponds to firs t(s) and a train-arrival node 2nN that corresponds to last(s). For each st ring s, we construct an arc between its corresponding nodes 1n and 2n. The other set of arcs on the network are train connection arcs. At each service station we construct train connect ion arcs (CoArcs) between all combination of inbound train and outbound train to model the di fferent possibilities of inbound locomotives being assigned to outbound trains. The following important property directly follo ws from the construction of the space-time network. Property 4.1. A locomotive which travels on a cycl e in the space-time network given above can be fueled and serviced feasibly. Proof: Consider a cycle on the space-time networ k G (N, A). The cycle will consist of a service string, a connection arc, another service string, and so on until it loops back to the first service string. Since by definiti on, a locomotive traveling on a se rvice string can be fueled and serviced feasibly, the result follows. In Figure 4-4, we illustrate a part of the spac e-time network at a particular service station. This station has two incoming trains (two trai n-arrival nodes), two outgoi ng trains (two traindeparture nodes), four incoming strings, seven ou tgoing strings, and four train connections. Note that the overall space-time networ k contains one such component at each service station and the strings connect these components to each other.

PAGE 113

113 4.6.2 Integer Programming Formulation We formulate the SDP as an integer program ming problem on the space-time network. The objective of this formulation is to partition the locomotive assi gnment on each train (locomotive schedule) into flows on the service strings that pass through it while ensuring locomotive flow balance at each station. We now layout the notation and formally define this problem. Trains: Set of all weekly trains. Indexed by l. CoArcs: Set of all train connection arcs. S: Set of service strings. ,lae: Event corresponding to th e arrival of train l at a service station. ,lde: Event corresponding to the departure of train l from a service station. lS: Set of service strings ending with train l. lS: Set of service strings beginning with train l. ,1lsa if train l is a part of stringsS 0 otherwise. s c: Cost of a locomotive unit traveling on stringsS l f : Number of locomotives assigned on train l in the locomotive schedule. O: Set of arcs which cross the count-time. The co unt-time is a reference time at which we count the number of locomotives in the system. It is usually set as Sunday mid-night. s r: Number of times string sS crosses the count-time. The decision variables are as follows: s x : Number of locomotives assigned to stringsS j y : Number of locomotives assi gned on train connection arcjCoArcs G: Ownership cost of a locomotive.

PAGE 114

114 The objective function is: ()() s sssj sSsOSjOCoArcs M incxGrxGy (4.1a) The constraints are the following: for all ,lssl sSaxflTrains (4.1b) (()), for all ,lsj jIheadl sS x ylTrains (4.1c) (()), for all ,lsj jOtaill sS x ylTrains (4.1d) 0 integer, 0.s jx y (4.1e) Constraint (4.1b) is the set partitioning constraint that ensures that the locomotive assignment on each train is distributed complete ly on the service strings that pass through it. Constraints (4.1c) and (4.1d) are the flow balance constraint s at each node on the space-time network and they ensure that the total flow entering a node is e qual to the total flow leaving a node. The objective function (4.1a) is set up to minimize the total cost of fueling and servicing and also the ownership cost of locomotives used. Railroads operat e in such a way that whenever a locomotive fuels, its tank is topped off. Based on this assumption and the average fuel burn rate of each locomotive, the cost of each service string s c can be computed cons idering the cost of servicing and fueling at the final station in the string and the costs of fueling at the other fueling stations encountered en-r oute. Note that once we obtain a solu tion to the SDP, the arc flows can be converted into flows on cycles using a standard polynomial time cycle decomposition algorithm (Ahuja, Magnanti, and Orlin (1993)). From Property 4.1, it directly follows that each

PAGE 115

115 of these cycles will be fueling and servicing frie ndly cycles and hence, constitute a solution to the LRP. We now prove that the SDP is NP-Complete. Clearly, a certificat e for the SDP can be verified in polynomial time. We next descri be a polynomial-time reduction from the set partitioning problem which is known to be NP-com plete (Garey and Johnson (1979)) to a special case of the SDP. The set partitioning problem is defined as follows Given a universe U of n elements, a collection of subsets of U, 1,...,kSSS does there exist a sub-collection of S that covers all the elements of U ex actly once? This problem can be formulated mathematically as follows: : s x Binary variable which indicates whether a set sS is chosen or not Let 1, if element is contained in set 0, otherwiselslUsS a 1, for all ,lss sSaxlU 0,1.sx We reduce the set partitioning problem to a sp ecial case of the SDP as follows. For each lU we create a train l which departs from and also arrives at service stat ion A. Let the set of strings S be train sequen ces corresponding to the sets in S. For e.g., If 112,,...,rSlll then the corresponding string is the sequence of trains 12,,...,rlll. We create a space-time network for these set of input trains a nd strings and se t the flow (l f ) on each train to one. Now, note that for this specially constructed SDP, Constraint (4.1b) is identical to set partitioning constraint given above and the flow balance constraints are automa tically satisfied because each string originates and terminates at the same station, and can ther efore be relaxed. Hence, there is a one-to-one

PAGE 116

116 correspondence between the set part itioning problem and the special case of SDP that we have constructed and the result follows. We state this result in the form of the following theorem: Theorem 4.2. The string decomposition probl em (SDP) is NP-Complete. In the next section, we address the computa tional complexities of the problem and also describe algorithmic approaches to solv e this problem in an efficient manner. 4.7 A Tractable Solution Approach: Aggregation and Disaggregation A typical weekly train sche dule has around 3,000 trains and the railroad network has around 100 stations out of which roughly 50% support fueling and 30% support servicing. For a problem of this size, the number of service stri ngs runs into several million. Hence, a direct application of string enumeration to this la rge problem is not promising in terms of computational time and tractability. Another se rious computational issue is the inherent complexity of the SDP. In addition to bei ng NP-Complete, this problem has around a million decision variables, one corresponding to each se rvice string. Hence, a direct branch-and-bound approach using commercial software to so lve the SDP is not a viable approach. In this section, we develop a tractable solu tion approach to solve the LRP. We use the concept of aggregation and disaggr egation. The basic idea behind this approach is that instead of solving a large problem directly, we divide our algorithm into two stages. In the first stage, we construct a smaller aggregated model which can be solved quickly. Once we obtain the solution to the aggregated model, we use this information to disaggregate the solution and obtain a solution to the original problem. While this idea is quite intuitive to grasp, there are some issues which need to be considered to ensure that the solution produced using this approach in close to the global optimal solution. We next present ou r aggregation-disaggrega tion based algorithm and describe how we use this approach to effectively solve the LRP.

PAGE 117

117 4.7.1 Aggregated Model The aggregated model is an approximation of the original model. However, this approximate model is much smaller than the original problem and is hence solvable more quickly. This leads to the issue of trading-o ff between the degree of approximation and the ease of solution, i.e., an aggregate model may solv e very quickly but may not produce good solutions or the aggregate model may be almost exact but may take a very long time to produce a good solution. The performance of an aggregated mode l depends on a few factors which need to be addressed while designing the aggregated model. Th e first question that needs to be asked while designing an aggregated model is which entities to aggregate? The second ques tion that needs to be asked is how to ensure th at the aggregated model is as cl ose as possible to the original problem? The closer the aggregat ed model is to the original pr oblem, the easier it will be to disaggregate the aggregate solution and obtain near optimal solutions to the original problem. In the rest of this section, we focus on an swering these questions and developing a good aggregation model. We divide ou r discussion into two parts: we first focus on the feasibility aspect of the problem and in the process addr ess the first question. Then, we focus on the optimality of the problem and in the process address the second question. The locomotive schedule gives an assignment of locomotive types to weekly trains and is an input to the SDP. The weekly train schedule consists of a set of daily trains, each with a prespecified frequency varying between one and seven. Note that all instances of a daily train in the week are similar in terms of origin station, dest ination station, departure time of the day, arrival time of the day, and duration. The only factors wh ich differentiate these trains are the departure day of the week, arrival day of the week, and possibly their lo comotive type assignments. Based on this observation, we aggregate all the instances of a daily trai n in the week (weekly trains) into a single aggregated daily tr ain. Each aggregated train departs at the corresponding departure

PAGE 118

118 time of the day and arrives at the corresponding a rrival time of the day. The total flow on each daily aggregated train represen ts the total flow on all weekly trains co rresponding to it. The locomotive schedule obtained after aggregation is called the aggregated locomotive schedule and the set of trains in this schedule constitute the aggregated train schedule. For e.g., suppose daily train TR01 has a weekly frequency of three a nd operates on Monday, Tuesday, and Thursday (TR01-Monday, TR01-Tuesday, and TR01-Thursday ) and suppose each of these weekly trains carries a flow of one locomotive of type A and one of type B. Then in the aggregated locomotive schedule, aggregated daily train TR01 will have a fl ow of three units of type A and three units of type B. We refer to a string which is made up of daily trains as an aggregated string. We formulate an aggregated string decom position model to decompose the aggregated locomotive schedule into flows on aggregated st rings. The decision variables (or aggregated strings) of the aggregated model are enumerated using the aggregated trai n schedule (instead of the weekly train schedule). We next list th e steps to formulate the aggregated string decomposition model: Enumerate the set of service strings using th e aggregated train sche dule as input and the service string enumeration algorith m described in Section 4.4. Construct a space-time network as described in Section 4.5 but considering the aggregated strings (instead of strings) and the aggregated train schedule (instead of the train schedule). Formulate the aggregated stri ng decomposition problem as de scribed in Section 4.5 but using the aggregated locomotive schedule (ins tead of the locomotive schedule) and the aggregated strings (ins tead of strings). Note that the aggregated model is identical in structure to the original model. However, the size of the aggregated model is several times sma ller. The reason for that is aggregation happens at two levels: (1) decision variab les, and (2) constraints. For e.g ., consider an aggregated string made up of daily trains A, B, and C. Let each of these trains have a frequency of four. Then, there are 4 x 4 x 4 = 64 different strings possible in the original network using the weekly trains

PAGE 119

119 corresponding to A, B, and C (Refer Figure 4-5). However, the aggregated formulation considers only one aggregate string instead of the 64 string s. Hence, the flow on the aggregated string in this case represents the cumulative flow on these 64 strings. Th e decision variables corresponding to the connection ar cs (CoArcs) are also aggregat ed in a similar manner. Using this method of variable aggregat ion, we are able to reduce the number of variables to a few thousand. Also, in the aggregated model we have only one partitioning cons traint for every daily train instead of one for every weekly train in th e original model. Since the average frequency of daily trains is close to five, the number of pa rtitioning constraints becomes roughly one-fifth that of the original model. Also, since the number of trains in the aggregated model decreases by a factor of one-fifth, the number of flow balance constraints also re duces by the same factor. Thus, the aggregation of variables and constraints results in a very compact formulation and consequently very fast run times. We now proceed to state and prove two importa nt properties relating the feasibility of the aggregated problem and the feasib ility of the original problem. Property 4.3. There exists a feasible solution to the string decompositi on problem only if there exists a feasible solution to the aggregated string decomposition problem. Proof: Consider a feasible solution F to the string decomposition problem. We can obtain a feasible solution to the aggregated string decomposition problem by assigning each aggregated string a flow equal to the total flow on all strings corresponding to it in F. Since F partitions the flow on all weekly trains and sati sfies flow balance at each stati on, it follows that the assignment to each aggregated string computed above will partition the flow on each aggregated train and also satisfies flow balance at each station. The result follows.

PAGE 120

120 Property 4.4. There exists a feasible solution to the aggregated string decomposition problem only if there exists a feasible so lution to the string de composition problem. Proof: Consider a feasible solution F to aggreg ated string decompositi on. We can obtain a feasible solution to string decomposition by dist ributing the flow on each aggregated string in F on the strings corresponding to it in the original network in such a way that the flow on all weekly trains is partitioned. Since, we merely re-distribute the flows on the aggregated strings, the total flow entering a station and the total fl ow leaving a station in both the aggregated solution and the new solution will be the same. He nce, flow balance at each station is also satisfied and the result follows. We state the results of Property 4.3 and Propert y 4.4 in the form of the following theorem. Theorem 4.5. There exists a feasible solution to the string decompositi on problem if and only if there exists a feasible solution to the aggregated string decomposition problem. We have thus showed the equivalence between the feasibility version of the SDP and the feasibility version of the much smaller aggregat ed SDP and have hence addressed the feasibility aspect of the problem mentioned at the start of this section. The other aspect we need to address is optimality. The objective function of the SDP mi nimizes total fueling and servicing costs and the ownership costs of locomotives. We now desc ribe methods to ensure that the aggregated model takes these costs into consideration. When we create an aggregated model for a problem, we lose some information about the original problem. The biggest approximation in the aggregated string decomposition model is that the information about depart ure day of the week and the arri val day of the week of weekly trains are lost. This could lead to the aggregat ed problem generating bad solutions in terms of locomotive usage. For e.g. Cons ider a weekly train A which a rrives at a station on Monday at

PAGE 121

121 10:00 AM and another weekly train B that de parts from the same station at 11:00 AM on Sunday. The optimal solution of the SDP is not likely to use the c onnection between these weekly trains to route locomotiv es because the idling time of th e locomotive would be extremely high (six days and one hour). On the other hand, in the aggregated train network, since we do not consider the arrival and departur e days of trains and only cons ider the arrival and departure times, the connection time between the corresponding aggregated trains will be just one hour and hence it is very likely to be used in the soluti on since it seems to represen t an efficient use of the locomotive resource. However, this is an incorrec t representation of realit y. We hence define an estimated connection time for each train connecti on on the aggregated network. The estimated connection time between daily tr ains A and B is computed to represent the most probable connection time if a locomotive connects between a w eekly train corresponding to train A and a weekly train corresponding to train B. Note th at we cannot compute th is value exactly unless both A and B have a frequency of one. We repr esent the estimated connection time of a train connection j by jt Each string is made up of possibly se veral train connections. We estimate the duration of an aggregated string ( s t ) by adding the exact durations of the trains belonging to it and the estimated connection times (jt ) for the connections that are a part of it. We next describe how to use these estimated durations to improve the aggregated model. Consider the objective function of the SDP. The first term s s sScx represents the cost of fueling and servicing for the locomotives traveling on strings. The computation of s c is a function of the stations encountered en-route, the cost of fueling or servicing at these stations, and the length of trains that bel ong to the string and this logic is hence directly a pplicable to the aggregated strings. The second part of the objective function ()() s sj sOSjOCoArcsGrxGy

PAGE 122

122 minimizes the total ownership cost of loco motives by counting the number of locomotives traveling on overnight arcs. Note that in the aggr egated problem, it is not straight-forward to determine the set of overnight arcs or the number of times an aggregated string crosses the counttime ( s r). This is because the daily trains do not ha ve arrival and departure day information. We handle this difficulty in the following manner. We first re-write the objective function of the SDP in a slightly different though equivalent form. Instead of mi nimizing the ownership cost of locomotives flowing on overnight arcs, we now construct the objective function in terms of minimizing the total cost of locomotive-minutes used on all arcs. In the aggregated SDP, since we cannot know the exc durations, we use th e estimated duration of train connections (jt) and the estimated duration of strings ( s t) described in the previous pa ragraph to set up the objective function. The objective function now becomes: Min ''''. s sssjjssjj sSsSjCoArcssSjCoArcscxGtxGtycxGty Using this objective function in the a ggregated model makes it a much better approximation of the original problem. Next, we focus on the second stage of our approach which concerns the disaggregation of the aggregated solution. 4.7.2 Disaggregation Model We now consider the problem of disaggregati ng the solution to the aggregated problem to obtain a solution to the original problem. The proof of Property 4.4 describes a straightforward method to obtain a feasible string decomposition starting with a solution to the aggregated problem; however this method may give solutions which use a hi gh number of locomotives and are hence not optimal. The method we describe in this section disaggreg ates the solution while minimizing the number of locomotives used. Note, that after the aggrega tion stage, the total fueling and servicing costs are already fixed and do not change in the disaggregation stage.

PAGE 123

123 The inputs to the disaggregation model are: Locomotive schedule: This gives the assignmen t of locomotive types to weekly trains. Solution of the aggregated model: This gives the aggregated strings and their locomotive assignments. The objective of the disaggregati on model is to obtain a near optimal solution to the string decomposition problem; i.e. the objective is to re -distribute the flow on each aggregated string on the strings corresponding to it in the original ne twork while ensuring that the assignment on each weekly train is covered and minimizing the total number of locomotives used. We next formulate the disaggregation model as an integral multicomm odity flow problem with side constraints on a suitably defined network. We denote the network as G (N, A) where N is the set of nodes and A is the set of arcs in the network. Each node on the netw ork corresponds to an event. Th e events that we consider are the arrival of weekly trains at stations and departure of weekly trains from stations. We create a train-arrival node corresponding to each train arrival and a trai n-departure node corresponding to each train departure. We also construct one supply node and one demand node corresponding to each aggregated string with positive flow (0sx ) and define a commodity corresponding to this string. We set the supply of the corre sponding commodity at each supply node to s x and the supply of all other commodities to zero. Sim ilarly, we set the demand of the corresponding commodity at each demand node to s x and the demand of all other commodities to zero. We now describe how to construct arcs. Fo r each weekly train, we construct an arc connecting its train-departure nod e and train-arrival node. We al so construct connection arcs (CoArcs) between trainarrival nodes and train-departure nodes at each station to model the different possibilities fo r train connections. Let first(s) be the set of weekly trains corresponding to the first daily train in aggreg ated string s, last(s) be the set of weekly trains corresponding to

PAGE 124

124 the last daily train in aggregated string s, and trains(s) be the set of weekly trains corresponding to all the daily trains in s. For each aggregated string s with positive flow (0sx ), we connect its supply node to the departure nodes of all the trains in first(s) a nd we also connected the arrival nodes of all trains in last(s) to the demand node corresponding to s. The disaggregation model can be formulated as a multicommodity flow problem with side constraints (MCFSC) on the network constructed above. N: Set of nodes in the network. A: Set of arcs in the network. We represent each arc by (i, j). Trains: Set of weekly trains in the network. Indexed by l. CoArcs: Set of connection arcs in the network. K: Set of commodities indexed by k. We define one commodity for each aggregated string s with positive flow. s(k): Represents the aggregated string corresponding to commodity kK Trains(s): Set of weekly trains co rresponding to the daily trains in s. l f : Total locomotive assignment on weekly train lTrains in the locomotive schedule. kb: Supply/demand vector of commodity kK k iju: Upper bound on the flow of commodity kK on arc (,)ijA 0, if (,) and (,)() if (,) and (,)(). otherwisek ijijijTrainsijsk ufijTrainsijsk ijt : Duration of arc (,) ijA N: Arc adjacency matrix of G(N,A). The decision variables are:

PAGE 125

125 k ij x : Flow of commodity kK on arc (,) ijA The objective function is Min (,).k ijij kKijAtx (4.2a) The constraints are: for all (,),k ijij kK x fijTrains (4.2b) for all ,kkNxbkK (4.2c) 0, integer.kkk ijijijxux (4.2d) Note that the flow balance constraints at supply nodes, demand nodes, and transshipment nodes (Constraint 4.2c), and also setting flow upper-bounds on trai ns as described above ensures that the flow on each aggregated string is re distributed completely on the strings corresponding to it. Also, Constraint (4.2b) en sures that the total flow on each w eekly train is partitioned among the disaggregated strings that pass through it. Hence, MCFSC is a valid formulation for the disaggregation problem. The objective function is set up to minimize the total number of locomotive minutes used. Theorem 4.6 There is a one-to-one correspondence be tween feasible solutions to the disaggregation problem and f easible solution to MCFSC. The MCFSC is an integral multicommodity flow problem and it is hence NP-Complete (Garey and Johnson (1979)). Note that Constrai nts (4.2) are the bundling constraints which link more than one commodity together and compli cate the model and if these constraints were relaxed, then this problem reduces to |K| inde pendent minimum cost flow problems. We hence adopt a sequential commodity-bycommodity approach to obtain a feasible solution to the disaggregation problem. We first sort the aggregat ed strings with positive flow in the decreasing

PAGE 126

126 order of their lengths, where length is defined as the number of trains in the string. The reason we do this is that the aggregated stings with l onger lengths have a larg er impact on the objective function cost and we would like to optimize them first before moving to shorter strings. For each aggregated string s, we consider the sub-graph ()()(,)ksksGNA which contains only those train arcs for which ()0ks iju and 0ijf We solve a minimum cost flow problem on this sub-graph, extract out the flows on the disa ggregated strings, and update the total unaccounted flow on each train (ij f ). This is repeated until the flow on a ll aggregate strings is disaggregated. The disaggregation algorithm is form ally stated in Figure 4-6. The algorithm for disaggregation solves |K| independent minimum cost flow problems sequentially and is hence a polynomial time al gorithm. The feasibility correctness of this algorithm follows from the fact that it is a special implementation of the general method described in the proof of Property 4.3 for obtai ning a feasible soluti on to string decomposition problem starting from a feasible solution to the aggregated string decomposition problem. The following result is hence immediate. Theorem 4.7. The disaggregation algorithm produces a feasible solution to the string decomposition problem starting from a feasible solution to the aggregat ed string decomposition problem, in polynomial time. Our computational results show that the a ggregation-disaggregation method solves the fueling and servicing problem very quickly and produces near optimal solutions. 4.8 Handling Infeasibilities The infeasibilities that are encountered while solving the fueling and servicing LRP can be of two kinds: hard infeasibilities and soft infeasibilities. Hard inf easibilities are due to the nature of the train schedule and cannot be fixed without modifying the data. For example, consider a

PAGE 127

127 situation where the train schedule is such that there does not exist a service string passing through a particular train. This implies that a ny locomotive unit which is assigned to this train cannot be serviced and fueled feasibly. Since fixi ng this infeasibility requires modifying the train schedule, we do not consider this ki nd of infeasibility in our research. Soft infeasibilities are introduced due to the two stage decomposition approach to solve the fueling and servicing LRP, i.e. we first solve th e LPP and then the LRP, instead of solving the integrated problem. Since, the LPP completely ignor es the fueling and servicing constraints, this may lead to the locomotive schedule being fuelin g and servicing incompatible while solving the LRP. Soft infeasibilities can manifest themselves in the following two ways: A train which has a service string passing thr ough it in the train network does not have a service string passing through it in the decomposed train network corresponding to a particular locomotive type assigned on it. A train has service strings passing through it but in the d ecomposed network but the problem is still infeasible due to the na ture of the set partitioning constraints. In order to handle this problem, we develop si de-constraints that can be added to the LPP so that it accounts for fueling and servicing feas ibility to a greater extent. These constraints ensure that some necessary conditions for fueling and servicing feasibility are satisfied. We refer the reader to Ahuja et al. (2005) and Vaidyanathan et al. (200 7b) for more details about the locomotive planning model; here we describe the side-constraints that we add to the model. We enumerate a large number of service string s and only allow the set of train connections R contained in them while solving the LPP. Any locomotive which makes a train connection that is not a part of R cannot be fu eled and serviced feasibly. Therefore, while solving the LPP, we ensure that only those c onnections which are a part of R are allowed. This approach eliminates local infeasibilitie s. For e.g. suppose the length of train A + the length of train B is more than the fueling threshold F, then the connection between these two trains will not be a part of R and will hence not be constructed. Consider a situation where a se t of trains have only one string passing through them. Let train A be one such train and s be the stri ng passing through it. From the first case, it is clear that all train connections which are a pa rt s will be allowed in the planning problem. Note that if the flow on any of these train conn ections is less than the flow on train A, then

PAGE 128

128 the locomotives assigned on train A cannot fuel ed and serviced feasibly. We therefore add side-constraints to ensure that this does not happen; i.e. we ensure that the flow on each connection in s is greater than the flow on train A. The first method handles local in feasibilities. However, it does not take into account higher level infeasibilities which are a function of more than one train connection. For e.g. Consider a train A which has two strings pass ing through it as shown in Figure 4-7. The first string contains the se quence 11A and the second string contains the sequence 21 A as shown in the figure (numbers repres ent train connections and letters represent trains). Note that the first method would allow all four train connections to be used in the LPP and the LPP has no constraints which pr event a locomotive from being routed along the sequence 11A or 21A, even thoug h these sequences are not feasible sequences. We now formally define constraint s that we add to the planning problem to ensure that flow does not occur on th ese kinds of infeasible sequences. I(A): Set of incoming train connectio ns at the tail node of train A. O(A): Set of outgoing connections at the head node of train A. C: Set of all locomotive types. Indexed by c. c j y : Flow of locomotive type c on connection j. FO(j): Set of fueling and servicing feasible outgoing connections in set O(A) which correspond to () jIA FI(j): Set of fueling and servici ng feasible outgoing connections in set I(A) which correspond to () jOA We add the following constraints to the planning model for each train: (), for all (),,cc jl lFOjyyjIAcC (), for all (),.cc jl lFIjyyjOAcC These constraints help eliminate higher level in feasibilities which are a function of two train connections. Our computational results show that the necessary conditions de scribed in this section are very effective in ensuring that the locomotive schedule can be decomposed into a fueling and

PAGE 129

129 servicing friendly routing. In th e next section, we present com putational results to demonstrate the performance of all the algorith ms developed and show that our approach is indeed a quick and effective approach to solve the lo comotive fueling and servicing problem. 4.9 Computational Results In this section, we provide computational re sults of our algorithms on several instances and also some case studies on a representative in stance. We implemented our algorithms in the Microsoft Visual Basic programmi ng language and tested them on the data provided by a major Class I US railroad. We modeled our intege r programs using ILOG Concert Technology 2.0 modeling language and solved them using the CPLEX 9.0 so lver. We conducted all our computational tests on an Intel Pentium 4, 512-MB RAM, and 2.4-GHz processor desktop computer. 4.9.1 Testing the Performance of the Algorithm We test the performance of our locomotive routing algorithm on instances with different transport volumes. In order to estimate the perf ormance of our algorithms, we first solve the LPP to obtain a locomotive schedule. Next, we solv e the LRP using this locomotive schedule as a starting point and evaluate the locomotive routing cost as defined in the LPP (we do not consider fueling and servicing costs). Note that the soluti on cost of the LRP will always be greater than that of the LPP. However, the smaller the difference in cost between these two solutions, the better our algorithmic approach. We use this m easure to estimate the performance of our algorithms and conduct our computational tests in the following sequence of steps for each instance: Solve the LPP to obtain a locomotive schedule Run the LRP on the locomotive schedule obtained from the LPP and compare the solution cost

PAGE 130

130 Notice that, suppose the differen ce in cost between the solution of the LRP and solution of the LPP is small, then this implies that the fueling and servicing algorithms are performing well since we are able to enforce the fueling and servic ing constraints without a significant increase in the solution cost. The percentage difference in cost hence serves as an upper bound on the optimality gap of the LRP. In Table 4-1 and Figure 4-8, we present the results of our co mputational tests. From our computational tests, we draw the following conclusions: We are able to achieve a fueling and servic ing friendly routing on a ll instances with less than 2.2% increase in the locomotive routing cost. The performance of our locomotive routing al gorithm is consistent with a computational time of less than 5 minutes on all instances. The locomotive routing algorithm is able to achieve a 100% fueling a nd servicing friendly routing on all instances. 4.9.2 Case Study We present a case study to demonstrate the us es of the locomotive routing model. We perform this case study on a representative instan ce with 2,824 trains, 77 stations, 39 fueling stations, 28 servicing stations, a nd 6 locomotive types. The various aspects of the problem that we study are reported in the following sections. Effect of varying the serv icing distance threshold (S) In this study, we quantify the effect of va rying the maximum distance that can be traveled before servicing (S) on the solution cost of the LRP. While fueling is a hard constraint since tank capacities of locomotives are well defined, serv icing constraints are so ft constraints since maintenance of units can usually be delayed to a later time. Table 4-2 presents the computational results, and Figure 4-9 shows th e relationship between the servic ing threshold and the solution cost.

PAGE 131

131 From our computational tests we draw the following conclusions: As the servicing threshold is increased from 1,800 miles to 3,000 mile s, the initi al increase has a large impact on the solution quality, but subsequently the law of diminishing returns is observed. Beyond a servicing threshold of around 2,000 miles there is almost no im pact of increasing the servicing threshold on the solution cost. The performance of our locomotive routing al gorithm is consistent with a computational time of around 5 minutes on all instances. Effect of adding/removing fueling facilities In this study, we quantify the impact of va rying the number of fueling facilities on the solution cost of the LRP. We start with the initial set of 39 fueling stations. To this set we add (or remove) fueling stations one-byone and measure the impact on the cost of locomotive routing. When we add fueling stations, we add them in the decreasing order of number of inbound trains. On the other hand, when we remove fueling statio ns, we remove them in the increasing order of number of inbound trains. The reason we add and remove fueling stations in this manner is because when we add fueling stations, we want to first add those stations which are likely to have a greater impact on the solution cost. On th e other hand, when we re move fueling stations, we want to first remove those stations which ar e likely to have a smaller impact on the solution cost. Table 4-3 presents the computational results, and Fi gure 4-10 shows the relationship between the number of fueling st ations and the solution cost. From our computational tests we draw the following conclusions: As the number of fueling stations is increased from 33 to 43, the initial additions have a large impact on the solution cost, but subse quently the law of diminishing returns is observed. Solution cost remains constant for the number of fueling st ations varying between 35 and 40. This suggests that we could bring down the number of fueling stations from the current value of 39 to 35 without compromising much on the cost of locomotive routing. This could potentially translate into savings of several million dollars.

PAGE 132

132 The performance of our locomotive routing al gorithm is consistent with a computational time of around 5 minutes on all instances. Effect of adding/removing servicing facilities In this study, we quantify the impact of vary ing the number of servicing facilities on the solution cost of the LRP. We star t with the initial set of 28 servic ing stations. To this set we add (or remove) servicing stations one-by-one and measure the impact on the cost of locomotive routing. When we add servicing stations, we add them in the decreasing order of number of inbound trains. On the other hand, when we remove servicing stations, we remove them in the increasing order of number of inbound trains. The reason we add and remove servicing stations in this manner is that when we add servicing stat ions, we want to first add those stations which are likely to have a larger impact on the solu tion cost. On the other hand, when we remove servicing stations, we want to first remove those stations whic h are likely to have a smaller impact on the solution cost first. Table 4-4 pres ents the computational results, and Figure 4-11 shows the relationship between the number of servicing stations and the solution cost. From our computational tests we draw the following conclusions: As the number of servicing facilities is increased from 21 to 32, the in itial additions have a large impact on the solution cost, but subse quently the law of diminishing returns is observed. Solution cost remains constant for the number of servicing sta tions varying between 24 and 28. This suggests that we could bring down the number of servicing stations from the current value of 28 to 24 without compromisi ng much on the cost of locomotive routing. This could potentially translate into savings of several million dollars. The performance of our locomotive routing al gorithm is consistent with a computational time of around 5 minutes for all instances. 4.10 Summary and Conclusions Our previous research on locomotive pla nning focused on creating locomotive schedules which satisfy several business and operational c onstraints. While that research on the LPP has

PAGE 133

133 several potential benefits, it has the drawback that it totally neglects fueling and servicing requirements and may hence generate solutions whic h are not implementable. We bridge this gap by considering fueling and servicing constraint s and also develop optim ization techniques in order to incorporate the fueling and serv icing logic in our methodology to generate implementable locomotive routing. Due to the inherent complexity of the in tegrated problem of locomotive planning and locomotive routing, we decompose our approach to achieve fueling and servicing feasibility into two stages. The first phase involves solving th e LPP (LPP) using the algorithms described in Ahuja et al. (2005) and Va idyanathan et al. (2007b). Once we have the solution to the LPP, we fix the assignment of locomotive types to trains and use the flexibility of train connections in order to enforce fueling and servicing feasibility in the second locomotive routing phase. We adopt the following approach to solve the LRP in the second phase. We enumerate the set of fueling and servicing feasible paths (or st rings) on the network using dynamic programming algorithms and formulate the LRP as a string decomposition integer programming problem. Due to its prohibitive size and NP-Complete nature, th is problem cannot be directly solved using commercial optimization software. We handle this computational complexity by developing an aggregation-disaggregation based approach to solve this proble m. Our computational results on real-life instances demonstrate th at our algorithms enforce the fu eling and servicing requirements with a run-time in the order of minutes and with less than 2.2 % increase in the locomotive routing costs. We also demonstrate the usefulness of the model to perform strategic analysis and give examples of the kind of insights that can be drawn from such analysis. We believe that this research is a vital step ping stone in our overall objective of enabling railroads to manage their locomotive operations more efficiently through optimization methods

PAGE 134

134 which produce practical and implem entable solutions. We believe that our collective research in this area will lead to the large scale deploym ent of optimization based locomotive management software at North American railroads.

PAGE 135

135 Table 4-1. Performance of th e locomotive routing algorithm. Locomotive Planning Problem Locomotive Routing Problem SNo Mean tonnage Cost ($) # of locos Cost ($)# of locos # of infeasib ilities Time % Increase in cost 1 5,700 6,068,767 1,5206,192,4151,56603 m 41 s 2.04 2 6,080 6,444,686 1,5916,565,9831,63204 m 07 s 1.88 3 6,460 6,861,699 1,6466,982,9951,68703 m 59 s 1.76 4 6,840 7,161,102 1,6837,317,6781,73304 m 20 s 2.19 5 7,220 7,598,937 1,6887,755,5121,73804 m 07 s 2.06 6 7,600 8,025,096 1,7388,184,6961,78503 m 55 s 1.99 7 7,980 8,501,004 1,7178,687,4841,77404 m 07 s 2.19 Table 4-2. Effect of varying servicing distan ce threshold. SNo Threshold S (miles) Cost ($) # of locos # of infeasibilities Time 1 1,800 8,752,593 1,679 121 4 m 59 s 2 1,900 8,600,418 1,695 100 4 m 40 s 3 1,950 8,422,679 1,736 52 4 m 39 s 4 2,000 8,201,159 1,775 0 4 m 40 s 5 2,200 8,201,159 1,775 0 5 m 11 s 6 2,400 8,192,759 1,776 0 4 m 40 s 7 2,600 8,195,447 1,777 0 4 m 44 s 8 2,800 8,195,447 1,777 0 4 m 30 s 9 3,000 8,179,319 1,771 0 4 m 32 s Table 4-3. Effect of varying number of fueling stations. SNo Number of facilities Cost ($) # of locos # of infeasibilities Time 1 33 8,253,831 1,767 14 4 m 56 s 2 34 8,253,831 1,767 14 4 m 59 s 3 35 8,179,319 1,771 0 4 m 45 s 4 36 8,179,319 1,771 0 4 m 40 s 5 37 8,179,319 1,771 0 5 m 05 s 6 38 8,179,319 1,771 0 5 m 12 s 7 39 8,179,319 1,771 0 4 m 41 s 8 40 8,179,319 1,771 0 5 m 03 s 9 41 8,173,943 1,769 0 4 m 36 s 10 42 8,168,567 1,767 0 4 m 47 s 11 43 8,168,567 1,767 0 5 m 10 s

PAGE 136

136 Table 4-4. Effect of varying th e number of servicing stations. SNo Number of facilities Cost ($) # of locos # of infeasibilities Time 1 21 8,490,764 1,748 44 4 m 22 s 2 22 8,319,852 1,770 16 4 m 40 s 3 23 8,306,412 1,765 16 4 m 26 s 4 24 8,182,704 1,763 4 4 m 35 s 5 25 8,179,139 1,771 0 4 m 47 s 6 26 8,179,139 1,771 0 4 m 50 s 7 27 8,179,319 1,771 0 4 m 36 s 8 28 8,179,319 1,771 0 4 m 32 s 9 29 8,158,151 1,759 0 3 m 27 s 10 30 8,147,063 1,759 0 3 m 28 s 11 31 8,130,935 1,753 0 3 m 29 s 12 32 8,112,119 1,746 0 3 m 43 s

PAGE 137

137 Figure 4-1. Flowchart of the fuel and service routing algorithm. Star t 2. Enumerate the set of fuel and service strings on the network using the enumeration methods in Section 4.5. Stop 1. Solve the LPP using the methods in Section 4.4 to obtain a locomotive schedule. 3. Formulate the String Decomposition Problem ( SDP ) described in Section 4.6 and solve it using the aggregationdisaggregation algorithm in Section 4.7. 4. Decompose the solution of the SDP into fueling and servicing friendly cyclic locomotive routes using a polynomial-time cycle decom position algorithm (Ahuja et al. (1993)). LRP

PAGE 138

138 Figure 4-2. Fuel string enumeration algorithm. algorithm fuel string enumeration ; begin k = 1; FS ; 1P ; for eachlTrains do if l is a fuel string, F SFSl ; else if origin(l) is a fueling station then 11PPl ; while kP do begin 1;kP for all k p P do let r = last train in valid sequence p ; for all :()()lTrainsdestinationroriginl do if ()lengthplF and lp then begin if ()destinationpl is a fueling station do ()FSFSpl ; e lse 11()kkPPpl; end end-for end-for k=k+ 1; end return FS ; e nd

PAGE 139

139 Figure 4-3. Servi ce string enumeration algorithm. algorithm service string enumeration ; begin k = 1; SS ; 1P ; Run the FSE algorithm to obtain the set of fuel strings FS ; for each lFS do if l is a service feasible string, SSSSl ; else if origin(l) is a servicing station then 11PPl ; while kP do begin 1;kP for all k p P do let r = last train in valid sequence p ; for all :()() lFSdestinationroriginl and () Trainslp do if ()lengthplS then begin if ()destinationpl is a servicing station do () FSFSpl ; else 11()kkPPpl; end end-for end-for k =k+ 1; end return SS ; end

PAGE 140

140 Figure 4-4. A part of the space-time netw ork at a particular service station. Figure 4-5. Disaggregated strings and corresponding aggregated string. A-2 A-3 A-4 B-1 B-2 B-3 B-4 C-1 C-2 C-3 C-4 A B C A-1 Trainarrivalnode Train departure node String Connectionarcs

PAGE 141

141 Figure 4-6. Disaggr egation algorithm. Figure 4-7. Example of infeasibility. A 11 12 21 22 algorithm disaggregation ; begin Let S represent the set of aggregated service strings with positive flow. Let this set be indexed by s ; Let SS represent the set of disaggregated service strings; Sort S in decreasing order of string length; for each sS do Let k = K(s) ; Consider the sub-graph of G(N,A) induced by trains l for which 0k lu and 0ijf Let this sub-graph be denoted by (,)kkGNA; Solve a minimum cost flow problem on this sub-graph. Let the flow on each arc in the optimal solution be k ij x ; Decompose k ij x into flows on paths P Let SSSSP ; Update the uncovered flow on each train for all (,)k ijijij f fxijTrains ; end for return SS ; end

PAGE 142

142 6,000,000 6,500,000 7,000,000 7,500,000 8,000,000 8,500,000 9,000,000 5,5006,0006,5007,0007,5008,000 Mean tonnage LPP LRPCost ($) Figure 4-8. Performance of th e locomotive routing algorithm.

PAGE 143

143 8,100,000 8,200,000 8,300,000 8,400,000 8,500,000 8,600,000 8,700,000 8,800,000 1,8002,0002,2002,4002,6002,8003,000 Servicing threshold (miles) Cost ($ ) Figure 4-9. Solution cost vs. servicing threshold. 8,160,000 8,170,000 8,180,000 8,190,000 8,200,000 8,210,000 8,220,000 8,230,000 8,240,000 8,250,000 8,260,000 8,270,000 333537394143 Number of fueling locations Cost ($ ) Figure 4-10. Solution cost vs. number of fueling locations.

PAGE 144

144 8,050,000 8,100,000 8,150,000 8,200,000 8,250,000 8,300,000 8,350,000 8,400,000 8,450,000 8,500,000 8,550,000 21232527293133 Number of servicing locations Cost ($) Figure 4-11. Solution cost vs. number of servicing locations.

PAGE 145

145 CHAPTER 5 AGGREGATION FRAMEWORK TO SO LVE LARGE-SCALE INTEGER MULTICOMMODITY FLOW PROBLEMS 5.1 Introduction The multicommodity flow problem (MCFP) is a generalization of the classical minimum cost flow problem. These problems are frequen tly encountered in application domains like communication networks, railroad transportatio n networks, and distribution networks where numerous physical commodities, vehicles, or messages, each governed by their own network flow constraints, share the same underlying network. The objective of the MCFP is to send several commodities that reside at one or more poi nts in a network (sources or supplies) with arc capacities to one or more points on the network (sinks or dema nds), incurring minimum cost. The arc capacities are one way in which the flows of all commodities are bound together. Note that if the commodities do not interact with each other, then the integer version of the MCFP can be solved as several independent single commodity minimum cost flow probl ems. But, since this is not valid in general, this pr oblem is a difficult problem and in fact belongs to the class of NPComplete problems (Garey and Johnson (1979)). However, the MCFP problem has numerous applications and hence solving this problem effi ciently has been an important area of research. We consider the integer versi on of MCFP, which we refer to henceforth by MCFP, and we propose an aggregation framework that can be us ed to efficiently solve a class of MCFPs. Researchers have proposed a number of basic approaches for solving both the integral version and the continuous version of the MCFP. The three classical ap proaches, all based upon exploiting network flow substructure, and sele cted references are: (1) Price-directive decomposition algorithm (Cremeans, Smith, an d Tyndall (l970), Swoveland (1971), Chen and Dewald (l974), Assad (1980a), Mamer and Mc Bride (2000), Holmberg and Yuan (2003), and Larsson and Yuan (2004)); (2) Resource-dire ctive decomposition algorithm (Geoffrion and

PAGE 146

146 Graves (l974), Kennington and Sh alaby (l977), and Assad (1980a)); and (3) Basis partitioning (Graves and McBride (l976), Ke nnington and Helgason (l980), a nd Castro and Nabona (1996)). Ford and Fulkerson (1958) and Tomlin (1966) fi rst suggested the column generation approach. The first of these papers was the forerunner to the general Dantzig-Wolfe (1960) decomposition procedure of mathematical progr amming. The excellent survey papers by Assad (l978) and by Kennington (l978) describe all of these algorithms and several standard properties of MCFPs. The book by Kennington and Helgason (1980) and th e doctoral dissertation by Schneur (1991) are other valuable references on this topic. Other approaches to solve the MCFP are due to Gersht and Shul man (l987), Barnhart (l988), Pinar and Zenios (l990), Barnhart (1993), Barnhart and Sheffi ( 1993), Farvolden, Powell, and Lustig (l993), Frangioni and Gallo (1999) and Detlefsen and Wallace (2002). Schneur (l99l), and Schneur and Orlin (1998) applied scal ing techniques to solve the MCFP. Matsumoto, Nishizeki, and Saito (l985) gave a polynomialtime combinatorial algorithm for solving a MCFP in s-t planar networks. Radz ig (1997) developed approximation algorithms for the MCFP. Barnhart, Hane, and Vance (2000a) developed a column generation model and an integer programming based branch-and-price-and-cut algorithm for integral MCFPs, and Brunetta, Conforti, and Fischetti (2000) investigated polyhedral appr oaches and branch-and-cut algorithms for the integral version. Multicommodity network flow m odels have found extensive app lications in several areas. The routing of multiple commodities has been st udied by Golden (1975), and Crainic, Ferland, and Rousseau (1984), and the multi-vehicle tanker scheduling problem by Bellmore, Bennington, and Lubore (1971). Other applicat ions are due to Kaplan (197 3), Evans (1977), Geoffrion and Graves (1974), Bodin et al. (1980), Assad (1980b), Korte (1988). In some recent research,

PAGE 147

147 Gautier and Granot (1995) formulate the forest management problem as a multicommodity flow problem, Lin and Yuan (2001) construct a multicommodity flow network reliability model and apply it to the container load ing transportation problem, Ouaja and Richards (2004) propose a hybrid algorithm for traffic engineering which us es Lagrangian relaxation and constraint programming, Ahuja et al. (2005) solve the L PP using using problem decomposition, integer programming, greedy heuristics and neighborhood search, Vai dyanathan, Jha, and Ahuja (2007a) formulate the CSP as a integer multicommod ity network flow problem and solve it using branch-and-bound based heuristic methods, Vaidyanath an et al. (2007b) formulate the LPP as an integer multicommodity flow problem on a space-time network and solve it using branch-andbound methods, and Vaidyanathan, Ahuja, and Orlin (2007c) solve the LRP using an aggregation based algorithm. The book by Ahuja, Magnanti, a nd Orlin (1993) provides extensive coverage of applications of network and multicommodity flows. The predominant approaches that have been adopted to solve the integer MCFP are column generation, Dantzig-Wolfe decomposition, La grangian relaxation, resource directive decomposition, integer programming (branc h-and-bound and branch-a nd-price-and-cut), polyhedral approaches, very large scale nei ghborhood search (VLSN), and other heuristic methods. To the best of our knowledge, nobody has applied an aggregation based approach to solve the MCFP. We develop an aggregation fr amework to solve largescale integral MCFPs which satisfy some special properties. Our approach to solve the MCFP works in the following manner. Instead of solving the large-scale MCFP directly, we decompose our approach into two stages. In the first stage, we consider an a pproximate aggregated MCFP which is several times smaller than the original problem. We construct the aggregated MCFP in such a way that it is a very good approximation of the original problem. Since the aggregated MCFP is much smaller

PAGE 148

148 than the original problem, we can obtain the optima l solution to this problem very quickly. In the second stage, we use the solution to the aggr egated MCFP as a star ting point, and then disaggregate this solution to obtain near opt imal solutions to the original problem. We demonstrate the efficacy of our approach by applyi ng it to solve the LPP, which is a large-scale MCFP. Our computational tests demonstrate that the aggregation framework proposed produces near optimal solutions to the LPP in a fraction of the original computational times. Finally, we also outline methods to apply the framework to effectively solve other real-world optimization problems. Our major contributions are: We develop a novel aggregation based fr amework to solve a class of MCFPs. We formulate an aggregated version of the MCFP which is several times smaller than the original problem and can hence be solved efficiently using standard branch-and-bound techniques. We discuss methods by which we can ensure that the aggregated MCFP is a very good approximation of the original problem. We develop fast disaggregation methods which ar e used to obtain a so lution to the original MCFP from the solution of the aggregated problem. We discuss application of the aggregation framework to solve ot her integer programming problems like the airline fleet assignment pr oblem, the airline CSP, the LRP, and the aircraft routing problem. We test the aggregation framework on the LPP and demonstrate that the approach produces near optimal solutions (less than two percent optim ality gap) to the LPP while only taking a fraction (around one-fifteenth) of the orig inal computational times. Summarizing, we present the first attempt at developing an aggregation framework to solve a class of large-scale MCFPs. From our experience, we believe that the framework developed has the potential to be a useful tool to solve ma ny real-world problems including airline fleet assignment, airlin e crew scheduling, railroad locomotive routing, aircraft maintenance routing, and ship scheduling.

PAGE 149

149 5.2 Problem Definition, Notation, and Formulation The aggregation framework proposed can be us ed to solve a class of MCFPs. In this section, we give the notati on and terminology and also lay out properties of the underlying network, the constraints, and the objective function for this class of problems. We also formulate the MCFP as an integer program ming problem on the network. 5.2.1 Network In this section, we describe properties that need to be satisfied by the underlying network. We denote the network by G(N, A) where N represents the set of nodes and A the set of arcs. This network has only two types of arcs. We call th e two types of arcs load arcs (L) and free arcs (F). Load arcs are arcs on which flow is constr ained. For example, in th e airline fleet assignment problem, the flight legs to which aircrafts need to be assigned are load arcs, and in the LPP, the trains to which locomotives need to be assigned to provide sufficient pulli ng power are load arcs. Free arcs are those arcs on which there is no re striction or constraint on the flow. Free arcs originate at the head node of a load arc and term inate at the tail node of another load arc. For example, in the railroad networ k, train connection arcs which are constructed between trains which arrive at a station and tr ains which depart from the same station are free arcs. Free arcs allow commodities to flow from one load arc to the next load arc. Each load arc l has the following four attributes associated with it: (1 ) A departure time represented by dep-time(l); (2) An arrival time represented by the arr-time(l) ; (3) A departure location represented by deplocation(l); and (4) An arrival loca tion represented by arr-location(l). We are now in a position to describe the cons truction of the network. For each load arc we create an arrival (head) node a nd a departure (tail) node. We repr esent the set of arrival nodes by aN and the set of departure nodes by dN. The arrival node correspo nding to load arc l is at

PAGE 150

150 location arr-location(l) and the departure node co rresponding to a load arc l is at location deplocation(l). Next, we construct fr ee arcs between all arrival nodes at a location and all departure nodes at the same location. Note that due to the manner in which we construct the network, any walk on the network G(N,A) will contain alternate load and free arcs. Also, by construction, both the in-degree of any arrival node and the out-degr ee of any departure node are one. Let C refer to the different commodities that need to be assigned to load arcs. These commodities need to be routed on G(N,A) in such a way as to satisfy a set of constraints while incurring minimal cost. In Figure 5-1, we present an example of the network th at has five load arcs and eight free arcs. In this figure, the solid lines represent load arcs and the dotted lines represent free arcs. 5.2.2 Constraints In this section, we describe the c onstraints governing the class of MCFPs. Power requirement for load arcs: Each load arc l must be assigned a single unit of a particular commodity to provide sufficient power. Commodity to load arc preferences: Only certain commodities are allowed to flow on certain load arcs. Flow balance constraints: The total incoming flow of a particular commodity at each node on the network must be equa l to the total outgoing flow of the same commodity at that node. Arc flow lower bounds: Each load arc lL should be assigned at least lLB units of flow. Arc flow upper bounds: Each load arc lL can be assigned at most lUB units of flow. Fleet-size constraints: The number of units of each comm odity used should be less than the fleet-size of that commodity c B

PAGE 151

151 5.2.3 Formulation In this section, we mathematically formulate the general class of MCFPs that can be solved using the aggregation framework. We formul ate the MCFP on the network constructed as described in Section 5.2.1, and c onsider the constraints described in Section 5.2.2. Let I(i) denote the set of incoming arcs and O(i) de note the set of outgoing arcs at node iN In order to count the total number of units of each commodity used in a solution, we set an arbitrarily chosen time as the count-time and count the tota l flow on all arcs that cross th is count-time. We denote the set of arcs that cross the count-time by S. Each load arc lL can have two kinds of flow of a particular commodity cC : active flow (c l x ) which represents those units which provide power on the load arc, and deadhead flow (c l y ) which represents those units which do not provide power but are repositioning on the load arc using the power of th e active flow. We represent the cost of assigning an ac tive unit of commodity cC to load arc lL by c lc, the cost of assigning a deadhead unit of commodity cC to load arc lL by c ld, the cost of assigning a unit of commodity cC on free arc f F by c f d, and the ownership cost of a unit of commodity cC by cG. The decision variables in the MCFP are: c l x : Binary variable representing the active flow of commodity cC on load arc lL c l y : Integer variable representing th e deadhead flow of commodity cC on load arc lL c f y : Integer variable represen ting the flow of commodity cC on free arc f F cs: Number of unused units of commodity cC The MCFP is formulated as follows:

PAGE 152

152 mincccccccc llllff lLcClLcCfFcCcCcxdydyGs (5.1a) for all1, ,c l cC x lL (5.1b) (), forall,cc llll cC L BxyUBlL (5.1c) [()], forall,,ccc llf fOheadl xyy lLcC (5.1d) [()], for all ,ccc fll fItaillyxylLcC (5.1e) (), forall,cccc aa aS x ysBcC (5.1f) {0,1}, forall,,c l x lLcC (5.1g) 0 and integer, for all ,c ayaAcC (5.1h) 0, for all .c s cC (5.1i) Constraint (5.1b), which is the power requireme nt constraint for load arcs, ensures that every load arc l is assigned one unit which provides sufficient power Constraint (5.1c), which is a flow bound constraint, ensures that the flow upper and lower bounds on each load arc l are satisfied. Constraint (5.1d) and (5.1e), which are flow balance constraints, ensure that flow is balanced at each arrival and depa rture node for each commodity type Constraint (5.1f), which is the fleet-size constraint, ensure s that the number of units of each commodity used is no more than the available fleet-size of that commodity. Note that the Fo rmulation (5.1) is the general formulation and several of the appl ications described are special case s or minor variations of this formulation. We now describe a nother important property that need s to be satisfied by the set of load arcs in the underlying networ k so that the aggregation fram ework can be applied to solve the MCFP.

PAGE 153

153 5.2.4 Reducibility Property of the Network The reducibility property is the most crucial prop erty that needs to be satisfied by the set of load arcs L in the underlying network G(N,A) for th e problem to fall in the class of MCFPs that can be solved using the aggregat ion framework proposed. The reason for this is that reducibility of the network is the property which allows us to aggregate and shrink th e original problem. The set of load arcs L is said to satisfy the reducab ility property if it can be partitioned into several sets R such that the load arcs in each set rR share several common properties. The load arcs in each set rR have identical origin location, de stination location, duration, power requirements, and flow bounds and only differ in th eir departure and arrival times. For each set rR we consider an aggregated load arc and we denote the set of aggregated load arcs by L. Hence, each aggregated load arc '' lL has several arcs corresponding to it in the set L. Let the set of load arcs corresponding to aggregat ed load arc l be represented by L(l). 5.3 Aggregation and Disaggregation Algorithm The integer MCFP formulated in Section 5. 2 is NP-Complete and hence large-scale MCFPs cannot be solved using commercial intege r programming software. In this section, we develop an aggregation-disaggregation based a pproach to solve this problem. The basic idea behind this approach is that instead of solving a large problem directly, we divide our algorithm into two stages. In the first stage, we construc t a smaller aggregated model which can be solved quickly. Once we obtain the solution to the aggregated model, we use this information to disaggregate the solution and obtai n a solution to the original probl em. While this idea is quite intuitive to grasp, there are some issues which ne ed to be considered to ensure that the solution produced using this approach in close to the global optimal solution. We next present our aggregation-disaggregation base d algorithm and describe how we use this approach to effectively solve the MCFP.

PAGE 154

154 5.3.1 Aggregated Multicommodity Flow Problem The aggregated MCFP is an approximation of the original MCFP. However, this approximate model is much smaller than the or iginal problem and is hence solvable more quickly. This leads to the issue of trading-o ff between the degree of approximation and the ease of solution, i.e., (1) The aggregate model may be solvable very quickly but may not produce good solutions; or (2) The aggregat e model may be almost exact but may take a very long time to produce a good solution. Hence, the performance of an aggregated model depends on a few factors that need to be addressed while construc ting the model. The first issue that needs to be addressed while designing an aggregated model is which entities to aggregate. The second issue that needs to be addressed is how to ensure that the aggregated model is as close as possible to the original problem. The closer th e aggregated model is to the orig inal problem, the easier it will be to disaggregate the aggregate solution and ob tain near optimal solutions to the original problem. In the rest of this section, we fo cus on answering these questions and developing a good aggregation model. We divi de our discussion into two pa rts: we first focus on the feasibility aspect of the problem and, in the pro cess, address the first question. Next, we focus on the optimality of the problem and, in th e process, address the second question. Consider a network G(N,A) that satisfies the re ducibility property (def ined in Section 2.4). The set of load arcs L on this network can be partitioned into se veral sets L(l) where ''lL Note that the set of load arcs L can be written as ''(')lLLLl. Similarly, the cardinality of the set of load arcs can be written as ''|||(')|lLLLl We refer to the cardinality of set L(l) as the frequency of aggregated arc l and denote it by 'l f Hence, the load arcs can be considered to be made up of a set of aggregated lo ad arcs, each with a pre-specifie d frequency. We refer to the set

PAGE 155

155 of arcs in the set L(l) as the instances of aggregated load arc l. Due to the re ducability property of the network, all instances of an aggregated load arc are similar in terms of their origin location, destination lo cation, power requirements, flow bounds and duration. They only differ in their departure times and arrival times. Based on this observation, in th e aggregated network, we aggregate all instances of an aggregated load arc in the or iginal network into a single aggregated load arc. The flow on an aggregated load arc '' lL represents the total flow on all the instances corresponding to it (L(l)). Also, the total power requirement of an aggregated loaded arc is computed by adding up the to tal power requirements on all the load arcs corresponding to it. For example, suppose an aggregated load arc ha s a frequency of four and all the load arcs corresponding to it have a power requirement of T, then the power requirement of the aggregated load arc is 4T. Similarly, we define the flow bounds on each aggregated loaded arc by adding up the flow bounds on all the instances corresponding to it. We denote the aggregated network by G(N A ) where N represents the set of nodes and A the set of arcs. This network has two kinds of arcs: aggregated load arcs (L) and aggregated free arcs (F). The aggregated load arcs are obt ained as described above. Each aggregated load arc l has: (1) A departure location represente d by dep-location(l); (2) An arrival location represented by arr-location( l). For each aggregated load arc we create an arrival (head) node and a departure (tail) node. We repr esent the set of arrival nodes by 'aN and the set of departure nodes by'dN Next, we construct aggregated free arcs between all arrival nod es at a location and all departure nodes at the same location. Aggregated free arcs allow commodities to flow from one aggregated load arc to the ne xt aggregated load arc. Note th at due to the manner in which we construct the network, any path on G(N,A) will contain altern ate aggregated load arcs and aggregated free arcs. Also, the in-degree of any arrival node and the out-d egree of any departure

PAGE 156

156 node are one. We consider a set of commodities (C) which need to be assigned to aggregated load arcs and flow on the ne twork to satisfy a set of constraints at minimal cost. We use the following additional notation in our formulation: 'lLB : Lower bound on total flow on aggregated load arc 'lL This lower bound is obtained by adding up the lower bounds on all instances of aggr egated load arc l. 'lUB : Upper bound on total flow on aggregated load arc 'lL This upper bound is obtained by adding up the upper bounds on all instances of aggr egated load arc l. 'lt : Duration of aggregated load arc ''lL f t : Estimated duration of aggregated free arc '' f F c R : Total number of time units of commodity cC available. The decision variables in the aggregated MCFP are: 'c l x : Integer variable representing the active flow of commodity cC on aggregated load arc '' lL 'c l y : Integer variable representing th e deadhead flow of commodity cC on aggregated load arc ''lL 'c f y: Integer variable represen ting the flow of commodity cC on aggregated free arc '' f F cs: Number of unused time units of commodity cC We formulate the aggregated MCFP as follows: '''' ''''''mincccccc l'l'llff lLcClLcCfFcCcxdydy (5.2a) ''for all, '',c ll cC x flL (5.2b) ''''(), forall'',cc llll cC L BxyUBlL (5.2c)

PAGE 157

157 ''' [(')], forall'',,ccc llf fOheadl xyy lLcC (5.2d) ''' [(')], for all '', ,ccc fll fItaillyxylLcC (5.2e) ''''' ''''(), forall,ccccc lllff lLfFtxytysRcC (5.2f) ''0 and integer, forall'',,c ll x flLcC (5.2g) '0 and integer, for all '', ,c iyiAcC (5.2h) 0, for all .cscC (5.2i) Constraint (5.2b), which is th e aggregated power requirement constraint, ensures that each aggregated load arc is assigned sufficient power. Constraint (5.2c) which is the aggregated flow bound constraint, ensures that the flow bounds on each aggregated load arc are honored. Constraint (5.2d) and (5.2e), whic h are flow balance constraint, ensu res that flow is balanced at each arrival and departure node fo r each commodity type. Constraint (5.2f), which is the fleetsize constraint, limits the total number of comm odity-time units used fo r by commodity type. In order to measure the total num ber of commodity minutes used we cumulatively add up the commodity minutes used by commodities assi gned on each aggregated load arc and the commodity minutes used by commodities assigned on each aggregated free arc. We then ensure that the total number of commodity minutes used is less than the total number of commodity minutes available. The reader may note that the aggregated MC FP is similar in structure to the MCFP but could be several times smaller in size. Also, the fleet-size constraints (5.2f) in the aggregated model are constructed in an equivalent though differe nt manner to the fleetsize constraint (5.1f) of the MCFP. The reason for this is that in the original network, it is quite stra ight forward to

PAGE 158

158 determine whether a free arc crosses the counttime; however, in the a ggregated network since we consider aggregated load arcs it is not possible to state with certainty whether an aggregated free arc crosses the count-time. For the time bei ng, we assume that we know the duration of aggregated free arc. In the later part of this section, we discuss the importance of having good estimates for the duration of aggregated free arcs. The size of the aggregated MCFP is several times smaller than the MCFP. The reason for that is aggregation happens at two levels: (1) decision variab les, and (2) constraints. For example, consider an aggregated load arc whic h has a frequency of four. In the MCFP, this aggregated load arc will have 4|C| active flow decision variab les corresponding to it and 4|C| deadhead flow decision variable s corresponding to it. However, the aggregated MCFP will have only |C| active flow decision variables and |C| dea dhead flow decision variables. Hence, the flow on the aggregated load arc in this case represents the cumulative flow on th e four load arcs that correspond to it. The decision vari ables corresponding to the free ar cs are also aggregated in a similar manner. Using this method of variable aggr egation, we are able to reduce the number of variables. Also, in the aggregated MCFP we have: One power requirement constrai nt (5.2b) for every aggregated load arc instead of one (5.1b) for every load arc in the MCFP. One set of flow bound constraints (5.2c) for ever y aggregated load arc instead of one (5.1c) for every load arc in the MCFP. One set of flow balance constraints (5.2d) a nd (5.2e) for each aggregated load arc arrival and departure node, instead of one for each lo ad arc arrival and departure in the MCFP. Suppose the average frequency of aggregated load arcs is close to five. Then, the total number of constraints in the aggregated model is roughly one-fifth that of the original model and the total number of variables is a fraction of that in the original model. Thus, the aggregation of

PAGE 159

159 variables and constraints has the po tential to result in a very co mpact aggregated formulation and consequently very fast solution times. We now proceed to state and prove a few importa nt properties relating th e feasibility of the aggregated MCFP and the feasibility of the MCFP. Property 5.1: For any assignment of flows on load ar cs such that the total flow of a commodity entering a location is equal to the tota l flow of the same commodity leaving the same location and satisfying the power requirement constraints (5. 1b) and flow bound constraints (5.1c), there exists a solution to the MCFP satisfying all cons traints other than fleet-size constraint (5.1f). Proof: Consider the assignment of flows on load arcs which satisfies the conditions stated above. Consider the set of inbound load arcs entering a particul ar location, the set of outbound load arcs leaving the same location, and the se t of free arcs between th ese inbound load arcs and outbound load arcs. Since free arcs are constr ucted between all inbound load arcs and outbound load arcs at a particular locati on and since flow on these arcs is unrestricted, it follows that we can enforce flow balance constrai nts (5.1d) and (5.1e) at all n odes at that location by a simple run-through method. Repeating the same procedure at all locations in the network gives us a solution to MCFP satisfying all c onstraints other than possibly th e fleet-size constraint (5.1f). Property 5.2: There exists a feasible solution to th e MCFP only if there exists a feasible solution to the aggregated MCFP satisfying all co nstraints other than the fleet-size Constraint (5.2f). Proof: We prove this property by construction. C onsider a feasible solution to the MCFP. We can compute flows on arcs in the aggregated network by: (1) Assignin g each aggregated load arc active flow equal to the to tal active flow on all load arcs corresponding to it; (2) Assigning

PAGE 160

160 each aggregated load arc deadhead flow equal to the total deadhead flow on all load arcs corresponding to it; (3) Computing the flow on all aggregat ed free arcs using the procedure described in the proof of Property 5.1. Note th at, due to the manner in which we formulate the aggregated MCFP, the constructed solution satisfies the aggregated power requirement constraint (5.2a) and the aggregated flow bound constraints (5.2b). Further, fr om Property 5.1, it follows that the assignment will also sa tisfy the flow balance constraints (5.2c) and (5.2d). The result is immediate. Property 5.3: There exists a feasible solution to th e aggregated MCFP only if there exists feasible solution to the MCFP satisfying all constrai nts other than the fleet-size constraints (5.1f). Proof: We prove this property by construction. Consider a feasible solution to the aggregated MCFP. We can compute flows on arcs in the original network by: (1) Distributing the total active flow on each aggregated load arc am ong the load arcs corresponding to it (one unit per load arc), (2) Distributing the total deadhe ad flow on each aggregated load arc among the load arcs corresponding to it in such a way that the flow bound constraints (5.1c) are not violated, (3) Computing the flow on all free arcs using the proce dure described in the proof of Property 5.1. The constructed solution satisfies th e power requirement constraints (5.1b) and the flow bound constraints (5.1c). Also, the total flow of a commodity en tering a location is equal to the total flow of the same commodity leaving th e same location. Hence, from Property 5.1, the result follows. We have thus showed the equi valence between the feasibility version of the MCFP and the feasibility version of the aggregated MCFP and have hence addressed the feas ibility aspect of the problem mentioned at the start of this section. The other aspect we need to address is optimality. The objective function of the MCFP minimizes total active assignment cost, deadhead

PAGE 161

161 assignment cost, idling cost, and ownership cost. We now describe methods to ensure that the aggregated model serves as a good a pproximation of the original problem. In the aggregated MCFP, we do not consider the individual load ar cs and only consider aggregated load arcs. Due to the abstraction of information, the aggregated MCFP is an approximation of the MCFP. Consider the aggreg ated MCFP. Suppose we were somehow able to accurately determine the time duration for each commodity assigned on each free arc accurately, then the aggregated MCFP would indeed model the original MCFP exactly. However, the only way in which this information can be obtained is from the solution to the MCFP which is what we set out to determine in the first place. Hence, it is not possible to accurately determine the durations accurately. Hence, our goal is to devise an intelligent method to provide good estimates for the duration of free arcs. Also, since the numbe r of free arcs could be quite large, the method needs to run very quickly. The right way to esti mate the durations is a function of the problem being studied. In Section 5.4.1, we describe a method to estima te the duration of free arcs (or train connections) whil e solving the LPP. Note that the aggregated MCFP is similar in structure to the original MCFP. In other words, our method of aggregation shrinks the pr oblem size while leaving the structure virtually unaltered. Hence, the existing state-of-the-art algorithms for the MCFP may often be directly applicable to solve the aggregat ed problem. We now describe the second stage of our approach which involves disaggregation of the solution. 5.3.2 Disaggregation In this section, we show how the solution of the aggregated MCFP can be used to obtain a solution to the original MCFP. The approaches proposed use the solutio n of the aggregated MCFP to restrict the search space of the MCFP in order to speed-up computational times. We propose three different methods to disaggregate the solution and we now describe these methods.

PAGE 162

162 Restricted multicommodi ty approach: Method 1 In the restricted multicommodity approach we reduce the solution space of the MCFP formulated in Section 5.2.3 in the following ma nner. On every load arc, we allow only those commodities that are assigned as active commodities in the solu tion to aggregated MCFP to be assigned as active commodities. For example, suppose an aggregated load arc carries only commodities A and B, then all the load arcs th at correspond to it are al so restricted to only having those commodities as act ive commodities. By using this method, we can reduce the solution space of the MCFP by a large extent le ading to very fast computational times. Multicommodity approach which partitions the aggregated active and deadhead flows Method 2 Note that the solution to the aggregated MCFP sa tisfies flow balance at each location, i.e., in the solution to the aggregated MCFP, the to tal number of units of a particular commodity entering a location is equal to the total number of commodities of the sa me type leaving the location. In this method, we exploit this fact to solve the MCFP. Also, as long as the total flow on all instances of an ag gregated train is equal to the total flow on th e corresponding aggregated train, the total flow of a part icular commodity between any pair of locations in the MCFP is equal to the total flow between the same pair of locations in the solution to the aggregate MCFP. Hence by Property 1, flow balance constraints fo r the MCFP are easily sa tisfied. Therefore, our goals are (1) To redistribute the active assignm ents on each aggregated load arc among the load arcs corresponding to it; (2) To redistribute the deadhead assignments on each aggregated load arc among all the load arcs corresponding to it. Let L(l) refer to the aggregated load arc co rresponding to load arc l and L(l) represent all load arcs corresponding to aggregated load arc l We write these constraints mathematically in the following manner:

PAGE 163

163 ('), for all '',,cc ll lLl x xlLcC ('), for all '',.cc ll lLlyylLcC The right-hand side of these equations is obt ained from the solution of the aggregated MCFP. These constraints, when added to the MCFP, restrict the solution sp ace to a larger extent than the first method. Hence, th e solution obtained using this method is slightly worse than that obtained using the first method; however, the computational times are faster. Method 3 In this method, while the aggregated active flows are redistributed as described in the previous method, the aggregated deadhead flows are handled differently. Observe that as long as the total flow between any pair of locations in the MCFP is equal to the total flow between any pair of locations in the solution to the aggr egate MCFP, the total number of consists of a particular type which enter a stati on will be equal to the total number of consists of the same type which leave the same station. By Property 5.1, flow balance constraints for the MCFP are easily satisfied. We use this fact to rest rict the solution space of the MCFP. First, we introduce some additional notation. Let c pq F be the total deadhead flow of commodity cC between station p and sta tion q in the solution to th e aggregated MCFP and let H represent the set of all locations. Let pqL be the set of all load arcs that originate from location p and terminate at location q. We then write th ese constraints mathematically in the following manner: ('), for all '',,cc ll lLl x xlLcC for all ,,.pqcc lpq lL y FpHqHcC

PAGE 164

164 The right-hand side of these equations is obt ained from the solution of the aggregated MCFP. These constraints are added to the MC FP to restrict the solution space and speed-up computational time. Note that the previous method is more restrictive and is also a special case of this method. This method gives less flexibilit y than the restricted multicommodity approach but more flexibility than the method 2. 5.4 Applications of the Aggregation Framework As we mentioned in the introduc tion, the aggregation framewor k can be used an effective tool in solving several optimizati on problems. In this section, we outline some applications of the aggregation framework to solve large-scale re al-world optimization problems. The problems considered include the LPP, the airline fleet assi gnment problem, the airline CSP, the LRP, and the aircraft routing problem. We go into details of how we use cu stomize this framework to solve the LPP and present computationa l results to demonstrate the pe rformance of the aggregation algorithm. We also outline how the aggregation framework can be used to solve all the other problems mentioned above but do not present comput ational studies of th e performance of our algorithms on these problems. 5.4.1 Locomotive Planning Problem The LPP involves the assignment of sets of loco motives, called consists, to each train in a pre-planned weekly train schedule so that each train gets sufficient power to pull it s load and the total cost of locomotive usage is minimized. The resulting plan must honor a variety of business rules, cannot require more locomotives than what is available in the total fleet, and must result in a plan that is relatively simple and repeatable Another important featur e of the LPP is that locomotives may deadhead on trains. Deadhead locomotives do not pul l the train but are repositioned by the active locomotives from one place to another place. Deadheading plays an important role in locomotive planning, enabling extra locomotives to be moved from stations

PAGE 165

165 with a surplus to stations with a defecit. A loco motive plan specifies which types of locomotives will pull each train, and how locomotives will deadhead to obtain overall network wide efficiency. We present an extensive review of resear ch in the area in Chapter 3. The most comprehensive multiple locomotive planning m odels are due to Ahuja et al. (2005) and Vaidyanathan et al. (2007b). In Ahuja et al. (2005), we formul ate the LPP as an integer MCFP with side constraints on an underlying space-ti me network and develop solution methodologies that use problem decomposition, integer pr ogramming, greedy heuris tics, and neighborhood search. In Vaidyanathan et al. (2007b), we developed new formulat ions and approaches to make our planning model more implementable. The major outcome of that paper was a philosophy shift in the routing of locomoti ves. We showed that assigning c onsists (or a group of locomotives which are never broken up) to trains, instead of individual locomotives has the potential to generate implementable solutions without compro mising much on the solution cost. We call this formulation of the LPP the consist-based formulation. The algorithms that we developed in our research in the past we re able to effectively solve weekly LPPs where the train schedule repeat s every week. These weekly train schedules typically have around 3,000 trains and our algorithms were able to solve these pr oblems within 10-60 minutes of computational time. However, s ubsequently railroads have expressed the need to solve much larger planning problems. One su ch problem is the 28-day LPP, where the train schedule repeats only once in 28 days. The reason for this is that the weekly repeating schedule assumption may not be a good assumption in certai n cases. These 28-day tr ain schedules have 35 times more number of trains than the weekly train schedules, and hence the associated LPPs are significantly larger optimization problems. Due to this fact and the additional fact that the

PAGE 166

166 LPP is NP-Complete, our previous approaches are likely to be intractable when applied to these problems. Hence, there is a need for a novel scalable approach to solve the LPP and the aggregation framework addresses this need. We consider the consist-based formulation of the weekly LPP introduced in Vaidyanathan et al. (2007b) and apply the aggr egation framework to solve this problem. We now show how the LPP is a special case of the MCFP formulated in Section 5.2.3. The trains in the weekly train schedule are analogous to the load arcs and the train connections, which allow the transfer of locomotives from inbound trains at a station to outbound tr ains at the same st ation, are analogous to the free arcs. Hence, the LPP can be formul ated on a network as described in Section 2.1 which contains only two kinds of arcs: train arcs, and connecti on arcs. The consists are the commodities which flow on this network. Also, the weekly train schedule is such that it can be considered to be made up of a set of aggregat ed trains, each with a pre-specified frequency varying between one and seven. These aggregated trains are analogous to aggregated load arcs. Note that all instances of an aggregated train in the week are similar in terms of origin station, destination station, departure ti me of the day, arrival time of the day, and duration. The only factors which differentiate these trains are the de parture day of the week, and arrival day of the week. From these observations, it follows that the underlying network sati sfies the reducability property. The LPP is also governed by power re quirement constraints, flow bounds on all train arcs, flow balance constraints, and fleet-size constraints which are similar in structure to constraints (5.1b), (5.1c), (5.1d), (5.1e), and (5.1f) respectively. Hence, the LPP falls into the class of MCFPs that can be solved using th e aggregation framework. We now proceed to estimate the size of a typical instance of the LPP.

PAGE 167

167 Problem size A typical weekly train schedul e has around 3,000 trains and eight consist types. Hence, the space-time network will contain around 3,000 train arcs, and more than 500,000 connection arcs for a total of more than 500, 000 arcs. The number of nodes on this network will be 3,000 train arrival nodes, 3,000 train departure nodes, for a to tal of 6,000 nodes. On each arc, we consider decision variables for the flow of each of the ei ght commodities. Hence, the number of variables in the formulation is around 500,000 x 8 = 4, 000,000 variables. There are 3,000 train power requirement constraints (5.1b), 3,000 train flow bound constraints (5.1c), 6,000 x 8 = 48,000 flow balance constraints corresponding to each commodity at each node (5.1d and 5.1e), and 8 fleet-size constraints (5.1 f) giving a total of around 55,000 constr aints. Hence, the LPP is a largescale integer MCFP with 55,000 c onstraints and millions of decision variables. Integer programming problems of this size are intrac table when solved using commercial integer programming software. However, the aggregated LPP which is similar in structure to the aggregated MCFP, is much smaller. Suppose the av erage frequency of each train is five, then the aggregated LPP would roughly have only one-fifth the number of c onstraints and a small fraction of the number of decision variables as the orig inal problem. The aggregation of variables and constraints results in a very compact aggregated formulation which can c onsequently be solved very quickly using commercial software. In Section 5.3.1, we mentioned that the estimation of the durati on of free arcs is crucial to ensure that the aggregated problem is a good approximation of the orig inal problem. We now describe a method to estimate durations of train c onnection arcs. This step is a crucial part of our algorithmic approach and we empirically converg ed at the following method after a significant amount of research and computationa l testing of vari ous possibilities.

PAGE 168

168 Estimating train connection times The biggest approximation in the aggregated LPP is that the departure day of the week and the arrival day of week information of trains are not considered. This could lead to the aggregated problem generating bad solutions in terms of locomotiv e usage. For e.g. Consider a weekly train A which arrives at a station on Mo nday at 10:00 AM and another weekly train B that departs from the same station at 11:00 AM on Sunday. The optimal solution of the LPP is not likely to use the connection between these we ekly trains to route locomotives because the idling time of the locomotive w ould be extremely high (six days and one hour). On the other hand, in the aggregated network, since we do not consider the arrival and departure days of individual trains, the connection between the co rresponding aggregated trai ns could be used in the solution. We handle this problem in the following manner. We define an estimated connection time for each train connection on the aggregated network. The estimated connection time between aggregated trains A and B is comput ed to represent the prob able connection time if a consist connects between a instance of aggregated train A and an instance of aggregated train B. Note that we cannot compute this value exactly unless both A and B have a frequency of one. We represent the estimated connect ion time of a train connection j by jt Note that since the aggregated problem has several t housand train connections and the method used to estimate train connection times needs to be run once for every c onnection, this method has to be very efficient so as to not blow up overall co mputational times. Next, we desc ribe the method used to estimate the train connection times. Consider an inbound aggregated train i and out bound aggregated train j at a particular station. In order to compute the estimated conne ction time between these two aggregated trains, we consider the trains correspond ing to them and the complete se t of connections between these

PAGE 169

169 trains. Each connection is assigne d time duration equal to the dur ation of that connection on the original network. For example, suppose the inbound aggregated trai n has a frequency of four and the outbound aggregated train ha s a frequency three, then we have the possibilities for connections between corresponding seven da y trains as shown in Figure 5-2. In a general case, let the fre quency of train i be represen ted by f(i). Let the actual connection times between the corresponding weekly trains be represented as matrix M of dimensions f(i) x f(j). We di vide the computation of train connection times into two cases: Case 1: |()()|1 fifj This case is when the inbound aggregated tr ain and the outbound aggr egated train have similar frequencies. In this case the estima ted connection time is computed by solving an assignment problem between the inbound weekly trains and the outbound weekly trains. The connection times in the matrix M represent the objective function of this problem, i.e., the element M(i, j) represents the cost of assigning the ith inbound train to th e jth outbound train. Let the optimal objective function of this problem be obj. We then compute the estimated connection time of the connection as obj/ min (f(i), f(j)). Case 2: |()()|1 fifj This case is when the inbound aggregated train and outbound aggreg ated train have frequencies which are quite differe nt. Suppose the method described in case 1 were used in this case, it may not give realistic estimates of connection times. For example, suppose the inbound aggregated train had a freque ncy of one and arrives at 11 AM on Monday, and the outbound aggregated train has a frequency of seven and departs at 11:30 AM every day of the week. Then, if we were to compute the connection time based on the method in case 1, then we will obtain an estimated connection time of 30 minutes. However, this value is over optimistic since there is no

PAGE 170

170 guarantee that the connection between the inbound train on M onday and the outbound train on Monday will be made. Based on our empirical analysis, we found th at in this case we using the average of all the connection times in M gi ves a good estimate of the connection time. We were able to solve the aggregated LPP in a few seconds of computational time. We applied the three methods of disa ggregation described in Section 3 with the followi ng results: (1) The restricted multicommodity approach (method 1) produced solutions to the LPP that were less than 1% away from the optimal solution in around 10 seconds of co mputational time; (2) Method 2 produced solutions to the LPP that we re around 1.75% away from the optimal solution in around 2 seconds of computational time; (3) Method 3 produced solutions to the LPP that were around 1.5% away from the optimal soluti on in around 2 seconds of computational time. Our computational results section demonstrates the success of the aggregation framework as an effective tool to solve the LPP. We were able to obtain near optimal so lutions (less than two percent gap) while consuming only one-fifteen th of the original computational times. 5.4.2 Airline Fleet Assignment Problem The objective of the airline fl eet assignment problem is to assign aircrafts belonging to different fleet types to flight legs to minimize the assignment co st and subject to the following three types of constraints: (1) C overing constraints: Each flight leg must be assigned exactly one aircraft; (2) Flow balance constraints: An aircra ft must land before take-off; and (3) Fleet-size constraints: For each fleet type, the number of aircrafts used must not exceed the number of aircrafts available. A model which solves the problem described above is called a basic fleet assignment model (FAM). The fleet assignment problem has been well studied (Abara (1989), Hane et al. (1995), Talluri (1996), Rexing et al. ( 2000), Barnhart, Kniker, and Lohate panont (2002), and Ahuja et al. (2004)). Predominant approaches to solve this problem include integer programming algorithms,

PAGE 171

171 branch-and-bound methods, and very large scale ne ighborhood search techniques. However, to the best of our knowledge, none of the research of the past has employed aggregation methods to solve this problem. Most US airlines have the same flight schedule for five days of the week and a subset of the week day schedul e in the weekend. Thus, airlines typically solve a daily fleet assignment model whose solution is then repeat ed on each day of the week. Their approach assumes that the flight schedule is the same on all days, which, strict ly speaking does not hold for most airline schedules. Also the additional constraint that the fleet assignment should repeat daily gives less flexibility to the model to assign aircrafts to flight legs and may hence lead to sub-optimal solutions. US airlines typically operate 2,000 flights da ily and the computationa l times using existing methods for daily fleet FAMs are of the order of hours. Given the fact th at these problems are NP-Complete, it is very like ly that the computational time s will explode if the existing approaches were applied to problems say five times larger. In order to demonstrate the applicability of the aggregation based framework to solve larger FAMs, we consider the 5-day fleet assignment problem or th e weekday fleet assignment problem Note that the 5-day flight schedule can be considered to be made up of a smaller aggregated flight schedule where each aggregated flight has a pre-specified fr equency varying between one and five. We now show how the FAM is a special case of the MCFP formulated in Section 2.3. The flight legs in the flight sche dule are analogous to the load arcs and the aircraft connections, which allow the transfer of aircrafts from inboun d flights at an airport to outbound flight at the same airport, are analogous to the free arcs. He nce, the FAM can be form ulated on a network as described in Section 2.1 which contains only two kinds of arcs : flight arcs, and aircraft connection arcs. The various aircraft types in the fleet are the commodi ties which flow on this

PAGE 172

172 network. Also, the flight schedule, as mentioned in the pr evious paragraph, is such that it can be considered to be made up of a set of aggregated flight legs, each with a pre-specified frequency varying between one and five. These aggregated flight legs are analogous to aggregated load arcs. Note that all instances of an aggregated flig ht leg in the week are similar in terms of origin airport, destination airport, depa rture time of the day, arrival time of the day, and duration. The only factors which differentiate th ese flight legs are the departur e day of the week, and arrival day of the week. From these observations, it fo llows that the underlyi ng network satisfies the reducability property. The FAM is governed by c overing constraints which are similar to the power requirement constraints ( 1b), flow balance cons traints which are similar to constraints (1d) and (1e), and fleet-size constr aints which are similar in struct ure to constraints (1f). Hence, the FAM is a special case of MC FPs that can be solved using the aggregation framework. The reader may also note that the FAM is in fact simpler than the LPP and the MCFP since aircrafts cannot deadhead on flight legs whereas multiple units can deadhead on load arcs. Also, note that the aggregated FAM will have a similar structure to the daily FAM. Hence, it is quite possible that the existing state-of-art algorithms to solve the daily FAM can be also be directly employed to solve the aggregated FAM. 5.4.3 Airline Crew Scheduling Problem The objective of airline crew scheduling is to assign individual crew members to flights in a pre-specified schedule to minimize assignm ent costs and satisfy all governmental and contractual restrictions such as maximum daily working hours, minimum overnight rest period, maximum time away from a crew base, etc. In practice, airline crew sc heduling is sequentially divided into two stages: crew pairing and crew rostering. Am ong all the airports served by airlines, some are called crew ba ses. Each crew belongs to a sp ecific base. A crew pairing is a connected sequence of flight segm ents that starts and ends at the same base location and also

PAGE 173

173 satisfies all the legality constr aints. The crew rostering probl em then assigns individual crew members to pairings. The airline CSP is a well studied problem (Hof fman and Padberg (1993), Barnhart et al. (1994, 2003), Vance et al. (1997), and Gopala krishnan and Johnson (2005)). Predominant approaches to solve this problem include colu mn generation, zero-one programming, branchand-cut, and other integer program ming approaches. In this section, we give a description of the basic version of the problem and outline how the aggregation framew ork can be used to solve it. Given a set of feasible crew pa irings, the airline CSP can be formulated as the problem of finding the best collection of crew pairings such th at each flight leg is covered exactly once. This problem is essentially a set part itioning problem and can be formul ated in the following manner: 1 to jj jn M incx ,mAxe {0,1}, for all 1 to .j x jn where me is a vector having m entr ies equal to 1 and n is the number of crew pairings considered. The matrix A is an m x n matrix wh ere each row represents a flight leg and the matrix is constructed in such a way that 1ija if flight leg i is covered by rotation j, and 0 otherwise. This problem is an NP-Complete problem with mill ions of decision variables and hence almost all existing research deals with handling this computati onal complexity in an efficient manner. To the best of our knowledge none of the existing research has explored aggregation as a means to solve this problem. We next outline our aggrega tion based approach to solve this problem. Note that this problem does not exactly fall in the cl ass of MCFP since there is no underlying network and it is also not a mult icommodity flow problem. However, due to the

PAGE 174

174 reducability property of the flight schedule, it still lends itself to the aggregation framework proposed. In the previous section, we obs erved that 5-day flight schedu le can be considered as an aggregated flight schedule wher e each flight has a pre-specified frequency varying between one and five. This gives us the intuit ion that instead of solving the la rger CSP directly, we can adopt an aggregation approach. We aggregate all instan ces of a flight in the week into a single aggregated flight. Each aggregat ed flight now has a crew demand which is equal to its frequency in the week (instead of one in the original model). We also consider pairings which are now made up of aggregated flights and refer to th ese pairings as aggregated pairings. These aggregated pairings are the deci sion variables in the aggregated CSP. The aggregated CSP can be formulated as a set partitioning problem where th e right hand side is now the frequency of the corresponding aggregated flight. The aggregated CSP is identical in structure to the original m odel. However, the size of the aggregated model could be several times smaller. The reason for that is aggregation happens at two levels: (1) decision variables, and (2) cons traints. The flow on each aggregated pairing represents the cumulative flow on several crew pa irings in the original network. Also, in the aggregated model we have only one partitioning constraint for ever y aggregated flight instead of one for every flight in the origin al model. This aggregation of va riables and constraints results in a very compact formulation and consequently has the potential to be solvable quickly. Once we obtain the solution to the aggregat ed model, we can use this solution to obtain a near optimal solution to the original problem using suitably designed disaggregation methods. 5.4.4 Locomotive and Aircraft Routing Problems The LRP involves routing each locomotive unit on a cyclic sequence of trai ns so that it can be fueled and serviced as necessary; while at the same time satisfyi ng all other business and

PAGE 175

175 operational constraints considered in the LPP. We refer to the sequence of trains on which a locomotive unit travels as a locomotive route. Fu eling feasibility requires that each locomotive route has sufficient fueling opportun ities to ensure that the locomotive does not run out of fuel (out-of-fuel event). This translates to the constr aint that every locomotive needs to have a fueling opportunity at least once for every F miles (900 mile s) of travel. Similarly, servicing feasibility requires that each locomotive route has sufficient servicing opportunities and this translates to the constraint that every locomotive needs to ha ve a servicing opportunity at least once for every S miles (3,000 miles) of travel The LRP, until very recently, was a practically unstudied problem. Our recent research re ported in Vaidyanathan, Ahuja, and Orlin (2007c) and Chapter 4 considers the LRP. In that paper and in Chapte r 4, we develop an a ggregation-disaggregation approach to solve the LRP. In this section, we give an overview of our research and refer the interested reader to that paper for more details. We use the concept of strings to formulate the LRP. A string is a connected sequence of trains such that any locomotive which travels on this sequence can be fueled and serviced as necessary. We formulate the LRP as an inte ger programming string decomposition problem (SDP) on a suitably defined space-time network. The objective is to partition the locomotive assignment (obtained from the planning model) on each train in the schedule into flows on strings while simultaneously minimizing the so lution costs. The SDP is essentially a set partitioning problem with side constraints and is NP-Complete. The number of strings (decision variables) in this problem runs to several million. Hence, a direct approach to solve this problem is not likely to be tractable. Note that the LR P like the airline CSP does not exactly fall in the class of MCFP described. However, due to the redu cability property of the tr ain schedule, it still lends itself to the aggregation framework. We next summarize our aggregation based approach to

PAGE 176

176 solve this problem and refer the reader to Va idyanathan, Ahuja, and Orlin (2007c) for further details. The train schedule satisfies th e reducability property. Hence, in a similar manner to the LPP, we aggregate all the instances of a train in the week into a single aggregated train. The flow on each aggregated train represen ts the total flow on all weekly trains corresponding to it. We also consider strings which are now made up of aggregated flight s and refer to these strings as aggregated strings. These aggregated strings are the decision variables in the aggregated LRP. Using this method of variable aggregation, we ar e able to reduce the num ber of variables from close to a million, to several thousand. Also in the aggregated LRP we have only one partitioning constraint for every aggregated train instead of one for every train in the original model. Since the average freque ncy of aggregated trains is close to five, the number of partitioning constraints becomes roughly one-fifth that of the or iginal model. Also, since the number of aggregated trains is one-fifth the number of original trains the number of flow balance constraints also reduces by the same f actor. Thus, the aggregation of variables and constraints results in a very compact formulation and consequently very fast run times. We also developed a disaggregation algorit hm using which this solution can be disaggregated to obtain near optimal solutions to the or iginal problem. Our computational results demonstrated that the aggregation approach was able to solve a number of different instances of the LRP within five minutes of computational time and with less than a 2.2 % optimality gap. Another routing problem of inte rest is the aircraft mainte nance routing problem. Several researchers have worked on this problem (Feo and Bard (1989), Clarke et al. (1997), Gopalan and Talluri (1998), Talluri (1998), Barnhart et al. (1998 )). Barnhart et al. (1998) use a branchand-price based approach to solve the aircraft routing problem. Their fo rmulation has a lot of

PAGE 177

177 similarities to the formulation of the LRP de scribed above. However, even for small problems with 150-200 flights their approach takes 3-4 hou rs of computational time. Since the aircraft routing problem is very similar in nature to LRP and is in fact simpler in several ways (described in Vaidyanathan, Ahuja, and Orlin (2007c)), we believe that the aggreg ation framework has the potential to be a useful speed-up tool to solve this problem too. 5.5 Computational Results In this section, we provide computational re sults of our algorithms on several instances of the LPP with varying transport volumes. We impl emented our algorithms in the Microsoft Visual Basic programming language and tested them on the data provided by a major Class I US railroad. We modeled our integer programs using ILOG Concert Technology 2.0 modeling language and solved them using the CPLEX 9.0 so lver. We conducted all our computational tests on an Intel Pentium 4, 512-MB RAM, a nd 2.4-GHz processor desktop computer. In order to test the performance of the a ggregation framework, we first solve the LPP exactly using the consist based fo rmulation proposed in Vaidyana than et al. (2007b) and measure the solution cost and computational times. We then use the aggregation a pproach to solve this problem and tabulate the performance of the th ree disaggregation approaches described in Section 5.3. We present the results of our co mputational test in Ta ble 5-1 and Figure 5-3. From our computational tests we make the following conclusions: The aggregation based methods pr oposed were able to solve a ll instances of the LPP to less than 2% optimality gap in less than onefifteenth the original computational time. The difference between method 1 and method 2 is close to 1% in terms of optimality gap. However, the difference in performance be tween methods 2 and 3 is only marginal. The aggregation based framework is able speed-up the solution times of all instances of the LPP from a few minutes to a few seconds.

PAGE 178

178 5.6 Summary and Conclusions We develop an aggregation framework that that can be applied to so lve a class of largescale integer multicommodity flow problems (M CFP). We define the te rminology and describe the properties of this class of problems in terms of th e underlying network, the objective function, and the constraints. The basic philosophy behind the a ggregation approach is that instead of solving a large-scale pr oblem directly, we divide our a pproach into two stages. In the first stage, we solve a much smaller aggregated model to optimality. Then, in the next stage we disaggregate the solution of the first stage to obtain a near optimal solution to the original problem. We formulate the class of MCFP as an in teger programming problem on a network and describe the constraints in this problem. We also identify the pr operties that the network has to satisfy for the aggregation framework to be app licable. We formulate the aggregated version of the MCFP and show that it is much smaller in si ze than the original problem in terms of number of decision variables and constrai nts. We establish the relationshi p between the feasibility of the original MCFP and the feasibility of the aggregat ed MCFP, and also describe the importance of estimating the duration of arcs to ensure that the aggregated model is a good approximation of the original model. Finally, we describe three methods by which we can disaggregate the solution to obtain the near optimal solutions to the original problem. We demonstrate the applicability of the aggr egation framework to solve several problems. We first describe an applicati on of the aggregation framework to solve the LPP. We show that the LPP is a special case of the MCFP. Due to the nature of the aggregated LPP, its performance depends critically on the estimation of train c onnection times. While the train connection times in the original network can be computed trivially, in the aggregated network this information is not readily available. This is because, in the aggr egated network, we abst ract out the information

PAGE 179

179 regarding the operating da y of a train and only consider its frequency and arrival and departure times of the day. We describe methods to es timate train connection times on the aggregated network in such a way that the aggregated mode l is a very good approxi mation of the original model. Since the aggregated problem is much smalle r in size than the original problem, it can be solved to optimality quickly. We provide ex tensive computational results on the LPP to demonstrate the efficacy of our approach. The computational results demonstrate that the aggregation algorithm is able to obtain near opt imal solutions (less than two percent gap) while consuming only one-fifteenth the or iginal computational times. We also outline applications of the aggregation framework to solve airline fl eet assignment problem, airline CSPs, LRPs, and aircraft routing problems. We believe that the aggregation framework de scribed has the potential to be effectively applied to solve large-scale optimi zation problems. The main benefit of this approach is the fact aggregation shrinks the problem si ze leaving its structure virtuall y unaltered. Hence, the existing state-of-the-art algorithms may be directly applied to the aggregated problem. Due to this reason, it can be used as a tool to speed-up existing so lution techniques to a wi de variety of problems.

PAGE 180

180Table 5-1. Performance of the aggregation algorithm. Exact Formulation Aggregation method 1 Aggr egation method 2 Aggregation method 3 SNo Tonnage Cost Time Con. Cost Time Con. Gap (%) Cost Time Con. Gap (%) Cost Time Con. Gap (%) 1 5,700 5,911,644 3m 20s 94.82 5,936,426 20.18s 94.82 0.42 5,998,630 5.54s 95.471.47 5,985,2535.74s 95.141.23 2 6,080 6,325,823 8m 52s 95.14 6,369,353 27.31s 95.79 0.69 6,439,583 5.8s 94.891.80 6,414,9836.22s 94.781.39 3 6,460 6,693,232 5m 57s 94.85 6,719,490 25.41s 94.46 0.39 6,825,278 6.87s 93.851.97 6,795,2657.20s 93.921.50 4 6,840 6,994,761 6m 41s 94.93 7,035,412 16.79s 95.43 0.48 7,113,596 6.43s 94.821.70 7,088,9538.44s 94.931.33 5 7,220 7,444,726 6m 41s 94.75 7,519,868 23.57s 94.10 1.01 7,588,132 5.57s 94.281.93 7,588,0635.74s 94.211.89 6 7,600 7,848,320 7m 09s 94.96 7,895,066 34.47s 95.29 0.60 7,982,082 6.09s 93.811.70 7,965,9026.29s 93.591.48 7 7,980 8,295,953 6m 01s 94.64 8,369,668 20.05s 93.99 0.89 8,458,740 6.09s 92.881.96 8,442,5416.50s 93.311.74

PAGE 181

181 181 Figure 5-1. Network. Figure 5-2. Potentia l train connections. Train 1-Mon Train 1-Tue Train 1-Wed Train 1-Th r Train 2-Mon Train 2-Wed Train 2-Th r Arrivalnode Departure node Loadarc Freearc

PAGE 182

182 182 5,500,000 6,000,000 6,500,000 7,000,000 7,500,000 8,000,000 8,500,000 5,5006,0006,5007,0007,5008,0008,500 Tonnage Exact Method 1 Method 2Cost ($) Figure 5-3. Performance of the aggregation algorithm.

PAGE 183

183 LIST OF REFERENCES Abara, J. 1989. Applying integer linear pr ogramming to the fleet assignment problem. Interfaces 19 20-28. Ahuja, R.K., K.C. Jha, J. Liu. 2007. Solv ing real-life railroad blocking problems. Interfaces forthcoming. Ahuja, R.K., J. Liu, J. Goodstein, A. Mukhe rjee, J.B. Orlin. 2 004. A neighborhood search algorithm for the combined through and fleet assignment model with time windows. Networks 44 160-171. Ahuja, R.K., T.L. Magnanti, J.B. Orlin. 1993. Network Flows: Theory, Algorithms, and Applications Prentice Hall, Englewood Cliffs, NJ. Ahuja, R.K., J. Liu, J.B. Orlin, D. Sharma, L.A. Shughart. 2005. Solving real-life locomotive scheduling problems. Transportation Science 39 503-517. Assad, A.A. 1978. Multicommodity network flows A survey. Networks 8 37-91. Assad, A.A. 1980a. Solving linear multicommodi ty flow problems. Proceedings of the IEEE International Conference on Circ uits and Computers, 157-161. Assad, A.A. 1980b. Models for rail transportation. Transportation Research 14A 205-220. Assad, A.A. 1981. Analytical models in rail transportation: an a nnotated bibliography. INFOR 19 59-80. Assad, A.A. 1983. Analysis of rail classification policies. INFOR 21 293-314. Barnhart, C. 1988. A network-ba sed primal-dual solution met hodology for the multicommodity network flow problem. Ph. D. Dissertation, Dept. of Civil Engineering, MIT, Cambridge, MA. Barnhart, C. 1993. Dual-ascent methods for la rge-scale multi-commodity flow problems. Naval Research Logistics 40 305-324. Barnhart, C., N.L. Boland, L.W. Clarke, E.L. Johnson, G.L. Nemhauser, R.G. Shenoi. 1998. Flight string models for ai rcraft fleeting and routing. Transportation Science 32 208-220. Barnhart, C., C.A. Hane, P.H. Vance. 2000a. Usi ng branch-and-price-and-c ut to solve origindestination integer multic ommodity flow problems. Operations Research 48 318-326. Barnhart, C., H. Jin, P.H. Vance. 2000b. Rail road blocking : A networ k design application. Operations Research 48 603-614. Barnhart, C., E. L. Johnson, R. Anbil, L. Ha tay. 1994. A column generation technique for the long-haul crew assignment problem. T. Ciriano, R. Leachman, eds. Optimization in Industry: Volume II John Wiley and Son, England, UK, 7-22.

PAGE 184

184 Barnhart, C., E. L. Johnson, G. L Nemhauser, P. H. Vance. 2003. Crew scheduling. R.W. Hall, eds. Handbook of Transportation Science. Kluwer Academic Publisher, Norwell, MA, 493521. Barnhart, C., T.S. Kniker, M. Lohatepanont. 200 2. Itinerary-based airl ine fleet assignment. Transportation Science 36 199-217. Barnhart, C., Y. Sheffi. 1993. A network-base d primal-dual heuristi c for the solution of multicommodity network flow problems. Transportation Science 27 102-117. Bellmore, M., G. Bennington, S. Lubore. 1971. A multivehicle tanker scheduling problem. Transportation Science 5 36-47. Bodin, L., B. Golden, A.A. Assad, M. Ball. 1983. Routing and scheduling of vehicles and crews: The state of the art. Computer and Operations Research 10 63-211. Bodin, L.D., B.L. Golden, A.D. Schuster, W. Ro wing. 1980. A model for the blockings of trains. Transportation Research 14B 115-120. Booler, J.M.P. 1980. The solution of a ra ilway locomotive scheduling problem. Journal of the Operational Research Society 31 943-948. Booler, J.M.P. 1995. A note on the use of La grangean relaxation in railway scheduling. Journal of the Operational Research Society 46 123-127. Brannlund, U., P.O. Lin dberg, A. Nou, J.E. Nilson. 1998. Ra ilway timetabling using Lagrangian relaxation. Transportation Science 32 358-369. Brunetta, L., M. Conforti, M. Fischetti. 2000. A polyhedral approach to an integer multicommodity flow problem. Discrete Applied Mathematics 101 13-36. Campbell, K.C. 1996. Booking and revenue manage ment for rail intermodal services. PhD Dissertation. Department of Systems Engi neering, University of Pennsylvania, Philadelphia, PA. Caprara, A., M. Fischetti, P. Toth, D. Vigo, P.L. Guida. 1997. Algorithms for railway crew management. Mathematical Programming 79 124-141. Carraresi, P., G. Gallo. 1984. Network mode ls for vehicle and crew scheduling. European Journal of Operational Research 16 139-151. Castro, J, N. Nabona. 1996. An implementation of linear and nonlinear multicommodity network flows. European Journal of Operational Research 92 37-53. Chen, H., C.G. Dewald. 1974. A generalized chain labeling algorithm for solving multicommodity flow problems. Computers and Oper ations Research 1 437-465.

PAGE 185

185 Chih, K.C., M.A. Hornung, M.S. Rothenberg, A. L. Kornhauser. 1990. Implementation of a real time locomotive distribution system. T.K.S. Murt hy, R.E. Rivier, G.F. List, J. Mikolaj, eds. Computer Applications in Railway Planning and Management Computational Mechanics Publications, Southampton, UK, 39-49. Chu, C.K., C.H. Chan. 1998. Crew scheduling of light rail tran sit in Hong Kong: From modeling to implementation. Computer and Operations Research 25 887-894. Clarke, L., E. Johnson, G. Nemhauser, Z. Zhu. 1997. The aircraft rotation problem. Annals of Operations Research 69 33-46. Cordeau, J.F., F. Soumis, J. Desrosiers. 1998a A Benders decomposition approach for the locomotive and car assignment problem. Technical Report G-98-35, GERAD, Ecole des Hautes Etudes Commercial es de Montreal, Canada. Cordeau, J.F., P. Toth, D. Vigo. 1998b. A survey of optimization models for train routing and scheduling. Transportation Science 32 380-404. Crainic, T.G., J.A. Ferland, J.M. Rousseau. 1984. A tactical planni ng model for rail freight transportation. Transportation Science 18 165-184. Cremeans, J.E., R.A. Smith, G.R. Tyndall. 1970. Optimal multicommodity network flows with resource allocation. Naval Research Logistics Quarterly 17 269-280. Dantzig, G.B., P. Wolfe. 1960. Decompos ition principle for linear programs. Operations Research 8 101-111. Desrosiers, J., Y. Dumas, M.M. Solomon, F. Soumis. 1995. Time-constrained routing and scheduling. M.O. Ball, eds. Handbooks in OR & MS Vol. 8 Elsevier Science, 35-139. Detlefsen, N.K., S.W. Wallace. 2002. The simp lex algorithm for multi commodity networks. Networks 39 15-28. Ernst, A.T., H. Jiang, M. Krishnamoorthy, H. Nott, D. Sier. 2001. An integrated optimization model for train crew management. Annals of Operations Research 108 211-224. Evans, J.R. 1977. Some network flow models and heuristics for mu ltiproduct production and inventory planning. AIIE Transactions 9 75-81. Farvolden, J.M., W.B. Powell. 1994. Subgradient methods for service network design problem. Transportation Science 28 256-272. Farvolden, J.M., W.B. Powell, I.J. Lustig. 1993. A primal partitioning solution for the arc-chain formulation of a multicomm odity network flow problem. Operations Research 41 669693. Feo, T.A., J.F. Bard. 1989. Flight sche duling and maintenance base planning. Management Science 35 1415-1432.

PAGE 186

186 Fischetti, M., P. Toth. 1997. A package for lo comotive scheduling. Technical Report DEIS-OR97-16, University of Bologna, Italy. Florian, M., G. Bushell, J. Ferland, G. Guerin, L. Nastan sky. 1976. The engine scheduling problem in a railway network. INFOR 14 121-138. Florida Department of Transportation Report. 20 05. Freight rail component of the Florida Rail Plan. Technical Report. Freling, R., R.M. Lentink, A.P.M. Wagelm ans. 2004. A decision support system for crew planning in passenger transportation usi ng a flexible branch-and-price algorithm. Annals of Operations Research 127 203-222. Forbes, M.A., J.N. Holt, A.M. Watts. 1991. Ex act solution of locomotive scheduling problems. Journal of Operational Research Society 42 825-831. Ford, L.R., D.R. Fulkerson. 1958. A suggest ed computation for maximal multicommodity network flow. Management Science 5 97-101. Frangioni, A., G. Gallo. 1999. A bundle type dual-ascent appro ach to linear multicommodity min-cost flow problems. INFORMS Journal on Computing 11 370-393. Garey, M.R., D.S. Johnson. 1979. Computers and intractability: A guide to the theory of NPcompleteness W.H. Freeman, New York, NY. Gautier, A., F. Granot. 1995. Forest manage ment: A multicommodity flow formulation and sensitivity analysis. Management Science 41 1654-1688. Gersht, A., A. Shulman. 1987. A new algorit hm for the solution of the minimum cost multicommodity flow problem. Proceedings of the IEE Conference on Decision and Control 26, 748-758. Goeffrion, A.M., G.W. Graves. 1974. Multico mmodity distribution sy stem design by Benders decomposition. Management Science 20 822-844. Golden, B.L. 1975. A minimum cost multicommod ity network flow problem concerning imports and exports. Networks 5 331-356. Gopalakrishnan, B., E. Johnson. 2005. Air line crew scheduling: State-of-the-art. Annals of Operations Research 140 305-337. Gopalan, R., K.T. Talluri. 1998. The ai rcraft maintenance routing problem. Operations Research 46 260-272. Gorman, M.F., M. Sarrafzadeh. 2000. An appl ication of dynamic programming to crew balancing at Burlington Nort hern Santa Fe Railway. International Journal of Services Technology and Management 1 174-187.

PAGE 187

187 Graves, G.W., R.D. McBride. 1976. The factorization approach to large scale linear programming. Mathematical Programming 10 91-110. Hane, C.A., C. Barnhart, E.L. Johnson, R.E. Marsten, G.L. Nemhauser, G. Sigismondi. 1995. The fleet assignment problem: Solving a large-scale integer program. Mathematical Programming 70 211-232. Haghani, A.E. 1989. Formulation and solution of a combined train routing and makeup, and empty car distribution model. Transportation Research 23B 433-452. Hoffman, K.L, M. Padberg. 1993. Solving airline crew scheduling proble ms by branch-and-cut. Management Science 39 657-682. Holmberg, K., D. Yuan. 2003. A multicommodity ne twork-flow problem wi th side constraints on paths solved by column generation. INFORMS Journal on Computing 15 42-57. Jha, K.C. 2004. Very large-scale neighborhood sear ch heuristics for combinatorial optimization problems. Department of Industrial and Syst ems Engineering, University of Florida, Gainesville, FL. Kaplan, S. 1973. Readiness and the opt imal redeployment of resources. Naval Research Logistics Quarterly 20 625-638 Keaton, M.H. 1989. Designing optimal railroad operation plans: Lagran gian relaxation and heuristic approaches. Transportation Research 23B 415-431. Keaton, M.H. 1992. Designing optimal railroad ope rating plans: A dual adjustment method for implementing Lagrangian relaxation. Transportation Science 26 262-279. Kennington, J.L., R.V. Helgason. 1980. Algorithms for Network Programming WileyInterscience, NY. Kennington, J.L. 1978. Survey of linear cost multicommodity network flows. Operations Research 26 209-236. Kennington, J.L., M. Shalaby. 1977. An effect ive subgradient procedure for minimal cost multicommodity flow problems. Management Science 23 994-1004. Korte, B. 1988. Applications of combinatoria l optimization. Technica l Report No. 88541-OR. Institute fr Okonometrie und Operations Rese arch, Nassestrasse 2, D-5300, Bonn, West Germany. Kraft, E.R. 1998. A reservati on-based railway network operati ons management system. PhD Dissertation. Department of Systems Engi neering, University of Pennsylvania, Philadelphia, PA. Larsson, T., D. Yuan. 2004. An augmente d Lagrangian algorithm for large scale multicommodity routing. Computational Optimi zation and Applications 27 187-215.

PAGE 188

188 Lin, Y., J. Yuan. 2001. On a multicommodity flow network reliability model and its application to a container-loading transportation problem. Journal of Operations Research Society of Japan 44 366-377. Lohatepanont, M., C. Barnhart. 2004. Airlin e schedule planning: in tegrated models and algorithms for schedule desi gn and fleet assignment. Transportation Science 38 19-32. Mamer, J.W., R.D. McBride. 2000. A decompositi on-based pricing proc edure for large-scale linear programs: An application to th e linear multicommodity flow problem. Management Science 46 693-709. Maroti, G., L. Kroon. 2005. Maintenance routin g for train units: th e transition model. Transportation Science 39 518-525. Matsumoto, K., T. Nishizeki, N. Saito. 1985. An efficient algorithm for finding multicommodity flows in planar networks. SIAM Journal on Computing 14 289-302. Newton, H.N., C. Barnhart, P.M. Vance. 1998. C onstructing railroad bloc king plans to minimize handling costs. Transportation Science 32 330-345. Nou, A., J. Desrosiers, F. Soumis. 1997. Weekly locomotive scheduling at Swedish State Railways. Technical Report G-9735, GERAD, Ecole des Hautes Etudes Commerciales de Montreal, Canada. Ouaja, W., Richards, B. 2004. A hybrid mult icommodity routing algorithm for traffic engineering. Networks 43 125-140. Pinar, M.C., S.A. Zenios. 1990. Parallel decomp osition of multicommodity network flows using smooth penalty functions. Technical Report 9012-06, Department of Decision Sciences, Wharton School, University of Pennsylvania, Philadelphia, PA. Radzig, T. 1997. Fast deterministic approxima tion for the multicommodity flow problem. Mathematical Programming 78 43-58. Ramani, K.V. 1981. An information system for allocating coach stock on Indian Railways. Interfaces 11 44-51. Rexing, B., C. Barnhart, T. Kniker, A. Jarrah, N. Krishnamurthy. 2000. Airline fleet assignment with time windows. Transportation Science 34 1-20. Schneur, R. 1991. Scaling algorithms for multi commodity flow problem s and network flow problems with side constraints. Ph.D. Dissertation, Department of Civil Engineering, MIT, Cambridge, MA. Schneur, R., J.B. Orlin. 1998. A scaling algo rithm for multicommod ity flow problems. Operations Research 46 231-246.

PAGE 189

189 Smith, S., Y. Sheffi. 1988. Locomoti ve scheduling under uncertain demand. Transportation Research Records 1251 45-53. Surface Transportation Board, US Department of Transportation, Bureau of Accounts, Employment Data, 2006. Swoveland, C. 1971. Decomposition algorithms for the multi-commodity distribution problem. Working Paper No. 184, Western Management Sc ience Institute, University of California, Los Angeles. Talluri, K.T. 1996. Swapping applications in daily airline fleet assignment. Transportation Science 30 237-248. Talluri, K.T. 1998. The four-day aircraft maintenance routing problem. Transportation Science 32 43-53. Tomlin, J.A. 1966. A linear programming model for the assignment of traffic. Proceedings of the 3 rd Conference of the Australian Road Research Board 3, 263-271. Vaidyanathan, B., K.C. Jha, R.K. Ahuja. 2007a. Multicommodity network flow approach to the railroad crew-scheduling problem. IBM Journal of Research and Development 51 325-344. Vaidyanathan, B., R.K. Ahuja, J. Liu, L.A. Sh ughart. 2007b. Real-life lo comotive planning: new formulations and computational results. Transportation Research B forthcoming. Vaidyanathan, B., R.K. Ahuja, J.B. Orlin. 2007c. The locomotive routing problem. Working paper, Department of Industrial and System s Engineering, Univer sity of Florida, Gainesville, FL. Vance, P.H., C. Barnhart, E.L. Johnson, G.L. Nemhauser. 1997. Airline crew scheduling: A new formulation and decomposition algorithm. Operations Research 45 188-200. Walker, C.G., J. N. Snowdon, D. M. Ryan. 2005. Simultaneous disruption recovery of train timetable and crew ro ster in real time. Computer and Operations Research 32 2077-2094. Wise, T. H. 1995. Column Generation and Polyhedral Combinatorics for Airline Crew Scheduling. Ph.D. Dissertation, Cornel l University, Ithaca, NY. Wren, A. 1981. Computer Scheduling of Public Transport North-Holland, Amsterdam. Wright, M.B. 1989. Applying stoc hastic algorithms to a loco motive scheduling problem. Journal of the Operational Research Society 40 187-192. Ziarati, K., F. Soumis, J. Desrosiers, S. Ge linas, A. Saintonge. 1997. Locomotive assignment with heterogeneous consists at CN North America. European Journal of Operational Research 97 281-292.

PAGE 190

190 Ziarati, K., F. Soumis, J. Desrosiers, M.M. So lomon. 1999. A branch-first, cut-second approach for locomotive assignment. Management Science 45 1156-1168.

PAGE 191

191 BIOGRAPHICAL SKETCH Balachandran Vaidyanathan is fr om India and he received his early education in the coastal city of Chennai. He received his bachelors de gree in naval architectu re and ocean engineering from the Indian Institute of Technology, Madras India in 2002. Since August 2003, he has been pursuing his doctoral degree at the Department of Industrial and Systems Engineering, University of Florida. His academic interest s include mathematical modeling and design of algorithms to solve real-world probl ems. He has made contributions in the areas of railroad crew and locomotive scheduling and has been awarded INFORMS 2004 and 2006 Honorable Mentions in their annual student paper comp etition on Management Science in Railroad Applications. He also received the Gradua te Student Best Paper Award 2007 from the Transportation Research Forum.