como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un...

40
• Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. • Sin embargo este tiene la desventaja de que tiene que construir todos los componentes alrededor de un SE.

Upload: socorro-luz

Post on 11-Apr-2015

111 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

• Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación.

• Sin embargo este tiene la desventaja de que tiene que construir todos los componentes alrededor de un SE.

Page 2: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

• Por este motivo surgió mas el interés de utilizar los Shell para la construcción de un SE.

• Ejemplo de ello es OPS (Official Production System). El cual es un software para asistir la creación de SE

Page 3: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

Los Shell cuentan con

• Herramientas basadas en reglas.• Herramientas basadas en Marcos.• Herramientas basadas en Lógica difusa.

Page 4: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

• Herramientas de Inducción.– Generan reglas acerca de ejemplos– Un desarrollador introduce un gran numero de

ejemplos, de un dominio de interés.– Muy eficiente para grandes conjuntos de datos– Sirven incluso si el experto no existe.

Page 5: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

Tipos de pizza

• Margarita-> tomate, queso mozzarella, albahaca fresca, aceite de oliva

• Cuatro estaciones-> champiñones, aceitunas, jamón serrano y berenjenas.

• Caprichosa-> albahaca, jamón aceitunas• Caprichosa región-> albahaca, jamon

aceitunas, huevo cocido anchoas

Page 6: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

• Cuatro quesos-> mozarella, crema, parmesano, gorgonzolla, chedar, albahaca.

• Napolitana-> tomate, anchoas, aceituna, aceite de oliva extra virgen.

• Hawaiana-> jamon, piña (opcional cereza, durazno)

• Pepperoni-> queso, pepperoni, tomate

Page 7: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

Herramientas basadas en casos

• Esta tiene que ver cuando ya tenemos un problema similar en la memoria de la maquina.

• Es decir dado un conjunto de entradas similares, veremos si hemos tenido un problema similar para ir a una solución directa.

• Incluso si no existe una solución en memoria buscaremos el caso que mas se le parezca para responder.

Page 8: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja
Page 10: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

Seleccionando una herramienta desde el punto de vista de la base de conocimientos

• Desde una perspectiva practica para seleccionar un Shell es su facilidad para codificar el conocimiento.

• Esta cualidad define como podemos representar el conocimiento (arboles de búsqueda, marcos, reglas).

• Otros factores son relevantes como su razonamiento inexacto o sus capacidades de procedimiento procedural.

Page 11: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

Representación del conocimiento

• Representación del conocimiento, como representa el conocimiento.– Basados en reglas– Basado en marcos– Logica difusa– Case based reasoning

Page 12: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

Razonamiento Inexacto

Esto tiene que ver con la habilidad para resolver los problemas acerca de conocimiento incierto o con información inexacta.Requerirá mecanismos de razonamiento que puedan procesar este tipo de problemasSorprendentemente la mayoría de los shells no tiene esta capacidad, y dejan esa tarea a los diseñadores.

Page 13: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

Capacidad de procesamiento procedural

• En algunas aplicaciones es necesario escribir algo de código procedural.– Métodos – Funciones– La mayoría de los métodos proveen estas

funciones muy limitadas, a excepción de los basados en marcos.

Page 14: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

Seleccionando una herramienta desde el punto de vista de la inferencia y los procesos de control

• Encadenamiento. Si tiene la capacidad de encadenamiento hacia atrás, adelante o ambas.

• Agenda. Que permitan definir las actividades que queremos que desempeñe el sistema

• Meta-reglas. Describe como otro tipo de reglas debe de ser usado.

• Razonamiento no-monotonico. Este tipo de razonamiento permite cambiar el modo de razonamiento dado un hechos, eliminar un hecho o todos.

Page 15: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

Seleccionando una herramienta desde el punto de vista de la facilidad de dar explicaciones

• El subsistema de explicaciones provee transparencia al razonamiento del sistema experto.

• Importante en sistemas interactivos, donde el usuario quiere saber como se llego a ese resultado.

Page 16: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

Ejemplo

• Considere el caso en el que a un paciente le es dada una medicina, pero el desea saber por que.

• Normalmente, hemos visto, que los medico explican las razones del por que se toma ese medicamento.

Page 17: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

Seleccionando una herramienta desde el punto de vista de la interfaz del desarrollador.

• Para la creación de la base de conocimiento- Muchos ingenieros del conocimiento requieres, editores para ingresar el conocimiento.

• La capacidad de imprimir el conocimiento y revisarlo.

• Es decir que el shell colabore mas de cerca con la creación del SE.

• Utilidades de debug

Page 18: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

• Ayuda en línea y documentación.

Page 19: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

Seleccionando una herramienta desde el punto de vista del usuario

• La interfaz grafica que tendrá el usuario.• Como el usuario agregara información al

sistema• Como visualizara la información.• Que privilegios tiene el usuario. Para esto es

