Трассировать события близости (GeoAnalytics Desktop)

Краткая информация

Отслеживает события рядом друг с другом в пространстве (местоположении) и времени. Точечные данные с поддержкой времени должны включать объекты, представляющие момент времени.

Иллюстрация

Иллюстрация работы инструмента Трассировать события близости
Показан пример трассируемых событий (оранжевые круги) и треков (красные круги).

Использование

  • Ниже приведены примеры вариантов, которые можно выполнить с помощью инструмента Трассировка событий близости:

    • Организация контролирует выданные рабочим мобильные устройства. Компания желает определить, кто из сотрудников находился рядом с человеком, о котором известно, что он был болен коронавирусом (COVID-19). Используя точечный слой, представляющий местоположения и время устройства, они узнают, какие из устройств находились в пределах шести метров и пяти минут от носителя инфекции и о других, возможно, заразных сотрудниках.
    • Одна НПО ведет мониторинг популяций лосося с помощью GPS и заинтересована в отслеживании передачи лососевых вшей между искусственно выращенными рыбами и дикими популяциями. С помощью GPS-меток отслеживается некоторая часть выращенных на фермах особей, чтобы определить, находятся ли они в непосредственной близости от помеченных диких популяций, и как эти дикие популяции могут еще больше распространять заболевание. Эти измерения также учитывают поле глубин, которое НПО использует для поиска рыбы на аналогичной глубине.

  • С инструментом Трассировка событий близости используется следующая терминология:

    • Объект – объект, положение которого периодически регистрируется, например, животное, человек или транспортное средство. Объект может быть неподвижным или движущимся.
    • Объекты интереса – конкретные объекты, используемые для запуска трассировки, например, человек, зараженный COVID-19.
    • Событие близости – период времени, когда два объекта находятся вблизи друг от друга, например, два человека на расстоянии до 3 метров друг от друга и в пределах 1-минутного окна друг от друга.
    • Глубина – степень разделения между объектом интереса и объектом, находящимся дальше по направлению трассировки (вниз по течению). Например, событие близости между объектом интереса и кем-то другим имеет глубину 1.
    • Событие трассировки – первый контакт для указанного объекта ниже по течению от интересующих объектов.
  • При трассировке событий близости ответственность за понимание организационных, местных и национальных правил, касающихся чувствительности данных и конфиденциальности, ложится на вас.

  • Следующие диаграммы показывают, как инструмент Трассировка событий близости обрабатывает данные. На этих диаграммах время отложено по оси x.

    В каждой диаграмме есть четыре объекта: A, B, C и D. Выделенный текст описывает события трассъектамиировки, которые происходят между двумя об (объектами "от" и "до"), а также глубину события близости. В этом примере объект С – это объект интереса, который трассируется ниже по течению.

    На диаграмме 1 объект С выбран в качестве объекта интереса. Глубина равна 0.

    Диаграмма 1 инструмента Трассировка событий близости

    На схеме 2 событие близости происходит между объектами C и B. Глубина трассировки равна 1. Если несколько объектов являются последующими событиями близости, то это устойчивое событие близости.

    Диаграмма 2 инструмента Трассировка событий близости

    На схеме 3 событие близости происходит между объектами B и A. Глубина трассировки равна 2.

    Диаграмма 3 инструмента Трассировка событий близости

    На схеме 4 событие близости происходит между объектами C и D. Глубина трассировки равна 1.

    Диаграмма 4 инструмента Трассировка событий близости

    На изображении ниже объект В является объектом интереса и находится в непосредственной близости с объектом A три раза, обозначено синими кругами. Подразумевая, что время находится на оси x, первое событие близости равно 1, затем следует разрыв без контакта, а после этого - события близости 2 и 3. Инструмент вернет событие 1 в качестве события трассировки. События близости 2 и 3 не возвращаются в слое параметров Выходные близкие события. Все объекты после события близости 1 возвращаются в параметре Выходные треки.

    Первое событие трассировки

  • Чтобы объекты считались находящимися в непосредственной близости, они должны подходить как по критериям параметра Радиус поиска в пространстве, так и по критериям параметра Радиус поиска по времени.

    Диаграмма Радиус поиска в пространстве
    Рисунок A: эти два объекта находятся в пределах радиуса поиска в пространстве друг от друга.
    Диаграмма Радиус поиска по времени
    Рисунок B: эти два объекта находятся в пределах расстояния временного поиска друг от друга.
  • Указание большего радиуса поиска по времени и большего радиуса поиска в пространстве приведет к большему количеству событий и займет больше времени для обработки результатов. Меньшие значения радиуса дадут меньшее количество событий и меньшее время обработки.

  • Значения, используемые для параметров Радиус поиска в пространстве и Радиус поиска по времени, определяются в зависимости от конкретной области применения этих параметров. Задавая значения этих расстояний, учитывайте такие факторы, как точность устройства.

  • Параметр Задать объекты интереса с помощью поддерживает следующие опции:

    • Идентификаторы объектов интереса – эта опция включает параметр Идентификаторы объектов интереса, которому требуются значения Идентификатор объекта и, дополнительно, значения времени Начиная с, когда начнется трассировка.
    • Выбранные объекты в заданном слое объекта интереса – эта опция включает параметр Слой объектов интереса, который позволяет выбрать слой, включающий идентификаторы объектов и дополнительно время начала трассировки. Для этого слоя имя поля идентификатора объекта должно совпадать с именем поля идентификатора объекта из входного слоя. В этом слое будет использоваться время, если оно поддерживается для этого слоя.
  • Объект интереса находится там, где начнется трассировка близости. Если вы укажете время начала, то трассировка для данного объекта начнется именно в это время. Если вы не укажете время, то трассировка для данного объекта начнется 1 января 1970 года.

  • Для отдельного события близости можно задать дополнительные условия. Например, вы можете отслеживать отдельных людей как только в определенном здании в кампусе, так и только на определенном этаже здания. Задать уточняющие атрибуты можно с помощью параметра Критерии соответствия атрибутов. Например, чтобы ограничить объекты одним этажом, укажите поле Floor.

  • Слой Выходные события близости будет содержать первое событие близости для объектов трассировки, а также следующие поля:

    • from_id— ID сущности-объекта вверх по течению.
    • to_id— ID сущности-объекта вниз по течению.
    • depthСтепень разделения между объектом интереса и полем to_id.
    • duration_minutes— Длительность события трассировки в минутах. Это поле вычисляется как разница между временем начала и окончания. Например, 1,5 минуты – это 90 секунд. Значение 0 означает, что существует одно событие близости (одно и то же время начала и окончания).
    • date— Дата и время события близости. Это поле вычисляется как первое зарегистрированное время, которое отвечает критериям события близости.

    Выходной слой событий близости можно визуализировать с помощью бегунка времени или в диаграмме связей, чтобы просмотреть результаты трассировки.

  • Вы можете использовать дополнительный параметр Выходные треки, чтобы создать слой, содержащий первое событие трассировки и все последующие объекты для данной трассировки. Эти результаты полезны для визуализации перемещений объектов, и могут быть использованы в инструменте Заново создать треки. Параметр Выходные треки будет включать следующие поля:

    • entity_id— ID сущности-объекта.
    • depthСтепень разделения между объектом интереса и треком трассировки. На протяжении отдельного трека глубина будет одинаковой.
    • instant_datetime— Дата каждого объекта. Это будет та же дата, что и запись из входных объектов.
  • Входные точки, которые не имеют значений времени, геометрии или поля идентификатора объекта, в результаты не включаются.

  • При использовании трассировки близости для обнаружения инфицирования (заболевания) следует учитывать следующее:

    • Наличие события трассировки не гарантирует, что оно (заболевание) было передано; это только потенциальная возможность.
    • Отсутствие события трассировки не означает, что нечто не было передано. В таких случаях, как болезнь, возможна передача через другие носители.
    • По возможности используйте параметр Критерии соответствия атрибутов для уточнения событий близости, когда требуется. Например, атрибуты можно использовать для уточнения комнаты, этажа или высоты.

  • Если вы хотите вычислить все событий близости и не собираетесь выполнять трассировку вниз по течению от интересующего объекта, используйте инструмент Присоединить объекты.

  • Вы можете повысить производительность инструмента Трассировать события близости, выполнив одно или несколько из следующих действий:

    • Используйте более низкие значения параметров Радиус поиска в пространстве и Радиус поиска по времени.
    • Уточните объекты интереса, используя параметр Критерии соответствия атрибутов.
    • Задайте значение параметра Максимальная глубина трассировки, чтобы ограничить число трассировок вниз по течению для данного объекта и данного объекта интереса.
    • Установите параметр среды Экстент так, чтобы вы анализировали только интересующие вас данные.
    • Используйте локальные данные там, где запускается анализ.

  • Этот инструмент геообработки работает от Spark. Анализ выполняется на настольном компьютере с использованием нескольких ядер параллельно. См. Информация по инструментами GeoAnalytics Desktop, чтобы узнать больше о выполнении анализа.

  • При запуске инструментов GeoAnalytics Desktop анализ выполняется на настольном компьютере. Для оптимальной производительности данные должны быть доступны на настольном компьютере. Если используется размещенный векторный слой, рекомендуется применить ArcGIS GeoAnalytics Server. Если данные находятся не на жестком диске, для запуска инструмента потребуется больше времени. Чтобы использовать ArcGIS GeoAnalytics Server для выполнения анализа, см. GeoAnalytics Tools.

