Documentos de Académico
Documentos de Profesional
Documentos de Cultura
3SaiTech, Oil&Gas
Maracaibo, Venezuela
Tepuy R+D Group Artificial Intelligence Software Development
Mérida, Venezuela
camargoea@pdvsa.com, 3saitech@gmail.com
RESUMEN
En este trabajo, se contempla un sistema que tiene como finalidad desarrollar una
herramienta computacional para reconocimiento de patrones de fallas en el levantamiento
artificial de crudo por bombeo electrosumergible (BES), mediante técnicas de manejo de
datos relacionadas con aprendizaje de máquina (Machine Learning). Dicho sistema permite
realizar un análisis y estudio continuo del proceso BES, lo cual, debido a su complejidad y
características propias (costo, accesibilidad, tiempo), resulta imposible llevar a cabo a nivel
operacional. En ese sentido, se realizó un análisis de los distintos algoritmos que ofrece el
aprendizaje de máquina para resolver problemas de clasificación; se organizó la data, así
como el proceso selección de las características a considerar en función de históricos y
opiniones de expertos en el área del bombeo electrosumergible. Asimismo, se realizaron
pruebas controladas para observar su comportamiento y, finalmente, se evaluó en ambiente
operacional. En líneas generales, el resultado final es un Sistema Computacional práctico
y funcional que permite identificar patrones de fallas de manera concisa y que hace posible
realizar pruebas simuladas del funcionamiento BES, que serían inviables de realizar en
ambiente operacional.
33
ABSTRACT
the area of electrical submersible pumping. In general, the final result is a practical and
functional Computational System that allows the identification of fault patterns in a concise
manner and makes it possible to perform simulated tests of ESP operation, which would be
unfeasible to perform in an operational environment.
INTRODUCCIÓN
34
[4],[7]. Partiendo de lo anteriormente indicado, debido a la disponibilidad de patrones de
fallas en BES, se desarrolló un Sistema, que de manera aleatoria genera escenarios de
fallas y predicciones de escenarios operacionales similar a lo indicado por un experto,
además de realizar análisis de gran cantidad de cartas en corto tiempo (importante para
conocer cómo se ha comportado el pozo en el tiempo y estudiar cómo debería comportarse
en el futuro), sin interferir en la operación del sistema de levantamiento.
Cabe destacar que el Sistema Computacional desarrollado [8],[9], permite deducir de
manera eficiente, rápida y autónoma el tipo de falla que presenta el sistema a través de
valores de carta amperimétricas, pues el comportamiento del pozo se ve reflejado en el
motor (si algún elemento del sistema presenta anomalías, dicho elemento interfiere directa
Revista Ingeniería al Día. ISSN: 2389 - 7309. Volumen 5 Edición No 1. Enero – Junio de 2019
MARCO TEÓRICO
El método de levantamiento artificial por BES tiene como principio fundamental levantar
el fluido desde el yacimiento hacia la superficie mediante rotación centrífuga de los
impulsores de una bomba de fondo, que permite que el fluido multi-fásico ascienda a través
de las etapas de los impulsores, y llegue al cabezal del pozo con suficiente energía hasta
la estación recolectora [3]. Un equipo BES consta, básicamente, de una bomba centrifuga
de varias etapas, cuyo eje está conectado directamente a un motor eléctrico sumergible a
través de una sección protectora, tal como se ilustra en la Figura 1. En tal sentido, para la
implantación en campo de este método BES, se requiere de un arreglo de instrumentación
y control. Las variables del proceso son:
A nivel de la bomba
35
La presión de descarga del pozo (Pdp), que sirve para determinar la capacidad de
levantamiento del pozo para aportar la tasa deseada de producción y para construir la
curva de afluencia o comportamiento del mismo.
La temperatura de entrada a la bomba (Tip).
A nivel de la superficie
La temperatura del cabezal (Tc), que permite detectar los cambios en el comportamiento
del poz.
La presión del cabezal (Pc), que es un indicador de la cantidad de energía natural útil
para hacer fluir el petróleo desde el yacimiento hasta la estación de recolección en la
superficie.
La presión y temperatura de fondo (Pf, Tf), que son medidas en fondo de pozo,
normalmente muy costosos de sensar [8].
Por otra parte, la carta amperimétricas es una herramienta valiosa que permite realizar
monitoreo al pozo, puntualmente sensa la corriente del motor. Cualquier situación
inesperada en el sistema se refleja en esta corriente, por lo que, si se hace un correcto
análisis de la misma se pueden determinar anomalías; y así tomar correctivos o estudiar
cómo se ha comportado el pozo y/o los elementos que lo conforman a lo largo del tiempo.
Por lo general, las cartas son generadas cada 24 horas, y en algunas situaciones, se
generan semanalmente. En este artículo, el interés se centra en el primer caso.
Antiguamente, y en algunos pozos hasta el día de hoy, esa carta se generaba en una hoja
de papel que debía ser cambiada a diario por un operador. En la actualidad, esos valores
36
son tomados de manera digital; sin embargo, el comportamiento de la corriente es
independiente de la manera en que se mida, tan sólo basta con tomar los valores en el
tiempo y representarlos en coordenadas polares. Así, se presenta, a modo de ejemplo, una
Carta de Escenario u Operación Normal, como la observada en la Figura 2 [10], que
corresponde a una curva suave y simétrica con un valor cercano al valor de corriente
nominal. Se espera un pico de corriente en el arranque. En general, en los Sistema BES se
han identificado trece (13) Escenarios Operacionales, cada uno de ellos con efecto
significativo en la operación de levantamiento de hidrocarburos.
La teoría de las SVMs [11] fue desarrollada inicialmente por Vladimir Vapnik a principios
de los años 80 y se centra en lo que se conoce como Teoría del Aprendizaje Estadístico.
Su razón de ser es buscar, para una tarea de aprendizaje dada y con una cantidad finita de
datos, de acuerdo al modelo mostrado en la Figura 3 [12], una función que permita llevar a
cabo una generalización que sea resultado de una adecuada relación entre la precisión
alcanzada con un particular conjunto de entrenamiento y la capacidad del modelo.
Para llevar a cabo su objetivo, se requiere de un conjunto de:
{𝑥𝑖 , 𝑖 = 1, … , 𝑛} ⊆ 𝑋 ⊆ 𝑅 𝑑 (1)
{𝑦𝑖 , 𝑖 = 1, … , 𝑛} ⊆ 𝑋 ⊆ 𝑅 (2)
37
donde los vectores 𝑥𝑖 son independientes e idénticamente distribuidos a través de alguna
función de distribución desconocida, pero que no debe variar a lo largo del proceso de
aprendizaje. Cada uno de esos vectores representa la entrada a un operador objetivo, S, el
cual arroja una salida según una función de distribución condicional 𝐹𝑦⁄𝑋=𝑥𝑖 (𝑦). Por otra
parte, la máquina de aprendizaje (LM), que en este caso es la SVM, recibe el siguiente
conjunto de entrenamiento, Z, a partir del cual construye una aproximación al operador
desconocido.
38
1
𝐽(𝜃) = 𝑚 ∑𝑚 (𝑖) (𝑖)
𝑖=0 𝑐𝑜𝑠𝑡𝑜[ℎ𝜃 (𝑥) , (𝑦) ] + 𝑡é𝑟𝑚𝑖𝑛𝑜 𝑑𝑒 𝑟𝑒𝑔𝑢𝑙𝑎𝑟𝑖𝑧𝑎𝑐𝑖ó𝑛 (4)
La ecuación (4) es la ecuación general. La función de costo depende del valor estimado
por la hipótesis, ℎ𝜃 (𝑥). A cada ejemplo de entrenamiento y de su valor real conocido, se
promedia cada uno de ellos (cada caso aporta un costo a la función; idealmente, el aporte
de cada ejemplo debería ser cero, lo que equivale a decir que la salida estimada o hipótesis
coincide perfectamente con la salida real conocida). Por su parte, el término de
regularización busca mantener los valores de los parámetros 𝜃 lo más bajos posible. En la
máquina de soporte vectorial la función de costo es:
Revista Ingeniería al Día. ISSN: 2389 - 7309. Volumen 5 Edición No 1. Enero – Junio de 2019
1
𝐽(𝜃) = 𝐶[∑𝑚 (𝑖) 𝑇 (𝑖) (𝑖) 𝑇 (𝑖) 𝑛
𝑖=0 𝑦 𝑐𝑜𝑠𝑡1 (𝜃 𝑥 ) + (1 − 𝑦 )𝑐𝑜𝑠𝑡0 (𝜃 𝑥 )] + ∑𝑗=1 𝜃𝑗
2
2
(5)
39
obtiene la probabilidad de que el patrón pertenezca a esta clase: Este procedimiento se
repite con cada clase y al final se comparan las probabilidades; en aquella en que el patrón
tenga mayor probabilidad es donde se clasifica; este método se llama uno versus todos.
Es oportuno destacar que, muchas veces los datos no son linealmente separables es
decir, una frontera de decisión lineal no permite dividir ejemplos positivos de negativos; en
este caso se transforman las características de los patrones [13], con el objetivo de llevarlos
a una nueva dimensionalidad, en donde, a través de hiperplanos, como los mostrados en
la Figura 4 [14], sea posible realizar la clasificación. Esto se conoce como transformación
no lineal, (ver Figura 5 [14]). Existen muchas maneras de lleva a cabo dicha
transformación, pero en el caso específico de las máquinas de soporte vectorial se usan
Revista Ingeniería al Día. ISSN: 2389 - 7309. Volumen 5 Edición No 1. Enero – Junio de 2019
40
Un kernel es una función que genera nuevas características dependiendo de qué tanto
se parece un ejemplo de entrenamiento a los demás. También se les llama funciones de
similitud. Existen gran variedad de kernels, ya que, cada uno de ellos tiene sus criterios
para evaluar semejanza. En ese sentido, se tienen kernels lineales, kernels polinómicos,
kernels gaussianos, entre otros.
Específicamente, el kernel gaussiano esta descrito mediante:
−𝑥−𝑙𝑖
( )
𝑓𝑖 = 𝑒 2𝜎2 (6)
Revista Ingeniería al Día. ISSN: 2389 - 7309. Volumen 5 Edición No 1. Enero – Junio de 2019
Etapa I: Recolectar, aprender, clasificar y delimitar las alternativas que proponen las
máquinas de aprendizaje para resolver problemas de reconocimiento de patrones
41
Es un problema de aprendizaje supervisado, porque se parte de patrones de datos con
entradas y salidas conocidas para inferir nuevos patrones de los cuáles sólo se conocen
sus características de entrada.
Es un problema de clasificación, porque sus salidas son valores discretos y bien
delimitados; además, es de clasificación múltiple, debido a que la salida puede tomar
valores que van desde 1 hasta 13.
Debido a que se estudian fallas (comportamientos no esperados), la estructura de los
datos de entrada no sigue un comportamiento lineal, tal como se puede notar al revisar
la forma de las cartas y en el cómo en algunos casos la corriente toma valores muy
Revista Ingeniería al Día. ISSN: 2389 - 7309. Volumen 5 Edición No 1. Enero – Junio de 2019
42
Figura 6 Cartas amperimétricas de la máquina de la BES: a) Operación normal - 1; b) Picos
de corriente - 15; c) Apagado por gas en la bomba - 18; d) Descarga de fluido - 100; e) Bajo
nivel de fluido con gas - 11; f) Bajo nivel de fluido con gas - 12
Revista Ingeniería al Día. ISSN: 2389 - 7309. Volumen 5 Edición No 1. Enero – Junio de 2019
(a) (b)
(c) (d)
(e) (f)
43
Selección, limpieza y transformación: esta parte es aplicada de manera implícita en el
proceso simulación. En algunos casos se generan cartas erradas o que presentan
inconsistencias a nivel de códigos, toman valores fuera de rango o son creadas como
cartas en blanco. Esas situaciones se capturan con excepciones, descartando las
erradas y generando nuevas cartas, permitiendo, de manera visual, que aquellas que
sean consideradas por el usuario como situaciones no representativas sean
descartadas, o en su defecto, se tomen las medidas que se consideren pertinentes. En
el caso particular abordado en este trabajo, se generaron y visualizaron los distintos tipos
de carta, las cuales fueron comparadas con cartas reales con el fin de ajustarlas lo mejor
posible. También se hizo una revisión sobre la aleatoriedad entre cartas del mismo tipo
Revista Ingeniería al Día. ISSN: 2389 - 7309. Volumen 5 Edición No 1. Enero – Junio de 2019
(con las debidas limitaciones). Debido a que la maquina a usar es de soporte vectorial
con kernels gaussianos, no se realizó una transformación a las características de
entrada, dejando la opción abierta en caso de que el desempeño de la maquina no
resultase satisfactorio.
Implementación del Aprendizaje de Máquina: se ejecutan las acciones necesarias para
implementar cualquier aprendizaje automatizado, así como las acciones específicas
para las máquinas de soporte vectorial, siguiendo los siguientes pasos:
- Paso 1 (se genera el conjunto de datos): se pide el número de cartas de cada tipo a
usar (si, por ejemplo, se usan 20 cartas, el conjunto de datos tendrá 13 x 20, es decir,
260 cartas). Se toma la misma cantidad de cartas de cada caso para que la
representación de cada clase este balanceada. Una vez se cargan las cartas, se
desordena la data de manera aleatoria 100 veces gracias a un ciclo anidado.
Realizado este procedimiento, se separan las características de entrada en una matriz
y las salidas discretas en un vector.
- Paso 2 (se divide el conjunto de datos en dos): uno es el conjunto de entrenamiento,
con el cual se hallan los parámetros que necesita el modelo de la máquina de soporte
vectorial para realizar clasificaciones y estimaciones. Con ese conjunto se entrena el
modelo. El otro conjunto es el de prueba, en el cual se evalúa el porcentaje de acierto
de la máquina al comparar salidas estimadas con salidas reales conocidas. La
proporción de cada conjunto es definida por el usuario.
- Paso 3 (se selecciona la máquina de entrenamiento): el trabajo está enfocado en la
máquina de soporte vectorial con kernels gaussianos; sin embargo, se presentan 2
opciones de máquinas: arboles de decisión para clasificación y Naive Bayesiano
gaussiano. Se trata de dos opciones de comparación, pero no se realizan análisis
exhaustivo de ellas ni se trabaja sobre sus parámetros de ajuste (los análisis que
permiten estas dos opciones, tales como la curva de aprendizaje, matrices de
confusión y forma de validación, sólo depende del número de ejemplos tomados para
el conjunto de datos). No obstante, en la máquina de soporte vectorial se realiza el
entrenamiento considerando 3 parámetros propios de ella: a) C, el cual incide en el
sobreajuste, subajuste y acierto; b) el kernel o núcleo, que en este caso es un kernel
gaussiano y define la función de similitud necesaria para transformar las
44
características de entrada no lineales (no separables por una función de decisión
lineal) a un nueva dimensión de características que permitan ser separadas por
hiperplanos; c) el valor de gamma, que incide directamente en la función de similitud
gaussiana al establecer cuál es la diferencia mínima a la cual se considera un patrón
similar o diferente de otro patrón.
- Paso 4 (evaluación e interpretación): una vez entrenada la máquina de aprendizaje,
se ofrecen 4 alternativas de validación: simple, cruzada, uno afuera y bootstrap, las
cuales arrojan indicadores que estiman el acierto del modelo y reentrenan la maquina
según sus propios requerimientos. Cada uno de los métodos muestra una matriz de
confusión y porcentaje de patrones bien clasificados. Se presentan las curvas
Revista Ingeniería al Día. ISSN: 2389 - 7309. Volumen 5 Edición No 1. Enero – Junio de 2019
Etapa III: Desarrollar escenarios de prueba para la evaluación y análisis estadístico del
sistema
En esta etapa es preciso conocer que tan bien se comporta el sistema desde el punto
de vista de acierto/error así como el encontrar las características que le den el mejor
desempeño posible, la primera prueba es a través de una curva de aprendizaje que me
indique el acierto del clasificador en función del número de ejemplos tomados para el set
de datos, para esta prueba se parte de una data de 1300 ejemplos que se divide en 10
partes para tomar el acierto en cada caso:
Ahora bien, tal como se puede observar en la Figura 7, para un conjunto de datos
mayores a 600 se espera un acierto superior al 95%, es decir, con un promedio de 40 a 50
cartas por cada caso, el sistema debería presentar un muy buen porcentaje de clasificación.
La segunda prueba consiste en estimar que valores de “C” y gamma dan el mejor resultado
posible. Para dicha prueba se, realizaron todas las combinaciones posibles de los
siguientes valores:
C = 1, 2, 5, 10, 15, 20
Gamma = 0,0001; 0,0005; 0,001; 0,005; 0,01
45
Los valores óptimos encontrados para un set de datos de 1300 son C igual a 5 y gamma
igual a 0,001, tal como se muestran en la Figura 8.
Validación Simple
Tomando un 70% para entrenar y un 30% de la data para estimar, se obtuvo un acierto
de 98,71794871794873%. La correspondiente matriz de confusión es la que se muestra en
la Tabla 1.
46
Tabla 1. Matriz de confusión para la validación simple
F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13
F1 30 0 0 0 0 0 0 0 0 0 0 0 0
F2 0 29 0 0 0 0 0 0 0 0 0 0 2
F3 0 0 31 0 0 0 0 0 0 0 0 0 0
F4 0 0 0 29 0 0 0 0 0 0 0 0 1
F5 0 0 0 0 27 0 0 0 0 0 0 0 0
F6 0 0 0 0 0 32 0 0 0 0 0 0 0
Revista Ingeniería al Día. ISSN: 2389 - 7309. Volumen 5 Edición No 1. Enero – Junio de 2019
F7 0 0 0 0 0 0 29 0 0 0 0 0 0
F8 0 0 0 0 0 0 0 25 0 0 0 0 0
F9 0 0 0 0 0 0 0 0 30 0 0 0 0
F10 0 0 0 0 0 0 0 0 0 30 0 0 0
F11 0 0 0 0 0 0 0 0 0 0 37 0 0
F12 0 0 0 0 0 0 0 0 0 0 0 29 0
F13 0 0 0 0 0 0 0 0 0 0 0 0 27
Validación Cruzada
47
Tabla 3. Matriz de confusión en validación cruzada
F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13
F1 12 0 0 0 0 0 0 0 0 0 0 0 0
F2 0 16 0 0 0 0 0 0 0 0 0 0 4
F3 0 0 8 0 0 0 0 0 0 0 0 0 0
F4 0 0 0 11 0 0 0 0 0 0 0 0 0
F5 0 0 0 0 9 0 0 0 0 0 0 0 0
F6 0 0 0 0 0 8 0 0 0 0 0 0 0
Revista Ingeniería al Día. ISSN: 2389 - 7309. Volumen 5 Edición No 1. Enero – Junio de 2019
F7 0 0 0 0 0 0 7 0 0 0 0 0 0
F8 0 0 0 0 0 0 0 10 0 0 0 0 0
F9 0 0 0 0 0 0 0 0 8 0 0 0 0
F10 0 0 0 0 0 0 0 0 0 10 0 0 0
F11 0 0 0 0 0 0 0 0 0 0 8 0 0
F12 0 0 0 0 0 0 0 0 0 0 0 6 0
F13 0 0 0 0 0 0 0 0 0 0 0 0 12
Validación Bootstrap
48
Tabla 5. Matriz de confusión pesimista en validación bootstrap
F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13
F1 29 0 0 0 0 0 0 0 0 0 0 0 0
F2 0 32 0 0 0 0 0 0 0 0 0 0 6
F3 0 0 30 0 0 0 0 0 0 0 0 0 0
F4 0 0 0 38 0 0 0 0 0 0 0 0 2
F5 0 0 0 0 34 0 0 0 0 0 0 0 0
F6 0 0 0 0 0 36 0 0 0 0 0 0 0
Revista Ingeniería al Día. ISSN: 2389 - 7309. Volumen 5 Edición No 1. Enero – Junio de 2019
F7 0 0 0 0 0 0 46 0 0 0 0 0 0
F8 0 0 0 0 0 0 0 41 0 0 0 0 0
F9 0 0 0 0 0 0 0 0 34 0 0 0 0
F10 0 0 0 0 0 0 0 0 0 38 0 0 0
F11 0 0 0 0 0 0 0 0 0 0 38 0 0
F12 0 0 0 0 0 0 0 0 0 0 0 36 0
F13 7 4 0 0 0 0 0 0 0 0 0 0 29
49
Adicionalmente, en el análisis ROC (Receiver Operating Characteristic), mostrado en
las Figuras 9a hasta 9d y Figura 10, se describe el comportamiento de cada clase en función
de la tasa de aciertos positivos versus tasa de desaciertos negativos. Por debajo de la línea
punteada el desempeño se considera pésimo; por tanto, las curvas las Figuras 9a hasta 9d
y Figura 10, indican un desempeño óptimo, tal como se esperaba.
Figura 9. Curvas ROC (por clase): a) Desde la clase 1 hasta la clase 3; b) Desde la clase 4
hasta la clase 6; c) Desde la clase 7 hasta la clase 9; d) Desde la clase 10 hasta la clase 13
Revista Ingeniería al Día. ISSN: 2389 - 7309. Volumen 5 Edición No 1. Enero – Junio de 2019
(a) (b)
(c) (d)
CONCLUSIONES
50
pozos, lo cual no siempre es posible de realizar a nivel operacional debido a que no se
dispone de un sistema de interpretación, así este sistema computacional brinda un soporte
esencial a la hora de tomar acciones de optimización y control del sistema de levantamiento,
así como también proporciona una estimación para la realización del diagnóstico de fallas
a través del conocimiento del personal de campo.
REFERENCIAS
[1] M.A. Barsalou, Root Cause Analysis: A Step-By-Step Guide to Using the Right Tool at
the Right Time. Boca Raton, FL: CRC Press, 2015.
51
[2] E. Aceros, E. Camargo, J. Canelon, and A. Verde, “First Principles Model for Virtually
Sensing Operational Parameters in an ESP Well”, in SPE Artificial Lift Conference and
Exhibition – Americas, Aug. 2018, pp. 1-15 doi: https://doi.org/10.2118/190956-MS
[3] E. Camargo, E. Aceros, L. Guzmán, H. Lozada, and J. Aguilar, “Multiobjective
Optimization Model using Genetic Algorithms for Oil Wells based on Electro
Submersible Pumps”, in 5ta. Conferencia Nacional de Computación, Informática y
Sistemas (CoNCISa 2017), Oct. 2017, pp. 1-5. [Online]. Available:
http://concisa.net.ve/memorias/CoNCISa2017/CoNCISa2017-p123-127.pdf
[Accessed: Nov. 06, 2018].
[4] X. Tian, H. Daigle, and H. Jiang, “Feature Detection for Digital Images Using Machine
Revista Ingeniería al Día. ISSN: 2389 - 7309. Volumen 5 Edición No 1. Enero – Junio de 2019
52
[14] S. Ruiz-Correa, “Aprendizaje de Máquina y Reconocimiento de Patrones”, en III
Verano de Computación, Julio 2013. [En línea]. Disponible:
http://3vcomp.eventos.cimat.mx/sites/3vcomp/files/VeranoComputacionSRC2013.pdf
[Consultada: 26 de noviembre de 2018]
[15] E. Camargo, E. Aceros, and J. Aguilar, “Intelligent Well Systems”, in Asia-Pacific
Conference on Computer Aided System Engineering (APCASE 2015), July 2015,
pp.13-18. doi: https://doi.org/10.1109/APCASE.2015.10
[16] J. Aguilar, O. Buendia, K. Moreno, and D. Mosquera, “Autonomous Cycle of Data
Analysis Tasks for Learning Processes”, in Technologies and Innovation: Second
International Conference (CITI 2016), R. Valencia-García, K. Lagos-Ortiz, G. Alcaraz-
Revista Ingeniería al Día. ISSN: 2389 - 7309. Volumen 5 Edición No 1. Enero – Junio de 2019
Mármol, J. del Cioppo, N. Vera-Lucio, Cham, Switzerland, Springer, 2016, pp. 187-
202.
[17] A. Adhikari, J. Adhikari, Advances in Knowledge Discovery in Databases. Cham,
Switzerland: Springer, 2015.
53