Está en la página 1de 68

hO

UNIVERSIDAD NACIONAL AUTONOMA


DE MEXICO

FACULTAD DE INGENIERIA

MESO-SIMULACION DE TRAFICO
VEHICULAR

TESIS PROFESIONAL
A,
i
QUE PARA OBTENER EL TITULO DE:

Ny INGENIERO EN COMPUTACION

PRESENTA:

JOSE GERARDO ILAGORRE GARCIA

Director de tesis:
Dr. Luis A. Alvarez-Icaza Longoria

CIUDAD UNIVERSITARIA, MEXICO, D.7. 2000


UNAM – Dirección General de Bibliotecas
Tesis Digitales
Restricciones de uso

DERECHOS RESERVADOS ©
PROHIBIDA SU REPRODUCCIÓN TOTAL O PARCIAL

Todo el material contenido en esta tesis esta protegido por la Ley Federal
del Derecho de Autor (LFDA) de los Estados Unidos Mexicanos (México).

El uso de imágenes, fragmentos de videos, y demás material que sea


objeto de protección de los derechos de autor, será exclusivamente para
fines educativos e informativos y deberá citar la fuente donde la obtuvo
mencionando el autor o autores. Cualquier uso distinto como el lucro,
reproducción, edición o modificación, será perseguido y sancionado por el
respectivo titular de los Derechos de Autor.
Indice General

1 Introduccion 1

2 Teoria de trafico vehicular 3

2.1 Elementos de la teoria de trdfico vehicular .. 2... oe, 4


2.2 Modelado de la teoria de trdfico vehicular 2... 2. 5

tw 2.3 Centro de control de trdfico ........00002, es 7

3 Técnica de la regla voraz 10

3.1 Técnica de la regla voraz para el caso desacoplado.............., 10

3.1.1 Estructuranormal oo. 2... 2... ee 10

3.1.2 Estructurade salida 2.0.2...ee 13

3.1.3 Estructurade entrada ........2....0.0.02-0..00.., 14

3.1.4 Redistribucién del espacio libre... 2... 16

3.2 Técnica de la regla voraz para el caso acoplado.... 2... 16

3.2.1 Estructura Normal... 2.2... 16

3.2.2 Estructurade salida .. 0.2.00. .0000....0...0..04, 18

3.2.3 Estructurade entrada... 2... 2. ee 18

3.3 Plandeentrada. 2... 20

4 {mplementacién 22
ii INDICE GENERAL

4.1 Revision de la ecuacién de conservacion. 2... 22

4.2 Demanda de espacio en funcién de la velocidad real... 2. dw, 24

4.3 Solucién de un polinomio de tercer grado... 2... 26

4.4 Solucién a un sistema de ecuaciones no lineales.. 2.2... 28

4.5 Entrada vehicular con distribucién exponencial........2..2.20.~2..., 30

5 Pruebas de simulacién 33
5.1 Actividades en funcién de la velocidad nominal y real... 2... , 33

5.2 Cambios de carril en una autopista .. 2... ..020000200.2000.0..., 34

5.3 Salida de una autopista. 2... 37

5.4 Entrada auna autopista ... 2... .0200.000.0.00.0.00 0000000004. 38

5.5 Entrada vehicular uniforme y exponencial .......0..20202.20.020... 40

6 Conclusiones Al

A SmartCap: Manual del usuario 44

A.1 Estructura de archivos .......-0000...00.0.00.00-..004. 44

A.2 Compilacién..... 0.0.2.0 02-0 00000000000


00000. 0 ee, 45

A.3 Bjecucion 2.2... 46

A.4 Elarchivo de entrada... 2.2... .00 000000000000


00 0.0004. 46

A.5 Funciones de usuario... ee 52

A.6 Especificacién de Actividades ..........0.2.20200..0.0....0.., 58

A.7 Especificacién de los planes TMC... 22... 60

B El parser de SmartCap 61
Capitulo 1

Introduccién

Este trabajo consistié en hacer mejoras a SmartCap, un meso-sinwulacor de trafico vehicular


desarrollado en la Universidad de California en Berkeley dentro del programa PATH (Cali-
fornia Partners for Advanced Transit and Highways).

E] propésito del PATH es desarrollar los fundamentos necesarios para la adopcién de tec-
vs nologias avanzadas que permitan mejorar la operacién de los actuales sistemas de transporte
terrestre. Las metas especificas del PATH son: el incremento de la capacidad y seguridad
de las autopistas, asf como la reduccién de congestionamiento. contaminacién del aire y
consumo de energfa. Los beneficios del PATH podrén verse relativamente a largo plazo. El
crecimiento desmedido en la poblacién de las grandes ciudades exigird mayor demanda y
eficiencia en diversos servicios. y uno de ellos seré el transporte. por lo que en un futuro no
muy lejano se requeriran mejores sistemas de transporte y probablemente para ese entonces,
gracias a programas como el PATH, ya se habran implementado las primeras soluciones que
puedan absorber esas demandas.

SmartCap emula el comportamiento de flujos vehiculares de acuerdo con la dindmica de


conservacién de vehiculos y leyes de control establecidas en [1]. Permite distinguir entre
diferentes tipos de flujos vehiculares con distintas caracterfsticas entre sf. como son el tamafo
de los vehiculos y la salida que han de tomar al final de su trayecto. sdlo por nombrar dos
ejemplos.

La importancia en el uso de SmartCap radica en que se trata de una herramienta que permite
disefiar o simular el comportamiento de diferentes sistemas de autopistas. v de esta forma
comparar las diferentes alternativas y elegir el disefio o la forma de control mas eficiente.
Con la ayuda de SmartCap el usuario puede representar la autopista bajo estudio y disefiar
las leyes de control que aprovechen al maximo la capacidad de la autopista. asf como reducir
los tiempos de viaje.

SmartCap permite estudiar los impactos que causarian las leyes de control y nuevas técnicas
sobre los flujos vehiculares. De esta forma se hace posible estudiar los efectos secundarios
2
Capitulo Lo Introduccidn

que podrian generarse en las entradas v/o salidas de la antopista. como son las colas
de
espera y cuellos de botella ocasionados por cambios de carril en seccioues con una
densidad
de flujo vehicular desbalanceada entre los distintog carriles.

Con las simulaciones que ofrece SmartCap ya se han estudiado mevos conceptos
como el
pelotones (platooning), el cual consiste en hacer que los vehiculos viajen en grupos o pelotones
estrechamente espaciados. Con los resultados de las simulaciones se la descubierto que los
tiempos de viaje se reducen significativamente cuando los vehiculos Viajan en pelotones.
y
también que existen limites para el tamatio de los pelotones que hacen que los tiempos
de
viaje sean los éptimos. De aqui que se resalte aun mas los beneficios que pueden obtenerse
del uso de SmartCap para el estudio de nuevos conceptos de sistemas de autopistas.

Las labores especificas de esta tesis consistieron en hacer revisiones y modificaciones a


la
Ultima versién de SmartCap. con el objeto de proporcionar al usuario simulaciones mas
confiables.

Como las primeras versiones de SmartCap se basaron en el analisis de autopista de un solo


carril. posteriores trabajos se encaminaron a disefiar e implementar ecuaciones que pudieran
capturar el comportamiento vehicular en autopistas de mas de un carril. Eso dio lugar a
que en esta tesis se revisara que el modelo de la conservacién de los vehiculos estuviera
correctamente implementado. de acuerdo a trabajos publicados dentro del PATH.

Una de las mejoras que se hicieron a la versién anterior de SmartCap consistié en modificar la
forma en la que los vehiculos entraban a la autopista. En aquella version el usuario sélo podia
hacer que los flujos vehiculares entraran de forma uniforme. es decir. que en un determinado
intervalo de tiempo el numero de vehiculos que podian entrar era constante. Se agregé
la opcién de especificar que los ftujos vehiculares entraran de acuerdo a una distribucién
exponencial. Esto permitid que la entrada de los vehiculos ocurra de forma aleatoria y de
esta se consiga que la entrada vehicular sea més parecida a lo que sucede en la realidad.

La otra parte del trabajo. donde ocurren las mayores aportaciones de este trabajo, consistid
en mejorar la técnica que se empleaba anteriormente para determinar la velocidad a la que
los vehiculos deberian viajar y aprovechar as{ al maximo el espacio que ofrece la autopista y
conservar siempre un minimo espacio de seguridad.

Este escrito esta organizado de la siguiente forma. En el segundo capitulo se exponen los
conceptos basicos de la teoria de trafico vehicular basada en actividades. En el tercer capitulo
se explica como se mejoré la técnica empleada para calcular la velocidad a la que deben
viajar
los vehiculos. En el cuarto capitulo se explica la forma en la que se implementaron las mejoras
a la mas reciente versién de SmartCap. En el quinto capftulo se encuentran las pruebas de
simulacion para las nuevas implementaciones que se comparan con las que se podian generar
anteriormente. En el apéndice de este trabajo se incluye un breve mauual de usuario donde
se dan las bases para poder compilar y correr SmartCap desde una estacién de trabajo.
Capitulo 2

Teoria de trafico vehicular

La teoria de trafico presentada en [1] establece que el paso de un vehiculo a través de una
autopista se puede describir por medio de una serie de maniobras. Estas maniobras se pueden
agrupar en subconjuntos los cuales se definen como actividades. La actividad es un concepto
que se emplea para especificar no solamente este conjunto de maniobras. sino el espacio que
un vehiculo requiere para efectuarlas. Este espacio puede especificarse por unidad de tiempo
ww
o bien, cuando las maniobras toman un tiempo finito menor que el intervalo de simulacién.
darse como un producto de espacio por tiempo.

La teoria relaciona el movimiento individual de los vehiculos con la dinamica del flujo por
medio del espacio requerido por las actividades y del espacio ofrecido por la autopista. Se
pretende conseguir que en ningtin instante de tiempo la suma de los espacios requiridos por
la actividades que ejecutan los vehiculos en la autopista exceda el espacio fisico disponible
en ésta.

La teorfa de flujo vehicular basada en actividades se puede usar como base para un sistema
de control en lazo cerrado que regule el comportamiento del flujo eu una autopista si se
especifican las leves de control para determinar las actividades. velocidades + flujos de entrada
a la autopista de forma tal que no se congestione la autopista ni se exceda su capacidad. A
estas leyes de control se les denominan planes y en conjunto forman lo que se llama centro
de control de trafico o TMC (Traffic Management Center). A continuacidn se explican todos
los elementos que integran el modelado del sistema.

Las actividades permiten diferenciar no solamente conjuntos de maniobras. sino que ademas
pueden definirse en funcién del tipo de vehiculo o del destino final de los mismos. En el
contexto de esta teorfa se denomina tipo de flujo a la combinacién del tipo de vehiculo y de
su destino final de viaje.
4 Captnilo 2. Teoria de trafic vehicular

2.1 Elementos de la teoria de trafico vehicular

Autopista

La autopista es vista como la proveedora del espacio que las actividades requieren para
poder llevarse a cabo. Para su andlisis la autopista se encuentra dividida en secciones, y
éstas a su vez se encuentran divididas en carriles. Las secciones v los carriles se encuentran
denotados por x y y, respectivamente. yv la longitud de las secciones se denota por L,, que
es independiente de los carriles, es decir. todos los carriles de una seccién tienen la misma
longitud. La seccién x — 1 se define como la seccién aguas arriba inmediata. o anterior en el
sentido del trafico vehicular.

Existen secciones en la autopista que se usan como estructuras dedicadas para la entrada o
salida de flujos vehiculares. En estas secciones se debe especificar a qué tipo de flujo se le
tiene permitido entrar o salir.

Vehiculos

Basicamente. los vehiculos se pueden clasificar de acuerdo a su tipo en automovil, camién


y autobtis. Dicho tipo se denota por @. que al mismo tiempo se emplea para especificar
otras caracteristicas importantes como dimensiones, origen y destino de cada tipo de flujo
vehicular.

Se adopta la notacién Noes.2.y para indicar el nimero de vehiculos del tipo @ en la seccién z,
carril y al tiempo ¢. El tiempo se mide en segundos y cada periodo ex de At segundos, los
cuales representan el tiempo de muestreo.

La velocidad de los vehiculos depende de la seccién y carril donde se encuentran, en un


determinado instante. La velocidad esta denotada por V,,.. la cual es independiente de las
actividades y destino.

Actividades basicas

Como se mencion6 anteriormente, una actividad representa el espacio que un vehiculo de-
manda a la autopista para realizar una maniobra en un cierto intervalo de tiempo. Es
importante destacar que existen maniobras que para llevarse a cabo necesitan espacio en
otros carriles, tal es el caso de la actividad de cambio de carril. va que requiere de espacio
en dos carriles.
2.2. Modelado de la teoria de trafico vehicular

an
Las actividades basicas son tres v se pueden clasificar de acuerdo al nvimero de carriles a los
que demandan espacio en:

e Actividades de un carril

— Conservar el carril (st. straight)

e Actividades de dos carriles

— Cambio de carril a la izquierda (cl, change left)


~ Cambio de carril a la derecha (cr, change right)

Cualquier maniobra més compleja se puede reducir a una sucesién de estas tres actividades
basicas para trdfico de vehiculos independientes unos de otros. Los esquemas de trafico mas
complejos que agrupan conjuntos de vehiculos. como el esquema con trafico vehicular en
pelotones, requieren afiadir otras actividades basicas como serian en este caso las maniobras
de unién y separacién de pelotones.

Cada actividad tiene asociada su respectiva demanda de espacio Aot.ry. la cual es una funcién
no lineal creciente con la velocidad. Esta funcién dgt.2,, representa la distancia que debe
existir entre los vehiculos y depende, ademas de la velocidad. de otros par4metros como
el maximo par de frenado del vehiculo, la superficie de la carretera. las condiciones de los
neumaticos. etcétera. Estos pardmetros no se incluyen en la notacién con el fin de no hacerla
mas complicada.

2.2 Modelado de la teoria de trafico vehicular

El modelado del sistema se basa en el principio de la conservacién de vehiculos, y en las


restricciones fisicas de la autopista que especifican el espacio que puede ser ocupado por los
vehiculos sin exceder su capacidad. Los vehiculos que se encuentran en la misma seccién
y carril viajan aproximadamente a la misma velocidad, sin embargo se considera que las
secciones no son lo demasiado extensas come para permitir que los vehiculos que tengan
velocidades significativamente diferentes puedan coexistir en la misma seccién y carril. Se
supone ademéas que las actividades inician y terminan durante el mismo tiempo de muestreo
y que solo se puede realizar una actividad por seccién en cada At. Esta restriccién no es
importante cuando se escoge el tiempo de muestreo suficientemente pequeno.

Se define a V,2,,At/Lz como la proporcién de los vehiculos que salen de la seccién x,y al
término del intervalo de tiempo t + At, y a su complemento 1 — Very At/L, como la fraccién
de vehiculos que permanecen en la seccién. Por consiguiente. si \;,,\f/L, = 0.75, significa
que el 75% de los vehiculos de la seccién alcanzaron a salir al final del tiempo de muestreo.
6 Capitulo 2. Teorta de trifico vehicular

Como la proporeién de los vehiculos que abandonan la seccién sdlo puede adquirir valores
en el rango

se debe asegurar que los elementos de la expresién tomen los valores adectiados. Para hacer
que se cumpla lo anterior es necesario determinar el rango en el que la velocidad se puede
encontrar, esto es

0 < Viry < Vinex (2.1)

donde
Vinaz < min{L,}/At. (2.2)
En la Fig. 2.1 se encuentra ilustrada la forma general en la que los vehiculos abandonan
el carril y en una seccién 7. También se encuentran representados los flujos de entrada
provenientes de la seccidén aguas arriba inmediata y carriles laterales. Ahora. al consideraro

Figura 2.1: Flujos vehiculares

la Fig. 2.1 y las restricciones (2.1) y (2.2), se puede establecer la expresién que representa la
dindmica de la conservacién de vehiculos como

At At
Notratcy = Notcy (a -(l- Moen) 7 -View) + Netr-1y - Magr-tu)F——Mirty
—Tlat.r.yNasry + Uo tey—1-Notey—1 + Notry-tVernyat + Doty
—46.t,2,y: (2.3)

