sábado, 3 de septiembre de 2016

Revisión de topologías en ArcGIS

Después del parón estival, es hora de volver a la carga con energías renovadas y con la mochila cargada de ideas y esperando que las sucesivas entradas os resulten útiles... 

Como vimos en la entrada anterior es relativamente fácil localizar los distintos errores topológicos que pueden presentar nuestras capas de datos, bien sean colgantes, líneas coincidente, lazos, etc. Lo que no es tan fácil (o por lo menos tan inmediato) es solucionar estos errores de una manera relativamente automática, o por lo menos de una forma no muy tediosa. 

En el ejemplo que tratamos en la entrada anterior el problema consistía en que teníamos una capa lineal que definía el perímetro de los edificios, y a partir de ella queríamos generar una capa poligonal, pero al utilizar la herramienta “Feature to Polygon” en ArcMap nos encontramos con que muchas de esas líneas no están cerradas y por ello el programa no nos genera el recinto correspondiente. Utilizando la herramienta de creación de topología encontraremos los errores que no nos permiten crear los polígonos.

Una manera de arreglarlos, es armarnos de paciencia y recorrer toda la extensión del mapa editando y solucionándolos uno a uno. Esta solución, que en muchas ocasiones es la única viable, es sin duda la más tediosa de todas, por no decir que la más lenta, lo cual se traduce en la más cara.

ArcGIS presenta una serie de herramientas que permiten solucionar estos errores de una manera semiatomatica. 

  • La primera sería “Planarize Lines”. Esta herramienta es muy útil para pequeños errores y cuando el volumen de datos es relativamente pequeño. La forma de proceder seria la siguiente: una vez tengamos cargada la capa de datos y la de errores topológicos, comenzamos una sesión de edición, seleccionamos la línea que esté abierta y pulsamos en “Planarize Lines”, situada en la barra de herramientas de Topología. Si la distancia entre las líneas no es muy grande posiblemente  el error se solucione de una manera satisfactoria.
    Como se ha dicho esta herramienta funciona bien cuando la distancia es corta, porque aunque podamos modificar la tolerancia todo lo que queramos, cuanto mayor sea ésta, más impredecible es el resultado. 
    Esta herramienta también presenta otro problema cuando estamos utilizando equipos no demasiado potentes, ya que si tenemos un gran volumen de datos, el proceso es muy lento y en muchas ocasiones puede incluso echarnos del programa, con lo que ello implica (perdida de datos no guardados e incluso ficheros corruptos). Además para ejecutarla tenemos que iniciar una sesión de edición, seleccionar todos los datos y ejecutarla con la pérdida de tiempo que ello conlleva.
  • El siguiente paso lógico a seguir sería utilizar la herramienta “Error Inspector” para ver una lista de los errores que aun nos siguen quedando después de pasar la herramienta anterior.
    En ella podemos ver el número de errores totales que nos quedan por revisar, y el tipo de error que son. Además podemos ir seleccionando uno a uno para analizarlos individualmente y solucionarlos según consideremos. Para ello seleccionaremos el error en cuestión (pasará a ponerse de color negro) con la herramienta   “Fix Topology Error Tool” y con el botón derecho desplegamos el menú contextual
    Aquí tenemos varias opciones (que dependen del tipo de error y de la regla topológica que se viole) desde alargar las líneas a cortarlas, e incluso podemos decidir no solucionar el error y marcarlo como una excepción. Esta es la manera más ordenada de corregir los errores pero no es la más rápida ya que tendríamos que ir revisando los errores uno por uno, pero en muchas ocasiones no nos quedará más remedio que operar de esta manera.
  • Una manera alternativa para solucionar ciertos errores, no es una nueva utilidad de las versiones más recientes de ArcGIS, al contrario es un comando que estaba implementada en las primeras versiones de ArcInfo. Esta es el comando  CLEAN, el problema es que solo se puede realizar sobre coberturas, así que tendríamos que pasar previamente los datos a este formato que por cierto es poco usado en la actualidad. Para más información sigue el siguiente enlace: http://books.google.es/books?id=ufQOAQAAIAAJ&pg=PP17&lpg=PP17&dq=clean
