Está en la página 1de 10

FUNDACIN UNIVERSITARIA KONRAD LORENZ FACULTAD DE INGENIERA LGICA MATEMTICA PRIMER SEMESTE Prof.

Pervys Rengifo Rengifo 2005 JAIRO ORLANDO RAMIREZ SANCHEZ COD.553003 TABLA DE CONTENIDO 1. Objetivos y expectativas 2. Definicin de la base de conocimiento 3. Uso del Sistema Experto 4. Cdigo Fuente 5. Recursos Utilizados 1. Objetivos y expectativas

-El objetivo de este pequeo sistema experto es mostrarle al usuario las alternativas de rutas de acuerdo a la estacin que digite o el recorrido de una ruta en particular. -Expectativas: Si conociera un poco ms de PROLOG, pensara en mejorar este sistema experto, colocando funciones como: * Bsqueda de la ruta ms corta a un destino, tomando en cuenta la cantidad de paradas y transbordos requeridos. * Tiempo estimado de llegada a la ruta deseada. * Rutas en funcionamiento de acuerdo al da o a la hora actual.

Aunque este programa fue algo muy sencillo, me dio una idea muy buena sobre como funcionan los sistemas expertos. 2. Definicin de la base de conocimiento Tomando la lista de rutas existentes en Transmilenio, se crear una base de conocimiento que consta bsicamente de dos componentes: Nombre de la estacin Ruta

Con el fin de poder hacer las consultas de rutas y recorridos de nuestro sistema experto se crear una base de conocimiento consistente en el nombre de la estacin ms la ruta que para all. Como en la mayora de las estaciones se detiene ms de una ruta, se crear un registro por cada ruta existente dentro de la estacin. Ejemplo: estacion('Toberin',2). estacion('Toberin',3). estacion('Toberin',25). estacion('Toberin',60). estacion('Toberin',70). estacion('Cardio Infantil',2). estacion('Cardio Infantil',3). 3. Uso del sistema experto

-Si quiero saber que rutas pasan por determinada estacin se usa la siguiente sintaxis: ej.: estacion('Banderas',X). Esto me mostrar que rutas pasan por la estacin de "Banderas". -Si quiero saber el recorrido de una ruta la sintaxis es la siguiente: ej.: estacion(X,30).

