Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Simulacion de Trafico Vehicular en Bogota
Simulacion de Trafico Vehicular en Bogota
INGENIERO ELECTRÓNICO
DIRECTORES:
FACULTAD DE INGENIERÍA
1
Contenido
1 INTRODUCCIÓN ........................................................................................................................... 4
4 DESARROLLO.............................................................................................................................. 13
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
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í.].
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 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.
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)
9
aceleración. Entre los parámetros se encuentra, velocidad deseada, desaceleración, espacio entre el
carro de al frente entre otros.
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.
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.
12
Esta matriz se describe en detalle en 4.3.7.
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.
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).
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.
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
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.
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.
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
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
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
1 2 3
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
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
80 m
90 m
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
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
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.
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
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.
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
Este evento tiene como objetivo analizar la salida de un bloque ya sea desde un generador o desde
un segmento.
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.
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.
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.
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.
28
En la Tabla 11 se muestra un ejemplo de evento de cruce de cola.
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
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.
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
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
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
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
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
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.
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).
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.
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).
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.
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
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.
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.
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 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 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.
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.
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.
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.
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
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
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 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
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.
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
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..
[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].
[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.
[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.
[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
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)
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
%% 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)
http://www.traffic-simulation.de/
52