1. 서론
2. 에이전트 기반 모델의 구조
1) 에이전트 및 환경
2) 모델링 과정
3. 에이전트 기반 모델의 활용 분야
1) 질병 및 보건 분야
2) 재해 대피 분야
3) 도시 교통 분야
4. 결론
1. 서론
공간 시뮬레이션(Geosimulation) 모델은 시뮬레이션을 기반으로 다양한 지리적 현상의 이해, 해석, 예측 등을 위한 목적으로 널리 활용되어 오고 있다. 에이전트 기반 모델(Agent-Based Model)과 셀룰라 오토마타(Cellular Automata)는 대표적인 공간 시뮬레이션 모델링 기법이다. 이들은 시나리오 분석을 통한 정책적 시뮬레이션, 미래 예측을 위한 시뮬레이션 등이 가능하기 때문에 연구자들로부터 많은 관심을 받고 있다. 집계된(aggregated) 데이터를 기반으로 분석을 진행하는 전통적인 GIS 및 공간분석 방법들과는 달리, 에이전트 기반 모델과 셀룰라 오토마타는 개개인(individual) 수준에서의 행동규칙, 속성, 상호작용 등을 중심으로 도심의 팽창, 질병의 확산 등의 복잡한 지리적 현상을 분석하는데 용이하다. 이러한 개개인 기반의 지리적 현상에 대한 분석은 집단에 대한 관찰로부터 개인에 대한 결론을 도출할 때 종종 발생할 수 있는 생태학적 오류 (Ecological Fallacy)를 방지할 수 있는 장점을 가진다.
에이전트 기반 모델은 자신의 행동과 의사결정을 하는 행위자, 즉 에이전트에 대한 특성, 행동 규칙 등을 정의하고 에이전트 간의, 그리고 에이전트와 환경 간의 상호작용을 정의하면서 실세계의 현상을 표현하게 된다. 이러한 에이전트 기반 모델은 질병의 확산, 재해의 대피 등의 지리적 현상을 표현하는데 활용되고 있다. 반면 셀룰라 오토마타는 격자(grid)로 구성된 공간의 셀(cell)의 상태(state)와 행동을 정의하는 것을 기반으로 실세계의 현상을 표현하게 되는데 각각의 셀이 이웃의 셀들과의 관계에 따라서 셀의 생태가 변화하게 된다. 셀룰라 오토마타는 도시의 확장, 토지이용의 변화 등의 목적을 위해 주로 활용되고 있다.
에이전트 기반 모델, 셀룰라 오토마타와 같은 시뮬레이션 모델링 기법이 1980년대에 지리학 분야에 처음 도입된 이후, 2000년대에 접어들어 보다 좋은 성능의 컴퓨터를 이용한 GIS 및 공간분석이 가능해지면서, 에이전트 기반 모델과 셀룰라 오토마타를 활용한 다양한 연구가 본격화되었다. 특히, 2018년 미국에서 ACM(Association for Computing Machinery) SIGSPATIAL(International Conference on Advances in Geographic Information System)에서 공간 시뮬레이션을 위한 국제워크샵이 GeoSim(Geospatial Simulation)이라는 이름으로 처음 개최되었다. GeoSim을 포함한 학회에서는 도시, 교통, 자연 등의 다양한 환경에서 지리적 문제를 해결하기 위한 컴퓨터 기반의 시뮬레이션 관련 연구들을 모집 및 발표하고 있다. 또한 최근 들어 공간데이터베이스 분야(ACM SIGSPATIAL, IEEE MDM, SSTD 등)에서도 시뮬레이션 관련 연구 논문의 수가 증가하고 있다. 이 밖에도 2024년 미국지리학회(American Association of Geographers; AAG) 연례학술대회에서 Alison Heppenstall, Andrew Crooks, Suzana Dragicevic, Jeon-Young Kang 등이 공간 시뮬레이션 학자들이 구성한 Geosimulations for Address Societal Challenges 세션(Crooks, 2023)이 조직되는 등 지리학 및 공간정보 분야에서의 공간 시뮬레이션에 대한 꾸준한 관심이 이어지고 있다.
최근에는 센서 기술, 네트워크 및 컴퓨팅 기술의 발전에 힘입어, 현실 세계에서의 객체를 가상 세계에서의 실시간에 가까운 복제가 가능하게 되면서 디지털 트윈(Digital Twin)에 대한 관심이 증대되고 있다. 디지털 트윈은 현실세계의 객체와 가상 세계의 객체를 동일하게 쌍둥이의 형태를 구성하는 것으로, 현실세계를 이해 및 예측을 하기 위한 목적으로 가상 세계에서의 객체를 조작하는데, 이때 시뮬레이션이 핵심 기술로 포함되고 있다(Clemen et al., 2021; Croatti et al., 2020). 이러한 시뮬레이션 기법의 관심이 증대되고 있는 상황에서 공간 시뮬레이션의 대표적인 방법론 중 하나라고 평가받고 있는 에이전트 기반 모델에 대한 개념과 더불어 활용사례에 대해서 살펴볼 필요가 있다.
본 논문의 2장에서는 에이전트 기반 모델에 대한 일반적인 개념을 소개하고, 3장에서는 에이전트 기반 모델의 활용 분야인, 질병 및 보건 분야, 재해 대피 분야, 도시 교통 분야의 연구에 대해 주제범위 문헌 고찰(scoping review)를 실시하였다. 그리고 4장에서는 본 논문의 결론으로 마무리하였다. 지리학 및 공간정보 분야, 특히 디지털 트윈 내에서의 시뮬레이션과 관련하여 에이전트 기반 모델이 핵심 기술로 자리 잡아가고 있는 상황에서 에이전트 기반 모델에 대한 개념적 소개와 사례에 대한 분석은 공간 시뮬레이션 분야에 관심이 있는 연구자들에게 공간 시뮬레이션을 활용한 연구에 대한 다양한 아이디어를 제공해 줄 것이라고 기대된다.
2. 에이전트 기반 모델의 구조
1) 에이전트 및 환경
에이전트 기반 모델은 서론에서 간략하게 설명했듯이, 행위자라고 하는 에이전트와 에이전트를 둘러싸고 있는 환경으로 구성된다. 에이전트는 에이전트 기반 모델의 가장 중요한 구성요소이기 때문에 에이전트를 정의하고 표현하는 데에는 많은 노력이 요구된다. 에이전트를 정의할 때에는 에이전트의 특성과 행위가 함께 정의하게 된다. 에이전트의 특성은 에이전트의 상태 등을 나타내기 위한 것이며, 일반적으로 매개변수를 통해 표현된다. 이러한 에이전트의 특성은 에이전트의 행위를 결정짓기도 하며, 에이전트의 행위에 의해서 에이전트의 특성 혹은 상태가 변경될 수도 있다. 예를 들어 에이전트의 특성은 성별, 나이, 고용여부 등이라고 할 수 있다. 행위는 통근, 통학, 다른 에이전트와의 접촉 등이 여기에 포함된다. 에이전트의 행위는 동기적(synchronous)과 비동기적(asynchronous)인 행위로 정의할 수 있다. 동기적 행위는 모델의 시간적 스케일과 관련하여 정해진 시간(초, 분, 시, 일, 월, 년 등)에 따라서 에이전트의 행위가 동일하게 이루어지는 것을 의미한다. 예를 들어, 사람 에이전트가 오전 9시에 집에서 학교, 직장 등으로 가는 것을 동기적 행위로 정의할 수 있다(Lee and Pritchett, 2008). 비동기적인 행위는 시간과 상관없이 발생할 수 있는 행위를 의미한다. 에이전트는 학교 및 직장에서 다른 에이전트와 접촉(상호작용)을 하게 되는데, 이러한 상호작용은 특정시간에 발생하기 보다는 에이전트마다 동일한 행위라고 하더라도 발생하는 시간이 각기 다르게 발생하게 된다.
에이전트 기반 모델의 에이전트에 대해서는 선행연구들 간의 명확한 합의는 없지만 일반적으로 에이전트들에 대한 설명은 다음과 같은 공통점은 존재한다고 할 수 있다 (Crooks and Heppenstall, 2011; Coorks et al., 2018). 하지만 다음과 같은 공통점이 모든 에이전트 기반 모델에서 나타나는 것은 아니며, 연구의 목적에 따라서 다음의 특징이 나타나지 않는 모델도 존재한다.
- 자율성(Autonomy): 에이전트는 (외부환경으로부터 영향을 받지 않고 행위를 할 수 있는) 자율적인 존재이다. 즉, 개별 에이전트가 의사결정을 하기 위해서는 정보를 처리하거나 다른 에이전트들과 정보를 교환하게 되는데 이때 각각의 에이전트는 독립적으로 행위를 할 수 있다는 의미이다.
- 이질성(Heterogeneity): 에이전트는 다른 에이전트들과 구별되는 특성이 존재할 수 있다. 사람 에이전트로 예를 들면, 성별, 나이, 직업 등은 다른 에이전트들과 구별될 수 있는 특성이라고 할 수 있으며, 이러한 특성이 에이전트의 이질성을 의미한다.
- 능동적(Active): 에이전트는 일반적으로 능동적이라고 할 수 있다. 이러한 능동성은 시뮬레이션의 결과에 영향을 미칠 수 있으며, 다양한 측면에서 설명될 수 있다. 첫째, 목표지향적(goal-oriented)이다. 에이전트의 행위는 일반적으로 목적을 달성하기 위함이라고 할 수 있다. 둘째, 반응적(reactive)이다. 에이전트는 주변의 환경 및 다른 에이전트에 대해서 인지고 있으며, 이는 결국 에이전트의 선험적 지식과도 관련이 있다. 셋째, 제한된 합리성(bounded rationality)를 지녔다. 에이전트는 일반적으로 합리적임을 가정하게 되는데, 때때로 각기 에이전트의 이질성으로 인하여 합리성이 제한될 수 있다. 넷째, 상호작용적(interactive)이다. 에이전트는 다른 에이전트 혹은 환경과 상호작용을 한다. 다섯째, 이동성(mobility)이 있다. 에이전트는 공간 안에서 행위를 통해 움직이면서 에이전트의 위치를 변화시킨다. 물론 움직이지 않는 고정된(fixed) 에이전트도 존재한다. 여섯째, 적응적(adaptive)이다. 에이전트는 종종 개별 에이전트의 이전 상태에 따라서 에이전트의 상태를 조절할 수 있다. 에이전트는 주변 혹은 현재 상황에 따라서 에이전트의 행위 등을 조정할 수 있다.
환경은 에이전트를 물리적으로 둘러싸고 있는 것으로, 실제로 에이전트는 환경 안에 위치하게 된다. 이때, 환경은 공간과 시간을 포함할 수 있다. 여기서 의미하는 공간은 현실세계의 지리적인 위치와 반드시 대응될 필요는 없으며, 좌표공간(위도・경도), 격자(grid), 기호공간(symbolic space) 등의 다양한 형태로 표현될 수 있다. 만일 환경이 현실세계에서의 지리적 위치를 통해 표현되고 에이전트가 해당 환경에 위치하게 된다면, 이러한 모델은 공간적 에이전트 기반 모델(Spatially Explicit Agent-Based Model)이라고 한다. 공간적 에이전트 기반 모델을 통하여 질병의 확산, 토지이용의 변화, 자원 양의 변화 등이 표현될 수 있다. 이러한 에이전트 기반 모델은 시・공간적 규모에 따라, 미시적인 관점으로 표현될 수 있는 실내에서의 활동부터 거시적인 관점의 토지피복의 변화, 기후변화에 따른 적응 등의 매우 다양한 분야로 활용될 수 있다(그림 1).
2) 모델링 과정
에이전트 기반 모델을 구축하기 위해서는 일반적으로 4단계(개념화, 모델 구축, 모델의 평가, 모델의 수정) 혹은 5단계(개념화, 모델 구축, 모델의 평가, 모델의 수정, 모델의 공유)의 과정을 거치게 된다. 에이전트 기반 모델의 구축을 위해서는 개념화(Conceptualization)이라는 과정이 반드시 선행되어야 한다. 개념화는 모델을 통해서 표현하고자 하는 현실세계를 어떻게 표현할 것인가에 대해서 각각의 요소의 특징, 행위 등에 대해서 고민하는 것을 의미한다. 즉, 이러한 개념화를 통하여 모델의 목적, 모델의 요소(에이전트의 특성, 행위 등), 모델의 결과 등에 대해서 정의하게 되고, 이는 모델링 과정에 있어서 하나의 가이드라인으로써 활용될 수 있다(Wilensky and Rand, 2015). 예를 들어서 교통 혼잡과 관련한 모델을 만든다고 가정했을 때, 승용차, 버스, 택시 등이 에이전트로 구성될 수 있으며, 각각의 자동차 유형별로 탑승 인원 등에 대한 정보가 에이전트의 특성이 될 수 있다. 이러한 자동차들은 도로 위에서 움직이며, 도로의 방향에 따라서 움직인다는 행위를 정의할 수 있다. 또한 도로 위에 자동차가 많이 존재한다면, 자동차의 속도가 느려진다고 하는 상호작용을 정의할 수 있다. 이러한 과정을 개념화 단계라고 하며, 이러한 개념화를 통해 모델의 개발자가 모델링을 할 수 있도록 명확히 기술하는 것이 중요하다. 특히, 모델의 재사용성(reproducibility)을 위해 최근에는 널리 사용되는 개념모델의 프로토콜인 ODD(Overview, Design Concept, Details) (Grimm et al., 2010)에 따라 모델에 대한 개념을 기술하는 것이 추세이다. 추가적으로 이러한 개념화 단계는 온톨로지 혹은 지식 그래프 등을 활용하여 체계적으로 구축하기도 한다.
개념화 과정 이후에는 컴퓨터를 활용하여 모델을 구축하게 된다. 모델의 구축은 에이전트 기반 모델링을 구축하기 위한 대표적인 플랫폼인, Netlogo, Anylogic, Repast, Mesa 등을 활용한다. 이러한 플랫폼을 활용하게 되면 GUI(Graphic User Interface)에서 모델을 보다 쉽게 구축할 수 있다. 또한 범용 프로그래밍 언어인 R, C++, Python, Julia 등을 통해서 모델을 구축하기도 한다. 모델을 구축하기 위해서는 사용자 포럼(www.comses.net, cloud.anylogic.com 등)을 통해 기구축된 모델을 다운로드하여 활용 및 참고하기도 한다.
구축된 모델을 평가하는 것은 반드시 거쳐야 하는 모델링 과정이라고 할 수 있다. 모델의 평가는 크게 검토(Verification)와 검증(Validation)으로 구분될 수 있다. 검토는 컴퓨터 모델이 개념모델에서 기술된 대로 구현이 되었는지를 확인하는 과정이라고 할 수 있다. 한편, 검증은 크게 2가지로 설명이 될 수 있는데, 모델 내부에 대한 검증과 시뮬레이션 결과에 대한 검증이라고 할 수 있다. 모델 내부 구조에 대한 검증은 모델에서 표현하고자 하는 구성요소들이 현실세계를 얼마나 잘 반영하고 있는가에 대해서 평가하는 것을 의미한다. 시뮬레이션 결과에 대한 검증은 시뮬레이션을 통하여 얻어진 결과가 현실세계에서 얻어진 결과와 얼마나 유사한지를 확인하는 것이다. 이러한 시뮬레이션 결과에 대한 검증은 현재 공간 시뮬레이션 모델링 분야에서 중요한 이슈로 여겨지고 있다(Kang and Aldstadt, 2019a; Choi et al., 2024).
모델의 평가가 이루어지고 나면 모델을 수정하는 과정을 거쳐야 한다. 모델을 수정하는 것은 크게 2가지로 생각해 볼 수 있다. 하나는 모델에서 반영하고 있는 기본적인 가정에 대한 수정이다. 또 다른 하나는 패러미터 값의 조정과 관련되어 있다. 에이전트 기반 모델에서는 모델의 공간 구조, 에이전트의 행위 등이 가정에 따라서, 혹은 패러미터의 값에 따라서 다르게 반영될 수 있다. 예를 들어 도시에 대한 시뮬레이션 모델에서의 에이전트는 사람이라고 가정을 해보자. 사람들의 일반적인 활동은 집과 학교 및 회사 간의 통학 및 통근의 장소의 이동, 학교 및 회사에서의 친구 및 직장동료와의 대화 및 업무로 인한 접촉 및 상호작용이라고 할 수 있다. 이때 개개인이 어떤 학교 및 회사로의 통학 및 통근을 하는지에 대한 정보를 취득하는 것은 상당히 어렵기 때문에 중력모델을 활용하여 집으로부터 학교 및 회사까지로의 거리를 활용한 거리조락(distance decay)에 따라 정의하거나 무작위로 정의할 수 있다(Kang et al., 2022). 이러한 방식으로 에이전트의 행위를 결정하는 것은 바로 가정에 의한 것이라고 볼 수 있다. 한편, 이러한 거리조락에 대한 함수에서의 결정계수 값을 모델에서의 매개변수로 정의하여, 결정계수의 값을 조정할 수도 있다. 시뮬레이션의 결과 값과 관측치에 대한 값의 차이가 존재한다면 앞서 말한 모델의 가정에 대한 것을 수정하거나 매개변수 값을 조정하는 과정을 거치게 된다.
시뮬레이션 모델링의 과정에서 일반적으로 포함되지는 않지만 최근에 많이 강조되는 것은 모델의 공유이다(강전영・황철수, 2022). 모델은 크게 2가지의 방법으로 공유될 수 있다. 첫째, 컴퓨터 모델 그 자체를 공유하는 것이다. 둘째, 모델의 개념 모델을 공유하는 방법이다. 개념모델을 공유하는 것은 에이전트 기반 모델링 분야에서는 널리 활용되고 있는 방법이다. Grimm et al.(2010)은 ODD (Overview, Design Concepts, Details) 프로토콜에 대해서 제안하고 있다. Overview는 모델의 개요에 해당하는 내용으로 모델의 목적, 모델의 구성요소, 구성요소에 대한 상태변수, 스케일, 프로세스 등을 포함하고 있다. Design Concepts는 모델의 기본적인 원칙과 에이전트의 특성과 관련한 내용 (창발, 적응, 학습, 예측, 관측 등)을 포함한다. 마지막으로 Details는 모델의 초기화 및 입력 데이터 등에 대한 것들에 대한 내용이다. 이러한 내용을 토대로 모델링 및 모델의 주제에 대한 분야의 학문 후속세대가 시뮬레이션 모델을 구축할 때 ODD 프로토콜을 참고하고 모델을 구축할 수 있기 때문에 매우 유용하다고 할 수 있다. 한편, Meisser(2017)은 이에 대해 프로그래밍 코드 없이 모델에 대해서 장황하게 설명하는 것은 읽기에 불편을 초래할 수 있기 때문에 간략하게 모델에 대한 설명을 하고 소스코드를 별도로 제공하는 것을 주장하기도 하였다.
3. 에이전트 기반 모델의 활용 분야
1) 질병 및 보건 분야
최근 에이전트 기반 모델을 활용하고 있는 대표적인 분야라고 할 수 있는 것은 질병 및 보건 분야라고 할 수 있다. 질병 및 보건의 관점에서 독감, 콜레라, 뎅기열, 코로나19 등과 같은 감염 질병(Communicable Disease)이 시공간적으로 어떻게 확산되는 지에 대한 분석을 하기 위해서 해 분석을 실시 에이전트 기반 모델링이 활용될 수 있다. 이러한 질병 모델에서는 에이전트는 보통 사람으로 정의된다. 감염병 모델의 경우에는 사람과 모기와 같은 질병 매개체(vector)의 이동 및 행동 패턴에 큰 영향을 받기 때문에, 이동 및 행동 패턴을 묘사하는 시뮬레이션을 구축하는 것이 일반적이다. 한 예로, 사람들의 생활 패턴을 감염병 모델의 기반으로 활용하기도 한다(Kim et al. 2020). 이러한 사람들의 행동은 나이 혹은 취업여부 등의 속성에 따라서 모델 내에서 다르게 표현될 수 있다(그림 2). 그림 2(a)는 일반적인 사람들의 활동이라고 할 수 있다. 사람들은 아침에는 학교 및 회사로 통학 및 통근을 하게 되고, 이후 마트에서 장을 보거나 운동을 하는 등의 여가활동을 하게 된다. 이후 집으로 귀가를 하며 하루의 일과가 끝이 난다. 그림 2(b)는 여가활동을 하지 않는 사람들의 일반적인 패턴이다. 사람들이 학교 및 회사로의 통학 및 통근 이후에 바로 집으로 귀가를 하는 것이다. 마지막 그림 2(c)는 학교 및 회사로의 통학 및 통근을 하지 않는 유아 및 은퇴 이후의 노령인구에 대한 행동 패턴이라고 볼 수 있다.
감염병 모델에서는 일반적으로 사람들의 이동 및 행동 패턴에 따라, 사람 에이전트가 동일 시간대에 같은 장소에 존재한다면 서로 접촉 및 상호작용을 했다고 하는 가정하에 접촉 네트워크(Contact Network)가 구성된다. 즉, 사람들은 집에서는 가족 구성원들과 학교 및 회사에서는 친구 및 직장동료들과, 여가활동에서는 같은 장소에서 여가활동을 하고 있는 사람들과 접촉하게 된다. 이때, 질병 모델에서의 바이러스는 사람과 사람 간에 전파가 되도록 모델링이 되는데, 이러한 사람들의 접촉 네트워크에 따라서 바이러스가 전파될 수 있다(Mao and Bian, 2011) 이러한 접촉 네트워크는 단순히 사람 간에 바이러스의 전파 이외에도 모기와 같은 매개체가 바이러스를 전파시키는 뎅기열과 같은 매개체 감염병(Vector-borne disease)에도 적용될 수 있다 (Kang and Aldstadt, 2019b).
사람들 간의 바이러스의 전파를 보다 자세히 표현하기 위해서는 일반적으로 SIR(Susceptible - Infectious - Recovered) 혹은 SEIR(Susceptible - Exposed - Infectious - Recovered)와 같은 수학적 모델을 추가적으로 도입하여 에이전트 기반 모델을 구성한다. 이러한 SIR/SEIR 모델은 사람 에이전트의 감염 상태에 대해서 상태 변수(state variable)로 표현하고, 이러한 상태 간의 진행을 표현한다. Susceptible은 사람이 아직 바이러스에 노출되지 않은 상태를 의미하며, Exposed는 사람이 바이러스에 노출되었지만 다른 사람에게 아직 전파가 불가능한 상태를 의미한다. Infectious는 사람이 바이러스에 노출된 이후에 잠복기가 지난 이후에 바이러스를 전파시킬 수 있는 상태를 의미하며, Recovered는 해당 바이러스에 면역이 생겨서 발열 등의 증상이 발현되지 않으며, 더 이상 바이러스를 전파시킬 수 없는 상태를 뜻한다.
감염병 모델은 그 목적에 따라 다양한 시공간적 스케일로 구축할 수 있는데, 도시 단위(혹은 시군구, 읍면동) 뿐만 아니라, 실내 환경에서의 바이러스 전파 모델 또한 구축될 수 있다. 도시 단위의 감염병 시뮬레이션은 독감 유행기간이 보통 180일(Mao and Bian, 2011)인 점을 감안하여 6개월 정도의 시뮬레이션 기간을 설정하지만, 실내 환경에서의 에이전트 기반 모델은 일반적으로 몇 시간 단위의 기간을 설정한다. 특히, 실내에서의 사람들의 밀집도에 따른 감염병의 노출을 확인하기 위한 시뮬레이션 모델 또한 에이전트 기반 모델을 통해 구축될 수 있다(Choi and Hohl, 2021; 2023). 이때, 감염병을 지닌 사람이 실내 체육과 혹은 강의실 내부에서 움직이면서 다른 사람들에게 바이러스를 전파하게 되고, 이에 따라 감염병에 노출된 사람에 대한 시공간적인 패턴을 확인할 수 있다. 그림 3은 실내 환경에서 감염자로부터의 밀집 접촉의 위험도를 나타낸 시뮬레이션의 결과이다.
에이전트 기반 모델링은 바이러스의 전파 이외에도 개개인 수준에서의 미세먼지 등의 환경 오염 인자 등의 노출 정도를 탐색하기 위한 목적에서도 활용될 수 있다(Shin and Bithell, 2023). 이러한 연구는 미세먼지의 농도가 시공간에 따라 상이함에 따라 개개인 수준 노출 정도는 시공간에 차이가 있다는 것을 보여주는데 도움이 된다. 특히 사람은 거주지에서만 위치하는 것이 아니라 통근 및 통학, 여가활동 등으로 인하여 사람들이 시간대 별로 위치하고 있는 장소가 다르기 때문에 개개인 수준에서의 미세먼지 농도 등의 측정을 고려해야 한다(Kim and Kwan, 2021)에 대한 내용을 에이전트 기반 모델링을 통해 표현할 수 있다.
이렇듯 일반적으로 독감, 콜레라, 뎅기열, 코로나19 등의 다양한 감염병이 어떻게 시공간적으로 확산이 되는가를 예측하기 위한 연구가 많이 존재한다(Crooks and Hailegiorigs, 2014; Kang and Aldstadt, 2021; Kerr et al., 2021). 반면 시나리오 분석(혹은 What-if) 분석을 통하여 정책적 시나리오의 분석을 실시하기 위해서도 에이전트 기반 모델링이 활용될 수 있다. Chao et al.(2012)는 뎅기열 백신을 접종하는 연령을 14세까지 혹은 46세까지로 설정하는 시나리오를 설정하고 시나리오에 따라 어떠한 백신 접종 방법이 뎅기열의 확산을 예방하는데 효과적인지를 분석하였다. 사람들은 감염병의 확산이 시작되면 마스크를 착용하거나 증상이 있는 사람들을 피하는 경향이 있다. 이때, Mao and Bian(2011)과 Mao(2014)는 대중매체를 통하여 사람들에게 마스크의 착용을 권고하는 등의 정책에 대한 시나리오를 설정하고 정책의 효과성을 분석하였다. 개발도상국에서는 콜레라와 같은 설사를 유발하는 질병을 예방하기 위해서 WASH(WAter, Sanitation, Hygiene)이라고 하는 깨끗한 물을 마시고 비누로 손을 씻고, 화장실 등의 청결을 유지하는 정책을 실시하고 있다. Barker et al.(2018)과 Kang and Aldstadt(2019c)는 이러한 WASH 정책에 대한 실효성을 시나리오 분석을 통해 밝혀내었다. 한편, 질병의 확산과 별개로 사람들이 병원에 방문하였다가 다른 병원으로 옮기는 등의 프로세스를 반영하여 의료시설에 대한 접근성을 측정하기 위해서도 에이전트 기반 모델이 활용될 수 있다(김수빈 등, 2024).
2) 재해 대피 분야
지진, 태풍, 홍수, 화재 등의 자연 재해가 발생했을 시에 사람들의 대피 상황에 대한 최적의 방법을 찾기 위해서 에이전트 기반 모델링을 활용할 수 있다. 전통적인 공간정보 및 GIS에서의 대피 상황에 대한 모델은 거주지 및 현재 위치로부터 대피소까지의 거리나 이동시간을 계산하여 모든 사람들이 대피했을 경우에 소요되는 시간을 측정하는 연구가 많이 진행되어 왔다(김민준・강전영, 2022). 그렇기 때문에 도로 네트워크의 구조를 파악하여 최단 경로(출발지로부터 목적지까지의 최소거리) 혹은 최소 시간 경로(출발지로부터 목적지까지의 최소 시간)를 탐색하기 위한 최적의 알고리즘을 찾아내거나 (이창규・최진무, 2021), 각각의 대피소에 대한 대피 인구 수를 최적화시키는 연구(이창규 등 2021) 등이 진행되어 왔다. 하지만 이러한 전통적인 GIS 분석방법을 통해 정책적 시나리오 분석을 실시한다고 하더라도 도로 네트워크의 제한적인 속성(거리, 최대속력 등)만을 고려하기 때문에 현실세계를 잘 반영한다고 볼 수 없다.
반면에 에이전트 기반 모델링을 활용한 대피 시뮬레이션은 사람들의 특성(속도 등) 뿐 아니라 환경(도로의 침수 여부), 대피하는 사람들 간의 상호작용을 고려할 수 있기 때문에 보다 현실을 잘 반영한다고 할 수 있다(Chen et al., 2006). 사람들이 실제로 자동차를 타고 대피하는 상황을 가정해보자. 비슷한 위치에서 대피를 시작한 사람들은 실제로 비슷한 경로로 대피하기 때문에 도로가 정체되는 현상이 발생할 수 있으며, 도로가 정체되는 것을 보면서 다른 경로로 우회하려는 사람도 있을 것이다(Vandewalle et al., 2019). 또한 대피상황과 관련하여 고려해야 할 점은 대피 상황에서 대피하는 사람들 모두가 자동차를 이용하지 않는다는 점이다. 특히 대피해야 하는 목적지가 현재 위치한 곳으로부터 거리상으로 멀지 않은 곳이라면 사람들은 자동차가 아닌 자전거 혹은 도보를 통해 대피할 수 있다. 이러한 상황에서 다양한 교통 수단을 통해 대피하는 모델링도 가능할 수 있다(그림 4)(Kim et al., 2022). 또한 신체적 장애(시각 혹은 청각 장애)가 있는 있는 사람들이 재난 상황에서 대피하는 시간과 경로가 어떻게 다른지도 모델에 반영할 수 있다(Haghpanah et al., 2021). 다시 말해서 사람들은 재해로 인해 대피해야 하는 상황에서 개개인이 다양한 선택을 하게 되고, 이 개별적인 선택에 의해 다양한 대피 시나리오가 전개되는데, 에이전트 기반 모델링이 이러한 개별적인 차이에 의한 다양한 대피 시나리오에 대한 분석을 가능하게 한다.
위의 대피 시뮬레이션 모델링의 예시들은 실외의 환경에서의 대피 상황과 관련이 있다. 한편 대피는 화재가 발생하거나 침수로 인한 실내에서의 대피상황에서도 발생할 수 있다. 그렇기 때문에 인구특성, 실내 구조 및 대피 시나리오에 따른 다양한 상황에서 효율성 증가를 위한 에이전트 기반 시뮬레이션 연구 또한 진행되어 왔다(Choi et al., 2021; Huang et al., 2023).
3) 도시 교통 분야
공간 시뮬레이션에서 도시와 교통 분야는 상당히 중요하게 다루어져 왔다. 교통 시뮬레이션의 연구지역은 대부분 도시 지역을 대상으로 진행한 연구가 대다수이기 때문에 도시는 교통의 상위 개념으로 인식되어 왔다(Wise et al., 2017), 하지만 이는 에이전트 간의 밀접한 이동과 상호작용이 필요한 연구에서는 해당될 수 있지만, 상대적으로 큰 공간 스케일 기반의 연구에서는 에이전트 기반 모델이 아닌 셀룰라 오토마타를 주로 활용하기 때문에 이 경우에서는 교통과 도시는 상호독립적이라고 할 수 있다.
도시 분야에서 처음으로 시뮬레이션을 도입한 연구는 Batty and Longely(1986) 으로 도시의 구조를 파악하기 위한 기법으로 시뮬레이션을 활용하였다. 시뮬레이션에서 공간의 개념이 명확하게 드러나는 Geosimulation을 처음 도입한 것은 Benenson and Torrens(2004)라고 할 수 있다. 일반적으로 셀룰라 오토마타를 활용하게 되면, 모델 안에서의 격자를 지리적 공간에 적용하여 도시의 성장 및 도시의 확산에 대한 분석을 실시할 수 있다. 특히, Kaviari et al. (2019)는 셀룰라 오토마타와 게임 이론과의 접목을 시도하기도 하였다. Torrens(2006)은 이와 같은 셀룰라 오토마타를 지리적 오토마타 시스템(Geographic Automata System; GAS)으로 정의하였으며, 이를 통해 비지적 개발(예: 개구리 뜀식 개발; Leap-frog development)과 같은 도시지리 및 도시계획 분야의 중요한 문제들을 해결하기 위한 방법론으로써 제안하였다(김동한, 2012).
이후 도시라는 넓은 범위 안에서 Geosimulation은 보건과 재난 대비 뿐 아니라 주택시장(Geanakoplos et al., 2012), 젠트리피케이션(Torrens and Nara, 2007), 대기오염 (Shin and Bithell, 2019; Sonnenschein et al., 2022), 범죄(Malleson and Evans, 2014)와 같은 사회 전반적으로 다양한 이슈들을 포괄하고 있다. 이는 격자 간의 단순한 물리적 변수들(토지, 도로)의 상호작용한 GAS 형태의 분석을 넘어, 행위 주체들의 의사결정과 행동을 반영한 도시의 변화와 관련한 연구의 상당한 발전을 의미한다. 이러한 연구들은 도시의 다양한 변화들을 포괄적으로 이해하는데 크게 일조하고 있다.
교통분야에서 에이전트 기반 모델링을 최초로 도입한 연구는 1990년대 초, 셀룰라 오토마타 기반의 연구로부터 출발하는데, Nagel and Schreckenberg(1992)는 자율주행하는 자동차 에이전트들이 고속도로로 이동하는 것을 시뮬레이션하였다. 이는 개개인의 이동 패턴을 시공간적 관점에서 상세하게 생성할 수 있다는 것에 강점이 있다는 것을 보여준다(Dobler et al., 2014). 이후 2000년대에 접어들면서 본격적으로 도시계획과 컴퓨터 공학 분야에서 에이전트 기반 모델링을 모빌리티 연구에 적용을 시도한 연구들이 이어져왔으며(Batty, 2001; Wang, 2005), 최근까지도 도시교통 개선 및 관리를 위한 차량의 이동에 대한 연구들이 심화되고 있다(Manley et al., 2014). 현재 교통분야에서의 에이전트 기반 모델링 연구는 보행경로를 고려한 혼잡지역 해소 계획 수립, 대중교통 체계 개선, 도시 내 주차문제, 자율주행 택시, 교통 정책 및 도시 물류 등과 같이 현실세계와 흡사한 모형을 이용한 연구가 활발히 진행되고 있다(Bastarianto et al., 2023). 가령 교통 흐름을 모델링하는 시뮬레이션에서 일부 운전자는 난폭적으로 운전할 수 있으며, 몇몇의 운전자는 더욱 안전하게 운전을 할 수 있다. 이처럼 운전자의 다양한 행동 변화는 사고 혹은 심각한 교통 체증을 유발하는 것으로 이어질수 있어 현실세계와 상당히 흡사하다고 할 수 있다.
교통과 관련한 에이전트 기반 모델링 연구가 국내에서는 여전히 부족한 것은 사실이나(이종호, 2008), 최근 모빌리티와 빅데이터에 대한 관심이 높아지면서 관련 연구가 증가하고 있다. 보행자 연구를 살펴보면 이재길・박정욱(2013)은 보행자 및 자동차 혼용도로를 대상으로 보행자 위험지표(Pedestrian Risk Index)를 사용하여 위험요인에 대한 평가를 실시하였다. 김석태(2018)는 에이전트 기반 모델링 중에서 시간을 분절시켜서 시뮬레이션을 실시하는 이산사건 시뮬레이션(Discrete Event Simulation)을 활용하여 병원 내에서 사람들의 이동을 효율화할 수 있는 실내공간 개선방안을 규명하였다. Malleson et al.(2020)과 Kieu et al. (2022)는 기차역과 같이 군중이동(crowd mobility)이 활발한 상황에서 대합실(출발지)로부터 기차 탑승 플랫폼(목적지)까지 보행하는 경로를 시뮬레이션하였는데, Kalam filter 기법(그림 5 참조), 기계학습(random forest), time-series 기법을 통합하였다. 대피 시뮬레이션에 사용된 인구과밀현상에 대한 연구(최문기 등, 2022)가 있으며, 경쟁자의 대응에 따라 각자 제일 합리적인 선택을 했을 때, 서로가 자신의 선택을 더 이상 바꿀 필요를 느끼지 않는 상태에 도달환 상황(내쉬균형; Nash Equilibrium)을 활용하여 군중의 움직임을 시뮬레이션하기도 하였다(Wang et al., 2023). 이상의 연구들은 NetLogo나 Python 혹은 Java를 활용하였으며, JuPedSim(Liao et al., 2017)처럼 범용 프로그램 내에서 에이전트 기반 모델링에 특화된 패키지들도 출시되어 MATSim(Multi-Agent Transport Simulation), SUMO(Simulation of Urban MObility)와 같이 기 출시된 소프트웨어에도 통합되는 추세이다.
차량 및 대중교통 분야는 에이전트 기반 모델링이 널리 활용되고 있는 분야 중 하나이다. 이는 승용차, 택시, 자전거 등 교통수단 별 특성에 따른 도시 교통의 흐름변화를 파악하는 강점이 있으며, 교통법규, 지리적 환경 등의 외부 환경에 대한 영향을 평가하는 연구를 의미한다(채여라・정예민, 2017). Rech and Timpf(2021)은 독일 아우크스부르크에 새로운 버스 노선이 대중교통 이용자들의 만족도를 증가시키는지에 대한 여부를 평가하기 위해서 200명의 대중교통 이용객들에 대한 이동시간을 개인 차량 이용자의 이동시간과 비교하는 시뮬레이션을 실시하였다. 해당 연구에서는 모델에게 임의성을 부여하는 것처럼 하기 위해서 에이전트들의 출발점과 목적지를 무작위로 설정하였다. 연구 결과로써, 200명의 사람 에이전트 중 10-20% 정도의 사람들이 버스로 전환할 가능성이 있다고 예측하였다. Shin and Bithell(2023)은 서울시의 녹색교통진흥지역의 강화 시나리오에 따른 보행자 및 운전자의 대기오염 노출 변화를 시뮬레이션 하였다. 이때, 목적지가 있는 차량의 경우는 A* 경로찾기를 활용하여 최단경로를 도출하였으며, 무작위 통행하는 차량의 경우는 일정시간 내 연구지역에 머물다가 사라지는 것을 가정하였다.
한편 교통 시뮬레이션의 공간적 규모는 연구질문에 따라 미시적, 중거시적, 거시적 스케일로 조정하게 된다. 미시적 연구에서는 교통의 세부적인 규칙에 따른 교통 흐름의 변화 혹은 전체 인구와 활동기반모형(Activity Based Model)과 연동하기도 한다. 활동기반모형은 개인의 활동 프로필이나 스케쥴을 생성하고 개인의 교통수단이나 목적지 등을 최종 예측하여 현실과 가깝게 시뮬레이션하는 것이다. 최근 이러한 방법으로 디지털 트윈의 행태로 연구를 진행한 사례가 있다(Briem et al., 2019; Gurram et al., 2019). 거시적 연구는 에이전트들의 세부적인 움직임을 시뮬레이션하지는 않지만 도시 급의 규모에서 장기적인 교통 흐름을 시뮬레이션 하는데 더 적합하다고 할 수 있다(Ge and Polhill, 2016).
이와 같이 교통관련 에이전트 기반 모델 연구는 연구주제부터 개발 플랫폼까지 상당히 방대하고 다양한 편이다. 최근에 게재된 교통 에이전트 기반 모델의 리뷰 논문(Bastarianto et al., 2023)에서는 2006년부터 2022년 간의 총 309개의 연구를 모두 분석한 결과, MATSim과 NetLogo를 활용한 연구가 대부분을 차지하고 있었으며, Python이 시뮬레이션 결과를 분석하기 위함과 동시에 에이전트 기반 모델 개발 도구로써의 역할을 수행하고 있음을 밝혔다. MATSim은 넓은 연구지역을 미시적 시간 단위로 시뮬레이션을 실시할 수 있으며, 상대적으로 짧은 시간안에 시뮬레이션을 종료할 수 있다.
이상에서 살펴본 바와 같이 도시 및 교통 분야에서 Geosimulation의 활용분야는 지속적으로 확장되고 있다고 판단할 수 있으며, 향후 교통 빅데이터가 더욱 많이 공개되고 관련 GIS 분석기법이 개발된다면, Geosimulation의 활용 가능성은 더욱 커질 것으로 기대된다.
4. 결론
컴퓨터 기술 등의 발전으로 인하여 1980년대에 시뮬레이션 기법이 처음으로 지리학 분야에 도입이 된 이후, 에이전트 기반 모델링 및 셀룰라 오토마타로 대표되는 공간 시뮬레이션 모델링이 다양한 분야에 활용되고 있다. 이러한 시뮬레이션 기법은 집계된 데이터를 기반으로 분석하는 전통적인 GIS 분석 기법과는 다르게 개개인 기반의 상호작용, 규칙, 속성 등을 통해서 지리적 현상을 분석할 수 있는 장점이 있다.
본 연구에서는 에이전트 기반 모델의 구성요소인 에이전트와 환경에 대한 특징 등에 대해서 살펴보았고, 에이전트 기반 모델을 구축하기 위한 과정에 대해서 정리하였다. 특히, 질병 및 보건분야, 대피 분야, 도시 및 교통 분야로 구분하여 에이전트 기반 모델링이 어떻게 활용되고 있는 지에 대해서 살펴보았다. 에이전트 기반 모델링은 질병 및 보건 분야에서는 일반적으로 특정 질병이 어떻게 시공간적으로 확산되는 지를 탐색하거나 질병의 대규모 확산을 막기 위한 정책적 시나리오 분석을 위해 활용되고 있다. 또한 대피 분야에서는 재해가 발생한 상황에서 사람들이 실내 혹은 실외 환경에서 대피를 어떻게 하는 것이 가장 효율적인지에 대해 파악하기 위해 에이전트 기반 모델을 활용되는 것을 확인하였다. 마지막으로 도시 및 교통 분야에서는 도시가 성장하는 과정에 대해서 시뮬레이션을 실시하거나, 사람들이 도시 내에서의 이동 패턴을 파악 및 시뮬레이션을 시행 하기 위해서 에이전트 기반 모델링을 활용하고 있다.
특히, 에이전트 기반 모델은 이러한 공간 시뮬레이션 모델링 기법은 최근 센서 및 데이터 기술의 발전으로 인한 화두가 되고 있는 디지털 트윈에서의 시뮬레이션 기법으로 활용될 수 있다. 증거 기반 정책을 위하여 실시간으로 수집된 데이터를 활용하여 모델로 구축하고, 시뮬레이션 과정에서 해당 데이터가 활용되는 디지털 트윈과 에이전트 기반 모델의 접목은 정책적 시뮬레이션을 위한 목적으로 매우 유용하다. 실제로 세종시의 도시행정 디지털트윈은 통신사 등의 민간데이터와 지자체의 고유데이터들을 활용한 플랫폼으로써, 지자체의 공무원이 정책입안시에 활용할 수 있도록 구축되었다. 이러한 시뮬레이션 모델은 세종시의 공용자전거 재배치, 광역버스의 버스노선 신설, 교량 신설 등의 정책에 활용될 수 있도록 설계 및 구축되었다 (정영준 등, 2021). 이처럼 에이전트 기반 모델은 인구감소, 감염병의 대규모 확산 등과 관련한 전국가적인 이슈에 대해서 정책을 수립하고 정책의 유용성을 평가하기 위해서 활용될 수 있다.
본 연구에서 살펴본 바와 같이 공간 시뮬레이션 모델링은 지리학 및 관련 분야에서 상당히 유용하게 활용될 수 있음에도 불구하고 국내에서는 여전히 상대적으로 관련 연구가 미비한 것으로 확인되었다. 에이전트 기반 모델링을 위한 개발 플랫폼이 NetLogo, Anylogic 등이 존재하지만 NetLogo는 자체 프로그래밍 언어, Anylogic은 Java를 할 수 있어야 한다는 점이 에이전트 기반 모델링을 활용하는데 제약이 있는 것으로 판단된다. 또한 국내의 지리학과 중 특정 학교를 제외하고는 관련 강의가 없는 것도 에이전트 기반 모델링의 진입장벽을 낮추지 못하는 것으로 보여진다. 향후, 지리학과 및 관련학과에서 프로그래밍 관련 강의가 개설 및 확대됨과 동시에 공간 시뮬레이션 모델링 강의가 개설되어, 국내 지리학에서도 공간 시뮬레이션 관련 연구가 시도되기를 바란다.