Está en la página 1de 52

SIMULACIÓN DE ESCENARIOS DE TRÁFICO VEHICULAR PARA LA CIUDAD DE BOGOTÁ

CESAR ALEJANDRO CHAVES PINZÓN

TRABAJO DE GRADO PRESENTADO PARA OPTAR EL TÍTULO DE

INGENIERO ELECTRÓNICO

DIRECTORES:

ING. DANIEL JARAMILLO RAMÍREZ Ph.D

ING. JULIÁN QUIROGA SEPÚLVEDA Ph.D

PONTIFICIA UNIVERSIDAD JAVERIANA

FACULTAD DE INGENIERÍA

DEPARTAMENTO DE INGENIERÍA ELECTRÓNICA

BOGOTÁ D.C. – MAYO 2016

1
Contenido

Índice de Figuras .................................................................................................................................. 3

1 INTRODUCCIÓN ........................................................................................................................... 4

2 MARCO TEÓRICO ......................................................................................................................... 8

2.1 Simulación Microscópica ..................................................................................................... 9


2.2 Simulación Macroscópica .................................................................................................. 10
2.3 Variables de Tráfico ........................................................................................................... 10
2.3.1 Velocidad (v) .............................................................................................................. 10
2.3.2 Densidad (p)............................................................................................................... 10
2.3.3 Flujo (q)...................................................................................................................... 10
2.4 Método de Simulación DEVS (Discrete Events System Specification) ................................ 11
3 RESUMEN DEL OBJETIVO DEL PROYECTO .................................................................................. 13

4 DESARROLLO.............................................................................................................................. 13

4.1 Caracterización de Tráfico ................................................................................................. 13


4.2 Concepción del simulador ................................................................................................. 16
4.3 Elementos del simulador ................................................................................................... 18
4.3.1 Segmentos ................................................................................................................. 18
4.3.2 Intersección ............................................................................................................... 19
4.3.3 Generador .................................................................................................................. 20
4.3.4 Bloque ....................................................................................................................... 21
4.3.5 Barreras ..................................................................................................................... 22
4.3.6 Proyecciones.............................................................................................................. 22
4.3.7 Eventos ...................................................................................................................... 24
4.4 Construcción de Escenarios de Tráfico .............................................................................. 29
4.4.1 Línea Recta ................................................................................................................ 29
5 Protocolo de Pruebas ................................................................................................................ 32

6 Análisis de resultados ................................................................................................................ 32

6.1 Caso 1: Movimiento de Bloque. ......................................................................................... 34


6.2 Caso 2: Propagación de Trancón ....................................................................................... 39
6.3 Caso 3: Corte de Bloque.................................................................................................... 43
6.4 Caso 4: Valores aleatorios.................................................................................................. 45

2
6.5 Caso 5: Simulación Carrera 7ma entre Calle 67 y calle 77 ................................................. 46
7 Conclusiones y Recomendaciones ............................................................................................. 48

8 BIBLIOGRAFÍA ............................................................................................................................ 48

9 ANEXOS...................................................................................................................................... 50

Índice de Tablas
Tabla 1. Ejemplo Matriz de Eventos .................................................................................................................. 12
Tabla 2. Equivalencia entre cuadros y Km/h ..................................................................................................... 15
Tabla 3. Lista de eventos ................................................................................................................................... 25
Tabla 4.Ejemplo de Evento de salida de bloque ................................................................................................ 25
Tabla 5. Ejemplo evento Semáforo Rojo en matriz de Eventos .......................................................................... 26
Tabla 6.Ejemplo evento Salida de Bloque de Sistema en matriz de Eventos ...................................................... 26
Tabla 7. Ejemplo Evento Unión de Bloques en matriz de Eventos ..................................................................... 27
Tabla 8.Ejemplo de evento Frente de bloque rojo en matriz de Eventos ........................................................... 27
Tabla 9. Ejemplo de evento Cola de bloque rojo en matriz de Eventos.............................................................. 27
Tabla 10. Ejemplo de evento Corte de bloque en la matriz de Eventos ............................................................. 28
Tabla 11.Ejemplo evento Cruce de Cola por Semáforo en matriz de Eventos .................................................... 28
Tabla 12.Ejemplo de evento Salida de Cola en matriz Eventos .......................................................................... 29
Tabla 13. Matriz Segmentos escenario línea recta ............................................................................................ 30
Tabla 14. Matriz intersecciones escenario línea recta ....................................................................................... 32
Tabla 15. Flujo Segmento1............................................................................................................................... 46
Tabla 16. Flujo Segmento 2 ............................................................................................................................... 47
Tabla 17.Flujo Segmento 3 ................................................................................................................................ 47

Índice de Figuras
Figura 1.Participación Modal en viajes motorizados en Bogotá-Región _______________________________ 5
Figura 2. Participación modal por estrato en Bogotá-Región. ______________________________________ 5
Figura 3. Gráfica de flujo vs velocidad según la ecuación fundamental del flujo Fuente: [7] ______________ 11
Figura 4. Histograma de cuadros ____________________________________________________________ 14
Figura 5. Histograma de Flujo ______________________________________________________________ 15
Figura 6. Tabla de caracterización Carrera Séptima _____________________________________________ 16
Figura 7. Ilustración de concepto de bloque ___________________________________________________ 17
Figura 8. Muestra de dos densidades de bloques _______________________________________________ 17
Figura 9. Explicación dirección de conexión. _________________________________________________ 19
Figura 10. Explicación de Intersección ______________________________________________________ 20
Figura 11. Ilustración de intersección ________________________________________________________ 20
Figura 12. Cola de Bloque quieto en segmento _________________________________________________ 21
Figura 13. Barreras en el plano espacio vs tiempo ______________________________________________ 22
Figura 14. Proyecciones ___________________________________________________________________ 23
Figura 15. Unión de Bloques _______________________________________________________________ 27
Figura 16. Corte de Bloque _________________________________________________________________ 28
Figura 17. Representación de Escenario Línea Recta_____________________________________________ 32
Figura 18. Mapa de Protocolo de pruebas _____________________________________________________ 33
Figura 19. Plano espacio vs tiempo __________________________________________________________ 34
Figura 20. Evento Salida de Bloque (Generador de Bloque) _______________________________________ 35
3
Figura 21. Evento Salida de Cola ____________________________________________________________ 35
Figura 22. Evento Salida de Bloque (Cruce de Frente de Bloque) Segmento 1 _________________________ 36
Figura 23. Evento Salida de Bloque (Cruce de Frente de Bloque) Segmento 2 _________________________ 36
Figura 24. Evento Cambio de Segmento de Cola ________________________________________________ 37
Figura 25. Evento Salida de Cola ____________________________________________________________ 38
Figura 26. Evento Salida de Bloque del Sistema (Frente) __________________________________________ 38
Figura 27. Evento Salida de Bloque de Sistema (Cola) ____________________________________________ 39
Figura 28.Evento Frente de Bloque Rojo ______________________________________________________ 40
Figura 29. Evento Cola de Bloque Rojo _______________________________________________________ 40
Figura 30. Evento Unión de Bloque __________________________________________________________ 41
Figura 31.Evento Unión de Bloque 3 y 1 ______________________________________________________ 42
Figura 32. Congestión total del mapa ________________________________________________________ 42
Figura 33. Semáforo Rojo __________________________________________________________________ 43
Figura 34. Evento Corte de Bloque ___________________________________________________________ 43
Figura 35. Evento Salida de Bloque (Semáforo en verde) _________________________________________ 44
Figura 36. Proyecciones generadas de simulación aleatorio _______________________________________ 45

1 INTRODUCCIÓN

Uno de los grandes problemas que enfrentan las grandes ciudades del mundo es la movilidad debido
al rápido crecimiento de la población y del parque automotor, afectando la calidad de vida de los
habitantes. Bogotá no es la excepción. Los habitantes de Bogotá constantemente sufren debido a la
incomodidad en el servicio de transporte público y los largos tiempos requeridos para su
desplazamiento. La poca efectividad de las soluciones que actualmente se establecen para mejorar la
movilidad es evidente.
Partición modal y uso de infraestructura

4
Figura 1.Participación Modal en viajes motorizados en Bogotá-Región

Figura 2. Participación modal por estrato en Bogotá-Región.

El transporte individual mueve menos del 20% de la población y usa el 80% de la infraestructura
vial, mientras el transporte público colectivo, mueve cerca del 80% de la población y usa cerca
del 20% de la infraestructura vial [Plan Maestro de Movilidad Bogotá 2005. Disponible: aquí.].

En la Figura 1 y Figura 2 se evidencia el alto uso de vehículos motorizados en la movilización de


los ciudadanos. El 75% de los ciudadanos son movilizados dentro de la infraestructura vial de la
5
ciudad de Bogotá. Aunque el uso de vehículo particular se incrementa en una gran porción en
los estratos alto, sigue siendo la mayoría de los habitantes quienes transitan por la red vial. Es
por esto que se requiere analizar y dar soluciones efectivas para darle competitividad a la ciudad
y mejorar la calidad de vida.
Semaforización
Las centrales de monitorización de los semáforos están saturadas, es decir, para manejar más de
20.000 semáforos solo se cuenta con tres centros de control. Actualmente el sistema de
semaforización electrónica en la ciudad de Bogotá está basado en las recomendaciones metodológicas
alemanas RISLA, como se menciona en [1]. Este sistema de monitorización fue diseñado en el año
1975 [2], es de esperar que esta solución no satisfaga los requerimientos de movilidad del crecimiento
de la ciudad. Por otro lado, a medida que la ciudad crecía, se creó una cultura de uso de carro propio,
es decir, la población está centrada en conseguir vehículo propio como su medio de transporte. Las
anteriores razones contribuyen significativamente a la incomodidad de tener que perder grandes
cantidades de tiempo movilizándose dentro de la ciudad como se muestra en [3].
Las soluciones que se emplean hoy en día están lejos de ser las mejores para las necesidades de
movilidad de los bogotanos, haciendo cada vez mayor la necesidad de implementar soluciones que
logren mejorar la movilidad en la ciudad.
Simulación de tráfico vehicular
A raíz de lo mencionado, entidades de educación superior han profundizado en el tema creando a
partir de nuevas tecnologías proyectos que permitan solucionar esta problemática. Por ejemplo, el
grupo SUR de la universidad de los Andes [4], es un grupo de investigación que busca soluciones a
partir del análisis de situaciones reales con imágenes y videos. Un reciente estudio analiza el
comportamiento del flujo del tercer carril de la carrera 7ª [5], en el cual se muestra su uso prioritario
para el transporte público. Los resultados muestran una disminución en los tiempos de subida y de
bajada de los buses, y un aumento de flujo en esta vía. Otro estudio se hizo por parte de profesores y
estudiantes de la Universidad Javeriana, recolectando la información de flujo vehicular a partir de
cámaras de video [6], con lo cual se pueden implementar nuevos métodos de tiempos de
semaforización. Hay que destacar así mismo, estudios presentados como trabajos de grado como [7]
de la universidad Pontificia Bolivariana, y [8] de la universidad de Manizales, dedicados a estudiar
de diferentes aspectos el flujo vehicular de Medellín y Manizales respectivamente.
Estos estudios y proyectos ayudan potencialmente a analizar las razones por las cuales los sistemas
implementados actualmente no funcionan y de esta manera proponer nuevas alternativas de control.
Este es el motivo principal de este proyecto de grado, desarrollar una herramienta de simulación que
permita modelar y analizar varias situaciones de tráfico para proponer cambios de variables de flujo
como tiempos de semaforización, dirección de vías, carriles preferenciales entre otros.
Modelamiento y Simulación de tráfico vehicular