En definitiva ArcGIS ofrece multitud de métodos para realizar una revisión de los posibles errores topológicos presentes en nuestros ficheros de trabajo, pero como hemos podido ver no todas son lo suficientemente efectivas o rápidas como nos gustaría, en la mayoría de los casos no nos quedará otra solución que hacer una edición manual de los datos para solventar los errores, sin embargo existen alternativas que permiten optimizar el trabajo previamente a ésta edición manual.

jueves, 23 de junio de 2016

Creación de topologías en ArcGIS

La capacidad de realizar análisis topológicos, es una de las piedras angulares en los Sistemas de Información Geográfica, y que entre otras cosas, lo diferencia de programas de Diseño Asistido por Ordenador (CAD).

La topología (geoespacial en este caso) dentro de un GIS se podría definir como las relaciones espaciales entre las distintas entidades geométricas de los elementos de nuestro proyecto. Estas relaciones son por ejemplo; vecindad, proximidad, superposición, etc. 

Estas propiedades tienen una gran relevancia en el estudio de elementos con una componente espacial, por ejemplo, para determinar las distancias entre elementos que han de interactuar entre ellos (la distancia entre una estación de bomberos y una fábrica de productos inflamables). A lo largo de los años los SIG han desarrollado y mejorado la capacidad de análisis basadas en la topología. 

Muchos de los problemas que nos encontramos a la hora de trabajar con datos vectoriales de distintos formatos, es la falta de consistencia topológica que presentan. En muchos casos esto se debe a que en su origen estos no fueron concebidos pensando en sus relaciones espaciales sino como una mera representación de la realidad geográfica de una determinada zona. En otras muchas ocasiones la conversión de formatos entre distintas plataformas genera este tipo de inconsistencias que nos pueden generar más de un quebradero de cabeza. Un caso habitual es intentar crear un shape poligonal, a partir de uno lineal y ver que de los 5000 polígonos esperados solo tenemos 1000.

ArcGis ofrece distintas herramientas para identificar, y en algunos casos subsanar dichos problemas. Evidentemente el primer paso para solventar este tipo de situaciones es localizar los errores, para ello lo primero que tendremos que hacer es migrar los datos en cuestión dentro de un Feature Dataset, que a su vez estará dentro de una Geodatabase. La forma mas cómodo para hacerlo es creando en ArcCatalog la geodatabase y dentro ella el Feature Dataset, y dentro de este, importar el fichero en cuestión.




En este punto estamos en disposición de comenzar a generar la topología para dicha capa. Lógicamente hemos de saber cuáles son nuestras necesidades ya que tendremos que definir ciertas reglas topológicas, por ello antes de nada tendremos que analizar cuáles son los problemas que se nos presentan. En el ejemplo anterior posiblemente el error esté en que la capa lineal no está correctamente cerrada (o por lo menos no dentro de la tolerancia permitida). Para localizar dichos errores tendríamos que indicar dentro de la topología que tuviese en cuenta esta incidencia. Para ello ArcGis ofrece una serie de reglas topológicas, como por ejemplo la detección de colgantes, que en nuestro ejemplo sería la que nos sería de utilidad. Para añadir una (o varias) reglas topológicas dentro de nuestra geodatabase simplemente tendremos que desplegar el menu con el botón derecho del ratón y marcar la opción “New - Topology” 


Una vez aquí solo tendremos que ir siguiendo al asistente para definir el nombre de la topología , la tolerancia de la misma, la capa sobre la que será aplicada y por último la regla topológica concreta que vamos a aplicar, en nuestro caso “Must not have dangles”


Entonces el programa creara las relaciones especificadas, y nos preguntara si queremos validarla, le decimos que si y veremos como aparece una nueva capa dentro de nuestra Geodatabase. En este punto ya podremos conocer la magnitud de nuestro problema, ya que mirando las propiedades de la nueva capa, y pinchando en “Generate Summary”, podremos ver el número de elementos que incumplen la(s) regla(s) topológica(s) definidas.


Una vez llegados a este punto el siguiente paso lógico sería solucionar estos errores, a ser posible de la manera más automática que se pueda, y como veremos más adelante esto no siempre es fácil. 

Por supuesto ArcGIS ofrece múltiples formas de eliminar colgantes, pero en ocasiones (por lo menos a mi entender) no siempre es la más óptima, tanto en tiempos de procesos como en la calidad del resultado. 




sábado, 4 de junio de 2016

