Skip To Content

인접도 이벤트 추적(Trace Proximity Events)

비고:

현재 이 기능은 Map Viewer Classic(이전의 Map Viewer)에서만 지원됩니다. Map Viewer 후속 릴리즈에서 제공됩니다.

인접도 이벤트 추적 인접도 이벤트 추적 도구는 공간(위치) 및 시간에서 서로 가까운 이벤트를 추적합니다. 입력 레이어의 경우 인스턴트 시간을 나타내는 포인트에 대해 시간이 활성화되어 있어야 합니다.

워크플로 다이어그램

인접도 이벤트 추적 워크플로 다이어그램

GeoAnalytics Tools를 사용하여 분석

GeoAnalytics Tools를 사용하는 분석은 여러 ArcGIS GeoAnalytics Server 머신 및 코어에서 분산 처리를 사용하여 실행됩니다. ArcGIS EnterpriseGeoAnalytics Tools 및 표준 피처 분석 도구에는 다양한 매개변수와 기능이 있습니다. 이러한 차이점에 대한 자세한 내용은 피처 분석 도구의 차이점을 참고하세요.

용어

기간정의예시

엔티티

위치가 주기적으로 기록되는 이동하는 객체입니다.

동물, 사람, 차량 등이 있습니다. 엔티티는 정지 또는 이동하는 상태일 수 있습니다.

관심 있는 엔티티

특정 엔티티를 사용하여 추적을 시작합니다.

코로나19에 감염된 사람입니다.

인접도 이벤트

두 엔티티가 일정 시간 내에 서로 가까이 있는 경우입니다.

예를 들어 두 사람이 1분 내에 서로 3m 이내에 있는 경우입니다.

깊이

관심 있는 엔티티와 추적 하향 엔티티(다운스트림) 간의 간격입니다.

관심 있는 엔티티와 다른 사람 간의 인접도 이벤트의 깊이는 1입니다.

추적 이벤트

관심 있는 엔티티에서 지정한 엔티티 다운스트림에 대한 첫 접점입니다.

예시

한 기관이 작업자가 휴대하는 회사 소유 기기를 모니터링합니다. 회사는 코로나19에 확진된 것으로 알려진 사람 주변에 있었던 직원을 확인하고자 합니다. 기기 위치와 시간을 나타내는 포인트 레이어를 사용하여 코로나19에 감염된 사람 및 감염되었을 가능성이 있는 직원으로부터 6미터 거리, 5분 이내에 있었던 기기를 식별합니다.

NGO는 GPS를 사용하여 연어 개체군을 모니터링하고 탈출한 양식 연어와 야생 개체군에 연어 기생충이 확산되는 것을 추적하는 데 관심이 있습니다. 일부 GPS 태그가 지정된 양식 연어는 태그가 지정된 야생 개체군과 근접한지, 그리고 이러한 야생 개체군이 어떻게 질병을 더 퍼뜨릴 수 있는지 확인하기 위해 추적됩니다. 측정에는 NGO에서 비슷한 깊이에 있는 물고기만을 찾는 데 사용하는 깊이 필드도 포함됩니다.

사용 참고 사항

인접도 이벤트를 추적할 때 데이터 민감도와 개인정보보호에 관한 기관, 지역 및 국가 지침을 이해하는 것은 귀하의 책임입니다.

시간 값, 지오메트리 값 또는 엔티티 ID 필드가 없는 입력 포인트는 결과에 포함되지 않습니다.

인접도 추적을 사용하여 전염(질병 등) 상황을 파악할 때 다음 사항에 유의하세요.

  • 추적 이벤트가 전염 여부를 보장하는 것은 아닙니다. 이는 잠재적인 접촉일 뿐입니다.
  • 추적 이벤트가 없다고 해서 전염되지 않았음을 의미하지는 않습니다. 예를 들어 질병의 경우 다른 매개체를 통해 전염될 수 있습니다.
  • 가능한 경우 하나 이상의 엔티티 속성을 선택하여 일치 매개변수를 사용하여 필요할 때 인접도 이벤트를 제한합니다. 예를 들어 속성을 사용하여 공간, 층 또는 고도를 제한합니다.

더 큰 시간 검색 거리와 공간 검색 거리를 지정하면 더 많은 이벤트가 발생하고 결과를 처리하는 데 더 오래 걸립니다. 거리 규모가 작을 수록 이벤트 수가 줄어들고 처리 시간이 단축됩니다.

피처는 공간 검색 거리 및 시간 검색 거리 매개변수 기준을 모두 충족해야 서로 가까이에 있는 것으로 간주됩니다.

공간 검색 거리 다이어그램
그림 A: 두 피처가 서로 공간 검색 거리 내에 있습니다.
시간 검색 거리 다이어그램
그림 B: 두 피처가 서로 시간 검색 거리 내에 있습니다.