Параметры

ПодписьОписаниеТип данных
Входные точки

Класс точечных пространственных объектов с поддержкой времени, который будет использоваться для трассировки событий близости.

Feature Layer
Поле ID элемента

Текстовое поле, отображающее уникальные идентификаторы для каждого объекта.

Field
Выходные события близости

Выходной класс пространственных объектов, содержащий трассировку событий близости.

Feature Class
Метод расстояний

Указывает тип расстояния, который будет использоваться в параметре Радиус поиска в пространстве.

  • ПланарныйМежду объектами будет использоваться плоскостное расстояние. Это значение по умолчанию
  • ГеодезическийБудет использовано геодезическое расстояние между объектами. Этот тип линии учитывает кривизну сфероида и корректно обрабатывает данные вблизи линии перемены дат и полюсов.
String
Радиус поиска в пространстве
(Дополнительный)

Максимальное расстояние между двумя точками, которое следует учитывать в непосредственной близости. Объекты в пределах критериев Радиус поиска в пространстве и Радиус поиска по времени считаются находящимися в непосредственной близости друг от друга.

Linear Unit
Радиус поиска по времени
(Дополнительный)

Максимальная продолжительность между двумя точками, которую следует учитывать в непосредственной близости. Объекты в пределах критериев Радиус поиска по времени и отвечающие критериям Радиус поиска в пространстве считаются находящимися в непосредственной близости друг от друга.

