CARACTERIZACIÓN DE LAS DIMENSIONES DE FALLAS EN …

16
CARACTERIZACIÓN DE LAS DIMENSIONES DE FALLAS EN PILOTES MEDIANTE REDES NEURONALES (1) Ing. Civil Peker Uri, (2) Bianchi Leonel y (3) Dr. Ing. Jouglard, Claudio Departamento de Ingeniería Civil. Facultad Regional Buenos Aires. UTN. (1) [email protected], (2) [email protected] y (3) [email protected] RESUMEN En la ingeniería civil es muy habitual el uso de fundaciones tipo pilote. Para asegurar la calidad de esta fundación se utilizan distintos ensayos, uno muy común es el ensayo de integridad de pilotes. Este ensayo no destructivo es uno de los más populares dado su bajo costo. El problema principal de este ensayo es que su interpretación, aún hoy debe ser realizada manualmente por un experto en la especialidad de dinámica estructural. Dado que en muchas obras civiles es normal que se realicen cientos de pilotes y no hay tiempo suficiente para interpretar los ensayos de cado uno, el uso de técnicas de inteligencia artificial podría agilizar estos análisis. En este trabajo se propone una metodología de interpretación con el uso de redes neuronales para caracterizar fallas por estricción en pilotes. Si bien se trata de una aplicación específica también se intenta mostrar la potencialidad de la aplicación de técnicas de inteligencia artificial a problemas de ingeniería civil. ABSTRACT The use of pile foundations is very common in civil engineering. Different tests are used to ensure the quality of this foundation, a very common one is the pile integrity test. This non-destructive test is one of the most popular due to its low cost. The main problem with this test is that its interpretation, even today, must be performed manually by an expert in the field of structural dynamics. Since in many civil works it is normal that hundreds of piles are made and there is not enough time to interpret the tests of each one, the use of artificial intelligence techniques could speed up these analyses. In this work we propose an interpretation methodology using neural networks to characterize pile striction failures. Although this is a specific application, it is also intended to show the potential of the application of artificial intelligence techniques to civil engineering problems.

Transcript of CARACTERIZACIÓN DE LAS DIMENSIONES DE FALLAS EN …

Page 1: CARACTERIZACIÓN DE LAS DIMENSIONES DE FALLAS EN …

CARACTERIZACIÓN DE LAS DIMENSIONES DE FALLAS EN PILOTES MEDIANTE REDES NEURONALES

(1)Ing. Civil Peker Uri, (2)Bianchi Leonel y (3)Dr. Ing. Jouglard, Claudio Departamento de Ingeniería Civil. Facultad Regional Buenos Aires. UTN.

(1)[email protected], (2)[email protected] y (3)[email protected]

RESUMEN

En la ingeniería civil es muy habitual el uso de fundaciones tipo pilote. Para asegurar la calidad de esta fundación se utilizan distintos ensayos, uno muy común es el ensayo de integridad de pilotes. Este ensayo no destructivo es uno de los más populares dado su bajo costo. El problema principal de este ensayo es que su interpretación, aún hoy debe ser realizada manualmente por un experto en la especialidad de dinámica estructural. Dado que en muchas obras civiles es normal que se realicen cientos de pilotes y no hay tiempo suficiente para interpretar los ensayos de cado uno, el uso de técnicas de inteligencia artificial podría agilizar estos análisis. En este trabajo se propone una metodología de interpretación con el uso de redes neuronales para caracterizar fallas por estricción en pilotes. Si bien se trata de una aplicación específica también se intenta mostrar la potencialidad de la aplicación de técnicas de inteligencia artificial a problemas de ingeniería civil.

ABSTRACT

The use of pile foundations is very common in civil engineering. Different tests are used

to ensure the quality of this foundation, a very common one is the pile integrity test. This

non-destructive test is one of the most popular due to its low cost. The main problem with

this test is that its interpretation, even today, must be performed manually by an expert in

the field of structural dynamics. Since in many civil works it is normal that hundreds of

piles are made and there is not enough time to interpret the tests of each one, the use of

artificial intelligence techniques could speed up these analyses. In this work we propose

an interpretation methodology using neural networks to characterize pile striction failures.

Although this is a specific application, it is also intended to show the potential of the

application of artificial intelligence techniques to civil engineering problems.

Page 2: CARACTERIZACIÓN DE LAS DIMENSIONES DE FALLAS EN …

INTRODUCCIÓN

