Subido por Warclib Ramest

Sistema Taller corregido-2019

Anuncio
TECNOLÓGICO NACIONAL DE MÉXICO
Instituto Tecnológico Superior de la Montaña
INSTITUTO TECNOLÓGICO SUPERIOR DE LA MONTAÑA
Extensión Académica Iliatenco
Ingeniería en Sistemas Computacionales
Materia:
Taller de investigación II
Proyecto:
Sistema experto para el diagnóstico y tratamiento de
enfermedades del café
Estudiante:
Marco Antonio Ramírez Estrada
No. de Control:
S14122026
Asesor:
ING. Raúl Guzmán Corona
Semestre: 9°
Grupo: A
liatenco, Guerrero. Junio de 2019
Índice
1.
Introducción.............................................................................................................................................1
1.1 Planteamiento del problema..............................................................................................................2
1.2 Objetivos............................................................................................................................................... 3
1.3 Justificación..........................................................................................................................................4
1.4 Preguntas de investigación............................................................................................................... 6
2.
Antecedentes..........................................................................................................................................7
3.
Iliatenco....................................................................................................................................................7
3.1 Reseña histórica..................................................................................................................................7
3.2 Ubicación geográfica.......................................................................................................................... 8
4.
Café.......................................................................................................................................................... 9
4.1 Aspectos Generales Sobre el Cultivo del Café.............................................................................. 9
4.1.1 Altitud............................................................................................................................................. 9
4.1.2 Precipitación................................................................................................................................. 9
4.1.3 Temperatura................................................................................................................................10
4.1.4 Humedad relativa.......................................................................................................................10
4.1.5 Viento...........................................................................................................................................10
4.2
Enfermedades............................................................................................................................. 10
4.2.1
Broca.................................................................................................................................... 10
4.2.2
El ojo de gallo...................................................................................................................... 11
4.2.3
La roya del café...................................................................................................................11
5. Herramientas............................................................................................................................................12
5.1 Prolog.................................................................................................................................................. 12
5.1.1 Evolución Histórica....................................................................................................................12
5.1.2 Esquema general de trabajo en Prolog................................................................................. 13
5.2 SWI-Prolog......................................................................................................................................... 14
6.
Sistema Experto...................................................................................................................................15
6.2 Estructura........................................................................................................................................... 15
6.3 Tipos de sistemas expertos.............................................................................................................16
6.3 Ventajas y limitaciones.....................................................................................................................18
7.
Metodologías para el desarrollo de un sistema experto............................................................... 19
7.1 Metodología Grover.......................................................................................................................... 20
7.2 Metodología IDEAL...........................................................................................................................22
7.3 Metodología BGM............................................................................................................................. 26
8.
Formulación del conocimiento fundamental................................................................................... 28
9.
Consolidación del conocimiento basal.............................................................................................29
Conclusión.................................................................................................................................................... 32
Bibliografía.................................................................................................................................................... 33
1. Introducción
La humanidad siempre a tenido la curiosidad acerca de como la mente humana
trabaja y esta fascinada por las maquinas inteligentes. Podemos ver como la gente
desea entender y aún crear inteligencia.
Desde un punto de vista simple se puede decir que la Inteligencia Artificial es la
capacidad de un dispositivo de desarrollar funciones que son normalmente
asociadas con la inteligencia humana, como lo es el razonamiento y optimización a
través de la experiencia. Dentro de la I.A existen los Sistemas Expertos que se han
definido como aquellos programas que se basan en el conocimiento y tratan de imitar
el razonamiento de un experto para resolver un problema de un tópico definido. Su
comportamiento se basa generalmente en reglas, es decir, se basa en conocimientos
previamente definidos, y mediante estos conocimientos, los SE son capaces de
tomar decisiones.
1
1.1 Planteamiento del problema
En la agricultura se presentan problemas que necesitan de un breve estudio y de una
solución inmediata para evitar pérdidas del cultivo como de dinero. Las hectáreas
agrícolas en el municipio de Iliatenco Gro, en su mayoría, son utilizadas para los
cultivos de café, ninguno de estos está totalmente segura de poder evitar el daño de
algún tipo de enfermedad.
La producción de café se ha convertido en un negocio con dificultades que requiere
la integración de conocimiento, además de la información de muchas fuentes. Para
permanecer competitivo, el agricultor moderno con frecuencia confía en expertos
agrícolas y consejeros que les proporcionan información para la toma de decisiones
en sus cosechas. Pero lamentablemente, la ayuda de los especialistas agrícolas no
está siempre disponible cuando el agricultor la necesita. En la actualidad los
sistemas expertos se destacan entre las herramientas de soporte para la toma de
decisiones. Han sido diseñados para múltiples campos de aplicación y proporcionar
equivalentes resultados de un especialista emulando la capacidad humana de tomar
decisiones de acuerdo a las condiciones del contexto. Por lo tanto se tiene como
objetivo aplicar la tecnología de los Sistemas Expertos, realizando el modelado y
desarrollo del “Sistema Experto Detector de enfermedades en las plantas de café”
para ayudar al control de enfermedades en los cultivos de Café en el municipio de
Iliatenco Gro, brindar información acerca de ellas y de los distintos problemas que
pueden tener en el proceso, así como proporcionar un tratamiento con la posibilidad
de tratar el cultivo de dos formas, con químicos o de forma orgánica, para que este
sirva de soporte a estas enfermedades que afectan al sector agrícola cafetalero.
2
1.2 Objetivos
General
 Desarrollar un sistema experto para el diagnóstico de enfermedades del café en
el municipio de Iliatenco.
Específicos
 Buscar en diversas fuentes información que permita dar una explicación