Creación de un MDT con ArcGIS. (Continuación)

Como vimos en la entrada anterior la creación de un MDT a partir de un archivo vectorial del formato que sea es relativamente fácil de realizar en ArcGIS, pero como tantos otros procesos en un GIS se puede hacer de muchas maneras. 

Esta otra forma de realizar un modelo digital de elevaciones es un poco más complicada, pero sin duda es más precisa que la anterior. 

Supongamos nuevamente que tenemos como fichero de origen un fichero DGN, el cual tiene definidas las entidades que la componen no solo por niveles (lo que en AutoCAD serían Layers), sino también por un vínculo a una BBDD que nos da un número que hace referencia al tipo de elemento que nos encontramos. Los que hayan utilizado MicroStation GeoGraphics sabrán de lo que hablo, para los que no, simplemente tendrán que cargar el fichero en ArcGIS, y abrir la tabla de atributos y entre las múltiples columnas verán una llamada MsLink-ODBC que hace referencia al vínculo que tenía ese elemento con la BBDD que definía el tipo de entidad.


Con este campo podremos conocer el tipo de entidad al que nos enfrentamos (por supuesto siempre que tengamos la correspondencia entre el número y la entidad geográfica a la que hace referencia, que estará definido en la BBDD a la que el fichero .dgn estaba vinculado). De esta manera podremos separar cada elemento para la posterior generación del MDT.

El paso siguiente será hacer la extracción de los elementos según este MSlink, para ello tendremos que reflexionar sobre qué elementos nos pueden ser útiles, y realmente pueden definir un MDT, ya que por ejemplo las líneas de los edificios o alambradas son elementos que cuando se restituyen no tienen cota terreno, y no han de ser tenidos en cuenta para este propósito.

Después de examinar todos los elementos, ya tendremos una lista de todos los MSlink que vamos a utilizar para generar nuestro MDT, ahora podemos operar de dos maneras, o bien separar los ficheros en el de origen (posiblemente para los que estén acostumbrados a trabajar con Microstation Geographics, será más rápido de esta manera), o hacerlo en ArcGIS. Aquí lo haremos en ArcGIS para no tener que depender de ningún otro Software externo para realizar el proceso completo.

Así pues, cargamos en ArcGIS el fichero inicial (en este caso al abrirlo veremos que como con los ficheros .dwg el programa los separa según el tipo de elemento), en nuestro caso será suficiente con el fichero de puntos y de polilineas


Haremos una selección por atributos de cada MSlink (este sería un buen ejemplo para crear una herramienta en Model Builder si tuviésemos que repetir este proceso en distintos ficheros) y la exportamos a un shape con el nombre de la entidad.



El resultado sería algo de este estilo, dependiendo del número de entidades que se utilicen para crear el MDT:



En ArcToolBox seleccionamos la herramienta Topo to Raster y añadimos los diferentes shapes de la siguiente forma:



El resto de valores los podemos dejar como aparecen por defecto, lo único que hay que definir es el “Type” ya que dependiendo del tipo que le asignemos, la interpolación que realizará ArcGIS será distinta. Es aquí donde reside la mayor diferencia con respecto al método anterior, ya que asignando un tipo más apropiado de interpolación, dependiendo de la entidad considerada, el resultado será más preciso.



Y a este le aplicaremos la herramienta Raster to Tin para crear el TIN, si es el tipo de archivo de salida que necesitamos.



sábado, 21 de mayo de 2016

Creación de un MDT con ArcGIS.


Los MDT o MDE (DTM o DEM en inglés) son una representación en 3D de la superficie de un terreno o de un planeta, creada a partir de los datos de altitud del terreno. Los modelos digitales del terreno pueden tener muchos usos, como por ejemplo creación de mapas de pendientes, de radiación solar… y a partir de estos se pueden realizar otros análisis derivados, para crear mapas temáticos de diversa índole: erodabilidad, planeamiento de zonas cultivables, riesgos de inundaciones, etc. Un MDT puede representar también otras superficies como por ejemplo el conjunto de niveles piezometricos de un acuífero, o el contacto entre dos litologías diferentes.

La manera de crear un MDT es muy variada dependiendo del software que utilicemos, y del tipo de MDT que necesitemos, ya que estos pueden ser de muchos tipos, principalmente diferenciados por el formato de los datos. Así podemos clasificar los MDT (esta es una clasificación mía, y para nada exhaustiva) en : MDT raster, MDT vectorial y MDT númerico.