donde Ho,.z, es la proporcién de vehiculos que dejan el carril y debido a cambios de carril.
To,¢,2,y—-1 Y Ue,t,2,y+1 Son las proporciones de vehiculos que pasan de los carriles y-lyytl
al carril y, respectivamente. Qo, ¥ 90,t,2,y Son el numero de vehiculos que ingresan o aban-
donan la autopista al tiempo ¢, de acuerdo a un plan de entrada o salida respectivamente!.

Debido a que las actividades representan un conjunto finito, la ecuacién (2.3) se somete a la
restriccién de actividades
VS bewy = 1, (2.4)
Va

donde 7,,,,, es la proporcién vehiculos del tipo que realizan la actividad a en la seccién
z, carril y al tiempo ¢. Las proporciones de vehiculos que realizan una actividad Tétcy en la

1Estos planes sélo aparecen en la ccnaci6n cuando x,y es una rampa de entrada o salida,
2.3. Centro de control de triifico

~!
Eq. (2.4) v las proporciones Totcrys Tor uy—1 ¥ Tatargyet en la Eq. (2.3) se pueden relacionar
mediante
Tlator.y = > TG tay (2.5)
Waec

Tat ryt = 3 TO try) (2.6)


Vael

Nota yat = >» Tétz.y> (2.7)


VaeR
donde £ y R son los conjuntos de actividades que implican cambio de carril a la izquierda
o a la derecha, respectivamente y C el conjunto de actividades que implica cualquiera de los
dos tipos de cambio de carril.

Para no exceder la capacidad fisica de la autopista la ecuacidn (2.3) también se somete a la


restriccién de espacio
3 > Notc.yTOt,2,y 0.04 < L,. (2.8)
Va VW

la cual indica que el total del espacio requerido por los vehiculos que realizan actividades en
la seccién x, carril y no debe exceder la longitud de la seccién.

El flujo vehicular se define por la expresién

Vie
06, A+try = Noazry ( z +) (2.9)
iz

donde ¢9,1..,, es e] numero de vehiculos del tipo @ que salen de seccién -r. carril y al final del
intervalo de tiempo At.

2.3 Centro de control de trafico

El centro de control de trafico o TMC (Traffic Management Center) es un conjunto de leyes


o planes de control en lazo cerrado que regulan el comportamiento de los flujos vehiculares
en la autopista. Los planes de control que integran el centro de control de trafico son tres:
el plan de actividades, el plan de velocidades y el plan de entrada.

Una vez que se adopta la ecuacién (2.3) para propésitos de modelado de flujos vehiculares,
el problema de analizar la capacidad de la autopista se reduce al problema del disefio de los
planes del TMC.

Plan de actividades

El plan de actividades consiste en un conjunto finito de actividades {a;.....¢,}. donde cada


una tiene correspondencia con una de las actividades basicas y su demanda asociada de
8
Capitulo 2. Teorta de trifico vehicular

espacio Agy.y- El plan de actividades también depende de la topologia de la autopista y


del concepto de sistemas de autopistas automatizadas o AHS (Automated Highway System)
bajo estudio’.

El calculo de la demanda de espacio puede estar en funcién de la velocidad nominal? o bien


de la velocidad real a la que viajan los vehiculos. Cuando el célculo de Norry esta en funcién
de la velocidad nominal, los vehiculos que se encuentran viajando a baja velocidad reservan
el espacio que requerirfan ala maxima, lo que provoca que no se aproveche toda la capacidad
que ofrece la autopista. Es por ello que resulta mds conveniente dejar a Aost.r.y en funcién de
la velocidad real.

Cuando la demanda de espacio asociada a cada actividad esta en fimcién de la velocidad


real, se aproxima a una expresién cuadratica de la forma

Netcy = keaVeny + keoViey + kes (2.10)


donde los coeficientes kg,1,k9.2 y k93 son constantes que van de acuerdo al tipo de vehiculo.
Mas adelante se explica el método que se empleé para determinar los valores de los coefi-
cientes que permitieron obtener las graficas de la distancia entre vehiculos.

ve
Plan de velocidades
te
Este plan consiste en un conjunto de velocidades V,zy, las cuales son independientes de los
tipos de flujo vehicular y destinos’. Los calculos de esas velocidades se hacen de acuerdo a
la técnica conocida como la regla voraz o greedy rule, llamada asi debido a que la estimacién
de las velocidades se hace de tal forma que se aproveche al maximo todo el espacio que la
autopista ofrece. Esta técnica parte del hecho que las secciones de salida tienen asignadas
sus respectivas velocidades y maximas capacidades. Se hace un barrido hacia atrés para ir
determinando las velocidades para las secciones restantes. haciendo que se cumpla en todo
momento con la ecuacién de conservacién de vehiculos y las restricciones de capacidad de la
autopista. En la siguiente seccidn se explica la técnica de la regla voraz para autopistas de
uno o mas carriles.

Plan de entrada

Este plan consiste en determinar la cantidad de flujo que puede ingresar a la autopista por
una rampa de entrada, de tal forma que la restriccién (2.8) sea respetada. De nuevo se
emplea el criterio de la regla voraz para ocupar el espacio libre en la rampa de entrada, y
2Por ejemplo el de pelotones 0 cl de vehiculos independientes.
3Velocidad maxima o Var.
4Esto es debido a que se asume que los vehiculos cn una misma seccién y¥ carril viajau en promedio
a la
misma velocidad.
2.3. Centro de control de trefico 9

cuando el espacio de ésta no es lo suficientemente grande para alojar a todo el flujo vehicular
que demanda entrar se forma una cola de espera. Es importante aclarar que existe una cola
de espera o buffer por cada flujo vehicular de entrada.
Capitulo 3

Técnica de la regla voraz

El problema del calculo de velocidades en el plan correspondiente se divide en tres casos


para su estudio: estructura normal, estructura de salida y estructura de entrada. El nom-
bre de estructura se le da a un determinado arreglo de secciones que tienen a sus catriles
interconectados de una forma especifica. El empleo de combinaciones de los tres tipos de
estructura permite representar cualquier topologia de carretera que se desee estudiar.

Cada tipo de estructura tiene a su vez dos formas distintas de solucién. una consiste en que
el cdlculo de la velocidad se haga al considerar que los vehiculos que realizan un cambio de
carril adopten la velocidad del carril destino. y la otra consiste en que el cdlculo se haga a
partir de la consideracién de que los vehiculos que cambian de carril conservan la velocidad
del carril de origen. A estos casos se les ha denominado caso de las velocidades desacopladas
y de las velocidades acopladas. respectivamente. La razon quedara aclarada mas adelante
cuando se formulen los calculos correspondientes.

Dado un plan de actividades. determinar la velocidad de los veliiculos es el elemento clave


en una simulacién de un sistema de autopistas para que se satisfagan simultdneamente
la
ecuacién de conservacién de vehiculos y las restricciones de capacidad de la autopista.

3.1 Técnica de la regla voraz para el caso desacoplado

3.1.1 Estructura normal

En la Fig. 3.1 se encuentra representada parte de una autopista de tres carriles donde se
toma a la seccién z. carril y como punto de referencia. Los carriles estan referenciados por
y+ j, donde j = 0.....n, con n como el nimero de carriles menos uno.

Las flechas representan los flujos de vehfculos que pasan de una secci6n a otra ¥ que cambian

10
3.1, Técnica de la regla voraz para cl caso desacoplado
ll

xy sty [>
t £ = 2.
xytl Hy xLytl
t £ = x.
xyt2 L—» xryt2 b>

Figura 3.1: Estructura normal

de carril.

El principio de la regla voraz consiste en calcular la velocidad que los vehiculos


en la seccién
x deberian de adquirir. con el propésito de ocupar todo el espacio que se libera
en z + 1
cuando los vehiculos en esta seccién lo abandonan.

E] espacio liberado en z + 1,y +j al tiempo t esta dado por

Fraestyty =
ztlyty jAt
Vere
Loy -j1- Fy pty). (3.1)
Lost

donde

—_ et
Ae evtysj = Di Notatiys iTS ett yep Aenrs ty)
ve
tNo tet iy ti-i 76 et yt j—1 AO rel
—_cr
j
el
+No i 24iytj+t *Ot,c+Lytjtl Notre tyes) (3.2)

donde los superindices st, cr y el indican actividades que implican permanecer


en el carril
actual, cambiar al carril a la derecha o cambiar al carril a la izquierda. respecti
vamente.
Si se sustituye (2.10) en (3.2). y se deja en términos de Virtty-+)j- la expresién se reduce a

Act iyty = AW stati + AaVersiyey + As.

donde los coeficientes A; estan dados por


_ apt . cr
A; = Do(Noserivtsi Bert yeskost Nog et yes—1 lL. el
Tbe 21. yey host Nos osiynpa Morar gasethoa):
vO

Por otro lado, el espacio de los vehiculos que salen de x,y + j hacia «+1. y+ j esta dado
por
Ut nytj = (At/La) Vir ysj Ary sj: (3.3)

Si se desarrolla la Ec. (3.3) en términos de la velocidad Vj 244 j se legaa

Oreyti =
At
—(Bi Viwwes
3 + Bovey
2
+ ByVi yey). (3.4)
L,
12
Capitulo 3. Técuica de la regla voraz

donde los coeficientes B; estan dados por


_ st . —cr I. .
B= Norns TA tej hi acl
+ No trytimt™ 04 2+ )—1 Ri + Nitra ie Tang p10):
ve

Los coeficientes A; v B; se someten a las siguientes restriccioncs de frontera:

Si 7 = 0 entonces

Notrtty-1M
bt cety-1kod = OY Nogay 178) 4y-1Kay = 0.

0 si j = n entonces

acl
Ni hablytn+l Ot n+1ytnt hoi _=0y :Notrytn+1 TG
cl om
ry —ne kad = 0.

Para que todo el espacio liberado en z + 1, y + j sea aprovechado por los vehiculos que
alcanzan a salir de x.y + j se obliga a que Feaviysj = Utxy+). Si se asume que se conoce
V, 2+1,y+j, entoces el espacio libre en la Ec. (3.1) es conocido v la velocidad buscada
Vi raytj
se obtiene al resolver la ecuacién cibica

L,
BV
er yaj + Beings + Bi ays; — Pertiuti ty = 0. (3.5)

Es importante notar que el espacio liberado en z+ l,y+ jy el de los vehfculos que


salen de
x,y +] son calculados al considerar que la demanda de espacio de los vehiculos
que hacen
un cambio de carril esta en funcidn de la velocidad del carril destino. Al hecho
de hacer
esta consideracién se le ha denominado como el caso de las velocidades desacopladas, ya que
la Ec. (3.5) estd en funcién solamente de la velocidad Vinyey V no de la velocidad
en los
carriles contiguos. es decir. la suposicién de que al cambiar de carril los vehiculos adoptan
la
velocidad del carril destino implica desacoplar algebraicamente las soluciones
de la Ec. (3.5)
para cada carril.

E] caso contrario es al que se le ha llamado el de las velocidades acopladas. va que


se considera
que los vehiculos que cambian de carril no adoptan la velocidad del carril destino, por
lo que
el cdlculo de la demanda de espacio esta en funcién de la velocidad a la que se viaja en
el
carril de origen. En este caso como se verd més adelante se deben calcular simulta
neamente
las velocidades de todos los carriles de una seccién « determinada.

Al resolver la ecuacién (3.5) pueden obtenerse tres valores reales para Vi 744).
y de suceder
esto se elige al minimo positivo. En el caso que se obtengan dos raices complejas y
una real
se elige esta ultima. El valor de la velocidad calculada se debe de encontrar en el
rango
(2.1), por lo que si al resolver (3.5) se tiene que Vizg+y < 0. entonces Viry4; = 00
si
Vi2y+j > Vaz, se asigna la velocidad mdxima a x,y + Jj. Estas
consideraciones se deben
hacer para todos los cdlculos de las velocidades, tanto para e] caso desacopl
ado como el
acoplado.
3.1, Técnica de la regla voraz para cl caso desacoplado
13

Para el caso de que los carriles de la seccién x se encuentren vacios. los coeficientes
A; vy B,
se hacen cero, y no se puede emplear la ecuacién (3.5). por lo que se les asigna la
velocidad
maxima.

3.1.2 Estructura de salida

En la Fig. 3.2 se encuentra representada la estructura de salida de una autopista de dos


carriles. Considere que las velocidades en x + 1,y, x + l.y+1y «.y+2 va han sido
determinadas y que en ésta ultima no existen vehiculos que pasen awr.y +1.

El cdlculo de V,,,,, se resuelve de la forma vista anteriormente para cl caso de la estructura


normal, mientras que el de V;.,41 debe hacerse de tal manera que los vehiculos en x,y
+1
no sobrepasen la capacidad de z+ 1.y+1 nila de x,y +2.

xy e| xtLy t+»
f t t +
xytl by oxthyt] be
—_—__—.
xyt2 :

Figura 3.2: Estructura de salida

El espacio liberado en +1. y+1 esta dado por Fretiys1 y el liberado en x, y+2 por
Fiay+2;
donde cada uno se calcula nuevamente por (3.1).

El primer valor de la velocidad de xz. y + 1. Vi watts se obtiene al calcular la velocidad que


los vehiculos que pasan de x. y+1lax+1.y+1 deberian de adoptar para ocupar el espacio
Fiz+1,y+1- Dicho cdlculo se hace nuevamente al resolver la ecuacion { 3.5) para Frosiyer
¥
Ur y+1, esto es

- ~ ~ L,
Beyer + Bove ys + BsVe cya — Furstvti ag = 0. (3.6)

El segundo valor de la velocidad en x,y + 1. Vee y41, se obtiene al calcular la velocidad a la


