Python ABM Template
요새 프로그래밍 공부가 한창이다. 몇 달 전까지만 해도 프로그래밍 하면 굉장히 멀게 느껴졌었다. 그래도 최근에 파이썬과 자바를 집중적으로 배우고 있는 터라, 그래도 상대적으로 좀 더 친근하게 느껴진다.
프로그래밍을 배우는 목적은 현재로서는 크게 두 가지인데, 하나는 행위자 기반 모형(Agent Based Modeling)을 하기 위한 기반을 닦는 것이고, 두 번째는 트위터 등의 웹에서 자료를 긁어다가 분석하는 기법을 배우기 위함이다. 두 번째는 그렇다 치고, 첫 번째 목적을 달성하기 위해서는 프로그래밍 언어의 문법만이 아니라 그 문법을 통해 ABM을 구현할 수 있어야 한다. 보통 NetLogo가 많이 쓰이는데, 내 생각에 왠지 NetLogo는 이후에 확장성이 좀 떨어질 것 같다. NetLogo를 배우면 그것밖에 할 수 없기 때문이다. 그보다는 범용 프로그래밍 언어를 이번 기회에 배워놓는 것이 이후를 위해 더 낫겠다는 판단을 했다.
파이썬 언어를 통해 ABM을 구현하는 템플릿이 소개된 논문이 있어서 링크를 건다. ABM 구현을 위한 기본적인 작업들이 템플릿으로 소개되어 있다. 보다 복잡한 모형을 만들기 위한 첫 걸음으로 매우 좋은 글인 것 같다.
Issan, A. C. (2001). The ABM template models: A reformulation with reference implementations. "Journal of Artificial Societies and Social Simulation", 14(2), 5.