En el proceso de construcción de pilotes pueden generarse diversas patologías, entre ellas se pueden mencionar las cavidades, cuellos de botella y desmoronamiento de suelos. Gracias a los avances tecnológicos en adquisición de señales sen han creado diversos tipos de ensayos no destructivos para poder realizar un control de calidad de los pilotes existentes siendo uno de los mas populares el ensayo de integridad de pilotes (ASTM D5882-07: Standard Test Method for Low Strain Impact Integrity Testing of Deep Foundations, 2007).

Figura 1: Ejemplo de discontinuidad en pilotes

En el ensayo de integridad de pilotes se mide con un acelerómetro la respuesta de la estructura ante una carga generada por el golpe de un martillo. Al utilizar la teoría de propagación de ondas es posible hallar las discontinuidades en el pilote por los cambios en la señal.

Las conclusiones sobre las señales adquiridas generalmente las realizan personas capacitadas en esta área. Si bien es relativamente sencillo adquirir la señal, es notablemente complejo analizarla. Solo ingenieros con experiencia en dinámica de las estructuras, mecánica del solido y técnicas constructivas de pilotes pueden observar que tipo de falla hay y en que parte del pilote se sitúa. La consecuencia de esto lleva a que se pierda mucho tiempo para realizar cada análisis y con esto pueden generarse retrasos en las obras de ingeniería.

Dado que en muchas obras de ingeniería es común el uso masivo de pilotes y que el ensayo de integridad es de bajo costo en este trabajo se pretende realizar un ejemplo académico como primer acercamiento al uso redes neuronales para detectar el tamaño de estricciones sin hacer uso de modelos numéricos. Esto se logra al entrenar una red neuronal con una cantidad suficiente de ejemplos de señales de propagación de ondas en pilotes. Para realizar este trabajo nos basamos en publicaciones existentes(Watson et al., 2001).

Page 3: CARACTERIZACIÓN DE LAS DIMENSIONES DE FALLAS EN …

ENSAYO DE INTEGRIDAD DE PILOTES

Existen dos maneras de realizar este ensayo. La primera consta de medir la velocidad que experimenta el acelerómetro y generalmente se representa en el dominio del tiempo. En la segunda manera se mide la velocidad que experimenta el pilote y la fuerza del impacto y generalmente se evalúa en el dominio de la frecuencia.

El elemento que frecuentemente es usado para generar el impacto es un martillo con un sensor piezoeléctrico que mide la fuerza de impacto. Para obtener la velocidad se hace uso de uno o mas acelerómetros que proveen una señal capaz se ser integrada para conocer la velocidad que se experimenta en la superficie golpeada.

Figura 2: Ejemplo ilustrativo del ensayo

MODELO UTILIZADO PARA REALIZAR LOS EVENTOS DE ENTRENAMIENTO DE

LA RED NEURONAL

Para realizar los eventos se resolvió la ecuación diferencial de propagación de ondas en pilotes. En esta ecuación se adopto la hipótesis de material y suelo homogéneo. A su vez, se tuvo en cuenta la resistencia del suelo tanto por fuste como por punta.

Se asume una fuerza superior de corta duración.

Teniendo en cuenta las relaciones cinemáticas, equilibrio y relaciones mecánicas, llegamos a la siguiente ecuación diferencial a resolver(Verruijt, 2010):

Page 4: CARACTERIZACIÓN DE LAS DIMENSIONES DE FALLAS EN …

𝜋

4

𝜕𝜎 ∅2

𝜕𝑥− 𝜌

𝜋∅2

4

𝜕2𝑢

𝜕𝑡2− 𝜏𝜋∅ = 0

(1)

𝜎 = 𝐸𝜀 (2)

𝜏 = 𝑘𝑢 − 𝑐�̇� (3)

𝐸

4

𝜕(𝜃2𝑢′)

𝜕𝑥− 𝜌

𝜃2

4�̈� − (𝑘𝑢 + 𝑐�̇�) = 0

(4)

Figura 3: Esquema de estructura analizada

Dado que tanto el desplazamiento como la velocidad en el instante inicial son nulos, las

condiciones iniciales del problema son:

𝑢(𝑥, 0) = 0 (5)

�̇� (𝑥, 0) = 0 (6)

El borde superior es libre. Por lo tanto, la condición de borde es:

𝑥 = 0 , 𝑢′(0, 𝑡) =4𝑃(𝑡)