que deberian circular los vehiculos que hacen cambio de carril a la derecha en x, y +1, para
poder ocupar el espacio F;..y49 liberado en z,y + 2. El espacio de los vehiculos que pasan
de x,y+1laxz,y +2 esta dado por!

Stayer = (At/Lx Wiz ynt . Nogay+


rn ye Aotrye?
1T - (3.7)
ve

INotese que la demanda de espacio de los vehiculos que quieren entrar ar. y+ 2 se calcula
a partir de la
velocidad del carril destino.
14 Capitulo 3. Vécnica de la regla voraz

Si se desarrolla la Ec. (3.7) v se agrupan términos semnejantes se tiene

, At.
Siny+l = Fo Mery (C1 Veen? + CV
x ysv — C3).

donde
—cor ~
C= s Notay+ 1700 ys 1X0:
ve
Al igualar S).441 con Fie,s2. y dejar en términos de Vizgtt: s¢ tiene

Ve, aye = am F, tryt2


r. L, (3.8)
Cc Ve ye? + CoVizy+2 + C3)

Cada ecuacién, (3.6) y (3.8). se resuelve cuidando que la solucién esté deutro de los limites
antes descritos.

Con el fin de no sobrepasar la capacidad de x + 1.y +1, nila de x. y+ 2. el valor final para
V.,2,y-1 Va a ser el menor de las soluciones de (3.6) y (3.8), es decir

Vieget = min{Viryet: Vizysi} (3.9)

3.1.3. Estructura de entrada

En la Fig. 3.3 se encuentra representada la estructura de entrada para nna autopista de dos
carriles, donde la velocidad V,,,y se obtiene si se resuelve como un caso de la estructura
normal.

KY xtLy >
= 2 z 2
nytl tt xtLytl b>
¥
xt] yt2

Figura 3.3: Estructura de entrada

Las secciones z,y+1y 2+1.y+2 estan colocando vehiculos en + + 1.y +1, por lo que hay
una competencia por el espacio libre Fi.241,41, nuevamente calculado por (3.1).

E] espacio de los vehiculos que se mueven de x + l.y+2ax+1.y +1 esta dado por?

Startly+2 = (At/Loi)Vic+1y42 Note tyt2rotrtlytl-


v6

2Nétese que la demanda de espacio de los vehiculos en 7 + lly + 2. que descan entrar a z+ ley +1,
nuevamente se calcula a partir de la velocidad del carril destino.
3.1. Técnica de la regla voraz para el caso desacoplado 15

Al desarrollar Agrr+1y+t ¥ agrupar términos semejantes se tiene

Start Lyt2 = (At/ Last) Vertiyso(Ci Ve tae + Cy term Ly +t + C4). (3.10)

donde
+ cl .
C= » Notr+1y+276,t,0¢1y4oK01-
ve

El espacio que se mueve de x.y +1laz+1,y+1 estd dado por Uy yy41. ¥ se determina por
medio de (3.4). Debido a que se libera el espacio Fasiy+t ¥ hay vehiculos en las secciones
z,yt+lyx+1,y+2 que demandan entrar en él, se debe establecer tna forma que permita
indicar qué proporcién de Fi241y41 se les va a asignar a los vehiculos que se encuentran en
el tramo principal y a los que quieren entrar por x + 1,y +2.

La solucién al problema consiste en resolver la ecuacién

Fhttytt = Ur ryt + Stathy2- (3.11)

sujeta a las restricciones

OF ere tyt1 = Grays (3.12)


y
BFratiyst = Stetiys2s (3.13)
dondeO<a.3Slya+3=1.

Las ecuaciones (3.12) y (3.13) permiten generar una ecuacién ciibica v otra lineal que pueden
resolverse por separado, lo que da como resultado las velocidades para vr. y+1 vit ly+2.
esto es

By; Ey + BV? L2y + By Viy _ OF ety =L r


0.
Mt At

BF tyti Dott
Viet Ly +2 =
(CVE yse + CoVererysa + C3) At

Generalmente la distribucién del espacio debe ser de tal forma que se dé mas preferencia de
entrada a x+1,y+ 1 a los vehiculos que se encuentran en el tramo principal. por lo que los
valores para @ oscilan comtinmente entre 0.70 y 0.95, dependiendo de la prioridad que se le
quiera otorgar a los vehiculos.

Cuando la densidad de los flujos vehiculares que quieren entrar a x + 1. y +1 son significati-
vamente diferentes, surge un nuevo problema que hace necesaria una nueva distribucién del
espacio libre F)41341, la cual se explica a continuacién.
16
Capitulo 3. Tecnica de la regla voraz

3.1.4 Redistribucién del espacio libre

Una vez que se hacen los calculos de Vinge ¥ Vietty+2 para una estructura de entrada como
la de la Fig. 3.3, se pueden tener las siguientes dos situaciones:

Si Veyer = Vor ¥ Vietty+2 < Vinaz; quiere decir que con los valores de a y 3 selecciona-
dos, el flujo vehicular @:.y41 no alcanza a Ilenar el espacio reservado. mientras que
el flujo
vehicular @;.+1,+2 no puede acomodarse totalmente. Esta situacién indica que
se puede
recalcular el espacio real que toman los vehiculos provenientes de x. y +1 asignar el exce-
dente integramente a los que provienen de x +1,y +2. Si se hace esto no hay desperdic
io de
espacio disponible. E} nuevo espacio disponible, denotado por Fisted. para los vehiculos
provenientes de x + 1, y + 2, esta dado por

Fhe lytl = Fersty41 - Un ryt

donde Orn ytt es el espacio de los vehiculos en x, y + 1 que pasan a wt + l.y+lala maxima
velocidad. Con la expresién anterior lo que se logra es que el espacio que no ocuparon
los
vehiculos que alcanzaron a salir de z,y + 1. sea ocupado por los veliiculos que demandan
entrar por z+ 1,y+2.

Por otro lado, si Vizyi1 < Viner ¥ Vieviy+2 = Viner S€ presenta la situacién contraria,
En
este caso es posible acomodar mas vehiculos provenientes de xr. y +1 si se recalcula el espacio
que realmente usardn los que acceden por x + 1,y+2. El nuevo espacio libre. denotado por
Feastiy4i- que se le puede asignar a los vehiculos de Z,y +1 que demand
an més espacio es
Frrttyt1 = Frtty+t _ Startiy2-

donde Shrtlyt2 es el espacio de los vehiculos que pasan de r+ l.yt2ar+l, y+lala


maxima velocidad.

3.2 Técnica de la regla voraz para el caso acoplado

Como se indicé anteriormente el caso de las velocidades acopladas consiste en que el


cdlculo
de la regla voraz parte del hecho de que los vehiculos que hacen cambio de carril conserva
n
la velocidad del carril origen en el intervalo de At segundos.

3.2.1 Estructura Normal

Considérese nuevamente la estructura normal ilustrada en la Fig. 3.1. El espacio


liberado en
x+1,y+ J se puede obtener de forma similar a (3.1), esto es

Viet yp gat
Fratiytj = cout 7 (: _ FA pt ysy:
Lat
3.2. Técnica de la regla voraz para cl caso acoplado
17

con la diferencia que la demanda de espacio de vehiculos que hacen cambio


de carril depende
de la velocidad del carril de origen lo que da como resultado

= NO st
A pt tiysj = Do Nes rtt yt X8 rt lay Men: ua)

—cr
Tt Notre tytj-¥ 094 yey 1 M0 tre lLyeyel
ae
+ Notre tytj TA tot tiytjt1AOrr~lyej—t)> (3.14)
al desarrollar la Ec. (3.14), sustituir, y ordenar términos semejantes
se tiene

1- ViesiyrjAt
Fy et tytj = Lyi ( } (Aer tyes + AQVy petiynj
cnt) + dy + BW? +l ytj—1
2
+ BV et tytj—l + Bs + Ci Vere lye jel + CoVh rw tiynyol + C3). (3.15)

donde

= —st
Ay = Do Nosrtiy iF eres ye kon-
va

B= 3 No trthyti- V6 tet lay eje hee


va
= cf .
C ~~ ~ Notxttayti~V6 tee 1 ype ihe us
va

Ahora, el espacio que ocupan los vehiculos que salen de z. yt+y hacia +1. y+ 7 esta dado
por
Oh ay sj = (At/Le)Vizytj Ht ryt)-

donde H; 443; se determina por (3.14) para obtener

Una gysj = (At/Le)Vinys (Aj Vets + AV yt + Aj + Bil eae + BV nytj—1 + B;


ep72 fo f
tC yti t CM ayeje1 + C3). (3.16)
donde

so st
A; ~ Not cvts™ 6 enysskos-
ve
ft T cr
By = DY Notaytj-17F 2. y4;-1K09-
ve
po el
Ci = Do Noseutis1T Ota yaystkan.
ve
Al igualar la Ec. (3.15) con la Ec. (3.16) y dejar todos los términos de
un solo lado de la
ecuacién resultante, se obtiene la funcién G;. que depende de las velocidades de
los carriles
contiguos al j-ésimo carril, esto es

G; = Ay Vienwts + a + AgVi yj + (By Vinwtj-t + Bl; rung Ba)Veau4j


L
+(C} Ve ytgel + Ci ryti+l + C3Viryty _ App hrshuny: (3.17)
18
Capitulo 3. Técnica de la regla voraz

Si se desarrolla la Ec. (3.17) paraj = 0,.... se tiene entonces un sistema de tantas ecuacione
s
como carriles. que debe resolverse para determinar las velocidades para cada carril de
la
seccién x. E] sistema acopla la solucién para velocidades de carriles coutiguos, En el
siguiente
capitulo se describe el método numérico empleado para solucionar un sistema de ecuacione
s
no lineales.

3.2.2. Estructura de salida

El calculo de la regla voraz para una estructura de salida puede manejarse como un caso
particular de la estructura normal.

A manera de ejemplo considere la estructura de salida para la autopista de dos carriles


mostrada en la Fig. 3.4. y que las velocidades Vestins Viewty-1 ¥ Virsiyso ya han sido
determinadas.

xy — xthy [>
t i t 2
xytl + xtlLytl b>
7
xtLy+2

Figura 3.4: Estructura de salida

Los espacios liberados en los carriles de la secci6n x + 1 estan dados por Frrtiys Fertiy+l
Y Froaty+2 ¥ al desarrollar (3.17) para 7 = 0,1 se obtiene el sistema de dos ecuaciones
formado por*

! r ype L,
Go = Ai Voy + AWVeny + A View + (Ci Vey + CMa + C3)4 tury 7 Api tatty:

: L
Gy = ay Vee yet + a ee + a3Vi nyt + (BYVey + BYiry + B3)Vi nye _ Ay Faetiwet:

que al resolverse nos da las velocidades buscadas.

3.2.3. Estructura de entrada

Considere nuevamente la estructura de entrada para la autopista de dos carriles mostrada en


la Fig. 3.3. Para este caso en particular las velocidades V;,.,4 y Vi.r.y.1 Se obtienen al resolver

3Los coeficientes a’ de G) estdn escritos en mintisculas para no confundirlos con los cucticientes A’ de Go.
3.2. Técnica de la rogla voraz para el caso acoplado
19

el sistema ce dos ecuaciones formado por

Go = Aj Vey
L
+ ABV? y + AGVi rw + (Ci Veet + CMe nyt + Cyn try ~ Ay tern: (3.18)
y

- . boys
G.= Ave
L
yet + Vey at + a3\ trytl + (By Vy + Bry + B, NV haga) OR Feat lut:
(3.19)
Go se obtuvo a partir de la ecuacién (3.17), mientras que G, implicé
otras consideraciones
que se muestran a continuacién.

El espacio liberado en la seccién x + 1, earril y +1 esta dado por

Vix At
Fraesiyst = Lr - (: - Hagen) Hy pe ty-t-
ze+1

donde?
= r st
Aer tyet = DV Noteetyt Te eat ya Nor, r—liytl
ve

tNotctiyMte¢lyAOtrtly

+Notctiyt2Aoee+1ye1)- (3.20)
Si se desarrolla (3.20) y se sustituve en la ecuacién anterior se Nega a

Freeigtt =
l- Viersiy4i At » 172 soy ”
Ley — ( } {A Vee ly + AMM ety + .A"3
Las

+B Ve iy + BV cety + B’s), (3.21)


donde
A= DV Noten iTS ety ei ke + Notaretiy-2kor)-
ve
y
By = Notatly™ r+ 1yho.i-
vO
La asignacién del espacio libre en z +1, y +1 se reparte de acuerdo a las restricc
iones (3.12)
y (3.13). De acuerdo con la restriccién (3.13), y nuevamente al considerar
que el espacio de
vehiculos que pasan de z,y+1lazx+1,y+1 estdé dado por U;.7,y~1. calcula
do por (3.16), se
obtiene (3.19).

Ahora el espacio de los vehfculos que van a entrar a la autopista por + 1.y+ 2 esta dado
por
Statige2 = (At/Leii)Viesiy+2 > Not 1.y+2A0.t.re bya:
vO
4Notese que mediante la expresion No.t.2.41.y~2A0.t.2+1,y-+1 Se esta consider
ande el espacio de los vehiculos
en z+1,y+ 1 que entraron por r+1,y+ 2.
20
Capitulo 3. Técnica de la regla voraz

que al desarrollar da como resultado