A raíz de la problemática global de flujo vehicular se desarrolló un amplio rango de teorías durante
los pasados 50 años. [9] muestra el estudio de todas estas teorías las cuales se pueden dividir en 3
grandes rangos. Simulaciones microscópicas, mesoscópica y macroscópicas. Los modelos
microscópicos presentan la escala más pequeña. En este sentido, las variables utilizadas se relacionan
con el comportamiento de vehículos individuales respecto a la infraestructura y los demás vehículos.

6
Entre las plataformas de micro simulación más relevantes están INTRAS, FRESIM, MITSIM
CORSIM, VISSIM, THOREAU, FLEXSYT-II y AIMSUM [1].
Los modelos Mesoscópica presentan una aproximación intermedia entre los microscópicos y los
macroscópicos ya que mezclan conceptos de ambos modelos. Las plataformas de simulación más
utilizadas son, METROPOLIS, DYNASMART, DYNAMIT e INTEGRATION [1].
Por su parte los modelos macroscópicos son apropiados para aplicaciones de gran escala donde las
principales variables se encuentran relacionadas con las características del flujo. Entre las plataformas
de simulación más relevantes se encuentran TRANSYT-7F, VISUM, FREFLO, NETVACI,
TransCAD, KRONOS, AUTOS, EMME/2, METANET y METACOR [1].
Actualmente hay muchas plataformas de simulación, como es el caso de TransModeler Traffic [10],
la cual permite simular tráfico en grandes ciudades. Sin embargo, debido a la cultura de cada país, y
ciudad, el comportamiento de los conductores difiere de un lugar a otro, lo cual hace más difícil tener
un simulador que se logre acomodar a estas variaciones. Las condiciones que se deben tener en cuenta
para lograr aproximarnos a la realidad de las calles bogotanas son los comportamientos e idiosincrasia
que tienen los conductores como estacionarse en calles principales o ingresar y salir de los buses de
transporte público en el carril del medio.
Los simuladores capaces de modelar estas situaciones presentan varios inconvenientes. La forma más
común de modelar y analizar el tráfico vehicular es de manera microscópica, la cantidad de
parámetros que se requieren para esta simulación es mayor a la de una manera macroscópica. Al
modelar tráficos desordenados aumenta aún más esta cantidad de parámetros complicando
significativamente el modelado. Adicional a esto, estos simuladores son de uso comercial, por lo cual
los precios son elevados y de difícil alcance para uso académico o personal.
En [11] y [12] se estudia una alternativa de simulación por medio de teoría de colas, la cual ha sido
poco usada para simular tráfico vehicular. Este método facilita el tratamiento directo de variables
macroscópicas y evita la complejidad de los modelos microscópicos. En dichos trabajos también se
comprueba que esta teoría es válida para desarrollar este tipo de simulaciones y adicionalmente, ha
sido reconocido dentro de la comunidad académica por ser un enfoque alternativo de simulación de
flujo vehicular y por su efectividad en ciertas situaciones del tráfico urbano.
Simulador propuesto
Por las razones descritas anteriormente, este trabajo está enfocado a una simulación macroscópica
que permita representar las situaciones de interés en el tráfico de Bogotá, para proponer alternativas
justificadas que logren mejorar este problema social que afecta la calidad de vida de los habitantes de
la capital.
Este proyecto está enfocado en desarrollar una herramienta de simulación de tráfico vehicular. Para
este desarrollo se presentan tres etapas: Caracterización del tráfico, Desarrollo de la herramienta,
Simulaciones y Resultados. La herramienta requiere una caracterización de flujo vehicular a la
entrada para realizar la simulación. En la segunda etapa se estudian dos casos., El primero será un
segmento de vía recta; el segundo, se realizará un circuito de malla cerrada simulando intersecciones
con semáforos. Finalmente se escogerá un sector de Bogotá al cual se le realizarán distintas
simulaciones y se obtendrán variables macroscópicas (e.g. flujo, densidad y velocidad) las cuales
permitirán el análisis de los resultados.
Etapas

7
1-Caracterización del tráfico: Se entiende como flujo vehicular, la cantidad de vehículos por unidad
de tiempo [7]. En esta etapa se debe caracterizar el flujo a partir de modelos microscópicos para
alimentar el simulador. Se debe tener en cuenta que el funcionamiento del simulador trabaja con
variables macroscópicas. Para esta caracterización estadística y desarrollo de la herramienta se tuvo
en cuenta sólo automóviles.

2-Desarrollo de la Herramienta: Una vez caracterizado el flujo vehicular, se dio inicio a la


elaboración de la herramienta. El primer caso desarrollado está compuesto por la elaboración de la
simulación de un segmento de vía recta. Con esto se simula el comportamiento de una autopista o
avenida que tenga semáforos a lo largo de ella. Cada semáforo tendrá un flujo de entrada y uno de
salida. El software escogido para desarrollar la herramienta es Matlab.

Para la comprobación de eficacia de la herramienta se ingresó como entrada un flujo de automóviles


de un escenario sencillo y conocido para estudiar posteriormente los parámetros de salida que
entregan las herramientas. Se concluyó que la herramienta construida es válida para simular tráfico
debido a que sus salidas, flujo, densidad y velocidad, se comportaron de acuerdo a lo esperado.

3-Simulaciones y Resultados: Seguido a esto se procedió a escoger un sector de Bogotá el cual se


logre acomodar a los límites del proyecto. Luego, se alimentará la herramienta con diferentes
escenarios posibles de flujo vehicular para ser analizados posteriormente con los resultados
visualizados. Estos resultados son mostrados a través de gráficas, las cuales explican las diferencias
entre el flujo que sucede actualmente contra el flujo generado por cambios de parámetros
influyentes en la movilidad.

A continuación, se explica el contenido del documento. En el segundo capítulo se hace la explicación


de los diferentes tipos de simuladores existentes, las variables de tráfico y el método de simulación
DEVS. El tercer capítulo describe los resultados alcanzados de este trabajo. El cuarto capítulo
describe paso a paso como fue construido la herramienta, sus características y la construcción del
escenario generado para las pruebas. El quinto capítulo describe las pruebas realizadas para la
comprobación de la herramienta. El sexto capítulo muestra los resultados obtenidos al simular el
sector de Bogotá escogido. Para finalizar el Séptimo capítulo describe las conclusiones y
recomendaciones del trabajo.

2 MARCO TEÓRICO

En el siguiente capítulo se describen los tipos de simuladores que son usados para simular el tráfico
vehicular en las diferentes partes del mundo, las variables y gráficas utilizadas en el estudio de la
movilidad en las ciudades y el método escogido para llevar a cabo la simulación de la herramienta
DEVS.

8
Cada vez que se plantea como objetivo la simulación de tráfico vehicular se debe considerar que
resultados y que elementos se deben extraer para escoger un tipo específico de simulación. Entre más
específicos se necesite que el simulador sea mayor será la cantidad de recursos a usar. Existen 3 tipos
diferentes de simulación: simulación microscópica, simulación mesoscópica y simulación
macroscópica [9].
Se puede hacer una simple extracción del nivel que llega cada una de estas simulaciones si se analiza
el ejemplo que propone [13]. El ejemplo propone centrarse en analizar el caso de cambio de carril.
Para los simuladores microscópicos este evento se analiza a mayor detalle, pues se debe ver un
vehículo como una entidad particular y analizar su cercanía y velocidad en el carril que voy a cambiar.
Por su parte la simulación Mesoscópica analiza la densidad del flujo en el carril que existe en el
momento de hacer el cambio, ya en este caso no se tiene en cuenta un nivel de detalle de cada vehículo
sino el detalle de cada carril. Por el contrario, en el modelo de simulación macroscópica las variables
representativas de un cambio de carril serán nulas, ya que en este modelo no se tiene el detalle ni de
la velocidad de los vehículos en particular ni la densidad del carril a la cual se hace cambio, es por
esto que el evento de cambio de carril no es considerado en la simulación macroscópica.
A pesar de que este trabajo esté enfocado a una simulación macroscópica, se explicará continuación
se a mayor detalle cada uno de los modelos de simulación.

2.1 Simulación Microscópica

La simulación microscópica es aquella que pretende entender y simular individuos particulares dentro
de un ambiente macroscópico. Entre más detallado es el comportamiento que se simular aumentan
las variables a que afectan a este. Simular este tipo de escenarios exige que el comportamiento de
cada individuo sea constante y de baja entropía, ya que al haber mayor probabilidad de cambio entre
los individuos el ambiente será caótico e inestable.
Si bien es cierto que su costo operacional es elevado, también lo es el que estos simuladores tienen la
capacidad de acercase y modelar una gran cantidad de comportamientos que existen en las vías de las
regiones urbanas. Es posible llegar a conclusiones más precisas al ver simulaciones que están
bastantes cercanas a la realidad.
Cada entidad definida en los simuladores microscópicos tiene su modelo matemático que logre
modelar de forma precisa su comportamiento. Estos modelos pueden ser, lineales, exponenciales o
logarítmicos. En el Anexo 6 se encuentra el enlace a un simulador de tráfico microscópico el cual
modela un flujo de carros dentro de una rotonda sin salidas. Dentro de su documentación presentan
el modelo usado para la aceleración de los vehículos. A continuación, se presenta como ejemplo la
ecuación.

𝑑𝑣 𝑣 𝛿 𝑠∗(𝑣,∆𝑣) 2
𝑑𝑡
= 𝑎 [1 − (𝑣 ) − ( 𝑠
) ] (1)
0

Donde:
𝑣∆𝑣
𝑠 ∗ (𝑣, ∆𝑣) = 𝑠0 + max [0, (𝑣𝑇 + (2√𝑎𝑏) )] (2)

Se observa que en la ¡Error! No se encuentra el origen de la referencia. y ¡Error! No se encuentra el


origen de la referencia. hay una gran cantidad de parámetros para obtener un valor instantáneo de

9
aceleración. Entre los parámetros se encuentra, velocidad deseada, desaceleración, espacio entre el
carro de al frente entre otros.

2.2 Simulación Macroscópica

A diferencia de la simulación microscópica, este tipo de simulación no precisa de tantos parámetros


para calcular los datos que requiere para simular. Este método de simulación, a pesar de la escases de
contenido e información del individuo, logra a través de promedios dar solución al mismo problema,
simular un flujo de tráfico vehicular.
Se observa que, para describir un modelo macroscópico, es necesario sustentarse en los modelos
microscópicos para poder hallar los valores promedio de las variables. Para esto es posible utilizar
método de estimación estadística.
Entre los modelos de simulación macroscópica se encuentra el modelo de asignación de equilibrio.
Este modelo pretende analizar dentro de todo el ambiente la ruta más económica desde un punto a
hasta un punto b.

2.3 Variables de Tráfico

2.3.1 Velocidad (v)


𝑥
𝑣=
𝑡
Convertida para el flujo vehicular en:
𝑥̅
𝑣̅𝑒 =
𝑡̅
Donde: 𝑣̅𝑒 : Es la velocidad media espacial
𝑡̅: Es el intervalo de tiempo promedio en el flujo.
𝑥̅ : Es el espaciamiento promedio en el flujo
Es la relación de espacio que recorre un vehículo en un intervalo de tiempo.

2.3.2 Densidad (p)


Es el inverso del espaciamiento promedio:
1
𝜌=
𝑥̅
La cantidad de vehículos que se concentran en un lugar.

2.3.3 Flujo (q)

Es el inverso del intervalo promedio del tiempo

