GeoCoder para CartoCiudad

Moya Honduvilla, Iván (2017). GeoCoder para CartoCiudad. Proyecto Fin de Carrera / Trabajo Fin de Grado, E.T.S.I. de Sistemas Informáticos (UPM), Madrid.

Descripción

Título: GeoCoder para CartoCiudad
Autor/es:
  • Moya Honduvilla, Iván
Director/es:
  • Manso Callejo, Miguel Ángel
Tipo de Documento: Proyecto Fin de Carrera/Grado
Fecha: Junio 2017
Materias:
Escuela: E.T.S.I. de Sistemas Informáticos (UPM)
Departamento: Otro
Licencias Creative Commons: Reconocimiento - Sin obra derivada - No comercial

Texto completo

[img]
Vista Previa
PDF (Document Portable Format) - Se necesita un visor de ficheros PDF, como GSview, Xpdf o Adobe Acrobat Reader
Descargar (15MB) | Vista Previa

Resumen

Una de las principales necesidades de los usuarios de la Cartografía en la Web, además de poder navegar sobre ella: cambiar de escala, desplazarse, seleccionar una región,… es localizar en el mapa una determinada dirección postal o nombre de lugar bien conocido. Para que los usuarios de distintas aplicaciones y entornos puedan consultar la localización geográfica en forma de coordenadas de una determinada dirección existen varios servicios denominados geocoder. Las grandes compañías como Google, Bing, Yahoo, Esri y otras iniciativas empresariales o proyectos como Open Street Map (OSM) también ofrecen este servicio a partir de las bases de datos en las que se almacenan las coordenadas de los números de policía (portales) o de los puntos kilomé-tricos de los distintos viales. El servicio de geocodificación hace el mejor esfuerzo posible para entregar al usuario una o varias soluciones a su problema en base a la información no estructurada de la dirección postal. Cada proveedor de servicio define su propia API no estandarizada y utiliza su propia base de datos. Este Proyecto Fin de Carrera presenta las adaptaciones y los desarrollos realizados para imple-mentar un Servicio Web de Procesamiento (WPS) que ofrezca un algoritmo/proceso de geoco-dificación para CartoCiudad basándose en los proyectos Open Source: 52North WPS y Geoco-der-TIGER PostGIS. CartoCiudad es una iniciativa estatal liderada por el Instituto Geográfico Nacional (IGN) que se materializa en una Base de Datos Oficial de la red viaria, con estructura topológica de un Sistema de Información Geográfico (SIG), que permite la navegación continua a pie por todo el territorio español que además contiene la división administrativa censal y postal en polígonos. El desarrollo se basa en el código abierto, escrito en PL/PgSQL para el Sistema Gestor de Bases de Datos (SGBD) PostgreSQL que utiliza las funciones del módulo PostGIS, para geocodificar la base de datos TIGER del U.S. Bureau. La metodología empleada en la adaptación de TIGER a CartoCiudad, parte del análisis del modelo de datos de ambas bases de datos, la identificación de las entidades equivalentes y, la traducción de las equivalencias al lenguaje procedural PL/pgSQL. La siguiente fase, consiste en la traducción de las funciones en PL/pgSQL para Post-GIS, al lenguaje de programación PL/SQL para Oracle. En este paso, se identifican las diferencias entre ambos lenguajes, y se aplica su traducción. Asimismo, se identifican las funciones espacia-les para PostGIS y se busca su equivalencia para Oracle Spatial. En todo el proceso se toma como referencia la documentación aportada por ambos SGBD (PostgreSQL y Oracle). Una vez adapta-dos los desarrollos se ha abordado la optimización de la velocidad de respuesta, indexando ade-cuadamente los atributos utilizados en la geocodificación. También se ha asociado los viales con los códigos postales mediante una relación N:M, dado que el modelo de datos CartoCiudad no proporciona ésta relación y las funciones espaciales son costosas en tiempo de ejecución. Con la inclusión una nueva tabla redundante, y por tanto, con un modelo de bases de datos desnor-malizado, se propone un modelo de datos sin normalizar, justificado debidamente, para optimi-zar las búsquedas. El algoritmo de geocodificación, busca maximizar el porcentaje de acierto en las respuestas, proporcionando tolerancia a errores tipográficos en los valores de entrada y dotando de capa-cidad para resolver ambigüedades en ciertas búsquedas. Para ello, se emplea una búsqueda difusa con función heurística de calidad, de tal modo que en caso de no poder satisfacer una búsqueda exacta, proporciona al usuario una lista de posiciones asociadas a una dirección, or-denadas decrecientemente por el grado de coincidencia informado por la función heurística, junto a la correspondiente dirección normalizada. En la búsqueda difusa se emplea un algoritmo fonético, de modo que alternativamente se buscarán direcciones similares por su pronunciación. Para facilitar su utilización en un entorno de Infraestructura de Datos Espaciales (IDE) que persigue la interoperabilidad de los sistemas, se ha propuesto la integración del desarrollo (basado fundamentalmente en los SGBD), en un WPS conforme con la especificación 05-007r7 del Open Geospatial Consortium (OGC). En la implementación de esta capa se ha utilizado el framework desarrollado en Java por 52°North WPS, versión 3.6.2 ABSTRACT One of the main needs of users of Cartography on the Web, besides being able to navigate about it: change of scale, scroll, select a bounding box, ... is to locate on the map a certain postal address or well-known place name. In order for users of different applications and environments to consult the geographic location in the form of coordinates of a given address there are several services called geocoder. Large companies like Google, Bing, Yahoo, ESRI and other business initiatives or projects like Open Street Map (OSM) also offer this service from the databases in which are stored the coordinates of building numbers or the kilometers of the different roads. The geocoding service makes the best effort to provide the user with one or more solutions to their problem based on unstructured postal address information. Each service provider defines its own non-standard API and uses its own database. This End-of-Course Project presents the adaptations and developments made to implement a Web Processing Service (WPS) that offers a geocoding algorithm/process for CartoCiudad based on the Open Source projects: 52North WPS and Geocoder-TIGER PostGIS. CartoCiudad is a state initiative led by the Instituto Geográfico Nacional (IGN), which is material-ized in an official database of the road network, with a topological structure of a Geographic Information System (GIS), which allows continuous navigation on foot throughout The Spanish territory that also contains the census administrative division and zip code polygons. The development is based on open source, written in PL/PgSQL for the PostgreSQL Database Management System (DBMS) that uses the functions of the PostGIS module, to geocode the U.S. Bureau's TIGER database. The methodology used in the adaptation of TIGER to CartoCiudad, part of the analysis of the data model of both databases, the identification of equivalent entities and the translation of equivalences to the PL/pgSQL procedural language. The next phase con-sists of the translation of functions in PL/pgSQL for PostGIS, to the PL/SQL programming lan-guage for Oracle. In this step, the differences between the two languages are identified, and their translation is applied. Likewise, the spatial functions for PostGIS are identified and their equivalence is sought for Oracle Spatial. Throughout the process reference is made to the doc-umentation provided by both DBMS (PostgreSQL and Oracle). Once the developments have been adapted, the optimization of response speed has been approached, adequately indexing the attributes used in the geocoding. It has also been associated with the postal codes through a N:M relationship, since the data model CartoCiudad does not provide this relationship and spatial functions are costly at runtime. With the inclusion of a new redundant table, and there-fore, with a denormalized database model, a duly justified, non-normalized data model is proposed to optimize the searches. The geocoding algorithm seeks to maximize the percentage of accuracy in the responses, providing tolerance for typographical errors in the input values and providing the ability to solve ambiguities in certain searches. For this, a fuzzy search with a heuristic quality function is used, so that if it cannot satisfy an exact search, it provides the user with a list of positions associated to an address, decremented by the degree of coincidence reported by the Heuristic function, next to the corresponding normalized direction. In the fuzzy search, a phonetic algorithm is used, so that similar directions will be searched for by pronunciation. In order to facilitate its use in a Spatial Data Infrastructure (SDI) environment that seeks the in-teroperability of the systems, it has been proposed the integration of the development (based mainly on the DBMS), in a WPS according to the specification 05-007r7 of the Open Geospatial Consortium (OGC). In the implementation of this layer has been used the framework developed in Java by 52 ° North WPS, version 3.6.2.

Más información

ID de Registro: 47747
Identificador DC: http://oa.upm.es/47747/
Identificador OAI: oai:oa.upm.es:47747
Depositado por: Biblioteca Universitaria Campus Sur
Depositado el: 14 Sep 2017 07:15
Ultima Modificación: 14 Sep 2017 07:15
  • Open Access
  • Open Access
  • Sherpa-Romeo
    Compruebe si la revista anglosajona en la que ha publicado un artículo permite también su publicación en abierto.
  • Dulcinea
    Compruebe si la revista española en la que ha publicado un artículo permite también su publicación en abierto.
  • Recolecta
  • e-ciencia
  • Observatorio I+D+i UPM
  • OpenCourseWare UPM