Definir el Escenario

Tras crear un proyecto y añadirle datos, estamos preparados para definir las restricciones que afectan a la posición y la ruta de nuestra infraestructura. Estas restricciones se incluyen en el concepto de Escenario.

Nota

Los usuarios con un rol de administrador o editor pueden definir nuevos escenarios o modificar los que ya existen. Sin embargo, los usuarios de tipo visor solo pueden acceder a escenarios compartidos. No pueden crear nuevos ni modificar ninguno de ellos.

En esta sección puede seguir uno de nuestros videotutoriales:

Variables de un Escenario

Un escenario incluye los siguiente elementos variables:

  • Restricciones definidas por los datos:

    • Valores de resistencia asignados a las capas. Define la importancia relativa de cada elemento espacial para determinar el coste/beneficio de que la infraestructura pase o se localice en esa posición, evitando incluso esa posibilidad.

    • Pesos asignados por categoría. Estos valores multiplican las resistencias de las capas que pertenecen a la categoría. Se utilizan para cambiar fácilmente la importancia relativa de los grupos de capas con una temática común.

      Por ejemplo, las restricciones ambientales pueden considerarse muy importantes en un escenario, así que el peso de la categoría «Ambiental» puede incrementarse sin tener que cambiar la resistencia individual de cada una de sus capas.

  • Puntos clave:

    • Opcionalmente, cada escenario puede tener sus propios Puntos de Inicio y Final. Cuando están definidos serán utilizados en lugar de los puntos del proyecto. Una posible aplicación es crear escenarios para evaluar diferentes lugares de conexión.

    • Opcionalmente pueden añadirse puntos intermedios, una lista ordenada de posiciones para forzar a que la ruta de la infraestructura pase por localizaciones concretas, en el orden deseado.

  • Opciones de la ruta y torres:

    • Algoritmo de enrutamiento y sus opciones. Existen diferentes algoritmos para el cálculo de la ruta, con diferentes opciones.

    • Parámetros para el cálculo de coste. Cada escenario puede utilizar un factor diferente para el cálculo del coste monetario de las rutas óptimas.

    • Tipo de torre y rango de distancias. El usuario puede escoger el tipo de torre que se usará en el escenario y sus distancias de separación mínima y máxima.

En la siguiente sección se describen estos elementos con más detalle.

Nota

Cada usuario dispone de sus propios escenarios. Los valores y opciones asignados por un usuario no se comparten automáticamente con otros. Si desea compartir escenarios con otros usuarios, consulte la ayuda sobre gestionar escenarios.

Restricciones Definidas por los Datos

Los métodos de optimización de Pathfinder calculan un valor de coste o resistencia en cada localización. La fuente principal de este coste es la información que proporcionan las capas del proyecto. Cada capa tiene un o más valores de resistencia, que resultan multiplicados por el peso de su categoría.

Nota

Las resistencias de las capas tienen por defecto un valor 0 y todas las categorías un peso inicial de 1, de manera que el coste total es uniformemente nulo y la posición de la infraestructura o la ruta no está restringida. Es necesario asignar valores de resistencia para obtener resultados con sentido.*

Asignación Simple de Resistencias

La forma más sencilla de introducir restricciones basadas en los datos es asignar valores enteros de resistencias. Por defecto, este valor se debe limitar al rango (-3, +3), donde +3 representa la resistencia más alta. Veremos más adelante cómo modificar este rango.

_images/resistanceTable.jpg

Cuando una capa vectorial está en el modo por defecto de Asignar Valor (AV), el valor de resistencia puede asignarse con el campo de texto junto al nombre de la capa:

_images/resistanceValue.jpg

Por conveniencia, si queremos asignar rápidamente el mismo valor a todas las capas de una categoría, podemos hacerlo mediante el panel lateral de la categoría:

_images/categoryPanelBtn.jpg

_images/categoryPanel.jpg

Además de un valor constante, es posible asignar dos valores especiales:

  • Prohibido/Forbidden (FB): este valor fuerza a que el área definida por la capa sea excluída de la localización de la infraestructura. En otras palabras, la infraestructura no puede estar o cruzar este área. Más detalles en la página de algoritmos.

  • No Considerado (NC): esta opción deshabilita la capa en el análisis sin borrarla del proyecto (quizás porque sí queremos considerarla en un escenario diferente).