detallada de los síntomas de las enfermedades del café
 Utilizar las metodologías Grover e Ideal para el desarrollo del sistema experto.
 Hacer uso del lenguaje de programación prolog para la construcción del sistema
experto.
 Identificar las enfermedades que atacan con mayor frecuencia las plantas de
café en el municipio de Iliatenco.
 Proporcionar un tratamiento a la enfermedad de café detectada.
3
1.3 Justificación
Actualmente los agricultores de café del municipio de Iliatenco no cuentan con
herramientas o información sobre las enfermedades y tratamiento de los cafetales
que les facilite a los productores identificar cuál es la enfermedad que ataca a su
cultivo, al mismo su tratamiento para evitar pérdidas de producción e inversión, por
ello es necesario el desarrollo de este sistema experto para que proporcione la
información adecuada antes mencionada, ya que es fundamental que los
productores de café del municipio conozcan las enfermedades que con mayor
frecuencia atacan a su cultivo por que dicha producción es una fuente fundamental
de ingreso económico para muchas familias.
El desarrollo de este sistema experto se realizará tomando en cuenta que el
agricultor conoce cuáles son los síntomas mediante las afectaciones que presenta la
planta de café, pero desconoce cual es la enfermedad y tratamiento, de acuerdo a
ello, el sistema experto le mostrará preguntas relacionadas a las enfermedades de
café que afectan al municipio, donde el agricultor solo responderá si o no y mediante
a ello el sistema experto determinará cuál es la enfermedad y su tratamiento.
La implementación de este sistema experto beneficiará directamente a los
agricultores del municipio de Iliatenco, debido a que proporcionará información de
enfermedades y tratamiento que facilite controlar las enfermedades del café para
evitar riesgos de contagio y reducir su propagación evitando así pérdidas de
producción.
4
Cronograma de Actividades
5
1.4 Preguntas de investigación
¿Cómo desarrollar un Sistema experto para el diagnóstico de enfermedades del café
en el municipio de Iliatenco?
6
2. Antecedentes
Nombre y fecha
CADUCEUS 1980
Autores
Harry Pople
Resultado
Pretendía
mejorar
el
MYCIN,sistema
focalizado
sobre
las
bacterias infecciosas de
la
sangre
(Nebendahl,
1991).
3. Iliatenco
Iliatenco es uno de los 81 municipios que conforman el estado de Guerrero, al sur de
México. Forma parte de la región de La Montaña de la entidad, y su cabecera es la
población de Iliatenco.
3.1 Reseña histórica
Según Wikipedia (s.f.), Iliatenco fue fundado en 1866 por 38 familias provenientes de
Malinaltepec. El 5 de enero de 1890, el Congreso local le otorgó la categoría de
pueblo. Los primeros pobladores se dedicaban al cultivo del algodón, cuyo producto
transformaban en hilo para la elaboración de telas; cultivaban además caña de
azúcar, maíz, frijol, aguacate, mango, cítricos y piña. Los dirigentes de esta
comunidad formalizaron diversas solicitudes para la creación del municipio; la
primera el 2 de noviembre de 1968 y la última el 24 de julio de 2004. En sesiones de
cabildo de 22 de septiembre de 2004 y 8 de noviembre de 2004, los ayuntamientos
de Malinaltepec y San Luis Acatlán, respectivamente, dieron su consentimiento para
la conformación del nuevo municipio con parte de su territorio.
Al revisar la Comisión Dictaminadora del Congreso del estado, en marzo de 2005, el
expediente y el estudio socioeconómico realizado al efecto, para la creación del
nuevo municipio, encontraron que no se pone en riesgo la estabilidad social, política,
7
económica y financiera de Malinaltepec y de San Luis Acatlán, como municipios
afectados por la segregación de 29 localidades, y por ello, el 29 de septiembre de
2005 entró en vigor el Decreto de creación del municipio de Iliatenco.
3.2 Ubicación geográfica
Según Candela et. al (2007) Iliatenco se ubica al sur de la región Montaña del estado
de Guerrero, sus propiedades agrarias son comunal y ejidal. El primer tipo de
tenencia cubre una superficie estimada de 10,0667.84 ha y los segundos de
10,730.32 ha. Ambos tipos de terrenos conforman una unidad territorial de 20,798.16
ha.
Los terrenos ejidales-comunales de Iliatenco colindan al norte con: la comunidad de
Paraje Montero, al oeste con la de Tilapa de Guerrero, al noroeste con San Miguel el
Progreso y Colombia de Guadalupe; al sur con San José Vista Hermosa, Pueblo
Hidalgo y Santa Cruz del Rincón; al sureste con Pueblo Hidalgo (estas dos últimas
comunidades pertenecientes al municipio de San Luis Acatlán) y al este con las
comunidades Comotetenco, Buena Vista y el río Bandera; del municipio de San Luis
Acatlán.
Las coordenadas extremas son: 16°58´15´´ y 17°07´52´´ latitud norte y 98°33´33´´ y
98°44´25´´ longitud oeste El rango altitudinal va desde los 800 m, en las
inmediaciones de Hondura Tigre (límite en el extremo sur), hasta cerca de los 2,800
m, en las cumbres de los cerros Cuate, Cabeza de Tigre y la Uña (p. 13). Ver figura
1.
Figura 1. Ubicación geográfica de Iliatenco.
8
4. Café
El café es la bebida que se obtiene a partir de los granos tostados y molidos de los
frutos de la planta del café (cafeto). Es una bebida altamente estimulante por su
contenido de cafeína. Suele tomarse durante el desayuno, después de éste o incluso
como único desayuno, aunque también se acostumbra tomarlo después de las
comidas o cenas, para entablar conversaciones o sólo por costumbre. Es una de las
bebidas sin alcohol más socializadoras en muchos países. Las formas más
populares de tomarlo son negro y con leche (con o sin azúcar); también se le suele
añadir crema o nata, leche condensada, chocolate o algún licor, dependiendo de la
receta hay diversas formas de prepararlo.
Se sirve habitualmente caliente, pero también se toma frío o con hielo como en
España o Grecia. En España, Portugal, Paraguay y Brasil es frecuente el consumo
de café torrado o torrefacto, es decir, tostado en presencia de azúcar.
4.1 Aspectos Generales Sobre el Cultivo del Café
4.1.1 Altitud
Incide en forma directa sobre los factores de temperatura y precipitación. La altitud
óptima para el cultivo de café se localiza entre los 500 y 1700 msnm. Por encima de
este nivel altitudinal se presentan fuertes limitaciones en relación con el desarrollo de
la planta.
4.1.2 Precipitación
La cantidad y distribución de las lluvias durante el año son aspectos muy importantes,
para el buen desarrollo del cafeto. Con menos de 1000 mm anuales, se limita el
crecimiento de la planta y por lo tanto la cosecha del año siguiente; además, un
período de sequía muy prolongado propicia la defoliación y en última instancia la
muerte de la planta.
Con precipitaciones mayores de 3000 mm, la calidad física del café oro y la calidad
9
de taza puede comenzar a verse afectada; además el control fitosanitario de la
plantación resulta más difícil y costoso.
4.1.3 Temperatura
La temperatura promedio anual favorable para el cafeto se ubica entre los 17 a 23 °C.
Temperaturas inferiores a 10 °C., provocan clorosis y paralización del crecimiento de
las hojas jóvenes.
4.1.4 Humedad relativa
Cuando alcanza niveles superiores al 85%, se propicia el ataque de enfermedades
fungosas que se ven notablemente favorecidas.
4.1.5 Viento
Fuertes vientos inducen a la desecación y al daño mecánico de tejido vegetal,
asimismo favorecen la incidencia de enfermedades. Por esta razón es conveniente
escoger terrenos protegidos del viento, o bien establecer rompe vientos para evitar la
acción de éste.
4.2 Enfermedades
4.2.1 Broca
La broca del café (hypothenemus hampei) es un insecto volador coleóptero
curculiónido; originario de África cuyo tamaño es aproximado al de la cabeza de un
alfiler. En el mundo, este insecto es una de las plagas más perjudiciales para los
cultivos de café. También es llamado gorgojo del café o taladrador de cerezas del
cafeto.
Este insecto (específicamente la hembra) taladra el fruto del cafeto. Por lo general en
la corola u ombligo, aunque también lo puede hacer por un lado; hasta llegar al
endosperma del fruto para construir una serie de galerías en las que dos días
después pondrá entre 35 y 50 huevos. Para que se de este proceso es necesario
que el endosperma esté en estado sólido, por lo que si el fruto al ser atacado aun
tiene un endosperma líquido e inmaduro, la broca se queda en el mesodermo
esperando varias semanas hasta que madure; lo que podría significar incluso, su
propia muerte (antes de causar daño real al fruto).
10
Los huevos eclosionan unos 25 o 45 días después de que la hembra los coloca
dentro del fruto del café, en una proporción de 13 hembras por cada macho.
Dependiendo de la temperatura y la consistencia del endosperma de la semilla, las
larvas tardan de una semana a un mes en llegar a su etapa adulta; entonces las
nuevas hembras se aparean con los machos dentro de la semilla. Algunas hembras
terminan depositando sus huevos en la misma planta en la que eclosionaron, otras
pueden mudarse a otras plantas. Los machos por el contrario, son incapaces de
volar y nunca abandonan el fruto. De este modo, en una misma planta generalmente
se pueden detectar más de tres generaciones de broca, y en los frutos más maduros
se pueden llegar a encontrar más de 100 individuos.
4.2.2 El ojo de gallo
Es una enfermedad que se presenta con mayor importancia en zonas altas de cultivo,
se ve favorecida por condiciones de precipitaciones constantes, alta humedad y
temperaturas frescas.
Los síntomas consisten en manchas circulares de color cafégrisáceo que se
desarrollan sobre las hojas, los tallos tiernos y los frutos; donde se forman las gemas
(estructuras de diseminación de la enfermedad) durante la época lluviosa.
El daño principal es la caída de hojas que causa un debilitamiento en la planta y una
reducción de la cosecha para el siguiente año, así como también una caída de frutos
que reduce la cosecha presente en la planta.
Plantaciones sin manejo de la enfermedad, pueden sufrir una defoliación del 95 %
entre los meses de setiembre y octubre, así como una reducción de la cosecha de un
80%.
4.2.3 La roya del café
Es una enfermedad que esta presente en todo el país y durante la mayor parte del
año. Su importancia es mayor en zonas cafetaleras de altura media y baja. La
enfermedad se ve favorecida por las temperaturas cálidas y ambientes húmedos y
11
lluviosos.
Los síntomas consisten en la formación de manchas con apariencia amarillenta en la
parte superior de la hoja y la formación de un polvo anaranjado en la parte inferior
(envés). Las lesiones viejas pueden mostrar un color negro con borde amarillento,
sobre todo al inicio de la época lluviosa.
En ataques severos, el daño principal es provocado por la caída de gran cantidad de
hojas, que causan un debilitamiento general de la planta, una maduración muy
irregular de la cosecha y una reducción de la producción para el siguiente año,
alrededor de un 20%.
5. Herramientas
5.1 Prolog
PROLOG es un lenguaje de programación especialmente indicado para modelar
problemas que impliquen objetos y las relaciones entre ellos. Está basado en los
siguientes mecanismos básicos: unificación, estructuras de datos basadas en
árboles y backtracking automático. La sintaxis del lenguaje incluye la declaración de
hechos, preguntas y reglas. Con la definición de este pequeño conjunto de
conceptos se consigue un lenguaje de programación muy potente y flexible,
ampliamente utilizado (junto con el lenguaje de programación LISP) en aplicaciones
que utilizan técnicas de Inteligencia Artificial.
5.1.1 Evolución Histórica
Prolog (del francés, PROgrammation en LOGique) fue el primer lenguaje de
programación basado en el paradigma de la programación lógica. Se implemento por
primera vez a principios de los años setenta en la Universidad de Marsella (Francia),
por un equipo dirigido por A. Colmeraeur, utilizando resultados teóricos aportados por
R. Kowalski (Universidad de Edimburgo).
Aunque con ciertas dificultades iniciales, debido principalmente a la novedad del
paradigma y a la escasa eficiencia de las implementaciones disponibles, el lenguaje
12
se fue expandiendo rápidamente, sobre todo en Europa y en Japón (en este ultimo
país la programación lógica se incluyo como parte central del proyecto de
ordenadores de quinta generación de los años ochenta). En 1995 el lenguaje se
normaliza con el correspondiente estándar ISO. En la actualidad Prolog se ha
convertido en una herramienta de desarrollo de software practica y de gran
aceptación para la que se dispone de múltiples compiladores, tanto comerciales
como de libre distribución.
5.1.2 Esquema general de trabajo en Prolog
El esquema general de trabajo en Prolog es el siguiente:
1. Escribir un programa lógico en Prolog.
Como se ha visto en el tema anterior, un programa lógico es un conjunto finito de
formulas lógicas, que reflejan el conocimiento del que se dispone acerca del
problema a resolver.
Por lo tanto, un programa en Prolog estará formado por una serie de formulas lógicas
que, evidentemente, tendrán que adaptarse a la sintaxis especifica del lenguaje (esta
se detalla mas adelante). Podrán asimismo incluirse comentarios:
% El símbolo % precede los comentarios en una única linea
/* Los comentarios en varias lineas empiezan con /*
y terminan con */
*/
Los programas se pueden escribir mediante cualquier editor de textos, aunque, como
se vera después, existen editores especiales que facilitan la escritura de programas
en Prolog. Una vez escrito un programa, este se deberá guardar en un fichero (la
extensión habitual para los programas en Prolog es \.pl")
2. Iniciar el sistema Prolog y cargar un programa.
Cuando se inicia un sistema Prolog,
este muestra por pantalla una linea con el
13
siguiente formato:
?que indica que el sistema esta esperando la introducción por parte del usuario de
alguna consulta. Para poder trabajar con un programa escrito previamente, es
necesario cargar el fichero correspondiente en el sistema Prolog. Lo anterior se
puede hacer de dos formas distintas:
- interpretando el programa por medio del interprete del lenguaje. Esta solución es la
mas habitual cuando se esta probando un programa, y la acción se conoce como
\consultar" un fichero. Para realizarla, basta con utilizar el predicado del sistema
consulta, con el nombre del fichero que se quiere cargar:
?- consult(’c:/Prolog/prueba.pl’).
3. Activar un programa desde el sistema Prolog.
Una vez que se ha cargado correctamente un programa, el sistema esta preparado
para recibir las consultas del usuario relativas al problema que se pretende resolver.
Para ello bastara con escribir dichas consultas, siguiendo la sintaxis especifica del
lenguaje, en la linea de consultas del sistema.
4. Salir del sistema Prolog.
Para salir del sistema Prolog basta con escribir el predicado del sistema halt en la
linea de comandos:
?- halt.
5.2 SWI-Prolog
SWI-Prolog es un compilador de Prolog de dominio publico diseñado e implementado
en la Universidad de Amsterdam, compatible con el estándar ISO y disponible para
distintas plataformas. Se puede obtener en la dirección http://www.swi-prolog.org. La
versión para Windows consta de un único
automáticamente el sistema. Este se utiliza de
14
fichero ejecutable que instala
acuerdo con el esquema general de trabajo en Prolog descrito mas arriba.
6. Sistema Experto
Un sistema experto es un programa que se comporta como un experto para algún
dominio de aplicación, normalmente reducido. Debe ser capaz de explicar las
decisiones que ha ido tomando y el razonamiento subyacente. Algunas veces es
interesante que los sistemas expertos manejen incertidumbre y conocimiento
incompleto.
6.2 Estructura
Los SE están compuestos por dos partes principales: el ambiente de Desarrollo y el
ambiente de consulta. El ambiente de desarrollo es utilizado por el constructor para
crear los componentes e introducir conocimiento en la base de conocimiento.
El ambiente de consulta es utilizado por los no-expertos para obtener conocimiento
experto y consejos (Turban, 1995). Los siguientes son los componentes básicos de
un SE:
 Subsistema de adquisición de conocimiento
Es la acumulación, transferencia y transformación de la experiencia para
resolver problemas de una fuente de conocimiento a un programa de
computadora para construir o expandir la base de conocimiento. El estado del
arte actual requiere un ingeniero en conocimiento que interactúe con uno o
más expertos humanos para construir la base de conocimiento.
 Base de conocimiento
Contiene el conocimiento necesario para comprender, formular y resolver
problemas. Incluye dos elementos básicos: heurística especial y reglas que
dirigen el uso del conocimiento para resolver problemas específcos en un
dominio particular.
 Base de hechos
Es una memoria de trabajo que contiene los hechos sobre un problema,
15
alberga los datos propios correspondientes a los problemas que se desean
tratar.
 Motor de inferencia
Es el cerebro del SE, también conocido como estructura de control o
interpretador de reglas. Este componente es esencialmente un programa de
computadora que provee metodologías para razonamiento de información en
la base de conocimiento.
Este componente provee direcciones sobre cómo usar el conocimiento del ¿
Sistema para armar la agenda que organiza y controla los pasos para resolver
el problema cuando se realiza una consulta. Tiene tres elementos principales:
1. Intérprete, ejecuta la agenda seleccionada
2. Programador, mantiene el control sobre la agenda
3. Control de consistencia, intenta mantener una representación consistente
de las soluciones encontradas.
 Subsistema de justificación
Se encarga de explicar el comportamiento del SE al encontrar una solución.
Permite al usuario hacer preguntas al sistema para poder entender las líneas
de razonamiento que este siguió. Resulta especialmente benefcioso para
usuarios no expertos que buscan aprender a realizar algún tipo de tarea.
Figura 2 – Estructura de un Sistema Experto
6.3 Tipos de sistemas expertos
Basados en reglas previamente establecidas
16
Los sistemas basados en reglas trabajan mediante la aplicación de reglas,
comparación de resultados y aplicación de las nuevas reglas basadas en situación
modifcada. También pueden trabajar por inferencia lógica dirigida, bien empezando
con una evidencia inicial en una determinada situación y dirigiéndose hacia la
obtención de una solución, o bien con hipótesis sobre las posibles soluciones y
volviendo hacia atrás para encontrar una evidencia existente (o una deducción de
una evidencia existente) que apoya una hipótesis en particular.
Representación del conocimiento
Hay numerosas formas de representar el conocimiento en IA, sin embargo, los
Sistemas Expertos suelen ser llamados sistemas basados en reglas.
Reglas “Si...entonces...”
Las reglas “si.. entonces..” son el principal tipo de conocimiento usado en Sistemas
Expertos, donde dichas normas se utilizan para capturar razonamiento de expertos
que emplean a menudo. Sin embargo, con el tiempo los investigadores comenzaron
a desarrollar e integrar otras formas de representación del conocimiento, tales como
el razonamiento basado en casos.
Los sistemas que incluyen múltiples tipos de conocimiento a veces se conocen como
sistemas híbridos, o etiquetados después de un determinado tipo de representación
del conocimiento, por ejemplo, basado en casos (O’Leary, 2008).
Basados en casos
El razonamiento basado en casos es el proceso de solucionar nuevos problemas
basándose en las soluciones de problemas anteriores. Un mecánico de automóviles
que repara un motor porque recordó que otro auto presentaba los mismos síntomas
está usando razonamiento basado en casos. Un abogado que apela a precedentes
legales para defender alguna causa está usando razonamiento basado en casos.
También un ingeniero cuando copia elementos de la naturaleza, está tratando a esta
como una “base de datos de soluciones”. El Razonamiento basado en casos es una
manera de razonar haciendo analogías. Se ha argumentado que el razonamiento
17
basado en casos no sólo es un método poderoso para el razonamiento de
computadoras, sino que es usado por las personas para solucionar problemas
cotidianos. Más radicalmente se ha sostenido que todo razonamiento es basado en
casos porque está basado en la experiencia previa.
Basados en redes bayesianas
Una red bayesiana, red de Bayes, red de creencia, modelo bayesiano o modelo
probabilístico en un gráfco acíclico dirigido es un modelo gráfco probabilístico (un
tipo de modelo estático) que representa un conjunto de variables aleatorias y sus
dependencias condicionales a través de un gráfco acíclico dirigido (DAG por sus
siglas en inglés). Por ejemplo, una red bayesiana puede representar las relaciones
probabilísticas entre enfermedades y síntomas. Dados los síntomas, la red puede ser
usada para computar las probabilidades de la presencia de varias enfermedades.
Sistemas Expertos difusos
Los Sistemas Expertos difusos se desarrollan usando el método de lógica difusa, la
cual trabaja con incertidumbre. Esta técnica emplea el modelo matemático de
conjuntos difusos, simula el proceso del razonamiento normal humano permitiendo a
la computadora comportarse menos precisa y más lógicamente que las
computadoras convencionales. Este enfoque es utilizado porque la toma de
decisiones no es siempre una cuestión de blanco y negro, verdadero o falso; a veces
involucra áreas grises y el término “quizás” (Holland, 1992).
6.3 Ventajas y limitaciones
Ventajas
Mientras que un experto humano tiene limitaciones y percances propias de su
condición humana, es decir: se enferma, envejece, migra a otras empresas, el
Sistema Experto, respecto a sus pares humanos, no sufre de estas cuestiones y se
convierte en una herramienta estable para su entorno y fable porque sus actividades
son completamente replicables (siempre contesta de la misma manera a menos que
se le cambie el diseño). A esto se le suma la velocidad de procesamiento que es
18
mayor al de un ser humano. Debido a la escasez de expertos humanos en
determinadas áreas, los SE pueden almacenar su conocimiento para cuando sea
necesario poder aplicarlo. Así mismo los SE pueden ser utilizados por personas no
especializadas para resolver problemas. Además, si una persona utiliza con
frecuencia un SE aprenderá de él.
Finalmente, si se evalúa el costo total del empleo de esta tecnología, la replicabilidad
y estabilidad, asociado a la seguridad que provee, resulta una ecuación favorable,
aun considerando que las inversiones iniciales pueden ser relativamente elevadas.
Limitaciones
Es evidente que para actualizar se necesita de reprogramación de estos (tal vez este
sea una de sus limitaciones más acentuadas) otra de sus limitaciones puede ser el
elevado costo en dinero y tiempo, además que estos programas son poco flexibles a
cambios y de difícil acceso a información no estructurada.
Los Sistemas Expertos carecen de sentido común, para un SE no hay nada obvio
Además no podemos mantener una conversación informal con estos sistemas. Para
un sistema experto es muy complicado de aprender de sus errores y de errores
ajenos. No son capaces de distinguir cuales son las cuestiones relevantes de un
problema y separarlas de cuestiones secundarias.
Por otra parte, la inteligencia artificial no ha podido desarrollar sistemas que sean
capaces de resolver problemas de manera general o de aplicar el sentido común
para resolver situaciones complejas ni de controlar situaciones ambiguas.
7. Metodologías para el desarrollo de un sistema experto
Al igual que para desarrollar un sistema de información convencional existen varias
metodologías de desarrollo como la ingeniería de la información, tendencias
estructuradas y orientadas a objetos, así existen varias metodologías para
desarrollar un sistema experto.
19
Como ya sabemos el área de sistemas expertos es relativamente joven por lo cual no
se dispone de una única metodología sino de cada autor propone una de acuerdo a
su forma de desarrollo. Sin embargo, existen algunas que han mantenido más éxito
que otras lo cual ha llevado a su mayor difusión.
A continuación, se exponen las metodologías que se podrían usar en la construcción
del sistema experto:
7.1 Metodología Grover
La metodología de Grover propone tres fases para el desarrollo del proceso de
adquisición del conocimiento, cada una acompañada de una documentación
detallada que reemplazan parcialmente al experto y sirven como medio de
documentación y referencia para usuarios y diseñadores.
Figura 3: Fases del ciclo de adquisición del conocimiento.
Las tres fases que propone la metodología Grover son:
Definición del dominio, formulación del conocimiento fundamental y consolidación del
conocimiento basal. Estas tres fases son expuestas a continuación:
20
A. Definición del dominio
Esta etapa consiste en realizar una cuidadosa interpretación del problema. El
objetivo es la producción de un Manual de Definición de Dominios, cuyo contenido se
describe a continuación:
 Descripción general del problema.
 Bibliografía de los documentos referenciados
 Identificación de expertos.
 Definición de métricas de performance apropiadas para evaluar el rendimiento
del Sistema Experto.
 Descripción de escenarios para ejemplos posibles
B. Formulación del conocimiento fundamental
Esta etapa consiste en examinar los escenarios seleccionados por el experto a partir
de criterios de evaluación y reclasificarlos según:
 El más importante
 El más esperado.
 El más arquetípico.
 El mejor entendido.
Para obtener el conocimiento fundamental se usa la técnica de simulación del
proceso y reclasificación que consiste en que el experto simule la solución de un
problema construyendo verbalmente. las reglas de razonamiento que utiliza. Luego
se procede a analizar estas reglas y reclasificarlas en diferentes niveles.
Esta base del conocimiento fundamental debe incluir:
 Definición de fuentes de entrada y formatos.
 Descripción del estado inicial que incluye el conocimiento base.
 Conjunto básico de razones y reglas de análisis.
 Lista de estrategias humanas.
 Cota de rendimiento mínimo.
21
 Definición de métricas aplicables.
 Técnicas de corrección.
 Delimitación de las capacidades del sistema experto que pueden ser
expandidas.
Este cuerpo de conocimientos debe estar escrito y se puede probar implementándolo
en una base de conocimientos que contraste con el escenario desde el cual fue
adquirido y verificando que se obtenga un comportamiento similar al que tendría el
experto en el mismo escenario.
C. Consolidación del conocimiento Basal.
El conocimiento basal es el conjunto de definiciones necesarias para producir la
actividad basal. La actividad basal se define como el menor nivel de actividad
esencial para el mantenimiento de las funciones vitales del sistema, es decir, se debe
tener desarrollados todos los componentes del sistema experto, pero no en la
profundidad en la que estarán desarrollados en la versión final del sistema. Para
conocer este nivel de desarrollo se debe contar con estándares mínimos de
performance en la definición del domino.
7.2 Metodología IDEAL
La metodología IDEAL fue desarrollada en la Facultad de Informática de la
Universidad Politécnica de Madrid. Consiste en conseguir desde etapas muy iniciales
del desarrollo prototipos que indiquen cómo debe funcionar el sistema experto final.
El objetivo de esta metodología es conseguir un proceso de mejora gradual en base
al conocimiento del experto y consta de las siguientes fases:
FASE I: Identificación de la tarea.
En esta fase se definen los objetivos del proyecto del sistema experto, las
características del problema y los requisitos para la solución del problema. Se
subdivide en las siguientes etapas:
22
1. Etapa 1: Plan de requisitos y adquisición de conocimientos. La primera tarea del
ingeniero del conocimiento es identificar las necesidades del cliente escribiendo los
requisitos del sistema a desarrollar. El plan de requisitos debe contener:
 Objetivos específicos y generales del sistema.

Funcionamiento y rendimiento requeridos.
 Limitaciones de costo/tiempo.
 Tecnología disponible.
 Competencia.
 Ampliaciones futuras.
2. Etapa 2: Evaluación y selección de la tarea. En esta etapa se estudia la viabilidad
de cada una de las tareas y el grado de dificultad que presentan.
3. Etapa 3: Definiciones de las características del sistema. En esta etapa se definen
las características que tendrá el sistema experto. Los puntos a tocar son:
 Especificación, técnica del sistema emitida por el ingeniero del conocimiento
en base al plan de requisitos.
 Criterios de éxito, que consiste en identificar las necesidades reales de los
usuarios finales.
 Casos de prueba, para validar la calidad del sistema experto.
 Recursos materiales y humanos, necesarios para desarrollar el sistema
experto.
 Plan de desarrollo del proyecto. Al terminar esta primera fase se conoce el
ámbito del problema y se definen las funcionalidades del sistema experto,
logrando que el ingeniero de conocimiento y los usuarios clientes tengan la
misma percepción de los objetivos del sistema
FASE II: Desarrollo de los prototipos.
Los sistemas basados en el conocimiento se construyen de forma incremental,
desarrollando distintos prototipos que permitan comprender mejor los requisitos de
los usuarios y las especificaciones del sistema.
23
Primero se desarrolla un prototipo de investigación que se convierte en un prototipo
de campo y finalmente se desarrolla un prototipo de operación. Para poder
desarrollar estos prototipos se deben de llevar a cabo. Las siguientes etapas:
Etapa 1: Concepción de la solución. Consiste en producir un diseño general del
sistema en base a las especificaciones obtenidas en la primera fase. Esta etapa está
conformada de un desarrollo del diagrama de flujo de datos y la especificación del
diseño arquitectónico del sistema.
Etapa 2: Adquisición y conceptualización de conocimientos. La adquisición de
conocimientos se alterna con la conceptualización de los mismos para poder modelar
el conocimiento del experto.
Etapa 3: Formalización de conocimientos. Esta etapa está conformada de la
definición de estructuras que permitan representar el conocimiento del experto y de
la realización del diseño detallado del sistema experto.
Etapa 4: Implementación. Si se ha elegido una herramienta de desarrollo adecuada,
la implementación es inmediata.
Etapa 5: Validación y Evaluación. Consiste en realizar las siguientes acciones:
 Casos de prueba. Permiten comparar las respuestas arrojadas por el sistema
experto con la respuesta que brindaría el experto ante la solución del mismo
problema.
 Ensayo en paralelo. Consiste en que el experto utilice el sistema para
encontrar discrepancias en los resultados, se examina la interfaz de usuario y
la calidad de las explicaciones que brinda el motor de inferencia.
Etapa 6: Evaluación de nuevos requisitos, especificaciones y diseño. Consiste
en la definición de los requisitos, especificaciones y diseño del siguiente prototipo.
Esta fase termina con la construcción del sistema experto completo.
FASE III: Ejecución de la construcción del sistema integrado. Esta fase está
conformada de las siguientes etapas:
24
Etapa 1: Requisitos y diseño de la integración. Comprende el estudio y diseño de
interfaces con otros sistemas.
Etapa 2: Implementación y evaluación del sistema integrado. Se implementa la
integración del sistema experto con otros sistemas existentes para conseguir un
sistema final.
Etapa 3: Aceptación del sistema por el cliente. El usuario prueba el sistema, el cual
deberá de satisfacer con sus requerimientos de fiabilidad y eficiencia.
FASE IV: Actuación para conseguir el mantenimiento perfectivo. Comprende
las siguientes etapas:
Etapa 1: Definir el mantenimiento del sistema global. Consiste en realizar un
mantenimiento correctivo y un mantenimiento perfectivo del sistema.
Etapa 2: Definir el mantenimiento de las bases de conocimientos. Considera la
adquisición de nuevos conocimientos por parte de la base de conocimientos que se
generan por el propio uso del sistema, definiendo los métodos necesarios para llevar
a cabo este proceso.
Etapa 3: Adquisición de nuevos conocimientos. Incorporación de nuevos
conocimientos que se generan por el propio uso del sistema experto.
FASE V: Lograr una adecuada transferencia tecnológica. Comprende las
siguientes etapas:
Etapa V.1: Organizar la transferencia tecnológica. El desarrollador del sistema
experto se debe reunir con los usuarios para brindar una explicación del manejo del
sistema experto y de la documentación laborada.
Etapa V.2: Completar la documentación del sistema experto construido. Elaborar un
manual de usuario.
25
7.3 Metodología BGM
La metodología BGM desarrollado por Blanqué y García Martínez que se describe a
continuación consta de 5 etapas: (Ramón GARCIA MARTINEZ, Metodologías de
educción de conocimiento para la construcción de sistemas informáticos expertos,
2001)
Etapa 1: Adquisición de Conocimiento
Esta etapa consiste en pedirle al experto de campo que hable sobre el conocimiento
involucrado, recordándole al experto que el ingeniero de conocimiento es lego en el
tema. El conocimiento asociado a un dominio que tiene un experto puede
visualizarse mediante el siguiente esquema:
El conocimiento de campo ocupa una parte del conocimiento del experto, este
conocimiento tiene conexos otros conocimientos que permiten que el experto lo
articule, estos conocimientos conexos no son específicos del dominio de aplicación,
pero tienen que ver con él, es decir, hacen al sentido común necesario para aplicar
esa área de conocimiento. Este conocimiento conexo también debe ser incluido en la
BC. Este conocimiento es el que resulta de pedirle al experto de campo que piense
su
exposición
para
personas
que
desconocen
el
tema,
así
se
fuerza
inconscientemente al expositor a explorar en busca de conocimiento conexo, o sea,
conocimiento para no especializados en el tema.
Etapa 2: Enunciación de Conceptos
En esta etapa se debe tomar nota de los conceptos más frecuentemente utilizados.
Esto se logra observando la recurrencia del experto de campo sobre determinadas
ideas, en esta etapa, la experiencia ha demostrado la conveniencia de mostrar una
lista de tales conceptos al experto de campo y que él realice una clasificación
del tipo:
 Conceptos primarios y secundarios
 Conceptos primarios, vinculantes y secundarios.
Etapa 3: Parametrización de Conceptos
26
Parametrizar los conceptos involucrados. Estos parámetros suelen estar asociados a
valores tales como:
 Presencia / Ausencia
 Mucho / Poco / Nada
 Alto / Bajo / Medio
 Verdadero / Falso
 Valores de confianza
 Valores Estadísticos, Probabilísticos
 Resultados numéricos de expresiones aritméticas o lógicas
Estos parámetros "ad hoc" suelen englobarse en formalismos de representación de
conocimiento. El trabajo del ingeniero de conocimiento consistirá en descubrir tales
valores en el discurso del experto de campo, y llegado el caso, plantearle si tales
valores le parecen aceptables o si es necesario considerar modificaciones.
Etapa 4: Planteo de Causalidades
Establecer relaciones de causalidad entre los conceptos mencionados y redactar las
reglas asociadas.
Etapa 5: Verificación
Verificar la aceptabilidad de las reglas con el experto de campo. Esto se realizará
usando casos de testeo que sean considerados típicos, se compararán los
resultados con los dados para esos mismos casos por los expertos humanos, y en
base a esa comparación, se decidirá si modificar, eliminar, o aceptar las reglas
involucradas. Se usarán casos de la bibliografía proporcionada para producir los
testeas iniciales. Se utilizarán casos extremos para testear, verificar la consistencia y
ampliar la base de conocimiento, si es posible.
Se usarán casos de testeo típicos para generar grupos adicionales de casos,
variando ciertos aspectos de los primeros. Se verificará la aplicabilidad del modelo,
corriendo el prototipo, o el sistema experto en paralelo con expertos humanos
27
(diferentes de aquellos con los cuales se realizó el sistema) en situaciones reales, y
se llevarán estadísticas acerca de su comportamiento, tratando de detectar posibles
problemas conceptuales a partir del análisis de las respuestas.
Agregar información de las enfermedades
Síntomas
Tratamiento
8. Formulación del conocimiento fundamental
Enfermedad: Roya
Síntomas
Pregunta1 = Hojas con manchas color amarillo
Pregunta2= Plantas sin hojas
3. Se caen las hojas
4. Se seca la mata
5. Ya no enverdece
Posibles respuestas
Si=1
No=0
Regla 1
If (Pregunta1=1 y Pregunta2=1 y Pregunta3=1 y Pregunta4=1 y Pregunta5=1){
Enfermedad es Roya
}
Regla 2
If(Pregunta10=1 )
Regla 1
Regla 2
Regla 2
28
9. Consolidación del conocimiento basal
En primer lugar se abre la interfaz del sistema experto para la detección de plagas en plantas de
café y nos da las opciones comenzar y salir.
Figura. 1 interfaz principal.
Se da iniciar al programa y enseguida nos abre la interfaz para empezar a hacer el diagnostico a
partir de las preguntas que realizara el sistema experto.
Figura 2. interfaz para empezar diagnóstico.
29
Al iniciar el diagnostico aparece la interfaz de la primera pregunta y se puede elegir dos opciones
“si” o “no”.
Figura 3. interfaz de la primera pregunta para el diagnóstico.
Al dar si a la primera pregunta se abrirá una segunda interfaz con las mismas opciones “si o “no”.
Si la opción elegida es “si” se abrirá una tercera interfaz haciendo una tercera pregunta.
Figura 4 interfaz de segunda pregunta para el diagnóstico.
30
Al terminar las preguntas y si todas cumplen con la regla se abre la interfaz de respuesta según
sea el caso.
Figura 5. interfaz de respuesta del sistema experto.
Al diagnosticar la enfermedad el sistema experto puede dar un tratamiento a la enfermedad
diagnosticada.
Figura 6. interfaz de tratamiento para la enfermedad diagnosticada.
31
Conclusión
Se logró desarrollar un sistema fácil de usar y con una interfaz amigable que
interactúa con el cliente mediante preguntas, mostrando posibles curas para
contrarrestar el azote de las plagas y enfermedades del café.
Se puede concluir que un sistema inteligente como el que se plantea, tiene una
función de prevención y de informar a los agricultores de las posibles plagas que
puedan existir en sus cultivos, dándoles así datos acerca de ellas y una posible
solución a este problema.
Este sistema inteligente no solo es una herramienta de prevención, sino que brinda la
información necesaria para para poder darle solución a los problemas que tiene el
sector cafetalero en cuanto al control de plagas.
Gracias a este sistema inteligente, los usuarios se verán beneficiados debido a los
resultados proporcionados, mejorando así su productividad y evitando los posibles
daños que afectarían sus cultivos.
32
Bibliografía
 Bratko, I., PROLOG. Programming for Artificial Intelligence. 4ª edición. Ed.
Addison-Wesley, 2011.
 Instituto del Café de Costa Rica (ICAFE) Guía Técnica para el Cultivo del Café 1a
ed. Heredia Costa Rica. 2013: ICAFE-CICAFE 72 p. ISBN 978-9977-55-041 W.F CLOCKSIN C.S MELLISH 2014 PROGRAMACION EN PROLOG (EN
PAPEL) Editorial GUSTAVO GILI
 Acerca de sistemas expertos Recuperado el 13 de mayo del 2019 de:
https://www.gestiopolis.com/sistemas expertos.html/
33
Descargar