Stortig+2 = (At/ Leas Vireiysa(C’ Vet yan FON re tyns $C). (3.22)
donde
Cn = YO Nor estyaokan
vA
y al sustituir (3.22) en (3.13). v dejar en términos de Viety+2 Se Hega a la ecuacién
cibica

. eyed — Ly.
Cc Venti y a2 +C Vee y4e + O° ct iye2 — OF ested — = 0, (3.23)
y la velocidad para los vehiculos en x + 1,y + 2 se obtiene al resolver esta
ultima ecuacién.
Por ultimo. se toma en cuenta que en caso de que las densidades de los flujos
sean con-
siderablemente desproporcionadas. se aplica nuevamente el criterio de
la redistribucién del
espacio visto en la estructura de entrada para velocidades desacopladas.

3.3 Plan de entrada

El plan de entrada es una regla de control que determina el ingreso de los


flujos vehiculares
a una rampa de entrada. El espacio liberado Fiy en una rampa de entrada.
referenciada
por z,y (ver Fig. 3.5), se puede calcular con el criterio de las velocida
des desacopladas o
acopladas vistos en las secciones anteriores.

Figura 3.5: Rampa de entrada

Utz, demanda de espacio del flujo vehicular de entrada, esta en funcién


de la velocidad en
la rampa, es decir
st
Unay = Qo... Tt xy AO.t.25:
y al desarrollar Ag 42,4 se tiene

Urey = QatcyMe2y(koiViny + ka2Viry + ko3)- (3.24)


donde Qo..x, es el ntiimero de vehiculos del tipo 6 que demandan entrar
a x.y al tiempo t.
Es importante notar que para este caso en particular se considera que
la actividad con la
que entra un flujo es la del tipo st. pero para otros tipos de carretera se
puede dar el caso de
3.3. Plan de entrada
21

que se entre con una actividad diferente, como por ejemplo cr.
dependicudo de la estructura
de la autopista. Por lo anterior se puede decir que la activid
ad de entrada depende de la
topologia de la carretera bajo andlisis.

Cuando Ut ny S Fray se concluye que la rampa de entrada puede alojar a los vehiculos
que demandan entrar, y por lo tanto se les da el paso a
todos ellos. Pero. si Urey > Feary.
implica que la rampa de entrada es insuficiente para alojar a
todos los vehiculos, por lo tanto
se le debe permitir la entrada sélo a los vehiculos para los
que hay espacio y con los que no
alcancen a entrar se debe formar en una fila de espera 0
buffer de acuerdo al tipo de flujo
vehicular.

La restriccién de entrada a un determinado flujo vehicular, Pat.ry Consiste basicamente en


que se debe permitir el ingreso sélo a una proporcién, de acuerd
o a la razén p que se calcula
a partir de
P= Fray/Uszy. (3.25)
Y entonces, la proporcién del flujo vehicular que finalmente
va a poder ingresar a la rampa.
cuando hay insuficiente espacio, esta dada por

Po.try = px 6,t,0,4+ (3.26)

Es importante remarcar que cuando hay exceso de vehiculos


en las entradas de la autopista,
se generan colas de espera por cada tipo de flujo en cada entrad
a.
Capitulo 4

Implementacién

En el capitulo anterior se desarrollé la técnica de la regla voraz para cl caso de las velocia
des
desacopladas y acopladas. En cada uno de ellos el problema se reducia a dar solucié
n a
un polinomio de tercer grado. o bien a un sistema de ecuaciones collpuesto también
por
polinomios de tercer grado. En el presente capitulo se expone la forma en que se disefiar
on
las soluciones a esos problemas. ademas se describe cémo se implementé la entrada
de flujo
con distribucién exponencial.

4.1 Revisién de la ecuacién de conservacién

La primera versién de SmartCap sélo podia simular sistemas de


autopistas de un carril. En
versiones posteriores se extendieron las simulaciones a autopistas de
varios carriles. Estas
Mmejoras implicaron que se fueran modificando las ecuaciones de conservacion
de vehiculos de
acuerdo al comportamiento de las nuevas maniobras o maniobras mas
complejas, como por
ejemplo los cambios de carril.

Debido a que la ecuacién de conservacién representa el estado que se desea


controlar, antes
de hacer las modificaciones para el greedy rule. se tenia que asegurar
que el modelado de la
ecuacién de conservacidn estuviera implementado correctamente.

A continuacién se presentan las expresiones que representan a


la ecuacién de conservacion,
las cuales fueron obtenidas a partir del cédigo fuente del archivo main.c
de SmartCap.
Las funciones phiStay(), phiIn() y phidut(), localizadas en el archivo antes mencionado,
devuelven respectivamente a Neay, Nin y Nout; que en conjunto representan el total de

22
4.1. Revision de la ccuacién de couservacion
23

vehiculos del tipo 8 en una seccién z, carril y al final del tiempo


de muestreo At. es decir!
Nottatay = Netay + Nin ~ Nout. (4.1)

Netay denota el ntimero de vehiculos que se encuentran en +. y al inicio del periodo de


muestreo. NV, y Nour denotan el nimero de vehiculos que sale o entra al carril. respecti-
vamente. Los vehiculos que entran y salen incluven a aquellos que lo
hacen por cambio de
carril.

El numero de vehiculos iniciales estA dado por

Nstay = Notcy bx,


ZY :
(4.2

y el numero de vehiculos que ingresa al carril por

Nin =A+B+C, (4.3)


donde
= a a
A = Qetcy 3 Tot ny + ° ’
Not2-1y > Notn—1.y) trotyAt/L r—].
va 7aéS
‘donde a su vez, @ es el numero de vehiculos del tipo @ que
entran a la seccion z. carril yal
tiempo ¢ de acuerdo a un plan de entrada. S es el conjunto de actividades que no implica
cambio de carril.

El numero de vehiculos provenientes del carril a la derecha esta dado por

B= Notary-l > MO try—1(1 7 Virwdt/Ly).


Vae£l

donde £ denota el conjunto de actividades que implica cambio de


carril a la izquierda.

La cantidad de vehiculos provenientes de y — 1 esta dada por

C=Moscy >, T6ta,y-1l — Vig.yAt/L,).


VaER

donde y — 1 es el carril a la izquierda y R el conjunto de


actividades que implican cambio
de carril a la derecha.

Finalmente el numero de vehiculos que salen del carril esté dado por
_ a r
Nout = Nota a
> Tat cy Very At/ Ly + Notzy > Terry t Notry >
Vaes
76 taeay
VaeL VaER
Ahora. al comparar las ecuaciones anteriores en conjunto con la ecuacién
(2.3) se puede
concluir que son equivalentes. pero es necesario indicar que el término 96.4.7, S@ encuentra
incluido en Nour, por lo que no aparece de forma explicita
en las expresiones obtenidas a
partir del cddigo fuente de SmartCap.
1Se puede tomar nuevamente como referencia la Fig. 2.1 mostrada con antertoridad,
24
Capitulo ttmplementacion

4.2 Demanda de espacio en funci6n de la velocidad real

La funcién que mejor se ajusté a la demanda de espacio asociada a cada actividad pudo
determinarse gracias a que se contaba con un conjunto de puuitos de la grafica de dicha
funcién, obtenidos de las especificaciones de un plan de actividades de trabajos anteriores.

En la tabla 4.1 se muestra la distancia de z metros que debia nantener un vehiculo del tipo
automoévil con el de enfrente. de acuerdo a la velocidad Y de metros por segundos a la que
viajaba.

Automévil
Dist. x | Vel. Y
0.0 0.0
20.0 29.0
30.0 47.0
40.0] 104.0
Tabla 4.1: Distancia con el vehiculo de enfrente

Existen diversos métodos numéricos que permiten obtener puntos de ima curva. por medio
de la interpolacién de otros puntos va conocidos. De entre ellos el método que se eligié fue el
que se basaba en el polinomio de Lagrange, debido a que con él se pudo llegar a la ecuacién
algebraica con la que se pudieron recuperar los puntos de la tabla 4.1.

En [7] se establece que el polinomio de Lagrange esté dado por la expresién

Yiy=
.
04 TT HOW),
(x —2;)
m m

i=0 | j=0,j4i (xi — 23)


44
(4-4)

donde el par ordenado (z;, y;) representa un punto conocido en la grafica vy m—1es el grado
de la ecuacidén deseada.

Al desarrollar la expresién (4.4) para m = 3 se obtiene

(x — £2)(x — x3) (x ~ 2,)(z — x3) (4 = 2) )(r


— x2)
Y(z) = (4.5)
(21 — 22)(a1 — 23)!" (ay — a1)(tg~ 23)? (43 — 7] M(r3 z)°3"
que puede simplificarse al definir las constantes

_ Ya
A= Gna
_ Ya
(x2 — x1)(t2 — 23)’
4.2. Demanda de espacio en funcion de la velocidad real 25

t<
C= ¥3
(23 — ry) (t3 — 2)
Ahora, al sustituir A. B y C en (4.5). desarrollar. y ordenar términos semejantes se llega a

Y¥ (x) = [x? — (xg + x3)a + rors) + [x? ~ (2, +.23)2 + rps Bt? = (ry target xyrC,

y si se factoriza

Y(e) = (A+ B+C)z? — (A(c2 +23) + Bla +23) +C(art wo) t+ (Avy + Bay)z3 4+ Cary 29.

Finalmente. al volver a definir las constantes

ki = (A+ B+C).

kg = — A(z + x3) + Bir, + £3) $C (ry + £2)]

c= (Aro + Br, )r3 + Cryx2


se llega a
¥(z) = kz? + kon +e (4.6)
que es la ecuacién cuadratica deseada.

Debido a que se contaba con cuatro puntos, y la ecuacién (4.6) solo requeria tres de ellos, se
hicieron combinaciones para ver cual era la que producia el menor margen de error. En la
Fig. 4.1 se muestran las curvas obtenidas al emplear algunas combinaciones de puntos de la
tabla 4.1.
Avtomovs
120

° s 10 1s 70 28 30 36 4
valocuted [mveeg]

Figura 4.1: Demanda de espacio

La diferencia entre las dos curvas obtenidas pudo notarse en sus respectivas ordenadas al
origen. Una de ellas indicaba que para una velocidad de cero se deb{a guardar una distancia
26
Capitulo 1. fplementacién

de seguridad de 110 metros. lo cual hizo que ésta fuera deseartada. La otra curva parecid
ser la mds adecuada. va que tenia ordenada al origen nula y permitia qne se asignara mayor
espacio para vehiculos con una velocidad mayor. Al obligar a que las ordenadas al origen
de
cada tipo de vehiculos fueran nulas. la ecuacién (4.6) se redujo a

V(r) = kyr? + koe. (4.7)

Se siguid el mismo procedimiento para los tipos de vehiculo restantes con base en
la tabla
siguiente.

Vel. Y
Dist. z | Camién | Autobus
0.0 0.0 0.0
20.0 67.0 88.0
30.0 140.0 193.0
40.0 249.0 339.0
Tabla 4.2: Distancia con el vehiculo de enfrente

Las funciones de demanda de espacio para cada tipo de vehiculo estuvieron entonces
dadas
por:

Y(z) = 0.057002? + 0.300 para automévil.


Y(z) = 0.136252? + 0.4252 para camién.
Y(z) 0.19500z? + 0.3502 para autobts.

cuyas grdficas se muestran en la Fig 4.2.

Se puede apreciar en la Fig. 4.2 que los vehiculos mas pesados deben mantener una
mayor
distancia por motivos de seguridad. Finalmente como el espacio que el vehiculo ocupa
a lo
largo debe ser incluido en (4.7) se llega a

Y(z) = kyx? + kox + kz, (4.8)

donde ky es la longitud del vehiculo. Esta ultima ecuacién es el modelo matematico buscado
que representa la demanda de espacio en funcién de la velocidad.

4.3 Solucioén de un polinomio de tercer grado

La solucion a las ecuaciones ctibicas planteadas en el criterio de la


regla voraz para el caso
desacoplado se podia obtener por medio del método de Newton-Raphson o la expresié
n que
4.3. Solucién de un polinemio de tercer grado
27

Demanda de expacre
~ aimed
+ remoneta
aumebuy,

20 35 40
veloceiad [miseg]

Figura 4.2: Distancia entre vehiculos

daba de forma directa las raices. Ambas podian implementarse de forma sencilla, pero la
primera consumia mds tiempo de ejecucion debido a que se trata de nn proceso iterati
vo,
y ademas debia considerarse que si se elegia un valor
inicial tnuy alejado de la solucién, el
proceso tardaba mas en converger. Por estas desventajas
resulté mds conveniente optar por
la segunda solucidn. la cual se explica en las siguientes Iineas.

La expresién general de un polinomio de tercer grado tiene


la forma
y +a+y?
by +e =0. (4.9)
Se puede hacer el cambio de variable y = x — a/3 para reducir (4.9)
a

w+ pr+q=0, (4.10)
donde

pee 3
y
_ 2 3,
I o77 ~ ate
En [8] se explica con detalle como es que (4.10) tiene por una
de sus rafces a

r=~3.9
\ , atyat
/70, RB ri 4 a7gq fqVotep
(4.11)
Para implementar el caso de £2 + & 3 < 0 es necesario. expresar
(4.11) en notaciénae de nime
,
ros
complejos, o sea
r= (a+ 65) + (a — By), (4.12)
donde
28
Capitulo lmplementacion

Al expresar la Ec. (4.12) en su forma polar se obtiene

r= (rcos@ + jrsing)' + (rcos@ ~ jrsina)!


(4.13)

donde
6 = arccos (a/r)

r= Va?+ 6?

Al emplear identidades trigonométricas, la ecuacién (4.13) se reduce a

z = 2r'/ cos (6/3), (4.14)


que al regresar a y, de acuerdo al cambio de variable, devuelve de forma
directa una de las
rafces de (4.9).

Con este proceso se obtiene una rajz real de la ecuacién ctibica. ¥ lo


que resta por hacer es
dividir (4.9) por la raiz encontrada, con el fin de obtener una ecuacion
de segundo grado que
al resolverse proporciona las dos rafces restantes.

El cédigo fuente de todo este proceso se encuentra en el apéndice de este


trabajo.

4.4 Solucién a un sistema de ecuaciones no lineales

La implementacion de la regla voraz para el caso de las veloci


dades acopladas implicaba que
se resolviera un sistema de ecuaciones no lineales al tiempo de ejecucién.

Para el caso de una estructura normal, salida o entrada,


se genera un sistema de n ecuaciones
con n incégnitas. denominado F. del tipo

fi(zi, 22)
fo(21, £2, 3)
F(X) = {sta 2,24) (4.15)

Fnr—i(Zn-2, In-1, Zn)


fn(Zn—-1, En)
4.4. Solucié6u ann sistema de ecnaciones no lineale
s
29

donde X representa a el coujunto de variables independientes?.


es decir.

vy
Mo
3
X=] 7. (4.16)
tp-1
Xn

La solucién del sistema se reduce al problema de obtener


los valores de V tales que hagan
que F(X) = 0, y el método numérico que permite llegar de forma
coufiable a la solucién es
el de Newton-Raphson, el cual fue tomado de ‘6).

Por simplicidad de notacién es mds conveniente abreviar


cada elemento f;(7j_1. Lj, 2341) de
(4.15) por f; lo que resulta en la matriz

fi
fo
rixy= | #8
fa-1

fa

El método de Newton-Raphson esta dado por la expresién

Nint = X; — (DF(X,))"'F(N,).
(4.17)
donde i es la i-ésima iteracién y DF(X;) es la matriz jacobiana
de F(X) valuada en X;. es
decir,
gh oh g 9g 0 0 0 |
0 0
0 58 ga 2h... 9 0 0
DF(Xi) = : : : Doo, : : : (4.18)

0 0 0 0 -- Qe Bf vex
la cual es una matriz tri-diagonal. ya que cada f; depen
de de Uj-1. Uj ¥ X41. La obtencién
de cada elemento de la matriz (4.18) no representa
gran dificultad. ya que son derivadas
parcia les de ecuaciones algebraicas de tercer grado.

Cada. x; es la velocidad de los vehiculos que se encuentran en


el carril j. mientras que Bj-1y
£341 son las velocidades de los carriles a su izquierda y derech
a respectivamente. El calculo
de la velocidad en cada carril depende de las veloci
dades en los carriles contiguos, y cuando
2En este caso las Ty son_las velocidades.
30
Capitulo -. Lnplementacion

alguno de ellos se encuentra vacio se le asigna la maxima velocidad. v esto provoca que se
despeje una de las incdégnitas del sistema. Esto hace que cl orden del sistema se reduzca
tantas veces como carriles vacios se tengan.