Los mismos valores, así como la opción Por Anillo/Per Ring (PR) para datos vectoriales (ver la siguente sección), pueden asignarse a las capas individuales utilizando su panel lateral.

Nota

El valor Prohibido (FB) no se recomienda para elementos lineales muy largos como carreteras o ríos, ya que pueden restingir en exceso la búsqueda del camino óptimo. Es preferible utilizar un valor alto de resistencia en su lugar. Sí se pueden usar sin problema los valores FB para área o elementos localizados como masas de agua, asentamientos, etc..

Nota

El valor No Considerado (NC) es útil para incluir datos de referencia en el proyecto, como límites administrativos, que no intervienen en la optimización, pero son de utilidad en la visualización.

Vectores: Resistencias Por Anillo

En las capas vectoriales, podemos utilizar diferentes anillos para definir la influencia de los objetos más allá de sus fronteras originales. Por ejemplo, probablemente no queremos que una infraestructura atraviese el borde de un área protegida, pero también preferimos que no se construya en las zonas cercanas.

Por otra parte, aunque deseamos normalmente evitar la construcción muy cerca de una carretera, puede ser recomendable contruir a una distancia prudencial no muy lejana, ya que se dispone de un acceso más sencillo y menor coste de transporte.

Ya hemos visto cómo definir el número y anchura de los anillos al añadir las capas del proyecto o cambiar su configuración, pero ¿cómo se asignan las resistencias a cada anillo?

Primero es necesario seleccionar la opción Por Anillo/Per Ring (PR) (disponible para capas con más de un anillo). Luego, el usuario puede asignar valores de resistencia o el valor prohibido (FB) a cada anillo.

_images/layerPanelPerRingValues.jpg

Cuando existen más de tres anillos, se utilizará un diálogo adicional. Pulse el botón «Definir Resistencias» para abrirlo.

_images/layerPanelPerRingMany.jpg

_images/layerPanelPerRingManyDlg.jpg

Rásters: Modos de Resistencia

Las capas ráster proporcionan un valor entero o real en cada pixel. El usuario dispone de opciones para decidir cómo asignar resistencias según esos valores. Al igual que con las capas vectoriales, el panel laterial puede utilizarse para especificar esta correspondencia.

Las resistencias para un ráster pueden especificarse en cuatro modos diferentes:

  • Tabla de asignación de valores (AV): El usuario define un valor de resistencia por defecto, que se utilizará cuando no se aplique otra regla, y pulsando en el botón de Editar valores, se abrirá un diálogo donde puede asignar la resistencia para valores específicos del ráster.

    Por ejemplo, si nuestro ráster contiene un código entero para cada categoría de cobertura del suelo (p.ej. datos del Copernicus Global Land Cover), el usuario asignará una resistencia a cada valor entero:

    _images/raster_respanel_av.jpg

    _images/raster_resedit_av.jpg

    Una vez editados los valores, no olvide pulsar en Aplicar en ambos paneles para que los cambios sean efectivos.

  • Rangos de valores (RNG): El usuario de nuevo define un valor de resistencia por defecto, que se utilizará cuando no se aplique otra regla. Pulsando en el botón de Editar Rangos, se abrirá un diálogo con el que asignar la resistencia a rangos de valores del ráster.

    Por ejemplo, si queremos asignar resistencia según el valor de la elevación o pendiente de un MDT/DEM, el usuario puede definir los valores para diferentes rangos de altura o pendiente:

    _images/raster_respanel_rng.jpg

    _images/raster_resedit_rng.jpg

  • Interpolación lineal de valores (LNR): En este caso, el usuario asigna un valor de no hay dato que se aplicará allí donde el ráster no proporciona un valor numérico, y además, las resistencias que corresponden al valor mínimo y máximo del ráster (estos valores pueden verse en la parte inferior del panel). La resistencia de valores intermedios se interpolará entre las del mínimo y el máximo.

    Por ejemplo, si queremos asignar una resistencia lineal de acuerdo con el valor de la pendiente, podemos definir la resistencia máxima y mínnima que se aplicarán al ráster de pendientes:

    _images/raster_respanel_lnr.jpg

  • No se considera (NC): Al igual que con datos vectoriales, usaremos este modo cuando los datos ráster no deban utilizarse para el cálculo de rutas, sino únicamente para visualizarse en la vista.