ArcGIS nos permite crearlos de cualquiera de los tipos antes mencionados y pasar de uno a otro con relativa facilidad.
  
Evidentemente la calidad del MDT puede variar mucho, y depende de diversos factores como por ejemplo: la calidad y cantidad de los datos de partida, el proceso utilizado para la creación, el formato de salida requerido, el propósito del mismo y la escala…

Respecto a esto último, ArcGIS nos da la opción de crear un MDT modificando estos parámetros, ya que muchas veces tendremos que elegir entre la calidad del modelo, y por ejemplo, el peso del fichero de salida (puede ser que necesitemos ficheros de pocos megas para hacer más fluida su utilización en un servicio web, o para su posterior uso con herramientas de geoprocesamiento).

Así pues la primera forma que vamos a ver para crear un MDT es con la herramienta Create TIN. Un TIN (Triangles Irregular Network) es un tipo de modelo digital del terreno que se forma a partir de un conjunto de puntos, en los que se conoce la elevación, y con ellos se traza un conjunto de triángulos, formados por tripletas de puntos cercanos no colineales, formando un mosaico.Para ello el programa descompone los elementos no puntuales del mapa en puntos y a partir del valor de la coordenada vertical crea el MDT. 

Una de las ventajas de este tipo de modelo es que nos da una rápida visión del tipo de superficie que tenemos para hacer un análisis no exhaustivo del terreno en cuestión. Así pues a partir de un fichero vectorial del formato que sea (siempre que lo podamos abrir en ArcGis)  y siempre que este tenga definidas las elevaciones internamente, podemos crear un MDT de una manera muy sencilla. 

Como se ve en la imagen nos permite definir varios ficheros de entrada, y de cada uno de ellos la interpolación que queremos aplicar. En nuestro caso el fichero de entrada es un único  fichero .dgn de Microstation y en el todos los elementos son susceptibles de crear el MDT, ya que son elementos que definen la orografía del terreno, como por ejemplo, cauces, carreteras y por supuesto los elementos de restitución como curvas de nivel y puntos de cota. 

El problema al crear un MDT con un único fichero de entrada es que la interpolación que realiza el programa es la misma para todos los elementos, cuando lo más correcto sería  tratarlos de manera individualizada. Por ejemplo un lago se tendría que representar en el MDT como una superficie completamente plana, y utilizando este método puede ser que no resulte así. 

Así pues, si buscamos una representación más detallada de nuestro modelo, necesitaríamos hacer un procesado previo de los datos de origen para descomponerlos en entidades del mismo tipo, y así procesarlos individualmente de una manera más optima.








domingo, 8 de mayo de 2016

La Gestión de la Información. Factores limitantes.

Muy a menudo, cuando se intenta instaurar una política de gestión de activos en una empresa, es habitual encontrarse multitud de problemas y situaciones, que harán más complicada la implantación de ésta, de lo teóricamente previsto.

