Vamos a implementar un sistema experto cuyo propósito será ayudarnos en la elección de un mueble a la hora de su compra, primero haremos una breve descripción de los sistemas expertos y luego veremos su desarrollo.
ESTRUCTURA DE DATOS: MEMORIA ESTATICA
La memoria estática es la que no se puede modificar o ejecutar en momento de ejecución. También se debe conocer con anticipo el tamaño de la estructura que está en ejecución.
ITESZ
en la siguiente diapositiva les brindamos información acerca de lenguaje ensamblador, sus características, instrucciones, registros y las ventajas y desventajas que este posee
Esta presentación es parte del contenido del curso de Programación Avanzada impartido en la Universidad Rafael Landívar durante el año 2015.
Incluye los temas:
• POO - atributos y métodos
Creado por Ing. Alvaro Enrique Ruano
Vamos a implementar un sistema experto cuyo propósito será pronosticar y dar tratamiento natural a un paciente sobre su enfermedad. Para ello primero haremos una breve descripción de los sistemas expertos y de su importancia y después pasaremos a desarrollar el problema, un sistema experto ampliamente utilizado.
ESTRUCTURA DE DATOS: MEMORIA ESTATICA
La memoria estática es la que no se puede modificar o ejecutar en momento de ejecución. También se debe conocer con anticipo el tamaño de la estructura que está en ejecución.
ITESZ
en la siguiente diapositiva les brindamos información acerca de lenguaje ensamblador, sus características, instrucciones, registros y las ventajas y desventajas que este posee
Esta presentación es parte del contenido del curso de Programación Avanzada impartido en la Universidad Rafael Landívar durante el año 2015.
Incluye los temas:
• POO - atributos y métodos
Creado por Ing. Alvaro Enrique Ruano
Vamos a implementar un sistema experto cuyo propósito será pronosticar y dar tratamiento natural a un paciente sobre su enfermedad. Para ello primero haremos una breve descripción de los sistemas expertos y de su importancia y después pasaremos a desarrollar el problema, un sistema experto ampliamente utilizado.
Sistema Experto : Juego "3 en Raya" bajo plataforma Linux (Ubuntu)jclavotafur
Vamos a implementar un sistema experto, en este caso será un juego de 3 en raya que tendrá para jugar contra la PC, todo esto se hará bajo plataforma Linux más preciso en su distribución Ubuntu 14.02. Primero haremos una breve descripción de los sistemas expertos y luego veremos su desarrollo.
Los desafíos de calidad de software que nos trae la IA y los LLMsFederico Toledo
En esta charla, nos sumergiremos en los desafíos emergentes que la inteligencia artificial (IA) y los Large Language Models (LLMs) traen al mundo de la calidad del software y el testing. Exploraremos cómo la integración, uso o diseño de modelos de IA plantean nuevos retos, incluyendo la calidad de datos y detección de sesgos, sumando la complejidad de probar algo no determinístico. Revisaremos algunas propuestas que se están llevando adelante para ajustar nuestras tareas de testing al desarrollo de este tipo de sistemas, incluyendo enfoques de pruebas automatizadas y observabilidad.
Escaneo y eliminación de malware en el equiponicromante2000
El malware tiene muchas caras, y es que los programas maliciosos se reproducen en los ordenadores de diferentes formas. Ya se trate de virus, de programas espía o de troyanos, la presencia de software malicioso en los sistemas informáticos siempre debería evitarse. Aquí te muestro como trabaja un anti malware a la hora de analizar tu equipo
Si bien los hospitales conjuntan a profesionales de salud que atienden a la población, existe un equipo de organización, coordinación y administración que permite que los cuidados clínicos se otorguen de manera constante y sin obstáculos.
Mario García Baltazar, director del área de Tecnología (TI) del Hospital Victoria La Salle, relató la manera en la que el departamento que él lidera, apoyado en Cirrus y Estela, brinda servicio a los clientes internos de la institución e impulsa una experiencia positiva en el paciente.
Conoce el Hospital Victoria La Salle
Ubicado en Ciudad Victoria, Tamaulipas, México
Inició operaciones en el 2016
Forma parte del Consorcio Mexicanos de Hospitales
Hospital de segundo nivel
21 habitaciones para estancia
31 camas censables
13 camillas
2 quirófanos
+174 integrantes en su plantilla
+120 equipos médicos de alta tecnología
+900 pacientes atendidos
Servicios de +20 especialidades
Módulos utilizados de Cirrus
HIS
EHR
ERP
Estela - Business Intelligence
experiencia de aprendizaje sobre lectura y escritura como herramientas de ap...
Sistema de Ventas de Muebles en Prolog
1. Sistema Experto: Venta de Muebles
Erick Celis Izaga
Alex Culquichicon Paucar
Universidad Nacional de Trujillo
Sede Valle del Jequetepeque
Escuela de Informática
Profesor : Arturo Díaz Pulido
RESUMEN
Vamos a implementar un sistema
expertocuyopropósito será ayudarnos en la
elección de un mueble a la hora de su
compra, primero haremos una breve
descripciónde lossistemas expertos y luego
veremos su desarrollo.
Palabras Claves
Prolog, sistema experto, tienda de , etc
1. INTRODUCCION
Los sistemas expertos se pueden considerar
como el primer producto verdaderamente
operacional de la inteligencia artificial.
Son programas de ordenador diseñados
para actuar como unespecialistahumanoen
un dominio particular o área de
conocimiento. En este sentido, pueden
considerarse como intermediarios entre el
experto humano, que transmite su
conocimientoal sistema,y del usuarioque lo
utiliza para resolver un problema con la
eficacia del especialista.
El sistema experto utilizará para ello el
conocimiento que tenga almacenado y
algunos métodos de inferencia. Para que
un sistema experto sea herramienta
efectiva, los usuarios deben interactuar de
una forma fácil, reuniendo dos capacidades
para poder cumplirlo
Explicar sus razonamientos o base del
conocimiento:
los sistemas expertos se deben realizar
siguiendo ciertas reglas o pasos
comprensibles de manera que se pueda
generarla explicaciónparacada unade estas
reglas, que a la vez se basan en hechos.
Adquisición de nuevos conocimientos o
integrador del sistema:
son mecanismos de razonamiento que
sirven para modificar los conocimientos
anteriores. Sobre labase de lo anterior se
puede decir que los sistemas expertos son
el producto de investigaciones en el campo
de la inteligencia artificial ya que ésta no
intenta sustituir a los expertos humanos,
sino que se desea ayudarlos a realizar con
más rapidez y eficacia todas las tareas que
realiza.
1.1. Usos de un Sistema Experto
a) Un sistema experto es muy eficaz
cuando tiene que analizar una gran
cantidad de información,
interpretándola y proporcionando
una recomendación a partir de la
2. misma. Un ejemplo es el análisis
financiero, donde se estudian las
oportunidades de inversión,
dependiendo de los datos
financieros de un cliente y de sus
propósitos.
b) Para detectar y reparar fallos en
equipos electrónicos, se utilizan los
sistemas expertos de diagnóstico y
depuración, que formulan listas de
preguntas con las que obtienen
los datos necesarios para llegar a
una conclusión. Entonces
recomiendanlas accionesadecuadas
para corregir los problemas
descubiertos. Este tipo de sistemas
se utilizan también en medicina
(ej. MYCIN y PUFF), y para
localizar problemas en sistemas
informáticos grandes y complejos.
c) Los sistemas expertos son buenos
para predecir resultados futuros a
partir del conocimiento que
tienen. Los sistemasmeteorológicos
y de inversión en bolsa son
ejemplos de utilización en este
sentido. El sistema PROSPECTOR es
de este tipo.
1.2. Arquitectura y funcionamiento
de un sistema experto.
La mayoría de los sistemas
expertos tienen unos componentesbásicos:
base de conocimientos,motorde inferencia,
base de datos e interfaz con el usuario.
Muchos tienen, además, un módulo de
explicación y un módulo de adquisición
del conocimiento.
1.2.1. Base de conocimiento
La base de conocimientos contiene
el conocimiento especializado extraído del
experto en el dominio. El método más
común para representar el conocimiento
es mediante reglas de producción. El
dominio de conocimiento representándose
divide, pues, en pequeñas fracciones de
conocimiento o reglas. Una característica
muy importante es que la base de
conocimientos es independiente del
mecanismo de inferencia que se utiliza
para resolver los problemas. De esta forma,
cuando los conocimientos almacenados se
han quedado obsoletos, o cuando se
dispone de nuevos conocimientos, es
relativamente fácil añadir reglas nuevas,
eliminarlasantiguas o corregir errores enlas
existentes.
1.2.2. Base de datos
La base de datos o base
de hechos es una parte de la memoria
del ordenador que se utiliza para
almacenar los datos recibidos inicialmente
para la resolución de un problema,
contiene conocimiento sobre el caso
concreto en que se trabaja. También se
registrarán en ella las conclusiones
intermedias y los datos generados en el
proceso de inferencia.
1.2.3. Motor de inferencia
El motor de inferencias es un
programa que controla el proceso de
razonamiento que seguirá el sistema
experto. Utilizando los datos que se le
suministran, recorre la base de
conocimientosparaalcanzarunasolución. La
estrategia de control puede ser de
3. encadenamiento progresivo o de
encadenamiento regresivo. En el primer
caso se comienza con los hechos
disponibles en la base de datos, y se buscan
reglas que satisfagan esos datos.
Normalmente,el sistemasigue lossiguientes
pasos:
1. Evaluar lascondiciones de todas las reglas
respectoa labase de datos, identificando el
conjunto de reglas que se pueden aplicar
2. Si no se puede aplicar ninguna regla, se
terminasinéxito;encaso contrario se elige
cualquiera de las reglas aplicables y se
ejecuta su parte acción (esto último genera
nuevos hechos que se añaden a la base de
datos)
3. Si se llega al objetivo, se ha resuelto
el problema; en caso contrario,se vuelve al
paso 1
1.2.4. Interfaz con el usuario.
El interfaz de usuario permite que
el usuario pueda describir el problema al
sistema experto. Interpreta sus preguntas,
los comandos y la información ofrecida. A la
inversa, formula la información generada
por el sistema incluyendo respuestas a las
preguntas, explicaciones y justificaciones.
1.2.5. Módulo de Explicación
La mayoría de los sistemas
expertos contienen un módulo de
explicación, diseñado para aclarar al
usuario la línea de razonamiento seguida en
el proceso de inferencia. Si el usuario
pregunta al sistema cómo ha alcanzado
una conclusión, éste le presentará la
secuencia completa de reglas usada
1.2.6. Módulo de adquisición
El módulo de adquisición del
conocimientopermite que se puedanañadir,
eliminar o modificar elementos de
conocimiento (en la mayoría de los casos
reglas) en el sistema experto.
1.3. Ventajas e inconvenientes de un
Sistema Experto.
1.3.1. Ventajas
a) Un sistema experto mejora la
productividadal resolvery decidirlos
problemas más rápidamente. Esto
permite ahorrar tiempo y dinero. A
veces sin esa rapidez lassoluciones
obtenidas serían inútiles.
b) Los valiosos conocimientos de un
especialista se guardan y se
difunden, de forma que, no se
pierden aunque desaparezca el
especialista
c) Con un sistema experto se
obtienen soluciones más fiables
gracias al tratamientoautomático de
los datos, y más contrastadas,
debido a que se suele tener
informatizado el conocimiento de
varios expertos.
1.3.2. Desventajas
a) El conocimiento humano es
complejo de extraer y, a veces, es
problemático representarlo. Si un
problemasobrepasa la competencia
4. de un sistema experto, sus
prestaciones se degradan de forma
notable. Además, las estrategias de
razonamiento de los motores de
inferencia suelen estar
programadas procedimentalmente
y se adaptan mal a las
circunstancias. Están limitados para
tratar problemas con información
incompleta.
b) Un experto humano no estudia
progresivamente unahipótesis, sino
que decide de inmediato cuando
se enfrenta a una situación
análoga a otra ocurrida en el
pasado. Los sistemas expertos no
utilizan este razonamiento por
analogía.
c) Los costes y duración del
desarrollo de un sistema experto
son bastante considerables
(aunque se suelen amortizar
rápidamente) y su campo de
aplicación actual es restringido y
específico.
1.4. Prolog
1.4.1. Introducción a Prolog
Prolog es un lenguaje de
programación lógica cuya primera versión
fue desarrolladaaprincipios de la década de
1970 por Colmerauer en la universidad de
Marsella. Contrariamente a otros lenguajes
de programación basados es estructuras de
control y definición de funciones para
calcular resultados, Prolog está orientado a
la especificación de relaciones para
responder consultas. En ese sentido Prolog
es similar a un sistema de base de datos,
aunque en el contexto de la inteligencia
artificial se prefiere hablar de bases de
conocimiento, enfatizando la complejidad
estructural de losdatos y de las deducciones
que se pueden obtener de ellos.
1.4.2. Características de Prolog
a) Basado en lógica y programación
declarativa.
b) No se especificacómodebe hacerse,
sino qué debe lograrse.
c) Una característica importante en
ProLog y que lo diferencia de otros
lenguajes de programación, es que
una variable sólo puede tener un
valormientrasse cumple el objetivo.
d) El programador se concentra más en
el conocimiento que en los
algoritmos.
-¿Qué es conocido? (hechos, reglas)
-¿Qué preguntar? (Cómo resolverlo)
e) En ProLog, se llega a una solución
infiriéndola desde algo ya conocido.
2. VENTA DE MUEBLES CON PROLOG
2.1. Planteamiento y Diseño
Queremos realizar un sistema de
ventas de muebles que nos ayude a elegir
cual esel que buscamos. Para realizar este
diseño hemos partido del diagrama de un
árbol, en el que cada nodo tiene una
pregunta asociada que se imprimirá por
pantalla y que el cliente tendrá que
responder, según la respuesta que
responda el programa se encaminará a la
rama del nodo correspondiente a la
respuesta elegida por el cliente. Asi se
realizaran las preguntas que están en eso
nodo de manera que si todas las respuestas
5. son segúnlodefinidoel resultadoestarábien
y se mostrara el resultado en caso contrario
seguiráconel siguiente bloque de preguntas
de la otra respuesta, en caso no encontrara
todas las respuestas correspondientes, nos
mostrara que no hay suficiente información
el árbol sea n-ario, es decir a que el
árbol no se limite a tener como máximo dos
nodos descendientes, así pues, cada nodo
de nuestro árbol podrá tener dos o más
respuestas asociadas a él.
A continuaciónle mostramos una imagen de
la raíz del árbol, donde te pregunta para que
si el mueble es para su sala o para la
habitación.
Figura 1
Según se elija la opción seguirán las
preguntas en modo árbol y ahora viene la
que nos pregunta sobre el precio, si
queremos un mueble cómodo o uno de
regular precio.
Figura 2
Y es así que se al llegar ya a este nivel las
preguntasson cada vez más independientes
y refiriéndose a un solo objeto como son el
tipo de madera, la duración, etc.
2.2. Implementación
Nuestrocódigofue implementado en prolog
en un solo archivo en donde se combina las
reglascon labase de conocimientomediante
un conjunto de afirmaciones.
Veamos un poco de código:
esPregunta('vitrina_3_puertas'):-
suPreguntaEs('sala',Resp),Resp='si',
suPreguntaEs('regular',Resp1),Resp1='si',
suPreguntaEs('cedro',Resp2),Resp2='si',
suPreguntaEs('45
anhos',Resp3),Resp3='si',!.
esPregunta('mueble_madera'):-
suPreguntaEs('sala',Resp),Resp='si',
suPreguntaEs('regular',Resp1),Resp1='si',
suPreguntaEs('cedro',Resp2),Resp2='si',
suPreguntaEs('50
anhos',Resp3),Resp3='si',!.
..
..
El mueble
es para
su?
Sala Dormitorio
Precio del
Mueble
Regular Cómodo
6. También utilizamos código para mostrar
imágenes usando una interfaz.
Código Interfaz
ventanaPreguntar(Pregunta,Resp) :-
new(D, dialog('Preguntas')),
send(D, append,
label(pregunta,
Pregunta,font('times','roman',16))),
send(D, append,
button(si, message(D, return,'si'))),
send(D, append,
button(no, message(D, return,
'no'))),
send(D, default_button, si),
get(D, confirm, Rval),
free(D),
Resp = Rval.
Código Imágenes
//cabeceras
:-pce_image_directory('./imagenes').
resource(vitrina_3_puertas,image,image('Vit
rina_3_Puertas.jpg')).
resource(mueble_madera,image,image('Mue
ble_Madera.jpg')).
…..
…..
// cuerpo del codigo
….
….
new(W,
window('cargador_imagen',size(300,400))),
send(D,append,W),
new(X,figure),
new(Bm,bitmap(resource(Mensaje),@on)),
send(Bm,name,1),
send(X,display,Bm),
send(X,status,1),
send(W,display,X),
….
….
3. EJECUCION
Esta es una ejecución donde afirmamos
que necesitamos un mueble para sala,
de precio regular, que sea de cedro y
tenga una duración de 45 años.
Para empezar ponemos «inicio.»
Figura 3
Figura 4
Figura 5
Figura 6
Luego de haber respondido las
diferentes interrogantes nos muestra
una respuesta, en donde nos da sus
características del mueble así como una
foto referencial del producto.