Este documento apresenta modelos de tráfego urbano usando Redes de Petri. Inclui modelos para ruas, cruzamentos em T e em cruz, e rotatórias. O objetivo é fornecer uma estrutura para simular e analisar aspectos de redes de trânsito reais, como congestionamento e fluxo de veículos.
1. Modelagem de Trânsito Urbano usando Redes de
Petri
Deyvyd Moura Fé e Sousa Araújo, Caroline Albuquerque Dantas Silva e Samuel Xavier de Souza
Departamento de Engenharia de Computação e Automação
Universidade Federal do Rio Grande do Norte, Lagoa Nova, Natal/RN - Brasil
Email: deyvydm@gmail.com
Resumo—A estrutura dos grandes centros urbanos não tem
acompanhado o crescente aumento do número de veículos nos
últimos anos. Como consequência, enormes engarrafamentos,
atrasos, aumento da poluição e do consumo de combustíveis,
entre outros, tem sido regra. Tal problema demanda ferramentas
para ajudar no planejamento e gestão das redes urbanas de
trânsito. Esse trabalho propõe modelos em Redes de Petri para
que, aplicados em casos reais, consigam extrair comportamentos
locais e, assim, auxiliar no gerenciamento do tráfego urbano.
Palavras-chave—Modelagem de trânsito urbano, Redes de Petri.
I. INTRODUÇÃO
Com o número crescente de veículos em centros urbanos,
os impactos adversos no congestionamento do trânsito nessas
regiões não podem ser subestimados. Esses impactos incluem
excesso de tempo no trânsito, redução da segurança, aumento
da poluição e consumo de combustível e, por consequência, di-
minuição da qualidade de vida da população local. Sistemas de
gerenciamento de trânsito buscam a redução desses impactos.
A forma mais comum de regular e gerenciar as áreas urbanas
de tráfego é o controle de sinais de trânsito.
Redes de trânsito urbanas exibem um alto grau de concor-
rência e são caracterizadas pelo compartilhamento e conflito de
recursos. Por isso, modelos apropriados desses sistemas devem
levar em conta tais particularidades para obter estratégias
eficientes de gestão do tráfego.
Em particular, redes de trânsito urbanas podem ser vistas
como sistemas orientados a eventos e assíncronos. A dinâmica
delas depende das interações complexas da temporização de
diversos eventos discretos, como a chegada ou partida de
veículos nas interseções, e o início ou finalização de várias
fases nos planos de sincronização dos semáforos que controlam
os cruzamentos [1].
Graças à capacidade das Redes de Petri de capturar con-
corrência e assincronia, modelos baseados em redes de Petri
podem ser adequadamente derivados de sistemas de tráfego
urbanos. As Redes de Petri podem tanto descrever sinais de
trânsito controlando áreas urbanas sinalizadas, quanto mode-
lando atividades concorrentes, típicas de redes de tráfego.
Na literatura, a primeira modelagem de um semáforo de
trânsito em Redes de Perti, foi apresentada por Jensen [2].
Entretanto, uma modelagem de trânsito urbano via Redes de
Petri foi apresentada mais tarde, no trabalho de Giua [3].
O trabalho de Tzes, Kim e McShane [1] propõe ajustar os
sinais de trânsito controlando uma interseção de acordo com
os tokens distintos depositados num controlador em Redes de
Petri. Um modelo de tráfego usando Redes de Petri Coloridas
foi introduzido no trabalho de Jensen [4]. Redes de Petri Esto-
cásticas Fluidas foram usadas no trabalho de Bouyekhf et al.
[5] para modelar tráfego urbano com cruzamentos sinalizados.
A inclusão de temporização nos modelos usando Redes de
Petri Coloridas foi apresentada no trabalho de Ganiyu et al.
[6], gerando o modelo chamado de modelo em Rede de Petri
Colorida Temporizada.
Nesse trabalho, foram usadas Redes de Petri Coloridas
para modelar as várias faixas de uma mesma via, a fim de
ser possível avaliar se o alargamento de vias é, de fato, a
solução para um eventual problema de trânsito. Também são
apresentados cruzamentos em T e em cruz, com semáforo ou
não, e rotatórias. O objetivo deste trabalho é, então, fornecer
um framework adaptável, onde seja possível simular e refletir
sobre vários aspectos de uma rede de trânsito urbana real.
II. FUNDAMENTOS DE REDES DE PETRI
Segundo Murata [7], uma rede de Petri é uma quíntupla,
PN = (P, T, F, W, Mo) onde:
P = {p1, p2...pm} é um conjunto finito de lugares,
T = {t1, t2...tm} é um conjunto finito de transições,
F ⊆ (P × T) ∪ (T × P) é um conjunto de arcos (relação
de fluxo),
W : F → {1, 2, 3...} é uma função peso,
Mo : P → {1, 2, 3...} é o estado inicial
P ∩ T = ∅ e P ∪ T = ∅
Uma estrutura em Rede de Petri N = (P, T, F, W, Mo)
sem nenhuma marcação inicial específica é denotada por N.
Uma rede de Petri com uma dada marcação inicial é denotada
por (N, Mo).
O comportamento de muitos sistemas podem ser descritos
pelos estados do sistema e suas mudanças. A fim de simular
o comportamento dinâmico de um sistema, um estado ou
marcação numa rede de Petri é mudado de acordo com as
seguintes regras de transição:
1) Uma transição t é dita habilitada quando cada lugar
de entrada p está marcado com pelo menos w(p, t)
tokens, onde w(p, t) é o peso do arco a partir de p
para t.
2) Uma transição habilitada pode ou não ser disparada
(dependendo ou não do evento realizar-se realmente).
2. 3) O disparo de uma transição remove w(p, t) tokens de
cada lugar de origem de t e adiciona w(p, t) tokens
em cada lugar de destino de t, onde w(p, t) é o peso
do arco a partir de p até t.
Uma transição sem nenhum lugar de origem é chamada de
transição de fonte. Uma transição sem nenhum lugar de destino
é chamada de transição de tombo. Note que uma transição de
fonte sempre está incondicionalmente habilitada e que uma
transição de tombo consome tokens, mas não os produz.
Um par de um lugar p e uma transição t é chamado de auto-
laço se p for simultaneamente lugar de origem e de destino de
t. Uma rede de Petri é dita pura se não possuir auto-laços. Uma
rede de Petri é dita ordinária se o peso de todos dos arcos for
igual a 1. Um lugar é dito k-limitado se ele não contém mais
que k tokens em todas as marcações atingíveis, incluindo a
inicial; é dito seguro se for 1-limitado; é dito limitado se for
k-limitado para algum k. Uma rede de Petri é dita k-limitada,
segura ou limitada se todos os seus lugares também o são.
A figura 1 mostra a representação gráfica de uma rede de
Petri, onde P1 é o lugar de origem, T1 a transição e P2 o
lugar de destino. Note que a transição T1 está habilitada, pois
a quantidade de tokens de P1 corresponde ao peso do arco que
liga P1 a T1.
Figura 1: Representação gráfica de uma rede de Petri.
Enquanto as Redes de Petri não possuem tipos de dados
nem módulos, sua variante de auto nível, a Rede de Petri
Colorida, permite usar tipos de dados e manipulação de dados
complexas [8]: cada token carrega um valor de dado chamado
de cor do token. A cor do token pode ser investigada e
modificada durante a ocorrência de uma transição.
Com isso, os lugares passam a ter também um conjunto de
cores de token que podem estar nele; as transições passam a ter
uma expressão de guarda, que contém algumas das variáveis
em questão; e os arcos passam a ter sua expressão contendo
alguma das variáveis. Assim uma transição é habilitada se,
e somente se, há tokens suficientes em todos os lugares de
origem e a expressão de guarda tem valor verdadeiro.
A figura 2 mostra um exemplo de Rede de Petri Colorida,
onde é possível ver os lugares com os tokens que podem estar
neles, as expressões dos arcos, que verificam e modificam, se
necessário, as cores dos tokens, e a expressão de guarda da
transição que, no exemplo, está habilitada.
III. MODELAGEM DE TRÁFEGO
Nessa seção, será apresentada a modelagem feita em Redes
de Petri para o trânsito de uma cidade comum, com respeito
à estrutura das vias e suas interseções. Para tal modelagem,
foram levadas em conta as seguintes considerações:
Figura 2: Exemplo de uma rede de Petri colorida.
• Cada rua é formada de seções, cada qual podendo
conter um único veículo.
• Um cruzamento é uma seção com duas possibilidades
de saída, e só pode conter no máximo um veículo.
• Se um veículo não tiver sua passagem dificultada por
outro veículo à frente, ele permanece uma ou mais
unidades de tempo na seção, antes de seguir em frente.
• Em cada cruzamento pode haver um sinal de trânsito
dando as autorizações de movimento, uma rotatória,
ou nada.
A. Ruas
A modelagem das estradas em geral é feita dividindo-a em
seções, onde cada seção comporta apenas um veículo. A cada
seção k são associados dois estados, ak e ak, onde ak indica
se a seção está ocupada com um veículo, e ak indica se a
seção pode receber um veículo. Logo, quando ak = 1, ak = 0
e quando ak = 1, ak = 0.
Figura 3: Modelagem de uma rua em Rede de Petri.
A figura 3 mostra as seções da rua e seu modelo equivalente
em Rede de Petri. Para vias com mais de uma faixa no
mesmo sentido, é possível um automóvel mudar para uma faixa
vizinha. Essa situação é mostrada na Figura 4, onde a via conta
com duas faixas no mesmo sentido, e são modeladas as trocas
de faixas.
A complexidade crescente em modelar as interações entre
as várias faixas possíveis de uma via levou à necessidade de
uma modelagem em mais alto nível, utilizando Redes de Petri
Coloridas, conforme mostrado na figura 5. A rede de Petri
colorida representa uma via com n faixas na mesma direção,
3. Figura 4: Via com duas faixas.
e cada token recebe como valor de coloração o índice 1 ≤
ko ≤ n correspondente ao índice da faixa de seu lugar atual.
As transições passam a ter como expressão de guarda ko −1 ≤
kd ≤ ko + 1, onde ko é o índice da faixa de origem, e kd é o
índice da faixa de destino.
Figura 5: Modelo em Rede de Petri Colorida.
B. Cruzamento em T
Além das eventuais trocas de faixa, outra situação comum
e particularmente importante é o chamado cruzamento em
T, onde um veículo pode eventualmente seguir na via ou
tentar entrar nela, vindo de uma outra via perpendicular. Essa
situação é mostrada pela figura 6: um veículo saindo do local
indicado pelo número 4 pode entrar em conflito com um outro
veículo saindo do local 2. Um árbitro foi utilizado para garantir
que nessa situação não haja colisão.
Esta modelagem foi ampliada para representar um cruza-
mento em T com a utilização de semáforos conforme a figura
7.
C. Cruzamento padrão
O cruzamento padrão é constituído por várias faixas, e
em todos os sentidos há vias de mão dupla. Desta forma,
no cruzamento que foi modelado, todos os carros que estão
chegando no cruzamento podem seguir reto ou dobrar para a
direita ou para a esquerda. Neste modelo não há semáforos ou
placas de ‘pare’ para indicar a preferencial.
Destarte, existem quatro pontos críticos localizados neste
cruzamento, conforme demonstrado na figura 8, sendo eles
Figura 6: Cruzamento em T.
Figura 7: Cruzamento em T com semáforo.
as posições 8, 9, 10 e 11. Estes pontos são considerados
críticos por existir a possibilidade de colisão entre os carros
que estão entrando no cruzamento com outro que venha em
sua perpendicular.
D. Rotatória
O modelo do cruzamento padrão foi então estendido para
criar a modelagem da rotatória e, Rede de Petri, conforme
figura 9. Nesta, foram ampliadas as posições, mas os pontos
críticos foram mantidos, ou seja, as posições 8, 9, 10 e
11 continuam apresentando riscos de colisão na rotatória.
Como nos modelos anteriores, foi garantida na modelagem
4. Figura 8: Modelo de cruzamento padrão.
Figura 9: Modelo de rotatória.
que apenas um carro por vez ocupe a posição crítica, ou seja,
que apenas um carro passe por vez nesta posição.
IV. CONCLUSÃO
Nesse trabalho foram propostos modelos em Redes de Petri
para redes de trânsito urbanas, em suas diversas situações. Os
modelos foram implementados no software PIPE versão 4.3.0
e, em seguida, foram realizados os testes automatizados do
programa para verificar a correção dos modelos. Todos os
modelos apresentados são limitados, seguros e ausentes de
deadlocks, o que comprova a adequação dos mesmos como
ferramentas para gerenciamento de tráfego urbano.
Para trabalhos futuros planeja-se a modelagem de semáfo-
ros, em suas diversas temporizações, e “ondas verdes” em cru-
zamentos. Pensa-se na implementação da norma denominada
regra da direita através do recurso de prioridade das transições
com rede de Petri estendida. Assim, utilizando esta regra, se
um carro está chegando no cruzamento e há um carro vindo
a sua direita, a preferencial é deste carro que está vindo. Ou
seja, sempre a preferencial será do carro que está vindo se este
estiver localizado na via perpendicular à direita do motorista.
AGRADECIMENTO
Gostaríamos de agradecer aos professores Luiz Marcos e
Ricardo Valentim pelo incetivo na criação deste artigo.
REFERÊNCIAS
[1] A. Tzes, S. Kim, and W. McShane, “Applications of Petri networks to
transportation network modeling,” Vehicular Technology, IEEE Transac-
tions on, vol. 45, no. 2, pp. 391–400, 1996.
[2] K. Jensen, “Colored Petri nets: control models and their properties,”
Lecture notes in computer science, vol. 254, no. Part 1, 1986.
5. [3] A. Giua, “A traffic light controller based on Petri nets,” Rensselaer
Polytechnic Institute, Troy, New York, 1991.
[4] K. Jensen, An introduction to the theoretical aspects of coloured petri
nets. Springer, 1994.
[5] R. Bouyekhf, A. Abbas-Turki, O. Grunder, and A. El Moudni, “Fluid
stochastic Petri net for control of an isolated two-phase intersection,”
IEEE Multiconf. on Computational Engineering in Systems Applications.
Lille, France, 2003.
[6] R. A. Ganiyu, E. O. Omidiora, S. O. Olabiyisi, O. T. Arulogun, and O. O.
Okediran, “The underlying concepts of Coloured Petri Net (CPN) and
Timed Coloured Petri Net (TCPN) models through illustrative example,”
Accepted Manuscript for Publication in International Journal of Physical
Science, Paper No: ASCN/2011/012, African University Journal Series,
Accra, Ghana, 2011.
[7] T. Murata, “Petri nets: Properties, analysis and applications,” Proceedings
of the IEEE, vol. 77, no. 4, pp. 541–580, 1989.
[8] K. Jensen, Coloured Petri nets: basic concepts, analysis methods and
practical use. Springer Science & Business Media, 1997, vol. 1.