Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
CODIGO PROLOG
padece(symbol, symbol)
sintoma(symbol,symbol)
suprime(symbol,symbol)
alivia(symbol,symbol)
tomar(symbol,symbol)
sintomas_persona1(symbol,symbol)
sintomas_persona2(symbol,symbol)
farmaco_persona(symbol,symbol)
sintomas(symbol,symbol, symbol)
padece(pedro, gripe).
padece(pedro, hepatitis).
Página 1
padece(juan, hepatitis).
padece(maria, gripe).
padece(carlos, intoxicación).
sintoma(fiebre, gripe).
sintoma(cansancio, hepatitis).
sintoma(diarrea, intoxicación).
sintoma(cansancio, gripe).
suprime(aspirina, fiebre).
suprime(lomotil, diarrea).
alivia(Farmaco,Enfermedad):-sintoma(S,Enfermedad), suprime(Farmaco, S).
tomar(Persona,Farmaco):-padece(Persona,Enfermedad), alivia(Farmaco, Enfermedad).
sintomas_persona1(Persona,Sintomas):-padece(Persona,Enfermedad),
sintoma(Sintomas, Enfermedad).
sintomas_persona2(Persona,Sintomas):- sintoma(Sintomas, Enfermedad),
padece(Persona,Enfermedad).
farmaco_persona(Persona, Farmaco):-padece(Persona, Enfermedad), alivia(Farmaco,
Enfermedad).
sintomas(P1, P2, S):- sintomas_persona1(P1, S),sintomas_persona1(P2, S).
PREGUNTAS:
1. ¿Podemos conocer qué dolencia tiene Pedro? ¿Y María?
padece(pedro, DP).
padece(maria, DM).
CODIGO PROLOG
animal('LEON'):-clase(mamifero),alimentacion('carnivoro').
animal('MUSARAÑA'):-clase(mamifero),alimentacion('insectivoro').
animal('CABALLO'):-clase(mamifero),alimentacion('herbivoro').
animal('COCODRILO'):-clase(reptil),alimentacion('carnivoro').
animal('CAMALEON'):-clase(reptil),alimentacion('insectivoro').
animal('TORTUGA DE TIERRA'):-clase(reptil),alimentacion('herbivoro').
Página 2
animal('AGUILA'):-clase(ave),alimentacion('carnivoro').
animal('GOLONDRINA'):-clase(ave),alimentacion('insectivoro').
animal('PERDIZ'):-clase(ave),alimentacion('herbivoro').
pregunta1:-
write('la clase a la que pertenece el animal es:'),nl,nl,
write('1.mamifero.'),nl,
write('2.reptil.'),nl,
write('3.ave.'),nl,
write('4.por que se hace la pregunta?'),nl,
read(N),
clasificar1(N).
clasificar1(1):-assert(clase(mamifero)),!.
clasificar1(2):-assert(clase(reptil)),!.
clasificar1(3):-assert(clase(ave)),!.
clasificar1(4):-write(clase('el hecho de saber la clase, permite aproximarse'),nl,
write('a la determinacion del animal especifico de la tabla'),nl,nl,pregunta1,!.
clasificar1(_):-pregunta1,!.
pregunta2:-
write('segun tipo de alimentacion puede ser:'),nl,nl,
write('1.carnivoro.'),nl,
write('2.insectivoro.'),nl,
write('3.hervivoro.'),nl,
write('4.por que se hace la pregunta?'),nl,
read(N2),
clasificar2(N2).
clasificar2(1):-assert(alimentacion(carnivoro)),!.
clasificar2(2):-assert(alimentacion(insectivoro)),!.
clasificar2(3):-assert(alimentacion(hervovoro)),!.
clasificar2(4):-write('el hecho de saber el tipo de3 alimentacion,una vez conocida la
clase, permite establecer'),nl,
write('inequivocadamente el animal de que se trata, con base en la informacion de la
tabla'),nl,nl,pregunta2,!.
clasificar2(_):-pregunta2,!.
clasificar:-
animal(M),
write('el animal puede ser:'),nl,
write(''),write(M),nl,
write('por que es el unico animal que cumple la condicion de ser'),clase(X),nl,
write(X),write('y'),alimentacion(Y),write(Y),nl.
empezar:-
pregunta1,
pregunta2,
clasificar,!.
limpiar:-retrac(clase(_)),
retrac(alimentacion(_)),!.
continue('s'):-empezar,!.
continue('S'):-empezar,!.
continue('n'):-continue('N').
continue('N'):-write('NOS AGRADÓ AYUDARTE'),nl,
write('.........HASTA PRONTO.........').
pregunta:-nl,nl,
write('Desea continuar s/n:'),read(X),continue(X).
Página 3
3. RED NEURONAL
CODIGO MATLAB
y=length(Salida)
e1=Entrada(2:1:(y-1))
e2=Entrada(1:1:(y-2))
s1=Salida(2:1:(y-1))
s2=Salida(1:1:(y-2))
s3=Salida(3:1:(y))
INs=[e1 e2 s1 s2];
ENTRADAS=INs'
red=newff(minmax(ENTRADAS),[10,1],{'tansig','purelin'},'trainlm')
red.trainparam.show=20
red.trainparam.epochs=100
red.trainparam.goal=0.0000001
red=train(red,ENTRADAS,s3')
gensim(red,0.05)
ENTRENAMIENTO 1:
ENTRENAMIENTO 2:
Página 4
ENTRENAMIENTO 3:
ENTRENAMIENTO 4:
ENTRENAMIENTO 5:
Página 5
CONCLUSIONES:
El entrenamiento tranlm es el más eficaz de todos los entrenamientos para este tipo de
red neuronal, ya que es este quien realiza su labor en el menor tiempo y logra el objetivo
de obtener un error inferior a 0.000001
Página 6