recomendable que pueda iniciar sesión con un determinado rol.

Page 20: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

Interfaces con otros sistemas.

• Hoy en dia los shell debe de tener la capacidad de poder intercambiar información con otros sistemas o software como son bases de datos, programas en otros lenguajes de programación.

Page 21: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

Clasificación de los SEControl Sistema que controla un comportamiento dadas unas

especificacionesDiseño Configurar objetos bajo especificaciones

Diagnostico Inferir, fallas o errores en un sistema

Instrucción Diagnostico, debug y reparación de un comportamiento

Interpretación Inferir una situación a partir de unos datos.

Monitoreo Comparar observaciones respecto a puntos de referencia.

Planeación Seleccionar una secuencia de actividades, a partir de un conjunto de restricciones para lograr una meta.

Prescripción Recomendar una solución a un mal funcionamiento en un sistema

Agenda Asignar recursos y tiempos de una lista de posibilidades.

Selección Identificar la mejor opción de una serie de posibilidades

Simulacion Modelar la interacción entre dos componentes.

Page 22: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

Ejemplos

• Control-ASIA- Sistema capaz de razonar con información externa en tiempo real. Usaba datos simbólicos.

• Diseño-Designer se le especificaban las características, dado un conjunto objetivos que se querían alcanzar.

• Diagnostico-MARPLE. Hecho para diagnosticar las fuentes de poder de una nave espacial. Desarrollado por Texas Instruments.

Page 23: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

• Instrucción-Instruction un shell para dar tutorías inteligentes para entrenas doctores.

• Interpretación-SSI un shell para la interpretación de señales en sistemas expertos.

• Monitoreo. PREMON. Para monitorear el sistema de enfriamiento de una jet de propulsión.

Page 24: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

• Planeación-GHOST, es un sistema de propósito general para el área de la construcción. Combina la programación orientada a objetos

• Agenda. ESRA. Soluciona la distribución de los recursos.

• Simulación. ORBIS. Es un shell diseñado para funcionar en una gran variedad de ambientes de simulación. Recolecta estadísticas.

Page 25: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

Sistemas Expertos entornos de trabajo

Expert System Environment

Page 26: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

MCESE

• Es una herramienta de software para construir shells de un problema en especifico y crear sistemas expertos.

Page 27: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

• Fue hecho para satisfacer las siguientes metas.– Permite al usuario procesar conocimiento

incompleto e impreciso.– Permite al usuario personalizar el shell y procesar

con la incertidumbre de la manera que el prefiere.– Permite al usuario crear aplicaciones en un

lenguaje en particular (C, FranzLISP y Scheme), permitiendo esto que la aplicación tenga mas peso que la base de conocimiento.

Page 28: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

• Fue hecho para satisfacer las siguientes metas– Permite al usuarios una conexión natural con

diferentes base del conocimiento en una aplicación

– Permite un modelo de ciclo de vida tipo prototipo– Permite inferencias rápidas.

Page 29: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

ROSIE

• Rule Oriented System for Implementing Expertise.

• Es un lenguaje de programación parecido al lenguaje ingles.– Altamente entendible– Expresivo– Herramienta poderosa para la construcción de

sistemas expertos.

Page 30: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

IBM Expert System Development Environment (ESDE)

• Hecho para ayudar a los usuarios a desarrollar sistemas basados en conocimiento

• Ayuda al desarrollo y prueba de un sistema experto.

Page 31: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

William J. Rasdorf

Page 32: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

Hardware

• Hoy en día la implementación hardware cae en cinco categorías:

• Computadoras personales• Dispositivos móviles (tablets, teléfonos celulares)• Estaciones de trabajo (tecnología legacy)• Servidores• Clúster de servidores.• Sistemas distribuidos

Page 33: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

• La mayoría de los ofertantes de shells, los desarrollan para computadoras personales.

• Hoy en día las PC y los servidores tiene las mismas características operativas. A diferencia que los servidores tiene capacidades aumentadas en el caso de respaldo de energia, disipación de calor., memoria principal y secundaria.

Page 34: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

Implementing Embedded Expert Systemsvia Programmable Hardware

• La implementación de los sistemas expertos en hardware especifico (embebido)

• Las tareas principales para usar sistemas expertos embebidos son:– Diagnosis– Monitoreo– Control de sistemas de produccion

Page 35: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

Sistema minimo

Page 36: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

• El Hardware tiene que ver con cuestiones de accesibilidad geográfica.

Page 37: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

The expert system and its applicationsfor a sustainable environment management

Page 38: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

Un sistema experto para el método del calculo del impacto ambiental

Page 39: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja

Expert system for environmental quality evaluation

Page 40: Como se había mencionado anteriormente para el desarrollo de sistemas expertos podemos usar un lenguaje de programación. Sin embargo este tiene la desventaja