10
1
𝑞=
𝑡̅
Caracterización estadística: Los vehículos no viajan separados por intervalos de tiempo constantes.
Muchos fenómenos del tráfico tienden a seguir una distribución de probabilidad Poissoniana. En
algunos casos este modelo se adapta al flujo vehicular. El tráfico Poissoniano aparece como resultado
de la suma de muchas fuentes individuales de tráfico independientes e idénticamente distribuidas. En
particular, no corresponde al tráfico entregado por un semáforo, pero puede aproximar bien el tráfico
generado por un sector residencial de una ciudad sobre una avenida en un tramo antes de un semáforo.

Figura 3. Gráfica de flujo vs velocidad según la ecuación fundamental del flujo Fuente: [7]

Ecuación de flujo

Al entrar a analizar y simular cualquier escenario de tráfico hay que tener varias consideraciones. Si
entendemos el tráfico como un flujo podemos presentar como ecuación de este
𝑞 =𝑝∗𝑣 (3)

q = flujo [#carros/s]
p = densidad [#carros/m]
v = velocidad [m/s]

La Figura 3 muestra la interacción de la ecuación fundamental del flujo. Cada una de las líneas
interpreta densidades diferentes lo cual muestra que a mayor densidad mayor riesgo de
accidentalidad. A pesar que en la ecuación fundamental se perciba cierto tipo de proporcionalidad
o dependencia entre las variables, la gráfica demuestra lo contrario. No siempre al aumentar la
velocidad lograremos bajar la densidad.

2.4 Método de Simulación DEVS (Discrete Events System Specification)

11
Como lo vimos anteriormente, para cualquier tipo de simulación es posible simular a partir del método
de simulación de eventos discretos. Este método de simulación pretende modular y analizar sistemas
de diversos tipos.
El método de simulación que utiliza la herramienta es la simulación por eventos discretos. Esta es
una técnica informática de modelado de sistemas dinámicos. Frente a su homóloga, la simulación de
tiempo continuo, esta se caracteriza por un control en la variable del tiempo que permite avanzar en
intervalos variables, en función de la planificación de ocurrencia de tales eventos en un tiempo futuro.
Un requisito para aplicar esta técnica es que las variables que definen el sistema no cambien su
comportamiento durante el intervalo simulado.
Cada evento está definido para cumplir o ejecutar varias acciones que modifique las variables de los
elementos del simulador y pueden generar un evento futuro. Esto nos permite tener un control más
preciso en lo que ocurrirá en el modelado del sistema. Adicionalmente al hacer un modelado a través
de una matriz de eventos discretos es fácilmente obtener un historial de cada evento ocurrido durante
la simulación y lograr visualizar cada evento que ocurrió. Esto permite encontrar errores fácilmente
durante la simulación y permite mayor visibilidad sobre el comportamiento en la simulación a
diferencia de otros métodos.
Al hacer discretos los tiempos en una simulación se reducen considerablemente los recursos utilizados
por el computador para llevar a cabo la simulación de cualquier sistema.
El modelo básico de un modelado a partir de matriz de eventos es una estructura (ver [13])
𝑀 = < 𝑋, 𝑆, 𝑌, 𝛿𝑖𝑛𝑡 , 𝛿𝑒𝑥𝑡 , 𝛿𝑐𝑜𝑛 , 𝜆, 𝑡𝑎 >

Dónde:
X: conjunto de entradas externas
S: conjunto de estados secuenciales
Y: conjunto de salidas
δint: S → S : función interna de transición
δext : Q × Xb → S : Función externa de transición donde Q = { (s,e) | s ∈ S, 0 ≤ e ≤ ta(s) }
Xb is a set of bags over elements in X, (dónde δext(s,e,φ ) = (s,e));
δcon : S × Xb → S : confluent transition function
λ : S → Yb : función de salida que genera eventos externos a la salida principal
ta : S → Real : tiempo actual de la simulación
e: lapso de tiempo entre ta y tiempo del evento anterior

A continuación, se muestra un ejemplo de cómo opera la matriz de eventos para ejecutar los eventos
definidos.

Tipo Tiempo Id Segmento ID Bloque Identificador ID Proyección


3 108 3 3 1 39
6 112 1 6 40 34
9 114,348837 3 3 NaN 40
1 118 1 2 NaN NaN

Tabla 1. Ejemplo Matriz de Eventos

12
Esta matriz se describe en detalle en 4.3.7.

3 RESUMEN DEL OBJETIVO DEL PROYECTO

En este trabajo se logró crear un simulador modular, el cual permite la construcción de infinidad de
escenarios de tráfico para su posterior estudio. La herramienta modela el movimiento de los vehículos
de forma macroscópica entendiendo un fluido (bloques de carros) moviéndose en un espacio (las vías)
y generando diferentes tipos de eventos.
La herramienta es configurable para n-segmentos, entendiendo un segmento como una vía de
cualquier longitud conectada a una intersección en el principio y al final de esta. Cada una de las vías
debe tener un número entero de carriles, largo de la vía (metros), la conexión del frente y de la cola,
tiempo de verde (segundos), tiempo de rojo (segundos) y estado inicial del semáforo.
Como salida de la herramienta se obtiene información sobre el flujo y la densidad en las vías
simuladas.
Cuenta con dos gráficas de verificación de funcionalidad de la herramienta durante la simulación. La
primera hace referencia a la ubicación de cada uno de los bloques generados que interactúan en el
ambiente generado. La segunda es un plano espacio vs tiempo el cual muestra 4 tipos diferentes de
proyecciones. Movimiento de frente (color azul), Movimiento de cola (color negro), Propagación de
verde (color verde), Propagación rojo (color rojo). Esta gráfica permite visualizar el trayecto y estado
de cada uno de los bloques.

4 DESARROLLO
4.1 Caracterización de Tráfico

Uno de los objetivos de este trabajo es la caracterización del tráfico vehicular en Bogotá. Para esta
tarea fue necesario tomar como punto de referencia los videos capturaos en el trabajo [14]. El software
entregado en este trabajo detecta los vehículos que circulan por la escena y realiza un conteo de los
mismos. Para hacer el conteo es necesario indicar dos líneas sobre la escena. Estas líneas definen dos
sensores que al ser sobrepasados contabilizan un carro.
El software entrega el tiempo en el que el frente del carro pasa por ambas líneas (en cuadros de video)
y la separación entre las líneas. Para la caracterización, fue necesario medir físicamente la separación
entre las líneas configuradas para hallar la distancia en metros en la escena. Se obtuvo como medición
10,9 metros. Además, se conoce que la cámara estaba configurada para capturar 30 cps (cuadros por
segundo). Con estos datos es posible obtener la velocidad de cada carro contabilizado por el software.
Fueron usados 20 videos con los cuales se recolectaron 6292 conteos de carros. Los videos fueron
tomados desde el quinto piso del edificio central de la Pontificia Universidad Javeriana. El archivo
de Excel donde se calcularon las velocidades se puede consultar en el Anexo 1.
A partir de las velocidades tomadas se procesaron los datos para poder modelar como una mezcla de
Gaussianas el histograma de las velocidades de los vehículos.

13
Figura 4. Histograma de cuadros

En la Figura 4 se ilustra el histograma de la diferencia de cuadros entre cada cruce de frente de cada
vehículo obtenido a partir del software. Se puede observar que los datos más repetidos son los valores
cercanos a 5. A partir de las configuraciones de la toma del video mencionadas anteriormente es
posible hallar el equivalente de la velocidad en km/h.
𝑑𝑖𝑠𝑡𝑎𝑛𝑐𝑖𝑎
𝑣=( 𝑐𝑢𝑎𝑑𝑟𝑜𝑠 ) ∗ 3.6 (4)
#
𝑐𝑝𝑠

En la ecuación 4 se describe la fórmula para hallar la velocidad en km/h. Se halló nuevamente una
distancia para obtener mejor resolución, ya que a mayor distancia entre las líneas aumenta la
probabilidad de error. Asumiendo que la perspectiva es marginal, la distancia obtenida fue
2,34408602 m. Y siendo cps 30 debido a la configuración de la cámara usada al grabar. En la siguiente
tabla se muestran los equivalentes.

# Cuadros km/h # Cuadros km/h # Cuadros km/h


1 253,16129 16 15,8225806 31 8,16649324
2 126,580645 17 14,8918406 32 7,91129032
3 84,3870968 18 14,0645161 33 7,67155425
4 63,2903226 19 13,3242784 34 7,4459203
5 50,6322581 20 12,6580645 35 7,23317972
6 42,1935484 21 12,0552995 36 7,03225806
7 36,1658986 22 11,5073314 37 6,84219704
14
8 31,6451613 23 11,0070126 38 6,66213922
9 28,1290323 24 10,5483871 39 6,49131514
10 25,316129 25 10,1264516 40 6,32903226
11 23,0146628 26 9,7369727 41 6,17466562
12 21,0967742 27 9,37634409 42 6,02764977
13 19,4739454 28 9,04147465 43 5,88747187
14 18,0829493 29 8,72969967 44 5,75366569
15 16,8774194 30 8,43870968 45 5,62580645

Tabla 2. Equivalencia entre cuadros y Km/h

Como se observa en la Tabla 2. Equivalencia entre cuadros y Km/h Tabla 2. el salto entre el número
de cuadros es de uno, mientras que en las velocidades no es constante y son saltos considerablemente
grandes. Es por esto que el histograma mostrado y el análisis se hicieron tomando la diferencia de
cuadros como la velocidad.
Una vez obtenida la caracterización de la velocidad es posible obtener el flujo. Esto es posible ya que
se pudo saber cuántos carros pasan en una ventana de tiempo. En el Anexo 3 se presenta el código
usado en Visual Basic para hallar el flujo a partir de la tabla de velocidad (Anexo 1).

Figura 5. Histograma de Flujo

En la Figura 5, se muestra el histograma obtenido a partir de la tabla de la caracterización del flujo


vehicular, Anexo 4. Esta figura se debe entender como la cantidad de carros en un segundo. Se puede
observar que el flujo no sigue una distribución conocida ya que tiene dos picos pronunciados, uno
15
cercano a 0.1 carros por segundo, y el segundo entre 0.6 y 0.7 carros por segundos. Para lograr
modelar esta distribución se utilizó la suma de dos distribuciones gaussianas. A continuación, se
muestran los valores de µ(media) y σ (desviación estándar) de cada una de las distribuciones.

mu1 = 4.2844;
mu2 = 9.2275;
sig1 = 0.7451;
sig2 = 40.5532;

Adicional a esta caracterización del tráfico se presenta a continuación una tabla propuesta en el trabajo
[15], donde se hace una caracterización de la carrera 7ma desde la calle 32 hasta la calle 72 sentido
sur norte en horas pico.

Figura 6. Tabla de caracterización Carrera Séptima

Hay que resaltar de la Figura 6 que la velocidad promedio en horas pico disminuye a 26 km/h, esto
consecuentemente hace que el flujo en la vía baje. La tabla indica que se contabilizaron 3900
vehículos en 3 horas, esto es equivalente a decir que el flujo es en promedio 0,3611 carros por
segundo. Este no es un valor de alta probabilidad de la Figura 5

4.2 Concepción del simulador


El proyecto empezó enfocado a realizar una herramienta de simulación de tráfico basada en teoría de
colas. Sin embargo, durante la construcción de ésta, se encontraron varias razones para ir cambiando
la metodología de simulación. La primera variante significativa que se realizó fue modelar los
elementos del tráfico vehicular como bloques.

16
Figura 7. Ilustración de concepto de bloque

En Figura 7 se muestra un caso común en cualquier avenida, donde se pueden aprenciar en la vía
varios vehículos transitando. Este conjunto de vehículos en moviento se puede entender de forma
macroscópica como un bloque de carros. De tal forma que no es necesario analizar cada vehículo por
separado sino como todo un conjunto.
Los bloques analizados tiene una propiedad importante y es la densidad. Como se explicó
anteriormente, se entiende por densidad como el número de carros dentro de una unidad de medida
de área. En la Figura 8 podemos apreciar dos bloques con diferentes densidades. Al lado izquierdo se
ilustra un bloque detenido por un semáforo, lo cual hace que la densidad del bloque sea alta pues en
un espacio reducido se encuentra una gran cantidad de vehículos.

Figura 8. Muestra de dos densidades de bloques

Por su parte en la vía de la derecha vemos un bloque en movimiento, esto muestra que el bloque tiene
una densidad baja, ya que, al estar en movimiento, los vehículos tienden a conservar mayor distancia
entre ellos, esto genera que los vehículos se distribuyan sobre un espacio mayor.
La herramienta maneja únicamente dos densidades. Densidad alta cuando los carros del bloque están
detenidos y densidad baja cuando estos estén en movimiento. Se definió una distancia promedio del
largo de los vehículos a 4.5 metros y se consideró una distancia de separación entre carros de 1.5
metros. Dicho esto, es posible calcular el valor de la densidad. 1 carro / 6 metros es equivalente a una
densidad de 0.1667 carros/metro.
De la misma manera es posible hallar el valor de la densidad baja. Esta es obtenida a partir de la
velocidad de movimiento del bloque y el tiempo que requiere propagar el movimiento. Para los casos
analizados en este trabajo la velocidad es 30 km/h. y la propagación es de 1 segundo. Es por esto que
al transcurrir el primer segundo el carro ha avanzado 8.333 metros dejando un espacio total de 14.333
metros. En otras palabras, el valor de la densidad baja es de 0.0698 carros/metro.

17
Una vez definido el flujo vehicular como bloques en movimiento con 2 densidades, se analizaron los
posibles casos que se podrían generar al interactuar en un mismo entorno. La principal entidad que
genera estos cambios son los semáforos, pues son quienes modifican el comportamiento de los
bloques. Al llegar un bloque a un semáforo en rojo, este se comprimirá y se propagará la parada de
su cola. Una vez se ponga en verde el semáforo, permitirá al bloque empezar a desplazarse en el
siguiente segmento, esto a su vez genera una propagación de verde y movimiento de la cola.
Estas acciones de interacción entre el semáforo y el bloque generan una gran cantidad de
posibilidades. En principio cuando un semáforo cambia su estado a rojo y existe un bloque en el
medio del semáforo producirá un corte de bloque dejando una parte del bloque en el segmento del
semáforo y el restante en movimiento. Cuando un bloque tiene detenida su cola puede llegar otro
bloque con el frente en movimiento y generar una unión de bloques. Esto significa que ahora el bloque
que tenía detenida su cola se mezcla con el bloque que llega para generar un bloque más grande.
Estos eventos, debido al método de simulación DEVS, deben ser previstos y ser generados a futuro y
generan una gran cantidad de posibles casos de propagaciones de rojo y de verde. Al presentarse un
evento en el tiempo actual de la simulación que pueda eliminar todos los eventos mencionados
anteriormente, requiere verificar cada una de estas posibilidades, por lo cual en cada nueva simulación
amplia la cantidad de validaciones y un crecimiento cada vez mayor del código. Para evitar estas
situaciones, se planteó el estudio de todos los posibles casos en un plano de espacio contra tiempo,
generando proyecciones de movimientos de frente y cola y propagaciones de rojo y verde. Este
análisis mostró cómo se debían intersectar los eventos generados que no se iban a ejecutar. Esta fue
la descripción de la evolución del método de simulación de la herramienta que se presenta en este
trabajo.

4.3 Elementos del simulador

El simulador está programado en Matlab, por lo cual el uso de matrices se estableció para cada
elemento y su procesamiento está basado en la indexación de matrices. Existen variables
configurables que son parámetros de la simulación.
Una simulación está compuesta por la unión de segmentos viales, unidos por intersecciones. En cada
intersección un semáforo controla el flujo vehicular que será modelado con bloques elásticos. Los
bloques representan grupos de carros que solo pueden estar quietos (densidad alta) o en movimiento
(densidad baja).

4.3.1 Segmentos
Los segmentos son el medio de propagación de los bloques. Se entiende el segmento como una vía
de único sentido conectando dos intersecciones. Siempre debe tener en sus extremos un semáforo.
Propiedades

 ID segmento identificador único en el escenario a simular


 ID intersección delantera Identificador de la intersección de enfrente (Si no tiene una conexión en frente se
define como NAN)
 ID intersección trasera Identificador de la intersección trasera (Si no tiene una conexión atrás se define
como NAN)
 Tamaño de segmento [m] Longitud del segmento
 Número de carriles

18
 Tiempo de verde [s] Tiempo en segundo que dura el semáforo en estado verde
 Tiempo de rojo [s] Tiempo en segundo que dura el semáforo en estado rojo
 Porcentaje de llenado Porcentaje actual de llenado del segmento, depende del tamaño del bloque que esté
cruzando por el segmento.
 Estado del semáforo Estado actual del semáforo, 1 si el semáforo está en verde, 0 si está en rojo
 Dirección de conexión delantera Explicación Figura 9
 Dirección de conexión trasera Explicación Figura 9
 Último cruce frente Tiempo más reciente en que cruzó un frente de bloque por semáforo

Sgm2

Sgm1
Int 1

Figura 9. Explicación dirección de conexión.

En la Figura 9 se muestra una conexión de dos segmentos a una intersección. Ambos segmentos están
conectados a la intersección 1 en su frente, lo que los difiere es la dirección de conexión. El segmento
1 está conectado horizontalmente (0) mientras que el segmento 2 está conectado verticalmente (1).
De esta misma manera se identifica la conexión trasera.
4.3.2 Intersección

Las intersecciones son los elementos de conexión de los segmentos, estos pueden ser vistos como
nodos, con 4 posibles conexiones. En la Figura 10 se muestra cómo son las 4 conexiones de una
intersección si algún punto de conexión está vacío se define con NaN.

Izquierda
19

Atrás Adelante
Figura 10. Explicación de Intersección

Propiedades

 ID intersección Identificador único de la intersección


 ID segmento adelante Identificador del segmento conectado adelante
 ID segmento atrás Identificador del segmento conectado atrás
 ID segmento derecha Identificador del segmento conectado a la derecha
 ID segmento izquierda Identificador del segmento conectado a la izquierda
 Número de carriles horizontalmente Cantidad de carriles de forma horizontal ver Figura 11
 Número de carriles verticalmente Cantidad de carriles de forma vertical ver Figura 11
 Porcentaje de llenado horizontalmente
 Porcentaje de llenado verticalmente.

1 2 3

Figura 11. Ilustración de intersección

La Figura 11 ilustra y explica cómo se debe entender el número de carriles horizontal y vertical en el
momento de la configuración de una intersección. Se puede observar que de forma horizontal la
intersección tiene 2 carriles y de forma vertical tiene 3.
4.3.3 Generador

El o los generadores de la simulación permiten la creación de bloques de vehículos para ser


entregados a un segmento.
Propiedades

 Variable de densidad Esta variable es el promedio de la caracterización de la densidad de carros, está


alimentará un valor aleatorio con distribución Poisson donde la media será la variable de densidad
 Tiempo de Generación Es el tiempo de ventana de espera entre generar bloques
 ID Generador Identificador único de generador

20
 Segmento adelanto Identificador del segmento al que le entregará los bloques generados

4.3.4 Bloque

Como se describió anteriormente, el bloque será el fluido de vehículos que se desplazará por los
segmentos. Cada bloque tiene un frente y una cola. Un bloque puede tener densidad alta, si todos
sus vehículos están quietos; baja densidad, si todos sus vehículos están en movimiento o una mezcla
de ambas densidades.
Propiedades

 ID Bloque Identificador único de bloque


 Tamaño de Bloque Cantidad de carros que tiene el bloque, número es racional
 ID segmento de frente Identificador del segmento en el que se encuentra el frente del bloque
 ID segmento de cola Identificador del segmento en el que se encuentra la cola del bloque
 Posición último carro Variable que indica la posición de la cola una vez está para, este valor es respecto al
tamaño del segmento. Ver Figura 12

80 m

90 m

Figura 12. Cola de Bloque quieto en segmento

En la Figura 12 se ilustra el bloque 1 detenido por un semáforo en rojo, el segmento en el que se


encuentra el bloque mide 90 metros. Una vez la cola del bloque se detiene se mide la distancia entre
el inicio del segmento y la cola del bloque, en este caso la cola se encuentra a 10m del inicio del
segmento.

21
 Velocidad frente Velocidad en la que viaja el frente del bloque, solo puede ser 0 o Vc.
 Velocidad cola Velocidad en la que viaja la cola del bloque, solo puede ser 0 o Vc.
 Tiempo de cola Tiempo en el que la cola del bloque cambio de velocidad.
 Tiempo de frente Tiempo en el que el frente del bloque cambio de velocidad.

4.3.5 Barreras

Las barreras son obstáculos que no permiten el movimiento de los bloques.


Tipos

Existen 2 tipos diferentes de barreras. Las primeras son los semáforos en rojo que se presentan
durante toda la simulación. Las segundas son las paradas de colas de un bloque.

Propiedades

 ID Segmento Identificador del segmento donde se encuentra la barrera


 Posición Hace referencia a la ubicación entre el generador y la barrera. Ver Figura 13
 Tiempo de arranque Tiempo en el que inicia la barrera
 Tiempo de finalización Tiempo en el que finaliza la barrera
 Identificador Bandera que indica si es una cola o un semáforo (1 Cola, 0 semáforo)

Figura 13. Barreras en el plano espacio vs tiempo

En la Figura 13 se ilustran las barreras dentro del plano de espacio vs tiempo, las barreras son las
líneas horizontales de color azul. Estas en particular muestran los semáforos en rojo que estarán
distribuidos durante la simulación. Se aprecia en la gráfica que hay 3 distancias diferentes en las
barreras, las primeras, las más cercanas al eje x, están aproximadamente a 94 metros del generador.
Las segundas están alrededor de los 200 metros y las últimas alrededor de los 600 metros.
4.3.6 Proyecciones

22
Las proyecciones son el principal elemento del simulado y todos los cálculos de tiempos en los
eventos están basados en las proyecciones.

Tipos

Existen 4 tipos diferentes de proyecciones las cuales se diferencian por sus propiedades. En un plano
espacio-tiempo cada proyección tiene un punto de partida y un punto de llegada. Cada proyección
en su punto final genera un evento.

1) Movimiento Frente: Esta proyección ilustra el movimiento de un bloque dentro de los


segmentos, visualmente se pinta de color azul y se intersecta con las barreras. Esta
proyección si no se intersecta con ninguna barrera genera un evento de salida de bloque de
sistema.
2) Propagación verde: Esta proyección ilustra el tiempo en que se va a mover la cola, una vez
el frente de un bloque haya arrancado se debe proyectar una propagación verde y calcular
el tiempo de arranque de la cola. El finalizar su proyección genera un evento Salida de cola.
3) Propagación roja: Al igual que la proyección anterior esta ilustra el tiempo en el cual la cola
de un bloque se detendrá debido a una parada de su frente. Una vez proyectada la
propagación se debe adicionar una barrera de la cola por el tiempo en el cual el frente se
mantuvo detenido. Esta proyección genera un evento Parada de cola.
4) Movimiento de Cola: Esta proyección muestra el movimiento de una cola, su intersección
es la propagación roja del mismo bloque, si hay intersección la proyección de la cola no
puede avanzar. Si esta proyección no es intersectada genera al final un evento Salida de
bloque del sistema.

