Générer une couche d'analyse d'allocation-localisation (Network Analyst)

Synthèse

Crée une couche d’analyse de réseau localisation-allocation et définit ses propriétés d’analyse. Une couche d'analyse d'emplacement-allocation est utile pour sélectionner un nombre donné de ressources dans un ensemble de localisations potentielles de manière qu'une demande soit allouée aux ressources de façon optimale et efficace. La couche peut être créée à l'aide d'un jeu de données réseau local ou d'un service hébergé en ligne ou sur un portail.

Utilisation

  • Après avoir créé la couche d’analyse avec cet outil, vous pouvez ajouter des objets d’analyse de réseau à l’aide de l’outil Ajouter des localisations, résoudre l’analyse à l’aide de l’outil Calculer et enregistrer les résultats sur le disque à l’aide de l’outil Enregistrer dans un fichier de couche.

  • Lorsque vous utilisez cet outil dans des modèles de géotraitement, si le modèle est exécuté en tant qu'outil, la couche d'analyse de réseau en sortie doit être convertie en paramètre de modèle. Dans le cas contraire, la couche en sortie n'est pas ajoutée au contenu de la carte.

  • Dans ArcGIS Pro, les données des couches d’analyse de réseau sont stockées sur disque dans des classes d’entités de géodatabase fichier. Lorsque vous créez une couche d’analyse de réseau dans un projet, les données de cette couche sont créées dans un nouveau jeu de classes d’entités dans l’environnement Espace de travail courant. Lorsque vous créez une couche d’analyse de réseau dans un script Python, vous devez commencer par définir de façon explicite l’environnement de l’espace de travail sur une géodatabase fichier dans laquelle vous voulez stocker les données de la couche à l’aide de arcpy.env.workspace = "<path to file gdb>". Lorsque la couche est créée, un nouveau jeu de données d'entité contenant les classes d'entités de sous-couche appropriées est ajouté à cette géodatabase fichier.

Paramètres

ÉtiquetteExplicationType de données
Source de données réseau

Jeu de données réseau ou service sur lequel l'analyse du réseau est effectuée. Utilisez l'URL du portail pour un service.

Network Dataset Layer;String
Nom de la couche
(Facultatif)

Nom de la couche d’analyse de réseau à créer.

String
Mode de déplacement
(Facultatif)

Nom du mode de déplacement à utiliser dans l’analyse. Le mode de déplacement représente une collection de paramètres réseau, tels que des restrictions de circulation et des règles de demi-tour, qui détermine la façon dont un piéton, une voiture, un camion ou un autre mode de transport se déplace sur le réseau. Les modes de déplacement sont définis dans votre source de données de réseau.

Vous pouvez aussi utiliser un objet arcpy.na.TravelMode et une chaîne contenant la représentation JSON valide d’un mode de déplacement en entrée du paramètre.

String
Sens de déplacement
(Facultatif)

Précise la direction de déplacement entre ressources et points de demande lors du calcul des coûts du réseau.

Cette option peut affecter l'attribution des points de demande aux ressources d'un réseau avec des restrictions unilatérales et des impédances différentes selon la direction de déplacement. Par exemple, un point de demande peut être situé à 15 minutes de trajet d'une ressource, mais le trajet peut demander seulement 10 minutes en circulant en sens inverse (de la ressource vers le point de demande).

  • En s'éloignant des ressourcesLa direction de déplacement va des ressources vers les points de demande. Il s’agit de l’option par défaut. Les services des pompiers utilisent en général ce paramètre, car ils s’intéressent à la durée du trajet entre la caserne et le site d’intervention.
  • En direction des ressourcesLa direction de déplacement va des points de demande vers les ressources. Les points de vente de détail utilisent couramment ce paramètre, car ils s'intéressent au temps nécessaire aux acheteurs pour atteindre le magasin.
String
Type de problème
(Facultatif)

