Escuela superior politécnica del litoral facultad de Ingeniería en Electricidad y Computación



Descargar 396.87 Kb.
Página10/10
Fecha de conversión24.03.2017
Tamaño396.87 Kb.
1   2   3   4   5   6   7   8   9   10

Visualización de la Ruta Generada en Google Maps


A través del módulo de generación de rutas se obtienen las diferentes rutas requeridas, en este módulo primeramente se ordenan todos los puntos que serán considerados en la generación para luego proceder a generar grupos de acuerdo con la capacidad de bus que ha sido definido como un valor constante. Una vez que se obtienen estos grupos, se ordenan nuevamente para que el orden corresponda a los puntos de esa ruta. Luego de esto se procede a obtener las distancias mínimas para ir de un punto a otro dentro de una ruta. Las intersecciones que conforman las distancias mínimas de un punto a otro son almacenadas en la base. Al almacenar esta información se registra un campo que indica el orden de visita de esa intersección.


Al acceder a la interfaz de consulta de rutas se leerá de la base todas las intersecciones que conforman la distancia mínima de una ruta las cuales han sido previamente almacenadas en la base, al leerlos se los mantiene ordenados por el orden registrado en un campo de la tabla.
Una vez que los puntos se han cargado en una colección en memoria, se recorre la misma para dibujar fragmentos de línea que en su conjunto representarán la ruta.
A continuación se muestra un fragmento de código que permite dibujar una línea de un punto a otro.


map = new GMap2(document.getElementById("map_canvas"));

var points = [];

var point1 = new GLatLng(punto1_latitud, punto1_longitud);

points.push(point1);

var point2 = new GLatLng(punto2_latitud, punto2_longitud);

points.push(point2);

map.addOverlay(new GPolyline(points));

En la figura 4.4 se muestra la visualización de una ruta de transporte escolar.



c:\users\elizabeth\pictures\tesis\visualización ruta_1.jpg
Figura 4.4: Visualización de ruta generada usando funciones del API’s de Google Maps.


    1. Mantenimiento de Datos


      1. Mantenimiento y Administración de Datos.


En esta sección se detalla los diferentes módulos de mantenimiento que se implementaron:




    • Módulo de ingreso de alumnas.

    • Módulo de mantenimiento de rutas.

    • Módulo de mantenimiento propietario-bus.

    • Módulo de mantenimiento de unidades de expreso.

    • Módulo de mantenimiento de conductores.




Este módulo como se especificó en el diseño permite el mantenimiento de los datos de las alumnas que requieren se les genere rutas de transporte.
El usuario podrá acceder a una página que permitirá realizar el ingreso de datos básicos de la alumna.
Para el ingreso de la dirección domiciliaria de la alumna el usuario debe hacer clic en el mapa que se muestra en la página para señalar la dirección. La información que se guarda como dirección domiciliaria de la alumna es la dirección geocodificada del punto seleccionado. Además en el momento de escoger el punto geocodificado el sistema utiliza un algoritmo para determinar la intersección más cercana y la guarda junto con la dirección. El id de la intersección es obtenido por la función asignación de dirección.

En la figura 4.5 se muestra la interfaz de ingreso de alumna, aquí se puede observar el punto señalado como dirección domiciliaria de la alumna, su respectiva información geográfica y la dirección domiciliaria que se asigna a la alumna, los cuales se han señalado en la figura como puntos 1 y 2.



1

2
c:\users\elizabeth\pictures\mantenimiento_personal.jpg

Figura 4.5: Interfaz del módulo de Ingreso de Personal




  • Módulo de Mantenimiento de Rutas

En este módulo el usuario tiene la posibilidad de visualizar cada una de las rutas que se hayan generado y realizar cambios manuales a una ruta específica.
Los cambios que el usuario puede realizar son:

  • Mover una alumna de una ruta a otra.

  • Cambiar el orden de visita de los puntos para una determinada ruta.



