Sistema inteligente de Rutas Escolares
Enviado por Pablo Cevallos • 10 de Mayo de 2017 • Ensayo • 1.889 Palabras (8 Páginas) • 259 Visitas
SISTEMA DE RUTAS ESCOLAR
UNIVERSIDAD DEL AZUAY
FACULTAD DE CIENCIAS DE LA ADMINISTRACION
ESCUELA DE SISTEMAS Y TELEMATICA
Autores:
Cevallos Pablo
ua065662@uazuay.edu.ec
Ortega John
ua069259@uazuay.edu.ec
Quezada Marco
ua067926@uazuay.edu.ec
Introducción
Basándose en la idea de los sistemas GPS que existen en la actualidad, se ha tratado de implementar un servicio específico, el cual está enfocado hacia el sistema de transporte de las instituciones educativas.
Se trata de un sistema experto que forma el recorrido que debe seguir el chofer de un vehículo de transporte escolar, a su vez le guía de un punto hacia otro por la ruta que se halla trazado.
A lo largo del recorrido se pueden presentar algunos inconvenientes, frente a los cuales el sistema desarrollado podrá adaptarse a la situación y resolverlos.
La idea principal del sistema es el de optimizar el tiempo de recorrido que realiza una unidad de transporte al recoger a cada estudiante desde su lugar de residencia hacia su respectiva institución educativa.
Marco teórico
La Inteligencia Artificial es la rama de la ciencia que se encarga del estudio de la inteligencia en sistemas computacionales y, desde el punto de vista de la ingeniería, propone la creación de sistemas con un comportamiento inteligente para tratar de emular el cerebro humano.
Dicho de otra forma, la IA se compone sistemas y máquinas que presentan un comportamiento tal como si fuera llevado a cabo por una persona.
Entre las características principales constarían el aprendizaje, la capacidad de adaptación a entornos cambiantes, la inferencia, etc., los cuales son procesos que generalmente se relacionan con el comportamiento inteligente de un humano.
La IA puede ser tomada como una ciencia interdisciplinaria, ya que en ella pueden intervenir disciplinas tan variadas como la Neurociencia, la Psicología, las Tecnologías de la Información, la Ciencia Cognitiva, la Física, las Matemáticas, etc. (Alejandro Pazos, Nieves Pedreira, Juan Ramón Rabuñal y Javier Pereira, 2007)
Un sistema experto es un sistema informático que simula el comportamiento de un experto humano frente a un área específica de trabajo. (Giarratano, 2001)
La base de conocimiento es un contenedor que representa el conocimiento suministrado por el experto. Por otro lado está el motor de inferencia que es donde se realiza el razonamiento contrastando los hechos proporcionados por la base de conocimiento. (Panqueva, 1988)
PROLOG es un lenguaje de programación que se basa en la Lógica de Primer Orden que se usa para resolver problemas de carácter lógico. Tiene un papel importante dentro de la Inteligencia Artificial, se estableció como el lenguaje nativo de las máquinas de la quinta generación las cuales están orientadas a Sistemas de Procesamiento de Conocimiento.(Largo, 2016)
Netbeans es un entorno de desarrollo para el lenguaje de programación de alto nivel java. Esta herramienta facilita las tareas de codificación a la hora de crear y compilar programas, ya sea aplicaciones móviles, aplicaciones web y de escritorio. Además permite el manejo de varios proyectos al mismo tiempo. (Oracle, 2016)
Implementación
3.1 Selección de área de trabajo
Para éste proyecto fue necesario definir un área de trabajo dentro de la ciudad de Cuenca, de Norte a Sur desde la Avenida Héroes de Verdeloma hasta la calle Presidente Córdova, y de Este a Oeste desde la Calle Mariano Cueva hasta la calle Coronel Guillermo Talbot.
La razón por la cual se decidió trabajar en ésta zona es por la estructura ordenada que mantienen las cuadras, lo que facilita la recolección de datos.
3.2 Recolección de información de las cuadras
Antes de realizar la recolección de información de las cuadras escogidas se tuvo que realizar una codificación de las calles, para luego realizar una codificación a nivel de cuadra, identificando a que calle pertenece cada cuadra.
La herramienta de Google Maps fue necesaria para obtener la longitud, las coordenadas de latitud y longitud de las esquinas de cada cuadra, también proporcionó los sentidos de las calles. El peso representa el nivel de tráfico que tiene la cuadra, éste valor se asignó aleatoriamente con fines demostrativos. Por último se tiene en consideración el estado de cada cuadra el cual puede ser abierto o cerrado, es decir indica si se puede circular o no por esa cuadra.
3.3 Parámetros de funcionamiento adicionales (Información adicional)
Ya que este sistema es orientado a la optimización de recorridos de transporte escolar es indispensable conocer la información acerca del número de estudiantes que se tiene que recoger, así como la ubicación de cada uno de ellos incluyendo un número de casa. También se debe conocer el número de vehículos disponibles para el servicio y su respectiva capacidad, por último, se cuenta con la ubicación de la escuela.
3.4 Desarrollo del Sistema experto
3.4.1 Algoritmo de recorrido óptimo en PROLOG
La información que se recolectó en una etapa anterior del proyecto se la estructura en lógica de primer orden dentro del lenguaje PROLOG, creando así lo que se denomina la base de conocimiento del sistema experto.
El algoritmo principal se almacena en el motor de inferencia, el cual trabaja en base al cálculo de tiempos utilizando una fórmula que relaciona peso y distancia.
Inicia identificando la cuadra donde se encuentra la institución educativa, que es el último punto del recorrido. Luego determina el orden de los puntos (cuadras donde se recogen a los estudiantes) a ser recorridos, mediante un análisis de todas las posibles combinaciones de rutas y de ellas se elige la que menor tiempo tarde.
En caso de que suceda alguna eventualidad se realiza un reajuste del recorrido propuesto inicialmente. Los imprevistos contemplados por el momento en este sistema experto que el algoritmo está en capacidad de solucionar abarca: el cierre de una cuadra incluida dentro del recorrido en la cual puede o no vivir un estudiante, el incremento del peso, es decir, el nivel de tráfico de una cuadra.
3.4.2 Base de datos
La base de datos almacena información que es necesaria para la aplicación de usuario, a diferencia de la base de conocimiento que contiene información que es necesaria para el motor de inferencia.
...