𝐸𝜋∅2

(7)

Page 5: CARACTERIZACIÓN DE LAS DIMENSIONES DE FALLAS EN …

En el borde inferior se encuentra sobre el suelo. Por lo tanto, la condición de borde es:

𝑥 = 𝐿, 𝐾𝑢(𝐿, 𝑡) + 𝐶�̇�(𝐿, 𝑡) = 𝑢′(𝐿, 𝑡)𝐸𝜋∅2

4

(8)

La ecuación diferencial fue resuelta haciendo uso del método de curvas características y luego realizando una integración numérica a lo largo de la curva(Verruijt, 2010).

Para generar los ensayos asumimos las siguientes propiedades de suelo y de calidad de

hormigón.

E = 20GPa Modulo de elasticidad del hormigón (9)

ρ = 2.4𝑡𝑛

𝑚3

Densidad del hormigón (10)

𝐿 = 6𝑚 Longitud del pilote (11)

𝑣𝑠 = 500𝑚

𝑠 Velocidad de propagación de las ondas de corte en el

terreno (12)

𝑘 = 40𝑘𝑔𝑓

𝑐𝑚3

Rigidez a la fricción del suelo (13)

𝑐 = 0.01𝑘𝑔𝑓 𝑠

𝑐𝑚3

Coeficiente de amortiguamiento del suelo (14)

𝑣𝑝 = √𝐸

ρ

Velocidad de propagación de ondas de tensión (15)

𝐾 = 50𝐸𝜋∅2

4𝐿

𝑣𝑠

𝑣𝑝

Rigidez en la punta del pilote (16)

𝐶 = 𝐾 0.026𝐿

𝑣𝑠

Coeficiente de amortiguamiento en la punta del pilote (17)

Para realizar los ejemplos se utilizaron diámetros de 40cm, 50cm, 60cm y 70cm.

𝑃(𝑡) =

