Urban governance and ex ante policy evaluation: an agent-based model approach 1 by Bernardo Alves Furtado, Isaque Daniel Rocha Eberhardt and Alexandre Messa 2 This article suggests that better <strong>urban</strong> governance may be obtained via ex ante policy analysis. Focusing on prognostics, rather than diagnostics, may empower cities in their drive <strong>to</strong> foster ‘<strong>sustainable</strong> <strong>development</strong>’. Governance of cities is a complex matter (Bettencourt 2015). It involves heterogeneous citizens and interests, a number of institutions and values, and businesses of all denominations. These interactions happen over space in time and are conditioned by legislation, politics, administrative boundaries and the environment. Given this context of multiple ac<strong>to</strong>rs and multiple interactions that occur dynamically over heterogeneous space, <strong>urban</strong> governance should definitely make use of all data available on all ac<strong>to</strong>rs, on their interactions, on their interests, on their location, if possible even on their plans. However, beyond collecting and managing such data coherently, good governance can only happen when data are organised in such a way that they can make sense and resemble the actual processes and outputs of cities. If the city mechanisms can be fully grasped, then policy recommendations and governance should come au<strong>to</strong>matically as a result. Complex systems (Furtado, Sakowski, and Tóvolli 2015; Mitchell 2011) encapsulate the view that cities are the emergent, ever-changing result of interactions among heterogeneous ac<strong>to</strong>rs (Bettencourt 2015). Agent-based modelling (ABM) is the methodology that comprises the theoretical baseline of complex systems. In ABM, a computational simulation runs a model in which ‘agents’ are entities that represent citizens, businesses, institutions and governments (Gilbert and Terna 2000; Macal 2016; North and Macal 2007; Sayama 2015; Wilensky and Rand 2015). This article presents an ABM framework— Spatially-bounded Economic Agent-based Lab (SEAL)—that aims at simulating citizens, businesses and governments within political-administrative environment boundaries that can be used <strong>to</strong> evaluate policy proposals ex ante and thus serve as an effective governance <strong>to</strong>ol for the various levels of the government. The following section of the article contains a description of the model, presenting some of its preliminary and planned applications, and the final section discusses the possibilities, advantages and limitations of applying the ABM <strong>to</strong> <strong>urban</strong> governance and policy evaluation. The basic model: SEAL SEAL was originally built <strong>to</strong> investigate the collection of taxes and the redistribution of public services across municipalities in metropolitan regions (Furtado and Eberhardt 2016a). Taking advantage of the additive, modular structure that is typical of the ABM, the model has evolved from a case study in<strong>to</strong> an empirical framework that enables multiple analyses. The framework is built in Python 3.4.4 3 (Downey 2012) in a full objec<strong>to</strong>riented-programming (OOP) <strong>paradigm</strong>. That is in accordance with the theory, allowing agents <strong>to</strong> be independent and react individually according <strong>to</strong> their personal states and methods, but also according <strong>to</strong> their local, familiar and temporary environment. Thus, SEAL contains classes for citizens, families, businesses and governments (of each municipality) and is based on official data. The citizens and their family collectives interact with businesses, the government and each other in three markets. In the goods market, families make consumption decisions on homogenous products from a selection of different businesses. Families make their decisions based on both prices and distance. In the labour market, businesses seek qualified workers or workers who live closest, whereas likely employees look for businesses that pay higher salaries. In addition, given its importance for <strong>urban</strong> analysis, there is also a real estate market. Governments are responsible for collecting taxes from businesses within their own jurisdiction. Taxes are then used <strong>to</strong> proportionally increase the municipalities’ own quality of life index, which is a proxy of available services for citizens. Production and commuting happen every day, whereas most other activities happen sequentially at the end of every month (see Figure 1): • y process demographics (births, aging and deaths); • y firms make payments; • y family members consume; • y governments collect taxes; • y governments spend the taxes collected on improving the quality of municipal life; • y firms calculate profits and update prices; • y the labour market is processed; • y the real estate market is processed; and • y statistics and output are processed. Sensitivity analysis should also be conducted; it helps build the robustness of the model and evaluate the influence of different policymaking. Policy applications: current and planned Up until now, SEAL has been applied as a theoretical preliminary exercise in which the municipalities are merged for tax purposes (Furtado and Eberhardt 2016a) 4 and as a general analysis of the influence of macroeconomic changes in<strong>to</strong> commuting demand (Furtado and Eberhardt 2016b). 30
FIGURE 1: Flowchart of general procedures in SEAL Preparaon In parameters.py set the OUTPUT PATH and PARAMETERS values In parameters.py set the OUTPUT PATH and PARAMETERS values and CHOOSE THE SIMULATION KIND Entry data: boundaries populaon census data firms’ RAIS data Au<strong>to</strong> adjust Mul-run simulaon Single test Sensivity analysis 1 st call “run” control_au<strong>to</strong>adjust_ model.py control_mul_runs_ simulaon.py control_sensivity_ analysis.py 2 nd chosen simulaon call “main.py” main.py 3 rd “main.py” call “genera<strong>to</strong>r.py” Agents (Pop. and firms) Create and save agents genera<strong>to</strong>r.py 4 th “main.py” call “have_a_go.py” have_a_go.py 5 th “have_ a_go.py” call “me_ interaon.py” me_iteraon.py Run: days months quarters years Acvies: producon consumpon house market demographics Compute stascs: general regional agents firms families 6 th “main.py” call “plong.py” END. Generate final graphs and tables Output data *.txt: general regional firms families agents Source: Furtado et al. (2016). The International Policy Centre for Inclusive Growth | Policy in Focus 31