Escolar Documentos
Profissional Documentos
Cultura Documentos
Mayo de 2007
1
Esta Universidad se encuentra ubicada en la Cra 9ª bis No 62-43 Bogotá-Colombia.
2
Estudiantes del Programa de Ingeniería de Sistemas de la Fundación Universitaria Konrad
Lorenz, FUKL, http://www.fukl.edu
Fundación Universitaria Konrad Lorenz(FUKL-www.fukl.edu).
Sistemas Basados en el Conocimiento I-Felipe Forero Lozano
El problema se presenta más que todo en las personas que hasta ahora van a iniciar
esta actividad, ya que el remitirse a los manuales es algo demorado, y el volumen
de créditos es alto. Su otra alternativa es preguntar a alguien que sea más antiguo,
y la gente por pena muchas veces deja de preguntar.
Justificación
Marco Conceptual
Arboles de Decisión
Un árbol de decisión tiene unas entradas las cuales pueden ser un objeto o una
situación descrita por medio de un conjunto de atributos y a partir de esto devuelve
una respuesta la cual en últimas es una decisión que es tomada a partir de las
entradas. Los valores que pueden tomar las entradas y las salidas pueden ser
valores discretos o continuos. Se utilizan más los valores discretos por simplicidad,
cuando se utilizan valores discretos en las funciones de una aplicación se denomina
clasificación y cuando se utilizan los continuos se denomina regresión.
Fundación Universitaria Konrad Lorenz(FUKL-www.fukl.edu).
Sistemas Basados en el Conocimiento I-Felipe Forero Lozano
Un árbol de decisión lleva a cabo un test a medida que este se recorre hacia las
hojas para alcanzar así una decisión. El árbol de decisión suele contener nodos
internos, nodos de probabilidad, nodos hojas y arcos. Un nodo interno contiene un
test sobre algún valor de una de las propiedades. Un nodo de probabilidad indica
que debe ocurrir un evento aleatorio de acuerdo a la naturaleza del problema, este
tipo de nodos es redondo, los demás son cuadrados. Un nodo hoja representa el
valor que devolverá el
árbol de decisión. Y finalmente las ramas brindan los posibles caminos que se
tienen de acuerdo a la decisión tomada.
Algoritmo ID3
De esta forma el algoritmo trata de obtener las hipótesis que clasifiquen ante
nuevas instancias si dicho ejemplo va a ser positivo o negativo.
El Algoritmo
Obsérvese que la construcción del árbol se hace forma recursiva, siendo las tres
primeras líneas y la penúltima los casos base que construyen los nodos hojas.
El sistema que se quiere crear sería una gran ayuda para la inducción del nuevo
personal, y para la fácil consulta y recordación de los diferentes documentos que
son necesarios para cada caso.
Análisis y Diseño
Una vez indagado el proceso que se lleva a cabo con los papeles de los créditos, y
la forma en que son clasificados, se puede determinar cuál es la manera más viable
de hacer que un sistema basado en el conocimiento puede ayudar a este proceso.
Debido a los datos de entrada y al proceso que se lleva a cabo con los documentos
del crédito se puede pensar en desarrollar un sistema experto por medio de un
árbol de decisión que se induce de los datos de los documentos solicitados para
cada una línea de crédito. Estos datos se obtendrían de entrevistas con los
expertos, en este caso, los operarios, que manejan este proceso normalmente.
La inducción del árbol de decisión se realizará por medio del algoritmo ID3, que por
medio de operaciones sobre la tabla de datos y de cálculos de las entropías de cada
uno de los datos, se obtiene el árbol de decisión que representa los datos que están
en las tablas.
Los datos que se obtuvieron de las entrevistas con los operarios para el crédito de
Tarjeta de Credito, son los siguientes:
3
Este applet, induce un árbol de decisión a partir de un conjunto de datos, utilizando el algoritmo ID3.
Adicionalmente el applet genera automáticamente el código con sintaxis de prolog, el cual se pega en Winprolog o
en cualquier interprete de Prolog.
Fundación Universitaria Konrad Lorenz(FUKL-www.fukl.edu).
Sistemas Basados en el Conocimiento I-Felipe Forero Lozano
Identificaci
Formatos on Certificados Otros Tipo
Fotocopia_de_los_ultimos_3_desprendibles_de_nomina
Copia_extracto_bancario_de_los_ultimos_tres_meses
Copia_de_ultimo_extracto_de_tarjeta_de_credito
Fotocopia_de_factura_de_servicio_publico
Carta_aclaratoria_o_de_paz_y_salvo
Estados_financieros_del_ultimo_año
Fotocopia_de_declaracion_de_renta
Solicitud_servicios_financieros
Autorizacion_compra_cartera
Certificado_de_Ingresos
Certificado_Laboral
Fotocopia_cedula
Tipo_de_Cliente
SEGUIR_CASO
RUT
SI SI SI NO SI SI NO SI SI NO SI SI NO asalariado SI
NO SI SI NO SI SI NO SI SI NO SI SI NO asalariado NO
SI NO SI NO SI SI NO SI SI NO SI SI NO asalariado NO
SI SI NO NO SI SI NO SI SI NO SI SI NO asalariado NO
SI SI SI NO NO SI NO SI SI NO SI SI NO asalariado NO
SI SI SI NO SI NO NO SI SI NO SI SI NO asalariado NO
SI SI SI NO SI SI NO NO SI NO SI SI NO asalariado NO
SI SI SI NO SI SI NO SI NO NO SI SI NO asalariado NO
SI SI SI NO SI SI NO SI SI NO NO SI NO asalariado NO
SI SI SI NO SI SI NO SI SI NO SI NO NO asalariado NO
SI SI SI SI NO NO SI SI SI NO NO SI SI asalariado NO
independie
SI SI SI SI NO NO SI SI SI NO NO SI SI nte SI
independie
NO SI SI SI NO NO SI SI SI NO NO SI SI nte NO
independie
SI NO SI SI NO NO SI SI SI NO NO SI SI nte NO
independie
SI SI NO SI NO NO SI SI SI NO NO SI SI nte NO
independie
SI SI SI NO NO NO SI SI SI NO NO SI SI nte NO
independie
SI SI SI SI NO NO NO SI SI NO NO SI SI nte NO
independie
SI SI SI SI NO NO SI NO SI NO NO SI SI nte NO
independie
SI SI SI SI NO NO SI SI NO NO NO SI SI nte NO
independie
SI SI SI SI NO NO SI SI SI NO NO NO SI nte NO
independie
SI SI SI SI NO NO SI SI SI NO NO SI NO nte NO
independie
NO NO SI SI NO NO SI SI SI NO NO SI SI nte NO
independie
NO NO NO SI NO NO SI SI SI NO NO SI SI nte NO
Fundación Universitaria Konrad Lorenz(FUKL-www.fukl.edu).
Sistemas Basados en el Conocimiento I-Felipe Forero Lozano
independie
NO NO NO NO NO NO SI SI SI NO NO SI SI nte NO
independie
NO NO NO NO NO NO NO SI SI NO NO SI SI nte NO
independie
NO NO NO NO NO NO NO NO SI NO NO SI SI nte NO
independie
NO NO NO NO NO NO NO NO NO NO NO SI SI nte NO
independie
NO NO NO NO NO NO NO NO NO NO NO NO SI nte NO
independie
NO NO NO NO NO NO NO NO NO NO NO NO NO nte NO
independie
SI SI SI NO SI SI NO SI SI NO SI SI NO nte NO
A estos datos les aplicamos el algoritmo ID3, para obtener las reglas del sistema, y
luego escribimos el código en Prolog que nos va a implementar el sistema experto.
• seguir_caso( si ) :- solicitud_servicios_financieros( si ),
autorizacion_compra_cartera( si ), fotocopia_cedula( si ),
fotocopia_de_declaracion_de_renta( si ), carta_aclaratoria_o_de_paz_y_salvo(
si ), copia_de_ultimo_extracto_de_tarjeta_de_credito( si ), rut( no ),
certificado_de_ingresos( si ), certificado_laboral( si ),
fotocopia_de_los_ultimos_3_desprendibles_de_nomina( si ), tipo_de_cliente(
asalariado ), !.
• seguir_caso( no ) :- solicitud_servicios_financieros( si ),
autorizacion_compra_cartera( si ), fotocopia_cedula( si ),
fotocopia_de_declaracion_de_renta( si ), carta_aclaratoria_o_de_paz_y_salvo(
si ), copia_de_ultimo_extracto_de_tarjeta_de_credito( si ), rut( no ),
certificado_de_ingresos( si ), certificado_laboral( si ),
fotocopia_de_los_ultimos_3_desprendibles_de_nomina( si ), tipo_de_cliente(
independiente ), !.
• seguir_caso( no ) :- solicitud_servicios_financieros( si ),
autorizacion_compra_cartera( si ), fotocopia_cedula( si ),
fotocopia_de_declaracion_de_renta( si ), carta_aclaratoria_o_de_paz_y_salvo(
Fundación Universitaria Konrad Lorenz(FUKL-www.fukl.edu).
Sistemas Basados en el Conocimiento I-Felipe Forero Lozano
si ), copia_de_ultimo_extracto_de_tarjeta_de_credito( si ), rut( no ),
certificado_de_ingresos( si ), certificado_laboral( si ),
fotocopia_de_los_ultimos_3_desprendibles_de_nomina( no ), !.
• seguir_caso( no ) :- solicitud_servicios_financieros( si ),
autorizacion_compra_cartera( si ), fotocopia_cedula( si ),
fotocopia_de_declaracion_de_renta( si ), carta_aclaratoria_o_de_paz_y_salvo(
si ), copia_de_ultimo_extracto_de_tarjeta_de_credito( si ), rut( no ),
certificado_de_ingresos( si ), certificado_laboral( no ), !.
• seguir_caso( no ) :- solicitud_servicios_financieros( si ),
autorizacion_compra_cartera( si ), fotocopia_cedula( si ),
fotocopia_de_declaracion_de_renta( si ), carta_aclaratoria_o_de_paz_y_salvo(
si ), copia_de_ultimo_extracto_de_tarjeta_de_credito( si ), rut( no ),
certificado_de_ingresos( no ), !.
• seguir_caso( no ) :- solicitud_servicios_financieros( si ),
autorizacion_compra_cartera( si ), fotocopia_cedula( si ),
fotocopia_de_declaracion_de_renta( si ), carta_aclaratoria_o_de_paz_y_salvo(
si ), copia_de_ultimo_extracto_de_tarjeta_de_credito( si ), rut( si ),
estados_financieros_del_ultimo_año( si ),
copia_extracto_bancario_de_los_ultimos_tres_meses( si ), tipo_de_cliente(
asalariado ), !.
• seguir_caso( si ) :- solicitud_servicios_financieros( si ),
autorizacion_compra_cartera( si ), fotocopia_cedula( si ),
fotocopia_de_declaracion_de_renta( si ), carta_aclaratoria_o_de_paz_y_salvo(
si ), copia_de_ultimo_extracto_de_tarjeta_de_credito( si ), rut( si ),
estados_financieros_del_ultimo_año( si ),
copia_extracto_bancario_de_los_ultimos_tres_meses( si ), tipo_de_cliente(
independiente ), !.
• seguir_caso( no ) :- solicitud_servicios_financieros( si ),
autorizacion_compra_cartera( si ), fotocopia_cedula( si ),
fotocopia_de_declaracion_de_renta( si ), carta_aclaratoria_o_de_paz_y_salvo(
Fundación Universitaria Konrad Lorenz(FUKL-www.fukl.edu).
Sistemas Basados en el Conocimiento I-Felipe Forero Lozano
si ), copia_de_ultimo_extracto_de_tarjeta_de_credito( si ), rut( si ),
estados_financieros_del_ultimo_año( si ),
copia_extracto_bancario_de_los_ultimos_tres_meses( no ), !.
• seguir_caso( no ) :- solicitud_servicios_financieros( si ),
autorizacion_compra_cartera( si ), fotocopia_cedula( si ),
fotocopia_de_declaracion_de_renta( si ), carta_aclaratoria_o_de_paz_y_salvo(
si ), copia_de_ultimo_extracto_de_tarjeta_de_credito( si ), rut( si ),
estados_financieros_del_ultimo_año( no ), !.
• seguir_caso( no ) :- solicitud_servicios_financieros( si ),
autorizacion_compra_cartera( si ), fotocopia_cedula( si ),
fotocopia_de_declaracion_de_renta( si ), carta_aclaratoria_o_de_paz_y_salvo(
si ), copia_de_ultimo_extracto_de_tarjeta_de_credito( no ), !.
• seguir_caso( no ) :- solicitud_servicios_financieros( si ),
autorizacion_compra_cartera( si ), fotocopia_cedula( si ),
fotocopia_de_declaracion_de_renta( si ), carta_aclaratoria_o_de_paz_y_salvo(
no ), !.
• seguir_caso( no ) :- solicitud_servicios_financieros( si ),
autorizacion_compra_cartera( si ), fotocopia_cedula( si ),
fotocopia_de_declaracion_de_renta( no ), !.
• seguir_caso( no ) :- solicitud_servicios_financieros( si ),
autorizacion_compra_cartera( si ), fotocopia_cedula( no ), !.
• seguir_caso( no ) :- solicitud_servicios_financieros( si ),
autorizacion_compra_cartera( no ), !.
• seguir_caso( no ) :- solicitud_servicios_financieros( no ), !.
pregunta3 :- write( 'FOTOCOPIA_CEDULA' ), nl, nl, write( '1. si'), nl, write( '2. no'), nl,
nl, read( N ), respuesta3( N ).
pregunta4 :- write( 'RUT' ), nl, nl, write( '1. no'), nl, write( '2. si'), nl, nl, read( N ),
respuesta4( N ).
pregunta5 :- write( 'CERTIFICADO_DE_INGRESOS' ), nl, nl, write( '1. si'), nl, write( '2.
no'), nl, nl, read( N ), respuesta5( N ).
pregunta6 :- write( 'CERTIFICADO_LABORAL' ), nl, nl, write( '1. si'), nl, write( '2. no'),
nl, nl, read( N ), respuesta6( N ).
pregunta11 :- write(
'FOTOCOPIA_DE_LOS_ULTIMOS_3_DESPRENDIBLES_DE_NOMINA' ), nl, nl, write( '1.
si'), nl, write( '2. no'), nl, nl, read( N ), respuesta11( N ).
pregunta13 :- write(
'COPIA_EXTRACTO_BANCARIO_DE_LOS_ULTIMOS_TRES_MESES' ), nl, nl, write( '1.
no'), nl, write( '2. si'), nl, nl, read( N ), respuesta13( N ).
pregunta14 :- write( 'TIPO_DE_CLIENTE' ), nl, nl, write( '1. asalariado'), nl, write( '2.
independiente'), nl, nl, read( N ), respuesta14( N ).
retract( solicitud_servicios_financieros(_)),
retract( autorizacion_compra_cartera(_)),
retract( fotocopia_cedula(_)),
retract( rut(_)),
retract( certificado_de_ingresos(_)),
retract( certificado_laboral(_)),
retract( estados_financieros_del_ultimo_año(_)),
retract( fotocopia_de_declaracion_de_renta(_)),
retract( carta_aclaratoria_o_de_paz_y_salvo(_)),
retract( fotocopia_de_factura_de_servicio_publico(_)),
retract( fotocopia_de_los_ultimos_3_desprendibles_de_nomina(_)),
retract( copia_de_ultimo_extracto_de_tarjeta_de_credito(_)),
Fundación Universitaria Konrad Lorenz(FUKL-www.fukl.edu).
Sistemas Basados en el Conocimiento I-Felipe Forero Lozano
retract( copia_extracto_bancario_de_los_ultimos_tres_meses(_)),
retract( tipo_de_cliente(_)),
final.
continuar('s'):-inicio,!.
continuar('S'):-inicio,!.
continuar('n'):-write('Hasta Pronto'),nl,nl,!.
continuar('N'):-write('Hasta Pronto'),nl,nl,!.
Pruebas
Se realizó la siguiente prueba, la cual arrojó un resultado esperado por los operarios
que realizan el proceso:
| ?- inicio.
Seleccione la opcion según el Atributo:
SOLICITUD_SERVICIOS_FINANCIEROS
1. si
2. no
|: 2.
AUTORIZACION_COMPRA_CARTERA
1. si
2. no
|: 1.
FOTOCOPIA_CEDULA
Fundación Universitaria Konrad Lorenz(FUKL-www.fukl.edu).
Sistemas Basados en el Conocimiento I-Felipe Forero Lozano
1. si
2. no
|: 1.
RUT
1. no
2. si
|: 1.
CERTIFICADO_DE_INGRESOS
1. si
2. no
|: 2.
CERTIFICADO_LABORAL
1. si
2. no
|: 1.
ESTADOS_FINANCIEROS_DEL_ULTIMO_AÑO
1. no
2. si
|: 2.
FOTOCOPIA_DE_DECLARACION_DE_RENTA
1. si
2. no
|: 2.
CARTA_ACLARATORIA_O_DE_PAZ_Y_SALVO
1. si
2. no
|: 2.
FOTOCOPIA_DE_FACTURA_DE_SERVICIO_PUBLICO
1. no
|: 1.
FOTOCOPIA_DE_LOS_ULTIMOS_3_DESPRENDIBLES_DE_NOMINA
1. si
Fundación Universitaria Konrad Lorenz(FUKL-www.fukl.edu).
Sistemas Basados en el Conocimiento I-Felipe Forero Lozano
2. no
|: 1.
COPIA_DE_ULTIMO_EXTRACTO_DE_TARJETA_DE_CREDITO
1. si
2. no
|: 1.
COPIA_EXTRACTO_BANCARIO_DE_LOS_ULTIMOS_TRES_MESES
1. no
2. si
|: 1.
TIPO_DE_CLIENTE
1. asalariado
2. independiente
|: 1.
Conclusion:
no
SOLICITUD_SERVICIOS_FINANCIEROS
1. si
2. no
|: 1.
AUTORIZACION_COMPRA_CARTERA
1. si
2. no
|: 1.
FOTOCOPIA_CEDULA
1. si
2. no
|: 1.
Fundación Universitaria Konrad Lorenz(FUKL-www.fukl.edu).
Sistemas Basados en el Conocimiento I-Felipe Forero Lozano
RUT
1. no
2. si
|: 1.
CERTIFICADO_DE_INGRESOS
1. si
2. no
|: 1.
CERTIFICADO_LABORAL
1. si
2. no
|: 1.
ESTADOS_FINANCIEROS_DEL_ULTIMO_AÑO
1. no
2. si
|: 1.
FOTOCOPIA_DE_DECLARACION_DE_RENTA
1. si
2. no
|: 1.
CARTA_ACLARATORIA_O_DE_PAZ_Y_SALVO
1. si
2. no
|: 1.
FOTOCOPIA_DE_FACTURA_DE_SERVICIO_PUBLICO
1. no
|: 1.
FOTOCOPIA_DE_LOS_ULTIMOS_3_DESPRENDIBLES_DE_NOMINA
1. si
2. no
|: 1.
COPIA_DE_ULTIMO_EXTRACTO_DE_TARJETA_DE_CREDITO
Fundación Universitaria Konrad Lorenz(FUKL-www.fukl.edu).
Sistemas Basados en el Conocimiento I-Felipe Forero Lozano
1. si
2. no
|: 2.
COPIA_EXTRACTO_BANCARIO_DE_LOS_ULTIMOS_TRES_MESES
1. no
2. si
|: 1.
TIPO_DE_CLIENTE
1. asalariado
2. independiente
|: 1.
Conclusion: no
CONCLUSIONES
En los datos que se entregan no está la totalidad de los casos que pueden suceder,
sin embargo, se pudo extraer de estos, las reglas adecuadas para la toma de las
decisiones. Seguramente si se tuvieran todos los casos posibles, se vería mucho
más clara la reducción de una gran cantidad de datos y unas pocas reglas que
representaran el conocimiento implícito en los datos.