Mover una Alumna de una Ruta a Otra: cuando el usuario mueve a una determinada alumna de una ruta a otra, de manera automática se realiza el reordenamiento considerando a la nueva alumna colocada en la ruta.
Cambiar el Orden de Visita de los Puntos para una Determinada Ruta: en esta opción el usuario puede colocar de acuerdo a algún requerimiento específico el orden en el cual requiere que las alumnas sean recogidas. Si una determinada ruta es modificada, la ruta original es almacenada en tablas temporales para tener la posibilidad de poder visualizar la ruta óptima que el sistema generó y que fue modificada. La opción de visualizar ruta original se mostrará activa si la ruta ha tenido modificaciones.

c:\users\elizabeth\pictures\tesis\mantenimiento_rutas_modificado.jpg

Figura 4.6: Interfaz del módulo de mantenimiento de rutas.




En este módulo se realiza el mantenimiento de los datos de propietarios-bus, estos datos son importantes para definir el propietario de cada una de las unidades con las que se cuenta en la institución.

  • Módulo de Ingreso/Mantenimiento de Unidades de Expreso

Este módulo permite el mantenimiento de datos de las unidades de expreso escolar, a la vez que permite relacionar cada unidad en estado activo a un propietario de bus.


  • Módulo de Ingreso/Mantenimiento de Conductores

Este módulo permite el mantenimiento de los datos de conductores, cada uno de los conductores se relaciona con una unidad de expreso, las unidades de expreso están relacionadas como ya se mencionó con su respectivo propietario. El código de conductor es requerido para ser almacenado en la ruta a la cual es asignado.
















      1. Reportes de Administración y Mantenimiento de Datos.

En esta sección se detalla los diferentes reportes de administración y mantenimientos de datos implementados. Los reportes que se desarrollaron fueron:




  • Reporte de direcciones.

  • Reporte de rutas – conductores.

  • Reporte de alumnas por ruta.

Se detalla a continuación cada uno de los reportes desarrollados:




  • Reporte de Direcciones.- lista las direcciones domiciliarias de cada una de las alumnas ingresadas en el sistema y que tengan estado activo.

  • Reporte de Rutas – Conductores.- lista todas las rutas que se han generado con el respectivo conductor asignado a cada una de las rutas.

  • Reporte de Alumnas por Ruta.- lista los alumnos asignados a cada una de las rutas que se han generado.












CAPÍTULO 5


  1. PRUEBAS Y ANÁLISIS DE RESULTADOS



Introducción

En capítulos anteriores se definió de manera progresiva el desarrollo del prototipo para la generación de rutas óptimas. En este capítulo se describe y analiza las diferentes pruebas que se realizaron, las cuales permiten verificar el grado de certeza y efectividad del aplicativo. A continuación se describe cada una de las pruebas realizadas.



  1. Asignación Correcta de Nodos a Rutas Generadas


Como se describe en la sección 3.5.1, los pasos para llevar a cabo esta prueba son los siguientes:

a) Generar y visualizar rutas.

b) Añadir punto.



c) Volver a generar y visualizar rutas.
Para la implementación de esta prueba se ha considerado un set de datos de 22 puntos geográficos que corresponden a las direcciones domiciliarias de las alumnas, las cuales a su vez se relacionan con los datos geográficos de la intersección de calle más próxima a la dirección domiciliaria de la alumna. Estos puntos son mostrados en la figura 5.1.
Para formar este set de datos se escogieron puntos geográficos distribuidos en el área definida en el alcance.
La prueba comienza con la generación y visualización de las rutas usando el set de datos propuesto. Una vez completada la generación, se observa que se han generado 3 diferentes rutas. La opción de visualización grafica las rutas generadas, como se muestra en la figura 5.2, 5.3 y 5.4.
Hay que notar que los puntos han sido agrupados correctamente puesto que todos los puntos más cercanos han sido asignados a una misma ruta.
c:\users\elizabeth\pictures\tesis\mapa_puntos_prueba_asignar_rutas.jpg
Figura 5.1: Puntos del set de datos considerado para prueba asignación correcta de nodos a rutas.

e:\personales\tesis\imágenes\rutas_alumnas_1.jpg
Figura 5.2: Mapa de ruta de alumnas número 1