Figura 14. Proyecciones

En la Figura 14 se obsevan los 4 tipos diferentes de proyecciones. Estas se dan debido a la generación
de un bloque. La línea Azul muestra una proyección de movimiento de frente y esta solo llega hasta
donde se intersecta con la barrera ubicada en la posición 94. Una vez esta se intersecta genera una
propagación de rojo ilustada por la línea de color rojo. Cuando la línea de colo rojo acaba de

23
propagarse se pinta una nueva barreraindicando que en esa posición y durante ese tiempo existirá
un bloque detenido.

Por otra parte tenemos la línea de color verde la cual indica una propagación de verde. Se muestra
en la gráfica que esta propagación terminó alrededor de los 10 segundo y genera una proyección de
movimiento de cola, la cual a su vez solo logra proyectarse hasta donde acaba la propagación de
rojo.

Propiedades

 ID Proyección Identificador único de la proyección


 Tiempo inicial Cordenada inicial en el eje tiempo
 Espacio inicial Cordenada inicial en el eje espacio
 Tiempo final Cordenada final en el eje tiempo
 Espacio final Cordenada final en el eje espacio
 Evento generado Evento el cual genera al final de la proyección
 Pendiente Pendiente de la proyección
 Tipo Se especifica el tipo de proyección
 Id bloque Identificador del bloque al que pertenece la proyección.

