Détecter les incidents

Detect Incidents (Détecter les incidents)


Cet outil fonctionne avec une couche temporelle de points, de lignes, de surfaces ou de tables qui représente un instant donné dans le temps. À l’aide d’entités organisées de manière séquentielle, appelées pistes, cet outil détermine quelle entités sont des incidents d’intérêt. Les incidents sont déterminés par des conditions que vous spécifiez.

D’abord, l’outil détermine quelles entités appartiennent à une piste à l’aide d’un ou plusieurs champs. En utilisant le temps à chaque entité, les pistes sont organisées de manière séquentielle et la condition d’incident est appliquée. Les entités répondant à la condition d’incident de départ sont signalées comme un incident. Vous pouvez si vous le souhaitez appliquer une condition d’incident de fin ; lorsque la condition de fin est vraie, l’entité n’est plus un incident. Les résultats sont renvoyés avec les entités d’origine (avec de nouvelle colonnes représentant le nom de l’incident) et indiquent quelles entités répondent à la condition d’incident. Vous pouvez renvoyer toutes les entités d’origine ou uniquement les entités qui constituent des incidents.

Supposons par exemple que vous possédiez des mesures GPS d'ouragans toutes les 10 minutes. Chaque mesure GPS consigne le nom de l'ouragan, sa position, l'heure d'enregistrement et la vitesse du vent. Avec ces champs, vous pouvez créer un incident dans lequel une mesure dont la vitesse de vent est supérieure à 208 km/h constitue un incident nommé Catastrophique. Si une condition de fin n’est pas définie, l’incident se termine si l’entité ne répond plus à la condition de début (la vitesse du vent ralentit à moins de 208 km/h).

Dans un autre exemple, vous surveillez les concentrations d’un produit chimique dans vos canalisations d’eau à l’aide d’un champ nommé NiveauContamination. Vous savez que les niveaux recommandés sont inférieurs à 0,01 mg/L et que les niveaux dangereux supérieurs à 0,03 mg/L. Pour détecter les incidents où une valeur supérieure à 0,03 mg/L constitue un incident et reste un incident jusqu’au retour à la normale des niveaux de contamination, vous créez un incident à l’aide d’une condition de début de NiveauContamination > 0,03 et d’une condition de fin de NiveauContamination < 0,01. Ceci marque toute séquence dans laquelle les valeurs dépassent 0,03 mg/L jusqu’à leur retour à une valeur inférieure à 0,01.

Sélectionner la couche dans laquelle les incidents doivent être détectés


Les points, lignes, espaces ou tables allant être utilisés pour rechercher des incidents. La couche en entrée doit être temporelle avec des entités représentant un instant dans le temps et doit comporter un ou plusieurs champs permettant d’identifier les pistes.

Outre le fait de choisir une couche de votre carte, vous pouvez sélectionner Choose Analysis Layer (Choisir une couche d’analyse) au bas de la liste déroulante pour parcourir votre contenu et rechercher une couche d’entités ou un jeu de données de partage de fichiers Big Data.

Sélectionner un ou plusieurs champs pour identifier les pistes


Les champs qui représentent l’identifiant de piste. Vous pouvez utiliser un ou plusieurs champs pour représenter des valeurs de pistes uniques.

Par exemple, si vous reconstruisez les pistes des ouragans, vous pouvez utiliser le nom de l’ouragan comme nom de piste.

Créer une condition d'expression pour indiquer le début d'un incident


Ajoutez une condition à l’aide du générateur d’expressions pour déterminer ce que constitue un incident. Si la condition que vous spécifiez est vraie, l’entité constitue un incident. Si vous ne spécifiez pas de condition de fin, un incident se termine lorsque la condition de début n’est plus vraie.

Par exemple, vous souhaitez être alerté lorsque la somme des champs concentration_1 et concentration_2 est supérieure à concentration_3. Pour ce faire, appliquez une condition de ($feature["concentration_1"] + $feature["concentration_2"]) > $feature["concentration_3"]).

Si vous vous intéressez à la manière dont les concentrations varient dans le temps et souhaitez recevoir une alerte lorsque la concentration_1 actuelle est supérieure aux deux mesures précédentes de concentration_2, vous pouvez utiliser une expression telle que $feature["concentration_1"] > $track.field["concentration_2"].history(-3,-1).

Créer une condition d’expression pour indiquer la fin d’un incident (facultatif)


Si vous le souhaitez, ajoutez une condition à l’aide du générateur d’expressions pour déterminer la fin d’un incident. Si la condition de fin que vous spécifiez est vraie, l’entité ne constitue plus un incident. Si vous ne spécifiez pas de condition de fin, un incident se termine lorsque la condition de début n’est plus vraie.

Par exemple, vous souhaitez être alerté lorsque la somme des champs concentration_1 et concentration_2 est supérieure à concentration_3, et vous souhaitez que l’incident se termine si concentration_4 est inférieur à concentration_1. Pour ce faire, appliquez une condition de début de ($feature["concentration_1"] + $feature["concentration_2"]) > ($join["revenu"] * .20) et une condition de fin de ($feature["concentration_4"] < $feature["concentration_1"]).

Si vous voulez qu’un incident prenne fin lorsque la moyenne de la valeur actuelle de concentration_1 et les quatre mesures précédentes sont supérieures à la première mesure, vous pouvez utiliser une expression telle que $track.field["concentration_1"].history(-5) > $track.field["concentration_1"].history(0).

Me montrer


Toutes les méthodes en sortie ajoutent les champs aux entités d’origine. Il existe deux méthodes pour déterminer quelles entités sont renvoyées :

  • All features (Toutes les entités) : il s’agit de la méthode par défaut. Toutes les entités dans l’entrée sont renvoyées.
  • Only incidents (Uniquement les incidents) : cette méthode ne renvoie que les entités qui constituent des incidents. Les entités qui ne constituent pas des incidents ne sont pas renvoyées.

Analyser les données selon les intervalles temporels (facultatif)


Indiquez si vous voulez détecter les incidents à l’aide d’intervalles temporels qui segmentent les entités en entrée à analyser. Si vous utilisez des intervalles temporels, vous devez définir les intervalles temporels nécessaires et, éventuellement, le temps de référence. Si vous n’indiquez pas de temps de référence, la date du 1er janvier 1970 est employée.

Si, par exemple, vous définissez la limite temporelle comme étant un jour, à partir de 9 heures du matin à la date du 1er janvier 1990, chaque piste sera tronquée à 9 heures chaque jour et analysé au sein de ce segment.

L’utilisation d’intervalles temporels est une manière d’accélérer le calcul car elle génère de plus petites pistes à analyser. S’il est pertinent d’appliquer une division par un intervalle temporel récurrent dans le cadre de l’analyse, il est recommandé d’utiliser cette méthode pour le traitement Big Data.

Nom de la couche de résultat


Nom de la couche à créer. Si vous écrivez sur une instance ArcGIS Data Store, les résultats seront enregistrés dans My Content (Mon contenu) et ajoutés à la carte. Si vous écrivez sur un partage de fichiers Big Data, les résultats seront enregistrés dans le partage de fichiers Big Data et ajoutés à son manifeste. Il ne sera pas ajouté à la carte. Le nom par défaut repose sur le nom de l'outil et sur le nom de la couche en entrée. Si la couche existe déjà, l'outil échoue.

Lors de l’écriture sur ArcGIS Data Store (répertoire de données relationnelles ou spatio-temporelles) via la zone de liste déroulante Save result in (Enregistrer le résultat dans), vous pouvez spécifier le nom d’un dossier dans My Content (Mon contenu) où le résultat sera enregistré.