La reduccién del sistema consiste en que si a wv; se le asigna la inaxiina velocidad, entonces
los valores de zr; y f; deben excluirse de las matrices X vy F(X} respectivamente, en tanto
que para el jacobiano se deben cancelar el renglén y Ja columna que involucran directamente
of.
a atk
ge:

Por ejemplo, considere que (4.17) se desarrolla a partir de un sistema de cuatro ecuaciones,
esto es
a 2 a .
xy se a 0 9 Ai
22 ee BO fr
3 Org O23 Ora 13
x4 0 0 24
Org
gh
«Org :
fy
si a x3 se le asignara la velocidad maxima, entonces el sistema se tendria que reducir a
2h 8 g J h
7 oa Qe
Xwr= | t2|-| 52 22 0 fa [. (4.20)
x4 0 0 Ox, Sa

Debido a que éste es un método iterativo, las operaciones anteriores deben repetirse hasta
que los valores de Xj4) sean aproximadamente iguales a los de Y,. es decir. hasta que la
diferencia entre éstos tienda a cero.

El cédigo fuente correspondiente a este método se encuentra en el apéndice.

4.5 Entrada vehicular con distribucién exponencial

Segtin [5], la distribucién exponencial se emplea en problemas que involucran el céleulo de


la probabilidad de que en un cierto intervalo de tiempo arriben vehiculos a una rampa de
entrada.

La funcidén de densidad para la distribucién exponencial esta dada por

F(z) =1-e7*, para x > 0. (4.21)


donde zx representa la proporcién de vehiculos que arriban a una seccién de entrada y des
la tasa promedio de arribos.

Para que los vehiculos entren de acuerdo a una distribucién exponencial. la expresién (4.21)
se debe dejar en términos de la proporcién de vehfculos
1
l= ~ int — F(z)), (4.22)
4.5. Entrada vehicular con distribucion exponencial 31

sujeta a la restriccién
0 < Flr) <1. (4.23)
La proporcién de vehiculos que arriban al final del tiempo de mnestreo esta dado por rAt.
por lo que al emplear la ecuacién (4.22) se llega a

r= = Fini — F(x))At. (4.24)

En la Fig. 4.3 se muestra la grafica del comportamiento de (4.24) para ¢ = 2.65 y At = 15.3.

or,
de venteuae
2.8.3.
Numero
$

4
~~

|
4|

or 02 03 O« 05 06 27 (Oe 38 t
Propapiesad de arrtson

Figura 4.3: Entrada con distribuidn exponencial

Como se puede observar en la figura, la curva crece asintéticamente a ma recta imaginaria


cuando se acerca uno. por lo que pequefios incrementos en F (2) en esa regidn causan con-
siderables variaciones en la proporcién de los vehiculos que Negan. Otro aspecto que hay
que notar. de acuerdo a (4.24), es que la eleccién de valores grandes de 6 provoca que se
obtengan pequeiias entradas de flujo vehicular.

La implementacion de la entrada con distribucién exponencial requirié que se hicieran mo-


dificaciones al cédigo de la funcién GetFdemand que se encontraba en el archivo user.c. En
dichas modificaciones la linea

Fx=( (float) (rand()%410000) ) /10000;

fue la que permitio que la probabilidad de arribos F(x) fuera aleatoria v que se respetara la
restriccién (4.23). El empleo de la funcién rand de C permitio generar wna serie de ntimeros
pseudo-aleatorios a partir de un valor inicial o semilla.

Para conseguir que la serie de nimeros fuera completamente aleatoria se consiguié que la
semilla se obtuviera de acuerdo al reloj de la maquina donde se corria el sistema. Para ello
se empleé la funcion srand:
32
Capitulo t. Tmplementaciou

srand((unsigned) time (NULL));

Este renglén fue agregado a la seccién main que se encontraba en cl archivo main.c de
SmartCap.

En el apéndice se encuentra el cédigo fuente de las modificaciones que se hicieron a la funcién


GetFdemand.

Debido a que el usuario especificaba el tipo de entrada vehicular en el archivo de entrada.


se tuvieron que hacer algunas modificaciones al analizador sintdctico de SmartCap, con el
objeto de que éste interpretara si el usuario queria una entrada uniforme o con distribucién
exponencial.

En la siguiente seccidn se explican las modificaciones que se le hicieron al analizador sintactico


0 parser de SmartCap.
Capitulo 5

Pruebas de simulacién

En el presente capitulo se presentan las pruebas de simulacién hechas con el fin de probar que
las nuevas funciones que se implementaron ofrecen ventajas sobre las de la versién original.

Para todas las simulaciones de prueba se tomaron flujos de entrada con distribucién uni-
forme, pues esto permitia no tratar con la aleatoriedad del flujo de entrada con distribucién
exponencial y evitaba hacer un andlisis tipo Monte Carlo para concluir correctamente.

5.1 Actividades en funcidén de la velocidad nominal y


real

En estar prueba se querian estudiar las diferencias del comportamiento vehicular derivadas
del caso de las actividades en funcién de la velocidad nominal { AVN) ¥ velocidad real (AVR).
Para estas pruebas de simulacién se empled una autopista de un carril. dividida en cinco
secciones como la mostrada la Fig. 5.1.

Sech Sec? Sec3 Sec4 See5

Figura 5.1: Autopista de un carril

En ambos casos de estudio se colocé a la entrada de la carretera un flujo uniforme que arribé
durante los primeros 1000 segundos de simulacién. El tiempo total de sinwlacién fue de 2500
segundos con pericdos de muestreo de 15.3 segundos.

Los resultados obtenidos se muestran en la Fig. 5.2. En ellos se puede observar que la veloci-
dad a la que se viajaba en la primera seccién para el caso de AVN, decay6é repentinamente

33
Capitule 3. Pruebas de sinulacion

Velocddades
a

3 r

20 | 1
it ‘ fo \
. |: poh
:

i$a
Zan '
2Pl of
2 1 ,
Xft
yt
' i ;
,' :
\
' tof :‘ :
{
:
‘ c
' :

28 : /
‘' sol ' -
aspi-------
, '
; '

2 ‘06001000 1505" 2000" e500 | 0803008 te00 a0


‘tempo [seg] empe [seg

Figura 5.2: Rampa de entrada

hasta los 25 m/seg, y se mantuvo asi hasta que los vehfculos en la fila de espera terminaron
de entrar. Para el caso de AVR la velocidad fue bajando de forma gradual hasta que se
cumplieron los 1000 primeros segundos de simulacién, y con una desaceleracién repentina
debida a una saturacién en la rampa de entrada. Finalmente se presentaron una aceleracién
y desaceleracién mas pronunciadas antes de que la cola de espera desapareciera. Las veloci-
dades para el caso AVR resultaron ser mas altas que para el caso AVN. debido a que en
el primero los vehiculos sdlo reservaban el espacio estrictamente necesario. y en el segundo
todos los vehiculos reservaban el espacio que habrfan de requerir a la maxima velocidad, sin
importar que se encontraran desplazando lentamente.

Los beneficios de las nuevas implementaciones se traducen en una considerable reduccién en


el tamafio de la fila de espera ¥ un significativo aumento en el flujo vehicular de entrada,
ambos debido a que se puede circular a una mayor velocidad. lo cual permite un mayor
aprovechamiento de la capacidad de la carretera.

5.2 Cambios de carril en una autopista

Para esta prueba se consideré una pequefia autopista de dos carriles dividida en cinco sec-
ciones, cada una de 500 metros de largo, como la mostrada la Fig. 5.3.

Figura 5.3: Autopista de dos carriles


5.2. Cambios de carril en una antopista
35

A la entrada del cartil de la izquierda se colocé un flujo vehicular con nua densidad muy
grande, con el propdsito de originar un congestionamiento ¥ conseguir la formacién
de una
cola de espera. Por la entrada del otro carril se hizo pasar un flujo con una densidad
menor
a la del primero. v se obligé a que un 45% de los vehiculos en la seccion 3. carril 1, pasaran
a la derecha. Todo esto. para ver los diferentes efectos causados por cl empleo del concepto
de las velocidades desacopladas (CVD) y el de las acopladas (CVA) cuando hav cambios de
carril en secciones con densidades desbalanceadas de flujo vehicular.

El tiempo total de la simulacién fue de 2000 segundos con flujos vehiculares de entrada
uniforme, y el ingreso de estos por la primera seccién fue sélo durante los primeros 1000
segundos.

El congestionamiento en el carril 1 origind que las velocidades en las secciones 1,2y 3


resultaran muy bajas en comparacién con las del carril 2. Esto permitié analizar mejor
las diferencias entre el empleo del CVD y CVA. ya que el primero basaba su cdlculo en la
velocidad del carril destino y el otro en el de origen.

Para el caso acoplado. en el carril 2 de la seccidn 3, el espacio demandado por los vehiculos
provenientes del carril izquierdo que hacian la actividad de cr. estaba en funcién de la
velocidad del carril de origen. la cual era muy baja. lo que hacia que los vehiculos requirieran
poco espacio y por lo tanto se podia alojar a nimero mayor de éstos.

Lo contrario sucedfa para el caso desacoplado: el espacio demandado por lo vehiculos que se
encontraban realizando cambio de carril hacia la derecha estaba en funcion de la velocidad del
carril destino. Como esta velocidad era mds alta se demandé mas espacio. ¥ por consiguiente
se alojaron menos vehjiculos. y al ser alojados menos vehiculos la velocidad a la que podian
viajar resulté ser mas alta en comparacién con el caso acoplado.(Ver Fig. 5.4).
Vemculos Velocidacen Flue vancuier
38) 3s 14
voctcoe \

sof y—___.._ 1
30 12
i
2s} '
8 +
i ‘\
i20) Fa) ‘ 4
3
eye 1 }
ig 1s wets ‘ —----- ,

10 10. o4

93 7000 2000 o °o ‘1900 0


2000 °G) 1000 ‘2000
tempo [sea] tiempo [2eg} tiempo [neg]

Figura 5.4: Seccidn 3, carril 2

Como se puede observar en la Fig. 5.4 el flujo vehicular(ntimero de vehiculos saliendo) de


la seccién 3, carri] 2, para el CVD result6é ser diferente al del CVA. Para el primero el flujo
36 Capitulo 3. Prachas de simulacién

vehicular fue mayor debido a que los vehiculos viajaban a una mavor velocidad. pero esto no
significd que se redujera la fila de espera a la entrada del carril 2. al contrario. la fila de espera
era mas grande que para el CVA. Lo que sucedfa era que al viajar a ama mayor velocidad se
debia guardar una mayor distancia de seguridad entre los veliculos. v esto ocasionaba que
se colocaran menos vehiculos en el carril 2 v que la fila de espera fuera grande,

Con el aumento del ntimero de vehiculos que entraban a la carretera se reducia la fila de
espera. pero se obligaba a que se viajaran a una menor velocidad. lo que provocaba mayor
congestionamiento. (Ver Fig. 5.5).
Secerin t caret Secewn 1. carl 2
600) 180

180
s00|
140

400 120

i
8 900)
i.
2
& ae
200) o

“0
100
20

°0 500 1000 «1800-2000 90 $00 1000—«1800~—~—« 2000


tiempo {e09] tiempo [t¢9]

Figura 5.5: Filas de espera

Los efectos en las velocidades de las secciones del carril izquierdo fueron los mismos para
el CVD y el CVA, debido a que a ninguna seccién de dicho carril entraban vehiculos por
medio de cambios de carril. y por lo tanto el flujo vehicular y la fila de espera formada fueron
iguales para ambos casos.

Con los resultados de estas pruebas, para estas densidades de entrada en particular, se pudo
notar que cuando se trataba de aprovechar al maximo la capacidad en el carril destino al
mismo tiempo se aumentaban los tiempos de viaje, ya que se disminufan las velocidades a
las que se debia transitar.

Es necesario aclarar que el usuario es el encargado de decidir cual de los dos criterios se
adapta mejor a lo que constituye un cambio de carril en su diseno de AHS.

El CVD y el CVA pueden considerarse como dos casos extremos. va que un conductor decide
si adopta o no la velocidad del carril destino durante el intervalo de muestreo, o bien puede
ser un caso intermedio, es decir, puede ser que al inicio del periodo de muetreo el conductor
entre al carril con la velocidad de origen, y que acelere o desacelere para que al final del
periodo adopte la velocidad del carril destino. La solucidn de este caso no se exploré en este
trabajo dedibo a que quedaba fuera de los objetivos de esta tesis. pero conduce también a
un sistema de ecuaciones acopladas, cuyos coeficientes no son dificiles de calcular una vez
5.3. Salida de una autopista 37

conocidas las expresiones para los casos desacoplado y acoplado.

Cuando hay cambios de carril. v los vehiculos que pasan a través de ellos viajan a las mismas
velocidades, el resultado del calculo de la regla voraz mediante cualquiera de los dos criterios
es el mismo. En cambio, cuando en los carriles se viaja a velocidades considerablemente
diferentes. los cambios de carril influyen de forma directa sobre los Hujos vehiculares. y por
consiguiente sobre los congestionamientos y las colas de espera.

5.3 Salida de una autopista

Para esta prueba se consideré una topologia como la mostrada en la Fig. 5.6.

Sas. 252
-{ h_

Figura 5.6: Salida de una autopista

El tiempo total de simulacién fue de 1800 segundos con flujos de entrada uniforme que
arribaron a la entrada de la autopista en los primeros 1000 segundos de la simulacién. Para
los dos experimentos se redujo el flujo vehicular a Ja salida de la seccién 6. con el propésito
de que el carril se congestionara y de esta forma poder ver los efectos a partir de CVD y
CVA.

Los resultados de las simulaciones indican que se siguiéd el mismo patron que fue observado
en el cambio de carril en la estructura normal.

Para el CVA. los vehiculos en 3. 1 que hacian cambio de carril a la derecha demandaban mas
espacio en el carril 2, ya que su calculo estaba en funcién de la velocidad a la que se viajaba
en el carril 1, y dicha velocidad era la maxima. Al reservarse mas espacio. la velocidad en el
carril de destino decrecid, lo que provocéd un mayor congestionamiento. (Ver Fig. 5.7).

Si se compara el CVD con el CVA segin las grdficas de la Fig. 5.7. en el primero se originé
un menor congestionamiento en el carril de salida debido a que las velocidades resultantes
fueron mayores. En términos del flujo vehicular se pudo apreciar que éste fue mayor para el
CVA, debido a que salia un mayor numero de vehiculos de la seccién 3.2. pero a una menor
velocidad que para el CVD.

También se pudo observar que poco antes de los primeros 500 segundos las velocidades en
el carril de salida (seccién 5) empezaron a decaer de forma similar para el CVA y el CVD.
Esto origind que las graficas de los flujos vehiculares fueran muy parecidas para ambos casos
de estudio.
38 Capitilo 3. Prnohas de simulacion

Seccion 3 cara 2 Secciin


J ca 2 Seccnon
3 2a712

— tv i
~~ ova! ||
32 ||
3
2
33
$ 55t'C
8 é
3 10) ~
sI .
0
0 500 tee 1500
tempo [seg] tiempo (ses?
Seccién 5 Secciin5
% 35 }
3
30 ry
33 3$05
3” | 3°
3 Lal 04
33 3B$15} =503
5 Bg: 33
3 103 £02
g
| 8 Sot
0!
0 500 10001500 q 500 10k 15000
tiempo (seg) tiempo [seg"

Figura 5.7: Efectos CVD vy CDA

5.4 Entrada a una autopista

Para esta prueba de simulacién se empleo la topologia mostrada en la Fig. 5.8. En el tramo

See 1 Seo 2 Sec 3 Sec 6 son?


+ i re I

Figura 5.8: Entrada a una autopista

principal se colocé un flujo vehicular mayor al que se hizo pasar por el carril de la seccién
4. El tiempo total de la simulacién fue de 1500 segundos. con periodos de muestreo de 13.5
segundos, y los dos flujos vehiculares entraron durante los primeros 700 segundos. Para
permitir que un mayor numero de vehiculos del tramo principal tuviera acceso a 3, 1 se eligis
un valor de a = 0.9 para la restriccién del espacio disponible.

En este experimento se logré observar que el empleo de los conceptos ocasionaron diferentes
comportamientos sobre el tramo principal y el carril de entrada. ¥ por consiguiente en la
formacidn de filas de espera. (Ver Fig. 5.9)
5.1. Entrada a una autopista
39

Seccion Seccion 4

ov " '
-- CVA 3 ‘
i it
3 it
£10 1)