Tabla de Resistencias de Capas

Para ajustar los valores de resistencia de capas y anillos rápidamente en nuestro escenario, puede ser conveniente utilizar una vista de tabla.

El diálogo de Resistencias de Capas puede abrirse con el menú Escenario/Resistencia Capas:

_images/layerResistancesMenu.jpg

Y también con el icono en el panel de Capas:

_images/layerResistancesIcon.jpg

En ambos casos, se abrirá la ventana de Resistencias Capas:

_images/layerResistancesTable.jpg

Esta vista de tabla permite al usuario cambiar rápidamente el modo de asignación de cada capa y los factores de resistencia (incluyendo el valor Prohibido FB) para cada anillo.

Nota

El intervalo actual de posibles valores para la resistencia se muestra en la cabecera de la tabla ([-3, 3] en el ejemplo). También es visible en la cabecera de las sección Capas del panel izquierdo en el visor de proyectos.

En el caso de datos raśter, la pestaña correspondiente de la tabla permite cambiar el modo de asignación de resistencias y, mediante el botón de Editar, asignar los valores con los mismos diálogos emergentes que vimos antes.

_images/layerResistancesTableRaster.jpg

Pesos de las Categorías

Tras decidir el papel y la importancia relativa de las capas en una categoría, la configuración del escenario también permite al usuario cambiar la importancia relativa de las diferentes categorías.

Así, podemos crear diferentes escenarios de simulación variando los pesos de sus categorías.

Por defecto, se aplica una escala absoluta a los pesos de las categorías. Esto significa que cada categoría tiene un valor entero de 1 a 10, que multiplica las resistencias de las capas. El valor de este peso puede asignarse escribiendo el número o con una barra deslizadora en la cabecera de la categoría:

_images/categoryWeight.jpg

Son posibles otras opciones para asignar los pesos de las categorías, como se describe más abajo en la sección de Opciones Avanzadas.

Importar Resistencias y Pesos

En lugar de usar el interfaz de Pathfinder para asignar las resistencias de capas y pesos de categories, puede ser más conveniente para un proyecto grande importar la configuración del escenario desde un archivo.

Esta importación puede realizarse con el botón de «Importar fichero de escenario» en la tabla de resistencia de capas (ver imágenes anteriores).

Opciones Avanzadas

Además de las resistencias de las capas y los pesos de las categorías, cada escenario tiene opciones avanzadas que definen como esas restricciones se aplican para generar los resultados.

Para acceder a las opciones avanzadas, seleccione el escenario en el panel derecho y pulse sobre el botón de Configuración situado cerca de su nombre:

_images/scenarioSetings.jpg

Otra forma es seleccionar el escenario y abrir sus opciones desde el menú Escenarios:

_images/scenarioSettingsMenu.jpg

El panel de configuración del escenario se divide en tres pestañas: General, Puntos y Rutas & Pylons:

_images/scenarioSettingsGeneral.jpg

Nota

Tras cambiar las opciones del escenario, no olvide pulsar el botón para aplicarlas en la parte inferior del panel. De otra forma, los cambios no tendrán efecto.

Modelo MCDA

El análisis de decisión multicriterio (MultiCriteria Decision Analysis, MCDA) que realiza Pathfinder combina las resistencias de las capas y los pesos de las categorías de acuerdo con diferentes fórmulas, que pueden personalizarse según los estándares de diferentes clientes o regiones.

Si se han habilitado varios MCDAs para su organización, puede seleccionar el que desee aplicar, en las opciones Generales de la Configuración del Escenario:

_images/MCDA.jpg

Asignación de Pesos a Categorías

En la sección de Opciones Generales, el usuario puede cambiar el método de asignación de los pesos a las categorías:

  • Peso Absoluto (por defecto): se utilizan valores enteros de 1 a 10.

  • Peso relativo: se asignan porcentajes de 1 a 100. Los valores de todas las categorías deben sumar 100, ya que se interpretan como porcentajes relativos.

  • Sin Peso: los pesos de las categorías se considerarán iguales y no se visualizarán en el interfaz de usuario.

_images/categoryWeightMode.jpg

Método para corredor

El método para el cálculo del mapa de corredores (porcentaje o percentil) también puede ser seleccionado en la Configuración del Escenario:

_images/corridor_method.jpg

Rango de Resistencias de Capas

En el panel de opciones del escenario encontramos también el Rango de Resistencias de Capas, los valores enteros mínimo y máximo que podemos asignar como resistencia a las capas.

Los límites del intervalo pueden cambiarse. Por ejemplo, en lugar del rango por defecto (-3, +3), el usuario puede preferir utilizar valores de 0 a 10.

_images/scenarioLayerResInterval.jpg

Nota

Si necesita mayor precisión para las resistencias de las capas, en lugar de usar valores decimales (1.2, 3.4, etc., sobre 4) use un intervalo más amplio (12, 34, etc., sobre 40).

Nota

Cuando importe escenarios desde archivo, sepa que los valores de resistencia serán limitados según el intervalo de resistencias actual, de forma que los valores fuera de este intervalo serán recortados. Para evitarlo, primero extienda el intervalo de valores posibles y luego importe el archivo.

Optimización longitud de la ruta

Esta es una nueva opción añadida con la versión 3.1. Permite a los usuarios escoger un valor entre 0.0 and 1.0 para asignar más o menos peso a la longitud de la ruta, de manera que pueda ser optimizada junto a los otros factores de resistencia/coste en el escenario.

_images/distance_factor.jpg

El valor mínimo de 0.0 deshabilita la optimización explícita de la longitud (aunque, en general, la longitud tiende a ser optimizada cuando el área tiene definidos valores de resistencia). Los valores más altos, hasta 1.0, permiten crear rutas más cortas y suaves:

_images/distance_factor_result.jpg

Valor de Corte

Un problema que pueden encontrar los usuarios es que al añadir más capas a una categoría, esta se convierte en demasiado importante dentro de la evaluación general de resistencias, mientras que sería preferible que la importancia efectiva de la categoría fuera la misma aunque se añadieran nuevas capas.

Una solución es definir un valor máximo de resistencia total en cada categoría. Si este valor es cero (por defecto), no se aplicará ningún límite.

_images/scenarioValueCap.jpg

El valor efectivo de corte es el valor introducido en este campo multiplicado por el máximo del rango de resistencia de las capas. Por ejemplo, si el valor máximo de resistencias es +3 y el valor de corte es 2, el valor efectivo de corte será de 6. En otras palabras, el Valor de Corte asignado representa cuántas constribuciones de capas con la máxima resistencia se consideran como el límite máximo para una categoria.

El valor de corte efectivo se aplica durante el cálculo del Mapa de Resistencias para limitar el valor de resistencia final en cada celda. La consecuencia es «aplanar» la contribución máxima de cada categoría.

Nota

El valor de corte se utiliza en el modelo MCDA por defecto, pero es posible que no se aplique a otros modelos.

Compartir Escenario

Active esta opción para que otros usuarios de su compañía puedan ver el escenario cuando abran el proyecto.

_images/shareScenario1.jpg

Otros usuario podrán añadirlo al proyecto y ver sus parámetros y resultados, pero no modificarlos.

_images/scenarioSharedAdd.jpg

Análisis del Escenario

En casa escenario podemos tener un gran número de capas y categorías, así que es conveniente utilizar representaciones gráficas para comprender fácilmente la distribución de resistencias y comparar las de diferentes escenarios.

Mediante el menú Escenario/Estadísticas de Capas, los usuarios pueden ver las gráficas de análisis de resistencias:

_images/layerStatsMenu.jpg

_images/analysisLayerStatistics.jpg

Nótese que:

  • Los pesos de las categorías no afectan a los valores de resistencia mostrados en los gráficos.

  • Los valores promedio se representan como valores absolutos sin signo, así que una media negativa aparecerá en la misma posición (la misma importancia) que una media positiva.

Estas gráficas pueden exportarse como tabla (CSV) y como archivos de imágenes para crear informes.

_images/layerStatsExport.jpg

En la página sobre gestión de escenarios también puede verse cómo exportar los parámetros del escenario a una hoja de cálculo para realizar otros estudios numéricos y gráficos.

Puntos Clave

La pestaña de Puntos en el panel de opciones del escenario permite añadir restricciones utilizando puntos clave.

_images/scenarioSettingsPoints.jpg

Inicio y Final

Los puntos de Inicio y Final definidos para el proyecto pueden cambiarse en cada escenario. Si no se definen estos puntos en el escenario, se usarán los del proyecto.