4.3.7 Eventos
Como se ha mencionado anteriormente, el simulador usa el método de eventos discretos (DEVS)
para realizar su simulación. Cabe recordar que un evento puede ejecutar varias acciones y a su vez
generar otros eventos.

El esqueleto de la simulación es una Matriz de eventos definida y organizada para que en cada
iteración siempre y cuando el valor de Ta, (Tiempo actual), este sea menor al tiempo definido como
Ts, tiempo de simulación, se ejecute el evento programado.

En la Tabla 3 se muestra un resumen de cómo está organizada la matriz de eventos, aunque para
cada evento los campos serán diferentes.

Número de Nombre del Evento Descripción


Evento
1 Salida de Bloque Evento donde el frente de un bloque se
empezará a mover. Puede ser desde el
generador o un segmento
2 Semáforo Rojo Actualiza el estado del semáforo
3 Salida de Bloque de Sistema Evento donde un bloque llega al límite de la
simulación.
4 Unión de Bloques Se unen dos bloques cuando un frente
alcanza a una cola detenida
5 Frente de Bloque Rojo Evento que actualiza la información del
bloque cuando su frente llega a un
semáforo en rojo
6 Cola de Bloque Rojo Evento que actualiza la información del
bloque cuando su cola se detiene

24
7 Corte de Bloque Corte de bloque debido a un semáforo en
rojo
8 Cruce de Cola por semáforo Evento que actualiza la información de la
cola de un bloque una vez esta cruza un
semáforo
9 Salida de Cola Evento que actualiza la información de la
cola de un bloque una vez que empieza a
moverse.
Tabla 3. Lista de eventos

Tipos de eventos

4.3.7.1 Evento Salida de Bloque

Este evento tiene como objetivo analizar la salida de un bloque ya sea desde un generador o desde
un segmento.

Tipo de Evento Tiempo ID Sgm / ID gnd Identificador N/A ID de proyección


1 0 1 0 NaN 1

Tabla 4.Ejemplo de Evento de salida de bloque

En la Tabla 4 vemos un ejemplo de cómo se analiza en la matriz de evento un evento tipo salida de
bloque. El tipo de evento está definido como el evento 1. El tiempo de evento es el tiempo en el que
se ejecutará el evento. ID Sgm / ID gnd, se refiere al identificador del Segmento o del generador al
que corresponda. Identificador indica si en el evento hay que analizar una salida de bloque de
generador (0), un paso de frente por un segmento (1) o un semáforo en verde (2).
Una salida de bloque de generador es la entrega del generador hacia el segmento al cual está
conectado. Este primer evento es generado antes de que comience la simulación y será en el tiempo
0, con lo cual, el primer evento que ejecute la herramienta será generar un bloque. Una vez generado
y entregado el bloque al segmento, se generará otro evento tipo 1 con identificador 0 en el tiempo
𝑇𝑎 + 𝑡𝑔 (tiempo actual + tiempo de generador), definido previamente.

El paso de frente por un segmento se refiere a cuando un bloque que tiene su frente en movimiento
pasa por el semáforo y este está en verde, esté evento es programado cuando se genera la proyección
de movimiento de frente, si este no es intersectado por una barrera se programarán los eventos de
paso de frente por el segmento. Estos eventos son generados antes de arrancar la simulación. Al tener
conocimiento de los tiempos de verde y rojo y su estado inicial, la herramienta es capaz de calcular
en que tiempos se van a ejecutar. Este evento no genera más eventos, solo modifica las variables de
las propiedades tanto del bloque que está pasando como del segmento está siendo analizado.
Semáforo en verde indica que un semáforo cambió su estado y se debe analizar si existe en ese
momento un bloque con el frente quieto, de ser así se genera la proyección de movimiento de frente
desde la posición donde se encuentra el semáforo y el tiempo en el cual éste cambió su estado. En
este momento se generan los eventos tipo 1 con identificador 1 que estén adelante del segmento a
analizar.

25
El quinto campo en la matriz de evento para este tipo de evento no es requerido por lo cual siempre
esta celda tendrá un NaN.
Finalmente, el sexto campo está destinado para colocar el identificador de la proyección que generó
este evento. De la Figura 14 podemos ver que la proyección puede generar eventos de tipo 1 con
identificador 1, en este caso el sexto campo se llenará con el identificador único de la proyección
azul.
4.3.7.2 Evento Semáforo Rojo
Este evento es el encargado de cambiar el estado del semáforo a rojo. En este estado se valida si existe
algún bloque que tenga la cola en su segmento y el frente en uno diferente. De ser este el caso se
genera un evento Corte de Bloque.
A continuación, en la
Tabla 5 se muestra un ejemplo de evento Semáforo rojo en la matriz de eventos.

Tipo de Evento Tiempo ID Segmento N/A N/A ID Proyección


2 10 1 NaN NaN NaN

Tabla 5. Ejemplo evento Semáforo Rojo en matriz de Eventos

4.3.7.3 Evento Salida de Bloque de Sistema


Este evento ocurre cuando un frente o una cola del bloque llegan al final del escenario propuesto.
Si llega un frente de bloque se debe analizar si el bloque pasa completamente. Si cuando pasa su cola
ha habido un cambio de estado de segmento se genera un evento Corte de Bloque. Cuando está
saliendo una cola, se deben actualizar las variables de las estadísticas de los bloques que salen.

Tipo Evento Tiempo ID Segmento ID Bloque Frente/Cola ID Proyección


3 150 5 1 1 1
Tabla 6.Ejemplo evento Salida de Bloque de Sistema en matriz de Eventos

En la Tabla 6 se presenta un ejemplo de evento de salida de bloque. En este caso se muestra que en
el segundo 150, siendo el segmento 5 el último, el bloque 1 está saliendo del simulador ya que su
frente llegó al límite. El campo 5 de la matriz de evento está destinado para identificar si es la cola o
el frente quien está saliendo, 1 para el frente 0 para la cola.
4.3.7.4 Evento Unión de Bloques
Este es uno de los eventos principales del simulador. En este evento se mezclan dos bloques, esto
sucede cuando una cola detenida se encuentra en el mismo tiempo y espacio con un frente en
movimiento. El bloque que desaparecerá será el de atrás como se muestra en la Figura 15.

26
Figura 15. Unión de Bloques

Debido a que el bloque de adelante tendrá una nueva cola, se eliminarán de la matriz de eventos
aquellos eventos generados por la proyección de la cola anterior. Así mismo se deben eliminar los
eventos del frente del bloque de atrás.

Tipo de Evento Tiempo ID Bloque Adelante ID Bloque atrás N/A ID Proyección


4 35 1 2 NaN 8
Tabla 7. Ejemplo Evento Unión de Bloques en matriz de Eventos

En la Tabla 7 se muestra un ejemplo de un evento de unión de bloques en la matriz de eventos. Se ve


que en el campo 3 y 4 son destinados para guardar la información de los identificadores únicos de los
bloques que se van a unir.

4.3.7.5 Evento Frente de bloque rojo


Este evento se encarga de modificar la velocidad del frente y el segmento donde se encuentra. Solo
ocurrirá cuando el frente de un bloque que está en movimiento haya llegado a un semáforo en rojo.

Tipo de Evento Tiempo ID Segmento ID Bloque N/A ID Proyección


5 22 1 1 NaN 1
Tabla 8.Ejemplo de evento Frente de bloque rojo en matriz de Eventos

La Tabla 8 muestra un ejemplo del evento Frente de bloque rojo en la matriz de eventos. En el tercer
campo se muestra el identificador del segmento a donde llega el frente y en el cuarto campo el
identificador del bloque que llega.

4.3.7.6 Evento Cola de bloque rojo


Al igual que el evento anterior, este evento es solo de modificación de variables en las propiedades
del bloque. Se actualiza la velocidad de la cola, su posición y el segmento donde está se encuentra.
En la se puede ver un ejemplo de evento de Cola de bloque rojo en la matriz de Eventos

Tipo de Evento Tiempo Id Segmento ID Bloque N/A ID


Proyección
6 32 1 1 NaN 5
Tabla 9. Ejemplo de evento Cola de bloque rojo en matriz de Eventos

4.3.7.7 Evento Corte de Bloque


Al igual que el evento Salida de Bloque y Unión de Bloque, este evento cumple un gran papel en la
simulación. Este es el encargado de partir un bloque una vez algún semáforo haya cambiado su estado
antes de que un bloque termine de pasar. Lo primero que este evento hará será la creación y
27
actualización de los bloques comprometidos. Para el bloque nuevo se le asignarán todas las
propiedades correspondientes a la cola del bloque que se cortó. Y de esta misma manera al bloque
que acaba de ser cortado, se le modificará sus propiedades referentes a la cola.
Después de esto se modificarán las proyecciones. Primero se le asigna una nueva proyección de
movimiento de cola al bloque que se corta. Luego se debe generar la propagación de rojo debido a
que el frente del nuevo bloque está detenido. Esto generará un evento de Cola de bloque rojo. Con la
cola detenida se debe generar una nueva barrera durante el tiempo que su frente esté detenido.
Finalmente se genera la proyección de salida de la cola del nuevo bloque.
Hay que tener en cuenta que, si la proyección de movimiento de frente del bloque que se corta ya
tiene un evento de Frente de bloque rojo, pues se debe re calcular la propagación del rojo en este caso.

Figura 16. Corte de Bloque

En la Figura 16 se muestra el momento en que un semáforo en rojo corta el bloque 1. Como se


puede apreciar en la gráfica se obtienen dos bloques a partir de uno.

Tipo de Evento Tiempo ID Segmento ID Bloque Tamaño de Bloque Prevalece ID Proyección


7 20 1 1 15.3893 NaN
Tabla 10. Ejemplo de evento Corte de bloque en la matriz de Eventos

La Tabla 10 expone el ejemplo de evento de corte de bloque en la matriz de eventos. De esta tabla
hay que resaltar que el tamaño del bloque que prevalece hace referencia al nuevo tamaño del bloque
que corta. Este valor no es un número entero debido a que, visto como un flujo, pueden existir tamaños
de bloques de valores racionales. Por otro lado, este es el único evento que tiene una proyección
asociada debido a que lo que genera un corte de bloque son los eventos Semáforo Rojo y Salida de
Bloque de Sistema.
4.3.7.8 Evento Cruce de Cola por Semáforo

Este evento cumple la función de actualizar los datos de las propiedades de un bloque para su cola.
Una vez una cola cruza por un semáforo se debe actualizar los campos de segmento donde se
encuentra la cola. Una vez realizada la actualización se genera el evento Salida de Cola después de
haber recorrido la intersección que se encuentra en frente.

