the.manolox Posted November 3, 2010 Report Share Posted November 3, 2010 Estimados. Necesito una pequeña ayuda si alguien algun programa de sistema de expertos que este hecho en prolog. solo necesito saber la sintaxsis de como va estructurado para hacer el programa que deseo hacer. O si alguien tiene conocimientos, para ir preguntandole. seria genial gracias. Link to comment Share on other sites More sharing options...
alvaroxz Posted November 3, 2010 Report Share Posted November 3, 2010 detecting mode... flojo mode on :sufre maraca sufre: :sufre maraca sufre: :sufre maraca sufre: flojo e mier Link to comment Share on other sites More sharing options...
the.manolox Posted November 3, 2010 Author Report Share Posted November 3, 2010 Gracias :P Obligado a aprender xD. Era para ver si alguien tenia algo ya implementado. de todas maneras gracias. Link to comment Share on other sites More sharing options...
alvaroxz Posted November 3, 2010 Report Share Posted November 3, 2010 Gracias :P Obligado a aprender xD. Era para ver si alguien tenia algo ya implementado. de todas maneras gracias. preguntaste por sintaxis o alguien con conocimientos ya te di la mitad de lo que pedias xD Link to comment Share on other sites More sharing options...
the.manolox Posted November 11, 2010 Author Report Share Posted November 11, 2010 :S Eh investigado y investigado y aun no puedo realizar lo que quiero hacer... Estoy tratando de hacer un programa de SE en prolog que a travez de unas preguntas que me determine tipo de transtorno psicologico que tiene una persona. El tema es el siguiente. tengo las preguntas, pero lo que no e podido hacer, es como declaras las preguntas si lo hago como base de hechos o como base de conocimientos. ademas nose como decirle al sistema que me haga la pregunta por pantalla y que el encuestado responda y se vayan almacenando las respuestas y de ahi determinar el nivel de trastorno... :S porfa ayuda. Link to comment Share on other sites More sharing options...
rommel69 Posted November 12, 2010 Report Share Posted November 12, 2010 Wn trabajar en prolog es la raja, y aparte muy facil... lo invito a visitar www.google.cl saludos. Link to comment Share on other sites More sharing options...
the.manolox Posted November 16, 2010 Author Report Share Posted November 16, 2010 Wn trabajar en prolog es la raja, y aparte muy facil... lo invito a visitar www.google.cl saludos. Estimado. e visitado google miles de veces. y realmente no le e encontrado lo facil a este programa. buscando y buscando e avanzado algo con este lenguaje. pero sin embargo cada vez que avanzo quedo pegado en algo nuevo.. Si supiera programar en prolog o tuviese nociones les prometo que no les pediria ayuda. en verdad. Pero si alguien tiene la intención de brindarme un poco de ayuda en este tema se la agradecería. Les explico brevemente... Tengo que hacer un programa en prolog que te determine el trastorno de personalidad de una persona. a travez de preguntas que ya estan formuladas... Las respuestas se basan en un si o no, y de acuerdo a la respuesta te calcula el nivel de trastorno.. He avanzado. en eso, pero aun sigo sin poder comprobar si lo que tengo esta mal.. :- dynamic inclina/3, esPersona/1. % ANALISIS DE PREGUNTAS. PARA DETERMINAR % EL TRANSTORNO DE PERSONALIDAD % /***** preguntas Narcicista *****/ esPregunta('Nadie debe frustrar mi búsqueda de placer y status', 'narcicista'). esPregunta('Yo soy más especial que lo demás', 'narcicista'). esPregunta('Yo solamente quiero que la gente diga lo especial que soy', 'narcicista'). esPregunta('Yo debo de admirarme', 'narcicista'). esPregunta('Una vez que deseo algo, debo tenerlo', 'narcicista'). % /***** preguntas Histrionico *****/ esPregunta('Las apariencias son muy importantes', 'histrionico'). esPregunta('La gente juzga por las apariencias externas', 'histrionico'). esPregunta('Yo debo tener la atención de la gente importante para mí', 'histrionico'). esPregunta('Mi vida nunca debe frustrarme', 'histrionico'). esPregunta('Yo debo tener siempre lo que quiero', 'histrionico'). % /***** preguntas Antisocial *****/ esPregunta('Las normas de otros son malas', 'antisocial'). esPregunta('Solo los tontos siguen las normas', 'antisocial'). esPregunta('Las normas tienen que eliminarse', 'antisocial'). esPregunta('Tiene que ser ahora, sino me frustraré', 'antisocial'). esPregunta('Yo soy muy listo en casi todo', 'antisocial'). % /***** preguntas Paranoico *****/ esPregunta('La gente tiene intención de dañarme', 'paranoico'). esPregunta('Si confío en la gente, tendrán ventaja sobre mi', 'paranoico'). esPregunta('La gente intenta fastidiarme o irritarme', 'paranoico'). esPregunta('Yo no estoy mal, ellos están mal', 'paranoico'). esPregunta('Hay que estar siempre en guardia, preparado para lo peor', 'paranoico'). % ******************************* esRespuesta('si'). esRespuesta('no'). % /******* Reglas para preguntas ********/ preguntar(Persona, Caract, Resp):- esPregunta(Pregunta, Caract), string_concat(Persona,' ¿',A), string_concat(A,Pregunta,B), mostrarPregunta(B, Resp), esRespuesta(Resp), !. preguntar(Persona, Caract, Resp):- preguntar(Persona, Caract, Resp),!. seInclina(Persona, Caract, Resp):- inclina(Persona,Caract, Resp),!. seInclina(Persona, Caract, Resp):- preguntar(Persona,Caract,Resp), assert(inclina(Persona,Caract,Resp)),!. /*******************************************/ % PERSONALIDAD NARCICISTA % esNarcicista(Persona,'PERSONALIDAD NARCICISTA'):- seInclina(Persona,'narcicista',Resp),Resp='si', seInclina(Persona,'narcicista',Resp1),Resp1='si', seInclina(Persona,'narcicista',Resp2),Resp2='si', seInclina(Persona,'narcicista',Resp3),Resp3='si', seInclina(Persona,'narcicista',Resp4),Resp4='si', !. esHistrionico(Persona,'PERSONALIDAD HISTRIONICA'):- seInclina(Persona,'histrionico',Resp),Resp='si', seInclina(Persona,'histrionico',Resp1),Resp1='si', seInclina(Persona,'histrionico',Resp2),Resp2='si', seInclina(Persona,'histrionico',Resp3),Resp3='si', seInclina(Persona,'histrionico',Resp4),Resp4='si', !. esAntisocial(Persona,'PERSONALIDAD ANTISOCIAL'):- seInclina(Persona,'antisocial',Resp),Resp='si', seInclina(Persona,'antisocial',Resp1),Resp1='si', seInclina(Persona,'antisocial',Resp2),Resp2='si', seInclina(Persona,'antisocial',Resp3),Resp3='si', seInclina(Persona,'antisocial',Resp4),Resp4='si', !. esParanoico(Persona,'PERSONALIDAD PARANOICA'):- seInclina(Persona,'paranoico',Resp),Resp='si', seInclina(Persona,'paranoico',Resp1),Resp1='si', seInclina(Persona,'paranoico',Resp2),Resp2='si', seInclina(Persona,'paranoico',Resp3),Resp3='si', seInclina(Persona,'paranoico',Resp4),Resp4='si', !. /*******************************************************************************/ /************************ TIPO DE ENFERMEDAD *******************************/ /*******************************************************************************/ esPerfil(Persona,'PERSONALIDAD NARCICISTA'):- esNarcicista(Persona,'PERSONALIDAD NARCICISTA'), !. esPerfil(Persona,'PERSONALIDAD HISTRIONICA'):- esHistrionico(Persona,'PERSONALIDAD HISTRIONICA'), !. esPerfil(Persona,'PERSONALIDAD ANTISOCIAL'):- esAntisocial(Persona,'PERSONALIDAD ANTISOCIAL'), !. esPerfil(Persona,'PERSONALIDAD PARANOICO'):- esParanoico(Persona,'PERSONALIDAD PARANOICA'), !. Esto lo saque en base a unos ejemplos que encontre en internet... GRacias. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now