El factor de seguridad de un talud es el menor de los correspondientes a todas las superficies por las que podría romper el terreno, y no hay ninguna fórmula que dé la superficie en que se produce. OGR Slip2D la encuentra mediante una búsqueda: genera superficies de prueba, calcula el factor de seguridad de cada una y adopta el menor. Los siete métodos difieren en la forma de generar las superficies de prueba; el capítulo trata además los controles que las restringen, la optimización de los resultados no circulares y las comprobaciones que indican si se ha encontrado el mínimo.
3.4.1Por qué hay que buscar la superficie crítica#
Una superficie de rotura circular queda definida por tres números, las coordenadas del centro y el radio ; una no circular, por las coordenadas de sus vértices. El factor de seguridad de la Sección 3.1 es función de esos números, y el resultado de un análisis de estabilidad de taludes es su mínimo entre las superficies consideradas,
donde
- conjunto de superficies de prueba cinemáticamente admisibles que genera la búsqueda
- factor de seguridad de la superficie crítica, el menor encontrado
no tiene una expresión cerrada, varía bruscamente donde una superficie empieza a cortar otra capa o el nivel freático y suele presentar varios mínimos locales: un mecanismo superficial en la cara del talud y otro profundo, a través de una cimentación débil, pueden ser ambos mínimos, cada uno rodeado de superficies con factores mayores. Un método que se limita a descender desde una superficie inicial encuentra el mínimo de la cuenca en que empieza (Greco, 1996). Por eso toda búsqueda combina, en proporciones distintas, dos aspectos: la cobertura del espacio de superficies verosímiles, para que no quede ninguna cuenca sin visitar, y el refinamiento de la mejor región hallada (Cheng et al., 2007).
El resultado de cualquier búsqueda es el menor factor de las superficies ensayadas. Solo es el mínimo global si la búsqueda ha llegado a la superficie que lo produce; la Sección 3.4.8 explica cómo comprobarlo. La Tabla 3.4.1 resume los siete métodos.
| Búsqueda | Superficies | Cómo se generan las superficies de prueba | Población | Optimización |
|---|---|---|---|---|
Gridgrid | circulares | círculos con centro en cada punto de una rejilla, con una serie de radios en cada uno | 1859 | — |
Slopeslope | circulares | punto de salida, punto de entrada y ángulo de salida aleatorios, y después un refinamiento local | 5000 + refinamiento | — |
Auto Refineauto_refine | ambas | círculos entre divisiones del talud; en cada iteración solo se conservan las mejores divisiones | 4500 | activada en la no circular |
Particle Swarmparticle_swarm | ambas | un enjambre de círculos que se desplaza hacia las mejores posiciones encontradas | 2500 | activada |
Blockblock | no circulares | vértices tomados de los objetos de búsqueda por bloques, con los extremos proyectados hasta el terreno | 5000 | desactivada |
Pathpath | no circulares | un camino de segmentos iguales desde el pie, con giro hacia arriba | 5000 válidas | desactivada |
Simulated Annealingsimulated_annealing | no circulares | recocido simulado muy rápido y después un refinamiento local de Monte Carlo | fijada por los pasos de generación | activada |
El tipo de superficie y el método de búsqueda se eligen en Surfaces → Surface Options…. Cada método de dovelas seleccionado en el proyecto ejecuta su propia búsqueda, por lo que métodos distintos pueden dar superficies críticas distintas. Grid y Auto Refine son deterministas; las otras cinco toman números aleatorios de la semilla del proyecto (Analysis → Project Settings…, Random Numbers, pseudoaleatorio con semilla 10116 por defecto), de modo que una ejecución se puede reproducir. Todas las búsquedas evalúan sus candidatas con las mismas dos funciones, evaluate_circle y evaluate_surface, que es donde se aplican los filtros de la Sección 3.4.6 y las comprobaciones de admisibilidad de la Sección 3.3.4 a la Sección 3.3.6; por eso actúan igual en todas las búsquedas, en la optimización y en las reevaluaciones probabilísticas. Cuando un modo de análisis sísmico pide el coeficiente sísmico crítico, todas las búsquedas minimizan en lugar de (Sección 3.9).
3.4.2Superficies circulares#
La superficie de rotura de un círculo es su arco inferior entre dos puntos consecutivos en que corta el terreno. Un círculo que corta el terreno más de dos veces define varias masas deslizantes separadas, como en un talud con bancos; cada una se analiza y se conserva la de menor factor. Dos casos requieren una regla propia:
- Curvatura inversa. Cuando un extremo del arco queda por encima del centro, el arco se doblaría sobre sí mismo. Por defecto se coloca una grieta de tracción vertical y seca donde el arco se hace vertical, en , y la masa termina allí; la opción Create tension crack for reverse curvature se puede desmarcar para que esos círculos se descarten.
- Arco fuera del suelo. Se descarta una masa cuyo arco pasa por debajo del borde inferior del contorno externo (External Boundary), porque allí no hay suelo, salvo que Composite Surfaces esté activado (Sección 3.4.4).
En toda búsqueda circular se considera no válido un círculo de prueba cuyo factor de seguridad resulte inferior a 0.2 o superior a 100.
Búsqueda por rejilla#
La búsqueda clásica de superficies circulares evalúa círculos con centro en cada punto de una rejilla rectangular, con un conjunto de radios en cada centro (Figura 3.4.1). Si la rejilla tiene y intervalos, el número de centros es . En cada centro los radios recorren un intervalo que depende de la superficie del talud, la parte del perfil del terreno comprendida entre los límites del talud (Slope Limits):
donde
- distancia de al punto más próximo de la superficie del talud, sea un vértice o el pie de una perpendicular (m)
- distancia de al más cercano de los dos puntos límite que hay en los extremos de la superficie del talud (m)
- Radius Increment, es decir, el número de intervalos entre y , por lo que cada centro tiene círculos
Como los puntos límite pertenecen a la superficie del talud, siempre se cumple y cada centro genera sus círculos. El número de círculos generados es, por tanto,
lo que da 1859 con la rejilla por defecto de 12 × 12 y un Radius Increment de 10. Si se definen dos ventanas de límites del talud, el intervalo pasa a ser el de los radios cuyo círculo entra en el terreno por una ventana y sale por la otra.
| Ajuste | Por defecto | Significado |
|---|---|---|
| Number of centres | 12, 12 | intervalos de la rejilla; al menos 2 en cada dirección |
| Extensión de la rejilla | Auto Grid | de a , de a , sobre el rectángulo envolvente del modelo |
| Radius Increment | 10 | intervalos entre el menor y el mayor radio |
| Composite Surfaces | desactivado | los círculos que descienden por debajo de la base del modelo se ajustan a ella (Sección 3.4.4) |
| Create tension crack for reverse curvature | activado | si no, se descartan los círculos de curvatura inversa |
La regla del intervalo, con el margen interior del 5 % de la Ec. (3.4.2), se fijó a partir de mediciones, que el código fuente documenta. Una rejilla de 400 círculos o más se evalúa en procesos paralelos (hasta 8; por defecto, la mitad de los procesadores lógicos, Project Settings → Advanced) y el resultado es idéntico al de la ejecución secuencial. Si el centro crítico queda en el borde de la rejilla, las notas del análisis lo señalan, porque un mínimo en el contorno de la región explorada es el mejor de los valores explorados, pero no necesariamente el más bajo.
Código: ogr_slip2d/search.py (GridSearch)
Búsqueda de talud#
En vez de colocar centros, la búsqueda de talud genera círculos que afloran con seguridad en el talud. Primero localiza la cara del talud, el tramo más inclinado del perfil del terreno, con su pie, su coronación, su inclinación y su anchura horizontal , y para cada superficie de prueba elige al azar
- un punto de salida sobre el terreno, entre más allá del pie y hacia el interior de la cara;
- un punto de entrada sobre el terreno, entre por debajo de la coronación y más allá de ella;
- la inclinación del arco en el punto de salida, entre el Lower Angle y el Upper Angle.
Ambos puntos se mantienen dentro del perfil del terreno. El círculo que pasa por los dos puntos con esa tangente en la salida tiene el centro en la intersección de la normal a la tangente en la salida con la mediatriz de la cuerda. Se rechaza si el centro queda por debajo de cualquiera de los dos puntos, si los puntos distan menos de 0.5 m en horizontal o si el radio supera 50 veces la altura del modelo. Los 8 círculos de menor factor pasan después por un refinamiento local de 120 pasos aleatorios cada uno, en los que el centro y el radio se desplazan hasta , una amplitud que disminuye linealmente hasta cero a lo largo de los pasos, y se conserva todo paso que reduce el factor.
| Ajuste | Por defecto | Significado |
|---|---|---|
| Number of Surfaces | 5000 | círculos generados antes del refinamiento |
| Upper Angle | desactivado: | límite superior de |
| Lower Angle | desactivado: −45° | límite inferior de ; la ventana siempre se amplía hasta −70° o menos |
| Composite Surfaces, grieta de tracción por curvatura inversa | desactivado, activado | como en la búsqueda por rejilla |
Los límites del talud no condicionan dónde elige sus puntos esta búsqueda, pero sí filtran las superficies que encuentra, como en todas las demás, y las notas del análisis lo señalan cuando se definen límites.
Búsqueda de refinado automático#
La búsqueda de refinado automático restringe el campo de búsqueda, iteración tras iteración, a las zonas del talud que dan los factores más bajos. En cada iteración:
- La zona de búsqueda, que al principio es la superficie del talud comprendida entre los límites del talud, se divide en divisiones de igual longitud, medida a lo largo del terreno, y se toma sobre el terreno el punto medio de cada una.
- Para cada par de divisiones se trazan círculos que pasan por los dos puntos medios. Si es la longitud de la cuerda que los une y su inclinación, cada círculo queda definido por su semiángulo central , el ángulo entre la cuerda y la tangente, repartido uniformemente en , desde un círculo casi plano hasta otro cuyo centro está a la altura del punto superior:
con el centro en el lado superior de la cuerda, a una distancia de su punto medio.
- Cada división se ordena según el menor factor de seguridad de los círculos que terminan en ella, y se conserva la fracción mejor clasificada. Las divisiones conservadas, agrupadas en tramos contiguos, forman la zona de búsqueda de la iteración siguiente; las descartadas no se recuperan.
Cada iteración genera
círculos (450 con los valores por defecto), y siempre se ejecuta el número completo de iteraciones. Clasificar cada división por el menor factor de sus círculos y no por su media es una decisión deliberada, que consta en el código: las mediciones mostraron que la media favorece las divisiones del centro del talud, cuyos círculos llegan a todas las demás, y no lograba orientar la búsqueda hacia mínimos situados en los extremos del talud.
La variante no circular genera los mismos círculos y refina del mismo modo, pero convierte cada círculo en una polilínea de vértices, equiespaciados en ángulo central a lo largo del arco, y calcula el factor de seguridad de la polilínea. Cada vértice es un límite de dovela obligatorio, por lo que el número de dovelas debe ser como mínimo ; de lo contrario se rechaza toda superficie, y el análisis avisa cuando ocurre. La optimización (Sección 3.4.7) viene activada por defecto en esta variante.
| Ajuste | Por defecto | Significado |
|---|---|---|
| Divisions along slope | 10 | al menos 2 |
| Circles per division | 10 | círculos por cada par de divisiones |
| Number of Iterations | 10 | se ejecutan siempre todas |
| Divisions to use in next iteration | 50 % | se limita al intervalo del 10 % al 95 % |
| Vertices along surface | 12 | solo en la variante no circular; al menos 3 |
| Composite Surfaces | desactivado | variante circular |
Búsqueda por enjambre de partículas#
La optimización por enjambre de partículas (Kennedy y Eberhart, 1995) desplaza una población de soluciones candidatas por el espacio de búsqueda, de modo que cada una es atraída hacia las mejores posiciones encontradas hasta el momento. En OGR Slip2D cada partícula es un círculo, definido por un punto del cubo unidad, que se transforma en la abscisa de salida, la abscisa de entrada y el ángulo de salida de la búsqueda de talud descrita antes, con los mismos intervalos de salida y de entrada. El intervalo de ángulos es , salvo que se haya fijado el Upper Angle o el Lower Angle de la búsqueda de talud. La partícula se mueve según
donde
- mejor posición hallada por el conjunto del enjambre y por la partícula
- mejores posiciones de las dos partículas más próximas a , por distancia euclídea en el cubo unidad
- números aleatorios de distribución uniforme en , extraídos para cada partícula en cada iteración
A diferencia del algoritmo canónico, la actualización no incluye peso de inercia ni factor de constricción. Una partícula que sale del cubo se refleja hacia su interior, y la que tiene un círculo que no se puede analizar conserva su posición con un factor de seguridad infinito, de modo que el enjambre mantiene su tamaño. Si cada partícula se atrae hacia sus vecinas más próximas y no hacia el mejor global, el enjambre puede asentarse en varios mínimos a la vez (Qu, Suganthan y Das, 2013). Con el algoritmo mejorado, que es el valor por defecto, la quinta parte del enjambre con los factores más altos se reubica al azar al final de cada iteración, para que un enjambre concentrado en una sola cuenca siga explorando otras zonas.
Para obtener varios mínimos, las posiciones finales se agrupan con el procedimiento de semillas de especie de Li (2004): una vez ordenadas por factor de seguridad, la mejor partícula aún sin agrupar inicia un grupo y reúne a todas las que están dentro del radio de agrupación a su alrededor, y así sucesivamente. El radio se expresa como porcentaje de la diagonal del cubo unidad. Dos mecanismos con factores parecidos en zonas distintas del talud son dos soluciones; el factor de seguridad no interviene en el agrupamiento.
| Ajuste | Por defecto | Significado |
|---|---|---|
| Number of particles | 50 | al menos 3 |
| Number of iterations | 50 | cada partícula se evalúa una vez por iteración |
| Report several minima (Number of Mins) | desactivado | desactivado: un solo mínimo, el global |
| Grouping radius | 10 % | de la diagonal del cubo unidad |
| Use enhanced PSO algorithm | activado | Project Settings → Advanced; reubica el 20 % del enjambre en cada iteración |
Las partículas son siempre círculos, y la búsqueda se ofrece con los dos tipos de superficie. Optimize Surfaces está activado por defecto en esta búsqueda: cada mínimo que se obtiene se convierte en una polilínea de 13 puntos sobre su propio arco y se optimiza (Sección 3.4.7), de modo que la superficie resultante puede ser no circular aunque el tipo de superficie sea Circular. Si se piden varios mínimos y la optimización está desactivada, las notas del análisis advierten de que la búsqueda se dedica entonces a mínimos locales y de que el menor de ellos no tiene por qué ser el global. La fracción reubicada, del 20 %, es un valor fijado por el propio programa.
Código: ogr_slip2d/particle_swarm.py3.4.3Superficies no circulares#
Una superficie no circular es una polilínea de terreno a terreno con una sola ordenada para cada abscisa . Cada vértice, y cada contorno de material o nivel freático que la corta, obliga a trazar un límite de dovela, por lo que se descarta toda superficie con más segmentos de los que permite el número de dovelas; las notas del análisis indican cuántas se descartaron. Una polilínea no tiene centro respecto al cual tomar momentos: los métodos que usan el equilibrio de momentos los toman respecto al punto definido con Surfaces → Slope Limits → Define Moment Axis… o, por defecto, respecto a un punto construido para cada superficie a partir de su cuerda de entrada y salida, que se obtiene desplazando el punto medio de la cuerda un vector igual a la propia cuerda girada 90° (Ec. (3.2.8)).
El código fuente del programa deja constancia (D47) de que un método que satisface únicamente el equilibrio de momentos depende de la posición de ese punto. En una superficie de verificación, una polilínea inscrita en el círculo crítico dio, con el eje automático, factores un 4.7 % (Ordinario) y un 4.2 % (Bishop) inferiores a los del círculo, por fina que fuera su división, mientras que Spencer, que satisface también el equilibrio de fuerzas, quedó a menos del 0.1 % del valor del círculo. Conviene contrastar todo resultado no circular con Spencer o con GLE/Morgenstern-Price (Sección 3.2.5, Sección 3.2.6).
Búsqueda por bloques#
La búsqueda por bloques construye superficies del tipo de bloque deslizante, con una cuña activa, un bloque central y una cuña pasiva, a partir de objetos que el usuario dibuja en el modelo por donde espera que discurra la superficie. Cada objeto aporta a cada superficie de prueba uno o varios vértices:
- una ventana, que es un polígono cerrado cualquiera, da un vértice en un punto aleatorio de su interior;
- una línea da un vértice en un punto aleatorio de ella; la superficie no sigue la línea;
- un punto aporta ese mismo punto como vértice, sin necesidad de números aleatorios;
- una polilínea aporta dos puntos situados sobre ella (cada uno puede tomarse en cualquier lugar de la polilínea, en su segmento extremo o fijarse en su vértice extremo, a elegir por separado para el punto izquierdo y el derecho) y todos los vértices de la polilínea comprendidos entre ambos; la superficie sigue la polilínea entre esos dos puntos, como a lo largo de una capa débil delgada.
Los vértices se ordenan por . Desde el situado más a la izquierda asciende un segmento recto con el Left Projection Angle hasta cortar el terreno, y desde el situado más a la derecha otro con el Right Projection Angle; ambos ángulos se miden en sentido antihorario desde el eje positivo y valen por defecto 135° y 45° (Figura 3.4.3). Cualquiera de los dos puede darse como intervalo, del que se extrae un valor para cada superficie. Se descarta toda candidata con algún vértice por encima del terreno o fuera del contorno externo, con algún extremo que no aflore dentro de los límites del talud o, si está activada la opción Convex Surfaces Only, que no sea convexa. Ningún otro objeto puede solapar la extensión horizontal de un objeto de polilínea, para que el tramo correspondiente nunca quede cortado por un vértice de otro objeto.
Con Multiple Groups activado, los objetos se reparten según su Group ID y la búsqueda se ejecuta una vez por grupo, solo con los objetos de ese grupo, y el Number of Surfaces se divide a partes iguales entre los grupos (el resto se asigna al primero); la superficie crítica es la de menor factor entre todos los grupos. Está pensado para buscar a la vez varias capas débiles, con una polilínea por capa.
| Ajuste | Por defecto | Significado |
|---|---|---|
| Number of Surfaces | 5000 | candidatas generadas, válidas o no |
| Left Projection Angle, inicio y fin | 135°, 135° | un intervalo da un ángulo aleatorio por superficie |
| Right Projection Angle, inicio y fin | 45°, 45° | ídem |
| Convex Surfaces Only | desactivado | rechaza las polilíneas con un vértice reentrante |
| Multiple Groups | desactivado | una búsqueda por cada Group ID |
| Implicit Region Bands | 3 | solo se usa cuando no hay ningún objeto dibujado |
Una ventana se muestrea por rechazo sobre su rectángulo envolvente, con un máximo de 50 intentos, tras los cuales se usa la media de sus vértices. El punto en que cada extremo proyectado corta el terreno se halla avanzando a lo largo del rayo en incrementos de 0.5 unidades del modelo. Cuando no se ha dibujado ningún objeto de búsqueda por bloques, OGR Slip2D recurre a una región propia: un rectángulo sobre la cara del talud, que se extiende desde 0.3 anchuras de la cara antes de ella hasta 0.5 más allá y del 5 % al 75 % de la altura del modelo, dividido en las Implicit Region Bands, con un vértice aleatorio en cada banda situado al menos a un 10 % de la altura del modelo por debajo del terreno. Este recurso no es una forma documentada del método, y las notas del análisis lo señalan en cada ejecución de este tipo.
Código: ogr_slip2d/search.py (BlockSearch) · ogr_core/geometry/block_object.py
Búsqueda de camino#
La búsqueda de camino construye superficies irregulares segmento a segmento a partir del pie, a la manera de los generadores aleatorios de superficies irregulares que introdujeron Boutrup y Lovell (1980) (Figura 3.4.4):
- Inicio. Se elige un punto al azar en el terreno, en la mitad de los límites del talud más próxima al pie o, si hay dos ventanas de límites, en la ventana más próxima al pie.
- Primer segmento. Su inclinación se elige entre un ángulo inferior, por defecto 45° por debajo de la horizontal, y un ángulo superior, por defecto , con la inclinación de la cara del talud; los ángulos se miden en el sentido del pie hacia la coronación, de modo que un ángulo positivo asciende hacia la coronación.
- Segmentos siguientes. Todos los segmentos tienen la misma longitud
salvo que se imponga otra, con el desnivel del perfil del terreno entre los límites del talud y . Cada nueva dirección solo puede girar hacia arriba, lo que mantiene la superficie cóncava hacia arriba:
donde
- ángulo inferior del primer segmento
- fracción ya recorrida de la distancia horizontal desde el punto de inicio hasta un objetivo situado detrás de la coronación, de 0 a 1
- factor de profundidad, sorteado una vez por superficie con distribución uniforme en : con valores pequeños la superficie gira pronto hacia arriba (superficies someras) y con valores grandes, tarde (superficies profundas)
- perturbación aleatoria, uniforme en rad
La superficie termina donde un segmento alcanza el terreno, en el punto exacto de corte. Se descarta si algún vértice queda por debajo del fondo (la Minimum Elevation, si está definida; si no, la base del contorno externo), si no ha vuelto a aflorar tras 30 segmentos, si su salida queda fuera de los límites del talud, si algún vértice sale del contorno externo o, con Convex Surfaces Only, si algún vértice interior queda por encima de la cuerda de entrada y salida. El Number of Surfaces cuenta las superficies válidas: la generación continúa hasta que se han analizado tantas, con un máximo de 20 veces ese número de intentos.
| Ajuste | Por defecto | Significado |
|---|---|---|
| Number of Surfaces | 5000 | superficies válidas; como máximo 20 veces ese número de intentos |
| Upper Angle (Initial Angle at Toe) | desactivado: | el valor es un ángulo absoluto, medido en sentido antihorario desde , que se convierte al sentido del pie hacia la coronación |
| Lower Angle (Initial Angle at Toe) | desactivado: 45° por debajo de la horizontal | ídem |
| Segment Length | automática, Ec. (3.4.9) | un valor manual la sustituye |
| Convex Surfaces Only | desactivado | los vértices interiores deben quedar por debajo de la cuerda de entrada y salida |
El factor de profundidad, la ley de giro hacia un objetivo situado detrás de la coronación y el límite de 80° de la Ec. (3.4.10) son heurísticas propias del programa para generar superficies que vuelven a aflorar dentro de los límites; el máximo de 30 segmentos es una salvaguarda frente a caminos que nunca vuelven a aflorar, y es deliberadamente independiente del número de dovelas. Una Path Search no optimiza sus superficies salvo que se marque Optimize Surfaces.
Código: ogr_slip2d/search.py (PathSearch)
Búsqueda por recocido simulado#
La búsqueda por recocido simulado trata los vértices de una polilínea como las variables de una optimización global, con el método híbrido de Su (2009), que combina una fase global de recocido simulado muy rápido (Ingber, 1989) y un refinamiento local de Monte Carlo (Greco, 1996).
Variables. La superficie tiene vértices. Los dos extremos parten del pie y de la coronación de la cara del talud y se mantienen dentro de los límites del talud. Los vértices interiores son libres: el vértice permanece dentro de la -ésima de las divisiones iguales de la distancia horizontal entre los extremos, y su cota se mantiene entre el fondo , donde es la cota del extremo inferior e son la base y la parte superior del modelo, y un nivel situado un 5 % de la altura del modelo por debajo del terreno. Cada variable se normaliza y se mantiene dentro de . La búsqueda parte de una superficie en forma de cuenco que cuelga bajo la cuerda, válida por construcción, con profundidad y asimetría aleatorias.
Fase global. En cada paso se perturba cada variable normalizada con el generador del recocido simulado muy rápido y se acepta la nueva superficie con probabilidad :
donde
- temperaturas de generación y de aceptación, que parten de 1 y del factor de seguridad de la superficie inicial, respectivamente
- factor de seguridad de la nueva superficie menos el de la mejor superficie obtenida hasta el momento
Los pasos se agrupan en ciclos; el ciclo consta de pasos, con y el número de pasos de generación. Al final de cada ciclo las dos temperaturas se multiplican por el factor del esquema de enfriamiento de Su (2009),
y la temperatura de aceptación se reduce a la mitad si en el ciclo se aceptan más del doble de superficies de las que se rechazan, o se duplica si se aceptan menos de la mitad. La fase termina cuando el mejor factor no mejora en más de la tolerancia durante el número establecido de ciclos consecutivos o cuando se agotan los ciclos.
Fase local. A partir de la mejor superficie, cada vértice prueba por turnos los ocho movimientos de su entorno, salvo , de magnitud y , con aleatorio en (con valor absoluto de al menos 0.1). Se adopta el mejor de los movimientos que mejoran y se repite en la misma dirección, hasta cinco veces, mientras siga mejorando; si ningún movimiento mejora, los tamaños de paso de ese vértice se multiplican por 0.25. Los pasos parten del 5 % del ancho del modelo. Los vértices extremos se mueven a lo largo del terreno, solo en y dentro de los límites del talud. La fase termina cuando todos los pasos han descendido por debajo de la tolerancia por el ancho del modelo, tras 15 pasadas por los vértices o tras evaluaciones.
En todo el proceso, una candidata solo se utiliza si sus vértices avanzan en , los interiores quedan por debajo de la cuerda de entrada y salida, presenta un único punto bajo, su masa deslizante no es menor que el área mínima, permanece dentro del contorno externo y su factor de seguridad está entre 0.5 y 100. Una superficie que no supera las comprobaciones de admisibilidad se contabiliza, pero nunca orienta la búsqueda.
| Ajuste | Por defecto | Significado |
|---|---|---|
| Initial number of surface vertices | 8 | al menos 4 |
| Number of annealing generation steps | 1000 | determina los ciclos y los pasos de la fase global y el límite de evaluaciones de la local; con 1000, como máximo 257 pasos globales y 2000 evaluaciones locales |
| Number of factors of safety compared before stopping | 5 | ciclos consecutivos sin mejora |
| Tolerance for stopping criterion | 10−4 | menor mejora que se tiene en cuenta |
| Coefficient in temperature reduction | 8 | se mantiene entre 1 y 10 |
| Convex Surfaces Only | desactivado | rechaza las candidatas cuyo giro cambia de signo |
El factor de la Ec. (3.4.13) se aplica a las temperaturas alcanzadas al final del ciclo anterior, de modo que tras ciclos la reducción es . Optimize Surfaces está activado por defecto en esta búsqueda. Con objetos de foco, el recocido filtra tanto su trayectoria como el resultado, por lo que un foco estrecho puede dejarlo sin ninguna superficie aunque exista alguna; las notas del análisis lo advierten.
Código: ogr_slip2d/search.py (SimulatedAnnealingSearch)
3.4.4Superficies compuestas y capas débiles#
Superficies compuestas#
Un círculo que desciende por debajo del borde inferior del contorno externo se descarta, porque allí no hay suelo que cortar. Con Composite Surfaces activado, en cambio, se recorta en ese borde, de modo que un horizonte de roca modelado como base del contorno externo condiciona la búsqueda circular:
donde es la envolvente inferior del contorno externo. El máximo sigue la base siempre que el arco queda por debajo de ella, cuantas veces ocurra. En los tramos que discurren por la base, la normal a la dovela ya no pasa por el centro, por lo que los momentos se toman, respecto al centro del círculo, con el equilibrio general de Fredlund y Krahn (1977). La opción figura en los paneles de las búsquedas Grid, Slope y Auto Refine y está desactivada por defecto; mientras está activada, se aplica a todos los círculos analizados.
Capas débiles#
Una capa débil es una línea que se dibuja con Boundaries → Add Weak Layer y a la que se asigna un material (una junta, un plano de estratificación, una interfaz de geomembrana), y a lo largo de la cual puede discurrir una superficie de rotura en lugar de atravesarla. Nunca divide el modelo en regiones. Cualquier superficie de prueba, de cualquier búsqueda, que alcance una capa débil se sustituye por
donde
- la superficie de prueba tal como se generó
- las capas débiles activas y su cota
de modo que la superficie discurre por una capa donde esta queda por encima de ella, con la resistencia del material de la capa en ese tramo, y vuelve a la superficie de prueba, o sube a una capa más alta, donde la cruza de nuevo. Las capas que están activas dependen de la opción Weak Layer Handling de Surface Options:
- Always snap to highest layer (por defecto): están activas todas las capas que tocan la superficie, y esta sigue la más alta; una evaluación por superficie.
- Automatic case generation: se evalúan todas las combinaciones de activación de las capas que tocan la superficie, incluida la que no activa ninguna, y se conserva el menor factor; son evaluaciones para capas. Se considera que una capa toca la superficie si la recortaría por sí sola. Si el número de capas supera el valor de Most layers to combine (6 por defecto, es decir, 64 casos), la superficie sigue la capa más alta y las notas del análisis lo indican.
Donde termina una capa, la superficie regresa a la superficie de prueba mediante un escalón vertical. Una superficie recortada se descarta si alguna base de dovela es más inclinada que el Maximum slice base angle (80° por defecto, Project Settings → Advanced); con un valor de 90° o más, o de cero, desaparece este límite. Solo se aplica a las superficies recortadas por una capa débil. En toda superficie, para los métodos en los que se aplica, la comprobación de m-alfa actúa como un tope de unos 78.5° para las bases en un material con (Sección 3.3.5).
Las capas débiles se aplican en el único paso de evaluación que emplean todas las búsquedas, de modo que un modelo sin capas débiles evalúa las superficies tal como se generan. El análisis avisa si una capa débil no tiene material, pues modificaría la geometría de las superficies sin aportar resistencia propia, y si queda por completo por encima del terreno.
Código: ogr_slip2d/weak_layers.py · ogr_slip2d/surface.py3.4.5Objetos de foco#
Un objeto de foco limita la búsqueda a las superficies que interaccionan con una región que interesa al ingeniero: una capa débil, una estructura, un punto donde se observó una grieta. Hay cuatro tipos, que se crean desde Surfaces → Focus Search, y toda superficie debe cumplir las condiciones de todos los objetos habilitados. Las pruebas dependen de lo que genera la búsqueda (Tabla 3.4.9): un círculo se juzga como círculo completo, por su centro y su radio, y una polilínea, por sus vértices y segmentos.
| Objeto | Círculo (centro , radio ) | Polilínea |
|---|---|---|
| Focus Window (polígono) | algún punto del círculo queda dentro de ella (se comprueban 72 puntos) | un vértice queda dentro de ella o un segmento cruza su borde |
| Focus Line (segmento) | el segmento corta el círculo | un segmento de la superficie la corta; basta con que la toque |
| Focus Point | la superficie pasa a una distancia no superior a del punto | |
| Focus Tangent (recta) | la distancia de a la recta infinita difiere de en menos de | llega a menos de de la recta infinita y no la cruza en más de |
Los objetos de foco filtran las superficies de prueba antes de calcular su factor de seguridad, y esto es lo que los hace baratos: rechazar una superficie cuesta unos pocos cálculos de distancia, mientras que evaluarla exige dividirla en dovelas e iterar. Actúan en todas las búsquedas, en el momento de la generación; los paseos aleatorios del refinamiento de la búsqueda de talud, del recocido simulado y de la optimización nunca dan un paso que incumpla alguno de ellos, y una partícula del enjambre que los incumple se puntúa como no válida. Las superficies eliminadas por un foco se cuentan aparte de las no válidas, de modo que las poblaciones de una ejecución con foco y otra sin él siguen siendo comparables. Las superficies que el usuario define a mano no se filtran.
Un objeto de foco delimita las superficies que conserva una búsqueda, pero no las genera; por eso un Focus Point o un Focus Tangent no reduce una búsqueda por rejilla a un círculo por centro, como haría una regla de generación. La prueba de tangencia de una polilínea, que consiste en tocar la recta sin cruzarla, es una interpretación propia del programa, ya que, en sentido estricto, la tangencia solo se define para círculos. En las búsquedas por recocido simulado y por enjambre de partículas, que avanzan de una candidata a la siguiente, un foco estrecho puede interrumpir el recorrido antes de que alcance una superficie que lo cumpla, y las notas del análisis advierten de ello; con una Grid, Path o Block Search se llega con más fiabilidad a una región muy acotada por un foco.
Código: ogr_slip2d/focus.py3.4.6Límites del talud y filtros de superficies#
Límites del talud#
Los límites del talud son dos abscisas entre las cuales puede aflorar una superficie de rotura. Por defecto son automáticos, en los dos extremos del perfil del terreno; se pueden fijar con Surfaces → Slope Limits → Define Limits…, y es posible añadir un segundo par para definir dos ventanas separadas, por ejemplo una en el pie y otra en la coronación. Tienen dos funciones:
- Filtro. En toda búsqueda y para todo tipo de superficie, los dos extremos de cada masa deslizante deben aflorar dentro de alguna de las ventanas; ambos pueden estar en la misma.
- Generación. Las búsquedas que construyen las candidatas a partir del terreno los toman como el tramo de terreno en que trabajar: la búsqueda por rejilla, para fijar los radios; la de refinado automático, para sus divisiones; la de camino, para el intervalo de inicio y la longitud de los segmentos; y el recocido simulado, para el intervalo de sus vértices extremos. En cambio, la búsqueda de talud y la de enjambre de partículas trazan los círculos a partir de la cara del talud, y la búsqueda por bloques, a partir de sus objetos.
Una segunda ventana definida sin la primera se ignora, y se deja constancia en una nota.
Filtros de superficies#
Tres filtros de Surface Options descartan superficies antes de resolverlas:
- Minimum elevation: el punto más bajo que alcanza realmente la superficie, calculado de forma exacta a partir de su geometría, no puede quedar por debajo de esta cota.
- Minimum depth: la mayor distancia vertical de la superficie al terreno, entre todas las dovelas, debe superar este valor, con lo que se eliminan las superficies muy someras.
- Minimum area: el área de la masa deslizante,
con y la anchura y la altura de cada dovela. Si no se define el filtro, cada búsqueda usa su propio valor (Tabla 3.4.10); un valor de cero se trata como no definido.
| Búsqueda | Grid | Slope | Auto Refine | Particle Swarm | Block | Path | Simulated Annealing |
|---|---|---|---|---|---|---|---|
| (m²) | 1.0 | 1.0 | 0.5 | 1.0 | 2.0 | 1.0 | 1.0 |
En todas las búsquedas, salvo el recocido simulado, que admite factores de 0.5 a 100, también se considera no válida una superficie cuyo factor de seguridad resulte inferior a 0.2 o superior a 100. Una superficie eliminada por un filtro se cuenta como no válida, de modo que el número total de superficies que genera una búsqueda no cambia al definir un filtro. Además de los filtros, se descarta toda superficie de prueba que no se pueda dividir en al menos tres dovelas con el número de dovelas establecido, y la superficie que no supera la comprobación de m-alfa o la de tracción (Tensile Stress Check) una vez convergido su factor de seguridad se conserva en los resultados, pero nunca puede ser la superficie crítica (Sección 3.3.5 y Sección 3.3.6).
Las superficies de rotura definidas a mano con Surfaces → Add Surface (centre and radius)… o con Add Surface (three points) se evalúan con todas las búsquedas de un análisis circular, se someten a los mismos filtros (pero no a los objetos de foco) y compiten por el mínimo; cuando una de ellas resulta ser la superficie crítica, las notas del análisis lo indican.
3.4.7Optimización de superficies no circulares#
Una búsqueda no circular da como resultado la mejor de las superficies generadas, que casi siempre se puede mejorar moviendo sus vértices. Optimize Surfaces lo hace mediante el paseo aleatorio de Greco (1996): se perturba un vértice al azar, se recalcula el factor de seguridad y se conserva el cambio si este disminuye.
- Primero se dan a la superficie 12 vértices, dividiendo por la mitad su segmento más largo tantas veces como haga falta. Los dos vértices extremos permanecen fijos.
- En cada pasada se recorren los vértices móviles en orden aleatorio. Se sortea una posición de prueba en una dirección aleatoria, a una distancia comprendida entre 0.2 y 1 veces el paso actual, y se acepta si la superficie sigue teniendo una sola cota para cada , ningún ángulo cóncavo entre segmentos adyacentes supera el límite, la superficie es válida y admisible y su factor de seguridad disminuye.
- El paso parte del 5 % de la longitud de la superficie. Después de una pasada sin mejora se multiplica por el Step Reduction Factor, hasta un mínimo del 0.2 % de la longitud.
- El paseo se detiene cuando el factor de seguridad de la última pasada difiere de la media de las cinco últimas, incluida la actual, en menos que la tolerancia, o cuando se alcanza el número máximo de evaluaciones:
Por último, con la opción Snap Shallow Surfaces to Slope, los vértices interiores que quedan por debajo del terreno a una distancia menor que un pequeño umbral se llevan hasta el terreno, se recortan los extremos de espesor nulo que resultan y se evalúa de nuevo la superficie; como consecuencia, el factor de seguridad puede aumentar.
| Ajuste | Por defecto | Significado |
|---|---|---|
| Optimize Surfaces | activado en Simulated Annealing, Particle Swarm y Auto Refine no circular; desactivado en Block y Path | se ofrece solo para superficies no circulares; en las búsquedas Grid, Slope y Auto Refine circular se ignora, con una nota |
| Surfaces to Optimize | Global Minimum | o All, o las que tienen un factor de seguridad menor que un valor dado (1.5) |
| Maximum iterations | 4000 | evaluaciones del factor de seguridad |
| Tolerance | 10−9 | Ec. (3.4.17), contada en pasadas |
| Step Reduction Factor | 0.5 | se aplica tras una pasada sin mejora |
| Maximum concave angle | activado, 5° | mayor ángulo cóncavo permitido entre segmentos adyacentes; si se desmarca, 0°. El ángulo cóncavo más pronunciado de la propia superficie inicial siempre se admite |
| Explore All Vertices Before Moving Surface | desactivado | activado: cada vértice se sondea con tres movimientos aleatorios, se guarda el mejor de cada uno y se aplican todos a la vez |
| Snap Shallow Surfaces to Slope | activado, distancia automática | automática: 10−3 del desnivel del terreno |
| Use checks for depth, elevation, concave surface | activado | desactivado: el paseo ignora Minimum elevation, Minimum depth y el límite cóncavo |
La optimización se ejecuta después de la búsqueda, sobre las superficies seleccionadas; solo se añade a los resultados el mejor paseo, y solo si mejora lo que había encontrado la búsqueda, de modo que el informe puede indicar que la superficie crítica procede de la optimización. Cuando la búsqueda por enjambre de partículas da varios mínimos, cada uno se optimiza y se conserva. Los paseos usan la semilla del proyecto, la misma para todas las superficies. Surfaces → Optimize Surfaces… aplica esa misma optimización, con los ajustes del proyecto, a la superficie crítica no circular de un método una vez realizado el análisis.
Código: ogr_slip2d/optimize.py · ogr_core/project/settings.py (optimize_enabled_for)
3.4.8Comprobación de que la búsqueda ha encontrado el mínimo#
Ninguna búsqueda demuestra que ha encontrado el mínimo global. Las comprobaciones siguientes, todas disponibles en el programa, lo hacen probable (Duncan, Wright y Brandon, 2014):
- Lee las notas del análisis. Indican cuándo el centro crítico de una rejilla está en su borde, cuándo se descartaron superficies porque no se pudieron dividir en dovelas o salían del modelo, cuándo un filtro o un foco puede haber eliminado el mecanismo, cuándo la superficie obtenida sale del terreno con una inclinación de 85° o más, por lo que su factor depende del número de dovelas, y cuándo se apoya en un m-alfa inferior a 0.5.
- Refina la búsqueda y compara. Una rejilla más fina, más radios, más superficies o más iteraciones no deberían reducir el mínimo de forma apreciable. Si lo hacen, la búsqueda era demasiado gruesa.
- Cambia la semilla. En las búsquedas aleatorias, una semilla distinta, o la opción Random de la página Random Numbers, debería dar un mínimo similar.
- Usa más de una búsqueda. Compara una búsqueda circular con una no circular, y una por rejilla con una de talud o de enjambre. El enjambre de partículas con varios mínimos muestra si existen en otro punto del talud otros mecanismos con factores similares.
- Compara métodos. Spencer y GLE/Morgenstern-Price satisfacen ambos equilibrios; conviene contrastar con ellos un resultado de solo momentos en una superficie no circular (Sección 3.4.3).
- Prueba el mecanismo que sospechas. Defínelo a mano como superficie de usuario; se evalúa junto con la búsqueda y compite por el mínimo.
- Mira todas las superficies. En la ventana de interpretación, Data → All Surfaces dibuja todas las superficies válidas analizadas y Data → Minimum Surfaces la de menor factor en cada centro de la rejilla (Sección 2.8); permiten ver si el mínimo está aislado o se encuentra en una región amplia y bien muestreada.
3.4.9Referencias#
- Boutrup, E. & Lovell, C.W. (1980). Searching techniques in slope stability analysis. Engineering Geology, 16(1–2), 51–61.
- Cheng, Y.M., Li, L. & Chi, S.C. (2007). Performance studies on six heuristic global optimization methods in the location of critical slip surface. Computers and Geotechnics, 34(6), 462–484.
- Duncan, J.M., Wright, S.G. & Brandon, T.L. (2014). Soil Strength and Slope Stability, 2nd ed. Wiley.
- Fredlund, D.G. & Krahn, J. (1977). Comparison of slope stability methods of analysis. Canadian Geotechnical Journal, 14(3), 429–439.
- Greco, V.R. (1996). Efficient Monte Carlo technique for locating critical slip surface. Journal of Geotechnical Engineering, ASCE, 122(7), 517–525.
- Ingber, L. (1989). Very fast simulated re-annealing. Mathematical and Computer Modelling, 12(8), 967–973.
- Kennedy, J. & Eberhart, R. (1995). Particle swarm optimization. Proceedings of the IEEE International Conference on Neural Networks, Perth, 4, 1942–1948.
- Li, X. (2004). Adaptively choosing neighbourhood bests using species in a particle swarm optimizer for multimodal function optimization. In Genetic and Evolutionary Computation – GECCO 2004, Lecture Notes in Computer Science 3102, 105–116. Springer.
- Qu, B.Y., Suganthan, P.N. & Das, S. (2013). A distance-based locally informed particle swarm model for multimodal optimization. IEEE Transactions on Evolutionary Computation, 17(3), 387–402.
- Su, X. (2009). Global Optimization of General Failure Surfaces in Slope Analysis by Hybrid Simulated Annealing. 2B Work Report, Faculty of Engineering, University of Waterloo, Waterloo, Ontario.