Sie sind auf Seite 1von 27

SISTEMA EXPERTO

ASIGNACION DE CUPOS

LIZZA CATALINA MEDINA GONZALEZ


COD 534001

DOCENTE: PERVYS RENGIFO

FUNDACION UNIVERSITARIA KONRAD LORENZ


FACULTAD DE INGENIERIA DE SISTEMAS
BOGOTA
2007
INTRODUCCION

Se considera a alguien un experto en un problema cuando este individuo


tiene conocimiento especializado sobre dicho problema. En el área de los
sistemas expertos a este tipo de conocimiento se le llama conocimiento
sobre el dominio. La palabra dominio se usa para enfatizar que el
conocimiento pertenece a un problema específico.
Antes de la aparición del ordenador, el hombre ya se preguntaba si se le
arrebataría el privilegio de razonar y pensar. En la actualidad existe un
campo dentro de la inteligencia artificial al que se le atribuye esa
facultad: el de los sistemas expertos . Estos sistemas también son
conocidos como Sistemas Basados en Conocimiento, los cuales permiten
la creación de máquinas que razonan como el hombre, restringiéndose a
un espacio de conocimientos limitado. En teoría pueden razonar
siguiendo los pasos que seguiría un experto humano (médico, analista,
empresario, etc.) para resolver un problema concreto. Este tipo de
modelos de conocimiento por ordenador ofrece un extenso campo de
posibilidades en resolución de problemas y en aprendizaje. Su uso se
extenderá ampliamente en el futuro, debido a su importante impacto
sobre los negocios y la industria.
OBJETIVO

Desarrollar un sistema experto que soluciones el problema de los


tiempos en el análisis de asignación de cupos a los clientes.
MARCO TEORICO

HISTORIA DE LOS SISTEMAS EXPERTOS:

Sus inicios datan a mediados de los años sesenta. Durante esta década
los investigadores alan newell y herbert simon desarrollaron un
programa llamado gps (general problem solver; solucionador general de
problemas). Podía trabajar con criptoaritmética, con las torres de Hanoi y
con otros problemas similares. Lo que no podía hacer el GPS era resolver
problemas del mundo real, tales como un diagnóstico médico.
Algunos investigadores decidieron entonces cambiar por completo el
enfoque del problema restringiendo su ambición a un dominio específico
e intentando simular el razonamiento de un experto humano. En vez de
dedicarse a computarizar la inteligencia general, se centraron en
dominios de conocimiento muy concretos. De esta manera nacieron los
sistemas expertos.
A partir de 1965, un equipo dirigido por edward feigenbaum, comenzó a
desarrollar se utilizando bases de conocimiento definidas
minuciosamente. Dos años más tarde se construye dendral, el cual es
considerado como el primer se. La ficción de dicho se era identificar
estructuras químicas moleculares a partir de su análisis espectrográfico.
En la década de los setenta se desarrolló mycin para consulta y
diagnóstico de infecciones de la sangre. Este sistema introdujo nuevas
características: utilización de conocimiento impreciso para razonar y
posibilidad de explicar el proceso de razonamiento. Lo más importante
es que funcionaba de manera correcta, dando conclusiones análogas a
las que un ser humano daría tras largos años de experiencia. En mycin
aparecen claramente diferenciados motor de inferencia y base de
conocimientos. Al separar esas dos partes, se puede considerar el motor
de inferencias aisladamente. Esto da como resultado un sistema vacío o
shell (concha). Así surgió emycin (mycin esencial) con el que se
construyó sacon, utilizado para estructuras de ingeniería, puff para
estudiar la función pulmonar y guidon para elegir tratamientos
terapéuticos.
En esa época se desarrollaron también: hersay, que intentaba identificar
la palabra hablada, y prospector, utilizado para hallar yacimientos de
minerales. De este último derivó el shell kas (knowledge adquisition
system).
En la década de los ochenta se ponen de moda los se, numerosas
empresas de alta tecnología investigan en este área de la inteligencia
artificial, desarrollando se para su comercialización. Se llega a la
conclusión de que el éxito de un se depende casi exclusivamente de la
calidad de su base de conocimiento. El inconveniente es que codificar la
pericia de un experto humano puede resultar difícil, largo y laborioso.

DEFINICION:

Es un software que imita el comportamiento de un experto humano en la


solución de un problema. Pueden almacenar conocimientos de expertos
para un campo determinado y solucionar un problema mediante
deducción lógica de conclusiones.
Son sistemas expertos aquellos programas que se realizan haciendo
explicito el conocimiento en ellos, que tienen información específica de
un dominio concreto y que realizan una tarea relativa a este dominio.
Programas que manipulan conocimiento codificado para resolver
problemas en un dominio especializado en un dominio que
generalmente requiere de experiencia humana.
Programas que contienen tanto conocimiento declarativo (hechos a
cerca de objetos, eventos y/o situaciones) como conocimiento de control
(información a cerca de los cursos de una acción), para emular el
proceso de razonamiento de los expertos humanos en un dominio en
particular y/o área de experiencia.
Software que incorpora conocimiento de experto sobre un dominio de
aplicación dado, de manera que es capaz de resolver problemas de
relativa dificultad y apoyar la toma de decisiones inteligentes en base a
un proceso de razonamiento simbólico.

ARQUITECTURA BÁSICA DE LOS SISTEMAS EXPERTOS

• Base de conocimientos. Es la parte del sistema experto que


contiene el conocimiento sobre el dominio. hay que obtener el
conocimiento del experto y codificarlo en la base de
conocimientos. Una forma clásica de representar el conocimiento
en un sistema experto son lar reglas. Una regla es una estructura
condicional que relaciona lógicamente la información contenida en
la parte del antecedente con otra información contenida en la
parte del consecuente.

• Base de hechos (Memoria de trabajo). Contiene los hechos


sobre un problema que se han descubierto durante una consulta.
Durante una consulta con el sistema experto, el usuario introduce
la información del problema actual en la base de hechos. El
sistema empareja esta información con el conocimiento disponible
en la base de conocimientos para deducir nuevos hechos.
• Motor de inferencia. El sistema experto modela el proceso de
razonamiento humano con un módulo conocido como el motor de
inferencia. Dicho motor de inferencia trabaja con la información
contenida en la base de conocimientos y la base de hechos para
deducir nuevos hechos. Contrasta los hechos particulares de la
base de hechos con el conocimiento contenido en la base de
conocimientos para obtener conclusiones acerca del problema.

• Subsistema de explicación. Una característica de los sistemas