0 Loy) 3 1

=
1 500 1000 1500 050010001500
Seccidn 3 carl 1 Section 3 carr 1 Seccicr 3 sat *
20 15

=
0 S
- y | (Fr.
Sally \
3H En 2 | ‘
3 3
a 3 $ my
3210 3 10
9
34
>
=
6 0
0 500 1000 1500 0
Seccién
3 carrd 2
04
3H .
3 03
3%
> E Q
= 2) ‘
3 1 q g02 °

£10
| haSn S01
eel
4 Q 0
0 500 1000 15000 50 00015000 1acd
tiempo (seg) tiempo [segt temps

Figura 5.9: Efectos de CVD v CVA

Para el caso del CVD se formé un mayor congestionamiento en el tramo principal, debido
que el espacio de los vehiculos que salian de 3, 2 estaba en funcidn de la velocidad en 3. lla
cual result6 ser baja. v por consiguiente los vehiculos demandaban poco espacio y se lograba
colocar a un mayor numero de ellos en 3, 1.

Las ventajas del CVA se tradujeron en una fila de espera nula a la entrada del tramo principal.
y un menor congestionamiento en éste. Pero. al permitir que en el traimo principal se viajara
con mayor fluidez. se provocé que el carril de entrada se congestionara y se originara una
cola de espera.

En cuanto a los flujos vehiculares del tramo principal, seccién 3. 1. se pudo observar que para
el CVD empezé a decrecer aproximadamente a los 650 segundos del tiempo de simulacién.
incluso llegando a ser menor que el flujo para el CVA. Esto se debié a que en 3, 1, para el
CVD. se empezé a alojar a un mayor mimero de vehiculos. pero saliendo a una velocidad tal
que permitia una circulacién de forma fluida. Esto origindé que los vehiculos que tenfan que
40 Capitulo 5. Prncbas de simulacion

pasar por cl tramo principal lo hicieran en un menor fempo en contparacion con el


CVA.

5.5 Entrada vehicular uniforme y exponencial

Las pruebas de simulacién para las entradas de tipo uniforme y con distribucién exponencial
se llevaron a cabo al considerar nuevamente la autopista de un carril mostrada en la Fig. 5.1.

El tiempo total de la simulacién fue de 2500 segundos. con periodos de muestreo de 15.3
segundos y para ambos tipos de entrada se empleé una taxa promedio de arribos de 50
vehiculos por minuto. Los resultados de dichos experimentos se pueden ver en la Fig. 5.10.

Flip oe entrada Cola de sacera


12000 250.
: , =~ UNIF|
a — EXP |
s0000} | pee
200]
A
an

3: :Bis0 ‘
mk
2:
Erol: : :
e '
.
'
50
'

°. Oo ' \L _.
500, 1000 1500 2000-2500. % 500 1000 1800-2000 2500
tempo ‘sag terres 909;

Figura 5.10: Seccidn 3, carril 2

En las grdficas de la Fig. 5.10 se muestra el mimero de vehiculos que arribaban a la rampa de
la autopista para una entrada uniforme (UNIF) y otra con distribucién exponencial (EXP).
Se puede observar que efectivamente se pudo conseguir hacer que la eutrada vehicular fuera
un fendmeno aleatorio. y de esa forma hacer que la simulacién se acercara mds a lo que
sucederfa en una situacion real.

Para comprobar que la entrada se comportara de acuerdo a una distribucién exponencial se


hizo lo siguiente: a cada corrida de SmartCap se le calculd el promedio de los vehiculos que
arribaban a la entrada durante un periodo de muestreo, y se pudo observar que la media
convergia mds hacia un cierto valor cada vez que se aumentaba el mtimero de muestras.
Ese valor resulté ser la tasa promedio de arribos, concluyéndose que la entrada tenfa una
distribucién exponencial.
Capitulo 6

Conclusiones

En esta tesis se expuso la teorfa de trdfico vehicular basada en la abstraccién de que los
vehiculos que circulan a través de una autopista lo hacen con base en una serie de maniobras
denominadas actividades. Con ayuda de estas actividades se representa el espacio que fos
vehiculos demandan para poder alojarse en la autopista. Este espacio se calcula para incluir
el espacio de seguridad que se debe conservar entre vehiculos. Asimisnio se expuso la técnica
de la regla voraz o greedy rule. ideada con el propdsito de controlar los flujos vehiculares. de
tal forma que se aprovechara eficientemente el espacio ofrecido por la carretera, tratanto con
ello de reducir a la vez los tiempos de viaje.

En esta tesis se realizan algunas modificaciones al céddigo SmartCap. que es una aplicacién
de simulacién que se deriva de dicha teorfa de trdafico. La versién anterior de SmartCap
presentaba la desventaja de que el calculo de la demanda de espacio estaba en funcién de la
velocidad maxima. Esto provocaba un gran desperdicio de espacio debido a que al momento
de hacer los cdlculos para la regla voraz. se consideraba que todos los vehiculos sin excepcion
viajaban a la velocidad maxima permitida, y por ello se demandaba mis espacio del necesario.
originando que los resultados arrojados por las simulaciones fueran conservadores.

Para eliminar esa desventaja se decidid modelar el espacio que demandan las distintas ac-
tividades como una funcién de la velocidad real a la que viajaba cada vehiculo. Al modelar
el proceso de cambio de carril se lleg6 a dos casos. Al primero de ellos se le denominé de
caso de velocidades desacopladas (CVD) y surge de considerar que los vehiculos que hacen
actividades que implican cambio de carril adoptan la velocidad del carril de destino. Al
otro caso se le denominé de las velocidades acopladas (CVA) v se derivé de asumir que los
vehiculos conservan la velocidad del carril de origen durante las actividades de cambio de
carril.

Las modificaciones hechas en el presente trabajo mostraron los diferentes impactos sobre
las colas de espera y flujos vehiculares originados por los CVD v CVA. Es necesario aclarar
que no existe un criterio que nos indique que una consideracién es mejor que la otra por

41
42
Capitulo 6. Conchisiones

el simple hecho de obtener una mayor reduccién en la cola de espera v mejores tiempos de
viaje. El encargado de determinar cual es la consideracién que mejor se ajusta al sistema de
autopistas bajo estudio es el misino disenador.

Otro aspecto que es muy importante remarcar es que cuando se tienen altas demandas para
entradas vehiculares. la regla voraz trata de maximizar la ocupacidn del expacio disponible +
puede llegar a permitir exceso de entrada lo que conduce a congestionamientos que reducen
sensiblemente la velocidad de los vehiculos en la carretera. Es por ello que se debe tener
especial atencién con la forma de disenar los planes de entrada v procurar el diseho de otras
reglas de control de la velocidad que no tengan este tipo de problemas.

La otra mejora realizada a SmartCap fue implementar una entrada vehicular aleatoria. Se
optd por tomar una distribucién de probabilidad de tipo exponencial pues ésta representa
apropiadamente los fenédmenos de espera en colas. Esta modificacion permitié que las si-
mulaciones fueran mas realistas pues consiguen reproducir el fendmeno aleatorio de arribo +
salida de vehiculos a las rampas de entrada.

Como se indica al inicio de este trabajo. la principal justificacién de desarrollar una herra-
mienta de simulacién como Smart Cap radica en el permitir predecir. lo mas aproximadamente
posible, el comportamiento de un sistema de autopistas. Las modificaciones implementadas
en SmartCap permiten mejorar esta capacidad de prediccién. Con base a los resultados
de las simulaciones se puede concluir que se cumplieron con los objetivos establecidos en
el trabajo. ya que se cubrieron algunas de las carencias mas importantes detectadas en la
version original de SmartCap.
Bibliografia

[1] M. Broucke and P. Varaiva. A theory of traffic flow in antomared highway system.
Transportation Research. Part C: Emerging Technologies. 4(4):181-210. 1996.

[2] Luis Alvarez. Activity based highway capacity analysis: A case study. Proceedings of
IEEE Conference on Intelligent Transportation Systems. pp. 153-158. 1997.

[3] M. Broucke. P. Varaiva. M. Kourjanski and D. Khorrambadi. SmartCap User's Guide.


Department of Mechanical Engineering, UC at Berkelev. Mav 1996.

[4] G. Gomes and L. Alvarez. Additions to the SmartCap User's Guide.Department of


Mechanical Engineering. UC at Berkeley. October 1997.

[5] Athanasios Papoulis. Probability. Randon Variables. and Stochastic Processes.


McGraw-Hill. New York. Third edition, 1991.

J. Stéer and R. Bulirsch. Introduction to numerical analysis. Springer-Verlag. New York.


1980.

[7] Shoichiro Nakamura. Andlisis numérico y visualizacién. Prentice Hall. México. primera
edicion. 1997.

[8] A.D Aleksandrov. A.N. Kolmogorov. M.A. Laurentiev v otros.La matematica 1: su


contenido. métodos y significado Alianza Universidad. Espana. quinta edicién. 1981.

[9] Francisco J. Ceballos. Enciclopedia del lenguaje C. Addison-Wesley Iberoamericana.


Espania. primera edicion. 1993.

43
Apéndice A

SmartCap: Manual del usuario

SmartCap es un meso-simulador de trafico vehicular que permite estudiar la capacidad en


sistemas de autopistas. Esta aplicacién permite al usuario especificar la topologia de la
autopista por medio de secciones interconectadas con sus respectivos carriles.

El cddigo fuente de SmartCap fue escrito en lenguaje C estdndar v puede correr tanto en
estaciones de trabajo como en computadoras personales.

A grandes rasgos se puede decir que la configuracidn de la autopista v las caracteristicas de


los flujos vehiculares se deben especificar en un archivo de tipo ASCH Hamaco de entrada o de
usuario. Los planes que integran el TMC son archivos también escritos cu lenguaje C y deben
ser compilados junto con el resto del cddigo fuente de SmartCap para generar un programa
ejecutable. Al término de la ejecucién de SmartCap, bajo los parametros especificados en el
archivo de usuario. se generan cinco archivos diferentes en formato MatLab con los resultados
de Ja simulacién.

El presente capitulo es un breve manual del usuario que tienc la inteucién de ser un com-
plemento de [3] y {4]. En este manual se exponen las bases necesarias para poder editar los
archivos que contienen los planes TMC y el archivo tipo make necesario para la compilacion
de esos archivos. También se incluyen algunas funciones que va existian en la versién ante-
rior, asf como las nuevas funciones que se emplean cuando las actividades son funcion de la
velocidad real!.

A.1 Estructura de archivos

Los archivos que integran SmartCap se encuentran distribuidos en los siguientes directorios:

Ver capitulos 2 y 3.

44
A.2. Compilacion 45

bin/ contiene el programa ejecutable scap para estaciones de trabajo Sun


data/ - contiene ejemplos de archivos de usuario
doc/ - contiene la documentacién del sistema
includes/ - contiene archivos para incluir librerias externas
libraries/ - contiene todas las librerias para estaciones de trabajo sim sparc
src/ - contiene los directorios de los archivos fuente:
srce/cap/ - contiene las rutinas principales de SmartCap
sre/lp/ - contiene cédigo fuente de la solucién para el problema de programacién lineal
src/matlab/ - contiene los scripts de matlab para graficar
src/network/ - contiene el cédigo de ruteo basado en el algoritmo Bellman-Ford
src/user/ - contiene los archivos de los planes TMC del usuario

A.2 Compilacién

SmartCap se compila desde el directorio scap/src/user empleando un archivo tipo make que
debe editarse cada vez que se implemente un nuevo plan TMC. Cada que se crea un archivo
tipo make se deben de especificar los nombres de los archivos donde =e escribieron los planes
de actividades, velocidades v de entrada. asi como el nombre ¥ la ruta de acceso donde se
guardara el archivo ejecutable. Debido a que cada vez que xe compila se requieren cuatro
archivos, se sugiere que cada uno de ellos tenga un prefijo que corresponda con el archivo
de] que se trate. Para ilustrar esto. considérese que se tiene un archivo tipo make al cual se
le ha denominado makeEjemplo. vy que en una parte de él se encuentran las siguientes lineas:

ACT = actEjemplo.c
TMC = tmcEjemplo.c
DEST = ${BASE}/bin/sun/exeEjemplo.exe
VEP = vepEjemplo.c

actEjemplo.c es el nombre del archivo fuente donde se definen las actividades para una
determinada simulacién. tmeEjemplo.c es el archivo fuente donde se encuentra especificado
el plan de actividades. que en vepEjemplo.c se encuentran los planes de velocidades y de
entrada. DEST determina el nombre y el directorio destino del ejecutable. En el ejemplo
anterior sdlo se muestran las cuatro lineas que deben ser modificadas en el archivo tipo make
y es recomendable que las demas sean dejadas de la misma forma en que fueron encontradas.

Una vez editado el archivo Makefile la forma de compilarlo es la siguiente:

make -f MakeEjemplo

De esta forma se compilaran los archivos actEjemplo.c. tmcEjemplo.cv vepEjemplo.c, dejando


el programa ejecutable en el lugar apropiado.
46 Apéndice A. SmartCap: Manual del usuario

A.3 Ejecucion

Una vez que se genera el programa ejecutable. se requiere que el archivo de usuario esté
ya editado con las especificaciones de la topologia de la autopista. tipos de flujo vehicular,
condiciones iniciales. etcétera.