도메인별 지식을 활용하여 공간 검색 거리 및 시간 검색 거리 매개변수에 사용되는 값을 결정합니다. 거리를 설정할 때 기기 정확도 등의 요소를 고려합니다.

관심 엔티티는 인접도 추적이 시작되는 위치입니다. 시작 시간을 지정하면 해당 엔티티에 대해 추적이 시작됩니다. 시간을 지정하지 않으면 해당 엔티티에 대한 추적은 1970년 1월 1일에 시작됩니다.

기본 설정에 따라 엔티티 추적 위치는 거리 계산을 위한 측지 방법을 사용하여 생성됩니다. 다음과 같은 경우에는 측지 거리를 사용하는 것을 권장합니다.

  • 날짜 변경선을 지나는 추적 - 측지 방법을 사용하는 경우 날짜 변경선을 지나는 입력 레이어에 날짜 변경선을 올바르게 지나는 추적이 포함됩니다. 입력 레이어 또는 처리 공간 참조는 World Cylindrical Equal Area와 같은 글로벌 투영 등 날짜 변경선 주위를 감싸는 공간 참조로 설정해야 합니다.
  • 로컬 투영에 데이터셋이 없음 - 입력 데이터가 로컬 투영에 있는 경우 평면 거리 방법을 사용하세요. 예를 들어, 평면 방법을 사용하여 단일 주 내의 추적 이벤트를 검토할 수 있습니다. 입력 레이어 또는 처리 공간 참조는 데이터셋에 대한 로컬 공간 참조로 설정해야 합니다.

고급 옵션을 사용하여 일치시킬 최대 추적 깊이 및 엔티티 속성을 지정합니다.

  • 인접도 이벤트에 대한 추가 요구 사항을 설정할 수 있습니다. 예를 들어 캠퍼스의 특정 건물에 있는 개인만 추적하거나 건물의 한 층 내에서만 추적할 수 있습니다. 제한 속성을 지정하려면 일치시킬 하나 이상의 엔티티 속성 선택 매개변수를 사용합니다. 예를 들어 동일한 층에 있는 엔티티를 제한하려면 Floor 필드를 지정합니다.
  • 기본 설정에 따라 관심 엔티티와 추적 아래에 있는 엔티티 사이의 모든 추적이 검색됩니다. 깊이를 제한하려면 최대 추적 깊이 매개변수를 사용합니다.

결과 인접도 이벤트 레이어에는 추적의 엔티티에 대한 1 차 인접도 이벤트와 다음 필드가 포함됩니다.

  • from_id- 업스트림 엔티티 ID
  • to_id- 다운스트림 엔티티 ID
  • depth- 관심 엔티티와 to_id 필드 간의 분리 정도
  • duration_minutes- 추적 이벤트 기간(분) 이 필드는 시작 시간과 종료 시간의 차이로 계산됩니다. 예를 들어 1.5분은 90초입니다. 0 값은 단일 인접도 이벤트(동일한 시작 및 종료 시간)가 있음을 의미합니다.
  • instant_datetime- 인접도 이벤트의 날짜와 시간입니다. 이 필드는 인접도 이벤트의 기준을 충족하는 처음 기록된 시간으로 계산됩니다.

ArcGIS Pro링크 차트에서 또는 시간 슬라이더를 사용해 결과 인접도 이벤트 레이어를 시각화하여 추적 결과를 시각화할 수 있습니다.

선택 사항인 추적 레이어 포함 매개변수를 사용하여 해당 엔티티에 대한 첫 번째 추적 이벤트와 모든 후속 기능을 포함하는 레이어를 만들 수 있습니다. 또한 관심 있는 엔티티의 피처는 항상 결과 추적 레이어에 포함됩니다. 이러한 결과는 엔티티가 이동한 위치를 시각화하는 데 유용하며 추적 재생성 도구에서 사용할 수 있습니다. 결과 추적 레이어에는 다음 필드가 포함됩니다.

  • entity_id- 엔티티 ID
  • depth- 관심 엔티티와 추적 필드 간의 분리 정도 깊이는 단일 추적에서 동일합니다.
  • instant_datetime- 각 피처의 날짜 입력 피처의 기록과 같은 날짜입니다.

현재 맵 범위 사용을 선택한 경우 현재 맵 범위 내에 보이는 피처만 분석됩니다. 선택하지 않으면 현재 맵 범위 외부에 있는 피처를 포함하여 입력 레이어에 있는 모든 입력 피처가 분석됩니다.

제한 사항

입력 인접도 이벤트는 인스턴스 유형의 시계열 피처가 포함된 포인트 레이어여야 합니다. 시간이 없는 피처는 결과에 포함되지 않습니다.

인접도 이벤트 추적 작동 방식

