Prolog
Prolog
Prolog
Objetivos
2. Tener una base de conocimientos el cual un paciente dado los síntomas que posee,
pueda ser detectado que tipo(s) de enfermedad(es) pueda tener y los medicamentos
que este debe tomar para su mejora así como también los médicos que pueden
tratarlo.
Diagrama General
Diarrea
Tos
Cansancio
Gripe
jarabe Fiebre
otorrino
Rubeola
contrex Dolor de
endocrinolog
Malaria
vitamina Nauseas
nutricionista
Hepatitis
vacuna Ictericia
medicogener Tuberculosis
pastilla Apatía
Anemia
Escalofríos
Jaqueca
Secreción
Inteligencia Artificial
Código Fuente
%%declaraciones de enfermedades
enfermedad(gripe).
enfermedad(rubeola).
enfermedad(malaria).
enfermedad(hepatitis).
enfermedad(tuberculosis).
enfermedad(anemia).
%enfermode(manuel,gripe).
%tienesintoma(alicia,cansancio).
% Reglas para determinar que probabilidad una persona puede tener una
% enfermedad X dado n síntomas
% %La función buscar busca las enfermedades que contengan como mínimo los síntomas
%suministrados
% % primer parámetro (lista de enfermedades)
% % segundo parámetro (Enfermedad)
Inteligencia Artificial
buscar([], E , 0).
buscar(X , E , 1) :- sintomade(X, E).
buscar([X|Xs] , E , P) :- enfermedad(E) , buscar(X , E , S1) , buscar(Xs , E ,S2) , P is S1 + S2.
%%Esta función es parecida a la de buscar con la excepción que en el ultimo argumento te entrega
%% el (porcentaje de probabilidad de la enfermedad)
%---------------------------------------------------------------------------------------------------------------------
%hasta alli llegamos en el primer informe, pero ahora añadiremos mas capacidad a nuestro SE.
%---------------------------------------------------------------------------------------------------------------------
especialistade(otorrino, gripe).
especialistade(nutricionista, anemia).
especialistade(endocrinologia, hepatitis).
especialistade(medicinageneral, rubéola).
especialistade(nutricionista, tubercolosis).
especialistade(medicinageneral, malaria).
%---------------------------------------------------------------------------------------------------------------------
%Reglas
%---------------------------------------------------------------------------------------------------------------------
Consultas
Respuesta:
?- medicinade(X, malaria).
X = vacuna;
Respuesta:
?- medicinade(X, gripe).
X = contrex;
X = jarabe;
Respuesta:
?- recetade(M, tos).
M = contrex;
M = jarabe;
Respuesta:
?- especialistade(X, gripe).
X = otorrino;
Respuesta:
?- mereceta(E, M, gripe).
E = otorrino,
M = contrex ;
E = otorrino,
M = jarabe;
Inteligencia Artificial
Conclusiones:
Con una adecuada estructura de la información se pudo implementar el desarrollo de
este sistema experto, como hemos notado, es posible reutilizar código, es posible
ampliar las características de nuestro SE partiendo de un SE básico, y ahora con mas
capacidad. En la actualidad sin lugar a dudas la inteligencia artificial nos esta
cambiando la vida, con estos sistemas inteligentes al parecer todo es más fácil.
Recomendaciones:
Insistimos en la elaboración del diagrama que en esta parte del trabajo creció
significativamente. Nos ayudamos de el a la hora de codificar. Y en el momento de
hacer las consultas respectivas.
Bibliografía:
WEBPAGE: http://lsi.uniovi.es/~labra/FTP/Prolog.pdf
WEBPAGE: http://www.swi-prolog.org/download/stable
Pagina oficial en donde podemos descargar las distintas versiones de la swi de prolog.
WEBPAGE: http://www.aepia.org/