SmartCap se corre con el comando scap desde el directorio data. que es el lugar donde se
debe encontrar el archivo de usuario.

Ejemplo:

scap exeEjemplo inEjyemplo

donde ezeEjemplo es el nombre del programa ejecutable sin la extensién exe e inEjemplo es
el nombre del archivo de entrada.

A.4_ EI archivo de entrada

En el archivo de entrada, también conocido como archivo de usuario. se encuentran especi-


ficados los flujos vehiculares. la topologia de la autopista. las condiciones iniciales y otros
pardmetros de la simulacién. Todos éstos deben escribirse de acuerdo a una notacién pre-
definida, la cual debe ser interpretada adecuadamente por SmartCap. Los pardmetros de
la simulacidn se especifican en el archivo de entrada, y estan divididos en ocho secciones y
el inicio de cada una de ellas se indica con la palabra SECTION. seguida por SMARTCAP. LP,
CARTYPE, HIGHWAY. FLOW.IC.INFLOW o OUTFLOW. dependiendo de la seccién de que se trate, y
pueden estar escritas en cualquier orden.

SECTION SMARTCAP

Esta expresién indica el comienzo de la seccién SmartCap y esta compuesta por los pardmetros
TIME, STEPTIME. FLOWOUT, ACTOUT. COMPOUT, DEBUG, VMAX y ROOM. explicacos a continuacién.
SmartCap interpreta que lega al final de una seccién cuando encuentra nuevamente la pa-
labra SECTION.

TIME [Duracién]

Esta sentencia define el tiempo en segundos que SmartCap simular.


Awl El archivo de entrada 7

STEPTIME [1]
Esta sentencia define que el tiempo de muestreo de cada simulacién cs de T segundos. Hay
que recordar que el tiempo de muetreo debe de cumplir con la restricvi6n (2.2),

FLOWOUT [Bandera]

Esta sentencia ordena al simulador que genere el archivo de salida con terminacion *_f.m’.

ACTOUT [Bandera]

Esta sentencia ordena al simulador que genere el archivo de salida cou terminacién 'a.m’.

COMPOUT [Bandera]

Esta sentencia ordena al simulador que genere el archivo de salida con terminacién ‘_c.dat’.

DEBUG [Bandera]

Esta sentencia ordena al simulador que genere el archivo de salida cou terminacién ‘_af.m’.

VMAX [Velocidad]

Esta sentencia especifica la maxima velocidad a la que pueden viajar los vehiculos.

ROOM [roon]

Esta sentencia se emplea para evitar que exceda la capacidad de algina seccién de la au-
topista debido a una imprevista demanda de espacio por parte de las actividades. Se incluye
pues algunas actividades complejas. por ejemplo. la actividad de separacion de pelotones
pueden producir que al pasar de una seccidén a otra, el mismo niimero de vehiculos ocupe
mayor espacio. Aunque una modificacién al plan de actividades podria resolver este problema
la variable ROOM permite reservar una proporcidn de espacio para este tipo de situacién.
48 Apendice A. SinartCap: Mannal del nsnario

SECTION LP

Esta expresién indica el inicio de la seccién LP que esta integrada por LPNTIMES. LPTIME y
LPV. los cuales son pardmetros para la solucién de la programacidn lineal implementada en
SmartCap. En este trabajo estos pardAmetros no se utilizan. para mavores detalles consultar
[2].

SECTION CARTYPE

Esta expresion indica el inicio de la seccidn CARTYPE y se encuentra formada por los parametros
CARTYPE, LENGHT. WIDTH. AMAX. AMIN. COEF1 v COEF2. Estos pardmetros declaran las carac-
teristicas de los tipos de vehiculos que van a intervenir en la simulaciéu v son explicados a
continuacién.

CARTYPE [Nombre]

Esta sentencia indica el nombre que se le va a dar al tipo de vehiculo qne se esta declarando.
El nombre debe ser especificado por medio de una cadena de caracteres.

LENGHT [Largo]

Esta sentencia indica cuanto mide de largo el vehiculo que se esta declarando. Esta distancia
se debe especificar en metros.

WIDTH [Ancho]

Esta sentencia indica cuanto mide de ancho el vehiculo que se esta declarando. Esta distancia
se debe especificar en metros.

AMAX [Aceleracién]

Esta sentencia indica la maxima aceleracién permitida para el vehiculo que se esté declaran-
do. Las unidades de esta especificacién estan en metros por segundo.
A.d. El archivo de entrada 19

AMIN [Aceleracién|

Esta sentencia indica la minima aceleracién permitida para el vehienlo que se esta declarando.
Las unidades de esta especificacion estan en metros por segundo.

COEF1 [coef iciente]

Esta sentencia indica el valor del coeficiente kg, cuando se considera que las actividades
estan en funcidn de la velocidad real.

COEF2 [coeficiente]

Esta sentencia indica el valor del coeficiente kg2 cuando se considera que las actividades
estan en funcidn de la velocidad real.

SECTION HIGHWAY

Esta expresién indica el comienzo de la seccién HIGHWAY. la cual est formada por los
pardmetros HIGHWAY. LANE. GEOMETRY. PIN, y CONNECT. Los pardimetros referentes a la forma
de la seccién no influyen de forma directa en la simulacién cel trafico vehicular. ya que sdélo
son empleados por una aplicacién denominada SmartPath. la cual coustruve una grafica de
la topologia de la autopista.

HIGHWAY [secNon]

Esta sentencia indica el nombre que se le asigna a Ja seccién que se esta declarando.

LANE [numCarr] [Modo] [Tipo] [OrigDest]

Esta sentencia define las caracteristicas del carril perteneciente a la seccién que se esta
declarando. numCarr es el ntimero con el cual se identifica a un carril dentro de una seccién,
en orden de izquierda a derecha. Modo indica el tipo vehiculos que van a pasar por el carril. es
decir, vehiculos bajo control automatico. manual o transitorio. los cuales se pueden especificar
respectivamente por AUTOMATED. MANUAL o TRANSITION. Tipo indica si el carril tiene barreras,
sélo algunas o ninguna y la forma de especificarlo es mediante ALL_BARRIERS. SOME_BARRIERS
o NONE_BARRIERS. El parametro OrigDest puede estar especificado por SOURCE o SINK. esto
50 Apéndice A. SmartCap: Maimial del usuario

con el fin de indicar si se trata de un carril por donde se va a iugresar o salir de la autopista.
respectivamente.

GEOMETRY LINE [Longitud]

Esta sentencia indica que la seecién que se esta declarando es recta v que su longitud medida
en metros esta especificada por el paradmetro Longitud.

GEOMETRY ARC [Longitud] [Arco] [LR]

Esta expresidn indica que la seccién que se esta declarando tiene una curvatura con un Arco
(medido en radianes) con direccién a la izquierda (L) 0 a la derecha (R).

PIN [secNom] [X] [Y] [Z]

Después de que todas las secciones hayan sido declaradas se debe especificar un punto que
sirva de referencia. y la forma de hacerlo es mediante la sentencia PIN. El pardmetro secNom
es el nombre de la secci6n y X. Y y Z son sus coordenadas cartesianas. Comtnmente el punto
de referencia es el origen, es decir (0, 0,0).

CONNECT [seca] [k] [1] [secB] [m] [n]

Esta sentencia sirve para indicar que el carril k de la seccidn secA esta conectado al carril
m de la seccién secB, y que el carril k+1 de secA esta conectado al carril m+1 de secB, y
asi sucesivamente hasta llegar a que el carril 1 de secA esta conectado al carril n de secB.
Hay que sefialar que secA es la seccién aguas arriba, en tanto que la otra es la secci6n aguas
abajo.

SECTION FLOW .

Esta seccién indica el inicio de las seccién FLOW, la cual a su vez esta compuesta por
pardmetros que inician con la palabra FLOW y que definen los tipos de fAlujos vehiculares.
A.d. El archivo de cutrada 51

FLOW [Nombre][tipo]/secNom][numCarr]

Esta sentencia define un tipo de flujo vehicular. donde argumento Nombre cs el nombre con
el cual se le va a distinguir de los demas flujos. el argumento tipo pnede ser cualquiera de
los tipos de vehiculos especificados en la seccién CARTYPE. Los pardmetros secNom y numCarr
se refieren a la seccidn y carril de origen. respectivamente.

SECTION INFLOW

Esta expresién indica el inicio de la seccion INFLOW, la cual esta compucsta por pardémetros
que inician con la palabra FLOW y que definen caracteristicas de los Hujos vehiculares. Es
importante aclarar que estas caracteristicas sirven como informacion complementaria a la
secci6n FLOW anteriormente descrita.

FLOW [Nombre] [t1]{tF}[tasa] [peso] [modo] {t ipo]

Esta sentencia afade las caracteristicas complementarias que posee el Hujo identificado por
Nombre, definido con anterioridad en la seccién FLOW. Los parametros tI v tF corresponden
al los tiempos inicial y final. respectivamente. en que va a estar entrado el flujo vehicular. El
pardmetro tasa se refiere a la tasa promedio de arribos a una secciou de entrada, mientras
que modo se refiere al tipo de vehiculos que van a entrar (manual o automated) y tipo ala
forma de entrada. la cual puede ser uniforme o exponencial (UNIF. EXP).

SECTION OUTFLOW

Esta expresién indica el inicio de la seccién OUTFLOW, la cual esta compuesta por pardametros
que empiezan con la palabra OUTFLOW.

OUTFLOW [secNom][numCarr] [Max] {modo]

Esta sentencia especifica los pardmetros para las secciones de salida de la autopista. secNom
y numCarr se refieren a el nombre de la seccién y el numero de carril. respectivamente. de la
autopista. El parametro Max se refiere al rango maximo de salida. el cnal va a estar medido
en vehiculos por hora. mientras que modo se refiere al tipo de vehiculos que van a circular
(manual 0 automated).
52 Apeéndice AW SimartCup: Mannal del usnario

A.5 Funciones de usuario

Las funciones que se exponen a continuacién pueden ser enipleadas al momento de implemen-
tar los planes de velocidades v entrada que el usuario esté disefiando para la antopista bajo
estudio. Las funciones que tienen entre paréntesis la palabra roid no reciben argumentos.

GetTime(void)

Esta funcién devuelve el ntimero de segundos transcurridos desde que dio inicio la simulacién.

GetTimeStep(void)

Esta funcién devuelve el tiempo de muestreo que fue especificado en el archivo de entrada.

GetNumActivities(void)

Esta funcién devuelve el ntimero de actividades que fueron declaradas en el plan de activi-
dades.

GetNumTheta(void)

Esta funcién devuelve el ntiimero correspondiente a los flujos vehiculares declarados en la


seccién FLOW de! archivo de entrada.

GetNumF (void)

Esta funcién devuelve el ntimero correspondiente a los flujos vehiculares declarados en la


seccién INFLOW del archivo de entrada.

GetSectionName(int hwLaneId)

Esta funcion devuelve el nombre de la seccién correspondiente al identificador del carril


hwLaneld.
A.5. Funciones de usuario
53

GetFSectionName(int fId)

Esta funcién devuelve el nombre de la seccidn de entrada correspondicute al identificador de


flujo £14.

GetThetaName(int thetaId)

Esta funcion devuelve el nombre del flujo correspondiente al identificador de tipo de flujo
thetald.

GetF ThetaName(int fId, int f£ThetaId)

Esta funciéu devuelve el nombre del flujo correspondiente al identificador de flujo fId v de
tipo de flujo fThetaId.

Get ThetasExit (char +thetaName)

Esta funcion devuelve el identificador del carril destino correspondiente al flujo que tiene por
nombre thetaName.

GetLaneOffset(int hwLaneId)

Esta funcién devuelve el ntimero de carril correspondiente al identificador de carril hwlaneld


dentro de la autopista.

GetFLaneOffset(int fId)

Esta funcién devuelve el numero de carril correspondiente al identificador de flujo £14.

Get Vmax(char *secName, int laneOffset)

Esta funcidn devuelve la velocidad maxima permitida en la seccién de nombre secName v


numero de carril laneOffset.
54 Apéndice A. SmertCap: Menal del ustario

Get VNominal(void)

Esta funcidén devuelve la velocidad maxima permitida en todas las secciones de la autopista.

GetVehicleLength(char *vehicleType)

Esta funcién devuelve la longitud de un vehiculo del tipo vehicleType.

Get VehicleAmin(char *vehicleType)

Esta funcién devuelve la aceleracién minima permitida para un vehicnlo del tipo vehicleType.

Get VehicleAmax(char *vehicleType)

Esta funcién devuelve la aceleracion maxima permitida para mn vehiculo del tipo vehicleType.

Get VehicleCoefl(char *vehicleType)

Esta funcién devuelve el coeficiente kg. para un tipo de vehiculo especificado por el pardmetro
vehicleType. cuando las actividades estan en funcidn de la velocidad real.

Get VehicleCoef2(char +vehicleType)

Esta funcién devuelve el coeficiente kg para un tipo de vehiculo especificado por el parémetro
vehicleType, cuando las actividades estan en funcién de la velocidad real.

GetLenght(char *secName, int laneOffset)

Esta funcién devuelve la longitud en metros de la seccién con nombre secName y nimero de
carril laneOffset.
A.5. Funciones de usitario

en
o
GetFdemand(char *secName, int laneOffset, char *thetaName)

Esta funcién devuelve la proporcién de vehiculos por segundo que demandan entrar a la
autopista por la seccién de entrada que lleva por nombre secName v utimero de carril
laneOffset.

GetBuffer(char *secName, int laneOffset. char *thetaName)

Esta funcién devuelve el niimero de vehiculos del tipo thetaName que ne alcanzaron a entrar
a la autopista por seccion de entrada secName y niimero de carril laneOffset.

GetN(char *secName, int laneOffset, char *thetaName)

Esta funcién devuelve el ntimero de vehiculos del tipo thetaName que se encuentran en la
seccién de nombre secName v niimero de carril laneOffset.

Get V(char +secName, int laneOffset)

Esta funcién devuelve la velocidad promedio en la seccién de nombre secName y ntimero de


carril laneOffset.

GetPi(char *secName, int laneOffset, char *thetaName. char *activityName)

Esta funcidn devuelve la propocidén de vehiculos del tipo thetaName qne se encuentran rea-
lizando la actividad activityName en la seccién secName y niimero de carril laneOffset.

GetNextR(char *secName, int laneOffset)

Esta funcion devuelve el identificador del carril a la derecha. seccién aguas abajo inmediata,
de la seccién secName y nimero de carril laneOffset.

GetNextL(char *secName, int laneOffset)

Esta funcién devuelve el identificador del carril a la izquierda. secciéu aguas abajos inmediata,
de la seccién secName y numero de carril laneOffset.
56 Apéndice A. SmartCap: Manual del usuario

GetRight(char *secName, int laneOffset)

Esta funcién devuelve el identificador del carril a la derecha de Ja seccidn secName ¥ ntimero
de carril laneOffset.

GetLeft(char *secName, int laneOffset)