Estos factores limitantes afectaran en mayor o menor medida a todas las actividades que se requieren para desarrollar una correcta gestión de los activos físicos de nuestra empresa. En este caso y como era de esperar nos centraremos en los que dificultan las actividades relacionadas con la gestión de la información, y los efectos que estos pueden tener sobre el global de la estrategia.

  • Fragmentación de la información. Uno de los problemas más habituales en las empresas que gestionan un gran volumen de datos, y están compuestas por diferentes departamentos o secciones, es la falta de coordinación en las políticas de gestión de la información. Es cierto que cada departamento o sección tiene unas necesidades distintas en cuanto a los datos que gestionan o necesitan, aun refiriéndonos al mismo activo. Es necesario, pues,  definir en este punto la información disponible, y buscar una estrategia para unificarla en un único sistema, que satisfaga en gran medida las necesidades de todas las partes implicadas en el proceso, para evitar así duplicidad e inconsistencia en la información actual, y la que se vaya a recopilar en un el futuro.
  • Resistencia al cambio. Otro factor importante a la hora de implementar un sistema de gestión de activos eficiente, es la resistencia al cambio de las personas o departamentos que han de utilizar o mantener el sistema. Esta resistencia al cambio puede ser de diversos tipos y estar originada por distintas causas, pero en definitiva afecta al conjunto de la estrategia, dificultando su implementación, y en el peor de los casos haciéndola inviable.
  • Sistema poco eficiente. En ocasiones el sistema elegido para la gestión de la información de nuestros activos no es el más apropiado, esto se soluciona haciendo un estudio detallado inicial de las necesidades, tanto presentes como futuras del negocio, para elegir un sistema apropiado, que no necesariamente tiene por qué ser el más moderno e innovador del mercado. 
  • Sistema no utilizado. En ocasiones el problema es la no utilización del sistema disponible, bien por desconocimiento o falta de formación, bien como una consecuencia de la resistencia al cambio. Las estrategias de difusión y promoción dentro de la empresa del sistema es una parte fundamental para alcanzar el nivel de uso deseado, y ésta, en gran medida, ha de ser promocionada por la directiva de la empresa.
  • Sistema no apropiado para el negocio. En ocasiones la elección del sistema no es la adecuada, y esto puede ser por diversos motivos, pero uno de los principales es la falta de comunicación entre departamentos en las fases iniciales del proyecto. Es necesaria una coordinación inicial entre todos los usuarios del sistema, para conocer las necesidades y expectativas de cada uno de ellos. Una adecuada actuación en esta fase es beneficiosa además para conseguir involucrar de una manera más efectiva a las distintas secciones de nuestra empresa, y mitigar en cierta medida la resistencia al cambio.
  • Sistema no accesible. Esto sucede por ejemplo cuando una importante cantidad de datos se adquieren en las tareas diarias de operación y mantenimiento. Los encargados de realizar estas tareas han de estar equipados con dispositivos adaptados a sus necesidades que permitan realizar la toma de datos de una manera eficiente y sencilla. 
  • Sistema no actualizado. Es muy habitual encontrarse con un sistema correctamente implementado, con la capacidad de soportar y gestionar de una manera apropiada la información de nuestros activos, pero por diferentes motivos la información está incompleta o desactualizada. En este caso la estrategia ha de centrarse en la toma de datos para recabar la información necesaria, y adecuada para actualizar nuestro sistema. En este sentido es necesario definir en las fases iniciales la información que queremos adquirir y en el formato que la queremos adquirir, para poder gestionarla e integrarla de una manera eficiente en nuestro registro
  • Sistema difícil de actualizar. Un exceso de celo en la verificación de la procedencia y veracidad de la información, incluyendo los trámites burocráticos relacionados, suelen ser factores que afectan de una manera negativa en el proceso de actualización de la base de datos de activos de una empresa. Encontrar una manera más eficiente, sin renunciar a la calidad de la información, es otro punto fundamental para conseguir una estrategias de gestión de la información apropiada y efectiva.





sábado, 23 de abril de 2016

Gestión de la Información.

Una gestión de la información adecuada, no solo desde el punto de vista de la gestión de activos, sino desde una perspectiva más general, es siempre beneficiosa para nuestro negocio y nos permitirá tomar medidas  adecuadas a nuestras necesidades, por supuesto la información geoespacial no es una excepción.

Sin embargo, una buena estrategia de gestión de la información, no significa necesariamente, que tengamos que poseer un conocimiento exhaustivo del total de nuestros activos, de hecho, ésto es muy poco habitual, y por lo general, el coste económico para alcanzar este objetivo, está fuera del alcance de cualquier empresa, y por lo general se podría considerar una mala práctica para el negocio.

Por ejemplo, imaginemos que nuestra compañía se dedica a la distribución de agua para consumo humano. Tenemos una planta desaladora y dos localidades a las que abastecer. La primera está junto a la desaladora y la segunda, a unos 50 km. Sabemos que la información almacenada en nuestro GIS de la localidad más cercana es bastante completa y precisa. Sin embargo, la otra localidad, incluyendo la línea de conexión no está registrada en nuestro sistema. En total se estima que representa un 70% del total de nuestra red.

A primera vista se podría decir que el conocimiento de nuestra red es bastante pobre, y realmente lo es, pero si en lugar de aplicar un enfoque clásico, lo hacemos desde el punto de vista de la gestión de activos físicos, hay más factores a tener en cuenta que los meramente estadísticos.