expertos es su habilidad para explicar su razonamiento. Usando el
módulo del subsistema de explicación, un sistema experto puede
proporcionar una explicación al usuario de por qué está haciendo
una pregunta y cómo ha llegado a una conclusión. Este módulo
proporciona beneficios tanto al diseñador del sistema como al
usuario. El diseñador puede usarlo para detectar errores y el
usuario se beneficia de la transparencia del sistema.

• Interfaz de usuario. La interacción entre un sistema experto y


un usuario se realiza en lenguaje natural. También es altamente
interactiva y sigue el patrón de la conversación entre seres
humanos. Para conducir este proceso de manera aceptable para el
usuario es especialmente importante el diseño del interfaz de
usuario. Un requerimiento básico del interfaz es la habilidad de
hacer preguntas. Para obtener información fiable del usuario hay
que poner especial cuidado en el diseño de las cuestiones. Esto
puede requerir diseñar el interfaz usando menús o gráficos.

IDENTIFICACION DEL PROBLEMA:

Desarrollar un sistema experto que permita a la analista de cartera


hacer un análisis de la asignación de cupos y no depender
exclusivamente del gerente financiero y de sus tiempos

CONCEPTOS:
• CREDITO: la confianza que tenemos en la capacidad de cumplir, en la posibilidad,
voluntad y solvencia de un individuo, por lo que se refiere al cumplimiento de una
obligación contraída.

• CLIENTE: Son aquellas empresas y personas naturales que


adquieren a título de compra, las diferentes clases de mercancías
que ofrece en ventas SEI.

• CUPO: es el valor que se asigna a cada cliente para realizar


compras

• INGRESOS: es el valor que el cliente recibe por ventas y/o otros


servicios

• EGRESOS: es el valor que el cliente debe cancelar por concepto,


de arrendamiento, salarios, servicios públicos y obligaciones
bancarias y comerciales.

• CARTERA: aquella venta en la que la empresa le concede a un


cliente un plazo para que cancele sus facturas y que se puede
respaldar con un pagaré. igualmente los plazos concedidos
deberán estar dentro de las políticas, esto es, desde 30 días hasta
60 días

• FINCA RAIZ: es el inmueble que pertenece al cliente o a su


codeudor y coloca como respaldo a la deuda.

DESARRROLLO DEL PROBLEMA:

La totalidad de los documentos solicitados según sea el caso, deben


ser entregados por el vendedor al departamento de cartera, con el fin
de que allí se inicie la verificación de la información suministrada por
el cliente. El departamento de cartera no recibirá solicitudes que no
contengan la totalidad de los documentos exigidos. A partir de la
verificación de datos y referencias, el departamento de crédito y
cartera iniciará el estudio de crédito correspondiente
A la asignación de cupo para cada cliente
TABLA DE CRITERIO DE INGRESOS/EGRESOS

BAJO - 500.000
500.001 1.000.000
1.000.001 1.500.000
1.500.001 2.000.000
2.000.001 2.500.000
2.500.001 3.000.000
MEDIO 3.000.001 3.500.000
3.500.001 4.000.000
4.000.001 4.500.000
4.500.001 5.000.000
5.000.001 5.500.000
5.500.001 6.000.000
ALTO 6.000.001 10.000.000
10.000.001 14.000.000
14.000.001 18.000.000
18.000.001 22.000.000
22.000.001 26.000.000
26.000.001 30.000.000
30.000.001 34.000.000
MUY ALTO 34.000.001 40.000.000
40.000.001 46.000.000
46.000.001 52.000.000
52.000.001 58.000.000
58.000.001 64.000.000
64.000.001 100.000.000

DESARROLLAR UN SISTEMA BASADO EN EL CONOCIMIENTO


PARA ASIGNAR CUPO A LOS CLIENTES.

FINCA
CUPO INGRESOS EGRESOS CARTERA RAIZ
SE ASIGNA CUPO DE 1,000,001 A 1,500,000 bajos bajos 30 días si
SE ASIGNA CUPO DE 1,000,001 A 1,500,000 bajos bajos al día no
SE ASIGNA CUPO DE 1,000,001 A 1,500,000 bajos bajos 60 días si

SE ASIGNA CUPO DE 1,500,001 A 5,000,000 medios bajos 30 días si


SE ASIGNA CUPO DE 1,500,001 A 5,000,000 medios bajos 60 días si
SE ASIGNA CUPO DE 1,500,001 A 5,000,000 medios bajos al día no

SE ASIGNA CUPO DE 5,000,001 A 30,000,000 altos bajos 30 días si


SE ASIGNA CUPO DE 5,000,001 A 30,000,000 altos bajos 60 días si
SE ASIGNA CUPO DE 5,000,001 A 30,000,000 altos medios 30 días si
SE ASIGNA CUPO DE 5,000,001 A 30,000,000 altos medios 60 días si
SE ASIGNA CUPO DE 5,000,001 A 30,000,000 altos medios al día no
SE ASIGNA CUPO DE 5,000,001 A 30,000,000 altos bajos al día no

SE ASIGNA CUPO DE MAS DE 30,000,000 muy altos bajos 30 días no


SE ASIGNA CUPO DE MAS DE 30,000,000 muy altos medios 30 días si
SE ASIGNA CUPO DE MAS DE 30,000,000 muy altos bajos 60 días si
SE ASIGNA CUPO DE MAS DE 30,000,000 muy altos medios 60 días si
SE ASIGNA CUPO DE MAS DE 30,000,000 muy altos bajos al día no
SE ASIGNA CUPO DE MAS DE 30,000,000 muy altos medios al día no
SE ASIGNA CUPO DE MAS DE 30,000,000 muy altos altos al día si

NO SE ASIGNA CUPO DE 1,000,001 A 1,500,000 bajos altos al día no


NO SE ASIGNA CUPO DE 1,000,001 A 1,500,000 bajos medios al día no
NO SE ASIGNA CUPO DE 1,000,001 A 1,500,000 bajos bajos 30 días no
NO SE ASIGNA CUPO DE 1,000,001 A 1,500,000 bajos bajos 60 días no

NO SE ASIGNA CUPO DE 1,500,001 A 5,000,000 medios bajos 30 días no


NO SE ASIGNA CUPO DE 1,500,001 A 5,000,000 medios bajos 60 días no
NO SE ASIGNA CUPO DE 1,500,001 A 5,000,000 medios altos al día no
NO SE ASIGNA CUPO DE 1,500,001 A 5,000,000 medios medios al día no

NO SE ASIGNA CUPO DE 5,000,001 A


30,000,000 altos bajos 30 días no
NO SE ASIGNA CUPO DE 5,000,001 A
30,000,000 altos medios 60 días no
NO SE ASIGNA CUPO DE 5,000,001 A
30,000,000 altos altos al día no
NO SE ASIGNA CUPO DE 5,000,001 A
30,000,000 altos muy altos al día no