Type de problème à résoudre. Le choix du type de problème dépend du genre de ressource localisée. Différents genres de ressources ont des priorités et des contraintes différentes.

  • Minimiser l'impédanceCette option résout le problème de l'emplacement de l'entrepôt. Elle sélectionne un ensemble de ressources de manière à minimiser la somme des impédances pondérées (demande à un emplacement multipliée par la ressource la plus proche). Ce type de problème est souvent désigné par le nom de problème P Médian. Il s'agit du type de problème par défaut.
  • Optimiser la couvertureCette option résout le problème de l'emplacement de la caserne de pompiers. Elle sélectionne des ressources de manière que l'intégralité ou le plus grand nombre de demandes se trouve dans une limite d'impédance précisée.
  • Optimiser la couverture de capacitéCette option résout le problème de l'emplacement dans lequel les ressources ont une capacité limitée. Elle choisit des ressources afin que l'intégralité ou une grande partie de la demande puisse être satisfaite sans dépasser la capacité des ressources. En outre, elle sélectionne les ressources afin que la somme totale des impédances pondérées (demande allouée à une ressource multipliée par l'impédance vers ou depuis la ressource) soit minimisée.
  • Minimiser les ressourcesCette option résout le problème de l'emplacement de la caserne de pompiers. Elle sélectionne le nombre minimal de ressources nécessaires pour couvrir toutes les demandes (ou le plus grand nombre) dans une limite d’impédance spécifiée.
  • Optimiser la fréquentationCette option résout le problème de l'emplacement d'un magasin de voisinage où la proportion de demande allouée à la ressource la plus proche sélectionnée diminue avec l'augmentation de la distance. L'ensemble de ressources qui maximisent la demande allouée est sélectionné. Une demande située plus loin que la limite d'impédance spécifiée n'affecte pas l'ensemble de ressources sélectionné.
  • Optimiser la part de marchéCette option résout le problème de l'emplacement de ressource compétitif. Elle sélectionne des ressources pour maximiser la part de marché en présence de ressources compétitives. Les concepts de modèle gravitaire permettent de déterminer la proportion de demande allouée à chaque ressource. L'ensemble de ressources qui maximise la demande allouée est sélectionné.
  • Part de marché cibleCette option résout le problème de l'emplacement de ressource compétitif. Elle sélectionne des ressources permettant d'atteindre une part de marché cible spécifiée dans la présence de ressources compétitives. Les concepts de modèle gravitaire permettent de déterminer la proportion de demande allouée à chaque ressource. Le nombre minimal de ressources nécessaire pour atteindre la part de marché cible spécifiée est sélectionné.
String
Limite
(Facultatif)

Impédance maximale à laquelle un point de demande peut être alloué à une ressource, dans les unités de l'attribut d'impédance utilisé pour le Mode de déplacement choisi. L'impédance maximale est mesurée par le chemin de moindre coût le long du réseau. Si un point de demande est situé à l'extérieur de la limite, il reste non alloué. Cette propriété peut permettre de modéliser la distance maximale que les gens sont disposés à parcourir pour accéder à vos magasins ou la durée maximale autorisée pour un service des pompiers pour atteindre toute personne de la communauté.

Vous pouvez remplacer cette limite point de demande par point de demande, en spécifiant des valeurs de limite individuelles dans la sous-couche des points de demande de la propriété Cutoff_[Impédance]. Vous pouvez par exemple déterminer que les habitants des zones rurales sont prêts à faire jusqu'à 10 miles pour atteindre une ressource, tandis que les citadins sont uniquement prêts à faire jusqu'à 2 miles. Vous pouvez modéliser ce comportement en définissant la valeur Limite de la couche d’analyse sur 10 et la valeur Cutoff_Miles de chaque point de demande d’une zone urbaine sur 2.

Par défaut, aucune limite n'est utilisée pour l'analyse.

Double
Nombre de ressources à rechercher
(Facultatif)

Spécifie le nombre des ressources que le solveur doit localiser. Par défaut, ce paramètre est défini sur 1.

Les ressources présentant une propriété FacilityType de valeur Requis font toujours partie de la solution lorsque le nombre de ressources à rechercher est supérieur au nombre de ressources requises ; toutes les ressources à sélectionner supplémentaires sont choisies parmi les ressources candidates.

Toute ressource ayant une propriété FacilityType de valeur Choix avant le calcul est traitée comme les ressources candidates lors de la recherche.

La valeur du paramètre n'est pas prise en compte pour le type de problème Minimiser les ressources puisque le solveur détermine le nombre minimum de ressources à localiser pour optimiser la couverture.

La valeur du paramètre est remplacée pour le type de problème Part de marché cible, car le solveur recherche le nombre minimal de ressources requises pour capturer la part de marché spécifiée.

Long
Type de fonction de désintégration
(Facultatif)

Définit l'équation pour la transformation du coût du réseau entre les ressources et les points de demande. Cette propriété, associée à la Valeur du paramètre de la fonction de désintégration, spécifie l'importance de l'influence de l'impédance du réseau entre les ressources et les points de demande sur le choix de ressources du solveur.

Les points de demande disposent d’une propriété ImpedanceTransformation qui, si elle est définie, remplace la propriété Valeur du paramètre de la fonction de désintégration de la couche d’analyse, point de demande par point de demande. Vous pouvez déterminer que la fonction de désintégration doit être différente pour les ruraux et les citadins. Vous pouvez modéliser ceci en définissant la transformation d'impédance de la couche d'analyse de manière à ce qu'elle corresponde à celle des résidents ruraux et en définissant la transformation d'impédance des points de demande individuels situés dans les zones urbaines de manière à ce qu'elle corresponde à celle des citadins.

  • LinéaireL'impédance de réseau transformée entre la ressource et le point de demande est identique à l'impédance de réseau du plus court chemin. Avec cette option, le paramètre d'impédance a toujours la valeur 1. Il s’agit de l’option par défaut.
  • PuissanceL'impédance de réseau transformée entre la ressource et le point de demande est égale à l'impédance de réseau du plus court chemin élevée à la puissance indiquée par le paramètre d'impédance. Cette option avec un paramètre d'impédance positif permet de spécifier la plus haute pondération aux ressources proches.
  • ExponentielL'impédance de réseau transformée entre la ressource et le point de demande est égale à la constante mathématique e élevée à la puissance indiquée par l'impédance de réseau du plus court chemin multipliée par le paramètre d'impédance. Cette option avec un paramètre d'impédance positif permet de spécifier une pondération très élevée pour les ressources proches.Les transformations exponentielles sont généralement utilisées conjointement avec une limite d'impédance.
String
Valeur du paramètre de la fonction de désintégration
(Facultatif)

Valeur de paramètre des équations spécifiées pour le paramètre Type de fonction de désintégration. La valeur de paramètre est ignorée lorsque la fonction de désintégration est de type Linéaire. Pour les fonctions de désintégration Puissance et Exponentiel, la valeur doit être différente de zéro.

Les points de demande disposent d’une propriété ImpedanceTransformation qui, si elle est définie, remplace la propriété Valeur du paramètre de la fonction de désintégration de la couche d’analyse, point de demande par point de demande. Vous pouvez déterminer que la fonction de désintégration doit être différente pour les ruraux et les citadins. Vous pouvez modéliser ceci en définissant la transformation d'impédance de la couche d'analyse de manière à ce qu'elle corresponde à celle des résidents ruraux et en définissant la transformation d'impédance des points de demande individuels situés dans les zones urbaines de manière à ce qu'elle corresponde à celle des citadins.

Double
Part de marché cible
(Facultatif)

Spécifie la part de marché cible en pourcentage pour laquelle effectuer l'analyse lorsque le paramètre Type de problème est défini sur Part de marché cible. Il s'agit du pourcentage de la pondération de demande totale à capturer par vos ressources de solution. Le solveur sélectionne le nombre minimal de ressources requis pour capturer la part de marché cible spécifiée par cette valeur numérique.

Double
Capacité
(Facultatif)

Spécifie la capacité par défaut des ressources lorsque le paramètre Type de problème est défini sur Optimiser la couverture de capacité. Ce paramètre est ignoré pour tous les autres types de problème.

Les ressources ont une propriété Capacité qui, lorsqu'elle est définie sur une valeur non nulle, remplace le paramètre Capacité correspondant.

Double
Heure du jour
(Facultatif)

Heure et la date de départ. L'heure de départ peut être définie à partir des ressources ou des points de demande, selon que le Sens de déplacement s'effectue de la demande vers la ressource ou de la ressource vers la demande.

Si vous avez choisi un attribut d'impédance basé sur la circulation, l'analyse est effectuée selon des conditions de circulation dynamiques correspondant à l'heure du jour spécifiée ici. Une date et une heure peuvent être spécifiées sous la forme 5/14/2012 10:30 AM.

Au lieu d'utiliser une date particulière, un jour de la semaine peut être spécifié à l'aide des dates suivantes :

  • Aujourd’hui - 12/30/1899
  • Dimanche - 12/31/1899
  • Lundi - 1/1/1900
  • Mardi - 1/2/1900
  • Mercredi - 1/3/1900
  • Jeudi - 1/4/1900
  • Vendredi - 1/5/1900
  • Samedi - 1/6/1900

Date
Fuseau horaire
(Facultatif)

Fuseau horaire du paramètre Time of Day (Heure du jour).

  • Heure locale des localisationsLe paramètre Heure du jour se rapporte au fuseau horaire dans lequel se trouvent les ressources ou les points de demande. Si la Feuille de route est ressources vers points de demande, il s'agit du fuseau horaire des ressources. Si la Feuille de route est points de demande vers ressources, il s'agit du fuseau horaire des points de demande. Il s’agit de l’option par défaut.
  • UTCLe paramètre Heure du jour est exprimé en UTC (Temps Universel Coordonné). Choisissez cette option si vous souhaitez choisir le meilleur emplacement à une heure donnée (maintenant, par exemple), sans toutefois connaître avec certitude le fuseau horaire dans lequel se trouvent les ressources ou les points de demande.
String
Forme linéaire
(Facultatif)

Indique la forme de la ligne en sortie.

Indépendamment du type de forme en sortie choisi, le meilleur itinéraire est toujours déterminé par l'impédance du réseau, jamais par la distance euclidienne. Cela signifie que seules les formes d'itinéraire sont différentes, pas le parcours du réseau sous-jacent.

  • Aucune ligneAucune ligne n'est créée pour l'analyse en sortie. Ceci est utile lorsque vous résolvez un très gros problème et que vous êtes intéressé uniquement par une table de solutions (et pas par la visualisation des résultats dans une carte).
  • Lignes droitesLes formes de ligne en sortie sont des lignes droites qui connectent les ressources de solution à leurs points de demande alloués. Il s’agit de l’option par défaut.
String
Attributs d'accumulation
(Facultatif)

Liste des attributs de coût à cumuler lors de l’analyse. Ces attributs accumulés servent uniquement de référence. Le solveur utilise uniquement l’attribut de coût utilisé par le mode de déplacement désigné pour la réalisation de l’analyse.

Pour chaque attribut de coût accumulé, une propriété Total_[Impédance] est renseignée dans les entités en sortie de l’analyse du réseau.

Ce paramètre n’est pas disponible si la source de données réseau est un service ArcGIS Online ou si la source de données réseau est un service hébergé sur une version de Portal for ArcGIS qui ne prend pas en charge l’accumulation.

String
Ignorer les localisations non valides lors de l’analyse
(Facultatif)

Détermine si les emplacements en entrée non valides sont ignorés. En règle générale, les localisations ne sont pas valides si elles ne peuvent pas être localisées sur le réseau. Lorsque les localisations non valides sont ignorées, le solveur les ignore et tente de réaliser l’analyse avec les localisations restantes.

  • Activé : les localisations en entrée non valides sont ignorées et seules les localisations valides sont utilisées. Il s’agit de l’option par défaut.
  • Activé : toutes les localisations en entrée sont utilisées. Les localisations non valides provoquent l’échec de l’analyse.
Boolean

Sortie obtenue

ÉtiquetteExplicationType de données
Couche Network Analyst

La couche d’analyse de réseau nouvellement créée.

Network Analyst Layer

arcpy.na.MakeLocationAllocationAnalysisLayer(network_data_source, {layer_name}, {travel_mode}, {travel_direction}, {problem_type}, {cutoff}, {number_of_facilities_to_find}, {decay_function_type}, {decay_function_parameter_value}, {target_market_share}, {capacity}, {time_of_day}, {time_zone}, {line_shape}, {accumulate_attributes}, {ignore_invalid_locations})
NomExplicationType de données
network_data_source

Jeu de données réseau ou service sur lequel l'analyse du réseau est effectuée. Utilisez l'URL du portail pour un service.

Network Dataset Layer;String
layer_name
(Facultatif)

Nom de la couche d’analyse de réseau à créer.

String
travel_mode
(Facultatif)

Nom du mode de déplacement à utiliser dans l’analyse. Le mode de déplacement représente une collection de paramètres réseau, tels que des restrictions de circulation et des règles de demi-tour, qui détermine la façon dont un piéton, une voiture, un camion ou un autre mode de transport se déplace sur le réseau. Les modes de déplacement sont définis dans votre source de données de réseau.

Vous pouvez aussi utiliser un objet arcpy.na.TravelMode et une chaîne contenant la représentation JSON valide d’un mode de déplacement en entrée du paramètre.

String
travel_direction
(Facultatif)

Précise la direction de déplacement entre ressources et points de demande lors du calcul des coûts du réseau.

  • FROM_FACILITIESLa direction de déplacement va des ressources vers les points de demande. Il s’agit de l’option par défaut. Les services des pompiers utilisent en général ce paramètre, car ils s’intéressent à la durée du trajet entre la caserne et le site d’intervention.
  • TO_FACILITIESLa direction de déplacement va des points de demande vers les ressources. Les points de vente de détail utilisent couramment ce paramètre, car ils s'intéressent au temps nécessaire aux acheteurs pour atteindre le magasin.

Cette option peut affecter l'attribution des points de demande aux ressources d'un réseau avec des restrictions unilatérales et des impédances différentes selon la direction de déplacement. Par exemple, un point de demande peut être situé à 15 minutes de trajet d'une ressource, mais le trajet peut demander seulement 10 minutes en circulant en sens inverse (de la ressource vers le point de demande).

String
problem_type
(Facultatif)

Type de problème à résoudre. Le choix du type de problème dépend du genre de ressource localisée. Différents genres de ressources ont des priorités et des contraintes différentes.

  • MINIMIZE_IMPEDANCECette option résout le problème de l'emplacement de l'entrepôt. Elle sélectionne un ensemble de ressources de manière à minimiser la somme des impédances pondérées (demande à un emplacement multipliée par la ressource la plus proche). Ce type de problème est souvent désigné par le nom de problème P Médian. Il s'agit du type de problème par défaut.
  • MAXIMIZE_COVERAGECette option résout le problème de l'emplacement de la caserne de pompiers. Elle sélectionne des ressources de manière que l'intégralité ou le plus grand nombre de demandes se trouve dans une limite d'impédance précisée.
  • MAXIMIZE_CAPACITATED_COVERAGECette option résout le problème de l'emplacement dans lequel les ressources ont une capacité limitée. Elle choisit des ressources afin que l'intégralité ou une grande partie de la demande puisse être satisfaite sans dépasser la capacité des ressources. En outre, elle sélectionne les ressources afin que la somme totale des impédances pondérées (demande allouée à une ressource multipliée par l'impédance vers ou depuis la ressource) soit minimisée.
  • MINIMIZE_FACILITIESCette option résout le problème de l'emplacement de la caserne de pompiers. Elle sélectionne le nombre minimal de ressources nécessaires pour couvrir toutes les demandes (ou le plus grand nombre) dans une limite d’impédance spécifiée.
  • MAXIMIZE_ATTENDANCECette option résout le problème de l'emplacement d'un magasin de voisinage où la proportion de demande allouée à la ressource la plus proche sélectionnée diminue avec l'augmentation de la distance. L'ensemble de ressources qui maximisent la demande allouée est sélectionné. Une demande située plus loin que la limite d'impédance spécifiée n'affecte pas l'ensemble de ressources sélectionné.
  • MAXIMIZE_MARKET_SHARECette option résout le problème de l'emplacement de ressource compétitif. Elle sélectionne des ressources pour maximiser la part de marché en présence de ressources compétitives. Les concepts de modèle gravitaire permettent de déterminer la proportion de demande allouée à chaque ressource. L'ensemble de ressources qui maximise la demande allouée est sélectionné.
  • TARGET_MARKET_SHARECette option résout le problème de l'emplacement de ressource compétitif. Elle sélectionne des ressources permettant d'atteindre une part de marché cible spécifiée dans la présence de ressources compétitives. Les concepts de modèle gravitaire permettent de déterminer la proportion de demande allouée à chaque ressource. Le nombre minimal de ressources nécessaire pour atteindre la part de marché cible spécifiée est sélectionné.
String
cutoff
(Facultatif)

Impédance maximale à laquelle un point de demande peut être alloué à une ressource, dans les unités de l'attribut d'impédance utilisé pour le Mode de déplacement choisi. L'impédance maximale est mesurée par le chemin de moindre coût le long du réseau. Si un point de demande est situé à l'extérieur de la limite, il reste non alloué. Cette propriété peut permettre de modéliser la distance maximale que les gens sont disposés à parcourir pour accéder à vos magasins ou la durée maximale autorisée pour un service des pompiers pour atteindre toute personne de la communauté.

Vous pouvez remplacer cette limite point de demande par point de demande, en spécifiant des valeurs de limite individuelles dans la sous-couche des points de demande de la propriété Cutoff_[Impédance]. Vous pouvez par exemple déterminer que les habitants des zones rurales sont prêts à faire jusqu'à 10 miles pour atteindre une ressource, tandis que les citadins sont uniquement prêts à faire jusqu'à 2 miles. Vous pouvez modéliser ce comportement en définissant la valeur Limite de la couche d’analyse sur 10 et la valeur Cutoff_Miles de chaque point de demande d’une zone urbaine sur 2.

Par défaut, aucune limite n'est utilisée pour l'analyse.

Double
number_of_facilities_to_find
(Facultatif)

Spécifie le nombre des ressources que le solveur doit localiser. Par défaut, ce paramètre est défini sur 1.

Les ressources présentant une propriété FacilityType de valeur Requis font toujours partie de la solution lorsque le nombre de ressources à rechercher est supérieur au nombre de ressources requises ; toutes les ressources à sélectionner supplémentaires sont choisies parmi les ressources candidates.

Toute ressource ayant une propriété FacilityType de valeur Choix avant le calcul est traitée comme les ressources candidates lors de la recherche.

La valeur du paramètre n’est pas prise en compte pour le type de problème MINIMIZE_FACILITIES, puisque le solveur détermine le nombre minimal de ressources à localiser pour optimiser la couverture.

La valeur du paramètre est remplacée pour le type de problème TARGET_MARKET_SHARE, car le solveur recherche le nombre minimal de ressources requises pour capturer la part de marché spécifiée.

Long
decay_function_type
(Facultatif)

Définit l'équation pour la transformation du coût du réseau entre les ressources et les points de demande. Cette propriété, associée à la Valeur du paramètre de la fonction de désintégration, spécifie l'importance de l'influence de l'impédance du réseau entre les ressources et les points de demande sur le choix de ressources du solveur.

  • LINEARL'impédance de réseau transformée entre la ressource et le point de demande est identique à l'impédance de réseau du plus court chemin. Avec cette option, le paramètre d'impédance a toujours la valeur 1. Il s’agit de l’option par défaut.
  • POWERL'impédance de réseau transformée entre la ressource et le point de demande est égale à l'impédance de réseau du plus court chemin élevée à la puissance indiquée par le paramètre d'impédance. Cette option avec un paramètre d'impédance positif permet de spécifier la plus haute pondération aux ressources proches.
  • EXPONENTIALL'impédance de réseau transformée entre la ressource et le point de demande est égale à la constante mathématique e élevée à la puissance indiquée par l'impédance de réseau du plus court chemin multipliée par le paramètre d'impédance. Cette option avec un paramètre d'impédance positif permet de spécifier une pondération très élevée pour les ressources proches.Les transformations exponentielles sont généralement utilisées conjointement avec une limite d'impédance.

Les points de demande disposent d’une propriété ImpedanceTransformation qui, si elle est définie, remplace la propriété Valeur du paramètre de la fonction de désintégration de la couche d’analyse, point de demande par point de demande. Vous pouvez déterminer que la fonction de désintégration doit être différente pour les ruraux et les citadins. Vous pouvez modéliser ceci en définissant la transformation d'impédance de la couche d'analyse de manière à ce qu'elle corresponde à celle des résidents ruraux et en définissant la transformation d'impédance des points de demande individuels situés dans les zones urbaines de manière à ce qu'elle corresponde à celle des citadins.

String
decay_function_parameter_value
(Facultatif)

Valeur de paramètre des équations spécifiées pour le paramètre decay_function_type. La valeur de paramètre est ignorée lorsque la fonction de désintégration est de type LINEAR. Pour les fonctions de désintégration POWER et EXPONENTIAL, la valeur doit être différente de zéro.

Les points de demande disposent d’une propriété ImpedanceTransformation qui, si elle est définie, remplace la propriété decay_function_parameter_value de la couche d’analyse, point de demande par point de demande. Vous pouvez déterminer que la fonction de désintégration doit être différente pour les ruraux et les citadins. Vous pouvez modéliser ceci en définissant la transformation d'impédance de la couche d'analyse de manière à ce qu'elle corresponde à celle des résidents ruraux et en définissant la transformation d'impédance des points de demande individuels situés dans les zones urbaines de manière à ce qu'elle corresponde à celle des citadins.

Double
target_market_share
(Facultatif)

Spécifie la part de marché cible en pourcentage pour laquelle effectuer l’analyse lorsque le paramètre problem_type est défini sur TARGET_MARKET_SHARE. Il s'agit du pourcentage de la pondération de demande totale à capturer par vos ressources de solution. Le solveur sélectionne le nombre minimal de ressources requis pour capturer la part de marché cible spécifiée par cette valeur numérique.

Double
capacity
(Facultatif)

Spécifie la capacité par défaut des ressources lorsque le paramètre problem_type est défini sur MAXIMIZE_CAPACITATED_COVERAGE. Ce paramètre est ignoré pour tous les autres types de problème.

Les ressources disposent d’une propriété Capacité qui, si elle est définie sur une valeur non nulle, remplace le paramètre capacity correspondant.

Double
time_of_day
(Facultatif)

Heure et la date de départ. L'heure de départ peut être définie à partir des ressources ou des points de demande, selon que le Sens de déplacement s'effectue de la demande vers la ressource ou de la ressource vers la demande.

Si vous avez choisi un attribut d'impédance basé sur la circulation, l'analyse est effectuée selon des conditions de circulation dynamiques correspondant à l'heure du jour spécifiée ici. Une date et une heure peuvent être spécifiées sous la forme 5/14/2012 10:30 AM.

Au lieu d'utiliser une date particulière, un jour de la semaine peut être spécifié à l'aide des dates suivantes :

  • Aujourd’hui - 12/30/1899
  • Dimanche - 12/31/1899
  • Lundi - 1/1/1900
  • Mardi - 1/2/1900
  • Mercredi - 1/3/1900
  • Jeudi - 1/4/1900
  • Vendredi - 1/5/1900
  • Samedi - 1/6/1900

Date
time_zone
(Facultatif)

Fuseau horaire du paramètre Time of Day (Heure du jour).

  • LOCAL_TIME_AT_LOCATIONSLe paramètre Heure du jour se rapporte au fuseau horaire dans lequel se trouvent les ressources ou les points de demande. Si la Feuille de route est ressources vers points de demande, il s'agit du fuseau horaire des ressources. Si la Feuille de route est points de demande vers ressources, il s'agit du fuseau horaire des points de demande. Il s’agit de l’option par défaut.
  • UTCLe paramètre Heure du jour est exprimé en UTC (Temps Universel Coordonné). Choisissez cette option si vous souhaitez choisir le meilleur emplacement à une heure donnée (maintenant, par exemple), sans toutefois connaître avec certitude le fuseau horaire dans lequel se trouvent les ressources ou les points de demande.
String
line_shape
(Facultatif)

Indique la forme de la ligne en sortie.

  • NO_LINESAucune ligne n'est créée pour l'analyse en sortie. Ceci est utile lorsque vous résolvez un très gros problème et que vous êtes intéressé uniquement par une table de solutions (et pas par la visualisation des résultats dans une carte).
  • STRAIGHT_LINESLes formes de ligne en sortie sont des lignes droites qui connectent les ressources de solution à leurs points de demande alloués. Il s’agit de l’option par défaut.

Indépendamment du type de forme en sortie choisi, le meilleur itinéraire est toujours déterminé par l'impédance du réseau, jamais par la distance euclidienne. Cela signifie que seules les formes d'itinéraire sont différentes, pas le parcours du réseau sous-jacent.

String
accumulate_attributes
[accumulate_attributes,...]
(Facultatif)

Liste des attributs de coût à cumuler lors de l’analyse. Ces attributs accumulés servent uniquement de référence. Le solveur utilise uniquement l’attribut de coût utilisé par le mode de déplacement désigné pour la réalisation de l’analyse.

Pour chaque attribut de coût accumulé, une propriété Total_[Impédance] est renseignée dans les entités en sortie de l’analyse du réseau.

Ce paramètre n’est pas disponible si la source de données réseau est un service ArcGIS Online ou si la source de données réseau est un service hébergé sur une version de Portal for ArcGIS qui ne prend pas en charge l’accumulation.

String
ignore_invalid_locations
(Facultatif)

Détermine si les emplacements en entrée non valides sont ignorés. En règle générale, les localisations ne sont pas valides si elles ne peuvent pas être localisées sur le réseau. Lorsque les localisations non valides sont ignorées, le solveur les ignore et tente de réaliser l’analyse avec les localisations restantes.

  • SKIPLes localisations en entrée non valides sont ignorées et seules les localisations valides sont utilisées. Il s’agit de l’option par défaut.
  • HALTToutes les localisations en entrée sont utilisées. Les localisations non valides provoquent l’échec de l’analyse.
Boolean

Sortie obtenue

NomExplicationType de données
out_network_analysis_layer

La couche d’analyse de réseau nouvellement créée.

Network Analyst Layer

Exemple de code

Exemple 1 d'utilisation de l'outil Générer une couche d'analyse d'emplacement-allocation (fenêtre Python)

Exécute l'outil uniquement avec les paramètres requis.

network = "C:/Data/SanFrancisco.gdb/Transportation/Streets_ND"
arcpy.na.MakeLocationAllocationAnalysisLayer(network, "StoreLocations")
Exemple 2 d’utilisation de l’outil Générer une couche d’analyse d’allocation-localisation (fenêtre Python)

Exécutez l'outil avec tous les paramètres.

network = "C:/Data/SanFrancisco.gdb/Transportation/Streets_ND"
arcpy.na.MakeLocationAllocationAnalysisLayer(network, "NewStores",
                                    "Driving Time", "TO_FACILITIES",
                                    "MAXIMIZE_ATTENDANCE", 3, 5, "POWER", 2, "",
                                    "", "1/1/1900 9:00 AM", "UTC",
                                    "STRAIGHT_LINES", ["TravelTime", "Meters"])
Exemple 3 d'utilisation de l'outil Générer une couche d'analyse d'emplacement-allocation (workflow)

Le script Python autonome suivant montre comment l’utilisation de l’outil MakeLocationAllocationAnalysisLayer permet de sélectionner les implantations des points de vente susceptibles de générer la plus grande activité pour une chaîne de magasins.

# Name: MakeLocationAllocationAnalysisLayer_Workflow.py
# Description: Choose the store locations that would generate the most business
#              for a retail chain. For this scenario, we will perform the
#              location-Allocation analysis using the maximize attendance
#              problem type.
# Requirements: Network Analyst Extension

#Import system modules
import arcpy
from arcpy import env
import os

try:
    #Check out Network Analyst license if available. Fail if the Network Analyst license is not available.
    if arcpy.CheckExtension("network") == "Available":
        arcpy.CheckOutExtension("network")
    else:
        raise arcpy.ExecuteError("Network Analyst Extension license is not available.")
    
    #Set environment settings
    output_dir = "C:/Data"
    #The NA layer's data will be saved to the workspace specified here
    env.workspace = os.path.join(output_dir, "Output.gdb")
    env.overwriteOutput = True

    #Set local variables
    input_gdb = "C:/Data/SanFrancisco.gdb"
    network = os.path.join(input_gdb, "Transportation", "Streets_ND")
    layer_name = "NewStoreLocations"
    travel_mode = "Driving Time"
    facilities = os.path.join(input_gdb, "Analysis", "CandidateStores")
    required_facility = os.path.join(input_gdb, "Analysis", "ExistingStore")
    demand_points = os.path.join(input_gdb, "Analysis", "TractCentroids")
    output_layer_file = os.path.join(output_dir, layer_name + ".lyrx")

    #Create a new location-allocation layer. In this case, the demand travels to
    #the facility. We wish to find 3 potential store locations out of all the
    #candidate store locations using the maximize attendance model.
    result_object = arcpy.na.MakeLocationAllocationAnalysisLayer(network,
                                    layer_name, travel_mode, "TO_FACILITIES",
                                    "MAXIMIZE_ATTENDANCE", cutoff=20,
                                    number_of_facilities_to_find=3)

    #Get the layer object from the result object. The location-allocation layer
    #can now be referenced using the layer object.
    layer_object = result_object.getOutput(0)

    #Get the names of all the sublayers within the location-allocation layer.
    sublayer_names = arcpy.na.GetNAClassNames(layer_object)
    #Stores the layer names that we will use later
    facilities_layer_name = sublayer_names["Facilities"]
    demand_points_layer_name = sublayer_names["DemandPoints"]

    #Load the candidate store locations as facilities using default search
    #tolerance and field mappings.
    arcpy.na.AddLocations(layer_object, facilities_layer_name, facilities, "",
                                                                            "")

    #Load the existing store location as the required facility. Use the field
    #mappings to set the facility type to requried. We need to append this
    #required facility to existing facilities.
    field_mappings = arcpy.na.NAClassFieldMappings(layer_object,
                                                    facilities_layer_name)
    field_mappings["FacilityType"].defaultValue = 1
    arcpy.na.AddLocations(layer_object, facilities_layer_name,
                            required_facility, field_mappings, "",
                            append="APPEND")

    #Load the tract centroids as demand points using default search tolerance
    #Use the field mappings to map the Weight property from POP2000 field.
    demand_field_mappings = arcpy.na.NAClassFieldMappings(layer_object,
                                                    demand_points_layer_name)
    demand_field_mappings["Weight"].mappedFieldName = "POP2000"
    arcpy.na.AddLocations(layer_object, demand_points_layer_name, demand_points,
                          demand_field_mappings, "")

    #Solve the location-allocation layer
    arcpy.na.Solve(layer_object)

    #Save the solved location-allocation layer as a layer file on disk
    layer_object.saveACopy(output_layer_file)

    print("Script completed successfully")

except Exception as e:
    # If an error occurred, print line number and error message
    import traceback, sys
    tb = sys.exc_info()[2]
    print("An error occurred on line %i" % tb.tb_lineno)
    print(str(e))

Environnements

Cas particuliers

Informations de licence

  • Basic: Oui
  • Standard: Oui
  • Advanced: Oui