Esto me mostrar el recorrido de la ruta 30. (Siempre se ver de Norte a Sur) -Si quiero saber si en una estacin determinada pasa una ruta especfica, la sintaxis es as: ej.: estacion('Alcala',50). Esto me generar una respuesta afirmativa "yes" si la ruta pasa por la estacin consultada o "no" si no es as. -Una consulta como: estacion(X,Y). , devolver todo el contenido de la base de conocimiento. -Existe un comando adicional para saber si una estacin existe: parada('Nombre Estacin'). Este comando simplemente mostrar "yes" o "no" si existe o no la estacin digitada. 4. Cdigo Fuente Este cdigo fuente se puede copiar y pegar en el editor de SWI-Prolog para ser ejecutado y probar la aplicacin:
% % % % % % % % % % % % % % % % % % % % % % % % % % % Fundacin Universitaria Konrad Lorenz Facultad de Ingenieria Autor: Jairo Orlando Ramirez Snchez Cod. 553003 Fecha: 24/May/2005 -*- Pequeo Sistema Experto con las rutas del Transmilenio -*Recursos utilizados: Compilador PROLOG Libre SWI-Prolog (http://www.swi-prolog.org) Editor complementario SWI-Prolog Editor: (http://www.bildung.hessen.de/abereich/inform/skii/material/swing/indexe.htm) -El objetivo de este pequeo sistema experto es mostrarle al usuario las alternativas de rutas de acuerdo a la estacin que digite o el recorrido de una ruta en particular. -Expectativas: Si conociera un poco ms de PROLOG, pensara en mejorar este sistema experto, colocando funciones como: * Bsqueda de la ruta ms corta a un destino, tomando en cuenta la cantidad de paradas y transbordos requeridos. * Tiempo estimado de llegada a la ruta deseada. * Rutas en funcionamiento de acuerdo al da o a la hora actual. Aunque este programa fue algo muy sencillo, me dio una idea muy buena sobre como funcionan los sistemas expertos.

%-Uso: % En trminos generales se usa el comando asi: % estacion('Nombre Estacin',Ruta). %Donde 'Nombre Estacion' es un valor alfa-numrico y debe ir con las comillas sencillas, %y Ruta es el nmero de la ruta de Transmilenio. La sentencia siempre debe terminar con %con un punto(.) para indicar el fin del comando % %-Si quiero saber que rutas pasan por determinada estacin se usa la siguiente sintaxis: % ej.: estacion('Banderas',X). % Esto me mostrar que rutas pasan por la estacin de "Banderas". %-Si quiero saber el recorrido de una ruta la sintaxis es la siguiente: % ej.: estacion(X,30). % Esto me mostrar el recorrido de la ruta 30. (Siempre se ver de Norte a Sur) %-Si quiero saber si en una estacin determinada pasa una ruta especfica, la sintaxis es as: % ej.: estacion('Alcala',50). % Esto me generar una respuesta afirmativa "yes" si la ruta pasa por la estacin consultada o % "no" si no es as. %-Una consulta como: estacion(X,Y). , devolver todo el contenido de la base de conocimiento. %-Existe un comando adicional para saber si una estacin existe: % parada('Nombre Estacin'). % Este comando simplemente mostrar "yes" o "no" si existe o no la estacin digitada. estacion('Portal Norte',2). estacion('Portal Norte',3). estacion('Portal Norte',110). estacion('Portal Norte',25). estacion('Portal Norte',50). estacion('Portal Norte',60). estacion('Portal Norte',70). estacion('Portal Norte',100). estacion('Toberin',2). estacion('Toberin',3). estacion('Toberin',25). estacion('Toberin',60). estacion('Toberin',70). estacion('Cardio Infantil',2). estacion('Cardio Infantil',3). estacion('Mazuren',2). estacion('Mazuren',3). estacion('Mazuren',60). estacion('Calle 146',2). estacion('Calle 146',3). estacion('Calle 146',50). estacion('Calle 146',25). estacion('Calle 146',100). estacion('Calle 146',110). estacion('Calle 142',2). estacion('Calle 142',3). estacion('Calle 142',50). estacion('Alcala',2). estacion('Alcala',3). estacion('Alcala',50). estacion('Alcala',60). estacion('Alcala',100). estacion('Alcala',110). estacion('Alcala',25). estacion('Prado',2). estacion('Prado',3). estacion('Prado',70). estacion('Calle 127',2). estacion('Calle 127',3). estacion('Calle 127',70). estacion('Calle 127',60). estacion('Calle 127',100).

estacion('Calle 127',25). estacion('Pepe Sierra',2). estacion('Pepe Sierra',3). estacion('Pepe Sierra',50). estacion('Calle 106',2). estacion('Calle 106',3). estacion('Calle 100',2). estacion('Calle 100',3). estacion('Calle 100',50). estacion('Calle 100',60). estacion('Calle 100',70). estacion('Calle 100',100). estacion('Calle 100',110). estacion('Calle 100',25). estacion('Virrey',2). estacion('Virrey',3). estacion('Virrey',60). estacion('Virrey',110). estacion('Calle 85',2). estacion('Calle 85',3). estacion('Calle 85',70). estacion('Calle 85',100). estacion('Heroes',2). estacion('Heroes',3). estacion('Heroes',50). estacion('Heroes',60). estacion('Heroes',70). estacion('Heroes',100). estacion('Heroes',25). estacion('Portal 80',1). estacion('Portal 80',10). estacion('Portal 80',20). estacion('Portal 80',30). estacion('Portal 80',40). estacion('Portal 80',80). estacion('Portal 80',90). estacion('Portal 80',35). estacion('Portal 80',15). estacion('Quirigua',1). estacion('Quirigua',30). estacion('Quirigua',35). estacion('Carrera 90',1). estacion('Carrera 90',20). estacion('Carrera 90',90). estacion('Avenida Cali',1). estacion('Avenida Cali',10). estacion('Avenida Cali',15). estacion('Avenida Cali',35). estacion('Granja',1). estacion('Granja',10). estacion('Carrera 77',1). estacion('Carrera 77',10). estacion('Carrera 77',80). estacion('Carrera 77',15). estacion('Carrera 77',35). estacion('Minuto de Dios',1). estacion('Minuto de Dios',20). estacion('Minuto de Dios',90). estacion('Minuto de Dios',35). estacion('Avenida Boyaca',1). estacion('Ferias',1). estacion('Ferias',15). estacion('Avenida 68',1). estacion('Avenida 68',40).

estacion('Avenida 68',90). estacion('Avenida 68',15). estacion('Avenida 68',35). estacion('Carrera 53',1). estacion('Carrera 47',1). estacion('Escuela Militar',1). estacion('Escuela Militar',40). estacion('Escuela Militar',90). estacion('Polo',1). estacion('Polo',40). estacion('Polo',90). estacion('Calle 76',1). estacion('Calle 76',2). estacion('Calle 76',3). estacion('Calle 76',10). estacion('Calle 76',25). estacion('Calle 76',30). estacion('Calle 76',50). estacion('Calle 76',70). estacion('Calle 76',110). estacion('Calle 76',15). estacion('Calle 76',35). estacion('Calle 72',1). estacion('Calle 72',2). estacion('Calle 72',3). estacion('Calle 72',20). estacion('Calle 72',25). estacion('Calle 72',30). estacion('Calle 72',50). estacion('Calle 72',80). estacion('Calle 72',110). estacion('Calle 72',15). estacion('Flores',1). estacion('Flores',2). estacion('Flores',3). estacion('Flores',30). estacion('Flores',35). estacion('Calle 63',1). estacion('Calle 63',2). estacion('Calle 63',3). estacion('Calle 63',20). estacion('Calle 63',60). estacion('Calle 63',80). estacion('Calle 63',90). estacion('Calle 63',15). estacion('Calle 63',25). estacion('Calle 63',35). estacion('Calle 63',110). estacion('Calle 57',1). estacion('Calle 57',2). estacion('Calle 57',3). estacion('Calle 57',20). estacion('Calle 57',40). estacion('Calle 57',60). estacion('Calle 57',90). estacion('Calle 57',15). estacion('Marly',1). estacion('Marly',2). estacion('Marly',3). estacion('Marly',20). estacion('Marly',40). estacion('Marly',60). estacion('Marly',90). estacion('Marly',100).

estacion('Marly',25). estacion('Calle 45',1). estacion('Calle 45',2). estacion('Calle 45',3). estacion('Calle 45',10). estacion('Calle 45',40). estacion('Calle 45',60). estacion('Calle 45',90). estacion('Calle 45',100). estacion('Calle 45',25). estacion('Calle 45',35). estacion('Avenida 39',1). estacion('Avenida 39',2). estacion('Avenida 39',3). estacion('Avenida 39',10). estacion('Avenida 39',20). estacion('Avenida 39',40). estacion('Avenida 39',60). estacion('Avenida 39',90). estacion('Avenida 39',15). estacion('Profamilia',1). estacion('Profamilia',2). estacion('Profamilia',3). estacion('Profamilia',10). estacion('Profamilia',100). estacion('Calle 26',1). estacion('Calle 26',2). estacion('Calle 26',3). estacion('Calle 26',10). estacion('Calle 26',50). estacion('Calle 26',100). estacion('Calle 26',110). estacion('Calle 26',15). estacion('Calle 22',1). estacion('Calle 22',2). estacion('Calle 22',3). estacion('Calle 22',10). estacion('Calle 22',60). estacion('Calle 22',70). estacion('Calle 22',80). estacion('Calle 22',25). estacion('Calle 22',35). estacion('Calle 19',1). estacion('Calle 19',2). estacion('Calle 19',3). estacion('Calle 19',30). estacion('Calle 19',40). estacion('Calle 19',50). estacion('Calle 19',70). estacion('Calle 19',80). estacion('Calle 19',15). estacion('Calle 19',25). estacion('Calle 19',35). estacion('Las Aguas',10). estacion('Las Aguas',35). estacion('Museo del Oro',10). estacion('Museo del Oro',35). estacion('Estacion Sabana',4). estacion('San Facon',4). estacion('San Facon',120). estacion('San Facon',45). estacion('Ricaurte',4). estacion('Ricaurte',80). estacion('Carrera 32',4).

estacion('Carrera 32',100). estacion('Zona Industrial',4). estacion('Zona Industrial',120). estacion('Zona Industrial',45). estacion('Carrera 43',4). estacion('Puente Aranda',4). estacion('Carrera 53A',4). estacion('Carrera 53A',80). estacion('Carrera 53A',45). estacion('Pradera',4). estacion('Pradera',100). estacion('Marsella',4). estacion('Marsella',80). estacion('Marsella',45). estacion('Mundo Aventura',4). estacion('Mandalay',4). estacion('Banderas',4). estacion('Banderas',80). estacion('Banderas',100). estacion('Banderas',120). estacion('Banderas',45). estacion('Transversal 86',4). estacion('Biblioteca Tintal',4). estacion('Biblioteca Tintal',100). estacion('Biblioteca Tintal',45). estacion('Patio Bonito',4). estacion('Patio Bonito',120). estacion('Portal Americas',4). estacion('Portal Americas',100). estacion('Portal Americas',120). estacion('Portal Americas',45). estacion('Avenida Jimenez',1). estacion('Avenida Jimenez',2). estacion('Avenida Jimenez',3). estacion('Avenida Jimenez',4). estacion('Avenida Jimenez',10). estacion('Avenida Jimenez',20). estacion('Avenida Jimenez',30). estacion('Avenida Jimenez',50). estacion('Avenida Jimenez',70). estacion('Avenida Jimenez',90). estacion('Avenida Jimenez',110). estacion('Avenida Jimenez',120). estacion('Avenida Jimenez',15). estacion('Avenida Jimenez',25). estacion('Avenida Jimenez',35). estacion('Tercer Milenio',2). estacion('Tercer Milenio',3). estacion('Tercer Milenio',30). estacion('Tercer Milenio',15). estacion('Hospital',2). estacion('Hospital',3). estacion('Hortua',2). estacion('Hortua',3). estacion('Hortua',20). estacion('Hortua',90). estacion('Hortua',25). estacion('Nario',2). estacion('Nario',3). estacion('Nario',20). estacion('Nario',90). estacion('Fucha',2). estacion('Fucha',3). estacion('Fucha',30).

estacion('Fucha',25). estacion('Restrepo',2). estacion('Restrepo',3). estacion('Restrepo',40). estacion('Restrepo',50). estacion('Restrepo',60). estacion('Restrepo',90). estacion('Restrepo',15). estacion('Restrepo',25). estacion('Olaya',2). estacion('Olaya',3). estacion('Olaya',30). estacion('Olaya',60). estacion('Olaya',70). estacion('Olaya',15). estacion('Quiroga',2). estacion('Quiroga',3). estacion('Calle 40 Sur',2). estacion('Calle 40 Sur',3). estacion('Calle 40 Sur',20). estacion('Calle 40 Sur',30). estacion('Calle 40 Sur',50). estacion('Calle 40 Sur',60). estacion('Calle 40 Sur',90). estacion('Calle 40 Sur',15). estacion('Calle 40 Sur',25). estacion('Santa Lucia',2). estacion('Santa Lucia',3). estacion('Santa Lucia',40). estacion('Santa Lucia',70). estacion('Santa Lucia',90). estacion('Santa Lucia',15). estacion('Santa Lucia',25). estacion('Biblioteca',4). estacion('Biblioteca',100). estacion('Biblioteca',45). estacion('Parque',4). estacion('Portal Tunal',3). estacion('Portal Tunal',20). estacion('Portal Tunal',30). estacion('Portal Tunal',60). estacion('Portal Tunal',15). estacion('Socorro',2). estacion('Consuelo',2). estacion('Molinos',2). estacion('Portal Usme',2). estacion('Portal Usme',40). estacion('Portal Usme',50). estacion('Portal Usme',70). estacion('Portal Usme',90). estacion('Portal Usme',25). parada(Estacion) :estacion(Estacion,Y). % ---- Fin del Programa ----

5. Recursos Utilizados

Compilador PROLOG Libre SWI-Prolog

(http://www.swi-prolog.org) Editor complementario SWI-Prolog Editor: (http://www.bildung.hessen.de/abereich/inform/skii/material/swing/in dexe.htm)

También podría gustarte