Time Unit
Задать элементы интереса с помощью
(Дополнительный)

Задает объекты интереса.

  • ID элементов интересаВ качестве объектов интереса будут использоваться имена объектов и значения времени. Это значение по умолчанию
  • Выбранные пространственные объекты в заданном слое объектов интересаВ качестве объектов интереса будут использоваться выделенный объект в заданном слое объектов интереса.
String
ID элементов интереса

Имена объектов и время начала для объектов интереса. Этот параметр поддерживается только в том случае, если для параметра Задать объекты интереса с помощью указаны ID объектов интереса.

  • Идентификатор объекта – уникальное имя объекта. Имена чувствительны к регистру и должны быть текстовыми.
  • Начиная с – Необязательное время начала трассировки объекта интереса. Если время не задано, то будет использоваться дата 1 января 1970 года.

Value Table
Слой элементов интереса

Слой или таблица, которая содержит объекты интереса. Этот параметр поддерживается только в том случае, если для параметра Задать объекты интереса с помощью указаны Выбранные пространственные объекты в заданном слое объектов интереса.

Table View
Исходящие треки
(Дополнительный)

Выходной слой, содержащий первое событие трассировки и все последующие пространственные объекты для этого указанного объекта.

Feature Class
Максимальная глубина трассировки

Максимальная степень разделения между объектом интереса и объектом, находящимся дальше по направлению трассировки (вниз по течению).

Long
Критерии соответствия атрибутов
(Дополнительный)

Поля, которые используются для уточнения события близости.

Field

