Los sistemas expertos son aplicaciones tecnológicas que pertenecen al gran campo de la inteligencia artificial y pueden identificarse como programas o sistemas informáticos que reproducen la actuación de uno o varios expertos en un campo de actividad determinado (dominio). Estos sistemas están ya bastante maduros y, por lo tanto, son ampliamente aplicables en muchos contextos; un ejemplo es la venta de productos complejos para la que es imprescindible contar con un configurador de productos.
En este servicio, que actualizaremos periódicamente, analizamos en detalle qué son los sistemas expertos, cómo funcionan, cómo se aplican y dónde pueden producir beneficios para las empresas.
¿Qué es un sistema experto?
Como ya se ha dicho, los sistemas expertos reproducen artificialmente la actuación de una persona experta en un determinado dominio del conocimiento o campo de actividad (por eso se encuadran en la rama de la IA – Inteligencia Artificial).
Un sistema experto es capaz de aplicar de forma autónoma procedimientos de inferencia, es decir, lógica: se utiliza un proceso inductivo o deductivo para llegar a una conclusión tras el análisis de una serie de hechos o circunstancias. Problemas que, de ser resueltos por un ser humano, requerirían la intervención de un experto con conocimientos específicos en la materia o disciplina de la que surge el problema.
Un sistema experto es, de hecho, un programa informático que, tras haber sido debidamente entrenado, es capaz de deducir información (output) a partir de un conjunto de datos y fuentes de información (input).
¿Cuál es el objetivo de un sistema experto?
Por decirlo de forma más sencilla, un sistema experto tiene como objetivo ayuda a encontrar la solución óptima a un problema concreto sin tener que recurrir a un experto en la materia. Un procedimiento que el sistema experto puede llevar a cabo incluso con datos incompletos, trabajando con datos cualitativos más que cuantitativos, utilizando la llamada lógica difusa, es decir, un razonamiento “aproximado” que conduce a resultados altamente probables.
Inteligencia artificial y sistemas expertos
Por tanto, es fácil ver por qué los sistemas expertos entran en el amplio mundo de la inteligencia artificial en lugar de ser clasificados como programas informáticos “normales”: dado un conjunto de hechos, los sistemas expertos son capaces de deducir nuevos hechos.
Una peculiaridad de los sistemas expertos tiene que ver con la “explicación” de las decisiones a las que llega el sistema: un sistema experto siempre es capaz de mostrar los pasos lógicos que subyacen a las decisiones tomadas, lo que se llama Glass Box, un aspecto muy importante si se comparan estos sistemas con las redes neuronales y el Deep Learning más modernos, para los que se habla de Black Box, sistemas con los que no es posible trazar el proceso inductivo y deductivo que lleva a una salida, ya sea una acción o una decisión.
Clasificación de los sistemas expertos
En la actualidad, los sistemas expertos pueden dividirse en dos categorías principales:
Sistemas expertos basados en reglas
Se trata de sistemas basados en reglas clásicas bien conocidas por el mundo de la informática en la forma IF (condición) y THEN (acción). Dado un conjunto de hechos, los sistemas expertos son capaces de deducir nuevos hechos gracias a sus reglas.
Pongamos un ejemplo muy claro que explique bien cómo funcionan las reglas: tenemos un problema de salud y para llegar a la respuesta a la pregunta “¿cuál es mi problema de salud?” proporcionamos al sistema experto una serie de informaciones (me duele la cabeza, estoy resfriado, tengo fiebre). El sistema experto llegará a la conclusión de esta manera:
SI DOLOR DE CABEZA + SI FRÍO + SI TEMPERATURA CORPORAL A 38 grados centígrados… ENTONCES GRIPE.
En la práctica, el sistema analiza si se dan todas las condiciones (dolor de cabeza, y resfrío y fiebre) para deducir con alta probabilidad que la conclusión, la respuesta al problema, es la gripe.
Sistemas expertos basados en árboles
En este caso, dado un conjunto de datos y algunas deducciones, el sistema experto crea un árbol (de posibles alternativas) que clasifica los distintos datos. Ante un problema, se analizan nuevos datos del árbol y el nodo final representa la solución.
Un sistema experto basado en un árbol es, en esencia, un software experto capaz de reconocer un problema a partir de una secuencia de hechos, decisiones o acciones. Partiendo de una situación inicial, todas las opciones posibles (las condiciones SI, es decir, las posibles alternativas Y/O) se ramifican en situaciones y acciones hasta llegar a una conclusión.
Sistema experto basado en casos
Son los sistemas que parten de problemas que ya han sido resueltos en un dominio de aplicación y mediante un proceso de adaptación, encuentran la solución óptima a un nuevo problema.
Sistema experto basado en redes bayesianas
Son sistemas que poseen gráficos de variables conocidas y relaciones de dependencia entre ellas. El objetivo es determinar la probabilidad de aquellas variables que no son conocidas.
¿Cómo funcionan los sistemas expertos?
Los sistemas expertos se estructuran en tres niveles tecnológicos diferentes:
- Base de conocimiento: podríamos identificarla como la base de datos de información que el sistema necesita para dar respuesta a un determinado problema, como lo haría el ser humano experto que tiene el conocimiento específico de la materia que se va a aplicar a la resolución del problema. Es el repositorio donde se almacena la información y las reglas que permiten al sistema aplicar el razonamiento;
- Motor inferencial: la base de conocimientos subyacente a un sistema experto también contiene la información específica de un conjunto de reglas If-Then o Si-Entonces: si se da una determinada condición -por ejemplo, se hace una determinada pregunta- se aplica una regla específica -por ejemplo, se hace una segunda pregunta o se da una respuesta específica o se inicia una acción específica, etc. Este “motor de reglas” es, de hecho, el componente de software que, analizando y procesando la información contenida en la base de conocimientos, entiende el problema y propone una solución.
- Interfaz de usuario: es la parte del software que permite al usuario explotar el motor de inferencia; suele ser una interfaz web, a veces muy simplificada (una página en la que el usuario introduce una pregunta de forma escrita y recibe la respuesta elaborada por el sistema experto en la pantalla) a veces más estructurada (hoy en día también puede integrarse con otros sistemas basados en la inteligencia artificial como el reconocimiento y la comprensión del lenguaje natural).
Lógica difusa: tercera generación de sistemas expertos
En lugar de basarse en una estructura de toma de decisiones predefinida, los sistemas expertos son capaces de proponer al usuario la mejor alternativa posible encontrando la solución óptima al problema entre todas las disponibles (utilizando la lógica difusa).
La lógica difusa es una teoría matemática que se ocupa de modelar la incertidumbre y es una extensión de la lógica clásica. En la lógica clásica, un concepto es verdadero o falso, no se aceptan “matices” (si lo analizamos en el contexto de la teoría de conjuntos, si algo no pertenece al conjunto A, debe pertenecer al conjunto B). En la realidad humana, las cosas no funcionan de forma binaria, dado que nuestra propia mente no funciona definiendo todo sobre la base de verdadero/falso, blanco/negro, sí/no, etc., y un concepto puede ser parcialmente verdadero o parcialmente falso. Y aquí es donde entra en juego la lógica difusa.
La lógica difusa es especialmente útil para tratar la incertidumbre y la aproximación presentes en la realidad y así es fundamental en los sistemas expertos. La lógica difusa es capaz de representar las situaciones típicas en las que actuaría un ser humano y, por tanto, puede utilizarse en aplicaciones informáticas como los sistemas expertos que son capaces de responder como lo haría un experto humano.
La lógica difusa es lo que realmente caracteriza a la tercera generación de sistemas expertos.
Los sistemas expertos de la primera generación, nacidos entre finales de los años 60 y principios de los 70, explotaban la lógica booleana (verdadero/falso) y el razonamiento lógico en condiciones de certeza mediante un modelo determinista (causa-efecto). Estos sistemas pronto mostraron su mayor limitación: el razonamiento artificial chocaba con la lógica, de modo que el experto humano era muy superior al sistema experto artificial.
Los sistemas expertos de segunda generación son los que introdujeron el modelo probabilístico, superando así las limitaciones de la lógica que interrumpieron la evolución de los sistemas expertos de primera generación. El modelo probabilístico, a diferencia del determinista, razona sobre la “causa-posible-efecto”. Siguiendo este modelo, los sistemas expertos dieron un gran paso adelante, pero se enfrentaron al hecho de que la respuesta más probable no siempre es la más útil. Un problema importante a la hora de resolver problemas complejos.
Por ello, la lógica difusa se introdujo en los procesos inferenciales en los años 80 y 90, dando lugar a la tercera generación de sistemas expertos. Y es precisamente a partir de esta generación de sistemas expertos cuando se empezó a hablar de sistemas de apoyo a la decisión (DSS). A diferencia de los sistemas expertos clásicos, que eran capaces de dar respuestas a preguntas concretas, gracias a la introducción y uso de las redes bayesianas y las redes de decisión, estos sistemas han evolucionado, dejando de ofrecer respuestas “simples”, pero sí información útil para un proceso de toma de decisiones.
Aplicaciones de los sistemas expertos: ejemplos y ámbitos de aplicación
Como hemos explicado en los párrafos anteriores, los sistemas expertos se utilizan para encontrar respuestas a problemas complejos que, si se delegaran en el ser humano, requerirían la intervención de expertos en una materia o dominio determinado.
Precisamente por estas características, los sistemas expertos se utilizan en todos los procesos de resolución de problemas a través de tareas
Tareas de los sistemas expertos
Interpretación
los sistemas expertos analizan datos complejos y potencialmente “ruidosos” para determinar su significado (el sistema experto puede aplicarse en los casos en que es necesario disponer de descripciones de situaciones a partir de datos procedentes de diversas fuentes, por ejemplo, en el ámbito del IoT con datos procedentes de sensores);
Diagnóstico
en algunos casos, los sistemas expertos analizan los datos para determinar una enfermedad y, por tanto, “sugieren” un diagnóstico; en otros, el sistema experto deduce las anomalías o el mal funcionamiento mediante la observación (útil, por ejemplo, en el ámbito del mantenimiento predictivo);
Supervisión
los sistemas expertos analizan los datos para definir si existen condiciones de alarma y, por tanto, si es necesario crear alertas en tiempo real en situaciones críticas (lo que hace el sistema experto es comparar las observaciones en tiempo real para identificar las situaciones de alarma);
Planificación y programación
los sistemas expertos se utilizan aquí porque determinan una secuencia inteligente de acciones para lograr un objetivo determinado;
Predicción
en este caso, el sistema experto se convierte en el elemento a través del cual, aplicando un modelo adecuado del pasado y el presente, se pueden predecir patrones futuros (por ejemplo, en el ámbito económico o político);
Diseño y configuración
en este caso, los sistemas son capaces de diseñar y configurar soluciones/respuestas sobre la base de determinadas especificaciones (el sistema experto configura “objetos”, propuestas, soluciones de acuerdo con las restricciones).
De los sistemas expertos a los algoritmos de inteligencia artificial
Para entender mejor dónde y cómo se despliegan los sistemas expertos, entrevistamos a Gianbattista Schieppati, director general de Myti, que nos explicó cómo la empresa aprovecha ahora su sólida experiencia en sistemas expertos y mira al futuro con el aprendizaje automático y la visión por ordenador.
Ejemplos de diseños expertos aplicados al diseño y la venta
Para comprender mejor el funcionamiento de los sistemas expertos, hemos elegido el ámbito de aplicación de las ventas, especialmente las “complejas”, aquellas en las que la oferta depende de la elección, el tamaño y la configuración de un producto “variable” y complejo, que se estructura sobre la base de varios componentes y múltiples listas de precios diferentes.
Los sistemas expertos aplicados a este ámbito empresarial concreto entran en el ámbito del diseño y la configuración. En particular, situados dentro de soluciones como los configuradores de productos comerciales (soluciones utilizadas por los comerciales en modelos de negocio donde la propuesta es especialmente compleja por la propia naturaleza de los productos comercializados, las posibles combinaciones de soluciones, las variables que afectan al resultado final y, por tanto, a la propia realización del producto y su precio), los sistemas expertos representan el eslabón tecnológico que permite definir los criterios de configuración.
En general, un configurador de productos debe cumplir la tarea de simplificar la elección de los bienes que se van a comprar; un proceso que no siempre es inmediato cuando hay numerosas variables en juego (dimensionamiento, gran número de componentes, uso de materiales particulares, combinación de materias primas y materiales diversos con el consiguiente impacto en las propiedades físicas, mecánicas o químicas, etc.). Cuando es necesario configurar productos que deben insertarse en proyectos complejos (por ejemplo, plantas de fabricación o sistemas y maquinaria que deben funcionar en condiciones climáticas particulares o entornos industriales “críticos”), los configuradores de productos deben ser “expertos e inteligentes” hasta el punto de permitir a los usuarios buscar, identificar, evaluar y solicitar lo que necesitan de forma independiente, sin recurrir a un experto técnico.
Este es quizás uno de los ámbitos más maduros en los que la inteligencia artificial, mediante el uso de sistemas expertos, puede demostrar los enormes beneficios empresariales de la tecnología. Los sistemas expertos aplicados a los configuradores de productos comerciales pueden actuar como herramientas de diseño y de venta:
- Cuando se utiliza internamente en la empresa, el sistema experto integrado en un configurador de productos puede actuar como una herramienta de diseño (por ejemplo, para configurar plantas según reglas o cantidades físicas que no están necesariamente predeterminadas en un entorno complejo).
- Cuando se utiliza para las ventas, el sistema experto dentro del configurador de productos se convierte en el elemento que permite a los usuarios configurar los productos existentes de catálogos muy amplios, dimensionar los productos que no figuran en la lista, comprender las especificaciones para el diseño de productos que aún no están en el catálogo.