NO SE ASIGNA CUPO DE MAS DE 30,000,000 muy altos medios 30 días no


NO SE ASIGNA CUPO DE MAS DE 30,000,000 muy altos bajos 60 días no
NO SE ASIGNA CUPO DE MAS DE 30,000,000 muy altos medios 30 días no
NO SE ASIGNA CUPO DE MAS DE 30,000,000 muy altos muy altos al día no

Paso 1: Construya la base de conocimiento en Prolog, utilizando lógica de predicados

cupo('SE ASIGNA CUPO DE 1,000,001 A 1,500,000'):-ingresos(bajos),egresos(bajos),cartera(treintadias),fincaraiz(si).


cupo('SE ASIGNA CUPO DE 1,000,001 A 1,500,000'):-ingresos(bajos ),egresos(bajos),cartera(aldia),fincaraiz(no).
cupo('SE ASIGNA CUPO DE 1,000,001 A 1,500,000'):-ingresos(bajos),egresos(bajos),cartera(sesentadias),fincaraiz(si).
cupo('SE ASIGNA CUPO DE 1,500,001 A 5,000,000'):-ingresos(medios),egresos(bajos),cartera(treintadias),fincaraiz(si).
cupo('SE ASIGNA CUPO DE 1,500,001 A 5,000,000'):-ingresos(medios),egresos(bajos),cartera(sesentadias),fincaraiz(si).
cupo('SE ASIGNA CUPO DE 1,500,001 A 5,000,000'):-ingresos(medios),egresos(bajos),cartera(aldia),fincaraiz(no).
cupo('SE ASIGNA CUPO DE 5,000,001 A 30,000,000'):-ingresos(altos),egresos(bajos),cartera(treintadias),fincaraiz(si).
cupo('SE ASIGNA CUPO DE 5,000,001 A 30,000,001'):-ingresos(altos),egresos(bajos),cartera(sesentadias),fincaraiz(si).
cupo('SE ASIGNA CUPO DE 5,000,001 A 30,000,001'):-ingresos(altos),egresos(medios),cartera(treintadias),fincaraiz(si).
cupo('SE ASIGNA CUPO DE 5,000,001 A 30,000,002'):-ingresos(altos),egresos(medios),cartera(sesentadias),fincaraiz(si).
cupo('SE ASIGNA CUPO DE 5,000,001 A 30,000,002'):-ingresos(altos),egresos(medios),cartera(aldia),fincaraiz(no).
cupo('SE ASIGNA CUPO DE 5,000,001 A 30,000,003'):-ingresos(altos),egresos(bajos),cartera(aldia),fincaraiz(no).
cupo('SE ASIGNA CUPO DE MAS DE 30,000,000'):-ingresos(muyaltos),egresos(bajos),cartera(treintadias),fincaraiz(no).
cupo('SE ASIGNA CUPO DE MAS DE 30,000,001'):-ingresos(muyaltos),egresos(medios),cartera(treintadias),fincaraiz(si).
cupo('SE ASIGNA CUPO DE MAS DE 30,000,002'):-ingresos(muyaltos),egresos(bajos),cartera(sesentadias ),fincaraiz(si).
cupo('SE ASIGNA CUPO DE MAS DE 30,000,003'):-ingresos(muyaltos),egresos(medios),cartera(sesentadias),fincaraiz(si).
cupo('SE ASIGNA CUPO DE MAS DE 30,000,004'):-ingresos(muyaltos),egresos(bajos),cartera(aldia),fincaraiz(no).
cupo('SE ASIGNA CUPO DE MAS DE 30,000,005'):-ingresos(muyaltos),egresos(medios),cartera(aldia),fincaraiz(no).
cupo('SE ASIGNA CUPO DE MAS DE 30,000,006'):-ingresos(muyaltos),egresos(altos),cartera(aldia ),fincaraiz(si).
cupo('NO SE ASIGNA CUPO DE 1,000,001 A 1,500,000'):-ingresos(bajos),egresos(altos),cartera(aldia),fincaraiz(no).
cupo('NO SE ASIGNA CUPO DE 1,000,001 A 1,500,001'):-ingresos(bajos),egresos(medios),cartera(aldia),fincaraiz(no).
cupo('NO SE ASIGNA CUPO DE 1,000,001 A 1,500,002'):-ingresos(bajos),egresos(bajos),cartera(treintadias),fincaraiz(no).
cupo('NO SE ASIGNA CUPO DE 1,000,001 A 1,500,004'):-ingresos(bajos),egresos(bajos),cartera(sesentadias),fincaraiz(no).
cupo('NO SE ASIGNA CUPO DE 1,500,001 A 5,000,000'):-ingresos(medios),egresos(bajos),cartera(treintadias),fincaraiz(no).
cupo('NO SE ASIGNA CUPO DE 1,500,001 A 5,000,001'):-ingresos(medios),egresos(bajos),cartera(sesentadias),fincaraiz(no).
cupo('NO SE ASIGNA CUPO DE 1,500,001 A 5,000,002'):-ingresos(medios),egresos(altos),cartera(aldia),fincaraiz(no).
cupo('NO SE ASIGNA CUPO DE 1,500,001 A 5,000,003'):-ingresos(medios),egresos(medios),cartera(aldia),fincaraiz(no).
cupo('NO SE ASIGNA CUPO DE 5,000,001 A 30,000,000'):-ingresos(altos),egresos(bajos),cartera(treintadias),fincaraiz(no).
cupo('NO SE ASIGNA CUPO DE 5,000,001 A 30,000,001'):-ingresos(altos),egresos(medios),cartera(sesentadias),fincaraiz(no).
cupo('NO SE ASIGNA CUPO DE 5,000,001 A 30,000,002'):-ingresos(altos),egresos(altos),cartera(aldia),fincaraiz(no).
cupo('NO SE ASIGNA CUPO DE 5,000,001 A 30,000,003'):-ingresos(altos),egresos(muyaltos),cartera(aldia),fincaraiz(no).
cupo('NO SE ASIGNA CUPO DE MAS DE 30,000,000'):-ingresos(muyaltos),egresos(medios),cartera(treintadias),fincaraiz(no).
cupo('NO SE ASIGNA CUPO DE MAS DE 30,000,001'):-ingresos(muyaltos),egresos(bajos),cartera( sesentadias),fincaraiz(no).
cupo('NO SE ASIGNA CUPO DE MAS DE 30,000,002'):-ingresos(muyaltos),egresos(medios),cartera(treintadias),fincaraiz(no).
cupo('NO SE ASIGNA CUPO DE MAS DE 30,000,003'):-ingresos(muyaltos ),egresos(muyaltos ),cartera(aldia),fincaraiz(no).

