miércoles, 19 de septiembre de 2018

Robotic Process Automation y automatización cognitiva. Relación de RPA con la Inteligencia Artificial.


La emergente pero abundante literatura sobre Robotic Process Automation (RPA), está muchas veces más centrada en lo comercial que en lo técnico u operativo. Y tiende a contar RPA como una tecnología plagada de inteligencia artificial. Incluso recientemente he visto presentar a RPA como una forma de Inteligencia Artificial. Creo que eso es confundir las cosas. Así que en este artículo, de alguna forma continuación del que comentaba la definición de RPA, voy a hablar de lo que a veces se denomina automatización cognitiva y que, dicho de una forma simple, vendría a ser el uso de la inteligencia artificial en automatización de procesos de negocio.

En el libro 'Robotic Process Automation for dummies. NICE special edition', el equipo de NICE nos da una parecida cuasi-definición de automatización cognitiva:

This is a term for automation that leverages such technologies as optical character recognition, text analytics and machine learning.

Aunque la frase es sencilla y pretende casi más ilustrar que definir, el término 'leverage' ('apalancarse en', 'apoyarse en' o 'hacer uso de') es importante. Porque, en efecto, lo que hace RPA es apoyarse en técnicas de inteligencia artificial. No es inteligencia artificial sino que se apoya en inteligencia artificial. Y tampoco lo hace siempre. Es más, diría que hoy en día el empleo de inteligencia artificial en las implementaciones prácticas de RPA es limitado. La mayor parte de las aplicaciones reales de RPA actuales automatizan tareas sencillas pero repetitivas y basadas en reglas. Hablaríamos de procesar facturas, cumplimentar formularios o traspasar datos de un sistema a otro, por ejemplo.

La inteligencia artificial en RPA tiene a centrarse en OCR (reconocimiento óptico de caracteres), procesamiento de lenguaje natural (normalmente en documentos), etc.

Sin ánimo de exhaustividad, veamos qué usos de inteligencia artificial nos sugiere la fuente citada.


Usos ya disponibles de automatización cognitiva

Se centran, fundamentalmente, en la ingesta de documentos con datos no estructurados y que se procesan en la automatización. El tipo de labores que utilizan técnicas cognitivas son:

  • Reconocimiento Óptico de Caracteres (OCR)
  • Reconocimiento de imágenes
  • Analítica de textos
  • Análisis de sentimiento
  • Categorización
  • Clasificación
  • Detección de cambios de formato
  • Identificación de escritura a mano
  • Reconocimiento de voz

Como se puede ver, son tareas todas ellas muy útiles y aunque para los humanos resulten naturales, desde un punto de vista técnico son realmente sofisticadas. Sin embargo, se ve tambiñen que son tareas puntuales y que precisan un ámbito de automatización mayor, más extremo a extremo, que es el que proporciona RPA.


Relación con cliente automatizada


En el apartado específico de la relación con cliente se nos identifican técnicas de automatización como:

  • Chat Bots
  • Voice Bots
  • Agentes virtuales
  • Correo electrónico automatizado
  • IVR (Interactive Voice Response)
  • IVR Visual

Conviene dejar claro que en muchos casos, estas formas de automatización de la relación con el cliente se pueden hacer también sin el uso de Inteligencia Artificial. De hecho, por ejemplo, el uso de IVR para atención de llamadas telefónicas en Contact Center es práctica común desde hace años y, en algunos casos, se realizan automatizaciones sofisticadas sin precisar el empleo de inteligencia artificial. Lo que aporta la Inteligencia Artificial es la capacidad de, por ejemplo, usar la voz y el lenguaje natural en lugar de selección de menús numéricos.

De forma similar, se pueden realizar chatbots o automatización de correo electrónico sin necesidad de recurrir a Inteligencia Artificial y lo que viene a traer consigo la inteligencia artificial es una mayor potencia y sobre todo una mayor naturalidad en las interacciones.

Por otra parte, y ya en el ámbito de RPA, este tipo de elementos (bots, agentes virtuales, etc) serían acciones adicionales que se añaden a las capacidades ya existentes en RPA para automatizar procesos.


Automatización de procesos enriquecida con inteligencia artificial


En este ámbito, lo que hace la inteligencia artificial es mejorar ciertas tareas. Así, por ejemplo, puede ayudar a mejorar los datos transformando datos no estructurados en estructurados usando analítica de textos.

Igualmente, y usando analítica predictiva, se pueden hacer mejores decisiones y hacer una automatización más adaptativa.

Y se espera del Machine Learning muchas más aportaciones en el futuro...


Usos a futuro de la automatización cognitiva 


Un poco en la línea de lo esbozado en la sección anterior, el área de futuro más atractiva es aquella que incorporaría Inteligencia Artificial avanzada para automatizar decisiones. Hoy en día, cuando se aplica RPA se definen los flujos a seguir de una forma prácticamente cerrada (con las pequeños controles de flujo como condiciones o selecciones múltiples presentes en cualquier lenguaje de programación o proceso). La Inteligencia Artificial en general, y el Machine Learning en particular, abren las puertas a que las decisiones sean sofisticadas y adaptativas, que se produzcan en tiempo real con base en lo aprendido por el robot que implementa la automatización.

Pero esa visión, que es la que normalmente se vende en el material comercial ligado a RPA, es más un futurible (eso si, puede que muy cercano), que una realidad plenamente implantada.


***

Con todo lo visto, he querido, por un lado dar una panorámica de cómo se usa la inteligencia artificial en automatización y por otra, intentar desterrar la idea de que RPA, Robotic Process Automation, es Inteligencia Artificial. No lo es. Una cosa es RPA y otra Inteligencia Artificial.

Eso sí, trabajan muy bien juntas. Y más que lo harán, sin duda, en un futuro cercano.