아래 다이어그램은 인접도 이벤트 추적 도구가 데이터를 처리하는 방법을 보여줍니다. 이 다이어그램에서 시간은 x축에 있습니다. 각 다이어그램에는 A, B, C, D의 네 가지 엔티티가 있습니다. 강조 표시된 텍스트는 두 항목(시작 및 종료 엔티티) 간에 발생하는 추적 이벤트와 인접도 이벤트의 깊이를 설명합니다. 이 예시에서 엔티티 C는 다운스트림에서 추적되는 관심 엔티티입니다.

다이어그램 1에서 엔티티 C는 선택한 관심 엔티티입니다. 깊이는 0입니다.

인접도 이벤트 추적 도구 다이어그램 1

인접도 이벤트 추적 도구 다이어그램 1

다이어그램 2에서 엔티티 C와 B간에 인접도 이벤트가 발생합니다. 추적 깊이는 1입니다. 여러 피처가 후속 인접도 이벤트인 경우 이는 지속적인 근접 이벤트입니다.

인접도 이벤트 추적 도구 다이어그램 2

인접도 이벤트 추적 도구 다이어그램 2

다이어그램 3에서 엔티티 B와 A간에 인접도 이벤트가 발생합니다. 추적 깊이는 2입니다.

인접도 이벤트 추적 도구 다이어그램 3

인접도 이벤트 추적 도구 다이어그램 3

다이어그램 4에서 엔티티 C와 D간에 인접도 이벤트가 발생합니다. 추적 깊이는 1입니다.

인접도 이벤트 추적 도구 다이어그램 4

인접도 이벤트 추적 도구 다이어그램 4

아래 이미지에서 엔티티 B는 관심 엔티티이며 파란색 원으로 표시된 엔티티 A와 세 번 근접해 있습니다. 시간이 x축에 있다고 가정하면 첫 번째 인접도 이벤트는 1, 접점 없는 구분점 이후에 인접도 이벤트 2와 3 순입니다. 이 도구는 인접도 이벤트 레이어에 이벤트 1을 반환합니다. 인접도 이벤트 2와 3은 반환되지 않습니다. 추적 레이어 포함 매개변수를 선택하면 인접도 이벤트 1 이후의 모든 피처가 결과 추적 레이어에 반환됩니다.

첫 번째 추적 이벤트의 예시입니다.

ArcGIS API for Python 예시

근접도 이벤트 추적 도구는 ArcGIS API for Python을 통해 제공됩니다.

이 예시에서는 entity_3 엔티티와 근접한 입력 레이어에서 모든 엔티티에 대한 근접 이벤트를 찾습니다.


# Import the required ArcGIS API for Python modules
import arcgis
from arcgis.gis import GIS

# Connect to your ArcGIS Enterprise portal and confirm that GeoAnalytics is supported
portal = GIS("https://myportal.domain.com/portal", "gis_publisher", "my_password", verify_cert=False)
if not portal.geoanalytics.is_supported():
    print("Quitting, GeoAnalytics is not supported")
    exit(1)   

# Search for and list the big data file shares in your portal
search_result = portal.content.search("", "Big Data File Share")

# Look through the search results for the big data file share of interest
bd_layer = next(x for x in search_result if x.title == "bigDataFileShares_EntityLocationPoints")

# Run the Trace Proximity Events tool 
result = arcgis.geoanalytics.use_proximity.trace_proximity_events(input_points = bd_layer, 
    entity_id_field = "UniqueID",
    entities_of_interest_ids = [{"entityId": "entity_3", "epochTimeStamp": None}],
    spatial_search_distance = 6,
    spatial_search_distance_unit = "feet",
    distance_method = "Geodesic",
    temporal_search_distance = 10,
    temporal_search_distance_unit = "minutes",
    max_trace_depth = None,
    attribute_match_criteria = None,
    include_tracks_layer = None,
    output_name = "TPE_output")

# Visualize the results if you are running Python in a Jupyter Notebook
processed_map = portal.map()
processed_map.add_layer(result)
processed_map

유사한 도구

인접도 이벤트 추적을 사용하면 공간(위치) 및 시간에서 서로 가까운 이벤트를 추적할 수 있습니다. 서로 비슷하지만 약간 다른 문제를 해결하는 데 유용한 기타 도구를 사용할 수 있습니다.

Map Viewer Classic 분석 도구

모든 인접도 이벤트를 계산하는 데 관심이 있고 관심 엔티티에서 다운스트림을 추적하는 데 관심이 없는 경우 조인 피처 도구를 사용합니다.

이동한 경로의 포인트를 재생성하거나 결과 추적을 시각화하려면 추적 재생성 도구를 사용합니다.

ArcGIS Desktop 분석 도구

인접도 이벤트 추적 도구는 ArcGIS Pro에서도 제공됩니다.

ArcGIS Pro에서 도구를 실행하려면 프로젝트의 활성 포털이 ArcGIS Enterprise 10.9 이상에서 실행 중이어야 합니다. 10.9의 경우 포털에서 공간 분석을 수행할 수 있는 권한을 가진 계정을 사용하여 포털에 로그인해야 합니다.