Introducción a los Sistemas Basados en Conocimiento

Anuncio
Luis Valencia Cabrera (coordinador)
[email protected]
(http://www.cs.us.es/~lvalencia)
Manuel García-Quismondo
[email protected]
(http://www.cs.us.es/~mgarcia)
Ciencias de la Computacion e IA
(http://www.cs.us.es/)
Universidad de Sevilla
Introducción
a los Sistemas
Basados en el
Conocimiento
(2011/2012)
Índice
 Ingeniería
del Conocimiento
 Sistemas
Basados en el Conocimiento
 Sistemas
Expertos
 Ejemplos
Ilustrativos
 ¿Por
qué SE? Ventajas de su uso
 Limitaciones
Ingeniería del Conocimiento (I)


A mitad de los 70 comienzan a tomar cuerpo dos
ideas clave. Se trata del paradigma del sistema
experto y del paradigma del conocimiento.
La expresión Ingeniería del Conocimiento se
acuñó en los años 70 para referirse al diseño y
construcción de SBC:


Se admite que el conocimiento que se puede
extraer de los expertos puede ser incompleto,
inconsistente, impreciso, incierto y no dogmático.
Las respuestas del sistema puedan ser inseguras,
matizadas por un grado de confianza o de
creencia.
Ingeniería del Conocimiento (II)




Además, el conocimiento puede evolucionar tanto en
la fase de desarrollo como en la de uso del sistema, por
incorporación de nuevos conocimientos o porque los
expertos reconsideran la forma en la que se ha
expresado su conocimiento.
Por tanto, la responsabilidad del desarrollo y del
mantenimiento no recae sólo en los ingenieros, sino
también en los expertos y en los usuarios finales, que
intervienen a lo largo de todo el ciclo de vida.
Como consecuencia, no es aplicable el ciclo de vida
clásico, porque no pueden establecerse unas
especificaciones definitivas desde el principio.
Esto implica un proceso continuo de depuración de la
base de conocimientos, que muchas veces se prolonga
durante toda la vida del sistema.
Sistemas Basados en el
Conocimiento (SBC)

Sistemas basados en el conocimiento:


Terminología:




Programas que resuelven problemas usando un
determinado dominio de conocimiento
Sistema basado en el conocimiento
Sistema experto
Sistema experto basado en el conocimiento
Sistemas basados en el conocimiento vs
sistemas expertos:



SBC: conocimiento no necesariamente experto.
SE: conocimiento experto + interacción.
SE ⊆ SBC.
Estructura básica de los SBC

Desde el punto de vista funcional (conductista):

Desde el punto de vista estructural (cognitivo):

SBC: Conocimiento + Razonamiento
Sistemas Expertos


El término experto designa a aquél que tiene
un amplio conocimiento para resolver
problemas en un determinado dominio de
conocimiento.
El proceso de adquisición del conocimiento,
cuyo objetivo es llegar a expresar de manera
explícita en algún lenguaje de
representación los conocimientos que el
experto utiliza para resolver problemas,
resulta a menudo el más difícil de todo el
desarrollo de los sistemas basados en
conocimiento.
Sistemas Expertos (II)


Definición:
 Un sistema experto puede definirse como un sistema
informático (hardware y software) que simula a los expertos
humanos en un área de especialización dada.
 Los sistemas expertos son máquinas que razonan como un
experto lo haría en una cierta especialidad o campo.
Ejemplo:
 Un sistema experto en diagnóstico médico requeriría
como datos los síntomas del paciente, los resultados de
análisis clínicos y otros hechos relevantes, y, utilizando
éstos, buscaría la información necesaria para poder
identificar la correspondiente enfermedad. Un Sistema
Experto no sólo maneja grandes cantidades de datos,
sino que también los manipula de forma que el resultado
sea inteligible y tenga significado para responder a
preguntas incluso no completamente especificadas.
Definición de SBC vs Sistema Experto
Ingeniería del Conocimiento para SBC


La Ingeniería del Conocimiento es el proceso
de diseñar y hacer operativos los Sistemas
Basados en el Conocimiento (SBC).
Se define como:


Sub-campo de la Inteligencia Artificial
concerniente a la adquisición, representación y
aplicación de conocimientos, o . . .
Disciplina de la Ingeniería por la cual el
conocimiento se integra dentro de un sistema
de computador para resolver problemas
complejos que normalmente requieren un alto
nivel de conocimiento.
Ingeniería del Conocimiento para SE



En el caso de los SSEE es el proceso de mejorar, hasta
un nivel de experto humano, las prestaciones de
sistemas software que poseen un amplio cuerpo de
conocimiento sobre un área de aplicación específica.
Programa que usa conocimiento y procedimientos de
razonamiento para resolver problemas lo
suficientemente difíciles como para necesitar de un
experto para su solución (Feigenbaum, 1982).
Se usan cuando el problema:





No se requiere “sentido común”
Se requiere razonamiento simbólico
No se resuelve con métodos “tradicionales”
Necesita de conocimiento experto
El coste compensa su uso
Ejemplos Ilustrativos (I)

Ejemplo 1.1 Transacciones bancarias.

No hace mucho, para hacer una transacción
bancaria, tal como depositar o sacar dinero de
una cuenta, uno tenía que visitar el banco en
horas de oficina. Hoy en día, esas y otras
muchas transacciones pueden realizarse en
cualquier momento del día o de la noche
usando los cajeros automáticos que son
ejemplos sencillos de sistemas expertos. De
hecho, se pueden realizar estas transacciones
desde casa comunicándose con el sistema
experto vía tfno. o Internet.
Ejemplos Ilustrativos (II)

Ejemplo 1.2 Control de tráfico.

El control de tráfico es una de las aplicaciones
más importantes de los sistemas expertos. No
hace mucho tiempo, el flujo de tráfico en las
calles de una ciudad se controlaba mediante
guardias de tráfico que controlaban el mismo
en las intersecciones. Hoy se utilizan sistemas
expertos que operan automáticamente los
semáforos y regulan el flujo del tráfico en las
calles de una ciudad y en los ferrocarriles.
Ejemplos Ilustrativos (III)

Ejemplo 1.3 Problemas de planificación.

Resolver problemas complicados de planificación optimizando
ciertos objetivos. Ejemplo: la organización y asignación de aulas
para exámenes finales en una gran universidad; condiciones:






Eliminar las coincidencias de asignación simultánea de aulas: Sólo se
puede realizar un examen en cada aula al mismo tiempo.
Asientos suficientes: Un aula asignada para un examen debe tener al
menos dos asientos por estudiante.
Minimizar conflictos temporales: nº alumnos que tienen exámenes
coincidentes.
Eliminar sobrecarga de trabajo: Ningún alumno más de 2 exams. 24 h.
Minimizar nº exámenes realizados durante las tardes.
Otros ejemplos de problemas resueltos mediante sistemas expertos:



Planificación de doctores y enfermeras en un gran hospital
Planificación en una gran empresa o fábrica
Planificación de autobuses para las horas de congestión o de días
festivos.
¿Por qué SE? Ventajas (I)

Mayor disponibilidad:



Coste reducido
Permanencia:


La experiencia está disponible para cualquier hardware
de cómputo adecuado
La experiencia es permanente, a diferencia de lo que
ocurre con los expertos humanos
Experiencia múltiple:


El conocimiento de varios especialistas puede estar
disponible para trabajar simultánea y continuamente en
un problema.
El nivel de experiencia combinada de muchos sistemas
expertos puede exceder el de un solo especialista
humano.
Ventajas (II)

Respuestas no subjetivas:


Explicación del razonamiento:



El sistema experto puede explicar clara y
detalladamente el razonamiento que conduce a
una conclusión
Respuesta rápida:


El sistema experto ofrece respuestas sólidas,
completas y sin emociones en todo momento.
Algunas situaciones de emergencia pueden exigir
respuestas más rápidas que las de un humano.
Tutoría inteligente
Base de datos inteligente
Limitaciones (I)



Sentido común: Para un Sistema Experto no hay
nada obvio. Por ejemplo, un sistema experto sobre
medicina podría admitir que un hombre lleva 40
meses embarazado, a no ser que se especifique
que esto no es posible ya que un hombre no
puede procrear hijos.
Lenguaje natural: Con un experto humano
podemos mantener una conversación informal
mientras que con un SE no podemos.
Capacidad de aprendizaje: Cualquier persona
aprende con relativa facilidad de sus errores y de
errores ajenos, que un SE haga esto es muy
complicado.
Limitaciones (II)




Perspectiva global: Un experto humano es capaz
de distinguir cuales son las cuestiones relevantes
de un problema y separarlas de cuestiones
secundarias.
Capacidad sensorial: Un SE carece de sentidos.
Flexibilidad: Un humano es sumamente flexible a
la hora de aceptar datos para la resolución de un
problema.
Conocimiento no estructurado: Un SE no es capaz
de manejar conocimiento poco estructurado.
Descargar