ASIGNACIÓN DE TRÁFICO EN AUTOPISTAS CON … · con congestión en las que existe una red de...
-
Upload
trinhkhanh -
Category
Documents
-
view
218 -
download
0
Transcript of ASIGNACIÓN DE TRÁFICO EN AUTOPISTAS CON … · con congestión en las que existe una red de...
ASIGNACIÓN DE TRÁFICO EN AUTOPISTAS CON ALGORITMOS GENÉTICOS DISCRETIZANDO
EL CONTINUO POR ELEMENTOS FINITOS
Francesc Robusté, Eugenio Oñate y José María Ramos Escuela Técnica Superior de Ingenieros de Caminos, Canales y Puertos
Universidad Politécnica de Cataluña Jordi Girona 1-3 - 08034 Barcelona (España)
Tel: +34 93 401 7104 - Fax: + 34 93 401 7264 <[email protected]>
RESUMEN
El artículo desarrolla un modelo numérico para la asignación de tráfico en ciudades
con congestión en las que existe una red de autopistas superpuesta sobre la red de
calles. Se asume que la elección de rutas por parte de los viajeros sigue el principio
de equilibrio de Wardrop. El problema se resuelve utilizando un modelo
convencional de equilibrio para redes discretas y un modelo continuo de equilibrio.
El resultado es una función con restricciones cuyo óptimo expresa el flujo de
tráfico en condiciones de equilibrio.
El algoritmo utilizado para optimizar esta función objetivo está basado en la
Computación Evolutiva, conjunto de técnicas de resolución de problemas
complejos basadas en la emulación de los procesos naturales de evolución. Se
utiliza una malla de elementos finitos para discretizar la red de calles, lo que
permite la obtención de buenas aproximaciones sin necesidad de elaborar un grafo
de transporte para la red de calles.
Se concluye que este modelo es competitivo en tiempo de preparación y ejecución
y en precisión de los resultados y puede utilizarse como alternativo a los
procedimientos habituales de simulación del tráfico basados en la carga de una
matriz de viajes origen/destino sobre una red en la que los costes en los arcos
varían no linealmente con el flujo que transcurre por ellos.
1 EL PROBLEMA DE LA ASIGNACIÓN DE TRÁFICO
2 FORMULACIÓN DEL MODELO PARA UN CONTINUO DE CALLES Y UNA
RED DE AUTOPISTAS
Se presenta un modelo de tráfico para una ciudad cuyo sistema de transporte consiste en
una red de autopistas superpuesta sobre la red de calles. Se considera que todos los lugares
de trabajo están concentrados en un único CBD (centro de negocios) y que los hogares de
los trabajadores están situados alrededor del CBD. Así, en la hora punta de la mañana se
puede aceptar que todos los viajes se generan hacia un único destino, el centro de la
ciudad. Se asume que esta generación de viajes es uniformemente continua y que viene
expresada por una función de densidad de viajes por unidad de tiempo y unidad de área.
Se considera también que la elección de rutas por parte de los viajeros sigue el principio de
equilibrio de Wardrop: bajo condiciones de equilibrio, el tráfico se distribuye en la red de
tal forma que todas las rutas usadas entre un par O-D tienen el mismo coste y cualquier
otra ruta no usada tiene coste mayor.
Fig. 1: Modelo de ciudad
Para resolver un modelo de este tipo Yang y Yagar (1994) propusieron dividir el sistema
de transporte en dos partes. La primera parte consistente en una red densa con un gran
número de calles y la segunda parte consistente en una red de autopistas que se dirigen
hacia el centro. La primera parte puede aproximarse por un continuo bidimensional,
mientras que la segunda parte puede ser tratada como una red discreta representada por un
grafo simple.
La idea es combinar un modelo convencional de equilibrio para redes discretas (Beckmann
et al.,1956; Sheffi, 1985) y un modelo continuo de equilibrio (Sasaki, 1990). El modelo
convencional de equilibrio puede predecir el tiempo de viaje de rampa (tiempo de viaje
desde una rampa al CBD) dada la demanda de tráfico en las rampas y el modelo continuo
de equilibrio puede predecir la demanda de tráfico en las rampas dados los tiempos de
viaje en las rampas. Por lo tanto del problema de interés puede ser resuelto integrando el
modelo convencional de red de equilibrio y el modelo continuo de equilibrio.
El resultado es un problema de minimización de una función objetivo sometida a
unas restricciones. En donde f es el vector que expresa el flujo en los arcos de la autopista
(
z( , )f v
veh ) y v es la densidad de la intensidad del flujo en el continuo (h veh ). Esta
función objetivo es la suma del coste del desplazamiento por los arcos de la autopista y del
coste del desplazamiento por el continuo, de tal forma que el óptimo refleja el tráfico en
condiciones de equilibrio. Las restricciones a que está sometida la función objetivo no
hacen otra cosa que asegurar que hay continuidad del flujo en la autopista, en el continuo y
en las rampas de la autopista.
h ⋅Km
Las funciones de coste del viaje son:
t f t 1fca a a0
a
a( ) = +
α
β
(1)
en la autopista, donde es el tiempo de viaje a flujo nulo en el arco a, c es la capacidad
del arco a, f
ta0 a
a es el flujo en el arco a y α y β son parámetros, y
c x x x x( , ) ( ) ( ) ( )v a b v= + (2)
en el continuo, donde y b son escalares positivos que reflejan las características
del continuo, donde x indica el vector de coordenadas.
a( )x ( )x
La función objetivo utilizada para optimizar los costes es la siguiente:
( ) ( ) ( ){ }m in , ,,f v
z f v x t z d z c z d z d x d xa0
fa
a A0
v1 2
D= +∫∑ ∫∫∫
∈
(3)
Si el proceso de minimización de costes constituye el problema primal, el problema dual
consiste en un problema de maximización de una función objetivo, ω , que depende de una
función potencial de coste, , y del vector coste en los arcos, t. La función potencial de
coste expresa el coste del viaje desde un punto (x
λ( )x
λ( )x 1,x2) hasta el centro de la ciudad.
Para cualquier solución óptima, ( , del problema primal y para cualquier solución
óptima , , del problema dual, se cumplen las siguientes relaciones:
, )v f
( , )λ t
en cualquier punto del continuo,
min ( ) max ( ) z v, f ,t= ω λ , (4a)
v / / ( ),−∇λ (4b)
a b( ) ( )x x v+ = ∇λ , (4c)
y en la red de autopistas,
t h
t h = k K s S
a akso
s kso
a A
a akso
sa A
kso so
δ λ
δ λ
= >
≥
∈ ∈∈
∈
.∑∑
si
si
0
0, (4d)
donde:
hkso : Flujo desde la rampa s al CBD usando la ruta k
Kso : Conjunto de rutas desde la rampa s al centro de la ciudad o
λ s : Valor de la función potencial en la rampa s,(es decir, coste desde s a o); y
δ akso : 1 si la ruta k entre s y o usa el arco a, y 0 en cualquier otro caso.
Las condiciones (4b) y (4c) representan las relaciones entre el vector flujo, , y la
función potencial en el continuo,
v x( )
λ( )x : la dirección del flujo en cualquier punto es opuesta
a la dirección del gradiente de la función potencial y la intensidad del flujo es determinada
por el valor absoluto del gradiente.
Las condiciones (4d) expresan las relaciones de equilibrio para la red de autopistas: todas
las rutas usadas desde una rampa, s, al centro de la ciudad, o, tienen el mismo coste de
viaje que es igual a ( )λ s , y cualquier ruta no usada tiene un coste más alto que . ( )λ s
3 DISCRETIZACIÓN DEL CONTINUO POR ELEMENTOS FINITOS
La función objetivo del problema dual es la siguiente:
( ) ( ) ( )max , q a
2b dx dx t z dz
D 1 2 a-1
t
t
a A ao
a
ω λ λt = −− ∇λ
−∫∫ ∫∑
∈
2
(5)
La discretización del continuo mediante una malla de elementos finitos triangulares, en
donde en cada nodo i , j, k de un elemento e de la malla, el valor de la función potencial se
representa por λi, λj, λk., conduce a que la formulación en elementos finitos sea la que
sigue abajo. Las variables a optimizar son el vector λ, cuyas componentes son los valores
de la función potencial en todos los nodos de la malla, y el vector t, cuyas componentes
expresan el coste en los arcos:
( ) ( )max ,ω λλ λ λ
te
=+ +
− +∇λ
−∇λ
−
∈ ∈∑ ∫∑D q
ab
ab b
t z dee E
ei j k e
2
e
ee
e ea-1
t
t
a A ao
a
3 2 2
2
z
S.∈
(6)
sujeto a
(7) ( )λ
δ λ
o o,
t k K saa A
akso
s so
=
≥ ∈∈∑
0,
, ,
en el centro
donde:
De : Área del elemento e.
∇λe : Gradiente de la función potencial en el elemento e cuyo valor se calcula a partir de
los valores nodales del potencial
( )t za-1 : inversa de la función de coste en los arcos;
qe : densidad de viajes en el elemento e.
ae y be : constantes que expresan que el coste del viaje en el elemento e es uniforme para el
elemento e.
λ s : valor de la función potencial en la rampa s∈S; y
λo : valor del potencial en el centro de la ciudad.
Por lo tanto, la maximización de la función objetivo ω conduce a la situación de flujo en
equilibrio, siendo el óptimo de ω el que caracteriza dicho flujo a partir de las relaciones
(4). Seguidamente se presenta un método para hallar un cuasi-óptimo de ω .
4 OPTIMIZACIÓN CON UN PROGRAMA EVOLUTIVO
Los Algoritmos Evolutivos (AE) son algoritmos de búsqueda iterativa que tratan de imitar
los procesos naturales de evolución. Se diferencian de los algoritmos habituales de
búsqueda (e.g., métodos del gradiente, hill-climbing, recocido simulado) en que la
búsqueda es conducida usando la información de una población de estructuras en lugar de
una dirección o de una estructura simple.
Los AE consideran como soluciones potenciales muchas estructuras de datos y trabajan
con un muestreo más amplio del espacio de búsqueda que los métodos tradicionales,
aumentando la posibilidad de converger al óptimo global. Sin embargo, esto no implica la
necesaria convergencia al óptimo global en un número finito de iteraciones.
Un AE mantiene una población de individuos, en cada iteración t. Cada
individuo, , representa una solución potencial del problema. Cada solución se evalúa
para conocer su aptitud. El operador de selección identifica los mejores individuos de la
P(t) = ( , ,x xtnt
1 K )
xit
población actual, ( )P t , los cuales serán los progenitores de la siguiente generación, t+1.
Algunos miembros de esta nueva población son sometidos a transformaciones por medio
de operadores genéticos para formar nuevos individuos que, potencialmente, serán
mejores.
Las transformaciones pueden ser mutaciones o cruces. Una mutación consiste en la
creación de un nuevo individuo por un pequeño cambio en un progenitor, las mutaciones
sirven para aumentar la diversidad, esto es, para tomar nuevos puntos en el espacio de
búsqueda. Los cruces son transformaciones en las que se crean nuevos individuos por
combinación de partes de varios progenitores. Después de cierto número de generaciones
el programa converge y se espera que el mejor individuo represente un óptimo cercano a la
solución. La estructura de un algoritmo evolutivo se muestra a continuación.
inicio
t← 0
inicialización de P(t) P(t):Población
evaluación de P(t)
mientras (no condición de terminación) hacer inicio
t← t+1
selección P(t) de P(t-1)
transformación P(t)
evaluación P(t)
fin fin
Tabla 1: Estructura de un Algoritmo Evolutivo
Básicamente, se han desarrollado cuatro tipos de AE: los Algoritmos Genéticos (AG)
[Holland], los Programas Evolutivos (PE) [Michalewicz], las Estrategias Evolutivas
[Rechenberg y Schwefel] y la Programación Evolutivas [Fogel]. El algoritmo utilizado
para optimizar la función objetivo (5) es un Programa Evolutivo. La diferencia
fundamental entre un AG y un PE es el tipo de codificación que usan para los individuos.
En un AG un individuo es una cadena de bits, mientras que en un PE un individuo es un
vector de números reales, esto proporciona a estos últimos más rapidez de cara a la
optimización numérica.
5 IMPLEMENTACIÓN NUMÉRICA
El programa utilizado para optimizar la función objetivo (5) sometida a las restricciones
(6) es una adaptación del sistema GENOCOP (GEnetic algorithm for Numerical
Optimization for Constrained Problems), desarrollado por Michalewicz et al. (1996), que
es capaz de optimizar funciones objetivo reales sometidas a restricciones lineales en las
variables de decisión, incluyendo intervalos de validez para cada variable de decisión.
La idea principal es eliminar las ecuaciones presentes en el conjunto de restricciones y
diseñar unos operadores genéticos que garanticen que los individuos descendientes estén
dentro del espacio de búsqueda. Las ecuaciones son eliminadas al principio, junto con un
número igual de variables del problema (Michalewicz, 1996); esto modifica el espacio de
búsqueda que se convierte en un espacio definido por un conjunto de inecuaciones. La
convexidad de este espacio de búsqueda garantiza que las combinaciones lineales de las
soluciones potenciales, producen soluciones sin necesidad de verificar las ecuaciones.
Los operadores genéticos usados son los siguientes:
5.1 Mutación uniforme
Este operador requiere un único padre x y produce un único descendiente . El operador
selecciona aleatoriamente una componente
′x
k ∈( , , )1K q del vector y
produce otro vector
x x x xk q= , , )K K( ,1
′ = ′x x x xk( , , ,1 K K q ) donde ′xk es una valor aleatorio (distribución de
probabilidad uniforme) del rango permitido para la variable k.
El operador juega un papel importante en las fases iniciales del proceso de evolución ya
que permite a las soluciones moverse libremente en el espacio de búsqueda. Además, en
las últimas fases del proceso evolutivo, el operador permite movimientos lejos de un
óptimo local en búsqueda de un óptimo mejor.
5.2 Mutación de frontera
Este operador requiere también un único padre x y produce un único descendiente ′x . Es
una variación de la mutación uniforme, siendo ′xk uno de los dos extremos del intervalo
permitido para la variable k con igual probabilidad.
Este operador sirve para problemas de optimización donde la solución óptima está cerca de
la frontera del espacio de búsqueda. Consecuentemente, si el conjunto de restricciones está
vacío y el límite para las variables es bastante ancho, el operador es engorroso.
5.3 Mutación no uniforme
Este operador es el responsable de la capacidad de refinamiento del sistema. Se define
como sigue: Si x x x xk q= ( , , ,1 K K
xk q, )
)
)
)
)
es un cromosoma y el elemento xk es seleccionado
para su mutación (el dominio de xk es [lk,uk]), el resultado es el vector
donde ′ = ′x x x( , ,1 K K
( )( )′ =
+ −− −
xx t,u x x t,x l
kk k k
k k k
∆∆
si un binario aleatorio es 0 si un binario aleatorio es 1
La función devuelve un valor en el rango [0,y] tal que la probabilidad de que
tienda a cero aumenta con t. Esta propiedad provoca que el operador busque al
principio (cuando t es pequeño) uniformemente en el espacio, y muy localmente al final
del proceso. La función es la siguiente:
∆(t, y
∆(t, y
∆(t, y
∆(t, y) y r tT
b
= ⋅ ⋅ −
1 ,
donde r es un número aleatorio entre 0 y 1, T es el número máximo de generaciones y b es
un parámetro que determina el grado de no uniformidad.
5.4 Cruce aritmético
Este operador se define como la combinación lineal de dos vectores: si x1 y x2 van a ser
cruzados, la descendencia resultante es ′ = ⋅ + − ⋅x a x x1 1 ( )1 a 2 y ′ = ⋅ + − ⋅x a x x2 12 1( )a .
Este operador usa un valor aleatorio 0 1≤ ≤a que garantiza que x1 y x2 pertenecen al
espacio de búsqueda. a puede ser constante (cruce aritmético uniforme) o variable (cruce
aritmético no-uniforme), en este último caso a depende de la edad de la población.
5.5 Cruce simple
El operador se define como sigue: si x1 = ( , ,x xk1 K ) y x2 = ( , ,y yk1 K ) van a cruzarse en
la posición k, la descendencia será:
′ = ⋅ + ⋅ − ⋅ + ⋅ −+ +x1 ( , , , ( ), , ( )x x y a x a y a x ak k k q q1 1 1 1 1K K )
y
′ = ⋅ + ⋅ − ⋅ + ⋅ −+ +x2 ( , , , ( ), , ( )y y x a y a x a y ak k k q q1 1 1 1 1K K )
Una propiedad de los espacios convexos es que existe 0 1≤ ≤a tal que y ′x1 ′x2
pertenecen al espacio de búsqueda. Ahora hay que encontrar el máximo valor de a para
obtener el máximo intercambio de información posible (si a=1 el intercambio es máximo).
La forma de proceder es la siguiente, se empieza con a=1 y si alguno de los descendientes
no pertenece al espacio de búsqueda se disminuye a en una constante 1 . Después de ρ ρ
intentos a=0 y los descendientes son idénticos que los progenitores.
5.6 Cruce heurístico
Este operador usa valores de la función objetivo para determinar la dirección de búsqueda
y, si produce descendencia, produce un único individuo.
El operador genera un descendiente x3 a partir de dos progenitores x1 y x2 de acuerdo con
la siguiente regla:
x r x3 2= ⋅ − +( )x x2 1
donde r es un número aleatorio entre 0 y 1 y x2 es mejor individuo que x1. Es posible que x3
no pertenezca al espacio de búsqueda, en tal caso se genera otro valor de r, si después de
cierto número de intentos no se encuentra una solución, no habrá descendencia.
Este operador contribuye a la precisión de la solución encontrada; sus mayores
responsabilidades son el refino y la búsqueda en la dirección más prometedora.
Al conjunto de software GENOCOP + MEF = TANGA …. (Traffic Assignment in
Networks with Genetic Algorithms).
6 EJEMPLOS DE APLICACIÓN
Se presenta el ejemplo de una hipotética ciudad circular como la de la figura. Se ha
asignado a cada elemento del espacio los mismos parámetros ae, be y qe. El tiempo viaje a
flujo nulo en los arcos de la autopista es de 10 minutos y la capacidad de todos ellos es de
4000 veh/h.
Fig. 2: Direcciones del flujo en una ciudad circular
El tiempo de CPU ha sido de 94708 segundos. En la Figura 2 puede observarse la
dirección del flujo en el continuo calculada a partir de las relaciones (2) y (3); la intensidad
se calcula usando también las mismas fórmulas. El flujo en los arcos se obtiene a partir del
tiempo en los arcos:
Arco 1 2 3 4 5
Tiempo (min) 10.1 40.2 42.5 10.0 39.4
Flujo(veh/h) 2172 6522 6618 1375 6489
El ejemplo siguiente es más elaborado.
Fig. 3: Direcciones del flujo en una configuración
7 CONCLUSIONES
Este modelo de asignación constituye una herramienta alternativa al método clásico de
asignación en ciudades como la presentada. Plantearse la asignación utilizando un grafo de
transporte que, además de representar las autopistas represente las red de calles, es un
método que requiere un trabajo largo cuyo tiempo de ejecución crece no linealmente con el
tamaño del grafo. En cualquier caso, supone más trabajo que realizar una malla de
elementos finitos en la que cada elemento represente una zona de transporte con
características homogéneas.
En problemas en los que no es necesaria una gran precisión, al nivel de definir el flujo en
la red de calles, sinó que lo que se necesita es ver las influencias del tráfico en los arcos de
la autopista, el modelo desarrollado es muy útil, pues permite con poco esfuerzo obtener
resultados satisfactorios del comportamiento del tráfico.
Por otra parte, la aplicación del modelo no se reduce a ciudades con un único CBD, sino
que permite la implementación de varios CBD de forma sencilla.
Extensiones: multicentros, tte público, etc.
AGRADECIMIENTOS
Artículo basado en la tesina de graduación de J.M. Ramos codirigida por F. Robusté y E.
Oñate. El tercer autor agradece al CIMNE la colaboración y soporte económico prestados
durante la elaboración de la investigación, así como la colaboración del profesor E.
Bendito del Departamento de Matemática Aplicada III en algunos aspectos formales de la
derivación del modelo de optimización.
REFERENCIAS
Beckmann M. J., McGuire C. B. and Winstein C.B. (1956) Studies in the Economics of
Transportation. Yale University Press, New Haven, CT.
Beckmann M. J. and Puu T. (1987) Spatial economics: Density, potential and flow. Studies
in Regional Science and Urban Economics, Elsevier Science, New York.
Bureau of Public Roads (BPR; 1964) Traffic assignment manual. U.S. Department of
Commerce, Urban Planning Division, Washington, D.C.
Carey M. (1985) The dual of the traffic assignment problem with elastic demands.
Transportation Research, 19B, 227-237.
Fukushima M. (1984) On the dual approach to the traffic assignment problem.
Transportation Research, 18B, 235-245.
D'Este G. (1987) Trip assignment to radial major roads. Transportation Research, 21B,
433-442.
Michalewicz, Zbigniew (1996) Genetic Algorithms+Data Structures=Evolution Programs.
Springer-Verlag Berlin Heidelberg New York.
Newell G. F. (1980) Traffic flow on transportation networks. MIT Press, Cambridge, MA.
Ortúzar, J. de D., Willumsen, L.G., (1994) Modelling transport. John Wiley and Sons,
New York.
Ramos, J.M. (1996) XXXXXXXXXX. Tesina de graduación de la Escuela Técnica
Superior de Ingenieros de Caminos, Canales y Puertos de Barcelona dirigida por F.
Robusté.
Robusté, F. (1998) Los costes de la congestión del tráfico en Barcelona, Instituto Catalán
para el Desarrollo del Transporte, Generalitat de Cataluña (en catalán).
Sasaki T., Iida Y. and Yang H. (1990) User equilibrium traffic assignment by continuum
approximation of network flow. Proceedings of the 11th International Symposium on
Transportation and Traffic Theory, Japan, Yokohama, July, pp. 233-252.
Yang H., Yagar S. and Iida Y. Traffic assignment in a congested discrete/continuos
transportation system. Transportation Research-B. Vol 28B, pp 161-174, 1994
Sheffi Y. (1985) Urban transportation networks: Equilibrium analysis with mathematical
programming methods. Prentice-Hall, Englewood Cliffs, NJ.
Sttenbrink P. A: (1974) Optimization of transport network. John Wiley and Sons, New
York.
Wardrop J.G. (1952) Some theoretical aspects of road traffic research. Proceedings,
Institute of Civil Engineers II(1), pp 325-378.
Winter G., Périaux J., Galán M., y Cuesta, P. (1995) Genetic Algorithms in Engineering
and Computer Science. John Wiley and Sons, New York.