Estudiando más a fondo el ejemplo, la localidad más alejada resulta ser una zona de viviendas unifamiliares, usadas mayormente durante fines de semana y vacaciones. Por el contrario la ciudad cercana a la planta, está compuesta por edificios de varias alturas, y su ocupación es elevada a lo largo de todo el año.
Es aquí donde entran en juego la criticidad, la priorización, el análisis de riesgos y el análisis de coste-beneficio.

Lo primero que nos tendremos que preguntar ante una situación como la descrita arriba, es, si la falta de información realmente supone una gran pérdida, en el sentido más amplio de la palabra, para la compañía, o si por el contrario es ¨algo¨ con lo que podemos vivir. Para ello, y aplicando una buena estrategia de gestión de activos, tendremos que analizar y clasificar los elementos de nuestra red, teniendo en cuenta diversos factores, para establecer así que activos son más "importantes" (priorización) basándonos en las consecuencias ocasionadas por una falta de suministro (análisis de riesgo y criticidad).

En base a lo anterior, es momento ahora de plantearse si la falta de información en nuestro sistema, necesita ser solucionada, y si el coste económico de hacerlo aporta beneficios suficientes (del tipo que sean), o por el contrario, podemos asumir el riesgo de no hacerlo.

Siguiendo con el ejemplo anterior, imaginemos ahora que en la localidad más alejada, se está construyendo un hospital que estará conectado a nuestra red de abastecimiento, en este caso nos tendremos que replantear nuevamente nuestra estrategia, ya que en este caso la criticidad de nuestro activos se verá afectada, y por lo tanto la priorización de los activos tendrá que ser revisada.

Así pues la falta de información, no es necesariamente algo que tengamos que subsanar inmediatamente, primero tendremos que evaluar si realmente la necesitamos para gestionar de una manera eficiente nuestros activos.




sábado, 16 de abril de 2016

Modelos con FME

Siguiendo con la entrada anterior, me gustaría introducir en este caso un Software que complementa, y en muchas ocasiones aporta nuevas funcionalidades a ArcGIS (no en vano, éste, está integrado dentro de la extensión Data Interoperability del Software de la casa ESRI).

Este programa se engloba dentro de los procesos conocidos como ETL (Extract, Transform and Load o extraer, transformar y cargar), que permiten exportar, importar, analizar y limpiar datos entre distintos formatos y/o plataformas.

FME, software desarrollado por la casa Safe Software, es una fantástica herramienta ETL mayormente centrada en la manipulación de información geoespacial. Aparte de la multitud de formatos admitidos y transformadores que posee el programa, otro gran punto a su favor es la facilidad a la hora de crear modelos o herramientas, en parte gracias a su interface sencilla e intuitiva.

Así pues, es posible crear modelos como el que presentamos anteriormente en Model Builder sin la necesidad del uso de ArcGIS. Igual que comparábamos ModelBuilder con  una especie de lenguaje programación a alto nivel, FME permite aún más funcionalidades que el módulo de ArcGIS, y siguiendo con la analogía, se podría decir que tiene muchas más clases y métodos con los que implementar nuestro programa, ofreciéndonos así   una gama mucho más amplia de posibilidades.

A grandes rasgos el funcionamiento del programa es el siguiente: Tenemos un dato (o conjunto de datos) de entrada, a los cuales les aplicaremos uno (o varios) procesos, llamados transformadores, que arrojaran como resultado uno o varios ficheros de salida. Así por ejemplo, teniendo un fichero en formato DWG de líneas que representan el contorno de las fincas rústicas de un municipio, necesitamos como resultado un fichero en formato SHP poligonal. En el programa indicaremos el fichero de entrada “Reader” que será el fichero en formato DWG, el transformador apropiado, en este caso “AreaBuilder” y por último definiremos el formato del fichero de salida o “Writer”


Otra gran ventaja del programa es que permite manejar una amplia multitud de formatos tanto GIS y CAD como otros formatos tabulares, archivos Excel y Bases de Datos por ejemplo. Así pues podremos realizar uniones entre tablas de una base de datos Oracle y un shapefile de una manera muy sencilla y eficiente.

En futuras entradas se presentaran varios ejemplos desarrollados, tanto en ArcGIS como en FME, y se intentará evaluar cuál de los dos métodos es más eficiente, tanto en el proceso de elaboración, como a los resultados arrojados.