desenvolvimento de um sig de código aberto para simulação
Post on 07-Jan-2017
220 Views
Preview:
TRANSCRIPT
TUFFI SALIBA NETO
DESENVOLVIMENTO DE UM SIG DE CÓDIGO ABERTO PARA
SIMULAÇÃO MICROSCÓPICA DE TRÁFEGO URBANO
DESENVOLVIMENTO DE UM SIG DE CÓDIGO ABERTO PARA
SIMULAÇÃO MICROSCÓPICA DE TRÁFEGO URBANO
TUFFI SALIBA NETO
Dissertação apresentada ao Curso de Mestrado em Modelagem Matemática e Computacional (MMC) do Centro Federal de Educação Tecnológica de Minas Gerais, como requisito parcial à obtenção do título de Mestre em Modelagem Matemática e Computacional. Área de pesquisa: Sistemas Inteligentes. Orientador: Prof. Dr. Paulo Eduardo Maciel de Almeida
Belo Horizonte Centro Federal de Educação Tecnológica de Minas Ger ais
Diretoria de Pesquisa e Pós-Graduação Março de 2009
Elaboração da ficha catalográfica por Biblioteca-Campus II / CEFET-MG
Saliba Neto, Tuffi S165d Desenvolvimento de um SIG de código aberto para simulação microscópica de tráfego urbano / Tuffi Saliba Neto. – 2009. 95 f. Orientador: Paulo Eduardo Maciel de Almeida Dissertação (mestrado) – Centro Federal de Educação Tecnológica de Minas Gerais.
1. Simulação (computadores) – Teses. 2. Trânsito urbano – Simulação por computador. 3. Sistemas de informação geográfica. I. Almeida, Paulo Eduardo Maciel de. II. Centro Federal de Educação Tecnológica de Minas Gerais. III. Título.
CDD 003.3
Ficha de Aprovação. Esta Folha será
fornecida pelo Programa de Pós-
Graduação e deverá substituir esta
página.
Dedico este trabalho especialmente aos meus pais, José Maria e Maria, que nunca
mediram esforços em me proporcionar a melhor educação.
AGRADECIMENTOS
Ao meu orientador, Prof. Dr. Paulo Eduardo Maciel de Almeida, pelo apoio durante o
projeto, amizade e tranqüilidade que transmitia em nossas reuniões;
A minha irmã Perla, pelos incentivos;
A minha namorada Charlene, pela compreensão;
Aos professores e colegas do CEFET-MG, pelo conhecimento transmitido e incentivo
durante os momentos de ansiedade;
Aos colegas da Prefeitura Municipal de Betim, pelo apoio durante esta jornada;
Aos meus Professores, pelo conhecimento transmitido durante minha vida acadêmica;
A conclusão deste trabalho representa uma grande conquista em minha vida. Gostaria de
compartilhar os méritos da conclusão desta etapa com todos aqueles que de uma forma
ou de outra contribuíram com esta vitória.
“Compreender que há outros pontos de vista é o início da
sabedoria.” (Thomas Campbell)
SUMÁRIO LISTA DE FIGURAS .......................................................................................................................................... 7
LISTA DE GRÁFICOS ....................................................................................................................................... 8
LISTA DE CÓDIGOS ......................................................................................................................................... 9
LISTA DE TABELAS ........................................................................................................................................ 10
LISTA DE QUADROS ...................................................................................................................................... 11
LISTA DE ABREVIATURAS E SIGLAS .......................................................................................................... 12
RESUMO ......................................................................................................................................................... 13
ABSTRACT ...................................................................................................................................................... 14
1. INTRODUÇÃO .................................................................................................................................... 15
1.1. O PROBLEMA DE PESQUISA .......................................................................................................... 17
1.2. OBJETIVOS ........................................................................................................................................ 18
1.3. METODOLOGIA ................................................................................................................................. 19
1.4. ORGANIZAÇÃO DA DISSERTAÇÃO ................................................................................................ 19
2. GEOPROCESSAMENTO E SISTEMAS DE INFORMAÇÕES GEOGRÁFICAS .............................. 21
2.1. GEOPROCESSAMENTO ................................................................................................................... 21
2.2. SISTEMAS DE INFORMAÇÕES GEOGRÁFICAS ............................................................................ 23
2.2.1. ESTRUTURA DE DADOS GEOGRÁFICOS .................................................................................. 24
2.2.2. MODELOS DE REDE .................................................................................................................... 26
2.2.3. APLICAÇÕES EM TRANSPORTES .............................................................................................. 28
2.3. CONSIDERAÇÕES FINAIS ............................................................................................................... 29
3. SIMULAÇÃO ....................................................................................................................................... 31
3.1. SIMULAÇÃO COMPUTACIONAL ...................................................................................................... 31
3.1.1. APLICAÇÕES ................................................................................................................................ 33
3.1.2. COMPONENTES DO SISTEMA .................................................................................................... 33
3.1.3. TIPOS DE MODELOS DE SIMULAÇÃO ....................................................................................... 34
3.2. SIMULAÇÃO DE TRÁFEGO .............................................................................................................. 35
3.2.1. ESTADO-DA-ARTE ........................................................................................................................ 41
3.2.2. APLICAÇÕES COMERCIAIS ........................................................................................................ 43
3.3. CONSIDERAÇÕES FINAIS ............................................................................................................... 44
4. DESENVOLVIMENTO DO SIMULADOR ........................................................................................... 46
4.1. RTIGIS ................................................................................................................................................ 46
4.2. OPENJUMP ........................................................................................................................................ 49
4.3. CRIAÇÃO DA ÁREA DE SIMULAÇÃO .............................................................................................. 53
4.4. O PLUGIN DE SIMULAÇÃO .............................................................................................................. 57
4.4.1. INTERFACE GRÁFICA .................................................................................................................. 58
4.4.2. MÁQUINA DE SIMULAÇÃO .......................................................................................................... 62
4.5. CONSIDERAÇÕES FINAIS ............................................................................................................... 75
5. EXPERIMENTOS ............................................................................................................................... 76
5.1. COMPARAÇÃO DO TEMPO DE PERCURSO DO MENOR E MELHOR CAMINHO ....................... 76
5.2. CONSIDERAÇÕES FINAIS ............................................................................................................... 87
6. CONCLUSÃO ..................................................................................................................................... 88
6.1. DISCUSSÕES FINAIS........................................................................................................................ 88
6.2. CONTRIBUIÇÕES DO TRABALHO ................................................................................................... 89
6.3. PROPOSTAS PARA TRABALHOS FUTUROS ................................................................................. 90
REFERÊNCIAS BIBLIOGRÁFICAS ................................................................................................................ 92
LISTA DE FIGURAS
Figura 1: Recorte de uma malha viária ........................................................................................................... 16
Figura 2: Comparação entre dados cartográficos x dados alfanuméricos ...................................................... 22
Figura 3: Comparação entre dados alfanuméricos e dados espaciais ........................................................... 23
Figura 4: Estrutura geral de um SIG ................................................................................................................ 24
Figura 5: Tipos de Estruturas de Dados .......................................................................................................... 25
Figura 6: Representações Vetoriais em um SIG ............................................................................................. 25
Figura 7: Estrutura matricial (raster) ................................................................................................................ 26
Figura 8: Exemplo de grafo obtido a partir de uma base cartográfica de logradouros ................................... 27
Figura 9: Aplicação real de um SIG-T ............................................................................................................. 29
Figura 10: Eventos discretos x contínuos ........................................................................................................ 35
Figura 11: Classes de simulação .................................................................................................................... 37
Figura 12: Componentes de uma simulação visual. ....................................................................................... 38
Figura 13: Comportamento dos motoristas no modelo car-following conforme o espaçamento. ................... 39
Figura 14: Trechos de vias separados em células. ......................................................................................... 40
Figura 15: Área de estudo – Hipercentro de Belo Horizonte........................................................................... 47
Figura 16: Fluxo de dados automatizado do RTIGIS ...................................................................................... 49
Figura 17: Pacotes da arquitetura JUMP ........................................................................................................ 50
Figura 18: Geometria selecionada e seus atributos alfanuméricos ................................................................ 51
Figura 19: Gerenciador de camadas do OpenJump ....................................................................................... 52
Figura 20: Diagrama de pacotes das extensões desenvolvidas para o OpenJump ....................................... 53
Figura 21: Detalhe da área de simulação........................................................................................................ 54
Figura 22: Sentido das vias ............................................................................................................................. 55
Figura 23: Detalhe da eliminação de nós duplicados ...................................................................................... 56
Figura 24: Classificação das camadas de pontos ........................................................................................... 56
Figura 25: Representação gráfica do atributo MAODUPLA ............................................................................ 58
Figura 26: Linhas que formam uma faixa de circulação .................................................................................. 59
Figura 27: Trecho logradouro dividido em segmentos .................................................................................... 59
Figura 28: Ilustração do envelope de uma área de simulação........................................................................ 60
Figura 29: Detalhe de linhas das faixas com e sem ajuste ............................................................................. 61
Figura 30: Detalhe da pista de transposição de junção .................................................................................. 61
Figura 31: Processo de criação da interface gráfica do simulador ................................................................. 62
Figura 32: Diagrama de classes da máquina de simulação ............................................................................ 64
Figura 33: Classe Volume e interpretação do arquivo XML de volume .......................................................... 67
Figura 34: Ilustração das estatísticas geradas pelo plugin de simulação ....................................................... 74
Figura 35: Trechos com e sem arcos de conversão ....................................................................................... 77
Figura 36: Cálculo da proporção de conversão de veículos durante uma simulação .................................... 78
Figura 37: Camada de percurso fixo para os veículos instrumentados .......................................................... 79
Figura 38: Detalhe da combinação de origem/destino 03 ............................................................................... 80
Figura 39: Detalhe da combinação de origem/destino 06 ............................................................................... 83
Figura 40: Detalhe de cruzamentos entre vias secundárias X preferenciais .................................................. 86
LISTA DE GRÁFICOS
Gráfico 1: Comparação do tempo de viagem na combinação 03 ................................................................... 82
Gráfico 2: Comparação da velocidade média na combinação 03 ................................................................... 82
Gráfico 3: Comparação do tempo de viagem na combinação 06 ................................................................... 85
Gráfico 4: Comparação da velocidade média na combinação 06 ................................................................... 85
LISTA DE CÓDIGOS
Código 1: Pseudocódigo do simulador microscópico DRACULA ................................................................... 63
Código 2: Arquivo XML de volume .................................................................................................................. 66
Código 3: Implementação da classe Car ......................................................................................................... 69
LISTA DE TABELAS
Tabela 1: Dados coletados na simulação da combinação 03 ......................................................................... 81
Tabela 2: Dados coletados na simulação da combinação 06 ......................................................................... 84
LISTA DE QUADROS
Quadro 1: Exemplos de aplicação da simulação ............................................................................................ 33
Quadro 2: Exemplos de sistemas e seus componentes ................................................................................. 34
Quadro 3: Descrição dos pacotes do simulador ............................................................................................. 53
Quadro 4: Atributos gerados pelo processo de criação da área de simulação............................................... 57
Quadro 5: Valores do atributo TIPO e suas respectivas classes .................................................................... 59
Quadro 6: Parâmetros de entrada da simulação ............................................................................................ 65
Quadro 7: Cálculo da velocidade no modelo car-following linear ................................................................... 72
Quadro 8: Estatísticas da simulação geradas em tempo real pelo plugin ...................................................... 73
Quadro 9: Estatísticas da simulação geradas em arquivo pelo plugin ........................................................... 74
LISTA DE ABREVIATURAS E SIGLAS
ABS Agent-based Simulations
API Application Programming Interface
ATIS Advanced Traveller Information System
BHTRANS Empresa de Transportes e Trânsito de Belo Horizonte
CEFET-MG Centro Federal de Educação Tecnológica de Minas Gerais
CIT Controle Inteligente de Tráfego
CRISP Centro de Estudos de Criminalidade e Segurança Pública
CSV Comma-separated values
DRACULA Dynamic Route Assignment Combining User Learning and Microsimulation
DXF Drawing Interchange Format
FID Feature Identifier
GEOPROC Projeto de pesquisa em geoprocessamento do Laboratório de Sistemas Inteligentes (LSI)
GPL General Public License
GPSI Grupo de Pesquisa em Sistemas Inteligentes
ITS Intelligent Transportation Systems
ITT Impedância de Transposição de Trecho
JTS Jump Topology Suite
JUMP JUMP Unified Mapping Platform
LSI Laboratório de Sistemas Inteligentes
OpenJUMP Ambiente de GIS de código aberto baseado no JUMP
PBH Prefeitura Municipal de Belo Horizonte
PDF Portable Document Format
PIXEL Picture Element
QV Quantidade Classificada de Veículos
QVF Quantidade Classificada de Veículos por Faixa de Circulação
RTIGIS Real Time Intelligent Geographical Information System
SIG Sistema de Informação Geográfico
SIG-T Sistema de Informação Geográfico para Transporte
UTM Sistema de projeção cartográfico Universal Transverso de Mercator
VPH Veículos por hora
XML Extensible Markup Language
ZQC Zona Quente de Criminalidade
RESUMO
As técnicas de simulação de eventos discretos têm se mostrado uma importante
ferramenta para planejamento, projeto e controle de sistemas complexos. Estas técnicas
vêm sendo aplicadas em diversas áreas, podendo-se destacar logística, finanças e
controle de tráfego. A simulação de tráfego por meio de eventos discretos vem sendo
utilizada crescentemente na busca de soluções para os problemas do trânsito. Os
Sistemas de Informações Geográficas (SIG) são sistemas computacionais que permitem
manter, processar e analisar dados espaciais. Os SIG podem utilizar modelos de rede
para representar a malha viária. Nestes modelos, as vias são representadas por linhas às
quais podem ser associados atributos que descrevem suas características. O conjunto
destas informações é comumente encontrado nas bases cartográficas municipais. A
utilização de uma ferramenta de simulação de tráfego integrada a um SIG possibilita uma
maior flexibilidade no tratamento dos dados espaciais consumidos e gerados pelo
simulador. Neste trabalho, foram apresentadas a modelagem e a implementação de uma
ferramenta que realiza a simulação microscópica de tráfego urbano a partir de uma base
cartográfica de eixos de logradouros. Essa ferramenta foi integrada a um SIG de código
aberto, o OpenJUMP, por meio de um plugin. Por fim, é feita uma análise dos resultados
gerados pelo plugin RTIGIS, também desenvolvido no âmbito do projeto GEOPROC do
Grupo de Pesquisa em Sistemas Inteligentes (GPSI) do CEFET-MG. O RTIGIS utiliza
inferência fuzzy para calcular um atributo que mede a dificuldade de transposição de um
trecho de via. Este atributo, denominado “Impedância de Transposição de trecho” (ITT) é
calculado com base em informações como comprimento do trecho, número de faixas de
trânsito e fluxo de veículos. A partir da ITT, o plugin gera o melhor caminho entre dois
pontos com base neste atributo. O simulador desenvolvido foi utilizado para realizar um
comparativo entre os resultados gerados pelos cálculos de menor e melhor caminho.
PALAVRAS-CHAVE: Simulação de eventos discretos, Simulação de tráfego, SIG-T
ABSTRACT
Techniques of discrete events simulation have been important tools for planning,
design and control of complex systems. These techniques have been applied in
several areas, like logistics, finance and traffic control. Simulation of traffic through
discrete events has been increasingly used in the search of solutions to traffic problems.
Geographical Information Systems (GIS) are computer systems that maintain process and
analyze spatial data. GIS can use network models to represent urban road systems. Inside
these models, roads are represented by lines, which may be associated with attributes that
describe their relevant features. All this information is commonly found in city cartographic
databases. A traffic simulation tool integrated with GIS allows for more flexibility in the
handling of spatial data consumed and generated by the simulator. This work presents the
modeling and implementation of a tool that performs microscopic simulation of urban traffic
based on cartographic roads databases. This tool has been integrated to an open source
GIS, the OpenJUMP, by means of a software plugin. Finally, analysis of results generated
by RTIGIS, another plugin also developed under the project GEOPROC of the Intelligent
Systems Research Group (GPSI) in CEFET-MG, was accomplished. RTIGIS uses
fuzzy inference to calculate an attribute that measures the difficulty of road transpositions.
This attribute is calculated based on information such as road length, number of lanes and
vehicle flow. Starting from this attribute, RTIGIS plugin generates the best route
between any given origin and destination points inside the network. The developed
simulator was used to make a comparison between the results generated by calculations
of smaller and better ways inside a specific network of Belo Horizonte, Brazil.
KEYWORDS: Simulation of discrete events, Traffic Simulation, GIS-T
15
1. INTRODUÇÃO
Atualmente, o tráfego de veículos nas grandes cidades é um dos grandes problemas
enfrentados pelos órgãos públicos. O tempo gasto no trânsito, o consumo excessivo de
combustível e o estresse gerado nos motoristas e passageiros são conseqüências graves
que podem ser amenizadas com um bom planejamento do trânsito. Uma das ações para
melhoria do trânsito seria a expansão da malha viária, de modo a desafogar as áreas de
maior fluxo. No entanto, esta ação fica limitada à disponibilidade de recursos financeiros e
físicos que, na maioria das vezes, são escassos. Por outro lado, pode-se otimizar as
características da malha viária para melhorar o tráfego de veículos. Isso pode ser feito por
meio da programação de semáforos, alteração do sentido das vias, tomada de decisões
preventivas em relação a interrupções já previstas nas vias, entre outras ações. Dentre as
várias ferramentas que auxiliam o trabalho do Engenheiro de Tráfego, a técnica de
simulação se mostra muito importante, permitindo apontar soluções para os vários
problemas do trânsito (PORTUGAL, 2005).
Um simulador de tráfego é uma ferramenta que se caracteriza pela capacidade de
reproduzir, em um computador, as situações reais que ocorrem no tráfego urbano,
gerando informações que auxiliam na tomada de decisões. Conforme apresentado por
Poyares1, citado por Portugal (2005, p. 105), a simulação permite analisar vários cenários
e antecipar os impactos positivos e negativos gerados a partir da escolha de determinada
alternativa. Além disso, ela permite simular situações difíceis ou improváveis de serem
encontradas na prática.
Os Sistemas de Informações Geográficas (SIG) são cada vez mais utilizados como fonte
de informações na área de transportes. A capacidade de modelar, processar e analisar
informações espaciais, além da crescente disponibilidade de mapas georreferenciados,
torna-os adequados para lidar com as informações necessárias para simulação de
tráfego. Pode-se citar o trabalho de Pinto et al. (1998) como exemplo de utilização do SIG
como plataforma de gerenciamento de dados para modelos de transporte.
1 POYARES, C.N. Critérios para Análise dos Efeitos de Políticas de Restrição ao Uso de Automóveis em Áreas Centrais. Dissertação de Mestrado. Programa de Engenharia de Transportes. COPPE. Universidade Federal do Rio de Janeiro, 2000.
16
Dentre as várias informações utilizadas pelos simuladores como fonte de dados, pode-se
destacar o modelo de rede. Este representa a malha viária formada basicamente por um
conjunto de arcos e nós, que formam a rede. Cada arco representa um trecho de via e
cada nó um cruzamento. A Figura 1 apresenta um exemplo de uma malha viária contendo
arcos e nós. Os modelos de rede permitem que atributos sejam vinculados às geometrias.
Esses atributos podem descrever as características de um determinado trecho, como o
número de vias, o fluxo médio de veículos, o nome do logradouro, dentre outras.
Arco
Nó
Figura 1: Recorte de uma malha viária
O Centro Federal de Educação Tecnológica de Minas Gerais (CEFET-MG) mantém, por
intermédio do Grupo de Pesquisa em Sistemas Inteligentes (GPSI), na linha de pesquisa
de Sistemas Inteligentes, um projeto chamado “Sistemas Inteligentes e
Geoprocessamento” (GEOPROC). Esse projeto propõe a utilização de técnicas de
inteligência computacional em Sistemas de Informações Geográficas (SIG). O primeiro
projeto do GPSI foi desenvolvido por Viana Júnior (2004) e trata da utilização de um
sistema de inferência fuzzy para definição de trajetos, de modo a permitir que três
atributos: comprimento do trecho, número de vias e fluxo de veículos pudessem ser
considerados simultaneamente no cálculo do melhor caminho. Segundo Silva et al.
(2005), a utilização de um sistema de inferência fuzzy para sintetizar atributos numéricos
de um Sistema de Informação Geográfica (SIG), torna-o um sistema computacional
inteligente. No trabalho de Viana Júnior (2004), o tratamento dos dados, a geração do
atributo ITT pelo sistema de inferência fuzzy e a alimentação da base de dados do SIG
17
eram feitos de modo manual, dificultando o processo de atualização dos dados. Em
seguida, Silva (2006) propôs a construção de um componente de software, integrado a
um SIG, que permite o cálculo do melhor caminho entre um ponto de origem e destino, na
rede geométrica de modo automático e em tempo real. Esse componente, chamado
RTIGIS (Real Time Intelligent Geographical Information System), foi integrado ao
OpenJump, um SIG livre e de código aberto, escrito em Java, que possui, na
extensibilidade, uma de suas principais características, o que possibilita o acoplamento de
novos módulos, garantindo flexibilidade ao SIG.
1.1. O PROBLEMA DE PESQUISA
No trabalho desenvolvido por Viana Júnior (2004), o resultado do cálculo do melhor
caminho foi comparado com um questionário respondido pelos taxistas, considerados os
especialistas em locomoção com automóveis na área de estudo. Nesta comparação, ficou
constatado que os taxistas possuem uma forte tendência em apontar o caminho mais
curto como sendo o melhor. Os motivos que podem influir nesta escolha, segundo o autor,
são os mapas mentais dos motoristas e a interferência causada pela presença do
passageiro. Em função destes fatores, Viana Júnior (2004) considerou a escolha dos
taxistas inadequada para a validação do melhor caminho.
O problema de pesquisa estudado neste trabalho é a dificuldade de validação do modelo
de melhor caminho proposto por Viana Júnior (2004). A proposta de utilização de um
simulador de tráfego pode contribuir na avaliação dos melhores trajetos ao facilitar a
comparação dos tempos de viagem entre o menor e o melhor trajeto.
Considerando o alto custo dos ambientes comerciais de simulação de tráfego disponíveis,
o trabalho desenvolvido por Silva (2006) e a continuidade do projeto GEOPROC, o autor
deste trabalho optou por construir um plugin de simulação de tráfego integrado ao
OpenJUMP. Apesar de existirem soluções livres de simulação de tráfego como, por
exemplo, o ITSUMO, acrônimo de Intelligent Transportation System for Urban Mobility,
citado por Bazzan & Klügl (2007), estas não atendiam a todas as premissas do projeto
GEOPROC, como ser escrito na linguagem JAVA e integrado a um SIG. A solução
18
proposta neste trabalho é baseada no paradigma do software livre2, o que permite sua
evolução por meio do desenvolvimento cooperativo de novas funcionalidades.
O presente trabalho é a terceira etapa do projeto GEOPROC. Além de possibilitar a
avaliação do trajeto gerado pelo RTIGIS de uma maneira diferente, esta etapa representa
um considerável avanço do projeto GEOPROC, ao possibilitar o desenvolvimento de
novos trabalhos, como por exemplo, o estudo de modelos de simulação aplicados a
simulação de tráfego.
1.2. OBJETIVOS
O objeto de pesquisa deste trabalho é a modelagem e implementação de um simulador
microscópico de tráfego urbano integrado a um SIG de código aberto que possibilite a
avaliação dos trajetos gerados pelo RTIGIS sob uma nova ótica, que não a dos
especialistas em locomoção de automóveis (taxistas), utilizados no trabalho de Viana
Júnior (2004).
Para alcançar este objetivo geral, foi necessário atingir os seguintes objetivos específicos:
• Modelar e implementar um plugin para extração das informações cartográficas da
área de simulação;
• Modelar e implementar um simulador microscópico de tráfego urbano;
• Integrar o simulador ao SIG;
• Definir os trajetos que serão avaliados no simulador;
• Configurar os parâmetros de simulação para os trajetos escolhidos;
• Executar simulações a fim de avaliar os resultados e comprovar a aplicabilidade da
ferramenta proposta.
2 É um paradigma de desenvolvimento de software no qual o usuário tem a liberdade de executar, copiar, distribuir, estudar, modificar e melhorar um programa (FSF, http://www.fsf.org)
19
1.3. METODOLOGIA
O desenvolvimento deste trabalho requereu uma ampla revisão bibliográfica para sua
fundamentação. Além disso, foi necessário o estudo das tecnologias envolvidas em sua
construção. A seguir, estes passos apresentados:
1. Revisão bibliográfica dos temas: geoprocessamento, sistemas de informações
geográficas, simulação de eventos discretos, simulação de tráfego, linguagens de
programação, padrões de projeto, grafos;
2. Pesquisa de frameworks3 livres compatíveis com a arquitetura de desenvolvimento
proposta;
3. Modelagem e implementação do plugin para extração de informações cartográficas
da área de simulação;
4. Modelagem e implementação do plugin para simulação de tráfego urbano;
5. Definição dos trajetos avaliados por Viana Júnior (2004) que serão avaliados no
simulador;
6. Realização de simulações com os trajetos selecionados e comparação dos
resultados com as respostas dos taxistas.
Neste trabalho foi utilizada a linguagem de programação JAVA4 junto com o ambiente de
desenvolvimento integrado ECLIPSE5. Os plugins foram construídos a partir da biblioteca
do SIG OpenJUMP6 com apoio da API JTS7.
1.4. ORGANIZAÇÃO DA DISSERTAÇÃO
Esta dissertação foi organizada em seis capítulos. O primeiro capítulo é a introdução do
trabalho, apresentando a contextualização do problema de pesquisa, seus objetivos e a
metodologia adotada. No segundo capítulo são apresentados os conceitos de
3 Segundo Fayad e Schmidt (1997), frameworks representam uma estrutura formada por blocos pré-fabricados de software que os programadores podem usar. 4 http://java.sun.com 5 http://www.eclipse.org 6 http://www.openjump.org 7 Jump Topology Suite é uma API para manuseio de informações espaciais (http://www.vividsolutions.com/jts)
20
geoprocessamento e sistemas de informações geográficos, enfatizando o uso em
aplicações voltadas para a área de transporte. No capítulo três, é feita uma introdução ao
assunto simulação computacional e logo em seguida são apresentados os principais
conceitos relacionados a simulação de tráfego. No capítulo quatro é explicado o
desenvolvimento do componente de software para simulação de tráfego. No quinto
capítulo são mostrados os experimentos realizados com a ferramenta. As discussões
finais, contribuições do trabalho e propostas de evolução são apresentadas no sexto e
último capítulo.
21
2. GEOPROCESSAMENTO E SISTEMAS DE
INFORMAÇÕES GEOGRÁFICAS
Este capítulo tem como objetivo apresentar uma contextualização conceitual sobre os
temas geoprocessamento e sistemas de informações geográficas de modo a facilitar uma
maior compreensão dos capítulos seguintes desta dissertação.
2.1. GEOPROCESSAMENTO
Esta seção apresenta uma visão geral sobre o Geoprocessamento, apresentando seus
conceitos e aplicações.
A seguir são apresentadas duas definições para o termo Geoprocessamento:
“O termo Geoprocessamento denota a disciplina do conhecimento que utiliza
técnicas matemáticas e computacionais para o tratamento da informação
geográfica. Esta tecnologia, denotada por Geoprocessamento, influencia de
maneira crescente as áreas de Cartografia, Análise de Recursos Naturais,
Transportes, Comunicações, Energia e Planejamento Urbano e Regional.”
(CASANOVA et. al., 2005).
“... o termo Geoprocessamento, surgido do sentido de processamento de
dados georreferenciados, significa implantar um processo que traga um
progresso, um andar avante, na grafia ou representação da Terra. Não é
somente representar, mas é associar a esse ato um novo olhar sobre o
espaço, um ganho de conhecimento, que é a informação.” (MOURA, 2005).
Em linhas gerais, o Geoprocessamento está relacionado ao processamento de dados
referentes a um espaço geográfico. Para este processamento, são utilizados dados de
natureza espacial, como as coordenadas geográficas, e também aqueles que de alguma
forma possam ser georreferenciados, ou seja, vinculados a outros dados que possam ser
22
localizados na superfície terrestre. Os dados de natureza espacial podem ser chamados
de dados cartográficos, que são a representação gráfica da localização e da geometria
das entidades estudadas. Os dados alfanuméricos geralmente são armazenados em
tabelas e contêm as informações descritivas da entidade. A Figura 2 ilustra a diferença
entre dados cartográficos e alfanuméricos.
Figura 2: Comparação entre dados cartográficos x dados alfanuméricos
Como apresentado por CASANOVA et al. (2005), o Geoprocessamento é uma tecnologia
interdisciplinar, que permite a convergência de diferentes disciplinas para o estudo de
fenômenos urbanos e ambientais. Para ilustrar essa interdisciplinaridade, pode-se citar
alguns exemplos de questões típicas do Geoprocessamento:
• Qual a localização dos bairros que concentram a maior quantidade de furtos?
• Onde se concentra a maioria dos casos de dengue?
• Qual o melhor trajeto para chegar à minha escola?
• Em quais vias o fluxo de veículos é mais intenso?
Um exemplo de como o Geoprocessamento pode auxiliar na solução de problemas é o
estudo da criminalidade nos grandes centros urbanos. A partir do georreferenciamento
das ocorrências dos delitos, é possível visualizar espacialmente quais regiões de uma
cidade possuem maior incidência de determinado crime. Estas regiões são comumente
conhecidas como ZQC, ou Zonas Quentes de Criminalidade. Caso esta mesma
informação fosse listada apenas em formato de tabela, a identificação dos locais de maior
incidência poderia se tornar mais difícil. A Figura 3 mostra uma comparação entre os
dados alfanuméricos, dados georreferenciados e o resultado final do processo, as ZQC.
23
Figura 3: Comparação entre dados alfanuméricos e dados espaciais
Adaptado de uma apresentação fornecida pelo CRISP.
2.2. SISTEMAS DE INFORMAÇÕES GEOGRÁFICAS
Segundo Lewis (1990), um sistema de informação geográfica é um sistema de
gerenciamento de banco de dados computacional para capturar, armazenar, recuperar,
analisar e visualizar dados espaciais.
Já Lanari et al. (1999) afirmam que os SIG consistem em uma integração de hardware,
software, dados geográficos e pessoas, possibilitando aos usuários capturar, armazenar,
atualizar, manipular, analisar e exibir todo o tipo de informações geograficamente
distribuídas que, se processadas de outra forma, dificultaria ou mesmo impossibilitaria
uma perspectiva espacial do objeto em análise.
Para Câmara e Queiroz (2000), o termo Sistemas de Informação Geográfica (SIG) é
aplicado para sistemas que realizam o tratamento computacional de dados geográficos e
recuperam informações, não apenas com base em suas características alfanuméricas,
mas também pela sua localização espacial. Para que isto seja possível, a geometria e os
atributos dos dados em um SIG devem estar georreferenciados, ou seja, localizados na
superfície terrestre e representados em uma projeção cartográfica.
Analisando as definições apresentadas acima, pode-se notar que todas elas apontam o
tratamento da informação espacial como característica principal.
Conforme apresentado por Câmara e Queiroz (2000), um SIG tem os seguintes
componentes:
24
• Interface com usuário;
• Entrada e integração de dados;
• Funções de consulta e análise espacial;
• Visualização e plotagem;
• Armazenamento e recuperação de dados.
A Figura 4 ilustra melhor a interação entre estes componentes.
Figura 4: Estrutura geral de um SIG
Fonte: Câmara e Queiroz (2000)
2.2.1. ESTRUTURA DE DADOS GEOGRÁFICOS
Os dados geográficos contém, basicamente, dois tipos de informações: a informação
espacial, que descreve o formato do objeto geográfico, e a informação alfanumérica, que
descreve as características não espaciais dos objetos. Para representar as entidades em
um mapa, os SIG utilizam dois tipos de estrutura de dados: vetorial e matricial (imagem).
A Figura 5 ilustra os tipos de estruturas de dados.
25
Figura 5: Tipos de Estruturas de Dados
Adaptado de Buckey (2008)
Segundo Davis e Fonseca (2001), no modelo vetorial a localização e a aparência
geográfica de cada objeto são representadas por um ou mais pares de coordenadas.
Além disso, os objetos possuem atributos que os caracterizam e identificam
univocamente.
A representação vetorial possui três formas básicas:
• Ponto: um par ordenado de coordenadas espaciais que pode ser utilizado para
identificar localizações ou ocorrências no espaço como crimes, doenças e
residências;
• Linha: é um conjunto de pontos conectados, utilizados normalmente para
representar ruas, estradas e tubulações;
• Polígono : é a região do plano limitada por uma linha poligonal fechada. São
utilizados para representar limites de municípios, bairros e represas.
A Figura 6 ilustra as representações vetoriais.
Figura 6: Representações Vetoriais em um SIG
26
Ainda segundo Davis e Fonseca (2001), as imagens são estruturas matriciais que utilizam
valores amostrais quantizados a intervalos regulares. Nestas estruturas, o espaço é
representado por uma matriz composta de linhas e colunas, onde cada célula possui um
número de linha, um número de coluna e um valor correspondente ao atributo estudado.
O espaço é tratado como uma superfície plana e cada célula está associada a uma
porção do terreno. Estas estruturas também são conhecidas como raster. A Figura 7
mostra um exemplo de estrutura matricial.
Figura 7: Estrutura matricial (raster)
Fonte: Prefeitura Municipal de Betim
2.2.2. MODELOS DE REDE
As redes são formadas pelos elementos gráficos linha e ponto, resultando em uma
topologia conhecida como ‘arco-nó’. A seguir é apresentada uma definição para topologia:
“Dá-se o nome de topologia ao ramo da matemática que estuda as
propriedades das configurações geométricas que não são alteradas por
transformações ou deformações elásticas homomórficas. Trocando em
miúdos, topologia é um conjunto de técnicas que nos permitem perceber as
relações espaciais inerentes ao posicionamento relativo dos objetos,
independente de suas dimensões ou coordenadas exatas.” (Davis e
Fonseca, 2001).
27
O modelo de redes é um conjunto de nós conectados por linhas, onde tanto os nós
quanto as linhas possuem atributos que os caracterizam. Geralmente estes modelos são
utilizados para representar fenômenos que envolvem algum tipo de fluxo ou movimento
de recursos. Um exemplo de modelo de rede são as linhas de distribuição de energia,
onde os cabos são os arcos e os postes os nós.
Para resolução de problemas que envolvem modelos de rede se aplica, principalmente, a
Teoria dos Grafos. Esta é uma área de pesquisa já consolidada e bastante discutida na
literatura. Segundo Ziviani (2004), um grafo é constituído de um conjunto de vértices e um
conjunto de arestas conectando pares de vértices. A Figura 8 apresenta um exemplo de
grafo construído a partir de uma base cartográfica de logradouros. No grafo gerado, o
sentido de circulação das vias é representado pelo sentido da geometria.
Arco
Nó
Figura 8: Exemplo de grafo obtido a partir de uma base cartográfica de logradouros
No trabalho apresentado por Silva (2006), foi utilizado um grafo para representar a área
de estudo no cálculo do melhor caminho entre dois pontos. Nesse grafo, as vias foram
representadas pelas arestas e os cruzamentos pelos nós. Para trajetos a serem
percorridos com veículo, o grafo obtido era direcionado, onde a direção da aresta
representa o sentido de circulação. A impedância (custo de transposição) das arestas
pode ser o comprimento da via ou a ITT (Impedância de Transposição de Trecho). Para
obtenção da árvore de caminhos mínimos, foi utilizado o algoritmo de Dijkstra (DIJKSTRA,
1959).
28
No presente trabalho, a estrutura de grafos também foi utilizada para representar a área
de estudo, caracterizada por vias e cruzamentos.
2.2.3. APLICAÇÕES EM TRANSPORTES
Os Sistemas de Informação Geográficos são cada vez mais utilizados no setor de
transportes. Neste setor, estes sistemas são conhecidos como SIG-T (Sistemas de
Informação Geográfica para Transporte).
Segundo Rose (2001), o campo de aplicação dos SIG-T é amplo tanto na área de
planejamento, quanto em operações em transporte. Dentre as várias aplicações de SIG
em transportes, pode-se citar, dentre outras, o projeto geométrico de vias, monitoramento
e controle de tráfego, oferta e demanda em transportes, previsão de acidentes, otimização
de rotas, monitoramento e controle de operações rodoviárias.
O uso dos SIG em transportes possui diversas utilidades. Em Wu et al. (2001), utilizou-se
um SIG-T como um sistema de apoio a decisão para análise de escolha de rotas em
redes de tráfego congestionadas. Santos et al. (2000) aplicou um SIG-T na avaliação da
localização dos postos de saúde em uma cidade média brasileira. Este trabalho buscou
comprovar a eficiência da utilização dos SIG-T no estudo de implantação de postos de
saúde, de modo a otimizar a localização espacial das unidades de atendimento e
resultando em menores custos de transporte.
Farkuh Neto e Lima (2006) utilizaram um SIG-T no processo de roteirização de veículos
de uma rede atacadista. Neste trabalho, os autores simularam vários cenários diferentes
de distribuição a partir da variação de alguns parâmetros (horários de atendimento,
capacidade e número de veículos, entre outros) na busca de uma solução satisfatória.
Na área de engenharia de tráfego, Thieman (2008) utilizou um SIG-T na realização de
análises de acidentes em avenidas, onde o sistema foi aplicado para a visualização de
ruas congestionadas devido aos acidentes. Já Brasileiro e Aguiar (2004), utilizaram o SIG-
T para analisar a definição de rotas de veículos de coleta de resíduos de serviços de
saúde, buscando a redução tanto do tempo quanto da distância percorrida durante a
29
coleta. A Figura 9 apresenta uma aplicação real de um SIG-T para acompanhamento do
tráfego de veículos. O portal infotráfego, disponibilizado pela PBH (Prefeitura Municipal de
Belo Horizonte), permite checar qual a situação do trânsito na área central de Belo
Horizonte. De posse dessas informações, o motorista poderá optar por um trajeto menos
congestionado.
Figura 9: Aplicação real de um SIG-T
Fonte: Infotráfego (http://infotrafego.pbh.gov.br)
2.3. CONSIDERAÇÕES FINAIS
Neste capítulo foram apresentados os conceitos referentes à Geoprocessamento e
Sistemas de Informações Geográficas, enfatizando a utilização em transportes.
O Geoprocessamento está relacionado ao processamento de dados referentes ao espaço
geográfico. Os Sistemas de Informações Geográficas são ferramentas que realizam o
tratamento computacional de dados geográficos e recuperam informações, não apenas
com base em suas características alfanuméricas, mas também a partir de sua localização
espacial.
Os modelos de rede são estruturas compostas por arcos e nós que geralmente são
empregados na representação de entidades por onde ocorre algum tipo de fluxo ou
movimento de recursos como, por exemplo, o sistema viário. O suporte matemático para
resolução de problemas que envolvem modelos de rede é oferecido pela Teoria dos
Grafos.
30
Também foram apresentadas diversas aplicações dos Sistemas de Informações
Geográficos para Transportes, também conhecidos por SIG-T.
31
3. SIMULAÇÃO
Os principais conceitos sobre simulação de tráfego serão abordados neste capítulo de
modo a permitir uma melhor compreensão do processo de construção do simulador.
Neste capítulo também é feita uma explanação sucinta acerca de simulação
computacional.
3.1. SIMULAÇÃO COMPUTACIONAL
O comportamento de um sistema pode ser estudado por meio de um modelo de
simulação. Segundo Owen et al. (1996), um modelo consiste em uma apresentação,
representação ou idealização de aspectos selecionados da estrutura, comportamento ou
outras características de um processo ou sistema do mundo real. Conforme Lieberman e
Rathy (1997), a simulação é uma ferramenta eficiente para analisar uma grande
variedade de problemas dinâmicos difíceis de ser resolvidos por outros meios. Esses
problemas são caracterizados como complexos devido ao grande número de interações
simultâneas entre os vários componentes e entidades do sistema. Essas interações não
podem, geralmente, ser adequadamente descritas em forma lógica ou matemática. No
entanto, o comportamento de cada entidade ou as interações de um número limitado de
elementos podem ser bem compreendidos, de modo a ser representado lógica e
matematicamente com uma confiança aceitável.
Já segundo Miyagi (2004), a simulação é entendida como a “imitação” de uma operação
ou de um processo do mundo real. Ela envolve a geração de uma “história artificial” de um
sistema para a análise de suas características operacionais. O comportamento de um
sistema é estudado por meio de um modelo de simulação. Uma vez desenvolvido e
validado, este modelo pode ser utilizado na investigação de uma grande variedade de
questões sobre o sistema. Em alguns casos, esse modelo é baseado em formulações
matemáticas. No entanto, problemas muito complexos tendem a ter modelos matemáticos
muito difíceis de ser formulados e utilizados. Nestes casos, as técnicas de simulação são
utilizadas para reproduzir o comportamento do sistema num certo intervalo de tempo. Na
32
grande maioria das vezes, o modelo é implementado em um computador. Em função
disso, o termo “simulação” é sinônimo de “simulação computacional”. Embora a simulação
possa ser feita manualmente, o tempo gasto para realizar a grande quantidade de
cálculos envolvidos no processo inviabiliza esta abordagem na prática.
Conforme exposto por Chwif (1999), a simulação computacional teve início por volta da
década de 50, basicamente para fins militares. Com o crescente desenvolvimento dos
computadores, do software e da necessidade de avaliação de sistemas complexos, a
utilização da simulação foi intensificada e esta passou a ser aplicada nas mais diversas
áreas. Law e Kelton8, citados por Sakurada e Miyake (2003, p. 1), classificam os
programas de simulação em duas grandes classes:
• Linguagens de programação: são ferramentas de natureza genérica
caracterizados, principalmente, pela grande flexibilidade, possibilitando a
modelagem de qualquer tipo de sistema. As desvantagens são a necessidade de
conhecimentos específicos de programação e o tempo gasto na construção de
modelos mais complexos;
• Simuladores: são “pacotes” computacionais que favorecem a modelagem de
sistemas específicos sem muito esforço de programação. As vantagens desta
classe de software são o menor tempo gasto na construção dos modelos e a
facilidade de utilização pelo usuário. Ao contrário das linguagens de programação,
os simuladores possuem uma menor flexibilidade.
Segundo Pidd9, citado por Chwif (1999, p. 13), algumas das vantagens da simulação
computacional, quando comparada com a experimentação direta em um sistema real são:
• Custo: é muito mais barato realizar experimentos em um ambiente de simulação do
que em um sistema real, especialmente quando estão envolvidos recursos caros;
8LAW, A. M. and KELTON, W. D. Simulation Modeling & Analysis, McGraw-Hill, 1991, 2 ed. 9 PIDD, M. “Computer Simulation in Management Sciences”, John Wiley and Sons, Chichester, 4th edition, 1998.
33
• Riscos: a experimentação em determinados sistemas reais envolvem riscos tanto
materiais quanto humanos, o que não ocorre em um ambiente de simulação
computacional.
Além disso, a simulação permite a reprodução de sistemas reais em um tempo muito
inferior ao que seria gasto caso a reprodução fosse realizada no mundo real.
Por outro lado, Miyagi (2004) cita a complexidade da construção dos modelos, a
dificuldade de interpretação dos resultados e o tempo e recursos gastos na modelagem
do sistema e análise dos dados como desvantagens da simulação. Pode-se acrescentar
também a imprecisão e a dificuldade de validação como desvantagens da simulação.
3.1.1. APLICAÇÕES
A simulação é aplicada nas mais variadas e amplas áreas. O Quadro 1 mostra alguns
exemplos de uso das técnicas de simulação.
Quadro 1: Exemplos de aplicação da simulação
Adaptado de Miyagi (2004)
Área Aplicação Manufatura - Operações de montagem
- Sistemas de manipulação e movimentação de materiais Saúde - Gerenciamento de recursos hospitalares
- Otimização do atendimento em ambulatórios Transportes - Simulação de tráfego
- Operações de contêineres em portos - Postos de pedágios flexíveis de acordo com a demanda - Transporte público
Construção Civil - Processo de montagem de pontes suspensas - Novos paradigmas do processo construtivo - Análise de integridade e viabilidade
Entretenimento - Análise do fluxo de clientes - Determinação do número ideal de funcionários
Sistemas Computacionais
- Redes heterogêneas - Sistemas com arquitetura cliente/servidor
3.1.2. COMPONENTES DO SISTEMA
De modo a permitir um melhor entendimento e análise de um sistema de simulação,
Miyagi (2004) define alguns termos:
34
• Entidade: é um objeto de interesse em um sistema;
• Atributo: é uma propriedade da entidade;
• Atividade: é uma ação que ocorre no sistema;
• Evento: é uma ocorrência que altera o estado do sistema;
• Estado: descreve uma situação do sistema e é identificado pelo conjunto dos
valores das variáveis em um determinado instante.
O Quadro 2 mostra alguns exemplos de sistemas de simulação e seus respectivos
componentes.
Quadro 2: Exemplos de sistemas e seus componentes
Fonte: Miyagi (2004)
Sistema Entidades Atributos Atividades Eventos Variáveis de estado
Bancos Clientes Conta corrente Depósito, retirada
Chegada ao banco, saída do
banco
Número de caixas, número de clientes
esperando
Transporte Veículos
transportadores Malha viária,
destino Transporte
(movimentação)
Chegada na estação, saída da
estação
Número de veículos esperando em cada estação,
número de veículos em trânsito
Manufatura Máquinas Velocidade, capacidade,
taxa de falhas
Usinagem, estampagem,
soldagem Falha, quebra Estado da máquina
Comunicações Mensagens Comprimento, destino
Transmissão de mensagens
Chegada da mensagem ao
destino
Número de mensagens
esperando para serem transmitidas
Inventário Almoxarifado,
estoque Capacidade Retirada de
partes Pedido Nível do estoque, demanda prevista
3.1.3. TIPOS DE MODELOS DE SIMULAÇÃO
Silva (2007) classifica os modelos de simulação da seguinte maneira:
• Estáticos ou dinâmicos: são classificados como estáticos os modelos que visam
representar o estado de um sistema em um instante, sem levar em conta a variável
tempo. Os modelos dinâmicos são formulados para representar as alterações de
estado do sistema ao longo da contagem do tempo de simulação;
• Determinísticos ou estocásticos: os modelos determinísticos não utilizam variáveis
aleatórias, enquanto os estocásticos utilizam uma ou mais. Os modelos
35
determinísticos possuem um conjunto de entradas conhecido que resultarão em
um único conjunto de saída. Já os modelos estocásticos possuem entradas
aleatórias que vão gerar saídas aleatórias. Considerando este caráter aleatório, as
saídas da simulação estocástica devem ser tratadas como estimativas estatísticas
das características reais do sistema;
• Discretos ou contínuos: os modelos discretos são aqueles em que o avanço da
contagem de tempo na simulação se dá na forma de incrementos cujos valores
podem ser definidos com base na ocorrência dos eventos ou pela determinação de
um valor fixo. Neste tipo de simulação, os valores das variáveis de estado do
sistema só podem ser determinados no instante de atualização da contagem de
tempo. No modelo contínuo todas as variáveis simuladas, dependentes e
independentes, podem ter significado contínuo, o que possibilita determinar os
valores das variáveis de estado a qualquer instante. A Figura 10 ilustra estes dois
tipos.
Figura 10: Eventos discretos x contínuos
Fonte: Chwif (1999, p. 17)
No presente trabalho, o modelo de simulação foi construído utilizando a linguagem de
programação Java. Quanto ao tipo do modelo, pode-se classificá-lo como dinâmico,
estocástico e discreto.
3.2. SIMULAÇÃO DE TRÁFEGO
O crescente aumento da frota de veículos nas grandes cidades vem causando sérios
problemas de tráfego, exigindo um controle e planejamento cada vez maior por parte dos
órgãos que regulam o trânsito nas cidades. O uso da simulação de tráfego tem se
36
mostrado uma ferramenta de suma importância na análise e prevenção dos problemas
relacionados ao tráfego, especialmente o urbano. Ela permite quantificar os efeitos de
várias mudanças no sistema, antes que estas sejam efetivamente implementadas.
Segundo Bazzan & Klügl (2007), o controle do fluxo de tráfego tem como principais
objetivos prover um movimento ordenado do tráfego, aumentar a capacidade10 na
interseção, reduzir o índice de acidentes, interromper o tráfego principal em prol do
tráfego secundário e, eventualmente, sincronizar semáforos a fim de permitir um
movimento contínuo do tráfego a uma determinada velocidade.
Os simuladores mais conhecidos são desenvolvidos em outros países e nem sempre
consideram as características encontradas no trânsito das cidades brasileiras. Além disso,
são ferramentas que muitas vezes não se encaixam na realidade financeira da maioria
dos órgãos reguladores do tráfego do nosso país.
Os modelos de simulação de tráfego, geralmente, são classificados conforme o nível de
agregação (KRAJZEWICZ et al., 2002; LIEBERMAN e RATHI, 1997; WANG e PREVEDOUROS, 1996).
Macroscópica
Nesta abordagem, o tráfego é tratado com baixo nível de detalhamento. Ele é
representado como uma entidade única, desprezando a individualidade dos veículos. As
relações entre fluxo, velocidade e densidade descrevem o funcionamento do sistema. Os
modelos são menos flexíveis e pouco detalhados, mas em contrapartida exigem menor
esforço computacional. Em função disso, são bastante apropriados para modelagem de
grandes redes.
Microscópica
São caracterizados pelo alto nível de detalhamento. Tanto os veículos quanto as demais
entidades do sistema podem ser representados de forma individualizada. A
movimentação dos veículos se dá tanto longitudinalmente quanto transversalmente ao
longo dos trechos. Devido ao alto nível de detalhamento e o grande número de interações
10 Capacidade é o número de unidades de tráfego que a aresta pode suportar em um dado instante.
37
entre as entidades, é uma abordagem que exige muito esforço computacional e requer
um processo de calibração complexo, difícil e demorado.
Mesoscópica
Os modelos possuem um nível intermediário de detalhamento. É uma abordagem mista
que representa algumas entidades de forma agregada e outras com certo nível de
detalhamento. São geralmente utilizados em redes semafóricas.
Sub-microscópica
Também conhecida como nanoscópica, considera os veículos individualmente como a
classificação microscópica. Entretanto, possui um nível de detalhes maior, considerando,
por exemplo, a rotação do motor do veículo. Isso permite a apuração mais detalhada
como, por exemplo, das emissões de poluentes produzidas pelos veículos, por exemplo.
A Figura 11 ilustra os diferentes níveis de agregação.
Figura 11: Classes de simulação
(da esquerda pra direita: macroscópica, microscópica, sub-microscópica; no círculo: mesoscópica).
Fonte: KRAJZEWICZ et al., 2002
38
Os simuladores de tráfego, especialmente os microscópicos, são caracterizados por exigir
uma grande quantidade de dados de entrada como, por exemplo, a malha viária da região
a ser estudada. Partindo da premissa de que é cada vez mais comum a utilização de
Sistemas de Informação Geográfica pelas administrações municipais como ferramenta de
planejamento urbano, é plausível o uso de tais ferramentas como fonte de dados para os
simuladores, possibilitando a reutilização de informações espaciais da malha viária, tais
como vias e localização dos semáforos, dentre outras.
Segundo Fotherby (2002), um simulador de tráfego com animação é composto por quatro
componentes. O primeiro deles são os dados, que fornecem as informações necessárias
ao modelo, tais como estatísticas e informações do tráfego. O segundo componente é o
algoritmo de simulação responsável por controlar os componentes do sistema. O terceiro
é o componente de animação, que traduz o estado dos componentes dinâmicos do
sistema. O último componente é a validação, responsável por avaliar a aderência do
modelo implementado ao mundo real. O modelo une estes componentes e define as
regras de funcionamento do sistema. A Figura 12 ilustra estes componentes.
Figura 12: Componentes de uma simulação visual.
Adaptado de Fotherby (2002)
Os modelos microscópicos são, geralmente, mais complexos e de desenvolvimento mais
caro. Além disto, exigem um maior número de parâmetros. No entanto, estes são a
tendência em engenharia de tráfego uma vez que são a única forma de se lidar com
comportamentos individuais (Bazzan & Klügl, 2007). O presente trabalho trata da
construção de um simulador utilizando a abordagem microscópica. Esta escolha levou em
consideração a área de estudo (hipercentro de Belo Horizonte) utilizada no trabalho
desenvolvido por Viana Júnior (2004) e Silva (2006) no projeto GEOPROC e a própria
39
tendência da área de engenharia de tráfego citada por Bazzan e Klügl (2007). A seguir
serão apresentados alguns modelos comportamentais aplicados à abordagem
microscópica.
Veículo-seguidor ( car-following 11)
É o modelo que rege a movimentação dos veículos ao longo da rede. A velocidade e a
aceleração são determinadas em função da distância em relação ao veículo da frente. Os
veículos obedecem a parâmetros de aceleração e buscam atingir uma velocidade pré-
definida. Segundo Bham (2003), os modelos de car-following consomem mais tempo
computacional e recursos, em contrapartida são mais detalhados e potencialmente mais
precisos. A Figura 13 mostra uma representação gráfica do comportamento dos
motoristas conforme o espaçamento para o veículo líder. A situação A ilustra o
espaçamento entre o veículo seguidor e o líder. Na situação B, o veículo seguidor atinge a
distância de segurança para o veículo líder e inicia a desaceleração. A aceleração do
veículo seguidor é iniciada quando este se encontra a uma distância segura do veículo
líder. A situação C mostra este comportamento.
Figura 13: Comportamento dos motoristas no modelo car-following conforme o espaçamento.
Adaptado de Shekleton, 2002
11 Modelos de car-following ou veículo-seguidor definem a evolução dos veículos na via. Neste trabalho o termo em inglês foi utilizado diversas vezes por ser comumente encontrado na literatura que aborda este tema.
40
Autômato Celular
Outra abordagem para a movimentação dos veículos é a utilização de autômatos
celulares. Um modelo pioneiro é o de Nagel e Schreckenberg (1992). Neste modelo, os
trechos de vias são divididos em células com um comprimento fixo (7,5 metros), e cada
célula pode estar ou não ocupada por um veículo. A velocidade é dada por um inteiro
positivo, expressa em número de células ocupadas por unidade de tempo. Por ser
discreto no tempo e no espaço, é mais eficiente, do ponto de vista computacional, do que
o modelo car-following. A Figura 14 ilustra a divisão em células de um trecho de via.
Figura 14: Trechos de vias separados em células.
Fonte: CHOPARD, DUPUIS E LUTHI (1997)
Mudança de faixa ( lane-changing ) e aceitação de brechas ( gap-acceptance )
Segundo Liu (1994), quando um veículo tem a intenção de mudar de faixa, ele precisa
conhecer a velocidade e a localização dos veículos vizinhos. A mudança de faixa ocorre,
geralmente, quando um veículo vai fazer uma conversão em um cruzamento ou quando o
veículo imediatamente a sua frente trafega a uma velocidade mais lenta que a sua. Para
efetuar a mudança de faixa, são aplicadas as regras de aceitação de brechas, que
garantem uma mudança de faixa segura. O modelo de aceitação de brechas se baseia na
probabilidade de um veículo encontrar uma brecha, em algum instante de tempo, que
permita a sua entrada no fluxo da via prioritária. O valor da brecha pode decrescer com o
aumento do tempo de espera.
41
A seguir é mostrado o estado-da-arte da simulação de tráfego, apresentando alguns
trabalhos considerados relevantes.
3.2.1. ESTADO-DA-ARTE
A Simulação de tráfego é uma área de estudo bastante recorrente na literatura
especializada. Panwai e Dia (2005) apresentam um estudo comparativo sobre o
comportamento dos modelos de car-following. Estes modelos representam um dos
processos mais importantes em simulações microscópicas por definirem a interação entre
veículos adjacentes em uma mesma via. Os autores selecionaram três entre as mais
utilizadas ferramentas de simulação de tráfego (AIMSUN, VISSIM e PARAMICS) e
fizeram uma avaliação comparativa entre os modelos de car-following implementados. Foi
feita a comparação entre o comportamento dos modelos de car-following avaliados e os
resultados colhidos no campo a partir de um veículo instrumentado. Este trabalho se
destaca pelo fato de comparar modelos de car-following utilizados por ferramentas
comerciais, auxiliando no processo de escolha e validação do modelo a ser
implementado.
Hartman (2004) trata da construção de um modelo de simulação de tráfego urbano
baseado em autômatos celulares. O estudo foi baseado no modelo de Nagel e
Schreckenberg, inicialmente criado para ser aplicado em rodovias. Um dos objetivos
deste trabalho foi evoluir este modelo de modo a adequá-lo ao tráfego urbano, alterando,
por exemplo, o tamanho da célula de 7,5 metros (modelo original) para 2,5 metros.
Os modelos baseados em car-following são caracterizados pela capacidade de simular o
tráfego de forma realística. Já os modelos que utilizam autômatos celulares possuem um
desempenho computacional superior. Bham (2003) descreve um modelo híbrido, que une
o desempenho dos modelos baseados em autômatos celulares ao realismo
proporcionado pelos modelos car-following.
Tanto Hartman (2004) quanto Bham (2003) utilizam modelos de car-following baseados
em autômatos celulares com alterações, de modo a adequá-los a condições urbanas de
tráfego. Apesar de inovadores, a falta de informações mais concretas acerca dos modelos
acaba por desencorajar a adoção dos mesmos.
42
Segundo Almeida e Evsukoff (2003), a lógica fuzzy pode ser vista como uma extensão da
teoria clássica de conjuntos, e foi criada para tratar graus de pertinência intermediários
entre a não-pertinência e a pertinência total de elementos de um universo de discurso
com relação a um dado conjunto, permitindo a representação de conhecimento vago e
impreciso sobre um determinado domínio. Hoogendoorn et al. (1998) registraram a
utilização da lógica fuzzy na engenharia de tráfego. Neste trabalho, pode-se destacar o
emprego desta técnica na modelagem do comportamento dos motoristas e na escolha
das rotas.
Bazzan & Klügl (2007) descrevem novas tendências em engenharia de transportes e
tráfego e sistemas inteligentes de transporte (ITS), do inglês Intelligent Transportation
Systems . A introdução de novas técnicas relacionadas com ITS e ATIS (Advanced
Traveller Information System), as quais podem disseminar diversas informações aos
usuários do sistema, como alternativa de rotas e bloqueio de vias, fez com que as
ferramentas tradicionais de simulação evoluíssem de modo a reproduzir o comportamento
do motorista. Em simulação microscópica, especificamente, pode-se citar o uso da
simulação baseada em agentes (ABS, do termo em língua inglesa agent-based
simulation). Neste tipo de simulação, é possível modelar o processo decisório do
motorista ou de qualquer outro agente do sistema. Ainda neste trabalho são listados
alguns desafios a serem superados pelos pesquisadores da área de sistemas inteligentes
para transportes. O uso de estradas automatizadas é um deles. Neste tipo de via, o
controle dos veículos é completamente automatizado, além de sua aceleração,
desaceleração e ações de mudança de faixa.
Pinto et al. (1998) abordaram a utilização de um SIG para a construção da topologia da
rede de transportes a ser utilizada no simulador mesoscópico SATURN. Segundo os
autores, a utilização dessa ferramenta proporcionou ganhos significativos de tempo e
simplicidade na montagem da rede. Este trabalho destaca a importância da utilização do
SIG como banco de dados referencial do sistema viário das cidades, permitindo a
manutenção sistemática das informações. Além disso, os autores citam alguns dos
problemas que precisam ser superados durante o processo de integração entre um SIG e
um simulador de tráfego.
43
Claramunt et al. (2000) propuseram a criação de um framework para integração, análise e
visualização de dados de tráfego urbano em tempo real com SIG. Este tipo de integração
permite a análise de dados gerados por simuladores ou por sistemas de monitoramento
de tráfego em tempo real. O trabalho destaca a importância da análise de dados de
tráfego de modo espacial, complementando as saídas comumente utilizadas, como
gráficos e planilhas.
Gonçalves (2003) apresenta uma forma conceitual para implementar o comportamento de
agentes inteligentes num contexto espacial, utilizando SIG, sistemas multi-agentes e
simulação por eventos discretos. Nessa abordagem, os componentes espaciais são
classificados em passivos (sem comportamento dinâmico) e ativos (os agentes espaciais).
3.2.2. APLICAÇÕES COMERCIAIS
Portugal (2005) apresenta um estudo comparativo entre simuladores encontrados no
mercado. A seguir são listados alguns dos simuladores microscópicos que fizeram parte
deste estudo:
• AIMSUN2 – Advanced Interactive Microscopic Simulator for Urban and Non-urban
Networks. De origem espanhola, é utilizado em redes e vias expressas. Utiliza
volumes de tráfego e proporções de giro nas interseções ou matrizes O/D12.
Modela interseções com prioridades, semafóricas, rampas de vias expressas, tipos
de veículos, faixas exclusivas para um ou mais tipos de veículos, reação dos
motoristas a painéis de mensagens variáveis e bloqueio parcial de vias. Suas
saídas relatam densidade, volumes alocados, velocidade, tempo de viagem, fila,
consumo de combustível, emissão de poluentes, dentre outros. Possui recurso
gráfico que simula e visualiza cenários em três dimensões.
• CORSIM – Corridor Simulation. Trabalha com volumes de tráfego e proporções de
giro nas interseções ou matrizes O/D. Modela interseções com prioridade e
semafóricas de tempo fixo ou atuado. Possui tipos de veículos distintos, operação
de ônibus em faixa única ou sem faixa exclusiva, ponto de parada com ou sem baia
12 Uma matriz O/D (origem/destino) determina a quantidade de viagens dos veículos entre uma região de origem e outra de destino.
44
e tempo de embarque/desembarque. Modela estacionamento nos trechos e fontes
que geram/atraem tráfego (estacionamento fechado, por exemplo). Considera o
comportamento do motorista com relação ao avanço no amarelo do semáforo,
bloqueio parcial da via, operações de carga/descarga, estacionamento irregular e a
interferência dos pedestres nos giros das interseções. As saídas são velocidade,
número de paradas, filas, atraso, veículo-hora de viagem, veículo-km de viagem,
consumo de combustível e emissão de poluentes. O CORSIM faz parte do pacote
TSIS (Traffic Software Integrated System).
• DRACULA – Dynamic Route Assignment Combining User Learning and
Microsimulation. Modelo de origem britânica, desenvolvido pela Universidade de
Leeds para redes, utilizando matrizes O/D. Modela interseções com prioridade,
rotatórias, semafóricas de tempo fixado ou atuado, tipos de veículos distintos com
detalhamento das características físicas e operacionais de cada tipo, operação de
ônibus com ou sem faixa exclusiva, bloqueio parcial da via, controle eletrônico de
velocidade e tarifação urbana. Suas saídas são volumes alocados, velocidade,
atraso, fila, consumo de combustível, emissão de poluentes.
• PARAMICS – Parallel Microscopic Traffic Simulator. É um programa para
simulação de redes de tráfego e de vias expressas que considera em tempo real as
características individuais de cada veículo. Possui funcionalidades que permitem
um exame detalhado de uma extensa área de gerenciamento de tráfego e opções
de políticas de transporte como prioridade para ônibus, estacionamento e restrição
de uso de faixa de tráfego. Trabalha com volumes de tráfego e proporções de giros
nas interseções ou com matrizes O/D, com a opção de serem atualizadas por
contagem de tráfego. Modela interseções com prioridade, semafóricas de tempo
fixo ou atuado, rotatórias, tipos distintos de veículos, operação de ônibus com ou
sem faixa exclusiva, estacionamento, fontes geradoras/atratoras de tráfego,
bloqueio parcial da via, operações de carga/descarga, travessia de pedestres e
estacionamento irregular. Suas saídas são velocidade, atraso, tempo de viagem,
fila, densidade, consumo de combustível, emissão de poluentes e nível de ruído.
3.3. CONSIDERAÇÕES FINAIS
Este capítulo apresentou um breve resumo teórico sobre simulação de tráfego.
45
Inicialmente foi feita uma introdução ao tema simulação computacional para em seguida
serem apresentados os principais conceitos sobre simulação de tráfego, enfatizando a
abordagem microscópica.
Por fim foi feita uma breve revisão sobre o estado-da-arte da simulação de tráfego e
foram apresentadas algumas soluções comerciais voltadas para a simulação de tráfego.
Devido aos custos de aquisição destas ferramentas, optou-se por não utilizá-las na fase
de experimentos deste trabalho.
Ao contrário da maioria das ferramentas de simulação de tráfego disponíveis, a solução
sugerida neste trabalho segue o paradigma do software livre. Isso permite a sua utilização
livremente, além de possibilitar a extensão de suas funcionalidades, de acordo com
necessidades específicas. Outra característica importante é a sua integração com um
SIG, herdando as funcionalidades que comumente são encontradas neste tipo de
programa.
O próximo capítulo detalha a construção da ferramenta proposta neste trabalho.
46
4. DESENVOLVIMENTO DO SIMULADOR
Este capítulo descreve as etapas do desenvolvimento da ferramenta de simulação de
tráfego. Esta ferramenta é uma continuação do projeto GEOPROC e tem como base a
mesma arquitetura utilizada por Silva (2006) na construção do plugin RTIGIS.
Inicialmente é feita uma descrição do RTIGIS, ferramenta desenvolvida por Silva (2006)
como continuação do trabalho de Viana Júnior (2004). Em seguida são apresentadas as
bibliotecas, conceitos e técnicas utilizadas na construção do simulador de tráfego.
4.1. RTIGIS
O RTIGIS, acrônimo para Real Time Intelligent Geographical Information System, é um
plugin desenvolvido sob o paradigma orientado a objetos, de código fonte aberto e
integrado ao OpenJump. Foi construído por Silva (2006) a partir do trabalho de Viana
Júnior (2004) dentro do grupo de pesquisa GEOPROC do CEFET-MG.
O objetivo do trabalho de Viana Júnior (2004) foi propor uma solução que possibilite
identificar o melhor caminho entre dois pontos em uma malha viária. Geralmente, as
escolhas de rotas em malhas viárias são feitas por intermédio do cálculo do menor
caminho, ou seja, a menor distância entre a origem e o destino é tida como sendo a
melhor escolha. No entanto, quando se trata de rotas que envolvem veículos, sabe-se que
outras variáveis, além do comprimento da via, podem influenciar nesta escolha. No
trabalho de Viana Júnior (2004), foi proposta uma solução para essa limitação por meio
da criação de um atributo que sintetiza o comprimento e a quantidade de veículos das
vias. Esse novo atributo sintetizado foi denominado “Impedância de Transposição do
Trecho”, ou ITT. A ITT é um atributo numérico e representa o custo de transposição de
um trecho de via. O cálculo deste atributo foi feito utilizando a lógica fuzzy.
Uma das etapas do trabalho desenvolvido por Viana Júnior (2004) foi a construção da
base de dados do SIG. Os atributos necessários para cálculo da ITT são o comprimento
da via e a quantidade de veículos. O primeiro foi obtido a partir do cálculo da distância
geométrica entre os nós do arco que representam um trecho de via. Este cálculo é
47
possível porque a rede utilizada é do tipo geométrica e foi desenhada em escala real (no
sistema de coordenadas UTM13) a partir de um mapa em formato DXF14 em que estão
representadas as sarjetas de todo o centro de Belo Horizonte. Já os dados relativos a
quantidade de veículos foram fornecidos pela Empresa de Transportes e Trânsito de Belo
Horizonte (BHTrans) em formato PDF15, a partir de pesquisas que mediram esta
quantidade para cada conversão permitida nos cruzamentos. A área de abrangência
desta pesquisa foi o fator principal para definição da região de estudo. A região que
possuía um conjunto mínimo de dados necessários para o trabalho foi a escolhida. Esta
região é denominada “Hipercentro”. A Figura 15 apresenta o detalhamento da área de
estudo.
Figura 15: Área de estudo – Hipercentro de Belo Horizonte
Adaptado de Viana Júnior (2004)
13 A sigla UTM é originada do nome da projeção Universal Transversa de Mercator, que é uma projeção cilíndrica da superfície terrestre cuja unidade é o metro. 14 A sigla DXF é originada da expressão inglesa Drawing Interchange File que é um formato digital muito utilizado para intercâmbio de dados vetoriais. 15 PDF é a sigla para Portable Document Format.
48
Ainda sobre o trabalho de Viana Júnior (2004), é válido citar que todo o trabalho de
entrada dos dados necessários ao cálculo da ITT foi feito de modo manual. Além disso, o
cálculo da ITT foi feito utilizando a Fuzzy Logic Toolbox do Matlab16. Já o cálculo do custo
mínimo, para obtenção do melhor caminho, foi feito utilizando o software SPRING17.
Apesar de funcional, o processo de atualização da ITT com novos dados ficou bastante
trabalhoso, suscetível a erros e exigindo que a tarefa fosse desempenhada por alguém
que tivesse conhecimentos tanto na área de SIG quanto de lógica fuzzy. O trabalho
seguinte ao de Viana Júnior (2004) no grupo GEOPROC, desenvolvido por Silva (2006),
teve como um dos objetivos a automatização das etapas de preparação da base de dados
e cálculo da ITT.
Naquele trabalho foi construído um plugin que permite o cálculo automatizado da ITT com
dados atualizados assim como a obtenção do melhor caminho. Ao invés de utilizar os
dados da pesquisa de quantidade de veículos em formato PDF, este trabalho propôs a
utilização de informações fornecidas pelo Controle Inteligente de Tráfego (CIT), gerido
pela BHTRANS. Este sistema foi implantado com o objetivo de melhorar o gerenciamento
e a segurança do trânsito de Belo Horizonte, por meio de melhorias no sincronismo dos
semáforos, aumento do número de travessias de pedestres e redução do tempo de
parada dos pedestres e veículos nos sinais. Além de novos semáforos, câmeras de TV
para monitoramento e painéis de mensagem eletrônicos, foram instalados sensores no
asfalto que permitem coletar a demanda de tráfego (fluxo de veículos) e o envio destes
dados para o sistema de controle centralizado. Estes dados são coletados durante todo o
dia em intervalos de tempos definidos, permitindo medir o movimento das vias
monitoradas e, por meio de um sistema adaptativo, fazer a reprogramação dos tempos
semafóricos de modo automático. A partir destas informações, Silva (2006) propôs a
utilização destes dados como parâmetro de entrada do SIG para sugestão de trajetos,
substituindo a coleta manual feita por meio de pesquisas no trabalho de Viana Júnior
(2004). A Figura 16 ilustra o fluxo de informações do RTIGIS.
16 www.mathworks.com 17 www.dpi.inpe.br/spring
49
Figura 16: Fluxo de dados automatizado do RTIGIS
Adaptado de Silva (2006)
As funcionalidades desenvolvidas por Silva (2006) foram estendidas a partir da biblioteca
do SIG aberto OpenJump. A linguagem de programação utilizada foi Java. Para o
desenvolvimento do sistema de inferência fuzzy, foi utilizado o framework FuzzyF18 (Fuzzy
Logic Framework). Já para manipulação de grafos, foi utilizada a biblioteca JGraphT19. Os
experimentos do plugin desenvolvido foram feitos com a utilização da mesma rede viária
construída por Viana Júnior (2004).
No presente trabalho também será utilizada a arquitetura do OpenJump, assim como a
rede viária construída por Viana Júnior (2004). Os dados de fluxos de veículos utilizados
por Viana Júnior (2004) e Silva (2006) também serão utilizados neste trabalho, de modo a
permitir a comparação dos resultados obtidos nos experimentos destes trabalhos com os
resultados gerados pelo simulador aqui desenvolvido.
4.2. OPENJUMP
O OpenJump é um SIG de código aberto escrito em linguagem Java. É uma ferramenta
livre, multiplataforma e pode ser estendido por meio de plugins. Segundo Couto et al.
(2006), o OpenJump é uma implementação da JTS20 (Jump Topology Suite), que
implementa grande parte das interações espaciais necessárias para um bom
funcionamento de uma ferramenta SIG. Com relação a sua liberdade, é um software GPL,
isto é, inserido nos conceitos de software livre de acordo com a licença GPL (General
Public License) e que rege uma grande parte do software livre existente.
18 http://www.inf.unisinos.br/~jrbitt/fuzzyf/ 19 http://jgrapht.sourceforge.net/ 20 http://www.vividsolutions.com/jts/jtshome.htm
50
O OpenJump é baseado no projeto JUMP GIS21, desenvolvido pela empresa Vivid
Solutions Inc. Este projeto disponibiliza um conjunto de aplicativos que provêem uma API
extensível e uma interface gráfica de usuário para visualização e manipulação de dados
espaciais.
Após o lançamento da versão inicial, o desenvolvimento regular do JUMP foi interrompido
pela Vivid Solutions. No entanto, uma grande comunidade de usuários e desenvolvedores
se formou, contribuindo para disseminação, evolução e correção de falhas do programa.
Em seguida, um novo projeto surgiu e foi chamado de OpenJump. O grande número de
plugins existentes no site do projeto comprova a popularidade da ferramenta assim como
sua extensibilidade.
A arquitetura do OpenJump possui dois pacotes: a API, responsável pelos componentes
que oferecem suporte para operações de entrada/saída, manipulação de feições e
tratamento de informações espaciais. Já a parte de interface gráfica com o usuário é
contemplada pelo pacote Workbench. A Figura 17 ilustra a divisão em pacotes da
arquitetura JUMP.
Figura 17: Pacotes da arquitetura JUMP
Fonte: http://www.jump-project.org
21 http://www.jump-project.org/
51
Para um melhor entendimento das próximas etapas da construção do simulador, faz-se
necessária a explicação de alguns termos relacionados ao OpenJump que serão
utilizados:
• Extension : uma extensão representa a implementação de uma ou várias
funcionalidades que são agregadas à versão básica do OpenJump. É o principal
mecanismo de personalização do programa. A interação com a área de trabalho é
feita através de itens de menu ou botões de ação. Neste trabalho, foram
desenvolvidas duas extensões. A primeira é responsável pela criação da área de
simulação e a segunda pela simulação. As duas extensões foram feitas utilizando
itens de menu;
• Tarefa: a tarefa armazena em um arquivo XML (com a extensão jmp) todas as
informações que identificam a fonte de dados das camadas assim como a
formatação das mesmas;
• Feature : uma feature, ou característica, é composta por atributos espaciais e não-
espaciais. O atributo espacial, conhecido como geometria, representa um objeto no
espaço, utilizando pontos, linhas e polígonos. Já os atributos não-espaciais
caracterizam este objeto com informações alfanuméricas. A Figura 18 detalha uma
feature, destacando os atributos alfanuméricos da geometria selecionada;
• Layer : uma layer, ou camada, é um conjunto de features afins e georreferenciadas
que quando sobrepostas formam um mapa. Conceitualmente, em uma mesma
camada não devem existir elementos que se sobreponham espacialmente. Uma
camada pode ser do tipo vetorial ou raster (imagem). O gerenciador de camadas
do OpenJump é ilustrado na Figura 19.
Figura 18: Geometria selecionada e seus atributos alfanuméricos
52
Uma característica importante do OpenJump é a sua capacidade de trabalhar com dados
vetoriais em vários formatos. No entanto, para manter a mesma linha seguida por Silva
(2006), todos os dados consumidos e gerados neste trabalho utilizaram o formato
shapefile22.
Figura 19: Gerenciador de camadas do OpenJump
O estudo mais aprofundado da arquitetura do OpenJump está fora do escopo deste
trabalho. Para maiores informações, sugere-se a leitura da documentação do OpenJump
(OpenJump, 2003).
Nas próximas seções são apresentadas as etapas de construção do simulador. De modo
a facilitar o entendimento da estrutura utilizada, a Figura 20 ilustra a divisão lógica do
projeto e seus relacionamentos, por meio do diagrama de pacotes.
22 O shapefile é um popular formato de dados vetoriais desenvolvido pela empresa ESRI.
53
Figura 20: Diagrama de pacotes das extensões desenvolvidas para o OpenJump
Uma breve descrição de cada pacote é feita no Quadro 3.
Quadro 3: Descrição dos pacotes do simulador
Pacote Descrição
br.cefetmg.lsi.gissim.gis Contém as classes responsáveis pela criação da área de simulação.
br.cefetmg.lsi.gissim.plugin
Classes que estendem a arquitetura de implementação de plugin do OpenJump. Estas classes são responsáveis pela configuração dos menus de controle e fazem a ligação entre o ambiente do OpenJump e a funcionalidade implementada pelo plugin.
br.cefetmg.lsi.gissim.simulation Contém as classes que compõem a máquina de simulação.
br.cefetmg.lsi.gissim.stats Classes que definem a estrutura de serialização dos dados estatísticos.
br.cefetmg.lsi.gissim.ui Pacote responsável pelas classes de interface com o usuário.
br.cefetmg.lsi.gissim.utils Classes utilitárias, de uso genérico, que servem de apoio aos outros pacotes.
4.3. CRIAÇÃO DA ÁREA DE SIMULAÇÃO
O simulador desenvolvido neste trabalho considera uma micro-região como área de
simulação. A principal fonte de informações para o simulador são as bases cartográficas
municipais, que comumente possuem dados relativos às vias de circulação. É natural que
essas informações abranjam toda a extensão do município. No entanto, em função de seu
54
caráter microscópico, a área de simulação deve ser restrita a uma pequena região de
estudo. Na Figura 21 é mostrado o detalhe de uma malha viária selecionada para
simulação.
Figura 21: Detalhe da área de simulação.
Fonte: Prefeitura Municipal de Betim
O processo de criação da área de simulação deve ser capaz de identificar os pontos de
entrada/saída de veículos e os cruzamentos na malha viária selecionada. Cada categoria
de informações identificada é transformada em uma camada do OpenJump e os atributos
criados são utilizados como parâmetros de entrada para a simulação.
Para executar o processo de criação da área de simulação deve-se carregar uma camada
de trechos logradouros. Os trechos logradouros são caracterizados por serem
seccionados entre os cruzamentos, ou seja, um logradouro é representado por um
conjunto de trechos. Esta característica permite que os dados cartográficos sejam
carregados na estrutura de dados denominada grafo, composta por arestas (trechos) e
nós (cruzamentos). Outro ponto importante que deve ser considerado é a orientação dos
trechos. O sentido do desenho da geometria representa o sentido de circulação da via. A
ordem dos vértices que compõem a geometria determina o sentido do trecho, ou seja, o
primeiro vértice é a origem e o último o destino. Um atributo alfanumérico define se a via
possui sentido único ou duplo. Na Figura 22, esta explicação é detalhada. As setas dos
trechos indicam o sentido da geometria. Os atributos N (não) e S (sim) determinam se a
via é de mão única ou dupla.
55
Figura 22: Sentido das vias
Feita a carga da camada de trechos logradouros, a região de estudo deve ser
selecionada. O OpenJump possui um recurso conhecido por “Quadro” ou “Fence” que
permite a seleção de feições que estejam contidas em um polígono. Como o objetivo
deste plugin não é simplesmente selecionar as feições e sim analisar a rede selecionada
para em seguida criar novas camadas categorizadas, o recurso do “Quadro” foi utilizado
somente como delimitador da área de simulação. Internamente, o recurso do “Quadro”
disponibiliza um objeto do tipo geometria (da API JTS), o que permite que sejam feitas
comparações espaciais do tipo contém, não contém, intercepta e toca.
Com a área de simulação delimitada, são criadas as novas camadas contendo as
informações cartográficas que servirão de dados de entrada para a simulação.
Inicialmente é criada a camada denominada “Trechos”, que contém todos os trechos
logradouros contidos na região delimitada pelo “Quadro” ou que a interceptam. A partir
deste conjunto de trechos, é criada uma estrutura de dados do tipo grafo. Para esta
operação, foi utilizada a biblioteca de manipulação de grafos JGraphtT, que permite,
dentre outras coisas, a criação de grafos direcionados e não-direcionados. Esta mesma
biblioteca também foi utilizada por Silva (2006). O grafo gerado possui como arestas os
trechos e como nós os vértices inicial e final de cada trecho. Quando vários vértices são
localizados espacialmente no mesmo lugar, somente um é mantido e os demais
eliminados, garantindo que não exista mais de um nó no mesmo lugar. Este processo
pode ser mais bem entendido na Figura 23.
56
Figura 23: Detalhe da eliminação de nós duplicados
O grafo gerado é do tipo não-direcionado, servindo apenas para identificar as demais
camadas que serão geradas. Um exemplo gráfico de uma área de simulação com as
camadas criadas é ilustrado na Figura 24. A seguir é feita uma descrição textual dessas
camadas:
• Entrada/Saída de veículos : representa os nós de entrada/saída de veículos na
rede. Todos os nós que estão conectados com apenas uma aresta são
classificados como do tipo entrada/saída;
• Pontos de Controle : a camada de controle contém os nós que apenas ligam dois
trechos. Esta situação ocorre quando a base cartográfica possui trechos que foram
seccionados fora de um cruzamento, como por exemplo, na divisa entre bairros.
Todos os nós que estão conectados com duas arestas são inseridos nesta
camada;
• Cruzamentos : são caracterizados por nós que estão conectados com mais de
duas arestas. Representam os cruzamentos em uma malha viária.
Figura 24: Classificação das camadas de pontos
57
Além dos dados espaciais, os atributos alfanuméricos também são criados por este
processo. Cada camada possui atributos específicos que serão utilizados posteriormente
como parâmetros de entrada do simulador. É importante citar que toda feição do
OpenJump possui um atributo denominado FID ou “Feature ID”. Este atributo identifica
unicamente uma feição na camada. Os atributos criados por camada, assim como suas
descrições, são apresentados pelo Quadro 4.
Quadro 4: Atributos gerados pelo processo de criação da área de simulação
Camadas Atributos
Nome Tipo Descrição
Entrada/Saída de veículos
IDNO Número Inteiro Número incremental que identifica um nó independente da camada
TIPO Texto Tipo do nó. Nesta camada todas as feições são classificadas como InOut.
VPH Número Inteiro Número de veículos gerados por hora
Pontos de Controle
IDNO Número Inteiro Número incremental que identifica um nó independente da camada
TIPO Texto Tipo do nó. Nesta camada todas as feições são classificadas como Control.
Cruzamentos
IDNO Número Inteiro Número incremental que identifica um nó independente da camada
TIPO Texto Tipo do nó. Nesta camada todas as feições são classificadas como Cross, representando cruzamentos prioritários.
Trechos
FIDORIGEM Número Inteiro Identifica a feição que deu origem ao trecho logradouro da camada de simulação. Esse atributo permite a rastreabilidade entre as camadas.
MAODUPLA Texto Indica se o trecho possui sentido duplo ou único. Assume os valores S para sentido duplo e N para sentido único.
IDNOORIGEM Número Inteiro Identificador do nó de origem do trecho. IDNODESTINO Número Inteiro Identificador do nó de destino do trecho.
PREFERENCIA Texto Indica se o trecho é preferencial. Assume os valores S para preferencial e N para não preferencial.
Nesta seção foi explicado o processo de criação da área de simulação. A seguir, o plugin
de simulação é detalhado.
4.4. O PLUGIN DE SIMULAÇÃO
Esta seção explica os detalhes da implementação do plugin de simulação. O
desenvolvimento deste componente de software foi dividido em duas partes: construção
da interface para representação gráfica dos componentes de simulação e o motor de
simulação, responsável por gerir todas as interações que ocorrem no sistema.
58
4.4.1. INTERFACE GRÁFICA
A interface gráfica do simulador é responsável por exibir a evolução dinâmica da
simulação como, por exemplo, a movimentação dos veículos. Uma boa interface gráfica
enriquece a análise dos fenômenos que ocorrem no tráfego e facilita o entendimento dos
estados do sistema por parte dos usuários durante uma simulação.
A primeira etapa da construção da interface gráfica é a conversão da malha viária de
entrada, em formato cartográfico, para uma estrutura de dados orientada a objetos, que
represente a área de simulação. A estrutura de dados utilizada é do tipo grafo, neste caso
direcionado. As arestas são representadas por objetos da classe FeatureRoad, que
implementam a interface Road e os nós por objetos que implementam a interface
Junction. As restrições de circulação dos veículos são baseadas nesta estrutura de dados
e no arquivo de volume, que será tratado em seções posteriores. Especificamente quanto
às restrições impostas pelo grafo, a sua criação respeita tanto o sentido da geometria
quanto o atributo MAODUPLA, citado no Quadro 4. No caso específico deste atributo,
quando este assume o valor SIM, a aresta correspondente é duplicada em sentido
contrário, permitindo a circulação nos dois sentidos. A Figura 25 detalha este
comportamento.
Figura 25: Representação gráfica do atributo MAODUPLA
As geometrias de trecho logradouro representam o eixo central da pista de circulação.
Durante a carga do grafo, cada trecho logradouro é transformado em uma ou duas vias de
circulação, conforme o atributo MAODUPLA. Estas vias são representadas por objetos
que implementam a interface Road. Neste trabalho, cada via possui uma única faixa de
circulação, com a largura fixa de 5 metros. As faixas de circulação são representadas por
objetos da classe Lane. Cada objeto Lane possui três linhas que caracterizam a sua
59
forma, que são a linha central ou guia, que é por onde o veículo se movimenta e as linhas
esquerda e direita, que determinam os limites da faixa. A Figura 26 representa uma faixa
de circulação com suas linhas.
Figura 26: Linhas que formam uma faixa de circulação
Outro tratamento importante que é feito nos trechos logradouro é a divisão destes em
segmentos de retas. Nem sempre um trecho logradouro é composto somente por uma
reta, e sim por um conjunto. A divisão em segmentos de retas facilita os cálculos que
envolvem a construção da interface gráfica do simulador e a movimentação veicular. Na
Figura 27 é apresentado um trecho logradouro dividido em segmentos. Os objetos da
classe Lane fazem parte de cada segmento.
Segmento 1
Segmento 2
Segmento 3
Figura 27: Trecho logradouro dividido em segmentos
Quanto aos nós do grafo, estes são criados de acordo com o atributo TIPO (vide Quadro
4), que faz parte de todas as camadas do tipo ponto. Este atributo identifica o tipo de
junção que deve ser carregada para representar um nó. Cada junção, ou nó, possui um
comportamento diferente. Este comportamento é definido pela classe que a define. O
Quadro 5 lista os valores assumidos pelo atributo TIPO e suas respectivas classes.
Quadro 5: Valores do atributo TIPO e suas respectivas classes
Valor do Atributo TIPO Classe InOut SourceSinkJunction
Control ControlJunction Cross PriorityJunction
60
Esta abordagem permite estender o modelo facilmente, bastando para isso criar uma
nova classe Junction e atribuindo um novo valor para o atributo TIPO.
Feita a carga do grafo, os próximos passos da construção da interface gráfica são o
cálculo dos fatores de conversão de unidades e o ajuste da interseção dos segmentos de
reta.
As geometrias são representadas em escalas reais. Neste trabalho, a unidade de medida
utilizada para representação das geometrias é o metro. No entanto, a unidade adotada
pelos dispositivos de exibição é o pixel. O pixel é o menor elemento de uma imagem.
Logo, para representar os elementos cartográficos da simulação fez-se necessário a
conversão de metro para pixel. O fator de conversão indica a quantidade de pixels
necessários para representar um metro. Para este cálculo, é feita uma regra de três
simples envolvendo as dimensões da tela do dispositivo de exibição (medidas em pixels)
e as dimensões do envelope das geometrias (medidas em metros). O envelope é o menor
retângulo que envolve um conjunto de geometrias. A Figura 28 mostra um conjunto de
trechos logradouro envoltos por um envelope.
Envelope Figura 28: Ilustração do envelope de uma área de simulação
É importante observar que o eixo das ordenadas nos dispositivos de exibição de interface
gráfica é invertido em relação ao plano cartesiano, adotado pelo sistema de coordenadas
UTM.
O processo de ajuste da interseção dos segmentos de reta tem como objetivo acertar as
linhas que compõem as faixas de circulação. As geometrias de trecho logradouro
representam o eixo central da via de circulação. Logo, a conexão entre dois trechos é feita
61
por um ponto em comum, representado pelo ponto final de um trecho e o ponto inicial de
outro (interseção das linhas). Entretanto, quando são criadas as linhas das faixas de
circulação (vide Figura 26), este ponto em comum deixa de existir para algumas linhas.
Como essas linhas são deslocamentos do eixo central, com o mesmo ângulo de
inclinação e uma distância fixa (largura da faixa), o comprimento destas deve ser
aumentado ou diminuído para que haja a união das vias. A figura a seguir ilustra esta
situação. O ajuste dessas linhas consiste, em linhas gerais, em alongar ou encurtar o
comprimento das retas em função do ponto de interseção que as une.
Interseção
Sem ajus te Co m ajus te
Figura 29: Detalhe de linhas das faixas com e sem ajuste
Outro ponto a ser considerado é a transposição das junções. Na base cartográfica de
trechos, as junções não existem, sendo representadas apenas por uma geometria de
ponto. Entretanto, ao criar as faixas de circulação, é criado um espaço nas junções que
deve ser percorrido pelos veículos. As vias utilizadas para transpor este espaço não são
representadas no grafo que armazena o modelo de rede, sendo estas criadas em tempo
de simulação a medida que os veículos chegam às junções. A fim de manter a
compatibilidade com as pistas que existem na base cartográfica, as pistas de
transposição são representadas por objetos da classe JunctionRoad que, assim como
FeatureRoad, também implementa a interface Road. A figura abaixo ilustra a função das
pistas de transposição.
Figura 30: Detalhe da pista de transposição de junção
62
Por fim, após todos os objetos que compõem o modelo de rede terem sido criados e
convertidos para a unidade pixel, é feito o desenho da rede. O autor deste trabalho optou
por utilizar a classe Java JPanel, que é um contêiner onde outros componentes podem
ser colocados. Esta classe faz parte dos componentes Java denominados Swing, que
segundo Deitel e Deitel (2003), são escritos, manipulados e exibidos completamente em
Java, oferecendo um maior nível de portabilidade. Apesar desta escolha, é válido citar
que o objeto responsável por desenhar os componentes do sistema é totalmente
desacoplado do motor de simulação. Para isso, foi aplicada uma variante mais simples do
padrão de projeto Observer. Segundo Gamma et al. (2000), a motivação do padrão de
projetos Observer é manter a consistência entre objetos relacionados sem a utilização de
classes fortemente acopladas, que reduzem a reusabilidade. Esta abordagem permite que
trabalhos futuros utilizem outras saídas gráficas, que não a do tipo desktop, adotada neste
trabalho.
Nesta seção foram apresentadas as etapas de criação da interface gráfica do simulador.
A Figura 31 mostra a evolução dos dados ao longo do processo.
A seção seguinte trata do motor de simulação.
Figura 31: Processo de criação da interface gráfica do simulador
4.4.2. MÁQUINA DE SIMULAÇÃO
O motor de simulação é o módulo responsável pelo gerenciamento do ambiente de
simulação, controlando a interação entre todos os componentes do sistema.
63
Com a evolução dos recursos da computação, os simuladores de tráfego se tornaram
cada vez mais sofisticados e passaram a oferecer uma variedade muito grande de
recursos. Este trabalho não se propõe a construir um simulador completo, contendo todas
as funcionalidades existentes nos simuladores comerciais. A versão do simulador
desenvolvida neste trabalho não contempla funcionalidades importantes, como a
utilização de interseções semaforizadas e o uso de vias com mais de uma pista. No
entanto, este é um objetivo que pode ser alcançado em trabalhos futuros. Neste contexto,
é importante garantir que o motor de simulação seja extensível, permitindo a adição de
novas funcionalidades.
Araújo (2003) reproduz em alto nível o algoritmo utilizado pelo simulador microscópico
DRACULA da seguinte forma:
(i) Definição do estado da rede no instante corrente, atualizando a
sinalização semafórica conforme a programação;
(ii) Geração de veículos nas origens;
(iii) Para cada veículo da rede são realizadas as operaç ões abaixo:
� Atualização da velocidade corrente, da aceleração e da
posição do veículo conforme o modelo de car-following;
� Avaliação do desejo e da possibilidade de mudança d e faixa
através do modelo de mudança de faixa.
(iv) Atualização da animação;
(v) Incremento do passo do simulador e retorno a etapa (i).
Código 1: Pseudocódigo do simulador microscópico DRACULA
Estas etapas são executadas até que a condição de término da simulação seja
alcançada.
Considerando que as funcionalidades de sinalização semafórica e mudança de faixas não
foram implementadas, todos os demais passos deste pseudocódigo se aplicam a este
trabalho.
As classes relativas ao motor de simulação estão localizadas no pacote
br.cefetmg.lsi.gissim.simulation. O diagrama contendo as principais classes deste pacote
pode ser visualizado na Figura 32.
64
Figura 32: Diagrama de classes da máquina de simulação
As subseções seguintes detalham o motor de simulação.
A. Parâmetros de entrada
Os parâmetros de entrada fornecem as informações necessárias ao funcionamento dos
componentes do simulador. O Quadro 6 lista os parâmetros de entrada utilizados neste
trabalho.
65
Quadro 6: Parâmetros de entrada da simulação
Nome do parâmetro Escopo Descrição Valor
adotado
Malha viária Simulador Topologia da rede, em uma estrutura de dados do tipo grafo, contendo as vias de circulação e as junções.
-
Tempo total de simulação
Simulador Tempo total de simulação em segundos. Define a condição de término da simulação.
Configurável
Passo de simulação
Simulador Tempo gasto para cada passo da simulação.
1 segundo
Velocidade de simulação
Simulador Define a fração de tempo real que deve ser gasto para reproduzir um passo de simulação.
Configurável
Distância mínima de
parada Simulador
Distância mínima entre o pára-choque dianteiro de um veículo e uma obstrução (veículo ou junção). O veículo deve parar quando esta distância é atingida.
1,5 metros
Aceitação de Brecha
Simulador Intervalo de tempo disponível para que um veículo cruze uma via principal ou se junte a corrente de tráfego desta via.
2 segundos
Distância de segurança Veículo
Distância entre o pára-choque dianteiro do veículo e a próxima obstrução. Quando esta distância é atingida o veículo começa a desacelerar.
20 metros
Velocidade Inicial de
entrada na rede Veículo
Velocidade inicial de entrada na rede do veículo, em km/h. Esta velocidade somente é adotada caso a pista de entrada na rede não esteja congestionada.
20 km/h
Velocidade Máxima
Veículo Velocidade máxima do veículo, em km/h. 60 km/h
Comprimento Veículo Comprimento do veículo, em metros. 3,85 metros Largura Veículo Largura do veículo, em metros. 1,9 metros
Aceleração Veículo Aceleração do veículo, em m/s2. 1,5 m/s2
VPH Junção de
Entrada Fluxo de veículos por hora que entram na rede. Configurável
Volume Junção Distribuição do fluxo de veículos em cada junção. Este parâmetro também define restrições de conversão.
Configurável
As informações referentes as dimensões do veículo listadas no quadro acima se referem
a um veículo popular da marca FIAT, modelo PALIO. Os valores relativos a simulação
foram baseados no simulador DRACULA (Liu, 2005). É importante salientar que o valor
utilizado para aceitação de brechas foi reduzido de modo a retardar a saturação das vias.
Este procedimento fez-se necessário devido a inexistência de semáforos na versão atual
do simulador, o que causa o congestionamento das vias.
66
Com relação ao VPH (veículos por hora) e volume, os valores foram inferidos a partir do
trabalho de Viana Júnior (2004) e Silva (2006). O VPH é informado no atributo de mesmo
nome contido na camada de pontos classificada como entrada/saída, conforme
apresentado no Quadro 4. Já o volume é lido de um arquivo XML por meio da biblioteca
XStream23. Esta biblioteca permite a persistência de objetos Java em formato XML de
modo bastante simples. Para isso, a biblioteca XStream utiliza os recursos de reflexão24
disponíveis na linguagem Java. O código abaixo mostra o conteúdo de um arquivo XML
contendo os dados de volume:
Código 2: Arquivo XML de volume
<list>
<br.cefetmg.lsi.gissim.simulation.Volume>
<idSourceRoad>15537</idSourceRoad>
<idTargetRoad>15532</idTargetRoad>
<volume>500</volume>
</br.cefetmg.lsi.gissim.simulation.Volume>
<br.cefetmg.lsi.gissim.simulation.Volume>
<idSourceRoad>15537</idSourceRoad>
<idTargetRoad>15536</idTargetRoad>
<volume>400</volume>
</br.cefetmg.lsi.gissim.simulation.Volume>
</list>
A Figura 33 apresenta a estrutura da classe que armazena os dados de volume e uma
ilustração detalhando a interpretação destas informações na junção.
23 http://xstream.codehaus.org/ 24 Reflexão ou reflection é um mecanismo utilizado para descobrir dados a respeito de um programa em tempo de execução. Pode-se, por exemplo, descobrir os valores de propriedades e os métodos de um objeto.
67
Classe de Volume
ID Origem: 15537900 VPH
ID Destino: 15532500 VPH56% do f luxo
ID Destino: 15536400 VPH44% do f luxo
Interpretação do arquivo de volume
Figura 33: Classe Volume e interpretação do arquivo XML de volume
Em junções não informadas no arquivo de volume, as probabilidades de conversão são
totalmente aleatórias. Já as pistas que não têm dados de volume mas estão conectadas a
junções que foram parcialmente configuradas com o arquivo XML recebem volume zero,
ou seja, não recebem fluxo de veículos.
A escolha da pista de destino em uma junção que possui os dados de volume informados
é feita utilizando o método da roleta giratória. Este método consiste em dividir uma roleta
em fatias conforme a probabilidade de cada conversão. Este percentual é fixo e é
informado no arquivo de volume. Um giro na roleta, caracterizado pelo sorteio de um
número aleatório entre zero e um, seleciona o arco de conversão de acordo com a sua
fatia.
B. Gerenciamento do tempo de simulação
O gerenciamento do tempo de simulação é feito pela classe TimeManager. Esta classe
também funciona seguindo uma variante do padrão de projeto Observer, citado em
seções anteriores deste trabalho.
O controle do tempo de simulação é feito por uma repetição finita, onde a condição de
término é o tempo total de simulação. Para cada repetição, é feita a notificação dos
objetos que implementam a interface Timed e foram registrados em TimeManager. Caso
o tempo gasto para esta notificação seja menor que o tempo do passo de simulação, o
68
sistema fica em estado de espera até que o tempo do passo de simulação seja
alcançado.
C. Geração de veículos
Os veículos entram na rede a partir das junções de entrada/saída, implementadas pela
classe SourceSinkJunction. As geometrias que representam estes nós possuem um
atributo denominado VPH (vide Quadro 4). O valor informado neste atributo indica a
quantidade de veículos que devem ser gerados por um nó no período de uma hora. A
quantidade total de veículos que devem ser gerados por um nó durante toda a simulação
é calculado de acordo com a fórmula abaixo:
3600VPH
TV ×=
Onde:
V: Quantidade total de veículos a serem gerados durante toda a simulação;
T: Tempo total de simulação;
VPH: Quantidade de veículos que devem ser gerados em uma hora.
A partir do cálculo da quantidade total de veículos, o intervalo de tempo, em segundos,
entre a geração dos veículos é calculado a partir de:
V
Tt =
Onde:
t: Intervalo de tempo, em segundos, entre a geração dos veículos.
Toda vez que um veículo é gerado, é verificada a capacidade da via de circulação em
receber este veículo. Caso não haja espaço suficiente na via para acomodar o novo
veículo, este é armazenado em uma estrutura do tipo fila, na qual o primeiro objeto que
entra é o primeiro a sair. Nas gerações subseqüentes, os veículos enfileirados possuem
prioridade sobre os novos.
69
Para a criação dos objetos que representam os veículos, foi utilizado o conceito de
fábrica. Este conceito centraliza a criação dos objetos, permitindo ocultar as regras de
criação e isolar as classes concretas do restante do sistema. A classe que implementa a
fábrica de veículos também é responsável por gerar o identificador único do veículo na
simulação. A classe abstrata Vehicle possui as características e métodos genéricos dos
veículos. Todas as referências a veículos no sistema são feitas a objetos do tipo Vehicle e
não ao seu tipo concreto. Para criar um novo tipo de veículo, com características
específicas, basta implementar uma nova classe concreta herdando de Vehicle. Neste
trabalho, somente um tipo de veículo foi implementado, por meio da classe concreta Car.
O código a seguir apresenta a implementação da classe Car.
Código 3: Implementação da classe Car
package br.cefetmg.lsi.gissim.simulation; public class Car extends Vehicle { public Car(Simulation simulation, int id, SourceSi nkJunction sourceJunction){ super(simulation, id, sourceJunction); } @Override public double getLengthMt() { return 3.85; } @Override public double getMaxSpeedKmh() { return 60; } @Override public double getWidthMt() { return 1.9; } @Override public double getInitialSpeedKmh(){ return 20; } @Override public double getAccelerationMs2(){ return 1.5; } @Override public double getSafeDistanceMt(){ return 20; } }
70
D. Saída de veículos
Assim como a geração de veículos, a saída de veículos da rede também é feita por
intermédio da classe SourceSinkJunction. Toda vez que um veículo entra em um nó deste
tipo, ele automaticamente é recolhido da rede e deixa de existir.
E. Veículo instrumentado
O veículo instrumentado possui todas as características de um veículo comum, exceto
pela capacidade de seguir um trajeto fixo pré-definido pelo usuário. O trajeto dos veículos
comuns é gerado durante a simulação, de acordo com o volume de tráfego informado nas
junções ou aleatoriamente. Já o veículo instrumentado possui uma coleção de objetos do
tipo Road, ordenados de acordo com a seqüência de trechos que formam a sua rota.
Além da rota, o veículo instrumentado também sabe em qual passo de simulação ele
deve entrar na rede. A função deste tipo de veículo é colher informações sobre viagens
fixas. Neste trabalho, os veículos instrumentados foram utilizados para comparar os
tempos de viagem entre as rotas de menor e melhor caminho geradas pelo plugin
RTIGIS. Estas rotas são fixas e não se alteram durante a simulação.
F. Movimentação dos veículos
Um dos principais modelos aplicados em simulação de tráfego é o de movimentação de
veículos, ou car-following. Como este trabalho não tem como objetivo a pesquisa sobre
modelos de movimentação de veículos, optou-se por adotar o modelo car-following linear.
A cada passo de simulação, todos os veículos são notificados a atualizar sua velocidade e
posição. O modelo de movimentação é aplicado no cálculo da nova velocidade do veículo.
Este cálculo é feito, basicamente, em função da distância atual do veículo para um
obstáculo imediatamente à sua frente. Um obstáculo, neste trabalho, pode ser um veículo
ou uma junção, do tipo prioritária, desde que o veículo não esteja trafegando em uma via
prioritária. O cálculo desta distância é feito percorrendo a rede a partir da posição atual do
veículo até que seja encontrado um obstáculo ou o limite de duas vias de circulação seja
alcançado. Caso este limite seja alcançado, considera-se que não existe obstáculo,
71
devido a impossibilidade de um veículo percorrer essa distância em apenas um passo de
simulação.
Segundo Fotherby (2002), no modelo linear o veículo tenta circular a uma velocidade
máxima V caso não tenha nenhum obstáculo a sua frente. A velocidade do veículo é
incrementada a uma aceleração constante até o limite imposto pela velocidade máxima V.
Se o veículo chegar a uma distância D de um obstáculo, ele reduz sua velocidade
proporcionalmente a esta distância. Se uma distância mínima d é alcançada, o veículo
deve parar completamente.
Considerando que x é a distância entre o pára-choque dianteiro do veículo e o próximo
obstáculo a sua frente, a velocidade v do veículo é:
≤<<
≥=
dxse
DxdseVeentre
DxseV
v
,0
,0
,
Quando a distância x está entre d e D, a velocidade v é calculada proporcionalmente em
função de x. Aplicando a equação v = mx + c, chega-se a duas condições para determinar
os valores das constantes m e c:
1. v = 0 quando x = d
2. v = V quando x = D
Substituindo, resulta:
≤<<+
≥=
dxse
Dxdsecmx
DxseV
v
,0
,
,
O cálculo das constantes m e c a partir das variáveis conhecidas V, d e D é mostrado no
Quadro 7.
72
Quadro 7: Cálculo da velocidade no modelo car-following linear
1. v = mx + c
2. Se 0 = dm + c então c = -dm (A) ou m = -c/d (C)
3. Se V = Dm + c então c = V – Dm (B) ou m = (V – c) / D (D)
4. Partindo de (A) e (B) temos: -dm = V – Dm logo m = V / (L - l)
5. Partindo de (C) e (D) temos: -c/d = (V – c) / D logo c = Vd / (d - D)
Com as constantes m e c definidas, o comportamento dos veículos fica completo. A
arquitetura do módulo de movimentação foi modelada de modo a permitir, facilmente, sua
extensão para a aplicação de novos modelos de movimentação de veículos. Para isso, foi
aplicado o padrão de projeto Strategy. Este padrão permite que um algoritmo varie
independentemente dos clientes que o utilizam (GAMMA et al., 2000). Na arquitetura
adotada neste trabalho, a interface SimulationModel define as regras para implementação
de novos modelos de movimentação. A classe concreta que implementa o modelo linear,
detalhado nesta subseção, é BasicLinearSimulationModel.
G. Aceitação de brechas
As regras de aceitação de brechas são aplicadas em junções prioritárias. Esta regra é
aplicada toda vez que um veículo está parado em um cruzamento e precisa se deslocar.
O modelo de simulação aplicado neste trabalho não permite a colisão de veículos, logo, o
tempo gasto por um veículo para atravessar um cruzamento precisa ser compatível com a
brecha de tempo disponível.
O cálculo da brecha é feito com base no tempo gasto pelos veículos que chegam ao
cruzamento, sendo calculado de acordo com a velocidade de cada veículo e a distância
entre seu pára-choque dianteiro e a junção.
A brecha é aceita quando o menor tempo de chegada dos veículos é maior ou igual ao
parâmetro de aceitação de brechas, definido neste trabalho conforme o Quadro 6.
73
H. Estatísticas
As estatísticas geradas pela simulação representam uma das partes mais importantes de
todo o processo. É por meio delas que são feitas as análises de desempenho do tráfego.
A literatura especializada cita inúmeros indicadores de desempenho voltados para análise
de tráfego. Entretanto, o autor deste trabalho optou por definir um escopo de indicadores
voltados para os experimentos planejados. É válido lembrar que, por ter sido desenvolvido
sob o paradigma da orientação a objetos e ter na extensibilidade uma de suas principais
características, a implementação de novos indicadores é relativamente fácil.
Os indicadores gerados neste trabalho são classificados em dois grupos: em tempo real,
visualizados na interface do simulador durante a simulação e em arquivo, armazenados
durante a simulação e gravados em disco ao final do processo. Os Quadros 8 e 9
apresentam, respectivamente, os indicadores gerados pela simulação em tempo real e
em arquivo (ao final da simulação).
Quadro 8: Estatísticas da simulação geradas em tempo real pelo plugin
Tempo Real Indicador Descrição
Veículos gerados Total de veículos já gerados na simulação, em todos os nós de entrada.
Veículos coletados Total de veículos já coletados na simulação, em todos os nós de saída.
Veículos em simulação Total de veículos que estão na rede, em simulação. Os veículos enfileirados e que já foram coletados não entram nesta contagem.
Velocidade média (km/h) Velocidade média dos veículos. Distância total percorrida (km) Distância total percorrida. Veículos enfileirados Quantidade de veículos enfileirados nos nós de entrada. Total de veículos instrumentados
Total de veículos instrumentados da simulação.
Veículos instrumentados já gerados
Quantidade de veículos instrumentados que já foram gerados.
74
Quadro 9: Estatísticas da simulação geradas em arquivo pelo plugin
Arquivo Tipo Indicador Descrição
Por nó de entrada e/ou saída
Veículos gerados Total de veículos gerados Veículos coletados Total de veículos coletados Veículos enfileirados Total de veículos enfileirados ao final da simulação
Por veículo
Nó de origem Identificador do nó gerador do veículo Nó de destino Identificador do nó coletor do veículo Tempo de partida Passo da simulação da geração do veículo
Tempo de chegada Passo da simulação da chegada do veículo ao nó de destino
Tempo de viagem Tempo gasto entre a geração do veículo e sua chegada ao nó de destino
Distância percorrida Distância, em km, percorrida pelo veículo Velocidade média Velocidade média, em km/h.
Os indicadores dos veículos, do tipo arquivo, só são gerados quando o veículo completa a
viagem inteira. Uma viagem é considerada completa quando o veículo é coletado por um
nó de saída.
Os arquivos gerados pelo simulador, contendo os indicadores, obedecem ao formato
CSV25. Este formato foi escolhido devido a sua simplicidade e por ser largamente utilizado
pelas planilhas eletrônicas, facilitando a geração de gráficos e a tabulação dos dados.
Para geração destes arquivos, foi utilizada a biblioteca SuperCSV26. A sua utilização
permitiu a gravação dos arquivos no formato especificado a partir de classes puras Java,
utilizando para isso o mecanismo de reflexão da linguagem.
A Figura 34 exibe um exemplo de indicadores de tempo real e de arquivo.
Tempo realArquivo (por nó de entrada/saída)
Arquivo (por veículo)
Figura 34: Ilustração das estatísticas geradas pelo plugin de simulação
25 CSV é um formato de arquivo que armazena dados tabelados, utilizando a vírgula e a quebra de linha para separar os valores. 26 http://supercsv.sourceforge.net/
75
4.5. CONSIDERAÇÕES FINAIS
Neste capítulo foram apresentados os passos para construção do simulador. O seu
desenvolvimento foi baseado no componente de software desenvolvido por Silva (2006),
utilizando a arquitetura OpenJump.
Inicialmente é explicada a arquitetura OpenJump para construção de plugins, utilizada na
integração entre o SIG e o simulador. Em seguida foram detalhadas as técnicas utilizadas
para transformar os dados cartográficos em uma estrutura de dados preparada para a
simulação de tráfego e os passos da construção da interface gráfica do simulador.
Por fim, a máquina de simulação, responsável por gerir todas as interações entre os
componentes do sistema foi explicado. Também foram apresentados o modelo de
movimentação de veículos utilizado e as informações estatísticas geradas pelo simulador.
No próximo capítulo são feitos experimentos a fim de avaliar a ferramenta desenvolvida.
76
5. EXPERIMENTOS
Este capítulo tem o objetivo de mostrar a avaliação do componente de software
desenvolvido. Para isso, foram feitas simulações para comparação dos tempos de
percurso do menor e melhor caminho em duas áreas de simulação análogas às utilizadas
por Viana Júnior (2004).
5.1. COMPARAÇÃO DO TEMPO DE PERCURSO DO MENOR E
MELHOR CAMINHO
Os trabalhos desenvolvidos por Viana Júnior (2004) e posteriormente por Silva (2006)
tratam, basicamente, do cálculo do melhor caminho entre dois pontos em uma rede
geométrica. Entende-se por melhor caminho aquele que permite o percurso entre os
pontos no menor tempo possível. Nestes trabalhos foram utilizadas as variáveis
comprimento do trecho e fluxo de veículos para calcular o trajeto de menor tempo. No
primeiro trabalho do projeto de pesquisa GEOPROC, desenvolvido por Viana Júnior
(2004), a validação do melhor caminho foi feita pelos taxistas, considerados os
especialistas em locomoção veicular. Para esta validação, foi escolhido um conjunto de
combinações no hipercentro de Belo Horizonte e calculados o menor e o melhor caminho
entre os pontos de origem e destino. Em seguida, os resultados destes cálculos foram
comparados com as escolhas feitas pelos taxistas. Conforme já exposto em seções
anteriores, esta validação não se mostrou eficiente.
Para avaliação dos resultados por meio da simulação de tráfego, como descrito neste
capítulo, foram escolhidas duas combinações dentre as utilizadas por Viana Júnior (2004).
Esta escolha se baseou nos critérios elencados abaixo:
• Diferença dos trajetos: as combinações que possuíam o melhor trajeto igual ao
menor foram descartadas;
• Extensão da área de simulação: em função de limitações do simulador de tráfego
construído neste trabalho, como a funcionalidade de zoom, as combinações que
possuíam uma área de extensão muito grande foram descartadas.
77
As etapas para realização dos testes são detalhadas a seguir:
A. Preparação dos dados
O primeiro passo para realização dos testes é a construção da base de dados tanto
cartográfica quanto alfanumérica. O ponto de partida foi a utilização dos mesmos dados
utilizados nos trabalhos anteriores. No entanto, a base cartográfica utilizada precisou ser
modificada para ser utilizada no simulador porque as restrições de conversão foram feitas
utilizando arcos de conversão. Geralmente, as bases cartográficas de trechos de
logradouros municipais não possuem estes arcos de restrição de conversão. Em função
disso, optou-se, neste trabalho, por utilizar um arquivo XML que contém informações de
proporção de conversão e restrições de conversão. A figura abaixo ilustra um mesmo
conjunto de trechos com e sem arco de conversão.
Arco de conversão
Figura 35: Trechos com e sem arcos de conversão
Feito o acerto dos arcos de conversão, a próxima etapa da construção da base de dados
foi a verificação dos sentidos de circulação das vias. O sentido de circulação é definido
pelo desenho da geometria e o acerto foi realizado por meio de uma funcionalidade do
próprio OpenJump que permite girar uma geometria. Durante esta etapa, os atributos que
indicam vias de mão dupla e preferenciais também foram informados.
O tratamento dos arcos de conversão, o sentido das vias de circulação e a definição dos
atributos de mão de dupla e vias preferenciais foram feitos em toda área do hipercentro.
78
Com a parte cartográfica e alfanumérica do hipercentro concluída, foram geradas as
áreas de simulação correspondentes às combinações escolhidas.
Com as áreas de simulação geradas, foram informadas as proporções de conversão dos
cruzamentos e a quantidade de veículos a serem gerados pelos nós de entrada da rede.
Como um dos objetivos do trabalho era a comparação entre os trajetos gerados no
trabalho de Viana Júnior (2004), os valores do atributo QVF (quantidade de veículos por
faixa) usados naquele trabalho também foram utilizados neste para a inferência das
proporções de conversão e definição dos fluxos de entrada na rede. No entanto, os
valores de QVF correspondem a uma faixa de tempo de quinze minutos. No simulador, as
informações de fluxo de veículos são consideradas por hora. Para contornar esta
situação, os valores da QVF foram multiplicados por quatro. A Figura 36 ilustra o cálculo
das proporções de conversão considerando os valores de QVF.
Proporção de Conversão
Fluxo com origem no trecho A = 156,8 + 211,7 = 368,5Proporção de conversão de A -> B = 211,7 / 368,5 = 57%Fluxo de A -> C = 156,8 / 368,5 = 43%
Figura 36: Cálculo da proporção de conversão de veículos durante uma simulação
B. Criação das camadas com os percursos do melhor e menor caminho
Os parâmetros utilizados na simulação foram os listados no Quadro 6. Todos os veículos
utilizados possuem as mesmas características.
79
A coleta das informações para análise dos resultados foi feita pelos veículos
instrumentados. Estes veículos são caracterizados por terem um percurso fixo, definido
por uma camada que contém o conjunto de trechos que formam este percurso. O
processo de criação destas camadas consiste em copiar da camada de trechos da área
de simulação o conjunto de feições que formam o percurso. Estas feições são copiadas
para uma camada nova e no momento da adição do veículo instrumentado na simulação
a camada que contém o percurso a ser seguido pelo veículo é escolhida. A figura a seguir
mostra, separadamente, a camada de trechos da área de simulação e uma camada
contendo um percurso qualquer.
Camada de Trechos da Área de Simulação
Camada contendo um Percurso
Camadas sobrepostas
Figura 37: Camada de percurso fixo para os veículos instrumentados
C. Experimentos
Para realização dos experimentos foram escolhidas duas combinações utilizadas por
Viana Júnior (2004). Para cada combinação, foram feitas três simulações distintas para os
percursos de melhor e menor caminho. Em cada simulação, foram inseridos dez veículos
instrumentados com o mesmo percurso (melhor ou menor), mas que entravam na rede
em passos de simulação diferentes. Os veículos foram inseridos na rede em intervalos
fixos de cinco segundos. Esta estratégia foi adotada para permitir a análise do
comportamento da viagem em momentos diferentes da simulação, considerando o
aumento do fluxo de veículos ao longo do tempo.
80
As variáveis de tempo de percurso e velocidade média foram coletadas para cada veículo
instrumentado em cada simulação. Para consolidação dos resultados das simulações foi
utilizada a média aritmética, que é uma medida de tendência central e é obtida com a
soma de todos os valores envolvidos dividida pela quantidade total desses valores.
A seguir são mostrados os testes para as duas combinações escolhidas:
COMBINAÇÃO 03
Esta combinação tem origem no cruzamento da Av. Paraná com a Rua Caetés e destino
no cruzamento das ruas Curitiba e Goitacazes. A figura a seguir ilustra a localização da
combinação no hipercentro e detalha a área de simulação tanto no SIG quanto no
simulador.
Localização no hipercentro Área de simulação no SIG Área de simulação no simulador
Figura 38: Detalhe da combinação de origem/destino 03
Adaptado de Viana Júnior (2004)
O percurso do menor e melhor caminho possuem extensões aproximadas de 741 e 805
metros respectivamente. A Tabela 1 mostra os dados coletados pela simulação desta
combinação e logo em seguida são apresentados os gráficos comparativos dos
resultados.
81
Tabela 1: Dados coletados na simulação da combinação 03
Distância 741 Distância 805
Número da Simulação Passo TempoVelocidade
MédiaTempo
Velocidade
Média
5 72 37,05 95 30,51
10 87 30,66 114 25,42 15 82 32,53 89 32,56 20 82 32,53 104 27,87 25 78 34,20 116 24,98 30 126 21,17 136 21,31 35 147 18,15 156 18,58
40 129 20,68 206 14,07 45 164 16,27 235 12,33 50 147 18,15 243 11,93
5 83 32,14 129 22,47 10 113 23,61 127 22,82 15 124 21,51 169 17,15 20 142 18,79 177 16,37
25 190 14,04 193 15,02 30 203 13,14 209 13,87
35 207 12,89 232 12,49 40 228 11,70 248 11,69
45 204 13,08 284 10,20 50 222 12,02 286 10,13
5 74 36,05 108 26,83 10 102 26,15 128 22,64 15 124 21,51 132 21,95
20 137 19,47 165 17,56 25 153 17,44 184 15,75
30 173 15,42 165 17,56 35 198 13,47 185 15,66 40 239 11,16 219 13,23 45 248 10,76 206 14,07 50 293 9 ,10 232 12,49
5 76,33 35,08 110,67 26,60 10 100,67 26,81 123,00 23,63
15 110,00 25,19 130,00 23,89 20 120,33 23,60 148,67 20,60 25 140,33 21,89 164,33 18,58 30 167,33 16,58 170,00 17,58 35 184,00 14,84 191,00 15,58 40 198,67 14,51 224,33 13,00 45 205,33 13,37 241,67 12,20 50 220,67 13,09 253,67 11,52
5 5,8 6 2 ,59 17,16 4,03
10 13,05 3 ,57 7,81 1,56 15 24,25 6 ,36 40,04 7,89 20 33,29 7 ,75 39,15 6,32 25 57,06 10,79 42,10 5,55 30 38,81 4 ,14 36,76 3,72 35 32,36 2 ,88 38,35 3,04
40 60,58 5 ,35 21,50 1,21 45 42,02 2 ,77 39,43 1,94 50 73,01 4 ,62 28,54 1,23
Melhor Caminho
1
2
3
Média
Desvio Padrão
Menor Caminho
82
Gráfico 1: Comparação do tempo de viagem na combinação 03
Gráfico 2: Comparação da velocidade média na combinação 03
COMBINAÇÃO 06
Esta combinação tem origem no cruzamento das ruas Pe. Belchior e Curitiba e destino no
cruzamento da Rua Tupinambás com Av. Amazonas. A Figura 39 mostra o detalhamento
da área desta combinação.
83
Localização no hipercentro Área de simulação no SIG Área de simulação no simulador
Figura 39: Detalhe da combinação de origem/destino 06
Adaptado de Viana Júnior (2004)
O percurso do menor e melhor caminho possuem extensões aproximadas de 771 e 992
metros respectivamente. A Tabela 2 mostra os dados coletados pela simulação desta
combinação e logo em seguida são apresentados os gráficos comparativos dos
resultados.
84
Tabela 2: Dados coletados na simulação da combinação 06
Distância 771 Distância 992
Número da Simulação Passo TempoVelocidade
MédiaTempo
Velocidade
Média
5 60 46,26 343 10,41
10 65 42,70 375 9,52 15 65 42,70 424 8,42 20 75 37,01 492 7,26 25 73 38,02 625 5,71
30 93 29,85 808 4,42 35 94 29,53 827 4,32
40 96 28,91 868 4,11 45 10 2 27,21 990 3,61 50 10 7 25,94 1100 3,25
5 63 44,06 392 9,11 10 72 38,55 470 7,60
15 86 32,27 514 6,95 20 10 1 27,48 549 6,50 25 99 28,04 766 4,66 30 12 8 21,68 1036 3,45 35 13 9 19,97 1045 3,42 40 13 7 20,26 1077 3,32
45 14 6 19,01 1098 3,25 50 15 4 18,02 1135 3,15
5 70 39,65 374 9,55 10 83 33,44 483 7,39 15 10 4 26,69 502 7,11
20 10 4 26,69 560 6,38 25 10 7 25,94 748 4,77
30 10 8 25,70 785 4,55 35 10 7 25,94 850 4,20 40 10 5 26,43 968 3,69 45 11 0 25,23 994 3,59 50 11 2 24,78 1075 3,32
5 64,33 43,32 369,67 9,69 10 73,33 38,23 442,67 8,17 15 85,00 33,89 480,00 7,49 20 93,33 30,39 533,67 6,71
25 93,00 30,67 713,00 5,05 30 109,67 25,74 876,33 4,14
35 113,33 25,15 907,33 3,98 40 112,67 25,20 971,00 3,71
45 119,33 23,82 1.027,33 3,48 50 124,33 22,92 1.103,33 3,24 5 5,13 3,36 2 4,79 0,66
10 9,07 4,64 5 8,96 1,17 15 19,52 8,13 4 8,87 0,81
20 15,95 5,74 3 6,50 0,48 25 17,78 6,46 7 6,74 0,58 30 17,56 4,08 138,75 0,60 35 23,16 4,83 119,78 0,49
40 21,55 4,46 104,53 0,40 45 23,44 4,28 6 1,23 0,20 50 25,81 4,28 3 0,14 0,09
Melhor Caminho
1
2
3
Média
Desvio Padrão
Menor Caminho
85
Gráfico 3: Comparação do tempo de viagem na combinação 06
Gráfico 4: Comparação da velocidade média na combinação 06
D. Análise dos Resultados
Analisando os resultados das simulações realizadas nas duas combinações selecionadas,
pode-se perceber que a escolha do melhor trajeto considerando apenas o comprimento
dos trechos e a contagem de veículos nas vias não se mostrou eficiente. Os gráficos
gerados mostram que os tempos de viagem são menores quando o percurso é menor,
assim como as velocidades médias são maiores em percursos também menores. Apesar
86
do fluxo de veículos ser uma variável importante no processo de cálculo do melhor trajeto,
existem outras variáveis que também precisam ser consideradas. Como exemplo, pode-
se citar os cruzamentos preferenciais, os semáforos e a fluidez do trânsito nas vias
envolvidas.
Considere duas vias paralelas de mesma extensão com a primeira sendo a principal com
alta fluidez de veículos e alto fluxo e a segunda uma via secundária com vários
cruzamentos sem preferência e baixo fluxo de veículos. Neste caso, o melhor trajeto
sugerido seria a via secundária devido ao baixo fluxo de veículos. No entanto, o percurso
pela via secundária possui várias paradas devido aos cruzamentos preferenciais,
acarretando um maior tempo de viagem. Na Figura 40 são mostrados os detalhes de um
cruzamento entre uma via secundária e uma via preferencial retirados da área de
simulação da combinação 06. Estes cruzamentos pertencem ao percurso selecionado
como sendo o melhor. Percebe-se, nos detalhes, que são geradas filas de veículos nestes
cruzamentos, o que pode explicar um tempo de percurso maior, mesmo que o fluxo de
veículos seja menor.
Figura 40: Detalhe de cruzamentos entre vias secundárias X preferenciais
87
5.2. CONSIDERAÇÕES FINAIS
Neste capítulo foram apresentados os experimentos realizados no simulador. Foram
utilizadas duas combinações de percursos de melhor e menor caminho, extraídas do
trabalho de Viana Júnior (2004).
Os resultados dos experimentos mostram que os melhores caminhos indicados no
trabalho de Viana Júnior (2004) não foram reproduzidos na simulação. Uma possível
causa para esta discrepância são as retenções que ocorrem em vias não preferenciais. O
comportamento observado sugere que vias com muito fluxo de veículos não possuem,
obrigatoriamente, maior impedância de transposição. É importante salientar que nos
experimentos realizados não foram consideradas interseções semaforizadas e vias com
mais de uma pista, em função de limitações da versão atual do simulador. Espera-se uma
diferença menor entre os tempos do menor e melhor caminho quando estas limitações
forem resolvidas.
A partir dos resultados obtidos, pôde-se observar a necessidade de adicionar outras
variáveis ao cálculo da ITT, de modo a obter um “melhor trajeto” de maior qualidade.
88
6. CONCLUSÃO
6.1. DISCUSSÕES FINAIS
O trabalho desenvolvido inicialmente por Viana Júnior (2004) no projeto GEOPROC
contribuiu de modo efetivo ao utilizar a lógica Fuzzy na sugestão do melhor caminho entre
dois pontos em um sistema viário. Posteriormente, Silva (2006) deu continuidade ao
projeto desenvolvendo modelos computacionais que permitam, além da automatização do
processo de coleta dos dados de entrada para o sistema fuzzy, o cálculo do atributo ITT e
a atualização dos valores associados aos arcos da rede. Além disso, Silva (2006) fez o
acoplamento destas funcionalidades a uma biblioteca de SIG gratuita, de código-fonte
aberto e extensível.
No entanto, somente no trabalho de Viana Júnior (2004) foi feita uma análise dos
resultados dos melhores trajetos sugeridos. Esta análise foi feita com base na
comparação dos resultados entre os trajetos sugeridos pelo SIG e os indicados pelos
taxistas. Esta abordagem se mostrou ineficiente.
Neste trabalho, buscou-se desenvolver um componente de software que permitisse a
execução de simulações microscópicas de tráfego urbano que permitissem comparar o
tempo de viagem entre os menores e melhores trajetos sugeridos pelo SIG. A partir
destas comparações, foi possível constatar que nem sempre o melhor caminho sugerido
no trabalho de Viana Júnior (2004) é o que possui o menor tempo de percurso. Logo, o
cálculo da ITT precisa ser evoluído para que os trajetos sugeridos pelo RTIGIS sejam
realmente os melhores.
Inicialmente foi feita uma contextualização teórica sobre o assunto simulação de tráfego, o
que permitiu o embasamento conceitual para o desenvolvimento deste trabalho. Este
arcabouço conceitual se mostrou muito importante ao longo do projeto porque garante
que os conceitos utilizados neste trabalho possam ser evoluídos de modo consistente em
trabalhos futuros.
89
Do ponto de vista do objetivo geral proposto, este foi alcançado satisfatoriamente. O
componente de software foi desenvolvido seguindo as premissas desejadas e as
avaliações dos trajetos sugeridos puderam ser feitas com sucesso. O plugin construído foi
integrado ao SIG OpenJump, seguindo a mesma linha adotada por Silva (2006). Isto
garante a compatibilidade entre os trabalhos desenvolvidos no projeto GEOPROC.
Com relação aos objetivos específicos, estes também foram alcançados plenamente,
conforme descrições abaixo:
• Modelar e implementar um plugin para extração das informações cartográficas da
área de simulação: este objetivo foi alcançado ao implementar o plugin para
criação da área de simulação. A Seção 4.3 descreve esta implementação;
• Modelar e implementar um simulador microscópico de tráfego urbano: o simulador
foi desenvolvido seguindo o paradigma da orientação a objetos. Esta
implementação foi descrita na Seção 4.4;
• Integrar o simulador ao SIG: a integração foi realizada utilizando a arquitetura de
construção de plugins disponibilizada pelo OpenJump;
• Definir os trajetos que serão avaliados no simulador: o Capítulo 5 trata dos
experimentos realizados e descreve os critérios utilizados na seleção das
combinações dos trajetos;
• Configurar os parâmetros de simulação para os trajetos escolhidos: os parâmetros
de simulação são descritos na Seção 4.4.3;
• Executar a simulação a fim de avaliar os resultados e comprovar a aplicabilidade
da ferramenta proposta: no Capítulo 5 são descritos os testes realizados com a
ferramenta.
6.2. CONTRIBUIÇÕES DO TRABALHO
Este trabalho contribui positivamente ao andamento do projeto GEOPROC ao
disponibilizar uma arquitetura extensível de simulação de tráfego. A existência do projeto
de um simulador de tráfego abre um leque muito grande de opções de estudos e
desenvolvimento de soluções futuras para o grupo de pesquisa.
90
Do ponto de vista acadêmico, a comparação dos resultados obtidos neste trabalho com
os experimentos realizados por Viana Júnior (2004) sugere que novas variáveis devem
ser incluídas no conceito de melhor caminho como, por exemplo, ocorrências de pontos
de retenção de tráfego (semáforos, cruzamentos preferenciais) e indicadores de fluidez do
trânsito.
A utilização dos conceitos de modelagem orientada a objetos e de padrões de projeto
permitiram o desenvolvimento de uma ferramenta que pode ser facilmente estendida,
possibilitando, por exemplo, o estudo de outros modelos de simulação de tráfego exigindo
um menor esforço de modelagem e desenvolvimento.
Por fim, destaca-se que toda a implementação feita neste trabalho utilizou o paradigma de
software livre. Logo, a ferramenta proposta neste trabalho foi construída sem nenhum
custo financeiro para aquisição de bibliotecas e/ou software. Isso permite a evolução das
funcionalidades de modo colaborativo e livre. Nesse contexto, a ferramenta construída
pode ser utilizada livremente pelos órgãos gestores do trânsito, contribuindo para uma
gestão mais eficiente do tráfego urbano.
6.3. PROPOSTAS PARA TRABALHOS FUTUROS
A construção de um simulador de tráfego é uma tarefa bastante complexa e extensa, o
que requer um longo tempo de desenvolvimento. Este trabalho não teve como objetivo
esgotar as funcionalidades de um simulador. As funcionalidades desenvolvidas neste
trabalho seguiram os requisitos impostos pelos objetivos propostos. Em função disso,
vários cortes tiveram que ser feitos de modo a atingir estes objetivos no prazo disponível.
Entretanto, várias propostas de melhorias e inovação foram identificadas ao longo do
trabalho. A evolução do módulo estatístico, o desenvolvimento de um ambiente de
simulação via WEB e a implementação de outros modelos de simulação de tráfego (car-
following não-linear, geração de veículos, gap-acceptance, lane changing) são algumas
delas. Ainda com relação ao plugin de simulação, pode-se citar a criação de interfaces
amigáveis para configuração da simulação, implementação de junções semaforizadas e
várias faixas de circulação nas vias como funcionalidades que agregam expressivo valor a
ferramenta. A modelagem do comportamento do motorista também é uma proposta
91
interessante de estudo, possibilitando, por exemplo, representar a agressividade do
condutor.
Quanto ao conceito de melhor caminho, sugere-se a inclusão de novos atributos ao
cálculo da ITT. A taxa de ocupação, um indicador de congestionamento, poderia ser um
destes atributos. A escolha do melhor caminho de modo dinâmico, considerando as
condições de tráfego atuais também é outra abordagem que pode ser estudada em
trabalhos futuros. Por fim, a evolução do algoritmo de Dijkstra para que este considere as
restrições de conversão no cálculo do menor caminho, evitando o uso dos arcos de
conversão, também pode ser considerada uma melhoria importante.
92
REFERÊNCIAS BIBLIOGRÁFICAS
ALMEIDA, P. E. M.; EVSUKOFF, A. G. Sistemas Fuzzy. In: REZENDE, S. O. Sistemas Inteligentes : fundamentos e aplicações. Barueri, SP: Manole, 2003. Cap.7, p. 169-201. ARAÚJO, D. R. C. Comparação das Simulações de Tráfego nos Modelos SA TURN e DRACULA. 2003. Dissertação (Mestrado em Engenharia de Produção) - Faculdade de Engenharia de Produção, UFRGS, Porto Alegre. BAZZAN, A. L. C.; KLÜGL, F. Sistemas Inteligentes de Transporte e Tráfego: uma Abordagem de Tecnologia da Informação. In: JORNADAS de Atualização em Informática, 2007. Rio de Janeiro. Anais das Jornadas de Atualização em Informática. Rio de Janeiro [s. Ed.]. v. 1. p. 2296-2337. BHAM, G. H. Comparison of Characteristics and Computational Per formance : Car-Following Versus Cellular Automata Models. Washington: TRB Committee on Artificial Inteligence, 2003. BRASILEIRO, L. A.; AGUIAR, J. Uma Análise sobre a Utilização de SIG-T no Roteamento de Veículos de Coleta de Resíduos de Serviços de Saúde. In: XIII CONGRESO Panamericano de Ingeniería de Tránsito Y Transportes, 2004. Albany/New York. Anais do XIII Congreso Panamericano de Ingeniería de Tránsito y Transportes. Albany [s. Ed.]. BUCKEY, D. J. Introduction to GIS. Disponível em http://bgis.sanbi.org/GIS-primer/index.htm. Acesso em: 10/12/2008. CÂMARA, G.; QUEIROZ, G. R. Arquitetura de sistemas de informação geográfica. In: CÂMARA, G.; DAVIS, C.; MONTEIRO, A. M. V. Introdução à Ciência da Geoinformação . Livro on-line, Instituto Nacional de Pesquisas Espaciais, 2000. Disponível em: http://www.dpi.inpe.br/gilberto/livro. Acesso em 18/09/2008. CASANOVA, M. A. et al. Banco de Dados Geográficos. São Paulo: MundoGEO. 2005. CHOPARD, B.; DUPUIS, A.; LUTHI, P. A cellular automata model for urban traffic and its application to the city of Geneva. Duisbourg: Proceedings of Traffic and Granular Flow, 1997. CHWIF, L. Redução de Modelos de Simulação de Eventos Discreto s na sua Concepção : Uma Abordagem Causal. 1999. Tese (Doutorado em Engenharia) – Escola Politécnica da Universidade de São Paulo. Departamento de Engenharia Mecânica/EPUSP. São Paulo. CLARAMUNT, C.; JIANG, B.; BARGIELA, A. A new framework for the integration, analysis and visualization of urban traffic data wi thin geographic information systems. Transportation Research Part C 8, 2000, 167-184.
93
DAVIS, C.; FONSECA, F. Introdução aos Sistemas de Informação Geográficos . Belo Horizonte: Departamento de Cartografia/UFMG, 2001. DEILTEL, H. M.; DEILTEL, P. J. JAVA: como programar. 4. ed., Porto Alegre: Bookman, 2003. DIJKSTRA, E. W. A note on two problems in connexion with graphs. Numer. Math ., 1, 269-71, 1959. FARKUH NETO, A.; LIMA, R. S. Roteirização de veículos de uma rede atacadista com o auxílio de Sistemas de Informações Geográficas (SIG). Revista Pesquisa Desenvolvimento Engenharia de Produção , Itajubá, MG, v. 5, n. 1, p. 18-39, 2006. FAYAD, M. E.; SCHMIDT, D. C. Object-oriented Application frameworks. Communications of the ACM , v. 40, 10 p., 1997. FOTHERBY, T. Visual Traffic Simulation . Final Report, MEng Computer Degree, Imperial College, June/2002. GAMMA, E. et al. Padrões de projeto: soluções reutilizáveis de software orientado a objetos. Trad. Luiz A. Meirelles Salgado. Porto Alegre: Bookman, 2000. GONÇALVES, A. Multi-Agentes para Simulação em Sistemas de Informa ção Geográfica. 2003. Dissertação (Mestrado em Engenharia de Informática) - Faculdade de Ciências e Tecnologia da Universidade Nova de Lisboa, Lisboa. HARTMAN, D. Head Leading Algorithm for urban traffic modelling. In: PROCEEDINGS 16th European Simulation Symposium, 2004. Paper. Budapeste/Hungria [s.Ed.]. HOOGENDOORN, S.; HOOGENDOORN-LANSER, S.; SCHUURMAN, H. Fuzzy Perspectives in Traffic Engineering. Delft: Research Report, TRAIL Research School, 1998. KRAJZEWICZ, D.; HERTKORN, G.; WAGNER, P. An Example of Microscopic Car Models Validation using the open source traffic simulation SUMO. In: PROCEEDINGS 14th European Simulation Symposium, 2002. Dresden. Paper. Dresden/Germany [s. Ed.]. LANARI, C. et al. Sistemas de Informação Geográficas: caracterização, custos de implementação e o caso da Companhia Energética de Minas Gerais In: XIX ENCONTRO Nacional da Engenharia de Produção e V ICIE - International Congress of Industrial Engineering, 1999. Rio de Janeiro. Anais do XIX ENEGEP. Rio de Janeiro: UFRJ, 1999. v. único. LEWIS, S. Use of Geographic Information Systems in Transportation Modeling. ITE Journal, p. 34-38, march 1990. LIEBERMAN, E.; RATHI, A. K. Traffic Simulation. The revised monograph on traffic flow theory. EUA: Federal Highway Administration, 1997. Cap. 10. LIU, R. DRACULA Microscopic Traffic Simulator. Leeds: Institute of Transport Studies, University of Leeds, 1994. (Its Working Paper 431).
94
______. DRACULA 2.3, User Manual. Leeds: Institute of Transport Studies, University of Leeds, 2005. MIYAGI, P. E. Introdução a Simulação Discreta . São Paulo: Escola Politécnica da Universidade de São Paulo, 2004. MOURA, Ana Clara Mourão. Geoprocessamento na gestão e planejamento urbano / Ana Clara Mourão Moura. – 2. ed. – Belo Horizonte: Ed. Da autora, 2005. NAGEL, K.; SCHRECKENBERG, M. A cellular automaton model for freeway traffic. J. Phys. I France, v.2, p.2221, 1992. OPENJUMP. OpenJUMP Project . 2003-2006. Disponível em: http://openjump.org. Acesso em: 07/08/2007 OWEN, B. et al. A compendium of Traffic Model Validation Documentat ion and Recommendations: Phase I , Tasks A-H. USA: Department of Transportation, 1996. Disponível em url: < http://www.itsdocs.fhwa.dot.gov/JPODOCS/REPTS_TE/3892.pdf > Acesso em 15/01/2008. PANWAI, S.; DIA, H. Comparative Evaluation of Microscopic Car-Following Behavior. IEEE Transactions on Intelligent Transportation Sys tems , v. 6, n. 3, 2005. PINTO, A. B. et al. Utilização de um sistema de informação geográfica c omo plataforma para aplicação do modelo SATURN . Porto Alegre: LASTRA – Laboratório de Sistemas de Transportes, UFRGS, 1998. PORTUGAL, L. S. Simulação de tráfego: conceitos e técnicas de modelagem. Rio de Janeiro: Interciencia, 2005. ROSE, A. Uma avaliação comparativa de alguns sistemas de inf ormação geográfica aplicados a transportes . 2001. Dissertação (Mestrado em Engenharia) – Escola de Engenharia de São Carlos (EESC)/USP. São Paulo. SAKURADA, N.; MIYAKE, D. I. Aplicação da Simulação no Setor de Serviços: Um Estudo Comparativo do Processo de Modelagem de Lojas de Serviços e Serviços de Massa. Boletim técnico da Escola Politécnica da USP . BT/PRO, São Paulo, v. 1, n. BT`/PRO, p. 1-20, 2003. SANTOS, C. M.; SILVA, A. N. R.; PANICO, S. R. G. Avaliando a localização de postos de saúde numa cidade média brasileira com Auxílio d e um SIG-T . Engenharia civil UM, Braga, v. 1, n. 1, p. 47-58, 2000. SHEKLETON, S. A GPS Study of Car-Following Theory. In: CONFERENCE of Australian Institutes of Transport Research (Caitr), 2002. Sydney/Australia. Anais da Caitr. Sydney/Australia: School of Civil and Environmental Engineering the University of New Wales.
95
SILVA, G. Modelagem e Implementação de uma ferramenta intelig ente e de código aberto para inserção automática de inferência fuzzy em SIG convencionais. 2006. Dissertação (Mestrado em Modelagem Matemática e Computacional) - CEFET-MG. Belo Horizonte. SILVA, G.; VIANA JÚNIOR, G. F.; ALMEIDA, P. E. M. RTIGIS: um Sistema de Informação Geográfico Inteligente para Escolha de Trajetos com Geração Automática de Atributos Fuzzy. In: V ENCONTRO Nacional de Inteligência Artificial, 2005. São Leopoldo. Anais do XXV Congresso da Sociedade Brasileira de Computação. São Leopoldo [s.Ed.]. SILVA, L. C. Simulação de Processos . Disponível em http://www.agais.com/simula.htm. Acesso em: 26/09/2007. THIEMAN, S. Accident Data Use And Geographic Information System (GIS). Extraído de http://ntl.bts.gov/lib/000/500/573/00780103.pdf Acesso em 30/11/2008. VIANA JR., G. F. Um sistema de informação geográfico inteligente par a escolha de trajetos: uso do modelo de rede e da lógica fuzzy. 2004. Dissertação (Mestrado em Tecnologia) - CEFET- MG. Belo Horizonte. WANG, Y.; PREVEDOUROS, P. D. Synopsis of Traffic Simulation Models . Washington D.C.: Compendium of Papers from the 1996 Transportation Research Board Annual Meeting,1996. WU, Y.; MILLER, H.; HUNG, M. A GIS-based decision suport system for analysis of route choice in congested urban road networks. Journal of Geographical Systems , v. 3, p. 3-24, 2001. ZIVIANI, N. Projeto de Algoritmos: com Implementações em Pascal e C. 2. ed. São Paulo: Thomson Learning, 2004. ISBN: 8522103909.
top related