arcpy.geoanalytics.TraceProximityEvents(in_points, entity_id_field, out_feature_class, distance_method, {spatial_search_distance}, {temporal_search_distance}, {entities_of_interest_input_type}, entities_interest_ids, entities_interest_layer, {out_tracks_layer}, max_trace_depth, {attribute_match_criteria})
ИмяОписаниеТип данных
in_points

Класс точечных пространственных объектов с поддержкой времени, который будет использоваться для трассировки событий близости.

Feature Layer
entity_id_field

Текстовое поле, отображающее уникальные идентификаторы для каждого объекта.

Field
out_feature_class

Выходной класс пространственных объектов, содержащий трассировку событий близости.

Feature Class
distance_method

Указывает тип расстояния, который будет использоваться в параметре Радиус поиска в пространстве.

  • PLANARМежду объектами будет использоваться плоскостное расстояние. Это значение по умолчанию
  • GEODESICБудет использовано геодезическое расстояние между объектами. Этот тип линии учитывает кривизну сфероида и корректно обрабатывает данные вблизи линии перемены дат и полюсов.
String
spatial_search_distance
(Дополнительный)

Максимальное расстояние между двумя точками, которое следует учитывать в непосредственной близости. Объекты в пределах критериев Радиус поиска в пространстве и Радиус поиска по времени считаются находящимися в непосредственной близости друг от друга.

Linear Unit
temporal_search_distance
(Дополнительный)

Максимальная продолжительность между двумя точками, которую следует учитывать в непосредственной близости. Объекты в пределах критериев Радиус поиска по времени и отвечающие критериям Радиус поиска в пространстве считаются находящимися в непосредственной близости друг от друга.

Time Unit
entities_of_interest_input_type
(Дополнительный)

Задает объекты интереса.

  • ID_START_TIMEВ качестве объектов интереса будут использоваться имена объектов и значения времени. Это значение по умолчанию
  • SELECTED_FEATUREВ качестве объектов интереса будут использоваться выделенный объект в заданном слое объектов интереса.
String
entities_interest_ids
[entities_interest_ids,...]

Имена объектов и время начала для объектов интереса. Этот параметр поддерживается только тогда, когда для параметра entities_of_interest_input_type указано ID_START_TIME.

  • Идентификатор объекта – уникальное имя объекта. Имена чувствительны к регистру.
  • Начиная с – необязательное время начала трассировки объекта интереса. Если время не задано, то будет использоваться дата 1 января 1970 года.

Value Table
entities_interest_layer

Слой или таблица, которая содержит объекты интереса. Этот параметр поддерживается только тогда, когда для параметра entities_of_interest_input_type указано SELECTED_FEATURE.

Table View
out_tracks_layer
(Дополнительный)

Выходной слой, содержащий первое событие трассировки и все последующие пространственные объекты для этого указанного объекта.

Feature Class
max_trace_depth

Максимальная степень разделения между объектом интереса и объектом, находящимся дальше по направлению трассировки (вниз по течению).

Long
attribute_match_criteria
[attribute_match_criteria,...]
(Дополнительный)

Поля, которые используются для уточнения события близости.

Field

Пример кода

TraceProximityEvents (автономный скрипт)

В следующем автономном скрипте показано использование функции TraceProximityEvents.

# Name: TraceProximityEvents.py
# Description: Trace proximity events for user1 and user4 with 30 feet 
#              spatial search distance and 10 minute temporal search distance.

# Import system modules
import arcpy

# Set workspace
arcpy.env.workspace = r"C:/data/TraceData.gdb"

# Use time-enabled multifile feature connection dataset
inFeatures = r"C:/data/Example.mfc/example_tracks"

entityIDField = "user_id"
outFile = "ProximityEvents" 
spatialDistance = "30 Feet"
temporalDistance = "10 Minutes"
entitiesOfInterest = [['user1', '3/30/2020 9:00:00 AM'], ['user4', '3/30/2020 9:00:00 AM']]
outTracks = "out_tracks"
max_trace_depth = 3

# Run Trace Proximity Events
arcpy.gapro.TraceProximityEvents(inFeatures, entityIDField, outFile, "PLANAR",
                                 spatialDistance, temporalDistance, 
                                 "ID_START_TIME", entitiesOfInterest, None, 
                                 outTracks, max_trace_depth)