Para posicionar manualmente los puntos de Inicio o final en la Vista, pulse sobre el botón de «Añadir al Mapa» y a continuación seleccione una posición en la Vista.

Los puntos de Inicio y Final también pueden importarse desde un archivo pulsando en el botón de «Cargar»:

_images/uploadStartPoint.jpg

Puntos Intermedios

Una opción solo disponible para escenarios es la definición de puntos intermedios que se utilizarán en el cálculo de la ruta óptima.

El usuario puede pulsar en el botón de «Añadir al Mapa» para añadir uno o más puntos intermedios que a una lista ordenada y numerada. Pulse de nuevo sobre el botón para deshabilitarlo.

La lista de puntos también puede importarse de un archivo de datos georreferenciados.

_images/intermediatePoints.jpg

La ruta se construirá desde el punto de Inicio, pasando por los puntos intermedios en la secuencia definida, y terminando en el punto Final.

Para borrar un punto intermedio, pulse sobre la «X» dentro del cuadrado correspondiente.

Para cambiar el orden de los puntos intermedios, pulse sobre uno de los cuadrados y arrástrelo hacia la derecha. Note el cambio de numeración en la vista.

Opciones de Ruta y Torres

La tercera pestaña del panel de opciones del escenario permite a los usuarios cambiar valores relacionados con el cálculo de las rutas y de las torres utilizadas en el caso de tendidos eléctricos.

_images/scenarioSettingsPath.jpg

Algoritmo de Ruta Óptima

Dependiendo de la licencia de la compañía, puede haber más de un algoritmo de optimization disponible para el cálculo de la ruta. En la lista desplegable, podrá seleccionar cuál de los algoritmos disponibles se utilizará en el escenario, teniendo en cuenta que la selección afectará al rendimiento tanto como a los resultados.

_images/routingAlgorithm.jpg

Posicionamiento de torres

Cuando se selecciona un algoritmo que optimiza el posicionamiento de torres, el usuario puede usar el botón de Configurar para especificar parámetros que controlan los ángulos y la ruta a seguir en relación con áreas prohibidas.

_images/algorithm_configure1.jpg

_images/algorithm_configure2.jpg

  • Peso de la línea (de 0.0 a 1.0): importancia relativa de la resistencia a lo largo de la línea, en comparación con la resistencia medida en las posiciones de las torres. Un valor de 0.0 significa que solo se considera importante la resistencia en las torres para la optimización de la ruta, 0.5 significa que ambos son igualmente importantes, y se utiliza el valor 1.0, solo los valores a lo largo de la línea importan. Los resultados pueden variar significativamente según este parámetro:

    _images/edge_weight_comp.jpg

  • Peso del ángulo (de 0.0 a 1.0): importancia relativa de la minimización de los ángulos, en comparación con la minimización de la resistencia. Un valor de 0.0 significa que no se considera la optimización de ángulos, 1.0 implica que solo se considera el camino con una suma mínima de ángulos. Nótese que, incluso con un factor de optimización de ángulos, algunos de ellos pueden ser grandes, ya que la optimización afecta a la suma total.

    En la siguiente imagen, el camino verde ha sido calculado con un peso mayor que 0, comparado con el azul, para el que el peso vale 0.

    _images/angle_weight_comp.jpg

  • Máxima desviación de la direction: indica cuánto puede desviarse el camino de la línea recta que va del punto de Inicio al de Fin. El valor por defecto es el máximo, 90 grados. En los algoritmos con optimización de la posición de las torres, la ruta no puede ir «hacia atrás».

    _images/max_deviation.jpg

  • Ángulo máximo: define el máximo valor del ángulo formado por los cables anteriores y posteriores a cualquier torre. El valor por defecto es 180 grados, lo que significa que cualquier ángulo de giro es posible.

    _images/max_angle.jpg

  • Función de coste angular: para la optimización de ángulos, podemos escoger calcular el coste de ángulos grandes con una función lineal o discreta. Puede simplemente dejarse el valor por defecto.

  • Permitido cruzar FB: esta opción permite a la ruta cruzar por encima de áreas prohibidas (resistencia FB) mientras las torres no se sitúen dentro de ellas.

    Esta es un ejemplo de resultado cuando esta opción está activada (también es lo que sucede con otros algoritmos que no disponen de esta opción). Las areas prohibidas son negras en este ejemplo:

    _images/forbiddenCross3.jpg

    Sin embargo, si esta opción se desactiva, la ruta no podrá cruzar en absoluto las áreas prohibidas. Esta elección puede ser más segura para evitar áreas problemáticas como edificios y sus alrededores, pero puede impedir que el algoritmo encuentre una ruta válida. En este ejemplo, las áreas prohibidas son transparentes:

    _images/notCrossingFB.jpg

