diff --git a/tsp_new.py b/tsp_new.py new file mode 100644 index 0000000..195cee0 --- /dev/null +++ b/tsp_new.py @@ -0,0 +1,2743 @@ +import copy + +# distancematrix = [ +# [0, 7.33, 9, 12], +# [7.33, 0, 6.43, 4.2], +# [9, 6.43, 0, 8], +# [12, 4.2, 8, 0] +# ] + +# invlidcity = ['Bata Show Room', 'Rajarajeshwari temple', 'Jantha Bazar', 'Chowdeshwari Talkies', 'Mantri Apartment'] + +distancematrix = { + 'Bosch Bidadi': { + 'Bosch Bidadi': 0, + 'BTM 2nd stage': 36681, + 'Koramangala': 41055, + 'Anand Ashram': 39410, + 'Vijaya Bank Adugodi': 38846, + 'Hulimavu Gate': 37055, + 'Adugodi': 51858, + 'Austin Town': 36591, + 'Viveknagar': 36487, + 'Adugodi Signal': 35588, + 'Mico Layout': 40656, + 'Ashram HDFC Bank': 35986, + 'Lakkasandra Bus Stop': 40057, + 'Arakere BTS Layout': 34797, + 'Aneypalya': 39651, + 'Arakere Layout': 34797, + 'Bannerghatta Road': 36280, + 'Arakere Gate': 36630, + 'Sagar Appolo Hospital': 39410, + 'Canara Bank': 39316, + 'BPL Stop': 36451, + 'Mico Signal': 39750, + 'Udupi Guarden': 38407, + 'BTM': 40656, + 'Jayadeva Hospital Junction': 37266, + 'Arekere Gate': 36630, + 'Ashram Bus Stop': 39410, + 'Ashram': 39410, + 'Spar Stop': 29819, + 'Koramangala Police Station': 51944, + 'Gottigere': 32753, + 'Silk Board': 48583, + 'Dairy Circle': 40123, + 'Thilaknagar': 38918, + 'Koramangala Depot': 52614 + }, + 'BTM 2nd stage': { + 'Bosch Bidadi': 38686, + 'BTM 2nd stage': 0, + 'Koramangala': 4112, + 'Anand Ashram': 1852, + 'Vijaya Bank Adugodi': 3882, + 'Hulimavu Gate': 3685, + 'Adugodi': 5669, + 'Austin Town': 6990, + 'Viveknagar': 7196, + 'Adugodi Signal': 6297, + 'Mico Layout': 1796, + 'Ashram HDFC Bank': 6383, + 'Lakkasandra Bus Stop': 2982, + 'Arakere BTS Layout': 4818, + 'Aneypalya': 5670, + 'Arakere Layout': 4818, + 'Bannerghatta Road': 567, + 'Arakere Gate': 2924, + 'Sagar Appolo Hospital': 1852, + 'Canara Bank': 4406, + 'BPL Stop': 3201, + 'Mico Signal': 3704, + 'Udupi Guarden': 2284, + 'BTM': 1796, + 'Jayadeva Hospital Junction': 706, + 'Arekere Gate': 2924, + 'Ashram Bus Stop': 1852, + 'Ashram': 1852, + 'Spar Stop': 8341, + 'Koramangala Police Station': 5754, + 'Gottigere': 6808, + 'Silk Board': 3597, + 'Dairy Circle': 3194, + 'Thilaknagar': 1345, + 'Koramangala Depot': 6425 + }, + 'Koramangala': { + 'Bosch Bidadi': 38711, + 'BTM 2nd stage': 5372, + 'Koramangala': 0, + 'Anand Ashram': 4161, + 'Vijaya Bank Adugodi': 3485, + 'Hulimavu Gate': 8790, + 'Adugodi': 1050, + 'Austin Town': 3856, + 'Viveknagar': 3939, + 'Adugodi Signal': 1154, + 'Mico Layout': 5558, + 'Ashram HDFC Bank': 6076, + 'Lakkasandra Bus Stop': 2586, + 'Arakere BTS Layout': 7884, + 'Aneypalya': 2334, + 'Arakere Layout': 7884, + 'Bannerghatta Road': 5866, + 'Arakere Gate': 7860, + 'Sagar Appolo Hospital': 4161, + 'Canara Bank': 2313, + 'BPL Stop': 8137, + 'Mico Signal': 2102, + 'Udupi Guarden': 4848, + 'BTM': 5558, + 'Jayadeva Hospital Junction': 4625, + 'Arekere Gate': 7860, + 'Ashram Bus Stop': 4161, + 'Ashram': 4161, + 'Spar Stop': 6640, + 'Koramangala Police Station': 2043, + 'Gottigere': 11745, + 'Silk Board': 4890, + 'Dairy Circle': 2779, + 'Thilaknagar': 4744, + 'Koramangala Depot': 2713 + }, + 'Anand Ashram': { + 'Bosch Bidadi': 36873, + 'BTM 2nd stage': 1981, + 'Koramangala': 2562, + 'Anand Ashram': 0, + 'Vijaya Bank Adugodi': 2331, + 'Hulimavu Gate': 5394, + 'Adugodi': 4118, + 'Austin Town': 5439, + 'Viveknagar': 5645, + 'Adugodi Signal': 4747, + 'Mico Layout': 2591, + 'Ashram HDFC Bank': 4760, + 'Lakkasandra Bus Stop': 1432, + 'Arakere BTS Layout': 4202, + 'Aneypalya': 4120, + 'Arakere Layout': 4202, + 'Bannerghatta Road': 2548, + 'Arakere Gate': 4892, + 'Sagar Appolo Hospital': 0, + 'Canara Bank': 2856, + 'BPL Stop': 5169, + 'Mico Signal': 2153, + 'Udupi Guarden': 3073, + 'BTM': 2591, + 'Jayadeva Hospital Junction': 1657, + 'Arekere Gate': 4892, + 'Ashram Bus Stop': 0, + 'Ashram': 0, + 'Spar Stop': 6458, + 'Koramangala Police Station': 4204, + 'Gottigere': 8777, + 'Silk Board': 4387, + 'Dairy Circle': 1644, + 'Thilaknagar': 1063, + 'Koramangala Depot': 4874 + }, + 'Vijaya Bank Adugodi': { + 'Bosch Bidadi': 37108, + 'BTM 2nd stage': 4139, + 'Koramangala': 4069, + 'Anand Ashram': 2627, + 'Vijaya Bank Adugodi': 0, + 'Hulimavu Gate': 7144, + 'Adugodi': 4953, + 'Austin Town': 5040, + 'Viveknagar': 5246, + 'Adugodi Signal': 4347, + 'Mico Layout': 4744, + 'Ashram HDFC Bank': 4473, + 'Lakkasandra Bus Stop': 3071, + 'Arakere BTS Layout': 5390, + 'Aneypalya': 2287, + 'Arakere Layout': 5390, + 'Bannerghatta Road': 4706, + 'Arakere Gate': 7045, + 'Sagar Appolo Hospital': 2627, + 'Canara Bank': 1952, + 'BPL Stop': 7322, + 'Mico Signal': 2764, + 'Udupi Guarden': 5221, + 'BTM': 4744, + 'Jayadeva Hospital Junction': 3810, + 'Arekere Gate': 7045, + 'Ashram Bus Stop': 2627, + 'Ashram': 2627, + 'Spar Stop': 4999, + 'Koramangala Police Station': 5809, + 'Gottigere': 10930, + 'Silk Board': 6534, + 'Dairy Circle': 3138, + 'Thilaknagar': 3210, + 'Koramangala Depot': 6584 + }, + 'Hulimavu Gate': { + 'Bosch Bidadi': 36315, + 'BTM 2nd stage': 3679, + 'Koramangala': 7599, + 'Anand Ashram': 5340, + 'Vijaya Bank Adugodi': 7369, + 'Hulimavu Gate': 0, + 'Adugodi': 9156, + 'Austin Town': 10477, + 'Viveknagar': 10683, + 'Adugodi Signal': 9784, + 'Mico Layout': 4991, + 'Ashram HDFC Bank': 8845, + 'Lakkasandra Bus Stop': 6469, + 'Arakere BTS Layout': 6832, + 'Aneypalya': 9157, + 'Arakere Layout': 6832, + 'Bannerghatta Road': 3427, + 'Arakere Gate': 1009, + 'Sagar Appolo Hospital': 5340, + 'Canara Bank': 7893, + 'BPL Stop': 829, + 'Mico Signal': 7191, + 'Udupi Guarden': 5160, + 'BTM': 4991, + 'Jayadeva Hospital Junction': 4193, + 'Arekere Gate': 1009, + 'Ashram Bus Stop': 5340, + 'Ashram': 5340, + 'Spar Stop': 10803, + 'Koramangala Police Station': 9241, + 'Gottigere': 4437, + 'Silk Board': 6390, + 'Dairy Circle': 6681, + 'Thilaknagar': 4745, + 'Koramangala Depot': 9912 + }, + 'Adugodi': { + 'Bosch Bidadi': 37661, + 'BTM 2nd stage': 4322, + 'Koramangala': 1986, + 'Anand Ashram': 3111, + 'Vijaya Bank Adugodi': 2435, + 'Hulimavu Gate': 7740, + 'Adugodi': 0, + 'Austin Town': 2806, + 'Viveknagar': 3013, + 'Adugodi Signal': 104, + 'Mico Layout': 4508, + 'Ashram HDFC Bank': 5026, + 'Lakkasandra Bus Stop': 1536, + 'Arakere BTS Layout': 6833, + 'Aneypalya': 1284, + 'Arakere Layout': 6833, + 'Bannerghatta Road': 4816, + 'Arakere Gate': 6810, + 'Sagar Appolo Hospital': 3111, + 'Canara Bank': 1263, + 'BPL Stop': 7087, + 'Mico Signal': 1052, + 'Udupi Guarden': 4999, + 'BTM': 4508, + 'Jayadeva Hospital Junction': 3575, + 'Arekere Gate': 6810, + 'Ashram Bus Stop': 3111, + 'Ashram': 3111, + 'Spar Stop': 5590, + 'Koramangala Police Station': 1566, + 'Gottigere': 10695, + 'Silk Board': 5137, + 'Dairy Circle': 1729, + 'Thilaknagar': 3694, + 'Koramangala Depot': 2342 + }, + 'Austin Town': { + 'Bosch Bidadi': 34985, + 'BTM 2nd stage': 6863, + 'Koramangala': 4494, + 'Anand Ashram': 5652, + 'Vijaya Bank Adugodi': 4976, + 'Hulimavu Gate': 10281, + 'Adugodi': 3218, + 'Austin Town': 0, + 'Viveknagar': 1601, + 'Adugodi Signal': 2613, + 'Mico Layout': 7049, + 'Ashram HDFC Bank': 6809, + 'Lakkasandra Bus Stop': 4076, + 'Arakere BTS Layout': 9374, + 'Aneypalya': 3940, + 'Arakere Layout': 9374, + 'Bannerghatta Road': 7357, + 'Arakere Gate': 9351, + 'Sagar Appolo Hospital': 5652, + 'Canara Bank': 4634, + 'BPL Stop': 9628, + 'Mico Signal': 3593, + 'Udupi Guarden': 7540, + 'BTM': 7049, + 'Jayadeva Hospital Junction': 6115, + 'Arekere Gate': 9351, + 'Ashram Bus Stop': 5652, + 'Ashram': 5652, + 'Spar Stop': 6964, + 'Koramangala Police Station': 4241, + 'Gottigere': 13235, + 'Silk Board': 7646, + 'Dairy Circle': 4269, + 'Thilaknagar': 6235, + 'Koramangala Depot': 4891 + }, + 'Viveknagar': { + 'Bosch Bidadi': 36538, + 'BTM 2nd stage': 6544, + 'Koramangala': 3232, + 'Anand Ashram': 5333, + 'Vijaya Bank Adugodi': 4657, + 'Hulimavu Gate': 9962, + 'Adugodi': 2900, + 'Austin Town': 1605, + 'Viveknagar': 0, + 'Adugodi Signal': 2294, + 'Mico Layout': 6730, + 'Ashram HDFC Bank': 7248, + 'Lakkasandra Bus Stop': 3758, + 'Arakere BTS Layout': 9056, + 'Aneypalya': 3506, + 'Arakere Layout': 9056, + 'Bannerghatta Road': 7039, + 'Arakere Gate': 9032, + 'Sagar Appolo Hospital': 5333, + 'Canara Bank': 3485, + 'BPL Stop': 9309, + 'Mico Signal': 3274, + 'Udupi Guarden': 7221, + 'BTM': 6730, + 'Jayadeva Hospital Junction': 5797, + 'Arekere Gate': 9032, + 'Ashram Bus Stop': 5333, + 'Ashram': 5333, + 'Spar Stop': 8517, + 'Koramangala Police Station': 1949, + 'Gottigere': 12917, + 'Silk Board': 5796, + 'Dairy Circle': 3951, + 'Thilaknagar': 5916, + 'Koramangala Depot': 2599 + }, + 'Adugodi Signal': { + 'Bosch Bidadi': 38267, + 'BTM 2nd stage': 4928, + 'Koramangala': 1882, + 'Anand Ashram': 3717, + 'Vijaya Bank Adugodi': 3041, + 'Hulimavu Gate': 8346, + 'Adugodi': 606, + 'Austin Town': 3412, + 'Viveknagar': 4082, + 'Adugodi Signal': 0, + 'Mico Layout': 5114, + 'Ashram HDFC Bank': 5632, + 'Lakkasandra Bus Stop': 2141, + 'Arakere BTS Layout': 7439, + 'Aneypalya': 1890, + 'Arakere Layout': 7439, + 'Bannerghatta Road': 5422, + 'Arakere Gate': 7416, + 'Sagar Appolo Hospital': 3717, + 'Canara Bank': 1868, + 'BPL Stop': 7693, + 'Mico Signal': 1658, + 'Udupi Guarden': 4991, + 'BTM': 5114, + 'Jayadeva Hospital Junction': 4180, + 'Arekere Gate': 7416, + 'Ashram Bus Stop': 3717, + 'Ashram': 3717, + 'Spar Stop': 6195, + 'Koramangala Police Station': 2186, + 'Gottigere': 11300, + 'Silk Board': 5033, + 'Dairy Circle': 2334, + 'Thilaknagar': 4300, + 'Koramangala Depot': 2857 + }, + 'Mico Layout': { + 'Bosch Bidadi': 39106, + 'BTM 2nd stage': 855, + 'Koramangala': 4410, + 'Anand Ashram': 2146, + 'Vijaya Bank Adugodi': 4179, + 'Hulimavu Gate': 4274, + 'Adugodi': 4963, + 'Austin Town': 7287, + 'Viveknagar': 7493, + 'Adugodi Signal': 6594, + 'Mico Layout': 0, + 'Ashram HDFC Bank': 6337, + 'Lakkasandra Bus Stop': 3280, + 'Arakere BTS Layout': 4773, + 'Aneypalya': 5967, + 'Arakere Layout': 4773, + 'Bannerghatta Road': 1349, + 'Arakere Gate': 3344, + 'Sagar Appolo Hospital': 2146, + 'Canara Bank': 4703, + 'BPL Stop': 3621, + 'Mico Signal': 4001, + 'Udupi Guarden': 1625, + 'BTM': 0, + 'Jayadeva Hospital Junction': 1434, + 'Arekere Gate': 3344, + 'Ashram Bus Stop': 2146, + 'Ashram': 2146, + 'Spar Stop': 8295, + 'Koramangala Police Station': 5048, + 'Gottigere': 7228, + 'Silk Board': 2938, + 'Dairy Circle': 3492, + 'Thilaknagar': 1318, + 'Koramangala Depot': 5719 + }, + 'Ashram HDFC Bank': { + 'Bosch Bidadi': 34180, + 'BTM 2nd stage': 5985, + 'Koramangala': 5180, + 'Anand Ashram': 4474, + 'Vijaya Bank Adugodi': 3422, + 'Hulimavu Gate': 8428, + 'Adugodi': 6442, + 'Austin Town': 7080, + 'Viveknagar': 6735, + 'Adugodi Signal': 5836, + 'Mico Layout': 6577, + 'Ashram HDFC Bank': 0, + 'Lakkasandra Bus Stop': 4182, + 'Arakere BTS Layout': 4251, + 'Aneypalya': 3776, + 'Arakere Layout': 4251, + 'Bannerghatta Road': 6553, + 'Arakere Gate': 8879, + 'Sagar Appolo Hospital': 4474, + 'Canara Bank': 3441, + 'BPL Stop': 9156, + 'Mico Signal': 3875, + 'Udupi Guarden': 7060, + 'BTM': 6577, + 'Jayadeva Hospital Junction': 5643, + 'Arekere Gate': 8879, + 'Ashram Bus Stop': 4474, + 'Ashram': 4474, + 'Spar Stop': 2496, + 'Koramangala Police Station': 7298, + 'Gottigere': 12763, + 'Silk Board': 8373, + 'Dairy Circle': 4249, + 'Thilaknagar': 5049, + 'Koramangala Depot': 8074 + }, + 'Lakkasandra Bus Stop': { + 'Bosch Bidadi': 37135, + 'BTM 2nd stage': 4551, + 'Koramangala': 4541, + 'Anand Ashram': 3039, + 'Vijaya Bank Adugodi': 899, + 'Hulimavu Gate': 7557, + 'Adugodi': 4980, + 'Austin Town': 5067, + 'Viveknagar': 5273, + 'Adugodi Signal': 4375, + 'Mico Layout': 5156, + 'Ashram HDFC Bank': 4500, + 'Lakkasandra Bus Stop': 0, + 'Arakere BTS Layout': 5803, + 'Aneypalya': 2314, + 'Arakere Layout': 5803, + 'Bannerghatta Road': 5118, + 'Arakere Gate': 7458, + 'Sagar Appolo Hospital': 3039, + 'Canara Bank': 1979, + 'BPL Stop': 7735, + 'Mico Signal': 3237, + 'Udupi Guarden': 5633, + 'BTM': 5156, + 'Jayadeva Hospital Junction': 4222, + 'Arekere Gate': 7458, + 'Ashram Bus Stop': 3039, + 'Ashram': 3039, + 'Spar Stop': 5026, + 'Koramangala Police Station': 5836, + 'Gottigere': 11342, + 'Silk Board': 6946, + 'Dairy Circle': 3610, + 'Thilaknagar': 3623, + 'Koramangala Depot': 6612 + }, + 'Arakere BTS Layout': { + 'Bosch Bidadi': 32949, + 'BTM 2nd stage': 4822, + 'Koramangala': 6645, + 'Anand Ashram': 4756, + 'Vijaya Bank Adugodi': 5313, + 'Hulimavu Gate': 6183, + 'Adugodi': 8572, + 'Austin Town': 9522, + 'Viveknagar': 9728, + 'Adugodi Signal': 8829, + 'Mico Layout': 5425, + 'Ashram HDFC Bank': 4386, + 'Lakkasandra Bus Stop': 5515, + 'Arakere BTS Layout': 0, + 'Aneypalya': 7247, + 'Arakere Layout': 0, + 'Bannerghatta Road': 5496, + 'Arakere Gate': 7419, + 'Sagar Appolo Hospital': 4756, + 'Canara Bank': 6911, + 'BPL Stop': 7695, + 'Mico Signal': 6236, + 'Udupi Guarden': 5906, + 'BTM': 5425, + 'Jayadeva Hospital Junction': 4492, + 'Arekere Gate': 7419, + 'Ashram Bus Stop': 4756, + 'Ashram': 4756, + 'Spar Stop': 5560, + 'Koramangala Police Station': 8658, + 'Gottigere': 10161, + 'Silk Board': 7219, + 'Dairy Circle': 5727, + 'Thilaknagar': 4134, + 'Koramangala Depot': 9328 + }, + 'Aneypalya': { + 'Bosch Bidadi': 37092, + 'BTM 2nd stage': 4160, + 'Koramangala': 2355, + 'Anand Ashram': 2949, + 'Vijaya Bank Adugodi': 2273, + 'Hulimavu Gate': 7578, + 'Adugodi': 4089, + 'Austin Town': 4176, + 'Viveknagar': 4382, + 'Adugodi Signal': 3483, + 'Mico Layout': 4346, + 'Ashram HDFC Bank': 4457, + 'Lakkasandra Bus Stop': 1373, + 'Arakere BTS Layout': 6671, + 'Aneypalya': 0, + 'Arakere Layout': 6671, + 'Bannerghatta Road': 4654, + 'Arakere Gate': 6648, + 'Sagar Appolo Hospital': 2949, + 'Canara Bank': 694, + 'BPL Stop': 6925, + 'Mico Signal': 890, + 'Udupi Guarden': 4837, + 'BTM': 4346, + 'Jayadeva Hospital Junction': 3412, + 'Arekere Gate': 6648, + 'Ashram Bus Stop': 2949, + 'Ashram': 2949, + 'Spar Stop': 5021, + 'Koramangala Police Station': 4945, + 'Gottigere': 10532, + 'Silk Board': 6828, + 'Dairy Circle': 1566, + 'Thilaknagar': 3532, + 'Koramangala Depot': 5721 + }, + 'Arakere Layout': { + 'Bosch Bidadi': 32949, + 'BTM 2nd stage': 4822, + 'Koramangala': 6645, + 'Anand Ashram': 4756, + 'Vijaya Bank Adugodi': 5313, + 'Hulimavu Gate': 6183, + 'Adugodi': 8572, + 'Austin Town': 9522, + 'Viveknagar': 9728, + 'Adugodi Signal': 8829, + 'Mico Layout': 5425, + 'Ashram HDFC Bank': 4386, + 'Lakkasandra Bus Stop': 5515, + 'Arakere BTS Layout': 0, + 'Aneypalya': 7247, + 'Arakere Layout': 0, + 'Bannerghatta Road': 5496, + 'Arakere Gate': 7419, + 'Sagar Appolo Hospital': 4756, + 'Canara Bank': 6911, + 'BPL Stop': 7695, + 'Mico Signal': 6236, + 'Udupi Guarden': 5906, + 'BTM': 5425, + 'Jayadeva Hospital Junction': 4492, + 'Arekere Gate': 7419, + 'Ashram Bus Stop': 4756, + 'Ashram': 4756, + 'Spar Stop': 5560, + 'Koramangala Police Station': 8658, + 'Gottigere': 10161, + 'Silk Board': 7219, + 'Dairy Circle': 5727, + 'Thilaknagar': 4134, + 'Koramangala Depot': 9328 + }, + 'Bannerghatta Road': { + 'Bosch Bidadi': 38343, + 'BTM 2nd stage': 567, + 'Koramangala': 4607, + 'Anand Ashram': 2347, + 'Vijaya Bank Adugodi': 4376, + 'Hulimavu Gate': 3274, + 'Adugodi': 6163, + 'Austin Town': 7484, + 'Viveknagar': 7690, + 'Adugodi Signal': 6791, + 'Mico Layout': 2364, + 'Ashram HDFC Bank': 6950, + 'Lakkasandra Bus Stop': 3477, + 'Arakere BTS Layout': 5386, + 'Aneypalya': 6164, + 'Arakere Layout': 5386, + 'Bannerghatta Road': 0, + 'Arakere Gate': 2581, + 'Sagar Appolo Hospital': 2347, + 'Canara Bank': 4901, + 'BPL Stop': 2858, + 'Mico Signal': 4198, + 'Udupi Guarden': 2851, + 'BTM': 2364, + 'Jayadeva Hospital Junction': 1201, + 'Arekere Gate': 2581, + 'Ashram Bus Stop': 2347, + 'Ashram': 2347, + 'Spar Stop': 8908, + 'Koramangala Police Station': 6248, + 'Gottigere': 6465, + 'Silk Board': 4212, + 'Dairy Circle': 3689, + 'Thilaknagar': 1913, + 'Koramangala Depot': 6919 + }, + 'Arakere Gate': { + 'Bosch Bidadi': 35762, + 'BTM 2nd stage': 2869, + 'Koramangala': 6635, + 'Anand Ashram': 4375, + 'Vijaya Bank Adugodi': 6404, + 'Hulimavu Gate': 1152, + 'Adugodi': 8191, + 'Austin Town': 9512, + 'Viveknagar': 9718, + 'Adugodi Signal': 8820, + 'Mico Layout': 4026, + 'Ashram HDFC Bank': 8827, + 'Lakkasandra Bus Stop': 5505, + 'Arakere BTS Layout': 7134, + 'Aneypalya': 8193, + 'Arakere Layout': 7134, + 'Bannerghatta Road': 2869, + 'Arakere Gate': 0, + 'Sagar Appolo Hospital': 4375, + 'Canara Bank': 6929, + 'BPL Stop': 277, + 'Mico Signal': 6226, + 'Udupi Guarden': 4196, + 'BTM': 4026, + 'Jayadeva Hospital Junction': 3229, + 'Arekere Gate': 0, + 'Ashram Bus Stop': 4375, + 'Ashram': 4375, + 'Spar Stop': 10785, + 'Koramangala Police Station': 8277, + 'Gottigere': 3884, + 'Silk Board': 5426, + 'Dairy Circle': 5717, + 'Thilaknagar': 4248, + 'Koramangala Depot': 8947 + }, + 'Sagar Appolo Hospital': { + 'Bosch Bidadi': 36873, + 'BTM 2nd stage': 1981, + 'Koramangala': 2562, + 'Anand Ashram': 0, + 'Vijaya Bank Adugodi': 2331, + 'Hulimavu Gate': 5394, + 'Adugodi': 4118, + 'Austin Town': 5439, + 'Viveknagar': 5645, + 'Adugodi Signal': 4747, + 'Mico Layout': 2591, + 'Ashram HDFC Bank': 4760, + 'Lakkasandra Bus Stop': 1432, + 'Arakere BTS Layout': 4202, + 'Aneypalya': 4120, + 'Arakere Layout': 4202, + 'Bannerghatta Road': 2548, + 'Arakere Gate': 4892, + 'Sagar Appolo Hospital': 0, + 'Canara Bank': 2856, + 'BPL Stop': 5169, + 'Mico Signal': 2153, + 'Udupi Guarden': 3073, + 'BTM': 2591, + 'Jayadeva Hospital Junction': 1657, + 'Arekere Gate': 4892, + 'Ashram Bus Stop': 0, + 'Ashram': 0, + 'Spar Stop': 6458, + 'Koramangala Police Station': 4204, + 'Gottigere': 8777, + 'Silk Board': 4387, + 'Dairy Circle': 1644, + 'Thilaknagar': 1063, + 'Koramangala Depot': 4874 + }, + 'Canara Bank': { + 'Bosch Bidadi': 36663, + 'BTM 2nd stage': 4456, + 'Koramangala': 2651, + 'Anand Ashram': 3245, + 'Vijaya Bank Adugodi': 2569, + 'Hulimavu Gate': 7874, + 'Adugodi': 3161, + 'Austin Town': 3248, + 'Viveknagar': 3454, + 'Adugodi Signal': 2555, + 'Mico Layout': 4643, + 'Ashram HDFC Bank': 4028, + 'Lakkasandra Bus Stop': 1670, + 'Arakere BTS Layout': 6753, + 'Aneypalya': 372, + 'Arakere Layout': 6753, + 'Bannerghatta Road': 4951, + 'Arakere Gate': 6944, + 'Sagar Appolo Hospital': 3245, + 'Canara Bank': 0, + 'BPL Stop': 7221, + 'Mico Signal': 1187, + 'Udupi Guarden': 5134, + 'BTM': 4643, + 'Jayadeva Hospital Junction': 3709, + 'Arekere Gate': 6944, + 'Ashram Bus Stop': 3245, + 'Ashram': 3245, + 'Spar Stop': 4653, + 'Koramangala Police Station': 4017, + 'Gottigere': 10829, + 'Silk Board': 7588, + 'Dairy Circle': 1863, + 'Thilaknagar': 3829, + 'Koramangala Depot': 4793 + }, + 'BPL Stop': { + 'Bosch Bidadi': 35486, + 'BTM 2nd stage': 3811, + 'Koramangala': 7577, + 'Anand Ashram': 5317, + 'Vijaya Bank Adugodi': 7347, + 'Hulimavu Gate': 1367, + 'Adugodi': 8975, + 'Austin Town': 10454, + 'Viveknagar': 10661, + 'Adugodi Signal': 9762, + 'Mico Layout': 4968, + 'Ashram HDFC Bank': 9763, + 'Lakkasandra Bus Stop': 6447, + 'Arakere BTS Layout': 8070, + 'Aneypalya': 9135, + 'Arakere Layout': 8070, + 'Bannerghatta Road': 3811, + 'Arakere Gate': 942, + 'Sagar Appolo Hospital': 5317, + 'Canara Bank': 7871, + 'BPL Stop': 0, + 'Mico Signal': 7168, + 'Udupi Guarden': 5522, + 'BTM': 4968, + 'Jayadeva Hospital Junction': 4171, + 'Arekere Gate': 942, + 'Ashram Bus Stop': 5317, + 'Ashram': 5317, + 'Spar Stop': 11720, + 'Koramangala Police Station': 9060, + 'Gottigere': 3608, + 'Silk Board': 6386, + 'Dairy Circle': 6659, + 'Thilaknagar': 5190, + 'Koramangala Depot': 9731 + }, + 'Mico Signal': { + 'Bosch Bidadi': 37101, + 'BTM 2nd stage': 5215, + 'Koramangala': 3423, + 'Anand Ashram': 4004, + 'Vijaya Bank Adugodi': 3324, + 'Hulimavu Gate': 8633, + 'Adugodi': 3199, + 'Austin Town': 3286, + 'Viveknagar': 3492, + 'Adugodi Signal': 2593, + 'Mico Layout': 5402, + 'Ashram HDFC Bank': 4466, + 'Lakkasandra Bus Stop': 2425, + 'Arakere BTS Layout': 7191, + 'Aneypalya': 1966, + 'Arakere Layout': 7191, + 'Bannerghatta Road': 5710, + 'Arakere Gate': 7703, + 'Sagar Appolo Hospital': 4004, + 'Canara Bank': 702, + 'BPL Stop': 7980, + 'Mico Signal': 0, + 'Udupi Guarden': 5892, + 'BTM': 5402, + 'Jayadeva Hospital Junction': 4468, + 'Arekere Gate': 7703, + 'Ashram Bus Stop': 4004, + 'Ashram': 4004, + 'Spar Stop': 5030, + 'Koramangala Police Station': 4055, + 'Gottigere': 11588, + 'Silk Board': 7627, + 'Dairy Circle': 2491, + 'Thilaknagar': 4587, + 'Koramangala Depot': 4831 + }, + 'Udupi Guarden': { + 'Bosch Bidadi': 40272, + 'BTM 2nd stage': 2021, + 'Koramangala': 2545, + 'Anand Ashram': 3312, + 'Vijaya Bank Adugodi': 4622, + 'Hulimavu Gate': 5440, + 'Adugodi': 3616, + 'Austin Town': 6423, + 'Viveknagar': 5597, + 'Adugodi Signal': 3721, + 'Mico Layout': 1201, + 'Ashram HDFC Bank': 7503, + 'Lakkasandra Bus Stop': 3723, + 'Arakere BTS Layout': 5938, + 'Aneypalya': 4901, + 'Arakere Layout': 5938, + 'Bannerghatta Road': 2515, + 'Arakere Gate': 4509, + 'Sagar Appolo Hospital': 3312, + 'Canara Bank': 5147, + 'BPL Stop': 4786, + 'Mico Signal': 4444, + 'Udupi Guarden': 0, + 'BTM': 1201, + 'Jayadeva Hospital Junction': 2600, + 'Arekere Gate': 4509, + 'Ashram Bus Stop': 3312, + 'Ashram': 3312, + 'Spar Stop': 9461, + 'Koramangala Police Station': 3702, + 'Gottigere': 8394, + 'Silk Board': 1829, + 'Dairy Circle': 3935, + 'Thilaknagar': 2484, + 'Koramangala Depot': 4372 + }, + 'BTM': { + 'Bosch Bidadi': 39106, + 'BTM 2nd stage': 855, + 'Koramangala': 4410, + 'Anand Ashram': 2146, + 'Vijaya Bank Adugodi': 4179, + 'Hulimavu Gate': 4274, + 'Adugodi': 4963, + 'Austin Town': 7287, + 'Viveknagar': 7493, + 'Adugodi Signal': 6594, + 'Mico Layout': 0, + 'Ashram HDFC Bank': 6337, + 'Lakkasandra Bus Stop': 3280, + 'Arakere BTS Layout': 4773, + 'Aneypalya': 5967, + 'Arakere Layout': 4773, + 'Bannerghatta Road': 1349, + 'Arakere Gate': 3344, + 'Sagar Appolo Hospital': 2146, + 'Canara Bank': 4703, + 'BPL Stop': 3621, + 'Mico Signal': 4001, + 'Udupi Guarden': 1625, + 'BTM': 0, + 'Jayadeva Hospital Junction': 1434, + 'Arekere Gate': 3344, + 'Ashram Bus Stop': 2146, + 'Ashram': 2146, + 'Spar Stop': 8295, + 'Koramangala Police Station': 5048, + 'Gottigere': 7228, + 'Silk Board': 2938, + 'Dairy Circle': 3492, + 'Thilaknagar': 1318, + 'Koramangala Depot': 5719 + }, + 'Jayadeva Hospital Junction': { + 'Bosch Bidadi': 38998, + 'BTM 2nd stage': 1667, + 'Koramangala': 3406, + 'Anand Ashram': 1146, + 'Vijaya Bank Adugodi': 3175, + 'Hulimavu Gate': 4166, + 'Adugodi': 4962, + 'Austin Town': 6283, + 'Viveknagar': 6489, + 'Adugodi Signal': 5591, + 'Mico Layout': 934, + 'Ashram HDFC Bank': 6031, + 'Lakkasandra Bus Stop': 2276, + 'Arakere BTS Layout': 4466, + 'Aneypalya': 4964, + 'Arakere Layout': 4466, + 'Bannerghatta Road': 1949, + 'Arakere Gate': 3236, + 'Sagar Appolo Hospital': 1146, + 'Canara Bank': 3700, + 'BPL Stop': 3512, + 'Mico Signal': 2997, + 'Udupi Guarden': 2092, + 'BTM': 934, + 'Jayadeva Hospital Junction': 0, + 'Arekere Gate': 3236, + 'Ashram Bus Stop': 1146, + 'Ashram': 1146, + 'Spar Stop': 7302, + 'Koramangala Police Station': 5048, + 'Gottigere': 7120, + 'Silk Board': 3405, + 'Dairy Circle': 2488, + 'Thilaknagar': 1019, + 'Koramangala Depot': 5718 + }, + 'Arekere Gate': { + 'Bosch Bidadi': 35762, + 'BTM 2nd stage': 2869, + 'Koramangala': 6635, + 'Anand Ashram': 4375, + 'Vijaya Bank Adugodi': 6404, + 'Hulimavu Gate': 1152, + 'Adugodi': 8191, + 'Austin Town': 9512, + 'Viveknagar': 9718, + 'Adugodi Signal': 8820, + 'Mico Layout': 4026, + 'Ashram HDFC Bank': 8827, + 'Lakkasandra Bus Stop': 5505, + 'Arakere BTS Layout': 7134, + 'Aneypalya': 8193, + 'Arakere Layout': 7134, + 'Bannerghatta Road': 2869, + 'Arakere Gate': 0, + 'Sagar Appolo Hospital': 4375, + 'Canara Bank': 6929, + 'BPL Stop': 277, + 'Mico Signal': 6226, + 'Udupi Guarden': 4196, + 'BTM': 4026, + 'Jayadeva Hospital Junction': 3229, + 'Arekere Gate': 0, + 'Ashram Bus Stop': 4375, + 'Ashram': 4375, + 'Spar Stop': 10785, + 'Koramangala Police Station': 8277, + 'Gottigere': 3884, + 'Silk Board': 5426, + 'Dairy Circle': 5717, + 'Thilaknagar': 4248, + 'Koramangala Depot': 8947 + }, + 'Ashram Bus Stop': { + 'Bosch Bidadi': 36873, + 'BTM 2nd stage': 1981, + 'Koramangala': 2562, + 'Anand Ashram': 0, + 'Vijaya Bank Adugodi': 2331, + 'Hulimavu Gate': 5394, + 'Adugodi': 4118, + 'Austin Town': 5439, + 'Viveknagar': 5645, + 'Adugodi Signal': 4747, + 'Mico Layout': 2591, + 'Ashram HDFC Bank': 4760, + 'Lakkasandra Bus Stop': 1432, + 'Arakere BTS Layout': 4202, + 'Aneypalya': 4120, + 'Arakere Layout': 4202, + 'Bannerghatta Road': 2548, + 'Arakere Gate': 4892, + 'Sagar Appolo Hospital': 0, + 'Canara Bank': 2856, + 'BPL Stop': 5169, + 'Mico Signal': 2153, + 'Udupi Guarden': 3073, + 'BTM': 2591, + 'Jayadeva Hospital Junction': 1657, + 'Arekere Gate': 4892, + 'Ashram Bus Stop': 0, + 'Ashram': 0, + 'Spar Stop': 6458, + 'Koramangala Police Station': 4204, + 'Gottigere': 8777, + 'Silk Board': 4387, + 'Dairy Circle': 1644, + 'Thilaknagar': 1063, + 'Koramangala Depot': 4874 + }, + 'Ashram': { + 'Bosch Bidadi': 36873, + 'BTM 2nd stage': 1981, + 'Koramangala': 2562, + 'Anand Ashram': 0, + 'Vijaya Bank Adugodi': 2331, + 'Hulimavu Gate': 5394, + 'Adugodi': 4118, + 'Austin Town': 5439, + 'Viveknagar': 5645, + 'Adugodi Signal': 4747, + 'Mico Layout': 2591, + 'Ashram HDFC Bank': 4760, + 'Lakkasandra Bus Stop': 1432, + 'Arakere BTS Layout': 4202, + 'Aneypalya': 4120, + 'Arakere Layout': 4202, + 'Bannerghatta Road': 2548, + 'Arakere Gate': 4892, + 'Sagar Appolo Hospital': 0, + 'Canara Bank': 2856, + 'BPL Stop': 5169, + 'Mico Signal': 2153, + 'Udupi Guarden': 3073, + 'BTM': 2591, + 'Jayadeva Hospital Junction': 1657, + 'Arekere Gate': 4892, + 'Ashram Bus Stop': 0, + 'Ashram': 0, + 'Spar Stop': 6458, + 'Koramangala Police Station': 4204, + 'Gottigere': 8777, + 'Silk Board': 4387, + 'Dairy Circle': 1644, + 'Thilaknagar': 1063, + 'Koramangala Depot': 4874 + }, + 'Spar Stop': { + 'Bosch Bidadi': 29028, + 'BTM 2nd stage': 8386, + 'Koramangala': 6734, + 'Anand Ashram': 6572, + 'Vijaya Bank Adugodi': 5784, + 'Hulimavu Gate': 10875, + 'Adugodi': 6453, + 'Austin Town': 6850, + 'Viveknagar': 6746, + 'Adugodi Signal': 5847, + 'Mico Layout': 8712, + 'Ashram HDFC Bank': 2638, + 'Lakkasandra Bus Stop': 5736, + 'Arakere BTS Layout': 5729, + 'Aneypalya': 4782, + 'Arakere Layout': 5729, + 'Bannerghatta Road': 8953, + 'Arakere Gate': 11014, + 'Sagar Appolo Hospital': 6572, + 'Canara Bank': 4451, + 'BPL Stop': 11291, + 'Mico Signal': 5429, + 'Udupi Guarden': 9158, + 'BTM': 8712, + 'Jayadeva Hospital Junction': 7779, + 'Arekere Gate': 11014, + 'Ashram Bus Stop': 6572, + 'Ashram': 6572, + 'Spar Stop': 0, + 'Koramangala Police Station': 7309, + 'Gottigere': 26726, + 'Silk Board': 11195, + 'Dairy Circle': 5802, + 'Thilaknagar': 7148, + 'Koramangala Depot': 8085 + }, + 'Koramangala Police Station': { + 'Bosch Bidadi': 39125, + 'BTM 2nd stage': 5785, + 'Koramangala': 1403, + 'Anand Ashram': 4574, + 'Vijaya Bank Adugodi': 3898, + 'Hulimavu Gate': 9204, + 'Adugodi': 2381, + 'Austin Town': 4205, + 'Viveknagar': 1995, + 'Adugodi Signal': 1535, + 'Mico Layout': 5972, + 'Ashram HDFC Bank': 6489, + 'Lakkasandra Bus Stop': 2999, + 'Arakere BTS Layout': 8297, + 'Aneypalya': 2747, + 'Arakere Layout': 8297, + 'Bannerghatta Road': 6280, + 'Arakere Gate': 8274, + 'Sagar Appolo Hospital': 4574, + 'Canara Bank': 2726, + 'BPL Stop': 8550, + 'Mico Signal': 2516, + 'Udupi Guarden': 4487, + 'BTM': 5972, + 'Jayadeva Hospital Junction': 5038, + 'Arekere Gate': 8274, + 'Ashram Bus Stop': 4574, + 'Ashram': 4574, + 'Spar Stop': 7053, + 'Koramangala Police Station': 0, + 'Gottigere': 12158, + 'Silk Board': 4495, + 'Dairy Circle': 3192, + 'Thilaknagar': 5158, + 'Koramangala Depot': 769 + }, + 'Gottigere': { + 'Bosch Bidadi': 31878, + 'BTM 2nd stage': 6746, + 'Koramangala': 10512, + 'Anand Ashram': 8252, + 'Vijaya Bank Adugodi': 10282, + 'Hulimavu Gate': 4302, + 'Adugodi': 11944, + 'Austin Town': 13390, + 'Viveknagar': 13596, + 'Adugodi Signal': 12697, + 'Mico Layout': 7904, + 'Ashram HDFC Bank': 12698, + 'Lakkasandra Bus Stop': 9382, + 'Arakere BTS Layout': 10244, + 'Aneypalya': 12070, + 'Arakere Layout': 10244, + 'Bannerghatta Road': 6746, + 'Arakere Gate': 3877, + 'Sagar Appolo Hospital': 8252, + 'Canara Bank': 10806, + 'BPL Stop': 3698, + 'Mico Signal': 10104, + 'Udupi Guarden': 8073, + 'BTM': 7904, + 'Jayadeva Hospital Junction': 7106, + 'Arekere Gate': 3877, + 'Ashram Bus Stop': 8252, + 'Ashram': 8252, + 'Spar Stop': 28135, + 'Koramangala Police Station': 12029, + 'Gottigere': 0, + 'Silk Board': 9355, + 'Dairy Circle': 9594, + 'Thilaknagar': 8125, + 'Koramangala Depot': 12700 + }, + 'Silk Board': { + 'Bosch Bidadi': 40736, + 'BTM 2nd stage': 3006, + 'Koramangala': 3687, + 'Anand Ashram': 4297, + 'Vijaya Bank Adugodi': 6330, + 'Hulimavu Gate': 5904, + 'Adugodi': 4861, + 'Austin Town': 7667, + 'Viveknagar': 6842, + 'Adugodi Signal': 4965, + 'Mico Layout': 2187, + 'Ashram HDFC Bank': 8488, + 'Lakkasandra Bus Stop': 5431, + 'Arakere BTS Layout': 6924, + 'Aneypalya': 6145, + 'Arakere Layout': 6924, + 'Bannerghatta Road': 3500, + 'Arakere Gate': 4974, + 'Sagar Appolo Hospital': 4297, + 'Canara Bank': 6123, + 'BPL Stop': 5251, + 'Mico Signal': 6152, + 'Udupi Guarden': 1540, + 'BTM': 2187, + 'Jayadeva Hospital Junction': 3586, + 'Arekere Gate': 4974, + 'Ashram Bus Stop': 4297, + 'Ashram': 4297, + 'Spar Stop': 10446, + 'Koramangala Police Station': 4946, + 'Gottigere': 8858, + 'Silk Board': 0, + 'Dairy Circle': 5643, + 'Thilaknagar': 3469, + 'Koramangala Depot': 5616 + }, + 'Dairy Circle': { + 'Bosch Bidadi': 38032, + 'BTM 2nd stage': 3683, + 'Koramangala': 1878, + 'Anand Ashram': 2472, + 'Vijaya Bank Adugodi': 1796, + 'Hulimavu Gate': 7101, + 'Adugodi': 3949, + 'Austin Town': 4036, + 'Viveknagar': 4242, + 'Adugodi Signal': 3344, + 'Mico Layout': 3869, + 'Ashram HDFC Bank': 5397, + 'Lakkasandra Bus Stop': 896, + 'Arakere BTS Layout': 6194, + 'Aneypalya': 2717, + 'Arakere Layout': 6194, + 'Bannerghatta Road': 4177, + 'Arakere Gate': 6171, + 'Sagar Appolo Hospital': 2472, + 'Canara Bank': 1453, + 'BPL Stop': 6448, + 'Mico Signal': 750, + 'Udupi Guarden': 4360, + 'BTM': 3869, + 'Jayadeva Hospital Junction': 2935, + 'Arekere Gate': 6171, + 'Ashram Bus Stop': 2472, + 'Ashram': 2472, + 'Spar Stop': 5923, + 'Koramangala Police Station': 4805, + 'Gottigere': 10055, + 'Silk Board': 6352, + 'Dairy Circle': 0, + 'Thilaknagar': 3055, + 'Koramangala Depot': 5581 + }, + 'Thilaknagar': { + 'Bosch Bidadi': 39773, + 'BTM 2nd stage': 1335, + 'Koramangala': 3355, + 'Anand Ashram': 1095, + 'Vijaya Bank Adugodi': 3125, + 'Hulimavu Gate': 4941, + 'Adugodi': 4912, + 'Austin Town': 6233, + 'Viveknagar': 6439, + 'Adugodi Signal': 5540, + 'Mico Layout': 1709, + 'Ashram HDFC Bank': 5309, + 'Lakkasandra Bus Stop': 2225, + 'Arakere BTS Layout': 4037, + 'Aneypalya': 4913, + 'Arakere Layout': 4037, + 'Bannerghatta Road': 2017, + 'Arakere Gate': 4011, + 'Sagar Appolo Hospital': 1095, + 'Canara Bank': 3649, + 'BPL Stop': 4288, + 'Mico Signal': 2947, + 'Udupi Guarden': 2200, + 'BTM': 1709, + 'Jayadeva Hospital Junction': 775, + 'Arekere Gate': 4011, + 'Ashram Bus Stop': 1095, + 'Ashram': 1095, + 'Spar Stop': 7267, + 'Koramangala Police Station': 4997, + 'Gottigere': 7895, + 'Silk Board': 3513, + 'Dairy Circle': 2437, + 'Thilaknagar': 0, + 'Koramangala Depot': 5668 + }, + 'Koramangala Depot': { + 'Bosch Bidadi': 52052, + 'BTM 2nd stage': 6281, + 'Koramangala': 1773, + 'Anand Ashram': 5070, + 'Vijaya Bank Adugodi': 4394, + 'Hulimavu Gate': 9699, + 'Adugodi': 2751, + 'Austin Town': 3881, + 'Viveknagar': 1671, + 'Adugodi Signal': 2031, + 'Mico Layout': 6467, + 'Ashram HDFC Bank': 6985, + 'Lakkasandra Bus Stop': 3495, + 'Arakere BTS Layout': 8793, + 'Aneypalya': 3243, + 'Arakere Layout': 8793, + 'Bannerghatta Road': 6776, + 'Arakere Gate': 8769, + 'Sagar Appolo Hospital': 5070, + 'Canara Bank': 3222, + 'BPL Stop': 9046, + 'Mico Signal': 3011, + 'Udupi Guarden': 4857, + 'BTM': 6467, + 'Jayadeva Hospital Junction': 5534, + 'Arekere Gate': 8769, + 'Ashram Bus Stop': 5070, + 'Ashram': 5070, + 'Spar Stop': 7549, + 'Koramangala Police Station': 489, + 'Gottigere': 12654, + 'Silk Board': 4865, + 'Dairy Circle': 3688, + 'Thilaknagar': 5653, + 'Koramangala Depot': 0 + } +} +timematrix = { + 'Bosch Bidadi': { + 'Bosch Bidadi': 0, + 'BTM 2nd stage': 4074, + 'Koramangala': 4583, + 'Anand Ashram': 4172, + 'Vijaya Bank Adugodi': 4303, + 'Hulimavu Gate': 3591, + 'Adugodi': 4902, + 'Austin Town': 5022, + 'Viveknagar': 5038, + 'Adugodi Signal': 4790, + 'Mico Layout': 4501, + 'Ashram HDFC Bank': 3720, + 'Lakkasandra Bus Stop': 4354, + 'Arakere BTS Layout': 3345, + 'Aneypalya': 4417, + 'Arakere Layout': 3345, + 'Bannerghatta Road': 4010, + 'Arakere Gate': 3533, + 'Sagar Appolo Hospital': 4172, + 'Canara Bank': 4308, + 'BPL Stop': 3464, + 'Mico Signal': 4455, + 'Udupi Guarden': 4544, + 'BTM': 4501, + 'Jayadeva Hospital Junction': 4147, + 'Arekere Gate': 3533, + 'Ashram Bus Stop': 4172, + 'Ashram': 4172, + 'Spar Stop': 3461, + 'Koramangala Police Station': 4954, + 'Gottigere': 2776, + 'Silk Board': 4318, + 'Dairy Circle': 4399, + 'Thilaknagar': 4112, + 'Koramangala Depot': 5078 + }, + 'BTM 2nd stage': { + 'Bosch Bidadi': 3855, + 'BTM 2nd stage': 0, + 'Koramangala': 829, + 'Anand Ashram': 374, + 'Vijaya Bank Adugodi': 737, + 'Hulimavu Gate': 842, + 'Adugodi': 1257, + 'Austin Town': 1516, + 'Viveknagar': 1405, + 'Adugodi Signal': 1157, + 'Mico Layout': 431, + 'Ashram HDFC Bank': 1175, + 'Lakkasandra Bus Stop': 565, + 'Arakere BTS Layout': 880, + 'Aneypalya': 1090, + 'Arakere Layout': 880, + 'Bannerghatta Road': 144, + 'Arakere Gate': 663, + 'Sagar Appolo Hospital': 374, + 'Canara Bank': 872, + 'BPL Stop': 713, + 'Mico Signal': 693, + 'Udupi Guarden': 558, + 'BTM': 431, + 'Jayadeva Hospital Junction': 117, + 'Arekere Gate': 663, + 'Ashram Bus Stop': 374, + 'Ashram': 374, + 'Spar Stop': 1546, + 'Koramangala Police Station': 1308, + 'Gottigere': 1327, + 'Silk Board': 933, + 'Dairy Circle': 622, + 'Thilaknagar': 404, + 'Koramangala Depot': 1432 + }, + 'Koramangala': { + 'Bosch Bidadi': 4456, + 'BTM 2nd stage': 1043, + 'Koramangala': 0, + 'Anand Ashram': 885, + 'Vijaya Bank Adugodi': 670, + 'Hulimavu Gate': 1797, + 'Adugodi': 219, + 'Austin Town': 924, + 'Viveknagar': 777, + 'Adugodi Signal': 264, + 'Mico Layout': 1083, + 'Ashram HDFC Bank': 1282, + 'Lakkasandra Bus Stop': 499, + 'Arakere BTS Layout': 1490, + 'Aneypalya': 463, + 'Arakere Layout': 1490, + 'Bannerghatta Road': 1161, + 'Arakere Gate': 1537, + 'Sagar Appolo Hospital': 885, + 'Canara Bank': 546, + 'BPL Stop': 1588, + 'Mico Signal': 506, + 'Udupi Guarden': 1074, + 'BTM': 1083, + 'Jayadeva Hospital Junction': 889, + 'Arekere Gate': 1537, + 'Ashram Bus Stop': 885, + 'Ashram': 885, + 'Spar Stop': 1495, + 'Koramangala Police Station': 406, + 'Gottigere': 2202, + 'Silk Board': 953, + 'Dairy Circle': 567, + 'Thilaknagar': 979, + 'Koramangala Depot': 530 + }, + 'Anand Ashram': { + 'Bosch Bidadi': 3941, + 'BTM 2nd stage': 469, + 'Koramangala': 561, + 'Anand Ashram': 0, + 'Vijaya Bank Adugodi': 469, + 'Hulimavu Gate': 1196, + 'Adugodi': 989, + 'Austin Town': 1248, + 'Viveknagar': 1137, + 'Adugodi Signal': 889, + 'Mico Layout': 567, + 'Ashram HDFC Bank': 985, + 'Lakkasandra Bus Stop': 297, + 'Arakere BTS Layout': 791, + 'Aneypalya': 822, + 'Arakere Layout': 791, + 'Bannerghatta Road': 613, + 'Arakere Gate': 1021, + 'Sagar Appolo Hospital': 0, + 'Canara Bank': 604, + 'BPL Stop': 1071, + 'Mico Signal': 425, + 'Udupi Guarden': 716, + 'BTM': 567, + 'Jayadeva Hospital Junction': 373, + 'Arekere Gate': 1021, + 'Ashram Bus Stop': 0, + 'Ashram': 0, + 'Spar Stop': 1371, + 'Koramangala Police Station': 1040, + 'Gottigere': 1686, + 'Silk Board': 1091, + 'Dairy Circle': 354, + 'Thilaknagar': 279, + 'Koramangala Depot': 1164 + }, + 'Vijaya Bank Adugodi': { + 'Bosch Bidadi': 4036, + 'BTM 2nd stage': 843, + 'Koramangala': 887, + 'Anand Ashram': 600, + 'Vijaya Bank Adugodi': 0, + 'Hulimavu Gate': 1553, + 'Adugodi': 1058, + 'Austin Town': 1264, + 'Viveknagar': 1153, + 'Adugodi Signal': 905, + 'Mico Layout': 987, + 'Ashram HDFC Bank': 862, + 'Lakkasandra Bus Stop': 658, + 'Arakere BTS Layout': 1047, + 'Aneypalya': 546, + 'Arakere Layout': 1047, + 'Bannerghatta Road': 987, + 'Arakere Gate': 1441, + 'Sagar Appolo Hospital': 600, + 'Canara Bank': 437, + 'BPL Stop': 1491, + 'Mico Signal': 759, + 'Udupi Guarden': 1130, + 'BTM': 987, + 'Jayadeva Hospital Junction': 793, + 'Arekere Gate': 1441, + 'Ashram Bus Stop': 600, + 'Ashram': 600, + 'Spar Stop': 1101, + 'Koramangala Police Station': 1266, + 'Gottigere': 2105, + 'Silk Board': 1505, + 'Dairy Circle': 703, + 'Thilaknagar': 694, + 'Koramangala Depot': 1432 + }, + 'Hulimavu Gate': { + 'Bosch Bidadi': 3329, + 'BTM 2nd stage': 840, + 'Koramangala': 1650, + 'Anand Ashram': 1195, + 'Vijaya Bank Adugodi': 1558, + 'Hulimavu Gate': 0, + 'Adugodi': 2078, + 'Austin Town': 2337, + 'Viveknagar': 2226, + 'Adugodi Signal': 1978, + 'Mico Layout': 1148, + 'Ashram HDFC Bank': 1777, + 'Lakkasandra Bus Stop': 1386, + 'Arakere BTS Layout': 1487, + 'Aneypalya': 1912, + 'Arakere Layout': 1487, + 'Bannerghatta Road': 772, + 'Arakere Gate': 255, + 'Sagar Appolo Hospital': 1195, + 'Canara Bank': 1693, + 'BPL Stop': 187, + 'Mico Signal': 1514, + 'Udupi Guarden': 1333, + 'BTM': 1148, + 'Jayadeva Hospital Junction': 939, + 'Arekere Gate': 255, + 'Ashram Bus Stop': 1195, + 'Ashram': 1195, + 'Spar Stop': 2147, + 'Koramangala Police Station': 2129, + 'Gottigere': 801, + 'Silk Board': 1471, + 'Dairy Circle': 1444, + 'Thilaknagar': 1107, + 'Koramangala Depot': 2253 + }, + 'Adugodi': { + 'Bosch Bidadi': 4237, + 'BTM 2nd stage': 825, + 'Koramangala': 449, + 'Anand Ashram': 667, + 'Vijaya Bank Adugodi': 452, + 'Hulimavu Gate': 1579, + 'Adugodi': 0, + 'Austin Town': 706, + 'Viveknagar': 595, + 'Adugodi Signal': 45, + 'Mico Layout': 865, + 'Ashram HDFC Bank': 1063, + 'Lakkasandra Bus Stop': 280, + 'Arakere BTS Layout': 1272, + 'Aneypalya': 244, + 'Arakere Layout': 1272, + 'Bannerghatta Road': 943, + 'Arakere Gate': 1319, + 'Sagar Appolo Hospital': 667, + 'Canara Bank': 327, + 'BPL Stop': 1369, + 'Mico Signal': 287, + 'Udupi Guarden': 1070, + 'BTM': 865, + 'Jayadeva Hospital Junction': 671, + 'Arekere Gate': 1319, + 'Ashram Bus Stop': 667, + 'Ashram': 667, + 'Spar Stop': 1276, + 'Koramangala Police Station': 429, + 'Gottigere': 1983, + 'Silk Board': 983, + 'Dairy Circle': 348, + 'Thilaknagar': 761, + 'Koramangala Depot': 595 + }, + 'Austin Town': { + 'Bosch Bidadi': 4529, + 'BTM 2nd stage': 1455, + 'Koramangala': 1027, + 'Anand Ashram': 1297, + 'Vijaya Bank Adugodi': 1082, + 'Hulimavu Gate': 2209, + 'Adugodi': 776, + 'Austin Town': 0, + 'Viveknagar': 600, + 'Adugodi Signal': 623, + 'Mico Layout': 1495, + 'Ashram HDFC Bank': 1312, + 'Lakkasandra Bus Stop': 911, + 'Arakere BTS Layout': 1902, + 'Aneypalya': 777, + 'Arakere Layout': 1902, + 'Bannerghatta Road': 1573, + 'Arakere Gate': 1949, + 'Sagar Appolo Hospital': 1297, + 'Canara Bank': 949, + 'BPL Stop': 2000, + 'Mico Signal': 918, + 'Udupi Guarden': 1700, + 'BTM': 1495, + 'Jayadeva Hospital Junction': 1301, + 'Arekere Gate': 1949, + 'Ashram Bus Stop': 1297, + 'Ashram': 1297, + 'Spar Stop': 1417, + 'Koramangala Police Station': 866, + 'Gottigere': 2614, + 'Silk Board': 1561, + 'Dairy Circle': 979, + 'Thilaknagar': 1391, + 'Koramangala Depot': 1000 + }, + 'Viveknagar': { + 'Bosch Bidadi': 4739, + 'BTM 2nd stage': 1304, + 'Koramangala': 736, + 'Anand Ashram': 1146, + 'Vijaya Bank Adugodi': 932, + 'Hulimavu Gate': 2058, + 'Adugodi': 625, + 'Austin Town': 642, + 'Viveknagar': 0, + 'Adugodi Signal': 472, + 'Mico Layout': 1345, + 'Ashram HDFC Bank': 1543, + 'Lakkasandra Bus Stop': 760, + 'Arakere BTS Layout': 1752, + 'Aneypalya': 712, + 'Arakere Layout': 1752, + 'Bannerghatta Road': 1423, + 'Arakere Gate': 1799, + 'Sagar Appolo Hospital': 1146, + 'Canara Bank': 807, + 'BPL Stop': 1849, + 'Mico Signal': 767, + 'Udupi Guarden': 1549, + 'BTM': 1345, + 'Jayadeva Hospital Junction': 1151, + 'Arekere Gate': 1799, + 'Ashram Bus Stop': 1146, + 'Ashram': 1146, + 'Spar Stop': 1626, + 'Koramangala Police Station': 464, + 'Gottigere': 2463, + 'Silk Board': 1332, + 'Dairy Circle': 828, + 'Thilaknagar': 1240, + 'Koramangala Depot': 598 + }, + 'Adugodi Signal': { + 'Bosch Bidadi': 4390, + 'BTM 2nd stage': 978, + 'Koramangala': 404, + 'Anand Ashram': 820, + 'Vijaya Bank Adugodi': 605, + 'Hulimavu Gate': 1732, + 'Adugodi': 153, + 'Austin Town': 859, + 'Viveknagar': 761, + 'Adugodi Signal': 0, + 'Mico Layout': 1018, + 'Ashram HDFC Bank': 1216, + 'Lakkasandra Bus Stop': 433, + 'Arakere BTS Layout': 1425, + 'Aneypalya': 397, + 'Arakere Layout': 1425, + 'Bannerghatta Road': 1096, + 'Arakere Gate': 1472, + 'Sagar Appolo Hospital': 820, + 'Canara Bank': 480, + 'BPL Stop': 1522, + 'Mico Signal': 440, + 'Udupi Guarden': 1059, + 'BTM': 1018, + 'Jayadeva Hospital Junction': 824, + 'Arekere Gate': 1472, + 'Ashram Bus Stop': 820, + 'Ashram': 820, + 'Spar Stop': 1429, + 'Koramangala Police Station': 391, + 'Gottigere': 2137, + 'Silk Board': 938, + 'Dairy Circle': 501, + 'Thilaknagar': 914, + 'Koramangala Depot': 515 + }, + 'Mico Layout': { + 'Bosch Bidadi': 3913, + 'BTM 2nd stage': 179, + 'Koramangala': 933, + 'Anand Ashram': 498, + 'Vijaya Bank Adugodi': 841, + 'Hulimavu Gate': 980, + 'Adugodi': 1194, + 'Austin Town': 1620, + 'Viveknagar': 1509, + 'Adugodi Signal': 1261, + 'Mico Layout': 0, + 'Ashram HDFC Bank': 1218, + 'Lakkasandra Bus Stop': 669, + 'Arakere BTS Layout': 923, + 'Aneypalya': 1194, + 'Arakere Layout': 923, + 'Bannerghatta Road': 297, + 'Arakere Gate': 720, + 'Sagar Appolo Hospital': 498, + 'Canara Bank': 976, + 'BPL Stop': 770, + 'Mico Signal': 797, + 'Udupi Guarden': 428, + 'BTM': 0, + 'Jayadeva Hospital Junction': 257, + 'Arekere Gate': 720, + 'Ashram Bus Stop': 498, + 'Ashram': 498, + 'Spar Stop': 1589, + 'Koramangala Police Station': 1245, + 'Gottigere': 1385, + 'Silk Board': 803, + 'Dairy Circle': 727, + 'Thilaknagar': 384, + 'Koramangala Depot': 1369 + }, + 'Ashram HDFC Bank': { + 'Bosch Bidadi': 3501, + 'BTM 2nd stage': 1104, + 'Koramangala': 971, + 'Anand Ashram': 924, + 'Vijaya Bank Adugodi': 742, + 'Hulimavu Gate': 1857, + 'Adugodi': 1316, + 'Austin Town': 1469, + 'Viveknagar': 1411, + 'Adugodi Signal': 1163, + 'Mico Layout': 1258, + 'Ashram HDFC Bank': 0, + 'Lakkasandra Bus Stop': 741, + 'Arakere BTS Layout': 844, + 'Aneypalya': 805, + 'Arakere Layout': 844, + 'Bannerghatta Road': 1247, + 'Arakere Gate': 1712, + 'Sagar Appolo Hospital': 924, + 'Canara Bank': 696, + 'BPL Stop': 1762, + 'Mico Signal': 843, + 'Udupi Guarden': 1407, + 'BTM': 1258, + 'Jayadeva Hospital Junction': 1064, + 'Arekere Gate': 1712, + 'Ashram Bus Stop': 924, + 'Ashram': 924, + 'Spar Stop': 578, + 'Koramangala Police Station': 1525, + 'Gottigere': 2376, + 'Silk Board': 1781, + 'Dairy Circle': 786, + 'Thilaknagar': 970, + 'Koramangala Depot': 1690 + }, + 'Lakkasandra Bus Stop': { + 'Bosch Bidadi': 4009, + 'BTM 2nd stage': 897, + 'Koramangala': 861, + 'Anand Ashram': 653, + 'Vijaya Bank Adugodi': 172, + 'Hulimavu Gate': 1607, + 'Adugodi': 1031, + 'Austin Town': 1237, + 'Viveknagar': 1126, + 'Adugodi Signal': 878, + 'Mico Layout': 1040, + 'Ashram HDFC Bank': 835, + 'Lakkasandra Bus Stop': 0, + 'Arakere BTS Layout': 1100, + 'Aneypalya': 520, + 'Arakere Layout': 1100, + 'Bannerghatta Road': 1040, + 'Arakere Gate': 1494, + 'Sagar Appolo Hospital': 653, + 'Canara Bank': 411, + 'BPL Stop': 1544, + 'Mico Signal': 734, + 'Udupi Guarden': 1184, + 'BTM': 1040, + 'Jayadeva Hospital Junction': 846, + 'Arekere Gate': 1494, + 'Ashram Bus Stop': 653, + 'Ashram': 653, + 'Spar Stop': 1074, + 'Koramangala Police Station': 1240, + 'Gottigere': 2159, + 'Silk Board': 1558, + 'Dairy Circle': 677, + 'Thilaknagar': 747, + 'Koramangala Depot': 1405 + }, + 'Arakere BTS Layout': { + 'Bosch Bidadi': 3231, + 'BTM 2nd stage': 934, + 'Koramangala': 1342, + 'Anand Ashram': 926, + 'Vijaya Bank Adugodi': 1119, + 'Hulimavu Gate': 1346, + 'Adugodi': 1809, + 'Austin Town': 2029, + 'Viveknagar': 1918, + 'Adugodi Signal': 1670, + 'Mico Layout': 1134, + 'Ashram HDFC Bank': 865, + 'Lakkasandra Bus Stop': 1078, + 'Arakere BTS Layout': 0, + 'Aneypalya': 1479, + 'Arakere Layout': 0, + 'Bannerghatta Road': 918, + 'Arakere Gate': 1326, + 'Sagar Appolo Hospital': 926, + 'Canara Bank': 1370, + 'BPL Stop': 1376, + 'Mico Signal': 1206, + 'Udupi Guarden': 1240, + 'BTM': 1134, + 'Jayadeva Hospital Junction': 940, + 'Arekere Gate': 1326, + 'Ashram Bus Stop': 926, + 'Ashram': 926, + 'Spar Stop': 1096, + 'Koramangala Police Station': 1860, + 'Gottigere': 1879, + 'Silk Board': 1614, + 'Dairy Circle': 1136, + 'Thilaknagar': 882, + 'Koramangala Depot': 1984 + }, + 'Aneypalya': { + 'Bosch Bidadi': 4082, + 'BTM 2nd stage': 786, + 'Koramangala': 486, + 'Anand Ashram': 628, + 'Vijaya Bank Adugodi': 413, + 'Hulimavu Gate': 1540, + 'Adugodi': 866, + 'Austin Town': 1072, + 'Viveknagar': 961, + 'Adugodi Signal': 713, + 'Mico Layout': 826, + 'Ashram HDFC Bank': 908, + 'Lakkasandra Bus Stop': 242, + 'Arakere BTS Layout': 1233, + 'Aneypalya': 0, + 'Arakere Layout': 1233, + 'Bannerghatta Road': 904, + 'Arakere Gate': 1280, + 'Sagar Appolo Hospital': 628, + 'Canara Bank': 172, + 'BPL Stop': 1331, + 'Mico Signal': 249, + 'Udupi Guarden': 1031, + 'BTM': 826, + 'Jayadeva Hospital Junction': 632, + 'Arekere Gate': 1280, + 'Ashram Bus Stop': 628, + 'Ashram': 628, + 'Spar Stop': 1121, + 'Koramangala Police Station': 1074, + 'Gottigere': 1945, + 'Silk Board': 1370, + 'Dairy Circle': 310, + 'Thilaknagar': 722, + 'Koramangala Depot': 1240 + }, + 'Arakere Layout': { + 'Bosch Bidadi': 3231, + 'BTM 2nd stage': 934, + 'Koramangala': 1342, + 'Anand Ashram': 926, + 'Vijaya Bank Adugodi': 1119, + 'Hulimavu Gate': 1346, + 'Adugodi': 1809, + 'Austin Town': 2029, + 'Viveknagar': 1918, + 'Adugodi Signal': 1670, + 'Mico Layout': 1134, + 'Ashram HDFC Bank': 865, + 'Lakkasandra Bus Stop': 1078, + 'Arakere BTS Layout': 0, + 'Aneypalya': 1479, + 'Arakere Layout': 0, + 'Bannerghatta Road': 918, + 'Arakere Gate': 1326, + 'Sagar Appolo Hospital': 926, + 'Canara Bank': 1370, + 'BPL Stop': 1376, + 'Mico Signal': 1206, + 'Udupi Guarden': 1240, + 'BTM': 1134, + 'Jayadeva Hospital Junction': 940, + 'Arekere Gate': 1326, + 'Ashram Bus Stop': 926, + 'Ashram': 926, + 'Spar Stop': 1096, + 'Koramangala Police Station': 1860, + 'Gottigere': 1879, + 'Silk Board': 1614, + 'Dairy Circle': 1136, + 'Thilaknagar': 882, + 'Koramangala Depot': 1984 + }, + 'Bannerghatta Road': { + 'Bosch Bidadi': 3802, + 'BTM 2nd stage': 131, + 'Koramangala': 941, + 'Anand Ashram': 486, + 'Vijaya Bank Adugodi': 849, + 'Hulimavu Gate': 767, + 'Adugodi': 1369, + 'Austin Town': 1628, + 'Viveknagar': 1517, + 'Adugodi Signal': 1269, + 'Mico Layout': 562, + 'Ashram HDFC Bank': 1306, + 'Lakkasandra Bus Stop': 677, + 'Arakere BTS Layout': 1011, + 'Aneypalya': 1203, + 'Arakere Layout': 1011, + 'Bannerghatta Road': 0, + 'Arakere Gate': 609, + 'Sagar Appolo Hospital': 486, + 'Canara Bank': 984, + 'BPL Stop': 659, + 'Mico Signal': 805, + 'Udupi Guarden': 689, + 'BTM': 562, + 'Jayadeva Hospital Junction': 230, + 'Arekere Gate': 609, + 'Ashram Bus Stop': 486, + 'Ashram': 486, + 'Spar Stop': 1677, + 'Koramangala Police Station': 1420, + 'Gottigere': 1274, + 'Silk Board': 1018, + 'Dairy Circle': 735, + 'Thilaknagar': 535, + 'Koramangala Depot': 1544 + }, + 'Arakere Gate': { + 'Bosch Bidadi': 3193, + 'BTM 2nd stage': 734, + 'Koramangala': 1470, + 'Anand Ashram': 1015, + 'Vijaya Bank Adugodi': 1378, + 'Hulimavu Gate': 334, + 'Adugodi': 1898, + 'Austin Town': 2157, + 'Viveknagar': 2046, + 'Adugodi Signal': 1798, + 'Mico Layout': 968, + 'Ashram HDFC Bank': 1809, + 'Lakkasandra Bus Stop': 1206, + 'Arakere BTS Layout': 1496, + 'Aneypalya': 1731, + 'Arakere Layout': 1496, + 'Bannerghatta Road': 741, + 'Arakere Gate': 0, + 'Sagar Appolo Hospital': 1015, + 'Canara Bank': 1513, + 'BPL Stop': 50, + 'Mico Signal': 1334, + 'Udupi Guarden': 1153, + 'BTM': 968, + 'Jayadeva Hospital Junction': 758, + 'Arekere Gate': 0, + 'Ashram Bus Stop': 1015, + 'Ashram': 1015, + 'Spar Stop': 2180, + 'Koramangala Police Station': 1949, + 'Gottigere': 665, + 'Silk Board': 1291, + 'Dairy Circle': 1263, + 'Thilaknagar': 1059, + 'Koramangala Depot': 2073 + }, + 'Sagar Appolo Hospital': { + 'Bosch Bidadi': 3941, + 'BTM 2nd stage': 469, + 'Koramangala': 561, + 'Anand Ashram': 0, + 'Vijaya Bank Adugodi': 469, + 'Hulimavu Gate': 1196, + 'Adugodi': 989, + 'Austin Town': 1248, + 'Viveknagar': 1137, + 'Adugodi Signal': 889, + 'Mico Layout': 567, + 'Ashram HDFC Bank': 985, + 'Lakkasandra Bus Stop': 297, + 'Arakere BTS Layout': 791, + 'Aneypalya': 822, + 'Arakere Layout': 791, + 'Bannerghatta Road': 613, + 'Arakere Gate': 1021, + 'Sagar Appolo Hospital': 0, + 'Canara Bank': 604, + 'BPL Stop': 1071, + 'Mico Signal': 425, + 'Udupi Guarden': 716, + 'BTM': 567, + 'Jayadeva Hospital Junction': 373, + 'Arekere Gate': 1021, + 'Ashram Bus Stop': 0, + 'Ashram': 0, + 'Spar Stop': 1371, + 'Koramangala Police Station': 1040, + 'Gottigere': 1686, + 'Silk Board': 1091, + 'Dairy Circle': 354, + 'Thilaknagar': 279, + 'Koramangala Depot': 1164 + }, + 'Canara Bank': { + 'Bosch Bidadi': 4051, + 'BTM 2nd stage': 906, + 'Koramangala': 606, + 'Anand Ashram': 748, + 'Vijaya Bank Adugodi': 533, + 'Hulimavu Gate': 1660, + 'Adugodi': 655, + 'Austin Town': 860, + 'Viveknagar': 749, + 'Adugodi Signal': 502, + 'Mico Layout': 946, + 'Ashram HDFC Bank': 877, + 'Lakkasandra Bus Stop': 361, + 'Arakere BTS Layout': 1371, + 'Aneypalya': 156, + 'Arakere Layout': 1371, + 'Bannerghatta Road': 1024, + 'Arakere Gate': 1400, + 'Sagar Appolo Hospital': 748, + 'Canara Bank': 0, + 'BPL Stop': 1450, + 'Mico Signal': 368, + 'Udupi Guarden': 1151, + 'BTM': 946, + 'Jayadeva Hospital Junction': 752, + 'Arekere Gate': 1400, + 'Ashram Bus Stop': 748, + 'Ashram': 748, + 'Spar Stop': 1100, + 'Koramangala Police Station': 863, + 'Gottigere': 2065, + 'Silk Board': 1439, + 'Dairy Circle': 430, + 'Thilaknagar': 842, + 'Koramangala Depot': 1028 + }, + 'BPL Stop': { + 'Bosch Bidadi': 3143, + 'BTM 2nd stage': 972, + 'Koramangala': 1708, + 'Anand Ashram': 1252, + 'Vijaya Bank Adugodi': 1616, + 'Hulimavu Gate': 296, + 'Adugodi': 2043, + 'Austin Town': 2395, + 'Viveknagar': 2284, + 'Adugodi Signal': 2036, + 'Mico Layout': 1206, + 'Ashram HDFC Bank': 1963, + 'Lakkasandra Bus Stop': 1444, + 'Arakere BTS Layout': 1650, + 'Aneypalya': 1969, + 'Arakere Layout': 1650, + 'Bannerghatta Road': 979, + 'Arakere Gate': 238, + 'Sagar Appolo Hospital': 1252, + 'Canara Bank': 1751, + 'BPL Stop': 0, + 'Mico Signal': 1572, + 'Udupi Guarden': 1336, + 'BTM': 1206, + 'Jayadeva Hospital Junction': 996, + 'Arekere Gate': 238, + 'Ashram Bus Stop': 1252, + 'Ashram': 1252, + 'Spar Stop': 2333, + 'Koramangala Police Station': 2095, + 'Gottigere': 614, + 'Silk Board': 1415, + 'Dairy Circle': 1501, + 'Thilaknagar': 1297, + 'Koramangala Depot': 2219 + }, + 'Mico Signal': { + 'Bosch Bidadi': 4089, + 'BTM 2nd stage': 1011, + 'Koramangala': 678, + 'Anand Ashram': 853, + 'Vijaya Bank Adugodi': 621, + 'Hulimavu Gate': 1765, + 'Adugodi': 617, + 'Austin Town': 823, + 'Viveknagar': 712, + 'Adugodi Signal': 464, + 'Mico Layout': 1051, + 'Ashram HDFC Bank': 915, + 'Lakkasandra Bus Stop': 449, + 'Arakere BTS Layout': 1409, + 'Aneypalya': 397, + 'Arakere Layout': 1409, + 'Bannerghatta Road': 1129, + 'Arakere Gate': 1505, + 'Sagar Appolo Hospital': 853, + 'Canara Bank': 179, + 'BPL Stop': 1555, + 'Mico Signal': 0, + 'Udupi Guarden': 1256, + 'BTM': 1051, + 'Jayadeva Hospital Junction': 857, + 'Arekere Gate': 1505, + 'Ashram Bus Stop': 853, + 'Ashram': 853, + 'Spar Stop': 1128, + 'Koramangala Police Station': 826, + 'Gottigere': 2170, + 'Silk Board': 1402, + 'Dairy Circle': 494, + 'Thilaknagar': 947, + 'Koramangala Depot': 991 + }, + 'Udupi Guarden': { + 'Bosch Bidadi': 4220, + 'BTM 2nd stage': 486, + 'Koramangala': 676, + 'Anand Ashram': 805, + 'Vijaya Bank Adugodi': 1079, + 'Hulimavu Gate': 1287, + 'Adugodi': 872, + 'Austin Town': 1578, + 'Viveknagar': 1294, + 'Adugodi Signal': 918, + 'Mico Layout': 322, + 'Ashram HDFC Bank': 1525, + 'Lakkasandra Bus Stop': 907, + 'Arakere BTS Layout': 1230, + 'Aneypalya': 1117, + 'Arakere Layout': 1230, + 'Bannerghatta Road': 604, + 'Arakere Gate': 1027, + 'Sagar Appolo Hospital': 805, + 'Canara Bank': 1214, + 'BPL Stop': 1077, + 'Mico Signal': 1035, + 'Udupi Guarden': 0, + 'BTM': 322, + 'Jayadeva Hospital Junction': 564, + 'Arekere Gate': 1027, + 'Ashram Bus Stop': 805, + 'Ashram': 805, + 'Spar Stop': 1896, + 'Koramangala Police Station': 924, + 'Gottigere': 1692, + 'Silk Board': 564, + 'Dairy Circle': 965, + 'Thilaknagar': 691, + 'Koramangala Depot': 1047 + }, + 'BTM': { + 'Bosch Bidadi': 3913, + 'BTM 2nd stage': 179, + 'Koramangala': 933, + 'Anand Ashram': 498, + 'Vijaya Bank Adugodi': 841, + 'Hulimavu Gate': 980, + 'Adugodi': 1194, + 'Austin Town': 1620, + 'Viveknagar': 1509, + 'Adugodi Signal': 1261, + 'Mico Layout': 0, + 'Ashram HDFC Bank': 1218, + 'Lakkasandra Bus Stop': 669, + 'Arakere BTS Layout': 923, + 'Aneypalya': 1194, + 'Arakere Layout': 923, + 'Bannerghatta Road': 297, + 'Arakere Gate': 720, + 'Sagar Appolo Hospital': 498, + 'Canara Bank': 976, + 'BPL Stop': 770, + 'Mico Signal': 797, + 'Udupi Guarden': 428, + 'BTM': 0, + 'Jayadeva Hospital Junction': 257, + 'Arekere Gate': 720, + 'Ashram Bus Stop': 498, + 'Ashram': 498, + 'Spar Stop': 1589, + 'Koramangala Police Station': 1245, + 'Gottigere': 1385, + 'Silk Board': 803, + 'Dairy Circle': 727, + 'Thilaknagar': 384, + 'Koramangala Depot': 1369 + }, + 'Jayadeva Hospital Junction': { + 'Bosch Bidadi': 3841, + 'BTM 2nd stage': 400, + 'Koramangala': 712, + 'Anand Ashram': 256, + 'Vijaya Bank Adugodi': 619, + 'Hulimavu Gate': 908, + 'Adugodi': 1139, + 'Austin Town': 1399, + 'Viveknagar': 1287, + 'Adugodi Signal': 1040, + 'Mico Layout': 194, + 'Ashram HDFC Bank': 1172, + 'Lakkasandra Bus Stop': 448, + 'Arakere BTS Layout': 876, + 'Aneypalya': 973, + 'Arakere Layout': 876, + 'Bannerghatta Road': 418, + 'Arakere Gate': 648, + 'Sagar Appolo Hospital': 256, + 'Canara Bank': 755, + 'BPL Stop': 698, + 'Mico Signal': 576, + 'Udupi Guarden': 530, + 'BTM': 194, + 'Jayadeva Hospital Junction': 0, + 'Arekere Gate': 648, + 'Ashram Bus Stop': 256, + 'Ashram': 256, + 'Spar Stop': 1522, + 'Koramangala Police Station': 1191, + 'Gottigere': 1313, + 'Silk Board': 898, + 'Dairy Circle': 505, + 'Thilaknagar': 301, + 'Koramangala Depot': 1315 + }, + 'Arekere Gate': { + 'Bosch Bidadi': 3193, + 'BTM 2nd stage': 734, + 'Koramangala': 1470, + 'Anand Ashram': 1015, + 'Vijaya Bank Adugodi': 1378, + 'Hulimavu Gate': 334, + 'Adugodi': 1898, + 'Austin Town': 2157, + 'Viveknagar': 2046, + 'Adugodi Signal': 1798, + 'Mico Layout': 968, + 'Ashram HDFC Bank': 1809, + 'Lakkasandra Bus Stop': 1206, + 'Arakere BTS Layout': 1496, + 'Aneypalya': 1731, + 'Arakere Layout': 1496, + 'Bannerghatta Road': 741, + 'Arakere Gate': 0, + 'Sagar Appolo Hospital': 1015, + 'Canara Bank': 1513, + 'BPL Stop': 50, + 'Mico Signal': 1334, + 'Udupi Guarden': 1153, + 'BTM': 968, + 'Jayadeva Hospital Junction': 758, + 'Arekere Gate': 0, + 'Ashram Bus Stop': 1015, + 'Ashram': 1015, + 'Spar Stop': 2180, + 'Koramangala Police Station': 1949, + 'Gottigere': 665, + 'Silk Board': 1291, + 'Dairy Circle': 1263, + 'Thilaknagar': 1059, + 'Koramangala Depot': 2073 + }, + 'Ashram Bus Stop': { + 'Bosch Bidadi': 3941, + 'BTM 2nd stage': 469, + 'Koramangala': 561, + 'Anand Ashram': 0, + 'Vijaya Bank Adugodi': 469, + 'Hulimavu Gate': 1196, + 'Adugodi': 989, + 'Austin Town': 1248, + 'Viveknagar': 1137, + 'Adugodi Signal': 889, + 'Mico Layout': 567, + 'Ashram HDFC Bank': 985, + 'Lakkasandra Bus Stop': 297, + 'Arakere BTS Layout': 791, + 'Aneypalya': 822, + 'Arakere Layout': 791, + 'Bannerghatta Road': 613, + 'Arakere Gate': 1021, + 'Sagar Appolo Hospital': 0, + 'Canara Bank': 604, + 'BPL Stop': 1071, + 'Mico Signal': 425, + 'Udupi Guarden': 716, + 'BTM': 567, + 'Jayadeva Hospital Junction': 373, + 'Arekere Gate': 1021, + 'Ashram Bus Stop': 0, + 'Ashram': 0, + 'Spar Stop': 1371, + 'Koramangala Police Station': 1040, + 'Gottigere': 1686, + 'Silk Board': 1091, + 'Dairy Circle': 354, + 'Thilaknagar': 279, + 'Koramangala Depot': 1164 + }, + 'Ashram': { + 'Bosch Bidadi': 3941, + 'BTM 2nd stage': 469, + 'Koramangala': 561, + 'Anand Ashram': 0, + 'Vijaya Bank Adugodi': 469, + 'Hulimavu Gate': 1196, + 'Adugodi': 989, + 'Austin Town': 1248, + 'Viveknagar': 1137, + 'Adugodi Signal': 889, + 'Mico Layout': 567, + 'Ashram HDFC Bank': 985, + 'Lakkasandra Bus Stop': 297, + 'Arakere BTS Layout': 791, + 'Aneypalya': 822, + 'Arakere Layout': 791, + 'Bannerghatta Road': 613, + 'Arakere Gate': 1021, + 'Sagar Appolo Hospital': 0, + 'Canara Bank': 604, + 'BPL Stop': 1071, + 'Mico Signal': 425, + 'Udupi Guarden': 716, + 'BTM': 567, + 'Jayadeva Hospital Junction': 373, + 'Arekere Gate': 1021, + 'Ashram Bus Stop': 0, + 'Ashram': 0, + 'Spar Stop': 1371, + 'Koramangala Police Station': 1040, + 'Gottigere': 1686, + 'Silk Board': 1091, + 'Dairy Circle': 354, + 'Thilaknagar': 279, + 'Koramangala Depot': 1164 + }, + 'Spar Stop': { + 'Bosch Bidadi': 3453, + 'BTM 2nd stage': 1613, + 'Koramangala': 1344, + 'Anand Ashram': 1430, + 'Vijaya Bank Adugodi': 1273, + 'Hulimavu Gate': 2320, + 'Adugodi': 1546, + 'Austin Town': 1625, + 'Viveknagar': 1641, + 'Adugodi Signal': 1393, + 'Mico Layout': 1717, + 'Ashram HDFC Bank': 582, + 'Lakkasandra Bus Stop': 1115, + 'Arakere BTS Layout': 1125, + 'Aneypalya': 1172, + 'Arakere Layout': 1125, + 'Bannerghatta Road': 1757, + 'Arakere Gate': 2171, + 'Sagar Appolo Hospital': 1430, + 'Canara Bank': 1065, + 'BPL Stop': 2221, + 'Mico Signal': 1216, + 'Udupi Guarden': 1913, + 'BTM': 1717, + 'Jayadeva Hospital Junction': 1523, + 'Arekere Gate': 2171, + 'Ashram Bus Stop': 1430, + 'Ashram': 1430, + 'Spar Stop': 0, + 'Koramangala Police Station': 1755, + 'Gottigere': 2699, + 'Silk Board': 2260, + 'Dairy Circle': 1160, + 'Thilaknagar': 1477, + 'Koramangala Depot': 1920 + }, + 'Koramangala Police Station': { + 'Bosch Bidadi': 4615, + 'BTM 2nd stage': 1202, + 'Koramangala': 313, + 'Anand Ashram': 1044, + 'Vijaya Bank Adugodi': 829, + 'Hulimavu Gate': 1956, + 'Adugodi': 465, + 'Austin Town': 865, + 'Viveknagar': 412, + 'Adugodi Signal': 386, + 'Mico Layout': 1242, + 'Ashram HDFC Bank': 1441, + 'Lakkasandra Bus Stop': 658, + 'Arakere BTS Layout': 1649, + 'Aneypalya': 618, + 'Arakere Layout': 1649, + 'Bannerghatta Road': 1320, + 'Arakere Gate': 1696, + 'Sagar Appolo Hospital': 1044, + 'Canara Bank': 705, + 'BPL Stop': 1746, + 'Mico Signal': 665, + 'Udupi Guarden': 1079, + 'BTM': 1242, + 'Jayadeva Hospital Junction': 1048, + 'Arekere Gate': 1696, + 'Ashram Bus Stop': 1044, + 'Ashram': 1044, + 'Spar Stop': 1654, + 'Koramangala Police Station': 0, + 'Gottigere': 2361, + 'Silk Board': 894, + 'Dairy Circle': 726, + 'Thilaknagar': 1138, + 'Koramangala Depot': 164 + }, + 'Gottigere': { + 'Bosch Bidadi': 2528, + 'BTM 2nd stage': 1491, + 'Koramangala': 2227, + 'Anand Ashram': 1771, + 'Vijaya Bank Adugodi': 2135, + 'Hulimavu Gate': 815, + 'Adugodi': 2599, + 'Austin Town': 2914, + 'Viveknagar': 2803, + 'Adugodi Signal': 2555, + 'Mico Layout': 1725, + 'Ashram HDFC Bank': 2482, + 'Lakkasandra Bus Stop': 1963, + 'Arakere BTS Layout': 2078, + 'Aneypalya': 2488, + 'Arakere Layout': 2078, + 'Bannerghatta Road': 1498, + 'Arakere Gate': 757, + 'Sagar Appolo Hospital': 1771, + 'Canara Bank': 2270, + 'BPL Stop': 688, + 'Mico Signal': 2091, + 'Udupi Guarden': 1909, + 'BTM': 1725, + 'Jayadeva Hospital Junction': 1515, + 'Arekere Gate': 757, + 'Ashram Bus Stop': 1771, + 'Ashram': 1771, + 'Spar Stop': 2587, + 'Koramangala Police Station': 2650, + 'Gottigere': 0, + 'Silk Board': 1971, + 'Dairy Circle': 2020, + 'Thilaknagar': 1816, + 'Koramangala Depot': 2774 + }, + 'Silk Board': { + 'Bosch Bidadi': 4202, + 'BTM 2nd stage': 781, + 'Koramangala': 1034, + 'Anand Ashram': 1100, + 'Vijaya Bank Adugodi': 1443, + 'Hulimavu Gate': 1269, + 'Adugodi': 1169, + 'Austin Town': 1875, + 'Viveknagar': 1591, + 'Adugodi Signal': 1215, + 'Mico Layout': 617, + 'Ashram HDFC Bank': 1821, + 'Lakkasandra Bus Stop': 1271, + 'Arakere BTS Layout': 1525, + 'Aneypalya': 1414, + 'Arakere Layout': 1525, + 'Bannerghatta Road': 899, + 'Arakere Gate': 1009, + 'Sagar Appolo Hospital': 1100, + 'Canara Bank': 1497, + 'BPL Stop': 1059, + 'Mico Signal': 1399, + 'Udupi Guarden': 504, + 'BTM': 617, + 'Jayadeva Hospital Junction': 860, + 'Arekere Gate': 1009, + 'Ashram Bus Stop': 1100, + 'Ashram': 1100, + 'Spar Stop': 2191, + 'Koramangala Police Station': 1221, + 'Gottigere': 1674, + 'Silk Board': 0, + 'Dairy Circle': 1329, + 'Thilaknagar': 987, + 'Koramangala Depot': 1345 + }, + 'Dairy Circle': { + 'Bosch Bidadi': 4169, + 'BTM 2nd stage': 704, + 'Koramangala': 404, + 'Anand Ashram': 546, + 'Vijaya Bank Adugodi': 331, + 'Hulimavu Gate': 1458, + 'Adugodi': 790, + 'Austin Town': 995, + 'Viveknagar': 884, + 'Adugodi Signal': 636, + 'Mico Layout': 744, + 'Ashram HDFC Bank': 995, + 'Lakkasandra Bus Stop': 160, + 'Arakere BTS Layout': 1151, + 'Aneypalya': 570, + 'Arakere Layout': 1151, + 'Bannerghatta Road': 822, + 'Arakere Gate': 1198, + 'Sagar Appolo Hospital': 546, + 'Canara Bank': 351, + 'BPL Stop': 1249, + 'Mico Signal': 172, + 'Udupi Guarden': 949, + 'BTM': 744, + 'Jayadeva Hospital Junction': 550, + 'Arekere Gate': 1198, + 'Ashram Bus Stop': 546, + 'Ashram': 546, + 'Spar Stop': 1234, + 'Koramangala Police Station': 998, + 'Gottigere': 1863, + 'Silk Board': 1288, + 'Dairy Circle': 0, + 'Thilaknagar': 640, + 'Koramangala Depot': 1163 + }, + 'Thilaknagar': { + 'Bosch Bidadi': 4097, + 'BTM 2nd stage': 434, + 'Koramangala': 791, + 'Anand Ashram': 336, + 'Vijaya Bank Adugodi': 699, + 'Hulimavu Gate': 1164, + 'Adugodi': 1219, + 'Austin Town': 1478, + 'Viveknagar': 1367, + 'Adugodi Signal': 1119, + 'Mico Layout': 451, + 'Ashram HDFC Bank': 1132, + 'Lakkasandra Bus Stop': 527, + 'Arakere BTS Layout': 860, + 'Aneypalya': 1052, + 'Arakere Layout': 860, + 'Bannerghatta Road': 529, + 'Arakere Gate': 905, + 'Sagar Appolo Hospital': 336, + 'Canara Bank': 834, + 'BPL Stop': 955, + 'Mico Signal': 655, + 'Udupi Guarden': 655, + 'BTM': 451, + 'Jayadeva Hospital Junction': 257, + 'Arekere Gate': 905, + 'Ashram Bus Stop': 336, + 'Ashram': 336, + 'Spar Stop': 1502, + 'Koramangala Police Station': 1270, + 'Gottigere': 1569, + 'Silk Board': 1030, + 'Dairy Circle': 584, + 'Thilaknagar': 0, + 'Koramangala Depot': 1394 + }, + 'Koramangala Depot': { + 'Bosch Bidadi': 4706, + 'BTM 2nd stage': 1313, + 'Koramangala': 382, + 'Anand Ashram': 1155, + 'Vijaya Bank Adugodi': 940, + 'Hulimavu Gate': 2067, + 'Adugodi': 534, + 'Austin Town': 807, + 'Viveknagar': 355, + 'Adugodi Signal': 498, + 'Mico Layout': 1353, + 'Ashram HDFC Bank': 1552, + 'Lakkasandra Bus Stop': 769, + 'Arakere BTS Layout': 1760, + 'Aneypalya': 729, + 'Arakere Layout': 1760, + 'Bannerghatta Road': 1431, + 'Arakere Gate': 1807, + 'Sagar Appolo Hospital': 1155, + 'Canara Bank': 816, + 'BPL Stop': 1858, + 'Mico Signal': 776, + 'Udupi Guarden': 1147, + 'BTM': 1353, + 'Jayadeva Hospital Junction': 1159, + 'Arekere Gate': 1807, + 'Ashram Bus Stop': 1155, + 'Ashram': 1155, + 'Spar Stop': 1765, + 'Koramangala Police Station': 110, + 'Gottigere': 2472, + 'Silk Board': 963, + 'Dairy Circle': 837, + 'Thilaknagar': 1249, + 'Koramangala Depot': 0 + } +} + +weightmatrix = {} +nodekeys = list(distancematrix.keys()) + +# points = ['Bosch Bidadi', 'Jayadeva Hospital Junction', 'Gottigere', 'BTM', 'Ashram', 'BTM 2nd stage', 'Koramangala', 'Hulimavu Gate', 'Arakere Layout', 'Bannerghatta Road', 'Arekere Gate', 'BPL Stop', 'Udupi Guarden'] +# print(len(points)) +alpha = 0 +def createWeightMatrix(points, alpha = 0, speed = 7): + for x in points: + weightmatrix[x] = {} + for y in points: + weightmatrix[x][y] = alpha*distancematrix[x][y] + (1-alpha)*timematrix[x][y]*speed + return weightmatrix + +# distancematrix = { +# 'A' : {'A':0, 'B':7.33, 'C':9, 'D':12}, +# 'B' : { 'A':7.33, 'B':0, 'C':6.43, 'D':4.2}, +# 'C' : { 'A':9, 'B':6.43, 'C':0, 'D':8}, +# 'D' : {'A':12, 'B':4.2, 'C':8, 'D':0}, +# } + +# nodekeys = [0,1,2,3] + +start ='Bosch Bidadi' +# endpoints = nodekeys[1:] +# endpoints = points[1:] + +dp = {} + +for i in endpoints: + dp[(start,i), i] = weightmatrix[start][i] + +def dpcost(currset, end, weightmatrix): + currset = tuple(currset) + if (currset,end) in dp.keys(): + return dp[currset,end] + + setnew = copy.deepcopy(list(currset)) + setnew.remove(end) + setnew = tuple(setnew) + minlist = [] + for j in currset: + if j != end and j!=start: + minlist.append(dpcost(setnew,j,weightmatrix) + distancematrix[j][end]) + + minimum = min(minlist) + + dp[currset,end] = minimum + + return dp[currset,end] + +def createdp(currset,start = start): + for i in currset: + if i != start: + dpcost(currset,i, weightmatrix) + +def findpath(weightmatrix, dp, currset, path = [], start= start): + currsetstart = tuple(currset) + currset.remove(start) + prevval = start + path.append(start) + while(len(currset) > 1): + + minimum = dp[currsetstart,currset[0]] + weightmatrix[currset[0]][prevval] + minval = currset[0] + for i in currset: + if(minimum > dp[currsetstart,i] + weightmatrix[i][prevval]): + minimum = dp[currsetstart,i] + weightmatrix[i][prevval] + minval = i + path.append(minval) + currsetstart = copy.deepcopy(list(currsetstart)) + currsetstart.remove(minval) + currsetstart = tuple(currsetstart) + currset.remove(minval) + prevval = minval + + path.append(currset[0]) + path.append(start) + path.reverse() + return path + +# createdp(nodekeys) +createdp(points) +sp=[] +# sp = findpath(weightmatrix,dp,nodekeys, []) +sp = findpath(weightmatrix,dp,points, []) +time = 0 +length = 0 +for i in range(1,len(sp)): + temp = timematrix[sp[i-1]][sp[i]]/60 + time += temp + temp = distancematrix[sp[i-1]][sp[i]]/1000 + length += temp +print(sp) +print(time, 'mins') +print(length, 'km') + +def plotalp(points, alphas): + + for i in alphas: + weightmatrix = createWeightMatrix(points, i) + createdp(points) + timelis = [] + pathlis = [] + sp=[] + sp = findpath(weightmatrix,dp,points, []) + time = 0 + length = 0 + for i in range(1,len(sp)): + temp = timematrix[sp[i-1]][sp[i]]/60 + time += temp + temp = distancematrix[sp[i-1]][sp[i]]/1000 + length += temp + + timelis.append(time) + pathlis.append(length) + + print(sp) + print(time, 'mins') + print(length, 'km') + + print(timelis) + print(pathlis) + print(alphas) + + return + +def runeverything(pointClusterDict): + alphas = [0.1*i for i in range(11)] + for i in pointClusterDict.keys(): + points = pointClusterDict[i] + points = ['Bosch Bidadi'] + points + plotalp(points, alphas) +clusters = {0: ['Jayadeva Hospital Junction', 'Gottigere', 'Silk Board', 'BTM 2nd stage', 'Koramangala', 'Ashram', 'Hulimavu Gate', 'BTM', 'Arakere Layout', 'Bannerghatta Road', 'Arekere Gate', 'BPL Stop', 'Udupi Guarden'], 1: ['Mico Signal', 'Spar Stop', 'Koramangala Police Station', 'Dairy Circle', 'Ashram HDFC Bank', 'Adugodi', 'Viveknagar', 'Vijaya Bank Adugodi', 'Austin Town', 'Adugodi Signal', 'Lakkasandra Bus Stop', 'Aneypalya', 'Ashram', 'Canara Bank', 'Thilaknagar', 'Koramangala Depot']} +runeverything(clusters) + + +