Чтобы ответить на баллы, по порядку:
Какую архитектуру мы должны использовать?
Тот, кого вы знаете и понимаете, существует более одного подхода, с которым можно сделать аналогичное.
Можем ли мы создать этот сайт с помощью ASP.NET (должно быть в состоянии)?
Вы могли бы . Точно так же вы можете сделать это как Java-сервлет или PHP-приложение. Если вы чувствуете себя особенно изуродованным, вы, возможно, можете заставить что-то работать в чистом Javascript (но ваши клиенты могут ненавидеть вас)
TFL интегрирует свой веб-сайт с картами Google или любым другим GPS
Они с большей вероятностью используют данные Ordnance Survey, с которых они визуализировали свои собственные карты (конечно, если вы выполнили панорамирование, охват закончится довольно быстро).
С точки зрения маршрутизации, они , вероятно, , используют что-то вроде алгоритма Дейкстры, хотя, вероятно, он очень оптимизирован для работы с расписанием.
Существует множество алгоритмов маршрутизации, которые сводятся к «относительной стоимости» (где эта стоимость может быть расстоянием, временем, финансами или их комбинацией). Не принимая во внимание расписание, вы можете предварительно рассчитать стоимость между подключенными узлами (например, Liverpool St -> Bank через Central Line составляет ~ 5 минут), это даст базовую линию для чего-то вроде Dijkstra, хотя вам все равно придется учитывать стоимость взаимодействия между видами транспорта и ожидания прибытия соединений и т. д.).
Возможно, вы захотите изучить алгоритмы маршрутизации в целом (даже в вики OpenStreetMap есть информация), прежде чем изучать сложности, связанные с запланированными службами.