Tipo de Evento Tiempo ID Segmento ID Bloque N/A ID


Proyección
8 29.67 1 1 NaN 9
Tabla 11.Ejemplo evento Cruce de Cola por Semáforo en matriz de Eventos

28
En la Tabla 11 se muestra un ejemplo de evento de cruce de cola.

4.3.7.9 Evento Salida de Cola


Este evento es el encargado de mantener actualizado los valores de la cola de cada bloque, indica el
tiempo en que se comienza a mover una cola.

Tipo de Evento Tiempo ID Segmento ID Bloque N/A ID


Proyección
9 30 1 1 NaN 3
Tabla 12.Ejemplo de evento Salida de Cola en matriz Eventos

En la Tabla 12 se presenta un ejemplo de un evento de salida de cola en la matriz de eventos. Este


evento no usa el quinto campo. El sexto campo se usa dependiendo de quien haya generado el
evento.

4.4 Construcción de Escenarios de Tráfico

4.4.1 Línea Recta


Para hacer uso de la herramienta se escogió como escenario de línea recta la carrera séptima entre las
calles 77 y 67 sentido norte-sur. Esta configuración consta de 5 segmentos ,4 intersecciones y un
generador. A continuación, se describirá como se definieron los segmentos para crear el escenario
más cercano a la realidad. Con la ayuda de la herramienta google maps se realizaron las medidas de
distancia de cada tramo. Como valores iniciales está el ancho del carril de 3 metros.
4.4.1.1 Primer segmento

Tramo: Carrera séptima desde la calle 77 a la calle 76.


Longitud: 93.14 m
Intersección delantera: 1
Intersección trasera: No aplica
Número de Carriles: 3
Tiempo de verde: 15
Tiempo de rojo: 15
Estado Inicial: 1
Dirección conexión delantera: Horizontal
Dirección conexión trasera: Horizontal

4.4.1.2 Segundo segmento

Tramo: Carrera séptima desde la calle 76 a la calle 75.


Longitud: 91.13 m
Intersección delantera: 2
Intersección trasera: 1
Número de Carriles: 3
Tiempo de verde: 15
Tiempo de rojo: 15
Estado Inicial: 0
Dirección conexión delantera: Horizontal
Dirección conexión trasera: Horizontal
29
4.4.1.3 Tercer Segmento

Tramo: Carrera séptima desde la calle 75 a la calle 752


Longitud: 394.18 m
Intersección delantera: 3
Intersección trasera: 2
Número de Carriles: 3
Tiempo de verde: 15
Tiempo de rojo: 15
Estado Inicial: 1
Dirección conexión delantera: Horizontal
Dirección conexión trasera: Horizontal

4.4.1.4 Cuarto Segmento

Tramo: Carrera séptima desde la calle 72 a la calle 70


Longitud: 230.54 m
Intersección delantera: 4
Intersección trasera: 3
Número de Carriles: 3
Tiempo de verde: 15
Tiempo de rojo: 15
Estado Inicial: 0
Dirección conexión delantera: Horizontal
Dirección conexión trasera: Horizontal

4.4.1.5 Quinto Segmento

Tramo: Carrera séptima desde la calle 70 a la calle 67


Longitud: 281.18 m
Intersección delantera: No aplica
Intersección trasera: 4
Número de Carriles: 3
Tiempo de verde: 15
Tiempo de rojo: 15
Estado Inicial: 1
Dirección conexión delantera: Horizontal
Dirección conexión trasera: Horizontal

ID Sgm Int Delantera Int Trasera Tamaño Num. Carriles Tiempo Verde Tiempo Rojo % Llenado Estado de Semáforo Dir. Con. Del. Dir. Con. Tras.
1 1 NaN 93,14 3 15 15 0 1 0 0
2 2 1 91,13 3 15 15 0 0 0 0
3 3 2 394,18 3 15 15 0 1 0 0
4 4 3 230,54 3 15 15 0 0 0 0
5 NaN 4 281,18 3 15 15 0 1 0 0

Tabla 13. Matriz Segmentos escenario línea recta

30
En la Tabla 13 se encuentran los valores parametrizados para simular el tráfico en el escenario de
línea recta.
En la construcción de intersecciones, para hallar el número de carriles de forma horizontal y vertical,
se hizo el cálculo de la distancia total de la intersección. Una vez hallada esta distancia se dividió
entre el ancho del carril y se aproximó al entero más cercano para tener un número de carril entero.

4.4.1.6 Primera Intersección

Segmento adelante: 2
Segmento atrás: 1
Segmento a la derecha: No aplica
Segmento a la izquierda: No aplica
Número de carriles horizontal: 3
Número de carriles vertical: 4

4.4.1.7 Segunda Intersección

Segmento adelante: 3
Segmento atrás: 2
Segmento a la derecha: No aplica
Segmento a la izquierda: No aplica
Número de carriles horizontal: 3
Número de carriles vertical: 1

4.4.1.8 Tercera Intersección

Segmento adelante: 4
Segmento atrás: 3
Segmento a la derecha: No aplica
Segmento a la izquierda: No aplica
Número de carriles horizontal: 3
Número de carriles vertical: 17

4.4.1.9 Cuarta Intersección

Segmento adelante: 4
Segmento atrás: 3
Segmento a la derecha: No aplica
Segmento a la izquierda: No aplica
Número de carriles horizontal: 3
Número de carriles vertical: 5

31
ID Int. Sgm. Adelante Sgm. Atrás Sgm der. Sgm. Izq. Num. Carr. Hor. Num. Carr. Ver. % Llenado Hor. % Llenado Ver.
1 2 1 NaN NaN 3 4 0 0
2 3 2 NaN NaN 3 1 0 0
3 4 3 NaN NaN 3 17 0 0
4 5 4 NaN NaN 3 5 0 0

Tabla 14. Matriz intersecciones escenario línea recta

La Tabla 14 muestra la matriz intersección configurada para el escenario de línea recta.

Figura 17. Representación de Escenario Línea Recta

La Figura 17 representa de forma gráfica el escenario propuesto para elaborar la simulación. Los
rectángulos grises representan los segmentos, siendo el de la izquierda la calle 77 y el de la derecha
la calle 67. Las intersecciones están dibujadas por rectángulos amarillos, en la figura se puede
abstraer la diferencia del número de carriles verticales de cada intersección. Por último, los círculos
ubicados en la parte superior del final del segmento representan los semáforos con su respectivo
estado, rojo para semáforo en rojo y verde para semáforo en verde.

5 Protocolo de Pruebas

Para la comprobación de la herramienta de simulación, se generaron diferentes casos sencillos que


abarcaron la mayor cantidad de situaciones pequeñas que puedan presentarse en una simulación. Se
espera entonces que, al haber simulado casos pequeños, la herramienta responda de la misma manera
en una gran simulación pues será esta una sumatoria de casos pequeños. Para respaldar el correcto
funcionamiento, en cada simulación se presenta el plano de espacio vs tiempo con las proyecciones
generadas en la simulación. Con esto se demuestra el lugar y tiempo donde estuvo cada frente y
cola de bloque. Así mismo se logra visualizar la interacción de cada uno de los eventos.

6 Análisis de resultados

Para analizar los resultados obtenidos, se usó una configuración de tres segmentos conectados. Cada
uno tiene una longitud de 100 metros y cuentan con 3 carriles. Los segmentos están conectados por
dos intersecciones, cada una con 9 metros de ancho y 9 de largo. Esté mapa se expone gráficamente
en la Figura 18. En cada prueba se modificaron los tiempos de verde y rojo, y los tamaños de los
bloques generados para mostrar el correcto funcionamiento de cada uno de los eventos.

32
Figura 18. Mapa de Protocolo de pruebas

Los ejes de la Figura 18 están escalados a un rango de 100. Esto indica que cualquier mapa
proyectado, sin importar la distancia que haya desde el generador hasta el último segmento, tendrá
una distancia de 100 (desde 10 a 110). Cabe resaltar que existe un “zoom” en el eje y para poder
detallar mejor el movimiento de los bloques, es por esto que las intersecciones a pesar de que tengan
la misma longitud vertical y horizontalmente, en la figura se muestra una perspectiva diferente.

33
Figura 19. Plano espacio vs tiempo

La Figura 19 es la representación del mapa mostrado en la Figura 18 de forma vertical. En esta figura
los ejes si están escalados 1:1, por lo cual se aprecia que, desde el generador (recta en 0 del eje y)
hasta el último segmento hay 318 metros. Las líneas azules representan los semáforos en rojo durante
la simulación.

6.1 Caso 1: Movimiento de Bloque.


En este primer caso se muestra el paso de un bloque de tamaño 30. Este bloque se genera en el segundo
0. Al viajar el bloque con una velocidad de 30 km/h, su frente recorre los 318 metros en 38.16 s.
𝑥
𝑣=
𝑡
𝑥
𝑡=
𝑣
En este caso, se demuestran los eventos, Salida de Bloque (Generar Bloque), Salida de Bloque de
Sistema (Frente y Cola), Cruce de Cola por Semáforo y Salida de Cola.

34
Figura 20. Evento Salida de Bloque (Generador de Bloque)

La Figura 20 muestra en ambos planos el evento que genera el bloque. En la gráfica de la derecha se
muestran las proyecciones generadas a partir de este evento, Movimiento de Frente (Proyección
Azul), Propagación Verde (Proyección verde) y Movimiento Cola (Proyección negra).

Figura 21. Evento Salida de Cola

Diez segundos después de que arranca el frente del bloque, su cola empieza a moverse. En la Figura
21 se aprecia una línea transversal de color magenta, la cual indica el tiempo actual de la simulación.

35
Esta ayuda a comprender dónde se encuentran los bloques en el espacio. En este caso se aprecia de
la figura de la derecha que su frente está aproximadamente a los 75 metros después del generador y
su cola a 60 metros antes de este. Para la gráfica de la izquierda, el bloque que se generó lo dibuja
con su frente llegando al segmento 1 y su cola en el generador. Cabe resaltar que no se dibujan bloques
por fuera del rango establecido anteriormente.

Figura 22. Evento Salida de Bloque (Cruce de Frente de Bloque) Segmento 1

En este evento el bloque generado pasa su frente por el segmento 1 cuando su estado del semáforo es
verde. Se nota en la Figura 22 de la derecha que su cola ha avanzado, pero todavía no supera la
posición del generador. A diferencia de la Figura 21, el bloque solo tiene una densidad, debido a que
todo el bloque está en movimiento. Su densidad del bloque es 0.0714 carros/metro (densidad baja).

Figura 23. Evento Salida de Bloque (Cruce de Frente de Bloque) Segmento 2

36
La Figura 23 muestra todo el bloque dibujado sobre la gráfica de la izquierda. Como se mencionó
anteriormente todo el bloque tiene densidad baja. Ambas imágenes demuestran el correcto
funcionamiento de la herramienta. Si decimos que la densidad es de 0.0714 carros/metro, es
equivalente afirmar que hay 1 carro por cada 14 metros en cada carril. Como cada segmento tiene 3
carriles, el bloque de 30 carros, se puede analizar como 3 bloques de 10 carros, uno en cada carril.
Esto indica que el bloque debe ocupar 140 metros. En la gráfica de la derecha se encuentran dos
marcadores que indican las coordenadas del frente y de la cola. El marcador del frente indica que la
posición del frente es 209 y el segundo, que la posición de la cola es 69. Al hacer la diferencia entre
209 y 69 obtenemos 140 lo cual concuerda con la teoría.

Figura 24. Evento Cambio de Segmento de Cola

