Tipos de evaluadores utilizados por una red
Cada atributo definido en la red debe tener valores para cada origen que participe en la red. Los evaluadores asignan valores al atributo de cada origen. En las aplicaciones precursoras de ArcGIS (ArcView GIS y ARC/INFO), los valores de los atributos se asignaban a partir de un campo del shapefile o la cobertura. En ArcGIS, el evaluador de campo asigna valores a un atributo de red a partir de un campo para cada fuente de red. Además, ArcGIS proporciona otros tipos de evaluadores que pueden utilizarse, como constantes, expresiones de campo, funciones o VBScript.
A continuación se describen los evaluadores.
Evaluador |
Descripción |
---|---|
Evaluador de campo |
La manera más común de asignar valores a un atributo de red consiste en identificar un campo único que se utilizará para evaluar el atributo de red durante la generación del dataset de red. Por ejemplo, un evaluador de campo se puede utilizar en los casos en que el valor indique una medición, por ejemplo metros. |
Evaluador de expresiones de campo |
El evaluador de campo se puede modificar para tomar como valor una expresión de campo en lugar de un único campo. En este caso, se generará una expresión en el cuadro de diálogo Evaluador de campo. Por ejemplo, si el atributo de red se expresa en metros pero los datos de origen están en pies, puede crear una expresión que convierta los pies en metros en el momento de generar el dataset de red. |
Evaluador de constantes |
Los atributos pueden tener asignado un valor constante. El valor puede ser numérico (0, 1, 2) para los atributos de coste, descriptor y jerarquía, o bien una expresión booleana (Restringida o No restringida) para un atributo de restricción. |
Evaluador de funciones |
El evaluador de funciones calcula los valores de los atributos aplicando una función multiplicativa o lógica sobre otro valor de atributo o de parámetro. Para los tipos de atributos numéricos, los valores se derivan de una expresión que multiplica el valor de otro atributo por algún otro valor. Por ejemplo: DriveTime * 1.25. Para los tipos de atributo booleanos, los valores se derivan de una expresión que compara otro valor de atributo con el valor de un parámetro, por ejemplo, MaxHeight < VehicleHeight. Legado: Dado que el evaluador de funciones era una característica nueva en ArcGIS 9.3, tenga en cuenta que, si lo usa, su dataset de red no podrá utilizarse en versiones de ArcGIS anteriores a la 9.3. |
Evaluador de retraso de giro global |
El evaluador de retraso de giro global asigna un valor de coste predeterminado a la transición entre dos elementos de bordes. El coste está basado en el ángulo de desviación entre los dos ejes y la clase de camino (primario, secundario o local) de los ejes que se atraviesan. Especifique la clase de camino utilizando el cuadro de diálogo Rangos de jerarquía junto con un atributo de jerarquía. Por ejemplo, puede utilizar el evaluador de retraso de giro global para hacer que todos los giros a la izquierda, determinados por ángulos de desviación, de caminos locales a caminos secundarios tarden más tiempo que los giros a la izquierda desde caminos locales a otros caminos locales. También puede especificar costes agregados para otras transiciones, tales como agregar retrasos de 10 segundos al continuar de frente en la intersección de dos caminos secundarios. Más información sobre cómo establecer giros globales Legado: Dado que el evaluador de retraso de giro global era una característica nueva en ArcGIS 9.3, tenga en cuenta que, si lo usa, su dataset de red no podrá utilizarse en versiones de ArcGIS anteriores a la 9.3. |
Evaluador de VBScript |
Es posible asignar atributos a partir del resultado de la ejecución de VBScript. De este modo podrá modelar atributos complejos. Al contrario que otros evaluadores, el evaluador de VBScript no asigna valores durante la generación de una red, sino que lo hace cuando un determinado análisis de red requiere el uso de ese atributo. Si los valores de un atributo cambian constantemente, el uso de un evaluador de VBScript puede garantizar que estén utilizando atributos actualizados en el análisis de red. Nota: Dado que calcula sus valores durante el análisis, el evaluador de VBScript tiende a afectar negativamente al rendimiento del mismo. |
Evaluador de ejes de tráfico |
Los evaluadores de ejes de tráfico están diseñados para ser utilizados con datos de tráfico históricos. Pueden proporcionar tiempos de viaje para una hora del día y día de la semana determinados. Disponen de atributos de coste de reserva que proporcionan tiempos de viaje para días laborables y de fin de semana cuando no haya disponibles tiempos de viaje para una determinada hora del día. También dispone de atributos de coste sin distinción de días a los que Network Analyst hace referencia al secuenciar paradas o resolver capas de análisis de red que no admiten datos de tráfico históricos. |
Cada origen de cruce y cada origen de giro pueden tener un evaluador. Cada origen de eje puede tener dos (uno para cada dirección del eje).
Es posible asignar un evaluador predeterminado a ejes, cruces y giros. Si no se especifica un evaluador explícito para un determinado origen, el evaluador predeterminado es el que asigna los valores para ese origen.
A continuación se muestra el flujo de trabajo general para asignar un evaluador:
- Seleccione el origen al que debe asignarse el evaluador.
- Elija un tipo de evaluador, como Campo, Constante, Función o VBScript.
- Especifique el valor que se va a asignar al atributo de red.
Si los valores se derivan de un campo, este se seleccionará de un menú desplegable. Si los valores van a calcularse dependiendo de una expresión de campo, establezca el tipo de evaluador como Campo y presione F12 para abrir el cuadro de diálogo Evaluadores de campo. Si lo prefiere, puede hacer clic con el botón derecho en el origen en el cuadro de diálogo Evaluadores y elegir Propiedades en el menú Valor para abrir el cuadro de diálogo Evaluadores de campo.
Ejemplos de evaluadores
Asignar valores a los atributos de coste
Para el atributo de red DriveTime, el evaluador para la fuente de red de calles es un tipo de campo. El campo FT_Minutes contiene valores del atributo de red en la dirección desde-hasta para el origen de las calles. De igual forma, los valores para la dirección hasta-desde del origen de las calles se asignan a partir del campo TF_Minutes.
En este ejemplo, los demás orígenes de eje de esta red son ejes de tráfico y no tienen asignado un tiempo de conducción. Por lo tanto, se les puede asignar un valor constante de -1.
Los atributos de coste se pueden derivar también de otro atributo de coste utilizando el evaluador de funciones. Por ejemplo, un atributo que modele los tiempos de viaje de los vehículos lentos puede utilizar el evaluador de funciones para hacer referencia a un atributo que modele los tiempos de viaje normales y multiplicarlo por un factor de retraso.
Asignar valores a restricciones
Los atributos de restricción tienen un tipo de datos booleano. Dado que un elemento de origen puede estar restringido o no restringido, puede tener asignada un valor constante (restringido o no restringido).
Los atributos de restricción también se pueden derivar utilizando el evaluador de funciones para comparar otro atributo con un valor de parámetro. Por ejemplo, un atributo que modele las restricciones de altura del vehículo puede utilizar el evaluador de funciones para comparar el límite de altura de una carretera con la altura real del vehículo almacenada en un parámetro del atributo. Cuando la expresión da como resultado «verdadero», la carretera está restringida; cuando la expresión da como resultado «falso», la carretera no está restringida. La excepción a esta regla es que siempre que alguno de los operandos MaxHeight o Altura del vehículo tienen un valor de cero, la expresión dará el resultado «falso».
Más información sobre cómo utilizar parámetros con atributos de red
Finalmente, los atributos de restricción también pueden asignarse a partir de un campo en la clase de entidad de origen. Por ejemplo, puede utilizar un evaluador de expresión de campo para generar resultados booleanos (si la expresión es verdadera, el elemento está restringido; si no, es no restringido).
Cuando se crea un dataset de red, Network Analyst busca en todos los orígenes los campos utilizados normalmente, como Unidireccional. Si Network Analyst encuentra un campo Unidireccional en cualquier origen, crea un atributo de red Unidireccional y asigna valores al origen pertinente basándose en expresiones de campo.
A continuación se muestra la expresión utilizada para un atributo de restricción unidireccional en la dirección desde-hasta:
A continuación se muestra la expresión utilizada para un atributo de restricción unidireccional en la dirección hasta-desde:
Estas expresiones determinan la dirección o direcciones de viaje permitidas basándose en el valor de texto del campo Unidireccional:
- FT o F = Solo se permite el desplazamiento en la dirección digitalizada de la entidad de línea (la dirección desde-hasta).
- TF o T = Solo se permite el desplazamiento en la dirección contraria a la dirección digitalizada de la entidad de línea (la dirección hasta-desde).
- N = No se permite el desplazamiento en ninguna de las dos direcciones.
- Cualquier otro valor = Se permite el desplazamiento en ambas direcciones.
Asignar jerarquías
Asignando las jerarquías del dataset de red, puede clasificar los ejes en diferentes niveles jerárquicos y, así, reducir los tiempos de resolución. Sin embargo, tenga presente que los resultados de las soluciones jerárquicas pueden ser peores que las soluciones no jerárquicas. Es recomendable leer también Sobre el análisis de redes con jerarquías para entender mejor qué son las jerarquías y cómo podrían utilizarse.
Los niveles de jerarquía se definen mediante enteros consecutivos, empezando en uno. El entero más bajo, es decir, uno, representa el nivel superior de la jerarquía. Los valores enteros más altos representan los niveles más bajos de la jerarquía. Por ejemplo, si está descomponiendo una red en tres niveles de jerarquía, asignaría un valor de 1 a los caminos primarios, un valor de 2 a los caminos secundarios y valor de 3 a los caminos terciarios. Los caminos primarios podrían incluir las autopistas, mientras que los caminos terciarios podrían incluir las calles residenciales.
La jerarquía de un dataset de red suele asignarse mediante un campo o un evaluador de expresión de campo. Si la clase de entidad de calles tiene un atributo de clase de camino (jerarquía) con valores 1, 2 y 3 (que representen autopistas, carreteras nacionales y carreteras secundarias, respectivamente) el atributo de jerarquía puede establecerse simplemente mediante evaluadores de campos.
Normalmente, a un atributo de jerarquía se asignan tres, cuatro o cinco niveles de jerarquía, pero puede asignar tantos como desee siempre que cada nivel se represente mediante un entero consecutivo empezando por uno. Debe evitar asignar demasiados niveles de jerarquía; no obstante, dado que esto podría dejar algunos ejes desconectados del resto de la jerarquía, lo que provocaría fallos al resolver las capas de análisis de red.
Si la clase de entidad de origen tiene un atributo que clasifica los caminos en más grupos de los deseados como niveles en la jerarquía, puede clasificar los grupos mediante un evaluador de expresión de campo que permita obtener el número de niveles de jerarquía deseados. Por ejemplo, suponga que una clase de entidad de Calles tiene un campo entero denominado Func_Class que tiene las siguientes seis clases de camino:
Func_Class |
Tipo de vía |
---|---|
1 |
Interestatal |
2 |
Carretera interestatal de peaje |
3 |
Carretera estatal |
4 |
Carretera principal |
5 |
Calle local |
6 |
Acceso de autopista |
Además, suponga que desea agrupar los valores de Func_Class como se muestra en la siguiente tabla para crear tres niveles de jerarquía.
Nivel de jerarquía | Valores de Func_Class |
---|---|
1 | 1 (interestatales) 2 (carreteras interestatales de peaje) 6 (accesos de autopista) |
2 | 3 (carreteras estatales) 4 (caminos principales) |
3 | )5 (calles locales |
Para modelar este escenario, cambie el evaluador del atributo Jerarquía a un evaluador de expresión de campo. Esto permite escribir un pequeño código VBScript de lógica previa que utiliza una variable. Para este ejemplo, se crea la variable level y se establece en 3 (el nivel de jerarquía más bajo de este ejemplo). Establezca la siguiente condición: si Func_Class es 1, 2 o 6, asignar a level un valor de 1. Si Func_Class es 3 o 4, asignar a level un valor de 2. Para todos los demás casos, el valor sigue siendo 3. En el cuadro de texto Valor del evaluador de expresión de campo, escriba level.
Esto garantiza que a todos los niveles con Func_Class 1, 2 o 6 se asigne el valor de jerarquía de 1; a todos los elementos con Func_Class 3 o 4 se asignan un valor de jerarquía de 2; y a todos los demás (es decir, los elementos con valores de Func_Class de 5) se asigna un valor de jerarquía de 3.
Antes de ArcGIS 10, se utilizaba el cuadro de diálogo Rangos de jerarquía para convertir los diversos valores de campo en exactamente tres niveles de jerarquía. Ahora, sin embargo, su único propósito es definir caminos primarios, secundarios y locales al trabajar con un evaluador de retraso de giro global. Esto significa que el cuadro de diálogo Rangos de jerarquía no tiene ningún efecto sobre el atributo de jerarquía del dataset de red; solo afecta al evaluador de retraso de giro global.
Cuando se utiliza un evaluador de retraso de giro global con un atributo de jerarquía, los ejes se deben clasificar en tres clases: camino locales, secundarios y primarios. Puesto que un atributo de jerarquía podría especificar cualquier número de niveles de jerarquía, el cuadro de diálogo Rangos de jerarquía permite agrupar esos niveles en exactamente tres clases de camino. Esto permite especificar costes que se agregan de forma predeterminada a las maniobras de giro en función de la clase de camino. Por ejemplo, puede agregar un retraso de 10 segundos a todos los giros a la izquierda de caminos secundarios a caminos locales, y un retraso de tres segundos a todos los giros a la izquierda de caminos locales a otros caminos locales. Otras muchas combinaciones de giros son posibles al utilizar clases de camino con el evaluador de retraso de giro global.