Métodos heurísticos aplicados al control de semáforos en zonas urbanas Métodos heurísticos aplicados al control de semáforos en zonas urbanas Pedreira Andrade, Luís P. [[email protected]] Lema Fernández, Carmen S. [[email protected]] Dpto. Economía Aplicada Universidade da Coruña Allende Alonso, Sira [[email protected]] Universidad de La Habana (La Habana-Cuba) RESUMEN En los últimos años se ha dado un gran impulso a la investigación en métodos heurísticos por su utilidad cuando no hay métodos exactos, cuando el tiempo de procesamiento es muy grande, cuando los datos son poco fiables o cuando los necesitamos como paso intermedio en la aplicación de otro método. Son muchos los campos de aplicación, en este trabajo proponemos su utilización en la regulación de semáforos en zonas urbanas. Así introducimos un método híbrido de solución para el problema de control óptimo de semáforos que tiene dos ejes fundamentales: la resolución de un problema de complementariedad lineal y el uso imprescindible de una heurística para explorar el dominio acotado del vector de longitudes de fase, usando el ambiente de programación Matlab y las facilidades que éste ofrece en Optimizatión Toolbox, Genetic Algorithm and Direct Search Toolbox. Palabras claves: Optimización; control de semáforos; métodos heurísticos. Clasificación JEL (Journal Economic Literature): C61 Área temática: Programación matemática XVI Jornadas ASEPUMA – IV Encuentro Internacional Rect@ Vol Actas_16 Issue 1:707 1 Pedreira Andrade, Luís P.; Lema Fernández, Carmen S.; Allende Alonso, Sira 1. INTRODUCCIÓN En el trabajo que presentamos en las XIV Jornadas ASEPUMA y II Encuentro Internacional [Allende, S.; Blanco, A.; Lema, C. y Pedreira, L. (2006)] analizábamos un problema de control óptimo de semáforos que consistía en: Conocidas las tasas de llegada y de salida de vehículos del cruce, para un entero N dado, y un tiempo inicial t0, queremos calcular una sucesión t1, t2,…,tN de instantes de cambio de las luces de los semáforos (tiempos switching) óptima bajo un criterio. El criterio a considerar se expresa en una función objetivo a minimizar que denotamos por J. Es posible, por ejemplo, considerar como criterio: • Longitud media de la cola sobre todas las colas 4 J1 = ∑ w i ∫ tN t0 tN - t0 i =1 • l i ( t )dt Longitud media de la cola sobre la peor cola J 2 = max w i i • ∫ li (t) dt t N − t 0 tN t0 (2) J3= max (w i li ( t )) (3) Longitud de cola en el peor caso i, t • (1) Tiempo de espera medio sobre todas las colas (El tiempo de espera medio es igual a la longitud media de cola dividida por la tasa media de llegada). 4 J4 = ∑ w i i =1 • ∫ tN t0 l i ( t )dt λ i (t N − t 0 ) (4) Tiempo de espera medio sobre la peor cola tN li (t)dt ∫ t J 5 = max w 0 i i λ (t − t ) i N 0 XVI Jornadas ASEPUMA – IV Encuentro Internacional Rect@ Vol Actas_16 Issue 1:707 (5) 2 Métodos heurísticos aplicados al control de semáforos en zonas urbanas donde wi>0 para todo i, son los factores peso que se pueden usar para dar una importancia más alta a algunos carriles; li(t) es la longitud de la cola (es decir el número de coches esperando) en el carril Li en el instante de tiempo t; λ i es la tasa media de llegada de vehículos en el carril Li (dada en vehículos por segundo). En la práctica se establecen las duraciones mínimas y máximas para los tiempos verde y rojo del semáforo y longitudes máximas para las colas. Todo ello conduce al siguiente problema P: Minimizar J (6) sujeto a: δmin,verde,1≤δ2k+1-δamb≤δmax,verde,1 N para k=0,1,…, − 1 , 2 (7) δmin,verde,2≤δ2k-δamb≤δmax,verde,2 N − 1 para k=0,1,…, , 2 (8) xk≤xmax para k=1,2,…,N (9) x2k+1=max(x2k+b1δ2k+b3,b5) N − 1 para k=0,1,…, , 2 (10) x2k+2=max(x2k+1+b2δ2k+1+b4,b6) N para k=0,1,…, − 1 , 2 (11) donde δmin,verde,i (respectivamente δmax,verde,i) es el mínimo (respectivamente el máximo) tiempo verde en el carril Li, y (xmax)i es la máxima longitud de cola en el carril Li. 2. MÉTODOS PARA RESOLVER EL PROBLEMA P 2.1. Escribir las restricciones del problema P como un ELCP Para determinar la sucesión temporal switching óptima debemos optimizar la función objetivo J en la solución del ELCP (problema de complementariedad lineal extendido)[de Schutter, B. y de Moor, B. (1998)]; para ello consideramos (10) para un índice arbitrario k. Esta ecuación se puede reescribir como sigue: x2k+1≥x2k+b1δ2k+b3 (12) x2k+1≥b5 (13) (x2k+1)i = (x2k+b1δ2k+b3)i o (x2k+1)i = (b5)i para i =1,2,3,4 (14) XVI Jornadas ASEPUMA – IV Encuentro Internacional Rect@ Vol Actas_16 Issue 1:707 3 Pedreira Andrade, Luís P.; Lema Fernández, Carmen S.; Allende Alonso, Sira o equivalentemente: x2k+1- x2k-b1δ2k-b3≥0 x2k+1- b5≥0 (x2k+1-x2k-b1δ2k-b3)i (x2k+1-b5)i = 0 para i=1,2,3,4 Como una suma de números no negativos es igual a 0 si y sólo sí todos los números son iguales a 0, este sistema de ecuaciones es equivalente a: x2k+1-x2k-b1δ2k-b3≥0 (15) x2k+1-b5≥0 (16) 4 ∑ i =1 (x2k+1-x2k-b1δ2k-b3)i(x2k+1-b5)i = 0 (17) Podemos repetir este razonamiento para (11) y para cada k. Así si definimos: x1 δ0 x δ x*= 2 y δ*= 1 donde δk = tk+1-tk, k=0,1,2,…,N-1 M M x N δ N −1 obtenemos el problema P en la siguiente forma: Minimizar J (18) sujeto a: Ax*+Bδ*+c≥0 (19) x*+d≥0 (20) Ex*+Fδ*+g≥0 (21) (Ax*+Bδ*+c)T(x*+d)=0 (22) cuyas restricciones son un caso especial de ELCP y donde A y E son matrices cuadradas de orden 4N (A es P-matriz); B y F son matrices de orden 4NxN; c,d y g son vectores de orden 4Nx1. La dificultad de este método es que el problema ELCP es un problema NP-duro, y el algoritmo propuesto en [de Schutter, B. y de Moor, B. (1995)] para resolver el ELCP usa tiempos de ejecución exponenciales, lo que implica que no es factible si el número de ciclos switching N es grande. XVI Jornadas ASEPUMA – IV Encuentro Internacional Rect@ Vol Actas_16 Issue 1:707 4 Métodos heurísticos aplicados al control de semáforos en zonas urbanas 2.2. Resolver un problema aproximado-relajado En este método [de Schutter, B. y de Moor, B. (1998)] se usan funciones objetivo aproximadas que dependen explícitamente de x* y δ*, de la siguiente forma: ~ ~ dados x0 y t0, se define la función li (., x*,δ δ*), -o para abreviar li (.) - como la función lineal a trozos que interpola en los puntos ((tk,li(tk)) para k=0,1,…,N. Las funciones ~ objetivo aproximadas Jl para l=1,2,3,4,5 están definidas como en (1)-(5) pero ~ reemplazando li por li ; y se relajan las restricciones reemplazándose las ecuaciones (10)-(11) por ecuaciones de la forma (12)-(13) sin tener en cuenta (14). Se obtienen soluciones subóptimas y cuando se manejan las funciones aproximadas de J1 y J4 la solución para este problema es una solución suficientemente buena para el problema P, pero no se puede afirmar lo mismo cuando se usan las aproximadas de J2, J3 y J5. 2.3. Método híbrido de solución Consiste en una heurística para fijar los valores de δ* ∈ (IR o+ ) N más un algoritmo eficiente para resolver el problema LCP [Allende, S.; Blanco, A.; Lema, C. y Pedreira, L. (2006)] que se obtiene usando la siguiente propiedad: Para cada δ* ∈ (IR o+ ) N , las restricciones de ELCP (19)–(22) describen un problema de complementariedad lineal (LCP) con solución única, esto quiere decir que dado δ* la longitud de las colas está unívocamente determinada. El proceso sería el siguiente: 0) Ĵ =M (valor suficientemente grande), k=1. Repetir q veces. 1) Mediante una heurística se explora el dominio acotado del vector δ*: Construir un vector δ*. 2) Fijado δ*, se determina la solución factible única del problema de complementariedad lineal LCP(δ*) correspondiente. Sea x*(δ*) la solución determinada. 3) Se evalúan las funciones Ji según los distintos criterios. 4) Para cada criterio s: Si Js(x*(δ*))< Ĵ S entonces Ĵ S :=JS(x*(δ*)) y δ̂δ (s)= δ*. q=q+1 La heurística utilizada en el mencionado trabajo (con la que se hicieron algunas pruebas para ejemplos concretos) fue simulated annealing. Esta es una heurística que XVI Jornadas ASEPUMA – IV Encuentro Internacional Rect@ Vol Actas_16 Issue 1:707 5 Pedreira Andrade, Luís P.; Lema Fernández, Carmen S.; Allende Alonso, Sira simula el proceso de enfriamiento de un sólido sometido a altas temperaturas a fin de mejorar su estructura cristalina, fue introducido por Kirkpatrick et al (1983). En cada iteración este algoritmo genera aleatoriamente un nuevo punto. La distancia de ese nuevo punto al punto inicial o la extensión de la búsqueda esta basada en una distribución de probabilidad con una escala proporcional a la temperatura. El algoritmo acepta todos los nuevos puntos que mejoran la función objetivo, pero también con una cierta probabilidad puntos en los que la función objetivo toma un peor valor, así se evita el quedar atrapados en mínimos locales, y se puede explorar globalmente para obtener otras soluciones posibles. A medida que la temperatura disminuye, el algoritmo reduce la extensión de su búsqueda para converger a un mínimo. Es un algoritmo interesante ya que genera soluciones iniciales para utilizar otro algoritmo. Ofrece buenas aproximaciones al óptimo; se demuestra su convergencia en probabilidad a una solución óptima. 3. MÉTODOS PARA EXPLORAR EL DOMINIO ACOTADO DEL VECTOR δ* Además de la mencionada, otras heurísticas pueden ser aplicadas. Como los métodos heurísticos no son exactos es conveniente considerar alternativas de enfoques y comparar los resultados. Dada la disponibilidad de las implementaciones generales propuestas sobre Matlab y dado que sus procedimientos en Optimizatión toolbox, Genetic Algorithm and Direct Search Toolbox se ajustan bien a las características del problema, proponemos la aplicación de los algoritmos: 3.1. Direct Search En el Toolbox se implementan dos “direct search algorithms” que se llaman Generalized Pattern Search (GPS) algorithm y Mesh Adaptative Search (MADS) algorithm. En ambos casos en cada paso, el algoritmo busca un conjunto de puntos (llamados una malla –mesh-) alrededor del punto (calculado en el paso previo del algoritmo) en el que la función objetivo tiene el mejor valor (current point). La malla está formada por varios puntos cada uno de los cuales se calcula sumando al current point un múltiplo de un vector de los que forman el pattern (estos vectores son de XVI Jornadas ASEPUMA – IV Encuentro Internacional Rect@ Vol Actas_16 Issue 1:707 6 Métodos heurísticos aplicados al control de semáforos en zonas urbanas dirección fija en GPS mientras que en MADS se usa una selección aleatoria). Si el pattern search algorithm encuentra un punto en la malla que mejora el valor de la función objetivo respecto a su valor en el current point, el nuevo punto se convierte en punto de partida para el próximo paso del algoritmo. 3.2. Genetic Algorithms (GAs) Están basados en la selección natural, proceso que conduce la evolución biológica. Fueron introducidos por John Holland (1975). En cada paso, el algoritmo genético selecciona individuos al azar entre los de la población en ese momento, que se convertirán en padres y los usa para crear los individuos de la generación siguiente. Los componentes que han de considerarse a la hora de implementar un GA son los siguientes: . Una representación en términos de “cromosomas”, de las configuraciones de cada problema: método de codificación del espacio de soluciones en cromosomas. . Una manera de crear las configuraciones de la población inicial. . Una función de evaluación que permita ordenar los cromosomas de acuerdo con la función objetivo: medida de la bondad o función fitness. . Operadores genéticos que permitan alterar la composición de los nuevos cromosomas generados por los padres durante la reproducción. . Valores de los parámetros que el algoritmo genético usa (tamaño de la población, probabilidades asociadas con la aplicación de los operadores genéticos). Éste método fue usado en [Sánchez, J.J.; Galán, M. y Rubio, E. (2004)] para resolver un problema de gestión de semáforos. Se diseña un modelo de tráfico microscópico es decir un modelo que supone el tráfico como un conjunto de partículas que se mueven según un modelo de reglas. Usan además un autómata celular, que es un sistema que va aprendiendo poco a poco para hacer un modelo preciso. Con esta teoría los vehículos se consideran como entidades unidimensionales. Las calles se ejemplifican como un conjunto de puntos. En cada punto sólo puede haber un vehículo en cada instante de tiempo. Para alcanzar una solución del problema se representa el estado de los semáforos mediante un cromosoma, que tiene longitud variable en función del período de tiempo que se quiera optimizar, aunque se supone que ese período de tiempo representa un ciclo base que se repite indefinidamente. Este XVI Jornadas ASEPUMA – IV Encuentro Internacional Rect@ Vol Actas_16 Issue 1:707 7 Pedreira Andrade, Luís P.; Lema Fernández, Carmen S.; Allende Alonso, Sira cromosoma está compuesto por valores enteros que representan qué semáforo está abierto en el cruce en cada momento. Los resultados obtenidos con esta codificación y el simulador descrito muestran que aparte de ser una forma válida, permite optimizar varias intersecciones al mismo tiempo, lo que reduce los tiempos de cálculo con respecto a otras soluciones. 3.3. Threshold Acceptance Usa una aproximación similar a simulated annealing, pero en vez de aceptar nuevos puntos que empeoran la función objetivo con una cierta probabilidad, acepta todos los nuevos puntos bajo un umbral (thershold) fijado. El umbral se va sistemáticamente bajando, como se hacía con la temperatura. Como threshold acceptance evita el cálculo de la aceptación probabilística de simulated annealing, puede conjeturarse un tiempo de cálculo inferior al requerido por simulated annealing. 4. APLICACIÓN: REGULACIÓN MEDIANTE SEMÁFOROS DE LA GLORIETA DE AMÉRICA (A CORUÑA) Esta glorieta de la ciudad de A Coruña, está con frecuencia colapsada por la gran cantidad de vehículos que a ella acceden a través de las calles Bolivia, Cabo Santiago Gómez, Ciudad de Lugo y Palomar. Solamente pueden abandonarla a través de las calles Palomar (circulación hacia Riazor) o Uruguay (circulación hacia una de las salidas de la ciudad), también se utiliza para cambiar de sentido de circulación en la calle Palomar. El edificio que se observa en la parte inferior izquierda de las imágenes es el palacio de la Ópera. Cuando hay espectáculo (generalmente viernes o sábado por la noche) el embotellamiento es extremo, llegando incluso a colapsar vías tan importantes como la Avenida de Finisterre o Juan Flórez. En la actualidad sólo existen señales de ceda el paso. Con nuestros estudios intentamos realizar una regulación mediante semáforos que reduzca apreciablemente los embotellamientos. XVI Jornadas ASEPUMA – IV Encuentro Internacional Rect@ Vol Actas_16 Issue 1:707 8 Métodos heurísticos aplicados al control de semáforos en zonas urbanas 5. CONCLUSIONES • Además de los diversos campos de aplicación de los métodos heurísticos: problemas de transporte y asignación, regulación de flujos de producción, pronósticos de ventas, análisis financiero, inspección de calidad, diseño de circuitos electrónicos, predicciones económicas, etc.; nosotros proponemos su utilización en la regulación de semáforos. En la actualidad la gestión del tránsito circulatorio es una prioridad de actuación en la mayoría de las ciudades. A menudo no es viable aumentar las infraestructuras y casi siempre es una solución muy cara. La buena coordinación de la red de semáforos de la ciudad y la optimización de los ciclos y fases de cada uno de ellos, son herramientas fundamentales para resolver la congestión. XVI Jornadas ASEPUMA – IV Encuentro Internacional Rect@ Vol Actas_16 Issue 1:707 9 Pedreira Andrade, Luís P.; Lema Fernández, Carmen S.; Allende Alonso, Sira • En el mercado hay diversos sistemas de simulación de tráfico, también en la literatura existen trabajos que usan programación dinámica, programación entera mixta, algoritmos de flujo, algoritmos basados en reglas lógicas y en algún caso otros tipos de heurísticas. • Nuestro trabajo en la actualidad y en un futuro próximo está centrado en: diseñar una red de semáforos para la glorieta de América, realizar los cambios necesarios para adaptar el modelo expuesto en [Allende, S.; Blanco, A.; Lema, C. y Pedreira, L. (2006)] a este problema concreto, implementar el algoritmo propuesto en 2.3 para regular los semáforos, usar las diferentes opciones en cuanto a métodos heurísticos que el toolbox de Matlab nos ofrece, para así poder comparar resultados y obtener en cada momento la mejor solución que permita una respuesta suficientemente rápida para las fases y ciclos de los semáforos, con el objeto de disminuir la congestión. 6. REFERENCIAS BIBLIOGRÁFICAS • ALLENDE, S.; BLANCO, A.; LEMA, C. y PEDREIRA, L. (2006). “Modelo de optimización con restricciones de equilibrio para el control de semáforos”. Rect@, Actas14, 1, pp. 44.1- 44.13. • DE SCHUTTER, B. y DE MOOR, B. (1998) “Optimal traffic light control for a single intersection”, European Journal of Control, 4, 3, pp. 260-276. • DE SCHUTTER, B. y DE MOOR, B. (1995) “The extended linear complementarity problem”, Mathematical Programming, 71, 3, pp. 289-325. • S. KIRKPATRICK, S.; GELATT, J.R. y VECCHI, M.P. (1983) “Optimization by Simulated Annealing”. Science, 220, pp. 671-680. • HOLLAND, J. (1975) Adaptation in Natural and Artificial Systems, University of Michigan Press, Ann Arbor. • SÁNCHEZ, J.J.; GALÁN, M. y RUBIO, E. (2004) “Genetic algorithms and cellular automata. A new architecture for traffic light cycles optimization”. Proceedings of the 2004 Congress on Evolutionary Computation CEC2004, pp. 1668-1674. XVI Jornadas ASEPUMA – IV Encuentro Internacional Rect@ Vol Actas_16 Issue 1:707 10