c:\users\elizabeth\pictures\tesis\rutas_alumnas_2_v2.jpg
Figura 5.3: Mapa de ruta de alumnas número 2.

c:\users\elizabeth\pictures\tesis\rutas_alumnas_3_v2.jpg
Figura 5.4: Mapa de ruta de alumnas número 3.
La siguiente parte consiste en añadir un punto cercano a las rutas generadas y constatar que este es ubicado en la ruta adecuada. La figura 5.5 muestra el set original y el nuevo punto.
Como parte final se genera rutas nuevamente y se visualizan las 3 rutas resultantes. Se observa que el punto con latitud/longitud (-2.1923316451757047, -79.8864197731018) ha sido incluido en la ruta 3 que es la ruta correcta que le corresponde ser asignado. Las 3 nuevas rutas son mostradas en las figuras 5.6, 5,7 y 5.8.
c:\users\elizabeth\pictures\tesis\mapa_puntos_prueba_asignar_rutas.jpg
Figura 5.5: Set de datos original más nuevo punto para nueva generación de rutas.

e:\personales\tesis\imágenes\rutas_alumnas_1.jpg
Figura 5.6: Muestra ruta 1 de alumnas luego de añadir punto al set de datos.


c:\users\elizabeth\pictures\tesis\rutas_alumnas_2_v2.jpg
Figura 5.7: Muestra ruta 2 de alumnas luego de añadir punto al set de datos.

c:\users\elizabeth\pictures\tesis\rutas_alumnas_3_nuevo_punto.jpg
Figura 5.8: Muestra ruta 3 de alumnas luego de añadir punto al set de datos.
Como conclusión de esta prueba realizada se puede decir que la agrupación de los puntos es realizado de acuerdo a lo que se esperaba, es decir considerando la cercanía de los mismos. Cuando se añade un punto, las rutas son reagrupados y el nuevo punto es colocado en la ruta más cercana al punto.




    1. Medición de Tiempo Usando TSP


Para la medición del tiempo de repuesta del algoritmo de ordenamiento de nodos TSP que nos permite generar rutas óptimas, se ha procedido a realizar pruebas variando de manera progresiva el número de nodos. En la tabla 5.1 se describen los resultados obtenidos y en la figura 5.9 se muestra la relación de tiempo vs número de nodos. Como se puede observar el tiempo de respuesta aumenta rápidamente para un conjunto pequeño de nodos, pero a partir de los 10 nodos la curva se suaviza.





Número de Puntos

Tiempo (Segs.)

5

0,43

10

2,39

30

3,28

Tabla 5.1: Resultados obtenidos de pruebas de tiempo TSP con diferente número de puntos.




Figura 5.9: Relación número de nodos Vs. tiempo para el algoritmo TSP.







    1. Medición de Tiempo Usando A-Star


Para medir el tiempo de respuesta del algoritmo de rutas mínimas A-star, se ha procedido de la misma manera que para el algoritmo TSP, se han realizado pruebas aumentando el número de nodos de manera progresiva.


En la tabla 5.2 se muestra los resultados obtenidos para el tiempo de respuesta para diferente número de nodos. También se muestra un gráfico que define la relación de número de nodos vs. tiempo. Como se puede observar en la tabla el tiempo de respuesta del algoritmo de distancias mínimas aumenta rápidamente para un conjunto pequeño de nodos, la curva tiende a suavizarse a partir de los 10 nodos.


Número de Puntos

Tiempo (Segs.)

5

0,38

10

1,31

30

1,81

Tabla 5.2: Resultados obtenidos de pruebas de tiempo A-Star con diferente número de puntos.


Figura 5.10: Relación número de nodos Vs. tiempo para el algoritmo A-Star.








CONCLUSIONES Y RECOMENDACIONES