Esta funcién devuelve el identificador del carril a la izquierda de la seccién secName y nimero
de carril laneOffset.

GetPrevR(char *secName, int laneOffset)

Esta funcién devuelve el identificador del carril a la derecha. seccién aguas arriba inmediata.
de la seccién secName v numero de carril laneOffset.

GetPrevL(char *secName, int laneOffset)

Esta funcién devuelve el identificador del carril a la izquierda. seccién aguas arriba inmediata.
de la seccién secName y niimero de carril laneOffset.

Normal]SectionVA (char *secName, int laneOffset, int numSec, double


room)

Esta funcién asigna la velocidad a la que se debe viajar en las secciones aguas arriba de
la seccién secName, carril laneOffset, para una estructura normal como la mostrada en
la Fig. A.1. El pardmetro numSec indica el numero de secciones conectadas en serie a las
que se les habra de asignar velocidades de acuerdo al concepto de las velocidades acopladas.
El otro parametro, room, indica la proporcién de espacio libre que puede ser empleado
por los vehiculos que demandan entrar a una determinada seccién. Por ejemplo. la veloci-
dad en la seccién secB, carril 2 de la figura se asigna mediante la instruccién NormalSec-
tion(secA,2.1,1.0), y se considera que la velocidad en secA.2 ya ha sido asignada.

ExitSectionVA(char *secName, int laneOffset, int side, double room)

Esta funci6n realiza el calculo de la velocidad a la que se debe viajar en secB.1 para una
estructura de salida como la mostrada en Fig. A.2. Ese calculo se hace de acuerdo al concepto
A.5. Funciones de usuario

on
Figura A.1: Flujos vehiculares v espacios en movimiento considerados

de las velocidades acopladas. de tal forma que no se exceda Ja capacidad de secB.2 ni la de


secA,]. El pardmetro side indica que la salida es hacia la derecha o a la izquierda. y se
especifica por RIGHT o LEFT. respectivamente. Por ejemplo. considérese que se tiene una
estructura de salida como la de la Fig. A.2. Para asignar la velocidad a secB.1 se emplea la
instruccién ExitSectionVA(secB.1.RIGHT.1.0). y se considera que las velocidades en secB.2
y secA,1 va han sido asignadas.

Figura A.2: Flujos vehiculares v espacios en movimiento considerados

InputSectionVA(char *secName, int laneOffset, double alpha, int


side, double room)

Esta funcidn realiza el cdlculo de velocidades a las que se debe viajar en secA.2 y secB.1, para
una estructura de entrada como la mostrada en la Fig. A.3 El cdlculo de dichas velocidades
se hace de acuerdo al criterio de las velocidades acopladas , v se considera que la velocidad de
secA,1 ya ha sido asignada. El pardmetro alpha corresponde a la proporciéu del espacio libre
en secA,1 que va a poder ser aprovechado por los vehiculos que salen de secB.1. y el espacio
restante es para los provenientes de secA,2. Por ejemplo. para calcular las velocidades a
las que se debe circular en secB.1 y secA,2, con un valor de alpha del 70%. se emplea la
instruccién InputSectioVA(secA.1.0.7,RIGHT.1.0).

Figura A.3: Flujos vehiculares vy espacios en movimiento constderados


58 Apéudice A. Smart ‘ap: Manual del usuario

NormalSectionVD(char *secName, int numSec. double room)

Esta funcién asigta las velocidades a todos los carriles en las seccioues aguas arriba de la
seccién secName para una estructura normal como la mostrada en la Fig. A.1. El calculo de
las velocidades se hace de acuerdo al concepto de las velocidades desacopldas. En compara-
cién con NormalSectionVA. esta funcidn no recibe como arguimento al carril de la seccién
bajo andlisis. debido a que simultaneamente hace el célculo de Jax velocidades de todos los
carriles que conforman la seccién. Por ejemplo, para asignar lax velocidades en los carriles
de la seccién secB se emplea la sentencia NormalSectionVD(secA.1.1.0). + se considera que
las velocidades de todos los carriles de secA ya han sido determinadas.

ExitSectionVD( char *secName, double room)

Esta funcién realiza el cdlculo de las velocidades en todos los carriles de secB. para una
estructura de salida como la mostrada en la Fig. A.2. El cileulo se hace de acuerdo al
concepto de las velocidades desacopladas. Por ejemplo, para calcular la velocidad de todos
los carriles en la seccién secB. se emplea la sentencia ExitSectionV
Di secB. 1.0). ¥ se considera
que las velocidades en secA.1 v secC.1 ya han sido determinadas.

InputSectionVD(char *secName, double alpha. double room)

Esta funcién realiza el cdlculo de las velocidades en secB.1. secA.2 v secC.1. para una es-
tructura de entrada como la mostrada en la Fig A.3. Los cdlculos de dichas velocidades
se hacen a partir del concepto de las velocidades desacopladas. Por ejeniplo. considérese la
Fig A.3, para hacer asignar las velocidades a secB, secC y secA.2. se emplea la sentencia
ExitSectionVD(secA.1.0). y se considera que la velocidad en sec.A.1 va ha sido determinada.

A.6 Especificacién de Actividades

Las actividades deben definirse en un archivo por separado. en el cual deben de incluirse
tres secciones indetificadas por las palabras ACTFILE, ACTIVITY v CODE. La primera seccién
define el nombre del archivo donde se especifican las actividades. el cal debe de concordar
con el archivo especificado tanto en el archivo tipo make. como en el archivo de entrada.
Ejemplo:

#ifdef ACTFILE
ActivityFile( actEjemplo )
#endif
ESTA TESIS NO SALE
A.6. Especificacion de Actividades DE LA BIRIIOTECA aq
Sak

En Ja secci6n ACTIVITY se definen el nombre y tipo de las actividades que van a poder
realizar los vehiculos. Ejemplo:

#ifdef ACTIVITY
Activity( Nombre, tipo)
#endif

El argumento Nombre debe ser una cadena de caracteres que sirva para distinguir una activi-
dad de las demas que se estén definiendo. El parémetro tipo. como su nombre lo indica, sirve
para definir el tipo de actividad. el cual puede ser straight. changeright o changeleft.
El primer tipo se refiere a que la actividad que realiza el vehiculo solo demenda espacio en
el carril donde se encuentra. Los dos tipo restantes se refieren a las actividades que implican
cambio de carril a la derecha o a la izquierda. respectivamente. y por lo tanto demandan
espacio en dos carriles. En la seccién CODE se especifican la cantidad de espacio y tiempo
que demanda cada actividad definida en la secci6n ACTIVITY. Cabe aclarar que el espacio se
refiere a la distancia (en metros) que la actividad requiere en un carril. + que el tiempo son
los segundos que la actividad toma para realizarse.

Las adiciones que se hicieron a SmartCap requieren que en esta parte también se especifiquen
los coeficientes kp»; cuando se desea que las actividades sean funcion de la velocidad real.
Ejemplo:

#ifdef ACTIVITY
Activity( cruise, straight)
#endif

#ifdef CODE
void
cruise( ActivityData *a)
{
a->s = 10 * a->T;
a->sRight = 0;
a~>sLeft = 0;
a->duration = a->T;
a->coef1 = GetVehicleCoef1( a->vehicleType );
a->coef2 = GetVehicleCoef2( a->vehicleType );
a->coef3 = GetVehicleLenght( a->vehicleType );
}

En este ejemplo se define a la actividad cruise, la cual ocupa ua longitud de 10 metros en


su propio carril. por un espacio de tiempo igual al periodo de muestreo. Se puede observar
que también se hace el empleo de funciones de usuario que avudan a recuperat los coeficientes
kg; antes mencionados.
at
60 Apéndice A. SuartCap: Manual del usnariv

Como se habra notado. todos los datos referentes a las actividades se encucnutran almacenados
en una estructura Hamada ActicityData. la cual se va actualizando en cada tiempo de
muestreo para cada tipo vehiculo. Otros datos que podrian ser importantes v que pueden
obtenerse de ActivityData son:

t tiempo actual de la simulacién


Vv velocidad donde la actividad es iniciada
vRight velocidad en el carril a la derecha
vLeft velocidad en el carril a la izquierda
L longitud de la seccién
T periodo de muestreo
vehicleType tipo de vehiculo
thetaName [128] tipo de flujo
sectionName [128] nombre de la seccion donde la actividad se realiza
laneOffset carril donde la actividad se realiza
coefl coeficiente kg
coef2 coeficiente kp.
coef3 coeficiente kp3

A.7 Especificacién de los planes TMC

Como se vio en el capitulo 2. el centro de control de trafico o TMC esta integrado por los
planes de actividades. velocidades y entrada. El usuario es el encargado de disefiar dichos
planes, procurando que se respeten las restricciones referentes a la proporcién de actividades
y capacidad de la autopista bajo estudio.

Las implementaciones de los disefios de los planes TMC de SmartCap se hacen mediante
las funciones de usuario expuestas en este capitulo, las cuales fneron escritas en lenguaje C
estandar. Los planes TMC también se escriben en C. lo cual representa una gran ventaja, ya
que hace posible que se puedan emplear todas las herramientas de programacién ofrecidas
por este lenguaje.

Ademias de las funciones de usuario ya mencionadas. existen dos macro-instrucciones que son
de gran utilidad para la implementacidn de los planes TMC. La primera macro-instruccién
es HW_FOR_ALL_SECTIONS (secId). la cual equivale a un ciclo for. donde el pardémetro secId
representa el identificador de una seccién dentro de la autopista. La otra macro-instruccién
que permite hacer ciclos en una seccién definida por secId. carril laneId es
HW_FOR_ALL_LANES_IN.SECTION(secId,laneId,j). donde j es el indice del numero de ca-
triles, empezando de cero.
e <m
Apéndice B

El parser de SmartCap

Los pardmetros bajo los que se hacen las simulaciones son especificados en un archivo ASCII
denominado archivo de entrada.

SmartCap cuenta con un analizador sintdctico o parser que se eucarga de validar el archivo
de entrada. Cada vez que se requieren cambiar los pardmetros de ese archivo es necesario
modificar el cédigo fuente del parser, con la finalidad de que las nuevas validaciones sean
tomadas en cuenta.

El archivo de entrada se encuentra dividido en 7 secciones y cada una de ellas empieza con
la palabra SECTION. seguida por otra cadena que representa el nombre de la seccién que se
quiere declarar. Cada seccion cuenta con su propia estructura o notacién. la cual se explica
detalladamente en el apéndice B. Los comentarios inician con // v terminan hasta el primer
final de linea.

Basicamente. el funcionamiento del parser de SmartCap se realiza en dos etapas. explicadas


a continuacion.

En la primera etapa se abre el archivo de entrada para verificar que todas las secciones
declaradas sean validas: se analiza palabra por palabra para ir separando en tokens e iden-
tificar de qué tipo se trata. Los tipos de tokens que pueden ser ideutificados son ntiimeros
enteros 0 reales, palabras reservadas y cadenas.

El parser ignora los comentarios. y a lo que sea diferente a éstos lo compara con una tabla
de tokens!, y si encuentra correspondencia con alguno lo valida y va en busca el siguiente.
Cuando no hay correspondencia con alguno de la tabla no se asigna valor. y se manda un
mensaje que notifica que se ha encontrado un error en dicha seccién del archivo de entrada.
v se cancela la simulacién.
ee

La tabla esta localizada en cl archive io.h

61
62 Apéndice Bo EL parser de SmartCap

En la segunda etapa: se verifica que la estructura de cada seccion esté correcta para inieializar
los parémetros de la simulaciéu. Una vez que se identifica ima seccidu se deben de leer los
valores de los parametros que la componen. El mimero v tipo de los pardmetros varian de
acuerdo a la seccién que se trate. por ejemplo. en la seccidn HIGHWAY los pardmetros de
entrada pueden ser cadenas cle caracteres v enteros. los cuales podrian definir el nombre de
la seccién. el nimero de carriles que la conforman. longitud. etcctera.

El hacer que las actividades fueran funcidn de la velocidad real y que la entrada vehicular
tuviera una distribucion exponencial. exigid modificar el céddigo fuente de SinartCap. debido
a que se planted implementarlos como nuevos parametros en el archivo de entrada.

En la primera modificacién mencionada se dispuso que los coeficientes hai. Ke.2 ¥ keg de la
ecuacion (2.10) se especificarfan como pardmetros dentro de SECTION CARTYPE de la siguiente
forma.

SECTION CARTYPE
CARTYPE passenger
LENGTH 5
WIDTH 3
AMAX 5
AMIN -5
VMAX 30
COEFi 0.036667
COEF2 0.166667

En este ejemplo COEF1, COEF2 y WIDTH representan respectivamente a los coeficientes kg.
ke2 y kez. WIDTH ya podia especificarse en la versién original de SmartCap. y para hacer
posible que COEF1 y COEF2 fueran correctamente reconocidos se les tuvo que anadir a la tabla
de tokens validos, localizada en 20.h.

static char tokenArray[] [IO_NAME_SIZE] =


{

"SECTION", /* 1 */

"COEF1",
"COEF2",
3;

Y de igual forma tuvieron que ser agregados los valores de dichos tokens en el mismo archivo.

#define I0_COEF1 94
#define I0_COEF2 95
63

i La estructura. localizada en user.h. donde se guardarian esox parametros también tuvo que
ser modificada. para que pudieran ser recuperados cada vez que se fuera requerido.

typedef struct
{
double t;

double coef1;
double coef2;
double coef3;
} ActivityData;

Por otro lado. para saber si el usuario queria que un determinado flujo entrara uniformemente
o con distribucién exponencial. se afiadid un indicador que especificaba precisamente esa
opcién. Para esto se plante6 que si un usuario deseaba una entrada vehicular con distribucién
exponencial. lo unico que tenia que hacer era escribir UNIF como tiltimo pardmetro de la
secci6én FLOW.

// flowType startTime endTime interval weight activity distribution


FLOW LHWauto 0 1000 0.83 1.0 automated UNIF

Para hacer posible lo anterior fue necesario agregar el campo *distribution a la estructura
donde se almacenaban las caracteristicas de cada flujo de entrada’.

typedef struct
{
int hwLanelId;

int *distribution;
double v3
double rho;
} ScF;

Y para poder leer las especificaciones del archivo de entrada. xe anadieron las siguientes
lineas a la funcién ParseInput localizada en el archivo utils.e.

Io_ReadString(cadena); /*Lee el tipo de distribucion*/


if (! (stremp(cadena,"EXP")))
sc.f[(counter] .distribution[counter2] = 1;
else
if(! (stremp (cadena, "UNIF")))
sc.f{counter] .distribution[counter2] = 0;

2La estructura se cnenentra en el archivo se.h.


64 Apéeudice B. EL parser de SunartCap

else
{
printf("\nBad inflow distribution");
exit (0);
+

Las anteriores modificaciones hicieron posible que las sirmulaciones pudieran realizarce bajo
los nuevos conceptos planteados en esta tesis.

También podría gustarte