A los 29.2 segundos después de haber generado el bloque, la cola cruza su primer segmento. Este
evento actualiza los valores del bloque y su ubicación dentro de la gráfica de la derecha. Además, se
genera el evento salida de la cola 1.08 segundos después, esto es lo que le toma a la cola recorrer el
tamaño de la intersección. Esto se ilustra en la Figura 25.

37
Figura 25. Evento Salida de Cola

Figura 26. Evento Salida de Bloque del Sistema (Frente)

La Figura 26 muestra cuando el frente del bloque alcanza el límite del mapa configurado. Como se
mencionó anteriormente el bloque debía recorrer los 318 metros en 38.16 segundos. La grafica de la
izquierda tiene un bloque de texto el cual indica el tiempo actual de la simulación (Ta), el cual indica
este valor.

38
Figura 27. Evento Salida de Bloque de Sistema (Cola)

Finalmente, en la Figura 27 se muestra el último evento del bloque. La salida de la cola del bloque
del sistema ocurre en el segundo 55.36. Para comprobar este valor debemos analizar el tiempo en que
se empieza a mover el bloque y la distancia que esta debe recorrer. Al bloque le toma 10 segundos
para poder propagar el verde hasta su cola. Un instante antes de empezar la simulación se asume que
el bloque está quieto, esto quiere decir que todo el bloque presenta densidad alta lo cual es 0.1667
carros/metro, o también puede ser visto como 1 carro cada metro. Si el bloque es de tamaño 10 carros
por carril la cola debe recorrer 60 metros más los 318 metros del mapa. Esto da en total 378 metros
los cuales, a 30 km/h se tardará en recorrer 45.36 segundos. Entonces desde que se genera el bloque
hasta que la cola termine su recorrido será de 10 + 45.36 = 55.36. Este valor se indica en la Figura 27.

Como resultado de esta simulación se demostró la conservación del trabajo durante toda la simulación
en los tamaños y tiempos de recorrido de los bloques.

6.2 Caso 2: Propagación de Trancón

Esté caso presenta la situación de propagación de trancón. El mapa utilizado es el mismo de la Figura
18. Se configuraron los semáforos de tal forma que el semáforo del segmento 3 esté siempre en estado
rojo y los dos restantes en verde. Adicional a esto, se generarán bloque de 30 carros cada 20 segundos.
La simulación demostrará el correcto funcionamiento de los eventos, Unión de Bloques, Frente de
Bloque Rojo y Cola de Bloque Rojo. Esta simulación también contiene los eventos comprobados en
el caso anterior.

39
Figura 28.Evento Frente de Bloque Rojo

Al igual que en el caso anterior, el frente del bloque llega al último segmento al segundo 38.16. En
este caso se desarrollará el evento Frente de Bloque Rojo. La Figura 28 muestra en la gráfica de la
izquierda dos bloques respectivamente en su ubicación. La gráfica de la derecha se ilustran las
proyecciones generadas. Una vez el frente encuentra una barrera, se proyecta la propagación rojo y
ubica una nueva barrera durante el tiempo que se quede quieta. Ésta a su vez debe verificar si
intersecta una proyección de frente. En este caso lo hace con la proyección de frente del bloque 2 y
genera un evento unión de bloque. Es por esto que la proyección de movimiento de cola del bloque 2
está cortada hasta el segundo donde se unen los bloques. Cabe resaltar que ambos bloques tienen
densidad baja en su totalidad.

Figura 29. Evento Cola de Bloque Rojo

40
La Figura 29 muestra lo que ocurre en el segundo 48.16. En este instante el bloque 1 terminó de
comprimirse y su cola se detuvo. De la gráfica de la izquierda se puede comprar los bloques 1 y 2 ya
que ambos tienen el mismo tamaño, pero con densidades diferentes. Para comprobar la conservación
de trabajo del bloque en densidad alta, se calcula el espacio que este debe ocupar. Al ser un bloque
de 10 carros por carril y con una densidad alta de 0.17 carros/metro (1 carro dentro de 6 metros),
ocupará 60 metros. La gráfica de la derecha de la Figura 29 se aprecian dos marcadores, una para el
frente y el otro para la cola del bloque 1. Se ve entonces que la posición del frente es 318 y de la cola
es 258, al hacer la diferencia se obtienen los 60 metros calculados.
Adicional a esto podemos observar la ubicación del tercer bloque generado, en ese instante de tiempo
su cola aún no se ha comenzado a mover.

Figura 30. Evento Unión de Bloque

Figura 30 muestra el evento Unión de Bloque entre el bloque 1 y el bloque 2. En este instante el
bloque 1 tiene un tamaño de 60 carros con dos densidades, los primeros 30 en densidad alta y los
otros en densidad baja. En comparación con la Figura 29, la gráfica de la derecha muestra una nueva
barrera generada por la unión de bloques donde la cola se detendrá y generará una nueva unión de
bloques entre el bloque 1 y el bloque 3.

41
Figura 31.Evento Unión de Bloque 3 y 1

La Figura 31 muestra la unión de bloques ente el bloque 1 y el bloque 3. Se Observa en la gráfica de


la izquierda la posición del nuevo bloque generado.

Figura 32. Congestión total del mapa

La Figura 32 muestra la congestión total del mapa. A los 105.16 segundos, la acumulación de bloques
llenan los 3 segmentos y no el generador no puede entonces generar más bloques. La gráfica de la
izquierda muestra como ambas intersecciones se encuentran obstaculizadas por el bloque. En la
gráfica de la derecha se pueden identificar los momentos en los cuales hubo unión de bloques, se
presentaron en total 6 eventos de unión de bloques. Al final quedó un único bloque de tamaño de 159
carros y todo el bloque tiene densidad alta.
42
6.3 Caso 3: Corte de Bloque
En este caso verificaremos los eventos restantes: Salida de Bloque (Semáforo en verde), Semáforo
Rojo y Corte de Bloque. Para este fin se estableció el mismo mapa de la Figura 18. Los 3 semáforos
están sincronizados y tienen un tiempo de verde y de rojo de 30 segundos cada uno. El generador
entrega bloques de 30 carros cada 20 segundos. Los eventos demostrados en los anteriores casos
también se ejecutan en esta simulación.

Figura 33. Semáforo Rojo

Una vez los semáforos han cambiado su estado se verifica cuál de los bloques está atravesado. En la
Figura 33, se aprecia en la gráfica de la izquierda que el bloque 1 está atravesado ya que tiene su
frente en el segmento 3 y su cola en el segmento 2. Está verificación genera el evento corte de bloque
para el bloque 1 en el segmento 2.

Figura 34. Evento Corte de Bloque


43
Una vez se hace el corte de bloque, se modifican las proyecciones del bloque implicado. De la gráfica
de la derecha de la Figura 29, se puede observar cómo se modificaron las proyecciones del bloque 1
en el rebote de propagación rojo del tercer segmento. Se calcula este rebote con el nuevo tamaño del
bloque que es 8.5814 como lo indica la marquilla de la gráfica de la izquierda. Así mismo se genera
una propagación de rojo en el segmento 2 y se coloca una nueva barrera. Se aprecia también de la
gráfica de la izquierda la separación y creación de un nuevo bloque. Debido a que ya existe un bloque
2 generado, se identifica como bloque 3.

Figura 35. Evento Salida de Bloque (Semáforo en verde)

Finalmente, podemos comprobar el evento de Salida de Bloque (Semáforo en verde). Se ve en la


Figura 35 el momento en que los tres segmentos tienen un bloque esperando a que el semáforo cambie
su estado a verde. La gráfica de la derecha muestra el comportamiento de las proyecciones de cada
uno de los semáforos. Para el caso del segmento 1, al finalizar la barrera de la coordenada (60,100),
se proyecta el movimiento del frente hasta salir del sistema. A partir de esta misma coordenada, se
genera una propagación de vede del tamaño completo del segmento, esto ocurrió debido que hubo
una unión de bloques y se llenó completamente el segmento.
Por otro lado, se puede analizar el evento en la coordenada (60,209), donde se encuentra el segundo
semáforo. Al igual que en el segmento uno, se generan las 3 proyecciones, (Movimiento Frente,
Propagación verde, Movimiento Cola). Se evidencia una particularidad de la cercanía entre las
proyecciones de Movimiento de frente del bloque que sale del segmento 1 (Bloque 2), y la proyección
Movimiento de cola del bloque que sale del segmento 2 (Bloque 3). Aunque a simple vista pareciera
que estas proyecciones se mezclan, no es así. Existe una distancia muy corta entre estas dos, pero al
ir a la misma velocidad, el frente del Bloque 2 no podrá alcanzar la cola del Bloque 3 a menos que
esta se detenga.
Por su parte, el evento de semáforo en verde generado para el segmento 3, coordenada (60,318),
genera el evento de Salida de Bloque del Sistema (Frente) debido a que este bloque alcanzó el límite
44
del mapa. Sin embargo, se generan igualmente las proyecciones de propagación verde y movimiento
de cola.

6.4 Caso 4: Valores aleatorios

Para el último caso de comprobación, se generaron valores aleatorios para los tiempos de verde y de
rojo de cada semáforo, los cuales fueron: Semáforo verde (35, 29, 28); Semáforo rojo (24, 25, 26). El
mapa utilizado es el mismo ilustrado en la Figura 18. Los bloques generados son de tamaño aleatorio
siguiendo una distribución de Poisson, con media 30. Los bloques fueron generados cada 30 segundo.
El tiempo de simulación fue de 2 minutos.

Figura 36. Proyecciones generadas de simulación aleatorio

45
En Figura 36 se presentan las proyecciones generadas de la simulación propuesta anteriormente. De
esta imagen se puede observar la ejecución de todos los eventos presentados en este capítulo. Cabe
resaltar que la herramienta logró completar la simulación con valores aleatorios los cuales no son
recomendables para ejecutarlos en la vida cotidiana.

6.5 Caso 5: Simulación Carrera 7ma entre Calle 67 y calle 77


Cómo se describió anteriormente, se construyó un sector de Bogotá. Sobre esta configuración se
hicieron dos pruebas las cuales se expondrán a continuación.

Para la prueba se configuraron los semáforos sincronizados, cada uno con un tiempo de verde y de
rojo de 30 segundos. Se generaron bloques de tamaño aleatorio y fueron generados cada 30
segundos. El tiempo de simulación fue de 150 segundos

Flujo

Diferencia(T Final - T
Id Segmento Tiempo Inicial (s) Tiempo Final(s) Cantidad de carros Flujo
Inicial) (s)
1 0 11,1768 11,1768 0 0
1 11,1768 24,9368 13,76 24,000192 1,7442
1 24,9368 60 35,0632 0 0
1 60 86,70013333 26,70013333 46,57037256 1,7442
1 86,70013333 120 33,29986667 0 0
1 120 146,7001333 26,70013333 46,57037256 1,7442
1 146,7001333 150 3,299866667 0 0

Flujo Promedio 0,780939581

Tabla 15. Flujo Segmento1

La simulación arrojó como resultado la Tabla 15, donde se observa el comportamiento del segmento
1 a lo largo de la simulación. Se obtuvieron 7 rangos de flujos. El campo Cantidad de carros muestra
cuantos carros pasaron durante el intervalo de tiempo, por lo tanto, al no haber pasado ningún carro
el flujo será 0. Por otro lado, se observa que cuando hay una cantidad mayor a cero en la cantidad de
carros, existe un flujo y este siempre será el mismo 1.7442. Esto se debe a que la densidad baja
siempre es la misma al igual que la velocidad. Finalmente se obtiene el valor promedio del flujo
durante toda la simulación en el segmento 1.
De esta misma manera se obtuvieron los resultados de flujo para los demás segmentos. A
continuación, se presentan sus tablas.

