Please use this identifier to cite or link to this item:
https://hdl.handle.net/10216/106093| Author(s): | André Pedro Deus Pinheiro |
| Title: | Evolução da componente algorítmica de cálculo de rotas do Move-Me |
| Issue Date: | 2017-07-18 |
| Abstract: | Nowadays, public transportation have been affirming more and more its importance in the day-to-day life of the general population, whether to avoid traffic queues at rush hours, or to reduce costs at the end of the month. Therefore, there is a need for a rapid and effective response to public transport users. Is is in this context that the IMS project, developed by OPT S.A, was created. The purpose of this project is to assist choosing routes inside a multimodal public transportation network. The project is divided in several modules, responsible for carrying out specific functions. With the development of this master thesis it is expected to refine the algorithmic component of route calculation in the PADA module. The current algorithm presents query times in the order of seconds since the network has expanded to Lisbon. Thus, the main focus of this master thesis is to determine how the query times can be reduced, taking in account criteria that can be defined by users, such as the closest time of arrival, numbers of transfers and the maximum walking distance. If should be noted that the system is already in operation, so the current restrictions must be respected. This fact does not invalidate that the sophistication of the algorithm will be a minor challenge since in the last years large investments were done in the subject of algorithms on public transportation networks, which culminated in the invention of new algorithms such as RAPTOR and CSA, that are not based on graphs and can be easily parallelized, capable of running orders of magnitude faster than previous algorithm based on Dijkstra for the calculation of shortest path between two vertices of a graph. At the same time, new speed-up techniques such as A* with Landmarks, Arc Flags, Contraction and bidirectional search have been developed, however, all of them require a time-consuming pre-processing phase, followed by an extremely fast query phase. For this problem, the data that is provided corresponds to an estimate of the arrival time of a vehicle on a stop of the public transportation network. If possible, the actual times should be used. If they are not available, then the default static timetables will be used instead. By accessing other modules it is possible to build and characterize the public transportation network. The main module responsible for the network management, BITA, stores information about all the lines of all providers, the variants of a single line, the order of the stops of a single line and the arrival times of a vehicle in a stop, on a given day. These data is crucial in order to get the correct results during the route calculation. The sophistication of the PADA module will impact essentially the user experience as users will have access to the most convenient travel routes almost immediately. The chosen algorithm was RAPTOR because it can be easily parallelized, taking advantage of the high number of cores of the server where the algorithm will be executed in production. During the test phase, the performance of this algorithm was quite satisfactory. It was able to run, in average, 100 times faster than the current algorithm in production. The results with real time access were also quite satisfactory. Since the access to real time data in non peak hours is fast, the performance of the algorithm was not affected. To get around the problem of possible high response times for peak hours, a limit time was defined. If the function that accesses real time data does not return a value in the predefined limit time, then the planned times will be shown to the user. |
| Description: | Nos dias que correm os transportes públicos têm vindo a afirmar cada vez mais a sua importância no quotidiano da população, seja para evitar as filas de trânsito nas horas de ponta ou para reduzir os custos no final do mês. Surge assim a necessidade de dar uma resposta rápida e eficaz aos utentes dos transportes públicos. É neste contexto que o projeto IMS, desenvolvido pela empresa OPT S.A. foi criado. Este projeto tem como finalidade auxiliar os utentes na escolha das rotas dentro de uma rede de transportes públicos multimodais. O projeto está dividido em módulos distintos, responsáveis por exercerem funções específicas. O objectivo deste trabalho passa essencialmente pela sofisticação da componente algorítmica de cálculo de rotas no módulo PADA. O algoritmo atual apresenta tempos de resposta na ordem dos segundos desde o momento em que a rede de transportes se expandiu para Lisboa. Desse modo, o principal foco deste trabalho é determinar como se pode reduzir os tempos de resposta tendo em conta critérios que podem ser definidos pelos utilizadores, como o tempo de chegada mais próximo ao destino final, o menor tempo de partida a partir da origem, o menor número de transbordos e o tempo máximo a caminhar. É de realçar que o sistema já se encontra em funcionamento, pelo que as restrições atuais devem ser respeitadas. Este facto não invalida que a sofisticação do algoritmo atual seja um desafio menor já que nos últimos anos se tem investido na área dos algoritmos em redes de transportes públicos, que culminou na invenção de novos algoritmos como o RAPTOR e o CSA que não são baseados em grafos e que podem ser paralelizados, capazes de correr ordens de magnitude mais rápido do que algoritmos baseados no algoritmo de Dijkstra para o caminho mais curto entre dois vértices de um grafo. Simultaneamente também se tem assistido à criação de novas técnicas de aceleração como A* com Landmarks, Arc Flags, Contração e pesquisa bidirecional, no entanto todas requerem uma fase de pré-processamento morosa e dispendiosa em termos de memória, seguida de uma fase de consulta extremamente rápida. Para este problema, os dados fornecidos correspondem a uma estimativa da hora de chegada das viaturas de transporte às paragens que fazem parte da rede. Sempre que possível, os dados em tempo real devem ser utilizados. Caso não estejam disponíveis, então os horários planeados serão utilizados. Através de outros módulos existentes no sistema é possível construir e caracterizar toda a rede de transportes. O principal módulo responsável pela gestão da rede de transportes, o BITA, armazena informação relativa a todas as linhas de todos os operadores, às variantes de uma linha, à ordem das paragens de uma linha e às horas de passagem de um veículo numa paragem num determinado dia. Estes dados são cruciais para que se possam obter resultados corretos durante a fase de cálculo de rotas. A sofisticação do módulo PADA tem impacto essencialmente ao nível da experiência do utilizador, uma vez que os utentes poderão ter acesso às rotas de viagens mais convenientes de modo quase imediato. O algoritmo escolhido foi o RAPTOR uma vez que pode ser facilmente paralelizado, tirando assim partido do elevado número de núcleos do servidor onde será executado. Durante os testes, o desempenho do algoritmo de cálculo de rotas foi bastante satisfatório, revelando-se capaz de executar, em média, 100 vezes mais rápido do que o algoritmo atualmente utilizado. Os resultados com o acesso ao tempo real foram igualmente muito satisfatórios. Uma vez que em horas fora de ponta o acesso aos dados em tempo real é rápido, o desempenho do algoritmo não foi muito afetado. Para se contornar a situação dos possíveis tempos de resposta altos em horas de ponta, foi definido um tempo limite para a função de acesso aos dados em tempo real retornar um resultado. Caso não consiga retornar, então serão apresentados ao utilizador os horários planeados para as rotas definidas. |
| Subject: | Engenharia electrotécnica, electrónica e informática Electrical engineering, Electronic engineering, Information engineering |
| Scientific areas: | Ciências da engenharia e tecnologias::Engenharia electrotécnica, electrónica e informática Engineering and technology::Electrical engineering, Electronic engineering, Information engineering |
| DOI: | 10.34626/h1y7-bs22 |
| TID identifier: | 201795299 |
| URI: | https://hdl.handle.net/10216/106093 |
| Document Type: | Dissertação |
| Rights: | openAccess |
| Appears in Collections: | FEUP - Dissertação |
Files in This Item:
| File | Description | Size | Format | |
|---|---|---|---|---|
| 202943.pdf | Evolução da componente algorítmica de cálculo de rotas do Move-Me | 2.49 MB | Adobe PDF | ![]() View/Open |
Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.