{

500𝑘𝑁

𝑡

0.0001𝑠𝑠𝑖 𝑡 ≤ 0.0001𝑠

500𝑘𝑁 𝑠𝑖 0.0001𝑠 < 𝑡 ≤ 0.0006𝑠

500𝑘𝑁 (1 −𝑡 − 0.0006𝑠

0.0001𝑠) 𝑠𝑖 0.0006𝑠 < 𝑡 ≤ 0.0007𝑠

0 𝑘𝑁 𝑠𝑖 𝑡 > 0.0007𝑠

(18)

METODOLOGÍA ADOPTADA PARA RECONOCER LAS ESTRICCIONES

Apuntando a armar un programa inteligente y automático de interpretación de estricciones se propone la siguiente metodología:

Page 6: CARACTERIZACIÓN DE LAS DIMENSIONES DE FALLAS EN …

Dado que se asume una velocidad de propagación de tensiones constantes cuando la señal cambia respecto del caso sin fallas se puede obtener el instante de tiempo en el que la onda alcanza la estricción. A su vez, cuando se representa la señal en el dominio de la frecuencia podemos notar que la onda de propagación de tensiones tiene un periodo en la que llega hasta el final del pilote y rebota. Cuando existe una estricción lo suficientemente grande se puede notar como se genera una diferencia de frecuencias que se repite entre los picos (Davis et al., 1974).

Figura 4: Respuesta en el dominio del tiempo de pilote sin estricción

Figura 5: Respuesta en el dominio de la frecuencia de pilote sin estricción

Figura 6: Respuesta en el dominio del tiempo de pilote con estricción en el primer cuarto de la longitud

Page 7: CARACTERIZACIÓN DE LAS DIMENSIONES DE FALLAS EN …

Figura 7: Respuesta en el dominio de la frecuencia de pilote con estricción en el primer cuarto de la longitud

INTRODUCCIÓN A REDES NEURONALES

Las redes neuronales son modelos matemáticos de gran aplicación en el campo de la inteligencia artificial gracias al avance en la potencia computacional. Estos modelos se basan en capas de neuronas interconectadas que a partir de un proceso de aprendizaje generan predicciones, es decir, reciben valores de entrada, los procesan y emiten valores de salida. Cada interconexión de neuronas representa un parámetro de la red llamado peso, por lo que, a mayor cantidad de neuronas y capas, el modelo tiene más parámetros y por lo tanto puede encontrar patrones y relaciones no lineales más complejas(Bishop, 2006).

Es necesario contar con un conjunto de datos que serán mostrados a la red neuronal para encontrar los valores de peso que minimizan el error de predicción. A esto se lo llama entrenamiento de la red neuronal.

COLECCIÓN DE DATOS

El conjunto de datos utilizado para el entrenamiento de la red neuronal se obtiene del método numérico y la transformada de Fourier. El daño se simula como una reducción del diámetro en una zona particular del pilote. Para cada uno de los diámetros adoptados se generaron unos 9 tipos de reducciones en cada décimo del pilote, logrando así una caracterización uniforme de las posibles fallas.

Page 8: CARACTERIZACIÓN DE LAS DIMENSIONES DE FALLAS EN …

Figura 8: Ejemplos de como se modificaron los parámetros para cada caso.

Combinando diferentes posiciones de las estricciones, diferentes longitudes de la mismas y diferentes reducciones diametrales se generaron un total de 870 casos de daños y para cada uno de ellos se obtuvo la señal en el dominio de la frecuencia de la cual se extraerán los valores de entrada de la red.

MODELOS

Los modelos desarrollados son de aprendizaje supervisado, es decir, cada ejemplo del conjunto de datos de entrenamiento tiene una etiqueta o valor de salida asociado: 0 si es daño leve, 1 si es daño severo.

Se crean dos modelos de redes neuronales. El primero permite saber si el pilote presenta un daño severo o leve (Modelo 1). En caso de que el daño sea severo, un segundo modelo permite clasificarlo en severo o muy severo (Modelo 2).

Page 9: CARACTERIZACIÓN DE LAS DIMENSIONES DE FALLAS EN …

Figura 9: Diagrama de flujo

VALORES DE ENTRADA Y SALIDA

Cada ejemplo del conjunto de datos viene dado por dos valores de entrada que surgen de la señal en el dominio de la frecuencia:

Valores de entrada

X1 Distancia entre los dos primeros picos

X2 Diferencia de amplitud entre los dos primeros picos

Tabla 1 – Valores de entrada

Figura 10: Ejemplo de valores de entrada para entrenar la red.

Page 10: CARACTERIZACIÓN DE LAS DIMENSIONES DE FALLAS EN …

Cada uno de los ejemplos, a su vez, es etiquetado con un valor de salida según su daño:

Valores de salida - Modelo 1

0 Daño leve La estricción es menor a un 25% del diámetro.

1 Daño severo La estricción es mayor al 25% del diámetro.

Valores de salida - Modelo 2

0 Daño severo La estricción mayor al 25% del diámetro y menor a un 50%.

1 Daño muy severo La estricción es mayor a un 75% del diámetro.

Tabla 2 – Distinción de daños

PROCESAMIENTO DE INFORMACIÓN EN UNA NEURONA

Las neuronas reciben valores de entrada y emiten un valor de salida que se define como:

𝑦 = 𝑔(𝑤0 ∗ 𝑥0 +𝑤1 ∗ 𝑥1 +𝑤2 ∗ 𝑥2 +⋯+𝑤𝑁 ∗ 𝑥𝑁 + 𝑏) (19)

Figura 11: Funcionamiento de red neuronal

Siendo g la función de activación de la neurona. Es decir, la neurona primero calcula la combinación lineal de los pesos y las entradas mas un valor de sesgo, y luego aplica una función de activación al resultado obtenido. Las funciones de activación se utilizan para dar no linealidad al modelo. Son especialmente útiles en redes profundas, es decir, con varias capas ocultas.

El valor computado por la neurona se transmite a las neuronas de la capa siguiente para que realicen el mismo procesamiento.

Page 11: CARACTERIZACIÓN DE LAS DIMENSIONES DE FALLAS EN …

FUNCIONES DE ACTIVACIÓN

La función de activación usada en las capas ocultas de la red propuesta es RELU que se define como:

𝑔(𝑥) = max (0, 𝑥) (20)

Figura 12: Función de activación RELU

En cambio, la activación de las neuronas de la capa de salida viene dada por la función sigmoide, que se define como:

𝑠𝑖𝑔𝑚𝑜𝑖𝑑(𝑥) =1

1 + 𝑒−𝑥

(21)

Figura 13: Función de activación sigmoide

La función sigmoide para la capa de salida en tareas de clasificación binaria es ampliamente utilizada ya que su imagen varia entre 0 y 1, devolviendo una probabilidad. Para las capas ocultas la función tangente y ReLU son las que mejor rendimiento tienen. En este caso, la función tangente arrojó resultados menos favorables.

Page 12: CARACTERIZACIÓN DE LAS DIMENSIONES DE FALLAS EN …

ESTRUCTURA DE LA RED

La estructura de una red viene dada a grandes rasgos por su cantidad de capas y la cantidad de neuronas por capa. En este proyecto se adoptó la siguiente estructura para ambos modelos:

Figura 14: Estructura de red neuronal adoptada para ambos modelos

Tipo de capa Dimensiones del vector

de salida Parámetros

Dense 2 6

Dense 4 12

Dense 8 40

Dense 4 36

Dense 1 5

Total de parámetros: 99

Tabla 3 – Resumen de la estructura de la red

Se adoptaron los siguientes valores para el proceso de aprendizaje y backpropagation:

Page 13: CARACTERIZACIÓN DE LAS DIMENSIONES DE FALLAS EN …

Modelo 1 Modelo 2

Tasa de aprendizaje 0.001 0.001

Función de perdida Binary cross entropy Binary cross entropy

Optimizador Adam Adam

Epochs 25 12

Tabla 4 – Hiperparámetros y funciones adoptadas para el entrenamiento

DATOS DE ENTRENAMIENTO, DE VALIDACIÓN Y DE EVALUACIÓN.

Para obtener un modelo que haga predicciones correctas en casos que no haya visto antes, es fundamental tener tres conjuntos de datos: de entrenamiento, de evaluación y de validación.

Datos de entrenamiento: ejemplos que son mostrados a la red para que durante el

proceso de aprendizaje encuentre los valores de peso que minimizan el error de

predicción. (representan el 64% del conjunto de datos)

Datos de evaluación: ejemplos que la red nunca vio y sobre los cuales se harán

predicciones para evaluar la precisión que tiene el modelo (representan el 20% del

conjunto de datos)

Datos de validación: ejemplos que se utilizarán durante iteraciones que haremos

con el conjunto de entrenamiento. Son un subconjunto de los datos de

entrenamiento. (representan el 16% del conjunto de datos).

ENTRENAMIENTO DE LA RED

La estructura de la red y los parámetros de aprendizaje adoptados vienen dados por la tarea a resolver y la cantidad de datos que disponemos. Siendo que este proyecto configura una prueba de concepto para luego en otra instancia confeccionar un modelo más completo, se optó por conjunto de datos no tan elevado y una estructura de red sencilla.

La red fue programada en Python usando cuatro librerías de código abierto: Pandas, para la manipulación de los conjuntos de datos; Numpy, para realizar operaciones entre vectores y matrices; Matplotlib para los gráficos; y Keras, una librería escrita en Python para la programación de redes neuronales.

Page 14: CARACTERIZACIÓN DE LAS DIMENSIONES DE FALLAS EN …

SOBREAJUSTE (OVERFITTING) Y SUBAJUSTE (UNDERFITTING)

Si bien crear una estructura de red robusta permite identificar relaciones no lineales y patrones complejos, existe la posibilidad que el modelo se vea afectado por tendencias locales de los datos siendo incapaz de generalizar a datos más amplios. A esto se lo llama sobreajuste (overfitting) y significa que la red se desempeña bien para los datos de entrenamiento, pero no para los de evaluación, es decir, es bueno para predecir casos que ya vio, pero malo para predecir casos que nunca vio. Esto ocurre en redes que son muy complejas para la cantidad de datos que se tiene. Por el contrario, hay subajuste (underfitting) cuando la red no ha sido entrenada con la suficiente cantidad de casos para tener un comportamiento predictivo adecuado.

Para saber si mi modelo se esta sobre ajustando a los datos, es útil graficar la curva de aprendizaje que relaciona los valores de perdida con el avance del entrenamiento. Si la curva para datos de entramiento se encuentra por debajo de la de validación, el modelo se está sobre ajustando a los datos.

Figura 15: Curvas de aprendizaje de red 1 y 2

Vemos que el modelo no se sobreajusta a los datos.

EVALUACIÓN DEL MODELO

La métrica adoptada para evaluar a los modelos es la exactitud (accuracy), la cual mide el porcentaje de aciertos. Para el Modelo 1, la misma fue del 80.4%, mientras que para

Page 15: CARACTERIZACIÓN DE LAS DIMENSIONES DE FALLAS EN …

el Modelo 2 fue del 75%. Dicha evaluación se hace con el conjunto de datos de evaluación, es decir, ejemplos que la red no vio antes.

Ahora bien, evaluar el modelo únicamente con la métrica predicha es condición necesaria pero no suficiente para poder garantizar un buen rendimiento. Siendo que la confección de la red fue realizada a fines de prueba de concepto, consideramos realizar una evaluación rápida y sencilla únicamente con esta métrica.

En futuras aplicaciones y desarrollos de un modelo de redes neuronales capaz de ser utilizado en el ámbito profesional, es requerido también verificar buenos resultados de evaluación con otras métricas. Algunas de ellas son la precisión, la exhaustividad o recall, matriz de confusión y Valor-F o F1-score.

CONCLUSIONES

En el desarrollo de este ejemplo de aplicación pudimos dar una introducción al desarrollo de modelos predictivos basados en redes neuronales en el contexto de la dinámica de las estructuras. La principal motivación fue dar un abordaje teórico de como el comportamiento dinámico de los pilotes puede ser utilizado para generar algoritmos capaces de diagnosticar la condición de daño de un pilote usando sus propiedades dinámicas y las del suelo de fundación.

Al mismo tiempo, pudimos construir un modelo de redes neuronales para ver su desempeño a modo de prueba de concepto, es decir, una implementación resumida realizada con el propósito de verificar que el concepto o teoría desarrollada es susceptible de ser explotada de una manera útil en futuras aplicaciones.

En línea con lo anterior, la red confeccionada configura un punto de partida para el desarrollo de modelos mas complejos usando un conjunto de datos mayor. Lo que nos permitió hacer este modelo básico inicial fue extraer algunas ideas sobre su funcionamiento y la relación entre los datos. Por ejemplo, pudimos observar que filtrar los casos de daño leve con una primera red conducía a mejores resultados finales ya que son ejemplos muy similares a los casos sin daño y posiblemente podían generar alteraciones en el modelo dificultando su aprendizaje. Por otro lado, notamos que cuando el daño se producía muy cercano a los bordes no resultaba sencillo caracterizar las señales.

En cuanto a los resultados del modelo, obtuvimos porcentajes de acierto satisfactorios en ambos, del 80% y 75% en los modelos 1 y 2 respectivamente. Es importante destacar que estos valores son satisfactorios para un modelo rápido que busca darle un contexto practico a un concepto teórico, pero no significan nada por sí solos. Para asegurar un rendimiento suficiente es también necesario contemplar los valores obtenidos con otras métricas, que quizás sean más representativas que la adoptada aquí, especialmente por tratarse de una tarea de clasificación con clases desbalanceadas. Cuando se construyan modelos de aplicación en el ámbito profesional con datos experimentales extraídos en obra, la atención puesta en la evaluación del modelo es crítica, es decir, no basta con

Page 16: CARACTERIZACIÓN DE LAS DIMENSIONES DE FALLAS EN …

analizar porcentajes de acierto sino también otras métricas como la precisión, la exhaustividad o recall, la matriz de confusión y Valor-F o F1-score. Una mala adopción de métricas puede conducir a valores altos en las mismas, pero a rendimientos malos cuando son puestos en práctica.

Para trabajos futuros buscaremos incorporar nuevas variables al modelo, como casos de diferentes estratos de suelo, múltiples longitudes de pilote, más valores de entrada, etc. En cuanto a la estructura de la red, resulta interesante probar con redes neuronales con otras estructuras que quizás puedan conducir a mejores resultados, como las redes recurrentes. Por último, nos proponemos sumar la colección de datos en obra y su posterior proceso para poder caracterizar posibles fallas del pilote.

BIBLIOGRAFÍA

ASTM D5882-07: Standard Test Method for Low Strain Impact Integrity Testing of Deep

Foundations. (2007). ASTM International.

Bishop, C. M. (2006). Pattern recognition and machine learning. Springer.

Davis, A., Dunn, C., & CEBTP. (1974). From Theory to Field Experience with the Non-

Destructive Vibration Testing of Piles. Proceedings of the Institution of Civil

Engineers, 57(4), 571-593.

Verruijt, A. (2010). An Introduction to Soil Dynamics. Springer Netherlands.

Watson, J. N., Fairfield, C. A., & Wan, C. L. (2001). NDT of Piled Foundations: Data

Processing with Artificial Neural Networks. Journal of Low Frequency Noise,

Vibration and Active Control, 20(3), 157-175.