Las conclusiones son:




  1. Los objetivos propuestos se cumplieron. El API de Google Maps facilitó la creación del repositorio de datos de direcciones domiciliarias geocodificados para el área geográfica definida en el alcance, y utilizando implementaciones previamente propuestas para algoritmos de rutas mínimas fue posible construir un aplicativo web que permite obtener rutas de expreso escolar de óptimas.



  1. El algoritmo TSP utilizado para el agrupamiento de puntos en rutas presentó resultados en los cuales se observa que un punto geográfico que se agrega a un set de datos de direcciones geocodificadas es colocado en la ruta que contiene los puntos más cercanos al mismo.



  1. Los tiempos de respuesta del algoritmo TSP aumentaron rápidamente para un conjunto pequeño de puntos, luego a partir de un conjunto de 10 puntos el tiempo creció pero con una pendiente menor, por lo que la curva que muestra la relación de tiempo vs. el número de nodos en las pruebas que se realizaron en el capítulo 5 se presenta más suavizada a partir de este número de puntos.



  1. El algoritmo A-Star permitió obtener las distancias mínimas de un punto a otro, este algoritmo se aplica para cada punto de la ruta de acuerdo con el orden de visita, los cuales son utilizados luego para graficar estos segmentos de líneas que en su conjunto representan la ruta. Los resultados obtenidos para este algoritmo si representan la distancia mínima de un punto a otro.



  1. Los tiempos de respuesta obtenidos en las pruebas realizadas para el algoritmo A-Star aumentaron rápidamente para un conjunto pequeño de nodos, para luego incrementar de manera más lenta a partir de un conjunto de 10 de puntos. El incremento más lento de tiempo a partir de 10 puntos se debe a que como se cuenta con un mayor número de puntos las rutas generadas corresponden a puntos que se encuentran más próximos entre sí. El aumento rápido de tiempo entre la prueba de 5 y 10 puntos se debe a que para el caso de 5 puntos se genera 1 ruta y corresponden a puntos próximos por lo cual su tiempo de respuesta es de 0,38 segs.; en cambio que para la prueba de 10 puntos se generan 2 rutas, la primera ruta corresponde a puntos próximos en cambio la segunda ruta corresponde a puntos que están más distantes.



  1. En conclusión el tiempo requerido para la generación de rutas, el cual depende de los tiempos de respuesta de los dos algoritmos mencionados sería como valor promedio 0,25 seg por punto. Con este valor se podría considerar cual sería el tiempo de respuesta de la generación de rutas para un conjunto de puntos mayor. Es importante considerar que el proceso de generación de rutas no se realiza siempre, para el caso de una institución educativa es realizado al inicio de un período lectivo y cada vez que nuevas rutas se requieran generar.



  1. La elección de un área geográfica definida para implementar el prototipo fue de gran importancia pues no habría sido posible crear un repositorio de datos de direcciones geocodificadas para toda la ciudad de Guayaquil con los recursos de que se disponían.



  1. Para implementar una aplicación se requiere de mucha más información geográfica tales como: sentido de las calles e información domiciliaria geocodificada de un área más amplia. La obtención de esta información geocodificada para esta área más amplia representaría una inversión de tiempo significativo. En el caso de tener un área geográfica de alcance mayor, los algoritmos de generación de rutas considerados en el presente trabajo podrían ser aplicados ya que los tiempos de respuestas de acuerdo a lo mencionado son aceptables para una aplicación.






Anexos



ANEXO A




Primer ejemplo: Como Incluir un Mapa de Google en tu Página web.

Para insertar un mapa en un sitio web haciendo uso de la API de Google Maps, lo primero que se debe realizar es solicitar una API Key, en la cual se debe especificar en qué URL vamos a utilizar el mapa.

Es recomendable solicitar una API Key para la dirección http://localhost con esta se hacen los ajustes necesarios y una vez que el código esté listo cambiar la API Key por la del sitio en Internet para publicar la página.

A continuación se pone una muestra del código que permite colocar un mapa de Google en un sitio web. Es importante destacar que se debe remplazar el texto resaltado en el código: COLOCAR_AQUI_NUESTRA_KEY por el API Key, para que funcione correctamente.



"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">



EjemploApi Google Maps



1   2   3   4   5   6   7   8   9   10


La base de datos está protegida por derechos de autor ©bazica.org 2016
enviar mensaje

    Página principal