46
Diferencia(T Flujo #
Id Segmento Tiempo Inicial (s) Tiempo Final(s) Final - T Cantidad de carros Carros/Segu
Inicial) (s) ndo
2 0 23,5524 23,5524 0 0
2 23,5524 30 6,4476 11,24590392 1,7442
2 30 60 30 0 0
2 60 67,3124 7,3124 12,75428808 1,7442
2 67,3124 72,3756 5,0632 0 0
2 72,3756 90 17,6244 30,74047848 1,7442
2 90 120 30 0 0
2 120 129,0757333 9,075733333 15,82989408 1,7442
2 129,0757333 132,3756 3,299866667 0 0
2 132,3756 150 17,6244 30,74047848 1,7442

Flujo Promedio Segmento 2 0,675406954 carros/s

Tabla 16. Flujo Segmento 2

Para la Tabla 16 se presentan nuevos casos. El primer valor que primero se ve es el flujo promedio.
Se observa que en este caso bajo a comparación del segmento 1. Se logró identificar que el flujo
promedio es menor debido a que los intervalos en los cuales se presentaba paso de vehículo son
considerablemente más bajos, esto hace que los tiempos de flujo 0 se incrementen. Al analizar el
mapa se concluye que para aumentar un flujo en el segmento 2 es necesario prolongar más el semáforo
de verde del segmento 1 al igual que el semáforo del segmento2.

Diferencia(T Final - T Flujo #


Id Segmento Tiempo Inicial (s) Tiempo Final(s) Cantidad de carros
Inicial) (s) Carros/Segundo
3 0 71,214 71,214 0 0
3 71,214 77,6616 6,4476 11,24590392 1,7442
3 0 120 120 0 0
3 120 144,9368 24,9368 43,49476656 1,7442
3 0 150 150 0 0

Flujo Promedio Segmento 3 0,364937803 carros/s

Tabla 17.Flujo Segmento 3

Diferencia(T Flujo #
Id Segmento Tiempo Inicial (s) Tiempo Final(s) Final - T Cantidad de carros Carros/Segu
Inicial) (s) ndo
4 0 120 120 0 0
4 120 126,4476 6,4476 11,24590392 1,7442
4 126,4476 150 23,5524 41,08009608 1,7442

Flujo Promedio Segmento 4 0,34884 carros/s


47
Tanto el flujo del segmento 3 como del segmento 4 se mantienen cercanos, esto puede ser interpretado
como una buena sincronización entre estos dos segmentos.
La herramienta entrega al finalizar la simulación datos del flujo en intervalos para que estos puedan
ser analizados y sea posible una buena interpretación de cómo se deberían plantear soluciones sean
compatibles a un cambio de la infraestructura.

7 Conclusiones y Recomendaciones

A lo largo del trabajo se explicó la importancia de poder desarrollar una herramienta que permita
modelar problemas cotidianos del tráfico y que son de solución compleja. Cabe resaltar que antes
de atacar el problema de simulación de tráfico se debe tener en cuenta varios aspectos, como lo
son, la capacidad computacional que se tenga y el modelo a simular. Si el modelo es el presentado
en este proyecto, es vital definir con mucha precisión cada uno de los eventos para simplicidad de
programación.

Si bien la solución más obvia es la de ampliar la malla vial en la ciudad de Bogotá, no es la más
económica ni la de más corto plazo. Es por esto que se deben tener otro tipo de medidas en la
solución del tráfico vehicular. La herramienta desarrollada permite representar una cantidad
ilimitada de posibles escenarios, los cuales pueden ser analizados para mejorar la movilidad del
sector seleccionado como lo son: Propagación de trancón, flujo constante (Mantener los semáforos
en verde), Bloqueo de Intersección, entre otros.

Durante el proceso de construcción de la herramienta, se encontró que la reducción de carril es una


de las causas de mayor propagación del trancón. Este caso puede darse por varios motivos como lo
son: un carro en una carretera principal parqueado, una reparación de un carril, un hueco con
diámetro cercano al ancho del carril, entre otro. Se puede entender entonces como un flujo por un
embudo, donde la velocidad se disminuye y por tanto el flujo. Es por esto que se recomienda en
próximos trabajos de análisis de flujo, estudiar y proponer soluciones donde se pueda aumentar el
flujo en el embudo.

Por último, este trabajo pretende fomentar el interés dentro de la comunidad estudiantil de la
Pontificia Universidad Javeriana, para profundizar más sobre estos temas y lograr crear un grupo
estudiantil conformado por estudiantes y profesores de diferentes carreras, encargado de
desarrollar herramientas y analizar esta problemática.

8 BIBLIOGRAFÍA

[1] D. Robles, P. Ñañez y N. Quijano, «Control y simulación de tráfico urbano en Colombia,»


Revista de Ingeniería: Scielo, 5 Julio 2009. [En línea]. Available:
http://www.scielo.org.co/scielo.php?pid=S0121-49932009000100008&script=sci_arttext.
[Último acceso: 24 Marzo 2015].

48
[2] «Nuevo caos vive la semaforización en Bogotá,» 6 AM Hoy por Hoy, 12 Agosto 2014. [En
línea]. Available: http://www.caracol.com.co/noticias/bogota/nuevo-caos-vive-la-
semaforizacion-en-bogota/20140812/nota/2363294.aspx..

[3] A. F. Archila, «Transmilenio y SITP: Ganando la Batalla, Perdiendo la Guerra,» combo2600, 15


Marzo 2015. [En línea]. Available: http://combo2600.com/transmilenio-y-sitp-ganando-la-
batalla-perdiendo-la-guerra/. [Último acceso: 2015 Marzo 30].

[4] Universidad de los Andes, «Grupo de Estudios en Sostenibilidad Urbana y Regional - SUR,»
[En línea]. Available: https://sur.uniandes.edu.co/. [Último acceso: 30 Marzo 2015].

[5] «SUR Uniandes,» Universidad de los Andes, [En línea]. Available:


https://sur.uniandes.edu.co/index.php/component/content/article/19-the-researh-
group/divulgacion/116-micro-simulacion-transmilenio-tercer-carril. [Último acceso: 01 Abril
2015].

[6] J. M. Angulo, «Pesquisa,» Universidad Javeriana, 11 Junio 2011. [En línea]. Available:
<http://www.javeriana.edu.co/revistas/Ofi/pesquisa/wordpress/?p=625. [Último acceso:
2015 Abril 15].

[7] D. J. Ramírez, Simulación y control de tráfico vehicular por semaforización., Medellíin, 2005.

[8] Alzate y H. D., Análisis y diseño de un sistema de información inteligente para la planificación
de intersecciones y redes coordinadas de semáforos en la ciudad de Manizales, Tesis de
Maestría, Universidad de Manizales, 2007.

[9] S. Hoogendoorn y P. Bovy, «State-of-the-art of Vehicular Traffic Flow Modelling».

[10] «TransModeler Traffic Simulation Software,» Caliper, [En línea]. Available:


http://www.caliper.com/transmodeler/simulation.htm. [Último acceso: 2015 Marzo 30].

[11] C. Osorio, Mitigating Network Congestion:Analytical Models, Optimization Methods and


their Applications, LAUSANE, 2010.

[12] M. González Restrepo y E. J. Sepúlveda Abalo, Aplicación de teoria de colas en los semaforos
para mejorar la movilidad en la Carrera 7 entre Calles 15 y 20 de la ciudad de Pereira,
Pereira: Universidad Tecnológica de Pereira, 2010.

[13] «Introducción a la simulación de tráfico,» pp. 23-29.

[14] F. C. Calderón, «Sistema de adquisición de parámetros de tráfico vehicular( Trabajo de grado


de Maestría),» Bogotá D.C, 2010.

[15] O. Romero, M. Becerra, M. Herrera y J. Trujillo, «Simulación del tráfico de la carrera séptima
en Bogotá D.C.,» Bogotá, 2011.

49
[16] B. Zeigler, G. Ball, H. Cho, J. Lee y H. Sarjoughian, «Implementation of the DEVS Formalism
over the HLA/RTI: Problems and Solutions».

9 ANEXOS

Anexo 1. Tabla de toma de velocidades

Archivo Excel “Consolidación” hoja “Velocidad”


Anexo 2. Script tratamiento de datos Histograma Cuados

clear
clc
close all
load('cuadrosCar')
part = 2;
bins= 40;
cuadros(cuadros>40)=[];
histogram(cuadros,bins)
peso_cuadros = 0.5;
while peso_cuadros(1)>0.45 && peso_cuadros(1)<0.55
GMModelcuadros = fitgmdist(cuadros,part)
datos = length(cuadros);
sigma_cuadros(1:part) = GMModelcuadros.Sigma(1,1,1:part);
sigma_cuadros = sigma_cuadros';
mu_cuadros = GMModelcuadros.mu;
peso_cuadros = GMModelcuadros.ComponentProportion';
end
for i = 1 : part
Y =
sigma_cuadros(i)*randn(1,round(peso_cuadros(i)*datos))+mu_cua
dros(i);
if i==1
X_cuadros = Y;
else
X_cuadros = [X_cuadros,Y];
end

end
ejex = linspace(1,45,datos/50);
for i = 1:part
histcount(:,i)= histc(sigma_cuadros(i)*randn(1,datos) +
mu_cuadros(i),ejex);
50
end
X_cuadros(X_cuadros>40|X_cuadros<0)= [];
figure
histogram(X_cuadros,bins);
hold on
plotyy(ejex,histcount(:,1),ejex,histcount(:,2));
m_real = mean(cuadros)
m_calc = mean(X_cuadros)
var_ral = var (cuadros)
var_calc = var(X_cuadros)

Anexo 3. Código para hallar flujo

Sub carros_por_seg()
' saca flujo por ventana de tiempo
Dim ventana As Integer
Dim ta As Long
Dim tb As Long
Dim t_actual As Integer
Dim i As Integer
Dim j As Integer
Dim qcarros As Integer

qcarros = 1
ta = Sheets("Resultados").Cells(2, 7).Value
ventana = 10 ' ventana de tiempo
i=3
j=2

Do
If Sheets("Resultados").Cells(i, 7).Value > (ta + (ventana * 30)) Then
If Sheets("Resultados").Cells(i + 1, 1).Value = "" Then
qcarros = qcarros + 1
End If
tb = Sheets("Resultados").Cells(i, 7).Value
Sheets("flujo").Cells(j, 1).Value = qcarros
Sheets("flujo").Cells(j, 2).Value = ta
Sheets("flujo").Cells(j, 3).Value = tb
Sheets("flujo").Cells(j, 4).Value = qcarros / ((tb - ta) / 30)
ta = tb
j=j+1
qcarros = 1
Else
qcarros = qcarros + 1
End If
51
i=i+1
Loop While Sheets("Resultados").Cells(i, 1).Value <> ""
End Sub

Anexo 4. Tabla Caracterización de Flujo

Archivo Excel “Consolidación” hoja “flujo”

Anexo 5. Script tratamiento de datos Histograma flujo.

%% Flujo
clear all
clc
load('flujoCar.mat');
part = 2;
GMmodelflujo= fitgmdist(flujo,part);
sigma_flujo(1:part) = GMmodelflujo.Sigma(1,1,1:part);
sigma_flujo = sigma_flujo';
mu_flujo = GMmodelflujo.mu;
peso_flujo = GMmodelflujo.ComponentProportion';
suma = sum(peso_flujo);
datos = 10000;
for i = 1 : part
X =
abs(sigma_flujo(i)*randn(1,round(datos*peso_flujo(i)))+mu_flu
jo(i));
if i == 1
Y= X;
else
Y = [Y,X];
end
end
hist(Y,datos)

Anexo 6. Simulador de tráfico circular

http://www.traffic-simulation.de/

52

También podría gustarte