Estimación de Costes

Para evaluar la bondad de una ruta potencial, Pathfinder puede utilizar múltiples modelos de coste que realizan una estimación de costes tipo CAPEX (construcción) u OPEX (operación), y también otros costes como la huella de CO2 o el impacto ambiental.

El modelo de coste Gilytics estará activo por defecto, pero su organización puede tener otros modelos de coste disponibles. Contacte con un representante de Gilytics si tiene necesidades específicas de estimación de costes.

Puede cambiarse la moneda a utilizar en las estimaciones de coste y activar uno o más de los modelos disponibles, de forma que se ejecuten automáticamente para cada ruta que se crea o modifica en el escenario. Diferentes escenarios pueden tener activados diferentes modelos de coste.

_images/costModels.jpg

Cada modelo de coste tiene un panel de configuración global. Pulse sobre el botón Configurar junto a un modelo de coste para especificar estas opciones.

Por ejemplo, el modelo de coste Gilytics incluye parámetros globales para especificar el precio base por kilómetro y factores multiplicativos relacionados con la pendiente.

_images/costModelsConfig.jpg

Además, algunos modelos de coste tienen parámetros de coste para cada capa. En este caso, el panel derecho de la capa contiene campos de entrada para definir estos costes en cada modelo activo:

_images/costModelsLayerConfig.jpg

Opciones de Torres

El usuario puede especificar la separación mínima y máxima entre torres.

_images/pylonDistance.jpg

La posición de las torres será determinada automáticamente por el algoritmo, pero también puede ser adjustada manualmente por los usuarios en la vista 3D una vez la ruta es calculada.

Nota

Para los algoritmos con optimización de la posición de las torres, se recomienda que los valores de distancia máxima y mínima sean cercanos. De esta manera, el algoritmo se ejecutará más rápido y consumirá menos memoria. Una diferencia grande puede agotar la memoria usada por el algoritmo.

El panel de opciones muestra el tipo de torre seleccionada para la simulación. Este tipo puede cambiarse pulsando sobre el botón de Seleccionar Torre para escoger el modelo deseado en el diálogo:

_images/pylonSelector.jpg

_images/pylonTypes.jpg

Es posible añadir modelos personalizados de torres, si es necesario.

Note que uno de los tipo de torre incluidos se llama Underground, lo que significa que genera rutas situadas bajo la superficie, como cables subterráneos.

_images/underground_3D.jpg

Si desea utilizar esta opción en la vista 3D, necesitará cambiar el modeo de la vista a Subterráneo, de forma que las líneas sean visible y se pueda navegar por debajo de la superficie.

Resistencia por Pendiente

Gracias al nuevo soporte para datos ráster, esta opción ha sido eliminada. Los rásters de Pendiente y Elevación del terreno son ahora visibles en el panel de Capas y pueden utilizarse para asignar resistencias que dependen de la pendiente o la elevación del terreno.

Un uso común es añadir resistencia para los valores altos de la pendiente, y para ciertos rangos de elevación (evitando montañas o zonas inundables, por ejemplo). Es fácil realizar esta asignación con las opciones de resistencia para rásters.

A continuación puede verse un ejemplo, exagerado para la demostración, de rangos de resistencia basados en la pendiente, incluyendo valores prohibidos (transparentes en la imagen) para pendientes muy altas:

_images/slopeEffect.jpg

En la sección de análisis veremos cómo identificar el efecto de la pendiente y la resistencia de otras capas en una localización específica y a lo largo de una ruta.




Advertencia: los escenarios que se muestran en este manual no representan proyectos reales de nuestros clientes o propuestas de infraestructura, sino que se ofrecen solamente con propósitos demostrativos.

Para obtener más ayuda, por favor use el chat de soporte en la aplicación, o contacte Gilytics.