Construya las preguntas en donde solicitara al usuario las características del cupo de
credito que desea asignar de acuerdo a los requerimientos:
pregunta1:-
write('EL ESTADO ACTUAL DE CARTERA DEL CLIENTE ES:'),nl,nl,
write('1. CARERA A 30_DIAS.'),nl,
write('2. CARTERA A 60_DIAS.'),nl,
write('3. CARTERA AL DIA.'),nl,
read(N),
grupo(N).

grupo(1):-assert(cartera(treintadias)),!.
grupo(2):-assert(cartera(sesentadias)),!.
grupo(3):-assert(cartera(aldia)),!.
grupo(_):-pregunta1,!.

Pregunta2:-
write(' POSEE FINCA RAIZ EL CLIENTE:'),nl,nl,
write('1. SI.'),nl,
write('2. NO.'),nl,
read(N1),
tipo1(N1).

tipo1(1):-assert(fincaraiz(si)),!.
tipo1(2):-assert(fincaraiz(no)),!.
tipo1(_):-pregunta2,!.

Pregunta3:-
write(' DE ACUERDO A LA TABLA N 1 EN QUE RANGO SE
ENCUENTRAN LOS INGRESOS:'),nl,nl,
write('1. 0_A_500.000.'),nl,
write('2. 500.001_A_1.000.000.'),nl,
write('3. 1.000.001_A_1.500.000 '),nl,
write('4. 1.500.001_2.000.000.'),nl
write('5.2.000.001_A_2.500.000.'),nl,
write('6.2.500.0001_A_3.000.000.'),nl
write('7.no aplica.'),nl
read(N4),
grupo2(N4).

grupo2(1):-assert(ingresos(bajos)),!.
grupo2(2):-assert(ingresos(bajos)),!.
grupo2(3):-assert(ingresos(bajos)),!.
grupo2(4):-assert(ingresos(bajos)),!.
grupo2(5):-assert(ingresos(bajos)),!.
grupo2(6):-assert(ingresos(bajos)),!.
grupo2(7):-assert(ingresos(bajos)),!.
grupo2(_):-pregunta3,!.

Pregunta4:-
write(' DE ACUERDO A LA TABLA N 2 EN QUE RANGO SE
ENCUENTRAN LOS INGRESOS:'),nl,nl,
write('1.3.000.001_A_3.500.000.'),nl,
write('2. 3.500.001_A_4.000.000.'),nl,
write('3. 4.000.001_A_4.500.000 '),nl,
write('4. 4.500.001_5.000.000.'),nl
write('5.5.000.001_A_5.500.000.'),nl,
write('6.5.500.0001_A_6.000.000.'),nl
write('7.no aplica.'),nl
read(N6),
grupo3(N6).
grupo3(1):-assert(ingresos (medios)),!.
grupo3(2):-assert((ingresos (medios)),!.
grupo3(3):-assert((ingresos (medios)),!.
grupo3(4):-assert((ingresos (medios)),!.
grupo3(5):-assert((ingresos (medios)),!.
grupo3(6):-assert((ingresos (medios)),!.
grupo3(7):-assert((ingresos (medios)),!.
grupo3(_):-pregunta4,!.

Pregunta5:-
write(' DE ACUERDO A LA TABLA N 3 EN QUE RANGO SE
ENCUENTRAN LOS INGRESOS:'),nl,nl,
write('1.6.000.001_A_10.000.000.'),nl,
write('2. 10.000.001_A_14.000.000.'),nl,
write('3. 14.000.001_A_18.000.000 '),nl,
write('4. 18.000.001_22.000.000.'),nl
write('5.22.000.001_A_26.000.000.'),nl,
write('6.26.000.0001_A_30.000.000.'),nl
write('7.30.000.0001_A_34.000.000.'),nl
write('8.no aplica.'),nl
read(N8),
grupo4(N8).

grupo4(1):-assert(ingresos (altos)),!.
grupo4(2):-assert(ingresos (altos)),!.
grupo4(3):-assert(ingresos (altos)),!.
grupo4(4):-assert(ingresos (altos)),!.
grupo4(5):-assert(ingresos (altos)),!.
grupo4(6):-assert(ingresos (altos)),!.
grupo4(7):-assert(ingresos (altos)),!.
grupo4(8):-assert(ingresos (altos)),!.
grupo4(_):-pregunta5,!.

Pregunta6:-
write(' DE ACUERDO A LA TABLA N 4 EN QUE RANGO SE
ENCUENTRAN LOS INGRESOS:'),nl,nl,
write('1.34.000.001_A_40.000.000.'),nl,
write('2. 40.000.001_A_46.000.000.'),nl,
write('3. 46.000.001_A_52.000.000 '),nl,
write('4. 52.000.001_A_58.000.000.'),nl
write('5.58.000.001_A_64.000.000.'),nl,
write('6.64.000.0001_A_100.000.000.'),nl
write('7.no aplica.'),nl
read(N10),
grupo5(N10).
grupo5(1):-assert(ingresos (muyaltos)),!.
grupo5(2):-assert(ingresos (muyaltos)),!.
grupo5(3):-assert(ingresos (muyaltos)),!.
grupo5(4):-assert(ingresos (muyaltos)),!.
grupo5(5):-assert(ingresos (muyaltos)),!.
grupo5(6):-assert(ingresos (muyaltos)),!.
grupo5(7):-assert(ingresos (muyaltos)),!.
grupo5(_):-pregunta6,!.

Pregunta7:-
write(' DE ACUERDO A LA TABLA N 1 EN QUE RANGO SE
ENCUENTRAN LOS EGRESOS:'),nl,nl,
write('1. 0_A_500.000.'),nl,
write('2. 500.001_A_1.000.000.'),nl,
write('3. 1.000.001_A_1.500.000 '),nl,
write('4. 1.500.001_2.000.000.'),nl
write('5.2.000.001_A_2.500.000.'),nl,
write('6.2.500.0001_A_3.000.000.'),nl
write('7.no aplica.'),nl
read(N12),
grupo6(N12).

grupo6(1):-assert(egresos(bajos)),!.
grupo6(2):-assert(egresos(bajos)),!.
grupo6(3):-assert(egresos(bajos)),!.
grupo6(4):-assert(egresos(bajos)),!.
grupo6(5):-assert(egresos(bajos)),!.
grupo6(6):-assert(egresos(bajos)),!.
grupo6(7):-assert(egresos(bajos)),!.
grupo6(_):-pregunta7,!.

Pregunta8:-
write(' DE ACUERDO A LA TABLA N 2 EN QUE RANGO SE
ENCUENTRAN LOS EGRESOS:'),nl,nl,
write('1.3.000.001_A_3.500.000.'),nl,
write('2. 3.500.001_A_4.000.000.'),nl,
write('3. 4.000.001_A_4.500.000 '),nl,
write('4. 4.500.001_5.000.000.'),nl
write('5.5.000.001_A_5.500.000.'),nl,
write('6.5.500.0001_A_6.000.000.'),nl
write('7.no aplica.'),nl
read(N14),
grupo7(N14).
grupo7(1):-assert(egresos (medios)),!.
grupo7(2):-assert egresos (medios)),!.
grupo7(3):-assert(egresos (medios)),!.
grupo7(4):-assert(egresos (medios)),!.
grupo7(5):-assert(egresos (medios)),!.
grupo7(6):-assert(egresos (medios)),!.
grupo7(7):-assert(egresos (medios)),!.
grupo7(_):-pregunta8,!.

Pregunta9:-
write(' DE ACUERDO A LA TABLA N 3 EN QUE RANGO SE
ENCUENTRAN LOS EGRESOS:'),nl,nl,
write('1.6.000.001_A_10.000.000.'),nl,
write('2. 10.000.001_A_14.000.000.'),nl,
write('3. 14.000.001_A_18.000.000 '),nl,
write('4. 18.000.001_22.000.000.'),nl
write('5.22.000.001_A_26.000.000.'),nl,
write('6.26.000.0001_A_30.000.000.'),nl
write('7.30.000.0001_A_34.000.000.'),nl
write('8.no aplica.'),nl
read(N16),
grupo4(N16).

grupo8(1):-assert(egresos (altos)),!.
grupo8(2):-assert(egresos (altos)),!.
grupo8(3):-assert(egresos (altos)),!.
grupo8(4):-assert(egresos (altos)),!.
grupo8(5):-assert(egresos (altos)),!.
grupo8(6):-assert(egresos (altos)),!.
grupo8(7):-assert(egresos (altos)),!.
grupo8(8):-assert(egresos (altos)),!.
grupo8(_):-pregunta9,!.

Pregunta10:-
write(' DE ACUERDO A LA TABLA N 4 EN QUE RANGO SE
ENCUENTRAN LOS EGRESOS:'),nl,nl,
write('1.34.000.001_A_40.000.000.'),nl,
write('2. 40.000.001_A_46.000.000.'),nl,
write('3. 46.000.001_A_52.000.000 '),nl,
write('4. 52.000.001_A_58.000.000.'),nl
write('5.58.000.001_A_64.000.000.'),nl,
write('6.64.000.0001_A_100.000.000.'),nl
write('7.no aplica.'),nl
read(N18),
grupo5(N18).
grupo9(1):-assert(egresos (muyaltos)),!.
grupo9(2):-assert(egresos (muyaltos)),!.
grupo9(3):-assert(egresos (muyaltos)),!.
grupo9(4):-assert(egresos (muyaltos)),!.
grupo9(5):-assert(egresos (muyaltos)),!.
grupo9(6):-assert(egresos (muyaltos)),!.
grupo9(7):-assert(egresos (muyaltos)),!.
grupo9(_):-pregunta10,!.

Defina un predicado que determine la clasificación de acuerdo con las respuestas del
usuario:

unir:-
cupo(C),
write('el cupo asignado al cliente puede ser : '),nl,
write(' '),write(C),nl,nl.

Defina el predicado que permita ejecutar todo el programa:

empezar:-
pregunta1,
pregunta2,
pregunta3,
pregunta4,
pregunta5,
pregunta6,
pregunta7,
pregunta8,
pregunta9,
pregunta10,
unir,!.

Ahora, que hacer si usted quiere proveer al usuario la posibilidad de hacer otra
consulta:
Paso 1: Limpie todas las acciones del predicado assert, para esto puede definir un
predicado de nombre purgar

purgar:-retract(cartera(_)),
retract(fincaraiz(_)),
retract(ingresos(_)),
retract(egresos(_)),!.
Paso 2: Defina un predicado que permita continuar si el usuario responde
adecuadamente:
continue('s'):-empezar,!.
continue('S'):-empezar,!.
continue('n'):-continue('N').
continue('N'):-write(' FUE UN PLACER AYUDARTE'),nl,
write('............HASTA PRONTO............').

Paso 3: Defina el predicado que pregunte al usuario si desea continuar.

pregunta:-nl,nl,
write('Desea continuar s/n : '),
read(X),
continue(X).

Paso 4: redefina el predicado unir para que responda la clasificación y solicite al


usuario si desea continuar:
unir:-
cupo(C),
write('el cupo asignado al cliente puede ser: '),nl,
write(' '),write(C),nl,nl,
purgar,
pregunta.

FINALMENTE EL PROGRAMA QUEDARÍA ASI:

cupo('SE ASIGNA CUPO DE 1,000,001 A 1,500,000'):-ingresos(bajos),egresos(bajos),cartera(treintadias),fincaraiz(si).


cupo('SE ASIGNA CUPO DE 1,000,001 A 1,500,000'):-ingresos(bajos ),egresos(bajos),cartera(aldia),fincaraiz(no).
cupo('SE ASIGNA CUPO DE 1,000,001 A 1,500,000'):-ingresos(bajos),egresos(bajos),cartera(sesentadias),fincaraiz(si).
cupo('SE ASIGNA CUPO DE 1,500,001 A 5,000,000'):-ingresos(medios),egresos(bajos),cartera(treintadias),fincaraiz(si).
cupo('SE ASIGNA CUPO DE 1,500,001 A 5,000,000'):-ingresos(medios),egresos(bajos),cartera(sesentadias),fincaraiz(si).
cupo('SE ASIGNA CUPO DE 1,500,001 A 5,000,000'):-ingresos(medios),egresos(bajos),cartera(aldia),fincaraiz(no).
cupo('SE ASIGNA CUPO DE 5,000,001 A 30,000,000'):-ingresos(altos),egresos(bajos),cartera(treintadias),fincaraiz(si).
cupo('SE ASIGNA CUPO DE 5,000,001 A 30,000,001'):-ingresos(altos),egresos(bajos),cartera(sesentadias),fincaraiz(si).
cupo('SE ASIGNA CUPO DE 5,000,001 A 30,000,001'):-ingresos(altos),egresos(medios),cartera(treintadias),fincaraiz(si).
cupo('SE ASIGNA CUPO DE 5,000,001 A 30,000,002'):-ingresos(altos),egresos(medios),cartera(sesentadias),fincaraiz(si).
cupo('SE ASIGNA CUPO DE 5,000,001 A 30,000,002'):-ingresos(altos),egresos(medios),cartera(aldia),fincaraiz(no).
cupo('SE ASIGNA CUPO DE 5,000,001 A 30,000,003'):-ingresos(altos),egresos(bajos),cartera(aldia),fincaraiz(no).
cupo('SE ASIGNA CUPO DE MAS DE 30,000,000'):-ingresos(muyaltos),egresos(bajos),cartera(treintadias),fincaraiz(no).
cupo('SE ASIGNA CUPO DE MAS DE 30,000,001'):-ingresos(muyaltos),egresos(medios),cartera(treintadias),fincaraiz(si).
cupo('SE ASIGNA CUPO DE MAS DE 30,000,002'):-ingresos(muyaltos),egresos(bajos),cartera(sesentadias ),fincaraiz(si).
cupo('SE ASIGNA CUPO DE MAS DE 30,000,003'):-ingresos(muyaltos),egresos(medios),cartera(sesentadias),fincaraiz(si).
cupo('SE ASIGNA CUPO DE MAS DE 30,000,004'):-ingresos(muyaltos),egresos(bajos),cartera(aldia),fincaraiz(no).
cupo('SE ASIGNA CUPO DE MAS DE 30,000,005'):-ingresos(muyaltos),egresos(medios),cartera(aldia),fincaraiz(no).
cupo('SE ASIGNA CUPO DE MAS DE 30,000,006'):-ingresos(muyaltos),egresos(altos),cartera(aldia ),fincaraiz(si).
cupo('NO SE ASIGNA CUPO DE 1,000,001 A 1,500,000'):-ingresos(bajos),egresos(altos),cartera(aldia),fincaraiz(no).
cupo('NO SE ASIGNA CUPO DE 1,000,001 A 1,500,001'):-ingresos(bajos),egresos(medios),cartera(aldia),fincaraiz(no).
cupo('NO SE ASIGNA CUPO DE 1,000,001 A 1,500,002'):-ingresos(bajos),egresos(bajos),cartera(treintadias),fincaraiz(no).
cupo('NO SE ASIGNA CUPO DE 1,000,001 A 1,500,004'):-ingresos(bajos),egresos(bajos),cartera(sesentadias),fincaraiz(no).
cupo('NO SE ASIGNA CUPO DE 1,500,001 A 5,000,000'):-ingresos(medios),egresos(bajos),cartera(treintadias),fincaraiz(no).
cupo('NO SE ASIGNA CUPO DE 1,500,001 A 5,000,001'):-ingresos(medios),egresos(bajos),cartera(sesentadias),fincaraiz(no).
cupo('NO SE ASIGNA CUPO DE 1,500,001 A 5,000,002'):-ingresos(medios),egresos(altos),cartera(aldia),fincaraiz(no).
cupo('NO SE ASIGNA CUPO DE 1,500,001 A 5,000,003'):-ingresos(medios),egresos(medios),cartera(aldia),fincaraiz(no).
cupo('NO SE ASIGNA CUPO DE 5,000,001 A 30,000,000'):-ingresos(altos),egresos(bajos),cartera(treintadias),fincaraiz(no).
cupo('NO SE ASIGNA CUPO DE 5,000,001 A 30,000,001'):-ingresos(altos),egresos(medios),cartera(sesentadias),fincaraiz(no).
cupo('NO SE ASIGNA CUPO DE 5,000,001 A 30,000,002'):-ingresos(altos),egresos(altos),cartera(aldia),fincaraiz(no).
cupo('NO SE ASIGNA CUPO DE 5,000,001 A 30,000,003'):-ingresos(altos),egresos(muyaltos),cartera(aldia),fincaraiz(no).
cupo('NO SE ASIGNA CUPO DE MAS DE 30,000,000'):-ingresos(muyaltos),egresos(medios),cartera(treintadias),fincaraiz(no).
cupo('NO SE ASIGNA CUPO DE MAS DE 30,000,001'):-ingresos(muyaltos),egresos(bajos),cartera( sesentadias),fincaraiz(no).
cupo('NO SE ASIGNA CUPO DE MAS DE 30,000,002'):-ingresos(muyaltos),egresos(medios),cartera(treintadias),fincaraiz(no).
cupo('NO SE ASIGNA CUPO DE MAS DE 30,000,003'):-ingresos(muyaltos ),egresos(muyaltos ),cartera(aldia),fincaraiz(no).

empezar:-
pregunta1,
pregunta2,
pregunta3,
pregunta4,
pregunta5,
pregunta6,
pregunta7,
pregunta8,
pregunta9,
pregunta10,
unir,!.

pregunta1:-
write('EL ESTADO ACTUAL DE CARTERA DEL CLIENTE ES:'),nl,nl,
write('1. CARERA A 30_DIAS.'),nl,
write('2. CARTERA A 60_DIAS.'),nl,
write('3. CARTERA AL DIA.'),nl,
read(N),
grupo(N).

grupo(1):-assert(cartera(treintadias)),!.
grupo(2):-assert(cartera(sesentadias)),!.
grupo(3):-assert(cartera(aldia)),!.
grupo(_):-pregunta1,!.
pregunta2:-
write(' POSEE FINCA RAIZ EL CLIENTE:'),nl,nl,
write('1. SI.'),nl,
write('2. NO.'),nl,
read(N1),
tipo1(N1).

tipo1(1):-assert(fincaraiz(si)),!.
tipo1(2):-assert(fincaraiz(no)),!.
tipo1(_):-pregunta2,!.
pregunta3:-
write(' DE ACUERDO A LA TABLA N 1 EN QUE RANGO SE
ENCUENTRAN LOS INGRESOS:'),nl,nl,
write('1. 0_A_500.000.'),nl,
write('2. 500.001_A_1.000.000.'),nl,
write('3. 1.000.001_A_1.500.000 '),nl,
write('4. 1.500.001_A_2.000.000.'),nl,
write('5. 2.000.001_A_2.500.000.'),nl,
write('6. 2.500.0001_A_3.000.000.'),nl,
write('7. pregunta4.'),nl,
read(N8),
tabla(N8).

tabla(1):-assert(ingresos(bajos)),!.
tabla(2):-assert(ingresos(bajos)),!.
tabla(3):-assert(ingresos(bajos)),!.
tabla(4):-assert(ingresos(bajos)),!.
tabla(5):-assert(ingresos(bajos)),!.
tabla(6):-assert(ingresos(bajos)),!.
tabla(7):-assert(ingresos(medios)),!.
tabla(_):-pregunta3,!.

pregunta4:-
write(' DE ACUERDO A LA TABLA N 2 EN QUE RANGO SE
ENCUENTRAN LOS INGRESOS:'),nl,nl,
write('1.3.000.001_A_3.500.000.'),nl,
write('2. 3.500.001_A_4.000.000.'),nl,
write('3. 4.000.001_A_4.500.000 '),nl,
write('4. 4.500.001_5.000.000.'),nl,
write('5.5.000.001_A_5.500.000.'),nl,
write('6.5.500.0001_A_6.000.000.'),nl,
write('7.pregunta5.'),nl,
read(N10),
table3(N10).
table3(1):-assert(ingresos(medios)),!.
table3(2):-assert(ingresos(medios)),!.
table3(3):-assert(ingresos(medios)),!.
table3(4):-assert(ingresos(medios)),!.
table3(5):-assert(ingresos(medios)),!.
table3(6):-assert(ingresos(medios)),!.
table3(7):-assert(ingresos(altos)),!.
table3(_):-pregunta4,!.

pregunta5:-
write(' DE ACUERDO A LA TABLA N 3 EN QUE RANGO SE
ENCUENTRAN LOS INGRESOS:'),nl,nl,
write('1.6.000.001_A_10.000.000.'),nl,
write('2. 10.000.001_A_14.000.000.'),nl,
write('3. 14.000.001_A_18.000.000 '),nl,
write('4. 18.000.001_22.000.000.'),nl,
write('5.22.000.001_A_26.000.000.'),nl,
write('6.26.000.0001_A_30.000.000.'),nl,
write('7.30.000.0001_A_34.000.000.'),nl,
write('8.pregunta6.'),nl,
read(N8),
tabli4(N8).

tabli4(1):-assert(ingresos(altos)),!.
tabli4(2):-assert(ingresos(altos)),!.
tabli4(3):-assert(ingresos(altos)),!.
tabli4(4):-assert(ingresos(altos)),!.
tabli4(5):-assert(ingresos(altos)),!.
tabli4(6):-assert(ingresos(altos)),!.
tabli4(7):-assert(ingresos(altos)),!.
tabli4(8):-assert(ingresos(muyaltos)),!.
tabli4(_):-pregunta5,!.

pregunta6:-
write(' DE ACUERDO A LA TABLA N 4 EN QUE RANGO SE
ENCUENTRAN LOS INGRESOS:'),nl,nl,
write('1.34.000.001_A_40.000.000.'),nl,
write('2. 40.000.001_A_46.000.000.'),nl,
write('3. 46.000.001_A_52.000.000 '),nl,
write('4. 52.000.001_A_58.000.000.'),nl,
write('5.58.000.001_A_64.000.000.'),nl,
write('6.64.000.0001_A_100.000.000.'),nl,
write('7.no aplica.'),nl,
read(N10),
tablero5(N10).

tablero5(1):-assert(ingresos(muyaltos)),!.
tablero5(2):-assert(ingresos(muyaltos)),!.
tablero5(3):-assert(ingresos(muyaltos)),!.
tablero5(4):-assert(ingresos(muyaltos)),!.
tablero5(5):-assert(ingresos(muyaltos)),!.
tablero5(6):-assert(ingresos(muyaltos)),!.
tablero5(7):-assert(ingresos(muyaltos)),!.
tablero5(_):-pregunta6,!.

pregunta7:-
write(' DE ACUERDO A LA TABLA N 1 EN QUE RANGO SE
ENCUENTRAN LOS EGRESOS:'),nl,nl,
write('1. 0_A_500.000.'),nl,
write('2. 500.001_A_1.000.000.'),nl,
write('3. 1.000.001_A_1.500.000 '),nl,
write('4. 1.500.001_2.000.000.'),nl,
write('5.2.000.001_A_2.500.000.'),nl,
write('6.2.500.0001_A_3.000.000.'),nl,
write('7.pregunta8.'),nl,
read(N12),
taple6(N12).

taple6(1):-assert(egresos(bajos)),!.
taple6(2):-assert(egresos(bajos)),!.
taple6(3):-assert(egresos(bajos)),!.
taple6(4):-assert(egresos(bajos)),!.
taple6(5):-assert(egresos(bajos)),!.
taple6(6):-assert(egresos(bajos)),!.
taple6(7):-assert(egresos(medios)),!.
taple6(_):-pregunta7,!.

pregunta8:-
write(' DE ACUERDO A LA TABLA N 2 EN QUE RANGO SE
ENCUENTRAN LOS EGRESOS:'),nl,nl,
write('1.3.000.001_A_3.500.000.'),nl,
write('2. 3.500.001_A_4.000.000.'),nl,
write('3. 4.000.001_A_4.500.000 '),nl,
write('4. 4.500.001_5.000.000.'),nl,
write('5.5.000.001_A_5.500.000.'),nl,
write('6.5.500.0001_A_6.000.000.'),nl,
write('7.pregunta9.'),nl,
read(N14),
taplu7(N14).

taplu7(1):-assert(egresos(medios)),!.
taplu7(2):-assert egresos(medios)),!.
taplu7(3):-assert(egresos(medios)),!.
taplu7(4):-assert(egresos(medios)),!.
taplu7(5):-assert(egresos(medios)),!.
taplu7(6):-assert(egresos(medios)),!.
taplu7(7):-assert(egresos(altos)),!.
taplu7(_):-pregunta8,!.

pregunta9:-
write(' DE ACUERDO A LA TABLA N 3 EN QUE RANGO SE
ENCUENTRAN LOS EGRESOS:'),nl,nl,
write('1.6.000.001_A_10.000.000.'),nl,
write('2. 10.000.001_A_14.000.000.'),nl,
write('3. 14.000.001_A_18.000.000 '),nl,
write('4. 18.000.001_22.000.000.'),nl,
write('5.22.000.001_A_26.000.000.'),nl,
write('6.26.000.0001_A_30.000.000.'),nl,
write('7.30.000.0001_A_34.000.000.'),nl,
write('8.pregunta10.'),nl,
read(N16),
taplo8(N16).

taplo8(1):-assert(egresos(altos)),!.
taplo8(2):-assert(egresos(altos)),!.
taplo8(3):-assert(egresos(altos)),!.
taplo8(4):-assert(egresos(altos)),!.
taplo8(5):-assert(egresos(altos)),!.
taplo8(6):-assert(egresos(altos)),!.
taplo8(7):-assert(egresos(altos)),!.
taplo8(8):-assert(egresos(muy altos)),!.
taplo8(_):-pregunta9,!.

pregunta10:-
write(' DE ACUERDO A LA TABLA N 4 EN QUE RANGO SE
ENCUENTRAN LOS EGRESOS:'),nl,nl,
write('1.34.000.001_A_40.000.000.'),nl,
write('2. 40.000.001_A_46.000.000.'),nl,
write('3. 46.000.001_A_52.000.000 '),nl,
write('4. 52.000.001_A_58.000.000.'),nl,
write('5.58.000.001_A_64.000.000.'),nl,
write('6.64.000.0001_A_100.000.000.'),nl,
write('7.no aplica.'),nl,
read(N18),
tapla9(N18).

tapla9(1):-assert(egresos(muyaltos)),!.
tapla9(2):-assert(egresos(muyaltos)),!.
tapla9(3):-assert(egresos(muyaltos)),!.
tapla9(4):-assert(egresos(muyaltos)),!.
tapla9(5):-assert(egresos(muyaltos)),!.
tapla9(6):-assert(egresos(muyaltos)),!.
tapla9(7):-assert(egresos(muyaltos)),!.
tapla9(_):-pregunta10,!.

purgar:-retract(cartera(_)),
retract(fincaraiz(_)),
retract(ingresos(_)),
retract(egresos(_)),!.

continue('s'):-empezar,!.
continue('S'):-empezar,!.
continue('n'):-continue('N').
continue('N'):-write(' FUE UN PLACER AYUDARTE'),nl,
write('............HASTA PRONTO............').

unir:-
cupo(C),
write('el cupo asignado al cliente puede ser: '),nl,
write(' '),write(C),nl,nl,
purgar,
pregunta.

pregunta:-nl,nl,
write('Desea continuar s/n : '),
read(X),
continue(X).

PRUEBAS DEL SISTEMA EXPERTO

PRIMERA PRUEBA

EL ESTADO ACTUAL DE CARTERA DEL CLIENTE ES:


1. CARERA A 30_DIAS.
2. CARTERA A 60_DIAS.
3. CARTERA AL DIA.
|: 1.
POSEE FINCA RAIZ EL CLIENTE:

1. SI.
2. NO.
|: 1.
DE ACUERDO A LA TABLA N 1 EN QUE RANGO SE
ENCUENTRAN LOS INGRESOS:

1. 0_A_500.000.
2. 500.001_A_1.000.000.
3. 1.000.001_A_1.500.000
4. 1.500.001_A_2.000.000.
5. 2.000.001_A_2.500.000.
6. 2.500.0001_A_3.000.000.
7. no aplica.
|: 5.
DE ACUERDO A LA TABLA N 2 EN QUE RANGO SE
ENCUENTRAN LOS INGRESOS:

1.3.000.001_A_3.500.000.
2. 3.500.001_A_4.000.000.
3. 4.000.001_A_4.500.000
4. 4.500.001_5.000.000.
5.5.000.001_A_5.500.000.
6.5.500.0001_A_6.000.000.
7.no aplica.
|: 7.
DE ACUERDO A LA TABLA N 3 EN QUE RANGO SE
ENCUENTRAN LOS INGRESOS:

1.6.000.001_A_10.000.000.
2. 10.000.001_A_14.000.000.
3. 14.000.001_A_18.000.000
4. 18.000.001_22.000.000.
5.22.000.001_A_26.000.000.
6.26.000.0001_A_30.000.000.
7.30.000.0001_A_34.000.000.
8.no aplica.
|: 8.
DE ACUERDO A LA TABLA N 4 EN QUE RANGO SE
ENCUENTRAN LOS INGRESOS:

1.34.000.001_A_40.000.000.
2. 40.000.001_A_46.000.000.
3. 46.000.001_A_52.000.000
4. 52.000.001_A_58.000.000.
5.58.000.001_A_64.000.000.
6.64.000.0001_A_100.000.000.
7.no aplica.
|: 7.
DE ACUERDO A LA TABLA N 1 EN QUE RANGO SE
ENCUENTRAN LOS EGRESOS:

1. 0_A_500.000.
2. 500.001_A_1.000.000.
3. 1.000.001_A_1.500.000
4. 1.500.001_2.000.000.
5.2.000.001_A_2.500.000.
6.2.500.0001_A_3.000.000.
7.no aplica.
|: 2.
DE ACUERDO A LA TABLA N 2 EN QUE RANGO SE
ENCUENTRAN LOS EGRESOS:

1.3.000.001_A_3.500.000.
2. 3.500.001_A_4.000.000.
3. 4.000.001_A_4.500.000
4. 4.500.001_5.000.000.
5.5.000.001_A_5.500.000.
6.5.500.0001_A_6.000.000.
7.no aplica.
|: 7.
DE ACUERDO A LA TABLA N 3 EN QUE RANGO SE
ENCUENTRAN LOS EGRESOS:

1.6.000.001_A_10.000.000.
2. 10.000.001_A_14.000.000.
3. 14.000.001_A_18.000.000
4. 18.000.001_22.000.000.
5.22.000.001_A_26.000.000.
6.26.000.0001_A_30.000.000.
7.30.000.0001_A_34.000.000.
8.no aplica.
|: 8.
DE ACUERDO A LA TABLA N 4 EN QUE RANGO SE
ENCUENTRAN LOS EGRESOS:

1.34.000.001_A_40.000.000.
2. 40.000.001_A_46.000.000.
3. 46.000.001_A_52.000.000
4. 52.000.001_A_58.000.000.
5.58.000.001_A_64.000.000.
6.64.000.0001_A_100.000.000.
7.no aplica.
|: 7.

el cupo asignado al cliente puede ser:


SE ASIGNA CUPO DE 1,000,001 A 1,500,000
CONCLUSIONES

• como vemos hoy en día los sistemas expertos buscan extraer el


conocimiento de las personas que llevan años desarrollando el mismo
cargo y que gracias a esta experiencia sanben como definir
determinadas situaciones que se presentan y solucionarlas para
favorecer a la empresa.

• Las empresas cada día se dan cuenta que cuando un trabajador adquiere
cierto conocimiento en la empresa y luego se, el trabajador se lleva ese
conocimiento es un valor mas que tiene el trabajador, por consiguiente
las empresas buscan que el trabajador deje una parte de ese
conocimiento en la empresa y la mejor solución es un sistema experto.

• Hoy en día el mercado competitivo es cada vez mas difícil y el cliente


busca es el proveedor que lo atienda con mayor eficiencia, si no se tiene
tiempos cortos para dar una respuesta al cliente, este busca otro
proveedor, es por esto que si tenemos un sistema experto, no tendríamos
que contar con la disposición de reunir a las personas encargadas para
hacer el análisis, si nos que una sola persona lo haría.

• Si los sistemas expertos extraen la información de las personas y lo que


mejor hacen en un futuro, que harán esos expertos si una maquina ya
hace lo que ellos hacían tan bien y los diferenciaba de los demás.