Implementação do Sistema de Mapeamento de uma Linha de Ônibus para um Sistema de Transporte Inteligente Li Weigang1 , Yaeko Yamashita 2, Osmar Quirino da Silva 3 , Deng XiJun2 , Miguel Ângelo Trindade dos Prazeres4 , Daniel Cristino Silva de Oliveira1 1 Departamento de Ciência da Computação – Universidade de Brasília (UnB) Caixa Postal 4466 – 70.919-970 – Brasília – DF – Brazil 2 Departamento de Engelharia Civil – Universidade de Brasília (UnB) 3 Departamento de Estradas de Rodagem do Distrito Federal - Brasília 4 Politec Informática Ltda – Brasília {weigang, yaeko, deng}@unb.br, [email protected] Abstract. Intelligent Transport Systems (ITS) are being developed to optimize the operation and increase the satisfaction of urban transportation users. To reach this objective, the system will converge technologies of different sectors, such as Global Position System (GPS), Geographical Information Systems (GIS), Databank, Data Warehouse, Data Mining, Internet and Telecommunication systems, in order to make information available to the public transportation users at the bus stops and eventually on Web. The configuration of the system presents communication means among GPS, control center and interface to the public (panel and Web). The information system in the control center was implemented in the Java/JSP/DBMS/ DW/DM environment. This work shows the results of an implementation test in Brasília - DF. Resumo. O Sistema de Transporte Inteligente (ITS) está sendo utilizado para otimizar a operação e elevar o nível de satisfação dos usuários de transporte urbano. Para atingir os objetivos almejados, este sistema utilizará tecnologias de setores distintos, tais como sistema de posicionamento global (GPS), Sistema de Informações Geográficas (GIS), Banco de Dados/Data Warehouse/Data Mining, Internet e Telecomunicação, cujo objetivo é disponibilizar informações aos usuários de transporte coletivo nas paradas de ônibus e posteriormente pela Web. A arquitetura do sistema engloba comunicação entre GPS, centro de controle e interface com o público (Painel e Web). O sistema central foi implementado em ambiente Java/JSP/SGBD/DW/DM. O teste da sua aplicabilidade foi realizado no Plano Piloto em Brasília - DF. 1. Introdução Os transportes coletivos no Brasil têm fundamental importância no cotidiano da população, já que representam, em muitos casos, o único meio de deslocamento entre residência e trabalho ou escola. Dentre os transportes coletivos, o ônibus é o meio mais utilizado, pela sua ma ior acessibilidade e pelo atendimento amplo aos desejos de destino da população. O usuário do transporte coletivo urbano por ônibus no Brasil, na grande maioria das vezes não sabe ao certo o horário em que deve chegar às paradas e nem os horários exatos dos ônibus. Nota-se, então, a evidente necessidade de um sistema de informações sobre horários, que beneficie o usuário de transporte urbano coletivo por ônibus. O sistema de mapeamento de linha de ônibus é um módulo do Sistema de Informações de Transporte Público Urbano por Ônibus com uso de Inteligência Empresarial – SITCUO como solução de Sistemas de Transporte Inteligentes (ITS – Intelligent Transportation Systems) que está sendo desenvolvido para elevar o nível de satisfação dos usuários de transporte urbano. O ITS envolve uma gama de tecnologias que, quando aplicado ao nosso sistema de transporte, pode aumentar a eficiência no uso das atuais vias e redes de transportes, aumentando a segurança viária, reduzindo o congestionamento, aumentando a mobilidade, minimizando o consumo de energia e o impacto ambiental e ainda promover a produtividade [ZDT95, Ibr96, BR98, FT99, Gho2000]. As tecnologias são variadas e incluem processamento de informações, comunicações e controle eletrônico. A tecnologia permite a comunicação e o controle dos veículos em trânsito através do uso do sistema de telefonia celular, satélites do sistema GPS (Global Position System) [Hur89, Tri99] e internet. Além de otimizar os processos logísticos, oferece também outras possibilidades. Os próprios softwares combinam dados que influenciam a eficiência e produtividade, bem como velocidade, rotação, e alertam as empresas de possíveis irregularidades. O sistema controla qualquer comportamento anormal do veículo, desde um desvio (cerca eletrônica) até maneiras incorretas de condução. Esse monitoramento economiza combustível, aumentando a vida útil do veículo e elevando a segurança, além de otimizar o uso da frota atingindo objetivos econômicos almejados. Este trabalho tem como objetivo principal desenvolver um sistema de informações de horários para usuários e administradores de transporte coletivo urbano por ônibus através da utilização de GPS, Sistema de Informações Geográficas (GIS) [Ber92] monitorado pelo centro de controle (em ambiente de JavaClass/JSP/Banco de Dados/Data Warehouse/ Data Mining) [Ino97, WF99, FK2000, HK2000]. Em princípio, o sistema foi implementado no centro de controle. O algoritmo de posicionamento do ônibus foi descrito em detalhes e implementado segundo a metodologia de programação orientada a objetos através da UML[JBR99]. Um SGBD relacional se encarrega da persistência dos dados. O experimento foi realizado e testado na cidade de Brasília utilizando uma linha de ônibus que percorre o eixo monumental. 2. Protótipo do SITCUO O sistema está sendo instalado, primeiramente como protótipo, no monitoramento da linha 131 entre Rodoviário do Plano Piloto e Rodoferroviária de Brasília (eixo monumental) que é operada pela empresa Riacho Grande. Este protótipo é composto de uma configuração mínima de tal forma que permite a implementação básica para teste bem como o seu funcionamento. A estrutura macro do sistema é apresentada pela figura 1. Sinal do GPS Situação do veículo Posição do veículo Figura 1 Protótipo I O funcionamento do sistema requer os seguintes itens: v Um kit eletrônico com GPS, computador e fax/modem interligado com uma linha de telefone celular (CrossChek AMPS) [Tri99] instalado no ônibus recebe informação através do GPS comunicando a posição do veículo. v Telefone celular instalado no veículo que passa o sinal para a central de controle informando posição e outros dados através de celular. v Computador localizado no centro de controle para receber as informações e processar através de uma rotina própria para definir o posicionamento do veículo e estimar o tempo que o veículo deverá levar para chegar ao ponto onde há um painel instalado. v Controle Central informa os horários, tempo estimado para chegada do ônibus, carga do ônibus e condições de tráfego aos painéis eletrônicos nos pontos de ônibus através de celular (NOKIA 6120i) conectado ao painel, bem como através da Web. 2.2 Posicionamento e monitoramento de veículo O posicionamento é realizado através do uso de um kit de Crosscheck AMPS (figura 2) que informa as coordenadas geográficas, velocidade e direção do veículo. Crosscheck AMPS é um unidade móvel inteligente com GPS integrado a um transceptor celular para aplicações de frota comerciais. Figura 2 Crosscheck AMPS [Tri99] 2.3 Controle Central A arquitetura do sistema SITCUO está representada pela figura 3. Ela apresenta os módulos com os quais o sistema terá quando todas as fases forem acopladas. A entrada e a saída dos dados t ambém estão esquematizadas através do diagrama de contexto conforme figura 4. Software de Transportes GPS SIG Centro de Controle OLAP Painel Painel Painel WEB Data Mining Executivo Figura 3 Arquitetura do SITCUO As informações podem ser obtidas através de um sistema GPS e GIS que serão introduzidas no sistema instalado na central de controle. Da central de controle, saem informações em duas direções, uma para o painel em cada ponto de ônibus, e outro, para o sistema Web disponível para a sociedade. No momento, a tecnologia permite que as pessoas possam acessar essas informações pelo computador nas suas casas, mas futuramente, poderá ser utilizada a tecnologia dos telefones celulares móveis WAP. Sinal do Satélite OBTENÇÃO DOS DADOS PROCESSAMENTO DOS OS DADOS • • Calcular a Posição do Ônibus e Definir a Próxima Parada Calcular o Tempo Previsto para a próxima Parada CRIAÇÃO DO BANCO DE DADOS Tem por objetivo armazenar os dados permanentes na forma de arquivos, que são utilizados durante a execução do programa. MOSTRAR OS RESULTADOS Figura 4 Diagrama de contexto do sistema – SITCUO A implementação de um projeto piloto do sistema será na Universidade de Brasília, onde terá um SGBD para gerenciar os dados que serão coletados regularmente pelo sistema com a utilização de GPS instalado nos veículos para posterior armazenamento conforme o diagrama de contexto desenhado na figura 4. 2.4 Exibição das informações no painel O SITCUO utilizará Jornal Eletrônico SEAT (Figura 5) para apresentar as informações sobre os ônibus ao público. Este produto foi desenvolvido pela empresa SEAT-Sistemas Eletrônicos de Atendimento que é uma empresa especializada em fornecer equipamentos para o controle e gerenciamento de atendimento e qualidade Figura 5 Jornal Eletrônico SEAT V6 2.5 Meio de comunicação (telefone celular e fixo) Neste projeto, a comunicação entre veículo, central e painel é realizada conforme descrição abaixo e também como mostra a figura 1 – protótipo I. Do kit de GPS e celular CrossCheck é enviado um sinal para a central pelo telefone celular analógico, habilitado pela empresa TCO - Centro-Oeste Celular. Na central de controle do SITCUO tem-se um telefone e fax-modem para receber a ligação do kit CrossCheck, e também para enviar informações do veiculo para o painel. No início, foram utilizados equipamentos instalados no DER-DF. Futuramente, esses equipamentos serão instalados no laboratório da Universidade de Brasília. A comunicação da central de controle para Jornal Eletrônico – painel será por telefone celular digital, habilitado pela TCO-Centro-Oeste Celular. 3. Sistema de Controle Central 3.1 Arquitetura do sistema A figura 6 apresenta a arquitetura do sistema de controle central do SITCUO. O ambiente e desenvolvimento é apresentado na Tabela 1. Para implementação da base de dados do Sistema de Transporte Inteligente será utilizado o DBMS Microsoft SQLServer versão 2000. Connection manager: Para sistemas onde a quantidade de requisição se torna GISnificativa, recomenda-se o uso de um connection pool. Para a nossa arquitetura, pretende-se também usar, porém no momento está sendo usado uma classe de conexão que permita comunicação dos processos da aplicação com o banco. Classe de Conexão: Esta classe implementa a conexão com o banco, permitindo assim que seja aberta a permuta de informação entre a ClasseDB (aquela que possui os métodos que efetuam consultas no banco), e o próprio banco que possui os dados carregados (SQL). Browser Browser Browser Browser on Web on Web on Web on Web JAVASERVER PAGES (JSP) Client’s requirements JAVA BEANS BUSINESS PROCESSING CONNECTION MANAGER DATABASE Figura 6 Arquitetura do sistema de Controle Central ClasseDB: Podemos considerar essa classe como sendo um business processing,. É ela que possui a lógica da aplicação responsável pela gerência de todo o processo além de efetuar cálculos, ordenar dados das tabelas e também é responsável pela performance da query que se comunica com o banco. Tabela 1 Ambiente de desenvolvimento Banco de dados SQL Server 2000 Tipo de conexão utilizada Via ODBC (Uso de uma classe de conexão) ClasseDB Classe que efetua consultas no banco Java Beans As classes intermediarias entre a JSP e a ClasseDB que encapsula dados Linguagem para Web Java Server Page (JSP) Plataforma tecnologia WEB/NT/Resin 1.1.3 JavaBeans : São classes de objetos Java que usam propriedades para descrever dados internos.. Em Java, os dados atuais de bean properties são variáveis privadas(private) ou protegidas (protected). Podemos considerá-las como sendo classes simples que funcionam como uma envoltura de dados que servem para encapsular as informações. Elas possuem métodos simples como get e set para cada bean properties, permitindo assim acessar dados internos através desses métodos que por sua vez são públicos. Essas são normas de orientação de objeto que escondem dados internos de usuários e expõem somente os métodos acessores. JavaServer Page (JSP): É conhecida como uma camada de interação entre o usuário e o sistema (request/response) [FK2000], interage com os recursos através de outros objetos ou componentes Enterprise JavaBeans. Aqui as requisições e respostas das páginas se interceptam tornando-as uma camada de apresentação . 3.2 Construção de banco de dados Para apoiar e facilitar o desenvolvimento do software foi utilizada a metodologia orientada ao objeto – UML [JBR99] e implementada através de programação orientada ao objeto Java. Assim, utilizamos um ambiente híbrido, pois adotamos orientação a objeto nas camadas cliente e de aplicação e, na camada de persistência, temos o modelo relacional porque o mercado ainda não oferece muitas oportunidades de implementação da camada de persistência em DBMSOO – gerenciador de banco de dados orientado ao objeto. A justificativa para o uso híbrido de metodologias é a de usar e combinar os melhores recursos que estão com ampla disponibilidade no mercado de informática. Esta disponibilidade refere-se à facilidade de uso e aprendizado em função da cultura técnica desenvolvida no ambiente de informática. 3.3 Algoritmo para definir e estimar o posicionamento do veículo O algoritmo utilizado para estimar o posicionamento do veículo foi implementado na central como apresentado a seguir: 3.3.1 Definição do problema • Obter os dados do arquivo texto que contém as informações enviadas pelo GPS. • Calcular o tempo previsto para que o ônibus chegue à próxima parada utilizando esses dados. • Gravar as informações do arquivo texto do GPS, bem como o resultado da operação do cálculo, no Banco de Dados. • Gravar um arquivo texto contendo o tempo calculado, bem como o texto que deverá ser apresentado no painel. 3.3.2 Ferramentas utilizadas O programa foi desenvolvido na linguagem Java, que acessa um Banco de Dados no SQL Server e calcula a posição do ônibus na linha em que opera e o tempo para a sua chegada nas próximas paradas. 3.3.3 Algoritmo Algoritmo desenvolvido apresenta os seguintes passos: Passo 1) definição do objeto; Passo 2) definição do método de cálculo; Passo 3) definição das variáveis do sistema de operação de ônibus : pos_ônibus: Variável float que armazena a posição do ônibus (Latitude e Longitude) enviada pelo GPS e gravada no arquivo texto. pos_parada: Um vetor unidimensional cujo número de campos é igual ao número de paradas. Esse vetor armazena a posição das paradas (Latitude e Longitude). tempo : Variável float que armazena o tempo previsto para que o ônibus atinja a próxima parada, calculado pela equação física t = ∆ s/v onde t é o tempo, v a velocidade enviada pelo GPS e ∆ s é a diferença entre a posição do ônibus dada pelo GPS e a posição da próxima parada, contida no vetor pos_parada. velocidade: Variável float que armazena a velocidade do ônibus enviada pelo GPS e contida no arquivo texto. sentido: Variável lógica que armazena o sentido em que o ônibus está operando. Se o sentido for de ida, a variável assume valor verdadeiro e se for de volta a variável assume valor falso. i: Variável inteira que serve de índice para endereçamento do vetor. deltas: Variável float que armazena o módulo da diferença entre a posição do ônibus e a posição da próxima parada. Passo 4) Ler o arquivo *.dat do drive c:\windows\temp Passo 5) Atribuir às variáveis listadas abaixo e seus valores correspondentes retirados do arquivo *.dat, arquivo esse enviado pelo GPS. pos_onibus = substring do texto que contém o valor da posição do ônibus. velocidade = substring do texto que contém o valor da velocidade do onibus em km/h. sentido = substring do texto que contém o sentido da opera ção do ônibus. Passo 6) Armazenar na matriz pos_parada[] as posições das paradas. Observação: esses valores podem ser retirados da coluna pt_parada da tabela parada do Banco de Dados. Passo 7) Percorrer a matriz pos_parada[] para identificar qual é a próxima, verificando o sentido que o ônibus trafega. Com i variando de 0 ao tamanho da matriz. Para i variando de 1 até tamanho da matriz pos_parada[] faça se pos_onibus >= pos_parada [i] e pos_onibus <= pos_parada [i+1] então pare senão incrementa i ; fim do se fim do para. se sentido = verdadeiro então deltas = pos_parada [i+1] – pos_onibus senão deltas = pos_onibus – pos_parada [i] Passo 8) Converter os valores da variável delta de Latitude e Longitude para quilometros. Passo 9) Calcular o tempo gasto para que o ônibus atinja a próxima parada através da equação abaixo: t = deltas / velocidade Passo 10) Converter o tempo de segundos para minutos através da equação: t = t / 60. Passo 11) Gravar os valores das variáveis tempo, velocidade e posição do ônibus no Banco de Dados. Passo 12) Gravar um arquivo texto de saída, contendo os dados a serem emitidos no painel. Passo 13) Dar uma pausa de 1 minuto e voltar ao início do programa para que seja executado novamente. 4. Experimento e funcionalidade do sistema 4.1 Linha 131 e Pontos de Parada A linha é identificada como 131, cujo circuito é definido entre a Rodoviária do Plano Piloto e a Rodoferroviária da cidade de Brasília. A extensão do percurso é de 14,7 Km e o tempo de viagem é de aproximadamente 40 minutos. A linha funciona de segunda a domingo. Nesta fase de teste um veículo particular foi utilizado. A freqüência de saída dessa linha é de 10 minutos nos períodos de 5:00 às 6:30h e 18:30 às 0:00h; e 8 minutos de 6:38h às 18:30h. Considerando os dois sentidos da linha onde existem 6 paradas, a sua identificação é dada pelo valor de j de 1 a 6 (o número de paradas (pt_parada) cadastradas na tabela parada no banco de dados. Os valores obtidos da localização geográfica das paradas de ônibus foram apresentada na tabela 2. Tabela 2 Coordenação do ponto de parada da linha 131 Ponto de parada Sentido Latitude Longitude Rodoferroviária Leste -015.776170 -047.940240 Igreja da paz lado Sudoeste Leste -015.782040 -047.923750 Tribunal TJDF Leste -015.787060 -047.907860 Rodoviária Oest e -015.794890 -047.882370 Palácio do Buriti Oeste -015.777770 -047.909420 Igreja da paz lado QG Oeste -015.780280 -047.922530 4.2 Experimento 4.2.1 Leituras do GPS Os valores obtidos pelo GPS são transmitidos por uma linha de telefone celular e registrado em um arquivo como 3ac9dc00.dat que posteriormente é lido por uma rotina que é executada na central de controle, onde são lidas as seguintes informações: A posição do ônibus é a coordenada -015.790280 em Latitude e a 047.889270 em Long itude e a velocidade de 57 km/h e o sentido Oeste. 4.2.2 A posição do Ônibus A posição geográfica e sentido do ônibus é dado pelo GPS.O sistema obtém as seguintes informações onde a sua posição é comparada a cada elemento da matriz: A próxima parada é a do palácio do Buriti , cuja coordenada é 015.777770 latitude e -047.909420 longitude. 4.2.3 Deslocamento e tempo de viagem O deslocamento e o tempo de viagem foram calculados e encontrados os seguintes resultados: Os resultados dos deltas (deslocamento) é de Latitude 0.012510 e Longitude 0.020150. Equivalente a distância entre o ônibus e a próxima parada, cerca de 3.1 quilômetros. O resultado do tempo é de 3´15´´ (minutos e segundos.) 4.2 Exibição das informações As informações serão transmitidas para o próximo ponto de ônibus onde serão exibidas em um painel. Serão também disponibilizadas na WEB para consulta por parte da comunidade. Um simples clicar no Menu e um formulário será carregado com as informações pertinentes como mostra a figura 7. Figura 7 Apresentação das informações na WEB pelo solução JSP 4.3.1 Interface de Sistema Interativo Essa interface se caracteriza pela participação do usuário na escolha da parada na qual ele deseja saber o tempo previsto para que o ônibus chegue até ela. Essa interface é recomendada aos usuários do transporte (passageiros) pois poderão saber com exatidão qual o tempo na parada de interesse, sendo desprezadas informações que não lhe interessa. Através dessa tela é possível escolher entre as diversas empresas que atuam no ramo de transporte coletivo, selecionando a linha desejada pertencente a empresa escolhida, e em seguida selecionar a parada na qual se deseja obter informações que serão demonstradas na tela conforme figura 8. Figura 8 Tela de Interface de Sistema Interativo 4.3.2 Interface de Sistema em Tempo Real A tela apresentada na figura 9 fornece em tempo real o deslocamento do ônibus, calculando o tempo previsto para cada parada. Essa tela não depende da interação do usuário, sendo atualizada automaticamente de 1 em 1 minuto. Ela é recomendada para os fiscais e operadores de linhas das empresas, onde estes teriam um completo monitoramento do ônibus, identificando possíveis atrasos e focos de problemas. Semelhante ao sistema de monitoramento de aviões, presente nos aeroport os, essa tela demonstra informações sobre determinado ônibus. No exemplo, temos um veículo que se encontra a 2,3 Km da Rodoviária. Os tempos presentes em cada parada são calculados e atualizada cada vez que o GPS manda o arquivo. A seguir, o sistema efetua todos os cálculos e apresenta as informações na tela do sistema em Tempo Real. Todas essa operações podem ser controladas, sendo que o tempo entre as atualizações pode ser configurado. Figura 9 Interface de Sistema em Tempo Real 4.3.3 Interface de Sistema Gráfico (Geo-Processamento) Essa interface (figura 10 mostra graficamente a posição do ônibus, indicada por um ponto azul e um circulo vermelho. Esse tipo de interface pode ser muito útil aos fiscais de ônibus, principalmente em viagens de longa distância, pois ela permite uma identificação instantânea de desvio de rota. A visualização gráfica, pode ajudar a polícia a recuperar veículos roubados, bem como a empresa verificar se o motorista está fazendo o percurso correto. É possível a identificação de seqüestros e a verificação da distância entre dois ou mais ônibus da mesma linha. Figura 10 Interface de Sistema Gráfico (Geo-Processamento) 5. Concluções Na primeira fase de implementação, como primeiro teste de funcionamento SITCUO foram utilizadas informações georeferenciadas da linha de ônibus, onde se verificou a sua funcionalidade. Este estudo é bastante importante uma vez que o setor de transporte público passa por um processo de transformação, onde o mercado competitivo vem se tornando cada vez mais acirrado. Em várias cidades brasileiras o transporte público de passageiros por ônibus vem perdendo o mercado para sistemas alternativos, e um dos motivos dessa mudança tem sido a falta de um sistema de informação que possa garantir o direito a viagem numa determinada hora. Como essas informações serão disponibilizadas à comunidade através da Web, isso permitirá conquistar a confiabilidade do sistema e atrair novamente a sua clientela. Esta implementação demonstra também o sucesso da combinação de tecnologias de vários setores como GPS, GIS, SGDB/DW e telecomunicação. Cabe lembrar que a solução de comunicação através de telefone celular é considerada de custo elevado, porém para o teste do sistema foi mais conveniente devido à sua operacionalização. Sabe-se que existem sistemas mais econômicos, mas que merecem um estudo especial, pois as tecnologias hoje apresentam uma dinâmica evolutiva muito grande. Para melhorar os sistemas, podemos encontrar soluções alternativas de meios de comunicações tais como rádio que prometem ter um alcance maior com custos mais reduzidos. Pode-se também utilizar a comunicação via pager, ou mesmo via satélite, que apesar desta última opção ser mais cara, produz resultados mais satisfatórios. Agradecimento Esta pesquisa é apoiada pelo CNPq e Centro de Formação de Recursos Humanos em Transportes da Universidade de Brasília. Os autores agradecem os parceiros do projeto como TCO, ControlSat, SEAT, IBM e Viação Riacho Grande. Referencias Bernhardsen, TOR. (1992) Geographic Information Systems. Norway, Viakit. Brane, C. R. and C. Rizos (1998) Positioning Systems in Intelligent Transportation Systems. Clarke, M. e McCabe, K. (1999) Getting the Message Across; in Traffic Engineering Control, pp. 360 – 362. Faya, U., Shapiro, G. P. (1996) Data Mining and Knowledge Discovery in Database: An Overview”, Communications ACM, Special Issue on Data Mining, V. 39, No. 11. Fields, D. K., M. A. Kolb (2000) Desenvolvendo na Web com JavaServer Pages, Rio de Janeiro, Editora Ciencia Moderna Ltda.. Forestini, F.; Tomasini, M. (1999) Access Control in Rome; in Traffic Engineering Control, pp. 388-391. Ghosh, S. (2000) Intelligent Transportation Systems: New Principles and Architectures, Bk&Cd-Rom edition, CRC Press; 192 pages, ISBN: 0849300673. Han, Jiawei, M. Kamber (2000) Data Mining: Concepts and Techniques, The Morgan Kaufmann Series in Data Management Systems, Jim Gray, Series Editor Morgan Kaufmann Publishers, 550 pages. ISBN 1-55860-489-8. Harrison, I. and U. Schwuttke (2000) Optimizing Satellite, Network, and Ground Station Operations with Next Generation Data Visualization; 2000, IEEE. Hurn, J. (1989) GPS – Um Guia para a Próxima Utilidade, Trimble Navigation USA. Ibrahim, D. ( 1996) Busroute – Public Transport Route Information System Using a GPS; in Traffic Engineering Control, pp. 519-522. Inmon, W. H. (1997) Como construir o Data Warehouse, Editora Campus, Rio de Janeiro. Jacobson, I., G. Booch, J. Rumbaugh (1999) The Unified Software Development Process, Addison Wesley Longman, Inc. USA. Trimble (1999) CrossCheck AMPS Intelligent Mobile Unit with Integrated GPS and Cellular Transceiver for Commercial Fleets. Witten, Ian H. and Eibe Frank (1999) Data Mining: Practical Machine Learning Tools and Techniques with Java Implementations, Morgan Kaufmann, 416 pages. Zito, R.; D´este, G.; Taylor, M. A. P. (1995) Global Positioning System in the Time Domain: How useful a tool for Intelligent Vehicle -Highway System?; in Transportation Resume, vol. 3, no. 4, pp. 193-209 .